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
|
#ifndef D_A_BIRD_H
#define D_A_BIRD_H
#include "d/a/obj/d_a_obj_base.h"
#include "s/s_State.hpp"
class dBird_c : public dAcObjBase_c {
public:
dBird_c() : mStateMgr(*this) {}
virtual ~dBird_c() {}
STATE_FUNC_DECLARE(dBird_c, Wait);
STATE_FUNC_DECLARE(dBird_c, PreMove);
STATE_FUNC_DECLARE(dBird_c, Move);
STATE_FUNC_DECLARE(dBird_c, Hide);
STATE_FUNC_DECLARE(dBird_c, RideDemo);
STATE_FUNC_DECLARE(dBird_c, FirstRideDemo);
STATE_FUNC_DECLARE(dBird_c, OutAreaDemo);
STATE_FUNC_DECLARE(dBird_c, RideOff);
STATE_FUNC_DECLARE(dBird_c, OnGround);
STATE_FUNC_DECLARE(dBird_c, Tornado);
STATE_FUNC_DECLARE(dBird_c, SaveStartDemo);
STATE_FUNC_DECLARE(dBird_c, MiniGameWait);
STATE_FUNC_DECLARE(dBird_c, MiniGameMove);
STATE_FUNC_DECLARE(dBird_c, MiniGameEnd);
STATE_FUNC_DECLARE(dBird_c, MiniGameLevelUpDemo);
// fn_129_8DD0, only referenced by d_a_obj_bird_sp
void accelerateTowards(mVec3_c &targetDirection);
s16 getNumDashes() const {
return mNumDashes;
}
static dBird_c *getInstance() {
return spInstance;
}
private:
static dBird_c *spInstance;
/* 0x??? */ STATE_MGR_DECLARE(dBird_c);
u8 _0x36C[0xF8E - 0x36C];
/* 0xF8E */ s16 mNumDashes;
};
#endif
|