mirror of
https://github.com/zeldaret/ss.git
synced 2024-12-04 11:54:36 +00:00
Merge pull request #98 from robojumper/npc-virtual-states
Virtual states, d_a_npc_rival_lod OK, d_a_npc_saltalk almost
This commit is contained in:
commit
7ead1b24c0
@ -17,3 +17,6 @@ REL/global_destructor_chain.c:
|
||||
REL/d/a/npc/d_a_npc_rival_lod.cpp:
|
||||
.text start:0x000000F0 end:0x00000EA8
|
||||
.ctors start:0x00000000 end:0x00000004
|
||||
.rodata start:0x00000000 end:0x00000028
|
||||
.data start:0x00000000 end:0x0000037C
|
||||
.bss start:0x00000008 end:0x00000048
|
||||
|
@ -4,59 +4,59 @@ _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
|
||||
dAcNpcRivalLOD_c_classInit__Fv = .text:0x000000F0; // type:function size:0x100
|
||||
fn_22_1F0 = .text:0x000001F0; // type:function size:0x58
|
||||
__dt__15dShadowCircle_cFv = .text:0x000001F0; // type:function size:0x58
|
||||
__dt__29sFState_c<16dAcNpcRivalLOD_c>Fv = .text:0x00000250; // type:function size:0x58
|
||||
__dt__32sFStateFct_c<16dAcNpcRivalLOD_c>Fv = .text:0x000002B0; // type:function size:0x6C
|
||||
__dt__85sStateMgr_c<16dAcNpcRivalLOD_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x00000320; // type:function size:0xA0
|
||||
__dt__55sFStateMgr_c<16dAcNpcRivalLOD_c,20sStateMethodUsr_FI_c>Fv = .text:0x000003C0; // type:function size:0xA4
|
||||
fn_22_470 = .text:0x00000470; // type:function size:0x7C
|
||||
fn_22_4F0 = .text:0x000004F0; // type:function size:0xD4
|
||||
fn_22_5D0 = .text:0x000005D0; // type:function size:0x10
|
||||
createHeap__16dAcNpcRivalLOD_cFv = .text:0x00000470; // type:function size:0x7C
|
||||
create__16dAcNpcRivalLOD_cFv = .text:0x000004F0; // type:function size:0xD4
|
||||
setState__16dAcNpcRivalLOD_cFRC12sStateIDIf_c = .text:0x000005D0; // type:function size:0x10
|
||||
changeState__85sStateMgr_c<16dAcNpcRivalLOD_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>FRC12sStateIDIf_c = .text:0x000005E0; // type:function size:0x10
|
||||
fn_22_5F0 = .text:0x000005F0; // type:function size:0x8
|
||||
fn_22_600 = .text:0x00000600; // type:function size:0x50
|
||||
fn_22_650 = .text:0x00000650; // type:function size:0x10
|
||||
doDelete__16dAcNpcRivalLOD_cFv = .text:0x000005F0; // type:function size:0x8
|
||||
actorExecute__16dAcNpcRivalLOD_cFv = .text:0x00000600; // type:function size:0x50
|
||||
executeState__16dAcNpcRivalLOD_cFv = .text:0x00000650; // type:function size:0x10
|
||||
executeState__85sStateMgr_c<16dAcNpcRivalLOD_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x00000660; // type:function size:0x10
|
||||
fn_22_670 = .text:0x00000670; // type:function size:0x28
|
||||
fn_22_6A0 = .text:0x000006A0; // type:function size:0x24
|
||||
fn_22_6D0 = .text:0x000006D0; // type:function size:0x10
|
||||
fn_22_6E0 = .text:0x000006E0; // type:function size:0x4
|
||||
fn_22_6F0 = .text:0x000006F0; // type:function size:0x8
|
||||
fn_22_700 = .text:0x00000700; // type:function size:0x34
|
||||
fn_22_740 = .text:0x00000740; // type:function size:0x14
|
||||
fn_22_760 = .text:0x00000760; // type:function size:0x34
|
||||
fn_22_7A0 = .text:0x000007A0; // type:function size:0x8
|
||||
fn_22_7B0 = .text:0x000007B0; // type:function size:0x8
|
||||
fn_22_7C0 = .text:0x000007C0; // type:function size:0x8
|
||||
fn_22_7D0 = .text:0x000007D0; // type:function size:0x8
|
||||
fn_22_7E0 = .text:0x000007E0; // type:function size:0x8
|
||||
fn_22_7F0 = .text:0x000007F0; // type:function size:0x4
|
||||
fn_22_800 = .text:0x00000800; // type:function size:0x4
|
||||
fn_22_810 = .text:0x00000810; // type:function size:0x4
|
||||
fn_22_820 = .text:0x00000820; // type:function size:0x4
|
||||
fn_22_830 = .text:0x00000830; // type:function size:0x8
|
||||
fn_22_840 = .text:0x00000840; // type:function size:0x8
|
||||
fn_22_850 = .text:0x00000850; // type:function size:0x8
|
||||
fn_22_860 = .text:0x00000860; // type:function size:0x8
|
||||
fn_22_870 = .text:0x00000870; // type:function size:0x4
|
||||
fn_22_880 = .text:0x00000880; // type:function size:0x4
|
||||
fn_22_890 = .text:0x00000890; // type:function size:0x8
|
||||
fn_22_8A0 = .text:0x000008A0; // type:function size:0x8
|
||||
fn_22_8B0 = .text:0x000008B0; // type:function size:0x8
|
||||
fn_22_8C0 = .text:0x000008C0; // type:function size:0x8
|
||||
fn_22_8D0 = .text:0x000008D0; // type:function size:0x8
|
||||
fn_22_8E0 = .text:0x000008E0; // type:function size:0x8
|
||||
fn_22_8F0 = .text:0x000008F0; // type:function size:0x8
|
||||
fn_22_900 = .text:0x00000900; // type:function size:0x8
|
||||
fn_22_910 = .text:0x00000910; // type:function size:0x8
|
||||
fn_22_920 = .text:0x00000920; // type:function size:0x8
|
||||
fn_22_930 = .text:0x00000930; // type:function size:0x8
|
||||
fn_22_940 = .text:0x00000940; // type:function size:0x8
|
||||
fn_22_950 = .text:0x00000950; // type:function size:0x8
|
||||
fn_22_960 = .text:0x00000960; // type:function size:0x4
|
||||
fn_22_970 = .text:0x00000970; // type:function size:0x4
|
||||
fn_22_980 = .text:0x00000980; // type:function size:0x1C
|
||||
fn_22_9A0 = .text:0x000009A0; // type:function size:0x58
|
||||
draw__16dAcNpcRivalLOD_cFv = .text:0x00000670; // type:function size:0x28
|
||||
initializeState_Wait__16dAcNpcRivalLOD_cFv = .text:0x000006A0; // type:function size:0x24
|
||||
executeState_Wait__16dAcNpcRivalLOD_cFv = .text:0x000006D0; // type:function size:0x10
|
||||
finalizeState_Wait__16dAcNpcRivalLOD_cFv = .text:0x000006E0; // type:function size:0x4
|
||||
acNpc_vt_0x204__8dAcNpc_cFv = .text:0x000006F0; // type:function size:0x8
|
||||
acNpc_vt_0x200__8dAcNpc_cFv = .text:0x00000700; // type:function size:0x34
|
||||
acNpc_vt_0x1FC__8dAcNpc_cFv = .text:0x00000740; // type:function size:0x14
|
||||
acNpc_vt_0x1F8__8dAcNpc_cFv = .text:0x00000760; // type:function size:0x34
|
||||
acNpc_vt_0x1F4__8dAcNpc_cFv = .text:0x000007A0; // type:function size:0x8
|
||||
acNpc_vt_0x1F0__8dAcNpc_cFv = .text:0x000007B0; // type:function size:0x8
|
||||
acNpc_vt_0x1EC__8dAcNpc_cFv = .text:0x000007C0; // type:function size:0x8
|
||||
acNpc_vt_0x1E8__8dAcNpc_cFv = .text:0x000007D0; // type:function size:0x8
|
||||
acNpc_vt_0x168__8dAcNpc_cFv = .text:0x000007E0; // type:function size:0x8
|
||||
acNpc_vt_0x160__8dAcNpc_cFv = .text:0x000007F0; // type:function size:0x4
|
||||
acNpc_vt_0x15C__8dAcNpc_cFv = .text:0x00000800; // type:function size:0x4
|
||||
acNpc_vt_0x158__8dAcNpc_cFv = .text:0x00000810; // type:function size:0x4
|
||||
acNpc_vt_0x154__8dAcNpc_cFv = .text:0x00000820; // type:function size:0x4
|
||||
acNpc_vt_0x150__8dAcNpc_cFv = .text:0x00000830; // type:function size:0x8
|
||||
acNpc_vt_0x14C__8dAcNpc_cFv = .text:0x00000840; // type:function size:0x8
|
||||
acNpc_vt_0x12C__8dAcNpc_cFv = .text:0x00000850; // type:function size:0x8
|
||||
acNpc_vt_0x128__8dAcNpc_cFv = .text:0x00000860; // type:function size:0x8
|
||||
acNpc_vt_0x124__8dAcNpc_cFv = .text:0x00000870; // type:function size:0x4
|
||||
acNpc_vt_0x120__8dAcNpc_cFv = .text:0x00000880; // type:function size:0x4
|
||||
acNpc_vt_0x118__8dAcNpc_cFv = .text:0x00000890; // type:function size:0x8
|
||||
acNpc_vt_0x114__8dAcNpc_cFv = .text:0x000008A0; // type:function size:0x8
|
||||
acNpc_vt_0xEC__8dAcNpc_cFv = .text:0x000008B0; // type:function size:0x8
|
||||
getObjectListEntry__8dAcNpc_cFv = .text:0x000008C0; // type:function size:0x8
|
||||
acNpc_vt_0xE4__8dAcNpc_cFv = .text:0x000008D0; // type:function size:0x8
|
||||
acNpc_vt_0xE0__8dAcNpc_cFv = .text:0x000008E0; // type:function size:0x8
|
||||
acNpc_vt_0xDC__8dAcNpc_cFv = .text:0x000008F0; // type:function size:0x8
|
||||
eventFlowSwitch4__8dAcNpc_cFv = .text:0x00000900; // type:function size:0x8
|
||||
eventFlowSwitch3__8dAcNpc_cFv = .text:0x00000910; // type:function size:0x8
|
||||
eventFlowSwitch2__8dAcNpc_cFv = .text:0x00000920; // type:function size:0x8
|
||||
acNpc_vt_0x98__8dAcNpc_cFv = .text:0x00000930; // type:function size:0x8
|
||||
acNpc_vt_0x94__8dAcNpc_cFv = .text:0x00000940; // type:function size:0x8
|
||||
acNpc_vt_0x90__8dAcNpc_cFv = .text:0x00000950; // type:function size:0x8
|
||||
acNpc_vt_0x8C__8dAcNpc_cFv = .text:0x00000960; // type:function size:0x4
|
||||
acNpc_vt_0x88__8dAcNpc_cFv = .text:0x00000970; // type:function size:0x4
|
||||
getPosCopy3__8dAcNpc_cFR7mVec3_c = .text:0x00000980; // type:function size:0x1C
|
||||
isInState__16dAcNpcRivalLOD_cCFRC12sStateIDIf_c = .text:0x000009A0; // type:function size:0x58
|
||||
getStateID__85sStateMgr_c<16dAcNpcRivalLOD_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x00000A00; // type:function size:0x10
|
||||
__dt__16dAcNpcRivalLOD_cFv = .text:0x00000A10; // type:function size:0xDC
|
||||
build__32sFStateFct_c<16dAcNpcRivalLOD_c>FRC12sStateIDIf_c = .text:0x00000AF0; // type:function size:0x60
|
||||
@ -79,18 +79,18 @@ isSameName__31sFStateID_c<16dAcNpcRivalLOD_c>CFPCc = .text:0x00000E20; // type:f
|
||||
_ctors = .ctors:0x00000000; // type:label scope:global
|
||||
_dtors = .dtors:0x00000000; // type:label scope:global
|
||||
__destroy_global_chain_reference = .dtors:0x00000000; // type:object size:0x4 scope:global
|
||||
lbl_22_rodata_0 = .rodata:0x00000000; // type:object size:0x24 data:float
|
||||
lbl_22_rodata_24 = .rodata:0x00000024; // type:object size:0x4 data:float
|
||||
g_profile_NPC_RIVAL_LOD = .data:0x00000000; // type:object size:0x30 data:4byte
|
||||
lbl_22_data_30 = .data:0x00000030; // type:object size:0x10
|
||||
lbl_22_data_40 = .data:0x00000040; // type:object size:0x20
|
||||
lbl_22_data_60 = .data:0x00000060; // type:object size:0x208
|
||||
lbl_22_data_268 = .data:0x00000268; // type:object size:0x30
|
||||
lbl_22_data_298 = .data:0x00000298; // type:object size:0x30
|
||||
lbl_22_data_2C8 = .data:0x000002C8; // type:object size:0x18
|
||||
lbl_22_data_2E0 = .data:0x000002E0; // type:object size:0x18
|
||||
lbl_22_data_2F8 = .data:0x000002F8; // type:object size:0x50
|
||||
lbl_22_data_348 = .data:0x00000348; // type:object size:0x34
|
||||
lbl_22_rodata_0 = .rodata:0x00000000; // type:object size:0x24 scope:local data:float
|
||||
lbl_22_rodata_24 = .rodata:0x00000024; // type:object size:0x4 scope:local data:float
|
||||
g_profile_NPC_RIVAL_LOD = .data:0x00000000; // type:object size:0x10 data:4byte
|
||||
lbl_22_data_30 = .data:0x00000030; // type:object size:0x10 scope:local
|
||||
lbl_22_data_40 = .data:0x00000040; // type:object size:0x20 scope:local
|
||||
__vt__16dAcNpcRivalLOD_c = .data:0x00000060; // type:object size:0x208
|
||||
__vt__55sFStateMgr_c<16dAcNpcRivalLOD_c,20sStateMethodUsr_FI_c> = .data:0x00000268; // type:object size:0x30
|
||||
__vt__85sStateMgr_c<16dAcNpcRivalLOD_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c> = .data:0x00000298; // type:object size:0x30
|
||||
__vt__32sFStateFct_c<16dAcNpcRivalLOD_c> = .data:0x000002C8; // type:object size:0x14
|
||||
__vt__29sFState_c<16dAcNpcRivalLOD_c> = .data:0x000002E0; // type:object size:0x18
|
||||
__vt__15dShadowCircle_c = .data:0x000002F8; // type:object size:0xC
|
||||
__vt__31sFStateID_c<16dAcNpcRivalLOD_c> = .data:0x00000348; // type:object size:0x34
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
lbl_22_bss_8 = .bss:0x00000008; // type:object size:0x10
|
||||
lbl_22_bss_18 = .bss:0x00000018; // type:object size:0x30 data:4byte
|
||||
lbl_22_bss_8 = .bss:0x00000008; // type:object size:0x10 scope:local
|
||||
StateID_Wait__16dAcNpcRivalLOD_c = .bss:0x00000018; // type:object size:0x30 data:4byte
|
||||
|
@ -17,3 +17,6 @@ REL/global_destructor_chain.c:
|
||||
REL/d/a/npc/d_a_npc_saltalk.cpp:
|
||||
.text start:0x000000F0 end:0x000011A0
|
||||
.ctors start:0x00000000 end:0x00000004
|
||||
.rodata start:0x00000000 end:0x00000018
|
||||
.data start:0x00000000 end:0x000002D0
|
||||
.bss start:0x00000008 end:0x00000048
|
||||
|
@ -4,69 +4,69 @@ _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
|
||||
dAcNpcSltk_c_classInit__Fv = .text:0x000000F0; // type:function size:0x70
|
||||
fn_60_160 = .text:0x00000160; // type:function size:0x4
|
||||
fn_60_170 = .text:0x00000170; // type:function size:0x1C4
|
||||
fn_60_340 = .text:0x00000340; // type:function size:0x64
|
||||
fn_60_3B0 = .text:0x000003B0; // type:function size:0x58
|
||||
fn_60_410 = .text:0x00000410; // type:function size:0x128
|
||||
fn_60_540 = .text:0x00000540; // type:function size:0x24
|
||||
fn_60_570 = .text:0x00000570; // type:function size:0x8
|
||||
fn_60_580 = .text:0x00000580; // type:function size:0x8
|
||||
fn_60_590 = .text:0x00000590; // type:function size:0xC
|
||||
fn_60_5A0 = .text:0x000005A0; // type:function size:0xC
|
||||
fn_60_5B0 = .text:0x000005B0; // type:function size:0xC
|
||||
fn_60_5C0 = .text:0x000005C0; // type:function size:0xC
|
||||
fn_60_5D0 = .text:0x000005D0; // type:function size:0xC
|
||||
fn_60_5E0 = .text:0x000005E0; // type:function size:0x24
|
||||
fn_60_610 = .text:0x00000610; // type:function size:0x8
|
||||
fn_60_620 = .text:0x00000620; // type:function size:0x28
|
||||
fn_60_650 = .text:0x00000650; // type:function size:0x2C
|
||||
fn_60_680 = .text:0x00000680; // type:function size:0xF0
|
||||
fn_60_770 = .text:0x00000770; // type:function size:0x4
|
||||
fn_60_780 = .text:0x00000780; // type:function size:0x1FC
|
||||
fn_60_980 = .text:0x00000980; // type:function size:0x4
|
||||
fn_60_990 = .text:0x00000990; // type:function size:0x8
|
||||
fn_60_9A0 = .text:0x000009A0; // type:function size:0x34
|
||||
fn_60_9E0 = .text:0x000009E0; // type:function size:0x14
|
||||
fn_60_A00 = .text:0x00000A00; // type:function size:0x34
|
||||
fn_60_A40 = .text:0x00000A40; // type:function size:0x8
|
||||
fn_60_A50 = .text:0x00000A50; // type:function size:0x8
|
||||
fn_60_A60 = .text:0x00000A60; // type:function size:0x8
|
||||
fn_60_A70 = .text:0x00000A70; // type:function size:0x8
|
||||
fn_60_A80 = .text:0x00000A80; // type:function size:0x8
|
||||
fn_60_A90 = .text:0x00000A90; // type:function size:0x4
|
||||
fn_60_AA0 = .text:0x00000AA0; // type:function size:0x4
|
||||
fn_60_AB0 = .text:0x00000AB0; // type:function size:0x4
|
||||
fn_60_AC0 = .text:0x00000AC0; // type:function size:0x4
|
||||
fn_60_AD0 = .text:0x00000AD0; // type:function size:0x8
|
||||
fn_60_AE0 = .text:0x00000AE0; // type:function size:0x8
|
||||
fn_60_AF0 = .text:0x00000AF0; // type:function size:0x8
|
||||
fn_60_B00 = .text:0x00000B00; // type:function size:0x8
|
||||
fn_60_B10 = .text:0x00000B10; // type:function size:0x4
|
||||
fn_60_B20 = .text:0x00000B20; // type:function size:0x4
|
||||
fn_60_B30 = .text:0x00000B30; // type:function size:0x8
|
||||
fn_60_B40 = .text:0x00000B40; // type:function size:0x8
|
||||
fn_60_B50 = .text:0x00000B50; // type:function size:0x10
|
||||
fn_60_B60 = .text:0x00000B60; // type:function size:0x8
|
||||
fn_60_B70 = .text:0x00000B70; // type:function size:0x8
|
||||
fn_60_B80 = .text:0x00000B80; // type:function size:0x8
|
||||
fn_60_B90 = .text:0x00000B90; // type:function size:0x8
|
||||
fn_60_BA0 = .text:0x00000BA0; // type:function size:0x8
|
||||
fn_60_BB0 = .text:0x00000BB0; // type:function size:0x8
|
||||
fn_60_BC0 = .text:0x00000BC0; // type:function size:0x8
|
||||
fn_60_BD0 = .text:0x00000BD0; // type:function size:0x8
|
||||
fn_60_BE0 = .text:0x00000BE0; // type:function size:0x8
|
||||
fn_60_BF0 = .text:0x00000BF0; // type:function size:0x8
|
||||
fn_60_C00 = .text:0x00000C00; // type:function size:0x4
|
||||
fn_60_C10 = .text:0x00000C10; // type:function size:0x4
|
||||
fn_60_C20 = .text:0x00000C20; // type:function size:0x1C
|
||||
create__12dAcNpcSltk_cFv = .text:0x00000160; // type:function size:0x4
|
||||
actorCreate__12dAcNpcSltk_cFv = .text:0x00000170; // type:function size:0x1C4
|
||||
setState__8dAcNpc_cFRC12sStateIDIf_c = .text:0x00000340; // type:function size:0x64
|
||||
isInState__8dAcNpc_cCFRC12sStateIDIf_c = .text:0x000003B0; // type:function size:0x58
|
||||
actorPostCreate__12dAcNpcSltk_cFv = .text:0x00000410; // type:function size:0x128
|
||||
actorExecute__12dAcNpcSltk_cFv = .text:0x00000540; // type:function size:0x24
|
||||
acNpc_vt_0xDC__12dAcNpcSltk_cFv = .text:0x00000570; // type:function size:0x8
|
||||
draw__12dAcNpcSltk_cFv = .text:0x00000580; // type:function size:0x8
|
||||
getParam0_0__12dAcNpcSltk_cCFv = .text:0x00000590; // type:function size:0xC
|
||||
getParam0_1__12dAcNpcSltk_cCFv = .text:0x000005A0; // type:function size:0xC
|
||||
getParam1__12dAcNpcSltk_cCFv = .text:0x000005B0; // type:function size:0xC
|
||||
getParam2__12dAcNpcSltk_cCFv = .text:0x000005C0; // type:function size:0xC
|
||||
getParam3__12dAcNpcSltk_cCFv = .text:0x000005D0; // type:function size:0xC
|
||||
getParam4__12dAcNpcSltk_cCFv = .text:0x000005E0; // type:function size:0x24
|
||||
getSomething__12dAcNpcSltk_cCFv = .text:0x00000610; // type:function size:0x8
|
||||
isSomething0__12dAcNpcSltk_cCFv = .text:0x00000620; // type:function size:0x28
|
||||
isSomething1__12dAcNpcSltk_cCFv = .text:0x00000650; // type:function size:0x2C
|
||||
checkSomething__12dAcNpcSltk_cCF7mVec3_c = .text:0x00000680; // type:function size:0xF0
|
||||
initializeState_Wait__12dAcNpcSltk_cFv = .text:0x00000770; // type:function size:0x4
|
||||
executeState_Wait__12dAcNpcSltk_cFv = .text:0x00000780; // type:function size:0x1FC
|
||||
finalizeState_Wait__12dAcNpcSltk_cFv = .text:0x00000980; // type:function size:0x4
|
||||
acNpc_vt_0x204__8dAcNpc_cFv = .text:0x00000990; // type:function size:0x8
|
||||
acNpc_vt_0x200__8dAcNpc_cFv = .text:0x000009A0; // type:function size:0x34
|
||||
acNpc_vt_0x1FC__8dAcNpc_cFv = .text:0x000009E0; // type:function size:0x14
|
||||
acNpc_vt_0x1F8__8dAcNpc_cFv = .text:0x00000A00; // type:function size:0x34
|
||||
acNpc_vt_0x1F4__8dAcNpc_cFv = .text:0x00000A40; // type:function size:0x8
|
||||
acNpc_vt_0x1F0__8dAcNpc_cFv = .text:0x00000A50; // type:function size:0x8
|
||||
acNpc_vt_0x1EC__8dAcNpc_cFv = .text:0x00000A60; // type:function size:0x8
|
||||
acNpc_vt_0x1E8__8dAcNpc_cFv = .text:0x00000A70; // type:function size:0x8
|
||||
acNpc_vt_0x168__8dAcNpc_cFv = .text:0x00000A80; // type:function size:0x8
|
||||
acNpc_vt_0x160__8dAcNpc_cFv = .text:0x00000A90; // type:function size:0x4
|
||||
acNpc_vt_0x15C__8dAcNpc_cFv = .text:0x00000AA0; // type:function size:0x4
|
||||
acNpc_vt_0x158__8dAcNpc_cFv = .text:0x00000AB0; // type:function size:0x4
|
||||
acNpc_vt_0x154__8dAcNpc_cFv = .text:0x00000AC0; // type:function size:0x4
|
||||
acNpc_vt_0x150__8dAcNpc_cFv = .text:0x00000AD0; // type:function size:0x8
|
||||
acNpc_vt_0x14C__8dAcNpc_cFv = .text:0x00000AE0; // type:function size:0x8
|
||||
acNpc_vt_0x12C__8dAcNpc_cFv = .text:0x00000AF0; // type:function size:0x8
|
||||
acNpc_vt_0x128__8dAcNpc_cFv = .text:0x00000B00; // type:function size:0x8
|
||||
acNpc_vt_0x124__8dAcNpc_cFv = .text:0x00000B10; // type:function size:0x4
|
||||
acNpc_vt_0x120__8dAcNpc_cFv = .text:0x00000B20; // type:function size:0x4
|
||||
acNpc_vt_0x118__8dAcNpc_cFv = .text:0x00000B30; // type:function size:0x8
|
||||
acNpc_vt_0x114__8dAcNpc_cFv = .text:0x00000B40; // type:function size:0x8
|
||||
executeState__8dAcNpc_cFv = .text:0x00000B50; // type:function size:0x10
|
||||
acNpc_vt_0xEC__8dAcNpc_cFv = .text:0x00000B60; // type:function size:0x8
|
||||
getObjectListEntry__8dAcNpc_cFv = .text:0x00000B70; // type:function size:0x8
|
||||
acNpc_vt_0xE4__8dAcNpc_cFv = .text:0x00000B80; // type:function size:0x8
|
||||
acNpc_vt_0xE0__8dAcNpc_cFv = .text:0x00000B90; // type:function size:0x8
|
||||
eventFlowSwitch4__8dAcNpc_cFv = .text:0x00000BA0; // type:function size:0x8
|
||||
eventFlowSwitch3__8dAcNpc_cFv = .text:0x00000BB0; // type:function size:0x8
|
||||
eventFlowSwitch2__8dAcNpc_cFv = .text:0x00000BC0; // type:function size:0x8
|
||||
acNpc_vt_0x98__8dAcNpc_cFv = .text:0x00000BD0; // type:function size:0x8
|
||||
acNpc_vt_0x94__8dAcNpc_cFv = .text:0x00000BE0; // type:function size:0x8
|
||||
acNpc_vt_0x90__8dAcNpc_cFv = .text:0x00000BF0; // type:function size:0x8
|
||||
acNpc_vt_0x8C__8dAcNpc_cFv = .text:0x00000C00; // type:function size:0x4
|
||||
acNpc_vt_0x88__8dAcNpc_cFv = .text:0x00000C10; // type:function size:0x4
|
||||
getPosCopy3__8dAcNpc_cFR7mVec3_c = .text:0x00000C20; // type:function size:0x1C
|
||||
__dt__12dAcNpcSltk_cFv = .text:0x00000C40; // type:function size:0x78
|
||||
__sinit_\d_a_npc_saltalk_cpp = .text:0x00000CC0; // type:function size:0x124 scope:local
|
||||
__dt__27sFStateID_c<12dAcNpcSltk_c>Fv = .text:0x00000DF0; // type:function size:0x58
|
||||
fn_60_E50 = .text:0x00000E50; // type:function size:0x5C
|
||||
fn_60_EB0 = .text:0x00000EB0; // type:function size:0xC
|
||||
fn_60_EC0 = .text:0x00000EC0; // type:function size:0xDC
|
||||
fn_60_FA0 = .text:0x00000FA0; // type:function size:0xE0
|
||||
__dt__34sFStateVirtualID_c<12dAcNpcSltk_c>Fv = .text:0x00000E50; // type:function size:0x5C
|
||||
baseID_Wait<8dAcNpc_c>__Fv_RC10sStateID_c = .text:0x00000EB0; // type:function size:0xC
|
||||
number__34sFStateVirtualID_c<12dAcNpcSltk_c>CFv = .text:0x00000EC0; // type:function size:0xDC
|
||||
superID__34sFStateVirtualID_c<12dAcNpcSltk_c>CFv = .text:0x00000FA0; // type:function size:0xE0
|
||||
isSameName__27sFStateID_c<12dAcNpcSltk_c>CFPCc = .text:0x00001080; // type:function size:0x88
|
||||
initializeState__27sFStateID_c<12dAcNpcSltk_c>CFR12dAcNpcSltk_c = .text:0x00001110; // type:function size:0x30
|
||||
executeState__27sFStateID_c<12dAcNpcSltk_c>CFR12dAcNpcSltk_c = .text:0x00001140; // type:function size:0x30
|
||||
@ -74,14 +74,14 @@ finalizeState__27sFStateID_c<12dAcNpcSltk_c>CFR12dAcNpcSltk_c = .text:0x00001170
|
||||
_ctors = .ctors:0x00000000; // type:label scope:global
|
||||
_dtors = .dtors:0x00000000; // type:label scope:global
|
||||
__destroy_global_chain_reference = .dtors:0x00000000; // type:object size:0x4 scope:global
|
||||
lbl_60_rodata_0 = .rodata:0x00000000; // type:object size:0x4 data:float
|
||||
lbl_60_rodata_4 = .rodata:0x00000004; // type:object size:0x4 data:float
|
||||
lbl_60_rodata_8 = .rodata:0x00000008; // type:object size:0x8 data:double
|
||||
lbl_60_rodata_10 = .rodata:0x00000010; // type:object size:0x4 data:float
|
||||
lbl_60_rodata_14 = .rodata:0x00000014; // type:object size:0x4 data:float
|
||||
g_profile_NPC_SLTK = .data:0x00000000; // type:object size:0x20 data:4byte
|
||||
lbl_60_data_20 = .data:0x00000020; // type:object size:0x248
|
||||
lbl_60_data_268 = .data:0x00000268; // type:object size:0x68
|
||||
lbl_60_rodata_0 = .rodata:0x00000000; // type:object size:0x4 scope:local data:float
|
||||
lbl_60_rodata_4 = .rodata:0x00000004; // type:object size:0x4 scope:local data:float
|
||||
lbl_60_rodata_8 = .rodata:0x00000008; // type:object size:0x8 scope:local data:double
|
||||
lbl_60_rodata_10 = .rodata:0x00000010; // type:object size:0x4 scope:local data:float
|
||||
lbl_60_rodata_14 = .rodata:0x00000014; // type:object size:0x4 scope:local data:float
|
||||
g_profile_NPC_SLTK = .data:0x00000000; // type:object size:0x10 data:4byte
|
||||
__vt__12dAcNpcSltk_c = .data:0x00000020; // type:object size:0x208
|
||||
__vt__34sFStateVirtualID_c<12dAcNpcSltk_c> = .data:0x00000268; // type:object size:0x34
|
||||
__global_destructor_chain = .bss:0x00000000; // type:object size:0x4 scope:global
|
||||
lbl_60_bss_8 = .bss:0x00000008; // type:object size:0xC
|
||||
lbl_60_bss_14 = .bss:0x00000014; // type:object size:0x34 data:4byte
|
||||
lbl_60_bss_8 = .bss:0x00000008; // type:object size:0xC scope:local
|
||||
StateID_Wait__12dAcNpcSltk_c = .bss:0x00000014; // type:object size:0x34 data:4byte
|
||||
|
@ -102,7 +102,7 @@ fn_61_5710 = .text:0x00005710; // type:function size:0x48
|
||||
fn_61_5760 = .text:0x00005760; // type:function size:0x48
|
||||
fn_61_57B0 = .text:0x000057B0; // type:function size:0x48
|
||||
fn_61_5800 = .text:0x00005800; // type:function size:0xBC
|
||||
fn_61_58C0 = .text:0x000058C0; // type:function size:0x84
|
||||
fn_61_58C0__12dAcNpcSlb2_cFii = .text:0x000058C0; // type:function size:0x84
|
||||
fn_61_5950 = .text:0x00005950; // type:function size:0x1EC
|
||||
fn_61_5B40 = .text:0x00005B40; // type:function size:0x130
|
||||
fn_61_5C70 = .text:0x00005C70; // type:function size:0x478
|
||||
@ -117,7 +117,7 @@ fn_61_6870 = .text:0x00006870; // type:function size:0x14
|
||||
fn_61_6890 = .text:0x00006890; // type:function size:0xC
|
||||
fn_61_68A0 = .text:0x000068A0; // type:function size:0xC
|
||||
fn_61_68B0 = .text:0x000068B0; // type:function size:0x14
|
||||
fn_61_68D0 = .text:0x000068D0; // type:function size:0x58
|
||||
fn_61_68D0__12dAcNpcSlb2_cFi = .text:0x000068D0; // type:function size:0x58
|
||||
fn_61_6930 = .text:0x00006930; // type:function size:0xC
|
||||
fn_61_6940 = .text:0x00006940; // type:function size:0xC
|
||||
fn_61_6950 = .text:0x00006950; // type:function size:0x14
|
||||
@ -129,7 +129,7 @@ fn_61_69C0 = .text:0x000069C0; // type:function size:0xC
|
||||
fn_61_69D0 = .text:0x000069D0; // type:function size:0x14
|
||||
fn_61_69F0 = .text:0x000069F0; // type:function size:0xC
|
||||
fn_61_6A00 = .text:0x00006A00; // type:function size:0xC
|
||||
fn_61_6A10 = .text:0x00006A10; // type:function size:0x14
|
||||
fn_61_6A10__12dAcNpcSlb2_cFv = .text:0x00006A10; // type:function size:0x14
|
||||
fn_61_6A30 = .text:0x00006A30; // type:function size:0xC
|
||||
fn_61_6A40 = .text:0x00006A40; // type:function size:0xC
|
||||
fn_61_6A50 = .text:0x00006A50; // type:function size:0x14
|
||||
|
@ -45,6 +45,19 @@ d/a/e/d_a_e_base.cpp:
|
||||
.text start:0x8002F300 end:0x80030CB0
|
||||
.ctors start:0x804DB664 end:0x804DB668
|
||||
|
||||
d/a/npc/d_a_npc.cpp:
|
||||
.text start:0x80030CB0 end:0x8003F718
|
||||
.ctors start:0x804DB668 end:0x804DB66C
|
||||
.data start:0x805016E0 end:0x80502050
|
||||
.sbss start:0x805750A0 end:0x805750A8
|
||||
.bss start:0x80597030 end:0x805972E0
|
||||
|
||||
d/a/npc/d_a_ordinary_npc.cpp:
|
||||
.text start:0x800462D0 end:0x8004D810
|
||||
.ctors start:0x804DB66C end:0x804DB670
|
||||
.data start:0x80502528 end:0x80502C08
|
||||
.bss start:0x805972E0 end:0x80597520
|
||||
|
||||
d/d_ac_npc_kyui.cpp:
|
||||
.text start:0x8004D810 end:0x80050800
|
||||
.ctors start:0x804DB670 end:0x804DB674
|
||||
@ -573,6 +586,10 @@ d/a/d_a_insect.cpp:
|
||||
.data start:0x8052ABD8 end:0x8052ACC0
|
||||
.sdata2 start:0x8057ADD8 end:0x8057AE30
|
||||
|
||||
d/tg/d_t_weather.cpp:
|
||||
.text start:0x801A65D0 end:0x801AF7D8
|
||||
.ctors start:0x804DB804 end:0x804DB808
|
||||
|
||||
d/d_cs_base.cpp:
|
||||
.text start:0x801BC6C0 end:0x801BD250
|
||||
.data start:0x8052E860 end:0x8052E968
|
||||
|
@ -1056,7 +1056,7 @@ setParams2Upper_ignoreLower__9dAcBase_cFUl = .text:0x8002CFB0; // type:function
|
||||
getParams2UpperByte__9dAcBase_cFv = .text:0x8002CFC0; // type:function size:0xC
|
||||
setParams2UpperByte__9dAcBase_cFUl = .text:0x8002CFD0; // type:function size:0x14
|
||||
buildParams2__9dAcBase_cFUlUl = .text:0x8002CFF0; // type:function size:0x1C
|
||||
getParams2Lower__9dAcBase_cFv = .text:0x8002D010; // type:function size:0xC
|
||||
getParams2Lower__9dAcBase_cCFv = .text:0x8002D010; // type:function size:0xC
|
||||
findActor__9dAcBase_cFPcP9dAcBase_c = .text:0x8002D020; // type:function size:0x74
|
||||
searchActor__9dAcBase_cFP9dAcBase_c = .text:0x8002D0A0; // type:function size:0x88
|
||||
forEveryActor__9dAcBase_cFPFP9dAcBase_cP9dAcBase_c_PvP9dAcBase_c = .text:0x8002D130; // type:function size:0x5C
|
||||
@ -1219,20 +1219,20 @@ fn_80032130 = .text:0x80032130; // type:function size:0x48
|
||||
fn_80032180 = .text:0x80032180; // type:function size:0x2C
|
||||
fn_800321B0 = .text:0x800321B0; // type:function size:0x1CC
|
||||
fn_80032380 = .text:0x80032380; // type:function size:0xC0
|
||||
fn_80032440 = .text:0x80032440; // type:function size:0xC
|
||||
fn_80032450 = .text:0x80032450; // type:function size:0xC
|
||||
baseID_Wait<10sStateID_c>__Fv_RC10sStateID_c = .text:0x80032440; // type:function size:0xC
|
||||
baseID_Demo<10sStateID_c>__Fv_RC10sStateID_c = .text:0x80032450; // type:function size:0xC
|
||||
fn_80032460 = .text:0x80032460; // type:function size:0x4
|
||||
fn_80032470 = .text:0x80032470; // type:function size:0x4
|
||||
fn_80032480 = .text:0x80032480; // type:function size:0x390
|
||||
npcExecute__8dAcNpc_cFv = .text:0x80032480; // type:function size:0x390
|
||||
fn_80032810 = .text:0x80032810; // type:function size:0x8
|
||||
fn_80032820 = .text:0x80032820; // type:function size:0x8
|
||||
fn_80032830 = .text:0x80032830; // type:function size:0x10
|
||||
fn_80032840 = .text:0x80032840; // type:function size:0x10
|
||||
executeState__76sStateMgr_c<8dAcNpc_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x80032840; // type:function size:0x10
|
||||
fn_80032850 = .text:0x80032850; // type:function size:0x64
|
||||
fn_800328C0 = .text:0x800328C0; // type:function size:0x58
|
||||
fn_80032920 = .text:0x80032920; // type:function size:0x10
|
||||
getStateID__76sStateMgr_c<8dAcNpc_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x80032920; // type:function size:0x10
|
||||
getStateID__14sStateMethod_cCFv = .text:0x80032930; // type:function size:0x8
|
||||
fn_80032940 = .text:0x80032940; // type:function size:0x10
|
||||
changeState__76sStateMgr_c<8dAcNpc_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>FRC12sStateIDIf_c = .text:0x80032940; // type:function size:0x10
|
||||
fn_80032950 = .text:0x80032950; // type:function size:0x8
|
||||
fn_80032960 = .text:0x80032960; // type:function size:0x94
|
||||
fn_80032A00 = .text:0x80032A00; // type:function size:0x44
|
||||
@ -1249,7 +1249,7 @@ fn_80033220 = .text:0x80033220; // type:function size:0x4
|
||||
fn_80033230 = .text:0x80033230; // type:function size:0x4
|
||||
fn_80033240 = .text:0x80033240; // type:function size:0xD4
|
||||
fn_80033320 = .text:0x80033320; // type:function size:0xD0
|
||||
fn_800333F0 = .text:0x800333F0; // type:function size:0x290
|
||||
acNpc_vt_0xE8__8dAcNpc_cFv = .text:0x800333F0; // type:function size:0x290
|
||||
fn_80033680 = .text:0x80033680; // type:function size:0x60
|
||||
fn_800336E0 = .text:0x800336E0; // type:function size:0x30
|
||||
fn_80033710 = .text:0x80033710; // type:function size:0xBC
|
||||
@ -1262,27 +1262,27 @@ __dt__24dAcRef_c<12dAcObjBase_c>Fv = .text:0x80033C10; // type:function size:0x5
|
||||
ActorNpcEventFlowManager__dtor = .text:0x80033C70; // type:function size:0x74
|
||||
fn_80033CF0 = .text:0x80033CF0; // type:function size:0x5C
|
||||
fn_80033D50 = .text:0x80033D50; // type:function size:0x9C
|
||||
fn_80033DF0 = .text:0x80033DF0; // type:function size:0x58
|
||||
fn_80033E50 = .text:0x80033E50; // type:function size:0x6C
|
||||
fn_80033EC0 = .text:0x80033EC0; // type:function size:0xA0
|
||||
fn_80033F60 = .text:0x80033F60; // type:function size:0xA4
|
||||
__dt__20sFState_c<8dAcNpc_c>Fv = .text:0x80033DF0; // type:function size:0x58
|
||||
__dt__23sFStateFct_c<8dAcNpc_c>Fv = .text:0x80033E50; // type:function size:0x6C
|
||||
__dt__76sStateMgr_c<8dAcNpc_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x80033EC0; // type:function size:0xA0
|
||||
__dt__46sFStateMgr_c<8dAcNpc_c,20sStateMethodUsr_FI_c>Fv = .text:0x80033F60; // type:function size:0xA4
|
||||
ActorNpcBase__ctor2 = .text:0x80034010; // type:function size:0x27C
|
||||
ActorNpcBase__addToNpcList = .text:0x80034290; // type:function size:0x50
|
||||
fn_800342E0 = .text:0x800342E0; // type:function size:0x34
|
||||
fn_80034320 = .text:0x80034320; // type:function size:0x88
|
||||
fn_800343B0 = .text:0x800343B0; // type:function size:0x4
|
||||
fn_800343C0 = .text:0x800343C0; // type:function size:0x4
|
||||
fn_800343D0 = .text:0x800343D0; // type:function size:0x4
|
||||
fn_800343E0 = .text:0x800343E0; // type:function size:0x4
|
||||
fn_800343F0 = .text:0x800343F0; // type:function size:0x4
|
||||
fn_80034400 = .text:0x80034400; // type:function size:0x4
|
||||
fn_80034410 = .text:0x80034410; // type:function size:0x4
|
||||
fn_80034420 = .text:0x80034420; // type:function size:0x4
|
||||
fn_80034430 = .text:0x80034430; // type:function size:0x164
|
||||
acNpc_vt_0xAC__8dAcNpc_cFv = .text:0x800343B0; // type:function size:0x4
|
||||
acNpc_vt_0x130__8dAcNpc_cFv = .text:0x800343C0; // type:function size:0x4
|
||||
acNpc_vt_0x134__8dAcNpc_cFv = .text:0x800343D0; // type:function size:0x4
|
||||
acNpc_vt_0x138__8dAcNpc_cFv = .text:0x800343E0; // type:function size:0x4
|
||||
acNpc_vt_0x13C__8dAcNpc_cFv = .text:0x800343F0; // type:function size:0x4
|
||||
acNpc_vt_0x140__8dAcNpc_cFv = .text:0x80034400; // type:function size:0x4
|
||||
acNpc_vt_0x144__8dAcNpc_cFv = .text:0x80034410; // type:function size:0x4
|
||||
acNpc_vt_0x148__8dAcNpc_cFv = .text:0x80034420; // type:function size:0x4
|
||||
__dt__8dAcNpc_cFv = .text:0x80034430; // type:function size:0x164
|
||||
getDistanceVecToLink = .text:0x800345A0; // type:function size:0x6C
|
||||
fn_80034610 = .text:0x80034610; // type:function size:0x10
|
||||
fn_80034620 = .text:0x80034620; // type:function size:0x30
|
||||
getLinkPos = .text:0x80034650; // type:function size:0x20
|
||||
getLinkPos__8dAcNpc_cFv = .text:0x80034650; // type:function size:0x20
|
||||
getLinkPosPtr = .text:0x80034670; // type:function size:0xC
|
||||
getLinkPosCopy2 = .text:0x80034680; // type:function size:0xC
|
||||
getLinkRotation = .text:0x80034690; // type:function size:0x20
|
||||
@ -1304,7 +1304,7 @@ fn_80034C10 = .text:0x80034C10; // type:function size:0x64
|
||||
fn_80034C80 = .text:0x80034C80; // type:function size:0x104
|
||||
fn_80034D90 = .text:0x80034D90; // type:function size:0x8
|
||||
fn_80034DA0 = .text:0x80034DA0; // type:function size:0x8
|
||||
fn_80034DB0 = .text:0x80034DB0; // type:function size:0x10
|
||||
acNpc_vt_0x11C__8dAcNpc_cFv = .text:0x80034DB0; // type:function size:0x10
|
||||
fn_80034DC0 = .text:0x80034DC0; // type:function size:0x50
|
||||
ActorNpcBase2__rotateToGoal = .text:0x80034E10; // type:function size:0x5C
|
||||
fn_80034E70 = .text:0x80034E70; // type:function size:0x17C
|
||||
@ -1333,67 +1333,67 @@ fn_80035330 = .text:0x80035330; // type:function size:0x10
|
||||
fn_80035340 = .text:0x80035340; // type:function size:0x104
|
||||
fn_80035450 = .text:0x80035450; // type:function size:0x108
|
||||
fn_80035560 = .text:0x80035560; // type:function size:0x24
|
||||
fn_80035590 = .text:0x80035590; // type:function size:0x44
|
||||
giveItem__8dAcNpc_cFPv7ITEM_ID = .text:0x80035590; // type:function size:0x44
|
||||
fn_800355E0 = .text:0x800355E0; // type:function size:0x200
|
||||
NpcBase_GetPosCopy3 = .text:0x800357E0; // type:function size:0x1C
|
||||
fn_80035800 = .text:0x80035800; // type:function size:0x294
|
||||
fn_80035AA0 = .text:0x80035AA0; // type:function size:0x100
|
||||
fn_80035BA0 = .text:0x80035BA0; // type:function size:0x1D0
|
||||
fn_80035D70 = .text:0x80035D70; // type:function size:0x19C
|
||||
fn_80035F10 = .text:0x80035F10; // type:function size:0x20C
|
||||
fn_80036120 = .text:0x80036120; // type:function size:0x84
|
||||
acNpc_vt_0xB0__8dAcNpc_cFv = .text:0x80035BA0; // type:function size:0x1D0
|
||||
acNpc_vt_0xB4__8dAcNpc_cFv = .text:0x80035D70; // type:function size:0x19C
|
||||
acNpc_vt_0xB8__8dAcNpc_cFv = .text:0x80035F10; // type:function size:0x20C
|
||||
acNpc_vt_0xBC__8dAcNpc_cFv = .text:0x80036120; // type:function size:0x84
|
||||
ActorNpcBase__contextRelatedEventSwitch2 = .text:0x800361B0; // type:function size:0x10
|
||||
fn_800361C0 = .text:0x800361C0; // type:function size:0x8
|
||||
ActorNpcBase__contextRelatedEventSwitch3 = .text:0x800361D0; // type:function size:0x10
|
||||
fn_800361E0 = .text:0x800361E0; // type:function size:0x8
|
||||
ActorNpcBase__contextRelatedEventSwitch4 = .text:0x800361F0; // type:function size:0x10
|
||||
fn_80036200 = .text:0x80036200; // type:function size:0x8
|
||||
fn_80036210 = .text:0x80036210; // type:function size:0x1FC
|
||||
fn_80036410 = .text:0x80036410; // type:function size:0x8
|
||||
fn_80036420 = .text:0x80036420; // type:function size:0x8
|
||||
fn_80036430 = .text:0x80036430; // type:function size:0x8
|
||||
fn_80036440 = .text:0x80036440; // type:function size:0x8
|
||||
fn_80036450 = .text:0x80036450; // type:function size:0x8
|
||||
fn_80036460 = .text:0x80036460; // type:function size:0x88
|
||||
fn_800364F0 = .text:0x800364F0; // type:function size:0x78
|
||||
fn_80036570 = .text:0x80036570; // type:function size:0x78
|
||||
fn_800365F0 = .text:0x800365F0; // type:function size:0x78
|
||||
fn_80036670 = .text:0x80036670; // type:function size:0x8
|
||||
fn_80036680 = .text:0x80036680; // type:function size:0x8
|
||||
fn_80036690 = .text:0x80036690; // type:function size:0x8
|
||||
fn_800366A0 = .text:0x800366A0; // type:function size:0x8
|
||||
fn_800366B0 = .text:0x800366B0; // type:function size:0x14
|
||||
fn_800366D0 = .text:0x800366D0; // type:function size:0x14
|
||||
fn_800366F0 = .text:0x800366F0; // type:function size:0x14
|
||||
fn_80036710 = .text:0x80036710; // type:function size:0x14
|
||||
fn_80036730 = .text:0x80036730; // type:function size:0x14
|
||||
fn_80036750 = .text:0x80036750; // type:function size:0x14
|
||||
fn_80036770 = .text:0x80036770; // type:function size:0x10
|
||||
fn_80036780 = .text:0x80036780; // type:function size:0xC
|
||||
fn_80036790 = .text:0x80036790; // type:function size:0x10
|
||||
fn_800367A0 = .text:0x800367A0; // type:function size:0x10
|
||||
fn_800367B0 = .text:0x800367B0; // type:function size:0x14
|
||||
fn_800367D0 = .text:0x800367D0; // type:function size:0x14
|
||||
fn_800367F0 = .text:0x800367F0; // type:function size:0x10
|
||||
fn_80036800 = .text:0x80036800; // type:function size:0x10
|
||||
fn_80036810 = .text:0x80036810; // type:function size:0x10
|
||||
fn_80036820 = .text:0x80036820; // type:function size:0xC
|
||||
fn_80036830 = .text:0x80036830; // type:function size:0x8
|
||||
fn_80036840 = .text:0x80036840; // type:function size:0xC
|
||||
acNpc_vt_0x164__8dAcNpc_cFv = .text:0x80036210; // type:function size:0x1FC
|
||||
acNpc_vt_0x16C__8dAcNpc_cFv = .text:0x80036410; // type:function size:0x8
|
||||
acNpc_vt_0x170__8dAcNpc_cFv = .text:0x80036420; // type:function size:0x8
|
||||
acNpc_vt_0x174__8dAcNpc_cFv = .text:0x80036430; // type:function size:0x8
|
||||
acNpc_vt_0x178__8dAcNpc_cFv = .text:0x80036440; // type:function size:0x8
|
||||
acNpc_vt_0x17C__8dAcNpc_cFv = .text:0x80036450; // type:function size:0x8
|
||||
acNpc_vt_0x180__8dAcNpc_cFv = .text:0x80036460; // type:function size:0x88
|
||||
acNpc_vt_0x184__8dAcNpc_cFv = .text:0x800364F0; // type:function size:0x78
|
||||
acNpc_vt_0x188__8dAcNpc_cFv = .text:0x80036570; // type:function size:0x78
|
||||
acNpc_vt_0x18C__8dAcNpc_cFv = .text:0x800365F0; // type:function size:0x78
|
||||
acNpc_vt_0x190__8dAcNpc_cFv = .text:0x80036670; // type:function size:0x8
|
||||
acNpc_vt_0x194__8dAcNpc_cFv = .text:0x80036680; // type:function size:0x8
|
||||
acNpc_vt_0x198__8dAcNpc_cFv = .text:0x80036690; // type:function size:0x8
|
||||
acNpc_vt_0x19C__8dAcNpc_cFv = .text:0x800366A0; // type:function size:0x8
|
||||
acNpc_vt_0x1A0__8dAcNpc_cFv = .text:0x800366B0; // type:function size:0x14
|
||||
acNpc_vt_0x1A4__8dAcNpc_cFv = .text:0x800366D0; // type:function size:0x14
|
||||
acNpc_vt_0x1A8__8dAcNpc_cFv = .text:0x800366F0; // type:function size:0x14
|
||||
acNpc_vt_0x1AC__8dAcNpc_cFv = .text:0x80036710; // type:function size:0x14
|
||||
acNpc_vt_0x1B0__8dAcNpc_cFv = .text:0x80036730; // type:function size:0x14
|
||||
acNpc_vt_0x1B4__8dAcNpc_cFv = .text:0x80036750; // type:function size:0x14
|
||||
acNpc_vt_0x1B8__8dAcNpc_cFv = .text:0x80036770; // type:function size:0x10
|
||||
acNpc_vt_0x1BC__8dAcNpc_cFv = .text:0x80036780; // type:function size:0xC
|
||||
acNpc_vt_0x1C0__8dAcNpc_cFv = .text:0x80036790; // type:function size:0x10
|
||||
acNpc_vt_0x1C4__8dAcNpc_cFv = .text:0x800367A0; // type:function size:0x10
|
||||
acNpc_vt_0x1C8__8dAcNpc_cFv = .text:0x800367B0; // type:function size:0x14
|
||||
acNpc_vt_0x1CC__8dAcNpc_cFv = .text:0x800367D0; // type:function size:0x14
|
||||
acNpc_vt_0x1D0__8dAcNpc_cFv = .text:0x800367F0; // type:function size:0x10
|
||||
acNpc_vt_0x1D4__8dAcNpc_cFv = .text:0x80036800; // type:function size:0x10
|
||||
acNpc_vt_0x1D8__8dAcNpc_cFv = .text:0x80036810; // type:function size:0x10
|
||||
acNpc_vt_0x1DC__8dAcNpc_cFv = .text:0x80036820; // type:function size:0xC
|
||||
acNpc_vt_0x1E0__8dAcNpc_cFv = .text:0x80036830; // type:function size:0x8
|
||||
acNpc_vt_0x1E4__8dAcNpc_cFv = .text:0x80036840; // type:function size:0xC
|
||||
fn_80036850 = .text:0x80036850; // type:function size:0xC8
|
||||
fn_80036920 = .text:0x80036920; // type:function size:0x148
|
||||
fn_80036A70 = .text:0x80036A70; // type:function size:0x128
|
||||
fn_80036BA0 = .text:0x80036BA0; // type:function size:0x6C
|
||||
fn_80036C10 = .text:0x80036C10; // type:function size:0x84
|
||||
fn_80036CA0 = .text:0x80036CA0; // type:function size:0xFC
|
||||
fn_80036DA0 = .text:0x80036DA0; // type:function size:0xBC
|
||||
fn_80036E60 = .text:0x80036E60; // type:function size:0xC8
|
||||
fn_80036F30 = .text:0x80036F30; // type:function size:0xF4
|
||||
acNpc_vt_0x9C__8dAcNpc_cFv = .text:0x80036CA0; // type:function size:0xFC
|
||||
acNpc_vt_0xA0__8dAcNpc_cFv = .text:0x80036DA0; // type:function size:0xBC
|
||||
acNpc_vt_0xA4__8dAcNpc_cFv = .text:0x80036E60; // type:function size:0xC8
|
||||
acNpc_vt_0xA8__8dAcNpc_cFv = .text:0x80036F30; // type:function size:0xF4
|
||||
fn_80037030 = .text:0x80037030; // type:function size:0x1C
|
||||
fn_80037050 = .text:0x80037050; // type:function size:0x4
|
||||
fn_80037060 = .text:0x80037060; // type:function size:0x8
|
||||
fn_80037070 = .text:0x80037070; // type:function size:0x4
|
||||
fn_80037080 = .text:0x80037080; // type:function size:0x8
|
||||
acNpc_vt_0xCC__8dAcNpc_cFv = .text:0x80037050; // type:function size:0x4
|
||||
acNpc_vt_0xD0__8dAcNpc_cFv = .text:0x80037060; // type:function size:0x8
|
||||
acNpc_vt_0xD4__8dAcNpc_cFv = .text:0x80037070; // type:function size:0x4
|
||||
acNpc_vt_0xD8__8dAcNpc_cFv = .text:0x80037080; // type:function size:0x8
|
||||
fn_80037090 = .text:0x80037090; // type:function size:0x200
|
||||
fn_80037290 = .text:0x80037290; // type:function size:0x8
|
||||
fn_800372A0 = .text:0x800372A0; // type:function size:0x8
|
||||
@ -1405,9 +1405,9 @@ fn_80037650 = .text:0x80037650; // type:function size:0xF8
|
||||
fn_80037750 = .text:0x80037750; // type:function size:0x4
|
||||
fn_80037760 = .text:0x80037760; // type:function size:0x4
|
||||
fn_80037770 = .text:0x80037770; // type:function size:0x4
|
||||
fn_80037780 = .text:0x80037780; // type:function size:0x4
|
||||
fn_80037790 = .text:0x80037790; // type:function size:0x4
|
||||
fn_800377A0 = .text:0x800377A0; // type:function size:0x4
|
||||
initializeState_Demo__8dAcNpc_cFv = .text:0x80037780; // type:function size:0x4
|
||||
executeState_Demo__8dAcNpc_cFv = .text:0x80037790; // type:function size:0x4
|
||||
finalizeState_Demo__8dAcNpc_cFv = .text:0x800377A0; // type:function size:0x4
|
||||
fn_800377B0 = .text:0x800377B0; // type:function size:0x24
|
||||
fn_800377E0 = .text:0x800377E0; // type:function size:0x84
|
||||
fn_80037870 = .text:0x80037870; // type:function size:0xD4
|
||||
@ -1615,33 +1615,33 @@ fn_8003ECD0 = .text:0x8003ECD0; // type:function size:0x40
|
||||
fn_8003ED10 = .text:0x8003ED10; // type:function size:0x40
|
||||
fn_8003ED50 = .text:0x8003ED50; // type:function size:0x40
|
||||
fn_8003ED90 = .text:0x8003ED90; // type:function size:0x84
|
||||
setAsCurrentState = .text:0x8003EE20; // type:function size:0x60
|
||||
fn_8003EE80 = .text:0x8003EE80; // type:function size:0xC
|
||||
fn_8003EE90 = .text:0x8003EE90; // type:function size:0x1C
|
||||
callsInStateFunc = .text:0x8003EEB0; // type:function size:0x1C
|
||||
fn_8003EED0 = .text:0x8003EED0; // type:function size:0x1C
|
||||
build__23sFStateFct_c<8dAcNpc_c>FRC12sStateIDIf_c = .text:0x8003EE20; // type:function size:0x60
|
||||
dispose__23sFStateFct_c<8dAcNpc_c>FRP10sStateIf_c = .text:0x8003EE80; // type:function size:0xC
|
||||
initialize__20sFState_c<8dAcNpc_c>Fv = .text:0x8003EE90; // type:function size:0x1C
|
||||
execute__20sFState_c<8dAcNpc_c>Fv = .text:0x8003EEB0; // type:function size:0x1C
|
||||
finalize__20sFState_c<8dAcNpc_c>Fv = .text:0x8003EED0; // type:function size:0x1C
|
||||
refreshStateMethod__14sStateMethod_cFv = .text:0x8003EEF0; // type:function size:0xC
|
||||
getState__14sStateMethod_cCFv = .text:0x8003EF00; // type:function size:0x8
|
||||
getNewStateID__14sStateMethod_cCFv = .text:0x8003EF10; // type:function size:0x8
|
||||
getOldStateID__14sStateMethod_cCFv = .text:0x8003EF20; // type:function size:0x8
|
||||
fn_8003EF30 = .text:0x8003EF30; // type:function size:0x10
|
||||
fn_8003EF40 = .text:0x8003EF40; // type:function size:0x10
|
||||
fn_8003EF50 = .text:0x8003EF50; // type:function size:0x10
|
||||
fn_8003EF60 = .text:0x8003EF60; // type:function size:0x10
|
||||
fn_8003EF70 = .text:0x8003EF70; // type:function size:0x10
|
||||
fn_8003EF80 = .text:0x8003EF80; // type:function size:0x10
|
||||
ActorState__callLeave = .text:0x8003EF90; // type:function size:0x30
|
||||
ActorState__callUpdate = .text:0x8003EFC0; // type:function size:0x30
|
||||
ActorState__callEnter = .text:0x8003EFF0; // type:function size:0x30
|
||||
initializeState__76sStateMgr_c<8dAcNpc_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x8003EF30; // type:function size:0x10
|
||||
finalizeState__76sStateMgr_c<8dAcNpc_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x8003EF40; // type:function size:0x10
|
||||
refreshState__76sStateMgr_c<8dAcNpc_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>Fv = .text:0x8003EF50; // type:function size:0x10
|
||||
getState__76sStateMgr_c<8dAcNpc_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x8003EF60; // type:function size:0x10
|
||||
getNewStateID__76sStateMgr_c<8dAcNpc_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x8003EF70; // type:function size:0x10
|
||||
getOldStateID__76sStateMgr_c<8dAcNpc_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c>CFv = .text:0x8003EF80; // type:function size:0x10
|
||||
finalizeState__22sFStateID_c<8dAcNpc_c>CFR8dAcNpc_c = .text:0x8003EF90; // type:function size:0x30
|
||||
executeState__22sFStateID_c<8dAcNpc_c>CFR8dAcNpc_c = .text:0x8003EFC0; // type:function size:0x30
|
||||
initializeState__22sFStateID_c<8dAcNpc_c>CFR8dAcNpc_c = .text:0x8003EFF0; // type:function size:0x30
|
||||
fn_8003F020 = .text:0x8003F020; // type:function size:0x40
|
||||
fn_8003F060 = .text:0x8003F060; // type:function size:0x40
|
||||
fn_8003F0A0 = .text:0x8003F0A0; // type:function size:0x40
|
||||
AcNpc__initStates = .text:0x8003F0E0; // type:function size:0x330
|
||||
fn_8003F410 = .text:0x8003F410; // type:function size:0x58
|
||||
AcNpc__state_dtor = .text:0x8003F470; // type:function size:0x5C
|
||||
fn_8003F4D0 = .text:0x8003F4D0; // type:function size:0xDC
|
||||
fn_8003F5B0 = .text:0x8003F5B0; // type:function size:0xE0
|
||||
fn_8003F690 = .text:0x8003F690; // type:function size:0x88
|
||||
__sinit_\d_a_npc_cpp = .text:0x8003F0E0; // type:function size:0x330
|
||||
__dt__22sFStateID_c<8dAcNpc_c>Fv = .text:0x8003F410; // type:function size:0x58
|
||||
__dt__29sFStateVirtualID_c<8dAcNpc_c>Fv = .text:0x8003F470; // type:function size:0x5C
|
||||
number__29sFStateVirtualID_c<8dAcNpc_c>CFv = .text:0x8003F4D0; // type:function size:0xDC
|
||||
superID__29sFStateVirtualID_c<8dAcNpc_c>CFv = .text:0x8003F5B0; // type:function size:0xE0
|
||||
isSameName__22sFStateID_c<8dAcNpc_c>CFPCc = .text:0x8003F690; // type:function size:0x88
|
||||
fn_8003F720 = .text:0x8003F720; // type:function size:0x404
|
||||
fn_8003FB30 = .text:0x8003FB30; // type:function size:0xA0
|
||||
fn_8003FBD0 = .text:0x8003FBD0; // type:function size:0x4
|
||||
@ -1820,13 +1820,13 @@ fn_80045D00 = .text:0x80045D00; // type:function size:0x490
|
||||
fn_80046190 = .text:0x80046190; // type:function size:0x44
|
||||
fn_800461E0 = .text:0x800461E0; // type:function size:0xAC
|
||||
fn_80046290 = .text:0x80046290; // type:function size:0x40
|
||||
fn_800462D0 = .text:0x800462D0; // type:function size:0xC
|
||||
fn_800462E0 = .text:0x800462E0; // type:function size:0xC
|
||||
fn_800462F0 = .text:0x800462F0; // type:function size:0xC
|
||||
fn_80046300 = .text:0x80046300; // type:function size:0xC
|
||||
fn_80046310 = .text:0x80046310; // type:function size:0xC
|
||||
fn_80046320 = .text:0x80046320; // type:function size:0xC
|
||||
fn_80046330 = .text:0x80046330; // type:function size:0xC
|
||||
baseID_Pain<10sStateID_c>__Fv_RC10sStateID_c = .text:0x800462D0; // type:function size:0xC
|
||||
baseID_Surprised<10sStateID_c>__Fv_RC10sStateID_c = .text:0x800462E0; // type:function size:0xC
|
||||
baseID_Withstand<10sStateID_c>__Fv_RC10sStateID_c = .text:0x800462F0; // type:function size:0xC
|
||||
baseID_Walk<10sStateID_c>__Fv_RC10sStateID_c = .text:0x80046300; // type:function size:0xC
|
||||
baseID_LookAwaySt<10sStateID_c>__Fv_RC10sStateID_c = .text:0x80046310; // type:function size:0xC
|
||||
baseID_LookAway<10sStateID_c>__Fv_RC10sStateID_c = .text:0x80046320; // type:function size:0xC
|
||||
baseID_Turn<10sStateID_c>__Fv_RC10sStateID_c = .text:0x80046330; // type:function size:0xC
|
||||
AcOrdinaryNpc__PreInit = .text:0x80046340; // type:function size:0x10C
|
||||
fn_80046450 = .text:0x80046450; // type:function size:0x9C
|
||||
fn_800464F0 = .text:0x800464F0; // type:function size:0x13C
|
||||
@ -1985,16 +1985,16 @@ fn_8004CC60 = .text:0x8004CC60; // type:function size:0x4
|
||||
fn_8004CC70 = .text:0x8004CC70; // type:function size:0x8
|
||||
fn_8004CC80 = .text:0x8004CC80; // type:function size:0x8
|
||||
fn_8004CC90 = .text:0x8004CC90; // type:function size:0x40
|
||||
AcOrdinaryNpc__initStates = .text:0x8004CCD0; // type:function size:0x784
|
||||
fn_8004D460 = .text:0x8004D460; // type:function size:0x58
|
||||
AcOrdinaryNpc__dtor = .text:0x8004D4C0; // type:function size:0x5C
|
||||
fn_8004D520 = .text:0x8004D520; // type:function size:0xC
|
||||
fn_8004D530 = .text:0x8004D530; // type:function size:0xDC
|
||||
fn_8004D610 = .text:0x8004D610; // type:function size:0xE0
|
||||
fn_8004D6F0 = .text:0x8004D6F0; // type:function size:0x88
|
||||
fn_8004D780 = .text:0x8004D780; // type:function size:0x30
|
||||
fn_8004D7B0 = .text:0x8004D7B0; // type:function size:0x30
|
||||
fn_8004D7E0 = .text:0x8004D7E0; // type:function size:0x30
|
||||
__sinit_\d_a_ordinary_npc_cpp = .text:0x8004CCD0; // type:function size:0x784
|
||||
__dt__31sFStateID_c<16dAcOrdinaryNpc_c>Fv = .text:0x8004D460; // type:function size:0x58
|
||||
__dt__38sFStateVirtualID_c<16dAcOrdinaryNpc_c>Fv = .text:0x8004D4C0; // type:function size:0x5C
|
||||
baseID_Wait<8dAcNpc_c>__Fv_RC10sStateID_c = .text:0x8004D520; // type:function size:0xC
|
||||
number__38sFStateVirtualID_c<16dAcOrdinaryNpc_c>CFv = .text:0x8004D530; // type:function size:0xDC
|
||||
superID__38sFStateVirtualID_c<16dAcOrdinaryNpc_c>CFv = .text:0x8004D610; // type:function size:0xE0
|
||||
isSameName__31sFStateID_c<16dAcOrdinaryNpc_c>CFPCc = .text:0x8004D6F0; // type:function size:0x88
|
||||
initializeState__31sFStateID_c<16dAcOrdinaryNpc_c>CFR16dAcOrdinaryNpc_c = .text:0x8004D780; // type:function size:0x30
|
||||
executeState__31sFStateID_c<16dAcOrdinaryNpc_c>CFR16dAcOrdinaryNpc_c = .text:0x8004D7B0; // type:function size:0x30
|
||||
finalizeState__31sFStateID_c<16dAcOrdinaryNpc_c>CFR16dAcOrdinaryNpc_c = .text:0x8004D7E0; // type:function size:0x30
|
||||
fn_8004D810 = .text:0x8004D810; // type:function size:0x14
|
||||
fn_8004D830 = .text:0x8004D830; // type:function size:0x14
|
||||
fn_8004D850 = .text:0x8004D850; // type:function size:0x14
|
||||
@ -3722,8 +3722,8 @@ fn_800A9970 = .text:0x800A9970; // type:function size:0x58
|
||||
fn_800A99D0 = .text:0x800A99D0; // type:function size:0xE0
|
||||
ActorOnRail2__setSegment = .text:0x800A9AB0; // type:function size:0x50
|
||||
checkPosInAREA = .text:0x800A9B00; // type:function size:0xC4
|
||||
getAREAForIndexInRoom = .text:0x800A9BD0; // type:function size:0x78
|
||||
checkPosInArea__FllRC7mVec3_cPPv = .text:0x800A9C50; // type:function size:0xD4
|
||||
getAreaForIndexInRoom__Fll = .text:0x800A9BD0; // type:function size:0x78
|
||||
checkPosInArea__FllRC7mVec3_cPCP4AREA = .text:0x800A9C50; // type:function size:0xD4
|
||||
detach__Q23d2d10ResAccIf_cFv = .text:0x800A9D30; // type:function size:0x60
|
||||
attach__Q23d2d10ResAccIf_cFPvPCc = .text:0x800A9D90; // type:function size:0x90
|
||||
BuildPaneObj__Q23d2d8Layout_cFlPCvRCQ34nw4r3lyt11ResBlockSet = .text:0x800A9E20; // type:function size:0x12C
|
||||
@ -17868,7 +17868,7 @@ fn_802F2450__7mQuat_cFRC7mVec3_cRC7mVec3_cf = .text:0x802F2450; // type:function
|
||||
fn_802F25E0 = .text:0x802F25E0; // type:function size:0x19C
|
||||
fn_802F2780__7mQuat_cFRC7mQuat_c = .text:0x802F2780; // type:function size:0x198
|
||||
fn_802F2920 = .text:0x802F2920; // type:function size:0x48
|
||||
mVec__createProjectionXZ = .text:0x802F2970; // type:function size:0x110
|
||||
createProjectionXZ__7mVec3_cFRC7mAng3_cf = .text:0x802F2970; // type:function size:0x110
|
||||
mVec__fromXY = .text:0x802F2A80; // type:function size:0xF0
|
||||
normalize__7mVec3_cFv = .text:0x802F2B70; // type:function size:0x78
|
||||
mVec__normalizeRS = .text:0x802F2BF0; // type:function size:0x84
|
||||
@ -29940,11 +29940,11 @@ lbl_80501998 = .data:0x80501998; // type:object size:0xC
|
||||
lbl_805019A4 = .data:0x805019A4; // type:object size:0xC
|
||||
lbl_805019B0 = .data:0x805019B0; // type:object size:0x54
|
||||
lbl_80501A04 = .data:0x80501A04; // type:object size:0xC
|
||||
ActorNpcBase__vtable = .data:0x80501A10; // type:object size:0x208
|
||||
lbl_80501C18 = .data:0x80501C18; // type:object size:0x30
|
||||
lbl_80501C48 = .data:0x80501C48; // type:object size:0x30
|
||||
lbl_80501C78 = .data:0x80501C78; // type:object size:0x18
|
||||
lbl_80501C90 = .data:0x80501C90; // type:object size:0x18
|
||||
__vt__8dAcNpc_c = .data:0x80501A10; // type:object size:0x208
|
||||
__vt__46sFStateMgr_c<8dAcNpc_c,20sStateMethodUsr_FI_c> = .data:0x80501C18; // type:object size:0x30
|
||||
__vt__76sStateMgr_c<8dAcNpc_c,20sStateMethodUsr_FI_c,12sFStateFct_c,13sStateIDChk_c> = .data:0x80501C48; // type:object size:0x30
|
||||
__vt__23sFStateFct_c<8dAcNpc_c> = .data:0x80501C78; // type:object size:0x14
|
||||
__vt__20sFState_c<8dAcNpc_c> = .data:0x80501C90; // type:object size:0x18
|
||||
ActorNpcEventFlowManager__vtable = .data:0x80501CA8; // type:object size:0x44
|
||||
lbl_80501CEC = .data:0x80501CEC; // type:object size:0xC
|
||||
lbl_80501CF8 = .data:0x80501CF8; // type:object size:0x10
|
||||
@ -29962,7 +29962,8 @@ lbl_80501E48 = .data:0x80501E48; // type:object size:0xA4
|
||||
lbl_80501EEC = .data:0x80501EEC; // type:object size:0x24
|
||||
lbl_80501F10 = .data:0x80501F10; // type:object size:0x40
|
||||
lbl_80501F50 = .data:0x80501F50; // type:object size:0x98
|
||||
lbl_80501FE8 = .data:0x80501FE8; // type:object size:0x68
|
||||
__vt__29sFStateVirtualID_c<8dAcNpc_c> = .data:0x80501FE8; // type:object size:0x34
|
||||
__vt__22sFStateID_c<8dAcNpc_c> = .data:0x8050201C; // type:object size:0x34
|
||||
lbl_80502050 = .data:0x80502050; // type:object size:0x24
|
||||
lbl_80502074 = .data:0x80502074; // type:object size:0x24
|
||||
lbl_80502098 = .data:0x80502098; // type:object size:0x28
|
||||
@ -30020,8 +30021,8 @@ AcOrdinaryNpc__vtable = .data:0x80502538; // type:object size:0x360
|
||||
lbl_80502898 = .data:0x80502898; // type:object size:0x6C
|
||||
lbl_80502904 = .data:0x80502904; // type:object size:0xC
|
||||
lbl_80502910 = .data:0x80502910; // type:object size:0x28C
|
||||
lbl_80502B9C = .data:0x80502B9C; // type:object size:0x34
|
||||
lbl_80502BD0 = .data:0x80502BD0; // type:object size:0x38
|
||||
__vt__38sFStateVirtualID_c<16dAcOrdinaryNpc_c> = .data:0x80502B9C; // type:object size:0x34
|
||||
__vt__31sFStateID_c<16dAcOrdinaryNpc_c> = .data:0x80502BD0; // type:object size:0x38
|
||||
lbl_80502C08 = .data:0x80502C08; // type:object size:0xC
|
||||
lbl_80502C14 = .data:0x80502C14; // type:object size:0x10
|
||||
lbl_80502C24 = .data:0x80502C24; // type:object size:0x10
|
||||
@ -48275,18 +48276,21 @@ lbl_80596FF8 = .bss:0x80596FF8; // type:object size:0x18 data:2byte
|
||||
lbl_80597010 = .bss:0x80597010; // type:object size:0x10 data:2byte
|
||||
lbl_80597020 = .bss:0x80597020; // type:object size:0x10 data:float
|
||||
lbl_80597030 = .bss:0x80597030; // type:object size:0xC
|
||||
AcNpc__STATE_WAIT = .bss:0x8059703C; // type:object size:0x40 data:4byte
|
||||
AcNpc__STATE_DEMO = .bss:0x8059707C; // type:object size:0x64 data:4byte
|
||||
StateID_Wait__8dAcNpc_c = .bss:0x8059703C; // type:object size:0x34 data:4byte
|
||||
StateID_Demo__8dAcNpc_c = .bss:0x8059707C; // type:object size:0x34 data:4byte
|
||||
lbl_805970E0 = .bss:0x805970E0; // type:object size:0x80 data:byte
|
||||
lbl_80597160 = .bss:0x80597160; // type:object size:0x80 data:byte
|
||||
lbl_805971E0 = .bss:0x805971E0; // type:object size:0x100 data:byte
|
||||
lbl_805972E0 = .bss:0x805972E0; // type:object size:0xC
|
||||
AcOrdinaryNpc__STATE_WAIT = .bss:0x805972EC; // type:object size:0xC0 data:4byte
|
||||
AcOrdinaryNpc__STATE_WITHSTAND = .bss:0x805973AC; // type:object size:0x40 data:4byte
|
||||
AcOrdinaryNpc__STATE_WALK = .bss:0x805973EC; // type:object size:0x40 data:4byte
|
||||
AcOrdinaryNpc__STATE_LOOK_AWAY_ST = .bss:0x8059742C; // type:object size:0x40 data:4byte
|
||||
AcOrdinaryNpc__STATE_LOOK_AWAY = .bss:0x8059746C; // type:object size:0x84 data:4byte
|
||||
AcOrdinaryNpc__STATE_PRE_WALK = .bss:0x805974F0; // type:object size:0x30 data:4byte
|
||||
lbl_805972E0 = .bss:0x805972E0; // type:object size:0xC scope:local
|
||||
StateID_Wait__16dAcOrdinaryNpc_c = .bss:0x805972EC; // type:object size:0x34 data:4byte
|
||||
StateID_Pain__16dAcOrdinaryNpc_c = .bss:0x8059732C; // type:object size:0x34
|
||||
StateID_Surprised__16dAcOrdinaryNpc_c = .bss:0x8059736C; // type:object size:0x34
|
||||
StateID_Withstand__16dAcOrdinaryNpc_c = .bss:0x805973AC; // type:object size:0x34 data:4byte
|
||||
StateID_Walk__16dAcOrdinaryNpc_c = .bss:0x805973EC; // type:object size:0x34 data:4byte
|
||||
StateID_LookAwaySt__16dAcOrdinaryNpc_c = .bss:0x8059742C; // type:object size:0x34 data:4byte
|
||||
StateID_LookAway__16dAcOrdinaryNpc_c = .bss:0x8059746C; // type:object size:0x34 data:4byte
|
||||
StateID_Turn__16dAcOrdinaryNpc_c = .bss:0x805974AC; // type:object size:0x34 data:4byte
|
||||
StateID_PreWalkTurn__16dAcOrdinaryNpc_c = .bss:0x805974F0; // type:object size:0x30 data:4byte
|
||||
lbl_80597520 = .bss:0x80597520; // type:object size:0xC
|
||||
AcNpcKyuiBase__STATE_WAIT = .bss:0x8059752C; // type:object size:0x74 data:4byte
|
||||
lbl_805975A0 = .bss:0x805975A0; // type:object size:0x10 data:float
|
||||
|
@ -328,6 +328,8 @@ config.libs = [
|
||||
Object(NonMatching, "d/a/d_a_base.cpp"),
|
||||
Object(NonMatching, "d/a/d_a_item.cpp"),
|
||||
Object(NonMatching, "d/a/obj/d_a_obj_base.cpp"),
|
||||
Object(NonMatching, "d/a/npc/d_a_npc.cpp"),
|
||||
Object(NonMatching, "d/a/npc/d_a_ordinary_npc.cpp"),
|
||||
Object(NonMatching, "d/a/obj/d_a_obj_bomb.cpp"),
|
||||
Object(NonMatching, "d/a/obj/d_a_obj_arrow.cpp"),
|
||||
Object(NonMatching, "d/a/obj/d_a_obj_boomerang.cpp"),
|
||||
@ -1145,7 +1147,7 @@ config.libs = [
|
||||
Rel(NonMatching, "d_a_npc_regret_rival", "REL/d/a/npc/d_a_npc_regret_rival.cpp"),
|
||||
Rel(NonMatching, "d_a_npc_rescue", "REL/d/a/npc/d_a_npc_rescue.cpp"),
|
||||
Rel(NonMatching, "d_a_npc_rival", "REL/d/a/npc/d_a_npc_rival.cpp"),
|
||||
Rel(NonMatching, "d_a_npc_rival_lod", "REL/d/a/npc/d_a_npc_rival_lod.cpp"),
|
||||
Rel(Matching, "d_a_npc_rival_lod", "REL/d/a/npc/d_a_npc_rival_lod.cpp"),
|
||||
Rel(NonMatching, "d_a_npc_salbage_morry", "REL/d/a/npc/d_a_npc_salbage_morry.cpp"),
|
||||
Rel(NonMatching, "d_a_npc_salbage_robot", "REL/d/a/npc/d_a_npc_salbage_robot.cpp"),
|
||||
Rel(
|
||||
@ -1164,7 +1166,7 @@ config.libs = [
|
||||
"REL/d/a/npc/d_a_npc_salbage_robot_repair.cpp",
|
||||
),
|
||||
Rel(NonMatching, "d_a_npc_salesman_s", "REL/d/a/npc/d_a_npc_salesman_s.cpp"),
|
||||
Rel(NonMatching, "d_a_npc_saltalk", "REL/d/a/npc/d_a_npc_saltalk.cpp"),
|
||||
Rel(Matching, "d_a_npc_saltalk", "REL/d/a/npc/d_a_npc_saltalk.cpp"),
|
||||
Rel(
|
||||
NonMatching, "d_a_npc_senpaia_mother", "REL/d/a/npc/d_a_npc_senpaia_mother.cpp"
|
||||
),
|
||||
|
@ -191,7 +191,7 @@ public:
|
||||
/* 8002cfc0 */ int getParams2UpperByte();
|
||||
/* 8002cfd0 */ void setParams2UpperByte(u32 val);
|
||||
/* 8002cff0 */ static u32 buildParams2(u32 lower, u32 upper);
|
||||
/* 8002d010 */ u32 getParams2Lower();
|
||||
/* 8002d010 */ u32 getParams2Lower() const;
|
||||
/* 8002d020 */ static dAcBase_c *findActor(char *objName, dAcBase_c *parent);
|
||||
/* 8002d0a0 */ static dAcBase_c *searchActor(dAcBase_c *parent);
|
||||
// Kinda performs the code of the first param on every actor (second param is optional parent)
|
||||
|
@ -253,5 +253,8 @@ public:
|
||||
return (mActionFlagsCont & mask) != 0;
|
||||
}
|
||||
|
||||
static const dAcPy_c *GetLink() {
|
||||
return LINK;
|
||||
}
|
||||
static dAcPy_c *LINK;
|
||||
};
|
||||
|
@ -1,13 +1,204 @@
|
||||
#ifndef D_A_NPC_H
|
||||
#define D_A_NPC_H
|
||||
|
||||
#include "common.h"
|
||||
#include "d/a/d_a_itembase.h"
|
||||
#include "d/a/obj/d_a_obj_base.h"
|
||||
#include "m/m_vec.h"
|
||||
#include "s/s_State.hpp"
|
||||
#include "s/s_StateInterfaces.hpp"
|
||||
|
||||
// This is the NPC base. Most npcs actually use dAcOrdinaryNpc, but this just is a simpler one?
|
||||
|
||||
// Ghidra: ActorNpcBase
|
||||
// size: 0x6e4
|
||||
// official name
|
||||
class dAcNpc_c : public dAcObjBase_c {};
|
||||
class dAcNpc_c : public dAcObjBase_c {
|
||||
public:
|
||||
dAcNpc_c();
|
||||
virtual ~dAcNpc_c();
|
||||
|
||||
/* vt 0x080 */ virtual bool giveItem(void *unknown, ITEM_ID item_id);
|
||||
/* vt 0x084 */ virtual void getPosCopy3(mVec3_c &outResult) {
|
||||
outResult.copyFrom(poscopy3);
|
||||
}
|
||||
/* vt 0x088 */ virtual void acNpc_vt_0x88() {}
|
||||
/* vt 0x08C */ virtual void acNpc_vt_0x8C() {}
|
||||
/* vt 0x090 */ virtual int acNpc_vt_0x90() {
|
||||
return 1;
|
||||
}
|
||||
/* vt 0x094 */ virtual int acNpc_vt_0x94() {
|
||||
return 1;
|
||||
}
|
||||
/* vt 0x098 */ virtual int acNpc_vt_0x98() {
|
||||
return 1;
|
||||
}
|
||||
/* vt 0x09C */ virtual void acNpc_vt_0x9C();
|
||||
/* vt 0x0A0 */ virtual void acNpc_vt_0xA0();
|
||||
/* vt 0x0A4 */ virtual void acNpc_vt_0xA4();
|
||||
/* vt 0x0A8 */ virtual void acNpc_vt_0xA8();
|
||||
/* vt 0x0AC */ virtual void acNpc_vt_0xAC();
|
||||
/* vt 0x0B0 */ virtual void acNpc_vt_0xB0();
|
||||
/* vt 0x0B4 */ virtual void acNpc_vt_0xB4();
|
||||
/* vt 0x0B8 */ virtual void acNpc_vt_0xB8();
|
||||
/* vt 0x0BC */ virtual void acNpc_vt_0xBC();
|
||||
/* vt 0x0C0 */ virtual int eventFlowSwitch2() {
|
||||
return 0;
|
||||
}
|
||||
/* vt 0x0C4 */ virtual int eventFlowSwitch3() {
|
||||
return 0;
|
||||
}
|
||||
/* vt 0x0C8 */ virtual int eventFlowSwitch4() {
|
||||
return 0;
|
||||
}
|
||||
/* vt 0x0CC */ virtual void acNpc_vt_0xCC();
|
||||
/* vt 0x0D0 */ virtual int acNpc_vt_0xD0();
|
||||
/* vt 0x0D4 */ virtual void acNpc_vt_0xD4();
|
||||
/* vt 0x0D8 */ virtual int acNpc_vt_0xD8();
|
||||
/* vt 0x0DC */ virtual int acNpc_vt_0xDC() {
|
||||
return 0;
|
||||
}
|
||||
/* vt 0x0E0 */ virtual int acNpc_vt_0xE0() {
|
||||
return 0;
|
||||
}
|
||||
/* vt 0x0E4 */ virtual int acNpc_vt_0xE4() {
|
||||
return 1;
|
||||
}
|
||||
/* vt 0x0E8 */ virtual void acNpc_vt_0xE8();
|
||||
|
||||
/* vt 0x074 */ virtual void *getObjectListEntry() override {
|
||||
return &mActorListEntry;
|
||||
}
|
||||
|
||||
/* vt 0x0EC */ virtual int acNpc_vt_0xEC() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* vt 0x0F0 */ virtual bool isInState(const sStateIDIf_c &otherState) const {
|
||||
return *mStateMgr.getStateID() == otherState;
|
||||
}
|
||||
|
||||
/* vt 0x0F4 */ virtual void setState(const sStateIDIf_c &otherState) {
|
||||
// Result is discarded, but I guess in demo builds this is used
|
||||
// to prevent actors from leaving the Demo state.
|
||||
(void)isInState(StateID_Demo);
|
||||
mStateMgr.changeState(otherState);
|
||||
}
|
||||
|
||||
/* vt 0xF8 */ virtual void executeState() {
|
||||
mStateMgr.executeState();
|
||||
}
|
||||
|
||||
STATE_VIRTUAL_FUNC_DECLARE(dAcNpc_c, Wait);
|
||||
STATE_VIRTUAL_FUNC_DECLARE(dAcNpc_c, Demo);
|
||||
|
||||
/* vt 0x114 */ virtual int acNpc_vt_0x114() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
/* vt 0x118 */ virtual int acNpc_vt_0x118() {
|
||||
return 0;
|
||||
}
|
||||
/* vt 0x11C */ virtual void acNpc_vt_0x11C();
|
||||
/* vt 0x120 */ virtual void acNpc_vt_0x120() {}
|
||||
/* vt 0x124 */ virtual void acNpc_vt_0x124() {}
|
||||
/* vt 0x128 */ virtual int acNpc_vt_0x128() {
|
||||
return 0;
|
||||
}
|
||||
/* vt 0x12C */ virtual int acNpc_vt_0x12C() {
|
||||
return 0;
|
||||
}
|
||||
/* vt 0x130 */ virtual void acNpc_vt_0x130();
|
||||
/* vt 0x134 */ virtual void acNpc_vt_0x134();
|
||||
/* vt 0x138 */ virtual void acNpc_vt_0x138();
|
||||
/* vt 0x13C */ virtual void acNpc_vt_0x13C();
|
||||
/* vt 0x140 */ virtual void acNpc_vt_0x140();
|
||||
/* vt 0x144 */ virtual void acNpc_vt_0x144();
|
||||
/* vt 0x148 */ virtual void acNpc_vt_0x148();
|
||||
/* vt 0x14C */ virtual int acNpc_vt_0x14C() {
|
||||
return 0;
|
||||
}
|
||||
/* vt 0x150 */ virtual int acNpc_vt_0x150() {
|
||||
return 1;
|
||||
}
|
||||
/* vt 0x154 */ virtual void acNpc_vt_0x154() {}
|
||||
/* vt 0x158 */ virtual void acNpc_vt_0x158() {}
|
||||
/* vt 0x15C */ virtual void acNpc_vt_0x15C() {}
|
||||
/* vt 0x160 */ virtual void acNpc_vt_0x160() {}
|
||||
/* vt 0x164 */ virtual void acNpc_vt_0x164();
|
||||
/* vt 0x168 */ virtual int acNpc_vt_0x168() {
|
||||
return 0;
|
||||
}
|
||||
/* vt 0x16C */ virtual void acNpc_vt_0x16C();
|
||||
/* vt 0x170 */ virtual void acNpc_vt_0x170();
|
||||
/* vt 0x174 */ virtual void acNpc_vt_0x174();
|
||||
/* vt 0x178 */ virtual void acNpc_vt_0x178();
|
||||
/* vt 0x17C */ virtual void acNpc_vt_0x17C();
|
||||
/* vt 0x180 */ virtual void acNpc_vt_0x180();
|
||||
/* vt 0x184 */ virtual void acNpc_vt_0x184();
|
||||
/* vt 0x188 */ virtual void acNpc_vt_0x188();
|
||||
/* vt 0x18C */ virtual void acNpc_vt_0x18C();
|
||||
/* vt 0x190 */ virtual void acNpc_vt_0x190();
|
||||
/* vt 0x194 */ virtual void acNpc_vt_0x194();
|
||||
/* vt 0x198 */ virtual void acNpc_vt_0x198();
|
||||
/* vt 0x19C */ virtual void acNpc_vt_0x19C();
|
||||
/* vt 0x1A0 */ virtual void acNpc_vt_0x1A0();
|
||||
/* vt 0x1A4 */ virtual void acNpc_vt_0x1A4();
|
||||
/* vt 0x1A8 */ virtual void acNpc_vt_0x1A8();
|
||||
/* vt 0x1AC */ virtual void acNpc_vt_0x1AC();
|
||||
/* vt 0x1B0 */ virtual void acNpc_vt_0x1B0();
|
||||
/* vt 0x1B4 */ virtual void acNpc_vt_0x1B4();
|
||||
/* vt 0x1B8 */ virtual void acNpc_vt_0x1B8();
|
||||
/* vt 0x1BC */ virtual void acNpc_vt_0x1BC();
|
||||
/* vt 0x1C0 */ virtual void acNpc_vt_0x1C0();
|
||||
/* vt 0x1C4 */ virtual void acNpc_vt_0x1C4();
|
||||
/* vt 0x1C8 */ virtual void acNpc_vt_0x1C8();
|
||||
/* vt 0x1CC */ virtual void acNpc_vt_0x1CC();
|
||||
/* vt 0x1D0 */ virtual void acNpc_vt_0x1D0();
|
||||
/* vt 0x1D4 */ virtual void acNpc_vt_0x1D4();
|
||||
/* vt 0x1D8 */ virtual void acNpc_vt_0x1D8();
|
||||
/* vt 0x1DC */ virtual void acNpc_vt_0x1DC();
|
||||
/* vt 0x1E0 */ virtual void acNpc_vt_0x1E0();
|
||||
/* vt 0x1E4 */ virtual void acNpc_vt_0x1E4();
|
||||
/* vt 0x1E8 */ virtual int acNpc_vt_0x1E8() {
|
||||
return 1;
|
||||
}
|
||||
/* vt 0x1EC */ virtual int acNpc_vt_0x1EC() {
|
||||
return 1;
|
||||
}
|
||||
/* vt 0x1F0 */ virtual void *acNpc_vt_0x1F0() {
|
||||
return field_0x364;
|
||||
}
|
||||
/* vt 0x1F4 */ virtual int acNpc_vt_0x1F4() {
|
||||
return 1;
|
||||
}
|
||||
/* vt 0x1F8 */ virtual bool acNpc_vt_0x1F8() {
|
||||
return !acNpc_vt_0x1F4();
|
||||
}
|
||||
/* vt 0x1FC */ virtual bool acNpc_vt_0x1FC() {
|
||||
return field_0x684 == 1;
|
||||
}
|
||||
/* vt 0x200 */ virtual bool acNpc_vt_0x200() {
|
||||
return !acNpc_vt_0x1FC();
|
||||
}
|
||||
/* vt 0x204 */ virtual int acNpc_vt_0x204() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
protected:
|
||||
void npcExecute();
|
||||
static mVec3_c getLinkPos();
|
||||
|
||||
private:
|
||||
/* 0x330 */ u8 field_0x330[0x358 - 0x330];
|
||||
/* 0x358 */ fLiNdBa_c mActorListEntry;
|
||||
/* 0x364 */ u8 field_0x364[0x4C0 - 0x364];
|
||||
/* 0x4C0 */ STATE_MGR_DECLARE(dAcNpc_c);
|
||||
/* 0x4FC */ u8 field_0x4FC[0x684 - 0x4FC];
|
||||
/* 0x684 */ u8 field_0x684;
|
||||
/* 0x685 */ u8 field_0x685[0x6E4 - 0x685];
|
||||
|
||||
static fLiMgBa_c NPC_ACTOR_LIST;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@ -2,16 +2,43 @@
|
||||
#define D_A_NPC_RIVAL_LOD_H
|
||||
|
||||
#include "d/a/npc/d_a_npc.h"
|
||||
#include "d/d_shadow.h"
|
||||
#include "m/m3d/m_anmmdl.h"
|
||||
#include "s/s_State.hpp"
|
||||
#include "s/s_StateMgr.hpp"
|
||||
#include "s/s_StateInterfaces.hpp"
|
||||
|
||||
class dAcNpcRivalLOD_c : public dAcNpc_c {
|
||||
public:
|
||||
dAcNpcRivalLOD_c() : mStateMgr(*this, sStateID::null) {}
|
||||
virtual ~dAcNpcRivalLOD_c() {}
|
||||
|
||||
virtual bool createHeap() override;
|
||||
virtual int create() override;
|
||||
virtual int doDelete() override;
|
||||
virtual int actorExecute() override;
|
||||
virtual int draw() override;
|
||||
|
||||
// weird actor - uses its own state manager, still
|
||||
// overrides the virtual base state
|
||||
|
||||
virtual void setState(const sStateIDIf_c &state) override {
|
||||
mStateMgr.changeState(state);
|
||||
}
|
||||
|
||||
virtual void executeState() override {
|
||||
mStateMgr.executeState();
|
||||
}
|
||||
|
||||
virtual bool isInState(const sStateIDIf_c &state) const override {
|
||||
return mStateMgr.isState(state);
|
||||
}
|
||||
|
||||
STATE_FUNC_DECLARE(dAcNpcRivalLOD_c, Wait);
|
||||
|
||||
private:
|
||||
/* 0x??? */ STATE_MGR_DECLARE(dAcNpcRivalLOD_c);
|
||||
/* 0x6E4 */ m3d::mdlAnmChr mMdl;
|
||||
/* 0x74C */ dShadowCircle_c mShadow;
|
||||
/* 0x754 */ STATE_MGR_DECLARE(dAcNpcRivalLOD_c);
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@ -1,17 +1,57 @@
|
||||
#ifndef D_A_NPC_SALTALK_H
|
||||
#define D_A_NPC_SALTALK_H
|
||||
|
||||
#include "common.h"
|
||||
#include "d/a/d_a_base.h"
|
||||
#include "d/a/npc/d_a_npc.h"
|
||||
#include "d/a/npc/d_a_npc_volcano_f2_salbo.h"
|
||||
#include "m/m_vec.h"
|
||||
#include "s/s_State.hpp"
|
||||
#include "s/s_StateMgr.hpp"
|
||||
#include "toBeSorted/actor_event.h"
|
||||
#include "toBeSorted/area_utils.h"
|
||||
|
||||
class dAcNpcSltk_c : public dAcNpc_c {
|
||||
public:
|
||||
dAcNpcSltk_c() : mStateMgr(*this, sStateID::null) {}
|
||||
dAcNpcSltk_c() : mEvent(*this, nullptr), mpArea(nullptr) {}
|
||||
virtual ~dAcNpcSltk_c() {}
|
||||
|
||||
virtual int create() override;
|
||||
virtual int actorCreate() override;
|
||||
virtual int actorPostCreate() override;
|
||||
virtual int actorExecute() override;
|
||||
|
||||
virtual int acNpc_vt_0xDC() override;
|
||||
virtual int draw() override;
|
||||
|
||||
STATE_VIRTUAL_OVERRIDE_FUNC_DECLARE(dAcNpcSltk_c, dAcNpc_c, Wait);
|
||||
|
||||
private:
|
||||
/* 0x??? */ STATE_MGR_DECLARE(dAcNpcSltk_c);
|
||||
int getParam0_0() const;
|
||||
int getParam0_1() const;
|
||||
|
||||
int getParam1() const;
|
||||
int getParam2() const;
|
||||
int getParam3() const;
|
||||
int getParam4() const;
|
||||
|
||||
int getSomething() const;
|
||||
bool isSomething0() const;
|
||||
bool isSomething1() const;
|
||||
|
||||
bool checkSomething(mVec3_c pos) const;
|
||||
|
||||
/* 0x6E4 */ dAcRef_c<dAcNpcSlb2_c> mRef;
|
||||
/* 0x6F0 */ int mAreaIndex;
|
||||
/* 0x6F4 */ AREA *mpArea;
|
||||
/* 0x6F8 */ ActorEventRelated mEvent;
|
||||
/* 0x748 */ int field_0x748;
|
||||
/* 0x74C */ int field_0x74C;
|
||||
/* 0x750 */ int field_0x750;
|
||||
/* 0x754 */ int field_0x754;
|
||||
/* 0x758 */ f32 field_0x758;
|
||||
/* 0x75C */ f32 field_0x75C;
|
||||
/* 0x760 */ mVec3_c mLinkPos;
|
||||
/* 0x76C */ u8 field_0x76C;
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@ -1,15 +1,18 @@
|
||||
#ifndef D_A_NPC_VOLCANO_F2_SALBO_H
|
||||
#define D_A_NPC_VOLCANO_F2_SALBO_H
|
||||
|
||||
#include "d/a/npc/d_a_npc.h"
|
||||
#include "d/a/npc/d_a_ordinary_npc.h"
|
||||
#include "s/s_State.hpp"
|
||||
#include "s/s_StateMgr.hpp"
|
||||
|
||||
class dAcNpcSlb2_c : public dAcNpc_c {
|
||||
class dAcNpcSlb2_c : public dAcOrdinaryNpc_c {
|
||||
public:
|
||||
dAcNpcSlb2_c() : mStateMgr(*this, sStateID::null) {}
|
||||
virtual ~dAcNpcSlb2_c() {}
|
||||
|
||||
void fn_61_58C0(int, int);
|
||||
bool fn_61_6A10();
|
||||
void fn_61_68D0(int);
|
||||
|
||||
private:
|
||||
/* 0x??? */ STATE_MGR_DECLARE(dAcNpcSlb2_c);
|
||||
};
|
||||
|
22
include/d/a/npc/d_a_ordinary_npc.h
Normal file
22
include/d/a/npc/d_a_ordinary_npc.h
Normal file
@ -0,0 +1,22 @@
|
||||
#ifndef D_A_ORDINARY_NPC_H
|
||||
#define D_A_ORDINARY_NPC_H
|
||||
|
||||
#include "d/a/npc/d_a_npc.h"
|
||||
#include "s/s_State.hpp"
|
||||
|
||||
class dAcOrdinaryNpc_c : public dAcNpc_c {
|
||||
public:
|
||||
/* vt 0x1F4 */ virtual int acNpc_vt_0x1F4() override;
|
||||
|
||||
STATE_VIRTUAL_OVERRIDE_FUNC_DECLARE(dAcOrdinaryNpc_c, dAcNpc_c, Wait);
|
||||
STATE_VIRTUAL_FUNC_DECLARE(dAcOrdinaryNpc_c, Pain);
|
||||
STATE_VIRTUAL_FUNC_DECLARE(dAcOrdinaryNpc_c, Surprised);
|
||||
STATE_VIRTUAL_FUNC_DECLARE(dAcOrdinaryNpc_c, Withstand);
|
||||
STATE_VIRTUAL_FUNC_DECLARE(dAcOrdinaryNpc_c, Walk);
|
||||
STATE_VIRTUAL_FUNC_DECLARE(dAcOrdinaryNpc_c, LookAwaySt);
|
||||
STATE_VIRTUAL_FUNC_DECLARE(dAcOrdinaryNpc_c, LookAway);
|
||||
STATE_VIRTUAL_FUNC_DECLARE(dAcOrdinaryNpc_c, Turn);
|
||||
STATE_FUNC_DECLARE(dAcOrdinaryNpc_c, PreWalkTurn);
|
||||
};
|
||||
|
||||
#endif
|
@ -10,6 +10,7 @@
|
||||
#include "rvl/MTX/vec.h"
|
||||
|
||||
class mAng;
|
||||
class mAng3_c;
|
||||
|
||||
class mVec3_c : public EGG::Vector3f {
|
||||
public:
|
||||
@ -213,6 +214,8 @@ public:
|
||||
void normalize();
|
||||
bool normalizeRS();
|
||||
|
||||
static mVec3_c createProjectionXZ(const mAng3_c &ang, f32 scalar);
|
||||
|
||||
inline f32 mag() const {
|
||||
return PSVECMag(*this);
|
||||
}
|
||||
|
@ -22,3 +22,7 @@ the other abstract interface classes and provides this dtor.
|
||||
We're observing a lot of word-to-bool casts in code after these
|
||||
operators are invoked, and while there are ways to force the conversion,
|
||||
this seems the most reasonable.
|
||||
|
||||
## s_FStateVirtualID
|
||||
|
||||
Implemented by SS based on NSMBW symbols. Probably missing some parts, sync with NSMBW if they get around to it.
|
||||
|
35
include/s/s_FStateVirtualID.hpp
Normal file
35
include/s/s_FStateVirtualID.hpp
Normal file
@ -0,0 +1,35 @@
|
||||
#ifndef S_FSTATE_VIRTUAL_ID_H
|
||||
#define S_FSTATE_VIRTUAL_ID_H
|
||||
|
||||
#include "s/s_FStateID.hpp"
|
||||
#include "s/s_StateID.hpp"
|
||||
|
||||
template <typename T>
|
||||
class sFStateVirtualID_c : public sFStateID_c<T> {
|
||||
public:
|
||||
typedef void (T::*stateFunc)();
|
||||
sFStateVirtualID_c(
|
||||
const sStateID_c *superState, const char *name, stateFunc initialize, stateFunc execute, stateFunc finalize
|
||||
)
|
||||
: sFStateID_c<T>(name, initialize, execute, finalize), mpSuperState(superState) {}
|
||||
|
||||
virtual unsigned int number() const {
|
||||
return superID()->numberBase();
|
||||
}
|
||||
|
||||
const sFStateVirtualID_c<T> *superID() const {
|
||||
if (!mpSuperState->isNull()) {
|
||||
return static_cast<const sFStateVirtualID_c<T> *>(mpSuperState)->superID();
|
||||
}
|
||||
return this;
|
||||
}
|
||||
|
||||
unsigned int numberBase() const {
|
||||
return sStateID_c::number();
|
||||
}
|
||||
|
||||
private:
|
||||
const sStateID_c *mpSuperState;
|
||||
};
|
||||
|
||||
#endif
|
@ -3,6 +3,7 @@
|
||||
|
||||
#include "s/s_FStateMgr.hpp"
|
||||
#include "s/s_StateMethodUsr_FI.hpp"
|
||||
#include "s/s_FStateVirtualID.hpp"
|
||||
|
||||
// Note: Ported from https://github.com/NSMBW-Community/NSMBW-Decomp/tree/master/include/dol/sLib
|
||||
// See include/s/README.txt for changes made
|
||||
@ -29,4 +30,37 @@
|
||||
|
||||
#define STATE_MGR(class_name) sFStateMgr_c<class_name, sStateMethodUsr_FI_c>
|
||||
|
||||
// TODO this is probably not the whole solution.
|
||||
// The problems with this approach are:
|
||||
// * You can't define the same state name for multiple files in the same TU due to baseID_ symbol clash.
|
||||
// * The use of the templated baseID_ function isn't quite justified (could just use normal functions).
|
||||
|
||||
#define STATE_VIRTUAL_FUNC_DECLARE(class, name) \
|
||||
virtual void initializeState_##name(); \
|
||||
virtual void executeState_##name(); \
|
||||
virtual void finalizeState_##name(); \
|
||||
static const sFStateVirtualID_c<class> StateID_##name; \
|
||||
typedef sStateID_c StateID_##name##_BaseIDClass
|
||||
|
||||
#define STATE_VIRTUAL_OVERRIDE_FUNC_DECLARE(class, super_class, name) \
|
||||
virtual void initializeState_##name() override; \
|
||||
virtual void executeState_##name() override; \
|
||||
virtual void finalizeState_##name() override; \
|
||||
static const sFStateVirtualID_c<class> StateID_##name; \
|
||||
typedef super_class StateID_##name##_BaseIDClass
|
||||
|
||||
#define STATE_VIRTUAL_DEFINE(class, name) \
|
||||
template <typename T> \
|
||||
static const sStateID_c &baseID_##name() { \
|
||||
return T::StateID_##name; \
|
||||
} \
|
||||
template <> \
|
||||
const sStateID_c &baseID_##name<sStateID_c>() { \
|
||||
return sStateID::null; \
|
||||
} \
|
||||
const sFStateVirtualID_c<class> class ::StateID_##name( \
|
||||
&baseID_##name<class ::StateID_##name##_BaseIDClass>(), #class "::StateID_" #name, \
|
||||
&class ::initializeState_##name, &class ::executeState_##name, &class ::finalizeState_##name \
|
||||
)
|
||||
|
||||
#endif
|
||||
|
@ -44,7 +44,7 @@ protected:
|
||||
namespace sStateID {
|
||||
|
||||
/// @ingroup state
|
||||
extern sStateID_c null; ///< A null state instance.
|
||||
extern const sStateID_c null; ///< A null state instance.
|
||||
} // namespace sStateID
|
||||
|
||||
#endif
|
||||
|
@ -1,10 +1,19 @@
|
||||
#ifndef AREA_UTILS_H
|
||||
#define AREA_UTILS_H
|
||||
|
||||
#include "m/m_angle.h"
|
||||
#include "m/m_vec.h"
|
||||
|
||||
/* 800a9b00 */ bool checkPosInArea(void **AREA, const mVec3_c &pos);
|
||||
/* 800a9bd0 */ void *getAreaForIndexInRoom(s32 areaIndex, s32 roomId);
|
||||
/* 800a9c50 */ bool *checkPosInArea(s32 areaIndex, s32 roomId, const mVec3_c &pos, void **AREA);
|
||||
struct AREA {
|
||||
/* 0x00 */ mVec3_c mPos;
|
||||
/* 0x0C */ mVec3_c mScale;
|
||||
/* 0x18 */ mAng mAngleY;
|
||||
/* 0x1A */ mAng mAngleLink;
|
||||
/* 0x1C */ u8 field_0x1C;
|
||||
};
|
||||
|
||||
/* 800a9b00 */ bool checkPosInArea(AREA **area, const mVec3_c &pos);
|
||||
/* 800a9bd0 */ AREA *getAreaForIndexInRoom(s32 areaIndex, s32 roomId);
|
||||
/* 800a9c50 */ bool checkPosInArea(s32 areaIndex, s32 roomId, const mVec3_c &pos, AREA *const *area);
|
||||
|
||||
#endif
|
||||
|
@ -1,3 +1,50 @@
|
||||
#include "d/a/npc/d_a_npc_rival_lod.h"
|
||||
|
||||
#include "d/a/obj/d_a_obj_base.h"
|
||||
#include "m/m3d/m_fanm.h"
|
||||
#include "s/s_State.hpp"
|
||||
|
||||
SPECIAL_ACTOR_PROFILE(NPC_RIVAL_LOD, dAcNpcRivalLOD_c, fProfile::NPC_RIVAL_LOD, 0x32, 0, 3);
|
||||
|
||||
STATE_DEFINE(dAcNpcRivalLOD_c, Wait);
|
||||
|
||||
bool dAcNpcRivalLOD_c::createHeap() {
|
||||
void *oarc = getOarcFile("RivalLOD", "g3d/model.brres");
|
||||
TRY_CREATE(mMdl.create(oarc, "RivalLOD", "RivalLOD_wait", &heap_allocator, 0x120));
|
||||
return true;
|
||||
}
|
||||
int dAcNpcRivalLOD_c::create() {
|
||||
if (!initAllocatorWork1Heap(-1, "dAcNpcRivalLOD_c::m_allocator", 0x20)) {
|
||||
return FAILED;
|
||||
}
|
||||
0.0f; // float order, cool
|
||||
forwardAccel = -1.0f;
|
||||
forwardMaxSpeed = -40.0f;
|
||||
setState(StateID_Wait);
|
||||
boundingBox.Set(mVec3_c(-110.0f, -30.0f, -130.0f), mVec3_c(130.0f, 190.0f, 110.0f));
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
int dAcNpcRivalLOD_c::doDelete() {
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
int dAcNpcRivalLOD_c::actorExecute() {
|
||||
executeState();
|
||||
updateMatrix();
|
||||
mMdl.getModel().setLocalMtx(mWorldMtx);
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
int dAcNpcRivalLOD_c::draw() {
|
||||
drawModelType1(&mMdl.getModel());
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
void dAcNpcRivalLOD_c::initializeState_Wait() {
|
||||
mMdl.setAnm("RivalLOD_wait", m3d::PLAY_MODE_4, 4.0f);
|
||||
}
|
||||
void dAcNpcRivalLOD_c::executeState_Wait() {
|
||||
mMdl.play();
|
||||
}
|
||||
void dAcNpcRivalLOD_c::finalizeState_Wait() {}
|
||||
|
@ -1,3 +1,195 @@
|
||||
#include "d/a/npc/d_a_npc_saltalk.h"
|
||||
|
||||
#include "common.h"
|
||||
#include "d/a/d_a_base.h"
|
||||
#include "d/a/d_a_player.h"
|
||||
#include "f/f_base.h"
|
||||
#include "f/f_manager.h"
|
||||
#include "f/f_profile_name.h"
|
||||
#include "m/m_angle.h"
|
||||
#include "m/m_vec.h"
|
||||
#include "s/s_State.hpp"
|
||||
#include "toBeSorted/area_utils.h"
|
||||
#include "toBeSorted/event_manager.h"
|
||||
|
||||
SPECIAL_ACTOR_PROFILE(NPC_SLTK, dAcNpcSltk_c, fProfile::NPC_SLTK, 0x63, 0, 0);
|
||||
|
||||
STATE_VIRTUAL_DEFINE(dAcNpcSltk_c, Wait);
|
||||
|
||||
#pragma explicit_zero_data on
|
||||
int rot0 = 0;
|
||||
int rot1 = 0;
|
||||
int rot2 = 0;
|
||||
#pragma explicit_zero_data off
|
||||
|
||||
int dAcNpcSltk_c::create() {
|
||||
return dAcBase_c::create();
|
||||
}
|
||||
|
||||
int dAcNpcSltk_c::actorCreate() {
|
||||
field_0x748 = getParam4();
|
||||
if (isSomething0()) {
|
||||
field_0x754 = getParam0_0();
|
||||
field_0x74C = 0xFF;
|
||||
field_0x750 = 0xFF;
|
||||
} else if (isSomething1()) {
|
||||
field_0x754 = 0xFF;
|
||||
field_0x74C = getParam0_1();
|
||||
field_0x750 = getParam1();
|
||||
} else {
|
||||
field_0x754 = 0xFF;
|
||||
field_0x74C = 0xFF;
|
||||
field_0x750 = 0xFF;
|
||||
}
|
||||
|
||||
mAreaIndex = rotation.z & 0xFF;
|
||||
if (mAreaIndex < 0xFF) {
|
||||
mpArea = getAreaForIndexInRoom(mAreaIndex, roomid);
|
||||
if (mpArea == nullptr) {
|
||||
return FAILED;
|
||||
}
|
||||
}
|
||||
|
||||
rotation.x = rot0;
|
||||
rotation.y = rot1;
|
||||
rotation.z = rot2;
|
||||
|
||||
field_0x758 = getParam2() * 100;
|
||||
field_0x75C = getParam3() * 100;
|
||||
|
||||
setState(StateID_Wait);
|
||||
|
||||
field_0x76C = 0;
|
||||
|
||||
boundingBox.Set(mVec3_c(-0.0f, -0.0f, -0.0f), mVec3_c(0.0f, 0.0f, 0.0f));
|
||||
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
int dAcNpcSltk_c::actorPostCreate() {
|
||||
mLinkPos = getLinkPos();
|
||||
mRef.unlink();
|
||||
|
||||
f32 closestDistance = FLOAT_MAX;
|
||||
|
||||
dAcNpcSlb2_c *cursor = nullptr;
|
||||
dAcNpcSlb2_c *closest = nullptr;
|
||||
do {
|
||||
cursor = static_cast<dAcNpcSlb2_c *>(fManager_c::searchBaseByProfName(fProfile::NPC_SLB2, cursor));
|
||||
if (cursor != nullptr) {
|
||||
if (cursor->acNpc_vt_0x1F4()) {
|
||||
f32 thisDist = cursor->getSquareDistanceTo(position);
|
||||
if (thisDist < closestDistance) {
|
||||
closest = cursor;
|
||||
closestDistance = cursor->getSquareDistanceTo(position);
|
||||
}
|
||||
}
|
||||
}
|
||||
} while (cursor != nullptr);
|
||||
|
||||
if (closest != nullptr) {
|
||||
mRef.link(closest);
|
||||
}
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
int dAcNpcSltk_c::actorExecute() {
|
||||
npcExecute();
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
int dAcNpcSltk_c::acNpc_vt_0xDC() {
|
||||
return 0;
|
||||
}
|
||||
|
||||
int dAcNpcSltk_c::draw() {
|
||||
return SUCCEEDED;
|
||||
}
|
||||
|
||||
int dAcNpcSltk_c::getParam0_0() const {
|
||||
return params & 0xFF;
|
||||
}
|
||||
int dAcNpcSltk_c::getParam0_1() const {
|
||||
return params & 0xFF;
|
||||
}
|
||||
|
||||
int dAcNpcSltk_c::getParam1() const {
|
||||
return (params >> 8) & 0xFF;
|
||||
}
|
||||
int dAcNpcSltk_c::getParam2() const {
|
||||
return (params >> 16) & 0xFF;
|
||||
}
|
||||
int dAcNpcSltk_c::getParam3() const {
|
||||
return (params >> 24) & 0xFF;
|
||||
}
|
||||
int dAcNpcSltk_c::getParam4() const {
|
||||
return getParams2Lower() & 0xF;
|
||||
}
|
||||
|
||||
int dAcNpcSltk_c::getSomething() const {
|
||||
return field_0x748;
|
||||
}
|
||||
bool dAcNpcSltk_c::isSomething0() const {
|
||||
return getSomething() == 0;
|
||||
}
|
||||
bool dAcNpcSltk_c::isSomething1() const {
|
||||
return getSomething() == 1;
|
||||
}
|
||||
|
||||
bool dAcNpcSltk_c::checkSomething(mVec3_c pos) const {
|
||||
if (mAreaIndex != 0xFF) {
|
||||
return checkPosInArea(mAreaIndex, roomid, pos, &mpArea) == 1;
|
||||
} else {
|
||||
mVec3_c dist = pos - position;
|
||||
if (dist.squareMagXZ() <= field_0x758 * field_0x758) {
|
||||
// TODO reload from position.y here
|
||||
f32 fDist = field_0x75C + position.y;
|
||||
f32 fDist2 = position.y;
|
||||
if (fDist <= fDist2) {
|
||||
fDist2 = fDist;
|
||||
fDist = position.y;
|
||||
}
|
||||
return pos.y <= fDist && pos.y >= fDist2;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void dAcNpcSltk_c::initializeState_Wait() {}
|
||||
void dAcNpcSltk_c::executeState_Wait() {
|
||||
bool checkResult = false;
|
||||
|
||||
const dAcPy_c *link = dAcPy_c::GetLink();
|
||||
|
||||
dAcNpcSlb2_c *slb = mRef.get();
|
||||
if (slb != nullptr) {
|
||||
if (isSomething0()) {
|
||||
checkResult = checkSomething(link->position);
|
||||
if (field_0x76C != 0) {
|
||||
field_0x76C = checkResult;
|
||||
} else if (!EventManager::isInEvent() && !slb->fn_61_6A10() && checkResult) {
|
||||
mAng3_c ang = mAng3_c(0, mpArea->mAngleY, 0);
|
||||
mVec3_c proj = mVec3_c::createProjectionXZ(ang, 1.0f);
|
||||
mVec3_c dist = mLinkPos - mpArea->mPos;
|
||||
dist.y = 0.0f;
|
||||
dist.normalize();
|
||||
slb->fn_61_68D0(field_0x754);
|
||||
field_0x76C = 1;
|
||||
}
|
||||
|
||||
if (!checkResult) {
|
||||
if (!link->checkActionFlags(0xC70852) || link->checkActionFlags(0x40000)) {
|
||||
mLinkPos = link->position;
|
||||
}
|
||||
}
|
||||
} else if (isSomething1()) {
|
||||
checkResult = checkSomething(slb->position);
|
||||
if (field_0x76C == 0 && checkResult) {
|
||||
slb->fn_61_58C0(field_0x74C, field_0x750);
|
||||
}
|
||||
}
|
||||
field_0x76C = checkResult;
|
||||
}
|
||||
}
|
||||
void dAcNpcSltk_c::finalizeState_Wait() {}
|
||||
|
@ -277,7 +277,7 @@ u32 dAcBase_c::buildParams2(u32 lower, u32 upper) {
|
||||
}
|
||||
|
||||
// 8002d010
|
||||
u32 dAcBase_c::getParams2Lower() {
|
||||
u32 dAcBase_c::getParams2Lower() const {
|
||||
return params2 & 0xFFFF;
|
||||
}
|
||||
|
||||
|
43
src/d/a/npc/d_a_npc.cpp
Normal file
43
src/d/a/npc/d_a_npc.cpp
Normal file
@ -0,0 +1,43 @@
|
||||
#include "d/a/npc/d_a_npc.h"
|
||||
|
||||
#include "f/f_list_mg.h"
|
||||
#include "nw4r/ut/ut_Color.h"
|
||||
#include "s/s_StateID.hpp"
|
||||
#include "sized_string.h"
|
||||
|
||||
fLiMgBa_c dAcNpc_c::NPC_ACTOR_LIST;
|
||||
|
||||
STATE_VIRTUAL_DEFINE(dAcNpc_c, Wait);
|
||||
STATE_VIRTUAL_DEFINE(dAcNpc_c, Demo);
|
||||
|
||||
static const nw4r::ut::Color sColors0[] = {
|
||||
nw4r::ut::Color(0xEF, 0x30, 0x27, 0xFF),
|
||||
nw4r::ut::Color(0x00, 0x00, 0x00, 0xFF),
|
||||
nw4r::ut::Color(0xEF, 0x30, 0x27, 0x00),
|
||||
};
|
||||
static const nw4r::ut::Color sColors1[] = {
|
||||
nw4r::ut::Color(0xFF, 0xFF, 0xFF, 0x00),
|
||||
nw4r::ut::Color(0xFE, 0xF8, 0x9D, 0xFF),
|
||||
nw4r::ut::Color(0x88, 0x63, 0x36, 0x80),
|
||||
};
|
||||
static const nw4r::ut::Color sColors2[] = {
|
||||
nw4r::ut::Color(0x4F, 0x46, 0x33, 0xFF),
|
||||
nw4r::ut::Color(0xD8, 0xC5, 0x8D, 0xFF),
|
||||
nw4r::ut::Color(0x95, 0x69, 0x3B, 0xFF),
|
||||
};
|
||||
static const nw4r::ut::Color sColors3[] = {
|
||||
nw4r::ut::Color(0x50, 0x46, 0x32, 0x00),
|
||||
nw4r::ut::Color(0xD8, 0xC5, 0x8D, 0x00),
|
||||
nw4r::ut::Color(0x96, 0x69, 0x3C, 0x00),
|
||||
};
|
||||
|
||||
SizedString<128> sNpcStr1;
|
||||
SizedString<128> sNpcStr2;
|
||||
SizedString<128> sNpcStr3;
|
||||
SizedString<128> sNpcStr4;
|
||||
|
||||
dAcNpc_c::dAcNpc_c() : mStateMgr(*this, sStateID::null), mActorListEntry(this) {}
|
||||
|
||||
dAcNpc_c::~dAcNpc_c() {
|
||||
// TODO
|
||||
}
|
13
src/d/a/npc/d_a_ordinary_npc.cpp
Normal file
13
src/d/a/npc/d_a_ordinary_npc.cpp
Normal file
@ -0,0 +1,13 @@
|
||||
#include "d/a/npc/d_a_ordinary_npc.h"
|
||||
#include "d/a/npc/d_a_npc.h"
|
||||
#include "s/s_StateID.hpp"
|
||||
|
||||
STATE_VIRTUAL_DEFINE(dAcOrdinaryNpc_c, Wait);
|
||||
STATE_VIRTUAL_DEFINE(dAcOrdinaryNpc_c, Pain);
|
||||
STATE_VIRTUAL_DEFINE(dAcOrdinaryNpc_c, Surprised);
|
||||
STATE_VIRTUAL_DEFINE(dAcOrdinaryNpc_c, Withstand);
|
||||
STATE_VIRTUAL_DEFINE(dAcOrdinaryNpc_c, Walk);
|
||||
STATE_VIRTUAL_DEFINE(dAcOrdinaryNpc_c, LookAwaySt);
|
||||
STATE_VIRTUAL_DEFINE(dAcOrdinaryNpc_c, LookAway);
|
||||
STATE_VIRTUAL_DEFINE(dAcOrdinaryNpc_c, Turn);
|
||||
STATE_DEFINE(dAcOrdinaryNpc_c, PreWalkTurn);
|
@ -11,7 +11,7 @@
|
||||
// See include/s/README.txt for changes made
|
||||
|
||||
sStateID_c::NumberMemo_c sStateID_c::sm_numberMemo;
|
||||
sStateID_c sStateID::null(nullptr);
|
||||
const sStateID_c sStateID::null(nullptr);
|
||||
|
||||
sStateID_c::sStateID_c(const char *name) {
|
||||
mpName = name;
|
||||
|
Loading…
Reference in New Issue
Block a user