NSMBW-Decomp
A decompilation of New Super Mario Bros. Wii
Loading...
Searching...
No Matches
s_State.hpp
1
#pragma once
2
#include <game/sLib/s_FStateStateMgr.hpp>
3
#include <game/sLib/s_FStateMgr.hpp>
4
#include <game/sLib/s_StateMethodUsr_FI.hpp>
5
#include <game/sLib/s_FStateVirtualID.hpp>
6
7
#define STATE_FUNC_DECLARE(class, name) \
8
void initializeState_##name(); \
9
void executeState_##name(); \
10
void finalizeState_##name(); \
11
static sFStateID_c<class> StateID_##name
12
13
#define STATE_VIRTUAL_FUNC_DECLARE(class, name) \
14
virtual void initializeState_##name(); \
15
virtual void executeState_##name(); \
16
virtual void finalizeState_##name(); \
17
static sFStateVirtualID_c<class> StateID_##name
18
19
#define STATE_DEFINE(class, name) sFStateID_c<class> class::StateID_##name( \
20
#class "::StateID_" #name, \
21
&class::initializeState_##name, \
22
&class::executeState_##name, \
23
&class::finalizeState_##name)
24
25
#define STATE_VIRTUAL_DEFINE(class, name) sFStateVirtualID_c<class> class::StateID_##name( \
26
baseID_ ##name<sStateID_c> (), \
27
#class "::StateID_" #name, \
28
&class::initializeState_##name, \
29
&class::executeState_##name, \
30
&class::finalizeState_##name)
31
32
#define STATE_BASE_VIRTUAL_DEFINE(class, name) \
33
template <typename T> \
34
const sStateIDIf_c &baseID_##name() { \
35
return T::StateID_##name; \
36
} \
37
template <> \
38
const sStateIDIf_c &baseID_##name<sStateID_c>() { \
39
return sStateID::null; \
40
}
41
include
game
sLib
s_State.hpp
Made with ❤️ by
CLF78
and
RootCubed
. Logos by
Chasical
and
B1
. Website generated by
Doxygen
1.13.2