mirror of https://github.com/zeldaret/tp.git
d_a_coach_fire, d_a_obj_kiPot, d_a_obj_lv4prelvtr done (#2259)
This commit is contained in:
parent
ee09fdf915
commit
bcb70e1576
|
|
@ -5,11 +5,11 @@ create_init__13daCoachFire_cFv = .text:0x00000078; // type:function size:0xD0 sc
|
|||
initBaseMtx__13daCoachFire_cFv = .text:0x00000148; // type:function size:0x60 scope:global
|
||||
setBaseMtx__13daCoachFire_cFv = .text:0x000001A8; // type:function size:0x84 scope:global
|
||||
initCcSphere__13daCoachFire_cFv = .text:0x0000022C; // type:function size:0x70 scope:global
|
||||
daCoachFire_Draw__FP13daCoachFire_c = .text:0x0000029C; // type:function size:0x104 scope:global
|
||||
daCoachFire_Execute__FP13daCoachFire_c = .text:0x000003A0; // type:function size:0x1F4 scope:global
|
||||
daCoachFire_IsDelete__FP13daCoachFire_c = .text:0x00000594; // type:function size:0x8 scope:global
|
||||
daCoachFire_Delete__FP13daCoachFire_c = .text:0x0000059C; // type:function size:0x124 scope:global
|
||||
daCoachFire_Create__FP10fopAc_ac_c = .text:0x000006C0; // type:function size:0xEC scope:global
|
||||
daCoachFire_Draw__FP13daCoachFire_c = .text:0x0000029C; // type:function size:0x104 scope:local
|
||||
daCoachFire_Execute__FP13daCoachFire_c = .text:0x000003A0; // type:function size:0x1F4 scope:local
|
||||
daCoachFire_IsDelete__FP13daCoachFire_c = .text:0x00000594; // type:function size:0x8 scope:local
|
||||
daCoachFire_Delete__FP13daCoachFire_c = .text:0x0000059C; // type:function size:0x124 scope:local
|
||||
daCoachFire_Create__FP10fopAc_ac_c = .text:0x000006C0; // type:function size:0xEC scope:local
|
||||
__dt__8cM3dGSphFv = .text:0x000007AC; // type:function size:0x48 scope:global
|
||||
__dt__8cM3dGAabFv = .text:0x000007F4; // type:function size:0x48 scope:global
|
||||
__dt__10dCcD_GSttsFv = .text:0x0000083C; // type:function size:0x5C scope:global
|
||||
|
|
@ -27,7 +27,7 @@ ccSphSrc$localstatic3$initCcSphere__13daCoachFire_cFv = .rodata:0x00000020; // t
|
|||
@3912 = .rodata:0x00000064; // type:object size:0x4 scope:local
|
||||
@3913 = .rodata:0x00000068; // type:object size:0x4 scope:local data:string
|
||||
@stringBase0 = .rodata:0x0000006C; // type:object size:0x6 scope:local data:string_table
|
||||
l_daCoachFire_Method = .data:0x00000000; // type:object size:0x20 scope:global
|
||||
l_daCoachFire_Method = .data:0x00000000; // type:object size:0x20 scope:local
|
||||
g_profile_COACH_FIRE = .data:0x00000020; // type:object size:0x30 scope:global
|
||||
__vt__10cCcD_GStts = .data:0x00000050; // type:object size:0xC scope:global
|
||||
__vt__10dCcD_GStts = .data:0x0000005C; // type:object size:0xC scope:global
|
||||
|
|
|
|||
|
|
@ -14,10 +14,10 @@ modeWait__9daKiPot_cFv = .text:0x00000360; // type:function size:0x88 scope:glob
|
|||
chkEvent__9daKiPot_cFv = .text:0x000003E8; // type:function size:0x50 scope:global
|
||||
Draw__9daKiPot_cFv = .text:0x00000438; // type:function size:0x8 scope:global
|
||||
Delete__9daKiPot_cFv = .text:0x00000440; // type:function size:0x8 scope:global
|
||||
daKiPot_Draw__FP9daKiPot_c = .text:0x00000448; // type:function size:0x20 scope:global
|
||||
daKiPot_Execute__FP9daKiPot_c = .text:0x00000468; // type:function size:0x20 scope:global
|
||||
daKiPot_Delete__FP9daKiPot_c = .text:0x00000488; // type:function size:0x20 scope:global
|
||||
daKiPot_Create__FP10fopAc_ac_c = .text:0x000004A8; // type:function size:0x20 scope:global
|
||||
daKiPot_Draw__FP9daKiPot_c = .text:0x00000448; // type:function size:0x20 scope:local
|
||||
daKiPot_Execute__FP9daKiPot_c = .text:0x00000468; // type:function size:0x20 scope:local
|
||||
daKiPot_Delete__FP9daKiPot_c = .text:0x00000488; // type:function size:0x20 scope:local
|
||||
daKiPot_Create__FP10fopAc_ac_c = .text:0x000004A8; // type:function size:0x20 scope:local
|
||||
__dt__13daKiPot_HIO_cFv = .text:0x000004C8; // type:function size:0x5C scope:global
|
||||
__sinit_d_a_obj_kiPot_cpp = .text:0x00000524; // type:function size:0x3C scope:local
|
||||
_ctors = .ctors:0x00000000; // type:label scope:global
|
||||
|
|
@ -28,14 +28,14 @@ _dtors = .dtors:0x00000000; // type:label scope:global
|
|||
@3711 = .rodata:0x00000004; // type:object size:0x4 scope:local
|
||||
@3712 = .rodata:0x00000008; // type:object size:0x4 scope:local
|
||||
@3713 = .rodata:0x0000000C; // type:object size:0x4 scope:local
|
||||
l_cull_box = .data:0x00000000; // type:object size:0x18 scope:global
|
||||
l_cull_box = .data:0x00000000; // type:object size:0x18 scope:local
|
||||
@3688 = .data:0x00000018; // type:object size:0xC scope:local data:4byte
|
||||
mode_proc$3687 = .data:0x00000024; // type:object size:0xC scope:local data:4byte
|
||||
l_daKiPot_Method = .data:0x00000030; // type:object size:0x20 scope:global
|
||||
l_daKiPot_Method = .data:0x00000030; // type:object size:0x20 scope:local
|
||||
g_profile_Obj_KiPot = .data:0x00000050; // type:object size:0x30 scope:global
|
||||
__vt__13daKiPot_HIO_c = .data:0x00000080; // type:object size:0xC scope:global
|
||||
__vt__14mDoHIO_entry_c = .data:0x0000008C; // type:object size:0xC scope:global
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
@3620 = .bss:0x00000008; // type:object size:0xC scope:local
|
||||
l_HIO = .bss:0x00000014; // type:object size:0x8 scope:global
|
||||
l_HIO = .bss:0x00000014; // type:object size:0x8 scope:local
|
||||
lbl_501_bss_1C = .bss:0x0000001C; // type:object size:0x1 data:byte
|
||||
|
|
|
|||
|
|
@ -5,23 +5,23 @@ create1st__14daObjPRElvtr_cFv = .text:0x00000078; // type:function size:0x90 sco
|
|||
setMtx__14daObjPRElvtr_cFv = .text:0x00000108; // type:function size:0x70 scope:global
|
||||
CreateHeap__14daObjPRElvtr_cFv = .text:0x00000178; // type:function size:0x70 scope:global
|
||||
Create__14daObjPRElvtr_cFv = .text:0x000001E8; // type:function size:0x68 scope:global
|
||||
searchObjSwTurn__FPvPv = .text:0x00000250; // type:function size:0x74 scope:global
|
||||
searchObjSwTurn__FPvPv = .text:0x00000250; // type:function size:0x74 scope:local
|
||||
Execute__14daObjPRElvtr_cFPPA3_A4_f = .text:0x000002C4; // type:function size:0x100 scope:global
|
||||
Draw__14daObjPRElvtr_cFv = .text:0x000003C4; // type:function size:0xA4 scope:global
|
||||
Delete__14daObjPRElvtr_cFv = .text:0x00000468; // type:function size:0x3C scope:global
|
||||
daObjPRElvtr_create1st__FP14daObjPRElvtr_c = .text:0x000004A4; // type:function size:0x60 scope:global
|
||||
daObjPRElvtr_MoveBGDelete__FP14daObjPRElvtr_c = .text:0x00000504; // type:function size:0x20 scope:global
|
||||
daObjPRElvtr_MoveBGExecute__FP14daObjPRElvtr_c = .text:0x00000524; // type:function size:0x20 scope:global
|
||||
daObjPRElvtr_MoveBGDraw__FP14daObjPRElvtr_c = .text:0x00000544; // type:function size:0x2C scope:global
|
||||
daObjPRElvtr_create1st__FP14daObjPRElvtr_c = .text:0x000004A4; // type:function size:0x60 scope:local
|
||||
daObjPRElvtr_MoveBGDelete__FP14daObjPRElvtr_c = .text:0x00000504; // type:function size:0x20 scope:local
|
||||
daObjPRElvtr_MoveBGExecute__FP14daObjPRElvtr_c = .text:0x00000524; // type:function size:0x20 scope:local
|
||||
daObjPRElvtr_MoveBGDraw__FP14daObjPRElvtr_c = .text:0x00000544; // type:function size:0x2C scope:local
|
||||
__dt__14daObjPRElvtr_cFv = .text:0x00000570; // type:function size:0x70 scope:global
|
||||
_ctors = .ctors:0x00000000; // type:label scope:global
|
||||
_dtors = .dtors:0x00000000; // type:label scope:global
|
||||
l_cull_box = .rodata:0x00000000; // type:object size:0x18 scope:global
|
||||
l_cull_box = .rodata:0x00000000; // type:object size:0x18 scope:local
|
||||
@3694 = .rodata:0x00000018; // type:object size:0x4 scope:local data:float
|
||||
@3695 = .rodata:0x0000001C; // type:object size:0x4 scope:local data:float
|
||||
@3697 = .rodata:0x00000020; // type:object size:0x8 scope:local data:double
|
||||
@stringBase0 = .rodata:0x00000028; // type:object size:0x8 scope:local data:string_table
|
||||
l_arcName = .data:0x00000000; // type:object size:0x4 scope:global
|
||||
daObjPRElvtr_METHODS = .data:0x00000004; // type:object size:0x20 scope:global
|
||||
l_arcName = .data:0x00000000; // type:object size:0x4 scope:local
|
||||
daObjPRElvtr_METHODS = .data:0x00000004; // type:object size:0x20 scope:local
|
||||
g_profile_Obj_PRElvtr = .data:0x00000024; // type:object size:0x30 scope:global
|
||||
__vt__14daObjPRElvtr_c = .data:0x00000054; // type:object size:0x2C scope:global
|
||||
|
|
|
|||
|
|
@ -1527,7 +1527,7 @@ config.libs = [
|
|||
ActorRel(NonMatching, "d_a_balloon_2D"),
|
||||
ActorRel(NonMatching, "d_a_bullet"),
|
||||
ActorRel(NonMatching, "d_a_coach_2D"),
|
||||
ActorRel(NonMatching, "d_a_coach_fire"),
|
||||
ActorRel(Matching, "d_a_coach_fire"),
|
||||
ActorRel(NonMatching, "d_a_cow"),
|
||||
ActorRel(NonMatching, "d_a_cstatue"),
|
||||
ActorRel(Equivalent, "d_a_do"),
|
||||
|
|
@ -1866,7 +1866,7 @@ config.libs = [
|
|||
ActorRel(NonMatching, "d_a_obj_key"),
|
||||
ActorRel(NonMatching, "d_a_obj_keyhole"),
|
||||
ActorRel(Matching, "d_a_obj_ki"),
|
||||
ActorRel(NonMatching, "d_a_obj_kiPot"),
|
||||
ActorRel(Matching, "d_a_obj_kiPot"),
|
||||
ActorRel(NonMatching, "d_a_obj_kita"),
|
||||
ActorRel(Matching, "d_a_obj_kjgjs"),
|
||||
ActorRel(Matching, "d_a_obj_kkanban"),
|
||||
|
|
@ -1901,7 +1901,7 @@ config.libs = [
|
|||
ActorRel(Matching, "d_a_obj_lv4digsand"),
|
||||
ActorRel(Matching, "d_a_obj_lv4floor"),
|
||||
ActorRel(Matching, "d_a_obj_lv4gear"),
|
||||
ActorRel(NonMatching, "d_a_obj_lv4prelvtr"),
|
||||
ActorRel(Matching, "d_a_obj_lv4prelvtr"),
|
||||
ActorRel(NonMatching, "d_a_obj_lv4prwall"),
|
||||
ActorRel(NonMatching, "d_a_obj_lv4sand"),
|
||||
ActorRel(Matching, "d_a_obj_lv5FloorBoard"),
|
||||
|
|
|
|||
|
|
@ -1,9 +1,21 @@
|
|||
#ifndef D_A_COACH_FIRE_H
|
||||
#define D_A_COACH_FIRE_H
|
||||
|
||||
#include "dolphin/types.h"
|
||||
#include "d/actor/d_a_npc_coach.h"
|
||||
#include "d/d_com_inf_game.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
|
||||
struct CoachFireAttr {
|
||||
f32 radius;
|
||||
f32 field_0x04;
|
||||
u8 field_0x08;
|
||||
// GXColorS10 color;
|
||||
u8 colorR;
|
||||
u8 colorG;
|
||||
u8 colorB;
|
||||
f32 pow;
|
||||
};
|
||||
|
||||
/**
|
||||
* @ingroup actors-unsorted
|
||||
* @class daCoachFire_c
|
||||
|
|
@ -19,13 +31,27 @@ public:
|
|||
/* 80657CA8 */ void setBaseMtx();
|
||||
/* 80657D2C */ void initCcSphere();
|
||||
|
||||
static u8 const M_attr[16];
|
||||
const CoachFireAttr& attr() { return M_attr; }
|
||||
|
||||
static CoachFireAttr const M_attr;
|
||||
|
||||
inline ~daCoachFire_c();
|
||||
|
||||
inline int draw();
|
||||
inline void setCcSphere();
|
||||
inline void setNoHitTimer();
|
||||
inline int execute();
|
||||
|
||||
private:
|
||||
/* 0x568 */ u8 field_0x568[0x714 - 0x568];
|
||||
/* 0x568 */ LIGHT_INFLUENCE mLightInfluence;
|
||||
/* 0x588 */ dCcD_Stts mStts;
|
||||
/* 0x5C4 */ dCcD_Sph mSph;
|
||||
/* 0x6FC */ Mtx* mpMtx;
|
||||
/* 0x700 */ cXyz mPos;
|
||||
/* 0x70C */ u32 mParticleKey;
|
||||
/* 0x710 */ int noHitTimer;
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daCoachFire_c) == 0x714);
|
||||
|
||||
|
||||
#endif /* D_A_COACH_FIRE_H */
|
||||
|
|
|
|||
|
|
@ -15,7 +15,7 @@ class daNpcCoach_c : public fopAc_ac_c {
|
|||
public:
|
||||
/* 8099DA60 */ void hitFireArrow(cXyz);
|
||||
/* 8099DBA4 */ void deleteFireArrow(unsigned int);
|
||||
/* 8099DCE8 */ void deleteFireArrowFromList(unsigned int);
|
||||
/* 8099DCE8 */ bool deleteFireArrowFromList(unsigned int);
|
||||
/* 8099DD28 */ void setPosAngle(cXyz&, csXyz&);
|
||||
/* 8099DD7C */ void ctrlJointHorse(J3DJoint*, J3DModel*);
|
||||
/* 8099DE18 */ void initCoachPosition(Vec&, SVec&);
|
||||
|
|
@ -43,9 +43,18 @@ public:
|
|||
/* 809A46C4 */ void initCoachBlazing();
|
||||
/* 809A48A8 */ daNpcCoach_c();
|
||||
|
||||
bool checkCoachBlazing() { return field_0x1dc4; }
|
||||
Mtx* getCoachMtx() { return &field_0x2490; }
|
||||
|
||||
static u8 const M_attr[160];
|
||||
private:
|
||||
/* 0x568 */ u8 field_0x568[0x2570 - 0x568];
|
||||
/* 0x568 */ u8 field_0x568[0x1dc4 - 0x568];
|
||||
/* 0x1DC4 */ bool field_0x1dc4;
|
||||
/* 0x1DC5 */ u8 field_0x1dc5[0x247c - 0x1dc5];
|
||||
/* 0x247C */ u32 field_0x247c[4];
|
||||
/* 0x248C */ u8 field_0x248c[0x2490 - 0x248c];
|
||||
/* 0x2490 */ Mtx field_0x2490;
|
||||
/* 0x24C0 */ u8 field_0x254c[0x2570 - 0x24c0];
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daNpcCoach_c) == 0x2570);
|
||||
|
|
|
|||
|
|
@ -14,26 +14,32 @@
|
|||
class daKiPot_c : public fopAc_ac_c {
|
||||
public:
|
||||
/* 80C44D78 */ void setBaseMtx();
|
||||
/* 80C44DD0 */ void create();
|
||||
/* 80C44E7C */ void Execute();
|
||||
/* 80C44DD0 */ int create();
|
||||
/* 80C44E7C */ int Execute();
|
||||
/* 80C44EF8 */ void procMain();
|
||||
/* 80C44F74 */ void init_modeWait();
|
||||
/* 80C44F80 */ void modeWait();
|
||||
/* 80C45008 */ void chkEvent();
|
||||
/* 80C45058 */ bool Draw();
|
||||
/* 80C45060 */ bool Delete();
|
||||
/* 80C45008 */ s32 chkEvent();
|
||||
/* 80C45058 */ int Draw();
|
||||
/* 80C45060 */ int Delete();
|
||||
|
||||
private:
|
||||
/* 0x568 */ u8 field_0x568[0x578 - 0x568];
|
||||
/* 0x568 */ u8 field_0x568[0x574 - 0x568];
|
||||
/* 0x574 */ u8 mMode;
|
||||
/* 0x575 */ u8 field_0x575;
|
||||
/* 0x576 */ u8 field_0x576[0x578 - 0x576];
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daKiPot_c) == 0x578);
|
||||
|
||||
class daKiPot_HIO_c {
|
||||
class daKiPot_HIO_c : public mDoHIO_entry_c {
|
||||
public:
|
||||
/* 80C44D0C */ daKiPot_HIO_c();
|
||||
/* 80C450E8 */ ~daKiPot_HIO_c();
|
||||
/* 80C450E8 */ virtual ~daKiPot_HIO_c() {};
|
||||
|
||||
/* 0x00 */ /* vtable */
|
||||
|
||||
/* 0x06 */ u8 field_0x06;
|
||||
};
|
||||
|
||||
|
||||
#endif /* D_A_OBJ_KIPOT_H */
|
||||
|
|
|
|||
|
|
@ -1,6 +1,8 @@
|
|||
#ifndef D_A_OBJ_LV4PRELVTR_H
|
||||
#define D_A_OBJ_LV4PRELVTR_H
|
||||
|
||||
#include "d/actor/d_a_obj_swturn.h"
|
||||
#include "d/d_bg_s_movebg_actor.h"
|
||||
#include "f_op/f_op_actor_mng.h"
|
||||
|
||||
/**
|
||||
|
|
@ -11,22 +13,26 @@
|
|||
* @details
|
||||
*
|
||||
*/
|
||||
class daObjPRElvtr_c : public fopAc_ac_c {
|
||||
class daObjPRElvtr_c : public dBgS_MoveBgActor, public request_of_phase_process_class {
|
||||
public:
|
||||
/* 80C685F8 */ void create1st();
|
||||
/* 80C685F8 */ int create1st();
|
||||
/* 80C68688 */ void setMtx();
|
||||
/* 80C686F8 */ void CreateHeap();
|
||||
/* 80C68768 */ void Create();
|
||||
/* 80C68844 */ void Execute(f32 (**)[3][4]);
|
||||
/* 80C68944 */ void Draw();
|
||||
/* 80C689E8 */ void Delete();
|
||||
/* 80C68AF0 */ ~daObjPRElvtr_c();
|
||||
/* 80C686F8 */ int CreateHeap();
|
||||
/* 80C68768 */ int Create();
|
||||
/* 80C68844 */ int Execute(Mtx**);
|
||||
/* 80C68944 */ int Draw();
|
||||
/* 80C689E8 */ int Delete();
|
||||
/* 80C68AF0 */ virtual ~daObjPRElvtr_c() {}
|
||||
|
||||
int getSwNo() { return fopAcM_GetParamBit(this, 0, 8); }
|
||||
|
||||
private:
|
||||
/* 0x568 */ u8 field_0x568[0x610 - 0x568];
|
||||
/* 0x5A8 */ Mtx mMtx1;
|
||||
/* 0x5D8 */ Mtx mMtx2;
|
||||
/* 0x608 */ J3DModel* mpModel;
|
||||
/* 0x60C */ int field_0x60c;
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daObjPRElvtr_c) == 0x610);
|
||||
|
||||
|
||||
#endif /* D_A_OBJ_LV4PRELVTR_H */
|
||||
|
|
|
|||
|
|
@ -29,11 +29,23 @@ public:
|
|||
/* 80D01EB0 */ void Draw();
|
||||
/* 80D01F58 */ void Delete();
|
||||
|
||||
int getSwNo() { return fopAcM_GetParamBit(this, 0, 8); }
|
||||
int getSwNo2() { return fopAcM_GetParamBit(this, 0x14, 8); }
|
||||
int getRotateAngle() {
|
||||
return (field_0x5ad == NULL) ? field_0x5ba + field_0x5c4 * 0x4000 :
|
||||
field_0x5ba + (field_0x5c4 << 0xe) / 3;
|
||||
}
|
||||
|
||||
private:
|
||||
/* 0x568 */ u8 field_0x568[0x5e0 - 0x568];
|
||||
/* 0x568 */ u8 field_0x568[0x5ad - 0x568];
|
||||
/* 0x5AD */ bool field_0x5ad;
|
||||
/* 0x5AE */ u8 field_0x5ae[0x5ba - 0x5ae];
|
||||
/* 0x5BA */ s16 field_0x5ba;
|
||||
/* 0x5BC */ u8 field_0x5bc[0x5c4 - 0x5bc];
|
||||
/* 0x5C4 */ s16 field_0x5c4;
|
||||
/* 0x5C6 */ u8 field_0x5c6[0x5e0 - 0x5c6];
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(daObjSwTurn_c) == 0x5e0);
|
||||
|
||||
|
||||
#endif /* D_A_OBJ_SWTURN_H */
|
||||
|
|
|
|||
|
|
@ -1,282 +1,202 @@
|
|||
/**
|
||||
* @file d_a_coach_fire.cpp
|
||||
*
|
||||
*/
|
||||
*
|
||||
*/
|
||||
|
||||
#include "d/actor/d_a_coach_fire.h"
|
||||
#include "dol2asm.h"
|
||||
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void create_init__13daCoachFire_cFv();
|
||||
extern "C" void initBaseMtx__13daCoachFire_cFv();
|
||||
extern "C" void setBaseMtx__13daCoachFire_cFv();
|
||||
extern "C" void initCcSphere__13daCoachFire_cFv();
|
||||
extern "C" static void daCoachFire_Draw__FP13daCoachFire_c();
|
||||
extern "C" static void daCoachFire_Execute__FP13daCoachFire_c();
|
||||
extern "C" static bool daCoachFire_IsDelete__FP13daCoachFire_c();
|
||||
extern "C" static void daCoachFire_Delete__FP13daCoachFire_c();
|
||||
extern "C" static void daCoachFire_Create__FP10fopAc_ac_c();
|
||||
extern "C" void __dt__8cM3dGSphFv();
|
||||
extern "C" void __dt__8cM3dGAabFv();
|
||||
extern "C" void __dt__10dCcD_GSttsFv();
|
||||
extern "C" void __dt__10cCcD_GSttsFv();
|
||||
extern "C" u8 const M_attr__13daCoachFire_c[16];
|
||||
extern "C" extern char const* const d_a_coach_fire__stringBase0;
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void __ct__10fopAc_ac_cFv();
|
||||
extern "C" void __dt__10fopAc_ac_cFv();
|
||||
extern "C" void fopAcM_setStageLayer__FPv();
|
||||
extern "C" void fopAcM_delete__FP10fopAc_ac_c();
|
||||
extern "C" void fopAcM_setCullSizeBox__FP10fopAc_ac_cffffff();
|
||||
extern "C" void fpcEx_SearchByID__FUi();
|
||||
extern "C" void getEmitter__Q213dPa_control_c7level_cFUl();
|
||||
extern "C" void
|
||||
set__13dPa_control_cFUlUcUsPC4cXyzPC12dKy_tevstr_cPC5csXyzPC4cXyzUcP18dPa_levelEcallBackScPC8_GXColorPC8_GXColorPC4cXyzf();
|
||||
extern "C" void LockonTarget__12dAttention_cFl();
|
||||
extern "C" void LockonTruth__12dAttention_cFv();
|
||||
extern "C" void __ct__10dCcD_GSttsFv();
|
||||
extern "C" void Init__9dCcD_SttsFiiP10fopAc_ac_c();
|
||||
extern "C" void __ct__12dCcD_GObjInfFv();
|
||||
extern "C" void __dt__12dCcD_GObjInfFv();
|
||||
extern "C" void ChkTgHit__12dCcD_GObjInfFv();
|
||||
extern "C" void Set__8dCcD_SphFRC11dCcD_SrcSph();
|
||||
extern "C" void dKy_plight_set__FP15LIGHT_INFLUENCE();
|
||||
extern "C" void dKy_plight_cut__FP15LIGHT_INFLUENCE();
|
||||
extern "C" void Set__4cCcSFP8cCcD_Obj();
|
||||
extern "C" void __mi__4cXyzCFRC3Vec();
|
||||
extern "C" void SetC__8cM3dGSphFRC4cXyz();
|
||||
extern "C" void SetR__8cM3dGSphFf();
|
||||
extern "C" void __dl__FPv();
|
||||
extern "C" void _savegpr_29();
|
||||
extern "C" void _restgpr_29();
|
||||
extern "C" extern void* __vt__8dCcD_Sph[36];
|
||||
extern "C" extern void* __vt__9dCcD_Stts[11];
|
||||
extern "C" extern void* __vt__12cCcD_SphAttr[25];
|
||||
extern "C" extern void* __vt__14cCcD_ShapeAttr[22];
|
||||
extern "C" extern void* __vt__9cCcD_Stts[8];
|
||||
extern "C" u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
extern "C" u8 mParticleTracePCB__13dPa_control_c[4 + 4 /* padding */];
|
||||
extern "C" void deleteFireArrow__12daNpcCoach_cFUi();
|
||||
extern "C" void deleteFireArrowFromList__12daNpcCoach_cFUi();
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 806583E8-806583F8 000000 0010+00 3/3 0/0 0/0 .rodata M_attr__13daCoachFire_c */
|
||||
SECTION_RODATA u8 const daCoachFire_c::M_attr[16] = {
|
||||
0x42, 0x48, 0x00, 0x00, 0x40, 0x80, 0x00, 0x00, 0x24, 0xFF, 0x64, 0x00, 0x44, 0x2F, 0x00, 0x00,
|
||||
CoachFireAttr const daCoachFire_c::M_attr = {
|
||||
50.0f, // radius
|
||||
4.0f, // field_0x04
|
||||
36, // field_0x08
|
||||
255, // colorR
|
||||
100, // colorG
|
||||
0, // colorB
|
||||
700.0f, // pow
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x806583E8, &daCoachFire_c::M_attr);
|
||||
|
||||
/* 806583F8-806583FC 000010 0004+00 0/1 0/0 0/0 .rodata @3812 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3812 = -100.0f;
|
||||
COMPILER_STRIP_GATE(0x806583F8, &lit_3812);
|
||||
#pragma pop
|
||||
|
||||
/* 806583FC-80658400 000014 0004+00 0/1 0/0 0/0 .rodata @3813 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3813 = -10.0f;
|
||||
COMPILER_STRIP_GATE(0x806583FC, &lit_3813);
|
||||
#pragma pop
|
||||
|
||||
/* 80658400-80658404 000018 0004+00 0/1 0/0 0/0 .rodata @3814 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3814 = 100.0f;
|
||||
COMPILER_STRIP_GATE(0x80658400, &lit_3814);
|
||||
#pragma pop
|
||||
|
||||
/* 80658404-80658408 00001C 0004+00 0/1 0/0 0/0 .rodata @3815 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3815 = 200.0f;
|
||||
COMPILER_STRIP_GATE(0x80658404, &lit_3815);
|
||||
#pragma pop
|
||||
|
||||
/* 80657B78-80657C48 000078 00D0+00 1/1 0/0 0/0 .text create_init__13daCoachFire_cFv */
|
||||
void daCoachFire_c::create_init() {
|
||||
// NONMATCHING
|
||||
fopAcM_setStageLayer(this);
|
||||
fopAcM_setCullSizeBox(this, -100.0, -10.0, -100.0, 100.0, 200.0, 100.0);
|
||||
attention_info.flags = 0x101;
|
||||
attention_info.distances[fopAc_attn_LOCK_e] = 0x24;
|
||||
attention_info.distances[fopAc_attn_CHECK_e] = 0x22;
|
||||
mLightInfluence.mPosition = current.pos;
|
||||
mLightInfluence.mColor.r = attr().colorR;
|
||||
mLightInfluence.mColor.g = attr().colorG;
|
||||
mLightInfluence.mColor.b = attr().colorB;
|
||||
mLightInfluence.mPow = attr().pow;
|
||||
dKy_plight_set(&mLightInfluence);
|
||||
mpMtx = NULL;
|
||||
initBaseMtx();
|
||||
initCcSphere();
|
||||
}
|
||||
|
||||
/* 80657C48-80657CA8 000148 0060+00 1/1 0/0 0/0 .text initBaseMtx__13daCoachFire_cFv */
|
||||
void daCoachFire_c::initBaseMtx() {
|
||||
// NONMATCHING
|
||||
daNpcCoach_c* coach = (daNpcCoach_c*)fpcM_SearchByID(parentActorID);
|
||||
if (coach != NULL) {
|
||||
mPos = current.pos;
|
||||
mpMtx = coach->getCoachMtx();
|
||||
}
|
||||
setBaseMtx();
|
||||
}
|
||||
|
||||
/* 80657CA8-80657D2C 0001A8 0084+00 1/1 0/0 0/0 .text setBaseMtx__13daCoachFire_cFv */
|
||||
void daCoachFire_c::setBaseMtx() {
|
||||
// NONMATCHING
|
||||
if (mpMtx != NULL) {
|
||||
mDoMtx_stack_c::copy(*mpMtx);
|
||||
mDoMtx_stack_c::multVec(&mPos, ¤t.pos);
|
||||
attention_info.position = current.pos;
|
||||
eyePos = current.pos;
|
||||
}
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80658408-80658448 000020 0040+00 1/1 0/0 0/0 .rodata
|
||||
* ccSphSrc$localstatic3$initCcSphere__13daCoachFire_cFv */
|
||||
SECTION_RODATA static u8 const data_80658408[64] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x11, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x04, 0x00, 0x00, 0x00, 0x00,
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x42, 0x48, 0x00, 0x00,
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x80658408, &data_80658408);
|
||||
|
||||
/* 80657D2C-80657D9C 00022C 0070+00 1/1 0/0 0/0 .text initCcSphere__13daCoachFire_cFv */
|
||||
void daCoachFire_c::initCcSphere() {
|
||||
// NONMATCHING
|
||||
static const dCcD_SrcSph ccSphSrc = {
|
||||
{
|
||||
{0, {{AT_TYPE_0, 0, 0}, {0x00010000, 0x11}, 0}}, // mObj
|
||||
{dCcD_SE_NONE, 0, 0, 0, 0}, // mGObjAt
|
||||
{dCcD_SE_NONE, 0, 0, 0, 0x4}, // mGObjTg
|
||||
{0}, // mGObjCo
|
||||
}, // mObjInf
|
||||
{{{0.0f, 0.0f, 0.0f}, 50.0f}} // mSph
|
||||
}; // mSphAttr
|
||||
|
||||
mStts.Init(0xFF, 0xFF, this);
|
||||
mSph.Set(ccSphSrc);
|
||||
mSph.SetStts(&mStts);
|
||||
mSph.SetC(current.pos);
|
||||
mSph.SetR(attr().radius);
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80658448-8065844C 000060 0004+00 0/1 0/0 0/0 .rodata @3911 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3911 = 1.0f;
|
||||
COMPILER_STRIP_GATE(0x80658448, &lit_3911);
|
||||
#pragma pop
|
||||
|
||||
/* 8065844C-80658450 000064 0004+00 0/1 0/0 0/0 .rodata @3912 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static u8 const lit_3912[4] = {
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
0x00,
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x8065844C, &lit_3912);
|
||||
#pragma pop
|
||||
|
||||
/* 80658450-80658454 000068 0004+00 0/1 0/0 0/0 .rodata @3913 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3913 = 9.0f / 10.0f;
|
||||
COMPILER_STRIP_GATE(0x80658450, &lit_3913);
|
||||
#pragma pop
|
||||
int daCoachFire_c::draw() {
|
||||
mParticleKey = dComIfGp_particle_set(mParticleKey, 0x8113, ¤t.pos, NULL, NULL, NULL, 0xFF,
|
||||
NULL, -1, NULL, NULL, NULL);
|
||||
JPABaseEmitter* emitter = dComIfGp_particle_getEmitter(mParticleKey);
|
||||
if (emitter != NULL) {
|
||||
speed = current.pos - old.pos;
|
||||
speed.y = 0.0f;
|
||||
speed *= 0.9f;
|
||||
emitter->setParticleCallBackPtr(dPa_control_c::getParticleTracePCB());
|
||||
emitter->setUserWork((u32)(&speed));
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80657D9C-80657EA0 00029C 0104+00 1/0 0/0 0/0 .text daCoachFire_Draw__FP13daCoachFire_c
|
||||
*/
|
||||
static void daCoachFire_Draw(daCoachFire_c* param_0) {
|
||||
// NONMATCHING
|
||||
static int daCoachFire_Draw(daCoachFire_c* i_this) {
|
||||
return i_this->draw();
|
||||
}
|
||||
|
||||
void daCoachFire_c::setCcSphere() {
|
||||
if (noHitTimer != 0) {
|
||||
mSph.ClrTgHit();
|
||||
} else {
|
||||
mSph.SetC(current.pos);
|
||||
dComIfG_Ccsp()->Set(&mSph);
|
||||
}
|
||||
}
|
||||
|
||||
void daCoachFire_c::setNoHitTimer() {
|
||||
noHitTimer = 20;
|
||||
}
|
||||
|
||||
int daCoachFire_c::execute() {
|
||||
daNpcCoach_c* coach = (daNpcCoach_c*)fpcM_SearchByID(parentActorID);
|
||||
if (noHitTimer > 0) {
|
||||
noHitTimer = noHitTimer - 1;
|
||||
}
|
||||
if (mSph.ChkTgHit() && noHitTimer == 0) {
|
||||
if (coach != NULL) {
|
||||
coach->deleteFireArrow(fopAcM_GetID(this));
|
||||
}
|
||||
setNoHitTimer();
|
||||
}
|
||||
if (coach != NULL && coach->checkCoachBlazing()) {
|
||||
dAttention_c& attn = dComIfGp_getAttention();
|
||||
if (attn.LockonTruth()) {
|
||||
if (attn.LockonTarget(0) != this) {
|
||||
if (coach->deleteFireArrowFromList(fopAcM_GetID(this)) != NULL) {
|
||||
fopAcM_delete(this);
|
||||
}
|
||||
}
|
||||
} else if (coach->deleteFireArrowFromList(fopAcM_GetID(this)) != NULL) {
|
||||
fopAcM_delete(this);
|
||||
}
|
||||
}
|
||||
if (mpMtx != NULL) {
|
||||
mDoMtx_stack_c::copy(*mpMtx);
|
||||
mDoMtx_stack_c::multVec(&mPos, ¤t.pos);
|
||||
attention_info.position = current.pos;
|
||||
eyePos = current.pos;
|
||||
}
|
||||
setCcSphere();
|
||||
mLightInfluence.mPosition = current.pos;
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80657EA0-80658094 0003A0 01F4+00 1/0 0/0 0/0 .text daCoachFire_Execute__FP13daCoachFire_c */
|
||||
static void daCoachFire_Execute(daCoachFire_c* param_0) {
|
||||
// NONMATCHING
|
||||
static int daCoachFire_Execute(daCoachFire_c* i_this) {
|
||||
return i_this->execute();
|
||||
}
|
||||
|
||||
/* 80658094-8065809C 000594 0008+00 1/0 0/0 0/0 .text daCoachFire_IsDelete__FP13daCoachFire_c */
|
||||
static bool daCoachFire_IsDelete(daCoachFire_c* param_0) {
|
||||
static bool daCoachFire_IsDelete(daCoachFire_c* i_this) {
|
||||
return true;
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 8065845C-8065847C -00001 0020+00 1/0 0/0 0/0 .data l_daCoachFire_Method */
|
||||
static actor_method_class l_daCoachFire_Method = {
|
||||
(process_method_func)daCoachFire_Create__FP10fopAc_ac_c,
|
||||
(process_method_func)daCoachFire_Delete__FP13daCoachFire_c,
|
||||
(process_method_func)daCoachFire_Execute__FP13daCoachFire_c,
|
||||
(process_method_func)daCoachFire_IsDelete__FP13daCoachFire_c,
|
||||
(process_method_func)daCoachFire_Draw__FP13daCoachFire_c,
|
||||
};
|
||||
|
||||
/* 8065847C-806584AC -00001 0030+00 0/0 0/0 1/0 .data g_profile_COACH_FIRE */
|
||||
extern actor_process_profile_definition g_profile_COACH_FIRE = {
|
||||
fpcLy_CURRENT_e, // mLayerID
|
||||
3, // mListID
|
||||
fpcPi_CURRENT_e, // mListPrio
|
||||
PROC_COACH_FIRE, // mProcName
|
||||
&g_fpcLf_Method.base, // sub_method
|
||||
sizeof(daCoachFire_c), // mSize
|
||||
0, // mSizeOther
|
||||
0, // mParameters
|
||||
&g_fopAc_Method.base, // sub_method
|
||||
332, // mPriority
|
||||
&l_daCoachFire_Method, // sub_method
|
||||
0x00044000, // mStatus
|
||||
fopAc_ACTOR_e, // mActorType
|
||||
fopAc_CULLBOX_CUSTOM_e, // cullType
|
||||
};
|
||||
|
||||
/* 806584AC-806584B8 000050 000C+00 3/3 0/0 0/0 .data __vt__10cCcD_GStts */
|
||||
SECTION_DATA extern void* __vt__10cCcD_GStts[3] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)__dt__10cCcD_GSttsFv,
|
||||
};
|
||||
|
||||
/* 806584B8-806584C4 00005C 000C+00 2/2 0/0 0/0 .data __vt__10dCcD_GStts */
|
||||
SECTION_DATA extern void* __vt__10dCcD_GStts[3] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)__dt__10dCcD_GSttsFv,
|
||||
};
|
||||
|
||||
/* 806584C4-806584D0 000068 000C+00 3/3 0/0 0/0 .data __vt__8cM3dGAab */
|
||||
SECTION_DATA extern void* __vt__8cM3dGAab[3] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)__dt__8cM3dGAabFv,
|
||||
};
|
||||
|
||||
/* 806584D0-806584DC 000074 000C+00 3/3 0/0 0/0 .data __vt__8cM3dGSph */
|
||||
SECTION_DATA extern void* __vt__8cM3dGSph[3] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)__dt__8cM3dGSphFv,
|
||||
};
|
||||
daCoachFire_c::~daCoachFire_c() {
|
||||
dKy_plight_cut(&mLightInfluence);
|
||||
}
|
||||
|
||||
/* 8065809C-806581C0 00059C 0124+00 1/0 0/0 0/0 .text daCoachFire_Delete__FP13daCoachFire_c */
|
||||
static void daCoachFire_Delete(daCoachFire_c* param_0) {
|
||||
// NONMATCHING
|
||||
static int daCoachFire_Delete(daCoachFire_c* i_this) {
|
||||
i_this->~daCoachFire_c();
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 806581C0-806582AC 0006C0 00EC+00 1/0 0/0 0/0 .text daCoachFire_Create__FP10fopAc_ac_c
|
||||
*/
|
||||
static void daCoachFire_Create(fopAc_ac_c* param_0) {
|
||||
// NONMATCHING
|
||||
static int daCoachFire_Create(fopAc_ac_c* i_this) {
|
||||
fopAcM_SetupActor(i_this, daCoachFire_c);
|
||||
static_cast<daCoachFire_c*>(i_this)->create_init();
|
||||
return cPhs_COMPLEATE_e;
|
||||
}
|
||||
|
||||
/* 806582AC-806582F4 0007AC 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGSphFv */
|
||||
// cM3dGSph::~cM3dGSph() {
|
||||
extern "C" void __dt__8cM3dGSphFv() {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
/* 806582F4-8065833C 0007F4 0048+00 1/0 0/0 0/0 .text __dt__8cM3dGAabFv */
|
||||
// cM3dGAab::~cM3dGAab() {
|
||||
extern "C" void __dt__8cM3dGAabFv() {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
/* 8065833C-80658398 00083C 005C+00 1/0 0/0 0/0 .text __dt__10dCcD_GSttsFv */
|
||||
// dCcD_GStts::~dCcD_GStts() {
|
||||
extern "C" void __dt__10dCcD_GSttsFv() {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
/* 80658398-806583E0 000898 0048+00 1/0 0/0 0/0 .text __dt__10cCcD_GSttsFv */
|
||||
// cCcD_GStts::~cCcD_GStts() {
|
||||
extern "C" void __dt__10cCcD_GSttsFv() {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80658454-8065845A 00006C 0006+00 0/0 0/0 0/0 .rodata None */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DEAD static char const* const stringBase_80658454 = "Coach";
|
||||
#pragma pop
|
||||
static char* stringBase_80658454 = "Coach";
|
||||
|
||||
/* 80658454-80658454 00006C 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
|
||||
/* 8065845C-8065847C -00001 0020+00 1/0 0/0 0/0 .data l_daCoachFire_Method */
|
||||
static actor_method_class l_daCoachFire_Method = {
|
||||
(process_method_func)daCoachFire_Create, (process_method_func)daCoachFire_Delete,
|
||||
(process_method_func)daCoachFire_Execute, (process_method_func)daCoachFire_IsDelete,
|
||||
(process_method_func)daCoachFire_Draw,
|
||||
};
|
||||
|
||||
/* 8065847C-806584AC -00001 0030+00 0/0 0/0 1/0 .data g_profile_COACH_FIRE */
|
||||
extern actor_process_profile_definition g_profile_COACH_FIRE = {
|
||||
fpcLy_CURRENT_e, // mLayerID
|
||||
3, // mListID
|
||||
fpcPi_CURRENT_e, // mListPrio
|
||||
PROC_COACH_FIRE, // mProcName
|
||||
&g_fpcLf_Method.base, // sub_method
|
||||
sizeof(daCoachFire_c), // mSize
|
||||
0, // mSizeOther
|
||||
0, // mParameters
|
||||
&g_fopAc_Method.base, // sub_method
|
||||
332, // mPriority
|
||||
&l_daCoachFire_Method, // sub_method
|
||||
0x00044000, // mStatus
|
||||
fopAc_ACTOR_e, // mActorType
|
||||
fopAc_CULLBOX_CUSTOM_e, // cullType
|
||||
};
|
||||
|
|
|
|||
|
|
@ -309,7 +309,7 @@ extern "C" void __dt__4cXyzFv() {
|
|||
/* 8099DA60-8099DBA4 000400 0144+00 1/1 0/0 0/0 .text hitFireArrow__12daNpcCoach_cF4cXyz
|
||||
*/
|
||||
void daNpcCoach_c::hitFireArrow(cXyz param_0) {
|
||||
// NONMATCHING
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
/* 8099DBA4-8099DCE8 000544 0144+00 0/0 0/0 1/1 .text deleteFireArrow__12daNpcCoach_cFUi
|
||||
|
|
@ -320,8 +320,14 @@ void daNpcCoach_c::deleteFireArrow(unsigned int param_0) {
|
|||
|
||||
/* 8099DCE8-8099DD28 000688 0040+00 0/0 0/0 1/1 .text deleteFireArrowFromList__12daNpcCoach_cFUi
|
||||
*/
|
||||
void daNpcCoach_c::deleteFireArrowFromList(unsigned int param_0) {
|
||||
// NONMATCHING
|
||||
bool daNpcCoach_c::deleteFireArrowFromList(unsigned int i_actorID) {
|
||||
for (int i = 0; i < 5; i++) {
|
||||
if (field_0x247c[i] == i_actorID) {
|
||||
field_0x247c[i] = -1;
|
||||
return true;
|
||||
}
|
||||
}
|
||||
return false;
|
||||
}
|
||||
|
||||
/* 8099DD28-8099DD7C 0006C8 0054+00 0/0 0/0 3/3 .text setPosAngle__12daNpcCoach_cFR4cXyzR5csXyz */
|
||||
|
|
|
|||
|
|
@ -1,237 +1,147 @@
|
|||
/**
|
||||
* @file d_a_obj_kiPot.cpp
|
||||
*
|
||||
*/
|
||||
*
|
||||
*/
|
||||
|
||||
#include "d/actor/d_a_obj_kiPot.h"
|
||||
#include "dol2asm.h"
|
||||
#include "d/d_com_inf_game.h"
|
||||
|
||||
static daKiPot_HIO_c l_HIO;
|
||||
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void __ct__13daKiPot_HIO_cFv();
|
||||
extern "C" void __dt__14mDoHIO_entry_cFv();
|
||||
extern "C" void setBaseMtx__9daKiPot_cFv();
|
||||
extern "C" void create__9daKiPot_cFv();
|
||||
extern "C" void Execute__9daKiPot_cFv();
|
||||
extern "C" void procMain__9daKiPot_cFv();
|
||||
extern "C" void init_modeWait__9daKiPot_cFv();
|
||||
extern "C" void modeWait__9daKiPot_cFv();
|
||||
extern "C" void chkEvent__9daKiPot_cFv();
|
||||
extern "C" bool Draw__9daKiPot_cFv();
|
||||
extern "C" bool Delete__9daKiPot_cFv();
|
||||
extern "C" static void daKiPot_Draw__FP9daKiPot_c();
|
||||
extern "C" static void daKiPot_Execute__FP9daKiPot_c();
|
||||
extern "C" static void daKiPot_Delete__FP9daKiPot_c();
|
||||
extern "C" static void daKiPot_Create__FP10fopAc_ac_c();
|
||||
extern "C" void __dt__13daKiPot_HIO_cFv();
|
||||
extern "C" void __sinit_d_a_obj_kiPot_cpp();
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void mDoMtx_ZXYrotM__FPA4_fsss();
|
||||
extern "C" void __ct__10fopAc_ac_cFv();
|
||||
extern "C" void fopAcM_setCullSizeBox__FP10fopAc_ac_cffffff();
|
||||
extern "C" void request__11dAttCatch_cFP10fopAc_ac_cUcfffsi();
|
||||
extern "C" void __dl__FPv();
|
||||
extern "C" void __ptmf_scall();
|
||||
extern "C" u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
extern "C" void __register_global_object();
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80C451A4-80C451BC 000000 0018+00 1/1 0/0 0/0 .data l_cull_box */
|
||||
SECTION_DATA static u8 l_cull_box[24] = {
|
||||
0xC2, 0x48, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC2, 0x48, 0x00, 0x00,
|
||||
0x42, 0x48, 0x00, 0x00, 0x42, 0xC8, 0x00, 0x00, 0x42, 0x48, 0x00, 0x00,
|
||||
};
|
||||
|
||||
/* 80C451BC-80C451C8 -00001 000C+00 1/1 0/0 0/0 .data @3688 */
|
||||
SECTION_DATA static void* lit_3688[3] = {
|
||||
(void*)NULL,
|
||||
(void*)0xFFFFFFFF,
|
||||
(void*)modeWait__9daKiPot_cFv,
|
||||
};
|
||||
|
||||
/* 80C451C8-80C451D4 000024 000C+00 1/1 0/0 0/0 .data mode_proc$3687 */
|
||||
SECTION_DATA static u8 mode_proc[12] = {
|
||||
0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
|
||||
};
|
||||
|
||||
/* 80C451D4-80C451F4 -00001 0020+00 1/0 0/0 0/0 .data l_daKiPot_Method */
|
||||
static actor_method_class l_daKiPot_Method = {
|
||||
(process_method_func)daKiPot_Create__FP10fopAc_ac_c,
|
||||
(process_method_func)daKiPot_Delete__FP9daKiPot_c,
|
||||
(process_method_func)daKiPot_Execute__FP9daKiPot_c,
|
||||
0,
|
||||
(process_method_func)daKiPot_Draw__FP9daKiPot_c,
|
||||
};
|
||||
|
||||
/* 80C451F4-80C45224 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_KiPot */
|
||||
extern actor_process_profile_definition g_profile_Obj_KiPot = {
|
||||
fpcLy_CURRENT_e, // mLayerID
|
||||
7, // mListID
|
||||
fpcPi_CURRENT_e, // mListPrio
|
||||
PROC_Obj_KiPot, // mProcName
|
||||
&g_fpcLf_Method.base, // sub_method
|
||||
sizeof(daKiPot_c), // mSize
|
||||
0, // mSizeOther
|
||||
0, // mParameters
|
||||
&g_fopAc_Method.base, // sub_method
|
||||
517, // mPriority
|
||||
&l_daKiPot_Method, // sub_method
|
||||
0x00044000, // mStatus
|
||||
fopAc_ACTOR_e, // mActorType
|
||||
fopAc_CULLBOX_CUSTOM_e, // cullType
|
||||
};
|
||||
|
||||
/* 80C45224-80C45230 000080 000C+00 2/2 0/0 0/0 .data __vt__13daKiPot_HIO_c */
|
||||
SECTION_DATA extern void* __vt__13daKiPot_HIO_c[3] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)__dt__13daKiPot_HIO_cFv,
|
||||
};
|
||||
|
||||
/* 80C45230-80C4523C 00008C 000C+00 3/3 0/0 0/0 .data __vt__14mDoHIO_entry_c */
|
||||
SECTION_DATA extern void* __vt__14mDoHIO_entry_c[3] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)__dt__14mDoHIO_entry_cFv,
|
||||
static cull_box l_cull_box = {
|
||||
{-50.0f, 0.0f, -50.0f},
|
||||
{50.0f, 100.0f, 50.0f},
|
||||
};
|
||||
|
||||
/* 80C44D0C-80C44D30 0000EC 0024+00 1/1 0/0 0/0 .text __ct__13daKiPot_HIO_cFv */
|
||||
daKiPot_HIO_c::daKiPot_HIO_c() {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
/* 80C44D30-80C44D78 000110 0048+00 1/0 0/0 0/0 .text __dt__14mDoHIO_entry_cFv */
|
||||
// mDoHIO_entry_c::~mDoHIO_entry_c() {
|
||||
extern "C" void __dt__14mDoHIO_entry_cFv() {
|
||||
// NONMATCHING
|
||||
field_0x06 = 0x14;
|
||||
}
|
||||
|
||||
/* 80C44D78-80C44DD0 000158 0058+00 2/2 0/0 0/0 .text setBaseMtx__9daKiPot_cFv */
|
||||
void daKiPot_c::setBaseMtx() {
|
||||
// NONMATCHING
|
||||
mDoMtx_stack_c::transS(current.pos.x, current.pos.y, current.pos.z);
|
||||
mDoMtx_stack_c::ZXYrotM(shape_angle.x, shape_angle.y, shape_angle.z);
|
||||
}
|
||||
|
||||
/* 80C44DD0-80C44E7C 0001B0 00AC+00 1/1 0/0 0/0 .text create__9daKiPot_cFv */
|
||||
void daKiPot_c::create() {
|
||||
// NONMATCHING
|
||||
}
|
||||
int daKiPot_c::create() {
|
||||
fopAcM_SetupActor(this, daKiPot_c);
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80C45194-80C45198 000000 0004+00 2/2 0/0 0/0 .rodata @3683 */
|
||||
SECTION_RODATA static f32 const lit_3683 = 150.0f;
|
||||
COMPILER_STRIP_GATE(0x80C45194, &lit_3683);
|
||||
setBaseMtx();
|
||||
|
||||
f32 min_x = l_cull_box.min.x * scale.x;
|
||||
f32 min_y = l_cull_box.min.y * scale.y;
|
||||
f32 min_z = l_cull_box.min.z * scale.x;
|
||||
f32 max_x = l_cull_box.max.x * scale.x;
|
||||
f32 max_y = l_cull_box.max.y * scale.y;
|
||||
fopAcM_setCullSizeBox(this, min_x, min_y, min_z, max_x, max_y, max_y);
|
||||
|
||||
field_0x575 = 0;
|
||||
init_modeWait();
|
||||
|
||||
return cPhs_COMPLEATE_e;
|
||||
}
|
||||
|
||||
/* 80C44E7C-80C44EF8 00025C 007C+00 1/1 0/0 0/0 .text Execute__9daKiPot_cFv */
|
||||
void daKiPot_c::Execute() {
|
||||
// NONMATCHING
|
||||
int daKiPot_c::Execute() {
|
||||
procMain();
|
||||
attention_info.position = current.pos;
|
||||
attention_info.position.y += 150.0f;
|
||||
eyePos = current.pos;
|
||||
setBaseMtx();
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80C45248-80C45254 000008 000C+00 1/1 0/0 0/0 .bss @3620 */
|
||||
static u8 lit_3620[12];
|
||||
|
||||
/* 80C45254-80C4525C 000014 0008+00 1/1 0/0 0/0 .bss l_HIO */
|
||||
static u8 l_HIO[8];
|
||||
|
||||
/* 80C4525C-80C45260 00001C 0004+00 1/1 0/0 0/0 .bss None */
|
||||
static u8 data_80C4525C[4];
|
||||
|
||||
/* 80C44EF8-80C44F74 0002D8 007C+00 1/1 0/0 0/0 .text procMain__9daKiPot_cFv */
|
||||
void daKiPot_c::procMain() {
|
||||
// NONMATCHING
|
||||
typedef void (daKiPot_c::*modeProcessFunc)();
|
||||
static modeProcessFunc mode_proc[] = {
|
||||
&daKiPot_c::modeWait,
|
||||
};
|
||||
|
||||
(this->*mode_proc[mMode])();
|
||||
}
|
||||
|
||||
/* 80C44F74-80C44F80 000354 000C+00 1/1 0/0 0/0 .text init_modeWait__9daKiPot_cFv */
|
||||
void daKiPot_c::init_modeWait() {
|
||||
// NONMATCHING
|
||||
mMode = 0;
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80C45198-80C4519C 000004 0004+00 0/1 0/0 0/0 .rodata @3711 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3711 = 100.0f;
|
||||
COMPILER_STRIP_GATE(0x80C45198, &lit_3711);
|
||||
#pragma pop
|
||||
|
||||
/* 80C4519C-80C451A0 000008 0004+00 0/1 0/0 0/0 .rodata @3712 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3712 = 50.0f;
|
||||
COMPILER_STRIP_GATE(0x80C4519C, &lit_3712);
|
||||
#pragma pop
|
||||
|
||||
/* 80C451A0-80C451A4 00000C 0004+00 0/1 0/0 0/0 .rodata @3713 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_RODATA static f32 const lit_3713 = -50.0f;
|
||||
COMPILER_STRIP_GATE(0x80C451A0, &lit_3713);
|
||||
#pragma pop
|
||||
|
||||
/* 80C44F80-80C45008 000360 0088+00 1/0 0/0 0/0 .text modeWait__9daKiPot_cFv */
|
||||
void daKiPot_c::modeWait() {
|
||||
// NONMATCHING
|
||||
if (chkEvent() && eventInfo.i_checkCommandCatch() == 0) {
|
||||
dComIfGp_att_CatchRequest(this, UGLY_SOUP, 100.0f, 50.0f, -50.0f, 0x2000, 1);
|
||||
eventInfo.i_onCondition(0x40);
|
||||
}
|
||||
}
|
||||
|
||||
/* 80C45008-80C45058 0003E8 0050+00 1/1 0/0 0/0 .text chkEvent__9daKiPot_cFv */
|
||||
void daKiPot_c::chkEvent() {
|
||||
// NONMATCHING
|
||||
s32 daKiPot_c::chkEvent() {
|
||||
s32 result = 1;
|
||||
|
||||
if (!dComIfGp_getEvent().isOrderOK()) {
|
||||
result = 0;
|
||||
|
||||
if (eventInfo.i_checkCommandCatch()) {
|
||||
return result;
|
||||
}
|
||||
}
|
||||
return result;
|
||||
}
|
||||
|
||||
/* 80C45058-80C45060 000438 0008+00 1/1 0/0 0/0 .text Draw__9daKiPot_cFv */
|
||||
bool daKiPot_c::Draw() {
|
||||
return true;
|
||||
int daKiPot_c::Draw() {
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80C45060-80C45068 000440 0008+00 1/1 0/0 0/0 .text Delete__9daKiPot_cFv */
|
||||
bool daKiPot_c::Delete() {
|
||||
return true;
|
||||
int daKiPot_c::Delete() {
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80C45068-80C45088 000448 0020+00 1/0 0/0 0/0 .text daKiPot_Draw__FP9daKiPot_c */
|
||||
static void daKiPot_Draw(daKiPot_c* param_0) {
|
||||
// NONMATCHING
|
||||
static int daKiPot_Draw(daKiPot_c* i_this) {
|
||||
return i_this->Draw();
|
||||
}
|
||||
|
||||
/* 80C45088-80C450A8 000468 0020+00 1/0 0/0 0/0 .text daKiPot_Execute__FP9daKiPot_c */
|
||||
static void daKiPot_Execute(daKiPot_c* param_0) {
|
||||
// NONMATCHING
|
||||
static int daKiPot_Execute(daKiPot_c* i_this) {
|
||||
return i_this->Execute();
|
||||
}
|
||||
|
||||
/* 80C450A8-80C450C8 000488 0020+00 1/0 0/0 0/0 .text daKiPot_Delete__FP9daKiPot_c */
|
||||
static void daKiPot_Delete(daKiPot_c* param_0) {
|
||||
// NONMATCHING
|
||||
static int daKiPot_Delete(daKiPot_c* i_this) {
|
||||
return i_this->Delete();
|
||||
}
|
||||
|
||||
/* 80C450C8-80C450E8 0004A8 0020+00 1/0 0/0 0/0 .text daKiPot_Create__FP10fopAc_ac_c */
|
||||
static void daKiPot_Create(fopAc_ac_c* param_0) {
|
||||
// NONMATCHING
|
||||
static int daKiPot_Create(fopAc_ac_c* i_this) {
|
||||
return static_cast<daKiPot_c*>(i_this)->create();
|
||||
}
|
||||
|
||||
/* 80C450E8-80C45144 0004C8 005C+00 2/1 0/0 0/0 .text __dt__13daKiPot_HIO_cFv */
|
||||
daKiPot_HIO_c::~daKiPot_HIO_c() {
|
||||
// NONMATCHING
|
||||
}
|
||||
/* 80C451D4-80C451F4 -00001 0020+00 1/0 0/0 0/0 .data l_daKiPot_Method */
|
||||
static actor_method_class l_daKiPot_Method = {
|
||||
(process_method_func)daKiPot_Create, (process_method_func)daKiPot_Delete,
|
||||
(process_method_func)daKiPot_Execute, 0,
|
||||
(process_method_func)daKiPot_Draw,
|
||||
};
|
||||
|
||||
/* 80C45144-80C45180 000524 003C+00 0/0 1/0 0/0 .text __sinit_d_a_obj_kiPot_cpp */
|
||||
void __sinit_d_a_obj_kiPot_cpp() {
|
||||
// NONMATCHING
|
||||
}
|
||||
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
REGISTER_CTORS(0x80C45144, __sinit_d_a_obj_kiPot_cpp);
|
||||
#pragma pop
|
||||
/* 80C451F4-80C45224 -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_KiPot */
|
||||
extern actor_process_profile_definition g_profile_Obj_KiPot = {
|
||||
fpcLy_CURRENT_e, // mLayerID
|
||||
7, // mListID
|
||||
fpcPi_CURRENT_e, // mListPrio
|
||||
PROC_Obj_KiPot, // mProcName
|
||||
&g_fpcLf_Method.base, // sub_method
|
||||
sizeof(daKiPot_c), // mSize
|
||||
0, // mSizeOther
|
||||
0, // mParameters
|
||||
&g_fopAc_Method.base, // sub_method
|
||||
517, // mPriority
|
||||
&l_daKiPot_Method, // sub_method
|
||||
0x00044000, // mStatus
|
||||
fopAc_ACTOR_e, // mActorType
|
||||
fopAc_CULLBOX_CUSTOM_e, // cullType
|
||||
};
|
||||
|
|
|
|||
|
|
@ -1,209 +1,152 @@
|
|||
/**
|
||||
* @file d_a_obj_lv4prelvtr.cpp
|
||||
*
|
||||
*/
|
||||
*
|
||||
*/
|
||||
|
||||
#include "d/actor/d_a_obj_lv4prelvtr.h"
|
||||
#include "dol2asm.h"
|
||||
|
||||
|
||||
//
|
||||
// Forward References:
|
||||
//
|
||||
|
||||
extern "C" void create1st__14daObjPRElvtr_cFv();
|
||||
extern "C" void setMtx__14daObjPRElvtr_cFv();
|
||||
extern "C" void CreateHeap__14daObjPRElvtr_cFv();
|
||||
extern "C" void Create__14daObjPRElvtr_cFv();
|
||||
extern "C" static void searchObjSwTurn__FPvPv();
|
||||
extern "C" void Execute__14daObjPRElvtr_cFPPA3_A4_f();
|
||||
extern "C" void Draw__14daObjPRElvtr_cFv();
|
||||
extern "C" void Delete__14daObjPRElvtr_cFv();
|
||||
extern "C" static void daObjPRElvtr_create1st__FP14daObjPRElvtr_c();
|
||||
extern "C" static void daObjPRElvtr_MoveBGDelete__FP14daObjPRElvtr_c();
|
||||
extern "C" static void daObjPRElvtr_MoveBGExecute__FP14daObjPRElvtr_c();
|
||||
extern "C" static void daObjPRElvtr_MoveBGDraw__FP14daObjPRElvtr_c();
|
||||
extern "C" void __dt__14daObjPRElvtr_cFv();
|
||||
extern "C" extern char const* const d_a_obj_lv4prelvtr__stringBase0;
|
||||
|
||||
//
|
||||
// External References:
|
||||
//
|
||||
|
||||
extern "C" void mDoMtx_YrotM__FPA4_fs();
|
||||
extern "C" void mDoExt_modelUpdateDL__FP8J3DModel();
|
||||
extern "C" void mDoExt_J3DModel__create__FP12J3DModelDataUlUl();
|
||||
extern "C" void __dt__10fopAc_ac_cFv();
|
||||
extern "C" void fopAc_IsActor__FPv();
|
||||
extern "C" void fopAcIt_Judge__FPFPvPv_PvPv();
|
||||
extern "C" void fopAcM_setCullSizeBox__FP10fopAc_ac_cffffff();
|
||||
extern "C" void dComIfG_resLoad__FP30request_of_phase_process_classPCc();
|
||||
extern "C" void dComIfG_resDelete__FP30request_of_phase_process_classPCc();
|
||||
extern "C" void getRes__14dRes_control_cFPCclP11dRes_info_ci();
|
||||
extern "C" void dBgS_MoveBGProc_Trans__FP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz();
|
||||
extern "C" void __ct__16dBgS_MoveBgActorFv();
|
||||
extern "C" bool IsDelete__16dBgS_MoveBgActorFv();
|
||||
extern "C" bool ToFore__16dBgS_MoveBgActorFv();
|
||||
extern "C" bool ToBack__16dBgS_MoveBgActorFv();
|
||||
extern "C" void
|
||||
MoveBGCreate__16dBgS_MoveBgActorFPCciPFP4dBgWPvRC13cBgS_PolyInfobP4cXyzP5csXyzP5csXyz_vUlPA3_A4_f();
|
||||
extern "C" void MoveBGDelete__16dBgS_MoveBgActorFv();
|
||||
extern "C" void MoveBGExecute__16dBgS_MoveBgActorFv();
|
||||
extern "C" void settingTevStruct__18dScnKy_env_light_cFiP4cXyzP12dKy_tevstr_c();
|
||||
extern "C" void setLightTevColorType_MAJI__18dScnKy_env_light_cFP12J3DModelDataP12dKy_tevstr_c();
|
||||
extern "C" void __dl__FPv();
|
||||
extern "C" extern void* __vt__16dBgS_MoveBgActor[10];
|
||||
extern "C" u8 now__14mDoMtx_stack_c[48];
|
||||
extern "C" extern u8 g_dComIfG_gameInfo[122384];
|
||||
|
||||
//
|
||||
// Declarations:
|
||||
//
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80C68B90-80C68B90 000028 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
#pragma push
|
||||
#pragma force_active on
|
||||
SECTION_DEAD static char const* const stringBase_80C68B90 = "PRElvtr";
|
||||
#pragma pop
|
||||
#include "d/d_com_inf_game.h"
|
||||
|
||||
/* 80C68B98-80C68B9C -00001 0004+00 3/3 0/0 0/0 .data l_arcName */
|
||||
SECTION_DATA static void* l_arcName = (void*)&d_a_obj_lv4prelvtr__stringBase0;
|
||||
static char* l_arcName = "PRElvtr";
|
||||
|
||||
/* 80C685F8-80C68688 000078 0090+00 1/1 0/0 0/0 .text create1st__14daObjPRElvtr_cFv */
|
||||
void daObjPRElvtr_c::create1st() {
|
||||
// NONMATCHING
|
||||
int daObjPRElvtr_c::create1st() {
|
||||
int phase = dComIfG_resLoad(this, l_arcName);
|
||||
if (phase == cPhs_COMPLEATE_e) {
|
||||
setMtx();
|
||||
phase = MoveBGCreate(l_arcName, 7, dBgS_MoveBGProc_Trans, 0x3680, &mMtx1);
|
||||
if (phase == cPhs_ERROR_e) {
|
||||
return phase;
|
||||
}
|
||||
}
|
||||
return phase;
|
||||
}
|
||||
|
||||
/* 80C68688-80C686F8 000108 0070+00 2/2 0/0 0/0 .text setMtx__14daObjPRElvtr_cFv */
|
||||
void daObjPRElvtr_c::setMtx() {
|
||||
// NONMATCHING
|
||||
PSMTXTrans(mDoMtx_stack_c::get(), current.pos.x, current.pos.y, current.pos.z);
|
||||
mDoMtx_stack_c::YrotM(current.angle.y);
|
||||
PSMTXCopy(mDoMtx_stack_c::get(), mMtx2);
|
||||
PSMTXCopy(mDoMtx_stack_c::get(), mMtx1);
|
||||
}
|
||||
|
||||
/* 80C686F8-80C68768 000178 0070+00 1/0 0/0 0/0 .text CreateHeap__14daObjPRElvtr_cFv */
|
||||
void daObjPRElvtr_c::CreateHeap() {
|
||||
// NONMATCHING
|
||||
int daObjPRElvtr_c::CreateHeap() {
|
||||
J3DModelData* model_data = (J3DModelData*)dComIfG_getObjectRes(l_arcName, 4);
|
||||
mpModel = mDoExt_J3DModel__create(model_data, 0x80000, 0x11000084);
|
||||
return mpModel != NULL ? 1 : 0;
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80C68B68-80C68B80 000000 0018+00 1/1 0/0 0/0 .rodata l_cull_box */
|
||||
SECTION_RODATA static u8 const l_cull_box[24] = {
|
||||
0xC4, 0x35, 0x40, 0x00, 0xC3, 0x9D, 0x80, 0x00, 0xC4, 0x35, 0x40, 0x00,
|
||||
0x44, 0x35, 0x40, 0x00, 0xC1, 0x70, 0x00, 0x00, 0x44, 0x35, 0x40, 0x00,
|
||||
static const cull_box l_cull_box = {
|
||||
{-725.0f, -315.0f, -725.0f},
|
||||
{725.0f, -15.0f, 725.0f},
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x80C68B68, &l_cull_box);
|
||||
|
||||
/* 80C68768-80C687D0 0001E8 0068+00 1/0 0/0 0/0 .text Create__14daObjPRElvtr_cFv */
|
||||
void daObjPRElvtr_c::Create() {
|
||||
// NONMATCHING
|
||||
int daObjPRElvtr_c::Create() {
|
||||
mpModel->setBaseTRMtx(mMtx2);
|
||||
fopAcM_SetMtx(this, mMtx2);
|
||||
fopAcM_setCullSizeBox(this, l_cull_box.min.x, l_cull_box.min.y, l_cull_box.min.z,
|
||||
l_cull_box.max.x, l_cull_box.max.y, l_cull_box.max.z);
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80C687D0-80C68844 000250 0074+00 1/1 0/0 0/0 .text searchObjSwTurn__FPvPv */
|
||||
static void searchObjSwTurn(void* param_0, void* param_1) {
|
||||
// NONMATCHING
|
||||
static fopAc_ac_c* searchObjSwTurn(void* i_actor1, void* i_actor2) {
|
||||
if (i_actor1 != NULL && fopAcM_IsActor(i_actor1) &&
|
||||
fopAcM_GetProfName(i_actor1) == PROC_Obj_SwTurn)
|
||||
{
|
||||
if (((daObjSwTurn_c*)i_actor1)->getSwNo() == ((daObjPRElvtr_c*)i_actor2)->getSwNo()) {
|
||||
return (fopAc_ac_c*)i_actor1;
|
||||
}
|
||||
}
|
||||
|
||||
return NULL;
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80C68B80-80C68B84 000018 0004+00 1/1 0/0 0/0 .rodata @3694 */
|
||||
SECTION_RODATA static f32 const lit_3694 = 900.0f;
|
||||
COMPILER_STRIP_GATE(0x80C68B80, &lit_3694);
|
||||
|
||||
/* 80C68B84-80C68B88 00001C 0004+00 1/1 0/0 0/0 .rodata @3695 */
|
||||
SECTION_RODATA static f32 const lit_3695 = 16383.0f;
|
||||
COMPILER_STRIP_GATE(0x80C68B84, &lit_3695);
|
||||
|
||||
/* 80C68B88-80C68B90 000020 0008+00 1/1 0/0 0/0 .rodata @3697 */
|
||||
SECTION_RODATA static u8 const lit_3697[8] = {
|
||||
0x43, 0x30, 0x00, 0x00, 0x80, 0x00, 0x00, 0x00,
|
||||
};
|
||||
COMPILER_STRIP_GATE(0x80C68B88, &lit_3697);
|
||||
|
||||
/* 80C68844-80C68944 0002C4 0100+00 1/0 0/0 0/0 .text Execute__14daObjPRElvtr_cFPPA3_A4_f
|
||||
*/
|
||||
void daObjPRElvtr_c::Execute(f32 (**param_0)[3][4]) {
|
||||
// NONMATCHING
|
||||
int daObjPRElvtr_c::Execute(Mtx** i_mtx) {
|
||||
daObjSwTurn_c* sw_turn =
|
||||
(daObjSwTurn_c*)fopAcM_Search((fopAcIt_JudgeFunc)searchObjSwTurn, this);
|
||||
|
||||
if (sw_turn != NULL) {
|
||||
field_0x60c = sw_turn->getRotateAngle();
|
||||
f32 fVar1 = (field_0x60c / 16383.0f) * 900.0f;
|
||||
current.pos.y = home.pos.y - fVar1;
|
||||
sw_turn->current.pos.y = sw_turn->home.pos.y - fVar1;
|
||||
}
|
||||
|
||||
setMtx();
|
||||
mpModel->setBaseTRMtx(mMtx2);
|
||||
*i_mtx = &mMtx1;
|
||||
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80C68944-80C689E8 0003C4 00A4+00 1/0 0/0 0/0 .text Draw__14daObjPRElvtr_cFv */
|
||||
void daObjPRElvtr_c::Draw() {
|
||||
// NONMATCHING
|
||||
int daObjPRElvtr_c::Draw() {
|
||||
g_env_light.settingTevStruct(0x10, ¤t.pos, &tevStr);
|
||||
g_env_light.setLightTevColorType_MAJI(mpModel, &tevStr);
|
||||
dComIfGd_setListBG();
|
||||
mDoExt_modelUpdateDL(mpModel);
|
||||
dComIfGd_setList();
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* 80C689E8-80C68A24 000468 003C+00 1/0 0/0 0/0 .text Delete__14daObjPRElvtr_cFv */
|
||||
void daObjPRElvtr_c::Delete() {
|
||||
// NONMATCHING
|
||||
int daObjPRElvtr_c::Delete() {
|
||||
dComIfG_resDelete(this, l_arcName);
|
||||
return 1;
|
||||
}
|
||||
|
||||
/* ############################################################################################## */
|
||||
/* 80C68B9C-80C68BBC -00001 0020+00 1/0 0/0 0/0 .data daObjPRElvtr_METHODS */
|
||||
static actor_method_class daObjPRElvtr_METHODS = {
|
||||
(process_method_func)daObjPRElvtr_create1st__FP14daObjPRElvtr_c,
|
||||
(process_method_func)daObjPRElvtr_MoveBGDelete__FP14daObjPRElvtr_c,
|
||||
(process_method_func)daObjPRElvtr_MoveBGExecute__FP14daObjPRElvtr_c,
|
||||
0,
|
||||
(process_method_func)daObjPRElvtr_MoveBGDraw__FP14daObjPRElvtr_c,
|
||||
};
|
||||
|
||||
/* 80C68BBC-80C68BEC -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_PRElvtr */
|
||||
extern actor_process_profile_definition g_profile_Obj_PRElvtr = {
|
||||
fpcLy_CURRENT_e, // mLayerID
|
||||
3, // mListID
|
||||
fpcPi_CURRENT_e, // mListPrio
|
||||
PROC_Obj_PRElvtr, // mProcName
|
||||
&g_fpcLf_Method.base, // sub_method
|
||||
sizeof(daObjPRElvtr_c), // mSize
|
||||
0, // mSizeOther
|
||||
0, // mParameters
|
||||
&g_fopAc_Method.base, // sub_method
|
||||
665, // mPriority
|
||||
&daObjPRElvtr_METHODS, // sub_method
|
||||
0x00040100, // mStatus
|
||||
fopAc_ACTOR_e, // mActorType
|
||||
fopAc_CULLBOX_CUSTOM_e, // cullType
|
||||
};
|
||||
|
||||
/* 80C68BEC-80C68C18 000054 002C+00 2/2 0/0 0/0 .data __vt__14daObjPRElvtr_c */
|
||||
SECTION_DATA extern void* __vt__14daObjPRElvtr_c[11] = {
|
||||
(void*)NULL /* RTTI */,
|
||||
(void*)NULL,
|
||||
(void*)CreateHeap__14daObjPRElvtr_cFv,
|
||||
(void*)Create__14daObjPRElvtr_cFv,
|
||||
(void*)Execute__14daObjPRElvtr_cFPPA3_A4_f,
|
||||
(void*)Draw__14daObjPRElvtr_cFv,
|
||||
(void*)Delete__14daObjPRElvtr_cFv,
|
||||
(void*)IsDelete__16dBgS_MoveBgActorFv,
|
||||
(void*)ToFore__16dBgS_MoveBgActorFv,
|
||||
(void*)ToBack__16dBgS_MoveBgActorFv,
|
||||
(void*)__dt__14daObjPRElvtr_cFv,
|
||||
};
|
||||
|
||||
/* 80C68A24-80C68A84 0004A4 0060+00 1/0 0/0 0/0 .text daObjPRElvtr_create1st__FP14daObjPRElvtr_c
|
||||
*/
|
||||
static void daObjPRElvtr_create1st(daObjPRElvtr_c* param_0) {
|
||||
// NONMATCHING
|
||||
static int daObjPRElvtr_create1st(daObjPRElvtr_c* i_this) {
|
||||
fopAcM_SetupActor(i_this, daObjPRElvtr_c);
|
||||
return i_this->create1st();
|
||||
}
|
||||
|
||||
/* 80C68A84-80C68AA4 000504 0020+00 1/0 0/0 0/0 .text
|
||||
* daObjPRElvtr_MoveBGDelete__FP14daObjPRElvtr_c */
|
||||
static void daObjPRElvtr_MoveBGDelete(daObjPRElvtr_c* param_0) {
|
||||
// NONMATCHING
|
||||
static int daObjPRElvtr_MoveBGDelete(daObjPRElvtr_c* i_this) {
|
||||
return i_this->MoveBGDelete();
|
||||
}
|
||||
|
||||
/* 80C68AA4-80C68AC4 000524 0020+00 1/0 0/0 0/0 .text
|
||||
* daObjPRElvtr_MoveBGExecute__FP14daObjPRElvtr_c */
|
||||
static void daObjPRElvtr_MoveBGExecute(daObjPRElvtr_c* param_0) {
|
||||
// NONMATCHING
|
||||
static int daObjPRElvtr_MoveBGExecute(daObjPRElvtr_c* i_this) {
|
||||
return i_this->MoveBGExecute();
|
||||
}
|
||||
|
||||
/* 80C68AC4-80C68AF0 000544 002C+00 1/0 0/0 0/0 .text daObjPRElvtr_MoveBGDraw__FP14daObjPRElvtr_c
|
||||
*/
|
||||
static void daObjPRElvtr_MoveBGDraw(daObjPRElvtr_c* param_0) {
|
||||
// NONMATCHING
|
||||
static int daObjPRElvtr_MoveBGDraw(daObjPRElvtr_c* i_this) {
|
||||
return i_this->Draw();
|
||||
}
|
||||
|
||||
/* 80C68AF0-80C68B60 000570 0070+00 1/0 0/0 0/0 .text __dt__14daObjPRElvtr_cFv */
|
||||
daObjPRElvtr_c::~daObjPRElvtr_c() {
|
||||
// NONMATCHING
|
||||
}
|
||||
/* 80C68B9C-80C68BBC -00001 0020+00 1/0 0/0 0/0 .data daObjPRElvtr_METHODS */
|
||||
static actor_method_class daObjPRElvtr_METHODS = {
|
||||
(process_method_func)daObjPRElvtr_create1st, (process_method_func)daObjPRElvtr_MoveBGDelete,
|
||||
(process_method_func)daObjPRElvtr_MoveBGExecute, 0,
|
||||
(process_method_func)daObjPRElvtr_MoveBGDraw,
|
||||
};
|
||||
|
||||
/* 80C68B90-80C68B90 000028 0000+00 0/0 0/0 0/0 .rodata @stringBase0 */
|
||||
/* 80C68BBC-80C68BEC -00001 0030+00 0/0 0/0 1/0 .data g_profile_Obj_PRElvtr */
|
||||
extern actor_process_profile_definition g_profile_Obj_PRElvtr = {
|
||||
fpcLy_CURRENT_e, // mLayerID
|
||||
3, // mListID
|
||||
fpcPi_CURRENT_e, // mListPrio
|
||||
PROC_Obj_PRElvtr, // mProcName
|
||||
&g_fpcLf_Method.base, // sub_method
|
||||
sizeof(daObjPRElvtr_c), // mSize
|
||||
0, // mSizeOther
|
||||
0, // mParameters
|
||||
&g_fopAc_Method.base, // sub_method
|
||||
665, // mPriority
|
||||
&daObjPRElvtr_METHODS, // sub_method
|
||||
0x00040100, // mStatus
|
||||
fopAc_ACTOR_e, // mActorType
|
||||
fopAc_CULLBOX_CUSTOM_e, // cullType
|
||||
};
|
||||
|
|
|
|||
Loading…
Reference in New Issue