9#include "sprite/npc/BonyBeetle.h"
14API_CALLABLE(N(TackleAI_Main)) {
15 Enemy* enemy = script->owner1.enemy;
33 enemy->varTable[8] = 0;
39 script->AI_TEMP_STATE = 0;
43 npc->
flags &= ~NPC_FLAG_JUMPING;
45 enemy->varTable[9] = 0;
49 npc->
flags &= ~NPC_FLAG_FLYING;
51 npc->
flags &= ~NPC_FLAG_GRAVITY;
58 script->AI_TEMP_STATE = 99;
59 script->functionTemp[1] = 0;
61 enemy->
aiFlags &= ~AI_FLAG_SUSPEND;
63 script->AI_TEMP_STATE = 12;
64 enemy->
flags &= ~ENEMY_FLAG_BEGIN_WITH_CHASING;
68 if (enemy->varTable[9] > 0) {
70 if (enemy->varTable[9] == 0) {
71 if (npc->
curAnim == ANIM_BonyBeetle_Anim2E ||
72 npc->
curAnim == ANIM_BonyBeetle_Anim2F)
74 npc->
curAnim = ANIM_BonyBeetle_Anim0C;
81 switch (script->AI_TEMP_STATE) {
90 if (enemy->varTable[7] == 6) {
92 if (enemy->varTable[8] != 0) {
93 enemy->varTable[8] = 0;
95 npc->
curAnim = ANIM_BonyBeetle_Anim2F;
97 enemy->varTable[8] = 1;
99 npc->
curAnim = ANIM_BonyBeetle_Anim2E;
101 enemy->varTable[9] = 7;
124 if (enemy->varTable[7] == 6) {
125 if (enemy->varTable[8] != 0) {
130 if (enemy->varTable[8] != 0) {
132 case ANIM_BonyBeetle_Anim04:
133 case ANIM_BonyBeetle_Anim0C:
134 case ANIM_BonyBeetle_Anim0E:
135 case ANIM_BonyBeetle_Anim10:
136 case ANIM_BonyBeetle_Anim12:
137 case ANIM_BonyBeetle_Anim16:
138 case ANIM_BonyBeetle_Anim18:
void N UnkNpcAIFunc12(Evt *script, MobileAISettings *aiSettings, EnemyDetectVolume *territory)
ApiStatus N UnkDistFunc(Evt *script, MobileAISettings *aiSettings, EnemyDetectVolume *territory)
void N set_script_owner_npc_col_height(Evt *script, MobileAISettings *aiSettings, EnemyDetectVolume *territory)
void N set_script_owner_npc_anim(Evt *script, MobileAISettings *aiSettings, EnemyDetectVolume *territory)
@ AI_FLAG_SKIP_EMOTE_AFTER_FLEE
@ ENEMY_FLAG_BEGIN_WITH_CHASING
s32 evt_get_variable(Evt *script, Bytecode var)
void basic_ai_wander(Evt *script, MobileAISettings *npcAISettings, EnemyDetectVolume *territory)
void basic_ai_wander_init(Evt *script, MobileAISettings *npcAISettings, EnemyDetectVolume *territory)
void basic_ai_loiter_init(Evt *script, MobileAISettings *aiSettings, EnemyDetectVolume *territory)
void basic_ai_suspend(Evt *script)
void basic_ai_loiter(Evt *script, MobileAISettings *npcAISettings, EnemyDetectVolume *territory)
enum TerritoryShape shape
enum TerritoryShape detectShape
Npc * get_npc_unsafe(s32 npcID)
s32 skipPlayerDetectChance
EnemyTerritoryWander wander
EnemyTerritory * territory