diff --git a/src/deh_tables.c b/src/deh_tables.c index da5a89db2..aca1d66d4 100644 --- a/src/deh_tables.c +++ b/src/deh_tables.c @@ -3303,6 +3303,7 @@ const char *const STATE_LIST[] = { // array length left dynamic for sanity testi "S_INSTAWHIP_RECHARGE2", "S_INSTAWHIP_RECHARGE3", "S_INSTAWHIP_RECHARGE4", + "S_INSTAWHIP_REJECT", "S_BLOCKRING", "S_BLOCKBODY", @@ -5409,6 +5410,7 @@ const char *const MOBJTYPE_LIST[] = { // array length left dynamic for sanity t "MT_INSTAWHIP", "MT_INSTAWHIP_RECHARGE", + "MT_INSTAWHIP_REJECT", "MT_BLOCKRING", "MT_BLOCKBODY", diff --git a/src/info.c b/src/info.c index 52982babe..749b2a6af 100644 --- a/src/info.c +++ b/src/info.c @@ -558,6 +558,7 @@ char sprnames[NUMSPRITES + 1][5] = "IWHP", // Instawhip "WPRE", // Instawhip Recharge + "WPRJ", // Instawhip Reject "GRNG", // Guard ring "GBDY", // Guard body @@ -4023,6 +4024,7 @@ state_t states[NUMSTATES] = {SPR_NULL, 0, 0, {A_PlaySound}, sfx_s3ka0, 2, S_INSTAWHIP_RECHARGE3}, // S_INSTAWHIP_RECHARGE2 {SPR_WPRE, FF_FULLBRIGHT|FF_FLOORSPRITE|FF_ANIMATE|0, 36, {NULL}, 17, 2, S_INSTAWHIP_RECHARGE4}, // S_INSTAWHIP_RECHARGE3 {SPR_NULL, 0, 0, {A_PlaySound}, sfx_s3k7c, 2, S_NULL}, // S_INSTAWHIP_RECHARGE4 + {SPR_WPRJ, FF_ANIMATE, 9, {NULL}, 8, 1, S_NULL}, // S_INSTAWHIP_REJECT {SPR_GRNG, FF_FULLBRIGHT|FF_PAPERSPRITE|0, -1, {NULL}, 0, 0, S_NULL}, // S_BLOCKRING {SPR_GBDY, FF_FULLBRIGHT|FF_ANIMATE|0, -1, {NULL}, 4, 2, S_NULL}, // S_BLOCKBODY @@ -22863,6 +22865,33 @@ mobjinfo_t mobjinfo[NUMMOBJTYPES] = S_INSTAWHIP_RECHARGE3 // raisestate }, + { // MT_INSTAWHIP_REJECT + -1, // doomednum + S_INSTAWHIP_REJECT, // spawnstate + 1000, // spawnhealth + S_NULL, // seestate + sfx_None, // seesound + 0, // 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 + 90*FRACUNIT, // radius + 90*FRACUNIT, // height + 0, // display offset + 100, // mass + 0, // damage + sfx_None, // activesound + MF_NOGRAVITY|MF_NOCLIPHEIGHT|MF_DONTENCOREMAP, // flags + S_NULL // raisestate + }, + { // MT_BLOCKRING -1, // doomednum S_BLOCKRING, // spawnstate diff --git a/src/info.h b/src/info.h index 2ac97cc1c..f8258fadd 100644 --- a/src/info.h +++ b/src/info.h @@ -1109,6 +1109,7 @@ typedef enum sprite SPR_IWHP, // Instawhip SPR_WPRE, // Instawhip Recharge + SPR_WPRJ, // Instawhip Reject SPR_GRNG, // Guard ring SPR_GBDY, // Guard body @@ -4433,6 +4434,7 @@ typedef enum state S_INSTAWHIP_RECHARGE2, S_INSTAWHIP_RECHARGE3, S_INSTAWHIP_RECHARGE4, + S_INSTAWHIP_REJECT, S_BLOCKRING, S_BLOCKBODY, @@ -6573,6 +6575,7 @@ typedef enum mobj_type MT_INSTAWHIP, MT_INSTAWHIP_RECHARGE, + MT_INSTAWHIP_REJECT, MT_BLOCKRING, MT_BLOCKBODY,