mirror of https://github.com/zeldaret/tp.git
d_a_door_spiral mostly done (#3007)
This commit is contained in:
parent
1668a01ab9
commit
ce41820bf0
|
|
@ -1,6 +1,152 @@
|
|||
#ifndef D_A_DOOR_SPIRAL_H
|
||||
#define D_A_DOOR_SPIRAL_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
|
||||
class daSpiral_c;
|
||||
class dSpiral_stop_c {
|
||||
public:
|
||||
int create(daSpiral_c*);
|
||||
int remove(daSpiral_c*);
|
||||
void calcMtx(daSpiral_c*);
|
||||
void openInit(daSpiral_c*);
|
||||
BOOL openProc(daSpiral_c*);
|
||||
void closeInit(daSpiral_c*);
|
||||
BOOL closeProc(daSpiral_c*);
|
||||
void draw(daSpiral_c*);
|
||||
BOOL regist(daSpiral_c*);
|
||||
BOOL release(daSpiral_c*);
|
||||
|
||||
/* 0x00 */ J3DModel* mpModel;
|
||||
/* 0x04 */ dBgW* mpBgw;
|
||||
/* 0x08 */ u8 field_0x08[0x38 - 0x08];
|
||||
/* 0x38 */ Mtx mBgMtx;
|
||||
/* 0x68 */ f32 mHeight;
|
||||
/* 0x6C */ f32 mHeightStep;
|
||||
/* 0x70 */ u8 field_0x70;
|
||||
/* 0x71 */ u8 field_0x71;
|
||||
/* 0x72 */ u8 field_0x72;
|
||||
};
|
||||
|
||||
class daSpiral_c : public fopAc_ac_c {
|
||||
public:
|
||||
enum daSpiral_Type_e {
|
||||
daSpiral_TYPE_DOWN_e,
|
||||
daSpiral_TYPE_UP_e,
|
||||
};
|
||||
|
||||
enum daSpiral_DemoAction_e {
|
||||
daSpiral_DEMOACT_WAIT_e,
|
||||
daSpiral_DEMOACT_START_e,
|
||||
daSpiral_DEMOACT_SETGOAL_e,
|
||||
daSpiral_DEMOACT_SETSTART_e,
|
||||
daSpiral_DEMOACT_SETPOS_e,
|
||||
daSpiral_DEMOACT_L_SET_e,
|
||||
daSpiral_DEMOACT_SETROOM_e,
|
||||
daSpiral_DEMOACT_SETROOM2_e,
|
||||
daSpiral_DEMOACT_RUN_e,
|
||||
daSpiral_DEMOACT_STOP_OPEN_e,
|
||||
daSpiral_DEMOACT_STOP_CLOSE_e,
|
||||
daSpiral_DEMOACT_END_CHECK_e,
|
||||
};
|
||||
|
||||
enum daSpiral_Action_e {
|
||||
daSpiral_ACT_INIT_e,
|
||||
daSpiral_ACT_WAIT_e,
|
||||
daSpiral_ACT_DEMO_e,
|
||||
daSpiral_ACT_STOP_CLOSE_e,
|
||||
};
|
||||
|
||||
daSpiral_c() {}
|
||||
~daSpiral_c() {}
|
||||
|
||||
const char* getAlwaysArcName();
|
||||
const char* getSpiralDzbName(int);
|
||||
const char* getDzb();
|
||||
const char* getBmdArcName();
|
||||
const char* getEvArcName();
|
||||
const char* getBmd(int);
|
||||
const char* getBmd2(int);
|
||||
const char* getStopBmd();
|
||||
const char* getStopBmd2();
|
||||
const char* getStopDzb();
|
||||
|
||||
J3DModelData* getModelData();
|
||||
J3DModelData* getStopModelData();
|
||||
bool debugCheckParam();
|
||||
int create();
|
||||
int CreateHeap();
|
||||
int CreateInit();
|
||||
void makeEventId(int);
|
||||
void setEventPrm();
|
||||
void settingStartRoom();
|
||||
void settingEndRoom();
|
||||
void EndCommon();
|
||||
BOOL checkArea();
|
||||
void calcMtx();
|
||||
void initProc(int);
|
||||
void initOpenDemo(int);
|
||||
int getDemoAction();
|
||||
int demoProc();
|
||||
int actionWait();
|
||||
int actionDemo();
|
||||
int actionStopClose();
|
||||
int actionInit();
|
||||
void setPartner();
|
||||
void clrPartner();
|
||||
void setGoal();
|
||||
void setNextSpiral();
|
||||
BOOL RunPlayerSpiral();
|
||||
u8 frontCheck();
|
||||
int checkExecute();
|
||||
int execute();
|
||||
BOOL adjoinPlayer();
|
||||
BOOL drawCheck_local();
|
||||
BOOL drawCheck(int);
|
||||
void debugDraw();
|
||||
int draw();
|
||||
int Delete();
|
||||
BOOL checkMakeStop();
|
||||
int checkStopF();
|
||||
void setStopDemo();
|
||||
BOOL checkStopClose();
|
||||
void setStop();
|
||||
BOOL checkStopOpen();
|
||||
|
||||
void setAction(u8 i_action) { mAction = i_action; }
|
||||
|
||||
/* 0x570 */ request_of_phase_process_class mAlwaysResPhase;
|
||||
/* 0x578 */ request_of_phase_process_class mBmdResPhase;
|
||||
/* 0x580 */ request_of_phase_process_class mEvResPhase;
|
||||
/* 0x588 */ J3DModel* mpModel;
|
||||
/* 0x58C */ dBgW* mpSpiralDzb;
|
||||
/* 0x590 */ Mtx mSpiralBgMtx;
|
||||
/* 0x5C0 */ dBgW* mDoorDarkDzb;
|
||||
/* 0x5C4 */ Mtx mDoorDarkBgMtx;
|
||||
/* 0x5F4 */ u8 mType;
|
||||
/* 0x5F5 */ s8 field_0x5f5;
|
||||
/* 0x5F6 */ u8 field_0x5f6;
|
||||
/* 0x5F7 */ u8 mAction;
|
||||
/* 0x5F8 */ int field_0x5f8;
|
||||
/* 0x5FC */ s16 mEventIds[8];
|
||||
/* 0x60C */ u8 mMapToolIds[8];
|
||||
/* 0x614 */ u8 mDemoMode;
|
||||
/* 0x618 */ int mStaffId;
|
||||
/* 0x61C */ s8 mRoomNo;
|
||||
/* 0x61D */ u8 mStartRoomNo;
|
||||
/* 0x61E */ u8 mEndRoomNo;
|
||||
/* 0x620 */ cXyz field_0x620;
|
||||
/* 0x62C */ u8 field_0x62c;
|
||||
/* 0x62D */ u8 mTimer;
|
||||
/* 0x630 */ cXyz field_0x630;
|
||||
/* 0x63C */ dSpiral_stop_c mStop;
|
||||
/* 0x6B0 */ u8 field_0x6B0[0x6B4 - 0x6B0];
|
||||
/* 0x6B4 */ s16 mPlRunPointNo;
|
||||
|
||||
#if VERSION == VERSION_SHIELD_DEBUG
|
||||
/* 0x6B8 */ cXyz field_0x6b8[2];
|
||||
/* 0x6D0 */ u8 mIsCheckParam;
|
||||
#endif
|
||||
};
|
||||
|
||||
#endif /* D_A_DOOR_SPIRAL_H */
|
||||
|
|
|
|||
|
|
@ -3749,6 +3749,10 @@ inline fopAc_ac_c* dComIfGp_event_getDoorPartner() {
|
|||
return g_dComIfG_gameInfo.play.getEvent()->getPtD();
|
||||
}
|
||||
|
||||
inline void dComIfGp_event_setDoorPartner(void* i_partner) {
|
||||
g_dComIfG_gameInfo.play.getEvent()->setPtD(i_partner);
|
||||
}
|
||||
|
||||
inline int dComIfGp_evmng_getMyStaffId(const char* i_staffname, fopAc_ac_c* i_actor, int i_tagId) {
|
||||
return dComIfGp_getPEvtManager()->getMyStaffId(i_staffname, i_actor, i_tagId);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -122,7 +122,7 @@ enum fopAc_AttentionFlag_e {
|
|||
/* 0x00000040 */ fopAc_AttnFlag_JUEL_e = (1 << fopAc_attn_JUEL_e),
|
||||
/* 0x00000080 */ fopAc_AttnFlag_ETC_e = (1 << fopAc_attn_ETC_e),
|
||||
|
||||
/* 0x00000100 */fopAc_AttnFlag_CHECK_e = (1 << fopAc_attn_CHECK_e),
|
||||
/* 0x00000100 */ fopAc_AttnFlag_CHECK_e = (1 << fopAc_attn_CHECK_e),
|
||||
|
||||
/* 0x00200000 */ fopAc_AttnFlag_UNK_0x200000 = 0x200000,
|
||||
/* 0x00400000 */ fopAc_AttnFlag_UNK_0x400000 = 0x400000,
|
||||
|
|
|
|||
|
|
@ -845,6 +845,8 @@ void fopAcM_showAssert_f(const fopAc_ac_c*, const char*, int, const char*, ...);
|
|||
|
||||
BOOL fopAcM_getNameString(const fopAc_ac_c*, char*);
|
||||
|
||||
inline void fopAcM_SetStatusMap(fopAc_ac_c*, u32) {}
|
||||
|
||||
class fopAcM_lc_c {
|
||||
public:
|
||||
fopAcM_lc_c() { mLineCheck.ClrSttsRoofOff(); }
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue