mirror of
https://github.com/zeldaret/tp
synced 2026-07-09 06:53:23 -04:00
work on link bow, kandelaar, and whistle (#2004)
This commit is contained in:
@@ -653,6 +653,7 @@ public:
|
||||
FTANM_UNK_3 = 3,
|
||||
FTANM_UNK_4 = 4,
|
||||
FTANM_UNK_8 = 8,
|
||||
FTANM_UNK_9 = 9,
|
||||
FTANM_UNK_13 = 0x13,
|
||||
FTANM_UNK_14 = 0x14,
|
||||
FTANM_UNK_27 = 0x27,
|
||||
@@ -1420,7 +1421,7 @@ public:
|
||||
/* 800B26AC */ BOOL midnaTalkTrigger() const;
|
||||
/* 800B26B8 */ BOOL swordSwingTrigger();
|
||||
/* 800B26DC */ void setItemActionButtonStatus(u8);
|
||||
/* 800B26FC */ void itemActionTrigger();
|
||||
/* 800B26FC */ BOOL itemActionTrigger();
|
||||
/* 800B271C */ void setStickData();
|
||||
/* 800B2EA4 */ void setAtnList();
|
||||
/* 800B3220 */ void setRStatus(u8);
|
||||
@@ -1852,7 +1853,7 @@ public:
|
||||
/* 800DEE1C */ BOOL cancelBowMove();
|
||||
/* 800DEEDC */ void setBowReadyAnime();
|
||||
/* 800DEFB8 */ void setBowReloadAnime();
|
||||
/* 800DF0BC */ void checkUpperItemActionBow();
|
||||
/* 800DF0BC */ BOOL checkUpperItemActionBow();
|
||||
/* 800DF798 */ void checkUpperItemActionBowFly();
|
||||
/* 800DF814 */ int checkNextActionBow();
|
||||
/* 800DFAE8 */ void setBowModel();
|
||||
@@ -2496,7 +2497,7 @@ public:
|
||||
/* 80110E84 */ void setKandelaarModel();
|
||||
/* 80110F88 */ void resetOilBottleModel();
|
||||
/* 80110FE0 */ void commonKandelaarPourInit();
|
||||
/* 801110B8 */ void commonKandelaarPour(int);
|
||||
/* 801110B8 */ int commonKandelaarPour(int);
|
||||
/* 8011130C */ void initKandelaarSwing();
|
||||
/* 80111440 */ int procKandelaarSwingInit();
|
||||
/* 801115CC */ int procKandelaarSwing();
|
||||
@@ -3208,6 +3209,8 @@ public:
|
||||
bool checkFisingRodLure() const { return mEquipItem == noentry73; }
|
||||
BOOL doTrigger() const { return mItemTrigger & BTN_A; }
|
||||
bool swordTrigger() { return itemTriggerCheck(BTN_B); }
|
||||
BOOL grassCancelTrigger() { return itemTriggerCheck(BTN_B); }
|
||||
BOOL arrowChangeTrigger() { return itemActionTrigger(); }
|
||||
bool peepSubjectCancelTrigger() { return itemTriggerCheck(0x8); }
|
||||
u32 getStartMode() { return (fopAcM_GetParam(this) >> 0xC) & 0x1F; }
|
||||
inline bool checkInputOnR() const;
|
||||
@@ -3575,8 +3578,7 @@ private:
|
||||
/* 0x02D80 */ int field_0x2d80;
|
||||
/* 0x02D84 */ Z2WolfHowlMgr mZ2WolfHowlMgr;
|
||||
/* 0x02E44 */ dJntCol_c field_0x2e44;
|
||||
/* 0x02E54 */ dPaPo_c field_0x2e54;
|
||||
/* 0x02E8C */ u8 field_0x2e8c[0x90];
|
||||
/* 0x02E54 */ dPaPoF_c field_0x2e54;
|
||||
/* 0x02F1C */ dPaPo_c* field_0x2f1c;
|
||||
/* 0x02F20 */ dPa_hermiteEcallBack_c field_0x2f20;
|
||||
/* 0x02F38 */ dPa_hermiteEcallBack_c field_0x2f38;
|
||||
@@ -6004,8 +6006,8 @@ public:
|
||||
/* 0x42 */ s16 mColorReg2R;
|
||||
/* 0x44 */ s16 mColorReg2G;
|
||||
/* 0x46 */ s16 mColorReg2B;
|
||||
/* 0x48 */ u16 mNormalOilLoss;
|
||||
/* 0x4A */ u16 mShakeOilLoss;
|
||||
/* 0x48 */ s16 mNormalOilLoss;
|
||||
/* 0x4A */ s16 mShakeOilLoss;
|
||||
/* 0x4C */ f32 mFlameTrackRate;
|
||||
}; // Size: 0x50
|
||||
|
||||
|
||||
@@ -397,6 +397,7 @@ public:
|
||||
|
||||
enum daPy_RFLG0 {
|
||||
RFLG0_UNK_40000000 = 0x40000000,
|
||||
RFLG0_UNK_20000000 = 0x20000000,
|
||||
RFLG0_UNK_8000000 = 0x8000000,
|
||||
RFLG0_UNK_4000000 = 0x4000000,
|
||||
RFLG0_UNK_20000 = 0x20000,
|
||||
|
||||
@@ -371,6 +371,7 @@ public:
|
||||
|
||||
u8& getItemLifeCountType() { return mItemLifeCountType; }
|
||||
u16 getItemNowLife() { return mItemNowLife; }
|
||||
s32 getItemNowOil() { return mItemNowOil; }
|
||||
s16 getItemPachinkoNumCount() { return mItemPachinkoNumCount; }
|
||||
void clearItemPachinkoNumCount() { mItemPachinkoNumCount = 0; }
|
||||
u8 getNeedLightDropNum() { return mNeedLightDropNum; }
|
||||
@@ -2773,6 +2774,10 @@ inline u16 dComIfGp_getItemNowLife() {
|
||||
return g_dComIfG_gameInfo.play.getItemNowLife();
|
||||
}
|
||||
|
||||
inline s32 dComIfGp_getItemNowOil() {
|
||||
return g_dComIfG_gameInfo.play.getItemNowOil();
|
||||
}
|
||||
|
||||
inline int dComIfGp_getMessageCountNumber() {
|
||||
return g_dComIfG_gameInfo.play.getMessageCountNumber();
|
||||
}
|
||||
@@ -3030,6 +3035,10 @@ inline void dComIfGp_event_onEventFlag(u16 i_flag) {
|
||||
g_dComIfG_gameInfo.play.getEvent().onEventFlag(i_flag);
|
||||
}
|
||||
|
||||
inline void dComIfGp_event_onHindFlag(u16 i_flag) {
|
||||
g_dComIfG_gameInfo.play.getEvent().onHindFlag(i_flag);
|
||||
}
|
||||
|
||||
inline void dComIfGp_evmng_cutEnd(int param_0) {
|
||||
dComIfGp_getPEvtManager()->cutEnd(param_0);
|
||||
}
|
||||
|
||||
@@ -3,6 +3,7 @@
|
||||
|
||||
#include "f_op/f_op_kankyo_mng.h"
|
||||
#include "d/kankyo/d_kankyo.h"
|
||||
#include "d/d_procname.h"
|
||||
|
||||
class dkWmark_c : public kankyo_class {
|
||||
public:
|
||||
@@ -15,6 +16,10 @@ public:
|
||||
|
||||
static int m_nowID;
|
||||
|
||||
static void setFootMark(cXyz* i_pos, s16 param_1, int param_2) {
|
||||
fopKyM_create(PROC_WMARK, param_2 | (param_1 << 0x10), i_pos, NULL, NULL);
|
||||
}
|
||||
|
||||
/* 0x0F8 */ JKRSolidHeap* mpHeap;
|
||||
/* 0x0FC */ J3DModel* mpModel;
|
||||
/* 0x100 */ dKy_tevstr_c mTevstr;
|
||||
|
||||
@@ -149,6 +149,7 @@ public:
|
||||
void onEventFlag(u16 flag) { mEventFlag |= flag; }
|
||||
void offEventFlag(u16 flag) { mEventFlag &= ~flag; }
|
||||
u8 getMode() const { return mMode; }
|
||||
void onHindFlag(u16 flag) { mHindFlag |= flag; }
|
||||
u16 checkHind(u16 flag) { return flag & mHindFlag; }
|
||||
u8 checkCompulsory() { return mCompulsory; }
|
||||
u8 getMapToolId() { return mMapToolId; }
|
||||
|
||||
@@ -16,15 +16,13 @@ public:
|
||||
/* 80050E7C */ void setEffect(u32*, int, dKy_tevstr_c const*, cXyz const*, u32, u32,
|
||||
cXyz const*, csXyz const*, s8, u8*, u8*);
|
||||
/* 80051008 */ int setEffectCenter(dKy_tevstr_c const*, cXyz const*, u32, u32, cXyz const*,
|
||||
csXyz const*, cXyz const*, s8, f32, f32);
|
||||
csXyz const*, cXyz const*, s8, f32, f32);
|
||||
/* 8005113C */ void clearID(u32*, u8*);
|
||||
|
||||
void clearCenterID() { clearID(field_0x8[0], &field_0x36); }
|
||||
void changeWaterOffset(f32 i_offset) { mWaterOffset = i_offset; }
|
||||
void changeRippleOffset(f32 i_offset) { mRippleOffset = i_offset; }
|
||||
u8 getCenterEffType(int i_idx) const {
|
||||
return mCenterEffType[i_idx];
|
||||
}
|
||||
u8 getCenterEffType(int i_idx) const { return mCenterEffType[i_idx]; }
|
||||
JPABaseEmitter* getCenterEmitter(int param_0, int param_1) {
|
||||
return dComIfGp_particle_getEmitter(field_0x8[param_0][param_1]);
|
||||
}
|
||||
@@ -42,8 +40,8 @@ public:
|
||||
class dPaPoT_c : public dPaPo_c {
|
||||
public:
|
||||
/* 8005115C */ int setEffectTwo(dKy_tevstr_c const*, cXyz const*, u32, u32, cXyz const*,
|
||||
cXyz const*, cXyz const*, csXyz const*, cXyz const*, s8, f32,
|
||||
f32);
|
||||
cXyz const*, cXyz const*, csXyz const*, cXyz const*, s8, f32,
|
||||
f32);
|
||||
/* 80051294 */ void clearTwoAllID();
|
||||
|
||||
void clearLeftID() { clearID(mLeftEmitter[0], &field_0x7c); }
|
||||
@@ -74,18 +72,14 @@ public:
|
||||
class dPaPoF_c : public dPaPoT_c {
|
||||
public:
|
||||
/* 800512E8 */ int setEffectFour(dKy_tevstr_c const*, cXyz const*, u32, u32, cXyz const*,
|
||||
cXyz const*, cXyz const*, cXyz const*, cXyz const*,
|
||||
csXyz const*, cXyz const*, s8, f32, f32);
|
||||
cXyz const*, cXyz const*, cXyz const*, cXyz const*,
|
||||
csXyz const*, cXyz const*, s8, f32, f32);
|
||||
/* 80051424 */ void clearFourAllID();
|
||||
|
||||
void clearBLeftID() { clearID(mBackLeftEmitter[0], &field_0xc4); }
|
||||
void clearBRightID() { clearID(mBackRightEmitter[0], &field_0xc5); }
|
||||
u8 getBackRightEffType(int i_idx) const {
|
||||
return mBackRightEffType[i_idx];
|
||||
}
|
||||
u8 getBackLeftEffType(int i_idx) const {
|
||||
return mBackLeftEffType[i_idx];
|
||||
}
|
||||
u8 getBackRightEffType(int i_idx) const { return mBackRightEffType[i_idx]; }
|
||||
u8 getBackLeftEffType(int i_idx) const { return mBackLeftEffType[i_idx]; }
|
||||
JPABaseEmitter* getBackRightEmitter(int param_0, int param_1) {
|
||||
return dComIfGp_particle_getEmitter(mBackRightEmitter[param_0][param_1]);
|
||||
}
|
||||
@@ -96,6 +90,13 @@ public:
|
||||
typedef u8 (dPaPoF_c::*effTypeFunc)(int) const;
|
||||
typedef JPABaseEmitter* (dPaPoF_c::*emitterFunc)(int, int);
|
||||
|
||||
u8 getTypeFour(int param_0, int param_1) const {
|
||||
return (this->*m_typeFourData[param_0])(param_1);
|
||||
}
|
||||
JPABaseEmitter* getEmitterFour(int param_0, int param_1, int param_2) {
|
||||
return (this->*m_emitterFourData[param_0])(param_1, param_2);
|
||||
}
|
||||
|
||||
static effTypeFunc m_typeFourData[];
|
||||
static emitterFunc m_emitterFourData[];
|
||||
|
||||
|
||||
Reference in New Issue
Block a user