mirror of
https://github.com/zeldaret/ss
synced 2026-07-06 05:14:28 -04:00
55 lines
1.5 KiB
C++
55 lines
1.5 KiB
C++
#ifndef D_T_SCENE_CHANGE_H
|
|
#define D_T_SCENE_CHANGE_H
|
|
|
|
#include "d/t/d_tg.h"
|
|
#include "m/m_mtx.h"
|
|
#include "m/m_vec.h"
|
|
|
|
class dTgSceneChange_c : public dTg_c {
|
|
public:
|
|
// TODO: Move this somewhere not in d_t_scene_change.
|
|
// The Variable gets passed to dAcPy_c::triggerExitRelated
|
|
enum Type_e {
|
|
/* 0x0 */ TYPE_0,
|
|
/* 0x1 */ TYPE_1, // Restricting Movement?
|
|
/* 0x2 */ TYPE_2,
|
|
/* 0x3 */ TYPE_3, // Forced Walk
|
|
/* 0x4 */ TYPE_4, // Loftwing
|
|
/* 0x5 */ TYPE_5, // Landing on Skyloft
|
|
/* 0x6 */ TYPE_6, // Enter/Exit Dungeon
|
|
/* 0x7 */ TYPE_7, // Minecart
|
|
/* 0x8 */ TYPE_8, // Cistern Rope to Basement
|
|
/* 0x9 */ TYPE_9, // Light Pillar?
|
|
/* 0xA */ TYPE_A, // Boat
|
|
/* 0xB */ TYPE_B, // Actor Related
|
|
};
|
|
|
|
dTgSceneChange_c() {}
|
|
virtual ~dTgSceneChange_c() {}
|
|
|
|
virtual int create() override;
|
|
virtual int draw() override;
|
|
virtual int actorExecute() override;
|
|
|
|
private:
|
|
bool checkDisabled() const;
|
|
bool checkScrapper();
|
|
|
|
void savePlayerPosition();
|
|
|
|
private:
|
|
/* 0x0FC */ mMtx_c mArea;
|
|
/* 0x12C */ u8 mSceneLink;
|
|
/* 0x12D */ u8 mSceneType;
|
|
/* 0x12E */ u8 mPathId;
|
|
/* 0x12F */ u8 mEnableSceneflag;
|
|
/* 0x130 */ u16 mEnableStoryflag;
|
|
/* 0x132 */ u16 mDisableStoryflag;
|
|
/* 0x134 */ bool field_0x134;
|
|
/* 0x135 */ bool field_0x135;
|
|
/* 0x136 */ bool field_0x136;
|
|
/* 0x138 */ mVec3_c field_0x138; // Player position on Scrapper Stop
|
|
};
|
|
|
|
#endif
|