mirror of
https://git.do.srb2.org/STJr/SRB2.git
synced 2025-01-29 20:50:58 +00:00
Hardcoded SOC_TOKE from patch.dta
Or rather, I killed anything to do with the old background orb, renamed all "EMMY" stuff to "TOKEN", and of course adjusted the new S_TOKEN accordingly
This commit is contained in:
parent
381138d7b1
commit
dbc7a4099f
6 changed files with 12 additions and 84 deletions
|
@ -4521,12 +4521,8 @@ static const char *const STATE_LIST[] = { // array length left dynamic for sanit
|
|||
// Individual Team Rings
|
||||
"S_TEAMRING",
|
||||
|
||||
// Special Stage Token
|
||||
"S_EMMY",
|
||||
|
||||
// Special Stage Token
|
||||
"S_TOKEN",
|
||||
"S_MOVINGTOKEN",
|
||||
|
||||
// CTF Flags
|
||||
"S_REDFLAG",
|
||||
|
@ -6144,8 +6140,7 @@ static const char *const MOBJTYPE_LIST[] = { // array length left dynamic for s
|
|||
"MT_BLUEBALL", // Blue sphere replacement for special stages
|
||||
"MT_REDTEAMRING", //Rings collectable by red team.
|
||||
"MT_BLUETEAMRING", //Rings collectable by blue team.
|
||||
"MT_EMMY", // emerald token for special stage
|
||||
"MT_TOKEN", // Special Stage Token (uncollectible part)
|
||||
"MT_TOKEN", // Special Stage Token
|
||||
"MT_REDFLAG", // Red CTF Flag
|
||||
"MT_BLUEFLAG", // Blue CTF Flag
|
||||
"MT_EMBLEM",
|
||||
|
|
40
src/info.c
40
src/info.c
|
@ -114,7 +114,6 @@ char sprnames[NUMSPRITES + 1][5] =
|
|||
// Collectible Items
|
||||
"RING",
|
||||
"TRNG", // Team Rings
|
||||
"EMMY", // emerald test
|
||||
"TOKE", // Special Stage Token
|
||||
"RFLG", // Red CTF Flag
|
||||
"BFLG", // Blue CTF Flag
|
||||
|
@ -1417,14 +1416,10 @@ state_t states[NUMSTATES] =
|
|||
{SPR_GWLR, 2, 1, {NULL}, 0, 0, S_GRAVWELLRED}, // S_GRAVWELLRED3
|
||||
|
||||
// Individual Team Rings (now with shield attracting action! =P)
|
||||
{SPR_TRNG, FF_ANIMATE|FF_GLOBALANIM, -1, {NULL}, 23, 1, S_TEAMRING}, // S_TEAMRING1
|
||||
{SPR_TRNG, FF_ANIMATE|FF_GLOBALANIM, -1, {NULL}, 23, 1, S_TEAMRING}, // S_TEAMRING
|
||||
|
||||
// Special Stage Token
|
||||
{SPR_EMMY, FF_ANIMATE|FF_FULLBRIGHT, -1, {NULL}, 6, 2, S_EMMY}, // S_EMMY
|
||||
|
||||
// Special Stage Token
|
||||
{SPR_TOKE, FF_TRANS50|FF_FULLBRIGHT, -1, {NULL}, 0, 0, S_NULL}, // S_TOKEN
|
||||
{SPR_TOKE, FF_TRANS50|FF_FULLBRIGHT, 1, {A_CapeChase}, 0, 0, S_MOVINGTOKEN}, // S_MOVINGTOKEN
|
||||
{SPR_TOKE, FF_ANIMATE|FF_FULLBRIGHT, -1, {NULL}, 19, 1, S_TOKEN}, // S_TOKEN
|
||||
|
||||
// CTF Flags
|
||||
{SPR_RFLG, 0, -1, {NULL}, 0, 0, S_NULL}, // S_REDFLAG
|
||||
|
@ -5191,9 +5186,9 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
|
|||
S_NULL // raisestate
|
||||
},
|
||||
|
||||
{ // MT_EMMY
|
||||
{ // MT_TOKEN
|
||||
312, // doomednum
|
||||
S_EMMY, // spawnstate
|
||||
S_TOKEN, // spawnstate
|
||||
1000, // spawnhealth
|
||||
S_NULL, // seestate
|
||||
sfx_None, // seesound
|
||||
|
@ -5218,33 +5213,6 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
|
|||
S_NULL // raisestate
|
||||
},
|
||||
|
||||
{ // MT_TOKEN
|
||||
-1, // doomednum
|
||||
S_TOKEN, // spawnstate
|
||||
1000, // spawnhealth
|
||||
S_MOVINGTOKEN, // 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
|
||||
8, // speed
|
||||
8*FRACUNIT, // radius
|
||||
16*FRACUNIT, // height
|
||||
0, // display offset
|
||||
100, // mass
|
||||
0, // damage
|
||||
sfx_None, // activesound
|
||||
MF_NOGRAVITY|MF_NOBLOCKMAP|MF_NOCLIP, // flags
|
||||
S_NULL // raisestate
|
||||
},
|
||||
|
||||
{ // MT_REDFLAG
|
||||
310, // doomednum
|
||||
S_REDFLAG, // spawnstate
|
||||
|
|
|
@ -320,7 +320,6 @@ typedef enum sprite
|
|||
// Collectible Items
|
||||
SPR_RING,
|
||||
SPR_TRNG, // Team Rings
|
||||
SPR_EMMY, // emerald test
|
||||
SPR_TOKE, // Special Stage Token
|
||||
SPR_RFLG, // Red CTF Flag
|
||||
SPR_BFLG, // Blue CTF Flag
|
||||
|
@ -1625,12 +1624,8 @@ typedef enum state
|
|||
// Individual Team Rings
|
||||
S_TEAMRING,
|
||||
|
||||
// Special Stage Token
|
||||
S_EMMY,
|
||||
|
||||
// Special Stage Token
|
||||
S_TOKEN,
|
||||
S_MOVINGTOKEN,
|
||||
|
||||
// CTF Flags
|
||||
S_REDFLAG,
|
||||
|
@ -3269,8 +3264,7 @@ typedef enum mobj_type
|
|||
MT_BLUEBALL, // Blue sphere replacement for special stages
|
||||
MT_REDTEAMRING, //Rings collectable by red team.
|
||||
MT_BLUETEAMRING, //Rings collectable by blue team.
|
||||
MT_EMMY, // emerald token for special stage
|
||||
MT_TOKEN, // Special Stage Token (uncollectible part)
|
||||
MT_TOKEN, // Special Stage token for special stage
|
||||
MT_REDFLAG, // Red CTF Flag
|
||||
MT_BLUEFLAG, // Blue CTF Flag
|
||||
MT_EMBLEM,
|
||||
|
|
|
@ -3283,14 +3283,6 @@ INT32 EV_MarioBlock(ffloor_t *rover, sector_t *sector, mobj_t *puncher)
|
|||
}
|
||||
else
|
||||
{
|
||||
if (thing->type == MT_EMMY && thing->spawnpoint && (thing->spawnpoint->options & MTF_OBJECTSPECIAL))
|
||||
{
|
||||
mobj_t *tokenobj = P_SpawnMobj(sector->soundorg.x, sector->soundorg.y, topheight, MT_TOKEN);
|
||||
P_SetTarget(&thing->tracer, tokenobj);
|
||||
P_SetTarget(&tokenobj->target, thing);
|
||||
P_SetMobjState(tokenobj, mobjinfo[MT_TOKEN].seestate);
|
||||
}
|
||||
|
||||
// "Powerup rise" sound
|
||||
S_StartSound(puncher, sfx_mario9); // Puncher is "close enough"
|
||||
}
|
||||
|
|
|
@ -570,7 +570,7 @@ void P_TouchSpecialThing(mobj_t *special, mobj_t *toucher, boolean heightcheck)
|
|||
// Gameplay related collectibles //
|
||||
// ***************************** //
|
||||
// Special Stage Token
|
||||
case MT_EMMY:
|
||||
case MT_TOKEN:
|
||||
if (player->bot)
|
||||
return;
|
||||
tokenlist += special->health;
|
||||
|
@ -589,9 +589,6 @@ void P_TouchSpecialThing(mobj_t *special, mobj_t *toucher, boolean heightcheck)
|
|||
}
|
||||
else
|
||||
token++;
|
||||
|
||||
if (special->tracer) // token BG
|
||||
P_RemoveMobj(special->tracer);
|
||||
break;
|
||||
|
||||
// Emerald Hunt
|
||||
|
|
28
src/p_mobj.c
28
src/p_mobj.c
|
@ -9503,7 +9503,7 @@ void P_SpawnMapThing(mapthing_t *mthing)
|
|||
}
|
||||
|
||||
if (metalrecording) // Metal Sonic can't use these things.
|
||||
if (mobjinfo[i].flags & (MF_ENEMY|MF_BOSS) || i == MT_EMMY || i == MT_STARPOST)
|
||||
if (mobjinfo[i].flags & (MF_ENEMY|MF_BOSS) || i == MT_TOKEN || i == MT_STARPOST)
|
||||
return;
|
||||
|
||||
if (i >= MT_EMERALD1 && i <= MT_EMERALD7) // Pickupable Emeralds
|
||||
|
@ -9617,7 +9617,7 @@ void P_SpawnMapThing(mapthing_t *mthing)
|
|||
return;
|
||||
|
||||
// Emerald Tokens -->> Score Tokens
|
||||
else if (i == MT_EMMY)
|
||||
else if (i == MT_TOKEN)
|
||||
return; /// \todo
|
||||
|
||||
// 1UPs -->> Score TVs
|
||||
|
@ -9645,7 +9645,7 @@ void P_SpawnMapThing(mapthing_t *mthing)
|
|||
// They're likely facets of the level's design and therefore required to progress.
|
||||
}
|
||||
|
||||
if (i == MT_EMMY && (gametype != GT_COOP || ultimatemode || tokenbits == 30 || tokenlist & (1 << tokenbits++)))
|
||||
if (i == MT_TOKEN && (gametype != GT_COOP || ultimatemode || tokenbits == 30 || tokenlist & (1 << tokenbits++)))
|
||||
return; // you already got this token, or there are too many, or the gametype's not right
|
||||
|
||||
// Objectplace landing point
|
||||
|
@ -9664,7 +9664,7 @@ void P_SpawnMapThing(mapthing_t *mthing)
|
|||
ss->sector->floorheight) + ((mthing->options >> ZSHIFT) << FRACBITS);
|
||||
else if (i == MT_AXIS || i == MT_AXISTRANSFER || i == MT_AXISTRANSFERLINE)
|
||||
z = ONFLOORZ;
|
||||
else if (i == MT_SPECIALSPIKEBALL || P_WeaponOrPanel(i) || i == MT_EMERALDSPAWN || i == MT_EMMY)
|
||||
else if (i == MT_SPECIALSPIKEBALL || P_WeaponOrPanel(i) || i == MT_EMERALDSPAWN || i == MT_TOKEN)
|
||||
{
|
||||
if (mthing->options & MTF_OBJECTFLIP)
|
||||
{
|
||||
|
@ -10063,28 +10063,10 @@ ML_NOCLIMB : Direction not controllable
|
|||
mobj->radius = (mthing->angle & 16383)*FRACUNIT;
|
||||
}
|
||||
}
|
||||
else if (i == MT_EMMY)
|
||||
else if (i == MT_TOKEN)
|
||||
{
|
||||
if (mthing->options & MTF_OBJECTSPECIAL) // Mario Block version
|
||||
mobj->flags &= ~(MF_NOGRAVITY|MF_NOCLIPHEIGHT);
|
||||
else
|
||||
{
|
||||
fixed_t zheight = mobj->z;
|
||||
mobj_t *tokenobj;
|
||||
|
||||
if (mthing->options & MTF_OBJECTFLIP)
|
||||
zheight += mobj->height-FixedMul(mobjinfo[MT_TOKEN].height, mobj->scale); // align with emmy properly!
|
||||
|
||||
tokenobj = P_SpawnMobj(x, y, zheight, MT_TOKEN);
|
||||
P_SetTarget(&mobj->tracer, tokenobj);
|
||||
tokenobj->destscale = mobj->scale;
|
||||
P_SetScale(tokenobj, mobj->scale);
|
||||
if (mthing->options & MTF_OBJECTFLIP) // flip token to match emmy
|
||||
{
|
||||
tokenobj->eflags |= MFE_VERTICALFLIP;
|
||||
tokenobj->flags2 |= MF2_OBJECTFLIP;
|
||||
}
|
||||
}
|
||||
|
||||
// We advanced tokenbits earlier due to the return check.
|
||||
// Subtract 1 here for the correct value.
|
||||
|
|
Loading…
Reference in a new issue