mirror of
https://github.com/encounter/tp.git
synced 2026-07-11 06:18:46 -07:00
lv7bsgate, lv8udfloor, lv9swshutter done, lv7propellery almost (#2768)
* lv7bsgate, lv8udfloor, lv9swshutter done, lv7propellery almost * fix builds * obj_lv6egate done
This commit is contained in:
+4
-4
@@ -2110,17 +2110,17 @@ config.libs = [
|
||||
ActorRel(NonMatching, "d_a_obj_lv6TogeTrap"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_lv6bemos"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_lv6bemos2"),
|
||||
ActorRel(NonMatching, "d_a_obj_lv6egate"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_lv6egate"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_lv6elevta"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_lv6swturn"),
|
||||
ActorRel(NonMatching, "d_a_obj_lv7BsGate"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_lv7BsGate"),
|
||||
ActorRel(NonMatching, "d_a_obj_lv7PropellerY"),
|
||||
ActorRel(Equivalent, "d_a_obj_lv7bridge"), # small regalloc
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_lv8KekkaiTrap"),
|
||||
ActorRel(NonMatching, "d_a_obj_lv8Lift"),
|
||||
ActorRel(NonMatching, "d_a_obj_lv8OptiLift"),
|
||||
ActorRel(NonMatching, "d_a_obj_lv8UdFloor"),
|
||||
ActorRel(NonMatching, "d_a_obj_lv9SwShutter"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_lv8UdFloor"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_lv9SwShutter"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_magLift"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_magLiftRot"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_maki"),
|
||||
|
||||
@@ -2,6 +2,8 @@
|
||||
#define D_A_OBJ_LV6EGATE_H
|
||||
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "d/d_bg_s_movebg_actor.h"
|
||||
#include "d/d_cc_d.h"
|
||||
|
||||
/**
|
||||
* @ingroup actors-objects
|
||||
@@ -11,24 +13,32 @@
|
||||
* @details
|
||||
*
|
||||
*/
|
||||
class daObjLv6EGate_c : public fopAc_ac_c {
|
||||
class daObjLv6EGate_c : public dBgS_MoveBgActor, public request_of_phase_process_class {
|
||||
public:
|
||||
/* 80C82078 */ void create1st();
|
||||
/* 80C82078 */ int create1st();
|
||||
/* 80C82108 */ void setMtx();
|
||||
/* 80C82178 */ bool CreateHeap();
|
||||
/* 80C82180 */ void Create();
|
||||
/* 80C822DC */ void offDisp();
|
||||
/* 80C82330 */ void onDisp();
|
||||
/* 80C82388 */ void Execute(Mtx**);
|
||||
/* 80C82690 */ void Draw();
|
||||
/* 80C826A0 */ void Delete();
|
||||
/* 80C82A80 */ ~daObjLv6EGate_c();
|
||||
|
||||
private:
|
||||
/* 0x568 */ u8 field_0x568[0x1038 - 0x568];
|
||||
/* 80C82178 */ virtual int CreateHeap();
|
||||
/* 80C82180 */ virtual int Create();
|
||||
/* 80C82388 */ virtual int Execute(Mtx**);
|
||||
/* 80C82690 */ virtual int Draw();
|
||||
/* 80C826A0 */ virtual int Delete();
|
||||
/* 80C82A80 */ virtual ~daObjLv6EGate_c() {}
|
||||
|
||||
int getSwNo() { return fopAcM_GetParamBit(this, 0, 8); }
|
||||
int getType() { return fopAcM_GetParamBit(this, 8, 1); }
|
||||
|
||||
/* 0x05A8 */ Mtx field_0x5a8;
|
||||
/* 0x05D8 */ Mtx field_0x5d8;
|
||||
/* 0x0608 */ dCcD_Stts mCcStts;
|
||||
/* 0x0644 */ dCcD_Cyl mAtCyl[8];
|
||||
/* 0x1024 */ u8 mElecOff;
|
||||
/* 0x1025 */ u8 field_0x1025;
|
||||
/* 0x1028 */ u32 mEmtId[4];
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daObjLv6EGate_c) == 0x1038);
|
||||
|
||||
|
||||
#endif /* D_A_OBJ_LV6EGATE_H */
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
#define D_A_OBJ_LV7BSGATE_H
|
||||
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "d/d_bg_s_movebg_actor.h"
|
||||
|
||||
/**
|
||||
* @ingroup actors-objects
|
||||
@@ -11,12 +12,10 @@
|
||||
* @details
|
||||
*
|
||||
*/
|
||||
class daLv7BsGate_c : public fopAc_ac_c {
|
||||
class daLv7BsGate_c : public dBgS_MoveBgActor {
|
||||
public:
|
||||
/* 80C84930 */ void setBaseMtx();
|
||||
/* 80C849CC */ void CreateHeap();
|
||||
/* 80C84A4C */ void create();
|
||||
/* 80C84BCC */ void Execute(Mtx**);
|
||||
/* 80C84A4C */ int create();
|
||||
/* 80C84C1C */ void moveGate();
|
||||
/* 80C84D24 */ void init_modeWait();
|
||||
/* 80C84D30 */ void modeWait();
|
||||
@@ -24,20 +23,27 @@ public:
|
||||
/* 80C84D40 */ void modeOpen();
|
||||
/* 80C84E94 */ void init_modeClose();
|
||||
/* 80C84EA0 */ void modeClose();
|
||||
/* 80C84FF4 */ void Draw();
|
||||
/* 80C85098 */ void Delete();
|
||||
|
||||
private:
|
||||
/* 0x568 */ u8 field_0x568[0x5bc - 0x568];
|
||||
/* 80C849CC */ virtual int CreateHeap();
|
||||
/* 80C84BCC */ virtual int Execute(Mtx**);
|
||||
/* 80C84FF4 */ virtual int Draw();
|
||||
/* 80C85098 */ virtual int Delete();
|
||||
|
||||
int getType() { return fopAcM_GetParamBit(this, 0, 4); }
|
||||
int getSw() { return fopAcM_GetParamBit(this, 4, 8); }
|
||||
int getLR() { return fopAcM_GetParamBit(this, 12, 4); }
|
||||
|
||||
/* 0x5A0 */ request_of_phase_process_class mPhase;
|
||||
/* 0x5A8 */ J3DModel* mpModel;
|
||||
/* 0x5AC */ u8 mMode;
|
||||
/* 0x5AD */ u8 field_0x5ad;
|
||||
/* 0x5AE */ u8 mType;
|
||||
/* 0x5AF */ u8 mIsSwitch;
|
||||
/* 0x5B0 */ u8 mLR;
|
||||
/* 0x5B4 */ f32 field_0x5b4;
|
||||
/* 0x5B8 */ f32 field_0x5b8;
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daLv7BsGate_c) == 0x5bc);
|
||||
|
||||
class daLv7BsGate_HIO_c {
|
||||
public:
|
||||
/* 80C848AC */ daLv7BsGate_HIO_c();
|
||||
/* 80C85164 */ ~daLv7BsGate_HIO_c();
|
||||
};
|
||||
|
||||
|
||||
#endif /* D_A_OBJ_LV7BSGATE_H */
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
#define D_A_OBJ_LV7PROPELLERY_H
|
||||
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "d/d_bg_s_movebg_actor.h"
|
||||
|
||||
/**
|
||||
* @ingroup actors-objects
|
||||
@@ -11,12 +12,10 @@
|
||||
* @details
|
||||
*
|
||||
*/
|
||||
class daPropY_c : public fopAc_ac_c {
|
||||
class daPropY_c : public dBgS_MoveBgActor {
|
||||
public:
|
||||
/* 80C8550C */ void setBaseMtx();
|
||||
/* 80C855A4 */ void CreateHeap();
|
||||
/* 80C85624 */ void create();
|
||||
/* 80C85810 */ void Execute(Mtx**);
|
||||
/* 80C85624 */ int create();
|
||||
/* 80C85860 */ void procMain();
|
||||
/* 80C859B4 */ void init_modeMoveWait();
|
||||
/* 80C859C0 */ void modeMoveWait();
|
||||
@@ -28,20 +27,34 @@ public:
|
||||
/* 80C85B84 */ void modeMove2();
|
||||
/* 80C85CAC */ void init_modeStop();
|
||||
/* 80C85DD0 */ void modeStop();
|
||||
/* 80C85F14 */ void Draw();
|
||||
/* 80C85FB8 */ void Delete();
|
||||
|
||||
private:
|
||||
/* 0x568 */ u8 field_0x568[0x5c8 - 0x568];
|
||||
/* 80C855A4 */ virtual int CreateHeap();
|
||||
/* 80C85810 */ virtual int Execute(Mtx**);
|
||||
/* 80C85F14 */ virtual int Draw();
|
||||
/* 80C85FB8 */ virtual int Delete();
|
||||
|
||||
int getType() { return fopAcM_GetParamBit(this, 0, 4); }
|
||||
int getSw() { return fopAcM_GetParamBit(this, 8, 8); }
|
||||
int getTurnType() { return fopAcM_GetParamBit(this, 4, 4); }
|
||||
int getTurnVec() { return fopAcM_GetParamBit(this, 16, 4); }
|
||||
|
||||
/* 0x5A0 */ request_of_phase_process_class mPhase;
|
||||
/* 0x5A8 */ J3DModel* mpModel;
|
||||
/* 0x5AC */ u8 mMode;
|
||||
/* 0x5AD */ u8 mSwbit;
|
||||
/* 0x5AE */ u8 mIsSwitch;
|
||||
/* 0x5AF */ u8 mType;
|
||||
/* 0x5B0 */ u8 mTurnType;
|
||||
/* 0x5B1 */ u8 mTurnVec;
|
||||
/* 0x5B2 */ s8 field_0x5b2;
|
||||
/* 0x5B4 */ s16 field_0x5b4;
|
||||
/* 0x5B6 */ s16 field_0x5b6;
|
||||
/* 0x5B8 */ u8 mTimer;
|
||||
/* 0x5BC */ f32 field_0x5bc;
|
||||
/* 0x5C0 */ f32 field_0x5c0;
|
||||
/* 0x5C4 */ f32 field_0x5c4;
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daPropY_c) == 0x5c8);
|
||||
|
||||
class daPropY_HIO_c {
|
||||
public:
|
||||
/* 80C8546C */ daPropY_HIO_c();
|
||||
/* 80C86084 */ ~daPropY_HIO_c();
|
||||
};
|
||||
|
||||
|
||||
#endif /* D_A_OBJ_LV7PROPELLERY_H */
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
#define D_A_OBJ_LV8UDFLOOR_H
|
||||
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "d/d_bg_s_movebg_actor.h"
|
||||
|
||||
/**
|
||||
* @ingroup actors-objects
|
||||
@@ -11,38 +12,53 @@
|
||||
* @details
|
||||
*
|
||||
*/
|
||||
class daUdFloor_c : public fopAc_ac_c {
|
||||
class daUdFloor_c : public dBgS_MoveBgActor {
|
||||
public:
|
||||
/* 80C8BDC8 */ void setBaseMtx();
|
||||
/* 80C8BE64 */ void CreateHeap();
|
||||
/* 80C8BEE4 */ void create();
|
||||
/* 80C8C0DC */ void Execute(Mtx**);
|
||||
/* 80C8BEE4 */ int create();
|
||||
/* 80C8C12C */ void moveLift();
|
||||
/* 80C8C264 */ void init_modeWait();
|
||||
/* 80C8C270 */ void modeWait();
|
||||
/* 80C8C274 */ void init_modeUpMoveInit();
|
||||
/* 80C8C310 */ void modeUpMoveInit();
|
||||
/* 80C8C354 */ void colorAnm(int);
|
||||
/* 80C8C354 */ u8 colorAnm(int);
|
||||
/* 80C8C5E4 */ void init_modeUpMove();
|
||||
/* 80C8C68C */ void modeUpMove();
|
||||
/* 80C8C7F8 */ void init_modeDownMoveInit();
|
||||
/* 80C8C81C */ void modeDownMoveInit();
|
||||
/* 80C8C860 */ void init_modeDownMove();
|
||||
/* 80C8C8E4 */ void modeDownMove();
|
||||
/* 80C8C994 */ void Draw();
|
||||
/* 80C8CA78 */ void Delete();
|
||||
|
||||
private:
|
||||
/* 0x568 */ u8 field_0x568[0x5c8 - 0x568];
|
||||
/* 80C8BE64 */ virtual int CreateHeap();
|
||||
/* 80C8C0DC */ virtual int Execute(Mtx**);
|
||||
/* 80C8C994 */ virtual int Draw();
|
||||
/* 80C8CA78 */ virtual int Delete();
|
||||
|
||||
u8 getModelType() { return current.angle.x & 0xFF; }
|
||||
u8 getTimer() { return (current.angle.x & 0xFF00) >> 8; }
|
||||
|
||||
int getSw() { return fopAcM_GetParamBit(this, 0, 8); }
|
||||
int getMoveHeight() { return fopAcM_GetParamBit(this, 16, 8); }
|
||||
int getMoveSpeed() { return fopAcM_GetParamBit(this, 24, 8); }
|
||||
|
||||
/* 0x5A0 */ request_of_phase_process_class mPhase;
|
||||
/* 0x5A8 */ J3DModel* mpModel;
|
||||
/* 0x5AC */ u8 mMode;
|
||||
/* 0x5B0 */ f32 field_0x5b0;
|
||||
/* 0x5B4 */ f32 field_0x5b4;
|
||||
/* 0x5B8 */ u8 field_0x5b8;
|
||||
/* 0x5B9 */ u8 mTimer;
|
||||
/* 0x5BA */ u8 field_0x5ba;
|
||||
/* 0x5BB */ u8 mModelType;
|
||||
/* 0x5BC */ u8 mIsSwitch;
|
||||
/* 0x5BD */ u8 mColorR;
|
||||
/* 0x5BE */ u8 mColorG;
|
||||
/* 0x5BF */ u8 mColorB;
|
||||
/* 0x5C0 */ f32 field_0x5c0;
|
||||
/* 0x5C4 */ u8 field_0x5c4;
|
||||
/* 0x5C5 */ u8 field_0x5c5;
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daUdFloor_c) == 0x5c8);
|
||||
|
||||
class daUdFloor_HIO_c {
|
||||
public:
|
||||
/* 80C8BD0C */ daUdFloor_HIO_c();
|
||||
/* 80C8CB44 */ ~daUdFloor_HIO_c();
|
||||
};
|
||||
|
||||
|
||||
#endif /* D_A_OBJ_LV8UDFLOOR_H */
|
||||
|
||||
@@ -2,6 +2,7 @@
|
||||
#define D_A_OBJ_LV9SWSHUTTER_H
|
||||
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "d/d_bg_s_movebg_actor.h"
|
||||
|
||||
/**
|
||||
* @ingroup actors-objects
|
||||
@@ -11,12 +12,10 @@
|
||||
* @details
|
||||
*
|
||||
*/
|
||||
class daLv9SwShutter_c : public fopAc_ac_c {
|
||||
class daLv9SwShutter_c : public dBgS_MoveBgActor {
|
||||
public:
|
||||
/* 80C8CF38 */ void setBaseMtx();
|
||||
/* 80C8CFD4 */ void CreateHeap();
|
||||
/* 80C8D040 */ void create();
|
||||
/* 80C8D168 */ void Execute(Mtx**);
|
||||
/* 80C8D040 */ int create();
|
||||
/* 80C8D1B8 */ void moveShutter();
|
||||
/* 80C8D2BC */ void init_modeWait();
|
||||
/* 80C8D2C8 */ void modeWait();
|
||||
@@ -24,20 +23,23 @@ public:
|
||||
/* 80C8D2D8 */ void modeOpen();
|
||||
/* 80C8D440 */ void init_modeClose();
|
||||
/* 80C8D458 */ void modeClose();
|
||||
/* 80C8D5D0 */ void Draw();
|
||||
/* 80C8D674 */ void Delete();
|
||||
|
||||
/* 80C8CFD4 */ virtual int CreateHeap();
|
||||
/* 80C8D168 */ virtual int Execute(Mtx**);
|
||||
/* 80C8D5D0 */ virtual int Draw();
|
||||
/* 80C8D674 */ virtual int Delete();
|
||||
|
||||
int getSw() { return fopAcM_GetParamBit(this, 0, 8); }
|
||||
|
||||
private:
|
||||
/* 0x568 */ u8 field_0x568[0x5b4 - 0x568];
|
||||
/* 0x5A0 */ request_of_phase_process_class mPhase;
|
||||
/* 0x5A8 */ J3DModel* mpModel;
|
||||
/* 0x5AC */ u8 mMode;
|
||||
/* 0x5AD */ u8 mSwbit;
|
||||
/* 0x5AE */ u8 mIsSwitch;
|
||||
/* 0x5B0 */ f32 field_0x5b0;
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daLv9SwShutter_c) == 0x5b4);
|
||||
|
||||
class daLv9SwShutter_HIO_c {
|
||||
public:
|
||||
/* 80C8CEAC */ daLv9SwShutter_HIO_c();
|
||||
/* 80C8D730 */ ~daLv9SwShutter_HIO_c();
|
||||
};
|
||||
|
||||
|
||||
#endif /* D_A_OBJ_LV9SWSHUTTER_H */
|
||||
|
||||
+1
-1
@@ -42,7 +42,7 @@ enum dCcD_Material {
|
||||
dCcD_MTRL_ICE,
|
||||
dCcD_MTRL_WIND,
|
||||
dCcD_MTRL_LIGHT,
|
||||
dCcD_MTRL_UNK_5,
|
||||
dCcD_MTRL_ELECTRIC,
|
||||
dCcD_MTRL_UNK_6,
|
||||
dCcD_MTRL_UNK_7,
|
||||
};
|
||||
|
||||
@@ -669,7 +669,7 @@ BOOL daAlink_c::checkDamageAction() {
|
||||
}
|
||||
}
|
||||
|
||||
if (at_mtrl == dCcD_MTRL_UNK_5) {
|
||||
if (at_mtrl == dCcD_MTRL_ELECTRIC) {
|
||||
dComIfGp_getVibration().StartShock(4, 0x1F, cXyz(0.0f, 1.0f, 0.0f));
|
||||
} else if (checkHugeAttack(at_spl)) {
|
||||
dComIfGp_getVibration().StartShock(8, 0x1F, cXyz(0.0f, 1.0f, 0.0f));
|
||||
@@ -681,7 +681,7 @@ BOOL daAlink_c::checkDamageAction() {
|
||||
|
||||
setDamagePoint(dmg, at_mtrl == dCcD_MTRL_FIRE || at_mtrl == dCcD_MTRL_ICE, TRUE, 0);
|
||||
|
||||
if (armor_no_dmg && at_mtrl != dCcD_MTRL_UNK_5 && at_mtrl != dCcD_MTRL_ICE) {
|
||||
if (armor_no_dmg && at_mtrl != dCcD_MTRL_ELECTRIC && at_mtrl != dCcD_MTRL_ICE) {
|
||||
setGuardSe(var_r29);
|
||||
} else if (at_mtrl == dCcD_MTRL_FIRE) {
|
||||
seStartOnlyReverb(Z2SE_AL_BURN_START);
|
||||
@@ -699,10 +699,10 @@ BOOL daAlink_c::checkDamageAction() {
|
||||
voiceStart(Z2SE_AL_V_DAMAGE_S);
|
||||
seStartOnlyReverb(Z2SE_AL_DAMAGE_NORMAL);
|
||||
}
|
||||
} else if (at_mtrl == dCcD_MTRL_UNK_5 && !checkSpecialHorseRide()) {
|
||||
} else if (at_mtrl == dCcD_MTRL_ELECTRIC && !checkSpecialHorseRide()) {
|
||||
return procCoElecDamageInit(var_r29->GetTgHitAc(), var_r29, at_spl);
|
||||
} else if (checkReinRide()) {
|
||||
if (at_mtrl == dCcD_MTRL_UNK_5) {
|
||||
if (at_mtrl == dCcD_MTRL_ELECTRIC) {
|
||||
return procCoLargeDamageInit(-1, 1, 0, 0, var_r29, 0);
|
||||
}
|
||||
|
||||
|
||||
@@ -1483,7 +1483,7 @@ static int daE_HZELDA_Create(fopAc_ac_c* i_this) {
|
||||
|
||||
a_this->mBallSphAt.Set(ball_at_sph_src);
|
||||
a_this->mBallSphAt.SetStts(&a_this->field_0xd3c);
|
||||
a_this->mBallSphAt.SetAtMtrl(dCcD_MTRL_UNK_5);
|
||||
a_this->mBallSphAt.SetAtMtrl(dCcD_MTRL_ELECTRIC);
|
||||
|
||||
static dCcD_SrcSph ball_tg_sph_src = {
|
||||
{
|
||||
|
||||
+170
-280
File diff suppressed because it is too large
Load Diff
+207
-340
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
+295
-412
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@@ -364,7 +364,7 @@ static void drawDepth2(view_class* param_0, view_port_class* param_1, int param_
|
||||
|
||||
if (atn_actor != NULL) {
|
||||
cXyz sp28 = atn_actor->eyePos;
|
||||
if (fabsf(sp28.y - camera_p->lookat.eye.y) < 400.0f) {
|
||||
if (std::fabs(sp28.y - camera_p->lookat.eye.y) < 400.0f) {
|
||||
sp28.y = camera_p->lookat.eye.y;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user