New Super Mario Bros. U Headers
Loading...
Searching...
No Matches
ActorState.h
Go to the documentation of this file.
1#pragma once
2
3#include <actor/ActorCollision.h>
4#include <state/FStateMgr.h>
5#include <state/FStateStateMgr.h>
6
7// vtbl Address: 0x10000EC8
9{
10 // getRuntimeTypeInfoStatic()::typeInfo initialization guard variable Address: 0x101E9CDC
11 // getRuntimeTypeInfoStatic()::typeInfo Address: 0x101E9CE0
12 SEAD_RTTI_OVERRIDE(ActorState, ActorCollision)
13
14public:
15 // Address: 0x0200A9C0
18
20 {
21 mStateMgr.executeState();
22 }
23
24 void changeState(const StateID& state_id)
25 {
26 mStateMgr.changeState(state_id);
27 }
28
29 bool isState(const StateID& state_id) const
30 {
31 return *mStateMgr.getStateID() == state_id;
32 }
33
34 bool isOldState(const StateID& state_id) const
35 {
36 return *mStateMgr.getOldStateID() == state_id;
37 }
38
39 const StateID* getState() const
40 {
41 return mStateMgr.getStateID();
42 }
43
44protected:
46 //u32 _17c4[4 / sizeof(u32)]; // Alignment???
47};
48static_assert(sizeof(ActorState) == 0x17C8, "ActorState size mismatch");
49
50// vtbl Address: 0x10001048
52{
53 // getRuntimeTypeInfoStatic()::typeInfo initialization guard variable Address: 0x101E9CE4
54 // getRuntimeTypeInfoStatic()::typeInfo Address: 0x101E9CE8
55 SEAD_RTTI_OVERRIDE(ActorMultiState, ActorCollision)
56
57public:
58 // Address: 0x0200AA8C
61
63 {
64 mStateMgr.executeState();
65 }
66
67 virtual void changeState(const StateID& state_id)
68 {
69 mStateMgr.changeState(state_id);
70 }
71
72 bool isState(const StateID& state_id) const
73 {
74 return *mStateMgr.getStateID() == state_id;
75 }
76
77 bool isOldState(const StateID& state_id) const
78 {
79 return *mStateMgr.getOldStateID() == state_id;
80 }
81
82 bool isMainState(const StateID& state_id) const
83 {
84 return *mStateMgr.getMainStateID() == state_id;
85 }
86
87protected:
89};
90static_assert(sizeof(ActorMultiState) == 0x17C8, "ActorMultiState size mismatch");
Definition ActorState.h:52
~ActorMultiState() override
Definition ActorState.h:60
virtual void changeState(const StateID &state_id)
Definition ActorState.h:67
void executeState()
Definition ActorState.h:62
bool isState(const StateID &state_id) const
Definition ActorState.h:72
FStateStateMgr< ActorMultiState > mStateMgr
Definition ActorState.h:88
bool isMainState(const StateID &state_id) const
Definition ActorState.h:82
bool isOldState(const StateID &state_id) const
Definition ActorState.h:77
Definition ActorState.h:9
bool isState(const StateID &state_id) const
Definition ActorState.h:29
FStateMgr< ActorState > mStateMgr
Definition ActorState.h:45
~ActorState() override
Definition ActorState.h:17
const StateID * getState() const
Definition ActorState.h:39
void executeState()
Definition ActorState.h:19
void changeState(const StateID &state_id)
Definition ActorState.h:24
bool isOldState(const StateID &state_id) const
Definition ActorState.h:34