Delink Game, GameMode, GameModePlay, GameModeAdventure

This commit is contained in:
Aetias
2025-07-05 00:16:17 +02:00
parent dbc2a4506b
commit 346a2af149
27 changed files with 259 additions and 73 deletions
+43
View File
@@ -0,0 +1,43 @@
#pragma once
#include "global.h"
#include "types.h"
#include "Game/GameMode.hpp"
#include "Render/FadeControl.hpp"
class Game {
public:
/* 000 */ s32 mModeId;
/* 004 */ s32 mPrevModeId;
/* 008 */ GameMode *mMode;
/* 00c */ unk8 mUnk_00c[0xc0];
/* 0cc */ FadeControl mFadeControl;
/* 0f0 */ unk16 mUnk_0f0;
/* 0f2 */ u16 mUnk_0f2;
/* 0f4 */ s32 mUnk_0f4;
/* 0f8 */ s32 mUnk_0f8;
/* 0fc */ unk16 mUnk_0fc;
/* 0fe */ unk16 mUnk_0fe;
/* 100 */ unk8 mUnk_100;
/* 101 */ s8 mUnk_101;
/* 102 */ unk8 mUnk_102;
/* 103 */ u8 mUnk_103;
/* 104 */
Game();
~Game();
void EndGameMode();
void StartGameMode();
void func_0202c974();
void func_0202c97c();
void Run();
void func_0202cec8(s32 param1, unk32 param2);
void func_0202cf34();
void func_0202cf44();
void func_ov016_0211fd68();
};
extern Game gGame;
+27
View File
@@ -0,0 +1,27 @@
#pragma once
#include "global.h"
#include "types.h"
#include "System/SysNew.hpp"
class GameMode : public SysObject {
public:
/* 000 (vtable) */
/* 004 */ unk32 mUnk_000;
/* 008 */
/* 00 */ virtual ~GameMode();
/* 08 */ virtual unk32 vfunc_08(unk32 param1) = 0;
/* 0c */ virtual void vfunc_0c(u16 *param1);
/* 10 */ virtual void vfunc_10(u16 *param1);
/* 14 */ virtual void vfunc_14(u16 *param1);
/* 18 */ virtual void vfunc_18();
/* 1c */
inline GameMode() {}
inline GameMode(unk32 param1) :
mUnk_000(param1) {}
void func_0202c0b8();
};
+25
View File
@@ -0,0 +1,25 @@
#pragma once
#include "global.h"
#include "types.h"
#include "Game/GameModePlay.hpp"
class GameModeAdventure : public GameModePlay {
/* 000 (base) */
/* 008 */ unk8 mUnk_008[0x10];
/* 018 */
public:
/* 00 */ virtual ~GameModeAdventure() override;
/* 08 */ virtual unk32 vfunc_08(unk32 param1) override;
/* 0c */ virtual void vfunc_0c(u16 *param1) override;
/* 10 */ virtual void vfunc_10(u16 *param1) override;
/* 14 */ virtual void vfunc_14(u16 *param1) override;
/* 1c */ virtual void vfunc_1c() override;
/* 20 */ virtual void vfunc_20() override;
/* 24 */
GameModeAdventure(unk32 param1);
static GameModeAdventure *Create(unk32 param1);
};
+19
View File
@@ -0,0 +1,19 @@
#pragma once
#include "global.h"
#include "types.h"
#include "Game/GameMode.hpp"
class GameModePlay : public GameMode {
public:
/* 000 (base) */
/* 008 */
/* 00 */ virtual ~GameModePlay() override;
/* 1c */ virtual void vfunc_1c();
/* 20 */ virtual void vfunc_20();
/* 24 */
GameModePlay(unk32 param1);
};
+3
View File
@@ -1,5 +1,6 @@
#pragma once
#include "global.h"
#include "types.h"
struct UnkStruct_0202e894 {
@@ -21,3 +22,5 @@ public:
static void operator delete(void *ptr);
static void operator delete[](void *ptr);
};
extern UnkStruct_0202e894 *data_027e0ce4;