New Super Mario Bros. U Headers
Loading...
Searching...
No Matches
PlayerMgr.h
Go to the documentation of this file.
1#pragma once
2
3#include <player/PlayerHIO_Air.h>
4#include <player/PlayerHIO_Anm.h>
5#include <player/PlayerHIO_ChibiYoshi.h>
6#include <player/PlayerHIO_FlyMusa.h>
7#include <player/PlayerHIO_General.h>
8#include <player/PlayerHIO_Gravity.h>
9#include <player/PlayerHIO_Speed.h>
10#include <player/PlayerHIO_Turn.h>
11
12#include <container/seadRingBuffer.h>
13#include <container/seadSafeArray.h>
14#include <heap/seadDisposer.h>
15#include <math/seadVector.h>
16#include <prim/seadBitFlag.h>
17
18class FieldGameData;
19class PlayerBase;
20class PlayerObject;
21class Yoshi;
22
24{
25 // sInstance Address: 0x101E6994
27
28public:
34 static_assert(sizeof(RDashPhysicsType) == 4, "PlayerMgr::RDashPhysicsType size mismatch");
35
36public:
38 {
39 return mPlayerObject[player_no];
40 }
41
43 {
44 return mPlayerObject2[player_no];
45 }
46
47 bool isPlayerActive(s32 player_no)
48 {
49 return mActPlayerInfo.isOnBit(player_no);
50 }
51
53 {
54 return mActPlayerInfo.countOnBit();
55 }
56
57 void addNum(s32 player_no)
58 {
59 mActPlayerInfo.setBit(player_no);
60 }
61
62 void decNum(s32 player_no)
63 {
64 mActPlayerInfo.resetBit(player_no);
65 }
66
68 {
69 mDemoWaitFlgDisable.makeAllOne();
70 }
71
73 {
74 mDemoWaitFlgDisable.makeAllZero();
75 }
76
77 bool isDemoWaitFlgDisable(s32 player_no)
78 {
79 return mDemoWaitFlgDisable.isOnBit(player_no);
80 }
81
82 void setPauseDisable(s32 player_no)
83 {
84 mPauseDisable.setBit(player_no);
85 }
86
87 void setPauseEnable(s32 player_no)
88 {
89 mPauseDisable.resetBit(player_no);
90 }
91
92 bool isPauseDisable(s32 player_no)
93 {
94 return mPauseDisable.isOnBit(player_no);
95 }
96
98 {
100 }
101
102 bool isCreateBalloon(s32 player_no)
103 {
104 return mCreateBalloonFlag.isOnBit(player_no);
105 }
106
108 {
109 mAllBalloon = true;
110 }
111
112 bool isAllBalloon() const
113 {
114 return mAllBalloon;
115 }
116
117 void setCannonJump(s32 player_no)
118 {
119 mCannonJumpFlag.setBit(player_no);
120 }
121
122 void resetCannonJump(s32 player_no)
123 {
124 mCannonJumpFlag.resetBit(player_no);
125 }
126
128 {
129 return mCannonJumpTimer;
130 }
131
132 void onNextGotoBlock(s32 player_no)
133 {
134 mPlayerNextGotoBlockInfo.setBit(player_no);
135 }
136
138 {
139 return mPlayerNextGotoBlockInfo.countOnBit();
140 }
141
143
144 PlayerBase* getCtrlPlayer(s32 player_no);
145
146 void setPlayer(s32 player_no, PlayerObject* player_obj);
147 void resetPlayer(s32 player_no);
148
149 bool isAcceptQuake(s32 player_no);
150
152
154
156
157 bool isEnableStopOutDokanOther(s32 player_no);
158
159 bool isCourseInStar(s32 player_no);
160
162
163 void setHipAttackQuake(s32 type, s32 player_no, bool ext);
164
166
167 // Address: 0x02918144
169
170private:
192 > mPlayerObject2; // Idk why
196 Yoshi*,
200 Yoshi*,
223};
224static_assert(sizeof(PlayerMgr) == 0xD0);
Definition FieldGame.h:12
Definition PlayerBase.h:40
Definition PlayerMgr.h:24
sead::BitFlag8 mCreateFlag
Definition PlayerMgr.h:193
bool isPlayerActive(s32 player_no)
Definition PlayerMgr.h:47
u8 _88
Definition PlayerMgr.h:204
u32 _a8
Definition PlayerMgr.h:213
s32 getCannonJumpTimer() const
Definition PlayerMgr.h:127
bool isAllBalloon() const
Definition PlayerMgr.h:112
s32 getNum()
Definition PlayerMgr.h:52
PlayerObject * getPlayerObject(s32 player_no)
Definition PlayerMgr.h:37
PlayerHIO_Gravity mPlayerHIO_Gravity
Definition PlayerMgr.h:175
bool mOdaiClear
Definition PlayerMgr.h:215
bool isAcceptQuake(s32 player_no)
void setHipAttackQuake(s32 type, s32 player_no, bool ext)
void setAllBalloon()
Definition PlayerMgr.h:107
s32 mCoinMaxNum
Definition PlayerMgr.h:218
PlayerHIO_Turn mPlayerHIO_Turn
Definition PlayerMgr.h:174
void resetPlayer(s32 player_no)
s32 getEntryNum()
u8 mPlayerHIO_Jump
Definition PlayerMgr.h:176
sead::FixedRingBuffer< Yoshi *, cPlayerNum > mYoshi
Definition PlayerMgr.h:198
sead::Vector3f mPlayerSetPos
Definition PlayerMgr.h:219
bool isDemoWaitFlgDisable(s32 player_no)
Definition PlayerMgr.h:77
sead::SafeArray< PlayerObject *, cPlayerNum > mPlayerObject2
Definition PlayerMgr.h:192
sead::BitFlag8 mCannonJumpFlag
Definition PlayerMgr.h:210
PlayerBase * getCtrlPlayer(s32 player_no)
PlayerObject * getPlayerObject2(s32 player_no)
Definition PlayerMgr.h:42
bool isCreateBalloon(s32 player_no)
Definition PlayerMgr.h:102
s32 mPreFanfareTimer
Definition PlayerMgr.h:214
bool isPauseDisable(s32 player_no)
Definition PlayerMgr.h:92
sead::BitFlag16 mBgmState
Definition PlayerMgr.h:212
RDashPhysicsType mRDashPhysics
Definition PlayerMgr.h:222
sead::BitFlag16 mPlayerNextGotoBlockInfo
Definition PlayerMgr.h:220
PlayerHIO_General mPlayerHIO_General
Definition PlayerMgr.h:171
void setPlayer(s32 player_no, PlayerObject *player_obj)
sead::BitFlag32 mPauseDisable
Definition PlayerMgr.h:206
sead::BitFlag32 mCreateBalloonFlag
Definition PlayerMgr.h:208
sead::FixedRingBuffer< Yoshi *, cPlayerNum > mYoshi2
Definition PlayerMgr.h:202
PlayerHIO_Air mPlayerHIO_Air
Definition PlayerMgr.h:173
PlayerHIO_Anm mPlayerHIO_Anm
Definition PlayerMgr.h:178
s32 getNumNextGotoBlock()
Definition PlayerMgr.h:137
sead::SafeArray< PlayerObject *, cPlayerNum > mPlayerObject
Definition PlayerMgr.h:188
s32 getCoinNumMin()
u8 mPlayerHIO_Yoshi
Definition PlayerMgr.h:183
PlayerHIO_ChibiYoshi mPlayerHIO_ChibiYoshi
Definition PlayerMgr.h:182
u32 _84
Definition PlayerMgr.h:203
void setSubjectClear()
bool isEnableStopOutDokanOther(s32 player_no)
void resetCannonJump(s32 player_no)
Definition PlayerMgr.h:122
s32 getNumInGame()
void addNum(s32 player_no)
Definition PlayerMgr.h:57
bool isNormalCourse()
u8 mPlayerHIO_Totten
Definition PlayerMgr.h:184
void onNextGotoBlock(s32 player_no)
Definition PlayerMgr.h:132
s32 getYoshiNum()
sead::BitFlag32 mDemoWaitFlgDisable
Definition PlayerMgr.h:205
u8 mPlayerHIO_Swim
Definition PlayerMgr.h:177
void setPauseDisable(s32 player_no)
Definition PlayerMgr.h:82
bool mAllBalloon
Definition PlayerMgr.h:209
FieldGameData * getGameData()
sead::BitFlag16 _ca
Definition PlayerMgr.h:221
PlayerHIO_Speed mPlayerHIO_Speed
Definition PlayerMgr.h:172
s32 mHpDpSpecialType
Definition PlayerMgr.h:217
void setPauseEnable(s32 player_no)
Definition PlayerMgr.h:87
void decNum(s32 player_no)
Definition PlayerMgr.h:62
u8 mPlayerHIO_Propel
Definition PlayerMgr.h:179
PlayerHIO_FlyMusa mPlayerHIO_FlyMusa
Definition PlayerMgr.h:181
void setCannonJump(s32 player_no)
Definition PlayerMgr.h:117
void setDemoWaitFlgDisable()
Definition PlayerMgr.h:67
bool mDisablePlayerInstrument
Definition PlayerMgr.h:207
void resetDemoWaitFlgDisable()
Definition PlayerMgr.h:72
bool isCourseInStar(s32 player_no)
s32 mCannonJumpTimer
Definition PlayerMgr.h:211
sead::BitFlag16 mActPlayerInfo
Definition PlayerMgr.h:194
u8 _b1
Definition PlayerMgr.h:216
u8 mPlayerHIO_Penguin
Definition PlayerMgr.h:180
bool isDisablePlayerInstrument() const
Definition PlayerMgr.h:97
Definition PlayerObject.h:23
Definition Yoshi.h:8