mirror of https://github.com/zeldaret/tp
Regalloc/debug/misc fixes (#2794)
* Fix "0" asserts * More debug and regalloc fixes * Fix PTMF syntax for compatibility with other compilers * Fix some fakematches, link more TUs for J/P
This commit is contained in:
parent
a02f72d8f3
commit
23a1c94063
|
|
@ -133,6 +133,7 @@ hioInit = .bss:0x00000048; // type:object size:0x1 data:byte
|
|||
@3933 = .bss:0x0000004C; // type:object size:0xC scope:local
|
||||
l_HIO = .bss:0x00000058; // type:object size:0x1C scope:global data:byte
|
||||
@4275 = .bss:0x00000074; // type:object size:0xC scope:local
|
||||
init$2218 = .bss:0x00000080; // type:object size:0x1 scope:local align:1
|
||||
sc$4274 = .bss:0x00000084; // type:object size:0xC scope:local
|
||||
sInstance__40JASGlobalInstance<19JASDefaultBankTable> = .bss:0x00000090; // type:object size:0x4 scope:global
|
||||
sInstance__35JASGlobalInstance<14JASAudioThread> = .bss:0x00000094; // type:object size:0x4 scope:global
|
||||
|
|
|
|||
|
|
@ -419,6 +419,7 @@ __global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:globa
|
|||
@4083 = .bss:0x00000048; // type:object size:0xC scope:local
|
||||
l_HIO = .bss:0x00000054; // type:object size:0x4 scope:global data:4byte
|
||||
@5080 = .bss:0x00000058; // type:object size:0xC scope:local
|
||||
init$2720 = .bss:0x00000064; // type:object size:0x1 scope:local
|
||||
eyeOffset$5079 = .bss:0x00000068; // type:object size:0xC scope:local
|
||||
sInstance__40JASGlobalInstance<19JASDefaultBankTable> = .bss:0x00000074; // type:object size:0x4 scope:global
|
||||
sInstance__35JASGlobalInstance<14JASAudioThread> = .bss:0x00000078; // type:object size:0x4 scope:global
|
||||
|
|
|
|||
14
configure.py
14
configure.py
|
|
@ -1777,7 +1777,7 @@ config.libs = [
|
|||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_e_ot"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_e_ph"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_e_pm"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_e_po"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_e_po"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_e_pz"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_e_rb"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_e_rdb"),
|
||||
|
|
@ -1861,7 +1861,7 @@ config.libs = [
|
|||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_npc_fairy"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_npc_fguard"),
|
||||
ActorRel(NonMatching, "d_a_npc_gnd"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_npc_gra", extra_cflags=[DANPCF_C_HACK]),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_npc_gra", extra_cflags=[DANPCF_C_HACK]),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_npc_grc", extra_cflags=[DANPCF_C_HACK]),
|
||||
ActorRel(NonMatching, "d_a_npc_grd"),
|
||||
ActorRel(NonMatching, "d_a_npc_grm"),
|
||||
|
|
@ -1948,7 +1948,7 @@ config.libs = [
|
|||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_npc_zelda"),
|
||||
ActorRel(Equivalent, "d_a_npc_zra", extra_cflags=[DANPCF_C_HACK]), # weak func order
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_npc_zrc", extra_cflags=[DANPCF_C_HACK]),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_npc_zrz", extra_cflags=[DANPCF_C_HACK]),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_npc_zrz", extra_cflags=[DANPCF_C_HACK]),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_Lv5Key"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_Turara"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_TvCdlst"),
|
||||
|
|
@ -2016,10 +2016,10 @@ config.libs = [
|
|||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_gb"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_geyser"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_glowSphere"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_gm"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_gm"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_goGate"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_gomikabe"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_gra2"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_gra2"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_graWall"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_gra_rock"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_grave_stone"),
|
||||
|
|
@ -2148,7 +2148,7 @@ config.libs = [
|
|||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_pdoor"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_pdtile"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_pdwall"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_picture"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_picture"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_pillar"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_pleaf"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_poCandle"),
|
||||
|
|
@ -2240,7 +2240,7 @@ config.libs = [
|
|||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_waterfall"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_wchain"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_wdStick"),
|
||||
ActorRel(MatchingFor("GZ2E01"), "d_a_obj_web0"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_web0"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_web1"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_well_cover"),
|
||||
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_obj_wflag"),
|
||||
|
|
|
|||
|
|
@ -564,7 +564,7 @@ struct J2DColorChanInfo {
|
|||
/* 0x0 */ u8 field_0x3;
|
||||
};
|
||||
|
||||
inline u8 J2DCalcColorChanID(const J2DColorChanInfo& info) { return info.field_0x1; }
|
||||
inline u16 J2DCalcColorChanID(u8 param_0) { return param_0; }
|
||||
extern const J2DColorChanInfo j2dDefaultColorChanInfo;
|
||||
|
||||
/**
|
||||
|
|
@ -577,11 +577,11 @@ public:
|
|||
setColorChanInfo(j2dDefaultColorChanInfo);
|
||||
}
|
||||
J2DColorChan(const J2DColorChanInfo& info) {
|
||||
mColorChan = J2DCalcColorChanID(info);
|
||||
mColorChan = J2DCalcColorChanID(info.field_0x1);
|
||||
}
|
||||
|
||||
void setColorChanInfo(const J2DColorChanInfo& info) {
|
||||
mColorChan = J2DCalcColorChanID(info);
|
||||
mColorChan = J2DCalcColorChanID(info.field_0x1);
|
||||
}
|
||||
|
||||
u16 getMatSrc() const { return mColorChan & 1; }
|
||||
|
|
|
|||
|
|
@ -215,7 +215,7 @@ public:
|
|||
chunk = chunk->getNextChunk();
|
||||
}
|
||||
|
||||
JUT_PANIC(362,"Cannnot free for JASMemChunkPool")
|
||||
JUT_PANIC(362, "Cannnot free for JASMemChunkPool");
|
||||
}
|
||||
|
||||
/* 0x18 */ MemoryChunk* field_0x18;
|
||||
|
|
|
|||
|
|
@ -89,7 +89,7 @@ private:
|
|||
/* 0x5BC */ u8 field_0x5bc[0x5DC - 0x5BC];
|
||||
/* 0x5DC */ u8 mDoorAction;
|
||||
/* 0x5E0 */ dPath* mpPath;
|
||||
/* 0x5E4 */ cXyz mPoint;
|
||||
/* 0x5E4 */ Vec mPoint;
|
||||
/* 0x5F0 */ u8 mPathIndex;
|
||||
/* 0x5F4 */ int mPointIndex;
|
||||
/* 0x5F8 */ u8 mBossHealth;
|
||||
|
|
|
|||
|
|
@ -10,9 +10,6 @@ class J3DModelData;
|
|||
class dBgW;
|
||||
|
||||
struct fs_weed_s {
|
||||
/* 8086FED8 */ ~fs_weed_s();
|
||||
/* 8086FF38 */ fs_weed_s();
|
||||
|
||||
/* 0x00 */ cXyz field_0x00[15];
|
||||
/* 0xB4 */ f32 field_0xb4;
|
||||
/* 0xB8 */ f32 field_0xb8;
|
||||
|
|
@ -20,9 +17,6 @@ struct fs_weed_s {
|
|||
};
|
||||
|
||||
struct fs_tsubo_s {
|
||||
/* 8086FE98 */ ~fs_tsubo_s();
|
||||
/* 8086FED4 */ fs_tsubo_s();
|
||||
|
||||
/* 0x00 */ cXyz field_0x00;
|
||||
/* 0x0C */ u8 field_0x0c[0x14 - 0x0c];
|
||||
/* 0x14 */ J3DModel* field_0x14;
|
||||
|
|
@ -34,9 +28,6 @@ struct fs_tsubo_s {
|
|||
};
|
||||
|
||||
struct fs_rod_s {
|
||||
/* 8086FF84 */ ~fs_rod_s();
|
||||
/* 8086FFC0 */ fs_rod_s();
|
||||
|
||||
/* 0x00 */ cXyz field_0x00;
|
||||
/* 0x0C */ u8 field_0x0C[0x14 - 0x0C];
|
||||
/* 0x14 */ J3DModel* field_0x14;
|
||||
|
|
@ -49,9 +40,6 @@ struct fs_rod_s {
|
|||
};
|
||||
|
||||
struct fs_lure_s {
|
||||
/* 8086FFDC */ ~fs_lure_s();
|
||||
/* 80870018 */ fs_lure_s();
|
||||
|
||||
/* 0x00 */ cXyz field_0x00;
|
||||
/* 0x0C */ s16 field_0x0c;
|
||||
/* 0x0E */ s16 field_0x0e;
|
||||
|
|
@ -72,9 +60,6 @@ struct fs_lure_s {
|
|||
};
|
||||
|
||||
struct fs_koro2_s {
|
||||
/* 8086FD78 */ ~fs_koro2_s();
|
||||
/* 8086FDB4 */ fs_koro2_s();
|
||||
|
||||
/* 0x00 */ J3DModel* mpModel;
|
||||
/* 0x04 */ Mtx field_0x04;
|
||||
/* 0x34 */ s8 field_0x34;
|
||||
|
|
|
|||
|
|
@ -1112,7 +1112,7 @@ public:
|
|||
struct daNpcF_anmPlayData {
|
||||
u16 idx;
|
||||
f32 morf;
|
||||
s32 numLoops;
|
||||
int numLoops;
|
||||
};
|
||||
|
||||
enum AnmFlags {
|
||||
|
|
|
|||
|
|
@ -195,7 +195,7 @@ public:
|
|||
return true;
|
||||
}
|
||||
|
||||
void doNormalAction() {
|
||||
void doNormalAction(int) {
|
||||
mOrderEvtNo = 0;
|
||||
if (mpNextActionFn != NULL) {
|
||||
if (mpNextActionFn == mpActionFn) {
|
||||
|
|
|
|||
|
|
@ -244,7 +244,7 @@ public:
|
|||
break;
|
||||
default:
|
||||
OS_REPORT("%s: Line.%d arg=%d\n", "d_a_passer_mng.cpp", 1049, param_1);
|
||||
JUT_PANIC(1050, 0);
|
||||
JUT_ASSERT(1050, FALSE);
|
||||
break;
|
||||
}
|
||||
return paramLow << 8;
|
||||
|
|
|
|||
|
|
@ -273,6 +273,7 @@ public:
|
|||
class dEvDtFlag_c {
|
||||
public:
|
||||
dEvDtFlag_c() {}
|
||||
~dEvDtFlag_c() {}
|
||||
BOOL flagCheck(int flag);
|
||||
BOOL flagSet(int flag);
|
||||
BOOL flagMaxCheck(int flag);
|
||||
|
|
|
|||
|
|
@ -10,6 +10,7 @@ class fopAc_ac_c;
|
|||
class dEvent_exception_c {
|
||||
public:
|
||||
dEvent_exception_c() { mEventInfoIdx = -1; }
|
||||
~dEvent_exception_c() {}
|
||||
void init();
|
||||
int setStartDemo(int mapToolID);
|
||||
const char* getEventName();
|
||||
|
|
|
|||
|
|
@ -831,10 +831,7 @@ public:
|
|||
/* 0x2DB */ u8 door_light_influence_ratio;
|
||||
/* 0x2DC */ s16 unk_light_influence_ratio;
|
||||
/* 0x2DE */ u8 fish_pond_colreg_adjust_ON;
|
||||
/* 0x2E0 */ s16 fish_pond_colreg_c0_R;
|
||||
/* 0x2E2 */ s16 fish_pond_colreg_c0_G;
|
||||
/* 0x2E4 */ s16 fish_pond_colreg_c0_B;
|
||||
/* 0x2E6 */ u8 field_0x2E6[0x2E8 - 0x2E6];
|
||||
/* 0x2E0 */ GXColorS10 fish_pond_colreg_c0;
|
||||
/* 0x2E8 */ u8 water_mud_adjust_ON;
|
||||
/* 0x2EA */ s16 field_0x2ea;
|
||||
/* 0x2EC */ s16 field_0x2ec;
|
||||
|
|
|
|||
|
|
@ -180,7 +180,7 @@ public:
|
|||
void setArchiveName(char* name) { mArchiveName = name; }
|
||||
u8 getMapToolId() { return mMapToolId; }
|
||||
s16 getEventId() { return mEventId; }
|
||||
s16 getIdx() { return mIndex; }
|
||||
s16 getIdx() { return (s8)mIndex; }
|
||||
void setIdx(u8 i_idx) { mIndex = i_idx; }
|
||||
char* getArchiveName() { return mArchiveName; }
|
||||
BOOL chkCondition(u16 condition) { return (mCondition & condition) == condition; }
|
||||
|
|
@ -195,7 +195,7 @@ public:
|
|||
/* 0x06 */ u16 mCondition;
|
||||
/* 0x08 */ s16 mEventId;
|
||||
/* 0x0A */ u8 mMapToolId;
|
||||
/* 0x0B */ s8 mIndex;
|
||||
/* 0x0B */ u8 mIndex;
|
||||
/* 0x0C */ char* mArchiveName;
|
||||
/* 0x10 */ u8 field_0x10;
|
||||
/* 0x14 */ void (*field_0x14)(void*);
|
||||
|
|
|
|||
|
|
@ -1661,7 +1661,7 @@ int daAlink_c::procCutTurnInit(int param_0, int param_1) {
|
|||
if (param_0) {
|
||||
var_f31 = cutData->mRightTurnInputStartFrame;
|
||||
} else {
|
||||
var_f31 = cutData->mRightTurnAnm.mStartFrame;
|
||||
var_f31 = anm_data->mStartFrame;
|
||||
}
|
||||
|
||||
field_0x3484 = cutData->mRightAttackStartFrame;
|
||||
|
|
|
|||
|
|
@ -1303,7 +1303,7 @@ void daB_DS_c::executeOpeningDemo() {
|
|||
mMode++;
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
case 2: {
|
||||
f32 calc_center = cLib_addCalcPos(&mCameraCenter, mOpCenterDt[1], 0.3f, 2.0f, 1.0f);
|
||||
f32 calc_eye = cLib_addCalcPos(&mCameraEye, mOpEyeDt[1], 0.3f, 2.0f, 1.0f);
|
||||
if (calc_center > 2.0f || calc_eye > 2.0f || cLib_calcTimer(&mModeTimer) != 0) {
|
||||
|
|
@ -1323,6 +1323,7 @@ void daB_DS_c::executeOpeningDemo() {
|
|||
fopAcM_OffStatus(this, 0x4000);
|
||||
mMode++;
|
||||
// fallthrough
|
||||
}
|
||||
case 3:
|
||||
mPedestalFallTimer = l_HIO.mPedestalFallTime;
|
||||
|
||||
|
|
@ -1519,7 +1520,7 @@ void daB_DS_c::executeOpeningDemo() {
|
|||
dComIfGp_getVibration().StartShock(4, 0x1f, cXyz(0.0f, 1.0f, 0.0f));
|
||||
mMode++;
|
||||
// fallthrough
|
||||
case 26:
|
||||
case 26: {
|
||||
if (!field_0x85e && mpZantMorf->isStop()) {
|
||||
mpZantMorf->setAnm(static_cast<J3DAnmTransform*>(dComIfG_getObjectRes("B_DS", 67)),
|
||||
J3DFrameCtrl::EMode_LOOP, 1.0f, 1.0f, 0.0f, -1.0f);
|
||||
|
|
@ -1562,6 +1563,7 @@ void daB_DS_c::executeOpeningDemo() {
|
|||
mMode = 30;
|
||||
field_0x85e = false;
|
||||
// fallthrough
|
||||
}
|
||||
case 30:
|
||||
mCameraCenter.set(mOpCenterDt[12]);
|
||||
mCameraEye.set(mOpEyeDt[12]);
|
||||
|
|
@ -2325,7 +2327,7 @@ void daB_DS_c::executeDamage() {
|
|||
mMode = 100;
|
||||
mSound.startCreatureSound(Z2SE_EN_DS_MDEMO_FALL, 0, -1);
|
||||
// fallthrough
|
||||
case 100:
|
||||
case 100: {
|
||||
gravity = -0.2f;
|
||||
if (current.pos.y > -1600.0f) {
|
||||
if (current.pos.y <= -300.0f) {
|
||||
|
|
@ -2346,6 +2348,7 @@ void daB_DS_c::executeDamage() {
|
|||
&p2_angle, NULL, 0xff);
|
||||
mMode = 101;
|
||||
// fallthrough
|
||||
}
|
||||
case 101:
|
||||
cLib_addCalc2(&mCameraCenter.y, down_center_dt[4].y, 0.7f, 10.0f);
|
||||
cLib_addCalc2(&mCameraEye.y, down_eye_dt[4].y, 0.7f, 10.0f);
|
||||
|
|
|
|||
|
|
@ -444,7 +444,6 @@ void daBalloon2D_c::setComboAlpha() {
|
|||
}
|
||||
|
||||
/* 80654730-80654E8C 001350 075C+00 1/1 0/0 0/0 .text drawAddScore__13daBalloon2D_cFv */
|
||||
// NONMATCHING - field_0x0.x, regalloc
|
||||
void daBalloon2D_c::drawAddScore() {
|
||||
for (s32 i = 19; i >= 0; i--) {
|
||||
if (field_0x5f8[i].field_0xe != 0) {
|
||||
|
|
@ -591,7 +590,6 @@ void daBalloon2D_HIO_c::resetAddScoreSetFlag() {
|
|||
}
|
||||
|
||||
/* 80655250-80655304 001E70 00B4+00 1/0 0/0 0/0 .text daBalloon2D_create__FP13daBalloon2D_c */
|
||||
// NONMATCHING - vtable
|
||||
static int daBalloon2D_create(daBalloon2D_c* i_this) {
|
||||
fopAcM_ct(i_this, daBalloon2D_c);
|
||||
return i_this->create();
|
||||
|
|
|
|||
|
|
@ -408,6 +408,13 @@ int daBg_c::draw() {
|
|||
break;
|
||||
}
|
||||
|
||||
#ifdef DEBUG
|
||||
s16 sp56 = 0xFF;
|
||||
if (g_kankyoHIO.navy.fish_pond_colreg_adjust_ON) {
|
||||
sp50 = g_kankyoHIO.navy.fish_pond_colreg_c0;
|
||||
}
|
||||
#endif
|
||||
|
||||
f32 var_f31 = bgPart->tevstr->AmbCol.r / 10.0f;
|
||||
var_f31 *= var_f31;
|
||||
if (var_f31 > 1.0f) {
|
||||
|
|
|
|||
|
|
@ -131,7 +131,6 @@ u8* daBgObj_c::spec_data_c::initFarInfoBlock(u8* i_dataPtr) {
|
|||
|
||||
/* 80459904-80459B64 000324 0260+00 1/1 0/0 1/1 .text Set__Q29daBgObj_c11spec_data_cFPv
|
||||
*/
|
||||
// NONMATCHING - close-ish
|
||||
bool daBgObj_c::spec_data_c::Set(void* i_ptr) {
|
||||
JUT_ASSERT(496, i_ptr != NULL);
|
||||
|
||||
|
|
@ -160,7 +159,7 @@ bool daBgObj_c::spec_data_c::Set(void* i_ptr) {
|
|||
default:
|
||||
// Invalid data block type
|
||||
OS_REPORT_ERROR("データブロックタイプが不正です<%d>\n", block_type);
|
||||
JUT_PANIC(527, "0");
|
||||
JUT_ASSERT(527, FALSE);
|
||||
}
|
||||
|
||||
if (block_type == 0) {
|
||||
|
|
@ -201,7 +200,7 @@ bool daBgObj_c::spec_data_c::Set(void* i_ptr) {
|
|||
default:
|
||||
// Invalid data block type
|
||||
OS_REPORT_ERROR("データブロックタイプが不正です<%d>\n", block_type);
|
||||
JUT_PANIC(570, "0");
|
||||
JUT_ASSERT(570, FALSE);
|
||||
}
|
||||
|
||||
if (block_type == 0) {
|
||||
|
|
@ -242,7 +241,7 @@ bool daBgObj_c::spec_data_c::Set(void* i_ptr) {
|
|||
default:
|
||||
// "Data Block type invalid<%d>\n"
|
||||
OSReport_Error("データブロックタイプが不正です<%d>\n", block_type);
|
||||
JUT_PANIC(619, "0");
|
||||
JUT_ASSERT(619, FALSE);
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
@ -980,7 +979,7 @@ void daBgObj_c::setParticle() {
|
|||
default:
|
||||
// Multi MoveBG: Particle model number is invalid <%d>
|
||||
OS_REPORT_ERROR("マルチMoveBG:パーティクルモデル番号が不正<%d>\n", modelNumber);
|
||||
JUT_PANIC(1689, "0");
|
||||
JUT_ASSERT(1689, FALSE);
|
||||
break;
|
||||
}
|
||||
JPABaseEmitter* emitter = dComIfGp_particle_set(
|
||||
|
|
|
|||
|
|
@ -932,7 +932,6 @@ void daBoomerang_c::setEffect() {
|
|||
}
|
||||
|
||||
/* 804A0874-804A0F0C 002834 0698+00 2/0 0/0 0/0 .text procWait__13daBoomerang_cFv */
|
||||
// NONMATCHING - small regalloc
|
||||
int daBoomerang_c::procWait() {
|
||||
daAlink_c* player = daAlink_getAlinkActorClass();
|
||||
speedF = 0.0f;
|
||||
|
|
@ -973,7 +972,7 @@ int daBoomerang_c::procWait() {
|
|||
offStateFlg0(FLG0_10);
|
||||
}
|
||||
|
||||
current.angle.y += 0x1830;
|
||||
current.angle.y += (s16)0x1830;
|
||||
shape_angle.x = current.angle.x;
|
||||
shape_angle.y = current.angle.y;
|
||||
shape_angle.z = 0x1000;
|
||||
|
|
@ -993,7 +992,7 @@ int daBoomerang_c::procWait() {
|
|||
procMove();
|
||||
} else if (dCam_getBody()->Mode() != 8) {
|
||||
if (dComIfGp_checkPlayerStatus0(0, 0x80000) && player->getAtnActor() != NULL && m_lockCnt < BOOMERANG_LOCK_MAX) {
|
||||
fpc_ProcID atn_actor_id = fopAcM_GetID(player->getAtnActor());
|
||||
fpc_ProcID atn_actor_id = (fpc_ProcID)fopAcM_GetID(player->getAtnActor());
|
||||
|
||||
int var_r27 = 0;
|
||||
while (var_r27 < m_lockCnt) {
|
||||
|
|
|
|||
|
|
@ -357,10 +357,10 @@ BOOL daBdoor_c::actionEnd() {
|
|||
int daBdoor_c::execute() {
|
||||
typedef BOOL (daBdoor_c::*daBdoor_action)();
|
||||
static daBdoor_action l_action[4] = {
|
||||
&actionWait,
|
||||
&actionCloseWait,
|
||||
&actionOpen,
|
||||
&actionEnd,
|
||||
&daBdoor_c::actionWait,
|
||||
&daBdoor_c::actionCloseWait,
|
||||
&daBdoor_c::actionOpen,
|
||||
&daBdoor_c::actionEnd,
|
||||
};
|
||||
if (fopAcM_CheckStatus(this, 0x1000)) {
|
||||
mStaffID = dComIfGp_evmng_getMyStaffId(l_staff_name, NULL, 0);
|
||||
|
|
|
|||
|
|
@ -933,7 +933,7 @@ int daDoor20_c::demoProc() {
|
|||
if (!field_0x584.init(anm, 1, 0, 1.0f, 0, -1, true) || !field_0x5a0.init(anm,
|
||||
1, 0, 1.0f, 0, -1, true))
|
||||
{
|
||||
JUT_PANIC(1799, 0);
|
||||
JUT_ASSERT(1799, FALSE);
|
||||
}
|
||||
field_0x67c = 0;
|
||||
openInit2();
|
||||
|
|
@ -945,7 +945,7 @@ int daDoor20_c::demoProc() {
|
|||
if (!field_0x584.init(anm, 1, 0, 1.0f, 0, -1, true) || !field_0x5a0.init(anm,
|
||||
1, 0, 1.0f, 0, -1, true))
|
||||
{
|
||||
JUT_PANIC(1812, 0);
|
||||
JUT_ASSERT(1812, FALSE);
|
||||
}
|
||||
field_0x67c = 0;
|
||||
openInit2();
|
||||
|
|
|
|||
|
|
@ -178,7 +178,6 @@ static void damage_check(e_ba_class* i_this) {
|
|||
}
|
||||
|
||||
/* 8067F2DC-8067F544 0006DC 0268+00 2/3 0/0 0/0 .text path_check__FP10e_ba_class */
|
||||
// NONMATCHING regalloc
|
||||
static BOOL path_check(e_ba_class* i_this) {
|
||||
fopEn_enemy_c* a_this = &i_this->mEnemy;
|
||||
if (i_this->mpPath != NULL) {
|
||||
|
|
|
|||
|
|
@ -2947,7 +2947,6 @@ int c_start;
|
|||
|
||||
/* 804ECB50-804ED83C 007A90 0CEC+00 2/1 0/0 0/0 .text daE_DN_Execute__FP10e_dn_class */
|
||||
static int daE_DN_Execute(e_dn_class* i_this) {
|
||||
// NONMATCHING
|
||||
if (i_this->field_0x10d8 != 0) {
|
||||
return 1;
|
||||
}
|
||||
|
|
@ -3181,8 +3180,7 @@ static int daE_DN_Execute(e_dn_class* i_this) {
|
|||
def_se_set(&i_this->mSound, i_this->field_0xf7c.GetTgHitObj(), 40, 0);
|
||||
dScnPly_c::setPauseTimer(l_HIO.field_0x1c);
|
||||
i_this->field_0x6ec = 10;
|
||||
// The following s16 cast makes ALL the difference in terms of regalloc!
|
||||
cMtx_YrotS(*calc_mtx, (s16) a_this->shape_angle.y);
|
||||
cMtx_YrotS(*calc_mtx, (s16)a_this->shape_angle.y);
|
||||
sp2c.x = KREG_F(0);
|
||||
sp2c.y = 120.0f + KREG_F(1);
|
||||
sp2c.z = 50.0f + KREG_F(2);
|
||||
|
|
|
|||
|
|
@ -249,7 +249,6 @@ static void e_fs_wait(e_fs_class* i_this) {
|
|||
}
|
||||
|
||||
/* 806BC264-806BC444 000884 01E0+00 1/1 0/0 0/0 .text e_fs_move__FP10e_fs_class */
|
||||
// NONMATCHING regalloc
|
||||
static void e_fs_move(e_fs_class* i_this) {
|
||||
fopEn_enemy_c* a_this = (fopEn_enemy_c*)&i_this->mEnemy;
|
||||
switch (i_this->mMode) {
|
||||
|
|
|
|||
|
|
@ -20,8 +20,6 @@ public:
|
|||
/* 0x10 */ f32 mCheckRange;
|
||||
};
|
||||
|
||||
// NONMATCHING - weak function order
|
||||
|
||||
/* 806F7EEC-806F7F24 0000EC 0038+00 1/1 0/0 0/0 .text __ct__12daE_KG_HIO_cFv */
|
||||
daE_KG_HIO_c::daE_KG_HIO_c() {
|
||||
field_0x4 = -1;
|
||||
|
|
|
|||
|
|
@ -167,7 +167,6 @@ void daE_OT_c::setActionMode(int i_action, int i_mode) {
|
|||
}
|
||||
|
||||
/* 8073A510-8073A7B0 000330 02A0+00 1/1 0/0 0/0 .text damage_check__8daE_OT_cFv */
|
||||
// NONMATCHING regswap
|
||||
void daE_OT_c::damage_check() {
|
||||
if (mAction == ACT_DAMAGE) {
|
||||
return;
|
||||
|
|
@ -182,7 +181,7 @@ void daE_OT_c::damage_check() {
|
|||
|
||||
if (mCcSph.ChkCoHit()) {
|
||||
fopAc_ac_c* hit_actor = dCc_GetAc(mCcSph.GetCoHitObj()->GetAc());
|
||||
if (fopAcM_GetName(hit_actor) == PROC_E_DT
|
||||
if (fopAcM_GetName(dCc_GetAc(hit_actor)) == PROC_E_DT
|
||||
&& static_cast<daE_DT_c*>(hit_actor)->isFlyingAttack())
|
||||
{
|
||||
setActionMode(ACT_DAMAGE, 10);
|
||||
|
|
@ -197,7 +196,7 @@ void daE_OT_c::damage_check() {
|
|||
|
||||
if (mCcSph.ChkTgHit()) {
|
||||
mAtInfo.mpCollider = mCcSph.GetTgHitObj();
|
||||
dCc_GetAc(mAtInfo.mpCollider->GetAc());
|
||||
fopAc_ac_c* ac = dCc_GetAc(mAtInfo.mpCollider->GetAc());
|
||||
cc_at_check(this, &mAtInfo);
|
||||
dScnPly_c::setPauseTimer(0);
|
||||
if (mAtInfo.mpCollider->ChkAtType(AT_TYPE_SHIELD_ATTACK)) {
|
||||
|
|
|
|||
|
|
@ -355,7 +355,6 @@ static s16 s_TargetAngle;
|
|||
} // namespace
|
||||
|
||||
/* 80742958-80742C94 000B58 033C+00 1/1 0/0 0/0 .text SearchFarP__8daE_PM_cFv */
|
||||
// NONMATCHING regalloc, instruction order
|
||||
void daE_PM_c::SearchFarP() {
|
||||
//! @bug best_distance is not initialized
|
||||
f32 best_distance;
|
||||
|
|
@ -2500,7 +2499,6 @@ void daE_PM_c::DamageAction() {
|
|||
}
|
||||
|
||||
/* 8074A210-8074A3DC 008410 01CC+00 1/1 0/0 0/0 .text At_Check__8daE_PM_cFv */
|
||||
// NONMATCHING regalloc
|
||||
void daE_PM_c::At_Check() {
|
||||
fopAc_ac_c* player = dComIfGp_getPlayer(0);
|
||||
mAtInfo.mpCollider = mCcCyl.GetTgHitObj();
|
||||
|
|
|
|||
|
|
@ -1006,7 +1006,7 @@ static void e_po_dead(e_po_class* i_this) {
|
|||
}
|
||||
break;
|
||||
|
||||
case 4:
|
||||
case 4: {
|
||||
J3DModel* model_p = i_this->mpMorf3->getModel();
|
||||
for (i = 0; i < 4; i++) {
|
||||
i_this->mParticleKeys[i] =
|
||||
|
|
@ -1051,7 +1051,7 @@ static void e_po_dead(e_po_class* i_this) {
|
|||
i_this->field_0x788.y = i_this->mAcch.GetGroundH();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
case 6:
|
||||
if (i_this->field_0x74A[0] == 0) {
|
||||
local_100 = a_this->current.pos - i_this->field_0x788;
|
||||
|
|
@ -2128,7 +2128,7 @@ static void e_po_holl_demo(e_po_class* i_this) {
|
|||
i_this->mType = 22;
|
||||
// Fallthrough
|
||||
|
||||
case 22:
|
||||
case 22: {
|
||||
if (mArg0Check(i_this, 7) != 0) {
|
||||
cLib_addCalcPos(&i_this->field_0x844, mKcenterInit_dt[9], 0.5f, 20.0f, 10.0f);
|
||||
cLib_addCalcPos(&i_this->field_0x838, mKeyeInit_dt[9], 0.5f, 20.0f, 10.0f);
|
||||
|
|
@ -2166,7 +2166,7 @@ static void e_po_holl_demo(e_po_class* i_this) {
|
|||
i_this->field_0x7E2 = 0;
|
||||
i_this->mType = 23;
|
||||
// Fallthrough
|
||||
|
||||
}
|
||||
case 23:
|
||||
if (mHollDemoFlag < 24) {
|
||||
i_this->field_0x74A[2] = 10;
|
||||
|
|
|
|||
|
|
@ -428,7 +428,6 @@ void daE_PZ_c::executeSearchPoint() {
|
|||
}
|
||||
|
||||
/* 807593CC-8075B7CC 000F4C 2400+00 2/1 0/0 0/0 .text executeOpeningDemo__8daE_PZ_cFv */
|
||||
// NONMATCHING - fopAcM_GetID not getting inlined, equivalent
|
||||
void daE_PZ_c::executeOpeningDemo() {
|
||||
static cXyz mPzCenterInit_dt[] = {
|
||||
cXyz(-50.0f, 10.0f, -3150.0f),
|
||||
|
|
|
|||
|
|
@ -490,7 +490,6 @@ inline u16 absoluteValue(s16 num) {
|
|||
}
|
||||
|
||||
/* 8076CB24-8076CE10 000E44 02EC+00 2/2 0/0 0/0 .text search_bomb__FP11e_rdy_classi */
|
||||
// NONMATCHING regalloc
|
||||
static dBomb_c* search_bomb(e_rdy_class* i_this, BOOL param_1) {
|
||||
if ((i_this->field_0xaf0 & 0x10000000) == 0) {
|
||||
return NULL;
|
||||
|
|
|
|||
|
|
@ -445,7 +445,6 @@ bool daE_ZH_c::mColorSet(bool param_1, f32 param_2, f32 param_3) {
|
|||
|
||||
/* 80829AD8-80829E44 000B98 036C+00 2/2 0/0 0/0 .text mReturnLineMove__8daE_ZH_cFv */
|
||||
bool daE_ZH_c::mReturnLineMove() {
|
||||
// NONMATCHING
|
||||
if (mS_Ball == NULL) {
|
||||
setActionMode(ACTION_EXECUTE_FLY_DELETE, 0);
|
||||
return false;
|
||||
|
|
|
|||
|
|
@ -816,7 +816,6 @@ static int model_d[8] = {
|
|||
|
||||
/* 8046A724-8046A858 0025A4 0134+00 1/1 0/0 0/0 .text daEp_CreateHeap__FP10fopAc_ac_c */
|
||||
static int daEp_CreateHeap(fopAc_ac_c* a_this) {
|
||||
// NONMATCHING - equiv in debug
|
||||
ep_class* i_this = (ep_class*)a_this;
|
||||
|
||||
void* modelData = dComIfG_getObjectRes("Ep", model_d[i_this->field_0xa5a]);
|
||||
|
|
|
|||
|
|
@ -249,7 +249,7 @@ static u8 l_HIOInit;
|
|||
static daKago_HIO_c l_HIO;
|
||||
|
||||
/* 80849BA8-8084A070 0006E8 04C8+00 4/4 0/0 0/0 .text checkGroundHeight__8daKago_cF4cXyzPf */
|
||||
// NONMATCHING - regalloc
|
||||
// NONMATCHING - fpr regalloc
|
||||
f32 daKago_c::checkGroundHeight(cXyz i_pos, f32* o_step) {
|
||||
f32 retVal;
|
||||
|
||||
|
|
@ -393,8 +393,7 @@ f32 daKago_c::checkRoofHeight(cXyz param_0) {
|
|||
if (std::abs(current.pos.y - roofChkYVal) < 310.0f) {
|
||||
fopAc_ac_c* actor = dComIfG_Bgsp().GetActorPointer(roofChk);
|
||||
if (actor != NULL && fopAcM_GetName(actor) == PROC_Obj_RIVERROCK) {
|
||||
daObjRIVERROCK_c* riverRock = (daObjRIVERROCK_c*)actor;
|
||||
if (riverRock->mBreakSubAction == daObjRIVERROCK_c::BREAK_MOVE) {
|
||||
if (((daObjRIVERROCK_c*)actor)->mBreakSubAction == daObjRIVERROCK_c::BREAK_MOVE) {
|
||||
field_0x6e5 = 1;
|
||||
}
|
||||
}
|
||||
|
|
@ -2617,7 +2616,7 @@ bool daKago_c::executeFirstDemo() {
|
|||
}
|
||||
|
||||
break;
|
||||
case 3:
|
||||
case 3: {
|
||||
dComIfGp_getEvent().setSkipProc(this, DemoSkipCallBack, 3);
|
||||
|
||||
setMidnaTagPos();
|
||||
|
|
@ -2638,6 +2637,7 @@ bool daKago_c::executeFirstDemo() {
|
|||
}
|
||||
|
||||
break;
|
||||
}
|
||||
case 4:
|
||||
dComIfGp_getEvent().setSkipProc(this, DemoSkipCallBack, 2);
|
||||
|
||||
|
|
|
|||
|
|
@ -210,7 +210,7 @@ static int daKytag12_Execute_standard(kytag12_class* i_this) {
|
|||
effect_p->field_0x42 = 0;
|
||||
effect_p->mStatus++;
|
||||
/* fallthrough */
|
||||
case 1:
|
||||
case 1: {
|
||||
var_f30 = cM_ssin(effect_p->field_0x3c);
|
||||
effect_p->field_0x3c += (((f32)(i & 31) * 6.8f) + 630.0f);
|
||||
|
||||
|
|
@ -231,6 +231,7 @@ static int daKytag12_Execute_standard(kytag12_class* i_this) {
|
|||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
spB8 = effect_p->mBasePos + effect_p->mPosition;
|
||||
var_f29 = 0.0f;
|
||||
|
|
@ -507,7 +508,7 @@ static int daKytag12_Execute_arrival(kytag12_class* i_this) {
|
|||
}
|
||||
|
||||
switch (effect_p->mStatus) {
|
||||
case 0:
|
||||
case 0: {
|
||||
s16 temp_r3 = cM_rndF(0x10000);
|
||||
|
||||
sp80.x = cM_rndFX(cM_ssin(temp_r3) * 1000.0f);
|
||||
|
|
@ -529,7 +530,8 @@ static int daKytag12_Execute_arrival(kytag12_class* i_this) {
|
|||
effect_p->mPosition.z = -sp80.z;
|
||||
effect_p->mStatus++;
|
||||
break;
|
||||
case 1:
|
||||
}
|
||||
case 1: {
|
||||
sp80.x = 0.0f;
|
||||
sp80.y = effect_p->mPosition.y;
|
||||
sp80.z = 0.0f;
|
||||
|
|
@ -547,6 +549,7 @@ static int daKytag12_Execute_arrival(kytag12_class* i_this) {
|
|||
0.01f);
|
||||
cLib_addCalc(&effect_p->mPosition.z, var_f21 * 20.0f, 0.1f, 10.0f, 0.01f);
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
effect_p->mPosition.x = var_f21 * 20.0f;
|
||||
effect_p->mPosition.y = (var_f22 + 1.0f) * 20.0f;
|
||||
|
|
@ -726,6 +729,7 @@ static int daKytag12_Execute_R00(kytag12_class* i_this) {
|
|||
EF_EVIL_EFF* effect_p = &temp_r25->mEffect[i];
|
||||
var_f25 = 1.0f;
|
||||
|
||||
f32 f31;
|
||||
switch (effect_p->mStatus) {
|
||||
case 0:
|
||||
if (i < 500) {
|
||||
|
|
@ -746,9 +750,8 @@ static int daKytag12_Execute_R00(kytag12_class* i_this) {
|
|||
effect_p->mBasePos.y = cM_rndF(6800.0f) + -3200.0f;
|
||||
effect_p->mBasePos.z = cM_rndFX(480.0f) + 5350.0f;
|
||||
|
||||
f32 temp_f2 = (effect_p->mBasePos.y / 1000.0f);
|
||||
temp_f2 = temp_f2; // fake match? idk how else to fix instruction order
|
||||
effect_p->mBasePos.x = temp_f2 * -200.0f + -3000.0f;
|
||||
f31 = (effect_p->mBasePos.y / 1000.0f);
|
||||
effect_p->mBasePos.x = f31 * -200.0f + -3000.0f;
|
||||
|
||||
effect_p->field_0x24 = 1.0f;
|
||||
effect_p->field_0x38 = fabsf(var_f26) * 50.0f + 150.0f;
|
||||
|
|
@ -756,9 +759,8 @@ static int daKytag12_Execute_R00(kytag12_class* i_this) {
|
|||
effect_p->mBasePos.y = cM_rndF(6800.0f) + -3200.0f;
|
||||
effect_p->mBasePos.z = cM_rndFX(510.0f) + 5300.0f;
|
||||
|
||||
f32 temp_f2 = (effect_p->mBasePos.y / 1000.0f);
|
||||
temp_f2 = temp_f2; // fake match? idk how else to fix instruction order
|
||||
effect_p->mBasePos.x = temp_f2 * -200.0f + 3400.0f;
|
||||
f31 = (effect_p->mBasePos.y / 1000.0f);
|
||||
effect_p->mBasePos.x = f31 * -200.0f + 3400.0f;
|
||||
|
||||
effect_p->field_0x24 = 1.0f;
|
||||
effect_p->field_0x38 = fabsf(var_f26) * 50.0f + 150.0f;
|
||||
|
|
@ -775,7 +777,7 @@ static int daKytag12_Execute_R00(kytag12_class* i_this) {
|
|||
effect_p->field_0x2c = 0.0f;
|
||||
effect_p->mStatus++;
|
||||
/* fallthrough */
|
||||
case 1:
|
||||
case 1: {
|
||||
var_f26 = cM_ssin(effect_p->field_0x3c);
|
||||
effect_p->field_0x3c += ((f32)(i & 240) * 4.8f);
|
||||
|
||||
|
|
@ -790,6 +792,7 @@ static int daKytag12_Execute_R00(kytag12_class* i_this) {
|
|||
effect_p->field_0x38 = (temp_f7 * 10.0f + 85.0f) * 1.5f;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 2:
|
||||
sp80 = effect_p->mBasePos + effect_p->mPosition;
|
||||
var_f25 = 0.0f;
|
||||
|
|
@ -833,18 +836,15 @@ static int daKytag12_Execute_R00(kytag12_class* i_this) {
|
|||
effect_p->mStatus = 1;
|
||||
}
|
||||
|
||||
f32 temp_f2 = (effect_p->mBasePos.y / 1000.0f);
|
||||
temp_f2 = temp_f2; // fake match? idk how else to fix instruction order
|
||||
effect_p->mBasePos.x = temp_f2 * -200.0f + -3000.0f;
|
||||
f31 = (effect_p->mBasePos.y / 1000.0f);
|
||||
effect_p->mBasePos.x = f31 * -200.0f + -3000.0f;
|
||||
|
||||
if (effect_p->mBasePos.y < -680.0f) {
|
||||
f32 temp_f2 = (effect_p->mBasePos.y / 1000.0f);
|
||||
temp_f2 = temp_f2; // fake match? idk how else to fix instruction order
|
||||
effect_p->mBasePos.x = temp_f2 * -20.0f + -2250.0f;
|
||||
f31 = (effect_p->mBasePos.y / 1000.0f);
|
||||
effect_p->mBasePos.x = f31 * -20.0f + -2250.0f;
|
||||
} else if (effect_p->mBasePos.y < 0.0f) {
|
||||
f32 temp_f2 = (effect_p->mBasePos.y / 1000.0f);
|
||||
temp_f2 = temp_f2; // fake match? idk how else to fix instruction order
|
||||
effect_p->mBasePos.x = temp_f2 * -1160.0f + -3000.0f;
|
||||
f31 = (effect_p->mBasePos.y / 1000.0f);
|
||||
effect_p->mBasePos.x = f31 * -1160.0f + -3000.0f;
|
||||
effect_p->mBasePos.y += 10.0f;
|
||||
}
|
||||
} else if (i >= 1500 && i < 2000) {
|
||||
|
|
@ -854,18 +854,15 @@ static int daKytag12_Execute_R00(kytag12_class* i_this) {
|
|||
effect_p->mStatus = 1;
|
||||
}
|
||||
|
||||
f32 temp_f2 = (effect_p->mBasePos.y / 1000.0f);
|
||||
temp_f2 = temp_f2; // fake match? idk how else to fix instruction order
|
||||
effect_p->mBasePos.x = temp_f2 * 200.0f + 3400.0f;
|
||||
f31 = (effect_p->mBasePos.y / 1000.0f);
|
||||
effect_p->mBasePos.x = f31 * 200.0f + 3400.0f;
|
||||
|
||||
if (effect_p->mBasePos.y < -380.0f) {
|
||||
f32 temp_f2 = (effect_p->mBasePos.y / 1000.0f);
|
||||
temp_f2 = temp_f2; // fake match? idk how else to fix instruction order
|
||||
effect_p->mBasePos.x = temp_f2 * -20.0f + 2700.0f;
|
||||
f31 = (effect_p->mBasePos.y / 1000.0f);
|
||||
effect_p->mBasePos.x = f31 * -20.0f + 2700.0f;
|
||||
} else if (effect_p->mBasePos.y < 200.0f) {
|
||||
f32 temp_f2 = (effect_p->mBasePos.y / -800.0f);
|
||||
temp_f2 = temp_f2; // fake match? idk how else to fix instruction order
|
||||
effect_p->mBasePos.x = temp_f2 * -1060.0f + 3200.0f;
|
||||
f31 = (effect_p->mBasePos.y / -800.0f);
|
||||
effect_p->mBasePos.x = f31 * -1060.0f + 3200.0f;
|
||||
effect_p->mBasePos.y += 10.0f;
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -9,6 +9,7 @@
|
|||
#include "d/actor/d_a_kytag14.h"
|
||||
#include "d/d_com_inf_game.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
#include "d/d_debug_viewer.h"
|
||||
|
||||
/* 80529998-805299A0 000078 0008+00 1/0 0/0 0/0 .text daKytag14_Draw__FP13kytag14_class
|
||||
*/
|
||||
|
|
@ -18,6 +19,7 @@ static int daKytag14_Draw(kytag14_class*) {
|
|||
|
||||
/* 805299A0-80529B34 000080 0194+00 1/0 0/0 0/0 .text daKytag14_Execute__FP13kytag14_class */
|
||||
static int daKytag14_Execute(kytag14_class* i_this) {
|
||||
fopAc_ac_c* actor = i_this;
|
||||
BOOL event1_set = true;
|
||||
BOOL event2_unset = true;
|
||||
BOOL switch1_set = true;
|
||||
|
|
@ -28,7 +30,7 @@ static int daKytag14_Execute(kytag14_class* i_this) {
|
|||
}
|
||||
|
||||
if (i_this->mEventID1 != 0xFFFF) {
|
||||
if (dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[i_this->mEventID1])) {
|
||||
if (dComIfGs_isEventBit((u16)dSv_event_flag_c::saveBitLabels[i_this->mEventID1])) {
|
||||
event1_set = true;
|
||||
} else {
|
||||
event1_set = false;
|
||||
|
|
@ -36,7 +38,7 @@ static int daKytag14_Execute(kytag14_class* i_this) {
|
|||
}
|
||||
|
||||
if (i_this->mEventID2 != 0xFFFF) {
|
||||
if (!dComIfGs_isEventBit(dSv_event_flag_c::saveBitLabels[i_this->mEventID2])) {
|
||||
if (!dComIfGs_isEventBit((u16)dSv_event_flag_c::saveBitLabels[i_this->mEventID2])) {
|
||||
event2_unset = true;
|
||||
} else {
|
||||
event2_unset = false;
|
||||
|
|
@ -61,6 +63,15 @@ static int daKytag14_Execute(kytag14_class* i_this) {
|
|||
|
||||
if (event1_set == true && event2_unset == true && switch1_set == true && switch2_unset == true)
|
||||
{
|
||||
#ifdef DEBUG
|
||||
if (!g_kankyoHIO.navy.display_save_location) {
|
||||
dDbVw_Report(20, 16, "TAG SavMem STAGE[%s] Room[%d] Lp[%d]", dComIfGp_getStartStageName(), i_this->mSaveRoomNo, i_this->mSavePoint);
|
||||
if (i_this->mSaveRoomNo == -1) {
|
||||
OSReport_Error("\n セーブ復帰位置タグの部屋指定に-1指定!\n");
|
||||
JUT_ASSERT(250, FALSE);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
g_dComIfG_gameInfo.info.getPlayer().getPlayerReturnPlace().set(
|
||||
dComIfGp_getStartStageName(), i_this->mSaveRoomNo, i_this->mSavePoint);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -19,169 +19,6 @@
|
|||
#include "SSystem/SComponent/c_math.h"
|
||||
#include "Z2AudioLib/Z2Instances.h"
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" static void ride_call_back__FP4dBgWP10fopAc_ac_cP10fopAc_ac_c();
|
||||
extern "C" static void Reel_CallBack__FP8J3DJointi();
|
||||
extern "C" static void frog_CallBack__FP8J3DJointi();
|
||||
extern "C" static void koro2_draw__FP11fshop_class();
|
||||
extern "C" static void daFshop_Draw__FP11fshop_class();
|
||||
extern "C" static void lure_set__FP11fshop_class();
|
||||
extern "C" static void rod_set__FP11fshop_class();
|
||||
extern "C" void __dt__4cXyzFv();
|
||||
extern "C" static void s_fish_sub__FPvPv();
|
||||
extern "C" static void tsubo_set__FP11fshop_class();
|
||||
extern "C" static void weed_control__FP11fshop_classP9fs_weed_s();
|
||||
extern "C" static void stage_copy__FP11fshop_classP11fshop_class();
|
||||
extern "C" static void koro2_mtx_set__FP11fshop_class();
|
||||
extern "C" static void s_sel_sub__FPvPv();
|
||||
extern "C" static void s_ball_sub__FPvPv();
|
||||
extern "C" static void koro2_game__FP11fshop_class();
|
||||
extern "C" static void ball_wall_check__FP11fshop_class();
|
||||
extern "C" static void daFshop_Execute__FP11fshop_class();
|
||||
extern "C" static bool daFshop_IsDelete__FP11fshop_class();
|
||||
extern "C" static void daFshop_Delete__FP11fshop_class();
|
||||
extern "C" static void koro2_heapinit__FP10fopAc_ac_c();
|
||||
extern "C" static void useHeapInit__FP10fopAc_ac_c();
|
||||
extern "C" static void BalluseHeapInit__FP10fopAc_ac_c();
|
||||
extern "C" static void daFshop_Create__FP10fopAc_ac_c();
|
||||
extern "C" void __dt__10fs_koro2_sFv();
|
||||
extern "C" void __ct__10fs_koro2_sFv();
|
||||
extern "C" void __dt__12dBgS_ObjAcchFv();
|
||||
extern "C" void __dt__12dBgS_AcchCirFv();
|
||||
extern "C" void __dt__10fs_tsubo_sFv();
|
||||
extern "C" void __ct__10fs_tsubo_sFv();
|
||||
extern "C" void __dt__9fs_weed_sFv();
|
||||
extern "C" void __ct__9fs_weed_sFv();
|
||||
extern "C" void __ct__4cXyzFv();
|
||||
extern "C" void __dt__8fs_rod_sFv();
|
||||
extern "C" void __ct__8fs_rod_sFv();
|
||||
extern "C" void __dt__9fs_lure_sFv();
|
||||
extern "C" void __ct__9fs_lure_sFv();
|
||||
extern "C" void __sinit_d_a_mg_fshop_cpp();
|
||||
extern "C" static void func_80870070();
|
||||
extern "C" static void func_80870078();
|
||||
extern "C" extern char const* const d_a_mg_fshop__stringBase0;
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void mDoMtx_XrotS__FPA4_fs();
|
||||
extern "C" void mDoMtx_XrotM__FPA4_fs();
|
||||
extern "C" void mDoMtx_YrotS__FPA4_fs();
|
||||
extern "C" void mDoMtx_YrotM__FPA4_fs();
|
||||
extern "C" void mDoMtx_ZrotM__FPA4_fs();
|
||||
extern "C" void push__14mDoMtx_stack_cFv();
|
||||
extern "C" void pop__14mDoMtx_stack_cFv();
|
||||
extern "C" void transM__14mDoMtx_stack_cFfff();
|
||||
extern "C" void scaleM__14mDoMtx_stack_cFfff();
|
||||
extern "C" void mDoExt_modelUpdateDL__FP8J3DModel();
|
||||
extern "C" void init__19mDoExt_3DlineMat0_cFUsUsi();
|
||||
extern "C" void update__19mDoExt_3DlineMat0_cFifR8_GXColorUsP12dKy_tevstr_c();
|
||||
extern "C" void update__19mDoExt_3DlineMat0_cFiR8_GXColorP12dKy_tevstr_c();
|
||||
extern "C" void setMat__26mDoExt_3DlineMatSortPacketFP18mDoExt_3DlineMat_c();
|
||||
extern "C" void mDoExt_J3DModel__create__FP12J3DModelDataUlUl();
|
||||
extern "C" void __ct__10fopAc_ac_cFv();
|
||||
extern "C" void fopAc_IsActor__FPv();
|
||||
extern "C" void fopAcIt_Judge__FPFPvPv_PvPv();
|
||||
extern "C" void fopAcM_create__FsUlPC4cXyziPC5csXyzPC4cXyzSc();
|
||||
extern "C" void fopAcM_createChild__FsUiUlPC4cXyziPC5csXyzPC4cXyzScPFPv_i();
|
||||
extern "C" void fopAcM_entrySolidHeap__FP10fopAc_ac_cPFP10fopAc_ac_c_iUl();
|
||||
extern "C" void fpcEx_Search__FPFPvPv_PvPv();
|
||||
extern "C" void fpcSch_JudgeForPName__FPvPv();
|
||||
extern "C" void addSimpleModel__14dComIfG_play_cFP12J3DModelDataiUc();
|
||||
extern "C" void removeSimpleModel__14dComIfG_play_cFP12J3DModelDatai();
|
||||
extern "C" void entrySimpleModel__14dComIfG_play_cFP8J3DModeli();
|
||||
extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc();
|
||||
extern "C" void dComIfG_resDelete__FP30request_of_phase_process_classPCc();
|
||||
extern "C" void dComIfGd_setSimpleShadow__FP4cXyzffR13cBgS_PolyInfosfP9_GXTexObj();
|
||||
extern "C" void getEventReg__11dSv_event_cCFUs();
|
||||
extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci();
|
||||
extern "C" void
|
||||
set__13dPa_control_cFUlUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf();
|
||||
extern "C" void Release__4cBgSFP9dBgW_Base();
|
||||
extern "C" void LineCross__4cBgSFP11cBgS_LinChk();
|
||||
extern "C" void GroundCross__4cBgSFP11cBgS_GndChk();
|
||||
extern "C" void Regist__4dBgSFP9dBgW_BaseP10fopAc_ac_c();
|
||||
extern "C" void dBgS_MoveBGProc_Typical__FP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz();
|
||||
extern "C" void __ct__12dBgS_AcchCirFv();
|
||||
extern "C" void SetWall__12dBgS_AcchCirFff();
|
||||
extern "C" void __dt__9dBgS_AcchFv();
|
||||
extern "C" void __ct__9dBgS_AcchFv();
|
||||
extern "C" void Set__9dBgS_AcchFP4cXyzP4cXyzP10fopAc_ac_ciP12dBgS_AcchCirP4cXyzP5csXyzP5csXyz();
|
||||
extern "C" void CrrPos__9dBgS_AcchFR4dBgS();
|
||||
extern "C" void OnWallSort__9dBgS_AcchFv();
|
||||
extern "C" void __ct__11dBgS_GndChkFv();
|
||||
extern "C" void __dt__11dBgS_GndChkFv();
|
||||
extern "C" void __ct__11dBgS_LinChkFv();
|
||||
extern "C" void __dt__11dBgS_LinChkFv();
|
||||
extern "C" void Set__11dBgS_LinChkFPC4cXyzPC4cXyzPC10fopAc_ac_c();
|
||||
extern "C" void SetObj__16dBgS_PolyPassChkFv();
|
||||
extern "C" void Set__4cBgWFP6cBgD_tUlPA3_A4_f();
|
||||
extern "C" void __ct__4dBgWFv();
|
||||
extern "C" void Move__4dBgWFv();
|
||||
extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c();
|
||||
extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c();
|
||||
extern "C" void dTimer_getRestTimeMs__Fv();
|
||||
extern "C" void __pl__4cXyzCFRC3Vec();
|
||||
extern "C" void __mi__4cXyzCFRC3Vec();
|
||||
extern "C" void __ml__4cXyzCFf();
|
||||
extern "C" void __ct__5csXyzFsss();
|
||||
extern "C" void cM_atan2s__Fff();
|
||||
extern "C" void cM_rndF__Ff();
|
||||
extern "C" void cM_rndFX__Ff();
|
||||
extern "C" void cM_initRnd2__Fiii();
|
||||
extern "C" void cM_rndF2__Ff();
|
||||
extern "C" void cM_rndFX2__Ff();
|
||||
extern "C" void SetPos__11cBgS_GndChkFPC4cXyz();
|
||||
extern "C" void __dt__13cBgS_PolyInfoFv();
|
||||
extern "C" void __dt__8cM3dGCirFv();
|
||||
extern "C" void cLib_addCalc2__FPffff();
|
||||
extern "C" void cLib_addCalc0__FPfff();
|
||||
extern "C" void cLib_addCalcAngleS2__FPssss();
|
||||
extern "C" void MtxScale__FfffUc();
|
||||
extern "C" void MtxPosition__FP4cXyzP4cXyz();
|
||||
extern "C" void* __nw__FUl();
|
||||
extern "C" void __dl__FPv();
|
||||
extern "C" void __destroy_arr();
|
||||
extern "C" void __construct_array();
|
||||
extern "C" void _savegpr_14();
|
||||
extern "C" void _savegpr_17();
|
||||
extern "C" void _savegpr_18();
|
||||
extern "C" void _savegpr_19();
|
||||
extern "C" void _savegpr_20();
|
||||
extern "C" void _savegpr_21();
|
||||
extern "C" void _savegpr_24();
|
||||
extern "C" void _savegpr_26();
|
||||
extern "C" void _savegpr_27();
|
||||
extern "C" void _savegpr_28();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void _restgpr_14();
|
||||
extern "C" void _restgpr_17();
|
||||
extern "C" void _restgpr_18();
|
||||
extern "C" void _restgpr_19();
|
||||
extern "C" void _restgpr_20();
|
||||
extern "C" void _restgpr_21();
|
||||
extern "C" void _restgpr_24();
|
||||
extern "C" void _restgpr_26();
|
||||
extern "C" void _restgpr_27();
|
||||
extern "C" void _restgpr_28();
|
||||
extern "C" void _restgpr_29();
|
||||
extern "C" extern void* __vt__19mDoExt_3DlineMat0_c[5];
|
||||
extern "C" u8 m_cpadInfo__8mDoCPd_c[256];
|
||||
extern "C" u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" u8 mSimpleTexObj__21dDlst_shadowControl_c[32];
|
||||
extern "C" u8 mCurrentMtx__6J3DSys[48];
|
||||
extern "C" u8 sincosTable___5JMath[65536];
|
||||
extern "C" void __register_global_object();
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* 8086C06C-8086C08C 0000EC 0020+00 1/1 0/0 0/0 .text
|
||||
* ride_call_back__FP4dBgWP10fopAc_ac_cP10fopAc_ac_c */
|
||||
static void ride_call_back(dBgW* param_0, fopAc_ac_c* param_1, fopAc_ac_c* param_2) {
|
||||
|
|
@ -1664,7 +1501,6 @@ static int ball_wall_check(fshop_class* param_1) {
|
|||
}
|
||||
|
||||
/* 8086DA00-8086E6C4 001A80 0CC4+00 2/1 0/0 0/0 .text daFshop_Execute__FP11fshop_class */
|
||||
// NONMATCHING Regalloc, instruction order issues
|
||||
static int daFshop_Execute(fshop_class* param_1) {
|
||||
fopAc_ac_c* pPlayer = dComIfGp_getPlayer(0);
|
||||
cXyz local_c0;
|
||||
|
|
@ -1702,7 +1538,7 @@ static int daFshop_Execute(fshop_class* param_1) {
|
|||
param_1->field_0x428d = 10;
|
||||
case 2:
|
||||
bVar5 = TRUE;
|
||||
param_1->scale.x = 0.24f;
|
||||
param_1->scale.x = 0.24000001f;
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
@ -1713,7 +1549,7 @@ static int daFshop_Execute(fshop_class* param_1) {
|
|||
MtxPosition(¶m_1->speed, ¶m_1->field_0x4064);
|
||||
param_1->field_0x4064 = param_1->speed;
|
||||
param_1->current.pos += param_1->field_0x4064;
|
||||
if (param_1->speed.x != 0.0f || param_1->speed.z != 0.0f) {
|
||||
if (param_1->speed.x || param_1->speed.z) {
|
||||
param_1->current.angle.y = cM_atan2s(param_1->speed.x, param_1->speed.z);
|
||||
}
|
||||
param_1->speed.y -= 3.5f;
|
||||
|
|
@ -1836,7 +1672,7 @@ static int daFshop_Execute(fshop_class* param_1) {
|
|||
(fabsf(local_d8.z) * 0.1f + 0.2f));
|
||||
}
|
||||
}
|
||||
camera_class* pmVar11 = dComIfGp_getCamera(0);
|
||||
camera_class* pmVar11 = (camera_class*)dComIfGp_getCamera(0);
|
||||
mDoMtx_stack_c::transS(param_1->current.pos.x, param_1->current.pos.y,
|
||||
param_1->current.pos.z);
|
||||
mDoMtx_stack_c::scaleM(param_1->scale.x, param_1->scale.x,
|
||||
|
|
@ -2367,13 +2203,19 @@ SECTION_DATA static u8 check_kind[8] = {
|
|||
0xF5, 0x7F, 0xF4, 0x7F, 0xF3, 0x7F, 0xF2, 0x7F,
|
||||
};
|
||||
|
||||
/* 8086F634-8086FD78 0036B4 0744+00 1/0 0/0 0/0 .text daFshop_Create__FP10fopAc_ac_c */
|
||||
static void daFshop_Create(fopAc_ac_c* param_0) {
|
||||
// NONMATCHING
|
||||
fopAcM_ct(param_0, fshop_class);
|
||||
}
|
||||
|
||||
/* 808708BC-808708DC -00001 0020+00 1/0 0/0 0/0 .data l_daFshop_Method */
|
||||
static actor_method_class l_daFshop_Method = {
|
||||
(process_method_func)daFshop_Create__FP10fopAc_ac_c,
|
||||
(process_method_func)daFshop_Delete__FP11fshop_class,
|
||||
(process_method_func)daFshop_Execute__FP11fshop_class,
|
||||
(process_method_func)daFshop_IsDelete__FP11fshop_class,
|
||||
(process_method_func)daFshop_Draw__FP11fshop_class,
|
||||
(process_method_func)daFshop_Create,
|
||||
(process_method_func)daFshop_Delete,
|
||||
(process_method_func)daFshop_Execute,
|
||||
(process_method_func)daFshop_IsDelete,
|
||||
(process_method_func)daFshop_Draw,
|
||||
};
|
||||
|
||||
/* 808708DC-8087090C -00001 0030+00 0/0 0/0 1/0 .data g_profile_FSHOP */
|
||||
|
|
@ -2394,82 +2236,4 @@ extern actor_process_profile_definition g_profile_FSHOP = {
|
|||
fopAc_CULLBOX_0_e, // cullType
|
||||
};
|
||||
|
||||
/* 8086F634-8086FD78 0036B4 0744+00 1/0 0/0 0/0 .text daFshop_Create__FP10fopAc_ac_c */
|
||||
static void daFshop_Create(fopAc_ac_c* param_0) {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
/* 8086FD78-8086FDB4 003DF8 003C+00 1/1 0/0 0/0 .text __dt__10fs_koro2_sFv */
|
||||
fs_koro2_s::~fs_koro2_s() {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
/* 8086FDB4-8086FDB8 003E34 0004+00 1/1 0/0 0/0 .text __ct__10fs_koro2_sFv */
|
||||
// fs_koro2_s::fs_koro2_s() {
|
||||
extern "C" void __ct__10fs_koro2_sFv() {
|
||||
/* empty function */
|
||||
}
|
||||
|
||||
/* 8086FDB8-8086FE28 003E38 0070+00 3/2 0/0 0/0 .text __dt__12dBgS_ObjAcchFv */
|
||||
// dBgS_ObjAcch::~dBgS_ObjAcch() {
|
||||
extern "C" void __dt__12dBgS_ObjAcchFv() {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
/* 8086FE28-8086FE98 003EA8 0070+00 1/0 0/0 0/0 .text __dt__12dBgS_AcchCirFv */
|
||||
// dBgS_AcchCir::~dBgS_AcchCir() {
|
||||
extern "C" void __dt__12dBgS_AcchCirFv() {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
/* 8086FE98-8086FED4 003F18 003C+00 1/1 0/0 0/0 .text __dt__10fs_tsubo_sFv */
|
||||
fs_tsubo_s::~fs_tsubo_s() {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
/* 8086FED4-8086FED8 003F54 0004+00 1/1 0/0 0/0 .text __ct__10fs_tsubo_sFv */
|
||||
// fs_tsubo_s::fs_tsubo_s() {
|
||||
extern "C" void __ct__10fs_tsubo_sFv() {
|
||||
/* empty function */
|
||||
}
|
||||
|
||||
/* 8086FED8-8086FF38 003F58 0060+00 1/1 0/0 0/0 .text __dt__9fs_weed_sFv */
|
||||
fs_weed_s::~fs_weed_s() {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
/* 8086FF38-8086FF80 003FB8 0048+00 1/1 0/0 0/0 .text __ct__9fs_weed_sFv */
|
||||
// fs_weed_s::fs_weed_s() {
|
||||
extern "C" void __ct__9fs_weed_sFv() {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
/* 8086FF80-8086FF84 004000 0004+00 1/1 0/0 0/0 .text __ct__4cXyzFv */
|
||||
// cXyz::cXyz() {
|
||||
extern "C" void __ct__4cXyzFv() {
|
||||
/* empty function */
|
||||
}
|
||||
|
||||
/* 8086FF84-8086FFC0 004004 003C+00 1/1 0/0 0/0 .text __dt__8fs_rod_sFv */
|
||||
fs_rod_s::~fs_rod_s() {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
/* 8086FFC0-8086FFDC 004040 001C+00 1/1 0/0 0/0 .text __ct__8fs_rod_sFv */
|
||||
// fs_rod_s::fs_rod_s() {
|
||||
extern "C" void __ct__8fs_rod_sFv() {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
/* 8086FFDC-80870018 00405C 003C+00 1/1 0/0 0/0 .text __dt__9fs_lure_sFv */
|
||||
fs_lure_s::~fs_lure_s() {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
/* 80870018-8087001C 004098 0004+00 1/1 0/0 0/0 .text __ct__9fs_lure_sFv */
|
||||
// fs_lure_s::fs_lure_s() {
|
||||
extern "C" void __ct__9fs_lure_sFv() {
|
||||
/* empty function */
|
||||
}
|
||||
|
||||
AUDIO_INSTANCES;
|
||||
|
|
|
|||
|
|
@ -1065,7 +1065,6 @@ BOOL daNpcF_c::playAllAnm() {
|
|||
* an animation index for that phase of the expression, the number of interpolation frames, and
|
||||
* the number of loops before moving on to the next phase (or 0 for the last phase).
|
||||
*/
|
||||
// NONMATCHING - regalloc, matches debug
|
||||
void daNpcF_c::playExpressionAnm(daNpcF_c::daNpcF_anmPlayData*** anm) {
|
||||
daNpcF_anmPlayData* playData = NULL;
|
||||
f32 morf;
|
||||
|
|
@ -1105,7 +1104,6 @@ void daNpcF_c::playExpressionAnm(daNpcF_c::daNpcF_anmPlayData*** anm) {
|
|||
* an animation index for that phase of the motion, the number of interpolation frames, and the
|
||||
* number of loops before moving on to the next phase (or 0 for the last phase).
|
||||
*/
|
||||
// NONMATCHING - regalloc, matches debug
|
||||
void daNpcF_c::playMotionAnm(daNpcF_c::daNpcF_anmPlayData*** anm) {
|
||||
daNpcF_anmPlayData* playData = NULL;
|
||||
f32 morf;
|
||||
|
|
@ -1515,16 +1513,16 @@ u8 daNpcF_c::getDistTableIdx(int param_0, int param_1) {
|
|||
}
|
||||
|
||||
/* 801542A0-8015436C 14EBE0 00CC+00 0/0 0/0 6/6 .text getEvtAreaTagP__8daNpcF_cFii */
|
||||
// NONMATCHING regalloc
|
||||
fopAc_ac_c* daNpcF_c::getEvtAreaTagP(int i_type, int i_no) {
|
||||
int r29 = 0;
|
||||
f32 f31 = G_CM3D_F_INF;
|
||||
mFindCount = 0;
|
||||
mSrchActorName = PROC_TAG_EVTAREA;
|
||||
fpcM_Search(this->srchActor, this);
|
||||
|
||||
for (int i = 0; i < mFindCount; i++) {
|
||||
daTag_EvtArea_c* evt_area = static_cast<daTag_EvtArea_c*>(mFindActorPList[i]);
|
||||
if (i_type == evt_area->getType() && i_no == evt_area->getNo()) {
|
||||
return evt_area;
|
||||
if (i_type == static_cast<daTag_EvtArea_c*>(mFindActorPList[i])->getType() && i_no == static_cast<daTag_EvtArea_c*>(mFindActorPList[i])->getNo()) {
|
||||
return static_cast<daTag_EvtArea_c*>(mFindActorPList[i]);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -209,11 +209,11 @@ static char* l_myName = "Ash";
|
|||
|
||||
daNpcAsh_c::EventFn daNpcAsh_c::mEvtSeqList[6] = {
|
||||
NULL,
|
||||
&EvCut_Introduction,
|
||||
&EvCut_Meeting,
|
||||
&EvCut_WiretapSponsor,
|
||||
&EvCut_WiretapEntrant,
|
||||
&EvCut_WiretapEntrant,
|
||||
&daNpcAsh_c::EvCut_Introduction,
|
||||
&daNpcAsh_c::EvCut_Meeting,
|
||||
&daNpcAsh_c::EvCut_WiretapSponsor,
|
||||
&daNpcAsh_c::EvCut_WiretapEntrant,
|
||||
&daNpcAsh_c::EvCut_WiretapEntrant,
|
||||
};
|
||||
|
||||
/* 809582EC-80958430 0000EC 0144+00 1/1 0/0 0/0 .text __ct__10daNpcAsh_cFv */
|
||||
|
|
@ -623,9 +623,9 @@ void daNpcAsh_c::reset() {
|
|||
}
|
||||
|
||||
if (mType == TYPE_BAR) {
|
||||
setAction(&wait_type0);
|
||||
setAction(&daNpcAsh_c::wait_type0);
|
||||
} else {
|
||||
setAction(&wait_type1);
|
||||
setAction(&daNpcAsh_c::wait_type1);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -845,12 +845,12 @@ bool daNpcAsh_c::wait_type0(void* param_0) {
|
|||
mOrderEvtNo = 3;
|
||||
changeEvent(l_arcNames[0], l_evtNames[mOrderEvtNo], 1, -1);
|
||||
} else {
|
||||
setAction(&talk);
|
||||
setAction(&daNpcAsh_c::talk);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
if (dComIfGp_getEventManager().getMyStaffId(l_myName, NULL, 0) != -1) {
|
||||
setAction(&demo);
|
||||
setAction(&daNpcAsh_c::demo);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
|
@ -918,7 +918,7 @@ bool daNpcAsh_c::wait_type1(void* param_0) {
|
|||
|
||||
case 1:
|
||||
if (daNpcF_chkTmpBit(0x74)) {
|
||||
setAction(&leave);
|
||||
setAction(&daNpcAsh_c::leave);
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
|
@ -955,7 +955,7 @@ bool daNpcAsh_c::talk(void* param_0) {
|
|||
if (field_0xf5f <= 2 || mCurAngle.y == fopAcM_searchPlayerAngleY(this)) {
|
||||
if (talkProc(NULL, 1, NULL)) {
|
||||
mActorMngr[0].entry(daPy_getPlayerActorClass());
|
||||
setAction(&wait_type0);
|
||||
setAction(&daNpcAsh_c::wait_type0);
|
||||
ret = true;
|
||||
} else {
|
||||
s32 prev_msg_timer = mMsgTimer;
|
||||
|
|
@ -1024,18 +1024,18 @@ bool daNpcAsh_c::demo(void* param_0) {
|
|||
mOrderEvtNo = 0;
|
||||
mEventIdx = -1;
|
||||
if (mType == TYPE_BAR) {
|
||||
setAction(&wait_type0);
|
||||
setAction(&daNpcAsh_c::wait_type0);
|
||||
} else {
|
||||
setAction(&wait_type1);
|
||||
setAction(&daNpcAsh_c::wait_type1);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
mOrderEvtNo = 0;
|
||||
mEventIdx = -1;
|
||||
if (mType == TYPE_BAR) {
|
||||
setAction(&wait_type0);
|
||||
setAction(&daNpcAsh_c::wait_type0);
|
||||
} else {
|
||||
setAction(&wait_type1);
|
||||
setAction(&daNpcAsh_c::wait_type1);
|
||||
}
|
||||
}
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -99,7 +99,7 @@ static char* l_myName = "AshB";
|
|||
/* 809625B0-809625C8 000198 0018+00 1/2 0/0 0/0 .data mEvtSeqList__11daNpcAshB_c */
|
||||
daNpcAshB_c::EventFn daNpcAshB_c::mEvtSeqList[2] = {
|
||||
NULL,
|
||||
&EvCut_Appear,
|
||||
&daNpcAshB_c::EvCut_Appear,
|
||||
};
|
||||
|
||||
/* 8095DE4C-8095DFD0 0000EC 0184+00 1/1 0/0 0/0 .text __ct__11daNpcAshB_cFv */
|
||||
|
|
@ -605,7 +605,7 @@ void daNpcAshB_c::reset() {
|
|||
field_0xded = 0;
|
||||
field_0xdee = 0;
|
||||
|
||||
setAction(&wait);
|
||||
setAction(&daNpcAshB_c::wait);
|
||||
}
|
||||
|
||||
/* 8095F21C-8095F2C4 0014BC 00A8+00 1/1 0/0 0/0 .text
|
||||
|
|
@ -734,7 +734,7 @@ bool daNpcAshB_c::wait(void* param_0) {
|
|||
u8 preitemno = dComIfGp_event_getPreItemNo();
|
||||
if (preitemno == fpcNm_ITEM_ASHS_SCRIBBLING) {
|
||||
mFlowID = 504;
|
||||
setAction(&talk);
|
||||
setAction(&daNpcAshB_c::talk);
|
||||
} else {
|
||||
s16 evt_idx =
|
||||
dComIfGp_getEventManager().getEventIdx(this, "NO_RESPONSE", 0xff);
|
||||
|
|
@ -743,12 +743,12 @@ bool daNpcAshB_c::wait(void* param_0) {
|
|||
}
|
||||
}
|
||||
} else {
|
||||
setAction(&talk);
|
||||
setAction(&daNpcAshB_c::talk);
|
||||
}
|
||||
} else {
|
||||
int mystaffid = dComIfGp_getEventManager().getMyStaffId(l_myName, NULL, 0);
|
||||
if (mystaffid != -1) {
|
||||
setAction(&demo);
|
||||
setAction(&daNpcAshB_c::demo);
|
||||
}
|
||||
}
|
||||
} else {
|
||||
|
|
@ -857,10 +857,10 @@ bool daNpcAshB_c::talk(void* param_0) {
|
|||
dComIfGp_getEvent().reset(this);
|
||||
fopAcM_orderChangeEventId(this, evt_idx, 1, -1);
|
||||
field_0x9ec = 1;
|
||||
setAction(&wait);
|
||||
setAction(&daNpcAshB_c::wait);
|
||||
}
|
||||
} else {
|
||||
setAction(&wait);
|
||||
setAction(&daNpcAshB_c::wait);
|
||||
}
|
||||
|
||||
ret = true;
|
||||
|
|
@ -906,6 +906,7 @@ bool daNpcAshB_c::talk(void* param_0) {
|
|||
// NONMATCHING - extra instruction at dComIfGp_event_runCheck() causing regalloc issues?
|
||||
bool daNpcAshB_c::demo(void* param_0) {
|
||||
dEvent_manager_c& evtmgr = dComIfGp_getEventManager();
|
||||
BOOL r26 = FALSE;
|
||||
|
||||
switch (mMode) {
|
||||
case 0:
|
||||
|
|
@ -915,13 +916,15 @@ bool daNpcAshB_c::demo(void* param_0) {
|
|||
// fallthrough
|
||||
|
||||
case 2:
|
||||
if (dComIfGp_event_runCheck() != 0 && !eventInfo.checkCommandTalk()) {
|
||||
if (dComIfGp_event_runCheck() != FALSE && !eventInfo.checkCommandTalk()) {
|
||||
s32 staff_id = evtmgr.getMyStaffId(l_myName, NULL, 0);
|
||||
if (staff_id != -1) {
|
||||
mStaffID = staff_id;
|
||||
JUT_ASSERT(1523, mEvtSeqList[mOrderEvtNo] != 0);
|
||||
if ((this->*(mEvtSeqList[mOrderEvtNo]))(staff_id)) {
|
||||
evtmgr.cutEnd(staff_id);
|
||||
}
|
||||
r26 = TRUE;
|
||||
}
|
||||
|
||||
if (eventInfo.checkCommandDemoAccrpt() && mEventIdx != -1 && evtmgr.endCheck(mEventIdx))
|
||||
|
|
@ -929,7 +932,7 @@ bool daNpcAshB_c::demo(void* param_0) {
|
|||
dComIfGp_event_reset();
|
||||
mOrderEvtNo = 0;
|
||||
mEventIdx = -1;
|
||||
setAction(&wait);
|
||||
setAction(&daNpcAshB_c::wait);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -937,6 +940,9 @@ bool daNpcAshB_c::demo(void* param_0) {
|
|||
|
||||
case 3:
|
||||
break;
|
||||
|
||||
default:
|
||||
JUT_ASSERT(1551, FALSE);
|
||||
}
|
||||
|
||||
return true;
|
||||
|
|
|
|||
|
|
@ -396,7 +396,6 @@ daNpcCd_HIO_c l_Cd_HIO;
|
|||
|
||||
/* 801563C8-80156B4C 150D08 0784+00 0/0 0/0 2/2 .text setAttention__9daNpcCd_cFi */
|
||||
int daNpcCd_c::setAttention(int i_idx) {
|
||||
// NONMATCHING
|
||||
static cXyz const a_eyeOfsTbl[30] = {
|
||||
cXyz(0.0f, 10.0f, 0.0f), cXyz(0.0f, 10.0f, 0.0f), cXyz(0.0f, 10.0f, 0.0f),
|
||||
cXyz(0.0f, 10.0f, 0.0f), cXyz(0.0f, 10.0f, 0.0f), cXyz(0.0f, 10.0f, 0.0f),
|
||||
|
|
|
|||
|
|
@ -426,11 +426,8 @@ void daNpcCdn3_c::executePath() {
|
|||
m_path.setNextPoint(current.pos);
|
||||
} else {
|
||||
if (mSeqNum < 0 || mSeqNum >= 44) {
|
||||
#ifdef DEBUG
|
||||
JUT_PANIC(517, 0);
|
||||
#else
|
||||
OSReport_Error("城下町の町人 パス点引数設定値異常 引数1モーションシーケンス=%dが異常です。\n", mSeqNum);
|
||||
#endif
|
||||
JUT_ASSERT(517, FALSE);
|
||||
}
|
||||
field_0xb68 = 0;
|
||||
setAction(MODE_WAIT);
|
||||
|
|
@ -505,7 +502,7 @@ void daNpcCdn3_c::executePath() {
|
|||
}
|
||||
break;
|
||||
default:
|
||||
JUT_PANIC(598, 0);
|
||||
JUT_ASSERT(598, FALSE);
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
@ -650,7 +647,7 @@ void daNpcCdn3_c::executeTalk() {
|
|||
setAngle();
|
||||
return;
|
||||
default:
|
||||
JUT_PANIC(741, 0);
|
||||
JUT_ASSERT(741, FALSE);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1040,7 +1037,7 @@ void daNpcCdn3_c::setSchedule(daTagSchedule_c* param_1) {
|
|||
mFlowNodeNum = mTagSched->getFlowNodeNum();
|
||||
if (mSeqNum < 0 || mSeqNum >= 44) {
|
||||
OSReport_Error("城下町の町人 スケジュールタグ設定値異常 引数1モーションシーケンス=%dが異常です。\n", mSeqNum);
|
||||
JUT_PANIC(1825, 0);
|
||||
JUT_ASSERT(1825, FALSE);
|
||||
}
|
||||
if (mTagSched->getStartEnd() == 0) {
|
||||
current.pos.set(m_path.getPoint(0));
|
||||
|
|
@ -1081,7 +1078,7 @@ void daNpcCdn3_c::setSchedule(daTagSchedule_c* param_1) {
|
|||
dayStr = "土";
|
||||
break;
|
||||
default:
|
||||
JUT_PANIC(1856, 0);
|
||||
JUT_ASSERT(1856, FALSE);
|
||||
break;
|
||||
}
|
||||
OS_REPORT("町人スケジュールセット\n");
|
||||
|
|
@ -1574,7 +1571,7 @@ int daNpcCdn3_c::create() {
|
|||
mFlowNodeNum = getFlowNodeNum();
|
||||
if (mSeqNum < 0 || 44 <= mSeqNum) {
|
||||
OSReport_Error("城下町の町人 マップツール設定値異常 引数1モーションシーケンス=%dが異常です。\n", mSeqNum);
|
||||
JUT_PANIC(175, 0);
|
||||
JUT_ASSERT(175, FALSE);
|
||||
}
|
||||
int rv = loadResrc(m_type, mObjNum);
|
||||
if (rv == cPhs_COMPLEATE_e) {
|
||||
|
|
|
|||
|
|
@ -1884,14 +1884,7 @@ enum Event_Cut_Nums {
|
|||
BOOL daNpc_grA_c::doEvent() {
|
||||
dEvent_manager_c* manager = NULL;
|
||||
BOOL ret = FALSE;
|
||||
#if VERSION != VERSION_SHIELD_DEBUG
|
||||
// TODO: gameInfo fake match to force reuse of pointer
|
||||
dComIfG_play_c* play = &g_dComIfG_gameInfo.play;
|
||||
if (play->getEvent().runCheck())
|
||||
#else
|
||||
if (dComIfGp_event_runCheck())
|
||||
#endif
|
||||
{
|
||||
if (dComIfGp_event_runCheck() != FALSE) {
|
||||
manager = &dComIfGp_getEventManager();
|
||||
if (field_0x1691 == 0) {
|
||||
mOrderNewEvt = 0;
|
||||
|
|
@ -1936,41 +1929,25 @@ BOOL daNpc_grA_c::doEvent() {
|
|||
if (eventInfo.checkCommandDemoAccrpt() && mEventIdx != -1 && manager->endCheck(mEventIdx)) {
|
||||
switch (mOrderEvtNo) {
|
||||
case 5:
|
||||
#if VERSION != VERSION_SHIELD_DEBUG
|
||||
play->getEvent().reset();
|
||||
#else
|
||||
dComIfGp_event_reset();
|
||||
#endif
|
||||
mOrderEvtNo = 0;
|
||||
mEventIdx = -1;
|
||||
field_0x1693 = field_0x1692 = 0;
|
||||
fpcM_Search(s_subCarry, this);
|
||||
break;
|
||||
case 6:
|
||||
#if VERSION != VERSION_SHIELD_DEBUG
|
||||
play->getEvent().reset();
|
||||
#else
|
||||
dComIfGp_event_reset();
|
||||
#endif
|
||||
mOrderEvtNo = 0;
|
||||
mEventIdx = -1;
|
||||
break;
|
||||
case 7:
|
||||
#if VERSION != VERSION_SHIELD_DEBUG
|
||||
play->getEvent().reset();
|
||||
#else
|
||||
dComIfGp_event_reset();
|
||||
#endif
|
||||
mOrderEvtNo = 0;
|
||||
mEventIdx = -1;
|
||||
fopAcM_delete(this);
|
||||
break;
|
||||
default:
|
||||
#if VERSION != VERSION_SHIELD_DEBUG
|
||||
play->getEvent().reset();
|
||||
#else
|
||||
dComIfGp_event_reset();
|
||||
#endif
|
||||
mOrderEvtNo = 0;
|
||||
mEventIdx = -1;
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -1516,7 +1516,7 @@ static void demo_camera_shop(npc_henna_class* i_this) {
|
|||
case 7:
|
||||
i_this->mMsgFlow.init(actor, 0x33e, 0, NULL);
|
||||
break;
|
||||
case 8:
|
||||
case 8: {
|
||||
dScnKy_env_light_c* kankyo = dKy_getEnvlight();
|
||||
if (kankyo->raincnt == 0) {
|
||||
hour = kankyo->daytime / 15.0f;
|
||||
|
|
@ -1529,6 +1529,7 @@ static void demo_camera_shop(npc_henna_class* i_this) {
|
|||
i_this->mMsgFlow.init(actor, 0x347, 0, NULL);
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 0xb:
|
||||
i_this->mMsgFlow.init(actor, 0x35f, 0, NULL);
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -900,14 +900,7 @@ bool daNpcImpal_c::demo(void* param_0) {
|
|||
setMotion(MOT_0, -1.0f, false);
|
||||
mMode = 2;
|
||||
case 2: {
|
||||
#if VERSION != VERSION_SHIELD_DEBUG
|
||||
// TODO: gameInfo fake match to force reuse of pointer
|
||||
dComIfG_play_c* play = &g_dComIfG_gameInfo.play;
|
||||
if (play->getEvent().runCheck() && !eventInfo.checkCommandTalk())
|
||||
#else
|
||||
if (dComIfGp_event_runCheck() && !eventInfo.checkCommandTalk())
|
||||
#endif
|
||||
{
|
||||
if (dComIfGp_event_runCheck() != FALSE && !eventInfo.checkCommandTalk()) {
|
||||
dEvent_manager_c& event_manager = dComIfGp_getEventManager();
|
||||
|
||||
s32 staff_id = dComIfGp_evmng_getMyStaffId(l_myName, NULL, 0);
|
||||
|
|
@ -923,11 +916,7 @@ bool daNpcImpal_c::demo(void* param_0) {
|
|||
event_manager.endCheck(mEventIdx))
|
||||
{
|
||||
if (!field_0x9ec) {
|
||||
#if VERSION != VERSION_SHIELD_DEBUG
|
||||
play->getEvent().reset();
|
||||
#else
|
||||
dComIfGp_event_reset();
|
||||
#endif
|
||||
}
|
||||
|
||||
field_0x9ec = 0;
|
||||
|
|
|
|||
|
|
@ -555,13 +555,13 @@ static void npc_ks_pole_ori(npc_ks_class* i_this) {
|
|||
a_this->current.angle.y = ((obj_so_class*)actor_p)->actor.shape_angle.y;
|
||||
a_this->current.angle.x = ((obj_so_class*)actor_p)->actor.shape_angle.x;
|
||||
a_this->current.pos = ((obj_so_class*)actor_p)->actor.current.pos;
|
||||
// The following causes regswap in the debug build when uncommented...
|
||||
//a_this->current.pos.y += TREG_F(3);
|
||||
a_this->current.pos.y += TREG_F(3);
|
||||
|
||||
if (leader->field_0xb42 == 0) {
|
||||
if (!dComIfGs_isSwitch(20, fopAcM_GetRoomNo(a_this))) {
|
||||
cXyz sp2c(11497.0f, 3764.0f, 3810.0f);
|
||||
sp2c -= dComIfGp_getPlayer(0)->current.pos;
|
||||
daPy_py_c* player = (daPy_py_c*)dComIfGp_getPlayer(0);
|
||||
sp2c -= player->current.pos;
|
||||
sp2c.y = 0.0f;
|
||||
if (sp2c.abs() < 300.0f) {
|
||||
leader->field_0xb42 = 110;
|
||||
|
|
|
|||
|
|
@ -996,7 +996,7 @@ bool daNpcRafrel_c::wait_type01(void* param_0) {
|
|||
speedF = 0.0f;
|
||||
field_0xe10 = 2;
|
||||
break;
|
||||
case 2:
|
||||
case 2: {
|
||||
if (isSneaking()) {
|
||||
setLookMode(LOOK_NONE, NULL);
|
||||
} else if (field_0xe14 != 0 && mType == 1) {
|
||||
|
|
@ -1105,6 +1105,7 @@ bool daNpcRafrel_c::wait_type01(void* param_0) {
|
|||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 3:
|
||||
default:
|
||||
JUT_ASSERT(1634, FALSE);
|
||||
|
|
|
|||
|
|
@ -269,7 +269,6 @@ void daNpc_seiC_c::reset() {
|
|||
|
||||
/* 80AC7C1C-80AC7D34 0007BC 0118+00 1/0 0/0 0/0 .text setParam__12daNpc_seiC_cFv */
|
||||
void daNpc_seiC_c::setParam() {
|
||||
// NONMATCHING
|
||||
selectAction();
|
||||
srchActors();
|
||||
|
||||
|
|
|
|||
|
|
@ -191,7 +191,7 @@ int daNpc_Shop0_c::init() {
|
|||
eventInfo.setArchiveName(getResName());
|
||||
field_0x9e8 = -1;
|
||||
|
||||
setProcess(daNpc_Shop0_c::wait, NULL, 0);
|
||||
setProcess(&daNpc_Shop0_c::wait, NULL, 0);
|
||||
setRoomInf();
|
||||
return execute();
|
||||
}
|
||||
|
|
@ -347,7 +347,7 @@ int daNpc_Shop0_c::talk(void* i_stat_loc) {
|
|||
break;
|
||||
case 1:
|
||||
if (cut_alert(-1, 0) != 0) {
|
||||
setProcess(daNpc_Shop0_c::wait, NULL, 0);
|
||||
setProcess(&daNpc_Shop0_c::wait, NULL, 0);
|
||||
}
|
||||
break;
|
||||
case 2:
|
||||
|
|
|
|||
|
|
@ -177,14 +177,14 @@ char* daNpcThe_c::mEvtCutNameList[4] = {
|
|||
|
||||
daNpcThe_c::EventFn daNpcThe_c::mEvtCutList[4] = {
|
||||
NULL,
|
||||
&EvCut_TwResistance,
|
||||
&EvCut_TwResistance,
|
||||
&EvCut_Introduction,
|
||||
&daNpcThe_c::EvCut_TwResistance,
|
||||
&daNpcThe_c::EvCut_TwResistance,
|
||||
&daNpcThe_c::EvCut_Introduction,
|
||||
};
|
||||
|
||||
int daNpcThe_c::Draw() {
|
||||
mpMorf->getModel()->getModelData()->getMaterialNodePointer(2)->setMaterialAnm(mpMatAnm);
|
||||
ActionFn action_test = &test;
|
||||
ActionFn action_test = &daNpcThe_c::test;
|
||||
int is_test = mpActionFn == action_test;
|
||||
return draw(is_test, false, mpHIO->m.common.real_shadow_size, NULL, false);
|
||||
}
|
||||
|
|
@ -1114,11 +1114,11 @@ void daNpcThe_c::setParam() {
|
|||
ActionFn next_action = mpNextActionFn;
|
||||
mpNextActionFn = NULL;
|
||||
if (mpHIO->m.common.debug_mode_ON) {
|
||||
mpNextActionFn = &test;
|
||||
mpNextActionFn = &daNpcThe_c::test;
|
||||
} else if (mTwilight) {
|
||||
mpNextActionFn = &waitTW;
|
||||
mpNextActionFn = &daNpcThe_c::waitTW;
|
||||
} else {
|
||||
mpNextActionFn = &wait;
|
||||
mpNextActionFn = &daNpcThe_c::wait;
|
||||
}
|
||||
if (mpNextActionFn != next_action) {
|
||||
for (int i = 3; i < 3; i++) {
|
||||
|
|
@ -1162,7 +1162,7 @@ void daNpcThe_c::setParam() {
|
|||
// NONMATCHING dComIfG_gameInfo issues
|
||||
BOOL daNpcThe_c::main() {
|
||||
if (!doEvent()) {
|
||||
doNormalAction();
|
||||
doNormalAction(1);
|
||||
}
|
||||
|
||||
if (field_0x9ee) {
|
||||
|
|
@ -1251,17 +1251,17 @@ BOOL daNpcThe_c::doEvent() {
|
|||
u8 item_no = dComIfGp_event_getPreItemNo();
|
||||
if (item_no == 0x80) {
|
||||
mFlowID = 0x430;
|
||||
if (chkAction(&talk)) {
|
||||
if (chkAction(&daNpcThe_c::talk)) {
|
||||
(this->*mpActionFn)(NULL);
|
||||
} else {
|
||||
setAction(&talk);
|
||||
setAction(&daNpcThe_c::talk);
|
||||
}
|
||||
} else if (item_no == 0x81) {
|
||||
mFlowID = 0x431;
|
||||
if (chkAction(&talk)) {
|
||||
if (chkAction(&daNpcThe_c::talk)) {
|
||||
(this->*mpActionFn)(NULL);
|
||||
} else {
|
||||
setAction(&talk);
|
||||
setAction(&daNpcThe_c::talk);
|
||||
}
|
||||
} else {
|
||||
s16 event_idx =
|
||||
|
|
@ -1270,10 +1270,10 @@ BOOL daNpcThe_c::doEvent() {
|
|||
fopAcM_orderChangeEventId(this, event_idx, 1, 0xffff);
|
||||
}
|
||||
} else {
|
||||
if (chkAction(&talk)) {
|
||||
if (chkAction(&daNpcThe_c::talk)) {
|
||||
(this->*mpActionFn)(NULL);
|
||||
} else {
|
||||
setAction(&talk);
|
||||
setAction(&daNpcThe_c::talk);
|
||||
}
|
||||
}
|
||||
ret = true;
|
||||
|
|
|
|||
|
|
@ -1621,7 +1621,7 @@ inline bool daNpcWrestler_c::wait(void* param_1) {
|
|||
}
|
||||
|
||||
default: {
|
||||
JUT_PANIC(2769, "0")
|
||||
JUT_ASSERT(2769, FALSE);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -1772,7 +1772,7 @@ inline bool daNpcWrestler_c::talk(void* param_1) {
|
|||
}
|
||||
|
||||
default: {
|
||||
JUT_PANIC(2858, "0");
|
||||
JUT_ASSERT(2858, FALSE);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -1815,7 +1815,7 @@ inline bool daNpcWrestler_c::demo(void* param_1) {
|
|||
}
|
||||
|
||||
default: {
|
||||
JUT_PANIC(2912, "0");
|
||||
JUT_ASSERT(2912, FALSE);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -1876,7 +1876,7 @@ inline bool daNpcWrestler_c::gotoArena(void* param_1) {
|
|||
}
|
||||
|
||||
default: {
|
||||
JUT_PANIC(2969, "0");
|
||||
JUT_ASSERT(2969, FALSE);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -1887,7 +1887,7 @@ inline bool daNpcWrestler_c::gotoArena(void* param_1) {
|
|||
}
|
||||
|
||||
default: {
|
||||
JUT_PANIC(2974, "0");
|
||||
JUT_ASSERT(2974, FALSE);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -1944,7 +1944,7 @@ inline bool daNpcWrestler_c::gotoLiving(void* param_1) {
|
|||
}
|
||||
|
||||
default: {
|
||||
JUT_PANIC(3032, "0");
|
||||
JUT_ASSERT(3032, FALSE);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -1955,7 +1955,7 @@ inline bool daNpcWrestler_c::gotoLiving(void* param_1) {
|
|||
}
|
||||
|
||||
default: {
|
||||
JUT_PANIC(3037, "0");
|
||||
JUT_ASSERT(3037, FALSE);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -2119,7 +2119,7 @@ bool daNpcWrestler_c::sumouReady(void* param_1) {
|
|||
break;
|
||||
|
||||
default:
|
||||
JUT_PANIC(3181, "0");
|
||||
JUT_ASSERT(3181, FALSE);
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
@ -2371,7 +2371,7 @@ inline bool daNpcWrestler_c::sumouPunchHit(void* param_1) {
|
|||
}
|
||||
|
||||
default: {
|
||||
JUT_PANIC(3411, "0");
|
||||
JUT_ASSERT(3411, FALSE);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -2552,7 +2552,7 @@ inline bool daNpcWrestler_c::sumouPunchMiss(void* param_1) {
|
|||
}
|
||||
|
||||
default: {
|
||||
JUT_PANIC(3579, "0");
|
||||
JUT_ASSERT(3579, FALSE);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -2670,8 +2670,7 @@ bool daNpcWrestler_c::sumouPunchDraw(void* param_1) {
|
|||
|
||||
/* 80B3606C-80B36908 006ECC 089C+00 5/0 0/0 0/0 .text sumouTackleHit__15daNpcWrestler_cFPv */
|
||||
bool daNpcWrestler_c::sumouTackleHit(void* param_1) {
|
||||
// NONMATCHING - regalloc
|
||||
daPy_py_c* player = daPy_getPlayerActorClass();
|
||||
daPy_py_c* player = (daPy_py_c*)daPy_getPlayerActorClass();
|
||||
int jointNo = mType == 0 ? 0 : 0;
|
||||
cXyz sp2c;
|
||||
|
||||
|
|
@ -3028,7 +3027,7 @@ inline bool daNpcWrestler_c::sumouSideStep(void* param_1) {
|
|||
}
|
||||
|
||||
default: {
|
||||
JUT_PANIC(4008, "0");
|
||||
JUT_ASSERT(4008, FALSE);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -3154,7 +3153,7 @@ inline bool daNpcWrestler_c::sumouPunchChaseShock(void* param_1) {
|
|||
break;
|
||||
|
||||
default:
|
||||
JUT_PANIC(4149, "0");
|
||||
JUT_ASSERT(4149, FALSE);
|
||||
}
|
||||
|
||||
return true;
|
||||
|
|
@ -3237,7 +3236,6 @@ bool daNpcWrestler_c::sumouTackleStagger(void* param_1) {
|
|||
daPy_py_c* player = daPy_getPlayerActorClass();
|
||||
int jointNo = mType == 0 ? 0x1A : 0x18;
|
||||
int jointNo2 = mType == 0 ? 0x1E : 0x1B;
|
||||
cXyz sp58;
|
||||
f32 fVar1, fVar2;
|
||||
|
||||
switch (field_0xe96) {
|
||||
|
|
@ -3249,8 +3247,9 @@ bool daNpcWrestler_c::sumouTackleStagger(void* param_1) {
|
|||
field_0xe96 = 2;
|
||||
break;
|
||||
|
||||
case 2:
|
||||
case 2: {
|
||||
correctGraspPosAngle(true);
|
||||
cXyz sp58;
|
||||
mDoMtx_stack_c::copy(mpMorf->getModel()->getAnmMtx(jointNo));
|
||||
mDoMtx_stack_c::multVecZero(&sp58);
|
||||
sp58.y = current.pos.y;
|
||||
|
|
@ -3282,10 +3281,14 @@ bool daNpcWrestler_c::sumouTackleStagger(void* param_1) {
|
|||
setAction(&daNpcWrestler_c::sumouTackleStaggerRelease);
|
||||
}
|
||||
break;
|
||||
|
||||
}
|
||||
case 3:
|
||||
player->setSumouForceGraspCancel();
|
||||
break;
|
||||
|
||||
default:
|
||||
JUT_ASSERT(4311, FALSE);
|
||||
break;
|
||||
}
|
||||
|
||||
return true;
|
||||
|
|
@ -3382,7 +3385,7 @@ inline bool daNpcWrestler_c::sumouTacklePush(void* param_1) {
|
|||
break;
|
||||
|
||||
default: {
|
||||
JUT_PANIC(4435, "0");
|
||||
JUT_ASSERT(4435, FALSE);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -3718,7 +3721,7 @@ inline bool daNpcWrestler_c::demoSumouReady(void* param_1) {
|
|||
break;
|
||||
|
||||
default:
|
||||
JUT_PANIC(4821, "0");
|
||||
JUT_ASSERT(4821, FALSE);
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
@ -3732,7 +3735,7 @@ inline bool daNpcWrestler_c::demoSumouReady(void* param_1) {
|
|||
break;
|
||||
|
||||
default:
|
||||
JUT_PANIC(4828, "0");
|
||||
JUT_ASSERT(4828, FALSE);
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
@ -4218,7 +4221,7 @@ bool daNpcWrestler_c::demoSumouLose2(void* param_1) {
|
|||
}
|
||||
|
||||
default:
|
||||
JUT_PANIC(5347, "0");
|
||||
JUT_ASSERT(5347, FALSE);
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
@ -4232,7 +4235,7 @@ bool daNpcWrestler_c::demoSumouLose2(void* param_1) {
|
|||
break;
|
||||
|
||||
default:
|
||||
JUT_PANIC(5355, "0");
|
||||
JUT_ASSERT(5355, FALSE);
|
||||
}
|
||||
|
||||
return true;
|
||||
|
|
@ -4339,7 +4342,7 @@ inline bool daNpcWrestler_c::demoSumouUnilateralWin(void* param_1) {
|
|||
}
|
||||
|
||||
default:
|
||||
JUT_PANIC(5478, "0");
|
||||
JUT_ASSERT(5478, FALSE);
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
@ -4353,7 +4356,7 @@ inline bool daNpcWrestler_c::demoSumouUnilateralWin(void* param_1) {
|
|||
break;
|
||||
|
||||
default:
|
||||
JUT_PANIC(5486, "0");
|
||||
JUT_ASSERT(5486, FALSE);
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
@ -4429,7 +4432,7 @@ inline bool daNpcWrestler_c::demoTalkAfterLose(void* param_1) {
|
|||
break;
|
||||
|
||||
default:
|
||||
JUT_PANIC(5571, "0");
|
||||
JUT_ASSERT(5571, FALSE);
|
||||
break;
|
||||
}
|
||||
break;
|
||||
|
|
@ -4440,7 +4443,7 @@ inline bool daNpcWrestler_c::demoTalkAfterLose(void* param_1) {
|
|||
break;
|
||||
|
||||
default:
|
||||
JUT_PANIC(5579, "0");
|
||||
JUT_ASSERT(5579, FALSE);
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
@ -4482,7 +4485,7 @@ inline BOOL daNpcWrestler_c::EvCut_grDSEntry(int i_cutIndex) {
|
|||
break;
|
||||
|
||||
default:
|
||||
JUT_PANIC(5622, "0");
|
||||
JUT_ASSERT(5622, FALSE);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -4554,7 +4557,7 @@ inline BOOL daNpcWrestler_c::EvCut_grDSEntry(int i_cutIndex) {
|
|||
}
|
||||
|
||||
default: {
|
||||
JUT_PANIC(5688, "0");
|
||||
JUT_ASSERT(5688, FALSE);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -4576,7 +4579,7 @@ inline BOOL daNpcWrestler_c::EvCut_grDSEntry2(int i_cutIndex) {
|
|||
break;
|
||||
|
||||
default:
|
||||
JUT_PANIC(5715, "0");
|
||||
JUT_ASSERT(5715, FALSE);
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -4594,7 +4597,7 @@ inline BOOL daNpcWrestler_c::EvCut_grDSEntry2(int i_cutIndex) {
|
|||
return TRUE;
|
||||
|
||||
default:
|
||||
JUT_PANIC(5735, "0");
|
||||
JUT_ASSERT(5735, FALSE);
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -217,11 +217,11 @@ char* daNpc_Yelia_c::mCutNameList[6] = {
|
|||
/* 80B530B8-80B53100 000BDC 0048+00 1/2 0/0 0/0 .data mCutList__13daNpc_Yelia_c */
|
||||
BOOL (daNpc_Yelia_c::*daNpc_Yelia_c::mCutList[6])(int) = {
|
||||
NULL,
|
||||
&cutConversationAboutLoopHole,
|
||||
&cutTWResistance,
|
||||
&cutTakeWoodStatue,
|
||||
&cutClothTry,
|
||||
&cutThankYou,
|
||||
&daNpc_Yelia_c::cutConversationAboutLoopHole,
|
||||
&daNpc_Yelia_c::cutTWResistance,
|
||||
&daNpc_Yelia_c::cutTakeWoodStatue,
|
||||
&daNpc_Yelia_c::cutClothTry,
|
||||
&daNpc_Yelia_c::cutThankYou,
|
||||
};
|
||||
|
||||
enum Type {
|
||||
|
|
@ -645,7 +645,7 @@ void daNpc_Yelia_c::setParam() {
|
|||
/* 80B4E2C0-80B4E5BC 0010A0 02FC+00 1/0 0/0 0/0 .text checkChangeEvt__13daNpc_Yelia_cFv
|
||||
*/
|
||||
BOOL daNpc_Yelia_c::checkChangeEvt() {
|
||||
if (!chkAction(&talk)) {
|
||||
if (!chkAction(&daNpc_Yelia_c::talk)) {
|
||||
mPreItemNo = 0;
|
||||
if (dComIfGp_event_chkTalkXY()) {
|
||||
if (dComIfGp_evmng_ChkPresentEnd()) {
|
||||
|
|
@ -791,10 +791,10 @@ void daNpc_Yelia_c::srchActors() {
|
|||
|
||||
/* 80B4E7C8-80B4E868 0015A8 00A0+00 1/0 0/0 0/0 .text evtTalk__13daNpc_Yelia_cFv */
|
||||
BOOL daNpc_Yelia_c::evtTalk() {
|
||||
if (chkAction(&talk)) {
|
||||
if (chkAction(&daNpc_Yelia_c::talk)) {
|
||||
(this->*mpAction)(NULL);
|
||||
} else {
|
||||
setAction(&talk);
|
||||
setAction(&daNpc_Yelia_c::talk);
|
||||
}
|
||||
return TRUE;
|
||||
}
|
||||
|
|
@ -923,13 +923,13 @@ BOOL daNpc_Yelia_c::selectAction() {
|
|||
mpNextAction = NULL;
|
||||
switch (mType) {
|
||||
case TYPE_HORSE:
|
||||
mpNextAction = &horseWait;
|
||||
mpNextAction = &daNpc_Yelia_c::horseWait;
|
||||
break;
|
||||
case TYPE_REMINISCENCE:
|
||||
mpNextAction = &reminiscence;
|
||||
mpNextAction = &daNpc_Yelia_c::reminiscence;
|
||||
break;
|
||||
default:
|
||||
mpNextAction = &wait;
|
||||
mpNextAction = &daNpc_Yelia_c::wait;
|
||||
break;
|
||||
}
|
||||
return TRUE;
|
||||
|
|
@ -1541,7 +1541,7 @@ BOOL daNpc_Yelia_c::talk(void* param_0) {
|
|||
case MODE_ENTER:
|
||||
case MODE_INIT:
|
||||
if (!mStagger.checkStagger()) {
|
||||
if (&horseWait == mpNextAction) {
|
||||
if (&daNpc_Yelia_c::horseWait == mpNextAction) {
|
||||
mFaceMotionSeqMngr.setNo(FACE_HORSE_LOOKBACK, -1.0f, FALSE, 0);
|
||||
mMotionSeqMngr.setNo(MOTION_HORSE_LOOKBACK, -1.0f, FALSE, 0);
|
||||
}
|
||||
|
|
@ -1552,13 +1552,13 @@ BOOL daNpc_Yelia_c::talk(void* param_0) {
|
|||
|
||||
case MODE_RUN:
|
||||
if (!mStagger.checkStagger()) {
|
||||
if (&horseWait == mpNextAction && mMotionSeqMngr.getNo() == MOTION_HORSE_LOOKBACK) {
|
||||
if (&daNpc_Yelia_c::horseWait == mpNextAction && mMotionSeqMngr.getNo() == MOTION_HORSE_LOOKBACK) {
|
||||
if (mMotionSeqMngr.checkEndSequence()) {
|
||||
mFaceMotionSeqMngr.setNo(FACE_NONE, -1.0f, FALSE, 0);
|
||||
mMotionSeqMngr.setNo(MOTION_HORSE_WAIT_C, -1.0f, FALSE, 0);
|
||||
}
|
||||
return FALSE;
|
||||
} else if (mTwilight || mPlayerAngle == mCurAngle.y || &horseWait == mpNextAction
|
||||
} else if (mTwilight || mPlayerAngle == mCurAngle.y || &daNpc_Yelia_c::horseWait == mpNextAction
|
||||
|| (mType == TYPE_KAKARIKO && !daNpcT_chkEvtBit(0x11f))
|
||||
|| mType == TYPE_AFTER_ESCORT)
|
||||
{
|
||||
|
|
@ -1568,7 +1568,7 @@ BOOL daNpc_Yelia_c::talk(void* param_0) {
|
|||
mMode = MODE_EXIT;
|
||||
}
|
||||
mJntAnm.lookPlayer(false);
|
||||
if (mTwilight || &horseWait == mpNextAction) {
|
||||
if (mTwilight || &daNpc_Yelia_c::horseWait == mpNextAction) {
|
||||
mJntAnm.lookNone(false);
|
||||
}
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -169,13 +169,13 @@ char* daNpc_zrZ_c::mEvtCutNameList[8] = {
|
|||
/* 80B9B434-80B9B494 0001B0 0060+00 0/2 0/0 0/0 .data mEvtCutList__11daNpc_zrZ_c */
|
||||
daNpc_zrZ_c::EventFn daNpc_zrZ_c::mEvtCutList[8] = {
|
||||
NULL,
|
||||
&ECut_helpPrince,
|
||||
&ECut_comeHere,
|
||||
&ECut_restoreLink,
|
||||
&ECut_clothesGet,
|
||||
&ECut_getAfter,
|
||||
&ECut_sealRelease,
|
||||
&ECut_srSkip,
|
||||
&daNpc_zrZ_c::ECut_helpPrince,
|
||||
&daNpc_zrZ_c::ECut_comeHere,
|
||||
&daNpc_zrZ_c::ECut_restoreLink,
|
||||
&daNpc_zrZ_c::ECut_clothesGet,
|
||||
&daNpc_zrZ_c::ECut_getAfter,
|
||||
&daNpc_zrZ_c::ECut_sealRelease,
|
||||
&daNpc_zrZ_c::ECut_srSkip,
|
||||
};
|
||||
|
||||
/* 80B93DCC-80B93F84 0000EC 01B8+00 1/1 0/0 0/0 .text __ct__11daNpc_zrZ_cFv */
|
||||
|
|
@ -322,9 +322,9 @@ int daNpc_zrZ_c::Execute() {
|
|||
int daNpc_zrZ_c::Draw() {
|
||||
mpMorf->getModel()->getModelData()->getMaterialNodePointer(1)->setMaterialAnm(mpMatAnm);
|
||||
if (mType == 1) {
|
||||
return draw(chkAction(&test), false, daNpc_zrZ_Param_c::m.mShadowDepth, NULL, false);
|
||||
return draw(chkAction(&daNpc_zrZ_c::test), false, daNpc_zrZ_Param_c::m.mShadowDepth, NULL, false);
|
||||
} else {
|
||||
return daNpcF_c::draw(chkAction(&test), false, daNpc_zrZ_Param_c::m.mShadowDepth,
|
||||
return daNpcF_c::draw(chkAction(&daNpc_zrZ_c::test), false, daNpc_zrZ_Param_c::m.mShadowDepth,
|
||||
NULL, false);
|
||||
}
|
||||
}
|
||||
|
|
@ -949,7 +949,7 @@ void daNpc_zrZ_c::reset() {
|
|||
if (mDemoMode == DEMO_WAIT) {
|
||||
mIsLeading = false;
|
||||
tevStr.TevColor.a = 0;
|
||||
mpNextActionFn = &wait;
|
||||
mpNextActionFn = &daNpc_zrZ_c::wait;
|
||||
} else if (mDemoMode == DEMO_COME_HERE || mDemoMode == DEMO_COME_HERE_2) {
|
||||
mIsLeading = false;
|
||||
tevStr.TevColor.a = 0xff;
|
||||
|
|
@ -1045,17 +1045,17 @@ BOOL daNpc_zrZ_c::setAction(ActionFn i_action) {
|
|||
BOOL daNpc_zrZ_c::selectAction() {
|
||||
mpNextActionFn = NULL;
|
||||
if (daNpc_zrZ_Param_c::m.mTest) {
|
||||
mpNextActionFn = &test;
|
||||
mpNextActionFn = &daNpc_zrZ_c::test;
|
||||
} else {
|
||||
switch (mDemoMode) {
|
||||
case DEMO_COME_HERE:
|
||||
mpNextActionFn = &comeHere;
|
||||
mpNextActionFn = &daNpc_zrZ_c::comeHere;
|
||||
break;
|
||||
case DEMO_COME_HERE_2:
|
||||
mpNextActionFn = &comeHere2;
|
||||
mpNextActionFn = &daNpc_zrZ_c::comeHere2;
|
||||
break;
|
||||
default:
|
||||
mpNextActionFn = &wait;
|
||||
mpNextActionFn = &daNpc_zrZ_c::wait;
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
|
@ -1102,10 +1102,10 @@ BOOL daNpc_zrZ_c::doEvent() {
|
|||
}
|
||||
|
||||
if (eventInfo.checkCommandTalk()) {
|
||||
if (chkAction(&talk)) {
|
||||
if (chkAction(&daNpc_zrZ_c::talk)) {
|
||||
(this->*mpActionFn)(NULL);
|
||||
} else if (dComIfGp_event_chkTalkXY() == false || dComIfGp_evmng_ChkPresentEnd()) {
|
||||
setAction(&talk);
|
||||
setAction(&daNpc_zrZ_c::talk);
|
||||
}
|
||||
ret = true;
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -69,7 +69,6 @@ static fopAc_ac_c* pushPullcallBack(fopAc_ac_c* param_0, fopAc_ac_c* param_1, s1
|
|||
|
||||
/* 80B9FD5C-80B9FDE8 00035C 008C+00 1/1 0/0 0/0 .text searchIronBallCallback__FPvPv */
|
||||
static void* searchIronBallCallback(void* i_actor, void* i_data) {
|
||||
// NONMATCHING
|
||||
daObjYtaihou_c* taihou_rhs = (daObjYtaihou_c*)i_data;
|
||||
if (fopAcM_GetProfName(i_actor) == PROC_Obj_Carry) {
|
||||
daObjCarry_c* pCarry = ((daObjCarry_c*)i_actor);
|
||||
|
|
@ -198,7 +197,6 @@ void daObjYtaihou_c::setMtx() {
|
|||
|
||||
/* 80BA0208-80BA045C 000808 0254+00 1/1 0/0 0/0 .text rotateCheck__14daObjYtaihou_cFv */
|
||||
void daObjYtaihou_c::rotateCheck() {
|
||||
// NONMATCHING
|
||||
if (shape_angle.y != current.angle.z) {
|
||||
cLib_chaseAngleS(¤t.angle.x, 0xbe, 5);
|
||||
if (cLib_chaseAngleS(&shape_angle.y, current.angle.z, current.angle.x)) {
|
||||
|
|
|
|||
|
|
@ -87,8 +87,8 @@ int daBarDesk_c::Execute(Mtx** i_mtxP) {
|
|||
void daBarDesk_c::windowProc() {
|
||||
typedef void (daBarDesk_c::*daBarDesk_modeFunc)();
|
||||
static daBarDesk_modeFunc mode_proc[2] = {
|
||||
&modeWait,
|
||||
&modeBreak,
|
||||
&daBarDesk_c::modeWait,
|
||||
&daBarDesk_c::modeBreak,
|
||||
};
|
||||
(this->*mode_proc[mMode])();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -315,17 +315,17 @@ int daObjBossWarp_c::execute() {
|
|||
void daObjBossWarp_c::event_proc_call() {
|
||||
typedef void (daObjBossWarp_c::*daObjBossWarp_action)();
|
||||
static daObjBossWarp_action l_func[11] = {
|
||||
&actionWait,
|
||||
&actionOrderEvent,
|
||||
&actionEvent,
|
||||
&actionWaitWarp,
|
||||
&actionOrderWarpEvent,
|
||||
&actionWarpEvent,
|
||||
&actionDead,
|
||||
&actionOrderChkEvent,
|
||||
&actionChkEvent,
|
||||
&actionOrderCancelEvent,
|
||||
&actionCancelEvent,
|
||||
&daObjBossWarp_c::actionWait,
|
||||
&daObjBossWarp_c::actionOrderEvent,
|
||||
&daObjBossWarp_c::actionEvent,
|
||||
&daObjBossWarp_c::actionWaitWarp,
|
||||
&daObjBossWarp_c::actionOrderWarpEvent,
|
||||
&daObjBossWarp_c::actionWarpEvent,
|
||||
&daObjBossWarp_c::actionDead,
|
||||
&daObjBossWarp_c::actionOrderChkEvent,
|
||||
&daObjBossWarp_c::actionChkEvent,
|
||||
&daObjBossWarp_c::actionOrderCancelEvent,
|
||||
&daObjBossWarp_c::actionCancelEvent,
|
||||
};
|
||||
(this->*l_func[mAction])();
|
||||
}
|
||||
|
|
@ -494,7 +494,7 @@ int daObjBossWarp_c::demoProc() {
|
|||
|
||||
if (dComIfGp_evmng_getIsAddvance(mStaffId)) {
|
||||
switch (act_idx) {
|
||||
case 0: // WAIT
|
||||
case 0: { // WAIT
|
||||
int* timer = dComIfGp_evmng_getMyIntegerP(mStaffId, "Timer");
|
||||
if (timer == NULL) {
|
||||
mTimer = 1;
|
||||
|
|
@ -502,13 +502,15 @@ int daObjBossWarp_c::demoProc() {
|
|||
mTimer = *timer;
|
||||
}
|
||||
break;
|
||||
case 1: // APPEAR
|
||||
}
|
||||
case 1: { // APPEAR
|
||||
int level = getNowLevel();
|
||||
if (level >= 0 && level < 10 && l_dangeon_clr_bitNo[level] > 0) {
|
||||
dComIfGs_onEventBit(dSv_event_flag_c::saveBitLabels[l_dangeon_clr_bitNo[level]]);
|
||||
}
|
||||
appear(0);
|
||||
break;
|
||||
}
|
||||
case 2: // DISAPPEAR
|
||||
disappear(0);
|
||||
break;
|
||||
|
|
|
|||
|
|
@ -76,9 +76,9 @@ static daBsGate_HIO_c l_HIO;
|
|||
void daBsGate_c::moveGate() {
|
||||
typedef void (daBsGate_c::*daBsGate_modeFunc)();
|
||||
static daBsGate_modeFunc mode_proc[3] = {
|
||||
&modeWait,
|
||||
&modeOpen,
|
||||
&modeClose,
|
||||
&daBsGate_c::modeWait,
|
||||
&daBsGate_c::modeOpen,
|
||||
&daBsGate_c::modeClose,
|
||||
};
|
||||
u8 was_open = mOpen;
|
||||
mOpen = fopAcM_isSwitch(this, fopAcM_GetParam(this) & 0xff);
|
||||
|
|
|
|||
|
|
@ -189,9 +189,9 @@ void daObjCdoor_c::execCdoor() {
|
|||
void daObjCdoor_c::execWgate() {
|
||||
typedef void (daObjCdoor_c::*daObjCdoor_modeFunc)();
|
||||
static daObjCdoor_modeFunc mode_proc[3] = {
|
||||
&modeWait,
|
||||
&modeOpen,
|
||||
&modeClose,
|
||||
&daObjCdoor_c::modeWait,
|
||||
&daObjCdoor_c::modeOpen,
|
||||
&daObjCdoor_c::modeClose,
|
||||
};
|
||||
u8 was_open = mIsOpen;
|
||||
mIsOpen = fopAcM_isSwitch(this, mSw);
|
||||
|
|
@ -258,10 +258,10 @@ static int daObjCdoor_Execute(daObjCdoor_c* i_this) {
|
|||
void daObjCdoor_c::event_proc_call() {
|
||||
typedef void (daObjCdoor_c::*daObjCdoor_eventFunc)();
|
||||
static daObjCdoor_eventFunc l_func[4] = {
|
||||
&actionWait,
|
||||
&actionOrderEvent,
|
||||
&actionEvent,
|
||||
&actionDead,
|
||||
&daObjCdoor_c::actionWait,
|
||||
&daObjCdoor_c::actionOrderEvent,
|
||||
&daObjCdoor_c::actionEvent,
|
||||
&daObjCdoor_c::actionDead,
|
||||
};
|
||||
(this->*l_func[mAction])();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -14,11 +14,11 @@ static char* l_arcName = "L9Chand";
|
|||
|
||||
/* 80BC8DA4-80BC8DE0 000060 003C+00 1/2 0/0 0/0 .data s_exeProc__17daObjChandelier_c */
|
||||
daObjChandelier_proc daObjChandelier_c::s_exeProc[5] = {
|
||||
&exeModeWait,
|
||||
&exeModeStartSwg,
|
||||
&exeModeDown,
|
||||
&exeModeEndSwg,
|
||||
&exeModeHookSwg,
|
||||
&daObjChandelier_c::exeModeWait,
|
||||
&daObjChandelier_c::exeModeStartSwg,
|
||||
&daObjChandelier_c::exeModeDown,
|
||||
&daObjChandelier_c::exeModeEndSwg,
|
||||
&daObjChandelier_c::exeModeHookSwg,
|
||||
};
|
||||
|
||||
/* 80BC7F38-80BC7F74 000078 003C+00 2/2 0/0 0/0 .text __ct__17daObjChandelier_cFv */
|
||||
|
|
|
|||
|
|
@ -126,7 +126,6 @@ static Vec const wolfChainBaseOffset = {
|
|||
};
|
||||
|
||||
/* 80BE6868-80BE7174 0008E8 090C+00 1/1 0/0 0/0 .text execute__13daObjFchain_cFv */
|
||||
// NONMATCHING - regalloc, stack
|
||||
int daObjFchain_c::execute() {
|
||||
if (dComIfGp_event_runCheck()) {
|
||||
if (dComIfGp_getEventManager().getRunEventName() != NULL) {
|
||||
|
|
@ -249,9 +248,8 @@ int daObjFchain_c::execute() {
|
|||
if (field_0x584 == 0) {
|
||||
field_0x584 = 1;
|
||||
sp_30 = field_0x79c;
|
||||
for (int i = 0; i < 22; i++) {
|
||||
for (i = 0; i < 22; i++, sp_30++) {
|
||||
*sp_30 = cXyz::Zero;
|
||||
sp_30++;
|
||||
}
|
||||
field_0x586 = 5;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -154,7 +154,6 @@ static void ito_pos_set(obj_gm_class* i_this) {
|
|||
|
||||
/* 80BFB508-80BFBA14 0004A8 050C+00 1/1 0/0 0/0 .text bg_fix__FP12obj_gm_class */
|
||||
static void bg_fix(obj_gm_class* i_this) {
|
||||
// NONMATCHING - incorrect instruction generated at line 258
|
||||
fopAc_ac_c* a_this = (fopAc_ac_c*)&i_this->actor;
|
||||
cXyz sp28, sp34;
|
||||
|
||||
|
|
|
|||
|
|
@ -256,7 +256,6 @@ int daObjHBombkoya_c::Delete() {
|
|||
|
||||
/* 80C1C1A8-80C1C2BC 0009A8 0114+00 1/0 0/0 0/0 .text
|
||||
* daObjHBombkoya_create1st__FP16daObjHBombkoya_c */
|
||||
// NONMATCHING - vtable issues, read more below
|
||||
static int daObjHBombkoya_create1st(daObjHBombkoya_c* i_this) {
|
||||
fopAcM_ct(i_this, daObjHBombkoya_c);
|
||||
|
||||
|
|
|
|||
|
|
@ -173,7 +173,6 @@ int daObjLadder::Act_c::CreateHeap() {
|
|||
|
||||
/* 8058D1D8-8058D378 0000F8 01A0+00 1/0 0/0 0/0 .text Create__Q211daObjLadder5Act_cFv */
|
||||
int daObjLadder::Act_c::Create() {
|
||||
// NONMATCHING
|
||||
fopAcM_SetMtx(this, mModel->getBaseTRMtx());
|
||||
init_mtx();
|
||||
fopAcM_setCullSizeBox(this, -55.0f, -1.0f, -10.0f, 55.0f, attr_type(mType).field_0x4 + 41.0f,
|
||||
|
|
|
|||
|
|
@ -32,7 +32,6 @@ void dalv4CandleDemoTag_c::setBaseMtx() {
|
|||
}
|
||||
|
||||
/* 80C5CA90-80C5CBA4 000190 0114+00 1/1 0/0 0/0 .text create__20dalv4CandleDemoTag_cFv */
|
||||
// NONMATCHING - vtables need work
|
||||
int dalv4CandleDemoTag_c::create() {
|
||||
fopAcM_ct(this, dalv4CandleDemoTag_c);
|
||||
|
||||
|
|
|
|||
|
|
@ -10,8 +10,6 @@
|
|||
#include "d/d_com_inf_game.h"
|
||||
#include "d/d_meter2_info.h"
|
||||
|
||||
// NONMATCHING - vtable order. I think it has something to do with the inline functions.
|
||||
|
||||
/* 80C91940-80C91944 000000 0004+00 2/2 0/0 0/0 .rodata mAttr__18daObjMasterSword_c */
|
||||
daObjMasterSword_Attr_c const daObjMasterSword_c::mAttr = {1.0f};
|
||||
|
||||
|
|
|
|||
|
|
@ -26,12 +26,12 @@ daObjMirrorScrew_c::attr const daObjMirrorScrew_c::M_attr = {
|
|||
*/
|
||||
daObjMirrorScrew_actionFunc daObjMirrorScrew_c::ActionTable[2][2] = {
|
||||
{
|
||||
&initWait,
|
||||
&executeWait,
|
||||
&daObjMirrorScrew_c::initWait,
|
||||
&daObjMirrorScrew_c::executeWait,
|
||||
},
|
||||
{
|
||||
&initDown,
|
||||
&executeDown,
|
||||
&daObjMirrorScrew_c::initDown,
|
||||
&daObjMirrorScrew_c::executeDown,
|
||||
},
|
||||
};
|
||||
|
||||
|
|
|
|||
|
|
@ -76,7 +76,7 @@ int daObjPDoor_c::Create() {
|
|||
shape_angle.y = home.angle.y + 0x1555;
|
||||
} else if (!isSw2) {
|
||||
OS_REPORT("城下町押引扉:SW1,SW2共にONになっています!\n");
|
||||
JUT_PANIC(235, "0");
|
||||
JUT_ASSERT(235, FALSE);
|
||||
} else {
|
||||
mDoorDirection = -1;
|
||||
shape_angle.y = home.angle.y - 0x1555;
|
||||
|
|
|
|||
|
|
@ -388,10 +388,11 @@ fopAc_ac_c* daObj_Sekizoa_c::getKMsgTagP() {
|
|||
|
||||
/* 80CCF03C-80CCF138 000DDC 00FC+00 1/1 0/0 0/0 .text isDelete__15daObj_Sekizoa_cFv */
|
||||
int daObj_Sekizoa_c::isDelete() {
|
||||
bool ret;
|
||||
switch (mType) {
|
||||
case TYPE_0:
|
||||
case TYPE_1:
|
||||
bool ret = false;
|
||||
ret = false;
|
||||
if (getBitSW2() != 0xFF) {
|
||||
if (dComIfGs_isSwitch(getBitSW2(), fopAcM_GetRoomNo(this))) {
|
||||
ret = true;
|
||||
|
|
@ -1268,7 +1269,7 @@ void daObj_Sekizoa_c::jump() {
|
|||
break;
|
||||
|
||||
case 2:
|
||||
case 3:
|
||||
case 3: {
|
||||
cXyz temp_vec2;
|
||||
|
||||
if (mMotionSeqMngr.getNo() == 7 || mMotionSeqMngr.getNo() == 18) {
|
||||
|
|
@ -1324,7 +1325,7 @@ void daObj_Sekizoa_c::jump() {
|
|||
}
|
||||
}
|
||||
break;
|
||||
|
||||
}
|
||||
case 4:
|
||||
if (mMotionSeqMngr.checkEndSequence() != 0) {
|
||||
mMotionSeqMngr.setNo(getGameMotionNo(), -1.0f, 0, 0);
|
||||
|
|
@ -2046,18 +2047,17 @@ int daObj_Sekizoa_c::cutGoal(int i_staffIdx) {
|
|||
}
|
||||
break;
|
||||
|
||||
case 1:
|
||||
case 1: {
|
||||
f32 temp_float = mGoalStatueAngle;
|
||||
cLib_chaseF(&mGoalStatueAngle, 0.0f, mGoalStatueTurnSpeed);
|
||||
int temp_diff = mGoalStatueAngle - temp_float;
|
||||
current.angle.y -= temp_diff;
|
||||
current.angle.y -= (int)(mGoalStatueAngle - temp_float);
|
||||
shape_angle.y = current.angle.y;
|
||||
mCurAngle.y = current.angle.y;
|
||||
if (mMotionSeqMngr.checkEndSequence() != 0) {
|
||||
ret = 1;
|
||||
}
|
||||
break;
|
||||
|
||||
}
|
||||
case 2:
|
||||
if (mMotionSeqMngr.checkEndSequence() != 0) {
|
||||
ret = 1;
|
||||
|
|
|
|||
|
|
@ -64,14 +64,13 @@ bool daSnowEffTag_c::playerAreaCheck() {
|
|||
if (player_p->current.pos.y < current.pos.y ||
|
||||
player_p->current.pos.y > current.pos.y + scale.y * 100.0f)
|
||||
{
|
||||
return false;
|
||||
return in_area;
|
||||
} else {
|
||||
cXyz pos_diff = current.pos - player_p->current.pos;
|
||||
f32 dist_to_player = pos_diff.absXZ();
|
||||
|
||||
// supposed to be std::fabs, but it changes regalloc
|
||||
if (dist_to_player <=
|
||||
mMaxSize - field_0x574 * fabsf(player_p->current.pos.y - current.pos.y))
|
||||
mMaxSize - field_0x574 * std::fabs(player_p->current.pos.y - current.pos.y))
|
||||
{
|
||||
in_area = true;
|
||||
} else {
|
||||
|
|
|
|||
|
|
@ -73,7 +73,10 @@ int daSpinLift_c::CreateHeap() {
|
|||
(J3DModelData*)dComIfG_getObjectRes(l_resNameIdx[mModelType], l_bmdIdx[mModelType]);
|
||||
JUT_ASSERT(222, modelData != NULL);
|
||||
mpModel = mDoExt_J3DModel__create(modelData, 0x80000, 0x11000084);
|
||||
return mpModel == NULL ? 0 : 1;
|
||||
if (mpModel == NULL) {
|
||||
return 0;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80CE3F1C-80CE40FC 00025C 01E0+00 1/1 0/0 0/0 .text create__12daSpinLift_cFv */
|
||||
|
|
|
|||
|
|
@ -382,7 +382,6 @@ void daObjSwBallB_c::PutCrrPos() {
|
|||
}
|
||||
|
||||
/* 80CF56A4-80CF582C 001164 0188+00 1/1 0/0 0/0 .text draw__14daObjSwBallB_cFv */
|
||||
// NONMATCHING
|
||||
int daObjSwBallB_c::draw() {
|
||||
g_env_light.settingTevStruct(0, ¤t.pos, &tevStr);
|
||||
g_env_light.setLightTevColorType_MAJI(mModel, &tevStr);
|
||||
|
|
|
|||
|
|
@ -443,7 +443,6 @@ static int daObj_Toby_Delete(obj_toby_class* i_this) {
|
|||
}
|
||||
|
||||
/* 80D149DC-80D14BD4 00133C 01F8+00 1/1 0/0 0/0 .text useHeapInit__FP10fopAc_ac_c */
|
||||
// nonmatching - regalloc
|
||||
static int useHeapInit(fopAc_ac_c* a_this) {
|
||||
obj_toby_class* i_this = (obj_toby_class*)a_this;
|
||||
void* modelData;
|
||||
|
|
|
|||
|
|
@ -521,7 +521,7 @@ void daObjTobyHouse_c::sceneChange() {
|
|||
exitId = 3;
|
||||
break;
|
||||
default:
|
||||
JUT_PANIC(936, "0");
|
||||
JUT_ASSERT(936, FALSE);
|
||||
}
|
||||
|
||||
dStage_changeScene(exitId, 0.0f, 0, fopAcM_GetRoomNo(this), 0, -1);
|
||||
|
|
|
|||
|
|
@ -333,7 +333,7 @@ int daObjWStatue_c::actionSwOnWait() {
|
|||
}
|
||||
break;
|
||||
default:
|
||||
JUT_PANIC(644, "0");
|
||||
JUT_ASSERT(644, FALSE);
|
||||
}
|
||||
|
||||
return 1;
|
||||
|
|
|
|||
|
|
@ -316,7 +316,6 @@ int daZdoor_c::create1st() {
|
|||
|
||||
/* 80D3FACC-80D3FCE8 00070C 021C+00 1/0 0/0 0/0 .text Execute__9daZdoor_cFPPA3_A4_f */
|
||||
int daZdoor_c::Execute(Mtx** i_mtx) {
|
||||
// NONMATCHING
|
||||
s16 current_open_angle = mOpenAngle;
|
||||
set_cyl();
|
||||
|
||||
|
|
|
|||
|
|
@ -145,9 +145,9 @@ int daZrTurara_c::Execute(Mtx** i_mtxP) {
|
|||
void daZrTurara_c::move() {
|
||||
typedef void (daZrTurara_c::*daZrTurara_modeFunc)();
|
||||
static daZrTurara_modeFunc mode_proc[3] = {
|
||||
&modeWait,
|
||||
&modeBreak,
|
||||
&modeEnd,
|
||||
&daZrTurara_c::modeWait,
|
||||
&daZrTurara_c::modeBreak,
|
||||
&daZrTurara_c::modeEnd,
|
||||
};
|
||||
(this->*mode_proc[mMode])();
|
||||
mCcCyl.SetR(130.0f);
|
||||
|
|
|
|||
|
|
@ -112,8 +112,8 @@ int daZrTuraRc_c::Execute() {
|
|||
void daZrTuraRc_c::move() {
|
||||
typedef void (daZrTuraRc_c::*daZrTuraRc_modeFunc)();
|
||||
static daZrTuraRc_modeFunc mode_proc[2] = {
|
||||
&modeDrop,
|
||||
&modeDropEnd,
|
||||
&daZrTuraRc_c::modeDrop,
|
||||
&daZrTuraRc_c::modeDropEnd,
|
||||
};
|
||||
(this->*mode_proc[mMode])();
|
||||
mCcSph.SetR(mScaleF * 130.0f);
|
||||
|
|
|
|||
|
|
@ -502,7 +502,7 @@ int daPasserMng_c::getLuggageParamHigh(u32 param_1) {
|
|||
break;
|
||||
default:
|
||||
OS_REPORT("%s: Line.%d arg=%d\n", "d_a_passer_mng.cpp", 921, param_1);
|
||||
JUT_PANIC(922, 0);
|
||||
JUT_ASSERT(922, FALSE);
|
||||
}
|
||||
return paramLow << 8;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -810,7 +810,7 @@ int daPeru_c::demo_walk_to_link(int param_0) {
|
|||
fopAc_ac_c* actor = mActors[2].getActorP();
|
||||
if (actor == NULL) {
|
||||
OS_REPORT("-----there is no player!!\n");
|
||||
JUT_PANIC(1948, 0);
|
||||
JUT_ASSERT(1948, FALSE);
|
||||
}
|
||||
cLib_chaseAngleS(&mCurAngle.y, fopAcM_searchActorAngleY(this, actor), 0x800);
|
||||
current.angle.y = mCurAngle.y;
|
||||
|
|
@ -1013,7 +1013,7 @@ int daPeru_c::_cutAppear_Init(int const& param_1) {
|
|||
if (fopAcM_SearchByName(PROC_MIDNA, &midna) != 0) {
|
||||
if (midna == NULL) {
|
||||
OS_REPORT("---- there is no midna!!\n");
|
||||
JUT_PANIC(2446, 0);
|
||||
JUT_ASSERT(2446, FALSE);
|
||||
} else {
|
||||
mJntAnm.lookActor(midna, 0.0, 0);
|
||||
}
|
||||
|
|
@ -1184,7 +1184,7 @@ void daPeru_c::_catdoor_open() {
|
|||
daObjCatDoor_c* pCatDoor = (daObjCatDoor_c*)mActors[1].getActorP();
|
||||
if (pCatDoor == NULL) {
|
||||
OS_REPORT("---- there is no catdoor!! ----!!\n");
|
||||
JUT_PANIC(2799, 0);
|
||||
JUT_ASSERT(2799, FALSE);
|
||||
} else {
|
||||
pCatDoor->setDoorOpen();
|
||||
}
|
||||
|
|
@ -1196,7 +1196,7 @@ void daPeru_c::_catdoor_open_demoskip() {
|
|||
daObjCatDoor_c* pCatDoor = (daObjCatDoor_c*)mActors[1].getActorP();
|
||||
if (pCatDoor == NULL) {
|
||||
OS_REPORT("---- there is no catdoor!! ----!!\n");
|
||||
JUT_PANIC(2829, 0);
|
||||
JUT_ASSERT(2829, FALSE);
|
||||
} else {
|
||||
pCatDoor->_toDoorOpened();
|
||||
}
|
||||
|
|
|
|||
|
|
@ -146,7 +146,7 @@ int daSwc00_c::execute() {
|
|||
break;
|
||||
default:
|
||||
OSReport_Error("領域スイッチ:引数0が不正値<%d>です\n", type);
|
||||
JUT_PANIC(289, "0");
|
||||
JUT_ASSERT(289, FALSE);
|
||||
break;
|
||||
}
|
||||
|
||||
|
|
|
|||
|
|
@ -199,7 +199,7 @@ inline int daTagLv6Gate_c::execute() {
|
|||
fopAcM_delete(parentActorID);
|
||||
break;
|
||||
default:
|
||||
JUT_PANIC(332, "0");
|
||||
JUT_ASSERT(332, FALSE);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -213,7 +213,7 @@ inline int daTagLv6Gate_c::execute() {
|
|||
eventManager.cutEnd(cut_index);
|
||||
break;
|
||||
default:
|
||||
JUT_PANIC(345, "0");
|
||||
JUT_ASSERT(345, FALSE);
|
||||
}
|
||||
|
||||
if (eventInfo.checkCommandDemoAccrpt() && mEvtId != -1 &&
|
||||
|
|
|
|||
|
|
@ -63,7 +63,6 @@ static int daTagWljump_Delete(daTagWljump_c* i_this) {
|
|||
}
|
||||
|
||||
/* 80D65090-80D6587C 000250 07EC+00 1/1 0/0 0/0 .text execute__13daTagWljump_cFv */
|
||||
// NONMATCHING - reg swap (regs match on debug, probably an inline issue)
|
||||
int daTagWljump_c::execute() {
|
||||
attention_info.flags = 0;
|
||||
|
||||
|
|
|
|||
|
|
@ -1880,9 +1880,7 @@ int dAttCatch_c::request(fopAc_ac_c* i_reqActor, u8 i_itemNo, f32 i_horizontalDi
|
|||
|
||||
if (i_angle != 0) {
|
||||
cSGlobe globe(vec_to_player);
|
||||
csXyz* player_angle_p = fopAcM_GetShapeAngle_p(player);
|
||||
|
||||
s16 angle = globe.U() - player_angle_p->y;
|
||||
s16 angle = globe.U() - fopAcM_GetShapeAngle_p(player)->y;
|
||||
if (angle < 0) {
|
||||
angle = -angle;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -1637,8 +1637,10 @@ void dComIfGp_createSubExpHeap2D() {
|
|||
u32 size = dComIfGp_getExpHeap2D()->getTotalFreeSize() * (2.0f / 5.0f);
|
||||
|
||||
for (int i = 0; i < 2; i++) {
|
||||
JUT_ASSERT(3573, dComIfGp_getSubExpHeap2D(i) == NULL);
|
||||
if (dComIfGp_getSubExpHeap2D(i) == NULL) {
|
||||
JKRExpHeap* i_heap = JKRExpHeap::create(size, dComIfGp_getExpHeap2D(), false);
|
||||
JKRExpHeap* i_heap = JKRCreateExpHeap(size, dComIfGp_getExpHeap2D(), false);
|
||||
JUT_ASSERT(3576, i_heap != NULL);
|
||||
dComIfGp_setSubExpHeap2D(i, i_heap);
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -642,7 +642,6 @@ void dMsgObject_c::setMessageIndex(u32 revoIndex, u32 param_2, bool param_3) {
|
|||
}
|
||||
|
||||
/* 80233E70-80233F84 22E7B0 0114+00 1/1 1/1 0/0 .text setMessageIndexDemo__12dMsgObject_cFUlb */
|
||||
// NONMATCHING reg swap
|
||||
void dMsgObject_c::setMessageIndexDemo(u32 revoMsgIndex, bool param_2) {
|
||||
field_0x158 = revoMsgIndex;
|
||||
revoMsgIndex = getRevoMessageIndex(revoMsgIndex);
|
||||
|
|
|
|||
|
|
@ -2117,7 +2117,7 @@ void dPa_gen_b_light8PcallBack::draw(JPABaseEmitter* param_1, JPABaseParticle* p
|
|||
JGeometry::TVec3<f32> aTStack_a4;
|
||||
JGeometry::TVec3<f32> aTStack_b0;
|
||||
JGeometry::TVec3<f32> local_bc;
|
||||
u8 uVar7 = param_1->getGlobalAlpha() & 0xff;
|
||||
u8 uVar7 = param_1->getGlobalAlpha();
|
||||
JGeometry::TVec3<f32> local_c8;
|
||||
JGeometry::TVec3<f32> local_d4;
|
||||
JGeometry::TVec3<f32> local_e0;
|
||||
|
|
@ -2138,10 +2138,7 @@ void dPa_gen_b_light8PcallBack::draw(JPABaseEmitter* param_1, JPABaseParticle* p
|
|||
local_80[1][3] = local_8c.y;
|
||||
local_80[2][2] = 1.0f;
|
||||
local_80[2][3] = local_8c.z;
|
||||
local_80[2][1] = 0.0f;
|
||||
local_80[2][0] = 0.0f;
|
||||
local_80[1][2] = 0.0f;
|
||||
local_80[0][2] = 0.0f;
|
||||
local_80[0][2] = local_80[1][2] = local_80[2][0] = local_80[2][1] = 0.0f;
|
||||
GXLoadPosMtxImm(local_80, 0);
|
||||
GXLoadNrmMtxImm(local_80, 0);
|
||||
JGeometry::TVec3<f32> local_104;
|
||||
|
|
|
|||
|
|
@ -2020,12 +2020,12 @@ fopAc_ac_c* fopAcM_searchFromName(char const* name, u32 param0, u32 param1) {
|
|||
/* 8001D6F0-8001D7A0 018030 00B0+00 1/1 0/0 0/0 .text fopAcM_findObject4EventCB__FP10fopAc_ac_cPv
|
||||
*/
|
||||
fopAc_ac_c* fopAcM_findObject4EventCB(fopAc_ac_c* i_actor, void* i_data) {
|
||||
fopAcM_search4ev_prm* prm = (fopAcM_search4ev_prm*)i_data;
|
||||
|
||||
if (i_data == NULL || !fopAcM_IsExecuting(fopAcM_GetID(i_actor))) {
|
||||
return NULL;
|
||||
}
|
||||
|
||||
fopAcM_search4ev_prm* prm = (fopAcM_search4ev_prm*)i_data;
|
||||
|
||||
if (prm->procname == fopAcM_GetProfName(i_actor) && prm->argument == i_actor->argument) {
|
||||
if (prm->event_id < 0 || prm->event_id == i_actor->eventInfo.getIdx()) {
|
||||
return i_actor;
|
||||
|
|
|
|||
Loading…
Reference in New Issue