SMG-Decomp
A decompilation of Super Mario Galaxy 1
Loading...
Searching...
No Matches
PressureBase.hpp
1#pragma once
2
3#include "Game/LiveActor/LiveActor.hpp"
4#include "Game/LiveActor/LiveActorGroupArray.hpp"
5#include "Game/Util/JointController.hpp"
6
8public:
9 PressureMessenger(MsgSharedGroup *, const char *);
10
11 virtual ~PressureMessenger();
12 virtual void init(const JMapInfoIter &);
13
14 void exeSync();
15
16 MsgSharedGroup* mSharedGroup; // _8C
17 s32 _90;
18};
19
20class PressureBase : public LiveActor {
21public:
22 PressureBase(const char *);
23
24 virtual ~PressureBase() {
25
26 }
27
28 virtual void init(const JMapInfoIter &);
29 virtual void initAfterPlacement();
30 virtual void control();
31 virtual void calcAndSetBaseMtx();
32 virtual void attackSensor(HitSensor *, HitSensor *);
33 virtual bool receiveMsgPlayerAttack(u32, HitSensor *, HitSensor *);
34 virtual bool receiveOtherMsg(u32, HitSensor *, HitSensor *);
35 virtual void initBullet(const JMapInfoIter &);
36 virtual bool shotBullet(f32);
37
38 void exeBound();
39 void exeWait();
40 void exePrepareToShot();
41 void exeShot();
42 void startWait();
43 void startRelax();
44 bool calcJointCannonV(TPos3f *, const JointControllerInfo &);
45 bool isShotTypeOnGravity() const;
46 bool isShotTypeFollow() const;
47
48 JointControlDelegator<PressureBase>* mJointController; // _8C
49 TVec3f mFront; // _90
50 f32 _9C;
51 f32 mNozzleRotation; // _A0
52 s32 mWaitTime; // _A4
53 f32 mBallSpeed; // _A8
54 s32 mShotType; // _AC
55 u8 _B0;
56 u8 _B1;
57 u8 _B2;
58 u8 _B3;
59 PressureMessenger* mMessenger; // _B4
60 MsgSharedGroup* mGroup; // _B8
61 s8 _BC;
62};
63
64namespace NrvPressureMessenger {
65 NERVE(PressureMessengerNrvSync);
66
67};
68
69namespace NrvPressureBase {
70 NERVE(PressureBaseNrvRelaxStart);
71 NERVE(PressureBaseNrvWaitStart);
72 NERVE(PressureBaseNrvRelax);
73 NERVE(PressureBaseNrvSyncWait);
74 NERVE(PressureBaseNrvFirstWait);
75 NERVE(PressureBaseNrvWait);
76 NERVE(PressureBaseNrvPrepareToShot);
77 NERVE(PressureBaseNrvShot);
78};
The basis of a drawable actor that can contain states (see: Nerve)
Definition LiveActor.hpp:24
virtual void calcAndSetBaseMtx()
Calculates and sets the base matrix of the actor.
virtual void init(const JMapInfoIter &)
Intializes the NameObj and can set various settings and construct necessary classes.
virtual void init(const JMapInfoIter &)
Intializes the NameObj and can set various settings and construct necessary classes.