Finish Glaregoyle states

This commit is contained in:
lachwright 2019-10-31 19:18:44 +08:00
parent 7c08cd69fa
commit 95a3546988
3 changed files with 72 additions and 53 deletions

View file

@ -6030,29 +6030,36 @@ static const char *const STATE_LIST[] = { // array length left dynamic for sanit
"S_WALLVINE_LONG",
"S_WALLVINE_SHORT",
// Glaregoyles
// Glaregoyles
"S_GLAREGOYLE",
"S_GLAREGOYLE_CHECK",
"S_GLAREGOYLE_FIRE1",
"S_GLAREGOYLE_FIRE2",
"S_GLAREGOYLE_FIRE3",
"S_GLAREGOYLE_CHARGE",
"S_GLAREGOYLE_BLINK",
"S_GLAREGOYLE_HOLD",
"S_GLAREGOYLE_FIRE",
"S_GLAREGOYLE_LOOP",
"S_GLAREGOYLE_COOLDOWN",
"S_GLAREGOYLEUP",
"S_GLAREGOYLEUP_CHECK",
"S_GLAREGOYLEUP_FIRE1",
"S_GLAREGOYLEUP_FIRE2",
"S_GLAREGOYLEUP_FIRE3",
"S_GLAREGOYLEUP_CHARGE",
"S_GLAREGOYLEUP_BLINK",
"S_GLAREGOYLEUP_HOLD",
"S_GLAREGOYLEUP_FIRE",
"S_GLAREGOYLEUP_LOOP",
"S_GLAREGOYLEUP_COOLDOWN",
"S_GLAREGOYLEDOWN",
"S_GLAREGOYLEDOWN_CHECK",
"S_GLAREGOYLEDOWN_FIRE1",
"S_GLAREGOYLEDOWN_FIRE2",
"S_GLAREGOYLEDOWN_FIRE3",
"S_GLAREGOYLEDOWN_CHARGE",
"S_GLAREGOYLEDOWN_BLINK",
"S_GLAREGOYLEDOWN_HOLD",
"S_GLAREGOYLEDOWN_FIRE",
"S_GLAREGOYLEDOWN_LOOP",
"S_GLAREGOYLEDOWN_COOLDOWN",
"S_GLAREGOYLELONG",
"S_GLAREGOYLELONG_CHECK",
"S_GLAREGOYLELONG_FIRE1",
"S_GLAREGOYLELONG_FIRE2",
"S_GLAREGOYLELONG_FIRE3",
"S_GLAREGOYLELONG_FIRE4",
"S_GLAREGOYLELONG_FIRE5",
"S_GLAREGOYLELONG_CHARGE",
"S_GLAREGOYLELONG_BLINK",
"S_GLAREGOYLELONG_HOLD",
"S_GLAREGOYLELONG_FIRE",
"S_GLAREGOYLELONG_LOOP",
"S_GLAREGOYLELONG_COOLDOWN",
// ATZ's Red Crystal/Target
"S_TARGET_IDLE",

View file

@ -2580,31 +2580,37 @@ state_t states[NUMSTATES] =
{SPR_WVIN, 1|FF_PAPERSPRITE, -1, {NULL}, 0, 0, S_NULL}, // S_WALLVINE_SHORT
// Glaregoyles
{SPR_BGAR, FF_ANIMATE|1, 52, {NULL}, 1, 0, S_GLAREGOYLE_WARNING}, // S_GLAREGOYLE
{SPR_BGAR, 2, 6, {NULL}, 1, 2, S_GLAREGOYLE_FIRE}, // S_GLAREGOYLE_WARNING
{SPR_BGAR, 0, 22, {NULL}, 0, 0, S_GLAREGOYLE_CHARGE}, // S_GLAREGOYLE
{SPR_BGAR, 2, 6, {NULL}, 0, 0, S_GLAREGOYLE_BLINK}, // S_GLAREGOYLE_CHARGE
{SPR_BGAR, FF_ANIMATE|1, 18, {NULL}, 1, 3, S_GLAREGOYLE_HOLD}, // S_GLAREGOYLE_BLINK
{SPR_BGAR, 1, 9, {NULL}, 0, 0, S_GLAREGOYLE_FIRE}, // S_GLAREGOYLE_HOLD
{SPR_BGAR, 1, 1, {A_TrapShot}, (16<<16)+MT_DEMONFIRE, (30<<16), S_GLAREGOYLE_LOOP}, // S_GLAREGOYLE_FIRE
{SPR_BGAR, 1, 0, {A_Repeat}, 3, S_GLAREGOYLE_FIRE, S_GLAREGOYLE_COOLDOWN}, // S_GLAREGOYLE_LOOP
{SPR_BGAR, FF_ANIMATE|1, 12, {NULL}, 1, 6, S_GLAREGOYLE}, // S_GLAREGOYLE_COOLDOWN
{SPR_BGAR, FF_ANIMATE|1, 15, {NULL}, 1, 9, S_GLAREGOYLE}, // S_GLAREGOYLE_COOLDOWN
{SPR_BGAR, 0, 67, {NULL}, 0, 0, S_GLAREGOYLEUP_CHECK}, // S_GLAREGOYLEUP
{SPR_BGAR, 0, 3, {NULL}, 0, 0, S_GLAREGOYLEUP_FIRE1}, // S_GLAREGOYLEUP_CHECK
{SPR_BGAR, 0, 1, {A_TrapShot}, (16<<16)+MT_DEMONFIRE, (30<<16)+45, S_GLAREGOYLEUP_FIRE2}, // S_GLAREGOYLEUP_FIRE1
{SPR_BGAR, 0, 1, {A_TrapShot}, (16<<16)+MT_DEMONFIRE, (30<<16)+45, S_GLAREGOYLEUP_FIRE3}, // S_GLAREGOYLEUP_FIRE2
{SPR_BGAR, 0, 1, {A_TrapShot}, (16<<16)+MT_DEMONFIRE, (30<<16)+45, S_GLAREGOYLEUP}, // S_GLAREGOYLEUP_FIRE3
{SPR_BGAR, 0, 22, {NULL}, 0, 0, S_GLAREGOYLEUP_CHARGE}, // S_GLAREGOYLEUP
{SPR_BGAR, 2, 6, {NULL}, 0, 0, S_GLAREGOYLEUP_BLINK}, // S_GLAREGOYLEUP_CHARGE
{SPR_BGAR, FF_ANIMATE|1, 18, {NULL}, 1, 3, S_GLAREGOYLEUP_HOLD}, // S_GLAREGOYLEUP_BLINK
{SPR_BGAR, 1, 9, {NULL}, 0, 0, S_GLAREGOYLEUP_FIRE}, // S_GLAREGOYLEUP_HOLD
{SPR_BGAR, 1, 1, {A_TrapShot}, (16<<16)+MT_DEMONFIRE, (30<<16)+45, S_GLAREGOYLEUP_LOOP}, // S_GLAREGOYLEUP_FIRE
{SPR_BGAR, 1, 0, {A_Repeat}, 3, S_GLAREGOYLEUP_FIRE, S_GLAREGOYLEUP_COOLDOWN}, // S_GLAREGOYLEUP_LOOP
{SPR_BGAR, FF_ANIMATE|1, 15, {NULL}, 1, 9, S_GLAREGOYLEUP}, // S_GLAREGOYLEUP_COOLDOWN
{SPR_BGAR, 0, 67, {NULL}, 0, 0, S_GLAREGOYLEDOWN_CHECK}, // S_GLAREGOYLEDOWN
{SPR_BGAR, 0, 3, {NULL}, 0, 0, S_GLAREGOYLEDOWN_FIRE1}, // S_GLAREGOYLEDOWN_CHECK
{SPR_BGAR, 0, 1, {A_TrapShot}, (16<<16)+MT_DEMONFIRE, (30<<16)+315, S_GLAREGOYLEDOWN_FIRE2}, // S_GLAREGOYLEDOWN_FIRE1
{SPR_BGAR, 0, 1, {A_TrapShot}, (16<<16)+MT_DEMONFIRE, (30<<16)+315, S_GLAREGOYLEDOWN_FIRE3}, // S_GLAREGOYLEDOWN_FIRE2
{SPR_BGAR, 0, 1, {A_TrapShot}, (16<<16)+MT_DEMONFIRE, (30<<16)+315, S_GLAREGOYLEDOWN}, // S_GLAREGOYLEDOWN_FIRE3
{SPR_BGAR, 0, 22, {NULL}, 0, 0, S_GLAREGOYLEDOWN_CHARGE}, // S_GLAREGOYLEDOWN
{SPR_BGAR, 2, 6, {NULL}, 0, 0, S_GLAREGOYLEDOWN_BLINK}, // S_GLAREGOYLEDOWN_CHARGE
{SPR_BGAR, FF_ANIMATE|1, 18, {NULL}, 1, 3, S_GLAREGOYLEDOWN_HOLD}, // S_GLAREGOYLEDOWN_BLINK
{SPR_BGAR, 1, 9, {NULL}, 0, 0, S_GLAREGOYLEDOWN_FIRE}, // S_GLAREGOYLEDOWN_HOLD
{SPR_BGAR, 1, 1, {A_TrapShot}, (16<<16)+MT_DEMONFIRE, (30<<16)+315, S_GLAREGOYLEDOWN_LOOP}, // S_GLAREGOYLEDOWN_FIRE
{SPR_BGAR, 1, 0, {A_Repeat}, 3, S_GLAREGOYLEDOWN_FIRE, S_GLAREGOYLEDOWN_COOLDOWN}, // S_GLAREGOYLEDOWN_LOOP
{SPR_BGAR, FF_ANIMATE|1, 15, {NULL}, 1, 9, S_GLAREGOYLEDOWN}, // S_GLAREGOYLEDOWN_COOLDOWN
{SPR_BGAR, 0, 135, {NULL}, 0, 0, S_GLAREGOYLELONG_CHECK}, // S_GLAREGOYLELONG
{SPR_BGAR, 0, 3, {NULL}, 0, 0, S_GLAREGOYLELONG_FIRE1}, // S_GLAREGOYLELONG_CHECK
{SPR_BGAR, 0, 1, {A_TrapShot}, (16<<16)+MT_DEMONFIRE, (30<<16), S_GLAREGOYLELONG_FIRE2}, // S_GLAREGOYLELONG_FIRE1
{SPR_BGAR, 0, 1, {A_TrapShot}, (16<<16)+MT_DEMONFIRE, (30<<16), S_GLAREGOYLELONG_FIRE3}, // S_GLAREGOYLELONG_FIRE2
{SPR_BGAR, 0, 1, {A_TrapShot}, (16<<16)+MT_DEMONFIRE, (30<<16), S_GLAREGOYLELONG_FIRE4}, // S_GLAREGOYLELONG_FIRE3
{SPR_BGAR, 0, 1, {A_TrapShot}, (16<<16)+MT_DEMONFIRE, (30<<16), S_GLAREGOYLELONG_FIRE5}, // S_GLAREGOYLELONG_FIRE4
{SPR_BGAR, 0, 1, {A_TrapShot}, (16<<16)+MT_DEMONFIRE, (30<<16), S_GLAREGOYLELONG}, // S_GLAREGOYLELONG_FIRE5
{SPR_BGAR, 0, 90, {NULL}, 0, 0, S_GLAREGOYLELONG_CHARGE}, // S_GLAREGOYLELONG
{SPR_BGAR, 2, 6, {NULL}, 0, 0, S_GLAREGOYLELONG_BLINK}, // S_GLAREGOYLELONG_CHARGE
{SPR_BGAR, FF_ANIMATE|1, 18, {NULL}, 1, 3, S_GLAREGOYLELONG_HOLD}, // S_GLAREGOYLELONG_BLINK
{SPR_BGAR, 1, 9, {NULL}, 0, 0, S_GLAREGOYLELONG_FIRE}, // S_GLAREGOYLELONG_HOLD
{SPR_BGAR, 1, 1, {A_TrapShot}, (16<<16)+MT_DEMONFIRE, (30<<16), S_GLAREGOYLELONG_LOOP}, // S_GLAREGOYLELONG_FIRE
{SPR_BGAR, 1, 0, {A_Repeat}, 5, S_GLAREGOYLELONG_FIRE, S_GLAREGOYLELONG_COOLDOWN}, // S_GLAREGOYLELONG_LOOP
{SPR_BGAR, FF_ANIMATE|1, 15, {NULL}, 1, 9, S_GLAREGOYLELONG}, // S_GLAREGOYLELONG_COOLDOWN
// Target/Red Crystal
{SPR_RCRY, 0, -1, {NULL}, 0, 0, S_TARGET_IDLE}, // S_TARGET_IDLE

View file

@ -2705,27 +2705,33 @@ typedef enum state
// Glaregoyles
S_GLAREGOYLE,
S_GLAREGOYLE_WARNING,
S_GLAREGOYLE_CHARGE,
S_GLAREGOYLE_BLINK,
S_GLAREGOYLE_HOLD,
S_GLAREGOYLE_FIRE,
S_GLAREGOYLE_LOOP,
S_GLAREGOYLE_COOLDOWN,
S_GLAREGOYLEUP,
S_GLAREGOYLEUP_CHECK,
S_GLAREGOYLEUP_FIRE1,
S_GLAREGOYLEUP_FIRE2,
S_GLAREGOYLEUP_FIRE3,
S_GLAREGOYLEUP_CHARGE,
S_GLAREGOYLEUP_BLINK,
S_GLAREGOYLEUP_HOLD,
S_GLAREGOYLEUP_FIRE,
S_GLAREGOYLEUP_LOOP,
S_GLAREGOYLEUP_COOLDOWN,
S_GLAREGOYLEDOWN,
S_GLAREGOYLEDOWN_CHECK,
S_GLAREGOYLEDOWN_FIRE1,
S_GLAREGOYLEDOWN_FIRE2,
S_GLAREGOYLEDOWN_FIRE3,
S_GLAREGOYLEDOWN_CHARGE,
S_GLAREGOYLEDOWN_BLINK,
S_GLAREGOYLEDOWN_HOLD,
S_GLAREGOYLEDOWN_FIRE,
S_GLAREGOYLEDOWN_LOOP,
S_GLAREGOYLEDOWN_COOLDOWN,
S_GLAREGOYLELONG,
S_GLAREGOYLELONG_CHECK,
S_GLAREGOYLELONG_FIRE1,
S_GLAREGOYLELONG_FIRE2,
S_GLAREGOYLELONG_FIRE3,
S_GLAREGOYLELONG_FIRE4,
S_GLAREGOYLELONG_FIRE5,
S_GLAREGOYLELONG_CHARGE,
S_GLAREGOYLELONG_BLINK,
S_GLAREGOYLELONG_HOLD,
S_GLAREGOYLELONG_FIRE,
S_GLAREGOYLELONG_LOOP,
S_GLAREGOYLELONG_COOLDOWN,
// ATZ's Red Crystal/Target
S_TARGET_IDLE,