NSMBW-Decomp
A decompilation of New Super Mario Bros. Wii
Loading...
Searching...
No Matches
d_info.hpp
1#pragma once
2#include <types.h>
3#include <game/bases/d_cyuukan.hpp>
4#include <game/mLib/m_vec.hpp>
6
7class dInfo_c {
8public:
9 /// @unofficial
11 GAME_MODE_NORMAL,
12 GAME_MODE_SUPER_GUIDE,
13 GAME_MODE_TITLE,
14 GAME_MODE_TITLE_REPLAY,
15 GAME_MODE_HINT_MOVIE
16 };
17
19 u32 mReplayDuration;
20 u8 mMovieType;
21 u8 mEntrance;
22 u8 mArea;
23 bool mIsReplay;
24 GameMode_e mGameMode;
25 u8 mWorld1;
26 u8 mLevel1;
27 u8 mWorld2;
28 u8 mLevel2;
29 };
30
31 /// @unofficial
32 /// @todo Fill out this enum.
34 GAME_FLAG_0 = BIT_FLAG(0),
35 GAME_FLAG_4 = BIT_FLAG(4),
36 GAME_FLAG_IS_COIN_COURSE = BIT_FLAG(6)
37 };
38
39 struct enemy_s {
40 int mSubworld;
41 int mPathIndex;
42 PATH_DIRECTION_e mWalkDirection;
43 bool m_0c;
44 };
45
46 dInfo_c();
47
48 void GetMapEnemyInfo(int, int, enemy_s &);
49 void SetMapEnemyInfo(int, int, int, int);
50 void FUN_800bbc40(int, int, int);
51
52 u8 getCourse() const { return m_startGameInfo.mLevel1; }
53 u8 getWorld() const { return m_startGameInfo.mWorld1; }
54 dCyuukan_c *getCyuukan() { return &mCyuukan; }
55
56 static dInfo_c *getInstance() { return m_instance; }
57
58 char pad1[0x8];
59 dCyuukan_c mCyuukan;
60 char pad2[0x18];
61 int m_54;
62 u8 pad3[0x44];
63 int m_9c;
64 u8 pad4[0x2e4];
65 int mCharIDs[4];
66 bool mIsWorldSelect; ///< Whether the World Select Menu is being displayed.
67 u8 pad5[30];
68 bool mClearCyuukan; ///< Clear the checkpoint data if this is @p true. [Used for the backdoor entrance of 7-C]
69 int mDisplayCourseWorld;
70 int mDisplayCourseNum;
71 u8 pad6[0x14];
72 int mTextBoxMessageGroup;
73 int mTextBoxMessageID;
74 u8 pad7[0x1];
75 bool mExtensionAttached;
76 u8 m_3da;
77 u8 pad8[0x7];
78 int mCourseSelectPageNum;
79 int mCourseSelectIndexInPage;
80 u8 pad9[0x712];
81 bool mFukidashiActionPerformed[4][0x16];
82 u32 pad10;
83
84 static dInfo_c *m_instance;
85 static unsigned int mGameFlag; ///< See GAME_FLAG_e
86 static StartGameInfo_s m_startGameInfo;
87};
bool mClearCyuukan
Clear the checkpoint data if this is true. [Used for the backdoor entrance of 7-C].
Definition d_info.hpp:68
static unsigned int mGameFlag
See GAME_FLAG_e.
Definition d_info.hpp:85
GAME_FLAG_e
Definition d_info.hpp:33
bool mIsWorldSelect
Whether the World Select Menu is being displayed.
Definition d_info.hpp:66