2020-07-18 02:47:33 +02:00
|
|
|
#ifndef _VARIABLES_H_
|
|
|
|
#define _VARIABLES_H_
|
|
|
|
|
|
|
|
#include "ultra64.h"
|
|
|
|
#include "common_structs.h"
|
2020-08-10 23:35:37 +02:00
|
|
|
#include "types.h"
|
2020-10-13 03:28:01 +02:00
|
|
|
#include "macros.h"
|
2020-08-23 01:39:45 +02:00
|
|
|
#include "enums.h"
|
2020-07-18 02:47:33 +02:00
|
|
|
|
2020-08-16 05:19:00 +02:00
|
|
|
extern UiStatus gUIStatus;
|
|
|
|
extern PlayerData gPlayerData;
|
2020-08-23 01:24:51 +02:00
|
|
|
extern ActionState gPlayerActionState;
|
|
|
|
extern PlayerAnim gPlayerAnimation;
|
2020-08-16 05:19:00 +02:00
|
|
|
extern PlayerStatus gPlayerStatus;
|
2020-09-22 05:10:53 +02:00
|
|
|
extern PlayerStatus* gPlayerStatusPtr;
|
2020-10-03 22:04:49 +02:00
|
|
|
extern CollisionStatus gCollisionStatus;
|
2020-08-16 05:19:00 +02:00
|
|
|
extern GameStatus* gGameStatusPtr[1];
|
2020-09-14 01:03:22 +02:00
|
|
|
extern s32 gRandSeed;
|
2020-08-16 16:19:33 +02:00
|
|
|
extern StaticItem gItemTable[364];
|
2020-08-17 14:40:21 +02:00
|
|
|
extern s16 gMainGameState; /* 0 = battle, 1 = pause, 2 = world */
|
|
|
|
extern UNK_FUN_PTR(gCurrentUpdateFunction);
|
2020-08-14 16:25:33 +02:00
|
|
|
|
2020-10-16 22:29:55 +02:00
|
|
|
extern s32 gBattleState;
|
2020-09-22 02:56:17 +02:00
|
|
|
extern BattleStatus gBattleStatus;
|
2020-10-17 05:47:10 +02:00
|
|
|
extern s32 gBattleDmaDest;
|
2020-09-22 02:56:17 +02:00
|
|
|
|
2020-10-13 03:28:01 +02:00
|
|
|
extern ScriptList gWorldScriptList;
|
|
|
|
extern ScriptList gBattleScriptList;
|
|
|
|
extern ScriptList* gCurrentScriptListPtr;
|
2020-08-14 16:25:33 +02:00
|
|
|
|
2020-09-18 22:57:52 +02:00
|
|
|
extern s32 gNumScripts;
|
|
|
|
extern s32 D_802DAC98;
|
2020-08-14 16:25:33 +02:00
|
|
|
|
2020-09-08 15:06:17 +02:00
|
|
|
extern s32 gScriptListCount;
|
2020-09-06 17:53:48 +02:00
|
|
|
|
2020-10-13 03:28:01 +02:00
|
|
|
extern s32 gScriptIdList[MAX_SCRIPTS];
|
|
|
|
extern s32 gScriptIndexList[MAX_SCRIPTS];
|
2020-08-17 14:40:21 +02:00
|
|
|
|
2020-10-17 23:48:43 +02:00
|
|
|
extern s32 gMoveScriptTable[][4];
|
2020-10-16 08:09:20 +02:00
|
|
|
|
2020-10-22 02:07:00 +02:00
|
|
|
extern ModelList gWorldModelList;
|
|
|
|
extern ModelList gBattleModelList;
|
|
|
|
extern ModelList* gCurrentModelListPtr;
|
2020-08-17 14:40:21 +02:00
|
|
|
|
2020-10-22 02:07:00 +02:00
|
|
|
// TODO: potentially a display list, figure this out
|
2020-08-17 14:40:21 +02:00
|
|
|
extern u32* gWorldModelSpecialDls[32];
|
|
|
|
extern u32* gBattleModelSpecialDls[32];
|
|
|
|
extern u32** gCurrentModelSpecialDlsPtr[32];
|
|
|
|
|
2020-10-22 02:07:00 +02:00
|
|
|
extern EntityList gWorldEntityList;
|
|
|
|
extern EntityList gBattleEntityList;
|
|
|
|
extern EntityList* gCurrentEntityListPtr;
|
2020-10-08 21:03:58 +02:00
|
|
|
extern s32 gLastCreatedEntityIndex;
|
2020-08-17 14:40:21 +02:00
|
|
|
|
2020-10-22 02:07:00 +02:00
|
|
|
extern DynamicEntityList gWorldDynamicEntityList;
|
|
|
|
extern DynamicEntityList gBattleDynamicEntityList;
|
|
|
|
extern DynamicEntityList* gCurrentDynamicEntityListPtr;
|
2020-09-25 23:18:09 +02:00
|
|
|
|
2020-10-22 02:07:00 +02:00
|
|
|
extern NpcList gWorldNpcList;
|
|
|
|
extern NpcList gBattleNpcList;
|
|
|
|
extern NpcList* gCurrentNpcListPtr;
|
2020-08-17 14:40:21 +02:00
|
|
|
|
2020-10-22 02:07:00 +02:00
|
|
|
extern ShadowList gWorldShadowList;
|
|
|
|
extern ShadowList gBattleShadowList;
|
|
|
|
extern ShadowList* gCurrentShadowListPtr;
|
2020-08-17 14:40:21 +02:00
|
|
|
|
2020-08-20 00:48:15 +02:00
|
|
|
extern Camera gCameras[4];
|
2020-09-06 17:53:48 +02:00
|
|
|
extern s32 gCurrentCameraID;
|
2020-08-20 00:48:15 +02:00
|
|
|
|
2020-08-24 03:40:11 +02:00
|
|
|
extern Npc* gPlayerNpcPtr;
|
2020-08-23 01:24:51 +02:00
|
|
|
|
2020-08-12 20:48:51 +02:00
|
|
|
extern s8 D_800A0900;
|
2020-09-06 17:53:48 +02:00
|
|
|
extern EncounterStatus gCurrentEncounter;
|
2020-09-27 03:02:29 +02:00
|
|
|
extern s16 D_80151308;
|
|
|
|
extern s32 D_80151310;
|
2020-07-18 02:47:33 +02:00
|
|
|
extern s16* D_80151328;
|
2020-08-09 06:20:53 +02:00
|
|
|
extern s16 D_8010CD10;
|
|
|
|
extern s16 D_8010CD12;
|
2020-09-25 23:18:09 +02:00
|
|
|
extern s32 D_8010CD20;
|
2020-09-26 04:49:59 +02:00
|
|
|
extern s32 D_8010EF08;
|
2020-09-25 23:18:09 +02:00
|
|
|
extern s32 D_8010F094; // player shadow index?
|
2020-08-12 20:48:51 +02:00
|
|
|
extern s32 D_801595A0;
|
2020-08-16 05:19:00 +02:00
|
|
|
extern BackgroundHeader gBackgroundImage;
|
2020-07-18 02:47:33 +02:00
|
|
|
|
2020-08-16 05:19:00 +02:00
|
|
|
extern PrintContext* gCurrentPrintContext;
|
2020-09-26 03:51:54 +02:00
|
|
|
extern s32 D_802DB264;
|
2020-08-16 05:19:00 +02:00
|
|
|
extern PrintContext* D_802DB268;
|
2020-08-15 23:51:44 +02:00
|
|
|
|
2020-11-08 05:33:15 +01:00
|
|
|
// Animation related
|
|
|
|
extern PartnerAnimations gPartnerAnimations[12];
|
2020-11-08 20:02:08 +01:00
|
|
|
extern AnimatedModel* gBattleMeshAnimations[16];
|
|
|
|
extern AnimatedModel* gWorldMeshAnimations[16];
|
|
|
|
extern AnimatedModel** gMeshAnimationsPtr;
|
2020-11-08 05:33:15 +01:00
|
|
|
|
2020-08-13 07:03:47 +02:00
|
|
|
// Triggers
|
2020-08-19 02:23:52 +02:00
|
|
|
extern s16 gTriggerCount;
|
2020-10-22 02:07:00 +02:00
|
|
|
extern TriggerList gTriggerList1;
|
|
|
|
extern TriggerList gTriggerList2;
|
|
|
|
extern TriggerList* gCurrentTriggerListPtr;
|
2020-08-13 07:03:47 +02:00
|
|
|
|
2020-10-15 00:22:43 +02:00
|
|
|
// Map transition data. Should probably be a struct
|
2020-08-12 03:59:46 +02:00
|
|
|
extern u16 gMapTransitionAlpha;
|
2020-10-15 00:22:43 +02:00
|
|
|
extern s16 D_800A0942;
|
2020-08-11 01:20:30 +02:00
|
|
|
extern s16 D_800A0944;
|
2020-11-06 01:30:17 +01:00
|
|
|
extern s16 D_800A0946;
|
|
|
|
extern s16 D_800A0948;
|
2020-10-15 00:22:43 +02:00
|
|
|
extern s16 D_800A0954;
|
|
|
|
extern s16 D_800A0956;
|
|
|
|
extern s16 D_800A0958;
|
|
|
|
extern s16 D_800A095A;
|
|
|
|
extern u8 D_800A095B;
|
|
|
|
extern s16 D_800A095C;
|
|
|
|
extern u8 D_800A095D;
|
|
|
|
extern s16 D_800A095E;
|
|
|
|
extern u8 D_800A095F;
|
|
|
|
extern s32 D_800A0960;
|
|
|
|
extern s32 D_800A0964;
|
2020-08-11 23:38:21 +02:00
|
|
|
|
2020-10-16 00:11:56 +02:00
|
|
|
// Pause
|
2020-10-16 04:05:04 +02:00
|
|
|
extern s32 gPauseMenuStrings[348];
|
2020-10-16 00:11:56 +02:00
|
|
|
|
2020-09-06 17:53:48 +02:00
|
|
|
extern s32 gGameState;
|
2020-08-12 22:53:01 +02:00
|
|
|
extern s32 D_8009A650[1];
|
2020-10-14 18:11:59 +02:00
|
|
|
extern u16 D_8009A6A0;
|
|
|
|
extern u16 D_8009A6A2;
|
|
|
|
extern u16 D_8009A6A4;
|
|
|
|
extern u16 D_8009A6A6;
|
2020-08-12 22:53:01 +02:00
|
|
|
|
2020-08-11 23:38:21 +02:00
|
|
|
extern s16 gCurrentDoorSoundsSet;
|
|
|
|
|
2020-10-02 08:07:54 +02:00
|
|
|
extern s32 D_800D9620;
|
2020-08-10 23:35:37 +02:00
|
|
|
extern UNK_TYPE D_800E92D8;
|
|
|
|
extern UNK_TYPE D_80147474;
|
2020-08-12 03:01:33 +02:00
|
|
|
extern UNK_TYPE D_80147574;
|
2020-08-10 23:35:37 +02:00
|
|
|
extern UNK_TYPE D_80109270;
|
|
|
|
extern UNK_TYPE D_80108558;
|
2020-08-20 20:43:45 +02:00
|
|
|
extern UNK_TYPE D_8010F250; // play_sound state struct?
|
2020-10-03 22:04:49 +02:00
|
|
|
extern s8 D_8010EBB0[];
|
2020-08-10 23:35:37 +02:00
|
|
|
|
2020-10-16 00:11:56 +02:00
|
|
|
// Effects
|
|
|
|
extern EffectTableEntry gEffectTable[135];
|
|
|
|
|
2020-09-18 22:48:52 +02:00
|
|
|
//nusys
|
|
|
|
extern OSPiHandle* carthandle;
|
|
|
|
|
2020-09-19 17:16:02 +02:00
|
|
|
extern SaveData gCurrentSaveFile;
|
|
|
|
|
2020-09-27 03:02:29 +02:00
|
|
|
extern s32 D_802D9CA4;
|
2020-09-19 17:16:02 +02:00
|
|
|
extern u32* gMapFlags;
|
|
|
|
extern u32* gMapVars;
|
2020-09-27 03:02:29 +02:00
|
|
|
|
|
|
|
extern f32 D_80286540;
|
2020-09-19 17:16:02 +02:00
|
|
|
|
2020-10-14 03:55:04 +02:00
|
|
|
extern u32 gWorldMapVars[MAX_MAPVARS];
|
|
|
|
extern u32 gBattleMapVars[MAX_MAPVARS];
|
|
|
|
|
|
|
|
extern u32 gWorldMapFlags[MAX_MAPFLAGS];
|
|
|
|
extern u32 gBattleMapFlags[MAX_MAPFLAGS];
|
|
|
|
|
|
|
|
extern s32 D_8009A5D8;
|
|
|
|
|
2020-10-15 00:22:43 +02:00
|
|
|
extern u8 D_800779B0;
|
|
|
|
extern u8 D_800A0963;
|
|
|
|
|
2020-10-08 21:03:58 +02:00
|
|
|
// Scripts
|
|
|
|
extern Bytecode* SCRIPT_NpcDefeat;
|
2020-10-24 23:51:27 +02:00
|
|
|
extern Bytecode* ShakeCam1;
|
|
|
|
extern Bytecode* ShakeCamX;
|
2020-10-29 21:58:34 +01:00
|
|
|
extern Bytecode* D_802D9D50;
|
2020-10-08 21:03:58 +02:00
|
|
|
|
2020-10-29 03:54:01 +01:00
|
|
|
extern s16 gMusicUnkVolume;
|
2020-10-29 04:43:58 +01:00
|
|
|
extern s16 gMusicUnkVolume2;
|
2020-10-29 03:54:01 +01:00
|
|
|
extern s16 gMusicCurrentVolume;
|
|
|
|
extern s16 gMusicTargetVolume;
|
2020-10-30 00:52:24 +01:00
|
|
|
extern MusicPlayer gMusicPlayers[4];
|
|
|
|
extern MusicPlayer D_8014F6F0;
|
2020-10-29 02:05:40 +01:00
|
|
|
|
2020-07-18 02:47:33 +02:00
|
|
|
#endif
|