diff --git a/config/SOUE01/splits.txt b/config/SOUE01/splits.txt index d06d4ab2..1f4b5e83 100644 --- a/config/SOUE01/splits.txt +++ b/config/SOUE01/splits.txt @@ -48,10 +48,15 @@ d/a/e/d_a_e_base.cpp: 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 @@ -581,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 diff --git a/config/SOUE01/symbols.txt b/config/SOUE01/symbols.txt index 0bdd2844..edf9279e 100644 --- a/config/SOUE01/symbols.txt +++ b/config/SOUE01/symbols.txt @@ -29943,7 +29943,7 @@ lbl_80501A04 = .data:0x80501A04; // type:object size:0xC __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:0x18 +__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 @@ -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 @@ -48218,18 +48219,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 -StateID_Wait__8dAcNpc_c = .bss:0x8059703C; // type:object size:0x40 data:4byte -StateID_Demo__8dAcNpc_c = .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 diff --git a/src/d/a/npc/d_a_npc.cpp b/src/d/a/npc/d_a_npc.cpp index 03b506ac..aea7745b 100644 --- a/src/d/a/npc/d_a_npc.cpp +++ b/src/d/a/npc/d_a_npc.cpp @@ -1,6 +1,7 @@ #include "d/a/npc/d_a_npc.h" #include "s/s_StateID.hpp" +#include "sized_string.h" fLiMgBa_c NPC_ACTOR_LIST; @@ -20,7 +21,11 @@ extern nw4r::ut::Color sColors[] = { nw4r::ut::Color(0x50, 0x46, 0x32, 0), nw4r::ut::Color(0xD8, 0xC5, 0x8D, 0), nw4r::ut::Color(0x96, 0x69, 0x3C, 0), - nw4r::ut::Color(0, 0, 0, 0), }; +SizedString<128> sNpcStr1; +SizedString<128> sNpcStr2; +SizedString<128> sNpcStr3; +SizedString<128> sNpcStr4; + dAcNpc_c::dAcNpc_c() : mStateMgr(*this, sStateID::null), mActorListEntry(this) {}