11 Enemy* enemy = script->owner1.enemy;
16 npc->
duration = (aiSettings->chaseUpdateInterval / 2) +
rand_int(aiSettings->chaseUpdateInterval / 2 + 1);
23 if (aiSettings->chaseTurnRate <
fabsf(angleDiff)) {
26 if (angleDiff < 0.0f) {
27 tempAngle += -aiSettings->chaseTurnRate;
29 tempAngle += aiSettings->chaseTurnRate;
34 script->functionTemp[0] = 13;
38 Enemy* enemy = script->owner1.enemy;
49 script->functionTemp[0] = 20;
50 enemy->varTable[9] = 30;
70 if ((temp_f6 < 0.0) || (temp_f6 > 4.0)) {
72 npc->
pos.
y += temp_f6 * 0.06;
79 script->functionTemp[0] = 12;
83 Enemy* enemy = script->owner1.enemy;
88 enemy->varTable[2] = 0;
90 script->functionTemp[0] = 0;
94API_CALLABLE(N(FlyingNoAttackAI_Main)) {
95 Enemy* enemy = script->owner1.enemy;
113 script->functionTemp[0] = 0;
121 enemy->
aiFlags &= ~AI_FLAG_SUSPEND;
124 switch (script->functionTemp[0]) {
void N FlyingAI_LoiterInit(Evt *script, MobileAISettings *aiSettings, EnemyDetectVolume *territory)
void N FlyingAI_Loiter(Evt *script, MobileAISettings *aiSettings, EnemyDetectVolume *territory)
void N FlyingAI_Jump(Evt *script, MobileAISettings *aiSettings, EnemyDetectVolume *territory)
void N FlyingAI_Wander(Evt *script, MobileAISettings *aiSettings, EnemyDetectVolume *territory)
void N FlyingAI_JumpInit(Evt *script, MobileAISettings *aiSettings, EnemyDetectVolume *territory)
void N FlyingAI_Init(Npc *npc, Enemy *enemy, Evt *script, MobileAISettings *aiSettings)
void N FlyingAI_WanderInit(Evt *script, MobileAISettings *aiSettings, EnemyDetectVolume *territory)
void N FlyingNoAttackAI_13(Evt *script, MobileAISettings *aiSettings, EnemyDetectVolume *territory)
void N FlyingNoAttackAI_20(Evt *script, MobileAISettings *aiSettings, EnemyDetectVolume *territory)
void N FlyingNoAttackAI_12(Evt *script, MobileAISettings *aiSettings, EnemyDetectVolume *territory)
#define npc_raycast_down_sides
s32 evt_get_variable(Evt *script, Bytecode var)
f32 get_clamped_angle_diff(f32, f32)
enum TerritoryShape shape
enum TerritoryShape detectShape
s32 basic_ai_check_player_dist(EnemyDetectVolume *arg0, Enemy *arg1, f32 arg2, f32 arg3, b8 arg4)
Npc * get_npc_unsafe(s32 npcID)
void npc_move_heading(Npc *npc, f32 speed, f32 yaw)
s32 skipPlayerDetectChance
EnemyTerritoryWander wander
EnemyTerritory * territory
PlayerStatus * gPlayerStatusPtr