blob: c480a754e61b1e8c64cdc82f9195c40250014743 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
|
#ifndef D_LYT_SKY_GAUGE_H
#define D_LYT_SKY_GAUGE_H
#include "d/lyt/d2d.h"
#include "s/s_State.hpp"
class dLytSkyGauge_c;
class dLytSkyGaugeMain_c {
public:
dLytSkyGaugeMain_c();
virtual ~dLytSkyGaugeMain_c() {}
bool build(d2d::ResAccIf_c *resAcc);
bool execute();
bool remove();
void changeToIn();
void changeToMove();
void changeToNone();
void changeToOut();
void setHeight(f32 height);
bool isIdle() {
return mIsIdle;
}
const d2d::dLytSub &getLyt() const {
return mLyt;
}
d2d::dLytSub &getLyt() {
return mLyt;
}
private:
STATE_FUNC_DECLARE(dLytSkyGaugeMain_c, ModeNone);
STATE_FUNC_DECLARE(dLytSkyGaugeMain_c, ModeIn);
STATE_FUNC_DECLARE(dLytSkyGaugeMain_c, ModeMove);
STATE_FUNC_DECLARE(dLytSkyGaugeMain_c, ModeOut);
/* 0x004 */ UI_STATE_MGR_DECLARE(dLytSkyGaugeMain_c);
/* 0x040 */ d2d::dLytSub mLyt;
/* 0x0D4 */ d2d::AnmGroup_c mAnmGroups[3];
/* 0x194 */ bool mIsIdle;
/* 0x195 */ bool field_0x195; // unused
};
class dLytSkyGauge_c : public d2d::dSubPane {
public:
dLytSkyGauge_c() : mStateMgr(*this) {}
virtual bool build(d2d::ResAccIf_c *resAcc) override;
virtual bool remove() override;
virtual bool execute() override;
virtual nw4r::lyt::Pane *getPane() override {
return mMain.getLyt().getLayout()->GetRootPane();
}
virtual d2d::LytBase_c *getLyt() override {
return &mMain.getLyt();
}
virtual const char *getName() const override {
return mMain.getLyt().getName();
}
virtual ~dLytSkyGauge_c() {}
void setHeight(f32 height);
static dLytSkyGauge_c *sInstance;
void setWantsIn() {
mWantsIn = true;
}
void setWantsOut() {
mWantsOut = true;
}
private:
STATE_FUNC_DECLARE(dLytSkyGauge_c, None);
STATE_FUNC_DECLARE(dLytSkyGauge_c, In);
STATE_FUNC_DECLARE(dLytSkyGauge_c, Move);
STATE_FUNC_DECLARE(dLytSkyGauge_c, Out);
STATE_MGR_DEFINE_UTIL_CHANGESTATE(dLytSkyGauge_c);
/* 0x008 */ UI_STATE_MGR_DECLARE(dLytSkyGauge_c);
/* 0x008 */ d2d::ResAccIf_c mResAcc;
/* 0x3B4 */ dLytSkyGaugeMain_c mMain;
/* 0x54C */ bool mWantsIn;
/* 0x54D */ bool mWantsOut;
};
#endif
|