pokeruby/include/task.h
DizzyEggg dd7e191078 Battle4.C
Changed labels:
sub_801A02C = ItemBattleEffects
sub_8015150 = GetBattleBank
gUnknown_02024BEA = gRandomMove
BattleBufferB = gBattleBufferB
sub_8090D90 = GetNationalPokedexFlag
sub_80151D4 = PressurePPLose
ai_rate_move = AI_TypeCalc
sub_801B928 = IsPokeDisobedient
sub_801E3B4 = BankGetTurnOrder
sub_801E3EC = SetMoveEffect
sub_814A7FC = DestroyMenuCursor
sub_8010B88 = SwitchInClearStructs
sub_80325B8 = BattleMusicStop
sub_8017718 = CantUseMove
sub_8028350 = IsTwoTurnsMove
b_feature_update_destiny_bond = DestinyBondFlagUpdate
sub_801C108 = JumpIfMoveAffectedByProtect
move_weather_interaction = AttacksThisTurn
sub_8025E20 = ChangeStatBuffs
sub_8020B54 = MoveValuesCleanUp
2017-07-16 20:03:00 +02:00

34 lines
744 B
C

#ifndef GUARD_TASK_H
#define GUARD_TASK_H
// general task defines
#define TASK gTasks[taskId]
#define FUNC func
typedef void (*TaskFunc)(u8 taskId);
struct Task
{
/*0x00*/ TaskFunc func;
/*0x04*/ bool8 isActive;
/*0x05*/ u8 prev;
/*0x06*/ u8 next;
/*0x07*/ u8 priority;
/*0x08*/ s16 data[16];
};
extern struct Task gTasks[];
void ResetTasks(void);
u8 CreateTask(TaskFunc func, u8 priority);
void DestroyTask(u8 taskId);
void RunTasks(void);
void TaskDummy(u8 taskId);
void SetTaskFuncWithFollowupFunc(u8 taskId, TaskFunc func, TaskFunc followupFunc);
void SwitchTaskToFollowupFunc(u8 taskId);
bool8 FuncIsActiveTask(TaskFunc func);
u8 FindTaskIdByFunc(TaskFunc func);
u8 GetTaskCount(void);
#endif // GUARD_TASK_H