mirror of https://github.com/zeldaret/tp.git
d_a_npc_ks documentation (#2970)
* npc_ks work * more work * fix debug * more documentation
This commit is contained in:
parent
c434c2edde
commit
762159a990
|
|
@ -83,29 +83,29 @@ public:
|
|||
|
||||
/* 0x000 */ fopEn_enemy_c actor;
|
||||
/* 0x5AC */ request_of_phase_process_class mPhase;
|
||||
/* 0x5B4 */ u8 mRoomMonkeyID;
|
||||
/* 0x5B4 */ u8 monkey_room_no;
|
||||
/* 0x5B5 */ u8 field_0x5b5;
|
||||
/* 0x5B6 */ u8 field_0x5b6;
|
||||
/* 0x5B6 */ u8 set_id;
|
||||
/* 0x5B7 */ u8 field_0x5b7;
|
||||
/* 0x5B8 */ int field_0x5b8;
|
||||
/* 0x5B8 */ int order;
|
||||
/* 0x5BC */ int bitTRB;
|
||||
/* 0x5C0 */ char* mResName;
|
||||
/* 0x5C4 */ f32 field_0x5c4;
|
||||
/* 0x5C8 */ s16 field_0x5c8;
|
||||
/* 0x5CC */ mDoExt_McaMorfSO* mpModelMorf;
|
||||
/* 0x5D0 */ int field_0x5d0;
|
||||
/* 0x5C0 */ char* res_name;
|
||||
/* 0x5C4 */ f32 dis;
|
||||
/* 0x5C8 */ s16 target_angle;
|
||||
/* 0x5CC */ mDoExt_McaMorfSO* model;
|
||||
/* 0x5D0 */ int res_id;
|
||||
/* 0x5D4 */ f32 field_0x5d4;
|
||||
/* 0x5D8 */ mDoExt_btpAnm* mBtp1;
|
||||
/* 0x5DC */ mDoExt_btpAnm* mBtp2;
|
||||
/* 0x5D8 */ mDoExt_btpAnm* btp;
|
||||
/* 0x5DC */ mDoExt_btpAnm* btp2;
|
||||
/* 0x5E0 */ s16 field_0x5e0;
|
||||
/* 0x5E2 */ s16 field_0x5e2;
|
||||
/* 0x5E4 */ s8 field_0x5e4;
|
||||
/* 0x5E5 */ u8 field_0x5e5;
|
||||
/* 0x5E6 */ s16 field_0x5e6;
|
||||
/* 0x5E8 */ s16 mActionID;
|
||||
/* 0x5EA */ s16 mMode;
|
||||
/* 0x5EC */ u32 mShadowKey;
|
||||
/* 0x5F0 */ s16 mTimers[4];
|
||||
/* 0x5E6 */ s16 count;
|
||||
/* 0x5E8 */ s16 action;
|
||||
/* 0x5EA */ s16 mode;
|
||||
/* 0x5EC */ u32 shadow_key;
|
||||
/* 0x5F0 */ s16 timer[4];
|
||||
/* 0x5F8 */ s16 field_0x5f8;
|
||||
/* 0x5FA */ s16 field_0x5fa;
|
||||
/* 0x5FC */ s8 field_0x5fc;
|
||||
|
|
@ -127,15 +127,15 @@ public:
|
|||
/* 0x630 */ int field_0x630;
|
||||
/* 0x634 */ f32 field_0x634;
|
||||
/* 0x638 */ f32 field_0x638;
|
||||
/* 0x63C */ f32 field_0x63c;
|
||||
/* 0x640 */ dBgS_AcchCir mAcchCir;
|
||||
/* 0x680 */ dBgS_ObjAcch mObjAcch;
|
||||
/* 0x63C */ f32 waterY;
|
||||
/* 0x640 */ dBgS_AcchCir AcchCir;
|
||||
/* 0x680 */ dBgS_ObjAcch ObjAcch;
|
||||
/* 0x858 */ u32 field_0x858;
|
||||
/* 0x85C */ u32 field_0x85c;
|
||||
/* 0x860 */ Z2Creature mSound;
|
||||
/* 0x8F0 */ cXyz field_0x8f0;
|
||||
/* 0x8FC */ csXyz field_0x8fc;
|
||||
/* 0x904 */ int field_0x904;
|
||||
/* 0x860 */ Z2Creature sound;
|
||||
/* 0x8F0 */ cXyz guide_path;
|
||||
/* 0x8FC */ csXyz current_angle;
|
||||
/* 0x904 */ int path_no;
|
||||
/* 0x908 */ f32 field_0x908;
|
||||
/* 0x90C */ s8 field_0x90c;
|
||||
/* 0x910 */ cXyz field_0x910;
|
||||
|
|
@ -143,27 +143,27 @@ public:
|
|||
/* 0x928 */ f32 field_0x928;
|
||||
/* 0x92C */ s8 field_0x92c;
|
||||
/* 0x930 */ void* field_0x930;
|
||||
/* 0x934 */ obj_sw_class* field_0x934;
|
||||
/* 0x938 */ fpc_ProcID field_0x938;
|
||||
/* 0x93C */ int field_0x93c;
|
||||
/* 0x940 */ cXyz field_0x940;
|
||||
/* 0x94C */ s16 field_0x94c;
|
||||
/* 0x94E */ s16 field_0x94e;
|
||||
/* 0x950 */ dCcD_Stts mStts;
|
||||
/* 0x98C */ dCcD_Cyl field_0x98c;
|
||||
/* 0x934 */ obj_sw_class* child_no;
|
||||
/* 0x938 */ fpc_ProcID search_id;
|
||||
/* 0x93C */ int search_time;
|
||||
/* 0x940 */ cXyz find_pos;
|
||||
/* 0x94C */ s16 anm_time;
|
||||
/* 0x94E */ s16 hang_time;
|
||||
/* 0x950 */ dCcD_Stts stts;
|
||||
/* 0x98C */ dCcD_Cyl cc_cyl;
|
||||
/* 0xAC8 */ dCcU_AtInfo mAtInfo; // unused
|
||||
/* 0xAEC */ s8 field_0xaec;
|
||||
/* 0xAED */ s8 field_0xaed;
|
||||
/* 0xAEE */ s16 field_0xaee;
|
||||
/* 0xAF0 */ s16 field_0xaf0;
|
||||
/* 0xAF4 */ dMsgFlow_c mMsgFlow;
|
||||
/* 0xAF4 */ dMsgFlow_c msg_flow;
|
||||
/* 0xB40 */ u8 field_0xb40;
|
||||
/* 0xB41 */ u8 field_0xb41;
|
||||
/* 0xB42 */ s16 field_0xb42;
|
||||
/* 0xB44 */ s16 field_0xb44;
|
||||
/* 0xB48 */ cXyz field_0xb48;
|
||||
/* 0xB42 */ s16 demo_mode;
|
||||
/* 0xB44 */ s16 demo_camera_no;
|
||||
/* 0xB48 */ cXyz demo_way;
|
||||
/* 0xB54 */ cXyz field_0xb54;
|
||||
/* 0xB60 */ cXyz field_0xb60;
|
||||
/* 0xB60 */ cXyz demo_eye;
|
||||
/* 0xB6C */ cXyz field_0xb6c;
|
||||
/* 0xB78 */ cXyz field_0xb78;
|
||||
/* 0xB84 */ cXyz field_0xb84;
|
||||
|
|
@ -171,14 +171,14 @@ public:
|
|||
/* 0xB90 */ cXyz field_0xb9c; // unused
|
||||
/* 0xBA8 */ cXyz field_0xba8;
|
||||
/* 0xBB4 */ f32 field_0xbb4;
|
||||
/* 0xBB8 */ f32 field_0xbb8;
|
||||
/* 0xBB8 */ f32 target_speed;
|
||||
/* 0xBBC */ u8 field_0xbbc[0xbc0 - 0xbbc];
|
||||
/* 0xBC0 */ npc_ks_class* field_0xbc0;
|
||||
/* 0xBC4 */ f32 field_0xbc4;
|
||||
/* 0xBC8 */ cXyz field_0xbc8;
|
||||
/* 0xBD4 */ s16 field_0xbd4;
|
||||
/* 0xBD6 */ u8 field_0xbd6;
|
||||
/* 0xBD7 */ s8 field_0xbd7;
|
||||
/* 0xBD7 */ s8 no_draw;
|
||||
/* 0xBD8 */ s8 field_0xbd8;
|
||||
/* 0xBD9 */ s8 field_0xbd9;
|
||||
/* 0xBDA */ u8 field_0xbda;
|
||||
|
|
@ -187,18 +187,18 @@ public:
|
|||
/* 0xBDD */ s8 field_0xbdd;
|
||||
/* 0xBDE */ s16 field_0xbde;
|
||||
/* 0xBE0 */ s8 field_0xbe0;
|
||||
/* 0xBE4 */ u32 field_0xbe4[4];
|
||||
/* 0xBF4 */ u32 field_0xbf4;
|
||||
/* 0xBE4 */ u32 w_eff[4];
|
||||
/* 0xBF4 */ u32 hammonPrtcl;
|
||||
/* 0xBF8 */ u8 field_0xbf8[0xbfc - 0xbf8];
|
||||
/* 0xBFC */ J3DModel* mpRoseModel;
|
||||
/* 0xC00 */ J3DModel* mpStickModel;
|
||||
/* 0xBFC */ J3DModel* bara_model;
|
||||
/* 0xC00 */ J3DModel* stick_model;
|
||||
/* 0xC04 */ cXyz field_0xc04;
|
||||
/* 0xC10 */ f32 field_0xc10;
|
||||
/* 0xC14 */ s16 field_0xc14;
|
||||
/* 0xC16 */ s8 field_0xc16;
|
||||
/* 0xC17 */ s8 field_0xc17;
|
||||
/* 0xC18 */ dPath* field_0xc18;
|
||||
/* 0xC1C */ u8 field_0xc1c;
|
||||
/* 0xC1C */ u8 hio_init;
|
||||
};
|
||||
|
||||
STATIC_ASSERT(sizeof(npc_ks_class) == 0xc20);
|
||||
|
|
|
|||
|
|
@ -1944,7 +1944,7 @@ static void demo_camera_end(e_mk_class* i_this) {
|
|||
static void* s_ks_sub(void* i_actor, void* i_data) {
|
||||
i_data;
|
||||
|
||||
if ((fopAcM_IsActor(i_actor) && fopAcM_GetName(i_actor) == PROC_NPC_KS) && static_cast<npc_ks_class*>(i_actor)->field_0x5b6 == 0) {
|
||||
if ((fopAcM_IsActor(i_actor) && fopAcM_GetName(i_actor) == PROC_NPC_KS) && static_cast<npc_ks_class*>(i_actor)->set_id == 0) {
|
||||
return i_actor;
|
||||
}
|
||||
|
||||
|
|
@ -2026,7 +2026,7 @@ static void demo_camera_r04(e_mk_class* i_this) {
|
|||
cLib_addCalc2(&i_this->camStepScale1, 1.0f, 1.0f, NREG_F(4) + 0.01f);
|
||||
|
||||
if (i_this->demoCamCounter == ZREG_S(1) + 258) {
|
||||
monkey_p->mMode = 2;
|
||||
monkey_p->mode = 2;
|
||||
pos.set(110.0f, 3300.0f, 4326.0f);
|
||||
player->setPlayerPosAndAngle(&pos, (s16)0xFFFF8000, 0);
|
||||
player->changeDemoMode(1, 1, 0, 0);
|
||||
|
|
@ -2070,7 +2070,7 @@ static void demo_camera_r04(e_mk_class* i_this) {
|
|||
i_this->demoSubMode = 4;
|
||||
i_this->demoCamCounter = 0;
|
||||
i_this->mode = 2;
|
||||
monkey_p->mMode = 20;
|
||||
monkey_p->mode = 20;
|
||||
return;
|
||||
|
||||
case 4:
|
||||
|
|
@ -2149,7 +2149,7 @@ static void demo_camera_r04(e_mk_class* i_this) {
|
|||
|
||||
case 6:
|
||||
if (i_this->demoCamCounter == ZREG_S(6) + 3) {
|
||||
monkey_p->mMode = 4;
|
||||
monkey_p->mode = 4;
|
||||
}
|
||||
|
||||
if (i_this->demoCamCounter != ZREG_S(5) + 25) {
|
||||
|
|
@ -2178,7 +2178,7 @@ static void demo_camera_r04(e_mk_class* i_this) {
|
|||
|
||||
i_this->demoSubMode = 8;
|
||||
i_this->demoCamCounter = 0;
|
||||
monkey_p->mMode++;
|
||||
monkey_p->mode++;
|
||||
i_this->camEye.set(-282.0f, 2534.0f, 3147.0f);
|
||||
i_this->camCenter = monkey_p->actor.current.pos;
|
||||
i_this->camCenter.y += ZREG_F(19);
|
||||
|
|
@ -2189,7 +2189,7 @@ static void demo_camera_r04(e_mk_class* i_this) {
|
|||
|
||||
if (i_this->demoCamCounter == (s16)(XREG_S(0) + 65)) {
|
||||
monkey_p->actor.current.pos.set(0.0f, 3310.0f, 3427.0f);
|
||||
monkey_p->mMode++;
|
||||
monkey_p->mode++;
|
||||
i_this->demoSubMode = 9;
|
||||
i_this->demoCamCounter = 0;
|
||||
fpcM_Search(s_brg_sub2, i_this);
|
||||
|
|
@ -2212,7 +2212,7 @@ static void demo_camera_r04(e_mk_class* i_this) {
|
|||
return;
|
||||
|
||||
case 10:
|
||||
cLib_addCalcAngleS2(&i_this->prevPlShapeAngle, monkey_p->field_0x5c8 + (u16)-0x8000, 4, 0x800);
|
||||
cLib_addCalcAngleS2(&i_this->prevPlShapeAngle, monkey_p->target_angle + (u16)-0x8000, 4, 0x800);
|
||||
player->setPlayerPosAndAngle(&player->current.pos, i_this->prevPlShapeAngle, 0);
|
||||
|
||||
if (i_this->demoCamCounter != 60) {
|
||||
|
|
|
|||
File diff suppressed because it is too large
Load Diff
Loading…
Reference in New Issue