summaryrefslogtreecommitdiff
path: root/include/d/actor/d_a_bg.h
blob: be15d4486b9a20f5acd3c0f0e39ac4ac255f72df (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
#ifndef D_A_BG_H
#define D_A_BG_H

#include "f_op/f_op_actor.h"
#include "d/d_bg_w.h"
#include "SSystem/SComponent/c_phase.h"

class J3DModelData;
class J3DAnmTextureSRTKey;
class J3DAnmTevRegKey;
class mDoExt_btkAnm;
class mDoExt_brkAnm;

class daBg_btkAnm_c {
public:
    BOOL create(J3DModelData*, J3DAnmTextureSRTKey*);
    void entry(J3DModelData*);
    void play();

public:
    /* 0x00 */ mDoExt_btkAnm * anm;
    /* 0x04 */ u8 special;
};

class daBg_brkAnm_c {
public:
    BOOL create(J3DModelData*, J3DAnmTevRegKey*);
    void entry(J3DModelData*);
    void play();

public:
    /* 0x00 */ mDoExt_brkAnm * anm;
    /* 0x04 */ u8 special;
};

class daBg_c : public fopAc_ac_c {
public:
    void calcRoomMemory(char**, long*, char**, long*) {}
    void getRoomMemory(int) {}
    void initRoomMemory() {}

    ~daBg_c();
    const char * setArcName();
    inline BOOL createHeap();
    cPhs_State create();
    inline BOOL execute();
    inline BOOL draw();
    inline BOOL isDelete();

public:
    /* 0x290 */ request_of_phase_process_class mPhs;
    /* 0x298 */ struct BgModel {
        J3DModel * model;
        daBg_btkAnm_c * btk;
        daBg_brkAnm_c * brk;
        dKy_tevstr_c * mpTevStr;
    } bg[4];
    /* 0x2D8 */ dBgW * bgw;
    /* 0x2DC */ u8 mUnloadTimer;
};

// inline void searchRoomMemory(int) {}
// inline void searchRoomNo(int, readRoom_c*) {}

#endif /* D_A_BG_H */