New Super Mario Bros. U Headers
Loading...
Searching...
No Matches
ChangeBlockCoinBase.h
Go to the documentation of this file.
1#pragma once
2
3#include <collision/ActorCollisionDrcTouchCallback.h>
4#include <map/UnitID.h>
5#include <map_obj/BlockCoinBase.h>
6#include <map_obj/ObjBgCollisionCullCheck.h>
7#include <map_obj/ParentMovementMgr.h>
8
10{
11 SEAD_RTTI_OVERRIDE(ChangeBlockCoinBase, BlockCoinBase)
12
13public:
15 {
16 public:
17 // Address: 0x027263B8
19 };
20 static_assert(sizeof(DrcTouchCB) == 4);
21
22public:
23 enum Form : u32
24 {
27 };
28 static_assert(sizeof(Form) == 4);
29
30public:
31 ChangeBlockCoinBase(const ActorCreateParameter& param);
32 virtual ~ChangeBlockCoinBase() { }
33
34 // Address: 0x02726610
36 // Address: 0x02726634
38 // Address: 0x02726644
40
41 virtual void vf29C()
42 {
43 }
44
45 // Address: 0x027265BC
46 virtual void setTileFlag();
47
48 virtual u32 vf2AC()
49 {
50 return 0;
51 }
52
53 virtual void vf2B4()
54 {
55 }
56
57 virtual void vf2BC()
58 {
59 }
60
61 // TODO: inline
62 // Address: 0x02727998
63 virtual bool vf2C4(); // Checks if current state is StateID_Wait or equivalent
64
65 // Address: 0x02726654
66 virtual void onDrcTouch();
67
68 // Address: 0x02726760
70
72 {
73 return mDrcTouchCallback;
74 }
75
77 {
78 return mPosForState;
79 }
80
81protected:
92 u8 _1c7c[0x1C88 - 0x1C7C];
94 bool mIsCoin;
95 u8 _1c8a[0x1C90 - 0x1C8A];
98 u8 _1c96[0x1CA0 - 0x1C98];
100 //u32 _1ca4[4 / sizeof(u32)]; // Alignment???
101};
102static_assert(sizeof(ChangeBlockCoinBase) == 0x1CA8);
Definition ChangeBlockCoinBase.h:10
virtual void vf29C()
Definition ChangeBlockCoinBase.h:41
u8 _1c96[0x1CA0 - 0x1C98]
Definition ChangeBlockCoinBase.h:98
bool mPSwitchTransformed
Definition ChangeBlockCoinBase.h:88
virtual void vf2BC()
Definition ChangeBlockCoinBase.h:57
bool registerColliderActiveInfo()
sead::Vector3f mPosForState
Definition ChangeBlockCoinBase.h:83
void spawnItemDown() override
Form mForm
Definition ChangeBlockCoinBase.h:87
u32 getMultiCoinState() override
u16 _1c94
Definition ChangeBlockCoinBase.h:97
bool mDisablePSwitchTransform
Definition ChangeBlockCoinBase.h:93
ParentMovementType mParentMovementType
Definition ChangeBlockCoinBase.h:90
sead::Vector2f mColliderActiveAreaSize
Definition ChangeBlockCoinBase.h:86
virtual void onDrcTouch()
s32 mCoinCollectPlayerNo
Definition ChangeBlockCoinBase.h:96
bool mIsCoin
Definition ChangeBlockCoinBase.h:94
DrcTouchCB getDrcTouchCallback() const
Definition ChangeBlockCoinBase.h:71
UnitID mUnitID
Definition ChangeBlockCoinBase.h:89
virtual void setTileFlag()
ChangeBlockCoinBase(const ActorCreateParameter &param)
void spawnItemUp() override
DrcTouchCB mDrcTouchCallback
Definition ChangeBlockCoinBase.h:99
Form
Definition ChangeBlockCoinBase.h:24
@ cForm_Block
Definition ChangeBlockCoinBase.h:26
@ cForm_Coin
Definition ChangeBlockCoinBase.h:25
virtual u32 vf2AC()
Definition ChangeBlockCoinBase.h:48
u8 _1c7c[0x1C88 - 0x1C7C]
Definition ChangeBlockCoinBase.h:92
u32 mParentMovementID
Definition ChangeBlockCoinBase.h:91
ActorBgCollisionCheck::Sensor mFootSensor
Definition ChangeBlockCoinBase.h:82
u8 _1c8a[0x1C90 - 0x1C8A]
Definition ChangeBlockCoinBase.h:95
virtual bool vf2C4()
virtual ~ChangeBlockCoinBase()
Definition ChangeBlockCoinBase.h:32
virtual void vf2B4()
Definition ChangeBlockCoinBase.h:53
ParentMovementMgr mParentMovementMgr
Definition ChangeBlockCoinBase.h:84
ObjBgCollisionCullCheck mColliderActiveInfo
Definition ChangeBlockCoinBase.h:85
const sead::Vector3f & getPosForState() const
Definition ChangeBlockCoinBase.h:76