d_a_npc_chin matching (#2822)

This commit is contained in:
Max Roncace 2025-11-19 00:10:04 -05:00 committed by GitHub
parent 1b2fe5e2e3
commit 7f863c069b
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
19 changed files with 2200 additions and 2226 deletions

View File

@ -1858,7 +1858,7 @@ config.libs = [
ActorRel(Equivalent, "d_a_npc_bouS", extra_cflags=[DANPCF_C_HACK]), # weak func order
ActorRel(NonMatching, "d_a_npc_cdn3"),
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_npc_chat", extra_cflags=[DANPCF_C_HACK]),
ActorRel(NonMatching, "d_a_npc_chin"),
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_npc_chin", extra_cflags=[DANPCF_C_HACK]),
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_npc_clerka"),
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_npc_clerkb"),
ActorRel(MatchingFor("GZ2E01", "GZ2P01", "GZ2J01"), "d_a_npc_clerkt"),

View File

@ -2,6 +2,34 @@
#define D_A_NPC_CHIN_H
#include "d/actor/d_a_npc.h"
#include "d/actor/d_a_obj_glowSphere.h"
struct daNpcChin_HIOParam {
/* 0x00 */ daNpcF_HIOParam common;
};
class daNpcChin_Param_c {
public:
/* 8099188C */ virtual ~daNpcChin_Param_c() {}
static daNpcChin_HIOParam const m;
};
#if DEBUG
class daNpcChin_HIO_c : public mDoHIO_entry_c {
public:
daNpcChin_HIO_c();
void listenPropertyEvent(const JORPropertyEvent*);
void genMessage(JORMContext*);
/* 0x08 */ daNpcChin_HIOParam m;
};
#define NPC_CHIN_HIO_CLASS daNpcChin_HIO_c
#else
#define NPC_CHIN_HIO_CLASS daNpcChin_Param_c
#endif
/**
* @ingroup actors-npcs
@ -11,94 +39,181 @@
* @details
*
*/
class daNpcChin_c : public fopAc_ac_c {
class daNpcChin_c : public daNpcF_c {
public:
class _SpotLight_c {
public:
/* 8098BF0C */ void loadModel();
/* 0x00 */ J3DModel* mpModel;
/* 0x04 */ mDoExt_btkAnm mBtkAnm;
/* 0x1C */ cXyz mPos;
/* 0x28 */ csXyz mRot;
/* 0x30 */ cXyz mScale;
/* 0x3C */ s8 mSwitch;
/* 8098BF0C */ int loadModel();
inline void switch_off() {
setSwitch(false);
setPlaySpeed(0.0f);
}
inline void switch_on() {
setSwitch(true);
setPlaySpeed(1.0f);
}
inline void setPlaySpeed(f32 i_speed) {
mBtkAnm.setPlaySpeed(i_speed);
}
inline void setSwitch(s8 i_active) {
mSwitch = i_active;
}
/* 8098C000 */ void setMtx();
inline bool is_switch_on() {
return mSwitch == TRUE;
}
/* 8098C060 */ void draw(dKy_tevstr_c*);
inline void setPos(cXyz& i_pos) {
mPos = i_pos;
}
inline void playBtk() {
mBtkAnm.play();
}
_SpotLight_c() {
mpModel = NULL;
mRot.set(0, 0, 0);
mScale.set(1.0f, 1.0f, 1.0f);
}
~_SpotLight_c() {}
};
typedef bool (daNpcChin_c::*actionFunc)(void*);
typedef int (daNpcChin_c::*eventFunc)(int);
/* 8098C104 */ daNpcChin_c();
/* 8098C2D8 */ ~daNpcChin_c();
/* 8098C510 */ void Create();
/* 8098C858 */ void CreateHeap();
/* 8098CCE4 */ void Delete();
/* 8098CD18 */ void Execute();
/* 8098CD74 */ void Draw();
/* 8098CDE8 */ void ctrlJoint(J3DJoint*, J3DModel*);
/* 8098CFB8 */ void createHeapCallBack(fopAc_ac_c*);
/* 8098CFD8 */ void ctrlJointCallBack(J3DJoint*, int);
/* 8098D024 */ void setParam();
/* 8098D0F8 */ void main();
/* 8098D198 */ void ctrlBtk();
/* 8098D26C */ void setAttnPos();
/* 8098D58C */ void setExpressionAnm(int, bool);
/* 8098D848 */ void setExpressionBtp(int);
/* 8098D938 */ bool setMotionAnm(int, f32);
/* 8098DB44 */ void setExpression(int, f32);
/* 8098DB70 */ void setMotion(int, f32, int);
/* 8098DBB4 */ bool drawDbgInfo();
/* 8098C2D8 */ virtual ~daNpcChin_c();
/* 8098C510 */ int Create();
/* 8098C858 */ int CreateHeap();
/* 8098CCE4 */ int Delete();
/* 8098CD18 */ int Execute();
/* 8098CD74 */ int Draw();
/* 8098CDE8 */ int ctrlJoint(J3DJoint*, J3DModel*);
/* 8098CFB8 */ static int createHeapCallBack(fopAc_ac_c*);
/* 8098CFD8 */ static int ctrlJointCallBack(J3DJoint*, int);
/* 8098D024 */ virtual void setParam();
/* 8098D0F8 */ virtual int main();
/* 8098D198 */ virtual int ctrlBtk();
/* 8098D26C */ virtual void setAttnPos();
/* 8098D58C */ virtual bool setExpressionAnm(int, bool);
/* 8098D848 */ virtual bool setExpressionBtp(int);
/* 8098D938 */ virtual void setMotionAnm(int, f32);
/* 8098DB44 */ virtual void setExpression(int, f32);
/* 8098DB70 */ virtual void setMotion(int, f32, int);
/* 8098DBB4 */ virtual int drawDbgInfo();
/* 8098DBBC */ void reset();
/* 8098DCD0 */ void playExpression();
/* 8098E04C */ void playMotion();
/* 8098E5C4 */ void setAction(bool (daNpcChin_c::*)(void*));
/* 8098E5C4 */ int setAction(actionFunc i_func);
/* 8098E66C */ void setLookMode(int);
/* 8098E690 */ void lookat();
/* 8098E870 */ void step(s16, int, int);
/* 8098EA00 */ void chkFindPlayer();
/* 8098E870 */ bool step(s16, int, int);
/* 8098EA00 */ BOOL chkFindPlayer();
/* 8098EACC */ void setExpressionTalkAfter();
/* 8098EBE8 */ void wait(void*);
/* 8098EFE4 */ void talk(void*);
/* 8098EBE8 */ bool wait(void*);
/* 8098EFE4 */ bool talk(void*);
/* 8098F208 */ void _talk_motion();
/* 8098F2BC */ void demo(void*);
/* 8098F414 */ void watch_game(void*);
/* 8098F2BC */ bool demo(void*);
/* 8098F414 */ bool watch_game(void*);
/* 8098F758 */ void Event_DT();
/* 8098FB3C */ void isGameEnd(int&);
/* 8098FD38 */ void _chkGameClear();
void Event_DT_Base() {
dComIfGp_event_reset();
mOrderEvtNo = 0;
mEventIdx = -1;
}
/* 8098FB3C */ BOOL isGameEnd(int&);
/* 8098FD38 */ BOOL _chkGameClear();
/* 8098FD5C */ void SphereReset();
/* 8098FD80 */ void _Evt_GameStart(int);
/* 8098FE28 */ void _Evt_GameStart_CutInit(int const&);
/* 8098FF30 */ void _Evt_GameStart_CutMain(int const&);
/* 8098FFD0 */ void _Evt_GameFailed(int);
/* 80990078 */ void _Evt_GameFailed_CutInit(int const&);
/* 80990174 */ void _Evt_GameFailed_CutMain(int const&);
/* 80990218 */ void _Evt_GameSucceed(int);
/* 809902C0 */ void _Evt_GameSucceed_CutInit(int const&);
/* 8099041C */ void _Evt_GameSucceed_CutMain(int const&);
/* 809905C4 */ void _Evt_SelectGiveUp(int);
/* 8099066C */ void _Evt_SelectGiveUp_CutInit(int const&);
/* 8099071C */ void _Evt_SelectGiveUp_CutMain(int const&);
/* 809907AC */ void _Evt_GameGiveUp(int);
/* 80990854 */ void _Evt_GameGiveUp_CutInit(int const&);
/* 80990950 */ void _Evt_GameGiveUp_CutMain(int const&);
/* 809909F4 */ void _Evt_Appear(int);
/* 80990A9C */ void _Evt_Appear_CutInit(int const&);
/* 80990BD8 */ void _Evt_Appear_CutMain(int const&);
/* 80990C9C */ void _Evt_SpotLight_Off(int);
/* 80990D44 */ void _Evt_SpotLight_Off_CutInit(int const&);
/* 80990DDC */ void _Evt_SpotLight_Off_CutMain(int const&);
/* 80991858 */ void setMtx();
/* 8098FD80 */ int _Evt_GameStart(int);
/* 8098FE28 */ int _Evt_GameStart_CutInit(int const&);
/* 8098FF30 */ int _Evt_GameStart_CutMain(int const&);
/* 8098FFD0 */ int _Evt_GameFailed(int);
/* 80990078 */ int _Evt_GameFailed_CutInit(int const&);
/* 80990174 */ int _Evt_GameFailed_CutMain(int const&);
/* 80990218 */ int _Evt_GameSucceed(int);
/* 809902C0 */ int _Evt_GameSucceed_CutInit(int const&);
/* 8099041C */ int _Evt_GameSucceed_CutMain(int const&);
/* 809905C4 */ int _Evt_SelectGiveUp(int);
/* 8099066C */ int _Evt_SelectGiveUp_CutInit(int const&);
/* 8099071C */ int _Evt_SelectGiveUp_CutMain(int const&);
/* 809907AC */ int _Evt_GameGiveUp(int);
/* 80990854 */ int _Evt_GameGiveUp_CutInit(int const&);
/* 80990950 */ int _Evt_GameGiveUp_CutMain(int const&);
/* 809909F4 */ int _Evt_Appear(int);
/* 80990A9C */ int _Evt_Appear_CutInit(int const&);
/* 80990BD8 */ int _Evt_Appear_CutMain(int const&);
/* 80990C9C */ int _Evt_SpotLight_Off(int);
/* 80990D44 */ int _Evt_SpotLight_Off_CutInit(int const&);
/* 80990DDC */ int _Evt_SpotLight_Off_CutMain(int const&);
/* 80991858 */ void setMtx() {
daNpcF_c::setMtx();
mSpotLight.setMtx();
}
BOOL isMiniGamePlaying() { return mIsMiniGamePlaying; }
inline BOOL isMiniGamePlaying() { return mIsMiniGamePlaying; }
static u8 mEvtSeqList[96];
inline s8 getSWBit() { return (fopAcM_GetParam(this) >> 8) & 0xff; }
private:
/* 0x568 */ u8 field_0x568[0xe08 - 0x568];
inline s16 getMessageNo() { return (s16)shape_angle.x; }
inline void Action() {
if (mAction != NULL) {
(this->*mAction)(0);
}
}
inline void ForcibleTalk_On() { field_0xe06 = 1; }
inline void ForcibleTalk_Off() { field_0xe06 = 0; }
inline u8 getForcibleTalk2() { return field_0xe06; }
static eventFunc mEvtSeqList[8];
/* 0xB48 */ Z2Creature mSound;
/* 0xBD8 */ daNpcF_MatAnm_c* mpMatAnm;
/* 0xBDC */ daNpcF_Lookat_c mLookat1;
/* 0xC78 */ NPC_CHIN_HIO_CLASS* mpHIO;
/* 0xC7C */ dCcD_Cyl mObjInf;
/* 0xDB8 */ actionFunc mAction;
/* 0xDC4 */ request_of_phase_process_class mPhases[6];
/* 0xDF4 */ fpc_ProcID field_0xdf4;
/* 0xDF8 */ int field_0xdf8;
/* 0xDFC */ int field_0xdfc;
/* 0xE00 */ s16 field_0xe00;
/* 0xE02 */ s16 mLookMode;
/* 0xE04 */ s16 mActionMode;
/* 0xE06 */ u8 field_0xe06;
/* 0xE07 */ s8 field_0xe07;
/* 0xE08 */ s8 mIsMiniGamePlaying;
/* 0xE09 */ u8 field_0xe09[0xe78 - 0xe09];
/* 0xE0C */ _GlSph_Mng_c* mpSphMng;
/* 0xE10 */ u32 mGameTime;
/* 0xE14 */ int field_0xe14;
/* 0xE18 */ int field_0xe18;
/* 0xE1C */ f32 field_0xe1c;
/* 0xE20 */ f32 field_0xe20;
/* 0xE24 */ s8 field_0xe24;
/* 0xE25 */ s8 field_0xe25;
/* 0xE26 */ u8 field_0xe26[0xe30 - 0xe26];
/* 0xE30 */ _SpotLight_c mSpotLight;
/* 0xE70 */ daNpcF_ActorMngr_c mActorMngrs[1];
};
STATIC_ASSERT(sizeof(daNpcChin_c) == 0xe78);
class daNpcChin_Param_c {
public:
/* 8099188C */ ~daNpcChin_Param_c();
static u8 const m[108];
};
#endif /* D_A_NPC_CHIN_H */

View File

@ -49,7 +49,7 @@ public:
/* 80BFA4DC */ int entry(daGlwSph_c*);
/* 80BFA528 */ void remove(daGlwSph_c*);
/* 80BFA55C */ int _setting_main();
/* 80BFA5C4 */ bool _chkAllGet_main();
/* 80BFA5C4 */ BOOL _chkAllGet_main();
/* 80BFA60C */ void SphSeProc();
/* 80BFA6D8 */ static void clrSphSe();
/* 80BFA6E8 */ static u16 getSphSe();
@ -59,7 +59,7 @@ public:
_setting_main();
}
bool isAllGet() {
BOOL isAllGet() {
return _chkAllGet_main();
}
@ -100,7 +100,7 @@ public:
ACTION_MOVE_e,
};
/* 80BF9430 */ _GlSph_Mng_c& getSphMng();
/* 80BF9430 */ static _GlSph_Mng_c& getSphMng();
/* 80BF943C */ void setBaseMtx();
/* 80BF94AC */ static int createHeapCallBack(fopAc_ac_c*);
/* 80BF94CC */ int CreateHeap();

View File

@ -1090,6 +1090,7 @@ public:
void offDkCaught2() { offNoResetFlg0(FLG0_DK_CAUGHT); }
void onWaterFallFrontHit() { onEndResetFlg1(ERFLG1_UNK_800); }
void onCanoeItemCancel() { onEndResetFlg1(ERFLG1_UNK_20000000); }
void onSwordTriggerNon() { onEndResetFlg1(ERFLG1_UNK_40000000); }
u32 checkBoarSingleBattle() const { return checkNoResetFlg2(daPy_FLG2(FLG2_UNK_1000000 | FLG2_BOAR_SINGLE_BATTLE)); }
u32 checkWolfDashAutoJump() const { return checkNoResetFlg2(FLG2_WOLF_DASH_AUTO_JUMP); }

View File

@ -2159,6 +2159,14 @@ inline s8 dComIfGs_Grass_hide_Check() {
return g_dComIfG_gameInfo.field_0x1ddfc;
}
inline int dComIfGs_getHookGameTime() {
return g_dComIfG_gameInfo.info.getMiniGame().getHookGameTime();
}
inline void dComIfGs_setHookGameTime(u32 i_time) {
g_dComIfG_gameInfo.info.getMiniGame().setHookGameTime(i_time);
}
void dComIfGp_setSelectItem(int index);
s32 dComIfGp_offHeapLockFlag(int flag);
void dComIfGp_createSubExpHeap2D();

View File

@ -180,7 +180,7 @@ public:
u8 isSelectMessage() { return mSelectMessage; }
void onNonStopJunpFlowFlag() { mNonStopJunpFlowFlag = 1; }
u16 getSelectNum() { return query005(NULL, NULL, 0); }
s16 getChoiceNo() { return mChoiceNo; }
int getChoiceNo() { return (s16)mChoiceNo; }
void setMsg(u32 msg) { mMsg = msg; }
bool checkEndFlow() { return field_0x26 == 1; }

View File

@ -676,13 +676,15 @@ public:
void setBalloonScore(u32 i_score) { mBalloonScore = i_score; }
void setRaceGameTime(u32 i_time) { mRaceGameTime = i_time; }
void setHookGameTime(u32 i_time) { mHookGameTime = i_time; }
u32 getRaceGameTime() const { return mRaceGameTime; }
u32 getBalloonScore() const { return mBalloonScore; }
u32 getHookGameTime() const { return mHookGameTime; }
private:
/* 0x00 */ u8 unk0[1][4];
/* 0x04 */ u32 mStarTime;
/* 0x04 */ u32 mHookGameTime;
/* 0x08 */ u32 mBalloonScore;
/* 0x0C */ u32 mRaceGameTime;
/* 0x10 */ u32 unk16;

View File

@ -9,11 +9,11 @@ class JKRArchive;
class JKRExpHeap;
s32 dTimer_createStockTimer();
s32 dTimer_createTimer(s32 i_mode, u32 i_limitMs, u8 i_type, u8 param_3, f32 param_4, f32 param_5,
fpc_ProcID dTimer_createTimer(s32 i_mode, u32 i_limitMs, u8 i_type, u8 param_3, f32 param_4, f32 param_5,
f32 param_6, f32 param_7);
u32 dTimer_createGetIn2D(s32 param_0, cXyz i_pos);
int dTimer_getRestTimeMs();
u8 dTimer_isStart();
bool dTimer_isStart();
void dTimer_show();
void dTimer_hide();
u8 dTimer_isReadyFlag();
@ -132,7 +132,7 @@ public:
/* 8025D9F0 */ int getTimeMs();
/* 8025DA54 */ int getLimitTimeMs();
/* 8025DA9C */ int getRestTimeMs();
/* 8025DB10 */ u8 isStart();
/* 8025DB10 */ bool isStart();
/* 802613DC */ int createGetIn(cXyz);
s32 createStart(u16 param_0) { return mp_tm_scrn->createStart(param_0); }

File diff suppressed because it is too large Load Diff

View File

@ -1399,7 +1399,8 @@ int daNpc_grR_c::talk(void* param_1) {
} else if (mType == TYPE_SPAWATER) {
/* dSv_event_flag_c::F_0399 - Kakariko Village - Conversation with Gor Liggs - hot spring game available */
if (daNpcF_chkEvtBit(399)) {
if (mFlow.getChoiceNo() == 0) {
int choiceNo = mFlow.getChoiceNo();
if (choiceNo == 0) {
dStage_changeScene(0x24, 0.0f, 0, fopAcM_GetRoomNo(this), 0, -1);
} else {
rv = TRUE;

View File

@ -637,7 +637,8 @@ BOOL daNpc_Hoz_c::evtEndProc() {
field_0xf8a = 1;
field_0xf8c = 0;
if (mFlow.getChoiceNo() == 0) {
int choiceNo = mFlow.getChoiceNo();
if (choiceNo == 0) {
dMeter2Info_setMiniGameItem(3);
dMeter2Info_onMenuInForce(2);
}
@ -1315,16 +1316,19 @@ int daNpc_Hoz_c::talk(void* param_0) {
dComIfGp_event_reset();
mMode = 3;
int choiceNo;
switch (mType) {
case 1:
if (dComIfGs_isSwitch(field_0xf88, fopAcM_GetRoomNo(this))) {
if (mFlow.getChoiceNo() == 0) {
choiceNo = mFlow.getChoiceNo();
if (choiceNo == 0) {
field_0xf8c = 1;
mEvtNo = 1;
evtChange();
}
} else if (dMeter2Info_getRentalBombBag() == 0xFF) {
if (mFlow.getChoiceNo() == 0) {
choiceNo = mFlow.getChoiceNo();
if (choiceNo == 0) {
dMeter2Info_setMiniGameItem(3);
dMeter2Info_onMenuInForce(2);
}
@ -1332,7 +1336,8 @@ int daNpc_Hoz_c::talk(void* param_0) {
break;
case 2:
if (daNpcT_chkTmpBit(0x43)) {
if (mFlow.getChoiceNo() == 0) {
choiceNo = mFlow.getChoiceNo();
if (choiceNo == 0) {
field_0xf8c = 1;
mEvtNo = 1;
evtChange();
@ -1341,7 +1346,8 @@ int daNpc_Hoz_c::talk(void* param_0) {
break;
case 5:
field_0xf8a = 1;
if (mFlow.getChoiceNo() == 0) {
choiceNo = mFlow.getChoiceNo();
if (choiceNo == 0) {
field_0xf8c = 1;
mEvtNo = 1;
evtChange();

View File

@ -3322,7 +3322,8 @@ int daNpc_Kn_c::ECut_secondEncount(int i_idx) {
break;
case 10:
if (talkProc(0, 0, NULL, 0)) {
if (mFlow.getChoiceNo() == 0) {
int choiceNo = mFlow.getChoiceNo();
if (choiceNo == 0) {
int sp8 = 0;
switch (mType) {
case 1:

View File

@ -1100,6 +1100,7 @@ int daNpc_myna2_c::ECut_gameFailure(int i_staffId) {
}
}
int choiceNo;
switch (prm) {
case 0:
calcHovering(0, 1);
@ -1110,7 +1111,8 @@ int daNpc_myna2_c::ECut_gameFailure(int i_staffId) {
case 10:
calcHovering(0, 1);
if (talkProc(NULL, 1, NULL)) {
if (mFlow.getChoiceNo() == 0) {
choiceNo = mFlow.getChoiceNo();
if (choiceNo == 0) {
dStage_changeScene(6, 0.0f, 10, fopAcM_GetRoomNo(this), 0, -1);
} else {
rt = 1;
@ -1159,6 +1161,7 @@ int daNpc_myna2_c::ECut_gameGoal(int i_staffId) {
}
}
int choiceNo;
switch (prm) {
case 0:
calcHovering(0, 1);
@ -1169,7 +1172,8 @@ int daNpc_myna2_c::ECut_gameGoal(int i_staffId) {
case 10:
calcHovering(0, 1);
if (talkProc(NULL, 1, NULL)) {
if (mFlow.getChoiceNo() == 0) {
choiceNo = mFlow.getChoiceNo();
if (choiceNo == 0) {
dStage_changeScene(11, 0.0f, 10, fopAcM_GetRoomNo(this), 0, -1);
} else {
rt = 1;
@ -1232,6 +1236,7 @@ int daNpc_myna2_c::ECut_gameGoalSuccess(int i_staffId) {
}
}
int choiceNo;
switch (prm) {
case 0:
calcHovering(0, 1);
@ -1253,7 +1258,8 @@ int daNpc_myna2_c::ECut_gameGoalSuccess(int i_staffId) {
case 25:
calcHovering(0, 1);
if (talkProc(NULL, 1, NULL)) {
if (mFlow.getChoiceNo() == 0) {
choiceNo = mFlow.getChoiceNo();
if (choiceNo == 0) {
dStage_changeScene(11, 0.0f, 10, fopAcM_GetRoomNo(this), 0, -1);
} else {
rt = 1;

View File

@ -1361,6 +1361,7 @@ BOOL daNpc_zrA_c::talkSwim(void* param_0) {
BOOL bvar2 = false;
int flow_id;
int choiceNo;
switch (mMode) {
case 0:
if (mDamageTimer != 0) {
@ -1390,7 +1391,8 @@ BOOL daNpc_zrA_c::talkSwim(void* param_0) {
}
if (bvar2 && talkProc(NULL, 1, NULL)) {
if (mFlow.getChoiceNo() == 0) {
choiceNo = mFlow.getChoiceNo();
if (choiceNo == 0) {
field_0x1558 = 1;
mSwimAngleCalc = current.angle;
mSwimSpeedScale = 1.0f;

View File

@ -436,21 +436,21 @@ int _GlSph_Mng_c::_setting_main() {
/* 80BFA5C4-80BFA60C 001364 0048+00 0/0 0/0 1/1 .text _chkAllGet_main__12_GlSph_Mng_cFv
*/
bool _GlSph_Mng_c::_chkAllGet_main() {
BOOL _GlSph_Mng_c::_chkAllGet_main() {
_GlSph_LstInfo_c* info = mListBuf;
for (int i = 0; i < 120; i++) {
if (info->isSet()) {
daGlwSph_c* psph = info->getpSph();
if (psph != NULL && !psph->is_getted()) {
return false;
return FALSE;
}
}
info++;
}
return true;
return TRUE;
}
/* 80BFAFE8 0002+00 data_80BFAFE8 mSphSe__12_GlSph_Mng_c */

View File

@ -446,6 +446,7 @@ void daTagTWGate_c::executeDemoOrdin2() {
break;
}
}
int choiceNo;
switch(*cutName) {
case '0001':
case '0003':
@ -453,7 +454,8 @@ void daTagTWGate_c::executeDemoOrdin2() {
break;
case '0002':
if (talkProc(NULL, 1, NULL)) {
if (mMsgFlow.getChoiceNo() == 0) {
choiceNo = mMsgFlow.getChoiceNo();
if (choiceNo == 0) {
setAction(ACT_DEMO_ORDIN_3);
}
evtMng.cutEnd(staffId);
@ -637,6 +639,7 @@ void daTagTWGate_c::executeDemoRanail2() {
break;
}
}
int choiceNo;
switch(*cutName) {
case '0001':
case '0003':
@ -644,7 +647,8 @@ void daTagTWGate_c::executeDemoRanail2() {
break;
case '0002':
if (talkProc(NULL, 1, NULL)) {
if (mMsgFlow.getChoiceNo() == 0) {
choiceNo = mMsgFlow.getChoiceNo();
if (choiceNo == 0) {
setAction(ACT_DEMO_RANAIL_3);
}
evtMng.cutEnd(staffId);
@ -829,6 +833,7 @@ void daTagTWGate_c::executeDemoHyral2() {
break;
}
}
int choiceNo;
switch(*piVar3) {
case '0001':
case '0003':
@ -836,7 +841,7 @@ void daTagTWGate_c::executeDemoHyral2() {
break;
case '0002':
if (talkProc(NULL, 1, NULL)) {
s16 choiceNo = mMsgFlow.getChoiceNo();
choiceNo = mMsgFlow.getChoiceNo();
if (choiceNo == 0) {
setAction(ACT_DEMO_HYRAL_3);
}

View File

@ -1336,7 +1336,7 @@ void dSv_MiniGame_c::init() {
}
}
mStarTime = 120000;
mHookGameTime = 120000;
mBalloonScore = 0;
mRaceGameTime = 0;
unk16 = 0;

View File

@ -480,12 +480,12 @@ int dTimer_c::getRestTimeMs() {
}
/* 8025DB10-8025DB38 258450 0028+00 1/1 0/0 4/4 .text isStart__8dTimer_cFv */
u8 dTimer_c::isStart() {
bool dTimer_c::isStart() {
if (field_0x16A != 1 && m_mode == 4) {
return 1;
return true;
}
return 0;
return false;
}
/* 8025DB38-8025DBE0 258478 00A8+00 1/1 0/0 0/0 .text __ct__21dDlst_TimerScrnDraw_cFv */
@ -1592,7 +1592,7 @@ static int dTimer_Create(msg_class* i_this) {
}
/* 80260F8C-80261034 25B8CC 00A8+00 0/0 1/1 9/9 .text dTimer_createTimer__FlUlUcUcffff */
s32 dTimer_createTimer(s32 i_mode, u32 i_limitMs, u8 i_type, u8 param_3, f32 param_4, f32 param_5,
fpc_ProcID dTimer_createTimer(s32 i_mode, u32 i_limitMs, u8 i_type, u8 param_3, f32 param_4, f32 param_5,
f32 param_6, f32 param_7) {
if (dComIfG_getTimerMode() == -1) {
return fopMsgM_Timer_create(PROC_TIMER, i_mode, i_limitMs, i_type, param_3, param_4,
@ -1645,12 +1645,12 @@ static int dTimer_createStart2D(s32 param_0, u16 param_1) {
}
/* 802611F0-80261244 25BB30 0054+00 0/0 0/0 5/5 .text dTimer_isStart__Fv */
u8 dTimer_isStart() {
bool dTimer_isStart() {
if (dComIfG_getTimerPtr() != NULL) {
return dComIfG_getTimerPtr()->isStart();
}
return 0;
return false;
}
/* 80261244-80261298 25BB84 0054+00 0/0 0/0 2/2 .text dTimer_getRestTimeMs__Fv */

View File

@ -1380,11 +1380,11 @@ void mDoExt_McaMorf::getTransform(u16 param_0, J3DTransformInfo* param_1) {
mDoExt_McaMorfSO::mDoExt_McaMorfSO(J3DModelData* param_0, mDoExt_McaMorfCallBack1_c* param_1,
mDoExt_McaMorfCallBack2_c* param_2, J3DAnmTransform* param_3,
int param_4, f32 param_5, int param_6, int param_7,
Z2Creature* param_8, u32 param_9, u32 param_10) {
Z2Creature* param_8, u32 i_modelFlag, u32 i_differedDlistFlag) {
mTranslate = false;
mMorfNone = false;
create(param_0, param_1, param_2, param_3, param_4, param_5, param_6, param_7, param_8, param_9,
param_10);
create(param_0, param_1, param_2, param_3, param_4, param_5, param_6, param_7, param_8,
i_modelFlag, i_differedDlistFlag);
}
/* 80010888-800108F0 00B1C8 0068+00 1/0 0/0 0/0 .text __dt__16mDoExt_McaMorfSOFv */
@ -1398,7 +1398,7 @@ mDoExt_McaMorfSO::~mDoExt_McaMorfSO() {
int mDoExt_McaMorfSO::create(J3DModelData* i_modelData, mDoExt_McaMorfCallBack1_c* param_1,
mDoExt_McaMorfCallBack2_c* param_2, J3DAnmTransform* param_3,
int param_4, f32 param_5, int param_6, int param_7,
Z2Creature* i_sound, u32 param_9, u32 param_10) {
Z2Creature* i_sound, u32 i_modelFlag, u32 i_differedDlistFlag) {
mpModel = NULL;
mpTransformInfo = NULL;
mpQuat = NULL;
@ -1408,20 +1408,22 @@ int mDoExt_McaMorfSO::create(J3DModelData* i_modelData, mDoExt_McaMorfCallBack1_
return 0;
}
if (i_modelData->getMaterialNodePointer(0)->getSharedDisplayListObj() != NULL && param_9 == 0) {
if (i_modelData->getMaterialNodePointer(0)->getSharedDisplayListObj() != NULL &&
i_modelFlag == 0)
{
if (i_modelData->isLocked()) {
param_9 = 0x20000;
i_modelFlag = 0x20000;
} else {
param_9 = 0x80000;
i_modelFlag = 0x80000;
}
}
mpModel = mDoExt_J3DModel__create(i_modelData, param_9, param_10);
mpModel = mDoExt_J3DModel__create(i_modelData, i_modelFlag, i_differedDlistFlag);
if (mpModel == NULL) {
return 0;
}
if (param_9 != 0x80000) {
if (i_modelFlag != 0x80000) {
mDoExt_changeMaterial(mpModel);
}