SMG-Decomp
A decompilation of Super Mario Galaxy 1
Loading...
Searching...
No Matches
CrystalCage.hpp
1#pragma once
2
3#include "Game/LiveActor/LiveActor.hpp"
4#include "Game/MapObj/DummyDisplayModel.hpp"
5
6class CrystalCage : public LiveActor {
7public:
8 CrystalCage(const char *);
9
10 virtual ~CrystalCage();
11 virtual void init(const JMapInfoIter &);
12 virtual void initAfterPlacement();
13 virtual void kill();
14 virtual void attackSensor(HitSensor *, HitSensor *);
15 virtual bool receiveMsgPlayerAttack(u32, HitSensor *, HitSensor *);
16 virtual bool receiveMsgEnemyAttack(u32, HitSensor *, HitSensor *);
17
18 void forceBreak();
19 void initMapToolInfo(const JMapInfoIter &);
20 void initModel(const char *);
21 void tryOnSwitchDead();
22 void exeWait();
23 void exeBreak();
24 void exeBreakAfter();
25
26 s32 mCrystalCageType; // _8C
27 ModelObj* mBreakObj; // _90
28 TPos3f _94;
29 s32 _C4;
30 s32 _C8;
31 RumbleCalculatorCosMultLinear* mRumbleCalc; // _CC
32 TVec3f _D0;
33 TVec3f _DC;
34 TVec3f _E8;
35 DummyDisplayModel* mDisplayModel; // _F4
36 TVec3f _F8;
37 bool _104;
38 u8 _105;
39 u8 _106;
40 u8 _107;
41 s32 _108;
42 bool mIsBreakObjVisible; // _10C
43 bool mPlayRiddleSFX; // _10D
44 bool mHasBinding; // _10E
45 u8 _10F;
46 TVec3f _110;
47};
48
49namespace NrvCrystalCage {
50 NERVE(CrystalCageNrvWait);
51 NERVE(CrystalCageNrvBreak);
52 NERVE(CrystalCageNrvBreakAfter);
53};
virtual void init(const JMapInfoIter &)
Intializes the NameObj and can set various settings and construct necessary classes.
The basis of a drawable actor that can contain states (see: Nerve)
Definition LiveActor.hpp:24