SMG-Decomp
A decompilation of Super Mario Galaxy 1
Loading...
Searching...
No Matches
Note.hpp
1#pragma once
2
3#include "Game/LiveActor/LiveActor.hpp"
4#include "Game/LiveActor/LiveActorGroup.hpp"
5#include "Game/LiveActor/FlashingCtrl.hpp"
6
7class NoteFairy;
8
9class NoteGroup : public LiveActorGroup {
10public:
11 NoteGroup();
12
13 virtual ~NoteGroup();
14 virtual void init(const JMapInfoIter &);
15 virtual void movement();
16
17 f32 mRotation; // _18
18};
19
21class Note : public LiveActor {
22public:
23 Note(const char *, const TVec3f &, NoteFairy *);
24
25 virtual ~Note();
26 virtual void init(const JMapInfoIter &);
27 virtual void control();
28 virtual void calcAndSetBaseMtx();
29
31 virtual void attackSensor(HitSensor *, HitSensor *);
32
33 void startCountDown();
34
36 void exeWait();
38 void exeCountDown();
40 void exeFlyUp();
41
42 /* 0x8C */ NoteFairy* mParentFairy;
43 TVec3f _90;
44 TVec3f mRailDirection; // _9C
45 /* 0xA8 */ int mCounter;
46 f32 _AC;
47 bool mIsCountdown; // _B0
48 /* 0xB4 */ FlashingCtrl* mFlashCtrl; // A pointer to the FlashingCtrl instance that handles the "fading away" effects.
49 u32 _B8;
50};
51
52namespace NrvNote {
53 NERVE_DECL(NoteNrvWait, Note, Note::exeWait);
54 NERVE_DECL(NoteNrvCountDown, Note, Note::exeCountDown);
55 NERVE_DECL(NoteNrvFlyUp, Note, Note::exeFlyUp);
56};
The basis of a drawable actor that can contain states (see: Nerve)
Definition LiveActor.hpp:24
virtual void init(const JMapInfoIter &)
Intializes the NameObj and can set various settings and construct necessary classes.
Definition Note.cpp:121
Class that represents a single note in a NoteFairy actor.
Definition Note.hpp:21
void exeFlyUp()
Scales the note's velocity by -30.0 and then invalidates all hit sensors, and after 10 steps,...
Definition Note.cpp:74
virtual void init(const JMapInfoIter &)
Intializes the NameObj and can set various settings and construct necessary classes.
Definition Note.cpp:16
virtual void calcAndSetBaseMtx()
Calculates and sets the base matrix of the actor.
Definition Note.cpp:91
int mCounter
The amount of steps it takes for the note to disappear.
Definition Note.hpp:45
void exeCountDown()
Begins the flashing sequence and if the current step reaches Note::mCounter's value,...
Definition Note.cpp:61
NoteFairy * mParentFairy
The parent NoteFairy that this note was spawned from.
Definition Note.hpp:42
virtual void attackSensor(HitSensor *, HitSensor *)
Checks if the sensor is either a player or a rideable entity and if it is, it will "collect" the note...
Definition Note.cpp:106
void exeWait()
Begins the countdown sequence that plays the "waiting" animation, and is switched to the countdown ne...
Definition Note.cpp:48