mirror of
https://github.com/zeldaret/ss
synced 2026-06-01 01:39:17 -04:00
dAcEKs_c + dTgKiesuTag_c progress
This commit is contained in:
@@ -3,43 +3,43 @@ _epilog = .text:0x00000030; // type:function size:0x2C scope:global
|
||||
_unresolved = .text:0x00000060; // type:function size:0x4 scope:global
|
||||
__register_global_object = .text:0x00000070; // type:function size:0x1C scope:global
|
||||
__destroy_global_chain = .text:0x00000090; // type:function size:0x54 scope:global
|
||||
fn_155_F0 = .text:0x000000F0; // type:function size:0x40
|
||||
__dt__7mVec3_cFv = .text:0x000000F0; // type:function size:0x40
|
||||
dAcEKs_c_classInit__Fv = .text:0x00000130; // type:function size:0x190
|
||||
fn_155_2C0 = .text:0x000002C0; // type:function size:0x58
|
||||
__dt__15dShadowCircle_cFv = .text:0x000002C0; // type:function size:0x58
|
||||
__dt__20sFState_c<8dAcEKs_c>Fv = .text:0x00000320; // type:function size:0x58
|
||||
__dt__23sFStateFct_c<8dAcEKs_c>Fv = .text:0x00000380; // type:function size:0x6C
|
||||
__dt__76sStateMgr_c<8dAcEKs_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x000003F0; // type:function size:0xA0
|
||||
__dt__46sFStateMgr_c<8dAcEKs_c,20sStateMethodUsr_FI_c>Fv = .text:0x00000490; // type:function size:0xA4
|
||||
fn_155_540 = .text:0x00000540; // type:function size:0x5C
|
||||
fn_155_5A0 = .text:0x000005A0; // type:function size:0x4
|
||||
__dt__14dWaterEffect_cFv = .text:0x00000540; // type:function size:0x5C
|
||||
__ct__7mVec3_cFv = .text:0x000005A0; // type:function size:0x4
|
||||
restorePosRotFromCopy__8dAcEKs_cFv = .text:0x000005B0; // type:function size:0x134
|
||||
linkKiesuTag__8dAcEKs_cFP13dTgKiesuTag_c = .text:0x000006F0; // type:function size:0x8
|
||||
setStartingState__8dAcEKs_cFv = .text:0x00000700; // type:function size:0x1A8
|
||||
changeState__76sStateMgr_c<8dAcEKs_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>FRC12sStateIDIf_c = .text:0x000008B0; // type:function size:0x10
|
||||
setIdleState__8dAcEKs_cFv = .text:0x000008C0; // type:function size:0xCC
|
||||
getLineCrossYRange__8dAcEKs_cFRC7mVec3_cf = .text:0x00000990; // type:function size:0xD0
|
||||
fn_155_A60 = .text:0x00000A60; // type:function size:0x6B0
|
||||
fn_155_A60__8dAcEKs_cFv = .text:0x00000A60; // type:function size:0x6B0
|
||||
getStateID__76sStateMgr_c<8dAcEKs_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x00001110; // type:function size:0x10
|
||||
fn_155_1120 = .text:0x00001120; // type:function size:0x1C
|
||||
fn_155_1140 = .text:0x00001140; // type:function size:0x12C
|
||||
fn_155_1270 = .text:0x00001270; // type:function size:0x54
|
||||
fn_155_12D0 = .text:0x000012D0; // type:function size:0xA0
|
||||
fn_155_1370 = .text:0x00001370; // type:function size:0x58
|
||||
fn_155_13D0 = .text:0x000013D0; // type:function size:0x58
|
||||
fn_155_1430 = .text:0x00001430; // type:function size:0x38
|
||||
fn_155_1470 = .text:0x00001470; // type:function size:0x80C
|
||||
fn_155_1C80 = .text:0x00001C80; // type:function size:0x5E4
|
||||
fn_155_2270 = .text:0x00002270; // type:function size:0x754
|
||||
fn_155_29D0 = .text:0x000029D0; // type:function size:0x1A8
|
||||
fn_155_2B80 = .text:0x00002B80; // type:function size:0x1E0
|
||||
calcTimer<Uc>__4sLibFPUc_Uc = .text:0x00001120; // type:function size:0x1C
|
||||
kill__8dAcEKs_cFb = .text:0x00001140; // type:function size:0x12C
|
||||
chaseTargetY__8dAcEKs_cFff = .text:0x00001270; // type:function size:0x54
|
||||
playBlinkAnm__8dAcEKs_cFv = .text:0x000012D0; // type:function size:0xA0
|
||||
soundSqueak__8dAcEKs_cFv = .text:0x00001370; // type:function size:0x58
|
||||
soundStun__8dAcEKs_cFv = .text:0x000013D0; // type:function size:0x58
|
||||
fn_155_1430__8dAcEKs_cFv = .text:0x00001430; // type:function size:0x38
|
||||
fn_155_1470__8dAcEKs_cFv = .text:0x00001470; // type:function size:0x80C
|
||||
fn_155_1C80__8dAcEKs_cFv = .text:0x00001C80; // type:function size:0x5E4
|
||||
fn_155_2270__8dAcEKs_cFv = .text:0x00002270; // type:function size:0x754
|
||||
fn_155_29D0__8dAcEKs_cFl = .text:0x000029D0; // type:function size:0x1A8
|
||||
fn_155_2B80__8dAcEKs_cFbl = .text:0x00002B80; // type:function size:0x1E0
|
||||
fn_155_2D60__8dAcEKs_cFv = .text:0x00002D60; // type:function size:0x138
|
||||
fn_155_2EA0__8dAcEKs_cFv = .text:0x00002EA0; // type:function size:0x118
|
||||
isOutsideRange__8dAcEKs_cFv = .text:0x00002FC0; // type:function size:0x84
|
||||
isNotWaitingNorDamage__8dAcEKs_cFv = .text:0x00003050; // type:function size:0xAC
|
||||
isTargeted__8dAcEKs_cFv = .text:0x00003100; // type:function size:0xF4
|
||||
ChkWall__8dAcEKs_cFv = .text:0x00003200; // type:function size:0xA4
|
||||
ChkGnd__8dAcEKs_cFv = .text:0x000032B0; // type:function size:0x94
|
||||
ChkRoof__8dAcEKs_cFv = .text:0x00003350; // type:function size:0x94
|
||||
checkWallCross__8dAcEKs_cFv = .text:0x00003200; // type:function size:0xA4
|
||||
adjustTargetGnd__8dAcEKs_cFv = .text:0x000032B0; // type:function size:0x94
|
||||
adjustTargetRoof__8dAcEKs_cFv = .text:0x00003350; // type:function size:0x94
|
||||
ChkHit__8dAcEKs_cFv = .text:0x000033F0; // type:function size:0x68
|
||||
fn_155_3460__8dAcEKs_cFv = .text:0x00003460; // type:function size:0x14
|
||||
fn_155_3480__8dAcEKs_cFv = .text:0x00003480; // type:function size:0x34
|
||||
@@ -58,13 +58,13 @@ setPitchYawToPoint__8dAcEKs_cFRC7mVec3_c = .text:0x00003B70; // type:function si
|
||||
fn_155_3BD0__8dAcEKs_cFRC7mVec3_c = .text:0x00003BD0; // type:function size:0x10
|
||||
fn_155_3BE0__8dAcEKs_cFRC7mVec3_c = .text:0x00003BE0; // type:function size:0x178
|
||||
setBlink__8dAcEKs_cFUc = .text:0x00003D60; // type:function size:0xA8
|
||||
fn_155_3E10 = .text:0x00003E10; // type:function size:0x1C
|
||||
fn_155_3E30 = .text:0x00003E30; // type:function size:0x24
|
||||
fn_155_3E60 = .text:0x00003E60; // type:function size:0x2C
|
||||
checkPathPntParam__8dAcEKs_cFUl = .text:0x00003E10; // type:function size:0x1C
|
||||
fn_155_3E30__8dAcEKs_cFv = .text:0x00003E30; // type:function size:0x24
|
||||
clampRotationX__8dAcEKs_cFv = .text:0x00003E60; // type:function size:0x2C
|
||||
fn_155_3E90__8dAcEKs_cFv = .text:0x00003E90; // type:function size:0x24
|
||||
fn_155_3EC0__8dAcEKs_cFv = .text:0x00003EC0; // type:function size:0x24
|
||||
fn_155_3EF0 = .text:0x00003EF0; // type:function size:0x5C
|
||||
fn_155_3F50 = .text:0x00003F50; // type:function size:0x10C
|
||||
fn_155_3EF0__8dAcEKs_cFv = .text:0x00003EF0; // type:function size:0x5C
|
||||
fn_155_3F50__8dAcEKs_cFv = .text:0x00003F50; // type:function size:0x10C
|
||||
AcEKs__initModels = .text:0x00004060; // type:function size:0x120
|
||||
AcEKs__init1 = .text:0x00004180; // type:function size:0x57C
|
||||
AcEKs__init2 = .text:0x00004700; // type:function size:0x178
|
||||
@@ -174,27 +174,30 @@ lbl_155_data_188 = .data:0x00000188; // type:object size:0x7 data:string
|
||||
lbl_155_data_190 = .data:0x00000190; // type:object size:0x8 data:string
|
||||
lbl_155_data_198 = .data:0x00000198; // type:object size:0x4 data:4byte
|
||||
lbl_155_data_19C = .data:0x0000019C; // type:object size:0x4 data:4byte
|
||||
AcEKs__vtable = .data:0x000001A0; // type:object size:0x90
|
||||
lbl_155_data_230 = .data:0x00000230; // type:object size:0x30
|
||||
lbl_155_data_260 = .data:0x00000260; // type:object size:0x30
|
||||
lbl_155_data_290 = .data:0x00000290; // type:object size:0x18
|
||||
lbl_155_data_2A8 = .data:0x000002A8; // type:object size:0x18
|
||||
lbl_155_data_2C0 = .data:0x000002C0; // type:object size:0xC
|
||||
lbl_155_data_2CC = .data:0x000002CC; // type:object size:0x388
|
||||
__vt__8dAcEKs_c = .data:0x000001A0; // type:object size:0x90
|
||||
__vt__46sFStateMgr_c<8dAcEKs_c,20sStateMethodUsr_FI_c> = .data:0x00000230; // type:object size:0x30
|
||||
__vt__76sStateMgr_c<8dAcEKs_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c> = .data:0x00000260; // type:object size:0x30
|
||||
__vt__23sFStateFct_c<8dAcEKs_c> = .data:0x00000290; // type:object size:0x18
|
||||
__vt__20sFState_c<8dAcEKs_c> = .data:0x000002A8; // type:object size:0x18
|
||||
__vt__14dWaterEffect_c = .data:0x000002C0; // type:object size:0xC
|
||||
__vt__15dShadowCircle_c = .data:0x000002CC; // type:object size:0x388
|
||||
lbl_155_data_654 = .data:0x00000654; // type:object size:0x34
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
lbl_155_bss_8 = .bss:0x00000008; // type:object size:0x10 data:4byte
|
||||
AcEKs__StateID_Wait = .bss:0x00000018; // type:object size:0x40 data:4byte
|
||||
AcEKs__StateID_WakeUp = .bss:0x00000058; // type:object size:0x40 data:4byte
|
||||
AcEKs__StateID_ReturnToWait = .bss:0x00000098; // type:object size:0x40 data:4byte
|
||||
AcEKs__StateID_WaitReady = .bss:0x000000D8; // type:object size:0x80 data:4byte
|
||||
AcEKs__StateID_Chase = .bss:0x00000158; // type:object size:0x40 data:4byte
|
||||
AcEKs__StateID_ChaseAttack = .bss:0x00000198; // type:object size:0x40 data:4byte
|
||||
AcEKs__StateID_Fighting = .bss:0x000001D8; // type:object size:0x40 data:4byte
|
||||
AcEKs__StateID_AttackReady = .bss:0x00000218; // type:object size:0x40 data:4byte
|
||||
AcEKs__StateID_Attack = .bss:0x00000258; // type:object size:0x40 data:4byte
|
||||
AcEKs__StateID_Damage = .bss:0x00000298; // type:object size:0x40 data:4byte
|
||||
AcEKs__StateID_Stun = .bss:0x000002D8; // type:object size:0xB0 data:4byte
|
||||
StateID_Wait__8dAcEKs_c = .bss:0x00000018; // type:object size:0x30 data:4byte
|
||||
StateID_WakeUp__8dAcEKs_c = .bss:0x00000058; // type:object size:0x30 data:4byte
|
||||
StateID_ReturnToWait__8dAcEKs_c = .bss:0x00000098; // type:object size:0x30 data:4byte
|
||||
StateID_WaitReady__8dAcEKs_c = .bss:0x000000D8; // type:object size:0x30 data:4byte
|
||||
StateID_Move__8dAcEKs_c = .bss:0x00000118; // type:object size:0x30 data:4byte
|
||||
StateID_Chase__8dAcEKs_c = .bss:0x00000158; // type:object size:0x30 data:4byte
|
||||
StateID_ChaseAttack__8dAcEKs_c = .bss:0x00000198; // type:object size:0x30 data:4byte
|
||||
StateID_Fighting__8dAcEKs_c = .bss:0x000001D8; // type:object size:0x30 data:4byte
|
||||
StateID_AttackReady__8dAcEKs_c = .bss:0x00000218; // type:object size:0x30 data:4byte
|
||||
StateID_Attack__8dAcEKs_c = .bss:0x00000258; // type:object size:0x30 data:4byte
|
||||
StateID_Damage__8dAcEKs_c = .bss:0x00000298; // type:object size:0x30 data:4byte
|
||||
StateID_Stun__8dAcEKs_c = .bss:0x000002D8; // type:object size:0x30 data:4byte
|
||||
StateID_WindBlow__8dAcEKs_c = .bss:0x00000318; // type:object size:0x30 data:4byte
|
||||
StateID_PathMove__8dAcEKs_c = .bss:0x00000358; // type:object size:0x30 data:4byte
|
||||
lbl_155_bss_388 = .bss:0x00000388; // type:object size:0x1 data:byte
|
||||
lbl_155_bss_389 = .bss:0x00000389; // type:object size:0x1 data:byte
|
||||
lbl_155_bss_38A = .bss:0x0000038A; // type:object size:0x1 data:byte
|
||||
|
||||
@@ -1159,8 +1159,8 @@ fn_8002F710 = .text:0x8002F710; // type:function size:0x110
|
||||
checkRefArrayAtIndex__17daPlayerActBase_cFv = .text:0x8002F820; // type:function size:0x8
|
||||
sizeOfActorRefs_16__17daPlayerActBase_cFv = .text:0x8002F830; // type:function size:0x8
|
||||
fn_8002F840 = .text:0x8002F840; // type:function size:0x8
|
||||
fn_8002F850 = .text:0x8002F850; // type:function size:0x70
|
||||
fn_8002F8C0 = .text:0x8002F8C0; // type:function size:0x70
|
||||
playDeathEffect0__11dAcEnBase_cFRC7mVec3_cPC7mVec3_cb = .text:0x8002F850; // type:function size:0x70
|
||||
playDeathEffect1__11dAcEnBase_cFRC7mVec3_cPC7mVec3_cb = .text:0x8002F8C0; // type:function size:0x70
|
||||
fn_8002F930 = .text:0x8002F930; // type:function size:0xB4
|
||||
ActorEnemyBase__setEndat = .text:0x8002F9F0; // type:function size:0x88
|
||||
fn_8002FA80 = .text:0x8002FA80; // type:function size:0xB4
|
||||
@@ -1180,9 +1180,9 @@ fn_80030390 = .text:0x80030390; // type:function size:0x64
|
||||
fn_80030400__11dAcEnBase_cFRQ23m3d5mdl_cUcbUc = .text:0x80030400; // type:function size:0x168
|
||||
fn_80030570 = .text:0x80030570; // type:function size:0x144
|
||||
fn_800306C0 = .text:0x800306C0; // type:function size:0x10
|
||||
fn_800306D0 = .text:0x800306D0; // type:function size:0x24
|
||||
fn_80030700 = .text:0x80030700; // type:function size:0x24
|
||||
attackPlayerOrScrapper__11dAcEnBase_cFf = .text:0x80030730; // type:function size:0xB0
|
||||
fn_800306D0__11dAcEnBase_cFv = .text:0x800306D0; // type:function size:0x24
|
||||
fn_80030700__11dAcEnBase_cFv = .text:0x80030700; // type:function size:0x24
|
||||
targetPlayerOrScrapper__11dAcEnBase_cFf = .text:0x80030730; // type:function size:0xB0
|
||||
fn_800307E0 = .text:0x800307E0; // type:function size:0x34
|
||||
fn_80030820 = .text:0x80030820; // type:function size:0x14
|
||||
fn_80030840 = .text:0x80030840; // type:function size:0x13C
|
||||
@@ -10102,7 +10102,7 @@ fn_8018B1D0 = .text:0x8018B1D0; // type:function size:0x60
|
||||
fn_8018B230 = .text:0x8018B230; // type:function size:0x74
|
||||
ActorLink__handleHotPumpkinSoup = .text:0x8018B2B0; // type:function size:0xE4
|
||||
fn_8018B3A0 = .text:0x8018B3A0; // type:function size:0x80
|
||||
shouldDropItemForChance = .text:0x8018B420; // type:function size:0x84
|
||||
tryDropItem__Ff = .text:0x8018B420; // type:function size:0x84
|
||||
getMaxBeaconCount__Fv = .text:0x8018B4B0; // type:function size:0x44
|
||||
doesStageForbidBeaconPlacement__Fv = .text:0x8018B500; // type:function size:0x40
|
||||
getBeaconPosition__FUl = .text:0x8018B540; // type:function size:0x60
|
||||
|
||||
+113
-16
@@ -43,25 +43,46 @@ public:
|
||||
STATE_FUNC_DECLARE(dAcEKs_c, WindBlow);
|
||||
STATE_FUNC_DECLARE(dAcEKs_c, PathMove);
|
||||
|
||||
STATE_MGR_DEFINE_UTIL_CHANGESTATE(dAcEKs_c);
|
||||
STATE_MGR_DEFINE_UTIL_ISSTATE(dAcEKs_c);
|
||||
|
||||
public:
|
||||
void linkKiesuTag(dTgKiesuTag_c *pTgKs);
|
||||
void setStartingState();
|
||||
void setIdleState();
|
||||
|
||||
void fn_155_A60();
|
||||
|
||||
f32 getLineCrossYRange(const mVec3_c &pos, f32 range);
|
||||
|
||||
void kill(bool dropItem);
|
||||
void chaseTargetY(f32, f32);
|
||||
void playBlinkAnm();
|
||||
void soundSqueak();
|
||||
void soundStun();
|
||||
void fn_155_1430();
|
||||
|
||||
void fn_155_1470();
|
||||
|
||||
// Move impl?
|
||||
void fn_155_1C80();
|
||||
|
||||
/* 0 -> blink_1, 1 -> blink_2, 2 -> blink_3*/
|
||||
void setBlink(u8 blink);
|
||||
void setBlinkChecked(u8 blink);
|
||||
|
||||
void fn_155_2270();
|
||||
/* p1 = 0 -> just LineCross return check, 1 -> increment field_0xDCB till 10 then return check*/
|
||||
bool fn_155_29D0(s32 p1);
|
||||
bool fn_155_2B80(bool b, s32 p1);
|
||||
bool fn_155_2D60(bool b, s32 p1);
|
||||
bool fn_155_2EA0();
|
||||
bool isOutsideRange();
|
||||
bool isNotWaitingNorDamage();
|
||||
bool isTargeted();
|
||||
bool ChkWall();
|
||||
void ChkGnd();
|
||||
void ChkRoof();
|
||||
bool checkWallCross();
|
||||
void adjustTargetGnd();
|
||||
void adjustTargetRoof();
|
||||
bool ChkHit();
|
||||
void fn_155_3460();
|
||||
void fn_155_3480();
|
||||
@@ -79,9 +100,17 @@ public:
|
||||
void setPitchYawToPoint(const mVec3_c &pnt);
|
||||
void fn_155_3BD0(const mVec3_c &);
|
||||
void fn_155_3BE0(const mVec3_c &);
|
||||
void clampRotationX();
|
||||
bool checkPathPntParam(u32 param);
|
||||
void fn_155_3E30();
|
||||
void fn_155_3E90();
|
||||
void fn_155_3EC0();
|
||||
|
||||
/* Some Timestone Check */
|
||||
bool fn_155_3EF0();
|
||||
|
||||
void fn_155_3F50();
|
||||
|
||||
private:
|
||||
/* 0x378 */ dAcRef_c<dTgKiesuTag_c> mTgRef;
|
||||
/* 0x384 */ nw4r::g3d::ResFile mResFile;
|
||||
@@ -101,44 +130,112 @@ private:
|
||||
/* 0xAA8 */ u8 field_0xAB0;
|
||||
/* 0xAB1 */ u8 _0xAB1[0xB14 - 0xAB1];
|
||||
/* 0xB14 */ mVec3_c mPnts[10];
|
||||
/* 0xB8C */ u8 _0xB8C[0xBB0 - 0xB8C];
|
||||
/* 0xBB0 */ mVec3_c field_0xBB0;
|
||||
/* 0xB8C */ mVec3_c field_0xB8C;
|
||||
/* 0xB98 */ u8 _0xB98[0xBB0 - 0xB98];
|
||||
/* 0xBB0 */ mVec3_c mTargetPos;
|
||||
/* 0xBBC */ mVec3_c field_0xBBC;
|
||||
/* 0xBC8 */ u8 _0xBC8[0xBF8 - 0xBC8];
|
||||
/* 0xBC8 */ mVec3_c field_0xBC8;
|
||||
/* 0xBD4 */ mVec3_c field_0xBD4;
|
||||
/* 0xBE0 */ mVec3_c field_0xBE0;
|
||||
/* 0xBEC */ mVec3_c field_0xBEC;
|
||||
/* 0xBF8 */ mVec3_c field_0xBF8;
|
||||
/* 0xC04 */ u8 _0xC04[0xC28 - 0xC04];
|
||||
/* 0xC04 */ mVec3_c field_0xC04;
|
||||
/* 0xC10 */ mVec3_c field_0xC10;
|
||||
/* 0xC1C */ mVec3_c field_0xC1C;
|
||||
/* 0xC28 */ mVec3_c field_0xC28;
|
||||
/* 0xC34 */ mAng mPitch_0xC34;
|
||||
/* 0xC36 */ mAng mYaw_0xC36;
|
||||
/* 0xC38 */ u8 _0xC38[0xC3C - 0xC38];
|
||||
/* 0xC3C */ f32 field_0xC3C;
|
||||
/* 0xC40 */ f32 field_0xC40;
|
||||
/* 0xC44 */ u8 _0xC44[0xD1C - 0xC44];
|
||||
/* 0xC44 */ f32 field_0xC44;
|
||||
/* 0xC48 */ f32 field_0xC48;
|
||||
/* 0xC4C */ u8 _0xC4C[0xC70 - 0xC4C];
|
||||
/* 0xC70 */ f32 field_0xC70;
|
||||
/* 0xC74 */ u8 _0xC74[0xD00 - 0xC74];
|
||||
/* 0xD00 */ f32 field_0xD00;
|
||||
/* 0xD04 */ f32 field_0xD04;
|
||||
/* 0xD08 */ f32 field_0xD08;
|
||||
/* 0xD0C */ f32 field_0xD0C;
|
||||
/* 0xD10 */ f32 field_0xD10;
|
||||
/* 0xD14 */ f32 field_0xD14;
|
||||
/* 0xD18 */ f32 field_0xD18;
|
||||
/* 0xD1C */ f32 field_0xD1C;
|
||||
/* 0xD20 */ f32 field_0xD20;
|
||||
/* 0xD24 */ u8 _0xD24[0xD32 - 0xD24];
|
||||
/* 0xD32 */ s16 mTimer;
|
||||
/* 0xD34 */ u8 _0xD34[0xD60 - 0xD34];
|
||||
/* 0xD34 */ u8 _0xD34[0xD52 - 0xD34];
|
||||
/* 0xD52 */ s16 field_0xD52;
|
||||
/* 0xD54 */ s16 field_0xD54;
|
||||
/* 0xD56 */ u8 _0xD56[0xD5E - 0xD56];
|
||||
/* 0xD5E */ s16 field_0xD5E;
|
||||
/* 0xD60 */ s16 field_0xD60;
|
||||
/* 0xD62 */ u8 _0xD62[0xDA6 - 0xD62];
|
||||
/* 0xD62 */ u8 _0xD62[0xD6A - 0xD62];
|
||||
/* 0xD6A */ s16 field_0xD6A;
|
||||
/* 0xD6C */ s16 field_0xD6C;
|
||||
/* 0xD6E */ s16 field_0xD6E;
|
||||
/* 0xD70 */ s16 field_0xD70;
|
||||
/* 0xD72 */ s16 field_0xD72;
|
||||
/* 0xD74 */ s16 field_0xD74;
|
||||
/* 0xD76 */ s16 field_0xD76;
|
||||
/* 0xD78 */ s16 mBlinkTimer;
|
||||
/* 0xD7A */ s16 field_0xD7A;
|
||||
/* 0xD7C */ s16 field_0xD7C;
|
||||
/* 0xD7E */ s16 mSqueakSoundTimer;
|
||||
/* 0xD80 */ s16 mStunSoundTimer;
|
||||
/* 0xD82 */ s16 field_0xD82;
|
||||
/* 0xD84 */ s16 field_0xD84;
|
||||
/* 0xD86 */ s16 field_0xD86;
|
||||
/* 0xD88 */ s16 field_0xD88;
|
||||
/* 0xD8A */ s16 field_0xD8A;
|
||||
/* 0xD8C */ s16 field_0xD8C;
|
||||
/* 0xD8E */ s16 field_0xD8E;
|
||||
/* 0xD90 */ s16 field_0xD90;
|
||||
/* 0xD92 */ s16 field_0xD92;
|
||||
/* 0xD94 */ s16 field_0xD94;
|
||||
/* 0xD96 */ s16 field_0xD96;
|
||||
/* 0xD98 */ s16 field_0xD98;
|
||||
/* 0xD9A */ s16 field_0xD9A;
|
||||
/* 0xD9C */ s16 field_0xD9C;
|
||||
/* 0xD9E */ s16 field_0xD9E;
|
||||
/* 0xDA0 */ s16 field_0xDA0;
|
||||
/* 0xDA2 */ u8 _0xDA2[0xDA5 - 0xDA2];
|
||||
/* 0xDA5 */ u8 field_0xDA5;
|
||||
/* 0xDA6 */ u8 field_0xDA6;
|
||||
/* 0xDA7 */ u8 field_0xDA7;
|
||||
/* 0xDA8 */ u8 field_0xDA8;
|
||||
/* 0xDA9 */ u8 field_0xDA9;
|
||||
/* 0xDAA */ u8 _0xDAA[0xDB1 - 0xDAA];
|
||||
/* 0xDAA */ u8 _0xDAA[0xDAF - 0xDAA];
|
||||
/* 0xDAF */ u8 field_0xDAF;
|
||||
/* 0xDB0 */ u8 field_0xDB0;
|
||||
/* 0xDB1 */ u8 field_0xDB1;
|
||||
/* 0xDB2 */ u8 field_0xDB2;
|
||||
/* 0xDB3 */ u8 _0xDB3[0xDBB - 0xDB3];
|
||||
/* 0xDB3 */ u8 field_0xDB3;
|
||||
/* 0xDB4 */ u8 field_0xDB4;
|
||||
/* 0xDB5 */ u8 field_0xDB5;
|
||||
/* 0xDB6 */ u8 field_0xDB6;
|
||||
/* 0xDB7 */ u8 field_0xDB7;
|
||||
/* 0xDB8 */ u8 field_0xDB8;
|
||||
/* 0xDB9 */ u8 field_0xDB9;
|
||||
/* 0xDBA */ u8 field_0xDBA;
|
||||
/* 0xDBB */ u8 field_0xDBB;
|
||||
/* 0xDBC */ u8 mType;
|
||||
/* 0xDBD */ u8 _0xDBD[0xDC0 - 0xDBD];
|
||||
/* 0xDC2 */ u8 mCurrentAnmTexPat; // blink
|
||||
/* 0xDBD */ u8 field_0xDBD;
|
||||
/* 0xDBE */ u8 field_0xDBE;
|
||||
/* 0xDBF */ u8 field_0xDBF;
|
||||
/* 0xDC0 */ u8 mCurrentAnmTexPat; // blink
|
||||
/* 0xDC1 */ u8 field_0xDC1;
|
||||
/* 0xDC2 */ u8 mCurrentState;
|
||||
/* 0xDC3 */ u8 mNextState;
|
||||
/* 0xDC4 */ u8 _0xDC4[0xDC7 - 0xDC4];
|
||||
/* 0xDC4 */ u8 field_0xDC4;
|
||||
/* 0xDC5 */ u8 field_0xDC5;
|
||||
/* 0xDC6 */ u8 field_0xDC6;
|
||||
/* 0xDC7 */ u8 mStartingState;
|
||||
/* 0xDC8 */ u8 _0xDC8[0xDCF - 0xDB8];
|
||||
/* 0xDC8 */ u8 field_0xDC8;
|
||||
/* 0xDC9 */ u8 field_0xDC9;
|
||||
/* 0xDCA */ u8 field_0xDCA;
|
||||
/* 0xDCB */ u8 field_0xDCB;
|
||||
/* 0xDCC */ u8 _0xDCC[0xDCF - 0xDCC];
|
||||
/* 0xDCF */ u8 field_0xDCF;
|
||||
/* 0xDD0 */ u8 _0xDD0[0xDD4 - 0xDD0];
|
||||
/* 0xDD4 */ mVec3_c mHomePos;
|
||||
|
||||
@@ -68,6 +68,9 @@ public:
|
||||
|
||||
dAcBomb_c *getBombWithinRadius(f32 radius); // fn_8002f700
|
||||
|
||||
void playDeathEffect0(const mVec3_c &pos, const mVec3_c *pScale, bool skipKill);
|
||||
void playDeathEffect1(const mVec3_c &pos, const mVec3_c *pScale, bool skipKill);
|
||||
|
||||
// Deals with dealing damage to Enemy
|
||||
// Returns a value 0-13 (similar to mStts rank?)
|
||||
int fn_8002FDE0(cCcD_Obj &mCc, u16 *pTgOut);
|
||||
@@ -75,9 +78,9 @@ public:
|
||||
// Returns 0-3 based on collision
|
||||
int fn_800301b0(const mVec3_c &pos, mAng ang, bool, f32);
|
||||
void fn_80030400(m3d::mdl_c &, u8, bool, u8);
|
||||
void fn_800306d0();
|
||||
void fn_800306D0();
|
||||
void fn_80030700();
|
||||
dAcObjBase_c *attackPlayerOrScrapper(f32 biasToScrapper);
|
||||
dAcObjBase_c *targetPlayerOrScrapper(f32 biasToScrapper);
|
||||
static void fn_80030980(m3d::mdl_c &, s32, bool markDirty);
|
||||
|
||||
void fn_80030c20(u32 flags, f32, f32, f32, f32);
|
||||
|
||||
@@ -101,6 +101,9 @@ public:
|
||||
mVec3_c &getStartingPosition() {
|
||||
return mStartingPos;
|
||||
}
|
||||
const mVec3_c &getStartingPos() const {
|
||||
return mStartingPos;
|
||||
}
|
||||
void setStartingPosition(const mVec3_c &v) {
|
||||
mStartingPos = v;
|
||||
}
|
||||
|
||||
@@ -813,7 +813,7 @@ public:
|
||||
bool ChkTgBit23() const;
|
||||
bool ChkTgBit24() const;
|
||||
bool ChkTgBit25() const;
|
||||
u16 GetTgSoundID() const;
|
||||
s32 GetTgSoundID() const;
|
||||
s16 GetTg_0x6A() const;
|
||||
bool ChkTgBit8() const;
|
||||
u8 GetTg_0x4A() const;
|
||||
|
||||
@@ -25,6 +25,8 @@ bool swapStockItems(s32 slot1, s32 slot2);
|
||||
|
||||
void sortStock();
|
||||
|
||||
bool tryDropItem(f32 chance);
|
||||
|
||||
#define ITEM_CHECK_SLOT_NONE 60
|
||||
|
||||
u16 itemCheckFindItemSlot(ITEM_ID item);
|
||||
|
||||
+77
-1
@@ -1,9 +1,16 @@
|
||||
#ifndef D_T_KS_H
|
||||
#define D_T_KS_H
|
||||
|
||||
#include "d/a/d_a_base.h"
|
||||
#include "d/t/d_tg.h"
|
||||
#include "m/m_angle.h"
|
||||
#include "m/m_mtx.h"
|
||||
#include "m/m_vec.h"
|
||||
#include "s/s_State.hpp"
|
||||
#include "toBeSorted/d_path.h"
|
||||
#include "toBeSorted/time_area_mgr.h"
|
||||
|
||||
class dAcEKs_c;
|
||||
class dTgKiesuTag_c : public dTg_c {
|
||||
public:
|
||||
dTgKiesuTag_c() : mStateMgr(*this) {}
|
||||
@@ -17,8 +24,77 @@ public:
|
||||
STATE_FUNC_DECLARE(dTgKiesuTag_c, ControlPathMove);
|
||||
STATE_FUNC_DECLARE(dTgKiesuTag_c, DoNothing);
|
||||
|
||||
/* fn_154_8B0 */
|
||||
mVec3_c &getSpawnKsPosition();
|
||||
|
||||
void incrementField_0x456() {
|
||||
field_0x456++;
|
||||
}
|
||||
|
||||
private:
|
||||
/* 0x??? */ STATE_MGR_DECLARE(dTgKiesuTag_c);
|
||||
/* 0x0FC */ STATE_MGR_DECLARE(dTgKiesuTag_c);
|
||||
/* 0x138 */ dAcRef_c<dAcEKs_c> mKsRefs[16];
|
||||
/* 0x1F8 */ mMtx_c mAreaMtx;
|
||||
/* 0x228 */ ActorOnRail_Ext mRail;
|
||||
/* 0x25C */ TimeAreaStruct mTimeArea;
|
||||
/* 0x268 */ mMtx_c field_0x268;
|
||||
|
||||
/* 0x31C */ mVec3_c field_0x31C;
|
||||
/* 0x328 */ mVec3_c field_0x328;
|
||||
/* 0x334 */ mVec3_c field_0x334;
|
||||
/* 0x340 */ mVec3_c field_0x340;
|
||||
/* 0x34C */ mVec3_c field_0x34C;
|
||||
|
||||
/* 0x37C */ mVec3_c mTargetPosition;
|
||||
/* 0x388 */ mVec3_c mSpawnKsPosition;
|
||||
|
||||
/* 0x3A0 */ mAng3_c mSpawnKsAngle;
|
||||
/* 0x3A8 */ mAng3_c field_0x3A8;
|
||||
/* 0x3AC */ mAng field_0x3AC; // pitch
|
||||
/* 0x3AE */ mAng field_0x3AE; // yaw
|
||||
|
||||
/* 0x3B4 */ f32 field_0x3B4;
|
||||
/* 0x3B8 */ f32 field_0x3B8; // Y pos offset
|
||||
/* 0x3BC */ f32 field_0x3BC; // X/Z scale
|
||||
/* 0x3C0 */ f32 field_0x3C0; // Y scale
|
||||
|
||||
/* 0x3D8 */ f32 field_0x3D8; // Y scale
|
||||
/* 0x3DC */ f32 field_0x3DC; // X/Z scale
|
||||
|
||||
/* 0x3EC */ mVec3_c field_0x3EC;
|
||||
|
||||
/* 0x44C */ s16 field_0x448;
|
||||
|
||||
// Related to Control?
|
||||
/* 0x44C */ s16 field_0x44C;
|
||||
/* 0x44E */ s16 field_0x44E;
|
||||
/* 0x450 */ s16 field_0x450;
|
||||
|
||||
// Related to ControlFighting?
|
||||
/* 0x452 */ s16 field_0x452;
|
||||
/* 0x454 */ s16 field_0x454;
|
||||
/* 0x456 */ s16 field_0x456;
|
||||
/* 0x458 */ s16 field_0x458;
|
||||
/* 0x45A */ s16 field_0x45A;
|
||||
/* 0x45C */ s16 field_0x45C;
|
||||
/* 0x45E */ s16 field_0x45E;
|
||||
|
||||
/* 0x460 */ s16 field_0x460;
|
||||
/* 0x462 */ s16 mMaxKsToLink;
|
||||
|
||||
/* 0x468 */ s16 field_0x468;
|
||||
|
||||
/* 0x46C */ s16 mNumKsAlive;
|
||||
/* 0x46E */ s16 field435_0x46e;
|
||||
|
||||
/* 0x44A */ s16 mNumKsControl;
|
||||
|
||||
/* 0x474 */ bool field_0x474;
|
||||
/* 0x47E */ bool mbAllKsActive;
|
||||
|
||||
/* 0x48A */ u8 field_0x48A; // Related to getting spawnPos/ Type?
|
||||
|
||||
/* 0x48E */ u8 mNumKsActive;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
||||
+896
-50
File diff suppressed because it is too large
Load Diff
@@ -285,7 +285,7 @@ int dAcEsm_c::actorPostCreate() {
|
||||
} else {
|
||||
mTimeArea.setField0x00(0.f);
|
||||
field_0xB8C = 0.f;
|
||||
fn_800306d0();
|
||||
fn_800306D0();
|
||||
}
|
||||
} break;
|
||||
case 2: {
|
||||
@@ -293,7 +293,7 @@ int dAcEsm_c::actorPostCreate() {
|
||||
if (dTimeAreaMgr_c::GetInstance()->fn_800B9B60(getRoomId(), getPosition())) {
|
||||
field_0xB8C = 0.f;
|
||||
mTimeArea.setField0x00(0.f);
|
||||
fn_800306d0();
|
||||
fn_800306D0();
|
||||
} else {
|
||||
field_0xB8C = 1.f;
|
||||
mTimeArea.setField0x00(1.f);
|
||||
@@ -309,7 +309,7 @@ int dAcEsm_c::actorPostCreate() {
|
||||
|
||||
if (field_0xBBF == 1 || field_0xBBF == 3) {
|
||||
unsetActorProperty(AC_PROP_0x1);
|
||||
fn_800306d0();
|
||||
fn_800306D0();
|
||||
setBattleBgmRelated(0);
|
||||
}
|
||||
|
||||
@@ -370,7 +370,7 @@ int dAcEsm_c::actorExecute() {
|
||||
if (timeCheck != 0) {
|
||||
if (field_0xBBF == 3) {
|
||||
if (checkInteractionFlags(INTERACT_0x4)) {
|
||||
fn_800306d0();
|
||||
fn_800306D0();
|
||||
}
|
||||
return SUCCEEDED;
|
||||
}
|
||||
@@ -392,7 +392,7 @@ int dAcEsm_c::actorExecute() {
|
||||
|
||||
if (timeCheck > 0) {
|
||||
startSound(SE_TIMESLIP_TIMESLIP);
|
||||
fn_800306d0();
|
||||
fn_800306D0();
|
||||
} else {
|
||||
startSound(SE_TIMESLIP_TIMESLIP_REV);
|
||||
fn_80030700();
|
||||
@@ -401,7 +401,7 @@ int dAcEsm_c::actorExecute() {
|
||||
|
||||
if (field_0xBBF == 3 && mTimeArea.isNearZero()) {
|
||||
if (checkInteractionFlags(INTERACT_0x4)) {
|
||||
fn_800306d0();
|
||||
fn_800306D0();
|
||||
}
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
@@ -486,7 +486,7 @@ bool cCcD_Obj::ChkTgBit25() const {
|
||||
return mTg.MskAtHitSPrm(0x2000000);
|
||||
}
|
||||
|
||||
u16 cCcD_Obj::GetTgSoundID() const {
|
||||
s32 cCcD_Obj::GetTgSoundID() const {
|
||||
return mTg.mAtHitSrc.field_0x10;
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user