Merge branch 'blue-spring-balls' into 'next'

Blue spring balls

See merge request STJr/SRB2!1282
This commit is contained in:
Krabs 2023-10-30 04:37:00 +00:00
commit d37a0a944d
5 changed files with 54 additions and 0 deletions

View file

@ -1933,6 +1933,13 @@ const char *const STATE_LIST[] = { // array length left dynamic for sanity testi
"S_SMALLGRABCHAIN", "S_SMALLGRABCHAIN",
"S_BIGGRABCHAIN", "S_BIGGRABCHAIN",
// Blue spring on a ball
"S_BLUESPRINGBALL",
"S_BLUESPRINGBALL2",
"S_BLUESPRINGBALL3",
"S_BLUESPRINGBALL4",
"S_BLUESPRINGBALL5",
// Yellow spring on a ball // Yellow spring on a ball
"S_YELLOWSPRINGBALL", "S_YELLOWSPRINGBALL",
"S_YELLOWSPRINGBALL2", "S_YELLOWSPRINGBALL2",
@ -3891,6 +3898,7 @@ const char *const MOBJTYPE_LIST[] = { // array length left dynamic for sanity t
"MT_BIGMACE", // Big Mace "MT_BIGMACE", // Big Mace
"MT_SMALLGRABCHAIN", // Small Grab Chain "MT_SMALLGRABCHAIN", // Small Grab Chain
"MT_BIGGRABCHAIN", // Big Grab Chain "MT_BIGGRABCHAIN", // Big Grab Chain
"MT_BLUESPRINGBALL", // Blue spring on a ball
"MT_YELLOWSPRINGBALL", // Yellow spring on a ball "MT_YELLOWSPRINGBALL", // Yellow spring on a ball
"MT_REDSPRINGBALL", // Red spring on a ball "MT_REDSPRINGBALL", // Red spring on a ball
"MT_SMALLFIREBAR", // Small Firebar "MT_SMALLFIREBAR", // Small Firebar

View file

@ -341,6 +341,7 @@ light_t *t_lspr[NUMSPRITES] =
&lspr[NOLIGHT], // SPR_BMCH &lspr[NOLIGHT], // SPR_BMCH
&lspr[NOLIGHT], // SPR_SMCE &lspr[NOLIGHT], // SPR_SMCE
&lspr[NOLIGHT], // SPR_BMCE &lspr[NOLIGHT], // SPR_BMCE
&lspr[NOLIGHT], // SPR_BSPB
&lspr[NOLIGHT], // SPR_YSPB &lspr[NOLIGHT], // SPR_YSPB
&lspr[NOLIGHT], // SPR_RSPB &lspr[NOLIGHT], // SPR_RSPB
&lspr[REDBALL_L], // SPR_SFBR &lspr[REDBALL_L], // SPR_SFBR

View file

@ -250,6 +250,7 @@ char sprnames[NUMSPRITES + 1][5] =
"BMCH", // Big Mace Chain "BMCH", // Big Mace Chain
"SMCE", // Small Mace "SMCE", // Small Mace
"BMCE", // Big Mace "BMCE", // Big Mace
"BSPB", // Blue spring on a ball
"YSPB", // Yellow spring on a ball "YSPB", // Yellow spring on a ball
"RSPB", // Red spring on a ball "RSPB", // Red spring on a ball
"SFBR", // Small Firebar "SFBR", // Small Firebar
@ -2297,6 +2298,13 @@ state_t states[NUMSTATES] =
{SPR_SMCH, 1, -1, {NULL}, 0, 0, S_NULL}, // S_SMALLGRABCHAIN {SPR_SMCH, 1, -1, {NULL}, 0, 0, S_NULL}, // S_SMALLGRABCHAIN
{SPR_BMCH, 1, -1, {NULL}, 0, 0, S_NULL}, // S_BIGGRABCHAIN {SPR_BMCH, 1, -1, {NULL}, 0, 0, S_NULL}, // S_BIGGRABCHAIN
// Blue spring on a ball
{SPR_BSPB, 0, -1, {NULL}, 0, 0, S_NULL}, // S_BLUESPRINGBALL
{SPR_BSPB, 4, 4, {A_Pain}, 0, 0, S_BLUESPRINGBALL3}, // S_BLUESPRINGBALL2
{SPR_BSPB, 3, 1, {NULL}, 0, 0, S_BLUESPRINGBALL4}, // S_BLUESPRINGBALL3
{SPR_BSPB, 2, 1, {NULL}, 0, 0, S_BLUESPRINGBALL5}, // S_BLUESPRINGBALL4
{SPR_BSPB, 1, 1, {NULL}, 0, 0, S_BLUESPRINGBALL}, // S_BLUESPRINGBALL5
// Yellow spring on a ball // Yellow spring on a ball
{SPR_YSPB, 0, -1, {NULL}, 0, 0, S_NULL}, // S_YELLOWSPRINGBALL {SPR_YSPB, 0, -1, {NULL}, 0, 0, S_NULL}, // S_YELLOWSPRINGBALL
{SPR_YSPB, 4, 4, {A_Pain}, 0, 0, S_YELLOWSPRINGBALL3}, // S_YELLOWSPRINGBALL2 {SPR_YSPB, 4, 4, {A_Pain}, 0, 0, S_YELLOWSPRINGBALL3}, // S_YELLOWSPRINGBALL2
@ -11679,6 +11687,33 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] =
S_NULL // raisestate S_NULL // raisestate
}, },
{ // MT_BLUESPRINGBALL
1133, // doomednum
S_BLUESPRINGBALL, // spawnstate
1000, // spawnhealth
S_BLUESPRINGBALL2, // seestate
sfx_None, // seesound
0, // reactiontime
sfx_None, // attacksound
S_NULL, // painstate
0, // painchance
sfx_spring, // painsound
S_NULL, // meleestate
S_NULL, // missilestate
S_NULL, // deathstate
S_NULL, // xdeathstate
sfx_None, // deathsound
24*FRACUNIT, // speed
17*FRACUNIT, // radius
34*FRACUNIT, // height
1, // display offset
11*FRACUNIT, // mass
0, // damage
sfx_mswing, // activesound
MF_SCENERY|MF_SPRING|MF_NOGRAVITY, // flags
S_BLUESPRINGBALL2 // raisestate
},
{ // MT_YELLOWSPRINGBALL { // MT_YELLOWSPRINGBALL
1134, // doomednum 1134, // doomednum
S_YELLOWSPRINGBALL, // spawnstate S_YELLOWSPRINGBALL, // spawnstate

View file

@ -797,6 +797,7 @@ typedef enum sprite
SPR_BMCH, // Big Mace Chain SPR_BMCH, // Big Mace Chain
SPR_SMCE, // Small Mace SPR_SMCE, // Small Mace
SPR_BMCE, // Big Mace SPR_BMCE, // Big Mace
SPR_BSPB, // Blue spring on a ball
SPR_YSPB, // Yellow spring on a ball SPR_YSPB, // Yellow spring on a ball
SPR_RSPB, // Red spring on a ball SPR_RSPB, // Red spring on a ball
SPR_SFBR, // Small Firebar SPR_SFBR, // Small Firebar
@ -2744,6 +2745,13 @@ typedef enum state
S_SMALLGRABCHAIN, S_SMALLGRABCHAIN,
S_BIGGRABCHAIN, S_BIGGRABCHAIN,
// Blue spring on a ball
S_BLUESPRINGBALL,
S_BLUESPRINGBALL2,
S_BLUESPRINGBALL3,
S_BLUESPRINGBALL4,
S_BLUESPRINGBALL5,
// Yellow spring on a ball // Yellow spring on a ball
S_YELLOWSPRINGBALL, S_YELLOWSPRINGBALL,
S_YELLOWSPRINGBALL2, S_YELLOWSPRINGBALL2,
@ -4722,6 +4730,7 @@ typedef enum mobj_type
MT_BIGMACE, // Big Mace MT_BIGMACE, // Big Mace
MT_SMALLGRABCHAIN, // Small Grab Chain MT_SMALLGRABCHAIN, // Small Grab Chain
MT_BIGGRABCHAIN, // Big Grab Chain MT_BIGGRABCHAIN, // Big Grab Chain
MT_BLUESPRINGBALL, // Blue spring on a ball
MT_YELLOWSPRINGBALL, // Yellow spring on a ball MT_YELLOWSPRINGBALL, // Yellow spring on a ball
MT_REDSPRINGBALL, // Red spring on a ball MT_REDSPRINGBALL, // Red spring on a ball
MT_SMALLFIREBAR, // Small Firebar MT_SMALLFIREBAR, // Small Firebar

View file

@ -10544,6 +10544,7 @@ static fixed_t P_DefaultMobjShadowScale (mobj_t *thing)
case MT_SMALLGRABCHAIN: case MT_SMALLGRABCHAIN:
case MT_BIGGRABCHAIN: case MT_BIGGRABCHAIN:
case MT_BLUESPRINGBALL:
case MT_YELLOWSPRINGBALL: case MT_YELLOWSPRINGBALL:
case MT_REDSPRINGBALL: case MT_REDSPRINGBALL: