summaryrefslogtreecommitdiff
path: root/include/d/t/d_t_touch.h
blob: bf0413bca9f105e252ff299d064f9fb53ff31625 (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
#ifndef D_T_TOUCH_H
#define D_T_TOUCH_H

#include "d/t/d_tg.h"
#include "m/m_mtx.h"
#include "s/s_State.hpp"

class dTgTouchTag : public dTg_c {
public:
    dTgTouchTag() : mStateMgr(*this) {}
    virtual ~dTgTouchTag() {}
    virtual int create() override;
    virtual int actorExecute() override;
    virtual int draw() override;
    virtual int doDelete() override;

    STATE_FUNC_DECLARE(dTgTouchTag, Wait);

private:
    u8 getActivatorIndex() {
        return mParams & 0xF;
    }

    u8 getZoneFlag() {
        return mParams >> 0x4;
    }

    u8 getChkFlag() {
        return mParams >> 0xC;
    }

    STATE_MGR_DECLARE(dTgTouchTag);
    mMtx_c mAreaOfEffect;
    u16 mFlagTimer;
    u8 mActivatorIndex;
    u8 mZoneFlag;
    u8 mChkFlag;
};

#endif