#ifndef GUARD_BATTLEAI_H #define GUARD_BATTLEAI_H #define AIScriptRead32(ptr) ((ptr)[0] | (ptr)[1] << 8 | (ptr)[2] << 16 | (ptr)[3] << 24) #define AIScriptRead16(ptr) ((ptr)[0] | (ptr)[1] << 8) #define AIScriptRead8(ptr) ((ptr)[0]) #define AIScriptReadPtr(ptr) (u8*) AIScriptRead32(ptr) enum { TARGET, USER }; // AI states enum { AIState_SettingUp, AIState_Processing, AIState_FinishedProcessing, AIState_DoNotProcess }; // battle_ai void BattleAI_SetupAIData(void); u8 BattleAI_GetAIActionToUse(void); void BattleAI_DoAIProcessing(void); void sub_810745C(void); void AIStackPushVar(u8 *); u8 AIStackPop(void); void BattleAI_HandleItemUseBeforeAISetup(void); #endif