pokeheartgold/include/fieldmap.h
2021-12-25 11:49:48 -05:00

76 lines
3.5 KiB
C

#ifndef POKEHEARTGOLD_FIELDMAP_H
#define POKEHEARTGOLD_FIELDMAP_H
#include "script.h"
#include "trainer_data.h"
typedef struct HiddenItemResponse {
s16 x;
s16 y;
u8 unk4;
u8 dummy;
} HiddenItemResponse;
void StartMapSceneScript(UnkSavStruct80 *a0, u16 a1, LocalMapObject *a2);
void sub_0203FEA4(UnkSavStruct80 *a0, LocalMapObject *a1, int a2, int a3, int a4, int a5, int a6, int a7);
void sub_0203FED4(UnkSavStruct80_Sub10 *a0, u16 a1, LocalMapObject *a2, void *a3);
void sub_0203FF0C(UnkSavStruct80_Sub10 *a0, u16 a1, LocalMapObject *a2);
BOOL sub_0203FF44(UnkSavStruct80_Sub10 *unk);
UnkSavStruct80_Sub10_SubC *sub_0204001C(void);
void DestroyScriptContext(SCRIPTCONTEXT *ctx);
void sub_0204005C(UnkSavStruct80 *a0, UnkSavStruct80_Sub10_SubC *a1, u16 a2, LocalMapObject *a3, void* a4);
SCRIPTCONTEXT *CreateScriptContext(UnkSavStruct80 *a0, u16 mapId);
void SetUpScriptContextForMap(UnkSavStruct80 *a0, SCRIPTCONTEXT *ctx, u16 mapId, u32 unused_r3);
u16 LoadScriptsAndMessagesByMapId(UnkSavStruct80 *a0, SCRIPTCONTEXT *ctx, u16 mapId);
void LoadScriptsAndMessagesParameterized(UnkSavStruct80 *a0, SCRIPTCONTEXT *a1, int scriptBank, u32 msgBank);
void LoadScriptsAndMessagesForCurrentMap(UnkSavStruct80 *a0, SCRIPTCONTEXT *a1);
void *FieldSysGetAttrAddrInternal(UnkSavStruct80_Sub10_SubC *a0, enum Unk80_10_C_Field a1);
void *FieldSysGetAttrAddr(UnkSavStruct80 *a0, enum Unk80_10_C_Field a1);
void sub_0204031C(UnkSavStruct80 *a0);
void ScriptRunByIndex(SCRIPTCONTEXT *ctx, int idx);
u8 *LoadScriptsForCurrentMap(u32 mapId);
u32 GetCurrentMapMessageBank(u32 mapId);
u16* GetVarPointer(UnkSavStruct80* fsys, u16 varId);
u16 VarGet(UnkSavStruct80* fsys, u16 varId);
BOOL VarSet(UnkSavStruct80* fsys, u16 varId, u16 value);
u16 VarGetObjectEventGraphicsId(UnkSavStruct80* fsys, u16 objId);
BOOL FlagGet(UnkSavStruct80 *fsys, u16 flagId);
void FlagSet(UnkSavStruct80 *fsys, u16 flagId);
void FlagClear(UnkSavStruct80 *fsys, u16 flagId);
void ClearTempFieldEventData(UnkSavStruct80 *fsys);
void ClearDailyFlags(UnkSavStruct80 *fsys);
void sub_02040490(UnkSavStruct80 *a0, u16 a1, u16 a2, u16 a3, u16 a4);
u16 sub_020404C8(u16 a0);
BOOL sub_020404EC(u16 a0);
BOOL sub_02040500(u32 trainer);
BOOL TrainerFlagCheck(SAVEDATA *a0, u32 trno);
void TrainerFlagSet(SAVEDATA *a0, u32 trno);
void TrainerFlagClear(SAVEDATA *a0, u32 trno);
u16 HiddenItemScriptNoToFlagId(u16 a0);
u16 HiddenItemScriptNoToHiddenItemIdx(u16 a0);
u8 sub_02040578(u16 a0);
BOOL sub_020405AC(UnkSavStruct80_Sub10_SubC *a0, u16 a1);
HiddenItemResponse* AllocAndFetchNearbyHiddenItems(UnkSavStruct80 *fsys, HeapID heapId);
void RunPokemonCenterScriptsInNewContext(UnkSavStruct80 *fsys);
void StartMapLoadScript(UnkSavStruct80 *fsys, u16 a1);
BOOL TryStartMapScriptByType(UnkSavStruct80 *fsys, u8 type);
BOOL sub_020407AC(UnkSavStruct80 *fsys);
u16 GetMapLoadScriptId(u8 *a0, u8 a1);
u16 GetMapSceneScriptId(UnkSavStruct80 *a0, u8 *a1, u8 a2);
BOOL sub_0203BC10(UnkSavStruct80 *);
void sub_0203BD64(UnkSavStruct80 *);
UnkSavStruct80_Sub10 *sub_020504C0(UnkSavStruct80 *a0, u32 a1);
void sub_020504F0(UnkSavStruct80 *a0, BOOL (*a1)(UnkSavStruct80_Sub10 *), UnkSavStruct80_Sub10_SubC *a2);
void sub_02050510(UnkSavStruct80_Sub10 *a0, BOOL (*a1)(UnkSavStruct80_Sub10 *), UnkSavStruct80_Sub10_SubC *a2);
void sub_02050530(UnkSavStruct80_Sub10 *a0, BOOL (*a1)(UnkSavStruct80_Sub10 *), UnkSavStruct80_Sub10_SubC *a2);
UnkSavStruct80 *sub_0205064C(UnkSavStruct80_Sub10 *a0);
UnkSavStruct80_Sub10_SubC* sub_02050650(UnkSavStruct80_Sub10 *a0);
void* sub_0205C654(void *);
u16 sub_0205F24C(struct LocalMapObject *);
#endif