pokediamond/include/task.h
2023-06-08 20:11:29 +01:00

48 lines
1.7 KiB
C

#ifndef POKEDIAMOND_TASK_H
#define POKEDIAMOND_TASK_H
//#include "script.h" - dirty hack while FieldSystem is still in script.h
#include "main.h"
typedef struct TaskManager TaskManager;
typedef BOOL (*TaskFunc)(TaskManager *taskManager);
struct FieldSystem; //FIXME: dirty hack
struct TaskManager
{
struct TaskManager *prev;
TaskFunc func;
u32 state;
void *env;
struct TaskManager *unk10;
void *unk14;
struct FieldSystem *fieldSystem;
u32 *unk1C;
};
extern void LoadOverlay_MODULE_05(void *);
extern void FUN_020373D4(struct FieldSystem *, struct OverlayManagerTemplate *, void*);
extern BOOL FUN_020373AC(void *);
extern BOOL FUN_0203739C(struct FieldSystem *fieldSystem);
extern BOOL FUN_020373C4(struct FieldSystem *fieldSystem);
struct TaskManager *FieldSys_CreateTask(struct FieldSystem *fieldSystem, TaskFunc taskFunc, void *env);
void FUN_020463CC(struct FieldSystem *fieldSystem, TaskFunc taskFunc, void *env);
void FUN_020463EC(struct TaskManager *taskManager, TaskFunc taskFunc, void *env);
void FUN_0204640C(struct TaskManager *taskManager, TaskFunc taskFunc, void *env);
BOOL FUN_02046420(struct TaskManager *taskManager);
BOOL FUN_0204646C(struct TaskManager *taskManager);
BOOL FUN_0204647C(struct FieldSystem *fieldSystem);
void FUN_0204649C(void * r0);
BOOL FUN_020464A4(void * r0);
BOOL FUN_020464B8(struct TaskManager *taskManager);
void FUN_02046500(struct TaskManager *taskManager, u32 r5, u32 r4);
void * FUN_0204652C(struct TaskManager *taskManager);
u32 * FUN_02046530(struct TaskManager *taskManager);
u32 FUN_02046534(struct TaskManager *taskManager);
struct FieldSystem *FUN_02046528(struct TaskManager *taskManager);
#endif //POKEDIAMOND_TASK_H