mirror of
https://github.com/zeldaret/tww.git
synced 2026-08-04 09:08:39 -04:00
msg work (#1143)
* fopMsgM_msgDataProc_c::stringSet work * Fix JPN * More stringSet work * work * get rid of fake temps * stringSet 99.99% * fopMsgM_msgDataProc_c::stringLength 100% * d_msg work * fix pal * fix message_paper, d_meter version diff fixes
This commit is contained in:
@@ -444,7 +444,9 @@ public:
|
||||
int getItemNowMagic() { return mItemNowMagicCount; }
|
||||
void setItemNowMagic(s16 num) { mItemNowMagicCount = num; }
|
||||
|
||||
u32 getNpcNameMessageID() { return mNpcNameMessageID; }
|
||||
void setNpcNameMessageID(u32 id) { mNpcNameMessageID = id; }
|
||||
u32 getItemNameMessageID() { return mItemNameMessageID; }
|
||||
void setItemNameMessageID(u32 id) { mItemNameMessageID = id; }
|
||||
|
||||
s16 getItemKeyNumCount() { return mItemKeyNumCount; }
|
||||
@@ -1010,6 +1012,14 @@ inline s16 dComIfGp_getAuctionGauge() {
|
||||
return g_dComIfG_gameInfo.play.getAuctionGauge();
|
||||
}
|
||||
|
||||
inline u32 dComIfGp_getNpcNameMessageID() {
|
||||
return g_dComIfG_gameInfo.play.getNpcNameMessageID();
|
||||
}
|
||||
|
||||
inline u32 dComIfGp_getItemNameMessageID() {
|
||||
return g_dComIfG_gameInfo.play.getItemNameMessageID();
|
||||
}
|
||||
|
||||
inline void dComIfGs_setRupee(u16 rupee) {
|
||||
g_dComIfG_gameInfo.save.getPlayer().getPlayerStatusA().setRupee(rupee);
|
||||
}
|
||||
|
||||
@@ -2,8 +2,12 @@
|
||||
#define D_MESSAGE_PAPER_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "f_op/f_op_msg.h"
|
||||
|
||||
class sub_msg3_class;
|
||||
#if VERSION < VERSION_PAL
|
||||
struct sub_msg3_class : public msg_class {
|
||||
/* 0x0FC */ u8 m0FC[0xEE8 - 0x0FC];
|
||||
};
|
||||
|
||||
class dmsg3_3d_c {
|
||||
public:
|
||||
@@ -22,5 +26,12 @@ public:
|
||||
void draw();
|
||||
void outFontDraw();
|
||||
};
|
||||
#endif
|
||||
|
||||
#if VERSION == VERSION_PAL
|
||||
struct dMessage_Paper_c : public msg_class {
|
||||
/* 0x0FC */ u8 m0FC[0x104 - 0x0FC];
|
||||
};
|
||||
#endif
|
||||
|
||||
#endif /* D_MESSAGE_PAPER_H */
|
||||
|
||||
+5
-1
@@ -79,7 +79,10 @@ public:
|
||||
virtual void draw();
|
||||
void outFontDraw();
|
||||
|
||||
sub_msg_class* field_0x4;
|
||||
void setActorP(sub_msg_class* i_msg) { mpMsg = i_msg; }
|
||||
|
||||
private:
|
||||
sub_msg_class* mpMsg;
|
||||
};
|
||||
|
||||
class dDlst_2Dtact_c : public dDlst_base_c {
|
||||
@@ -87,6 +90,7 @@ public:
|
||||
virtual ~dDlst_2Dtact_c();
|
||||
virtual void draw();
|
||||
|
||||
private:
|
||||
u8 field_0x4[4];
|
||||
void* field_0x8;
|
||||
};
|
||||
|
||||
+67
-59
@@ -165,12 +165,6 @@ public:
|
||||
void selectArrow(J2DPicture*, f32, f32);
|
||||
void colorAnime(J2DPicture*);
|
||||
void stringSet();
|
||||
void setSelectFlagYokoOn();
|
||||
void setSelectFlagOn();
|
||||
void setHandSendFlagOn();
|
||||
void setAutoSendFlagOn();
|
||||
u8 getHandSendFlag();
|
||||
u8 getAutoSendFlag();
|
||||
void getString(char*, u32);
|
||||
void getString(char*, char*, char*, char*, u32, f32*, f32*, int*);
|
||||
void getRubyString(char*, char*, char*, char*, char*, char*, f32*, f32*, int*);
|
||||
@@ -239,11 +233,11 @@ public:
|
||||
void tag_input_kenshi();
|
||||
#endif
|
||||
|
||||
u32 getIconColor(int i_no) { return field_0x1E0[i_no]; }
|
||||
u8 getIconNum(int i_no) { return field_0x281[i_no]; }
|
||||
int getIconPosX(int i_no) { return field_0x168[i_no]; }
|
||||
int getIconPosY(int i_no) { return field_0x1A4[i_no]; }
|
||||
void getIconScale(int) {}
|
||||
u8 getIconNum(int i_no) { return iconNum[i_no]; }
|
||||
int getIconPosX(int i_no) { return iconPosX[i_no]; }
|
||||
int getIconPosY(int i_no) { return iconPosY[i_no]; }
|
||||
int getIconScale(int i_no) { return iconScale[i_no]; }
|
||||
u32 getIconColor(int i_no) { return iconColor[i_no]; }
|
||||
|
||||
void setCharSpace(int i_space) { charSpace = i_space; }
|
||||
void setRubyCharSpace(int i_space) { rubyCharSpace = i_space; }
|
||||
@@ -259,31 +253,52 @@ public:
|
||||
field_0x6C = param_3;
|
||||
field_0x4C = param_3;
|
||||
}
|
||||
void setSelectMessage(char*, char*, char*, char*) {}
|
||||
void setSelectMessage(char* param_0, char* param_1, char* param_2, char* param_3) {
|
||||
selectMessage[0] = param_0;
|
||||
selectMessage[1] = param_1;
|
||||
selectMessage[2] = param_2;
|
||||
selectMessage[3] = param_3;
|
||||
}
|
||||
|
||||
void setMesgEntry(JMSMesgEntry_c* i_entry) { mesgEntry = i_entry; }
|
||||
|
||||
void dec_keyWaitTimer() {}
|
||||
void dec_waitTimer() { waitTimer = (int)waitTimer > 0 ? waitTimer - 1 : 0; }
|
||||
u8 getCharAlpha() { return field_0x293; } // ?
|
||||
u8 getGradAlpha() { return field_0x292; } // ?
|
||||
u8 getSelectFlag() { return selectFlag; }
|
||||
void setSelectFlagOff() { selectFlag = 0; }
|
||||
void setSelectFlagOn() { selectFlag = 1; }
|
||||
void setSelectFlagYokoOn() { selectFlag = 2; }
|
||||
u8 getAutoSendFlag() { return autoSendFlag; }
|
||||
void setAutoSendFlagOff() { autoSendFlag = 0; }
|
||||
void setAutoSendFlagOn() { autoSendFlag = 1; }
|
||||
u8 getHandSendFlag() { return handSendFlag; }
|
||||
void setHandSendFlagOff() { handSendFlag = 0; }
|
||||
void setHandSendFlagOn() { handSendFlag = 1; }
|
||||
|
||||
int get_waitTimer() { return waitTimer; }
|
||||
void set_waitTimer(int value) { waitTimer = value; }
|
||||
void set_waitTimerZero() { waitTimer = 0; }
|
||||
int dec_waitTimer() { return waitTimer = waitTimer > 0 ? waitTimer - 1 : 0; }
|
||||
|
||||
int dec_keyWaitTimer() { return keyWaitTimer = keyWaitTimer > 0 ? keyWaitTimer - 1 : 0; }
|
||||
|
||||
int getLineCount() { return lineCount; }
|
||||
u8 getMesgStatus() { return mesgStatus; }
|
||||
f32 getNowCursorPos() { return field_0x20; }
|
||||
u8 getRCharAlpha() { return field_0x291; } // ?
|
||||
u8 getRGradAlpha() { return field_0x290; } // ?
|
||||
u8 getSelectFlag() { return selectFlag; }
|
||||
void getSelectLength() {}
|
||||
u32 getStringColor() { return field_0x25C;}
|
||||
u32 get_waitTimer() { return waitTimer; }
|
||||
f32 getNowCursorPos() { return nowCursorPos; }
|
||||
int getSelectLength() { return selectLength; }
|
||||
u32 getStringColor() { return stringColor; }
|
||||
void setStringColor(u32 i_color) { stringColor = i_color; }
|
||||
void resetNowLine() { nowLine = 0; }
|
||||
void selectArrow(J2DPicture*) {}
|
||||
void setActorPosition(cXyz*) {}
|
||||
void selectArrow(J2DPicture* i_arrowPane) {
|
||||
selectArrow(i_arrowPane, field_0x26C, field_0x270, field_0x278, field_0x274);
|
||||
}
|
||||
void setActorPosition(cXyz* i_pos) { actorPosition = i_pos; }
|
||||
void setAimLine(int i_line) { aimLine = i_line; }
|
||||
void setAutoSendFlagOff() { autoSendFlag = 0; }
|
||||
void setBmgData(char* i_data) { bmgData = i_data; }
|
||||
void setCenterLineWidth(int i_width) { centerLineWidth = i_width; }
|
||||
|
||||
u8 getCharAlpha() { return field_0x290; }
|
||||
u8 getGradAlpha() { return field_0x291; }
|
||||
u8 getRCharAlpha() { return field_0x292; }
|
||||
u8 getRGradAlpha() { return field_0x293; }
|
||||
void setCharAlpha(u8 param_0, u8 param_1, u8 param_2, u8 param_3) {
|
||||
field_0x290 = param_0;
|
||||
field_0x291 = param_1;
|
||||
@@ -292,35 +307,28 @@ public:
|
||||
}
|
||||
|
||||
void setCount(int i_count) { count = i_count; }
|
||||
void setFont(JUTFont* i_font) { font[0] = i_font; }
|
||||
void setFont(JUTFont* i_font) { font = i_font; }
|
||||
void setFontSize(int i_size) { fontSize = i_size; }
|
||||
void setHandSendFlagOff() { handSendFlag = 0; }
|
||||
void setRubyFont(JUTFont* i_font) { rubyFont = i_font; }
|
||||
void setRubyFontSize(int i_size) { rubyFontSize = i_size; }
|
||||
void setLineCount(int i_count) { lineCount = i_count; }
|
||||
void setLineWidth(int i_width) { lineWidth = i_width; }
|
||||
void setRubyFont(JUTFont* i_font) { font[1] = i_font; }
|
||||
void setRubyFontSize(int i_size) { rubyFontSize = i_size; }
|
||||
void setSelectFlagOff() { selectFlag = 0; }
|
||||
void setSelectNum(u8) {}
|
||||
void setSendSpeed(int i_speed) { sendSpeed = i_speed; }
|
||||
void setSpaceFlagOff() { spaceFlag = 0; }
|
||||
void setSpaceFlagOn() { spaceFlag = 1; }
|
||||
void setSpaceTimer(int i_timer) { spaceTimer = i_timer; }
|
||||
void setStringColor(u32 color) { field_0x25C = color; }
|
||||
void set_waitTimer(int i_timer) { waitTimer = i_timer; }
|
||||
void set_waitTimerZero() { waitTimer = 0; }
|
||||
void shortCut() { field_0x299 = 1; }
|
||||
|
||||
// fake, replace with real inline once it's figured out
|
||||
u32 get_0x220(int i) { return field_0x220[i]; }
|
||||
|
||||
public:
|
||||
/* 0x004 */ JUTFont* font[2];
|
||||
/* 0x004 */ JUTFont* font;
|
||||
/* 0x008 */ JUTFont* rubyFont;
|
||||
/* 0x00C */ JMSMesgEntry_c* mesgEntry;
|
||||
/* 0x010 */ u32 field_0x10;
|
||||
/* 0x010 */ cXyz* actorPosition;
|
||||
/* 0x014 */ f32 field_0x14;
|
||||
/* 0x018 */ f32 field_0x18;
|
||||
/* 0x01C */ f32 field_0x1C;
|
||||
/* 0x020 */ f32 field_0x20; // NowCursorPos?
|
||||
/* 0x020 */ f32 nowCursorPos;
|
||||
/* 0x024 */ f32 field_0x24;
|
||||
/* 0x028 */ f32 field_0x28;
|
||||
/* 0x02C */ u32 field_0x2C;
|
||||
@@ -332,17 +340,17 @@ public:
|
||||
/* 0x044 */ char* field_0x44;
|
||||
/* 0x048 */ char* field_0x48;
|
||||
/* 0x04C */ char* field_0x4C;
|
||||
/* 0x050 */ char* field_0x50[4];
|
||||
/* 0x050 */ char* selectMessage[4]; // TODO: should this be 4 separate fields? or should field_0x40 and field_0x60 also be arrays?
|
||||
/* 0x060 */ char* field_0x60;
|
||||
/* 0x064 */ char* field_0x64;
|
||||
/* 0x068 */ char* field_0x68;
|
||||
/* 0x06C */ char* field_0x6C;
|
||||
/* 0x070 */ char field_0x70[0x64]; // no idea how big this array is
|
||||
/* 0x0D4 */ char field_0xD4[4];
|
||||
/* 0x0D8 */ s32 field_0xD8[4];
|
||||
/* 0x0E8 */ s32 field_0xE8[4];
|
||||
/* 0x0F8 */ s32 field_0xF8[4];
|
||||
/* 0x108 */ s32 field_0x108[4];
|
||||
/* 0x0D8 */ int field_0xD8[4];
|
||||
/* 0x0E8 */ int field_0xE8[4];
|
||||
/* 0x0F8 */ int field_0xF8[4];
|
||||
/* 0x108 */ int field_0x108[4];
|
||||
/* 0x118 */ int count;
|
||||
/* 0x11C */ int charSpace;
|
||||
/* 0x120 */ int lineSpace;
|
||||
@@ -350,25 +358,25 @@ public:
|
||||
/* 0x128 */ int lineWidth;
|
||||
/* 0x12C */ int centerLineWidth;
|
||||
/* 0x130 */ int lineCount;
|
||||
/* 0x134 */ u32 field_0x134;
|
||||
/* 0x134 */ int field_0x134;
|
||||
/* 0x138 */ int nowLine;
|
||||
/* 0x13C */ int aimLine;
|
||||
/* 0x140 */ u32 field_0x140;
|
||||
/* 0x140 */ int field_0x140;
|
||||
/* 0x144 */ int fontSize;
|
||||
/* 0x148 */ u32 field_0x148;
|
||||
/* 0x148 */ int field_0x148; // size/scale?
|
||||
/* 0x14C */ int rubyFontSize;
|
||||
/* 0x150 */ int field_0x150;
|
||||
/* 0x154 */ u32 field_0x154;
|
||||
/* 0x158 */ u32 waitTimer;
|
||||
/* 0x154 */ int field_0x154;
|
||||
/* 0x158 */ int waitTimer;
|
||||
/* 0x15C */ int spaceTimer;
|
||||
/* 0x160 */ int sendSpeed;
|
||||
/* 0x164 */ int field_0x164; // keyWaitTimer?
|
||||
/* 0x168 */ int field_0x168[0xF]; // IconPosX
|
||||
/* 0x1A4 */ int field_0x1A4[0xF]; // IconPosY
|
||||
/* 0x1E0 */ u32 field_0x1E0[0xF]; // IconColor
|
||||
/* 0x21C */ int field_0x21C;
|
||||
/* 0x220 */ u32 field_0x220[0xF];
|
||||
/* 0x25C */ u32 field_0x25C;
|
||||
/* 0x164 */ int keyWaitTimer;
|
||||
/* 0x168 */ int iconPosX[0xF];
|
||||
/* 0x1A4 */ int iconPosY[0xF];
|
||||
/* 0x1E0 */ int iconScale[0xF];
|
||||
/* 0x21C */ int selectLength;
|
||||
/* 0x220 */ u32 iconColor[0xF];
|
||||
/* 0x25C */ u32 stringColor;
|
||||
/* 0x260 */ s16 field_0x260;
|
||||
/* 0x264 */ f32 field_0x264;
|
||||
/* 0x268 */ f32 field_0x268;
|
||||
@@ -381,7 +389,7 @@ public:
|
||||
/* 0x27E */ u8 field_0x27E;
|
||||
/* 0x27F */ u8 field_0x27F;
|
||||
/* 0x280 */ u8 field_0x280;
|
||||
/* 0x281 */ u8 field_0x281[0xF]; // IconNum?
|
||||
/* 0x281 */ u8 iconNum[0xF];
|
||||
/* 0x290 */ u8 field_0x290;
|
||||
/* 0x291 */ u8 field_0x291;
|
||||
/* 0x292 */ u8 field_0x292;
|
||||
@@ -398,7 +406,7 @@ public:
|
||||
/* 0x29B */ u8 field_0x29B;
|
||||
/* 0x29C */ u8 spaceFlag;
|
||||
/* 0x29D */ u8 field_0x29D;
|
||||
};
|
||||
}; // Size: 0x2A0
|
||||
|
||||
typedef int (*fopMsgCreateFunc)(void*);
|
||||
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
#ifndef F_PC_DRAW_PRIORITY_H_
|
||||
#define F_PC_DRAW_PRIORITY_H_
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "global.h"
|
||||
|
||||
typedef struct draw_priority_class {
|
||||
s16 mPriority;
|
||||
@@ -488,10 +488,15 @@ enum {
|
||||
/* 0x01D5 */ fpcDwPi_SCP_e,
|
||||
/* 0x01D6 */ fpcDwPi_PB_e,
|
||||
/* 0x01D7 */ fpcDwPi_METER_e,
|
||||
#if VERSION == VERSION_PAL
|
||||
/* 0x01D8 */ fpcDwPi_MSG3_e,
|
||||
#endif
|
||||
/* 0x01D8 */ fpcDwPi_MESG_e,
|
||||
/* 0x01D9 */ fpcDwPi_MSG_e,
|
||||
/* 0x01DA */ fpcDwPi_MSG2_e,
|
||||
#if VERSION < VERSION_PAL
|
||||
/* 0x01DB */ fpcDwPi_MSG3_e,
|
||||
#endif
|
||||
/* 0x01DC */ fpcDwPi_AUCTION_SCREEN_e,
|
||||
/* 0x01DD */ fpcDwPi_PLACE_NAME_e,
|
||||
/* 0x01DE */ fpcDwPi_GAMEOVER_e,
|
||||
|
||||
@@ -2,6 +2,8 @@
|
||||
#ifndef F_PC_NAME_H
|
||||
#define F_PC_NAME_H
|
||||
|
||||
#include "global.h"
|
||||
|
||||
// The fpcNm prefix is from an error string in TP.
|
||||
enum {
|
||||
/* 0x0000 */ fpcNm_OVERLAP0_e,
|
||||
@@ -494,10 +496,15 @@ enum {
|
||||
/* 0x01E3 */ fpcNm_CAMERA2_e,
|
||||
/* 0x01E4 */ fpcNm_KYEFF_e,
|
||||
/* 0x01E5 */ fpcNm_KYEFF2_e,
|
||||
#if VERSION == VERSION_PAL
|
||||
/* 0x01E6 */ fpcNm_MSG3_e,
|
||||
#endif
|
||||
/* 0x01E6 */ fpcNm_MESG_e,
|
||||
/* 0x01E7 */ fpcNm_MSG_e,
|
||||
/* 0x01E8 */ fpcNm_MSG2_e,
|
||||
#if VERSION < VERSION_PAL
|
||||
/* 0x01E9 */ fpcNm_MSG3_e,
|
||||
#endif
|
||||
/* 0x01EA */ fpcNm_MENUWINDOW_e,
|
||||
/* 0x01EB */ fpcNm_Menu_Cloth_e,
|
||||
/* 0x01EC */ fpcNm_TIMER_e,
|
||||
|
||||
@@ -79,4 +79,23 @@ extern void __sync();
|
||||
#define SJIS(character, value) ((u32)value)
|
||||
#endif
|
||||
|
||||
// Hack to trick the compiler into not inlining functions that use this macro.
|
||||
#define FORCE_DONT_INLINE \
|
||||
(void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; \
|
||||
(void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; \
|
||||
(void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; \
|
||||
(void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; \
|
||||
(void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; \
|
||||
(void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; \
|
||||
(void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; \
|
||||
(void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; \
|
||||
(void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; \
|
||||
(void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; \
|
||||
(void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; \
|
||||
(void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; \
|
||||
(void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; \
|
||||
(void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; \
|
||||
(void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; \
|
||||
(void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0; (void*)0;
|
||||
|
||||
#endif
|
||||
|
||||
@@ -294,7 +294,7 @@ inline void mDoAud_rainPlay(s32 param_0) {
|
||||
mDoAud_zelAudio_c::getInterface()->rainPlay(param_0);
|
||||
}
|
||||
|
||||
inline f32 mDoAud_tact_getMelodyPattern(s32 melody_no, s32 note_no, s32 * pattern) {
|
||||
inline f32 mDoAud_tact_getMelodyPattern(s32 melody_no, s32 note_no, s32* pattern) {
|
||||
return mDoAud_zelAudio_c::mTact.getMelodyPattern(melody_no, note_no, pattern);
|
||||
}
|
||||
|
||||
|
||||
@@ -190,9 +190,8 @@ void J2DTextBox::drawSelf(f32 x, f32 y, Mtx* pMtx) {
|
||||
MTXConcat(*pMtx, mDrawMtx, mtx);
|
||||
GXLoadPosMtxImm(mtx, 0);
|
||||
print.locate(x, y);
|
||||
f32 w = mBounds.f.x - mBounds.i.x + 0.0001f;
|
||||
f32 h = mBounds.f.y - mBounds.i.y;
|
||||
print.printReturn(mStringPtr, w, h, (J2DTextBoxHBinding)mBindingH, (J2DTextBoxVBinding)mBindingV, field_0xd8, field_0xdc, mDrawAlpha);
|
||||
print.printReturn(mStringPtr, mBounds.getWidth() + 0.0001f, mBounds.getHeight(),
|
||||
(J2DTextBoxHBinding)mBindingH, (J2DTextBoxVBinding)mBindingV, field_0xd8, field_0xdc, mDrawAlpha);
|
||||
}
|
||||
|
||||
/* 802D5DA4-802D5EB0 .text resize__10J2DTextBoxFff */
|
||||
|
||||
@@ -171,7 +171,6 @@ void* JKRArchive::getResource(u32 type, const char* path) {
|
||||
}
|
||||
|
||||
/* 802B8528-802B85F0 .text readTypeResource__10JKRArchiveFPvUlUlPCcP10JKRArchive */
|
||||
// missing instructions
|
||||
u32 JKRArchive::readTypeResource(void* buffer, u32 bufferSize, u32 type, const char* path, JKRArchive* archive) {
|
||||
u32 ret = 0;
|
||||
|
||||
|
||||
@@ -12,7 +12,6 @@
|
||||
#include "dolphin/types.h"
|
||||
|
||||
/* 802C882C-802C8944 .text __ct__10JUTProcBarFv */
|
||||
// missing instruction
|
||||
JUTProcBar::JUTProcBar() {
|
||||
mVisible = true;
|
||||
mHeapBarVisible = true;
|
||||
|
||||
@@ -1653,9 +1653,9 @@ static BOOL daAgb_Execute(daAgb_c* i_this) {
|
||||
} else {
|
||||
daPy_lk_c* player_p2 = daPy_getPlayerLinkActorClass();
|
||||
if ((dComIfGp_getPlayer(0) == player_p2 && !player->checkPlayerFly()) ||
|
||||
((fopAcM_GetName(player) == fpcNm_NPC_MD_e && !daNpc_Md_c::isFlying()) ||
|
||||
(fopAcM_GetName(player) == fpcNm_NPC_CB1_e && !daNpc_Cb1_c::isFlying()) ||
|
||||
fopAcM_GetName(player) == fpcNm_NPC_OS_e))
|
||||
(fopAcM_GetName(player) == fpcNm_NPC_MD_e && !daNpc_Md_c::isFlying()) ||
|
||||
(fopAcM_GetName(player) == fpcNm_NPC_CB1_e && !daNpc_Cb1_c::isFlying()) ||
|
||||
fopAcM_GetName(player) == fpcNm_NPC_OS_e)
|
||||
{
|
||||
f32 speedF = fabs(player->speedF);
|
||||
|
||||
|
||||
+45
-44
@@ -1982,56 +1982,57 @@ static void dance_0(bgn_class* i_this) {
|
||||
}
|
||||
i_this->mC74E = 0;
|
||||
i_this->mC74A++;
|
||||
goto block_51;
|
||||
break;
|
||||
case 1:
|
||||
if (((i_this->mC7AC[0] == 0) && (!ki_check(i_this))) && (l_HIO.m028 != 0)) {
|
||||
if (((i_this->mC754 == 1) || (i_this->mC754 == 2)) || (i_this->mC754 == 3)) {
|
||||
if (((i_this->mAAA8[0].m2D0 != 0) && (i_this->mAAA8[1].m2D0 != 0)) && (i_this->mC7AC[2] == 0)) {
|
||||
i_this->mC748 = 4;
|
||||
i_this->mC74A = 0;
|
||||
i_this->mCA98 = 0.0f;
|
||||
return;
|
||||
}
|
||||
i_this->mC748 = 1;
|
||||
i_this->mC7AC[0] = REG0_S(0) + 0x32;
|
||||
uVar2 = i_this->mAAA8[3].m2D0;
|
||||
if ((uVar2 == 0) && (i_this->mAAA8[4].m2D0 == 0)) {
|
||||
i_this->mC74A = 5;
|
||||
i_this->mC7AC[0] = REG0_S(6) + 0x40;
|
||||
fopAcM_monsSeStart(actor, JA_SE_CV_BGN_D_ATTACK, 0);
|
||||
} else if (uVar2 == 0) {
|
||||
i_this->mC74A = 3;
|
||||
fopAcM_monsSeStart(actor, JA_SE_CV_BGN_D_ATTACK, 0);
|
||||
} else if (i_this->mAAA8[4].m2D0 == 0) {
|
||||
i_this->mC74A = 1;
|
||||
fopAcM_monsSeStart(actor, JA_SE_CV_BGN_D_ATTACK, 0);
|
||||
} else if (i_this->mAAA8[7].m2D0 == 0) {
|
||||
i_this->mC748 = 3;
|
||||
i_this->mC74A = 0;
|
||||
} else {
|
||||
i_this->mC748 = 2;
|
||||
i_this->mC74A = 0;
|
||||
}
|
||||
} else if ((i_this->mC754 == 0) || (i_this->mC754 == 5)) {
|
||||
if (i_this->mC7AC[0] != 0 || ki_check(i_this) || l_HIO.m028 == 0) {
|
||||
break;
|
||||
}
|
||||
if (i_this->mC754 == 1 || i_this->mC754 == 2 || i_this->mC754 == 3) {
|
||||
if (i_this->mAAA8[0].m2D0 != 0 && i_this->mAAA8[1].m2D0 != 0 && i_this->mC7AC[2] == 0) {
|
||||
i_this->mC748 = 4;
|
||||
i_this->mC74A = 0;
|
||||
i_this->mCA98 = 0.0f;
|
||||
return;
|
||||
}
|
||||
i_this->mC748 = 1;
|
||||
i_this->mC7AC[0] = REG0_S(0) + 0x32;
|
||||
uVar2 = i_this->mAAA8[3].m2D0;
|
||||
if (uVar2 == 0 && i_this->mAAA8[4].m2D0 == 0) {
|
||||
i_this->mC74A = 5;
|
||||
i_this->mC7AC[0] = REG0_S(6) + 0x40;
|
||||
fopAcM_monsSeStart(actor, JA_SE_CV_BGN_D_ATTACK, 0);
|
||||
} else if (uVar2 == 0) {
|
||||
i_this->mC74A = 3;
|
||||
fopAcM_monsSeStart(actor, JA_SE_CV_BGN_D_ATTACK, 0);
|
||||
} else if (i_this->mAAA8[4].m2D0 == 0) {
|
||||
i_this->mC74A = 1;
|
||||
fopAcM_monsSeStart(actor, JA_SE_CV_BGN_D_ATTACK, 0);
|
||||
} else if (i_this->mAAA8[7].m2D0 == 0) {
|
||||
i_this->mC748 = 3;
|
||||
i_this->mC74A = 0;
|
||||
} else {
|
||||
i_this->mC748 = 2;
|
||||
i_this->mC74A = 0;
|
||||
}
|
||||
i_this->mC754++;
|
||||
if (i_this->mC754 > 5) {
|
||||
i_this->mC754 = 0;
|
||||
}
|
||||
// fallthrough
|
||||
} else if (i_this->mC754 == 0 || i_this->mC754 == 5) {
|
||||
i_this->mC74A = 0;
|
||||
}
|
||||
default:
|
||||
block_51:
|
||||
switch (i_this->mC74C) {
|
||||
case 0:
|
||||
dance_A(i_this);
|
||||
break;
|
||||
case 1:
|
||||
dance_B(i_this);
|
||||
break;
|
||||
i_this->mC754++;
|
||||
if (i_this->mC754 > 5) {
|
||||
i_this->mC754 = 0;
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
switch (i_this->mC74C) {
|
||||
case 0:
|
||||
dance_A(i_this);
|
||||
break;
|
||||
case 1:
|
||||
dance_B(i_this);
|
||||
break;
|
||||
}
|
||||
|
||||
move_s* pmVar8 = i_this->mAAA8;
|
||||
for (s32 i = 0; i < 8; i++, pmVar8++) {
|
||||
if (pmVar8->m2D0 == 0) {
|
||||
|
||||
@@ -403,7 +403,7 @@ static void jumpattack(bgn2_class* i_this) {
|
||||
case 0:
|
||||
anm_init(i_this, dRes_INDEX_BGN_BCK_JUMP1_e, 1.0f, J3DFrameCtrl::EMode_NONE, 1.0f, -1);
|
||||
i_this->m0314 = 1;
|
||||
// fallthrough
|
||||
// fallthrough
|
||||
case 1:
|
||||
actor->speedF = 0.0f;
|
||||
if (frame == 6) {
|
||||
@@ -417,10 +417,13 @@ static void jumpattack(bgn2_class* i_this) {
|
||||
actor->speed.y = REG0_F(8) + 250.0f;
|
||||
i_this->m0314 = 2;
|
||||
fopAcM_seStart(actor, JA_SE_CM_BGN_T_JUMP_UP, 0);
|
||||
case 2:
|
||||
actor->speedF = REG0_F(9) + 50.0f;
|
||||
break;
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
// fallthrough
|
||||
case 2:
|
||||
actor->speedF = REG0_F(9) + 50.0f;
|
||||
break;
|
||||
}
|
||||
if (i_this->m2EC8[0] != NULL) {
|
||||
i_this->m2EC8[0]->setGlobalRTMatrix(pBrk->getAnmMtx(2));
|
||||
|
||||
+180
-174
@@ -1093,163 +1093,168 @@ void action_dousa(bpw_class* i_this) {
|
||||
case 1:
|
||||
if (i_this->mSomeCountdownTimers[0] == 0) {
|
||||
i_this->mActionState++;
|
||||
// fallthrough
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
// fallthrough
|
||||
case 2:
|
||||
i_this->mSomeCountdownTimers[0] = 0x41;
|
||||
i_this->m490 = 10.0f;
|
||||
i_this->mSomeCountdownTimers[0] += (int)cM_rndF(i_this->mSomeCountdownTimers[0]);
|
||||
i_this->m488 = 1.0f;
|
||||
if (i_this->m3F6 == 2) {
|
||||
i_this->m490 = i_this->m490 * DEMO_SELECT(REG11_F(4) + 1.75f, REG8_F(0) + 1.35f);
|
||||
i_this->m488 = 5.0f;
|
||||
}
|
||||
if (i_this->m3F8 != 0x1d) {
|
||||
anm_init(i_this, dRes_INDEX_BPW_BCK_MOVEF1_e, DEMO_SELECT(REG11_F(0) + 15.0f, 15.0f), J3DFrameCtrl::EMode_LOOP, 1.0f, -1);
|
||||
}
|
||||
i_this->mActionState++;
|
||||
case 3:
|
||||
if (i_this->mSomeCountdownTimers[0] != 0) {
|
||||
break;
|
||||
}
|
||||
i_this->m490 = 0.0f;
|
||||
switch (i_this->m3F6) {
|
||||
case 0:
|
||||
i_this->mBodyAction = ACTION_ATTACK_KOUGEKI;
|
||||
i_this->mActionState = 0x14;
|
||||
break;
|
||||
case 1:
|
||||
case 2:
|
||||
i_this->mSomeCountdownTimers[0] = 0x41;
|
||||
i_this->m490 = 10.0f;
|
||||
i_this->mSomeCountdownTimers[0] += (int)cM_rndF(i_this->mSomeCountdownTimers[0]);
|
||||
i_this->m488 = 1.0f;
|
||||
if (i_this->m3F6 == 2) {
|
||||
i_this->m490 = i_this->m490 * DEMO_SELECT(REG11_F(4) + 1.75f, REG8_F(0) + 1.35f);
|
||||
i_this->m488 = 5.0f;
|
||||
}
|
||||
if (i_this->m3F8 != 0x1d) {
|
||||
anm_init(i_this, dRes_INDEX_BPW_BCK_MOVEF1_e, DEMO_SELECT(REG11_F(0) + 15.0f, 15.0f), J3DFrameCtrl::EMode_LOOP, 1.0f, -1);
|
||||
}
|
||||
i_this->mActionState++;
|
||||
case 3:
|
||||
if (i_this->mSomeCountdownTimers[0] == 0) {
|
||||
i_this->m490 = 0.0f;
|
||||
switch (i_this->m3F6) {
|
||||
case 0:
|
||||
i_this->mBodyAction = ACTION_ATTACK_KOUGEKI;
|
||||
i_this->mActionState = 0x14;
|
||||
break;
|
||||
case 1:
|
||||
case 2:
|
||||
if (dComIfGp_getDetect().chk_light(&player->current.pos)) {
|
||||
i_this->mBodyAction = ACTION_ATTACK_KOUGEKI;
|
||||
i_this->mActionState = 0x28;
|
||||
} else if (REG12_S(9) != 0) {
|
||||
i_this->mActionState = 4;
|
||||
} else {
|
||||
if (cM_rnd() < 0.5f) {
|
||||
f32 f5 = 1100.0f;
|
||||
f32 fVar15 = i_this->mBodyPos.x - actor->current.pos.x;
|
||||
f32 fVar3 = i_this->mBodyPos.z - actor->current.pos.z;
|
||||
if (std::sqrtf(SQUARE(fVar15) + SQUARE(fVar3)) < f5) {
|
||||
i_this->mBodyAction = ACTION_BODY_DOWN_KARADA_TAORE;
|
||||
i_this->mActionState = 0x46;
|
||||
break;
|
||||
}
|
||||
}
|
||||
i_this->mActionState = 4;
|
||||
if (dComIfGp_getDetect().chk_light(&player->current.pos)) {
|
||||
i_this->mBodyAction = ACTION_ATTACK_KOUGEKI;
|
||||
i_this->mActionState = 0x28;
|
||||
} else if (REG12_S(9) != 0) {
|
||||
i_this->mActionState = 4;
|
||||
} else {
|
||||
if (cM_rnd() < 0.5f) {
|
||||
f32 f5 = 1100.0f;
|
||||
f32 fVar15 = i_this->mBodyPos.x - actor->current.pos.x;
|
||||
f32 fVar3 = i_this->mBodyPos.z - actor->current.pos.z;
|
||||
if (std::sqrtf(SQUARE(fVar15) + SQUARE(fVar3)) < f5) {
|
||||
i_this->mBodyAction = ACTION_BODY_DOWN_KARADA_TAORE;
|
||||
i_this->mActionState = 0x46;
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
anm_init(i_this, dRes_INDEX_BPW_BCK_MOVEB1_e, REG12_F(0) + 15.0f, J3DFrameCtrl::EMode_NONE, 1.0f, -1);
|
||||
i_this->mSomeCountdownTimers[0] = (s16)(int)(REG12_F(1) + 40.0f);
|
||||
noroi_brk_check(i_this, 0);
|
||||
fopAcM_monsSeStart(actor, JA_SE_CV_BPW_CURSE, 0);
|
||||
i_this->mActionState++;
|
||||
case 5:
|
||||
maai_sub(i_this);
|
||||
if (i_this->mSomeCountdownTimers[0] == 0) {
|
||||
i_this->m3E6 = 1;
|
||||
actor->speedF = REG8_F(12) + 75.0f;
|
||||
i_this->m488 = REG8_F(13) + 2.0f;
|
||||
i_this->m490 = 0.0f;
|
||||
anm_init(i_this, dRes_INDEX_BPW_BCK_MOVES1_e, DEMO_SELECT(REG11_F(0) + 15.0f, 15.0f), J3DFrameCtrl::EMode_LOOP, 1.0f, -1);
|
||||
i_this->mActionState++;
|
||||
|
||||
// fallthrough
|
||||
case 6: {
|
||||
if (actor->speedF < 1.0f) {
|
||||
actor->speedF = 0.0f;
|
||||
}
|
||||
cMtx_YrotS(*calc_mtx, actor->current.angle.y);
|
||||
local_c0.x = 0.0f;
|
||||
local_c0.y = 0.0f;
|
||||
local_c0.z = 500.0f;
|
||||
MtxPosition(&local_c0, i_this->m328);
|
||||
i_this->m328[0] += actor->current.pos;
|
||||
i_this->m328[0].y += 400.0f;
|
||||
i_this->m304[0] = actor->current.pos;
|
||||
i_this->m304[0].y += 400.0f;
|
||||
linChk.Set(i_this->m304, i_this->m328, actor);
|
||||
if (dComIfG_Bgsp()->LineCross(&linChk)) {
|
||||
actor->speedF = 0.0f;
|
||||
}
|
||||
f32 f0;
|
||||
f32 f1;
|
||||
f1 = actor->speedF;
|
||||
f0 = 0.0f;
|
||||
if (f1 == f0) {
|
||||
noroi_brk_check(i_this, 1);
|
||||
next_status_clear(i_this, 1);
|
||||
if (player->checkConfuse()) {
|
||||
i_this->mBodyAction = ACTION_ATTACK_KOUGEKI;
|
||||
i_this->mActionState = 0x14;
|
||||
} else {
|
||||
i_this->mActionState = 0;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 10:
|
||||
search_get_skull(i_this, 2);
|
||||
for (s32 i = 0; i < 10; i++) {
|
||||
i_this->mSomeCountdownTimers[i + 10] = 0;
|
||||
}
|
||||
if (i_this->m3F8 != 0x2a) {
|
||||
anm_init(i_this, dRes_INDEX_BPW_BCK_WAIT1_e, DEMO_SELECT(REG11_F(0) + 15.0f, 15.0f), J3DFrameCtrl::EMode_LOOP, 1.0f, -1);
|
||||
}
|
||||
i_this->mActionState++;
|
||||
case 0xb:
|
||||
cLib_addCalcAngleS2(&i_this->m47E, 0, 1, 10);
|
||||
if (i_this->m47E < 2) {
|
||||
i_this->m47E = 0;
|
||||
if (kantera_pos_search(i_this)) {
|
||||
i_this->mActionState++;
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 0xc:
|
||||
cLib_addCalcAngleS2(&i_this->m47E, 0x96, 1, 0x1e);
|
||||
if (i_this->m47E >= 0x95) {
|
||||
i_this->m47E = 0x96;
|
||||
i_this->m480 = 0x96;
|
||||
anm_init(i_this, dRes_INDEX_BPW_BCK_HIROU1_e, DEMO_SELECT(REG11_F(0) + 15.0f, 15.0f), J3DFrameCtrl::EMode_NONE, 1.0f, -1);
|
||||
kantera_pos_search(i_this);
|
||||
i_this->mActionState++;
|
||||
}
|
||||
break;
|
||||
case 0xd:
|
||||
if (i_this->m462 == 0) {
|
||||
kantera_pos_search(i_this);
|
||||
}
|
||||
if (i_this->mpMorf->checkFrame(12.0f)) {
|
||||
fopAcM_seStart(actor, JA_SE_CM_BPW_GET_KANTERA, 0);
|
||||
if (i_this->m3FC != fpcM_ERROR_PROCESS_ID_e) {
|
||||
bpw_class* pfVar6 = (bpw_class*)fopAcM_SearchByID(i_this->m3FC);
|
||||
if (pfVar6 != NULL) {
|
||||
pfVar6->actor.gravity = 0.0f;
|
||||
pfVar6->actor.speedF = 0.0f;
|
||||
pfVar6->actor.speed.setall(0.0f);
|
||||
pfVar6->actor.attention_info.flags = 0;
|
||||
pfVar6->mActionState = 0;
|
||||
i_this->m462 = 1;
|
||||
}
|
||||
}
|
||||
i_this->m482 = 0;
|
||||
i_this->m388 = 0.0f;
|
||||
i_this->m38C = 0.0f;
|
||||
i_this->m390 = 0.0f;
|
||||
i_this->mAttWaitTimer = 1;
|
||||
}
|
||||
if (i_this->mpMorf->isStop()) {
|
||||
next_status_clear(i_this, 1);
|
||||
#if VERSION > VERSION_DEMO
|
||||
i_this->mSomeCountdownTimers[2] = 0;
|
||||
#endif
|
||||
i_this->mBodyAction = ACTION_ATTACK_KOUGEKI;
|
||||
i_this->mActionState = 0x14;
|
||||
}
|
||||
// fallthrough
|
||||
}
|
||||
i_this->mActionState = 4;
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 4:
|
||||
anm_init(i_this, dRes_INDEX_BPW_BCK_MOVEB1_e, REG12_F(0) + 15.0f, J3DFrameCtrl::EMode_NONE, 1.0f, -1);
|
||||
i_this->mSomeCountdownTimers[0] = (s16)(int)(REG12_F(1) + 40.0f);
|
||||
noroi_brk_check(i_this, 0);
|
||||
fopAcM_monsSeStart(actor, JA_SE_CV_BPW_CURSE, 0);
|
||||
i_this->mActionState++;
|
||||
case 5:
|
||||
maai_sub(i_this);
|
||||
if (i_this->mSomeCountdownTimers[0] == 0) {
|
||||
i_this->m3E6 = 1;
|
||||
actor->speedF = REG8_F(12) + 75.0f;
|
||||
i_this->m488 = REG8_F(13) + 2.0f;
|
||||
i_this->m490 = 0.0f;
|
||||
anm_init(i_this, dRes_INDEX_BPW_BCK_MOVES1_e, DEMO_SELECT(REG11_F(0) + 15.0f, 15.0f), J3DFrameCtrl::EMode_LOOP, 1.0f, -1);
|
||||
i_this->mActionState++;
|
||||
} else {
|
||||
break;
|
||||
}
|
||||
|
||||
// fallthrough
|
||||
case 6: {
|
||||
if (actor->speedF < 1.0f) {
|
||||
actor->speedF = 0.0f;
|
||||
}
|
||||
cMtx_YrotS(*calc_mtx, actor->current.angle.y);
|
||||
local_c0.x = 0.0f;
|
||||
local_c0.y = 0.0f;
|
||||
local_c0.z = 500.0f;
|
||||
MtxPosition(&local_c0, i_this->m328);
|
||||
i_this->m328[0] += actor->current.pos;
|
||||
i_this->m328[0].y += 400.0f;
|
||||
i_this->m304[0] = actor->current.pos;
|
||||
i_this->m304[0].y += 400.0f;
|
||||
linChk.Set(i_this->m304, i_this->m328, actor);
|
||||
if (dComIfG_Bgsp()->LineCross(&linChk)) {
|
||||
actor->speedF = 0.0f;
|
||||
}
|
||||
f32 f0;
|
||||
f32 f1;
|
||||
f1 = actor->speedF;
|
||||
f0 = 0.0f;
|
||||
if (f1 == f0) {
|
||||
noroi_brk_check(i_this, 1);
|
||||
next_status_clear(i_this, 1);
|
||||
if (player->checkConfuse()) {
|
||||
i_this->mBodyAction = ACTION_ATTACK_KOUGEKI;
|
||||
i_this->mActionState = 0x14;
|
||||
} else {
|
||||
i_this->mActionState = 0;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 10:
|
||||
search_get_skull(i_this, 2);
|
||||
for (s32 i = 0; i < 10; i++) {
|
||||
i_this->mSomeCountdownTimers[i + 10] = 0;
|
||||
}
|
||||
if (i_this->m3F8 != 0x2a) {
|
||||
anm_init(i_this, dRes_INDEX_BPW_BCK_WAIT1_e, DEMO_SELECT(REG11_F(0) + 15.0f, 15.0f), J3DFrameCtrl::EMode_LOOP, 1.0f, -1);
|
||||
}
|
||||
i_this->mActionState++;
|
||||
case 0xb:
|
||||
cLib_addCalcAngleS2(&i_this->m47E, 0, 1, 10);
|
||||
if (i_this->m47E < 2) {
|
||||
i_this->m47E = 0;
|
||||
if (kantera_pos_search(i_this)) {
|
||||
i_this->mActionState++;
|
||||
}
|
||||
}
|
||||
break;
|
||||
case 0xc:
|
||||
cLib_addCalcAngleS2(&i_this->m47E, 0x96, 1, 0x1e);
|
||||
if (i_this->m47E >= 0x95) {
|
||||
i_this->m47E = 0x96;
|
||||
i_this->m480 = 0x96;
|
||||
anm_init(i_this, dRes_INDEX_BPW_BCK_HIROU1_e, DEMO_SELECT(REG11_F(0) + 15.0f, 15.0f), J3DFrameCtrl::EMode_NONE, 1.0f, -1);
|
||||
kantera_pos_search(i_this);
|
||||
i_this->mActionState++;
|
||||
}
|
||||
break;
|
||||
case 0xd:
|
||||
if (i_this->m462 == 0) {
|
||||
kantera_pos_search(i_this);
|
||||
}
|
||||
if (i_this->mpMorf->checkFrame(12.0f)) {
|
||||
fopAcM_seStart(actor, JA_SE_CM_BPW_GET_KANTERA, 0);
|
||||
if (i_this->m3FC != fpcM_ERROR_PROCESS_ID_e) {
|
||||
bpw_class* pfVar6 = (bpw_class*)fopAcM_SearchByID(i_this->m3FC);
|
||||
if (pfVar6 != NULL) {
|
||||
pfVar6->actor.gravity = 0.0f;
|
||||
pfVar6->actor.speedF = 0.0f;
|
||||
pfVar6->actor.speed.setall(0.0f);
|
||||
pfVar6->actor.attention_info.flags = 0;
|
||||
pfVar6->mActionState = 0;
|
||||
i_this->m462 = 1;
|
||||
}
|
||||
}
|
||||
i_this->m482 = 0;
|
||||
i_this->m388 = 0.0f;
|
||||
i_this->m38C = 0.0f;
|
||||
i_this->m390 = 0.0f;
|
||||
i_this->mAttWaitTimer = 1;
|
||||
}
|
||||
if (i_this->mpMorf->isStop()) {
|
||||
next_status_clear(i_this, 1);
|
||||
#if VERSION > VERSION_DEMO
|
||||
i_this->mSomeCountdownTimers[2] = 0;
|
||||
#endif
|
||||
i_this->mBodyAction = ACTION_ATTACK_KOUGEKI;
|
||||
i_this->mActionState = 0x14;
|
||||
}
|
||||
// fallthrough
|
||||
}
|
||||
i_this->m4A0 = 0.0f;
|
||||
cLib_addCalc2(&actor->speedF, i_this->m490, 1.0f, i_this->m488);
|
||||
@@ -3988,32 +3993,33 @@ void torituki_execute(bpw_class* i_this) {
|
||||
case 1:
|
||||
cLib_addCalc2(&actor->scale.x, 0.4f, 1.0f, 0.1f);
|
||||
actor->scale.y = actor->scale.z = actor->scale.x;
|
||||
if (!(actor->scale.x < 0.3f)) {
|
||||
anm_init(i_this, dRes_INDEX_BPW_BCK_TORITUKI1_e, DEMO_SELECT(REG11_F(0) + 15.0f, 15.0f), J3DFrameCtrl::EMode_LOOP, 1.0f, -1);
|
||||
i_this->mSomeCountdownTimers[8] = DEMO_SELECT(0xD2, 0x96);
|
||||
actor->scale.setall(0.4f);
|
||||
i_this->mActionState++;
|
||||
// fallthrough
|
||||
case 2:
|
||||
actor->shape_angle.y += 1000;
|
||||
if (i_this->mSomeCountdownTimers[8] != 0) {
|
||||
daPy_py_c* player = (daPy_py_c*)dComIfGp_getPlayer(0);
|
||||
if (((i_this->mSomeCountdownTimers[8] == 1 || (dComIfGp_getDetect().chk_light(&actor->current.pos))) ||
|
||||
(dComIfGp_checkPlayerStatus1(0, daPyStts1_UNK2000_e))) ||
|
||||
(player->getDamageWaitTimer() != 0 || (player->checkFairyUse())))
|
||||
{
|
||||
player->offConfuse();
|
||||
i_this->mSomeCountdownTimers[8] = 0;
|
||||
if (dComIfGp_getStartStageName()[0] == 'X') {
|
||||
mDoAud_bgmStart(JA_BGM_PAST_BIG_POW);
|
||||
} else {
|
||||
mDoAud_bgmStart(JA_BGM_BIG_POW);
|
||||
}
|
||||
i_this->mActionState++;
|
||||
if (actor->scale.x < 0.3f) {
|
||||
break;
|
||||
}
|
||||
anm_init(i_this, dRes_INDEX_BPW_BCK_TORITUKI1_e, DEMO_SELECT(REG11_F(0) + 15.0f, 15.0f), J3DFrameCtrl::EMode_LOOP, 1.0f, -1);
|
||||
i_this->mSomeCountdownTimers[8] = DEMO_SELECT(0xD2, 0x96);
|
||||
actor->scale.setall(0.4f);
|
||||
i_this->mActionState++;
|
||||
// fallthrough
|
||||
case 2: {
|
||||
actor->shape_angle.y += 1000;
|
||||
if (i_this->mSomeCountdownTimers[8] != 0) {
|
||||
daPy_py_c* player = (daPy_py_c*)dComIfGp_getPlayer(0);
|
||||
if (i_this->mSomeCountdownTimers[8] == 1 || dComIfGp_getDetect().chk_light(&actor->current.pos) ||
|
||||
dComIfGp_checkPlayerStatus1(0, daPyStts1_UNK2000_e) || player->getDamageWaitTimer() != 0 || player->checkFairyUse())
|
||||
{
|
||||
player->offConfuse();
|
||||
i_this->mSomeCountdownTimers[8] = 0;
|
||||
if (dComIfGp_getStartStageName()[0] == 'X') {
|
||||
mDoAud_bgmStart(JA_BGM_PAST_BIG_POW);
|
||||
} else {
|
||||
mDoAud_bgmStart(JA_BGM_BIG_POW);
|
||||
}
|
||||
i_this->mActionState++;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
case 3:
|
||||
cLib_addCalc0(&actor->scale.x, 1.0f, 0.1f);
|
||||
actor->scale.y = actor->scale.z = actor->scale.x;
|
||||
|
||||
+161
-159
@@ -670,177 +670,179 @@ static s32 damage(btd_class* i_this)
|
||||
anm_init(i_this, dRes_INDEX_BTD_BCK_SIZUMU2_e, 1.0f, J3DFrameCtrl::EMode_LOOP, 1.0f, -1);
|
||||
i_this->m02EC[0] = (REG0_S(7) + 0x14) * 5;
|
||||
i_this->mGohmaState++;
|
||||
|
||||
case 0x16:
|
||||
if (i_this->m02EC[0] == REG0_S(5) + 0x28) {
|
||||
J3DModel* model = morf->getModel();
|
||||
i_this->brk->init(
|
||||
model->getModelData(),
|
||||
(J3DAnmTevRegKey*)dComIfG_getObjectRes("Btd", hibi_brk[i_this->m6190]),
|
||||
true,
|
||||
J3DFrameCtrl::EMode_LOOP,
|
||||
1.0f,
|
||||
0,
|
||||
-1,
|
||||
true,
|
||||
0
|
||||
);
|
||||
i_this->m6190++;
|
||||
fopAcM_seStart(actor, JA_SE_CM_BTD_BRK_SHIELD_S, 0);
|
||||
for (int i = 0, j = 0; i < 3; i++, j++) {
|
||||
JPABaseEmitter* emitter = dComIfGp_particle_set(hibi_eff_name[j], &actor->current.pos);
|
||||
if (emitter != NULL) {
|
||||
emitter->setGlobalRTMatrix(morf->getModel()->getAnmMtx(BTD_JNT_HEAD_e));
|
||||
}
|
||||
}
|
||||
if (l_HIO.m06 != 0) {
|
||||
i_this->m6190 = 3;
|
||||
}
|
||||
if ((l_HIO.m07 != 0) && (i_this->m6190 >= 3)) {
|
||||
i_this->m6190 = 2;
|
||||
}
|
||||
}
|
||||
if (i_this->m02EC[0] == 0) {
|
||||
if (i_this->m6190 >= 3) {
|
||||
i_this->mGohmaState = 0x28;
|
||||
} else {
|
||||
anm_init(i_this, dRes_INDEX_BTD_BCK_SIZUMU3_e, 15.0f, J3DFrameCtrl::EMode_NONE, 1.0f, -1);
|
||||
i_this->mGohmaState++;
|
||||
static_center_pos.setall(0.0f);
|
||||
mDoAud_seStart(JA_SE_CM_BTD_INTO_MAGMA_N, &static_center_pos, 0, dComIfGp_getReverb(fopAcM_GetRoomNo(actor)));
|
||||
fopAcM_monsSeStart(actor, JA_SE_CV_BTD_WAIT, 0);
|
||||
i_this->m6E7C = 0.0f;
|
||||
i_this->m02EC[0] = 0x96;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
break;
|
||||
case 0x17:
|
||||
if ((i_this->m02EC[0] == 1) || (i_this->m02EC[0] == 0x46)) {
|
||||
i_this->m6E7C = 0.0f;
|
||||
}
|
||||
// Fall-through
|
||||
case 0x16:
|
||||
if (i_this->m02EC[0] == REG0_S(5) + 0x28) {
|
||||
J3DModel* model = morf->getModel();
|
||||
i_this->brk->init(
|
||||
model->getModelData(),
|
||||
(J3DAnmTevRegKey*)dComIfG_getObjectRes("Btd", hibi_brk[i_this->m6190]),
|
||||
true,
|
||||
J3DFrameCtrl::EMode_LOOP,
|
||||
1.0f,
|
||||
0,
|
||||
-1,
|
||||
true,
|
||||
0
|
||||
);
|
||||
i_this->m6190++;
|
||||
fopAcM_seStart(actor, JA_SE_CM_BTD_BRK_SHIELD_S, 0);
|
||||
for (int i = 0, j = 0; i < 3; i++, j++) {
|
||||
JPABaseEmitter* emitter = dComIfGp_particle_set(hibi_eff_name[j], &actor->current.pos);
|
||||
if (emitter != NULL) {
|
||||
emitter->setGlobalRTMatrix(morf->getModel()->getAnmMtx(BTD_JNT_HEAD_e));
|
||||
}
|
||||
}
|
||||
if (morf->isStop()) {
|
||||
i_this->mGohmaState = 0x1e;
|
||||
i_this->m02EC[0] = 0;
|
||||
if (l_HIO.m06 != 0) {
|
||||
i_this->m6190 = 3;
|
||||
}
|
||||
break;
|
||||
case 0x1e:
|
||||
i_this->m6E88 = 0;
|
||||
if (i_this->m02EC[0] == 0) {
|
||||
anm_init(i_this, dRes_INDEX_BTD_BCK_MOTIAGE1_e, 1.0f, J3DFrameCtrl::EMode_NONE, 1.0f, -1);
|
||||
if ((l_HIO.m07 != 0) && (i_this->m6190 >= 3)) {
|
||||
i_this->m6190 = 2;
|
||||
}
|
||||
}
|
||||
if (i_this->m02EC[0] == 0) {
|
||||
if (i_this->m6190 >= 3) {
|
||||
i_this->mGohmaState = 0x28;
|
||||
} else {
|
||||
anm_init(i_this, dRes_INDEX_BTD_BCK_SIZUMU3_e, 15.0f, J3DFrameCtrl::EMode_NONE, 1.0f, -1);
|
||||
i_this->mGohmaState++;
|
||||
i_this->m02F6 = 0;
|
||||
mDoAud_seStart(JA_SE_CM_BTD_ENT_BLAST, &static_center_pos, 0, dComIfGp_getReverb(fopAcM_GetRoomNo(actor)));
|
||||
fopAcM_monsSeStart(actor, JA_SE_CV_BTD_ENTER, 0);
|
||||
i_this->m02EC[0] = 0x3c;
|
||||
static_center_pos.setall(0.0f);
|
||||
mDoAud_seStart(JA_SE_CM_BTD_INTO_MAGMA_N, &static_center_pos, 0, dComIfGp_getReverb(fopAcM_GetRoomNo(actor)));
|
||||
fopAcM_monsSeStart(actor, JA_SE_CV_BTD_WAIT, 0);
|
||||
i_this->m6E7C = 0.0f;
|
||||
i_this->mKankyoTimer = 0x14;
|
||||
i_this->m02EC[0] = 0x96;
|
||||
}
|
||||
break;
|
||||
case 0x1f:
|
||||
if (i_this->m02EC[0] == 0x37) {
|
||||
sibuki_set(i_this);
|
||||
}
|
||||
if (i_this->m02EC[0] == 1) {
|
||||
i_this->m6E7C = 0.0f;
|
||||
}
|
||||
if (morf->isStop()) {
|
||||
anm_init(i_this, dRes_INDEX_BTD_BCK_MOTIAGE2_e, 1.0f, J3DFrameCtrl::EMode_NONE, 1.0f, -1);
|
||||
i_this->mGohmaState++;
|
||||
mDoAud_seStart(JA_SE_CM_BTD_LIFT_UP, &static_center_pos, 0, dComIfGp_getReverb(fopAcM_GetRoomNo(actor)));
|
||||
i_this->m6E7C = 0.0f;
|
||||
}
|
||||
break;
|
||||
case 0x20:
|
||||
i_this->m6E88 = 0;
|
||||
if (morf->isStop()) {
|
||||
anm_init(i_this, dRes_INDEX_BTD_BCK_MOTIAGE3_e, 3.0f, J3DFrameCtrl::EMode_NONE, 1.0f, -1);
|
||||
dr2_class* tmp = (dr2_class*)dr2;
|
||||
mDoAud_seStart(JA_SE_CM_BTD_JUMP_DOWN, &tmp->unk_4A8, 0, dComIfGp_getReverb(fopAcM_GetRoomNo(actor)));
|
||||
dComIfGp_particle_set(dPa_name::ID_AK_SN_BTDSPLASHMAGMA00, &actor->current.pos, &actor->current.angle);
|
||||
i_this->mGohmaState++;
|
||||
i_this->m02EC[0] = 0x1e;
|
||||
}
|
||||
break;
|
||||
case 0x21:
|
||||
if (i_this->m02EC[0] == 0x14) {
|
||||
mDoAud_seStart(JA_SE_CM_BTD_LANDING, &static_center_pos, 0, dComIfGp_getReverb(fopAcM_GetRoomNo(actor)));
|
||||
i_this->m6E7C = 0.0f;
|
||||
sibuki_set(i_this);
|
||||
}
|
||||
if (morf->isStop()) {
|
||||
i_this->m02E4 = 0;
|
||||
i_this->mGohmaState = 0;
|
||||
i_this->m02EC[0] = cM_rndF(50.0f) + 50.0f;
|
||||
}
|
||||
break;
|
||||
case 0x28:
|
||||
anm_init(i_this, dRes_INDEX_BTD_BCK_WARERU1_e, 3.0f, J3DFrameCtrl::EMode_NONE, 1.0f, -1);
|
||||
i_this->mGohmaState++;
|
||||
fopAcM_seStart(actor, JA_SE_CM_BTD_FALL_FWD, 0);
|
||||
mDoAud_bgmStop(30);
|
||||
i_this->m02EC[0] = 0x96;
|
||||
}
|
||||
break;
|
||||
case 0x17:
|
||||
if ((i_this->m02EC[0] == 1) || (i_this->m02EC[0] == 0x46)) {
|
||||
i_this->m6E7C = 0.0f;
|
||||
case 0x29:
|
||||
if (i_this->m02EC[0] == (s16)(REG0_S(5) + 0x26)) {
|
||||
dr2_class* tmp = dr2;
|
||||
tmp->unk_4BA = 10;
|
||||
if (dComIfGp_getStartStageName()[0] == 'X') {
|
||||
mDoAud_bgmStart(JA_BGM_PAST_GOMA_2);
|
||||
} else {
|
||||
mDoAud_bgmStart(JA_BGM_GOMA_2);
|
||||
};
|
||||
btd_hahen_s* hahen = &i_this->hahen[0];
|
||||
for (s32 i = 0; i < ARRAY_SSIZE(i_this->hahen); i++, hahen++) {
|
||||
if (hahen->m04 == 0) {
|
||||
int iVar3;
|
||||
if (i < 5) {
|
||||
iVar3 = 2;
|
||||
} else {
|
||||
iVar3 = cM_rndF(18.999f);
|
||||
}
|
||||
hahen->m04 = 1;
|
||||
hahen->m08.x = i_this->m02FC[iVar3].x;
|
||||
hahen->m08.y = i_this->m02FC[iVar3].y;
|
||||
hahen->m08.z = i_this->m02FC[iVar3].z;
|
||||
hahen->m08.x = hahen->m08.x + cM_rndFX(REG0_F(2) + 50.0f);
|
||||
hahen->m08.y = hahen->m08.y + cM_rndFX(REG0_F(2) + 50.0f);
|
||||
hahen->m08.z = hahen->m08.z + cM_rndFX(REG0_F(2) + 50.0f);
|
||||
s16 r0 = cM_atan2s(hahen->m08.x, hahen->m08.z);
|
||||
cMtx_YrotS(*calc_mtx, r0 + (s16)cM_rndFX(2000.0f));
|
||||
local_58.x = 0.0f;
|
||||
local_58.y = REG0_F(1) + (cM_rndF(5.0f) + 20.0f);
|
||||
local_58.z = REG0_F(0) + (cM_rndF(5.0f) + 20.0f);
|
||||
MtxPosition(&local_58, &hahen->m14);
|
||||
hahen->m22 = cM_rndF(0x10000);
|
||||
hahen->m20 = cM_rndF(0x10000);
|
||||
}
|
||||
}
|
||||
for (s32 i = 0, j = 0, k = 0; i < ARRAY_SSIZE(hahen_eff_name); i++, j++, k++) {
|
||||
JPABaseEmitter* emitter = dComIfGp_particle_set(hahen_eff_name[k], &actor->current.pos);
|
||||
if (emitter != NULL) {
|
||||
emitter->setGlobalRTMatrix(morf->getModel()->getAnmMtx(hahen_eff_index[j]));
|
||||
}
|
||||
if (morf->isStop()) {
|
||||
i_this->mGohmaState = 0x1e;
|
||||
i_this->m02EC[0] = 0;
|
||||
}
|
||||
break;
|
||||
case 0x1e:
|
||||
i_this->m6E88 = 0;
|
||||
if (i_this->m02EC[0] == 0) {
|
||||
anm_init(i_this, dRes_INDEX_BTD_BCK_MOTIAGE1_e, 1.0f, J3DFrameCtrl::EMode_NONE, 1.0f, -1);
|
||||
i_this->mGohmaState++;
|
||||
i_this->m02F6 = 0;
|
||||
mDoAud_seStart(JA_SE_CM_BTD_ENT_BLAST, &static_center_pos, 0, dComIfGp_getReverb(fopAcM_GetRoomNo(actor)));
|
||||
fopAcM_monsSeStart(actor, JA_SE_CV_BTD_ENTER, 0);
|
||||
i_this->m02EC[0] = 0x3c;
|
||||
i_this->m6E7C = 0.0f;
|
||||
i_this->mKankyoTimer = 0x14;
|
||||
}
|
||||
break;
|
||||
case 0x1f:
|
||||
if (i_this->m02EC[0] == 0x37) {
|
||||
sibuki_set(i_this);
|
||||
}
|
||||
if (i_this->m02EC[0] == 1) {
|
||||
i_this->m6E7C = 0.0f;
|
||||
}
|
||||
if (morf->isStop()) {
|
||||
anm_init(i_this, dRes_INDEX_BTD_BCK_MOTIAGE2_e, 1.0f, J3DFrameCtrl::EMode_NONE, 1.0f, -1);
|
||||
i_this->mGohmaState++;
|
||||
mDoAud_seStart(JA_SE_CM_BTD_LIFT_UP, &static_center_pos, 0, dComIfGp_getReverb(fopAcM_GetRoomNo(actor)));
|
||||
i_this->m6E7C = 0.0f;
|
||||
}
|
||||
break;
|
||||
case 0x20:
|
||||
i_this->m6E88 = 0;
|
||||
if (morf->isStop()) {
|
||||
anm_init(i_this, dRes_INDEX_BTD_BCK_MOTIAGE3_e, 3.0f, J3DFrameCtrl::EMode_NONE, 1.0f, -1);
|
||||
dr2_class* tmp = (dr2_class*)dr2;
|
||||
mDoAud_seStart(JA_SE_CM_BTD_JUMP_DOWN, &tmp->unk_4A8, 0, dComIfGp_getReverb(fopAcM_GetRoomNo(actor)));
|
||||
dComIfGp_particle_set(dPa_name::ID_AK_SN_BTDSPLASHMAGMA00, &actor->current.pos, &actor->current.angle);
|
||||
i_this->mGohmaState++;
|
||||
i_this->m02EC[0] = 0x1e;
|
||||
}
|
||||
break;
|
||||
case 0x21:
|
||||
if (i_this->m02EC[0] == 0x14) {
|
||||
mDoAud_seStart(JA_SE_CM_BTD_LANDING, &static_center_pos, 0, dComIfGp_getReverb(fopAcM_GetRoomNo(actor)));
|
||||
i_this->m6E7C = 0.0f;
|
||||
sibuki_set(i_this);
|
||||
}
|
||||
if (morf->isStop()) {
|
||||
i_this->m02E4 = 0;
|
||||
i_this->mGohmaState = 0;
|
||||
i_this->m02EC[0] = cM_rndF(50.0f) + 50.0f;
|
||||
}
|
||||
break;
|
||||
case 0x28:
|
||||
anm_init(i_this, dRes_INDEX_BTD_BCK_WARERU1_e, 3.0f, J3DFrameCtrl::EMode_NONE, 1.0f, -1);
|
||||
i_this->mGohmaState++;
|
||||
fopAcM_seStart(actor, JA_SE_CM_BTD_FALL_FWD, 0);
|
||||
mDoAud_bgmStop(30);
|
||||
i_this->m02EC[0] = 0x96;
|
||||
i_this->m6E7C = 0.0f;
|
||||
case 0x29:
|
||||
if (i_this->m02EC[0] == (s16)(REG0_S(5) + 0x26)) {
|
||||
dr2_class* tmp = dr2;
|
||||
tmp->unk_4BA = 10;
|
||||
if (dComIfGp_getStartStageName()[0] == 'X') {
|
||||
mDoAud_bgmStart(JA_BGM_PAST_GOMA_2);
|
||||
} else {
|
||||
mDoAud_bgmStart(JA_BGM_GOMA_2);
|
||||
};
|
||||
btd_hahen_s* hahen = &i_this->hahen[0];
|
||||
for (s32 i = 0; i < ARRAY_SSIZE(i_this->hahen); i++, hahen++) {
|
||||
if (hahen->m04 == 0) {
|
||||
int iVar3;
|
||||
if (i < 5) {
|
||||
iVar3 = 2;
|
||||
} else {
|
||||
iVar3 = cM_rndF(18.999f);
|
||||
}
|
||||
hahen->m04 = 1;
|
||||
hahen->m08.x = i_this->m02FC[iVar3].x;
|
||||
hahen->m08.y = i_this->m02FC[iVar3].y;
|
||||
hahen->m08.z = i_this->m02FC[iVar3].z;
|
||||
hahen->m08.x = hahen->m08.x + cM_rndFX(REG0_F(2) + 50.0f);
|
||||
hahen->m08.y = hahen->m08.y + cM_rndFX(REG0_F(2) + 50.0f);
|
||||
hahen->m08.z = hahen->m08.z + cM_rndFX(REG0_F(2) + 50.0f);
|
||||
s16 r0 = cM_atan2s(hahen->m08.x, hahen->m08.z);
|
||||
cMtx_YrotS(*calc_mtx, r0 + (s16)cM_rndFX(2000.0f));
|
||||
local_58.x = 0.0f;
|
||||
local_58.y = REG0_F(1) + (cM_rndF(5.0f) + 20.0f);
|
||||
local_58.z = REG0_F(0) + (cM_rndF(5.0f) + 20.0f);
|
||||
MtxPosition(&local_58, &hahen->m14);
|
||||
hahen->m22 = cM_rndF(0x10000);
|
||||
hahen->m20 = cM_rndF(0x10000);
|
||||
}
|
||||
}
|
||||
if (i_this->m02EC[0] == 0x65) {
|
||||
fopAcM_seStart(actor, JA_SE_CM_BTD_GET_UP, 0);
|
||||
fopAcM_monsSeStart(actor, JA_SE_CV_BTD_ENTER, 0);
|
||||
}
|
||||
if (morf->isStop()) {
|
||||
fopAcM_seStart(actor, JA_SE_CM_BTD_BRK_SHIELD_L, 0);
|
||||
fopAcM_monsSeStart(actor, JA_SE_CV_BTD_AFT_DAMAGE, 0);
|
||||
i_this->m02E0 = 1;
|
||||
anm_init(i_this, dRes_INDEX_BTD_BCK_WARERU2_e, 0.0f, J3DFrameCtrl::EMode_NONE, 1.0f, -1);
|
||||
i_this->mGohmaState++;
|
||||
}
|
||||
break;
|
||||
case 0x2a:
|
||||
if (morf->isStop()) {
|
||||
i_this->m02E4 = 0;
|
||||
i_this->mGohmaState = 0;
|
||||
i_this->m02EC[0] = cM_rndF(50.0f) + 50.0f;
|
||||
for (s32 i = 0, j = 0, k = 0; i < ARRAY_SSIZE(hahen_eff_name); i++, j++, k++) {
|
||||
JPABaseEmitter* emitter = dComIfGp_particle_set(hahen_eff_name[k], &actor->current.pos);
|
||||
if (emitter != NULL) {
|
||||
emitter->setGlobalRTMatrix(morf->getModel()->getAnmMtx(hahen_eff_index[j]));
|
||||
}
|
||||
}
|
||||
}
|
||||
if (i_this->m02EC[0] == 0x65) {
|
||||
fopAcM_seStart(actor, JA_SE_CM_BTD_GET_UP, 0);
|
||||
fopAcM_monsSeStart(actor, JA_SE_CV_BTD_ENTER, 0);
|
||||
}
|
||||
if (morf->isStop()) {
|
||||
fopAcM_seStart(actor, JA_SE_CM_BTD_BRK_SHIELD_L, 0);
|
||||
fopAcM_monsSeStart(actor, JA_SE_CV_BTD_AFT_DAMAGE, 0);
|
||||
i_this->m02E0 = 1;
|
||||
anm_init(i_this, dRes_INDEX_BTD_BCK_WARERU2_e, 0.0f, J3DFrameCtrl::EMode_NONE, 1.0f, -1);
|
||||
i_this->mGohmaState++;
|
||||
}
|
||||
break;
|
||||
case 0x2a:
|
||||
if (morf->isStop()) {
|
||||
i_this->m02E4 = 0;
|
||||
i_this->mGohmaState = 0;
|
||||
i_this->m02EC[0] = cM_rndF(50.0f) + 50.0f;
|
||||
}
|
||||
}
|
||||
#if VERSION == VERSION_DEMO
|
||||
return;
|
||||
|
||||
@@ -654,7 +654,6 @@ static void daMo2_shadowDraw(mo2_class* i_this) {
|
||||
i_this->mDamageReaction.mAcch.m_gnd,
|
||||
&actor->tevStr
|
||||
);
|
||||
;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
@@ -227,7 +227,7 @@ bool daNpc_Hi1_c::setBtp(s8 param_1, bool param_2) {
|
||||
if(param_1 < 0) {
|
||||
return false;
|
||||
}
|
||||
int resID = btpResID((int)param_1) ;
|
||||
int resID = btpResID(param_1);
|
||||
J3DAnmTexPattern* a_btp = (J3DAnmTexPattern *)dComIfG_getObjectIDRes(mArcName, resID);
|
||||
JUT_ASSERT(0x192, a_btp != NULL);
|
||||
field_0x7BE = param_1;
|
||||
@@ -243,7 +243,7 @@ bool daNpc_Hi1_c::setBtk(s8 param_1, bool param_2) {
|
||||
if(param_1 < 0) {
|
||||
return false;
|
||||
}
|
||||
int resID = btkResID((int)param_1);
|
||||
int resID = btkResID(param_1);
|
||||
J3DAnmTextureSRTKey* a_btk = (J3DAnmTextureSRTKey *)dComIfG_getObjectIDRes(mArcName, resID);
|
||||
|
||||
JUT_ASSERT(0x1aa, a_btk != NULL);
|
||||
|
||||
@@ -154,17 +154,13 @@ void daObjAuzu::Act_c::ship_whirl() {
|
||||
if (ship_p && fopAcM_GetName(ship_p) == fpcNm_SHIP_e) {
|
||||
f32 sqr_mag_xz = fopAcM_searchActorDistanceXZ2(this, ship_p);
|
||||
#if VERSION > VERSION_DEMO
|
||||
f32 inner_activation = (daObjAuzu::L_radius * attr().mInnerActivationMult) *
|
||||
(daObjAuzu::L_radius * attr().mInnerActivationMult);
|
||||
f32 inner_activation = SQUARE(daObjAuzu::L_radius * attr().mInnerActivationMult);
|
||||
|
||||
f32 outer_activation = (daObjAuzu::L_radius * attr().mOuterActivationMult) *
|
||||
(daObjAuzu::L_radius * attr().mOuterActivationMult);
|
||||
f32 outer_activation = SQUARE(daObjAuzu::L_radius * attr().mOuterActivationMult);
|
||||
#else
|
||||
f32 outer_activation = (daObjAuzu::L_radius * attr().mOuterActivationMult) *
|
||||
(daObjAuzu::L_radius * attr().mOuterActivationMult);
|
||||
f32 outer_activation = SQUARE(daObjAuzu::L_radius * attr().mOuterActivationMult);
|
||||
|
||||
f32 inner_activation = (daObjAuzu::L_radius * attr().mInnerActivationMult) *
|
||||
(daObjAuzu::L_radius * attr().mInnerActivationMult);
|
||||
f32 inner_activation = SQUARE(daObjAuzu::L_radius * attr().mInnerActivationMult);
|
||||
#endif
|
||||
if (sqr_mag_xz < outer_activation) {
|
||||
if (mScaleAnimFactor > 0.01f) {
|
||||
@@ -191,10 +187,10 @@ void daObjAuzu::Act_c::bgm_start() {
|
||||
|
||||
/* 000007DC-00000AF8 .text _execute__Q29daObjAuzu5Act_cFv */
|
||||
bool daObjAuzu::Act_c::_execute() {
|
||||
f32 scale_target;
|
||||
#if VERSION > VERSION_JPN
|
||||
set_mtx();
|
||||
#endif
|
||||
|
||||
if (dComIfGp_checkPlayerStatus0(0, daPyStts0_SHIP_RIDE_e)) {
|
||||
ship_whirl();
|
||||
} else {
|
||||
@@ -202,9 +198,7 @@ bool daObjAuzu::Act_c::_execute() {
|
||||
daPy_lk_c* link_p = daPy_getPlayerLinkActorClass();
|
||||
fopAcM_searchActorDistanceXZ2(this, daPy_getPlayerLinkActorClass());
|
||||
if (
|
||||
fopAcM_searchActorDistanceXZ2(this, link_p) <
|
||||
((daObjAuzu::L_radius * attr().mOuterActivationMult) *
|
||||
(daObjAuzu::L_radius * attr().mOuterActivationMult))
|
||||
fopAcM_searchActorDistanceXZ2(this, link_p) < SQUARE(daObjAuzu::L_radius * attr().mOuterActivationMult)
|
||||
) {
|
||||
link_p->setWhirlId(fopAcM_GetID(this));
|
||||
}
|
||||
@@ -213,6 +207,7 @@ bool daObjAuzu::Act_c::_execute() {
|
||||
|
||||
mBtkAnm.play();
|
||||
|
||||
f32 scale_target;
|
||||
if (prm_get_appear() == 1) {
|
||||
if (mbToAppear) {
|
||||
scale_target = 1.0f;
|
||||
|
||||
@@ -3912,23 +3912,14 @@ void daPy_lk_c::checkItemAction() {
|
||||
{
|
||||
J3DFrameCtrl& frameCtrl = mFrameCtrlUpper[UPPER_MOVE2_e];
|
||||
if (checkUpperAnime(dRes_INDEX_LKANM_BCK_BOOMCATCH_e)) {
|
||||
if (!(frameCtrl.getRate() < 0.01f)) {
|
||||
if (!(mStickDistance > 0.05f)) {
|
||||
return;
|
||||
if (frameCtrl.getRate() < 0.01f || (mStickDistance > 0.05f && frameCtrl.getFrame() > m_HIO->mItem.mBoom.m.field_0x2C)) {
|
||||
resetActAnimeUpper(UPPER_MOVE2_e, m_HIO->mBasic.m.field_0xC);
|
||||
if (dComIfGp_checkPlayerStatus0(0, daPyStts0_SHIP_RIDE_e)) {
|
||||
procShipPaddle_init();
|
||||
}
|
||||
if (!(frameCtrl.getFrame() > m_HIO->mItem.mBoom.m.field_0x2C)) {
|
||||
return;
|
||||
}
|
||||
}
|
||||
resetActAnimeUpper(UPPER_MOVE2_e, m_HIO->mBasic.m.field_0xC);
|
||||
if (dComIfGp_checkPlayerStatus0(0, daPyStts0_SHIP_RIDE_e)) {
|
||||
procShipPaddle_init();
|
||||
}
|
||||
} else if (checkUpperAnime(dRes_INDEX_LKANM_BCK_BOOMTHROW_e)) {
|
||||
if (frameCtrl.getRate() < 0.01f ||
|
||||
((mStickDistance > 0.05f &&
|
||||
(frameCtrl.getFrame() > m_HIO->mItem.mBoom.m.field_0x10))))
|
||||
{
|
||||
if (frameCtrl.getRate() < 0.01f || (mStickDistance > 0.05f && frameCtrl.getFrame() > m_HIO->mItem.mBoom.m.field_0x10)) {
|
||||
resetActAnimeUpper(UPPER_MOVE2_e, m_HIO->mBasic.m.field_0xC);
|
||||
} else {
|
||||
if (frameCtrl.checkPass(m_HIO->mItem.mBoom.m.field_0x14)) {
|
||||
@@ -4247,9 +4238,7 @@ BOOL daPy_lk_c::checkNextActionFromButton() {
|
||||
}
|
||||
if (mEquipItem == dItemNo_SKULL_HAMMER_e) {
|
||||
direction = getDirectionFromShapeAngle();
|
||||
if (mStickDistance > 0.05f &&
|
||||
((direction == DIR_LEFT || direction == DIR_RIGHT)))
|
||||
{
|
||||
if (mStickDistance > 0.05f && (direction == DIR_LEFT || direction == DIR_RIGHT)) {
|
||||
return procHammerSideSwing_init();
|
||||
} else {
|
||||
return procHammerFrontSwingReady_init();
|
||||
@@ -4948,11 +4937,9 @@ BOOL daPy_lk_c::changeLandProc(f32 param_1) {
|
||||
} else {
|
||||
bVar2 = false;
|
||||
}
|
||||
if ((((!checkGrabAnime() && mStickDistance > 0.5f) && direction != DIR_BACKWARD) &&
|
||||
(!bVar2)) &&
|
||||
(((mCurProc == daPyProc_CUT_EX_MJ_e || (m3688.y - current.pos.y >= 300.0f)) &&
|
||||
((!checkNoResetFlg1(daPyFlg1_UNK8000000) &&
|
||||
getDirectionFromCurrentAngle() == DIR_FORWARD)))))
|
||||
if (!checkGrabAnime() && mStickDistance > 0.5f && direction != DIR_BACKWARD && !bVar2 &&
|
||||
(mCurProc == daPyProc_CUT_EX_MJ_e || (m3688.y - current.pos.y) >= 300.0f) &&
|
||||
!checkNoResetFlg1(daPyFlg1_UNK8000000) && getDirectionFromCurrentAngle() == DIR_FORWARD)
|
||||
{
|
||||
voiceStart(7);
|
||||
if (direction == DIR_FORWARD) {
|
||||
@@ -6465,7 +6452,7 @@ BOOL daPy_lk_c::procCrouchDefenseSlip_init() {
|
||||
m35A8 = m_HIO->mNockback.m.field_0x24;
|
||||
m35AC = m_HIO->mNockback.m.field_0x28;
|
||||
dVar5 = cM_rnd();
|
||||
mProcVar6.m3570 = (dVar5 < 0.2f) ? 1 : 0;
|
||||
mProcVar6.m3570 = dVar5 < 0.2f ? 1 : 0;
|
||||
} else {
|
||||
setSingleMoveAnime(ANM_DIFENCEA, m_HIO->mGuard.m.field_0x4, m_HIO->mGuard.m.field_0x8, m_HIO->mGuard.m.field_0x0, m_HIO->mGuard.m.field_0xC);
|
||||
dVar5 = damage_vec->absXZ();
|
||||
@@ -8260,7 +8247,7 @@ BOOL daPy_lk_c::procGuardSlip_init() {
|
||||
m35A4 = m_HIO->mNockback.m.field_0x20;
|
||||
m35A8 = m_HIO->mNockback.m.field_0x24;
|
||||
m35AC = m_HIO->mNockback.m.field_0x28;
|
||||
mProcVar6.m3570 = (cM_rnd() < 0.2f) ? 1 : 0;
|
||||
mProcVar6.m3570 = cM_rnd() < 0.2f ? 1 : 0;
|
||||
} else {
|
||||
setSingleMoveAnime(dVar5, m_HIO->mGuard.m.field_0x4, m_HIO->mGuard.m.field_0x8, m_HIO->mGuard.m.field_0x0, m_HIO->mGuard.m.field_0xC);
|
||||
mNormalSpeed = (m_HIO->mGuard.m.field_0x14 * damage_vec->absXZ()) + m_HIO->mGuard.m.field_0x10;
|
||||
@@ -9083,7 +9070,7 @@ void daPy_lk_c::setNeckAngle() {
|
||||
s16 r25_3;
|
||||
s16 r24_2 = cM_atan2s(-spAC.y, spAC.absXZ());
|
||||
r24_4 = (r24_2 - m3564.x);
|
||||
s16 r25_2 = (cM_atan2s(spAC.x, spAC.z));
|
||||
s16 r25_2 = cM_atan2s(spAC.x, spAC.z);
|
||||
r25_3 = r25_2;
|
||||
r25_3 -= m34DE;
|
||||
r25_3 = r25_3 - m3564.y;
|
||||
@@ -13026,7 +13013,7 @@ BOOL daPy_lk_c::setThrowDamage(cXyz* r4, s16 r5, f32 f30, f32 f31, int r6) {
|
||||
|
||||
/* 80128B50-80128C10 .text setPlayerPosAndAngle__9daPy_lk_cFP4cXyzs */
|
||||
void daPy_lk_c::setPlayerPosAndAngle(cXyz* param_1, s16 param_2) {
|
||||
if (!(dComIfGp_event_runCheck()) && dComIfGp_getScopeType() != 1) {
|
||||
if (!dComIfGp_event_runCheck() && dComIfGp_getScopeType() != 1) {
|
||||
return;
|
||||
}
|
||||
if (param_1 != NULL) {
|
||||
@@ -13045,7 +13032,7 @@ void daPy_lk_c::setPlayerPosAndAngle(cXyz* param_1, s16 param_2) {
|
||||
|
||||
/* 80128C10-80128CE4 .text setPlayerPosAndAngle__9daPy_lk_cFP4cXyzP5csXyz */
|
||||
void daPy_lk_c::setPlayerPosAndAngle(cXyz* param_1, csXyz* param_2) {
|
||||
if (!(dComIfGp_event_runCheck())) {
|
||||
if (!dComIfGp_event_runCheck()) {
|
||||
return;
|
||||
}
|
||||
if (param_1 != NULL) {
|
||||
|
||||
@@ -1176,7 +1176,7 @@ void dAttLook_c::init() {
|
||||
|
||||
/* 8009FE58-8009FE74 .text proc__10dAttLook_cFv */
|
||||
void dAttLook_c::proc() {
|
||||
mLookTargetID = mRequestActorID ;
|
||||
mLookTargetID = mRequestActorID;
|
||||
mRequestActorID = fpcM_ERROR_PROCESS_ID_e;
|
||||
field_0x4 = 3;
|
||||
}
|
||||
|
||||
+1
-1
@@ -2424,7 +2424,7 @@ f32 dCamera_c::getWaterSurfaceHeight(cXyz* param_0) {
|
||||
dBgS_CamGndChk_Wtr gndchk;
|
||||
gndchk.SetPos(&spF8);
|
||||
|
||||
f32 gnd_y = dComIfG_Bgsp()->GroundCross(&gndchk) ;
|
||||
f32 gnd_y = dComIfG_Bgsp()->GroundCross(&gndchk);
|
||||
|
||||
if (gnd_y + 5.0f > param_0->y) {
|
||||
var_f31 = gnd_y + 5.0f;
|
||||
|
||||
@@ -123,7 +123,7 @@ void dFile_error_c::closeMessage() {
|
||||
/* 8017E068-8017E228 .text resizeMsgBoard__13dFile_error_cFi */
|
||||
void dFile_error_c::resizeMsgBoard(int param_1) {
|
||||
J2DPane *pane_2_pane = msgPanes[2].pane;
|
||||
f32 pane_2_height = pane_2_pane->mBounds.f.y - pane_2_pane->mBounds.i.y;
|
||||
f32 pane_2_height = pane_2_pane->mBounds.getHeight();
|
||||
f32 scale = ((pane_2_height / VERSION_SELECT(9.0f, 9.0f, 12.0f, 12.0f)) * (f32) param_1) / pane_2_height;
|
||||
|
||||
fopMsgM_paneScaleY(&msgPanes[2], scale);
|
||||
|
||||
+19
-20
@@ -539,7 +539,6 @@ void dMenu_Option_c::stickMove(u8 param_1) {
|
||||
}
|
||||
m858[1].mUserArea = 6;
|
||||
mDoAud_seStart(JA_SE_ITM_MENU_OPT_SW);
|
||||
;
|
||||
break;
|
||||
}
|
||||
case 3: {
|
||||
@@ -665,29 +664,29 @@ void dMenu_Option_c::noteSet() {
|
||||
msg_entry = msgGet.getMesgEntry(head_p);
|
||||
|
||||
msgDataProc.dataInit();
|
||||
msgDataProc.bmgData = mesg;
|
||||
msgDataProc.setBmgData((char*)mesg);
|
||||
msgDataProc.setOutMessage(mD38, mD3C, mD40, mD44);
|
||||
msgDataProc.font[0] = mD2C;
|
||||
msgDataProc.font[1] = mD30;
|
||||
msgDataProc.charSpace = ((J2DTextBox*)m740[0].pane)->getCharSpace();
|
||||
msgDataProc.rubyCharSpace = ((J2DTextBox*)m740[1].pane)->getCharSpace();
|
||||
msgDataProc.lineSpace = ((J2DTextBox*)m740[0].pane)->getLineSpace();
|
||||
msgDataProc.mesgEntry = &msg_entry;
|
||||
msgDataProc.fontSize = f31;
|
||||
msgDataProc.rubyFontSize = f30;
|
||||
msgDataProc.lineWidth = 0x1D0;
|
||||
msgDataProc.centerLineWidth = 0x1D0;
|
||||
msgDataProc.sendSpeed = 2;
|
||||
msgDataProc.spaceTimer = 0;
|
||||
msgDataProc.setFont(mD2C);
|
||||
msgDataProc.setRubyFont(mD30);
|
||||
msgDataProc.setCharSpace(((J2DTextBox*)m740[0].pane)->getCharSpace());
|
||||
msgDataProc.setRubyCharSpace(((J2DTextBox*)m740[1].pane)->getCharSpace());
|
||||
msgDataProc.setLineSpace(((J2DTextBox*)m740[0].pane)->getLineSpace());
|
||||
msgDataProc.setMesgEntry(&msg_entry);
|
||||
msgDataProc.setFontSize(f31);
|
||||
msgDataProc.setRubyFontSize(f30);
|
||||
msgDataProc.setLineWidth(0x1D0);
|
||||
msgDataProc.setCenterLineWidth(0x1D0);
|
||||
msgDataProc.setSendSpeed(2);
|
||||
msgDataProc.setSpaceTimer(0);
|
||||
msgDataProc.field_0x299 = 1;
|
||||
msgDataProc.spaceFlag = 0;
|
||||
msgDataProc.setSpaceFlagOff();
|
||||
|
||||
msgDataProc.stringLength();
|
||||
msgDataProc.stringShift();
|
||||
msgDataProc.iconIdxRefresh();
|
||||
|
||||
s16 r26 = msgDataProc.lineCount;
|
||||
msgDataProc.lineCount = 0;
|
||||
s16 r26 = msgDataProc.getLineCount();
|
||||
msgDataProc.setLineCount(0);
|
||||
msgDataProc.stringSet();
|
||||
f32 f30_2 = (m740[0].pane->getHeight() - f31 - (f32)r26 * ((J2DTextBox*)m740[0].pane)->getLineSpace()) / 2.0f;
|
||||
((J2DTextBox*)m740[0].pane)->shiftSet(0.0f, f30_2);
|
||||
@@ -698,7 +697,7 @@ void dMenu_Option_c::noteSet() {
|
||||
|
||||
int r31 = ((J2DTextBox*)m740[0].pane)->getLineSpace() / 2.0f;
|
||||
for (int i = 0; i < 0xf; i++) {
|
||||
u32 r6 = msgDataProc.field_0x281[i];
|
||||
u8 r6 = msgDataProc.getIconNum(i);
|
||||
if (r6 == 0xFF) {
|
||||
continue;
|
||||
}
|
||||
@@ -708,8 +707,8 @@ void dMenu_Option_c::noteSet() {
|
||||
if (r6 == 0x16) {
|
||||
continue;
|
||||
}
|
||||
m0B0[i].mPosTopLeft.x = (f32)msgDataProc.field_0x168[i];
|
||||
m0B0[i].mPosTopLeft.y = f30_2 + (f32)(int)(msgDataProc.field_0x1A4[i] * 2 * r31);
|
||||
m0B0[i].mPosTopLeft.x = (f32)msgDataProc.getIconPosX(i);
|
||||
m0B0[i].mPosTopLeft.y = f30_2 + (f32)(msgDataProc.getIconPosY(i) * 2 * r31);
|
||||
m0B0[i].mPosTopLeftOrig.y = (f32)r6;
|
||||
|
||||
fopMsgM_outFontSet((J2DPicture*)m0B0[i].pane, &m0B0[i].mUserArea, 0xFF, r6);
|
||||
|
||||
+2
-2
@@ -194,7 +194,7 @@ void dMesg_tSequenceProcessor::initialize(int param_1) {
|
||||
}
|
||||
}
|
||||
|
||||
mesgControl->setNowFontSize(mesgControl->getInitFontSize()) ;
|
||||
mesgControl->setNowFontSize(mesgControl->getInitFontSize());
|
||||
mesgControl->setCharCode(0);
|
||||
mesgControl->setHeaderOff();
|
||||
mesgControl->setCode16FgOff();
|
||||
@@ -768,7 +768,7 @@ dMesg_tMeasureProcessor::dMesg_tMeasureProcessor(JMessage::TControl* param_1, in
|
||||
field_0x54 = 0;
|
||||
linemax = 4;
|
||||
dMesg_tControl* mesgControl = (dMesg_tControl*)getControl();
|
||||
mesgControl->setNowFontSize(mesgControl->getInitFontSize()) ;
|
||||
mesgControl->setNowFontSize(mesgControl->getInitFontSize());
|
||||
mesgControl->setLineCount(0);
|
||||
mesgControl->setCharCode(0);
|
||||
mesgControl->setHeaderOff();
|
||||
|
||||
+31
-28
@@ -61,10 +61,10 @@ void dMsg2_value_init(sub_msg2_class* i_Msg, u8 i_index) {
|
||||
const u32 color = colorTable[i_Msg->colorNo];
|
||||
int i = i_index;
|
||||
|
||||
int temp_r5 = i_Msg->msgDataProc[i].getRGradAlpha();
|
||||
int temp_r6 = i_Msg->msgDataProc[i].getRCharAlpha();
|
||||
int var_r30 = i_Msg->msgDataProc[i].getGradAlpha();
|
||||
int var_r29 = i_Msg->msgDataProc[i].getCharAlpha();
|
||||
int temp_r5 = i_Msg->msgDataProc[i].getCharAlpha();
|
||||
int temp_r6 = i_Msg->msgDataProc[i].getGradAlpha();
|
||||
int var_r30 = i_Msg->msgDataProc[i].getRCharAlpha();
|
||||
int var_r29 = i_Msg->msgDataProc[i].getRGradAlpha();
|
||||
|
||||
u32 temp_a = color | temp_r5;
|
||||
u32 temp_b = color | temp_r6;
|
||||
@@ -407,7 +407,7 @@ void dMsg2_messageOut(sub_msg2_class* i_Msg, u8 i_index, int i_aimLine) {
|
||||
|
||||
for (int i = 0; i < 8; i++) {
|
||||
u8 var_r30 = i_Msg->msgDataProc[i_index].getIconNum(i);
|
||||
u32 var_r29 = i_Msg->msgDataProc[i_index].get_0x220(i);
|
||||
u32 var_r29 = i_Msg->msgDataProc[i_index].getIconColor(i);
|
||||
|
||||
if (var_r30 != 0xFF && bbuttonTimer[i][i_index] == -1) {
|
||||
JKRHeap* heap = mDoExt_setCurrentHeap(i_Msg->Heap);
|
||||
@@ -428,8 +428,8 @@ void dMsg2_messageOut(sub_msg2_class* i_Msg, u8 i_index, int i_aimLine) {
|
||||
/* 801E8668-801E86E8 .text dMsg2_yose_select__FP14sub_msg2_classUc */
|
||||
void dMsg2_yose_select(sub_msg2_class* i_Msg, u8 i_index) {
|
||||
i_Msg->msgDataProc[i_index].count = i_Msg->msgDataProc[i_index].stringLength();
|
||||
i_Msg->field_0xecc[i_index] = i_Msg->msgDataProc[i_index].lineCount;
|
||||
i_Msg->msgDataProc[i_index].lineCount = 0;
|
||||
i_Msg->field_0xecc[i_index] = i_Msg->msgDataProc[i_index].getLineCount();
|
||||
i_Msg->msgDataProc[i_index].setLineCount(0);
|
||||
i_Msg->msgDataProc[i_index].stringShift();
|
||||
dMsg2_textPosition(i_Msg, i_index);
|
||||
}
|
||||
@@ -605,9 +605,9 @@ void dMsg2_setCharAlpha(sub_msg2_class* i_Msg, u8 i_index) {
|
||||
}
|
||||
|
||||
i_Msg->msgDataProc[var_r31].setCharAlpha(i_Msg->field_0xedf[0][var_r31],
|
||||
i_Msg->field_0xedf[1][var_r31],
|
||||
i_Msg->field_0xedf[2][var_r31],
|
||||
i_Msg->field_0xedf[3][var_r31]);
|
||||
i_Msg->field_0xedf[1][var_r31],
|
||||
i_Msg->field_0xedf[2][var_r31],
|
||||
i_Msg->field_0xedf[3][var_r31]);
|
||||
}
|
||||
|
||||
/* 801E9054-801E9108 .text dMsg2_messageShow__FP14sub_msg2_class */
|
||||
@@ -931,7 +931,7 @@ void dDlst_2DMSG2_c::draw() {
|
||||
}
|
||||
|
||||
/* 801E9CDC-801E9FC4 .text outFontDraw__14dDlst_2DMSG2_cFv */
|
||||
// NONMATCHING - a lot wrong here
|
||||
// NONMATCHING - regswap
|
||||
void dDlst_2DMSG2_c::outFontDraw() {
|
||||
J2DPane* ppane = ((sub_msg2_class*)actorP)->field_0xd00[0].pane;
|
||||
f32 var_f31 = ppane->getGlbBounds().i.y;
|
||||
@@ -939,32 +939,35 @@ void dDlst_2DMSG2_c::outFontDraw() {
|
||||
|
||||
for (int i = 0; i < 3; i++) {
|
||||
for (int j = 0; j < 8; j++) {
|
||||
sub_msg2_class* msg = (sub_msg2_class*)actorP;
|
||||
u8 iconNum = msg->msgDataProc[i].field_0x281[j];
|
||||
fopMsgM_msgDataProc_c* dataProc = msg->msgDataProc;
|
||||
int temp_r6 = dataProc->field_0x168[i];
|
||||
int temp_r4 = dataProc->field_0x1A4[i];
|
||||
int var_r22 = dataProc->field_0x1E0[i];
|
||||
u8 iconNum = actorP->msgDataProc[i].getIconNum(j);
|
||||
int posX = actorP->msgDataProc[i].getIconPosX(j);
|
||||
int posY = actorP->msgDataProc[i].getIconPosY(j);
|
||||
int scale = actorP->msgDataProc[i].getIconScale(j);
|
||||
|
||||
if (iconNum != 0xFF) {
|
||||
J2DTextBox* pJVar3 = (J2DTextBox*)msg->text_pane[i].pane;
|
||||
int sp10 = (f32)temp_r6 + pJVar3->getGlbBounds().i.x;
|
||||
u8 r14;
|
||||
J2DTextBox* scrn = (J2DTextBox*)actorP->text_pane[i].pane;
|
||||
int r18 = (f32)posX + scrn->getGlbBounds().i.x;
|
||||
|
||||
if (var_r22 > msg->field_0xeb4) {
|
||||
if (msg->field_0xecc[i] > 1) {
|
||||
temp_r4 = ((msg->field_0xeb0 * (3 - temp_r4)) + pJVar3->getGlbBounds().i.y);
|
||||
int r17;
|
||||
if (scale > actorP->field_0xeb4) {
|
||||
if (actorP->field_0xecc[i] > 1) {
|
||||
f32 temp = (actorP->field_0xeb0 * (DEMO_SELECT(2, 3) - posY));
|
||||
r17 = temp + scrn->getGlbBounds().i.y - (f32)(int)(scale / 2);
|
||||
} else {
|
||||
temp_r4 = (msg->field_0xeb0 + pJVar3->getGlbBounds().i.y);
|
||||
f32 temp = actorP->field_0xeb0 * DEMO_SELECT(3, 4);
|
||||
r17 = (temp + scrn->getGlbBounds().i.y - (f32)(int)(scale / 2));
|
||||
}
|
||||
} else {
|
||||
temp_r4 = ((msg->field_0xeb0 * (3 - msg->field_0xecc[i])) + pJVar3->getGlbBounds().i.y);
|
||||
f32 temp = (actorP->field_0xeb0 * (DEMO_SELECT(2, 3) - actorP->field_0xecc[i] + (posY * 2)));
|
||||
r17 = (temp + scrn->getGlbBounds().i.y);
|
||||
}
|
||||
|
||||
u8 sp20 = msg->field_0xeac;
|
||||
JKRHeap* heap = mDoExt_setCurrentHeap(msg->Heap);
|
||||
r14 = actorP->field_0xeac;
|
||||
JKRHeap* heap = mDoExt_setCurrentHeap(actorP->Heap);
|
||||
|
||||
if ((f32)temp_r4 > var_f31 && (f32)temp_r4 < var_f30 - (f32)var_r22) {
|
||||
fopMsgM_outFontDraw(bbutton_icon[j][i], bbutton_kage[j][i], sp10, temp_r4, var_r22, &bbuttonTimer[j][i], sp20, iconNum);
|
||||
if ((f32)r17 > var_f31 && (f32)r17 < var_f30 - (f32)scale) {
|
||||
fopMsgM_outFontDraw(bbutton_icon[j][i], bbutton_kage[j][i], r18, r17, scale, &bbuttonTimer[j][i], r14, iconNum);
|
||||
}
|
||||
|
||||
mDoExt_setCurrentHeap(heap);
|
||||
|
||||
@@ -7,6 +7,7 @@
|
||||
#include "d/d_message_paper.h"
|
||||
#include "f_op/f_op_msg.h"
|
||||
|
||||
#if VERSION < VERSION_PAL
|
||||
/* 801EB128-801EB420 .text setDummyTexture__10dmsg3_3d_cFv */
|
||||
void dmsg3_3d_c::setDummyTexture() {
|
||||
/* Nonmatching */
|
||||
@@ -256,3 +257,69 @@ static BOOL dMsg3_Delete(sub_msg3_class*) {
|
||||
static cPhs_State dMsg3_Create(msg_class*) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
static msg_method_class l_dMsg3_Method = {
|
||||
(process_method_func)dMsg3_Create,
|
||||
(process_method_func)dMsg3_Delete,
|
||||
(process_method_func)dMsg3_Execute,
|
||||
(process_method_func)dMsg3_IsDelete,
|
||||
(process_method_func)dMsg3_Draw
|
||||
};
|
||||
|
||||
msg_process_profile_definition g_profile_MSG3 = {
|
||||
/* Layer ID */ fpcLy_CURRENT_e,
|
||||
/* List ID */ 12,
|
||||
/* List Prio */ fpcPi_CURRENT_e,
|
||||
/* Proc Name */ fpcNm_MSG3_e,
|
||||
/* Proc SubMtd */ &g_fpcLf_Method.base,
|
||||
/* Size */ sizeof(sub_msg3_class),
|
||||
/* Size Other */ 0,
|
||||
/* Parameters */ 0,
|
||||
/* Leaf SubMtd */ &g_fopMsg_Method,
|
||||
/* Draw Prio */ fpcDwPi_MSG3_e,
|
||||
/* Msg SubMtd */ &l_dMsg3_Method,
|
||||
};
|
||||
#endif
|
||||
|
||||
#if VERSION == VERSION_PAL
|
||||
static BOOL dMessage_Paper_Draw(dMessage_Paper_c*) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
static BOOL dMessage_Paper_Execute(dMessage_Paper_c*) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
static BOOL dMessage_Paper_IsDelete(dMessage_Paper_c*) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
static BOOL dMessage_Paper_Delete(dMessage_Paper_c*) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
static cPhs_State dMessage_Paper_Create(msg_class*) {
|
||||
/* Nonmatching */
|
||||
}
|
||||
|
||||
static msg_method_class l_dMessage_Paper_Method = {
|
||||
(process_method_func)dMessage_Paper_Create,
|
||||
(process_method_func)dMessage_Paper_Delete,
|
||||
(process_method_func)dMessage_Paper_Execute,
|
||||
(process_method_func)dMessage_Paper_IsDelete,
|
||||
(process_method_func)dMessage_Paper_Draw
|
||||
};
|
||||
|
||||
msg_process_profile_definition g_profile_MSG3 = {
|
||||
/* Layer ID */ fpcLy_CURRENT_e,
|
||||
/* List ID */ 12,
|
||||
/* List Prio */ fpcPi_CURRENT_e,
|
||||
/* Proc Name */ fpcNm_MSG3_e,
|
||||
/* Proc SubMtd */ &g_fpcLf_Method.base,
|
||||
/* Size */ sizeof(dMessage_Paper_c),
|
||||
/* Size Other */ 0,
|
||||
/* Parameters */ 0,
|
||||
/* Leaf SubMtd */ &g_fopMsg_Method,
|
||||
/* Draw Prio */ fpcDwPi_MSG3_e,
|
||||
/* Msg SubMtd */ &l_dMessage_Paper_Method,
|
||||
};
|
||||
#endif
|
||||
|
||||
+232
-174
@@ -897,67 +897,73 @@ void dMeter_rupy_num(char* buf, s16 num) {
|
||||
sprintf(buf, "rupy_num_%02d.bti", num);
|
||||
}
|
||||
|
||||
#if VERSION < VERSION_PAL
|
||||
#define TEXNAME(a) a ".bti"
|
||||
#else
|
||||
#define TEXNAME(a) a
|
||||
#endif
|
||||
|
||||
/* 801F0320-801F0378 .text dMeter_actionTex__Fs */
|
||||
const char* dMeter_actionTex(s16 id) {
|
||||
static const struct {
|
||||
u8 id;
|
||||
const char* filename;
|
||||
} act[] = {
|
||||
{dActStts_BLANK_e, "ba_shiraberu.bti"},
|
||||
{dActStts_LOOK_e, "ba_miru.bti"},
|
||||
{dActStts_SPEAK_e, "ba_syaberu.bti"},
|
||||
{dActStts_CHARTS_e, "ba_shiraberu.bti"},
|
||||
{dActStts_LIFT_e, "ba_motu.bti"},
|
||||
{dActStts_CLIMB_e, "ba_noru.bti"},
|
||||
{dActStts_LET_GO_e, "ba_oriru.bti"},
|
||||
{dActStts_RETURN_e, "ba_modoru.bti"},
|
||||
{dActStts_PUT_AWAY_e, "ba_shimau.bti"},
|
||||
{dActStts_DROP_e, "ba_oku.bti"},
|
||||
{dActStts_CHECK_e, "ba_chekku.bti"},
|
||||
{dActStts_OPEN_e, "ba_hiraku.bti"},
|
||||
{dActStts_ATTACK_e, "ba_attack.bti"},
|
||||
{dActStts_ba_osu, "ba_osu.bti"},
|
||||
{dActStts_THROW_e, "ba_nageru.bti"},
|
||||
{dActStts_CROUCH_e, "ba_shagamu.bti"},
|
||||
{dActStts_SIDLE_e, "ba_harituku.bti"},
|
||||
{dActStts_GRAB_e, "ba_tukamu.bti"},
|
||||
{dActStts_JUMP_e, "ba_jump.bti"},
|
||||
{dActStts_STOP_e, "ba_tomeru.bti"},
|
||||
{dActStts_ba_haru, "ba_haru.bti"},
|
||||
{dActStts_ba_tatamu, "ba_tatamu.bti"},
|
||||
{dActStts_LET_GO_ROPE_e, "ba_hanasu.bti"},
|
||||
{dActStts_CHOOSE_e, "ba_kettei.bti"},
|
||||
{dActStts_ba_kogu, "ba_kogu.bti"},
|
||||
{dActStts_NEXT_e, "ba_tugihe.bti"},
|
||||
{dActStts_PARRY_e, "ba_sake.bti"},
|
||||
{dActStts_PICK_UP_e, "ba_motu_buki.bti"},
|
||||
{dActStts_GET_IN_SHIP_e, "ba_noru_hune.bti"},
|
||||
{dActStts_GET_OUT_SHIP_e, "ba_oriru_hune.bti"},
|
||||
{dActStts_ba_save, "ba_save.bti"},
|
||||
{dActStts_ba_option, "ba_option.bti"},
|
||||
{dActStts_TAKE_PHOTO_e, "ba_toru.bti"},
|
||||
{dActStts_INFO_e, "ba_setumei.bti"},
|
||||
{dActStts_SWAP_MODES_e, "ba_kirikae.bti"},
|
||||
{dActStts_FLY_e, "ba_tobu.bti"},
|
||||
{dActStts_CALL_e, "ba_yobu.bti"},
|
||||
{dActStts_BID_e, "ba_hoshii.bti"},
|
||||
{dActStts_READ_e, "ba_yomu.bti"},
|
||||
{dActStts_CANCEL_e, "ba_yameru.bti"},
|
||||
{dActStts_ba_kakudai, "ba_kakudai.bti"},
|
||||
{dActStts_ba_hikaku, "ba_hikaku.bti"},
|
||||
{dActStts_ba_zoom01, "ba_zoom01.bti"},
|
||||
{dActStts_ba_zoom02, "ba_zoom02.bti"},
|
||||
{dActStts_CRUISE_e, "ba_susumu.bti"},
|
||||
{dActStts_ba_nageru__dupe_2D, "ba_nageru.bti"},
|
||||
{dActStts_ba_motu__dupe_2E, "ba_motu.bti"},
|
||||
{dActStts_SWING_e, "ba_huru.bti"},
|
||||
{dActStts_SEA_CHART_e, "ba_kaizuhe.bti"},
|
||||
{dActStts_ba_sake__dupe_31, "ba_sake.bti"},
|
||||
{dActStts_ba_modoru__dupe_32, "ba_modoru.bti"},
|
||||
{dActStts_ba_save__dupe_33, "ba_save.bti"},
|
||||
{dActStts_ba_save__dupe_34, "ba_save.bti"},
|
||||
{dActStts_BLANK_e, TEXNAME("ba_shiraberu")},
|
||||
{dActStts_LOOK_e, TEXNAME("ba_miru")},
|
||||
{dActStts_SPEAK_e, TEXNAME("ba_syaberu")},
|
||||
{dActStts_CHARTS_e, TEXNAME("ba_shiraberu")},
|
||||
{dActStts_LIFT_e, TEXNAME("ba_motu")},
|
||||
{dActStts_CLIMB_e, TEXNAME("ba_noru")},
|
||||
{dActStts_LET_GO_e, TEXNAME("ba_oriru")},
|
||||
{dActStts_RETURN_e, TEXNAME("ba_modoru")},
|
||||
{dActStts_PUT_AWAY_e, TEXNAME("ba_shimau")},
|
||||
{dActStts_DROP_e, TEXNAME("ba_oku")},
|
||||
{dActStts_CHECK_e, TEXNAME("ba_chekku")},
|
||||
{dActStts_OPEN_e, TEXNAME("ba_hiraku")},
|
||||
{dActStts_ATTACK_e, TEXNAME("ba_attack")},
|
||||
{dActStts_ba_osu, TEXNAME("ba_osu")},
|
||||
{dActStts_THROW_e, TEXNAME("ba_nageru")},
|
||||
{dActStts_CROUCH_e, TEXNAME("ba_shagamu")},
|
||||
{dActStts_SIDLE_e, TEXNAME("ba_harituku")},
|
||||
{dActStts_GRAB_e, TEXNAME("ba_tukamu")},
|
||||
{dActStts_JUMP_e, TEXNAME("ba_jump")},
|
||||
{dActStts_STOP_e, TEXNAME("ba_tomeru")},
|
||||
{dActStts_ba_haru, TEXNAME("ba_haru")},
|
||||
{dActStts_ba_tatamu, TEXNAME("ba_tatamu")},
|
||||
{dActStts_LET_GO_ROPE_e, TEXNAME("ba_hanasu")},
|
||||
{dActStts_CHOOSE_e, TEXNAME("ba_kettei")},
|
||||
{dActStts_ba_kogu, TEXNAME("ba_kogu")},
|
||||
{dActStts_NEXT_e, TEXNAME("ba_tugihe")},
|
||||
{dActStts_PARRY_e, TEXNAME("ba_sake")},
|
||||
{dActStts_PICK_UP_e, TEXNAME("ba_motu_buki")},
|
||||
{dActStts_GET_IN_SHIP_e, TEXNAME("ba_noru_hune")},
|
||||
{dActStts_GET_OUT_SHIP_e, TEXNAME("ba_oriru_hune")},
|
||||
{dActStts_ba_save, TEXNAME("ba_save")},
|
||||
{dActStts_ba_option, TEXNAME("ba_option")},
|
||||
{dActStts_TAKE_PHOTO_e, TEXNAME("ba_toru")},
|
||||
{dActStts_INFO_e, TEXNAME("ba_setumei")},
|
||||
{dActStts_SWAP_MODES_e, TEXNAME("ba_kirikae")},
|
||||
{dActStts_FLY_e, TEXNAME("ba_tobu")},
|
||||
{dActStts_CALL_e, TEXNAME("ba_yobu")},
|
||||
{dActStts_BID_e, TEXNAME("ba_hoshii")},
|
||||
{dActStts_READ_e, TEXNAME("ba_yomu")},
|
||||
{dActStts_CANCEL_e, TEXNAME("ba_yameru")},
|
||||
{dActStts_ba_kakudai, TEXNAME("ba_kakudai")},
|
||||
{dActStts_ba_hikaku, TEXNAME("ba_hikaku")},
|
||||
{dActStts_ba_zoom01, TEXNAME("ba_zoom01")},
|
||||
{dActStts_ba_zoom02, TEXNAME("ba_zoom02")},
|
||||
{dActStts_CRUISE_e, TEXNAME("ba_susumu")},
|
||||
{dActStts_ba_nageru__dupe_2D, TEXNAME("ba_nageru")},
|
||||
{dActStts_ba_motu__dupe_2E, TEXNAME("ba_motu")},
|
||||
{dActStts_SWING_e, TEXNAME("ba_huru")},
|
||||
{dActStts_SEA_CHART_e, TEXNAME("ba_kaizuhe")},
|
||||
{dActStts_ba_sake__dupe_31, TEXNAME("ba_sake")},
|
||||
{dActStts_ba_modoru__dupe_32, TEXNAME("ba_modoru")},
|
||||
{dActStts_ba_save__dupe_33, TEXNAME("ba_save")},
|
||||
{dActStts_ba_save__dupe_34, TEXNAME("ba_save")},
|
||||
{dActStts_sword_01, "sword_01.bti"},
|
||||
{dActStts_DEFEND_e, "ba_husegu.bti"},
|
||||
{dActStts_DEFEND_e, TEXNAME("ba_husegu")},
|
||||
{dActStts_boko_stick, "boko_stick.bti"},
|
||||
{dActStts_hatchet, "hatchet.bti"},
|
||||
{dActStts_iron_club, "iron_club.bti"},
|
||||
@@ -965,7 +971,7 @@ const char* dMeter_actionTex(s16 id) {
|
||||
{dActStts_spear, "spear.bti"},
|
||||
{dActStts_spear__dupe_3C, "spear.bti"},
|
||||
{dActStts_bow_01, "bow_01.bti"},
|
||||
{dActStts_HIDDEN_e, "ba_modoru.bti"},
|
||||
{dActStts_HIDDEN_e, TEXNAME("ba_modoru")},
|
||||
};
|
||||
int found = 0;
|
||||
for (int i = 0; i < ARRAY_SIZE(act); i++) {
|
||||
@@ -974,7 +980,29 @@ const char* dMeter_actionTex(s16 id) {
|
||||
break;
|
||||
}
|
||||
}
|
||||
#if VERSION < VERSION_PAL
|
||||
return act[found].filename;
|
||||
#else
|
||||
if (
|
||||
found == dActStts_sword_01 ||
|
||||
found == dActStts_boko_stick ||
|
||||
found == dActStts_hatchet ||
|
||||
found == dActStts_iron_club ||
|
||||
found == dActStts_longsword ||
|
||||
found == dActStts_spear ||
|
||||
found == dActStts_spear__dupe_3C ||
|
||||
found == dActStts_bow_01
|
||||
) {
|
||||
return act[found].filename;
|
||||
}
|
||||
static char tex_name[20];
|
||||
char suffix[16];
|
||||
sprintf(suffix, "_%d.bti", dComIfGs_getPalLanguage());
|
||||
const char* filename = act[found].filename;
|
||||
strcpy(tex_name, filename);
|
||||
strcat(tex_name, suffix);
|
||||
return tex_name;
|
||||
#endif
|
||||
}
|
||||
|
||||
/* 801F0378-801F041C .text dMeter_weponTex__Fv */
|
||||
@@ -1423,18 +1451,14 @@ void dMeter_LifeMove(sub_meter_class* i_Meter, bool bForce) {
|
||||
/* 801F17F0-801F1A48 .text dMeter_BattleLifeMove__FP15sub_meter_classb */
|
||||
void dMeter_BattleLifeMove(sub_meter_class* i_Meter, bool param_2) {
|
||||
/* Nonmatching */
|
||||
const char* pFilename;
|
||||
f32 dVar4;
|
||||
|
||||
static u8 point = 0;
|
||||
dVar4 = (i_Meter->mHeart[1].mPosCenterOrig.x - i_Meter->mHeart[0].mPosCenterOrig.x);
|
||||
f32 dVar4 = (i_Meter->mHeart[1].mPosCenterOrig.x - i_Meter->mHeart[0].mPosCenterOrig.x);
|
||||
if (point != daNpc_Ji1_c::game_life_point || !param_2) {
|
||||
for (s32 i = 0; i < 20; i++) {
|
||||
point = daNpc_Ji1_c::game_life_point;
|
||||
if (i == 1 || i == 2) {
|
||||
i_Meter->mHeart[i].mPosCenter.x = (s32)(g_meterHIO.field_0x4c + i_Meter->mHeart[i].mPosCenterOrig.x) * (g_meterHIO.field_0x58 * dVar4);
|
||||
i_Meter->mHeartShadow[i].mPosCenter.x =
|
||||
(s32)(g_meterHIO.field_0x4c + i_Meter->mHeartShadow[i].mPosCenterOrig.x) * (g_meterHIO.field_0x58 * dVar4);
|
||||
i_Meter->mHeart[i].mPosCenter.x = (g_meterHIO.field_0x58 * dVar4 * (f32)i) + i_Meter->mHeart[0].mPosCenterOrig.x + g_meterHIO.field_0x4c;
|
||||
i_Meter->mHeartShadow[i].mPosCenter.x = (g_meterHIO.field_0x58 * dVar4 * (f32)i) + i_Meter->mHeartShadow[i].mPosCenterOrig.x + g_meterHIO.field_0x4c;
|
||||
i_Meter->mHeart[i].mPosCenter.y = i_Meter->mHeart[i].mPosCenterOrig.y + g_meterHIO.field_0x5c;
|
||||
i_Meter->mHeartShadow[i].mPosCenter.y = i_Meter->mHeartShadow[i].mPosCenterOrig.y + g_meterHIO.field_0x5c;
|
||||
} else if (i == 0) {
|
||||
@@ -1444,8 +1468,7 @@ void dMeter_BattleLifeMove(sub_meter_class* i_Meter, bool param_2) {
|
||||
i_Meter->mHeartShadow[i].mPosCenter.y = i_Meter->mHeartShadow[i].mPosCenterOrig.y + g_meterHIO.field_0x5c;
|
||||
}
|
||||
if (i < point) {
|
||||
pFilename = dMeter_heartTex(0);
|
||||
dMeter_heartChangeTexture(i_Meter, pFilename, i);
|
||||
dMeter_heartChangeTexture(i_Meter, dMeter_heartTex(0), i);
|
||||
if (i == point - 1) {
|
||||
dMeter_setNowHeartScaleXY2(&i_Meter->mHeart[i]);
|
||||
dMeter_setNowHeartScaleXY2(&i_Meter->mHeartShadow[i]);
|
||||
@@ -1454,8 +1477,7 @@ void dMeter_BattleLifeMove(sub_meter_class* i_Meter, bool param_2) {
|
||||
dMeter_setHeartScaleXY2(&i_Meter->mHeartShadow[i], 0);
|
||||
}
|
||||
} else if (i < 3) {
|
||||
pFilename = dMeter_heartTex(4);
|
||||
dMeter_heartChangeTexture(i_Meter, pFilename, i);
|
||||
dMeter_heartChangeTexture(i_Meter, dMeter_heartTex(4), i);
|
||||
dMeter_setHeartScaleXY2(&i_Meter->mHeart[i], 4);
|
||||
dMeter_setHeartScaleXY2(&i_Meter->mHeartShadow[i], 4);
|
||||
} else {
|
||||
@@ -1657,24 +1679,35 @@ void dMeter_weponDraw(sub_meter_class* i_Meter) {
|
||||
|
||||
/* 801F2408-801F2688 .text dMeter_weponChange__FP15sub_meter_class */
|
||||
void dMeter_weponChange(sub_meter_class* i_Meter) {
|
||||
const char* pFilename;
|
||||
JKRArchive* pArc;
|
||||
#if VERSION == VERSION_DEMO
|
||||
if (i_Meter->field_0x301a == dComIfGp_getAStatus()) {
|
||||
return;
|
||||
}
|
||||
#endif
|
||||
|
||||
if (i_Meter->field_0x2828.mUserArea != 0) {
|
||||
if (i_Meter->field_0x301a == 0x25) {
|
||||
#if VERSION > VERSION_DEMO
|
||||
if (i_Meter->field_0x2828.mUserArea != 0)
|
||||
#endif
|
||||
{
|
||||
if (i_Meter->field_0x301a == dActStts_BID_e) {
|
||||
i_Meter->field_0x1d00.mUserArea = 0;
|
||||
((J2DPicture*)i_Meter->field_0x1d00.pane)->setWhite(0xFFFFFFFF);
|
||||
((J2DPicture*)i_Meter->field_0x1d00.pane)->setBlack(0x0000FF00);
|
||||
}
|
||||
if (dComIfGp_getAStatus() != dActStts_BLANK_e) {
|
||||
if (dComIfGp_getAStatus() == dActStts_sword_01) {
|
||||
pArc = dComIfGp_getItemIconArchive();
|
||||
pFilename = dMeter_weponTex();
|
||||
JKRArchive::readTypeResource(i_Meter->actionTex[0], 0xc00, 'TIMG', pFilename, pArc);
|
||||
JKRArchive* pArc = dComIfGp_getItemIconArchive();
|
||||
JKRArchive::readTypeResource(i_Meter->actionTex[0], 0xc00, 'TIMG', dMeter_weponTex(), pArc);
|
||||
#if VERSION <= VERSION_JPN
|
||||
DCFlushRangeNoSync(i_Meter->actionTex[0], 0xc00);
|
||||
#else
|
||||
DCStoreRangeNoSync(i_Meter->actionTex[0], 0xc00);
|
||||
#endif
|
||||
((J2DPicture*)i_Meter->field_0x2828.pane)->changeTexture(i_Meter->actionTex[0], 0);
|
||||
((J2DPicture*)i_Meter->field_0x2860.pane)->changeTexture(i_Meter->actionTex[0], 0);
|
||||
#if VERSION > VERSION_DEMO
|
||||
((J2DPicture*)i_Meter->field_0x1d00.pane)->changeTexture(i_Meter->actionTex[0], 0);
|
||||
#endif
|
||||
} else if (dComIfGp_getAStatus() == dActStts_boko_stick ||
|
||||
dComIfGp_getAStatus() == dActStts_hatchet ||
|
||||
dComIfGp_getAStatus() == dActStts_iron_club ||
|
||||
@@ -1682,34 +1715,53 @@ void dMeter_weponChange(sub_meter_class* i_Meter) {
|
||||
dComIfGp_getAStatus() == dActStts_spear ||
|
||||
dComIfGp_getAStatus() == dActStts_spear__dupe_3C)
|
||||
{
|
||||
pArc = dComIfGp_getItemIconArchive();
|
||||
pFilename = dMeter_actionTex(dComIfGp_getAStatus());
|
||||
JKRArchive::readTypeResource(i_Meter->actionTex[0], 0xc00, 'TIMG', pFilename, pArc);
|
||||
JKRArchive* pArc = dComIfGp_getItemIconArchive();
|
||||
JKRArchive::readTypeResource(i_Meter->actionTex[0], 0xc00, 'TIMG', dMeter_actionTex(dComIfGp_getAStatus()), pArc);
|
||||
#if VERSION <= VERSION_JPN
|
||||
DCFlushRangeNoSync(i_Meter->actionTex[0], 0xc00);
|
||||
#else
|
||||
DCStoreRangeNoSync(i_Meter->actionTex[0], 0xc00);
|
||||
#endif
|
||||
((J2DPicture*)i_Meter->field_0x2828.pane)->changeTexture(i_Meter->actionTex[0], 0);
|
||||
((J2DPicture*)i_Meter->field_0x2860.pane)->changeTexture(i_Meter->actionTex[0], 0);
|
||||
#if VERSION > VERSION_DEMO
|
||||
((J2DPicture*)i_Meter->field_0x1d00.pane)->changeTexture(i_Meter->actionTex[0], 0);
|
||||
#endif
|
||||
} else {
|
||||
JKRArchive* pArc;
|
||||
if (dComIfGp_getAStatus() == dActStts_RETURN_e || dComIfGp_getAStatus() == dActStts_RETURN_e) {
|
||||
pArc = dComIfGp_getMenuArchive();
|
||||
} else {
|
||||
pArc = dComIfGp_getActionIconArchive();
|
||||
}
|
||||
pFilename = dMeter_actionTex(dComIfGp_getAStatus());
|
||||
JKRArchive::readTypeResource(i_Meter->actionTex[0], 0xc00, 'TIMG', pFilename, pArc);
|
||||
JKRArchive::readTypeResource(i_Meter->actionTex[0], 0xc00, 'TIMG', dMeter_actionTex(dComIfGp_getAStatus()), pArc);
|
||||
#if VERSION <= VERSION_JPN
|
||||
DCFlushRangeNoSync(i_Meter->actionTex[0], 0xc00);
|
||||
#else
|
||||
DCStoreRangeNoSync(i_Meter->actionTex[0], 0xc00);
|
||||
#endif
|
||||
#if VERSION > VERSION_DEMO
|
||||
((J2DPicture*)i_Meter->field_0x2828.pane)->changeTexture(i_Meter->actionTex[0], 0);
|
||||
((J2DPicture*)i_Meter->field_0x2860.pane)->changeTexture(i_Meter->actionTex[0], 0);
|
||||
#endif
|
||||
((J2DPicture*)i_Meter->field_0x1d00.pane)->changeTexture(i_Meter->actionTex[0], 0);
|
||||
}
|
||||
}
|
||||
#if VERSION > VERSION_DEMO
|
||||
i_Meter->field_0x2828.mUserArea = 0;
|
||||
#endif
|
||||
}
|
||||
|
||||
#if VERSION == VERSION_DEMO
|
||||
i_Meter->field_0x28d0.mUserArea = 1;
|
||||
i_Meter->field_0x301a = dComIfGp_getAStatus();
|
||||
#else
|
||||
if (i_Meter->field_0x301a != dComIfGp_getAStatus()) {
|
||||
i_Meter->field_0x2828.mUserArea = 1;
|
||||
i_Meter->field_0x28d0.mUserArea = 1;
|
||||
i_Meter->field_0x301a = dComIfGp_getAStatus();
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
/* 801F2688-801F2818 .text dMeter_weponAnime__FP15sub_meter_class */
|
||||
@@ -2019,8 +2071,7 @@ void dMeter_actionInit(sub_meter_class* i_Meter) {
|
||||
i_Meter->field_0x301b = 0;
|
||||
dComIfGp_setDoStatus(dActStts_BLANK_e);
|
||||
JKRArchive* pArc = dComIfGp_getActionIconArchive();
|
||||
const char* pFilename = dMeter_actionTex(dActStts_BLANK_e);
|
||||
JKRArchive::readTypeResource(i_Meter->actionTex[1], 0xc00, 'TIMG', pFilename, pArc);
|
||||
JKRArchive::readTypeResource(i_Meter->actionTex[1], 0xc00, 'TIMG', dMeter_actionTex(dActStts_BLANK_e), pArc);
|
||||
DCStoreRangeNoSync(i_Meter->actionTex[1], 0xc00);
|
||||
((J2DPicture*)i_Meter->field_0x27b8.pane)->changeTexture(i_Meter->actionTex[1], 0);
|
||||
((J2DPicture*)i_Meter->field_0x27f0.pane)->changeTexture(i_Meter->actionTex[1], 0);
|
||||
@@ -2127,7 +2178,6 @@ void dMeter_actionForce(sub_meter_class* i_Meter) {
|
||||
|
||||
/* 801F3B60-801F3CFC .text dMeter_actionChange__FP15sub_meter_class */
|
||||
void dMeter_actionChange(sub_meter_class* i_Meter) {
|
||||
const char* pFilename;
|
||||
JKRArchive* pArc;
|
||||
|
||||
if (i_Meter->field_0x27b8.mUserArea != 0) {
|
||||
@@ -2140,8 +2190,7 @@ void dMeter_actionChange(sub_meter_class* i_Meter) {
|
||||
{
|
||||
if (dComIfGp_getDoStatus() == dActStts_bow_01) {
|
||||
pArc = dComIfGp_getItemIconArchive();
|
||||
pFilename = dMeter_actionTex(dComIfGp_getDoStatus());
|
||||
JKRArchive::readTypeResource(i_Meter->actionTex[1], 0xc00, 'TIMG', pFilename, pArc);
|
||||
JKRArchive::readTypeResource(i_Meter->actionTex[1], 0xc00, 'TIMG', dMeter_actionTex(dComIfGp_getDoStatus()), pArc);
|
||||
DCStoreRangeNoSync(i_Meter->actionTex[1], 0xc00);
|
||||
((J2DPicture*)i_Meter->field_0x27b8.pane)->changeTexture(i_Meter->actionTex[1], 0);
|
||||
((J2DPicture*)i_Meter->field_0x27f0.pane)->changeTexture(i_Meter->actionTex[1], 0);
|
||||
@@ -2151,8 +2200,7 @@ void dMeter_actionChange(sub_meter_class* i_Meter) {
|
||||
} else {
|
||||
pArc = dComIfGp_getActionIconArchive();
|
||||
}
|
||||
pFilename = dMeter_actionTex(dComIfGp_getDoStatus());
|
||||
JKRArchive::readTypeResource(i_Meter->actionTex[1], 0xc00, 'TIMG', pFilename, pArc);
|
||||
JKRArchive::readTypeResource(i_Meter->actionTex[1], 0xc00, 'TIMG', dMeter_actionTex(dComIfGp_getDoStatus()), pArc);
|
||||
DCStoreRangeNoSync(i_Meter->actionTex[1], 0xc00);
|
||||
((J2DPicture*)i_Meter->field_0x1d38.pane)->changeTexture(i_Meter->actionTex[1], 0);
|
||||
i_Meter->field_0x1e18[0].mUserArea = 1;
|
||||
@@ -2882,24 +2930,23 @@ void dMeter_xyItemChange(sub_meter_class* i_Meter, int i_itemBtn) {
|
||||
} else {
|
||||
dMeter_PaneShow(&i_Meter->field_0x2080[i_itemBtn]);
|
||||
dMeter_PaneShow(&i_Meter->field_0x2128[i_itemBtn]);
|
||||
u8 uVar2 = dComIfGp_getSelectItem(i_itemBtn);
|
||||
u8 var_r4 = uVar2;
|
||||
if (uVar2 == dItemNo_MAGIC_ARROW_e) {
|
||||
u8 itemNo = dComIfGp_getSelectItem(i_itemBtn);
|
||||
if (itemNo == dItemNo_MAGIC_ARROW_e) {
|
||||
i_Meter->field_0x2320[i_itemBtn].pane->show();
|
||||
i_Meter->field_0x23c8[i_itemBtn].pane->show();
|
||||
i_Meter->field_0x2470[i_itemBtn].pane->hide();
|
||||
var_r4 = dItemNo_BOW_e;
|
||||
} else if (uVar2 == dItemNo_LIGHT_ARROW_e) {
|
||||
itemNo = dItemNo_BOW_e;
|
||||
} else if (itemNo == dItemNo_LIGHT_ARROW_e) {
|
||||
i_Meter->field_0x2320[i_itemBtn].pane->show();
|
||||
i_Meter->field_0x23c8[i_itemBtn].pane->show();
|
||||
i_Meter->field_0x2470[i_itemBtn].pane->show();
|
||||
var_r4 = dItemNo_BOW_e;
|
||||
itemNo = dItemNo_BOW_e;
|
||||
}
|
||||
if (var_r4 == dItemNo_MAGIC_ARROW_e || var_r4 == dItemNo_LIGHT_ARROW_e) {
|
||||
var_r4 = dItemNo_BOW_e;
|
||||
if (itemNo == dItemNo_MAGIC_ARROW_e || itemNo == dItemNo_LIGHT_ARROW_e) {
|
||||
itemNo = dItemNo_BOW_e;
|
||||
}
|
||||
pArc = dComIfGp_getItemIconArchive();
|
||||
pFilename = dItem_data::getTexture(var_r4);
|
||||
pFilename = dItem_data::getTexture(itemNo);
|
||||
JKRArchive::readTypeResource(i_Meter->xyIconTex[i_itemBtn], 0xc00, 'TIMG', pFilename, pArc);
|
||||
DCStoreRangeNoSync(i_Meter->xyIconTex[i_itemBtn], 0xc00);
|
||||
((J2DPicture*)i_Meter->field_0x2080[i_itemBtn].pane)->changeTexture(i_Meter->xyIconTex[i_itemBtn], 0);
|
||||
@@ -3169,14 +3216,12 @@ void dMeter_xyTrans(sub_meter_class* i_Meter) {
|
||||
static f32 nowY = 0.0f;
|
||||
if ((i_Meter->mStatusFlags & dMtrStts_UNK4000_e) || ((i_Meter->mStatusFlags & dMtrStts_UNK40_e) && dComIfGp_event_checkHind(1)) ||
|
||||
(i_Meter->mStatusFlags & dMtrStts_UNK100_e) ||
|
||||
(((dMenu_flag() && (dMenu_getPushMenuButton() == 2 || (dMenu_getMenuStatus() == 2 && dMenu_getPushMenuButton() == 0))) ||
|
||||
(i_Meter->mStatusFlags & dMtrStts_UNK800000_e)) ||
|
||||
(((((i_Meter->mStatusFlags & dMtrStts_UNK20_e) && (dStage_stagInfo_GetUpButton(dComIfGp_getStageStagInfo()) == 1)) ||
|
||||
(i_Meter->mStatusFlags & dMtrStts_UNK80_e)) ||
|
||||
(((i_Meter->mStatusFlags & dMtrStts_UNK100000_e) || (i_Meter->mStatusFlags & dMtrStts_UNK200000_e)) ||
|
||||
((i_Meter->mStatusFlags & dMtrStts_UNK20000_e) || ((i_Meter->mStatusFlags & dMtrStts_UNK40000_e) || (i_Meter->mStatusFlags & dMtrStts_UNK80000_e))))
|
||||
) ||
|
||||
(i_Meter->mStatusFlags & dMtrStts_UNK400000_e))))
|
||||
(dMenu_flag() && (dMenu_getPushMenuButton() == 2 || (dMenu_getMenuStatus() == 2 && dMenu_getPushMenuButton() == 0))) ||
|
||||
(i_Meter->mStatusFlags & dMtrStts_UNK800000_e) ||
|
||||
((i_Meter->mStatusFlags & dMtrStts_UNK20_e) && (dStage_stagInfo_GetUpButton(dComIfGp_getStageStagInfo()) == 1)) ||
|
||||
(i_Meter->mStatusFlags & dMtrStts_UNK80_e) || (i_Meter->mStatusFlags & dMtrStts_UNK100000_e) || (i_Meter->mStatusFlags & dMtrStts_UNK200000_e) ||
|
||||
(i_Meter->mStatusFlags & dMtrStts_UNK20000_e) || (i_Meter->mStatusFlags & dMtrStts_UNK40000_e) || (i_Meter->mStatusFlags & dMtrStts_UNK80000_e) ||
|
||||
(i_Meter->mStatusFlags & dMtrStts_UNK400000_e))
|
||||
{
|
||||
if (moveStatus != 1) {
|
||||
moveFlag = 1;
|
||||
@@ -4259,8 +4304,8 @@ void dMeter_magicTransScale(sub_meter_class* i_Meter, f32 param_2, f32 param_3,
|
||||
(param_3 +
|
||||
(i_Meter->field_0x11a0.mPosCenterOrig.y + (param_4 * (i_Meter->field_0x0f38[i].mPosCenterOrig.y - i_Meter->field_0x11a0.mPosCenterOrig.y))));
|
||||
i_Meter->field_0x0f38[i].mPosCenter.x -= ((i_Meter->field_0x0f38[i].mSizeOrig.x * param_4) / 2.0f);
|
||||
i_Meter->field_0x0f38[i].mSize.x = (param_4 * (i_Meter->field_0x0f38[i].pane->mBounds.f.x - i_Meter->field_0x0f38[i].pane->mBounds.i.x));
|
||||
i_Meter->field_0x0f38[i].mSize.y = (param_4 * (i_Meter->field_0x0f38[i].pane->mBounds.f.y - i_Meter->field_0x0f38[i].pane->mBounds.i.y));
|
||||
i_Meter->field_0x0f38[i].mSize.x = (param_4 * (i_Meter->field_0x0f38[i].pane->mBounds.getWidth()));
|
||||
i_Meter->field_0x0f38[i].mSize.y = (param_4 * (i_Meter->field_0x0f38[i].pane->mBounds.getHeight()));
|
||||
i_Meter->field_0x0f38[i].mPosCenter.x += (i_Meter->field_0x0f38[i].mSize.x / 2.0f);
|
||||
fopMsgM_cposMove(&i_Meter->field_0x0f38[i]);
|
||||
i_Meter->field_0x0f38[i].mSize.x = i_Meter->field_0x0f38[i].mSizeOrig.x;
|
||||
@@ -5153,9 +5198,10 @@ void dMeter_keyMove(sub_meter_class* i_Meter) {
|
||||
|
||||
/* 801FD09C-801FD104 .text dMeter_compassRotate__FP18fopMsgM_pane_classP18fopMsgM_pane_classf */
|
||||
void dMeter_compassRotate(fopMsgM_pane_class* param_1, fopMsgM_pane_class* param_2, f32 param_3) {
|
||||
/* Nonmatching */
|
||||
f32 offsetX = (param_1->pane->mBounds.f.x - param_1->pane->mBounds.i.x) / 2.0f;
|
||||
f32 offsetY = (param_1->pane->mBounds.f.y - param_1->pane->mBounds.i.y) / 2.0f;
|
||||
f32 offsetX = param_1->pane->mBounds.getWidth();
|
||||
offsetX /= 2.0f;
|
||||
f32 offsetY = param_1->pane->mBounds.getHeight();
|
||||
offsetY /= 2.0f;
|
||||
param_1->pane->rotate(offsetX, offsetY, ROTATE_Z, param_3);
|
||||
}
|
||||
|
||||
@@ -5262,11 +5308,11 @@ void dMeter_compassDirOpen(sub_meter_class* i_Meter) {
|
||||
f32 dVar5;
|
||||
f32 fVar1;
|
||||
|
||||
fVar1 = i_Meter->field_0x13d0.pane->mBounds.f.x - i_Meter->field_0x13d0.pane->mBounds.i.x;
|
||||
dVar9 = ((i_Meter->field_0x1948.pane->mBounds.f.x - i_Meter->field_0x1948.pane->mBounds.i.x) / 2.0f - (fVar1 / 2.0f));
|
||||
dVar8 = ((i_Meter->field_0x1948.pane->mBounds.f.y - i_Meter->field_0x1948.pane->mBounds.i.y) / 2.0f);
|
||||
dVar7 = ((i_Meter->field_0x16a8.pane->mBounds.f.x - i_Meter->field_0x16a8.pane->mBounds.i.x) / 2.0f - (fVar1 / 2.0f));
|
||||
dVar6 = ((i_Meter->field_0x16a8.pane->mBounds.f.y - i_Meter->field_0x16a8.pane->mBounds.i.y) / 2.0f);
|
||||
fVar1 = i_Meter->field_0x13d0.pane->mBounds.getWidth();
|
||||
dVar9 = ((i_Meter->field_0x1948.pane->mBounds.getWidth()) / 2.0f - (fVar1 / 2.0f));
|
||||
dVar8 = ((i_Meter->field_0x1948.pane->mBounds.getHeight()) / 2.0f);
|
||||
dVar7 = ((i_Meter->field_0x16a8.pane->mBounds.getWidth()) / 2.0f - (fVar1 / 2.0f));
|
||||
dVar6 = ((i_Meter->field_0x16a8.pane->mBounds.getHeight()) / 2.0f);
|
||||
i_Meter->field_0x12f0.mUserArea++;
|
||||
if (i_Meter->field_0x12f0.mUserArea >= 5) {
|
||||
i_Meter->field_0x12f0.mUserArea = 5;
|
||||
@@ -5294,11 +5340,11 @@ void dMeter_compassDirOpen(sub_meter_class* i_Meter) {
|
||||
/* 801FD6C8-801FD8C0 .text dMeter_compassWindOpen__FP15sub_meter_class */
|
||||
void dMeter_compassWindOpen(sub_meter_class* i_Meter) {
|
||||
/* Nonmatching */
|
||||
f32 fVar1 = i_Meter->field_0x13d0.pane->mBounds.f.x - i_Meter->field_0x13d0.pane->mBounds.i.x;
|
||||
f32 dVar9 = ((i_Meter->field_0x1948.pane->mBounds.f.x - i_Meter->field_0x1948.pane->mBounds.i.x) / 2.0f - (fVar1 / 2.0f));
|
||||
f32 dVar8 = ((i_Meter->field_0x1948.pane->mBounds.f.y - i_Meter->field_0x1948.pane->mBounds.i.y) / 2.0f);
|
||||
f32 dVar7 = ((i_Meter->field_0x16a8.pane->mBounds.f.x - i_Meter->field_0x16a8.pane->mBounds.i.x) / 2.0f - (fVar1 / 2.0f));
|
||||
f32 dVar6 = ((i_Meter->field_0x16a8.pane->mBounds.f.y - i_Meter->field_0x16a8.pane->mBounds.i.y) / 2.0f);
|
||||
f32 fVar1 = i_Meter->field_0x13d0.pane->mBounds.getWidth();
|
||||
f32 dVar9 = ((i_Meter->field_0x1948.pane->mBounds.getWidth()) / 2.0f - (fVar1 / 2.0f));
|
||||
f32 dVar8 = ((i_Meter->field_0x1948.pane->mBounds.getHeight()) / 2.0f);
|
||||
f32 dVar7 = ((i_Meter->field_0x16a8.pane->mBounds.getWidth()) / 2.0f - (fVar1 / 2.0f));
|
||||
f32 dVar6 = ((i_Meter->field_0x16a8.pane->mBounds.getHeight()) / 2.0f);
|
||||
i_Meter->field_0x12f0.mUserArea++;
|
||||
f32 dVar5;
|
||||
if (i_Meter->field_0x12f0.mUserArea >= 10) {
|
||||
@@ -5331,11 +5377,11 @@ void dMeter_compassWindClose(sub_meter_class* i_Meter) {
|
||||
f32 dVar7;
|
||||
f32 fVar1;
|
||||
|
||||
fVar1 = i_Meter->field_0x13d0.pane->mBounds.f.x - i_Meter->field_0x13d0.pane->mBounds.i.x;
|
||||
dVar11 = ((i_Meter->field_0x1948.pane->mBounds.f.x - i_Meter->field_0x1948.pane->mBounds.i.x) / 2.0f - (fVar1 / 2.0f));
|
||||
dVar10 = ((i_Meter->field_0x1948.pane->mBounds.f.y - i_Meter->field_0x1948.pane->mBounds.i.y) / 2.0f);
|
||||
dVar9 = ((i_Meter->field_0x16a8.pane->mBounds.f.x - i_Meter->field_0x16a8.pane->mBounds.i.x) / 2.0f - (fVar1 / 2.0f));
|
||||
dVar8 = ((i_Meter->field_0x16a8.pane->mBounds.f.y - i_Meter->field_0x16a8.pane->mBounds.i.y) / 2.0f);
|
||||
fVar1 = i_Meter->field_0x13d0.pane->mBounds.getWidth();
|
||||
dVar11 = ((i_Meter->field_0x1948.pane->mBounds.getWidth()) / 2.0f - (fVar1 / 2.0f));
|
||||
dVar10 = ((i_Meter->field_0x1948.pane->mBounds.getHeight()) / 2.0f);
|
||||
dVar9 = ((i_Meter->field_0x16a8.pane->mBounds.getWidth()) / 2.0f - (fVar1 / 2.0f));
|
||||
dVar8 = ((i_Meter->field_0x16a8.pane->mBounds.getHeight()) / 2.0f);
|
||||
i_Meter->field_0x12f0.mUserArea--;
|
||||
if (dComIfGs_getTime() >= 90.0f && dComIfGs_getTime() < 270.0f) {
|
||||
sVar6 = 0;
|
||||
@@ -5380,11 +5426,11 @@ void dMeter_compassDirClose(sub_meter_class* i_Meter) {
|
||||
f32 dVar5;
|
||||
f32 fVar2;
|
||||
|
||||
fVar2 = i_Meter->field_0x13d0.pane->mBounds.f.x - i_Meter->field_0x13d0.pane->mBounds.i.x;
|
||||
dVar9 = ((i_Meter->field_0x1948.pane->mBounds.f.x - i_Meter->field_0x1948.pane->mBounds.i.x) / 2.0f - (fVar2 / 2.0f));
|
||||
dVar8 = ((i_Meter->field_0x1948.pane->mBounds.f.y - i_Meter->field_0x1948.pane->mBounds.i.y) / 2.0f);
|
||||
dVar7 = ((i_Meter->field_0x16a8.pane->mBounds.f.x - i_Meter->field_0x16a8.pane->mBounds.i.x) / 2.0f - (fVar2 / 2.0f));
|
||||
dVar6 = ((i_Meter->field_0x16a8.pane->mBounds.f.y - i_Meter->field_0x16a8.pane->mBounds.i.y) / 2.0f);
|
||||
fVar2 = i_Meter->field_0x13d0.pane->mBounds.getWidth();
|
||||
dVar9 = ((i_Meter->field_0x1948.pane->mBounds.getWidth()) / 2.0f - (fVar2 / 2.0f));
|
||||
dVar8 = ((i_Meter->field_0x1948.pane->mBounds.getHeight()) / 2.0f);
|
||||
dVar7 = ((i_Meter->field_0x16a8.pane->mBounds.getWidth()) / 2.0f - (fVar2 / 2.0f));
|
||||
dVar6 = ((i_Meter->field_0x16a8.pane->mBounds.getHeight()) / 2.0f);
|
||||
i_Meter->field_0x12f0.mUserArea = i_Meter->field_0x12f0.mUserArea + -1;
|
||||
if (i_Meter->field_0x12f0.mUserArea <= 0) {
|
||||
dMeter_compassValueInit(i_Meter);
|
||||
@@ -5456,11 +5502,11 @@ void dMeter_compassValueInit(sub_meter_class* i_Meter) {
|
||||
}
|
||||
i_Meter->field_0x12f0.mUserArea = 0;
|
||||
i_Meter->field_0x302a = 0;
|
||||
dVar8 = i_Meter->field_0x13d0.pane->mBounds.f.x - i_Meter->field_0x13d0.pane->mBounds.i.x;
|
||||
dVar7 = i_Meter->field_0x1948.pane->mBounds.f.x - i_Meter->field_0x1948.pane->mBounds.i.x;
|
||||
dVar6 = i_Meter->field_0x1948.pane->mBounds.f.y - i_Meter->field_0x1948.pane->mBounds.i.y;
|
||||
dVar5 = i_Meter->field_0x16a8.pane->mBounds.f.x - i_Meter->field_0x16a8.pane->mBounds.i.x;
|
||||
dVar4 = i_Meter->field_0x16a8.pane->mBounds.f.y - i_Meter->field_0x16a8.pane->mBounds.i.y;
|
||||
dVar8 = i_Meter->field_0x13d0.pane->mBounds.getWidth();
|
||||
dVar7 = i_Meter->field_0x1948.pane->mBounds.getWidth();
|
||||
dVar6 = i_Meter->field_0x1948.pane->mBounds.getHeight();
|
||||
dVar5 = i_Meter->field_0x16a8.pane->mBounds.getWidth();
|
||||
dVar4 = i_Meter->field_0x16a8.pane->mBounds.getHeight();
|
||||
x = -(i_Meter->field_0x1948.mPosTopLeftOrig.x + i_Meter->field_0x1948.mSizeOrig.x);
|
||||
fopMsgM_paneTrans(&i_Meter->field_0x12f0, x, 0.0f);
|
||||
fopMsgM_paneTrans(&i_Meter->field_0x1948, x, 0.0f);
|
||||
@@ -6087,7 +6133,7 @@ void dMeter_arwMove(sub_meter_class* i_Meter) {
|
||||
/* 801FFEB0-801FFF30 .text dMeter_moveItemInit__FP15sub_meter_class */
|
||||
void dMeter_moveItemInit(sub_meter_class* i_Meter) {
|
||||
JKRArchive* archive = dComIfGp_getItemIconArchive();
|
||||
const char* pFilename = dItem_data::getTexture(0x27);
|
||||
const char* pFilename = dItem_data::getTexture(dItemNo_BOW_e);
|
||||
JKRArchive::readTypeResource(i_Meter->moveIconTex[0], 0xc00, 'TIMG', pFilename, archive);
|
||||
DCStoreRangeNoSync(i_Meter->moveIconTex[0], 0xc00);
|
||||
moveItemPane = new J2DPicture(i_Meter->moveIconTex[0]);
|
||||
@@ -6371,32 +6417,39 @@ void dMeter_swimDraw(sub_meter_class* i_Meter) {
|
||||
|
||||
/* 80200E18-802011D0 .text dMeter_swimOpenProc__FP15sub_meter_class */
|
||||
void dMeter_swimOpenProc(sub_meter_class* i_Meter) {
|
||||
/* Nonmatching */
|
||||
int r31 = ++i_Meter->field_0x2c88.mUserArea;
|
||||
static f32 dist_buf = 0.0f;
|
||||
f32 dVar3;
|
||||
f32 alpha;
|
||||
f32 scale;
|
||||
if (r31 == 1) {
|
||||
fopMsgM_paneScaleXY(&i_Meter->field_0x2dd8, 0.1f);
|
||||
fopMsgM_setNowAlphaZero(&i_Meter->field_0x2dd8);
|
||||
} else if (r31 < 5) {
|
||||
dVar3 = fopMsgM_valueIncrease(4, r31 - 1, 0);
|
||||
fopMsgM_paneScaleXY(&i_Meter->field_0x2dd8, (dVar3 * 0.9f) + 0.1f);
|
||||
fopMsgM_setNowAlpha(&i_Meter->field_0x2dd8, dVar3);
|
||||
alpha = fopMsgM_valueIncrease(4, r31 - 1, 0);
|
||||
scale = (alpha * 0.9f) + 0.1f;
|
||||
fopMsgM_paneScaleXY(&i_Meter->field_0x2dd8, scale);
|
||||
fopMsgM_setNowAlpha(&i_Meter->field_0x2dd8, alpha);
|
||||
} else if (r31 < 8) {
|
||||
dVar3 = fopMsgM_valueIncrease(3, r31 - 5, 0);
|
||||
fopMsgM_paneScaleXY(&i_Meter->field_0x2dd8, 1.0f - (dVar3 * 0.3f));
|
||||
alpha = fopMsgM_valueIncrease(3, r31 - 5, 0);
|
||||
scale = 1.0f - (alpha * 0.3f);
|
||||
fopMsgM_paneScaleXY(&i_Meter->field_0x2dd8, scale);
|
||||
} else if (r31 < 10) {
|
||||
dVar3 = fopMsgM_valueIncrease(2, r31 - 8, 0);
|
||||
fopMsgM_paneScaleXY(&i_Meter->field_0x2dd8, (dVar3 * 0.3f) + 0.7f);
|
||||
} else if (r31 < 0xc) {
|
||||
dVar3 = fopMsgM_valueIncrease(2, r31 - 10, 0);
|
||||
fopMsgM_paneScaleXY(&i_Meter->field_0x2dd8, 1.0f - (dVar3 * 0.100000024f));
|
||||
} else if (r31 < 0xe) {
|
||||
dVar3 = fopMsgM_valueIncrease(2, r31 - 0xc, 0);
|
||||
fopMsgM_paneScaleXY(&i_Meter->field_0x2dd8, (dVar3 * 0.100000024f) + 0.9f);
|
||||
} else if (r31 == 0xe) {
|
||||
alpha = fopMsgM_valueIncrease(2, r31 - 8, 0);
|
||||
scale = (alpha * 0.3f) + 0.7f;
|
||||
fopMsgM_paneScaleXY(&i_Meter->field_0x2dd8, scale);
|
||||
} else if (r31 < 12) {
|
||||
alpha = fopMsgM_valueIncrease(2, r31 - 10, 0);
|
||||
scale = 1.0f - (alpha * 0.100000024f);
|
||||
fopMsgM_paneScaleXY(&i_Meter->field_0x2dd8, scale);
|
||||
} else if (r31 < 14) {
|
||||
alpha = fopMsgM_valueIncrease(2, r31 - 12, 0);
|
||||
scale = (alpha * 0.100000024f) + 0.9f;
|
||||
fopMsgM_paneScaleXY(&i_Meter->field_0x2dd8, scale);
|
||||
} else if (r31 == 14) {
|
||||
fopMsgM_paneScaleXY(&i_Meter->field_0x2dd8, 1.0f);
|
||||
}
|
||||
|
||||
f32 transY;
|
||||
if (r31 == 1) {
|
||||
dMeter_swimPaneTransY(i_Meter, -130.0f);
|
||||
fopMsgM_paneScaleY(&i_Meter->field_0x2cf8, 1.0f);
|
||||
@@ -6408,26 +6461,31 @@ void dMeter_swimOpenProc(sub_meter_class* i_Meter) {
|
||||
fopMsgM_setNowAlphaZero(&i_Meter->field_0x2d30);
|
||||
fopMsgM_setNowAlphaZero(&i_Meter->field_0x2c88);
|
||||
} else if (r31 <= 5) {
|
||||
dVar3 = fopMsgM_valueIncrease(4, r31 - 1, 0);
|
||||
dMeter_swimPaneTransY(i_Meter, -((1.0f - dVar3) * 130.0f));
|
||||
dMeter_swimPaneAlpha(i_Meter, dVar3);
|
||||
alpha = fopMsgM_valueIncrease(4, r31 - 1, 0);
|
||||
transY = -((1.0f - alpha) * 130.0f);
|
||||
dMeter_swimPaneTransY(i_Meter, transY);
|
||||
dMeter_swimPaneAlpha(i_Meter, alpha);
|
||||
} else if (r31 <= 8) {
|
||||
dVar3 = fopMsgM_valueIncrease(3, r31 - 5, 0);
|
||||
dMeter_swimPaneTransY(i_Meter, (-25.0f - (1.0f - dVar3) * -25.0f));
|
||||
alpha = fopMsgM_valueIncrease(3, r31 - 5, 0);
|
||||
transY = -25.0f - (1.0f - alpha) * -25.0f;
|
||||
dMeter_swimPaneTransY(i_Meter, transY);
|
||||
dMeter_swimPaneShow(i_Meter);
|
||||
} else if (r31 <= 0xa) {
|
||||
dVar3 = fopMsgM_valueIncrease(2, r31 - 8, 0);
|
||||
dMeter_swimPaneTransY(i_Meter, -((1.0f - dVar3) * 25.0f));
|
||||
alpha = fopMsgM_valueIncrease(2, r31 - 8, 0);
|
||||
transY = -((1.0f - alpha) * 25.0f);
|
||||
dMeter_swimPaneTransY(i_Meter, transY);
|
||||
dMeter_swimPaneShow(i_Meter);
|
||||
} else if (r31 <= 0xc) {
|
||||
dVar3 = fopMsgM_valueIncrease(2, r31 - 10, 0);
|
||||
dMeter_swimPaneTransY(i_Meter, (-6.0f - (1.0f - dVar3) * -6.0f));
|
||||
} else if (r31 <= 12) {
|
||||
alpha = fopMsgM_valueIncrease(2, r31 - 10, 0);
|
||||
transY = -6.0f - (1.0f - alpha) * -6.0f;
|
||||
dMeter_swimPaneTransY(i_Meter, transY);
|
||||
dMeter_swimPaneShow(i_Meter);
|
||||
} else if (r31 < 0xe) {
|
||||
dVar3 = fopMsgM_valueIncrease(2, r31 - 0xc, 0);
|
||||
dMeter_swimPaneTransY(i_Meter, -((1.0f - dVar3) * 6.0f));
|
||||
} else if (r31 < 14) {
|
||||
alpha = fopMsgM_valueIncrease(2, r31 - 12, 0);
|
||||
transY = -((1.0f - alpha) * 6.0f);
|
||||
dMeter_swimPaneTransY(i_Meter, transY);
|
||||
dMeter_swimPaneShow(i_Meter);
|
||||
} else if (r31 == 0xe) {
|
||||
} else if (r31 == 14) {
|
||||
dMeter_swimPaneTransY(i_Meter, 0);
|
||||
fopMsgM_paneScaleY(&i_Meter->field_0x2cf8, 1.0f);
|
||||
fopMsgM_paneScaleY(&i_Meter->field_0x2da0, 1.0f);
|
||||
@@ -7410,41 +7468,41 @@ static cPhs_State dMeter_Create(msg_class* i_this) {
|
||||
#endif
|
||||
|
||||
i_Meter->heap = fopMsgM_createExpHeap(0x2a819);
|
||||
JUT_ASSERT(13475, i_Meter->heap != NULL);
|
||||
JUT_ASSERT(VERSION_SELECT(13172, 13354, 13475, 13474), i_Meter->heap != NULL);
|
||||
|
||||
JKRHeap* oldHeap = mDoExt_setCurrentHeap(i_Meter->heap);
|
||||
sMainParts1 = new MyScreen();
|
||||
JUT_ASSERT(13480, sMainParts1 != NULL);
|
||||
JUT_ASSERT(VERSION_SELECT(13177, 13359, 13480, 13479), sMainParts1 != NULL);
|
||||
sMainParts1->set("main_parts1.blo", dComIfGp_getMenuArchive());
|
||||
|
||||
sMainParts2 = new J2DScreen();
|
||||
JUT_ASSERT(13484, sMainParts2 != NULL);
|
||||
JUT_ASSERT(VERSION_SELECT(13181, 13363, 13484, 13483), sMainParts2 != NULL);
|
||||
sMainParts2->set("main_parts2.blo", dComIfGp_getMenuArchive());
|
||||
|
||||
sMainParts3 = new J2DScreen();
|
||||
JUT_ASSERT(13488, sMainParts3 != NULL);
|
||||
JUT_ASSERT(VERSION_SELECT(13185, 13367, 13488, 13487), sMainParts3 != NULL);
|
||||
sMainParts3->set("main_parts3.blo", dComIfGp_getMenuArchive());
|
||||
|
||||
sChoiceRoad = new J2DScreen();
|
||||
JUT_ASSERT(13492, sChoiceRoad != NULL);
|
||||
JUT_ASSERT(VERSION_SELECT(13189, 13371, 13492, 13491), sChoiceRoad != NULL);
|
||||
sChoiceRoad->set("choice_road.blo", dComIfGp_getMenuArchive());
|
||||
|
||||
for (s32 i = 0; i < 3; i++) {
|
||||
i_Meter->actionTex[i] = (ResTIMG*)i_Meter->heap->alloc(0xc00, 0x20);
|
||||
JUT_ASSERT(13497, i_Meter->actionTex[i] != NULL);
|
||||
JUT_ASSERT(VERSION_SELECT(13194, 13376, 13497, 13496), i_Meter->actionTex[i] != NULL);
|
||||
|
||||
i_Meter->xyIconTex[i] = (ResTIMG*)i_Meter->heap->alloc(0xc00, 0x20);
|
||||
JUT_ASSERT(13499, i_Meter->xyIconTex[i] != NULL);
|
||||
JUT_ASSERT(VERSION_SELECT(13196, 13378, 13499, 13498), i_Meter->xyIconTex[i] != NULL);
|
||||
}
|
||||
|
||||
for (s32 i = 0; i < 2; i++) {
|
||||
if (i == 0) {
|
||||
i_Meter->moveIconTex[i] = (ResTIMG*)i_Meter->heap->alloc(0xc00, 0x20);
|
||||
JUT_ASSERT(13506, i_Meter->moveIconTex[i] != NULL);
|
||||
JUT_ASSERT(VERSION_SELECT(13203, 13385, 13506, 13505), i_Meter->moveIconTex[i] != NULL);
|
||||
}
|
||||
|
||||
i_Meter->arrowTex[i] = (ResTIMG*)i_Meter->heap->alloc(0xc00, 0x20);
|
||||
JUT_ASSERT(13509, i_Meter->arrowTex[i] != NULL);
|
||||
JUT_ASSERT(VERSION_SELECT(13206, 13388, 13509, 13508), i_Meter->arrowTex[i] != NULL);
|
||||
}
|
||||
|
||||
#if VERSION == VERSION_DEMO
|
||||
@@ -7461,8 +7519,8 @@ static cPhs_State dMeter_Create(msg_class* i_this) {
|
||||
dComIfGp_setRStatusForce(dActStts_BLANK_e);
|
||||
dComIfGp_setAStatusForce(dActStts_BLANK_e);
|
||||
|
||||
g_meterHIO.mNo = mDoHIO_createChild("通常画面表示", &g_meterHIO); // "Normal Screen Display"
|
||||
g_menuHIO.mNo = mDoHIO_createChild("メニュー画面", &g_menuHIO); // "Menu Screen"
|
||||
g_meterHIO.mNo = mDoHIO_createChild("通常画面表示", &g_meterHIO); // "Normal Screen Display"
|
||||
g_menuHIO.mNo = mDoHIO_createChild("メニュー画面", &g_menuHIO); // "Menu Screen"
|
||||
g_msgHIO.mNo = mDoHIO_createChild("Message(会話)", &g_msgHIO); // "Message (Talk)"
|
||||
g_messageHIO.mNo = mDoHIO_createChild("Message(看板)", &g_messageHIO); // "Message (Sign)"
|
||||
g_meter_mapHIO.mNo = mDoHIO_createChild("マップ2", &g_meter_mapHIO); // "Map 2"
|
||||
|
||||
+332
-474
File diff suppressed because it is too large
Load Diff
+22
-22
@@ -1675,34 +1675,34 @@ void dJle_Pb_c::messageSet(u32 msgNo) {
|
||||
mMsgDataProc.setFont(font0);
|
||||
mMsgDataProc.setRubyFont(font1);
|
||||
|
||||
mMsgDataProc.charSpace = ((J2DTextBox*)pane_tx[0].pane)->mCharSpace;
|
||||
mMsgDataProc.rubyCharSpace = ((J2DTextBox*)pane_tx[1].pane)->mCharSpace;
|
||||
mMsgDataProc.lineSpace = ((J2DTextBox*)pane_tx[0].pane)->getLineSpace();
|
||||
mMsgDataProc.setCharSpace(((J2DTextBox*)pane_tx[0].pane)->mCharSpace);
|
||||
mMsgDataProc.setRubyCharSpace(((J2DTextBox*)pane_tx[1].pane)->mCharSpace);
|
||||
mMsgDataProc.setLineSpace(((J2DTextBox*)pane_tx[0].pane)->getLineSpace());
|
||||
|
||||
mMsgDataProc.setMesgEntry(&mMsgEntry);
|
||||
|
||||
mMsgDataProc.fontSize = tx0FontSizeX;
|
||||
mMsgDataProc.rubyFontSize = tx1FontSizeX;
|
||||
mMsgDataProc.setFontSize(tx0FontSizeX);
|
||||
mMsgDataProc.setRubyFontSize(tx1FontSizeX);
|
||||
|
||||
mMsgDataProc.lineWidth = 0x1F7;
|
||||
mMsgDataProc.centerLineWidth = 0x1E6;
|
||||
mMsgDataProc.setLineWidth(0x1F7);
|
||||
mMsgDataProc.setCenterLineWidth(0x1E6);
|
||||
|
||||
mMsgDataProc.sendSpeed = g_msgHIO.field_0x82;
|
||||
mMsgDataProc.spaceTimer = g_msgHIO.field_0x6c;
|
||||
mMsgDataProc.setSendSpeed(g_msgHIO.field_0x82);
|
||||
mMsgDataProc.setSpaceTimer(g_msgHIO.field_0x6c);
|
||||
mMsgDataProc.field_0x299 = 1;
|
||||
|
||||
if (g_msgHIO.field_0x83 != 0) {
|
||||
mMsgDataProc.spaceFlag = 1;
|
||||
mMsgDataProc.setSpaceFlagOn();
|
||||
} else {
|
||||
mMsgDataProc.spaceFlag = 0;
|
||||
mMsgDataProc.setSpaceFlagOff();
|
||||
}
|
||||
|
||||
mMsgDataProc.stringLength();
|
||||
mMsgDataProc.stringShift();
|
||||
mMsgDataProc.iconIdxRefresh();
|
||||
|
||||
mMsgLineCount = mMsgDataProc.lineCount;
|
||||
mMsgDataProc.lineCount = 0;
|
||||
mMsgLineCount = mMsgDataProc.getLineCount();
|
||||
mMsgDataProc.setLineCount(0);
|
||||
|
||||
f32 yShift = ((VERSION_SELECT(1, 1, 2, 2) - mMsgLineCount) * (((J2DTextBox*)pane_tx[0].pane)->getLineSpace() / 2.0f));
|
||||
|
||||
@@ -1719,8 +1719,8 @@ void dJle_Pb_c::messageSet(u32 msgNo) {
|
||||
for (int i = 0; i < 15; i++) {
|
||||
int halfLine = ((J2DTextBox*)pane_tx[0].pane)->getLineSpace() / 2.0f;
|
||||
|
||||
u8 icon = mMsgDataProc.field_0x281[i];
|
||||
u32 fontData = mMsgDataProc.field_0x25C;
|
||||
u8 icon = mMsgDataProc.getIconNum(i);
|
||||
u32 fontColor = mMsgDataProc.getStringColor();
|
||||
|
||||
if (icon == 20) {
|
||||
mChoiceCursorX0 = (int)(
|
||||
@@ -1777,7 +1777,7 @@ void dJle_Pb_c::messageSet(u32 msgNo) {
|
||||
mMsgIconFontMainPic,
|
||||
mMsgIconFontSubPic,
|
||||
&mMsgIconDrawState,
|
||||
fontData,
|
||||
fontColor,
|
||||
icon
|
||||
);
|
||||
}
|
||||
@@ -2170,12 +2170,12 @@ void dJle_Pb_c::draw() {
|
||||
VERSION_SELECT(29.0f, 29.0f, g_msgHIO.field_0x70, g_msgHIO.field_0x70)
|
||||
);
|
||||
} else {
|
||||
u8 iconNo = mMsgDataProc.field_0x281[idx];
|
||||
u8 iconNo = mMsgDataProc.getIconNum(idx);
|
||||
|
||||
if (iconNo != 0xFF && iconNo != 20 && iconNo != 0x15) {
|
||||
int posX = mMsgDataProc.getIconPosX(idx);
|
||||
int posY = mMsgDataProc.getIconPosY(idx);
|
||||
u32 color = mMsgDataProc.getIconColor(idx);
|
||||
int scale = mMsgDataProc.getIconScale(idx);
|
||||
J2DTextBox* base = (J2DTextBox*)pane_tx[0].pane;
|
||||
f32 lineSpace = base->getLineSpace();
|
||||
int r9 = (int)(lineSpace / 2.0f);
|
||||
@@ -2189,7 +2189,7 @@ void dJle_Pb_c::draw() {
|
||||
mMsgIconFontSubPic,
|
||||
r5,
|
||||
r6,
|
||||
color,
|
||||
scale,
|
||||
&mMsgIconDrawState,
|
||||
alpha,
|
||||
iconNo
|
||||
@@ -2232,12 +2232,12 @@ void dJle_Pb_c::draw() {
|
||||
VERSION_SELECT(29.0f, 29.0f, g_msgHIO.field_0x70, g_msgHIO.field_0x70)
|
||||
);
|
||||
} else {
|
||||
u8 iconNo = mMsgDataProc.field_0x281[idx];
|
||||
u8 iconNo = mMsgDataProc.getIconNum(idx);
|
||||
|
||||
if (iconNo != 0xFF && iconNo != 20 && iconNo != 0x15) {
|
||||
int posX = mMsgDataProc.getIconPosX(idx);
|
||||
int posY = mMsgDataProc.getIconPosY(idx);
|
||||
u32 color = mMsgDataProc.getIconColor(idx);
|
||||
int scale = mMsgDataProc.getIconScale(idx);
|
||||
J2DTextBox* base = (J2DTextBox*)pane_tx[0].pane;
|
||||
f32 lineSpace = base->getLineSpace();
|
||||
int r9 = (int)(lineSpace / 2.0f);
|
||||
@@ -2251,7 +2251,7 @@ void dJle_Pb_c::draw() {
|
||||
mMsgIconFontSubPic,
|
||||
r5,
|
||||
r6,
|
||||
color,
|
||||
scale,
|
||||
&mMsgIconDrawState,
|
||||
alpha,
|
||||
iconNo
|
||||
|
||||
+1
-1
@@ -123,7 +123,7 @@ static cPhs_State dScnTitle_Create(scene_class* i_scn) {
|
||||
#if VERSION == VERSION_PAL
|
||||
dScnTitle_c::mMp = NULL;
|
||||
if (fpcM_GetName(i_this) == fpcNm_ENDING_SCENE_e) {
|
||||
fopMsgM_Create(fpcNm_MESG_e, NULL, NULL);
|
||||
fopMsgM_Create(fpcNm_MSG3_e, NULL, NULL);
|
||||
}
|
||||
#endif
|
||||
|
||||
|
||||
+2
-2
@@ -82,7 +82,7 @@ void dDlst_2DSCP_c::outFontDraw() {
|
||||
u8 icon_no = mpScp->mMesgDataProc.getIconNum(i);
|
||||
int pos_x = mpScp->mMesgDataProc.getIconPosX(i);
|
||||
int pos_y = mpScp->mMesgDataProc.getIconPosY(i);
|
||||
u32 color = mpScp->mMesgDataProc.getIconColor(i);
|
||||
int scale = mpScp->mMesgDataProc.getIconScale(i);
|
||||
int line = mpScp->mpTextBox->getLineSpace() / 2;
|
||||
|
||||
if (icon_no != 0xFF) {
|
||||
@@ -90,7 +90,7 @@ void dDlst_2DSCP_c::outFontDraw() {
|
||||
// for some reason y computation only match if split in two
|
||||
int y = line * (VERSION_SELECT(1, 1, 2, 2) - mpScp->mLineCount + pos_y * 2);
|
||||
int y2 = y + mpScp->mpTextBox->getBounds().i.y;
|
||||
fopMsgM_outFontDraw(sbutton_icon[i], sbutton_kage[i], x, y2, color, &sbuttonTimer[i], 0xFF, icon_no);
|
||||
fopMsgM_outFontDraw(sbutton_icon[i], sbutton_kage[i], x, y2, scale, &sbuttonTimer[i], 0xFF, icon_no);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+1459
-379
File diff suppressed because it is too large
Load Diff
@@ -274,7 +274,7 @@ bool Debug_console(JUTGamePad* i_pad) {
|
||||
|
||||
if (console->isVisible()) {
|
||||
if ((i_pad->testButton(CButton::L) && i_pad->testButton(CButton::R)) ||
|
||||
((i_pad->getAnalogL() != 0 && i_pad->getAnalogR() != 0)))
|
||||
(i_pad->getAnalogL() != 0 && i_pad->getAnalogR() != 0))
|
||||
{
|
||||
f32 stick_x = i_pad->getMainStickX();
|
||||
f32 stick_y = i_pad->getMainStickY();
|
||||
|
||||
Reference in New Issue
Block a user