summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLagoLunatic <LagoLunatic@users.noreply.github.com>2025-04-12 23:18:11 -0400
committerLagoLunatic <LagoLunatic@users.noreply.github.com>2025-04-12 23:18:11 -0400
commit780d4e680adcc37edc87c300f1c1951e2490a0a7 (patch)
tree9c56419c41e6f8fcf6a0867abada6fc91a129cd9
parent1f1900bf669a5f14afa430d95fef7f2bf28a2076 (diff)
d_drawlist OK, J2DPicture inline cleanup
-rwxr-xr-xconfigure.py2
-rw-r--r--include/JSystem/J2DGraph/J2DPicture.h25
-rw-r--r--include/JSystem/JUtility/TColor.h2
-rw-r--r--include/d/d_com_inf_game.h6
-rw-r--r--include/d/d_drawlist.h17
-rw-r--r--src/JSystem/J2DGraph/J2DPicture.cpp12
-rw-r--r--src/d/d_com_inf_game.cpp2
-rw-r--r--src/d/d_drawlist.cpp90
-rw-r--r--src/d/d_ovlp_fade2.cpp12
-rw-r--r--src/f_op/f_op_msg_mng.cpp27
10 files changed, 105 insertions, 90 deletions
diff --git a/configure.py b/configure.py
index fe09b291..906656f4 100755
--- a/configure.py
+++ b/configure.py
@@ -476,7 +476,7 @@ config.libs = [
Object(NonMatching, "d/d_particle.cpp"),
Object(Matching, "d/d_particle_name.cpp"),
Object(Matching, "d/d_path.cpp"),
- Object(NonMatching, "d/d_drawlist.cpp"),
+ Object(Matching, "d/d_drawlist.cpp", extra_cflags=['-sym off']),
Object(Matching, "d/d_kankyo_data.cpp"),
Object(Matching, "d/d_kankyo_wether.cpp"),
Object(NonMatching, "d/d_kankyo_rain.cpp"),
diff --git a/include/JSystem/J2DGraph/J2DPicture.h b/include/JSystem/J2DGraph/J2DPicture.h
index 1efedbf7..06fb257b 100644
--- a/include/JSystem/J2DGraph/J2DPicture.h
+++ b/include/JSystem/J2DGraph/J2DPicture.h
@@ -26,6 +26,10 @@ enum J2DMirror {
class J2DPicture : public J2DPane {
public:
+ struct TCornerColor {
+ // TODO
+ };
+
J2DPicture();
J2DPicture(J2DPane*, JSURandomInputStream*);
J2DPicture(const ResTIMG*);
@@ -51,15 +55,21 @@ public:
void initinfo();
bool insert(const ResTIMG*, u8, f32);
bool insert(const char*, u8, f32);
+ bool append(const ResTIMG* timg, f32 param_1) { return insert(timg, mNumTexture, param_1); }
+ bool append(const char* name, f32 param_1) { return insert(name, mNumTexture, param_1); }
bool remove(u8);
+ bool remove() { return remove(mNumTexture - 1); }
const ResTIMG * changeTexture(const ResTIMG*, u8);
const ResTIMG * changeTexture(const char*, u8);
void drawFullSet(f32, f32, f32, f32, J2DBinding, J2DMirror, bool, Mtx*);
void draw(f32, f32, f32, f32, bool, bool, bool);
- void draw(f32 x, f32 y, bool mirrorX, bool mirrorY, bool tumble) {
- if (mNumTexture > 0)
+ void draw(f32 x, f32 y, u8 i, bool mirrorX, bool mirrorY, bool tumble) {
+ if (i < mNumTexture)
draw(x, y, mpTexture[0]->getWidth(), mpTexture[0]->getHeight(), mirrorX, mirrorY, tumble);
}
+ void draw(f32 x, f32 y, bool mirrorX, bool mirrorY, bool tumble) {
+ draw(x, y, 0, mirrorX, mirrorY, tumble);
+ }
void drawOut(const JGeometry::TBox2<f32>&, const JGeometry::TBox2<f32>&);
void drawTexCoord(f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, f32, Mtx*);
void setTevMode();
@@ -101,14 +111,19 @@ public:
}
void setCornerColor(JUtility::TColor c) { setCornerColor(c, c, c, c); }
- u8 getNumTexture() { return mNumTexture; }
-
void setBinding(J2DBinding v) { mBinding = v; }
void setMirror(J2DMirror v) {} // untested { mFlag = (mFlag & ~0x03) | v; }
J2DMirror getMirror() const { return J2DMirror(mFlag & 0x03); }
void setTumble(bool v) {} // untested { mFlag = (mFlag & ~0x04) | (v << 2); }
- bool isTumble() const { return mFlag >> 2 & 1; }
+ bool isTumble() const { return mFlag & 0x04; }
+
+ void load(u8 i) { mpTexture[i]->load((GXTexMapID)i); }
+
+ // TODO
+ void getBlack() const {}
+ void getCornerColor(J2DPicture::TCornerColor&) const {}
+ void getWhite() const {}
protected:
/* 0x0CC */ JUTTexture* mpTexture[4];
diff --git a/include/JSystem/JUtility/TColor.h b/include/JSystem/JUtility/TColor.h
index b0d1ccc3..a9e35a7e 100644
--- a/include/JSystem/JUtility/TColor.h
+++ b/include/JSystem/JUtility/TColor.h
@@ -31,4 +31,4 @@ struct TColor : public GXColor {
};
} // namespace JUtility
-#endif \ No newline at end of file
+#endif
diff --git a/include/d/d_com_inf_game.h b/include/d/d_com_inf_game.h
index ca679ef4..5b363318 100644
--- a/include/d/d_com_inf_game.h
+++ b/include/d/d_com_inf_game.h
@@ -507,8 +507,8 @@ public:
u8 getPictureStatus() { return mPictureStatus; }
void setPictureStatusOn() { mPictureStatus = 2; }
- u8 getScopeMesgStatus() { return mbCamOverrideFarPlane; }
- void setScopeMesgStatus(u8 status) { mbCamOverrideFarPlane = status; }
+ u8 getScopeMesgStatus() { return mScopeMesgStatus; }
+ void setScopeMesgStatus(u8 status) { mScopeMesgStatus = status; }
void setCurrentGrafPort(J2DOrthoGraph* i_graf) { mCurrentGrafPort = i_graf; }
void setCurrentWindow(dDlst_window_c* i_window) { mCurrentWindow = i_window; }
@@ -739,7 +739,7 @@ public:
/* 0x4928 */ bool mItemSwimTimerStatus;
/* 0x4929 */ u8 field_0x4929;
/* 0x492A */ u8 mMesgStatus;
- /* 0x492B */ u8 mbCamOverrideFarPlane;
+ /* 0x492B */ u8 mScopeMesgStatus;
/* 0x492C */ u8 field_0x492c;
/* 0x492D */ u8 field_0x492d;
/* 0x492E */ u8 mCurrButtonBAction;
diff --git a/include/d/d_drawlist.h b/include/d/d_drawlist.h
index d90d57d8..e0b17751 100644
--- a/include/d/d_drawlist.h
+++ b/include/d/d_drawlist.h
@@ -3,6 +3,7 @@
#include "JSystem/J3DGraphBase/J3DDrawBuffer.h"
#include "JSystem/J2DGraph/J2DPicture.h"
+#include "SSystem/SComponent/c_bg_s_shdw_draw.h"
#include "f_op/f_op_view.h"
#include "m_Do/m_Do_ext.h"
#include "SSystem/SComponent/c_rnd.h"
@@ -393,6 +394,22 @@ private:
STATIC_ASSERT(sizeof(dDlst_shadowControl_c) == 0x15E28);
+class ShdwDrawPoly_c : public cBgS_ShdwDraw {
+public:
+ virtual ~ShdwDrawPoly_c() {}
+
+ void setCenter(cXyz* center) { mCenter = center; }
+ cXyz* getCenter() { return mCenter; }
+ void setLightVec(cXyz* lightVec) { mLightVec = lightVec; }
+ cXyz* getLightVec() { return mLightVec; }
+ void setPoly(dDlst_shadowPoly_c* poly) { mPoly = poly; }
+ dDlst_shadowPoly_c* getPoly() { return mPoly; }
+
+ /* 0x34 */ cXyz* mCenter;
+ /* 0x38 */ cXyz* mLightVec;
+ /* 0x3C */ dDlst_shadowPoly_c* mPoly;
+}; // Size: 0x40
+
class dDlst_mirrorPacket : public J3DPacket {
public:
void init(ResTIMG*);
diff --git a/src/JSystem/J2DGraph/J2DPicture.cpp b/src/JSystem/J2DGraph/J2DPicture.cpp
index d16ad1ce..c0d7512b 100644
--- a/src/JSystem/J2DGraph/J2DPicture.cpp
+++ b/src/JSystem/J2DGraph/J2DPicture.cpp
@@ -82,7 +82,7 @@ J2DPicture::J2DPicture(const ResTIMG* pTimg) {
mpTexture[0] = NULL;
mNumTexture = 0;
if (pTimg) {
- insert(pTimg, mNumTexture, 1.0f);
+ append(pTimg, 1.0f);
}
mpPalette = NULL;
initinfo();
@@ -93,7 +93,7 @@ J2DPicture::J2DPicture(const char* name) {
mpTexture[0] = NULL;
mNumTexture = 0;
if (name) {
- insert(name, mNumTexture, 1.0f);
+ append(name, 1.0f);
}
mpPalette = NULL;
initinfo();
@@ -134,7 +134,7 @@ void J2DPicture::private_initiate(const ResTIMG* pTimg, const ResTLUT* pTlut) {
/* 802D35FC-802D3774 .text initinfo__10J2DPictureFv */
void J2DPicture::initinfo() {
mMagic = 'PIC1';
- mBinding = J2DBind_Bottom | J2DBind_Top | J2DBind_Right | J2DBind_Left;
+ setBinding(J2DBinding(J2DBind_Bottom | J2DBind_Top | J2DBind_Right | J2DBind_Left));
mFlag &= 4;
mFlag &= 3;
setBlendRatio(1.0f, 1.0f, 1.0f, 1.0f);
@@ -336,7 +336,7 @@ void J2DPicture::draw(f32 x, f32 y, f32 width, f32 height, bool mirrorX, bool mi
}
for (u8 i = 0; i < mNumTexture; i++) {
if (i < mNumTexture) {
- mpTexture[i]->load((GXTexMapID)i);
+ load(i);
}
}
GXSetNumTexGens(mNumTexture);
@@ -400,7 +400,7 @@ void J2DPicture::drawOut(const JGeometry::TBox2<f32>& posBox, const JGeometry::T
}
for (u8 i = 0; i < mNumTexture; i++) {
if (i < mNumTexture) {
- mpTexture[i]->load((GXTexMapID)i);
+ load(i);
}
}
GXSetNumTexGens(mNumTexture);
@@ -452,7 +452,7 @@ void J2DPicture::drawOut(const JGeometry::TBox2<f32>& posBox, const JGeometry::T
void J2DPicture::drawTexCoord(f32 x, f32 y, f32 width, f32 height, f32 s0, f32 t0, f32 s1, f32 t1, f32 s2, f32 t2, f32 s3, f32 t3, Mtx* mtx) {
for (u8 i = 0; i < mNumTexture; i++) {
if (i < mNumTexture) {
- mpTexture[i]->load(GXTexMapID(i));
+ load(i);
}
}
f32 x2 = x + width;
diff --git a/src/d/d_com_inf_game.cpp b/src/d/d_com_inf_game.cpp
index 5d7c4413..484355d4 100644
--- a/src/d/d_com_inf_game.cpp
+++ b/src/d/d_com_inf_game.cpp
@@ -102,7 +102,7 @@ void dComIfG_play_c::itemInit() {
mItemSwimTimerStatus = 0;
field_0x4929 = 0;
mMesgStatus = 0;
- mbCamOverrideFarPlane = 0;
+ mScopeMesgStatus = 0;
field_0x492c = 0;
field_0x492d = 0;
mCurrButtonBAction = 0;
diff --git a/src/d/d_drawlist.cpp b/src/d/d_drawlist.cpp
index cdb86e67..1e41ab96 100644
--- a/src/d/d_drawlist.cpp
+++ b/src/d/d_drawlist.cpp
@@ -22,27 +22,10 @@
#include "global.h"
#include "weak_bss_3569.h" // IWYU pragma: keep
-
-class ShdwDrawPoly_c : public cBgS_ShdwDraw {
-public:
- virtual ~ShdwDrawPoly_c() {}
-
- void setCenter(cXyz* center) { mCenter = center; }
- cXyz* getCenter() { return mCenter; }
- void setLightVec(cXyz* lightVec) { mLightVec = lightVec; }
- cXyz* getLightVec() { return mLightVec; }
- void setPoly(dDlst_shadowPoly_c* poly) { mPoly = poly; }
- dDlst_shadowPoly_c* getPoly() { return mPoly; }
-
- /* 0x34 */ cXyz* mCenter;
- /* 0x38 */ cXyz* mLightVec;
- /* 0x3C */ dDlst_shadowPoly_c* mPoly;
-}; // Size: 0x40
+#include "weak_data_2100_2080.h" // IWYU pragma: keep
GXTexObj dDlst_shadowControl_c::mSimpleTexObj;
-#include "weak_data_1811.h" // IWYU pragma: keep
-
/* 800804A4-800804C0 .text setViewPort__14dDlst_window_cFffffff */
void dDlst_window_c::setViewPort(f32 x, f32 y, f32 w, f32 h, f32 n, f32 f) {
mViewport.mXOrig = x;
@@ -683,7 +666,6 @@ dDlst_2D_c::dDlst_2D_c(ResTIMG* timg, s16 x, s16 y, u8 alpha) {
/* 800821B0-80082264 .text draw__10dDlst_2D_cFv */
void dDlst_2D_c::draw() {
- /* Nonmatching */
mPicture.setAlpha(mAlpha);
mPicture.draw(mX, mY, false, false, false);
}
@@ -1283,6 +1265,25 @@ void dDlst_shadowPoly_c::draw() {
GXEnd();
}
+static void dummy() {
+ // Fakematch to fix the vtable order and weak destructor order of dDlst_shadowReal_c and dDlst_shadowTri_c.
+ struct {
+ dDlst_shadowReal_c temp[1];
+ }* temp;
+ delete temp;
+}
+
+/* 80083668-800836E0 .text J3DDrawBuffer__create__FUl */
+static J3DDrawBuffer * J3DDrawBuffer__create(u32 size) {
+ J3DDrawBuffer * buffer = new J3DDrawBuffer();
+ if (buffer != NULL) {
+ if (buffer->allocBuffer(size) == 0)
+ return buffer;
+ delete buffer;
+ }
+ return NULL;
+}
+
/* 800836E0-800837F0 .text init__18dDlst_shadowReal_cFv */
void dDlst_shadowReal_c::init() {
u32 texDataSize = GXGetTexBufferSize(0x80, 0x80, GX_TF_I4, GX_FALSE, 0);
@@ -1344,12 +1345,11 @@ void dDlst_shadowReal_c::imageDraw(Mtx drawMtx) {
/* 8008398C-80083B8C .text draw__18dDlst_shadowReal_cFv */
void dDlst_shadowReal_c::draw() {
- /* Nonmatching */
if (mState != 1)
return;
static GXColor l_color = { 0x00, 0x00, 0x00, 0x40 };
- l_color.a = mAlpha;
+ l_color.a = (mAlpha >> 2) & ~3;
GXSetTevColor(GX_TEVREG0, l_color);
GXCallDisplayList(l_shadowVolMat, 0x40);
@@ -1436,9 +1436,11 @@ BOOL realPolygonCheck(cXyz* param_0, f32 param_1, f32 param_2, cXyz* param_3, dD
ShdwDrawPoly_c shdwDrawPoly;
cXyz local_8c;
cXyz local_98;
- f32 var1 = param_1 + param_2 - cLib_maxLimit(param_1 * param_1 * 0.002f, 120.0f);
+ f32 tmp1 = param_1 * param_1 * 0.002f;
+ f32 tmp2 = cLib_maxLimit(tmp1, 120.0f);
+ f32 var1 = param_1 + param_2 - tmp2;
local_8c.y = param_0->y - var1;
- local_98.y = param_0->y + param_1 * 0.15f;
+ local_98.y = param_0->y + param_1 * 0.4f;
local_98.x = param_0->x + param_3->x * var1;
if (local_98.x < param_0->x) {
local_8c.x = local_98.x;
@@ -1458,7 +1460,7 @@ BOOL realPolygonCheck(cXyz* param_0, f32 param_1, f32 param_2, cXyz* param_3, dD
}
local_8c.z -= param_1;
local_98.z += param_1;
- mDoLib_clipper::changeFar(mDoLib_clipper::getFovyRate() * 10000.0f);
+ mDoLib_clipper::changeFar(mDoLib_clipper::getFovyRate() * 3000.0f);
s32 clip = mDoLib_clipper::clip(j3dSys.getViewMtx(), &local_98, &local_8c);
mDoLib_clipper::resetFar();
if (clip) {
@@ -1487,10 +1489,10 @@ u8 setShadowRealMtx(Mtx r26, Mtx r27, Mtx r28, cXyz* r6, cXyz* r29, f32 f30, f32
int r31 = 200.0f * f1;
cXyz local_64 = *r6 - *r29;
local_64.y += f31;
- f32 tmp = 3000.0f * (50.0f - f31);
- if (tmp < 0.8f) {
- local_64.x = 0.8f;
- local_64.z = 0.8f;
+ f32 tmp = 0.02f * (50.0f - f31);
+ if (tmp < 0.0f) {
+ local_64.x = 0.0f;
+ local_64.z = 0.0f;
} else if (tmp < 1.0f) {
local_64.x *= tmp;
local_64.z *= tmp;
@@ -1534,7 +1536,7 @@ u32 dDlst_shadowReal_c::set(u32 key, s8 param_2, J3DModel* model, cXyz* param_4,
}
mAlpha = setShadowRealMtx(
mViewMtx, mRenderProjMtx, mReceiverProjMtx, &lightPos, param_4, param_5, param_6, &mShadowRealPoly,
- param_2 == 0 ? 0.0f : param_6 * 0.00025f
+ param_2 == 0 ? 0.0f : param_6 * 0.0007f
);
if (mAlpha == 0) {
return 0;
@@ -1673,12 +1675,12 @@ void dDlst_shadowSimple_c::set(cXyz* pos, f32 y, f32 param_3, cXyz* floorNrm, s1
mDoMtx_stack_c::get()[0][2] = 0.0f;
mDoMtx_stack_c::get()[0][3] = pos->x;
- mDoMtx_stack_c::get()[1][0] = -xs * yy;
+ mDoMtx_stack_c::get()[1][0] = -floorNrm->x * yy;
mDoMtx_stack_c::get()[1][1] = floorNrm->y;
mDoMtx_stack_c::get()[1][2] = zz;
mDoMtx_stack_c::get()[1][3] = y;
- mDoMtx_stack_c::get()[2][0] = xs * zz;
+ mDoMtx_stack_c::get()[2][0] = floorNrm->x * zz;
mDoMtx_stack_c::get()[2][1] = floorNrm->z;
mDoMtx_stack_c::get()[2][2] = yy;
mDoMtx_stack_c::get()[2][3] = pos->z;
@@ -1737,8 +1739,7 @@ void dDlst_shadowControl_c::draw(Mtx drawMtx) {
GXSetNumIndStages(0);
dKy_GxFog_set();
GXSetChanCtrl(GX_ALPHA0, GX_FALSE, GX_SRC_REG, GX_SRC_REG, 0, GX_DF_NONE, GX_AF_NONE);
- GXColor alpha = { 0x00, 0x00, 0x00, 0x20 };
- GXSetChanMatColor(GX_ALPHA0, alpha);
+ GXSetChanMatColor(GX_ALPHA0, (GXColor){ 0x00, 0x00, 0x00, 0x20 });
GXSetArray(GX_VA_POS, l_shadowVolPos, sizeof(*l_shadowVolPos));
GXSetTexCoordGen(GX_TEXCOORD0, GX_TG_MTX3x4, GX_TG_POS, GX_TEXMTX0);
GXSetNumTevStages(1);
@@ -1851,8 +1852,8 @@ void dDlst_mirrorPacket::draw() {
GXSetNumIndStages(0);
dKy_GxFog_set();
- static GXColor l_color = { 0xFF, 0xFF, 0xFF, 0xE0 };
- l_color.a = mAlpha;
+ static GXColor l_color = { 0xFF, 0xFF, 0xFF, 0x40 };
+ l_color.a = (mAlpha >> 2) & ~3;
GXSetTevColor(GX_TEVREG0, l_color);
l_color.a = mDoGph_gInf_c::getBackColor().a;
@@ -2060,17 +2061,6 @@ dDlst_list_c::dDlst_list_c() {
mpSpotModel = NULL;
}
-/* 80083668-800836E0 .text J3DDrawBuffer__create__FUl */
-static J3DDrawBuffer * J3DDrawBuffer__create(u32 size) {
- J3DDrawBuffer * buffer = new J3DDrawBuffer();
- if (buffer != NULL) {
- if (buffer->allocBuffer(size) == 0)
- return buffer;
- delete buffer;
- }
- return NULL;
-}
-
/* 80085F6C-800861F4 .text init__12dDlst_list_cFv */
bool dDlst_list_c::init() {
mpOpaListSky = J3DDrawBuffer__create(0x20);
@@ -2178,9 +2168,9 @@ void dDlst_list_c::reset() {
void dDlst_list_c::entryZSortXluDrawList(J3DDrawBuffer* pBuffer, J3DPacket* pPacket, cXyz& pos) {
f32 z = -J3DCalcZValue(j3dSys.getViewMtx(), pos);
u16 idx;
- if (40.05859f < z) {
+ if (40.058594f < z) {
if (9960.941f > z) {
- idx = z / 39.05859f;
+ idx = z / 39.058594f;
} else {
idx = 0xFF;
}
@@ -2208,8 +2198,10 @@ void dDlst_list_c::draw(dDlst_base_c** pList, dDlst_base_c** pEnd) {
(*pList)->draw();
}
-GXColor dDlst_list_c::mWipeColor = { 0, 0, 0, 0 };
+ResTIMG* dDlst_list_c::mToonImage;
+ResTIMG* dDlst_list_c::mToonExImage;
+GXColor dDlst_list_c::mWipeColor = { 0, 0, 0, 0 };
bool dDlst_list_c::mWipe;
f32 dDlst_list_c::mWipeRate = 0.0f;
f32 dDlst_list_c::mWipeSpeed = 0.0f;
diff --git a/src/d/d_ovlp_fade2.cpp b/src/d/d_ovlp_fade2.cpp
index dafe27ff..82300075 100644
--- a/src/d/d_ovlp_fade2.cpp
+++ b/src/d/d_ovlp_fade2.cpp
@@ -235,15 +235,6 @@ static cPhs_State dOvlpFd2_Create(void* i_this) {
return cPhs_COMPLEATE_e;
}
-// Fakematch. Manually define this template function here to make it non-weak, fixing the weak function ordering.
-template <>
-s8 cLib_calcTimer<s8>(s8* value) {
- if (*(s8*)value != 0) {
- *value = *value - 1;
- }
- return *value;
-}
-
overlap_method_class l_dOvlpFd2_Method = {
(process_method_func)dOvlpFd2_Create,
(process_method_func)dOvlpFd2_Delete,
@@ -281,3 +272,6 @@ overlap_process_profile_definition g_profile_OVERLAP3 = {
&l_dOvlpFd2_Method,
};
#endif
+
+// Fakematch to fix the weak func order of cLib_calcTimer<signed char>(signed char*)
+#pragma sym off
diff --git a/src/f_op/f_op_msg_mng.cpp b/src/f_op/f_op_msg_mng.cpp
index 91c4040e..11a9063e 100644
--- a/src/f_op/f_op_msg_mng.cpp
+++ b/src/f_op/f_op_msg_mng.cpp
@@ -382,14 +382,14 @@ fpc_ProcID fop_Timer_create(s16 param_1, u8 param_2, u16 param_3, u8 param_4, u8
}
/* 8002B324-8002B520 .text fopMsgM_messageTypeSelect__FP10fopAc_ac_cP4cXyzPUlPUl */
-uint fopMsgM_messageTypeSelect(fopAc_ac_c* param_1, cXyz* param_2, u32* param_3, u32* param_4) {
+fpc_ProcID fopMsgM_messageTypeSelect(fopAc_ac_c* param_1, cXyz* param_2, u32* param_3, u32* param_4) {
fopMsgM_msgGet_c msgGet;
msgGet.mMsgIdx = 0;
msgGet.mGroupID = 0;
msgGet.mMsgID = 0;
msgGet.mResMsgIdx = 0;
- uint pcId;
+ fpc_ProcID pcId;
if(*param_3 >> 0x10 == 0x63) {
pcId = fopMsgM_create(PROC_SCP, param_1, param_2, param_3, param_4, NULL);
}
@@ -463,7 +463,7 @@ fpc_ProcID fopMsgM_messageSet(u32 msgNo, fopAc_ac_c* pActor) {
dComIfGp_clearMesgCameraTagInfo();
cXyz lookAtPos = pActor->eyePos;
- if(i_msgID == -1) {
+ if(i_msgID == fpcM_ERROR_PROCESS_ID_e) {
i_msgID = fopMsgM_messageTypeSelect(pActor, &lookAtPos, &msgNo, &msgNo);
}
else if(fopMsgM_IsExecuting(i_msgID)) {
@@ -496,7 +496,7 @@ fpc_ProcID fopMsgM_messageSet(u32 msgNo, cXyz* lookAtPos) {
dComIfGp_clearMesgAnimeTagInfo();
dComIfGp_clearMesgCameraTagInfo();
- if(i_msgID == -1) {
+ if(i_msgID == fpcM_ERROR_PROCESS_ID_e) {
i_msgID = fopMsgM_messageTypeSelect(NULL, lookAtPos, &msgNo, &msgNo);
}
else if(fopMsgM_IsExecuting(i_msgID)) {
@@ -528,7 +528,7 @@ fpc_ProcID fopMsgM_messageSet(u32 msgNo) {
}
cXyz lookAtPos(0.0f, 0.0f, 0.0f);
- if(i_msgID == -1) {
+ if(i_msgID == fpcM_ERROR_PROCESS_ID_e) {
i_msgID = fopMsgM_messageTypeSelect(NULL, &lookAtPos, &msgNo, &msgNo);
}
else if(fopMsgM_IsExecuting(i_msgID)) {
@@ -582,7 +582,7 @@ u32 fopMsgM_tactMessageSet() {
u32 msgNoTemp = 0x5AC;
cXyz lookAtPos(0.0f, 0.0f, 0.0f);
- if(i_msgID == -1) {
+ if(i_msgID == fpcM_ERROR_PROCESS_ID_e) {
i_msgID = fopMsgM_messageTypeSelect(NULL, &lookAtPos, &msgNoTemp, &msgNoTemp);
fopMsgM_tactMsgFlagOn();
}
@@ -5139,7 +5139,7 @@ f32 fopMsgM_valueIncrease(int max, int value, u8 mode) {
/* 8003C07C-8003C0F8 .text fopMsgM_blendInit__FP18fopMsgM_pane_classPCc */
void fopMsgM_blendInit(fopMsgM_pane_class* i_this, const char* data) {
- ((J2DPicture*)i_this->pane)->insert(data, ((J2DPicture*)i_this->pane)->getNumTexture(), 1.0f);
+ ((J2DPicture*)i_this->pane)->append(data, 1.0f);
J2DPicture* pic = (J2DPicture*)i_this->pane;
pic->setBlendColorRatio(0.0f, 1.0f, 1.0f, 1.0f);
pic->setBlendAlphaRatio(0.0f, 1.0f, 1.0f, 1.0f);
@@ -5147,7 +5147,7 @@ void fopMsgM_blendInit(fopMsgM_pane_class* i_this, const char* data) {
/* 8003C0F8-8003C16C .text fopMsgM_blendInit__FP10J2DPicturePCc */
void fopMsgM_blendInit(J2DPicture* pic, const char* data) {
- pic->insert(data, pic->getNumTexture(), 1.0f);
+ pic->append(data, 1.0f);
pic->setBlendColorRatio(0.0f, 1.0f, 1.0f, 1.0f);
pic->setBlendAlphaRatio(0.0f, 1.0f, 1.0f, 1.0f);
}
@@ -5155,18 +5155,15 @@ void fopMsgM_blendInit(J2DPicture* pic, const char* data) {
/* 8003C16C-8003C1D4 .text fopMsgM_blendDraw__FP18fopMsgM_pane_classPCc */
void fopMsgM_blendDraw(fopMsgM_pane_class* i_this, const char* data) {
i_this->pane->show();
- // fakematch - forcing the load order/reloads from i_this
- J2DPicture* pic = (J2DPicture*)i_this->pane;
- pic->remove(pic->getNumTexture() - 1);
- pic = (J2DPicture*)i_this->pane;
- pic->insert(data, pic->getNumTexture(), 1.0f);
+ ((J2DPicture*)i_this->pane)->remove();
+ ((J2DPicture*)i_this->pane)->append(data, 1.0f);
}
/* 8003C1D4-8003C234 .text fopMsgM_blendDraw__FP10J2DPicturePCc */
void fopMsgM_blendDraw(J2DPicture* pic, const char* data) {
pic->show();
- pic->remove(pic->getNumTexture() - 1);
- pic->insert(data, pic->getNumTexture(), 1.0f);
+ pic->remove();
+ pic->append(data, 1.0f);
}
/* 8003C234-8003C380 .text fopMsgM_setFontsizeCenter__FPcPcPcPcii */