mirror of
https://github.com/pret/pokeheartgold.git
synced 2026-03-21 17:25:33 -05:00
OVY_MANAGER -> OverlayManager OVY_FUNC -> OverlayFunction OVY_MGR_TEMPLATE -> OverlayManagerTemplate
45 lines
1.4 KiB
C
45 lines
1.4 KiB
C
#ifndef POKEHEARTGOLD_TASK_H
|
|
#define POKEHEARTGOLD_TASK_H
|
|
|
|
#include "fieldmap.h"
|
|
#include "overlay_manager.h"
|
|
|
|
typedef BOOL (*TaskFunc)(TaskManager *taskman);
|
|
|
|
typedef struct TaskManagerUnkSub1C {
|
|
u32 unk0;
|
|
} TaskManagerUnkSub1C;
|
|
|
|
struct UnkTaskEnv {
|
|
int state;
|
|
const OverlayManagerTemplate *template;
|
|
void *work;
|
|
};
|
|
|
|
struct TaskManager { // declared in field_system.h
|
|
TaskManager *prev;
|
|
TaskFunc func;
|
|
u32 state;
|
|
void *env;
|
|
u32 unk10;
|
|
void *unk14;
|
|
FieldSystem *fieldSystem;
|
|
TaskManagerUnkSub1C *unk1C; // size=4
|
|
};
|
|
|
|
TaskManager *FieldSystem_CreateTask(FieldSystem *fieldSystem, TaskFunc taskFunc, void *env);
|
|
void TaskManager_Jump(TaskManager *taskman, TaskFunc taskFunc, void *env);
|
|
void TaskManager_Call(TaskManager *taskman, TaskFunc taskFunc, void *env);
|
|
BOOL FieldSystem_RunTaskFrame(FieldSystem *fieldSystem);
|
|
BOOL FieldSystem_TaskIsRunning(FieldSystem *fieldSystem);
|
|
BOOL FieldSystem_ApplicationIsRunning(FieldSystem *fieldSystem);
|
|
void FieldSystem_LoadFieldOverlay(FieldSystem *fieldSystem);
|
|
BOOL sub_020505C8(FieldSystem *fieldSystem);
|
|
void CallApplicationAsTask(TaskManager *taskManager, const OverlayManagerTemplate *template, void *work);
|
|
FieldSystem *TaskManager_GetFieldSystem(TaskManager *taskManager);
|
|
void *TaskManager_GetEnvironment(TaskManager *taskManager);
|
|
u32 *TaskManager_GetStatePtr(TaskManager *taskManager);
|
|
u32 sub_02050658(TaskManager *taskManager);
|
|
|
|
#endif // POKEHEARTGOLD_TASK_H
|