SMG-Decomp
A decompilation of Super Mario Galaxy 1
Loading...
Searching...
No Matches
GeneralMapParts.hpp
1#pragma once
2
3#include "Game/MapObj/MapParts.hpp"
4#include "Game/MapObj/MapPartsRailGuideDrawer.hpp"
5#include "Game/MapObj/MapPartsRailMover.hpp"
6#include "Game/MapObj/MapPartsRailRotator.hpp"
7#include "Game/MapObj/MapPartsRailPosture.hpp"
8#include "Game/MapObj/MapPartsRotator.hpp"
9#include "Game/MapObj/MapPartsAppearController.hpp"
10#include "Game/Util/Array.hpp"
11
12class GeneralMapParts : public MapParts {
13public:
14 GeneralMapParts(const char *);
15
16 virtual ~GeneralMapParts();
17 virtual void init(const JMapInfoIter &);
18 virtual void initAfterPlacement();
19 virtual void appear();
20 virtual void kill();
21 virtual void control();
22 virtual void calcAndSetBaseMtx();
23 virtual bool receiveOtherMsg(u32, HitSensor *, HitSensor *);
24
25 void initMapPartsFunction(const JMapInfoIter &);
26 void initSensorType(const JMapInfoIter &);
27 void initGravity(const JMapInfoIter &);
28 void receiveMsgSwitchBOn();
29 void receiveMsgSwitchBOff();
30 void broadcastMsgToAllFunctions(u32);
31 bool isFixed() const;
32 void startMove();
33 void exeWait();
34 void exeMoveStart();
35
36 ActorCameraInfo* mCameraInfo; // _98
37 s32 mMoveConditionType; // _9C
38 s32 mSignMotionType; // _A0
39 s32 mShadowType; // _A4
41 MapPartsAppearController* mAppearController; // _CC
42 MapPartsRailRotator* mRailRotator; // _D0
43 MapPartsRailMover* mRailMover; // _D4
44 MapPartsRotator* mRotator; // _D8
45 MapPartsRailGuideDrawer* mGuideDrawer; // _DC
46 MapPartsRailPosture* mRailPosture; // _E0
47 u8 _E4;
48 u8 _E5;
49};
50
51namespace NrvGeneralMapParts {
52 NERVE(HostTypeWait);
53 NERVE(HostTypeWaitForPlayerOn);
54 NERVE(HostTypeMoveStart);
55 NERVE(HostTypeMove);
56};
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.