mirror of
https://github.com/zeldaret/tww.git
synced 2026-08-06 18:02:28 -04:00
+105
-113
@@ -6,167 +6,159 @@
|
||||
#include "d/d_bg_s_acch.h"
|
||||
#include "d/d_particle.h"
|
||||
|
||||
class bpw_class : public fopEn_enemy_c {
|
||||
public:
|
||||
/* 0x2AC */ u8 m2AC[0x2B4 - 0x2AC];
|
||||
/* 0x2B4 */ mDoExt_McaMorf* m2B4;
|
||||
struct bpw_class {
|
||||
enum Actor_Type_e {
|
||||
Actor_Type_BODY_e = 0,
|
||||
Actor_Type_KANTERA_e = 1,
|
||||
Actor_Type_DAMAGE_BALL_e = 2,
|
||||
Actor_Type_TORITUKI_e = 3,
|
||||
};
|
||||
|
||||
enum Damage_Action_e {
|
||||
Damage_Action_LINE_e = 0,
|
||||
Damage_Action_DAMAGE_BALL_e = 1,
|
||||
};
|
||||
|
||||
enum Action_e {
|
||||
Action_MOVE_DOUSA_e = 0,
|
||||
Action_ATTACK_KOUGEKI_e = 1,
|
||||
Action_BODY_DOWN_KARADA_TAORE_e = 2,
|
||||
Action_DAMAGE_e = 3,
|
||||
Action_SEPARATION_BUNRI_DOUSA_e = 4,
|
||||
Action_START_DEMO_e = 20,
|
||||
};
|
||||
|
||||
enum Action_State_Type_e {
|
||||
Action_State_DAMAGE_CARRIED_e = 0x54,
|
||||
Action_State_DAMAGE_THROWN_e = 0x55,
|
||||
Action_State_DAMAGE_HIT_e = 0x65,
|
||||
Action_State_SEPARATE_BUNRI_DOUSA_INIT_e = 0x6E,
|
||||
Action_State_SEPARATE_BUNRI_DOUSA_EXECUTE_e = 0x6F,
|
||||
Action_State_SEPARATE_BUNRI_DOUSA_END_INIT_e = 0x72,
|
||||
Action_State_SEPARATE_BUNRI_DOUSA_END_GATHER_e = 0x73,
|
||||
Action_State_SEPARATE_BUNRI_DOUSA_END_GROW_e = 0x74,
|
||||
Action_State_SEPARATE_BUNRI_DOUSA_END_FINISH_e = 0x75,
|
||||
};
|
||||
|
||||
/* 0x000 */ fopEn_enemy_c actor;
|
||||
/* 0x2AC */ request_of_phase_process_class m2AC;
|
||||
/* 0x2B4 */ mDoExt_McaMorf* mpAnim;
|
||||
/* 0x2B8 */ u8 m2B8[0x2BC - 0x2B8];
|
||||
/* 0x2BC */ mDoExt_brkAnm* mBrkAnim;
|
||||
/* 0x2C0 */ mDoExt_baseAnm* m2C0;
|
||||
/* 0x2C4 */ mDoExt_baseAnm* m2C4;
|
||||
/* 0x2C8 */ mDoExt_baseAnm* m2C8;
|
||||
/* 0x2CC */ mDoExt_baseAnm* m2CC;
|
||||
/* 0x2C0 */ mDoExt_brkAnm* mKanteraAnim;
|
||||
/* 0x2C4 */ mDoExt_brkAnm* m2C4;
|
||||
/* 0x2C8 */ mDoExt_brkAnm* m2C8;
|
||||
/* 0x2CC */ mDoExt_brkAnm* m2CC;
|
||||
/* 0x2D0 */ mDoExt_brkAnm* m2D0;
|
||||
/* 0x2D4 */ u8 m2D4[0x304 - 0x2D4];
|
||||
/* 0x2D4 */ Mtx m2D4;
|
||||
/* 0x304 */ cXyz m304[3];
|
||||
/* 0x328 */ cXyz m328[3];
|
||||
/* 0x34C */ f32 m34C;
|
||||
/* 0x350 */ f32 m350;
|
||||
/* 0x354 */ node_class* m354;
|
||||
/* 0x358 */ f32 m358;
|
||||
/* 0x35C */ f32 m35C;
|
||||
/* 0x360 */ f32 m360;
|
||||
/* 0x34C */ cXyz mBodyPos;
|
||||
/* 0x358 */ cXyz m358;
|
||||
/* 0x364 */ u8 m364[0x370 - 0x364];
|
||||
/* 0x370 */ cXyz m370;
|
||||
/* 0x37C */ u32 m37C;
|
||||
/* 0x380 */ u32 m380;
|
||||
/* 0x384 */ u32 m384;
|
||||
/* 0x37C */ cXyz mChildActorPos;
|
||||
/* 0x388 */ f32 m388;
|
||||
/* 0x38C */ u8 m38C[0x390 - 0x38C];
|
||||
/* 0x38C */ f32 m38C;
|
||||
/* 0x390 */ f32 m390;
|
||||
/* 0x394 */ u8 m394[0x3A0 - 0x394];
|
||||
/* 0x3A0 */ cXyz z;
|
||||
/* 0x3AC */ f32 m3AC;
|
||||
/* 0x3B0 */ u32 m3B0;
|
||||
/* 0x3B4 */ f32 m3B4;
|
||||
/* 0x3B8 */ f32 m3B8;
|
||||
/* 0x3BC */ f32 m3BC;
|
||||
/* 0x3C0 */ f32 m3C0;
|
||||
/* 0x3C4 */ u8 m3C4[0x3D6 - 0x3C4];
|
||||
/* 0x394 */ cXyz m394;
|
||||
/* 0x3A0 */ cXyz m3A0;
|
||||
/* 0x3AC */ cXyz m3AC;
|
||||
/* 0x3B8 */ cXyz m3B8;
|
||||
/* 0x3C4 */ cXyz m3C4;
|
||||
/* 0x3D0 */ csXyz mKanteraDousaRot;
|
||||
/* 0x3D6 */ s16 m3D6;
|
||||
/* 0x3D8 */ s16 m3D8;
|
||||
/* 0x3DA */ u16 m3DA;
|
||||
/* 0x3DC */ u8 mUnknownParam1;
|
||||
/* 0x3DC */ u8 mType;
|
||||
/* 0x3DD */ u8 mUnknownParam2;
|
||||
/* 0x3DE */ u8 mUnknownParam3;
|
||||
/* 0x3DE */ u8 mLightState;
|
||||
/* 0x3DF */ u8 m3DF;
|
||||
/* 0x3E0 */ u8 m3E0;
|
||||
/* 0x3E1 */ u8 m3E1[0x3E2 - 0x3E1];
|
||||
/* 0x3E2 */ s8 m3E2;
|
||||
/* 0x3E3 */ u8 m3E3[0x3E6 - 0x3E3];
|
||||
/* 0x3E1 */ u8 m3E1;
|
||||
/* 0x3E2 */ u8 m3E2;
|
||||
/* 0x3E3 */ u8 m3E3[0x3E4 - 0x3E3];
|
||||
/* 0x3E4 */ u8 m3E4;
|
||||
/* 0x3E5 */ u8 m3E5;
|
||||
/* 0x3E6 */ u8 m3E6;
|
||||
/* 0x3E7 */ s8 m3E7;
|
||||
/* 0x3E8 */ u8 m3E8[0x3EB - 0x3E8];
|
||||
/* 0x3EB */ u8 m3EB;
|
||||
/* 0x3E7 */ u8 m3E7;
|
||||
/* 0x3E8 */ u8 m3E8;
|
||||
/* 0x3E9 */ u8 m3E9;
|
||||
/* 0x3EA */ u8 m3EA;
|
||||
/* 0x3EB */ u8 mKankyouHendouState;
|
||||
/* 0x3EC */ f32 m3EC;
|
||||
/* 0x3F0 */ f32 m3F0;
|
||||
/* 0x3F4 */ s16 m3F4;
|
||||
/* 0x3F6 */ s16 m3F6;
|
||||
/* 0x3F8 */ int m3F8;
|
||||
/* 0x3FC */ int m3FC;
|
||||
/* 0x400 */ u32 m400;
|
||||
/* 0x404 */ int m404;
|
||||
/* 0x408 */ u16 m408;
|
||||
/* 0x3FC */ fpc_ProcID m3FC;
|
||||
/* 0x400 */ fpc_ProcID m400;
|
||||
/* 0x404 */ fpc_ProcID m404;
|
||||
/* 0x408 */ s16 m408;
|
||||
/* 0x40A */ u8 m40A[0x40C - 0x40A];
|
||||
/* 0x40C */ cXyz m40C;
|
||||
/* 0x418 */ u32 m418;
|
||||
/* 0x41C */ u32 m41C;
|
||||
/* 0x420 */ u32 m420;
|
||||
/* 0x424 */ f32 m424;
|
||||
/* 0x428 */ f32 m428;
|
||||
/* 0x42C */ f32 m42C;
|
||||
/* 0x418 */ cXyz m418;
|
||||
/* 0x424 */ cXyz m424;
|
||||
/* 0x430 */ u8 m430[0x43C - 0x430];
|
||||
/* 0x43C */ u32 m43C;
|
||||
/* 0x43C */ f32 m43C;
|
||||
/* 0x440 */ f32 m440;
|
||||
/* 0x444 */ u16 m444;
|
||||
/* 0x446 */ s16 m446;
|
||||
/* 0x444 */ s16 mBodyAction;
|
||||
/* 0x446 */ s16 mActionState;
|
||||
/* 0x448 */ u8 m448[0x44C - 0x448];
|
||||
/* 0x44C */ u16 m44C;
|
||||
/* 0x44C */ s16 mAttWaitTimer;
|
||||
/* 0x44E */ s16 mSomeCountdownTimers[10];
|
||||
/* 0x462 */ s16 m462;
|
||||
/* 0x464 */ u16 m464;
|
||||
/* 0x464 */ s16 m464;
|
||||
/* 0x466 */ u8 m466[0x474 - 0x466];
|
||||
/* 0x474 */ s16 m474;
|
||||
/* 0x476 */ s16 m476;
|
||||
/* 0x478 */ u16 m478;
|
||||
/* 0x47A */ u16 m47A;
|
||||
/* 0x478 */ s16 m478;
|
||||
/* 0x47A */ s16 m47A;
|
||||
/* 0x47C */ s16 m47C;
|
||||
/* 0x47E */ s16 m47E;
|
||||
/* 0x480 */ u16 m480;
|
||||
/* 0x480 */ s16 m480;
|
||||
/* 0x482 */ s16 m482;
|
||||
/* 0x484 */ s16 m484;
|
||||
/* 0x486 */ u8 m486[0x48C - 0x486];
|
||||
/* 0x486 */ u8 m486[0x488 - 0x486];
|
||||
/* 0x488 */ f32 m488;
|
||||
/* 0x48C */ f32 m48C;
|
||||
/* 0x490 */ u32 m490;
|
||||
/* 0x490 */ f32 m490;
|
||||
/* 0x494 */ f32 m494;
|
||||
/* 0x498 */ u32 m498;
|
||||
/* 0x49C */ u32 m49C;
|
||||
/* 0x4A0 */ u32 m4A0;
|
||||
/* 0x4A4 */ u32 m4A4;
|
||||
/* 0x498 */ f32 m498;
|
||||
/* 0x49C */ f32 m49C;
|
||||
/* 0x4A0 */ f32 m4A0;
|
||||
/* 0x4A4 */ f32 m4A4;
|
||||
/* 0x4A8 */ f32 m4A8;
|
||||
/* 0x4AC */ int mChildPoeIds[15];
|
||||
/* 0x4E8 */ u8 m4E8[0x4EC - 0x4E8];
|
||||
/* 0x4EC */ u32 m4EC;
|
||||
/* 0x4F0 */ u32 m4F0;
|
||||
/* 0x4F4 */ u32 m4F4;
|
||||
/* 0x4F8 */ u16 m4F8;
|
||||
/* 0x4FA */ u16 m4FA;
|
||||
/* 0x4FC */ u16 m4FC;
|
||||
/* 0x4FE */ u8 m4FE[0x500 - 0x4FE];
|
||||
/* 0x500 */ u32 m500;
|
||||
/* 0x504 */ u32 m504;
|
||||
/* 0x508 */ u8 m508[0x50C - 0x508];
|
||||
/* 0x4E8 */ u32 m4E8;
|
||||
/* 0x4EC */ LIGHT_INFLUENCE m4EC;
|
||||
/* 0x50C */ dPa_smokeEcallBack m50C;
|
||||
/* 0x52C */ dPa_followEcallBack m52C;
|
||||
/* 0x540 */ dPa_followEcallBack m540;
|
||||
/* 0x554 */ dPa_followEcallBack m554;
|
||||
/* 0x568 */ dPa_followEcallBack m568;
|
||||
/* 0x57C */ dPa_followEcallBack m57C;
|
||||
/* 0x568 */ dPa_followEcallBack mFire1Dousa_Pa_followEcallBack;
|
||||
/* 0x57C */ dPa_followEcallBack mFire1Dousa_Pa_followEcallBack2;
|
||||
/* 0x590 */ dPa_followEcallBack m590;
|
||||
/* 0x5A4 */ dPa_followEcallBack m5A4;
|
||||
/* 0x5B8 */ dPa_followEcallBack m5B8;
|
||||
/* 0x5A4 */ dPa_followEcallBack mFireDousa2_Pa_followEcallBack;
|
||||
/* 0x5B8 */ dPa_followEcallBack mFireDousa2_Pa_followEcallBack2;
|
||||
/* 0x5CC */ dPa_followEcallBack m5CC;
|
||||
/* 0x5E0 */ dPa_smokeEcallBack m5E0[4];
|
||||
/* 0x660 */ f32 m660;
|
||||
/* 0x664 */ f32 m664;
|
||||
/* 0x668 */ f32 m668;
|
||||
/* 0x66C */ u8 m66C[0x678 - 0x66C];
|
||||
/* 0x678 */ u16 m678;
|
||||
/* 0x67A */ s16 m67A;
|
||||
/* 0x67C */ s16 m67C;
|
||||
/* 0x67E */ u8 m67E[0x684 - 0x67E];
|
||||
/* 0x660 */ cXyz mFire1DousaPos;
|
||||
/* 0x66C */ cXyz m66C;
|
||||
/* 0x678 */ csXyz mFire1DousaRot;
|
||||
/* 0x67E */ s16 m67E;
|
||||
/* 0x680 */ s16 m680;
|
||||
/* 0x67E */ u8 m682[0x684 - 0x682];
|
||||
/* 0x684 */ s16 m684;
|
||||
/* 0x686 */ u8 m686[0x688 - 0x686];
|
||||
/* 0x688 */ dBgS_AcchCir m688;
|
||||
/* 0x6C8 */ dBgS_Acch m6C8;
|
||||
/* 0x88C */ u8 m88C[0x8A4 - 0x88C];
|
||||
/* 0x8A4 */ u32 m8A4;
|
||||
/* 0x8A8 */ dCcD_GStts m8A8;
|
||||
/* 0x8C8 */ dCcD_GObjInf m8C8;
|
||||
/* 0x9C0 */ u8 m9C0[0x9D8 - 0x9C0];
|
||||
/* 0x9D8 */ u32 m9D8;
|
||||
/* 0x9DC */ u32 m9DC;
|
||||
/* 0x9E0 */ u8 m9E0[0x9F0 - 0x9E0];
|
||||
/* 0x9F0 */ u32 m9F0;
|
||||
/* 0x9F4 */ dCcD_GObjInf m9F4;
|
||||
/* 0xAEC */ u8 mAEC[0xB04 - 0xAEC];
|
||||
/* 0xB04 */ u32 mB04;
|
||||
/* 0xB08 */ u32 mB08;
|
||||
/* 0xB0C */ u8 mB0C[0xB1C - 0xB0C];
|
||||
/* 0xB1C */ u32 mB1C;
|
||||
/* 0xB20 */ dCcD_GObjInf mB20;
|
||||
/* 0xC18 */ u8 mC18[0xC30 - 0xC18];
|
||||
/* 0xC30 */ u32 mC30;
|
||||
/* 0xC34 */ u32 mC34;
|
||||
/* 0xC38 */ u8 mC38[0xC48 - 0xC38];
|
||||
/* 0xC48 */ u32 mC48;
|
||||
/* 0xC4C */ dCcD_GObjInf mC4C;
|
||||
/* 0xD44 */ u8 mD44[0xD5C - 0xD44];
|
||||
/* 0xD5C */ u32 mD5C;
|
||||
/* 0xD60 */ u32 mD60;
|
||||
/* 0xD64 */ u8 mD64[0xD74 - 0xD64];
|
||||
/* 0xD74 */ u32 mD74;
|
||||
/* 0xD78 */ u8 mD78[0xD80 - 0xD78];
|
||||
/* 0x688 */ dBgS_AcchCir mAcchCir;
|
||||
/* 0x6C8 */ dBgS_ObjAcch mAcch;
|
||||
/* 0x88C */ dCcD_Stts mStts;
|
||||
/* 0x8C8 */ dCcD_Sph mBodyCoSph;
|
||||
/* 0x9F4 */ dCcD_Sph mBodyAtSph;
|
||||
/* 0xB20 */ dCcD_Sph mKanteraCoSph;
|
||||
/* 0xC4C */ dCcD_Sph mDamageBallCoSph;
|
||||
/* 0xD78 */ mDoExt_invisibleModel mD78;
|
||||
};
|
||||
|
||||
#endif /* D_A_BPW_H */
|
||||
|
||||
@@ -568,7 +568,7 @@ void end(bmd_class* i_this) {
|
||||
mDoAud_seStart(JA_SE_CM_BKM_END_FLW_DIE, &actor->current.pos, 0, dComIfGp_getReverb(fopAcM_GetRoomNo(actor)));
|
||||
}
|
||||
if (i_this->mB76 == REG0_S(6) + 0x276) {
|
||||
g_dComIfG_gameInfo.save.getMemory().getBit().onStageBossEnemy();
|
||||
dComIfGs_onStageBossEnemy();
|
||||
fopAcM_createWarpFlower(&actor->current.pos, 0, fopAcM_GetRoomNo(actor), 0);
|
||||
i_this->m302 = 2;
|
||||
i_this->mB71 = 0;
|
||||
|
||||
@@ -840,7 +840,7 @@ static cPhs_State daBmdfoot_Create(fopAc_ac_c* a_this) {
|
||||
}
|
||||
a_this->attention_info.position.y = -20000.0f;
|
||||
a_this->eyePos.y = -20000.0f;
|
||||
if (!(g_dComIfG_gameInfo.save.getMemory().getBit().isStageBossDemo()) && (dComIfGp_getStartStageName()[0] != 'X')) {
|
||||
if (!(dComIfGs_isStageBossDemo()) && (dComIfGp_getStartStageName()[0] != 'X')) {
|
||||
i_this->m2BA = 10;
|
||||
} else {
|
||||
i_this->mBC8 = 1;
|
||||
|
||||
@@ -796,7 +796,7 @@ static cPhs_State daBmdhand_Create(fopAc_ac_c* a_this) {
|
||||
i_this->m6F8.Set(cc_sph_src);
|
||||
i_this->m6F8.SetStts(&i_this->m590);
|
||||
i_this->m5CC.SetR(90.0f);
|
||||
if (!(g_dComIfG_gameInfo.save.getMemory().getBit().isStageBossDemo()) && (dComIfGp_getStartStageName()[0] != 'X')) {
|
||||
if (!(dComIfGs_isStageBossDemo()) && (dComIfGp_getStartStageName()[0] != 'X')) {
|
||||
i_this->m2BA = 3;
|
||||
}
|
||||
return cPhs_COMPLEATE_e;
|
||||
|
||||
+4028
-109
File diff suppressed because it is too large
Load Diff
@@ -2395,7 +2395,7 @@ void demo_camera(bst_class* i_this) {
|
||||
i_this->mDamage = 10;
|
||||
i_this->mRoomState = 4;
|
||||
i_this->m2ED0 = 1.0f;
|
||||
g_dComIfG_gameInfo.save.getMemory().getBit().onStageBossEnemy();
|
||||
dComIfGs_onStageBossEnemy();
|
||||
local_40.x = 0.0f;
|
||||
local_40.y = 0.0f;
|
||||
local_40.z = 0.0f;
|
||||
|
||||
@@ -2100,7 +2100,7 @@ void demo_camera(btd_class* i_this) {
|
||||
}
|
||||
if (i_this->m6E1A == 0x118) {
|
||||
static_center_pos.set(0.0f, -50.0f, 0.0f);
|
||||
g_dComIfG_gameInfo.save.getMemory().getBit().onStageBossEnemy();
|
||||
dComIfGs_onStageBossEnemy();
|
||||
fopAcM_createWarpFlower(&static_center_pos, 0, fopAcM_GetRoomNo(i_this), 0);
|
||||
i_this->m6E90 = 0;
|
||||
}
|
||||
@@ -2894,7 +2894,7 @@ static cPhs_State daBtd_Create(fopAc_ac_c* a_this) {
|
||||
dKy_efplight_set(&i_this->m60B0);
|
||||
i_this->health = 10;
|
||||
i_this->max_health = 10;
|
||||
if ((g_dComIfG_gameInfo.save.getMemory().getBit().isStageBossDemo()) || (dComIfGp_getStartStageName()[0] == 'X')) {
|
||||
if ((dComIfGs_isStageBossDemo()) || (dComIfGp_getStartStageName()[0] == 'X')) {
|
||||
dComIfGs_offTmpBit(0x480);
|
||||
i_this->m6E80 = -50.0f;
|
||||
i_this->m6E84 = 0.0f;
|
||||
|
||||
@@ -1683,7 +1683,7 @@ void demo_camera(bwd_class* i_this) {
|
||||
mDoAud_bgmStart(JA_BGM_RANE_BATTLE);
|
||||
}
|
||||
i_this->m3C50 = 1;
|
||||
g_dComIfG_gameInfo.save.getMemory().getBit().onStageBossEnemy();
|
||||
dComIfGs_onStageBossEnemy();
|
||||
}
|
||||
break;
|
||||
case 0x3C:
|
||||
@@ -1813,7 +1813,7 @@ void demo_camera(bwd_class* i_this) {
|
||||
MtxPosition(&local_98, &i_this->m3C28);
|
||||
if ((int)i_this->m3C20 == REG0_S(6) + 0x208) {
|
||||
i_this->m17C4 = 200;
|
||||
g_dComIfG_gameInfo.save.getMemory().getBit().onStageBossEnemy();
|
||||
dComIfGs_onStageBossEnemy();
|
||||
local_98.x = 0.0f;
|
||||
local_98.y = 300.0f;
|
||||
local_98.z = 0.0f;
|
||||
@@ -2612,7 +2612,7 @@ static cPhs_State daBwd_Create(fopAc_ac_c* a_this) {
|
||||
i_this->mCcD_Sph_Array5[i].SetStts(&i_this->mCcD_Stts);
|
||||
i_this->mCcD_Sph_Array5[i].Set(bero_co_sph_src);
|
||||
}
|
||||
if (!(g_dComIfG_gameInfo.save.getMemory().getBit().isStageBossDemo()) && (dComIfGp_getStartStageName()[0] != 'X')) {
|
||||
if (!(dComIfGs_isStageBossDemo()) && (dComIfGp_getStartStageName()[0] != 'X')) {
|
||||
actor->current.pos.x = 0.0f;
|
||||
actor->current.pos.y = -20000.0f;
|
||||
actor->current.pos.z = 0.0f;
|
||||
@@ -2622,7 +2622,7 @@ static cPhs_State daBwd_Create(fopAc_ac_c* a_this) {
|
||||
fopAcM_OnStatus(actor, fopAcStts_SHOWMAP_e);
|
||||
i_this->m3C50 = 1;
|
||||
} else {
|
||||
if ((g_dComIfG_gameInfo.save.getMemory().getBit().isStageBossEnemy()) && (dComIfGp_getStartStageName()[0] != 'X')) {
|
||||
if ((dComIfGs_isStageBossEnemy()) && (dComIfGp_getStartStageName()[0] != 'X')) {
|
||||
i_this->m18AE = 0xd;
|
||||
actor->current.pos.x = 0.0f;
|
||||
actor->current.pos.y = -20000.0f;
|
||||
|
||||
Reference in New Issue
Block a user