mirror of
https://github.com/ZDoom/Raze.git
synced 2025-02-17 01:01:09 +00:00
delete the native states.
This commit is contained in:
parent
b511de7e5f
commit
783bdce27a
26 changed files with 1 additions and 797 deletions
|
@ -33,9 +33,6 @@ BEGIN_BLD_NS
|
|||
|
||||
void RecoilDude(DBloodActor* actor);
|
||||
|
||||
AISTATE genIdle = { kAiStateGenIdle, 0, nullptr, 0, NULL, NULL, NULL, NULL };
|
||||
AISTATE genRecoil = { kAiStateRecoil, 5, nullptr, 20, NULL, NULL, NULL, &genIdle };
|
||||
|
||||
const int gCultTeslaFireChance[5] = { 0x2000, 0x4000, 0x8000, 0xa000, 0xe000 };
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
|
|
|
@ -46,20 +46,12 @@ struct AISTATE {
|
|||
int seqId;
|
||||
VMNativeFunction** funcId;
|
||||
int stateTicks;
|
||||
#if 0
|
||||
void(*enterFunc)(DBloodActor *);
|
||||
void(*moveFunc)(DBloodActor *);
|
||||
void(*thinkFunc)(DBloodActor *);
|
||||
#else
|
||||
VMNativeFunction** enterFunc;
|
||||
VMNativeFunction** moveFunc;
|
||||
VMNativeFunction** thinkFunc;
|
||||
#endif
|
||||
|
||||
AISTATE *nextState;
|
||||
};
|
||||
extern AISTATE aiState[];
|
||||
extern AISTATE genIdle;
|
||||
extern AISTATE genRecoil;
|
||||
|
||||
enum AI_SFX_PRIORITY {
|
||||
AI_SFX_PRIORITY_0 = 0,
|
||||
|
|
|
@ -29,27 +29,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|||
|
||||
BEGIN_BLD_NS
|
||||
|
||||
|
||||
|
||||
AISTATE batIdle = { kAiStateIdle, 0, nullptr, 0, NULL, NULL, &AF(batThinkTarget), NULL };
|
||||
AISTATE batFlyIdle = { kAiStateIdle, 6, nullptr, 0, NULL, NULL, &AF(batThinkTarget), NULL };
|
||||
AISTATE batChase = { kAiStateChase, 6, nullptr, 0, NULL, &AF(batMoveForward), &AF(batThinkChase), &batFlyIdle };
|
||||
AISTATE batPonder = { kAiStateOther, 6, nullptr, 0, NULL, NULL, &AF(batThinkPonder), NULL };
|
||||
AISTATE batGoto = { kAiStateMove, 6, nullptr, 600, NULL, &AF(batMoveForward), &AF(batThinkGoto), &batFlyIdle };
|
||||
AISTATE batBite = { kAiStateChase, 7, &AF(batBiteSeqCallback), 60, NULL, NULL, NULL, &batPonder };
|
||||
AISTATE batRecoil = { kAiStateRecoil, 5, nullptr, 0, NULL, NULL, NULL, &batChase };
|
||||
AISTATE batSearch = { kAiStateSearch, 6, nullptr, 120, NULL, &AF(batMoveForward), &AF(batThinkSearch), &batFlyIdle };
|
||||
AISTATE batSwoop = { kAiStateOther, 6, nullptr, 60, NULL, &AF(batMoveSwoop), &AF(batThinkChase), &batChase };
|
||||
AISTATE batFly = { kAiStateMove, 6, nullptr, 0, NULL, &AF(batMoveFly), &AF(batThinkChase), &batChase };
|
||||
AISTATE batTurn = { kAiStateMove, 6, nullptr, 60, NULL, &AF(aiMoveTurn), NULL, &batChase };
|
||||
AISTATE batHide = { kAiStateOther, 6, nullptr, 0, NULL, &AF(batMoveToCeil), &AF(batMoveForward), NULL };
|
||||
AISTATE batDodgeUp = { kAiStateMove, 6, nullptr, 120, NULL, &AF(batMoveDodgeUp), 0, &batChase };
|
||||
AISTATE batDodgeUpRight = { kAiStateMove, 6, nullptr, 90, NULL, &AF(batMoveDodgeUp), 0, &batChase };
|
||||
AISTATE batDodgeUpLeft = { kAiStateMove, 6, nullptr, 90, NULL, &AF(batMoveDodgeUp), 0, &batChase };
|
||||
AISTATE batDodgeDown = { kAiStateMove, 6, nullptr, 120, NULL, &AF(batMoveDodgeDown), 0, &batChase };
|
||||
AISTATE batDodgeDownRight = { kAiStateMove, 6, nullptr, 90, NULL, &AF(batMoveDodgeDown), 0, &batChase };
|
||||
AISTATE batDodgeDownLeft = { kAiStateMove, 6, nullptr, 90, NULL, &AF(batMoveDodgeDown), 0, &batChase };
|
||||
|
||||
void batBiteSeqCallback(DBloodActor* actor)
|
||||
{
|
||||
if (!actor->ValidateTarget(__FUNCTION__)) return;
|
||||
|
|
|
@ -30,28 +30,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|||
BEGIN_BLD_NS
|
||||
|
||||
|
||||
AISTATE beastIdle = { kAiStateIdle, 0, nullptr, 0, NULL, NULL, &AF(aiThinkTarget), NULL };
|
||||
AISTATE beastChase = { kAiStateChase, 8, nullptr, 0, NULL, &AF(beastMoveForward), &AF(beastThinkChase), NULL };
|
||||
AISTATE beastDodge = { kAiStateMove, 8, nullptr, 60, NULL, &AF(aiMoveDodge), NULL, &beastChase };
|
||||
AISTATE beastGoto = { kAiStateMove, 8, nullptr, 600, NULL, &AF(beastMoveForward), &AF(beastThinkGoto), &beastIdle };
|
||||
AISTATE beastSlash = { kAiStateChase, 6, &AF(SlashSeqCallback), 120, NULL, NULL, NULL, &beastChase };
|
||||
AISTATE beastStomp = { kAiStateChase, 7, &AF(StompSeqCallback), 120, NULL, NULL, NULL, &beastChase };
|
||||
AISTATE beastSearch = { kAiStateSearch, 8, nullptr, 120, NULL, &AF(beastMoveForward), &AF(beastThinkSearch), &beastIdle };
|
||||
AISTATE beastRecoil = { kAiStateRecoil, 5, nullptr, 0, NULL, NULL, NULL, &beastDodge };
|
||||
AISTATE beastTeslaRecoil = { kAiStateRecoil, 4, nullptr, 0, NULL, NULL, NULL, &beastDodge };
|
||||
AISTATE beastSwimIdle = { kAiStateIdle, 9, nullptr, 0, NULL, NULL, &AF(aiThinkTarget), NULL };
|
||||
AISTATE beastSwimChase = { kAiStateChase, 9, nullptr, 0, NULL, &AF(beastMoveSwim), &AF(beastThinkSwimChase), NULL };
|
||||
AISTATE beastSwimDodge = { kAiStateMove, 9, nullptr, 90, NULL, &AF(aiMoveDodge), NULL, &beastSwimChase };
|
||||
AISTATE beastSwimGoto = { kAiStateMove, 9, nullptr, 600, NULL, &AF(beastMoveForward), &AF(beastThinkSwimGoto), &beastSwimIdle };
|
||||
AISTATE beastSwimSearch = { kAiStateSearch, 9, nullptr, 120, NULL, &AF(beastMoveForward), &AF(beastThinkSearch), &beastSwimIdle };
|
||||
AISTATE beastSwimSlash = { kAiStateChase, 9, &AF(SlashSeqCallback), 0, NULL, NULL, &AF(beastThinkSwimChase), &beastSwimChase };
|
||||
AISTATE beastSwimRecoil = { kAiStateRecoil, 5, nullptr, 0, NULL, NULL, NULL, &beastSwimDodge };
|
||||
AISTATE beastMorphToBeast = { kAiStateOther, -1, nullptr, 0, &AF(MorphToBeast), NULL, NULL, &beastIdle };
|
||||
AISTATE beastMorphFromCultist = { kAiStateOther, 2576, nullptr, 0, NULL, NULL, NULL, &beastMorphToBeast };
|
||||
AISTATE beastMoveSwimChaseAlt = { kAiStateOther, 9, nullptr, 120, NULL, &AF(beastMoveSwimAlt), &AF(beastThinkSwimChase), &beastSwimChase };
|
||||
AISTATE beastSwimAttack = { kAiStateOther, 9, nullptr, 0, NULL, &AF(beastMoveIn), &AF(beastThinkSwimChase), &beastSwimChase };
|
||||
AISTATE beastSwimTurn = { kAiStateOther, 9, nullptr, 120, NULL, &AF(aiMoveTurn), NULL, &beastSwimChase };
|
||||
|
||||
void SlashSeqCallback(DBloodActor* actor)
|
||||
{
|
||||
if (!actor->ValidateTarget(__FUNCTION__)) return;
|
||||
|
|
|
@ -30,26 +30,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|||
BEGIN_BLD_NS
|
||||
|
||||
|
||||
|
||||
AISTATE eelIdle = { kAiStateIdle, 0, nullptr, 0, NULL, NULL, &AF(eelThinkTarget), NULL };
|
||||
AISTATE eelFlyIdle = { kAiStateIdle, 0, nullptr, 0, NULL, NULL, &AF(eelThinkTarget), NULL };
|
||||
AISTATE eelChase = { kAiStateChase, 0, nullptr, 0, NULL, &AF(eelMoveForward), &AF(eelThinkChase), &eelIdle };
|
||||
AISTATE eelPonder = { kAiStateOther, 0, nullptr, 0, NULL, NULL, &AF(eelThinkPonder), NULL };
|
||||
AISTATE eelGoto = { kAiStateMove, 0, nullptr, 600, NULL, NULL, &AF(eelThinkGoto), &eelIdle };
|
||||
AISTATE eelBite = { kAiStateChase, 7, &AF(eelBiteSeqCallback), 60, NULL, NULL, NULL, &eelChase };
|
||||
AISTATE eelRecoil = { kAiStateRecoil, 5, nullptr, 0, NULL, NULL, NULL, &eelChase };
|
||||
AISTATE eelSearch = { kAiStateSearch, 0, nullptr, 120, NULL, &AF(eelMoveForward), &AF(eelThinkSearch), &eelIdle };
|
||||
AISTATE eelSwoop = { kAiStateOther, 0, nullptr, 60, NULL, &AF(eelMoveSwoop), &AF(eelThinkChase), &eelChase };
|
||||
AISTATE eelFly = { kAiStateMove, 0, nullptr, 0, NULL, &AF(eelMoveAscend), &AF(eelThinkChase), &eelChase };
|
||||
AISTATE eelTurn = { kAiStateMove, 0, nullptr, 60, NULL, &AF(aiMoveTurn), NULL, &eelChase };
|
||||
AISTATE eelHide = { kAiStateOther, 0, nullptr, 0, NULL, &AF(eelMoveToCeil), &AF(eelMoveForward), NULL };
|
||||
AISTATE eelDodgeUp = { kAiStateMove, 0, nullptr, 120, NULL, &AF(eelMoveDodgeUp), NULL, &eelChase };
|
||||
AISTATE eelDodgeUpRight = { kAiStateMove, 0, nullptr, 90, NULL, &AF(eelMoveDodgeUp), NULL, &eelChase };
|
||||
AISTATE eelDodgeUpLeft = { kAiStateMove, 0, nullptr, 90, NULL, &AF(eelMoveDodgeUp), NULL, &eelChase };
|
||||
AISTATE eelDodgeDown = { kAiStateMove, 0, nullptr, 120, NULL, &AF(eelMoveDodgeDown), NULL, &eelChase };
|
||||
AISTATE eelDodgeDownRight = { kAiStateMove, 0, nullptr, 90, NULL, &AF(eelMoveDodgeDown), NULL, &eelChase };
|
||||
AISTATE eelDodgeDownLeft = { kAiStateMove, 0, nullptr, 90, NULL, &AF(eelMoveDodgeDown), NULL, &eelChase };
|
||||
|
||||
void eelBiteSeqCallback(DBloodActor* actor)
|
||||
{
|
||||
/*
|
||||
|
|
|
@ -30,38 +30,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|||
BEGIN_BLD_NS
|
||||
|
||||
|
||||
AISTATE cultistBurnIdle = { kAiStateIdle, 3, nullptr, 0, NULL, NULL, &AF(aiThinkTarget), NULL };
|
||||
AISTATE cultistBurnChase = { kAiStateChase, 3, nullptr, 0, NULL, &AF(aiMoveForward), &AF(burnThinkChase), NULL };
|
||||
AISTATE cultistBurnGoto = { kAiStateMove, 3, nullptr, 3600, NULL, &AF(aiMoveForward), &AF(burnThinkGoto), &cultistBurnSearch };
|
||||
AISTATE cultistBurnSearch = { kAiStateSearch, 3, nullptr, 3600, NULL, &AF(aiMoveForward), &AF(burnThinkSearch), &cultistBurnSearch };
|
||||
AISTATE cultistBurnAttack = { kAiStateChase, 3, &AF(BurnSeqCallback), 120, NULL, NULL, NULL, &cultistBurnChase };
|
||||
|
||||
AISTATE zombieABurnChase = { kAiStateChase, 3, nullptr, 0, NULL, &AF(aiMoveForward), &AF(burnThinkChase), NULL };
|
||||
AISTATE zombieABurnGoto = { kAiStateMove, 3, nullptr, 3600, NULL, &AF(aiMoveForward), &AF(burnThinkGoto), &zombieABurnSearch };
|
||||
AISTATE zombieABurnSearch = { kAiStateSearch, 3, nullptr, 3600, NULL, &AF(aiMoveForward), &AF(burnThinkSearch), NULL };
|
||||
AISTATE zombieABurnAttack = { kAiStateChase, 3, &AF(BurnSeqCallback), 120, NULL, NULL, NULL, &zombieABurnChase };
|
||||
|
||||
AISTATE zombieFBurnChase = { kAiStateChase, 3, nullptr, 0, NULL, &AF(aiMoveForward), &AF(burnThinkChase), NULL };
|
||||
AISTATE zombieFBurnGoto = { kAiStateMove, 3, nullptr, 3600, NULL, &AF(aiMoveForward), &AF(burnThinkGoto), &zombieFBurnSearch };
|
||||
AISTATE zombieFBurnSearch = { kAiStateSearch, 3, nullptr, 3600, NULL, &AF(aiMoveForward), &AF(burnThinkSearch), NULL };
|
||||
AISTATE zombieFBurnAttack = { kAiStateChase, 3, &AF(BurnSeqCallback), 120, NULL, NULL, NULL, &zombieFBurnChase };
|
||||
|
||||
AISTATE innocentBurnChase = { kAiStateChase, 3, nullptr, 0, NULL, &AF(aiMoveForward), &AF(burnThinkChase), NULL };
|
||||
AISTATE innocentBurnGoto = { kAiStateMove, 3, nullptr, 3600, NULL, &AF(aiMoveForward), &AF(burnThinkGoto), &zombieFBurnSearch };
|
||||
AISTATE innocentBurnSearch = { kAiStateSearch, 3, nullptr, 3600, NULL, &AF(aiMoveForward), &AF(burnThinkSearch), NULL };
|
||||
AISTATE innocentBurnAttack = { kAiStateChase, 3, &AF(BurnSeqCallback), 120, NULL, NULL, NULL, &zombieFBurnChase };
|
||||
|
||||
AISTATE beastBurnChase = { kAiStateChase, 3, nullptr, 0, NULL, &AF(aiMoveForward), &AF(burnThinkChase), NULL };
|
||||
AISTATE beastBurnGoto = { kAiStateMove, 3, nullptr, 3600, NULL, &AF(aiMoveForward), &AF(burnThinkGoto), &beastBurnSearch };
|
||||
AISTATE beastBurnSearch = { kAiStateSearch, 3, nullptr, 3600, NULL, &AF(aiMoveForward), &AF(burnThinkSearch), &beastBurnSearch };
|
||||
AISTATE beastBurnAttack = { kAiStateChase, 3, &AF(BurnSeqCallback), 120, NULL, NULL, NULL, &beastBurnChase };
|
||||
|
||||
AISTATE tinycalebBurnChase = { kAiStateChase, 3, nullptr, 0, NULL, &AF(aiMoveForward), &AF(burnThinkChase), NULL };
|
||||
AISTATE tinycalebBurnGoto = { kAiStateMove, 3, nullptr, 3600, NULL, &AF(aiMoveForward), &AF(burnThinkGoto), &tinycalebBurnSearch };
|
||||
AISTATE tinycalebBurnSearch = { kAiStateSearch, 3, nullptr, 3600, NULL, &AF(aiMoveForward), &AF(burnThinkSearch), &tinycalebBurnSearch };
|
||||
AISTATE tinycalebBurnAttack = { kAiStateChase, 3, &AF(BurnSeqCallback), 120, NULL, NULL, NULL, &tinycalebBurnChase };
|
||||
|
||||
|
||||
void BurnSeqCallback(DBloodActor*)
|
||||
{
|
||||
}
|
||||
|
|
|
@ -29,26 +29,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|||
|
||||
BEGIN_BLD_NS
|
||||
|
||||
|
||||
AISTATE tinycalebIdle = { kAiStateIdle, 0, nullptr, 0, NULL, NULL, &AF(aiThinkTarget), NULL };
|
||||
AISTATE tinycalebChase = { kAiStateChase, 6, nullptr, 0, NULL, &AF(aiMoveForward), &AF(calebThinkChase), NULL };
|
||||
AISTATE tinycalebDodge = { kAiStateMove, 6, nullptr, 90, NULL, &AF(aiMoveDodge), NULL, &tinycalebChase };
|
||||
AISTATE tinycalebGoto = { kAiStateMove, 6, nullptr, 600, NULL, &AF(aiMoveForward), &AF(calebThinkGoto), &tinycalebIdle };
|
||||
AISTATE tinycalebAttack = { kAiStateChase, 0, &AF(SeqAttackCallback), 120, NULL, NULL, NULL, &tinycalebChase };
|
||||
AISTATE tinycalebSearch = { kAiStateSearch, 6, nullptr, 120, NULL, &AF(aiMoveForward), &AF(calebThinkSearch), &tinycalebIdle };
|
||||
AISTATE tinycalebRecoil = { kAiStateRecoil, 5, nullptr, 0, NULL, NULL, NULL, &tinycalebDodge };
|
||||
AISTATE tinycalebTeslaRecoil = { kAiStateRecoil, 4, nullptr, 0, NULL, NULL, NULL, &tinycalebDodge };
|
||||
AISTATE tinycalebSwimIdle = { kAiStateIdle, 10, nullptr, 0, NULL, NULL, &AF(aiThinkTarget), NULL };
|
||||
AISTATE tinycalebSwimChase = { kAiStateChase, 8, nullptr, 0, NULL, &AF(calebMoveSwimChase), &AF(calebThinkSwimChase), NULL };
|
||||
AISTATE tinycalebSwimDodge = { kAiStateMove, 8, nullptr, 90, NULL, &AF(aiMoveDodge), NULL, &tinycalebSwimChase };
|
||||
AISTATE tinycalebSwimGoto = { kAiStateMove, 8, nullptr, 600, NULL, &AF(aiMoveForward), &AF(calebThinkSwimGoto), &tinycalebSwimIdle };
|
||||
AISTATE tinycalebSwimSearch = { kAiStateSearch, 8, nullptr, 120, NULL, &AF(aiMoveForward), &AF(calebThinkSearch), &tinycalebSwimIdle };
|
||||
AISTATE tinycalebSwimAttack = { kAiStateChase, 10, &AF(SeqAttackCallback), 0, NULL, NULL, NULL, &tinycalebSwimChase };
|
||||
AISTATE tinycalebSwimRecoil = { kAiStateRecoil, 5, nullptr, 0, NULL, NULL, NULL, &tinycalebSwimDodge };
|
||||
AISTATE tinycalebSwimUnused = { kAiStateOther, 8, nullptr, 120, NULL, &AF(calebSwimUnused), &AF(calebThinkSwimChase), &tinycalebSwimChase };
|
||||
AISTATE tinycalebSwimMoveIn = { kAiStateOther, 8, nullptr, 0, NULL, &AF(calebSwimMoveIn), &AF(calebThinkSwimChase), &tinycalebSwimChase };
|
||||
AISTATE tinycalebSwimTurn = { kAiStateOther, 8, nullptr, 120, NULL, &AF(aiMoveTurn), NULL, &tinycalebSwimChase };
|
||||
|
||||
void SeqAttackCallback(DBloodActor* actor)
|
||||
{
|
||||
DVector3 vect(actor->spr.Angles.Yaw.ToVector(), actor->dudeSlope);
|
||||
|
|
|
@ -29,28 +29,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|||
|
||||
BEGIN_BLD_NS
|
||||
|
||||
|
||||
|
||||
AISTATE cerberusIdle = { kAiStateIdle, 0, nullptr, 0, NULL, NULL, &AF(cerberusThinkTarget), NULL };
|
||||
AISTATE cerberusSearch = { kAiStateSearch, 7, nullptr, 1800, NULL, &AF(aiMoveForward), &AF(cerberusThinkSearch), &cerberusIdle };
|
||||
AISTATE cerberusChase = { kAiStateChase, 7, nullptr, 0, NULL, &AF(aiMoveForward), &AF(cerberusThinkChase), NULL };
|
||||
AISTATE cerberusRecoil = { kAiStateRecoil, 5, nullptr, 0, NULL, NULL, NULL, &cerberusSearch };
|
||||
AISTATE cerberusTeslaRecoil = { kAiStateRecoil, 4, nullptr, 0, NULL, NULL, NULL, &cerberusSearch };
|
||||
AISTATE cerberusGoto = { kAiStateMove, 7, nullptr, 600, NULL, &AF(aiMoveForward), &AF(cerberusThinkGoto), &cerberusIdle };
|
||||
AISTATE cerberusBite = { kAiStateChase, 6, &AF(cerberusBiteSeqCallback), 60, NULL, NULL, NULL, &cerberusChase };
|
||||
AISTATE cerberusBurn = { kAiStateChase, 6, &AF(cerberusBurnSeqCallback), 60, NULL, NULL, NULL, &cerberusChase };
|
||||
AISTATE cerberus3Burn = { kAiStateChase, 6, &AF(cerberusBurnSeqCallback2), 60, NULL, NULL, NULL, &cerberusChase };
|
||||
AISTATE cerberus2Idle = { kAiStateIdle, 0, nullptr, 0, NULL, NULL, &AF(cerberusThinkTarget), NULL };
|
||||
AISTATE cerberus2Search = { kAiStateSearch, 7, nullptr, 1800, NULL, &AF(aiMoveForward), &AF(cerberusThinkSearch), &cerberus2Idle };
|
||||
AISTATE cerberus2Chase = { kAiStateChase, 7, nullptr, 0, NULL, &AF(aiMoveForward), &AF(cerberusThinkChase), NULL };
|
||||
AISTATE cerberus2Recoil = { kAiStateRecoil, 5, nullptr, 0, NULL, NULL, NULL, &cerberus2Search };
|
||||
AISTATE cerberus2Goto = { kAiStateMove, 7, nullptr, 600, NULL, &AF(aiMoveForward), &AF(cerberusThinkGoto), &cerberus2Idle };
|
||||
AISTATE cerberus2Bite = { kAiStateChase, 6, &AF(cerberusBiteSeqCallback), 60, NULL, NULL, NULL, &cerberus2Chase };
|
||||
AISTATE cerberus2Burn = { kAiStateChase, 6, &AF(cerberusBurnSeqCallback), 60, NULL, NULL, NULL, &cerberus2Chase };
|
||||
AISTATE cerberus4Burn = { kAiStateChase, 6, &AF(cerberusBurnSeqCallback2), 60, NULL, NULL, NULL, &cerberus2Chase };
|
||||
AISTATE cerberusTurn1 = { kAiStateOther, 7, nullptr, 120, NULL, &AF(aiMoveTurn), NULL, &cerberusChase };
|
||||
AISTATE cerberusTurn2 = { kAiStateOther, 7, nullptr, 120, NULL, &AF(aiMoveTurn), NULL, &cerberusChase };
|
||||
|
||||
static constexpr double Cerberus_XYOff = 350. / 16;
|
||||
static constexpr double Cerberus_ZOff = 100. / 256;
|
||||
|
||||
|
|
|
@ -30,46 +30,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|||
BEGIN_BLD_NS
|
||||
|
||||
|
||||
AISTATE cultistIdle = { kAiStateIdle, 0, nullptr, 0, NULL, NULL, &AF(aiThinkTarget), NULL };
|
||||
AISTATE cultistProneIdle = { kAiStateIdle, 17, nullptr, 0, NULL, NULL, &AF(aiThinkTarget), NULL };
|
||||
AISTATE fanaticProneIdle = { kAiStateIdle, 17, nullptr, 0, NULL, NULL, &AF(aiThinkTarget), NULL };
|
||||
AISTATE cultistProneIdle3 = { kAiStateIdle, 17, nullptr, 0, NULL, NULL, &AF(aiThinkTarget), NULL };
|
||||
AISTATE cultistChase = { kAiStateChase, 9, nullptr, 0, NULL, &AF(aiMoveForward), &AF(cultThinkChase), NULL };
|
||||
AISTATE fanaticChase = { kAiStateChase, 0, nullptr, 0, NULL, &AF(aiMoveTurn), &AF(cultThinkChase), NULL };
|
||||
AISTATE cultistDodge = { kAiStateMove, 9, nullptr, 90, NULL, &AF(aiMoveDodge), NULL, &cultistChase };
|
||||
AISTATE cultistGoto = { kAiStateMove, 9, nullptr, 600, NULL, &AF(aiMoveForward), &AF(cultThinkGoto), &cultistIdle };
|
||||
AISTATE cultistProneChase = { kAiStateChase, 14, nullptr, 0, NULL, &AF(aiMoveForward), &AF(cultThinkChase), NULL };
|
||||
AISTATE cultistProneDodge = { kAiStateMove, 14, nullptr, 90, NULL, &AF(aiMoveDodge), NULL, &cultistProneChase };
|
||||
AISTATE cultistTThrow = { kAiStateChase, 7, &AF(cultThrowSeqCallback), 120, NULL, NULL, NULL, &cultistTFire };
|
||||
AISTATE cultistSThrow = { kAiStateChase, 7, &AF(cultThrowSeqCallback), 120, NULL, NULL, NULL, &cultistSFire };
|
||||
AISTATE cultistTsThrow = { kAiStateChase, 7, &AF(cultThrowSeqCallback), 120, NULL, NULL, NULL, &cultistTsFire };
|
||||
AISTATE cultistDThrow = { kAiStateChase, 7, &AF(cultThrowSeqCallback), 120, NULL, NULL, NULL, &cultistChase };
|
||||
AISTATE cultistDThrow2 = { kAiStateChase, 7, &AF(cultThrowSeqCallback2), 120, NULL, NULL, NULL, &cultistChase };
|
||||
AISTATE cultistDThrow3C = { kAiStateChase, 7, &AF(cultThrowSeqCallback3), 120, NULL, NULL, NULL, &cultistIdle };
|
||||
AISTATE cultistDThrow3B = { kAiStateChase, 7, &AF(cultThrowSeqCallback3), 120, NULL, NULL, &AF(cultThinkSearch), &cultistDThrow3C };
|
||||
AISTATE cultistDThrow3A = { kAiStateChase, 7, &AF(cultThrowSeqCallback3), 120, NULL, NULL, &AF(cultThinkSearch), &cultistDThrow3B };
|
||||
AISTATE cultistDThrow4 = { kAiStateChase, 7, &AF(cultThrowSeqCallback3), 120, NULL, NULL, &AF(cultThinkSearch), &cultistDThrow4 };
|
||||
AISTATE cultistSearch = { kAiStateSearch, 9, nullptr, 1800, NULL, &AF(aiMoveForward), &AF(cultThinkSearch), &cultistIdle };
|
||||
AISTATE cultistSFire = { kAiStateChase, 6, &AF(ShotSeqCallback), 60, NULL, NULL, NULL, &cultistChase };
|
||||
AISTATE cultistTFire = { kAiStateChase, 6, &AF(TommySeqCallback), 0, NULL, &AF(aiMoveTurn), &AF(cultThinkChase), &cultistTFire };
|
||||
AISTATE cultistTsFire = { kAiStateChase, 6, &AF(TeslaSeqCallback), 0, NULL, &AF(aiMoveTurn), &AF(cultThinkChase), &cultistChase };
|
||||
AISTATE cultistSProneFire = { kAiStateChase, 8, &AF(ShotSeqCallback), 60, NULL, NULL, NULL, &cultistProneChase };
|
||||
AISTATE cultistTProneFire = { kAiStateChase, 8, &AF(TommySeqCallback), 0, NULL, &AF(aiMoveTurn), &AF(cultThinkChase), &cultistTProneFire };
|
||||
AISTATE cultistTsProneFire = { kAiStateChase, 8, &AF(TeslaSeqCallback), 0, NULL, &AF(aiMoveTurn), NULL, &cultistTsProneFire }; // vanilla, broken
|
||||
AISTATE cultistTsProneFireFixed = { kAiStateChase, 8, &AF(TeslaSeqCallback), 0, NULL, &AF(aiMoveTurn), &AF(cultThinkChase), &cultistTsProneFireFixed };
|
||||
AISTATE cultistRecoil = { kAiStateRecoil, 5, nullptr, 0, NULL, NULL, NULL, &cultistDodge };
|
||||
AISTATE cultistProneRecoil = { kAiStateRecoil, 5, nullptr, 0, NULL, NULL, NULL, &cultistProneDodge };
|
||||
AISTATE cultistTeslaRecoil = { kAiStateRecoil, 4, nullptr, 0, NULL, NULL, NULL, &cultistDodge };
|
||||
AISTATE cultistSwimIdle = { kAiStateIdle, 13, nullptr, 0, NULL, NULL, &AF(aiThinkTarget), NULL };
|
||||
AISTATE cultistSwimChase = { kAiStateChase, 13, nullptr, 0, NULL, &AF(aiMoveForward), &AF(cultThinkChase), NULL };
|
||||
AISTATE cultistSwimDodge = { kAiStateMove, 13, nullptr, 90, NULL, &AF(aiMoveDodge), NULL, &cultistSwimChase };
|
||||
AISTATE cultistSwimGoto = { kAiStateMove, 13, nullptr, 600, NULL, &AF(aiMoveForward), &AF(cultThinkGoto), &cultistSwimIdle };
|
||||
AISTATE cultistSwimSearch = { kAiStateSearch, 13, nullptr, 1800, NULL, &AF(aiMoveForward), &AF(cultThinkSearch), &cultistSwimIdle };
|
||||
AISTATE cultistSSwimFire = { kAiStateChase, 8, &AF(ShotSeqCallback), 60, NULL, NULL, NULL, &cultistSwimChase };
|
||||
AISTATE cultistTSwimFire = { kAiStateChase, 8, &AF(TommySeqCallback), 0, NULL, &AF(aiMoveTurn), &AF(cultThinkChase), &cultistTSwimFire };
|
||||
AISTATE cultistTsSwimFire = { kAiStateChase, 8, &AF(TeslaSeqCallback), 0, NULL, &AF(aiMoveTurn), &AF(cultThinkChase), &cultistTsSwimFire };
|
||||
AISTATE cultistSwimRecoil = { kAiStateRecoil, 5, nullptr, 0, NULL, NULL, NULL, &cultistSwimDodge };
|
||||
|
||||
void TommySeqCallback(DBloodActor* actor)
|
||||
{
|
||||
DVector3 vect(actor->spr.Angles.Yaw.ToVector(), actor->dudeSlope);
|
||||
|
|
|
@ -30,33 +30,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|||
BEGIN_BLD_NS
|
||||
|
||||
|
||||
AISTATE gargoyleFIdle = { kAiStateIdle, 0, nullptr, 0, NULL, NULL, &AF(gargThinkTarget), NULL };
|
||||
AISTATE gargoyleStatueIdle = { kAiStateIdle, 0, nullptr, 0, NULL, NULL, NULL, NULL };
|
||||
AISTATE gargoyleFChase = { kAiStateChase, 0, nullptr, 0, NULL, &AF(gargMoveForward), &AF(gargThinkChase), &gargoyleFIdle };
|
||||
AISTATE gargoyleFGoto = { kAiStateMove, 0, nullptr, 600, NULL, &AF(gargMoveForward), &AF(gargThinkGoto), &gargoyleFIdle };
|
||||
AISTATE gargoyleFSlash = { kAiStateChase, 6, &AF(SlashFSeqCallback), 120, NULL, NULL, NULL, &gargoyleFChase };
|
||||
AISTATE gargoyleFThrow = { kAiStateChase, 6, &AF(ThrowFSeqCallback), 120, NULL, NULL, NULL, &gargoyleFChase };
|
||||
AISTATE gargoyleSThrow = { kAiStateChase, 6, &AF(ThrowSSeqCallback), 120, NULL, &AF(gargMoveForward), NULL, &gargoyleFChase };
|
||||
AISTATE gargoyleSBlast = { kAiStateChase, 7, &AF(BlastSSeqCallback), 60, NULL, &AF(gargMoveSlow), NULL, &gargoyleFChase };
|
||||
AISTATE gargoyleFRecoil = { kAiStateRecoil, 5, nullptr, 0, NULL, NULL, NULL, &gargoyleFChase };
|
||||
AISTATE gargoyleFSearch = { kAiStateSearch, 0, nullptr, 120, NULL, &AF(gargMoveForward), &AF(gargThinkSearch), &gargoyleFIdle };
|
||||
AISTATE gargoyleFMorph2 = { kAiStateOther, -1, nullptr, 0, &AF(entryFStatue), NULL, NULL, &gargoyleFIdle };
|
||||
AISTATE gargoyleFMorph = { kAiStateOther, 6, nullptr, 0, NULL, NULL, NULL, &gargoyleFMorph2 };
|
||||
AISTATE gargoyleSMorph2 = { kAiStateOther, -1, nullptr, 0, &AF(entrySStatue), NULL, NULL, &gargoyleFIdle };
|
||||
AISTATE gargoyleSMorph = { kAiStateOther, 6, nullptr, 0, NULL, NULL, NULL, &gargoyleSMorph2 };
|
||||
AISTATE gargoyleSwoop = { kAiStateOther, 0, nullptr, 120, NULL, &AF(gargMoveSwoop), &AF(gargThinkChase), &gargoyleFChase };
|
||||
AISTATE gargoyleFly = { kAiStateMove, 0, nullptr, 120, NULL, &AF(gargMoveFly), &AF(gargThinkChase), &gargoyleFChase };
|
||||
AISTATE gargoyleTurn = { kAiStateMove, 0, nullptr, 120, NULL, &AF(aiMoveTurn), NULL, &gargoyleFChase };
|
||||
AISTATE gargoyleDodgeUp = { kAiStateMove, 0, nullptr, 60, NULL, &AF(gargMoveDodgeUp), NULL, &gargoyleFChase };
|
||||
AISTATE gargoyleFDodgeUpRight = { kAiStateMove, 0, nullptr, 90, NULL, &AF(gargMoveDodgeUp), NULL, &gargoyleFChase };
|
||||
AISTATE gargoyleFDodgeUpLeft = { kAiStateMove, 0, nullptr, 90, NULL, &AF(gargMoveDodgeUp), NULL, &gargoyleFChase };
|
||||
AISTATE gargoyleDodgeDown = { kAiStateMove, 0, nullptr, 120, NULL, &AF(gargMoveDodgeDown), NULL, &gargoyleFChase };
|
||||
AISTATE gargoyleFDodgeDownRight = { kAiStateMove, 0, nullptr, 90, NULL, &AF(gargMoveDodgeDown), NULL, &gargoyleFChase };
|
||||
AISTATE gargoyleFDodgeDownLeft = { kAiStateMove, 0, nullptr, 90, NULL, &AF(gargMoveDodgeDown), NULL, &gargoyleFChase };
|
||||
|
||||
AISTATE statueFBreakSEQ = { kAiStateOther, 5, nullptr, 0, &AF(entryFStatue), NULL, &AF(playStatueBreakSnd), &gargoyleFMorph2 };
|
||||
AISTATE statueSBreakSEQ = { kAiStateOther, 5, nullptr, 0, &AF(entrySStatue), NULL, &AF(playStatueBreakSnd), &gargoyleSMorph2 };
|
||||
|
||||
void playStatueBreakSnd(DBloodActor* actor) {
|
||||
|
||||
aiPlay3DSound(actor, 313, AI_SFX_PRIORITY_1, -1);
|
||||
|
|
|
@ -29,27 +29,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|||
|
||||
BEGIN_BLD_NS
|
||||
|
||||
|
||||
|
||||
AISTATE ghostIdle = { kAiStateIdle, 0, nullptr, 0, NULL, NULL, &AF(ghostThinkTarget), NULL };
|
||||
AISTATE ghostChase = { kAiStateChase, 0, nullptr, 0, NULL, &AF(ghostMoveForward), &AF(ghostThinkChase), &ghostIdle };
|
||||
AISTATE ghostGoto = { kAiStateMove, 0, nullptr, 600, NULL, &AF(ghostMoveForward), &AF(ghostThinkGoto), &ghostIdle };
|
||||
AISTATE ghostSlash = { kAiStateChase, 6, &AF(ghostSlashSeqCallback), 120, NULL, NULL, NULL, &ghostChase };
|
||||
AISTATE ghostThrow = { kAiStateChase, 6, &AF(ghostThrowSeqCallback), 120, NULL, NULL, NULL, &ghostChase };
|
||||
AISTATE ghostBlast = { kAiStateChase, 6, &AF(ghostBlastSeqCallback), 120, NULL, &AF(ghostMoveSlow), NULL, &ghostChase };
|
||||
AISTATE ghostRecoil = { kAiStateRecoil, 5, nullptr, 0, NULL, NULL, NULL, &ghostChase };
|
||||
AISTATE ghostTeslaRecoil = { kAiStateRecoil, 4, nullptr, 0, NULL, NULL, NULL, &ghostChase };
|
||||
AISTATE ghostSearch = { kAiStateSearch, 0, nullptr, 120, NULL, &AF(ghostMoveForward), &AF(ghostThinkSearch), &ghostIdle };
|
||||
AISTATE ghostSwoop = { kAiStateOther, 0, nullptr, 120, NULL, &AF(ghostMoveSwoop), &AF(ghostThinkChase), &ghostChase };
|
||||
AISTATE ghostFly = { kAiStateMove, 0, nullptr, 0, NULL, &AF(ghostMoveFly), &AF(ghostThinkChase), &ghostChase };
|
||||
AISTATE ghostTurn = { kAiStateMove, 0, nullptr, 120, NULL, &AF(aiMoveTurn), NULL, &ghostChase };
|
||||
AISTATE ghostDodgeUp = { kAiStateMove, 0, nullptr, 60, NULL, &AF(ghostMoveDodgeUp), NULL, &ghostChase };
|
||||
AISTATE ghostDodgeUpRight = { kAiStateMove, 0, nullptr, 90, NULL, &AF(ghostMoveDodgeUp), NULL, &ghostChase };
|
||||
AISTATE ghostDodgeUpLeft = { kAiStateMove, 0, nullptr, 90, NULL, &AF(ghostMoveDodgeUp), NULL, &ghostChase };
|
||||
AISTATE ghostDodgeDown = { kAiStateMove, 0, nullptr, 120, NULL, &AF(ghostMoveDodgeDown), NULL, &ghostChase };
|
||||
AISTATE ghostDodgeDownRight = { kAiStateMove, 0, nullptr, 90, NULL, &AF(ghostMoveDodgeDown), NULL, &ghostChase };
|
||||
AISTATE ghostDodgeDownLeft = { kAiStateMove, 0, nullptr, 90, NULL, &AF(ghostMoveDodgeDown), NULL, &ghostChase };
|
||||
|
||||
void ghostSlashSeqCallback(DBloodActor* actor)
|
||||
{
|
||||
if (!actor->ValidateTarget(__FUNCTION__)) return;
|
||||
|
|
|
@ -29,26 +29,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|||
|
||||
BEGIN_BLD_NS
|
||||
|
||||
|
||||
|
||||
AISTATE gillBeastIdle = { kAiStateIdle, 0, nullptr, 0, NULL, NULL, &AF(aiThinkTarget), NULL };
|
||||
AISTATE gillBeastChase = { kAiStateChase, 9, nullptr, 0, NULL, &AF(aiMoveForward), &AF(gillThinkChase), NULL };
|
||||
AISTATE gillBeastDodge = { kAiStateMove, 9, nullptr, 90, NULL, &AF(aiMoveDodge), NULL, &gillBeastChase };
|
||||
AISTATE gillBeastGoto = { kAiStateMove, 9, nullptr, 600, NULL, &AF(aiMoveForward), &AF(gillThinkGoto), &gillBeastIdle };
|
||||
AISTATE gillBeastBite = { kAiStateChase, 6, &AF(GillBiteSeqCallback), 120, NULL, NULL, NULL, &gillBeastChase };
|
||||
AISTATE gillBeastSearch = { kAiStateMove, 9, nullptr, 120, NULL, &AF(aiMoveForward), &AF(gillThinkSearch), &gillBeastIdle };
|
||||
AISTATE gillBeastRecoil = { kAiStateRecoil, 5, nullptr, 0, NULL, NULL, NULL, &gillBeastDodge };
|
||||
AISTATE gillBeastSwimIdle = { kAiStateIdle, 10, nullptr, 0, NULL, NULL, &AF(aiThinkTarget), NULL };
|
||||
AISTATE gillBeastSwimChase = { kAiStateChase, 10, nullptr, 0, NULL, &AF(gillMoveSwimChase), &AF(gillThinkSwimChase), NULL };
|
||||
AISTATE gillBeastSwimDodge = { kAiStateMove, 10, nullptr, 90, NULL, &AF(aiMoveDodge), NULL, &gillBeastSwimChase };
|
||||
AISTATE gillBeastSwimGoto = { kAiStateMove, 10, nullptr, 600, NULL, &AF(aiMoveForward), &AF(gillThinkSwimGoto), &gillBeastSwimIdle };
|
||||
AISTATE gillBeastSwimSearch = { kAiStateSearch, 10, nullptr, 120, NULL, &AF(aiMoveForward), &AF(gillThinkSearch), &gillBeastSwimIdle };
|
||||
AISTATE gillBeastSwimBite = { kAiStateChase, 7, &AF(GillBiteSeqCallback), 0, NULL, NULL, &AF(gillThinkSwimChase), &gillBeastSwimChase };
|
||||
AISTATE gillBeastSwimRecoil = { kAiStateRecoil, 5, nullptr, 0, NULL, NULL, NULL, &gillBeastSwimDodge };
|
||||
AISTATE gillBeastSwimUnused = { kAiStateOther, 10, nullptr, 120, NULL, &AF(gillMoveSwimUnused), &AF(gillThinkSwimChase), &gillBeastSwimChase };
|
||||
AISTATE gillBeastSwimMoveIn = { kAiStateOther, 10, nullptr, 0, NULL, &AF(gillSwimMoveIn), &AF(gillThinkSwimChase), &gillBeastSwimChase };
|
||||
AISTATE gillBeastSwimTurn = { kAiStateOther, 10, nullptr, 120, NULL, NULL, &AF(aiMoveTurn), &gillBeastSwimChase };
|
||||
|
||||
void GillBiteSeqCallback(DBloodActor* actor)
|
||||
{
|
||||
if (!actor->ValidateTarget(__FUNCTION__)) return;
|
||||
|
|
|
@ -29,15 +29,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|||
|
||||
BEGIN_BLD_NS
|
||||
|
||||
|
||||
AISTATE handIdle = { kAiStateIdle, 0, nullptr, 0, NULL, NULL, &AF(aiThinkTarget), NULL };
|
||||
AISTATE handChoke = { kAiStateOther, 0, nullptr, 0, NULL, NULL, NULL, NULL };
|
||||
AISTATE handSearch = { kAiStateMove, 6, nullptr, 600, NULL, &AF(aiMoveForward), &AF(handThinkSearch), &handIdle };
|
||||
AISTATE handChase = { kAiStateChase, 6, nullptr, 0, NULL, &AF(aiMoveForward), &AF(handThinkChase), NULL };
|
||||
AISTATE handRecoil = { kAiStateRecoil, 5, nullptr, 0, NULL, NULL, NULL, &handSearch };
|
||||
AISTATE handGoto = { kAiStateMove, 6, nullptr, 1800, NULL, &AF(aiMoveForward), &AF(handThinkGoto), &handIdle };
|
||||
AISTATE handJump = { kAiStateChase, 7, &AF(HandJumpSeqCallback), 120, NULL, NULL, NULL, &handChase };
|
||||
|
||||
void HandJumpSeqCallback(DBloodActor* actor)
|
||||
{
|
||||
if (!actor->ValidateTarget(__FUNCTION__)) return;
|
||||
|
|
|
@ -29,16 +29,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|||
|
||||
BEGIN_BLD_NS
|
||||
|
||||
|
||||
AISTATE houndIdle = { kAiStateIdle, 0, nullptr, 0, NULL, NULL, &AF(aiThinkTarget), NULL };
|
||||
AISTATE houndSearch = { kAiStateMove, 8, nullptr, 1800, NULL, &AF(aiMoveForward), &AF(houndThinkSearch), &houndIdle };
|
||||
AISTATE houndChase = { kAiStateChase, 8, nullptr, 0, NULL, &AF(aiMoveForward), &AF(houndThinkChase), NULL };
|
||||
AISTATE houndRecoil = { kAiStateRecoil, 5, nullptr, 0, NULL, NULL, NULL, &houndSearch };
|
||||
AISTATE houndTeslaRecoil = { kAiStateRecoil, 4, nullptr, 0, NULL, NULL, NULL, &houndSearch };
|
||||
AISTATE houndGoto = { kAiStateMove, 8, nullptr, 600, NULL, &AF(aiMoveForward), &AF(houndThinkGoto), &houndIdle };
|
||||
AISTATE houndBite = { kAiStateChase, 6, &AF(houndBiteSeqCallback), 60, NULL, NULL, NULL, &houndChase };
|
||||
AISTATE houndBurn = { kAiStateChase, 7, &AF(houndBurnSeqCallback), 60, NULL, NULL, NULL, &houndChase };
|
||||
|
||||
void houndBiteSeqCallback(DBloodActor* actor)
|
||||
{
|
||||
if (!(actor->IsDudeActor())) {
|
||||
|
|
|
@ -29,14 +29,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|||
|
||||
BEGIN_BLD_NS
|
||||
|
||||
|
||||
AISTATE innocentIdle = { kAiStateIdle, 0, nullptr, 0, NULL, NULL, &AF(aiThinkTarget), NULL };
|
||||
AISTATE innocentSearch = { kAiStateSearch, 6, nullptr, 1800, NULL, &AF(aiMoveForward), &AF(innocThinkSearch), &innocentIdle };
|
||||
AISTATE innocentChase = { kAiStateChase, 6, nullptr, 0, NULL, &AF(aiMoveForward), &AF(innocThinkChase), NULL };
|
||||
AISTATE innocentRecoil = { kAiStateRecoil, 5, nullptr, 0, NULL, NULL, NULL, &innocentChase };
|
||||
AISTATE innocentTeslaRecoil = { kAiStateRecoil, 4, nullptr, 0, NULL, NULL, NULL, &innocentChase };
|
||||
AISTATE innocentGoto = { kAiStateMove, 6, nullptr, 600, NULL, &AF(aiMoveForward), &AF(innocThinkGoto), &innocentIdle };
|
||||
|
||||
void innocThinkSearch(DBloodActor* actor)
|
||||
{
|
||||
aiChooseDirection(actor, actor->xspr.goalAng);
|
||||
|
|
|
@ -29,24 +29,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|||
|
||||
BEGIN_BLD_NS
|
||||
|
||||
|
||||
AISTATE podIdle = { kAiStateIdle, 0, nullptr, 0, NULL, NULL, &AF(aiThinkTarget), NULL };
|
||||
AISTATE podMove = { kAiStateMove, 7, nullptr, 3600, NULL, &AF(aiMoveTurn), &AF(aiPodMove), &podSearch };
|
||||
AISTATE podSearch = { kAiStateSearch, 0, nullptr, 3600, NULL, &AF(aiMoveTurn), &AF(aiPodSearch), &podSearch };
|
||||
AISTATE podStartChase = { kAiStateChase, 8, &AF(podAttack), 600, NULL, NULL, NULL, &podChase };
|
||||
AISTATE podRecoil = { kAiStateRecoil, 5, nullptr, 0, NULL, NULL, NULL, &podChase };
|
||||
AISTATE podChase = { kAiStateChase, 6, nullptr, 0, NULL, &AF(aiMoveTurn), &AF(aiPodChase), NULL };
|
||||
AISTATE tentacleIdle = { kAiStateIdle, 0, nullptr, 0, NULL, NULL, &AF(aiThinkTarget), NULL };
|
||||
AISTATE tentaclePlaySound1 = { kAiStateOther, 7, &AF(podPlaySound1), 0, NULL, NULL, NULL, &tentaclePlaySound1A };
|
||||
AISTATE tentaclePlaySound1A = { kAiStateOther, -1, nullptr, 0, NULL, NULL, NULL, &tentacleChase };
|
||||
AISTATE tentaclePlaySound2 = { kAiStateOther, 8, &AF(podPlaySound2), 0, NULL, NULL, NULL, &tentaclePlaySound2A };
|
||||
AISTATE tentaclePlaySound2A = { kAiStateOther, -1, nullptr, 0, NULL, NULL, NULL, &tentacleIdle };
|
||||
AISTATE tentacleMove = { kAiStateOther, 8, nullptr, 3600, NULL, &AF(aiMoveTurn), &AF(aiPodMove), &tentacleSearch };
|
||||
AISTATE tentacleSearch = { kAiStateOther, 0, nullptr, 3600, NULL, &AF(aiMoveTurn), &AF(aiPodSearch), NULL };
|
||||
AISTATE tentacleStartChase = { kAiStateOther, 6, &AF(podExplode), 120, NULL, NULL, NULL, &tentacleChase };
|
||||
AISTATE tentacleRecoil = { kAiStateRecoil, 5, nullptr, 0, NULL, NULL, NULL, &tentacleChase };
|
||||
AISTATE tentacleChase = { kAiStateChase, 6, nullptr, 0, NULL, &AF(aiMoveTurn), &AF(aiPodChase), NULL };
|
||||
|
||||
void podPlaySound1(DBloodActor* actor)
|
||||
{
|
||||
sfxPlay3DSound(actor, 2503, -1, 0);
|
||||
|
|
|
@ -29,14 +29,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|||
|
||||
BEGIN_BLD_NS
|
||||
|
||||
AISTATE ratIdle = { kAiStateIdle, 0, nullptr, 0, NULL, NULL, &AF(aiThinkTarget), NULL };
|
||||
AISTATE ratSearch = { kAiStateSearch, 7, nullptr, 1800, NULL, &AF(aiMoveForward), &AF(ratThinkSearch), &ratIdle };
|
||||
AISTATE ratChase = { kAiStateChase, 7, nullptr, 0, NULL, &AF(aiMoveForward), &AF(ratThinkChase), NULL };
|
||||
AISTATE ratDodge = { kAiStateMove, 7, nullptr, 0, NULL, NULL, NULL, &ratChase };
|
||||
AISTATE ratRecoil = { kAiStateRecoil, 7, nullptr, 0, NULL, NULL, NULL, &ratDodge };
|
||||
AISTATE ratGoto = { kAiStateMove, 7, nullptr, 600, NULL, &AF(aiMoveForward), &AF(ratThinkGoto), &ratIdle };
|
||||
AISTATE ratBite = { kAiStateChase, 6, &AF(ratBiteSeqCallback), 120, NULL, NULL, NULL, &ratChase };
|
||||
|
||||
void ratBiteSeqCallback(DBloodActor* actor)
|
||||
{
|
||||
assert(actor->IsDudeActor());
|
||||
|
|
|
@ -29,17 +29,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|||
|
||||
BEGIN_BLD_NS
|
||||
|
||||
|
||||
|
||||
AISTATE spidIdle = { kAiStateIdle, 0, nullptr, 0, NULL, NULL, &AF(aiThinkTarget), NULL };
|
||||
AISTATE spidChase = { kAiStateChase, 7, nullptr, 0, NULL, &AF(aiMoveForward), &AF(spidThinkChase), NULL };
|
||||
AISTATE spidDodge = { kAiStateMove, 7, nullptr, 90, NULL, &AF(aiMoveDodge), NULL, &spidChase };
|
||||
AISTATE spidGoto = { kAiStateMove, 7, nullptr, 600, NULL, &AF(aiMoveForward), &AF(spidThinkGoto), &spidIdle };
|
||||
AISTATE spidSearch = { kAiStateSearch, 7, nullptr, 1800, NULL, &AF(aiMoveForward), &AF(spidThinkSearch), &spidIdle };
|
||||
AISTATE spidBite = { kAiStateChase, 6, &AF(SpidBiteSeqCallback), 60, NULL, NULL, NULL, &spidChase };
|
||||
AISTATE spidJump = { kAiStateChase, 8, &AF(SpidJumpSeqCallback), 60, NULL, &AF(aiMoveForward), NULL, &spidChase };
|
||||
AISTATE spidBirth = { kAiStateOther, 0, &AF(SpidBirthSeqCallback), 60, NULL, NULL, NULL, &spidIdle };
|
||||
|
||||
static void spidBlindEffect(DBloodActor* actor, int nBlind, int max)
|
||||
{
|
||||
if (actor->IsPlayerActor())
|
||||
|
|
|
@ -1,355 +0,0 @@
|
|||
//-------------------------------------------------------------------------
|
||||
/*
|
||||
Copyright (C) 2010-2019 EDuke32 developers and contributors
|
||||
Copyright (C) 2019 Nuke.YKT
|
||||
|
||||
This file is part of NBlood.
|
||||
|
||||
NBlood is free software; you can redistribute it and/or
|
||||
modify it under the terms of the GNU General Public License version 2
|
||||
as published by the Free Software Foundation.
|
||||
|
||||
This program is distributed in the hope that it will be useful,
|
||||
but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||
|
||||
See the GNU General Public License for more details.
|
||||
|
||||
You should have received a copy of the GNU General Public License
|
||||
along with this program; if not, write to the Free Software
|
||||
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
||||
*/
|
||||
//-------------------------------------------------------------------------
|
||||
#pragma once
|
||||
#include "ai.h"
|
||||
|
||||
BEGIN_BLD_NS
|
||||
|
||||
extern AISTATE batIdle;
|
||||
extern AISTATE batFlyIdle;
|
||||
extern AISTATE batChase;
|
||||
extern AISTATE batPonder;
|
||||
extern AISTATE batGoto;
|
||||
extern AISTATE batBite;
|
||||
extern AISTATE batRecoil;
|
||||
extern AISTATE batSearch;
|
||||
extern AISTATE batSwoop;
|
||||
extern AISTATE batFly;
|
||||
extern AISTATE batTurn;
|
||||
extern AISTATE batHide;
|
||||
extern AISTATE batDodgeUp;
|
||||
extern AISTATE batDodgeUpRight;
|
||||
extern AISTATE batDodgeUpLeft;
|
||||
extern AISTATE batDodgeDown;
|
||||
extern AISTATE batDodgeDownRight;
|
||||
extern AISTATE batDodgeDownLeft;
|
||||
|
||||
extern AISTATE beastIdle;
|
||||
extern AISTATE beastChase;
|
||||
extern AISTATE beastDodge;
|
||||
extern AISTATE beastGoto;
|
||||
extern AISTATE beastSlash;
|
||||
extern AISTATE beastStomp;
|
||||
extern AISTATE beastSearch;
|
||||
extern AISTATE beastRecoil;
|
||||
extern AISTATE beastTeslaRecoil;
|
||||
extern AISTATE beastSwimIdle;
|
||||
extern AISTATE beastSwimChase;
|
||||
extern AISTATE beastSwimDodge;
|
||||
extern AISTATE beastSwimGoto;
|
||||
extern AISTATE beastSwimSearch;
|
||||
extern AISTATE beastSwimSlash;
|
||||
extern AISTATE beastSwimRecoil;
|
||||
extern AISTATE beastMorphToBeast;
|
||||
extern AISTATE beastMorphFromCultist;
|
||||
extern AISTATE beastMoveSwimChaseAlt;
|
||||
extern AISTATE beastSwimAttack;
|
||||
extern AISTATE beastSwimTurn;
|
||||
|
||||
extern AISTATE eelIdle;
|
||||
extern AISTATE eelFlyIdle;
|
||||
extern AISTATE eelChase;
|
||||
extern AISTATE eelPonder;
|
||||
extern AISTATE eelGoto;
|
||||
extern AISTATE eelBite;
|
||||
extern AISTATE eelRecoil;
|
||||
extern AISTATE eelSearch;
|
||||
extern AISTATE eelSwoop;
|
||||
extern AISTATE eelFly;
|
||||
extern AISTATE eelTurn;
|
||||
extern AISTATE eelHide;
|
||||
extern AISTATE eelDodgeUp;
|
||||
extern AISTATE eelDodgeUpRight;
|
||||
extern AISTATE eelDodgeUpLeft;
|
||||
extern AISTATE eelDodgeDown;
|
||||
extern AISTATE eelDodgeDownRight;
|
||||
extern AISTATE eelDodgeDownLeft;
|
||||
|
||||
extern AISTATE cultistBurnIdle;
|
||||
extern AISTATE cultistBurnChase;
|
||||
extern AISTATE cultistBurnGoto;
|
||||
extern AISTATE cultistBurnSearch;
|
||||
extern AISTATE cultistBurnAttack;
|
||||
extern AISTATE zombieABurnChase;
|
||||
extern AISTATE zombieABurnGoto;
|
||||
extern AISTATE zombieABurnSearch;
|
||||
extern AISTATE zombieABurnAttack;
|
||||
extern AISTATE zombieFBurnChase;
|
||||
extern AISTATE zombieFBurnGoto;
|
||||
extern AISTATE zombieFBurnSearch;
|
||||
extern AISTATE zombieFBurnAttack;
|
||||
extern AISTATE innocentBurnChase;
|
||||
extern AISTATE innocentBurnGoto;
|
||||
extern AISTATE innocentBurnSearch;
|
||||
extern AISTATE innocentBurnAttack;
|
||||
extern AISTATE beastBurnChase;
|
||||
extern AISTATE beastBurnGoto;
|
||||
extern AISTATE beastBurnSearch;
|
||||
extern AISTATE beastBurnAttack;
|
||||
extern AISTATE tinycalebBurnChase;
|
||||
extern AISTATE tinycalebBurnGoto;
|
||||
extern AISTATE tinycalebBurnSearch;
|
||||
extern AISTATE tinycalebBurnAttack;
|
||||
|
||||
|
||||
extern AISTATE tinycalebIdle;
|
||||
extern AISTATE tinycalebChase;
|
||||
extern AISTATE tinycalebDodge;
|
||||
extern AISTATE tinycalebGoto;
|
||||
extern AISTATE tinycalebAttack;
|
||||
extern AISTATE tinycalebSearch;
|
||||
extern AISTATE tinycalebRecoil;
|
||||
extern AISTATE tinycalebTeslaRecoil;
|
||||
extern AISTATE tinycalebSwimIdle;
|
||||
extern AISTATE tinycalebSwimChase;
|
||||
extern AISTATE tinycalebSwimDodge;
|
||||
extern AISTATE tinycalebSwimGoto;
|
||||
extern AISTATE tinycalebSwimSearch;
|
||||
extern AISTATE tinycalebSwimAttack;
|
||||
extern AISTATE tinycalebSwimRecoil;
|
||||
extern AISTATE tinycalebSwimUnused;
|
||||
extern AISTATE tinycalebSwimMoveIn;
|
||||
extern AISTATE tinycalebSwimTurn;
|
||||
|
||||
extern AISTATE cerberusIdle;
|
||||
extern AISTATE cerberusSearch;
|
||||
extern AISTATE cerberusChase;
|
||||
extern AISTATE cerberusRecoil;
|
||||
extern AISTATE cerberusTeslaRecoil;
|
||||
extern AISTATE cerberusGoto;
|
||||
extern AISTATE cerberusBite;
|
||||
extern AISTATE cerberusBurn;
|
||||
extern AISTATE cerberus3Burn;
|
||||
extern AISTATE cerberus2Idle;
|
||||
extern AISTATE cerberus2Search;
|
||||
extern AISTATE cerberus2Chase;
|
||||
extern AISTATE cerberus2Recoil;
|
||||
extern AISTATE cerberus2Goto;
|
||||
extern AISTATE cerberus2Bite;
|
||||
extern AISTATE cerberus2Burn;
|
||||
extern AISTATE cerberus4Burn;
|
||||
extern AISTATE cerberusTurn1;
|
||||
extern AISTATE cerberusTurn2;
|
||||
|
||||
extern AISTATE cultistIdle;
|
||||
extern AISTATE cultistProneIdle;
|
||||
extern AISTATE fanaticProneIdle;
|
||||
extern AISTATE cultistProneIdle3;
|
||||
extern AISTATE cultistChase;
|
||||
extern AISTATE fanaticChase;
|
||||
extern AISTATE cultistDodge;
|
||||
extern AISTATE cultistGoto;
|
||||
extern AISTATE cultistProneChase;
|
||||
extern AISTATE cultistProneDodge;
|
||||
extern AISTATE cultistTThrow;
|
||||
extern AISTATE cultistSThrow;
|
||||
extern AISTATE cultistTsThrow;
|
||||
extern AISTATE cultistDThrow;
|
||||
extern AISTATE cultistDThrow2;
|
||||
extern AISTATE cultistDThrow3C;
|
||||
extern AISTATE cultistDThrow3B;
|
||||
extern AISTATE cultistDThrow3A;
|
||||
extern AISTATE cultistDThrow4;
|
||||
extern AISTATE cultistSearch;
|
||||
extern AISTATE cultistSFire;
|
||||
extern AISTATE cultistTFire;
|
||||
extern AISTATE cultistTsFire;
|
||||
extern AISTATE cultistSProneFire;
|
||||
extern AISTATE cultistTProneFire;
|
||||
extern AISTATE cultistTsProneFire;
|
||||
extern AISTATE cultistTsProneFireFixed;
|
||||
extern AISTATE cultistRecoil;
|
||||
extern AISTATE cultistProneRecoil;
|
||||
extern AISTATE cultistTeslaRecoil;
|
||||
extern AISTATE cultistSwimIdle;
|
||||
extern AISTATE cultistSwimChase;
|
||||
extern AISTATE cultistSwimDodge;
|
||||
extern AISTATE cultistSwimGoto;
|
||||
extern AISTATE cultistSwimSearch;
|
||||
extern AISTATE cultistSSwimFire;
|
||||
extern AISTATE cultistTSwimFire;
|
||||
extern AISTATE cultistTsSwimFire;
|
||||
extern AISTATE cultistSwimRecoil;
|
||||
|
||||
extern AISTATE gargoyleFIdle;
|
||||
extern AISTATE gargoyleStatueIdle;
|
||||
extern AISTATE gargoyleFChase;
|
||||
extern AISTATE gargoyleFGoto;
|
||||
extern AISTATE gargoyleFSlash;
|
||||
extern AISTATE gargoyleFThrow;
|
||||
extern AISTATE gargoyleSThrow;
|
||||
extern AISTATE gargoyleSBlast;
|
||||
extern AISTATE gargoyleFRecoil;
|
||||
extern AISTATE gargoyleFSearch;
|
||||
extern AISTATE gargoyleFMorph2;
|
||||
extern AISTATE gargoyleFMorph;
|
||||
extern AISTATE gargoyleSMorph2;
|
||||
extern AISTATE gargoyleSMorph;
|
||||
extern AISTATE gargoyleSwoop;
|
||||
extern AISTATE gargoyleFly;
|
||||
extern AISTATE gargoyleTurn;
|
||||
extern AISTATE gargoyleDodgeUp;
|
||||
extern AISTATE gargoyleFDodgeUpRight;
|
||||
extern AISTATE gargoyleFDodgeUpLeft;
|
||||
extern AISTATE gargoyleDodgeDown;
|
||||
extern AISTATE gargoyleFDodgeDownRight;
|
||||
extern AISTATE gargoyleFDodgeDownLeft;
|
||||
extern AISTATE statueFBreakSEQ;
|
||||
extern AISTATE statueSBreakSEQ;
|
||||
|
||||
extern AISTATE ghostIdle;
|
||||
extern AISTATE ghostChase;
|
||||
extern AISTATE ghostGoto;
|
||||
extern AISTATE ghostSlash;
|
||||
extern AISTATE ghostThrow;
|
||||
extern AISTATE ghostBlast;
|
||||
extern AISTATE ghostRecoil;
|
||||
extern AISTATE ghostTeslaRecoil;
|
||||
extern AISTATE ghostSearch;
|
||||
extern AISTATE ghostSwoop;
|
||||
extern AISTATE ghostFly;
|
||||
extern AISTATE ghostTurn;
|
||||
extern AISTATE ghostDodgeUp;
|
||||
extern AISTATE ghostDodgeUpRight;
|
||||
extern AISTATE ghostDodgeUpLeft;
|
||||
extern AISTATE ghostDodgeDown;
|
||||
extern AISTATE ghostDodgeDownRight;
|
||||
extern AISTATE ghostDodgeDownLeft;
|
||||
|
||||
extern AISTATE gillBeastIdle;
|
||||
extern AISTATE gillBeastChase;
|
||||
extern AISTATE gillBeastDodge;
|
||||
extern AISTATE gillBeastGoto;
|
||||
extern AISTATE gillBeastBite;
|
||||
extern AISTATE gillBeastSearch;
|
||||
extern AISTATE gillBeastRecoil;
|
||||
extern AISTATE gillBeastSwimIdle;
|
||||
extern AISTATE gillBeastSwimChase;
|
||||
extern AISTATE gillBeastSwimDodge;
|
||||
extern AISTATE gillBeastSwimGoto;
|
||||
extern AISTATE gillBeastSwimSearch;
|
||||
extern AISTATE gillBeastSwimBite;
|
||||
extern AISTATE gillBeastSwimRecoil;
|
||||
extern AISTATE gillBeastSwimUnused;
|
||||
extern AISTATE gillBeastSwimMoveIn;
|
||||
extern AISTATE gillBeastSwimTurn;
|
||||
|
||||
extern AISTATE handIdle;
|
||||
extern AISTATE handChoke;
|
||||
extern AISTATE handSearch;
|
||||
extern AISTATE handChase;
|
||||
extern AISTATE handRecoil;
|
||||
extern AISTATE handGoto;
|
||||
extern AISTATE handJump;
|
||||
|
||||
extern AISTATE houndIdle;
|
||||
extern AISTATE houndSearch;
|
||||
extern AISTATE houndChase;
|
||||
extern AISTATE houndRecoil;
|
||||
extern AISTATE houndTeslaRecoil;
|
||||
extern AISTATE houndGoto;
|
||||
extern AISTATE houndBite;
|
||||
extern AISTATE houndBurn;
|
||||
|
||||
extern AISTATE innocentIdle;
|
||||
extern AISTATE innocentSearch;
|
||||
extern AISTATE innocentChase;
|
||||
extern AISTATE innocentRecoil;
|
||||
extern AISTATE innocentTeslaRecoil;
|
||||
extern AISTATE innocentGoto;
|
||||
|
||||
extern AISTATE podIdle;
|
||||
extern AISTATE podMove;
|
||||
extern AISTATE podSearch;
|
||||
extern AISTATE podStartChase;
|
||||
extern AISTATE podRecoil;
|
||||
extern AISTATE podChase;
|
||||
extern AISTATE tentacleIdle;
|
||||
extern AISTATE tentaclePlaySound1;
|
||||
extern AISTATE tentaclePlaySound1A;
|
||||
extern AISTATE tentaclePlaySound2;
|
||||
extern AISTATE tentaclePlaySound2A;
|
||||
extern AISTATE tentacleMove;
|
||||
extern AISTATE tentacleSearch;
|
||||
extern AISTATE tentacleStartChase;
|
||||
extern AISTATE tentacleRecoil;
|
||||
extern AISTATE tentacleChase;
|
||||
|
||||
extern AISTATE ratIdle;
|
||||
extern AISTATE ratSearch;
|
||||
extern AISTATE ratChase;
|
||||
extern AISTATE ratDodge;
|
||||
extern AISTATE ratRecoil;
|
||||
extern AISTATE ratGoto;
|
||||
extern AISTATE ratBite;
|
||||
|
||||
extern AISTATE spidIdle;
|
||||
extern AISTATE spidChase;
|
||||
extern AISTATE spidDodge;
|
||||
extern AISTATE spidGoto;
|
||||
extern AISTATE spidSearch;
|
||||
extern AISTATE spidBite;
|
||||
extern AISTATE spidJump;
|
||||
extern AISTATE spidBirth;
|
||||
|
||||
extern AISTATE tchernobogIdle;
|
||||
extern AISTATE tchernobogSearch;
|
||||
extern AISTATE tchernobogChase;
|
||||
extern AISTATE tchernobogRecoil;
|
||||
extern AISTATE tchernobogGoto;
|
||||
extern AISTATE tchernobogBurn1;
|
||||
extern AISTATE tchernobogBurn2;
|
||||
extern AISTATE tchernobogFireAtk;
|
||||
extern AISTATE tchernobogTurn;
|
||||
|
||||
extern AISTATE zombieAIdle;
|
||||
extern AISTATE zombieAChase;
|
||||
extern AISTATE zombieAPonder;
|
||||
extern AISTATE zombieAGoto;
|
||||
extern AISTATE zombieAHack;
|
||||
extern AISTATE zombieASearch;
|
||||
extern AISTATE zombieARecoil;
|
||||
extern AISTATE zombieATeslaRecoil;
|
||||
extern AISTATE zombieARecoil2;
|
||||
extern AISTATE zombieAStand;
|
||||
extern AISTATE zombieEIdle;
|
||||
extern AISTATE zombieEUp2;
|
||||
extern AISTATE zombieEUp;
|
||||
extern AISTATE zombie2Idle;
|
||||
extern AISTATE zombie2Search;
|
||||
extern AISTATE zombieSIdle;
|
||||
extern AISTATE zombieEStand;
|
||||
|
||||
extern AISTATE zombieFIdle;
|
||||
extern AISTATE zombieFChase;
|
||||
extern AISTATE zombieFGoto;
|
||||
extern AISTATE zombieFDodge;
|
||||
extern AISTATE zombieFHack;
|
||||
extern AISTATE zombieFPuke;
|
||||
extern AISTATE zombieFThrow;
|
||||
extern AISTATE zombieFSearch;
|
||||
extern AISTATE zombieFRecoil;
|
||||
extern AISTATE zombieFTeslaRecoil;
|
||||
|
||||
|
||||
END_BLD_NS
|
|
@ -29,18 +29,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|||
|
||||
BEGIN_BLD_NS
|
||||
|
||||
|
||||
|
||||
AISTATE tchernobogIdle = { kAiStateIdle, 0, nullptr, 0, NULL, NULL, &AF(tchernobogThinkTarget), NULL };
|
||||
AISTATE tchernobogSearch = { kAiStateSearch, 8, nullptr, 1800, NULL, &AF(aiMoveForward), &AF(tchernobogThinkSearch), &tchernobogIdle };
|
||||
AISTATE tchernobogChase = { kAiStateChase, 8, nullptr, 0, NULL, &AF(aiMoveForward), &AF(tchernobogThinkChase), NULL };
|
||||
AISTATE tchernobogRecoil = { kAiStateRecoil, 5, nullptr, 0, NULL, NULL, NULL, &tchernobogSearch };
|
||||
AISTATE tchernobogGoto = { kAiStateMove, 8, nullptr, 600, NULL, &AF(aiMoveForward), &AF(tchernobogThinkGoto), &tchernobogIdle };
|
||||
AISTATE tchernobogBurn1 = { kAiStateMove, 6, &AF(tchernobogBurnSeqCallback), 60, NULL, NULL, NULL, &tchernobogChase };
|
||||
AISTATE tchernobogBurn2 = { kAiStateChase, 6, &AF(tchernobogBurnSeqCallback2), 60, NULL, NULL, NULL, &tchernobogChase };
|
||||
AISTATE tchernobogFireAtk = { kAiStateChase, 7, &AF(tchernobogFire), 60, NULL, NULL, NULL, &tchernobogChase };
|
||||
AISTATE tchernobogTurn = { kAiStateChase, 8, nullptr, 60, NULL, &AF(aiMoveTurn), NULL, &tchernobogChase };
|
||||
|
||||
static constexpr double Tchernnobog_XYOff = 350. / 16;
|
||||
|
||||
void tchernobogFire(DBloodActor* actor)
|
||||
|
|
|
@ -29,26 +29,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|||
|
||||
BEGIN_BLD_NS
|
||||
|
||||
|
||||
|
||||
AISTATE zombieAIdle = { kAiStateIdle, 0, nullptr, 0, &AF(entryAIdle), NULL, &AF(aiThinkTarget), NULL };
|
||||
AISTATE zombieAChase = { kAiStateChase, 8, nullptr, 0, NULL, &AF(aiMoveForward), &AF(zombaThinkChase), NULL };
|
||||
AISTATE zombieAPonder = { kAiStateOther, 0, nullptr, 0, NULL, &AF(aiMoveTurn), &AF(zombaThinkPonder), NULL };
|
||||
AISTATE zombieAGoto = { kAiStateMove, 8, nullptr, 1800, NULL, &AF(aiMoveForward), &AF(zombaThinkGoto), &zombieAIdle };
|
||||
AISTATE zombieAHack = { kAiStateChase, 6, &AF(HackSeqCallback), 80, NULL, NULL, NULL, &zombieAPonder };
|
||||
AISTATE zombieASearch = { kAiStateSearch, 8, nullptr, 1800, NULL, &AF(aiMoveForward), &AF(zombaThinkSearch), &zombieAIdle };
|
||||
AISTATE zombieARecoil = { kAiStateRecoil, 5, nullptr, 0, NULL, NULL, NULL, &zombieAPonder };
|
||||
AISTATE zombieATeslaRecoil = { kAiStateRecoil, 4, nullptr, 0, NULL, NULL, NULL, &zombieAPonder };
|
||||
AISTATE zombieARecoil2 = { kAiStateRecoil, 1, nullptr, 360, NULL, NULL, NULL, &zombieAStand };
|
||||
AISTATE zombieAStand = { kAiStateMove, 11, &AF(StandSeqCallback), 0, NULL, NULL, NULL, &zombieAPonder };
|
||||
AISTATE zombieEIdle = { kAiStateIdle, 12, nullptr, 0, NULL, NULL, &AF(aiThinkTarget), NULL };
|
||||
AISTATE zombieEUp2 = { kAiStateMove, 0, nullptr, 1, &AF(entryEZombie), NULL, NULL, &zombieASearch };
|
||||
AISTATE zombieEUp = { kAiStateMove, 9, nullptr, 180, &AF(entryEStand), NULL, NULL, &zombieEUp2 };
|
||||
AISTATE zombie2Idle = { kAiStateIdle, 0, nullptr, 0, &AF(entryAIdle), NULL, &AF(myThinkTarget), NULL };
|
||||
AISTATE zombie2Search = { kAiStateSearch, 8, nullptr, 1800, NULL, NULL, &AF(myThinkSearch), &zombie2Idle };
|
||||
AISTATE zombieSIdle = { kAiStateIdle, 10, nullptr, 0, NULL, NULL, &AF(aiThinkTarget), NULL };
|
||||
AISTATE zombieEStand = { kAiStateOther, 11, &AF(StandSeqCallback), 0, &AF(entryEZombie), NULL, NULL, &zombieAPonder };
|
||||
|
||||
void HackSeqCallback(DBloodActor* actor)
|
||||
{
|
||||
auto target = actor->GetTarget();
|
||||
|
|
|
@ -29,18 +29,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|||
|
||||
BEGIN_BLD_NS
|
||||
|
||||
|
||||
AISTATE zombieFIdle = { kAiStateIdle, 0, nullptr, 0, NULL, NULL, &AF(aiThinkTarget), NULL };
|
||||
AISTATE zombieFChase = { kAiStateChase, 8, nullptr, 0, NULL, &AF(aiMoveForward), &AF(zombfThinkChase), NULL };
|
||||
AISTATE zombieFGoto = { kAiStateMove, 8, nullptr, 600, NULL, &AF(aiMoveForward), &AF(zombfThinkGoto), &zombieFIdle };
|
||||
AISTATE zombieFDodge = { kAiStateMove, 8, nullptr, 0, NULL, &AF(aiMoveDodge), &AF(zombfThinkChase), &zombieFChase };
|
||||
AISTATE zombieFHack = { kAiStateChase, 6, &AF(zombfHackSeqCallback), 120, NULL, NULL, NULL, &zombieFChase };
|
||||
AISTATE zombieFPuke = { kAiStateChase, 9, &AF(PukeSeqCallback), 120, NULL, NULL, NULL, &zombieFChase };
|
||||
AISTATE zombieFThrow = { kAiStateChase, 6, &AF(ThrowSeqCallback), 120, NULL, NULL, NULL, &zombieFChase };
|
||||
AISTATE zombieFSearch = { kAiStateSearch, 8, nullptr, 1800, NULL, &AF(aiMoveForward), &AF(zombfThinkSearch), &zombieFIdle };
|
||||
AISTATE zombieFRecoil = { kAiStateRecoil, 5, nullptr, 0, NULL, NULL, NULL, &zombieFChase };
|
||||
AISTATE zombieFTeslaRecoil = { kAiStateRecoil, 4, nullptr, 0, NULL, NULL, NULL, &zombieFChase };
|
||||
|
||||
void zombfHackSeqCallback(DBloodActor* actor)
|
||||
{
|
||||
if (actor->GetType() != kDudeZombieButcher)
|
||||
|
|
|
@ -36,7 +36,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
|
|||
|
||||
#include "actor.h"
|
||||
#include "ai.h"
|
||||
#include "aistate.h"
|
||||
#include "callback.h"
|
||||
#include "db.h"
|
||||
#include "endgame.h"
|
||||
|
|
|
@ -42,9 +42,6 @@ enum
|
|||
|
||||
#pragma pack(push, 1)
|
||||
|
||||
struct AISTATE;
|
||||
|
||||
|
||||
struct MAPSIGNATURE {
|
||||
char signature[4];
|
||||
int16_t version;
|
||||
|
|
|
@ -187,78 +187,6 @@ const DUDEINFO_EXTRA gDudeInfoExtra[] = {
|
|||
};
|
||||
|
||||
|
||||
#if 0
|
||||
AISTATE genPatrolStates[] = {
|
||||
|
||||
//-------------------------------------------------------------------------------
|
||||
|
||||
{ kAiStatePatrolWaitL, 0, nullptr, 0, nullptr, nullptr, &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolWaitL, 7, nullptr, 0, nullptr, nullptr, &AF(aiPatrolThink), nullptr },
|
||||
|
||||
{ kAiStatePatrolMoveL, 9, nullptr, 0, nullptr, &AF(aiPatrolMove), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolMoveL, 8, nullptr, 0, nullptr, &AF(aiPatrolMove), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolMoveL, 0, nullptr, 0, nullptr, &AF(aiPatrolMove), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolMoveL, 6, nullptr, 0, nullptr, &AF(aiPatrolMove), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolMoveL, 7, nullptr, 0, nullptr, &AF(aiPatrolMove), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolMoveL, 3, nullptr, 0, nullptr, &AF(aiPatrolMove), &AF(aiPatrolThink), nullptr },
|
||||
|
||||
{ kAiStatePatrolTurnL, 9, nullptr, 0, &AF(aiPatrolRandGoalAng), &AF(aiPatrolTurn), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolTurnL, 8, nullptr, 0, &AF(aiPatrolRandGoalAng), &AF(aiPatrolTurn), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolTurnL, 0, nullptr, 0, &AF(aiPatrolRandGoalAng), &AF(aiPatrolTurn), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolTurnL, 6, nullptr, 0, &AF(aiPatrolRandGoalAng), &AF(aiPatrolTurn), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolTurnL, 7, nullptr, 0, &AF(aiPatrolRandGoalAng), &AF(aiPatrolTurn), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolTurnL, 3, nullptr, 0, &AF(aiPatrolRandGoalAng), &AF(aiPatrolTurn), &AF(aiPatrolThink), nullptr },
|
||||
|
||||
//-------------------------------------------------------------------------------
|
||||
|
||||
{ kAiStatePatrolWaitW, 0, nullptr, 0, nullptr, nullptr, &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolWaitW, 10, nullptr, 0, nullptr, nullptr, &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolWaitW, 13, nullptr, 0, nullptr, nullptr, &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolWaitW, 17, nullptr, 0, nullptr, nullptr, &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolWaitW, 8, nullptr, 0, nullptr, nullptr, &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolWaitW, 9, nullptr, 0, nullptr, nullptr, &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolWaitW, 2, nullptr, 0, nullptr, nullptr, &AF(aiPatrolThink), nullptr },
|
||||
|
||||
{ kAiStatePatrolMoveW, 0, nullptr, 0, nullptr, &AF(aiPatrolMove), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolMoveW, 10, nullptr, 0, nullptr, &AF(aiPatrolMove), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolMoveW, 13, nullptr, 0, nullptr, &AF(aiPatrolMove), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolMoveW, 8, nullptr, 0, nullptr, &AF(aiPatrolMove), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolMoveW, 9, nullptr, 0, nullptr, &AF(aiPatrolMove), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolMoveW, 7, nullptr, 0, nullptr, &AF(aiPatrolMove), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolMoveW, 6, nullptr, 0, nullptr, &AF(aiPatrolMove), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolMoveW, 5, nullptr, 0, nullptr, &AF(aiPatrolMove), &AF(aiPatrolThink), nullptr },
|
||||
|
||||
{ kAiStatePatrolTurnW, 0, nullptr, 0, &AF(aiPatrolRandGoalAng), &AF(aiPatrolTurn), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolTurnW, 10, nullptr, 0, &AF(aiPatrolRandGoalAng), &AF(aiPatrolTurn), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolTurnW, 13, nullptr, 0, &AF(aiPatrolRandGoalAng), &AF(aiPatrolTurn), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolTurnW, 8, nullptr, 0, &AF(aiPatrolRandGoalAng), &AF(aiPatrolTurn), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolTurnW, 9, nullptr, 0, &AF(aiPatrolRandGoalAng), &AF(aiPatrolTurn), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolTurnW, 7, nullptr, 0, &AF(aiPatrolRandGoalAng), &AF(aiPatrolTurn), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolTurnW, 6, nullptr, 0, &AF(aiPatrolRandGoalAng), &AF(aiPatrolTurn), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolTurnW, 5, nullptr, 0, &AF(aiPatrolRandGoalAng), &AF(aiPatrolTurn), &AF(aiPatrolThink), nullptr },
|
||||
|
||||
//-------------------------------------------------------------------------------
|
||||
|
||||
{ kAiStatePatrolWaitC, 17, nullptr, 0, nullptr, nullptr, &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolWaitC, 11, nullptr, 0, nullptr, nullptr, &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolWaitC, 10, nullptr, 0, nullptr, nullptr, &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolWaitC, 14, nullptr, 0, nullptr, nullptr, &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolWaitC, 1, nullptr, 0, nullptr, nullptr, &AF(aiPatrolThink), nullptr },
|
||||
|
||||
{ kAiStatePatrolMoveC, 14, nullptr, 0, nullptr, &AF(aiPatrolMove), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolMoveC, 10, nullptr, 0, nullptr, &AF(aiPatrolMove), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolMoveC, 9, nullptr, 0, nullptr, &AF(aiPatrolMove), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolMoveC, 4, nullptr, 0, nullptr, &AF(aiPatrolMove), &AF(aiPatrolThink), nullptr },
|
||||
|
||||
{ kAiStatePatrolTurnC, 14, nullptr, 0, &AF(aiPatrolRandGoalAng), &AF(aiPatrolTurn), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolTurnC, 10, nullptr, 0, &AF(aiPatrolRandGoalAng), &AF(aiPatrolTurn), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolTurnC, 9, nullptr, 0, &AF(aiPatrolRandGoalAng), &AF(aiPatrolTurn), &AF(aiPatrolThink), nullptr },
|
||||
{ kAiStatePatrolTurnC, 4, nullptr, 0, &AF(aiPatrolRandGoalAng), &AF(aiPatrolTurn), &AF(aiPatrolThink), nullptr },
|
||||
|
||||
//-------------------------------------------------------------------------------
|
||||
|
||||
};
|
||||
#endif
|
||||
|
||||
//---------------------------------------------------------------------------
|
||||
//
|
||||
|
|
|
@ -243,7 +243,6 @@ extern const VECTORINFO_EXTRA gVectorInfoExtra[kVectorMax];
|
|||
extern const MISSILEINFO_EXTRA gMissileInfoExtra[kMissileMax];
|
||||
extern const EXPLOSION_EXTRA gExplodeExtra[kExplosionMax];
|
||||
extern TRPLAYERCTRL gPlayerCtrl[kMaxPlayers];
|
||||
//extern AISTATE genPatrolStates[kPatrolStateSize];
|
||||
|
||||
inline TArray<TObjPtr<DBloodActor*>> gProxySpritesList;
|
||||
inline TArray<TObjPtr<DBloodActor*>> gSightSpritesList;
|
||||
|
|
Loading…
Reference in a new issue