Rusty Rig plus minor touchups to what I did already (I haven't made a new exe this stuff is simple enough, and I'll test it when I do the balloon panic stuff)

This commit is contained in:
toaster 2018-10-22 21:56:14 +01:00
parent dceab0ce70
commit ffa9289cc6
4 changed files with 82 additions and 3 deletions

View file

@ -6781,6 +6781,10 @@ static const char *const STATE_LIST[] = { // array length left dynamic for sanit
"S_CDUFO",
"S_CDUFO_DIE",
// Rusty Rig
"S_RUSTYLAMP_ORANGE",
"S_RUSTYCHAIN",
#ifdef SEENAMES
"S_NAMECHECK",
#endif
@ -7443,6 +7447,10 @@ static const char *const MOBJTYPE_LIST[] = { // array length left dynamic for s
// CD Special Stage
"MT_CDUFO",
// Rusty Rig
"MT_RUSTYLAMP_ORANGE",
"MT_RUSTYCHAIN",
#ifdef SEENAMES
"MT_NAMECHECK",
#endif

View file

@ -61,7 +61,7 @@ char sprnames[NUMSPRITES + 1][5] =
"DEZL","POKE","AUDI","DECO","DOOD","SNES","GBAS","SPRS","BUZB","CHOM",
"SACO","CRAB","SHAD","BRNG","BUMP","FLEN","CLAS","PSHW","ISTA","ISTB",
"ARRO","ITEM","ITMO","ITMI","ITMN","WANT","PBOM","RETI","AIDU","KSPK",
"LZI1","LZI2","KLIT","MARB","FUFO","VIEW"
"LZI1","LZI2","KLIT","MARB","FUFO","RUST","VIEW"
};
// Doesn't work with g++, needs actionf_p1 (don't modify this comment)
@ -3073,9 +3073,13 @@ state_t states[NUMSTATES] =
{SPR_MARB, 9, -1, {NULL}, 0, 0, S_NULL}, // S_MARBLEBURNER
// CD Special Stage
{SPR_FUFO, 0, 1, {A_Thrust}, 5, 2, S_CDUFO}, // S_CDUFO
{SPR_FUFO, 0, 1, {A_Thrust}, 5, 2, S_CDUFO}, // S_CDUFO
{SPR_FUFO, 0, 4, {A_BossScream}, 0, MT_EXPLODE, S_CDUFO_DIE}, // S_CDUFO_DIE
// Rusty Rig
{SPR_RUST, FF_FULLBRIGHT, -1, {NULL}, 0, 0, S_NULL}, // S_RUSTYLAMP_ORANGE
{SPR_RUST, 1, -1, {NULL}, 0, 0, S_NULL}, // S_RUSTYCHAIN
#ifdef SEENAMES
{SPR_NULL, 0, 1, {NULL}, 0, 0, S_NULL}, // S_NAMECHECK
#endif
@ -17356,6 +17360,60 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
S_NULL // raisestate
},
{ // MT_RUSTYLAMP_ORANGE
1988, // doomednum
S_RUSTYLAMP_ORANGE, // spawnstate
1000, // spawnhealth
S_NULL, // seestate
sfx_None, // seesound
8, // reactiontime
sfx_None, // attacksound
S_NULL, // painstate
0, // painchance
sfx_None, // painsound
S_NULL, // meleestate
S_NULL, // missilestate
S_NULL, // deathstate
S_NULL, // xdeathstate
sfx_None, // deathsound
0, // speed
12*FRACUNIT, // radius
45*FRACUNIT, // height
0, // display offset
0, // mass
0, // damage
sfx_None, // activesound
MF_SCENERY|MF_NOGRAVITY|MF_NOBLOCKMAP, // flags
S_NULL // raisestate
},
{ // MT_RUSTYCHAIN
1989, // doomednum
S_RUSTYCHAIN, // spawnstate
1000, // spawnhealth
S_NULL, // seestate
sfx_None, // seesound
8, // reactiontime
sfx_None, // attacksound
S_NULL, // painstate
0, // painchance
sfx_None, // painsound
S_NULL, // meleestate
S_NULL, // missilestate
S_NULL, // deathstate
S_NULL, // xdeathstate
sfx_None, // deathsound
0, // speed
12*FRACUNIT, // radius
45*FRACUNIT, // height
0, // display offset
0, // mass
0, // damage
sfx_None, // activesound
MF_SCENERY|MF_NOBLOCKMAP, // flags
S_NULL // raisestate
},
// ============================================================================================================================//
#ifdef SEENAMES

View file

@ -657,6 +657,8 @@ typedef enum sprite
SPR_MARB, // Marble Zone sprites
SPR_FUFO, // CD Special Stage UFO (don't ask me why it begins with an F)
SPR_RUST, // Rusty Rig sprites
SPR_VIEW, // First person view sprites; this is a sprite so that it can be replaced by a specialized MD2 draw!
SPR_FIRSTFREESLOT,
@ -3627,6 +3629,10 @@ typedef enum state
S_CDUFO,
S_CDUFO_DIE,
// Rusty Rig
S_RUSTYLAMP_ORANGE,
S_RUSTYCHAIN,
#ifdef SEENAMES
S_NAMECHECK,
#endif
@ -4306,6 +4312,10 @@ typedef enum mobj_type
// CD Special Stage
MT_CDUFO,
// Rusty Rig
MT_RUSTYLAMP_ORANGE,
MT_RUSTYCHAIN,
#ifdef SEENAMES
MT_NAMECHECK,
#endif

View file

@ -9380,7 +9380,10 @@ mobj_t *P_SpawnMobj(fixed_t x, fixed_t y, fixed_t z, mobjtype_t type)
break;
}
case MT_MARBLETORCH:
P_SpawnMobj(mobj->x, mobj->y, mobj->z + (29<<FRACBITS), MT_MARBLELIGHT);
P_SpawnMobj(mobj->x, mobj->y, mobj->z + (29*mobj->scale), MT_MARBLELIGHT);
break;
case MT_RUSTYLAMP_ORANGE:
P_SpawnMobj(mobj->x, mobj->y, mobj->z + (68*mobj->scale), MT_MARBLELIGHT);
break;
default:
break;