NSMBW-Decomp
A decompilation of New Super Mario Bros. Wii
Loading...
Searching...
No Matches
d_a_player_base.hpp
1#pragma once
2
4#include <game/bases/d_actor.hpp>
5#include <game/bases/d_ac_py_key.hpp>
6#include <game/bases/d_quake.hpp>
7#include <game/mLib/m_3d.hpp>
9
11public:
12 u8 pad[0x108];
13 mMtx_c mMtx;
14
15 mMtx_c &getMtx() { return mMtx; }
16};
17
18class daPlBase_c : public dActor_c {
19public:
20 enum DamageType_e {
21 DAMAGE_NONE = 0,
22 DAMAGE_1, DAMAGE_2, DAMAGE_3, DAMAGE_4,
23 DAMAGE_5, DAMAGE_6, DAMAGE_7, DAMAGE_8,
24 DAMAGE_9, DAMAGE_A, DAMAGE_B, DAMAGE_C
25 };
26
27 enum DokanDir_e {
28 DOKAN_U,
29 DOKAN_D,
30 DOKAN_L,
31 DOKAN_R,
32 DOKAN_ROLL
33 };
34
35 enum StarSet_e {};
36
37 enum AnmBlend_e {
38 BLEND_0,
39 BLEND_1
40 };
41
42 daPlBase_c();
43 virtual ~daPlBase_c();
44
45 virtual int create();
46 virtual int preExecute();
47 virtual int execute();
48 virtual void postExecute(fBase_c::MAIN_STATE_e status);
49 virtual int doDelete();
50 virtual int preDraw();
51 virtual int draw();
52
53 virtual void executeMain() {}
54 virtual void executeLastPlayer() {}
55 virtual void executeLastAll() {}
56 virtual bool isItemKinopio() { return false; }
57 virtual void setPowerup(PLAYER_POWERUP_e, int); ///< @unofficial
58 virtual u8 getTallType(s8);
59 virtual void *getHeadBgPointData() { return nullptr; };
60 virtual void *getWallBgPointData() { return nullptr; };
61 virtual void *getFootBgPointData() { return nullptr; };
62 virtual float getStandHeadBgPointY() { return 0.0f; }
63 virtual void checkBgCrossSub() {}
64 virtual void postBgCross();
65 virtual float getSandSinkRate() { return 0.0f; }
66 virtual void setReductionScale();
67 virtual void initStampReduction();
68 virtual void calcJumpDaiReductionScale(int, int);
69 virtual void setReductionBoyon();
70 virtual bool setPressBgDamage(int, int);
71 virtual bool setBalloonInDispOut(int) { return false; }
72 virtual bool isChange() { return false; }
73 virtual void changeNextScene(int);
74 virtual bool isEnableDokanInStatus(void);
75 virtual bool setHideNotGoalPlayer();
76 virtual int vf130(float f, mVec2_c *v, int param3); ///< @unofficial
77 virtual bool setDemoCannonWarp(int, short, short) { return false; }
78
90 STATE_VIRTUAL_FUNC_DECLARE(daPlBase_c, DemoOutDokanRoll);
91 STATE_VIRTUAL_FUNC_DECLARE(daPlBase_c, DemoInWaterTank);
92 STATE_VIRTUAL_FUNC_DECLARE(daPlBase_c, DemoOutWaterTank);
95 STATE_VIRTUAL_FUNC_DECLARE(daPlBase_c, DemoNextGotoBlock);
98
99 virtual void initialDokanUnder();
100 virtual void initialDokanUper();
101 virtual void initialDokanRight();
102 virtual void initialDokanLeft();
103 virtual void initialDokanUnderM();
104 virtual void initialDokanUperM();
105 virtual void initialDokanRightM();
106 virtual void initialDokanLeftM();
107 virtual void initialDokanDepth();
108 virtual void initialDoor();
109 virtual void initialFall();
110 virtual void initialVine();
111 virtual void initialJumpRight();
112 virtual void initialJumpLeft();
113 virtual void initialHipAttack();
114 virtual void initialSlip();
115 virtual void initialSwim();
116 virtual void initialBlockJump();
117 virtual void initialBlockJumpBelow();
118 virtual void initialTorideBoss();
119 virtual void initialNormal();
120
121 virtual void setCreateAction(int);
122 virtual bool setTimeOverDemo() { return false; }
123 virtual void setFallDownDemo() {}
124 virtual bool setDokanIn(DokanDir_e dir);
125 virtual void initDemoOutDokan();
126 virtual bool vf284(int); ///< @unofficial
127 virtual void initDemoGoalBase();
128 virtual void executeDemoGoal_Run();
129 virtual void initializeDemoControl() {}
130
131 virtual void changeState(const sStateIDIf_c &, void *);
132
151
152 virtual bool isWaitFrameCountMax() { return false; }
153 virtual bool checkWalkNextAction() { return false; }
154 virtual void setWaitActionAnm(AnmBlend_e);
155 virtual void setWalkActionAnm(AnmBlend_e);
156 virtual void walkActionInit_Wait(AnmBlend_e);
157 virtual void walkAction_Wait();
158 virtual void walkActionInit_Move(AnmBlend_e);
159 virtual void walkAction_Move();
160 virtual bool checkCrouch();
161 virtual bool setCancelCrouch();
162 virtual void setSlipAction();
163 virtual void slipActionMove(int);
164 virtual void setFallAction();
165 virtual void setHipAttack_AttackStart();
166
167 virtual void releaseFunsuiAction();
168
169 virtual float getCloudOffsetY();
170 virtual bool setRideJrCrown(const dActor_c *) { return false; }
171 virtual bool isRideJrCrownOwn(const dActor_c *) { return false; }
172 virtual void setRideJrCrownMtx(const mMtx_c *) {}
173 virtual void setRideJrCrownAnm(int) {}
174
175 virtual float *getHeadTopPosP() { return nullptr; }
176 virtual float *getGravityData(); // { return mGravityData; }
177 virtual bool isCarry() const { return false; }
178 virtual bool isLiftUp() { return false; }
179
180 virtual bool isLiftUpExceptMame() { return false; }
181 virtual int isStar() const;
182 virtual void setStar(StarSet_e, int);
183 virtual void endStar() {}
184 virtual void setVirusStar(daPlBase_c *) {}
185 virtual void clearStarCount();
186 virtual s8 getStarCount() const; // { return mStarCount; }
187 virtual s8 calcStarCount(int);
188
189 virtual bool isNoDamage();
190 virtual bool setDamage(dActor_c *, DamageType_e);
191 virtual bool setForcedDamage(dActor_c *, DamageType_e);
192
193 virtual u32 vf3fc(float, float, int, int, int); ///< @unofficial
194 virtual u32 vf400(float, float, int, int, int); ///< @unofficial
195 virtual bool setWaitJump(float);
196
197 virtual bool setHipAttackOnEnemy(mVec3_c *);
198
199 virtual void clearJumpActionInfo(int) {}
200 virtual bool setSwimSpeed(float, float);
201 virtual void setLandSE();
202
203 virtual void set1UpKinokoEffect() {}
204 virtual void setFlagGetEffect() {}
205 virtual void setHipAttackEffect();
206
207 virtual void setZPosition();
208 virtual void setZPosition(float);
209 virtual void setZPositionDirect(float);
210 virtual void offZPosSetNone();
211
212 virtual void vf434(int, int); ///< @unofficial
213 virtual void vf438(int, int); ///< @unofficial
214
215 virtual void startQuakeShock(dQuake_c::TYPE_SHOCK_e);
216 virtual void startPatternRumble(const char *pattern);
217
218 virtual short getMukiAngle(u8 direction);
219 virtual int turnAngle();
220 virtual void maxFallSpeedSet();
221
222 virtual bool setDamage2(dActor_c *, daPlBase_c::DamageType_e);
223
224 bool isMameAction();
225
226 mVec3_c getAnkleCenterPos();
227
228 bool isStatus(int key);
229
230 float getAnkleCenterX() { return getAnkleCenterPos().x; }
231 float getAnkleCenterY() { return getAnkleCenterPos().y; }
232
233 int getTreadCount() { return mTreadCount; }
234
235 daPlModel_c *getModel();
236
237 char mPad1[0xc9e];
238 float mSmallScoreOffset;
239 char mPad2[0x1];
240 u8 mAmiLayer;
241 char mPad3[0x4a];
242 s8 mTreadCount;
243 s8 m_ced;
244 s8 m_cee;
245 char mPad4[0x52];
246 u32 mFlags;
247 u8 mPad5[0x3b4];
248};
dActor_c()
Constructs a new actor.
Definition d_actor.cpp:46
virtual u32 vf3fc(float, float, int, int, int)
virtual void postExecute(fBase_c::MAIN_STATE_e status)
post method for the execute operation.
virtual int vf130(float f, mVec2_c *v, int param3)
virtual int preExecute()
pre method for the execute operation.
virtual int draw()
do method for the draw operation.
virtual int execute()
do method for the execute operation.
virtual bool vf284(int)
virtual u32 vf400(float, float, int, int, int)
virtual void vf434(int, int)
virtual void vf438(int, int)
virtual int create()
do method for the create operation.
virtual int doDelete()
do method for the delete operation.
virtual void setPowerup(PLAYER_POWERUP_e, int)
virtual int preDraw()
pre method for the draw operation.
MAIN_STATE_e
The possible operation results.
Definition f_base.hpp:33
A 3x4 matrix.
Definition m_mtx.hpp:9
A two-dimensional floating point vector.
Definition m_vec.hpp:16
A three-dimensional floating point vector.
Definition m_vec.hpp:107
The interface for state IDs.
PLAYER_POWERUP_e
The identifiers for each powerup.
#define STATE_VIRTUAL_FUNC_DECLARE(class, name)
Declares a virtual state.
Definition s_State.hpp:22