New Super Mario Bros. U Headers
Loading...
Searching...
No Matches
MainGame.h
Go to the documentation of this file.
1#pragma once
2
3#include <heap/seadDisposer.h>
4#include <prim/seadBitFlag.h>
5
15static_assert(sizeof(CourseExitType) == 4, "CourseExitType size mismatch");
16
18{
22 cCourseBeatenType_TreasureChestFail // Maybe for when Nabbit steals the treasure chest for idling too long on the ambush??
23};
24static_assert(sizeof(CourseBeatenType) == 4, "CourseBeatenType size mismatch");
25
27{
28 // createInstance() Address: 0x029CDCAC
29 // deleteInstance() Address: Deleted
30 // sInstance Address: 0x101E7D7C
31 // SingletonDisposer_::~SingletonDisposer_() Address: 0x029CEBF0
32 // SingletonDisposer_::sStaticDisposer Address: 0x101E7D80
33 // SingletonDisposer_::vtbl Address: 0x1018A110
35
36public:
37 // Address: 0x029CD2E8
39
40 // Address: 0x029CEAD4
41 void initMiiIconRenderBuffer(sead::Heap* heap = nullptr);
42
43 bool isSinglePlayerDRC() const
44 {
45 return mIsSinglePlayerDRC;
46 }
47
48 bool isMultiplayer() const
49 {
50 return !mIsSinglePlayerDRC;
51 }
52
53 bool isNewGame() const
54 {
55 return mIsNewGame;
56 }
57
58 void setNewGame(bool new_game)
59 {
60 mIsNewGame = new_game;
61 }
62
63 bool isShadowkunQuest() const
64 {
65 return mIsShadowkunQuest;
66 }
67
69 {
70 return mCourseExitType;
71 }
72
74 {
75 mCourseExitType = type;
76 }
77
82
87
88 bool isOtehon() const
89 {
90 return mReplayFlag.isOnBit(0);
91 }
92
93protected:
102 u32 _30[(0x21DDC - 0x30) / sizeof(u32)];
105 u32 _21dfc[(0x21E18 - 0x21DFC) / sizeof(u32)];
106};
107static_assert(sizeof(MainGame) == 0x21E18, "MainGame size mismatch");
CourseBeatenType
Definition MainGame.h:18
@ cCourseBeatenType_Secret
Definition MainGame.h:20
@ cCourseBeatenType_TreasureChestFail
Definition MainGame.h:22
@ cCourseBeatenType_TreasureChest
Definition MainGame.h:21
@ cCourseBeatenType_Normal
Definition MainGame.h:19
CourseExitType
Definition MainGame.h:7
@ cCourseExitType_Dead
Definition MainGame.h:11
@ cCourseExitType_Beaten
Definition MainGame.h:10
@ cCourseExitType_OtehonReplay
Definition MainGame.h:12
@ cCourseExitType_InsideCourse
Definition MainGame.h:13
@ cCourseExitType_Exit
Definition MainGame.h:9
@ cCourseExitType_ChallengeRetry
Definition MainGame.h:8
Definition MainGame.h:27
u32 _30[(0x21DDC - 0x30)/sizeof(u32)]
Definition MainGame.h:102
u32 _18
Definition MainGame.h:96
bool isOtehon() const
Definition MainGame.h:88
u32 _28
Definition MainGame.h:100
void initMiiIconRenderBuffer(sead::Heap *heap=nullptr)
void setCourseExitType(CourseExitType type)
Definition MainGame.h:73
bool mIsShadowkunQuest
Definition MainGame.h:104
CourseExitType getCourseExitType() const
Definition MainGame.h:68
u32 _21dfc[(0x21E18 - 0x21DFC)/sizeof(u32)]
Definition MainGame.h:105
CourseBeatenType getCourseBeatenType() const
Definition MainGame.h:78
bool mIsNewGame
Definition MainGame.h:97
bool isNewGame() const
Definition MainGame.h:53
bool isMultiplayer() const
Definition MainGame.h:48
sead::BitFlag32 mReplayFlag
Definition MainGame.h:101
bool isSinglePlayerDRC() const
Definition MainGame.h:43
void setCourseBeatenType(CourseBeatenType type)
Definition MainGame.h:83
u32 _10
Definition MainGame.h:94
CourseBeatenType mCourseBeatenType
Definition MainGame.h:99
void setNewGame(bool new_game)
Definition MainGame.h:58
bool mIsSinglePlayerDRC
Definition MainGame.h:95
bool isShadowkunQuest() const
Definition MainGame.h:63
u8 _21ddc[30]
Definition MainGame.h:103
CourseExitType mCourseExitType
Definition MainGame.h:98