mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2024-08-13 17:03:47 -04:00
39cc86c260
subrepo: subdir: "soh" merged: "ba904bbd0" upstream: origin: "https://github.com/HarbourMasters/soh.git" branch: "master" commit: "ba904bbd0" git-subrepo: version: "0.4.1" origin: "???" commit: "???"
66 lines
1.9 KiB
C
66 lines
1.9 KiB
C
#ifndef Z_EN_HORSE_GAME_CHECK_H
|
|
#define Z_EN_HORSE_GAME_CHECK_H
|
|
|
|
#include "ultra64.h"
|
|
#include "global.h"
|
|
|
|
struct EnHorseGameCheckBase;
|
|
|
|
typedef s32 (*EnHorseGameCheckFunc)(struct EnHorseGameCheckBase* this, GlobalContext* globalCtx);
|
|
|
|
typedef struct EnHorseGameCheckBase {
|
|
/* 0x0000 */ Actor actor;
|
|
/* 0x014C */ s32 type;
|
|
} EnHorseGameCheckBase; // size = 0x0150
|
|
|
|
typedef struct EnHorseGameCheckIngoRace {
|
|
/* 0x0000 */ EnHorseGameCheckBase base;
|
|
/* 0x0150 */ s32 startFlags;
|
|
/* 0x0154 */ s32 playerCheck[3];
|
|
/* 0x0160 */ s32 ingoCheck[3];
|
|
/* 0x016C */ Actor* ingoHorse;
|
|
/* 0x0170 */ s32 startTimer;
|
|
/* 0x0174 */ s32 result;
|
|
/* 0x0178 */ s32 finishTimer;
|
|
/* 0x017C */ s32 playerFinish;
|
|
/* 0x0180 */ s32 ingoFinish;
|
|
} EnHorseGameCheckIngoRace; // size = 0x0184
|
|
|
|
typedef struct EnHorseGameCheckGerudoArchery {
|
|
/* 0x0000 */ EnHorseGameCheckBase base;
|
|
/* 0x0150 */ s32 unk_150;
|
|
/* 0x0154 */ u32 startTimer;
|
|
} EnHorseGameCheckGerudoArchery; // size = 0x0158
|
|
|
|
typedef struct EnHorseGameCheck3 {
|
|
/* 0x0000 */ EnHorseGameCheckBase base;
|
|
/* 0x0150 */ s32 unk_150;
|
|
} EnHorseGameCheck3; // size = 0x0154
|
|
|
|
typedef struct EnHorseGameCheckMalonRace {
|
|
/* 0x0000 */ EnHorseGameCheckBase base;
|
|
/* 0x0150 */ s32 startTimer;
|
|
/* 0x0154 */ s32 raceFlags;
|
|
/* 0x0158 */ s32 fenceCheck[16];
|
|
/* 0x0198 */ s32 finishTimer;
|
|
/* 0x019C */ s32 result;
|
|
/* 0x01A0 */ s32 lapCount;
|
|
} EnHorseGameCheckMalonRace; // size = 0x01A4
|
|
|
|
typedef union EnHorseGameCheck {
|
|
EnHorseGameCheckIngoRace ingo;
|
|
EnHorseGameCheckGerudoArchery gerudo;
|
|
EnHorseGameCheck3 type3;
|
|
EnHorseGameCheckMalonRace malon;
|
|
} EnHorseGameCheck; // size = 0x01A4
|
|
|
|
typedef enum {
|
|
/* 0 */ HORSEGAME_NONE,
|
|
/* 1 */ HORSEGAME_INGO_RACE,
|
|
/* 2 */ HORSEGAME_GERUDO_ARCHERY,
|
|
/* 3 */ HORSEGAME_TYPE3,
|
|
/* 4 */ HORSEGAME_MALON_RACE
|
|
} EnHorseGameCheckType;
|
|
|
|
#endif
|