d_a_ygcwp OK

fixes #488
This commit is contained in:
LagoLunatic
2024-06-19 18:35:28 -04:00
parent 01a7ab6297
commit b72b88dc4e
3 changed files with 16 additions and 11 deletions
+1 -1
View File
@@ -1635,7 +1635,7 @@ config.libs = [
ActorRel(NonMatching, "d_a_waterfall"),
ActorRel(NonMatching, "d_a_windmill"),
ActorRel(NonMatching, "d_a_wz"),
ActorRel(NonMatching, "d_a_ygcwp"),
ActorRel(Matching, "d_a_ygcwp", extra_cflags=['-pragma "nosyminline on"']),
ActorRel(NonMatching, "d_a_yougan"),
ActorRel(Matching, "d_a_ghostship", extra_cflags=['-pragma "nosyminline on"']),
ActorRel(NonMatching, "d_a_movie_player"),
+3 -1
View File
@@ -21,7 +21,9 @@ public:
bool _draw();
public:
static const char M_arcname[6];
static const u32 M_brk_table[];
static const u32 M_brk_mode_table[];
static const char M_arcname[];
public:
/* 0x290 */ J3DModel* mpModel;
+12 -9
View File
@@ -15,12 +15,12 @@ enum {
EVENT_WARP_MAKE,
};
static const u32 M_brk_table[] = {
const u32 daYgcwp_c::M_brk_table[] = {
YGCWP_BRK_YGCWP00_COMMON,
YGCWP_BRK_YGCWP00_WARP,
};
static const u32 M_brk_mode_table[] = {
const u32 daYgcwp_c::M_brk_mode_table[] = {
J3DFrameCtrl::LOOP_REPEAT_e,
J3DFrameCtrl::LOOP_ONCE_e,
};
@@ -46,9 +46,9 @@ BOOL daYgcwp_c::solidHeapCB(fopAc_ac_c* i_ac) {
/* 00000098-0000023C .text create_heap__9daYgcwp_cFv */
BOOL daYgcwp_c::create_heap() {
/* Nonmatching - regalloc */
s32 i;
BOOL ret = FALSE;
J3DModelData* mdl_data = (J3DModelData*)dComIfG_getObjectRes(M_arcname, YGCWP_BDL_YGCWP00);
J3DModelData* mdl_data = static_cast<J3DModelData*>(dComIfG_getObjectRes(M_arcname, YGCWP_BDL_YGCWP00));
JUT_ASSERT(0xBE, mdl_data != 0);
if (mdl_data != NULL) {
@@ -56,14 +56,17 @@ BOOL daYgcwp_c::create_heap() {
if (mpModel != NULL) {
ret = TRUE;
for (s32 i = 0; i < (s32)ARRAY_SIZE(mBrkAnm); i++) {
J3DAnmTevRegKey* brk_p = (J3DAnmTevRegKey*)dComIfG_getObjectRes(M_arcname, M_brk_table[i]);
for (i = 0; i < (s32)ARRAY_SIZE(mBrkAnm); i++) {
J3DAnmTevRegKey* brk_p = static_cast<J3DAnmTevRegKey*>(dComIfG_getObjectRes(M_arcname, M_brk_table[i]));
JUT_ASSERT(0xC9, brk_p != 0);
if (brk_p != NULL) {
if (!mBrkAnm[i].init(mdl_data, brk_p, TRUE, M_brk_mode_table[i], 1.0f, 0, -1, false, 0))
return FALSE;
if (!mBrkAnm[i].init(mdl_data, brk_p, TRUE, M_brk_mode_table[i], 1.0f, 0, -1, false, 0)) {
ret = FALSE;
break;
}
} else {
return FALSE;
ret = FALSE;
break;
}
}
}