mirror of https://github.com/zeldaret/tp.git
181 lines
5.9 KiB
C++
181 lines
5.9 KiB
C++
#ifndef D_A_MG_ROD_H
|
|
#define D_A_MG_ROD_H
|
|
|
|
#include "Z2AudioLib/Z2Creature.h"
|
|
#include "d/actor/d_a_mg_fish.h"
|
|
#include "d/d_bg_s_acch.h"
|
|
#include "d/d_cc_d.h"
|
|
#include "d/d_msg_flow.h"
|
|
#include "f_op/f_op_actor_mng.h"
|
|
|
|
struct mg_rod_s {
|
|
/* 0x0 */ u8 field_0x0[0x14 - 0x0];
|
|
/* 0x14 */ void* field_0x14;
|
|
/* 0x18 */ u8 field_0x18[0x2E - 0x18];
|
|
/* 0x2E */ s16 field_0x2e;
|
|
/* 0x30 */ s16 field_0x30;
|
|
/* 0x32 */ u8 field_0x32[0x54 - 0x32];
|
|
/* 0x54 */ u32 field_0x54;
|
|
/* 0x58 */ u8 field_0x58[0xC0 - 0x58];
|
|
};
|
|
|
|
struct mg_line_s {
|
|
/* 0x0 */ cXyz field_0x0[100];
|
|
};
|
|
|
|
struct mg_hook_s {
|
|
/* 804BAF78 */ ~mg_hook_s();
|
|
/* 804BAFD8 */ mg_hook_s();
|
|
|
|
/* 0x00 */ cXyz field_0x0[2];
|
|
/* 0x18 */ u8 field_0x18[0x20 - 0x18];
|
|
};
|
|
|
|
struct wd_ss;
|
|
|
|
/**
|
|
* @ingroup actors-items
|
|
* @class dmg_rod_class
|
|
* @brief Fishing Rod
|
|
*
|
|
* @details
|
|
*
|
|
*/
|
|
class dmg_rod_class : public fopAc_ac_c {
|
|
public:
|
|
/* 804BAC0C */ dmg_rod_class();
|
|
|
|
f32 getRodStickX() { return mRodStickX; }
|
|
f32 getRodStickY() { return mRodStickY; }
|
|
bool checkRodEquipPermission() { return field_0x1514 == 0; }
|
|
bool checkReelSpin() { return field_0x14f0 != 0; }
|
|
|
|
/* 0x0568 */ u8 field_0x568[0x57A - 0x568];
|
|
/* 0x057A */ s16 field_0x57a;
|
|
/* 0x057C */ u8 field_0x57c[0x57E - 0x57C];
|
|
/* 0x057E */ s16 field_0x57e;
|
|
/* 0x0580 */ s16 field_0x580;
|
|
/* 0x0582 */ u8 field_0x582[0x584 - 0x582];
|
|
/* 0x0584 */ s16 field_0x584;
|
|
/* 0x0586 */ u8 field_0x586[0x590 - 0x586];
|
|
/* 0x0590 */ f32 field_0x590;
|
|
/* 0x0594 */ u8 field_0x594[0x5A4 - 0x594];
|
|
/* 0x05A4 */ mg_rod_s field_0x5a4;
|
|
/* 0x0664 */ u8 field_0x664[0x6AC - 0x664];
|
|
/* 0x06AC */ cXyz field_0x6ac;
|
|
/* 0x06B8 */ cXyz field_0x6b8;
|
|
/* 0x06C4 */ u8 field_0x6c4[0x6C8 - 0x6C4];
|
|
/* 0x06C8 */ cXyz field_0x6c8;
|
|
/* 0x06D4 */ cXyz field_0x6d4;
|
|
/* 0x06E0 */ s16 field_0x6e0;
|
|
/* 0x06E2 */ u8 field_0x6e2[0x6EC - 0x6E2];
|
|
/* 0x06EC */ cXyz field_0x6ec;
|
|
/* 0x06F8 */ f32 field_0x6f8;
|
|
/* 0x06FC */ u8 field_0x6fc[0x71C - 0x6FC];
|
|
/* 0x071C */ csXyz field_0x71c[6];
|
|
/* 0x0740 */ u8 field_0x740[0x744 - 0x740];
|
|
/* 0x0744 */ cXyz field_0x744;
|
|
/* 0x0750 */ cXyz field_0x750;
|
|
/* 0x075C */ u8 field_0x75c[0x764 - 0x75C];
|
|
/* 0x0764 */ cXyz field_0x764;
|
|
/* 0x0770 */ mg_line_s field_0x770;
|
|
/* 0x0C20 */ u8 field_0xc20[0xF5C - 0xC20];
|
|
/* 0x0F5C */ f32 field_0xf5c;
|
|
/* 0x0F60 */ f32 field_0xf60;
|
|
/* 0x0F64 */ f32 field_0xf64;
|
|
/* 0x0F68 */ u8 field_0xf68[0xF7C - 0xF68];
|
|
/* 0x0F7C */ s16 field_0xf7c;
|
|
/* 0x0F7E */ s16 field_0xf7e;
|
|
/* 0x0F80 */ s8 field_0xf80;
|
|
/* 0x0F81 */ u8 field_0xf81[0xFAC - 0xF81];
|
|
/* 0x0FAC */ mg_hook_s field_0xfac[2];
|
|
/* 0x0FEC */ u8 field_0xfec[0xFFC - 0xFEC];
|
|
/* 0x0FFC */ s16 field_0xffc;
|
|
/* 0x0FFE */ u8 field_0xffe[2];
|
|
/* 0x1000 */ s16 field_0x1000;
|
|
/* 0x1002 */ u8 field_0x1002[2];
|
|
/* 0x1004 */ s16 field_0x1004;
|
|
/* 0x1006 */ s16 field_0x1006;
|
|
/* 0x1008 */ s8 field_0x1008;
|
|
/* 0x1009 */ s8 field_0x1009;
|
|
/* 0x100A */ s8 field_0x100a;
|
|
/* 0x100B */ u8 field_0x100b[1];
|
|
/* 0x100C */ u8 field_0x100c;
|
|
/* 0x100D */ s8 field_0x100d;
|
|
/* 0x100E */ u8 field_0x100e[1];
|
|
/* 0x100F */ s8 field_0x100f;
|
|
/* 0x1010 */ u8 field_0x1010[0x102C - 0x1010];
|
|
/* 0x102C */ s8 field_0x102c;
|
|
/* 0x102D */ s8 field_0x102d;
|
|
/* 0x102E */ u8 field_0x102e[0x1060 - 0x102E];
|
|
/* 0x1060 */ cXyz mHookPosition;
|
|
/* 0x106C */ cXyz field_0x106c;
|
|
/* 0x1078 */ cXyz field_0x1078;
|
|
/* 0x1084 */ csXyz field_0x1084;
|
|
/* 0x108A */ u8 field_0x108a[0x1090 - 0x108A];
|
|
/* 0x1090 */ f32 field_0x1090;
|
|
/* 0x1094 */ u8 field_0x1094[0x10A4 - 0x1094];
|
|
/* 0x10A4 */ s8 field_0x10a4;
|
|
/* 0x10A5 */ s8 field_0x10a5;
|
|
/* 0x10A6 */ s8 field_0x10a6;
|
|
/* 0x10A7 */ s8 field_0x10a7;
|
|
/* 0x10A8 */ s8 field_0x10a8;
|
|
/* 0x10A9 */ s8 field_0x10a9;
|
|
/* 0x10AA */ s8 field_0x10aa;
|
|
/* 0x10AB */ u8 field_0x10ab;
|
|
/* 0x10AC */ s32 mFishId;
|
|
/* 0x10B0 */ s16 field_0x10b0;
|
|
/* 0x10B2 */ u8 field_0x10b2[2];
|
|
/* 0x10B4 */ Z2Creature field_0x10b4;
|
|
/* 0x1144 */ u8 field_0x1144[0x114A - 0x1144];
|
|
/* 0x114A */ s16 field_0x114a;
|
|
/* 0x114C */ s16 field_0x114c;
|
|
/* 0x114E */ u8 field_0x114e[0x1178 - 0x114E];
|
|
/* 0x1178 */ u32 field_0x1178;
|
|
/* 0x117C */ u8 field_0x117c[0x1190 - 0x117C];
|
|
/* 0x1190 */ dBgS_AcchCir field_0x1190;
|
|
/* 0x11D0 */ dBgS_ObjAcch field_0x11d0;
|
|
/* 0x13A8 */ u8 field_0x13a8[0x13B4 - 0x13A8];
|
|
/* 0x13B4 */ s16 field_0x13b4;
|
|
/* 0x13B6 */ s16 field_0x13b6;
|
|
/* 0x13B8 */ u8 field_0x13b8[0x1408 - 0x13B8];
|
|
/* 0x1408 */ f32 field_0x1408;
|
|
/* 0x140C */ u8 field_0x140c[0x1410 - 0x140C];
|
|
/* 0x1410 */ f32 field_0x1410;
|
|
/* 0x1414 */ u8 field_0x1414[0x146D - 0x1414];
|
|
/* 0x146D */ s8 field_0x146d;
|
|
/* 0x146E */ u8 field_0x146e[0x1474 - 0x146E];
|
|
/* 0x1474 */ dMsgFlow_c mMsgFlow;
|
|
/* 0x14C0 */ u8 field_0x14c0[0x14C2 - 0x14C0];
|
|
/* 0x14C2 */ s16 field_0x14c2;
|
|
/* 0x14C4 */ u8 field_0x14c4[0x14C8 - 0x14C4];
|
|
/* 0x14C8 */ f32 mRodStickX;
|
|
/* 0x14CC */ f32 mRodStickY;
|
|
/* 0x14D0 */ u8 field_0x14d0[0x14D8 - 0x14D0];
|
|
/* 0x14D8 */ f32 field_0x14d8;
|
|
/* 0x14DC */ f32 field_0x14dc;
|
|
/* 0x14E0 */ u8 field_0x14e0[0x14F0 - 0x14E0];
|
|
/* 0x14F0 */ s32 field_0x14f0;
|
|
/* 0x14F4 */ u8 field_0x14f4[0x14FC - 0x14F4];
|
|
/* 0x14F4 */ s16 field_0x14fc;
|
|
/* 0x14F4 */ u8 field_0x14fe[0x1508 - 0x14FE];
|
|
/* 0x1508 */ f32 field_0x1508;
|
|
/* 0x150C */ u8 field_0x150c[0x1514 - 0x150C];
|
|
/* 0x1514 */ u8 field_0x1514;
|
|
/* 0x1515 */ u8 field_0x1515;
|
|
/* 0x1516 */ u8 field_0x1516[0x1518 - 0x1516];
|
|
/* 0x1518 */ dCcD_Stts field_0x1518;
|
|
/* 0x1554 */ dCcD_Sph field_0x1554;
|
|
/* 0x168C */ u8 field_0x168c;
|
|
};
|
|
|
|
STATIC_ASSERT(sizeof(dmg_rod_class) == 0x1690);
|
|
|
|
class dmg_rod_HIO_c {
|
|
public:
|
|
/* 804A95EC */ dmg_rod_HIO_c();
|
|
/* 804BB070 */ ~dmg_rod_HIO_c();
|
|
};
|
|
|
|
#endif /* D_A_MG_ROD_H */
|