diff --git a/config/eur/arm9/overlays/ov000/relocs.txt b/config/eur/arm9/overlays/ov000/relocs.txt index 3ecca61b..4828787a 100644 --- a/config/eur/arm9/overlays/ov000/relocs.txt +++ b/config/eur/arm9/overlays/ov000/relocs.txt @@ -4223,17 +4223,17 @@ from:0x0207eb3c kind:load to:0x0207e988 module:overlay(0) from:0x0207eb4c kind:arm_call to:0x02012000 module:main from:0x0207eb5c kind:arm_call to:0x02012000 module:main from:0x0207eb70 kind:arm_call to:0x02011ff4 module:main -from:0x0207ec84 kind:load to:0x020b287c module:overlay(0) -from:0x0207eca4 kind:load to:0x020b287c module:overlay(0) +from:0x0207ec84 kind:load to:0x020b2874 module:overlay(0) add:0x8 +from:0x0207eca4 kind:load to:0x020b2874 module:overlay(0) add:0x8 from:0x0207ecc4 kind:arm_call to:0x0207e254 module:overlay(0) -from:0x0207ecd0 kind:load to:0x020b287c module:overlay(0) +from:0x0207ecd0 kind:load to:0x020b2874 module:overlay(0) add:0x8 from:0x0207ecd4 kind:load to:0x027e09c0 module:dtcm from:0x0207ecf4 kind:arm_call to:0x0207e254 module:overlay(0) from:0x0207ecfc kind:arm_call to:0x02011ff4 module:main -from:0x0207ed08 kind:load to:0x020b287c module:overlay(0) +from:0x0207ed08 kind:load to:0x020b2874 module:overlay(0) add:0x8 from:0x0207ed0c kind:load to:0x027e09c0 module:dtcm from:0x0207ed2c kind:arm_call to:0x0207e254 module:overlay(0) -from:0x0207ed38 kind:load to:0x020b287c module:overlay(0) +from:0x0207ed38 kind:load to:0x020b2874 module:overlay(0) add:0x8 from:0x0207ed3c kind:load to:0x027e09c0 module:dtcm from:0x0207ed6c kind:arm_call to:0x01ffb6e4 module:itcm from:0x0207ed7c kind:arm_call to:0x01ffb6e4 module:itcm @@ -4707,7 +4707,7 @@ from:0x0208447a kind:thumb_call to:0x020872bc module:overlay(0) from:0x0208451c kind:thumb_call_arm to:0x02085b00 module:overlay(0) from:0x0208452a kind:thumb_call_arm to:0x02085b00 module:overlay(0) from:0x02084548 kind:load to:0x020b2a50 module:overlay(0) -from:0x0208454c kind:load to:0x020b27c8 module:overlay(0) +from:0x0208454c kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x02084550 kind:load to:0x020ab4dc module:overlay(0) from:0x02084554 kind:load to:0x027e09a4 module:dtcm from:0x02084574 kind:thumb_call_arm to:0x0207ede8 module:overlay(0) diff --git a/config/eur/arm9/overlays/ov000/symbols.txt b/config/eur/arm9/overlays/ov000/symbols.txt index de7b8297..23a455db 100644 --- a/config/eur/arm9/overlays/ov000/symbols.txt +++ b/config/eur/arm9/overlays/ov000/symbols.txt @@ -1282,7 +1282,7 @@ func_ov000_02078a70 kind:function(arm,size=0x34) addr:0x02078a70 func_ov000_02078aa4 kind:function(arm,size=0x48) addr:0x02078aa4 func_ov000_02078aec kind:function(arm,size=0x24) addr:0x02078aec func_ov000_02078b10 kind:function(arm,size=0x18) addr:0x02078b10 -func_ov000_02078b28 kind:function(arm,size=0x10) addr:0x02078b28 +_ZN21UnkStruct_027e09bc_0C19func_ov000_0207a1e0Ei kind:function(arm,size=0x10) addr:0x02078b28 func_ov000_02078b38 kind:function(arm,size=0x18) addr:0x02078b38 func_ov000_02078b50 kind:function(arm,size=0x38) addr:0x02078b50 func_ov000_02078b88 kind:function(arm,size=0x1c) addr:0x02078b88 @@ -1412,8 +1412,8 @@ func_ov000_0207bcfc kind:function(arm,size=0x88) addr:0x0207bcfc func_ov000_0207bd84 kind:function(arm,size=0x260) addr:0x0207bd84 func_ov000_0207bfe4 kind:function(arm,size=0x4) addr:0x0207bfe4 _ZN19func_ov000_0207bfe8D0Ev kind:function(arm,size=0x14) addr:0x0207bfe8 -_ZN24UnkStruct_ov031_Items_00D2Ev kind:function(arm,size=0x4) addr:0x0207bffc -_ZN26UnkStruct_027e0ce0_38_Base8vfunc_08Ev kind:function(arm,size=0x8) addr:0x0207c000 +_ZN29UnkStruct_ov031_Items_00_BaseD2Ev kind:function(arm,size=0x4) addr:0x0207bffc +_ZN26UnkStruct_027e0ce0_38_Base8vfunc_08EPK24UnkStruct_ov031_020f3310 kind:function(arm,size=0x8) addr:0x0207c000 _ZN26UnkStruct_027e0ce0_38_Base8vfunc_0CEPK24UnkStruct_ov031_020e54d4i kind:function(arm,size=0x8) addr:0x0207c008 _ZN26UnkStruct_027e0ce0_38_Base8vfunc_10Ev kind:function(arm,size=0x8) addr:0x0207c010 _ZN17MapObject_10_BaseC2Ev kind:function(arm,size=0x30) addr:0x0207c018 @@ -1466,7 +1466,7 @@ func_ov000_0207e0c8 kind:function(arm,size=0xbc) addr:0x0207e0c8 func_ov000_0207e184 kind:function(arm,size=0x58) addr:0x0207e184 func_ov000_0207e1dc kind:function(arm,size=0x30) addr:0x0207e1dc func_ov000_0207e20c kind:function(arm,size=0x34) addr:0x0207e20c -func_ov000_0207e240 kind:function(arm,size=0x14) addr:0x0207e240 +_ZN18UnkStruct_027e09c019func_ov000_0207e240EP15ActorUnkSCCN_B8 kind:function(arm,size=0x14) addr:0x0207e240 func_ov000_0207e254 kind:function(arm,size=0x14) addr:0x0207e254 func_ov000_0207e268 kind:function(arm,size=0x2c) addr:0x0207e268 _ZN5Actor19func_ov000_0207e294EP8Cylinder kind:function(arm,size=0x118) addr:0x0207e294 @@ -1489,8 +1489,8 @@ func_ov000_0207eb40 kind:function(arm,size=0x4c) addr:0x0207eb40 func_ov000_0207eb8c kind:function(arm,size=0x68) addr:0x0207eb8c func_ov000_0207ebf4 kind:function(arm,size=0x74) addr:0x0207ebf4 func_ov000_0207ec68 kind:function(arm,size=0x20) addr:0x0207ec68 -func_ov000_0207ec88 kind:function(arm,size=0x20) addr:0x0207ec88 -_ZN19func_ov000_0207eca8D1Ev kind:function(arm,size=0x30) addr:0x0207eca8 +_ZN15ActorUnkSCCN_B8C1Ev kind:function(arm,size=0x20) addr:0x0207ec88 +_ZN15ActorUnkSCCN_B8D1Ev kind:function(arm,size=0x30) addr:0x0207eca8 _ZN19func_ov000_0207ecd8D0Ev kind:function(arm,size=0x38) addr:0x0207ecd8 _ZN19func_ov000_0207ed10D2Ev kind:function(arm,size=0x30) addr:0x0207ed10 func_ov000_0207ed40 kind:function(arm,size=0x44) addr:0x0207ed40 @@ -1555,7 +1555,7 @@ func_ov000_02080068 kind:function(arm,size=0x18) addr:0x02080068 func_ov000_02080080 kind:function(arm,size=0x18) addr:0x02080080 func_ov000_02080098 kind:function(arm,size=0xc8) addr:0x02080098 func_ov000_02080160 kind:function(arm,size=0x20) addr:0x02080160 -_ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_02080180EPv kind:function(arm,size=0x10) addr:0x02080180 +_ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_02080180EP8Vec2bCpp kind:function(arm,size=0x10) addr:0x02080180 func_ov000_02080190 kind:function(arm,size=0x20) addr:0x02080190 _ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_020801b0EP8Vec2bCppii kind:function(arm,size=0x60) addr:0x020801b0 func_ov000_02080210 kind:function(arm,size=0x78) addr:0x02080210 @@ -1564,7 +1564,7 @@ _ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_020802ecEtP7VecFx32 kind:function(ar func_ov000_02080364 kind:function(arm,size=0x88) addr:0x02080364 _ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_020803ecEt kind:function(arm,size=0x150) addr:0x020803ec _ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_0208053cEt kind:function(arm,size=0xe4) addr:0x0208053c -func_ov000_02080620 kind:function(arm,size=0x38) addr:0x02080620 +_ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_02080620Ev kind:function(arm,size=0x38) addr:0x02080620 func_ov000_02080658 kind:function(arm,size=0xd8) addr:0x02080658 func_ov000_02080730 kind:function(arm,size=0x64) addr:0x02080730 func_ov000_02080794 kind:function(arm,size=0xac) addr:0x02080794 @@ -1572,7 +1572,7 @@ func_ov000_02080840 kind:function(arm,size=0x6c) addr:0x02080840 _ZN26UnkStruct_027e0cd8_0C_Base8vfunc_2CEv kind:function(arm,size=0x20) addr:0x020808ac _ZN26UnkStruct_027e0cd8_0C_Base8vfunc_3CEv kind:function(arm,size=0x8) addr:0x020808cc func_ov000_020808d4 kind:function(arm,size=0x20) addr:0x020808d4 -_ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_020808f4EPvS0_h kind:function(arm,size=0x5c) addr:0x020808f4 +_ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_020808f4EPvP8Vec2bCpph kind:function(arm,size=0x5c) addr:0x020808f4 func_ov000_02080950 kind:function(arm,size=0x48) addr:0x02080950 func_ov000_02080998 kind:function(arm,size=0x40) addr:0x02080998 func_ov000_020809d8 kind:function(arm,size=0x6c) addr:0x020809d8 @@ -1581,7 +1581,7 @@ _ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_02080a5cEP7VecFx32 kind:function(arm _ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_02080a78EP7VecFx32 kind:function(arm,size=0x18) addr:0x02080a78 func_ov000_02080a90 kind:function(arm,size=0x1c) addr:0x02080a90 func_ov000_02080aac kind:function(arm,size=0x18) addr:0x02080aac -func_ov000_02080ac4 kind:function(arm,size=0x68) addr:0x02080ac4 +_ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_0208217cEP7VecFx32i kind:function(arm,size=0x68) addr:0x02080ac4 func_ov000_02080b2c kind:function(arm,size=0x5c) addr:0x02080b2c func_ov000_02080b88 kind:function(arm,size=0x48) addr:0x02080b88 func_ov000_02080bd0 kind:function(arm,size=0x1c) addr:0x02080bd0 @@ -2335,7 +2335,7 @@ _ZN5Actor4GrabE15ActorGrabParams kind:function(arm,size=0x6c) addr:0x02098584 _ZN5Actor4DropE15ActorGrabParamsPK7VecFx32 kind:function(arm,size=0x3c) addr:0x020985f0 _ZN5Actor19func_ov000_0209862cEi kind:function(arm,size=0x28) addr:0x0209862c func_ov000_02098654 kind:function(arm,size=0x28) addr:0x02098654 -func_ov000_0209867c kind:function(arm,size=0x38) addr:0x0209867c +_ZN5Actor19func_ov000_0209867cEi kind:function(arm,size=0x38) addr:0x0209867c func_ov000_020986b4 kind:function(arm,size=0x48) addr:0x020986b4 func_ov000_020986fc kind:function(arm,size=0x7c) addr:0x020986fc func_ov000_02098778 kind:function(arm,size=0x88) addr:0x02098778 @@ -2677,7 +2677,7 @@ func_ov000_020a0000 kind:function(arm,size=0xa0) addr:0x020a0000 func_ov000_020a00a0 kind:function(arm,size=0x34) addr:0x020a00a0 _ZN18UnkStruct_027e0cec19func_ov000_020a00d4EP22UnkStruct_PlayerGet_eciiiP7VecFx32i kind:function(arm,size=0x3c) addr:0x020a00d4 _ZN18UnkStruct_027e0cec19func_ov000_020a0110EP22UnkStruct_PlayerGet_ec kind:function(arm,size=0x30) addr:0x020a0110 -func_ov000_020a0140 kind:function(arm,size=0xe0) addr:0x020a0140 +_ZN18UnkStruct_027e0cec19func_ov000_020a0140EP10UnkSystem7P7VecFx32 kind:function(arm,size=0xe0) addr:0x020a0140 _ZN18UnkStruct_027e0cec19func_ov000_020a0220EPvS0_ kind:function(arm,size=0xb4) addr:0x020a0220 _ZN22UnkStruct_PlayerGet_ecD1Ev kind:function(arm,size=0x30) addr:0x020a02d4 _ZN10UnkSystem719func_ov000_020a0304Ev kind:function(arm,size=0x30) addr:0x020a0304 @@ -3530,13 +3530,13 @@ data_ov000_020b2718 kind:data(any) addr:0x020b2718 data_ov000_020b2744 kind:data(any) addr:0x020b2744 data_ov000_020b2770 kind:data(any) addr:0x020b2770 data_ov000_020b279c kind:data(any) addr:0x020b279c -data_ov000_020b27c8 kind:data(any) addr:0x020b27c8 +_ZTV24UnkStruct_ov031_Items_01 kind:data(any) addr:0x020b27c0 data_ov000_020b27e4 kind:data(any) addr:0x020b27e4 data_ov000_020b2800 kind:data(any) addr:0x020b2800 data_ov000_020b281c kind:data(any) addr:0x020b281c data_ov000_020b2838 kind:data(any) addr:0x020b2838 data_ov000_020b2854 kind:data(any) addr:0x020b2854 -data_ov000_020b287c kind:data(any) addr:0x020b287c +_ZTV19data_ov000_020b287c kind:data(any) addr:0x020b2874 data_ov000_020b2890 kind:data(any) addr:0x020b2890 data_ov000_020b28a8 kind:data(any) addr:0x020b28a8 data_ov000_020b28b8 kind:data(any) addr:0x020b28b8 diff --git a/config/eur/arm9/overlays/ov026/relocs.txt b/config/eur/arm9/overlays/ov026/relocs.txt index fe0df21c..cd67acbf 100644 --- a/config/eur/arm9/overlays/ov026/relocs.txt +++ b/config/eur/arm9/overlays/ov026/relocs.txt @@ -5730,7 +5730,7 @@ from:0x0210f1e4 kind:arm_call to:0x020fbcbc module:overlay(26) from:0x0210f214 kind:arm_call to:0x02103170 module:overlay(26) from:0x0210f250 kind:arm_call to:0x02103fa8 module:overlay(26) from:0x0210f25c kind:load to:0x0213739c add:0x8 module:overlay(26) -from:0x0210f260 kind:load to:0x020b27c8 module:overlay(0) +from:0x0210f260 kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x0210f2f8 kind:load to:0x02140280 module:overlay(26) from:0x0210f2fc kind:load to:0x02137358 module:overlay(26) from:0x0210f300 kind:load to:0x021402d0 module:overlay(26) @@ -6040,7 +6040,7 @@ from:0x02111800 kind:arm_call to:0x0209862c module:overlay(0) from:0x02111824 kind:arm_call to:0x0210136c module:overlay(26) from:0x02111830 kind:arm_call to:0x020ee538 module:overlay(26) from:0x0211183c kind:load to:0x02137844 add:0x8 module:overlay(26) -from:0x02111840 kind:load to:0x020b27c8 module:overlay(0) +from:0x02111840 kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x02111844 kind:load to:0x02135c60 module:overlay(26) from:0x02111848 kind:load to:0x020f3c18 module:overlay(26) from:0x0211184c kind:load to:0x020f419c module:overlay(26) @@ -7729,7 +7729,7 @@ from:0x0212230c kind:arm_call to:0x021227a4 module:overlay(26) from:0x02122324 kind:arm_call to:0x02122dec module:overlay(26) from:0x02122340 kind:load to:0x021384d8 add:0x8 module:overlay(26) from:0x02122344 kind:load to:0x021412c4 module:overlay(26) -from:0x0212234c kind:load to:0x020b27c8 module:overlay(0) +from:0x0212234c kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x0212235c kind:arm_call to:0x0207ede8 module:overlay(0) from:0x02122364 kind:arm_call to:0x0207b6c0 module:overlay(0) from:0x0212236c kind:arm_call to:0x020a02d4 module:overlay(0) @@ -7949,7 +7949,7 @@ from:0x02123ee4 kind:load to:0x02141490 module:overlay(26) from:0x02123ee8 kind:load to:0x021386c0 module:overlay(26) from:0x02123eec kind:load to:0x02135b24 module:overlay(26) from:0x02123ef0 kind:load to:0x02135c8c module:overlay(26) -from:0x02123ef8 kind:load to:0x020b27c8 module:overlay(0) +from:0x02123ef8 kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x02123efc kind:load to:0x02141484 module:overlay(26) from:0x02123f08 kind:arm_call_thumb to:0x02057bd4 module:overlay(0) from:0x02123f28 kind:arm_call to:0x0212769c module:overlay(26) @@ -8862,7 +8862,7 @@ from:0x0212bb2c kind:arm_call to:0x02101c54 module:overlay(26) from:0x0212bb38 kind:arm_call to:0x020ee538 module:overlay(26) from:0x0212bb44 kind:load to:0x02138b08 add:0x8 module:overlay(26) from:0x0212bb48 kind:load to:0x02138b78 module:overlay(26) -from:0x0212bb4c kind:load to:0x020b27c8 module:overlay(0) +from:0x0212bb4c kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x0212bb50 kind:load to:0x02135c60 module:overlay(26) from:0x0212bb54 kind:load to:0x020f3c18 module:overlay(26) from:0x0212bb58 kind:load to:0x020f419c module:overlay(26) diff --git a/config/eur/arm9/overlays/ov027/relocs.txt b/config/eur/arm9/overlays/ov027/relocs.txt index 5aa61952..6f94dd44 100644 --- a/config/eur/arm9/overlays/ov027/relocs.txt +++ b/config/eur/arm9/overlays/ov027/relocs.txt @@ -583,7 +583,7 @@ from:0x02145304 kind:arm_call to:0x0210253c module:overlay(26) from:0x02145320 kind:arm_call to:0x0210136c module:overlay(26) from:0x0214532c kind:arm_call to:0x020ee538 module:overlay(26) from:0x02145338 kind:load to:0x02148d80 add:0x8 module:overlay(27) -from:0x0214533c kind:load to:0x020b27c8 module:overlay(0) +from:0x0214533c kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x02145340 kind:load to:0x02148400 module:overlay(27) from:0x02145344 kind:load to:0x02145398 module:overlay(27) from:0x02145348 kind:load to:0x02145358 module:overlay(27) diff --git a/config/eur/arm9/overlays/ov030/relocs.txt b/config/eur/arm9/overlays/ov030/relocs.txt index f749a53e..dd28eb22 100644 --- a/config/eur/arm9/overlays/ov030/relocs.txt +++ b/config/eur/arm9/overlays/ov030/relocs.txt @@ -1415,7 +1415,7 @@ from:0x0214de8c kind:arm_call to:0x0209862c module:overlay(0) from:0x0214deb0 kind:arm_call to:0x0210136c module:overlay(26) from:0x0214debc kind:arm_call to:0x020ee538 module:overlay(26) from:0x0214dec8 kind:load to:0x02151cf4 add:0x8 module:overlay(30) -from:0x0214decc kind:load to:0x020b27c8 module:overlay(0) +from:0x0214decc kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x0214ded0 kind:load to:0x0215104c module:overlay(30) from:0x0214ded4 kind:load to:0x0214df28 module:overlay(30) from:0x0214ded8 kind:load to:0x0214dee8 module:overlay(30) diff --git a/config/eur/arm9/overlays/ov031/delinks.txt b/config/eur/arm9/overlays/ov031/delinks.txt index 9c05d0d5..2fb82616 100644 --- a/config/eur/arm9/overlays/ov031/delinks.txt +++ b/config/eur/arm9/overlays/ov031/delinks.txt @@ -12,18 +12,21 @@ src/031_Land/Actor/ActorUnkBOMB.cpp: .text start:0x020e14c4 end:0x020e34b4 .init start:0x02110ff8 end:0x02111048 .ctor start:0x0211279c end:0x021127a0 + .data start:0x02112be8 end:0x02112d44 .bss start:0x02116404 end:0x02116450 -src/031_Land/Actor/ActorUnkBLST.cpp: +src/031_Land/Actor/ActorBlast.cpp: .text start:0x020e34b4 end:0x020e3ca4 .init start:0x02111048 end:0x02111098 .ctor start:0x021127a0 end:0x021127a4 + .data start:0x02112d44 end:0x02112de0 .bss start:0x02116450 end:0x0211649c src/031_Land/Actor/ActorUnkTLKT.cpp: .text start:0x020e40d8 end:0x020e4584 .init start:0x02111098 end:0x021110e8 .ctor start:0x021127a4 end:0x021127a8 + .data start:0x02112de0 end:0x02112efc .bss start:0x0211649c end:0x021164e8 src/031_Land/Actor/ActorItemBoomerang.cpp: @@ -73,15 +76,18 @@ src/031_Land/Actor/ActorHeart.cpp: .bss start:0x02116858 end:0x021168a4 src/031_Land/Actor/ActorUnkRMTG.cpp: + complete .text start:0x020ef81c end:0x020efa0c .init start:0x02111408 end:0x02111458 .ctor start:0x021127c4 end:0x021127c8 + .data start:0x02113e6c end:0x02113eec .bss start:0x021168a4 end:0x0211698c src/031_Land/Actor/ActorUnkSCCN.cpp: .text start:0x020efa0c end:0x020efcd4 .init start:0x02111458 end:0x021114a8 .ctor start:0x021127c8 end:0x021127cc + .data start:0x02113eec end:0x02113f94 .bss start:0x0211698c end:0x021169d8 src/031_Land/Actor/ActorPot.cpp: @@ -127,9 +133,11 @@ src/031_Land/Actor/ActorUnkTGTZ.cpp: .bss start:0x02116b64 end:0x02116c54 src/031_Land/Actor/ActorUnkSWCH.cpp: + complete .text start:0x020f7a84 end:0x020f7bdc .init start:0x021116c0 end:0x02111710 .ctor start:0x021127e8 end:0x021127ec + .data start:0x02114818 end:0x02114898 .bss start:0x02116c54 end:0x02116ca0 src/031_Land/Actor/ActorUnkSWON.cpp: @@ -258,10 +266,11 @@ src/031_Land/MapObject/MapObjectUnkSTIR.cpp: .ctor start:0x02112830 end:0x02112834 .bss start:0x02117774 end:0x02117868 -src/031_Land/MapObject/MapObjectUnkGRSS.cpp: +src/031_Land/MapObject/MapObjectGrass.cpp: .text start:0x0210100c end:0x021019dc .init start:0x02111df8 end:0x02111e88 .ctor start:0x02112834 end:0x02112838 + .data start:0x0211561c end:0x021156a8 .bss start:0x02117868 end:0x021179b8 src/031_Land/MapObject/MapObjectUnkSWHT.cpp: @@ -339,12 +348,15 @@ src/031_Land/MapObject/MapObjectUnkSKDI.cpp: .text start:0x02106000 end:0x02106d60 .init start:0x0211228c end:0x021122dc .ctor start:0x02112864 end:0x02112868 + .data start:0x02115c78 end:0x02115ce0 .bss start:0x0211821c end:0x02118300 src/031_Land/Actor/ActorUnkSKDO.cpp: + complete .text start:0x02106d60 end:0x02106f18 .init start:0x021122dc end:0x0211232c .ctor start:0x02112868 end:0x0211286c + .data start:0x02115ce0 end:0x02115d70 .bss start:0x02118300 end:0x0211834c src/031_Land/MapObject/MapObjectUnkCRWL.cpp: diff --git a/config/eur/arm9/overlays/ov031/relocs.txt b/config/eur/arm9/overlays/ov031/relocs.txt index 5e42590e..2914b7c8 100644 --- a/config/eur/arm9/overlays/ov031/relocs.txt +++ b/config/eur/arm9/overlays/ov031/relocs.txt @@ -1017,7 +1017,7 @@ from:0x020e21dc kind:arm_call to:0x020e295c module:overlay(31) from:0x020e21e8 kind:arm_call to:0x020e2820 module:overlay(31) from:0x020e2204 kind:arm_call to:0x020984d0 module:overlay(0) from:0x020e220c kind:arm_call to:0x0207bffc module:overlay(0) -from:0x020e221c kind:load to:0x02112cb0 module:overlay(31) +from:0x020e221c kind:load to:0x02112ca8 module:overlay(31) add:0x8 from:0x020e2228 kind:arm_call to:0x0207bffc module:overlay(0) from:0x020e2244 kind:arm_call to:0x01fff5d0 module:itcm from:0x020e2268 kind:arm_call to:0x020a0334 module:overlay(0) @@ -1085,7 +1085,7 @@ from:0x020e2ca0 kind:arm_call to:0x020984d0 module:overlay(0) from:0x020e2d4c kind:arm_call to:0x020e18c4 module:overlay(31) from:0x020e2d68 kind:arm_call to:0x020e2780 module:overlay(31) from:0x020e2d84 kind:arm_call to:0x020982a8 module:overlay(0) -from:0x020e2db0 kind:load to:0x02112c78 module:overlay(31) +from:0x020e2db0 kind:load to:0x02112c70 module:overlay(31) add:0x8 from:0x020e2dc4 kind:arm_call to:0x0207bffc module:overlay(0) from:0x020e2de0 kind:arm_call to:0x0207bffc module:overlay(0) from:0x020e2de8 kind:arm_call to:0x02011ff4 module:main @@ -1110,7 +1110,7 @@ from:0x020e32e8 kind:arm_call to:0x020984d0 module:overlay(0) from:0x020e32f4 kind:arm_call to:0x020e18c4 module:overlay(31) from:0x020e3308 kind:load to:0x027e0ce4 module:dtcm from:0x020e3338 kind:arm_call to:0x020982d8 module:overlay(0) -from:0x020e3378 kind:load to:0x02112c94 module:overlay(31) +from:0x020e3378 kind:load to:0x02112c8c module:overlay(31) add:0x8 from:0x020e339c kind:arm_call to:0x020e3b9c module:overlay(31) from:0x020e33a4 kind:arm_call to:0x020984d0 module:overlay(0) from:0x020e33c8 kind:arm_call to:0x0207bffc module:overlay(0) @@ -1146,8 +1146,8 @@ from:0x020e36b4 kind:load to:0x027e0ce4 module:dtcm from:0x020e36b8 kind:load to:0x027e0ce8 module:dtcm from:0x020e36c8 kind:arm_call to:0x02098388 module:overlay(0) from:0x020e3730 kind:load to:0x02112d84 add:0x8 module:overlay(31) -from:0x020e3734 kind:load to:0x020b27c8 module:overlay(0) -from:0x020e3738 kind:load to:0x02112d4c module:overlay(31) +from:0x020e3734 kind:load to:0x020b27c0 module:overlay(0) add:0x8 +from:0x020e3738 kind:load to:0x02112d44 module:overlay(31) add:0x8 from:0x020e3744 kind:arm_call to:0x0207bffc module:overlay(0) from:0x020e378c kind:arm_call to:0x01ffb6e4 module:itcm from:0x020e37b4 kind:arm_call to:0x01ffb6e4 module:itcm @@ -1447,7 +1447,7 @@ from:0x020e5b04 kind:load to:0x02110a88 module:overlay(31) from:0x020e5b08 kind:load to:0x027e0ce0 module:dtcm from:0x020e5b0c kind:load to:0x02112fec module:overlay(31) add:0x8 from:0x020e5b10 kind:load to:0x02112fd0 add:0x8 module:overlay(31) -from:0x020e5b14 kind:load to:0x020b27c8 module:overlay(0) +from:0x020e5b14 kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x020e5b18 kind:load to:0x020a02d4 module:overlay(0) from:0x020e5b1c kind:load to:0x020e5704 module:overlay(31) from:0x020e5b28 kind:arm_call to:0x0207bffc module:overlay(0) @@ -2601,7 +2601,7 @@ from:0x020f05d4 kind:arm_call to:0x01ffe6c4 module:itcm from:0x020f05e4 kind:arm_call to:0x0207df88 module:overlay(0) from:0x020f05f0 kind:arm_call to:0x0207e294 module:overlay(0) from:0x020f0624 kind:arm_call to:0x0207bffc module:overlay(0) -from:0x020f0634 kind:load to:0x02113f9c module:overlay(31) +from:0x020f0634 kind:load to:0x02113f94 module:overlay(31) add:0x8 from:0x020f0640 kind:arm_call to:0x0207bffc module:overlay(0) from:0x020f0670 kind:arm_call to:0x020f0740 module:overlay(31) from:0x020f0678 kind:arm_call to:0x020f0680 module:overlay(31) @@ -4481,11 +4481,11 @@ from:0x0210104c kind:arm_call to:0x0209c9a8 module:overlay(0) from:0x0210105c kind:arm_call to:0x0207c018 module:overlay(0) from:0x021010c8 kind:load to:0x0211561c add:0x8 module:overlay(31) from:0x021010cc kind:load to:0x02112a70 add:0x8 module:overlay(31) -from:0x021010d0 kind:load to:0x02115640 module:overlay(31) +from:0x021010d0 kind:load to:0x02115638 module:overlay(31) add:0x8 from:0x021010e8 kind:arm_call to:0x0209cfe0 module:overlay(0) -from:0x02101124 kind:load to:0x0211565c module:overlay(31) +from:0x02101124 kind:load to:0x02115654 module:overlay(31) add:0x8 from:0x02101130 kind:arm_call to:0x0209cfe0 module:overlay(0) -from:0x0210116c kind:load to:0x0211565c module:overlay(31) +from:0x0210116c kind:load to:0x02115654 module:overlay(31) add:0x8 from:0x021011c8 kind:arm_call to:0x02039998 module:main from:0x021011dc kind:arm_call to:0x02039530 module:main from:0x021011e8 kind:arm_call to:0x02039a14 module:main @@ -4546,7 +4546,7 @@ from:0x02101a54 kind:arm_call to:0x0209c9a8 module:overlay(0) from:0x02101a64 kind:arm_call to:0x0207c018 module:overlay(0) from:0x02101abc kind:load to:0x0211561c add:0x8 module:overlay(31) from:0x02101ac4 kind:load to:0x02112a70 add:0x8 module:overlay(31) -from:0x02101ac8 kind:load to:0x021156b0 module:overlay(31) +from:0x02101ac8 kind:load to:0x021156a8 module:overlay(31) add:0x8 from:0x02101adc kind:arm_call to:0x0209cfe0 module:overlay(0) from:0x02101af4 kind:arm_call_thumb to:0x02057b70 module:overlay(0) from:0x02101b04 kind:arm_call_thumb to:0x0205778c module:overlay(0) @@ -5061,12 +5061,12 @@ from:0x02106008 kind:load to:0x0211822c module:overlay(31) from:0x0210601c kind:arm_call to:0x02011f3c module:main from:0x02106028 kind:arm_call to:0x02106078 module:overlay(31) from:0x02106040 kind:arm_call to:0x0209c9a8 module:overlay(0) -from:0x02106070 kind:load to:0x02115c80 module:overlay(31) +from:0x02106070 kind:load to:0x02115c78 module:overlay(31) add:0x8 from:0x02106084 kind:arm_call to:0x0209cfe0 module:overlay(0) from:0x02106104 kind:arm_call to:0x0203d160 module:main from:0x02106138 kind:arm_call to:0x020d8df0 module:overlay(31) from:0x02106140 kind:arm_call to:0x0207c018 module:overlay(0) -from:0x02106178 kind:load to:0x02115c9c module:overlay(31) +from:0x02106178 kind:load to:0x02115c94 module:overlay(31) add:0x8 from:0x0210617c kind:load to:0x0211822c module:overlay(31) from:0x02106180 kind:load to:0x020b1960 add:0x8 module:overlay(0) from:0x02106184 kind:load to:0x020e17f4 module:overlay(31) @@ -5156,7 +5156,7 @@ from:0x02106db4 kind:load to:0x02115cec add:0x8 module:overlay(31) from:0x02106dc0 kind:arm_call to:0x02098388 module:overlay(0) from:0x02106ddc kind:load to:0x02115d10 add:0x8 module:overlay(31) from:0x02106e2c kind:arm_call to:0x01fff520 module:itcm -from:0x02106e50 kind:load to:0x02115ce8 module:overlay(31) +from:0x02106e50 kind:load to:0x02115ce0 module:overlay(31) add:0x8 from:0x02106e54 kind:load to:0x027e0ce8 module:dtcm from:0x02106e88 kind:arm_call to:0x02098a88 module:overlay(0) from:0x02106ea4 kind:arm_call to:0x0209c348 module:overlay(0) diff --git a/config/eur/arm9/overlays/ov031/symbols.txt b/config/eur/arm9/overlays/ov031/symbols.txt index 8db85a61..e76dc511 100644 --- a/config/eur/arm9/overlays/ov031/symbols.txt +++ b/config/eur/arm9/overlays/ov031/symbols.txt @@ -53,7 +53,7 @@ func_ov031_020d9704 kind:function(arm,size=0x10) addr:0x020d9704 func_ov031_020d9714 kind:function(arm,size=0x1c) addr:0x020d9714 func_ov031_020d9730 kind:function(arm,size=0x18) addr:0x020d9730 func_ov031_020d9748 kind:function(arm,size=0x10) addr:0x020d9748 -func_ov031_020d9758 kind:function(arm,size=0x18) addr:0x020d9758 +_ZN18UnkStruct_027e0d3419func_ov031_020d9758Ev kind:function(arm,size=0x18) addr:0x020d9758 func_ov031_020d9770 kind:function(arm,size=0x18) addr:0x020d9770 func_ov031_020d9788 kind:function(arm,size=0x1c) addr:0x020d9788 func_ov031_020d97a4 kind:function(arm,size=0x10) addr:0x020d97a4 @@ -312,7 +312,7 @@ _ZN12ActorUnkBOMB19func_ov031_020e1540Ev kind:function(arm,size=0x90) addr:0x020 _ZN12ActorUnkBOMB19func_ov031_020e15d0Ev kind:function(arm,size=0x64) addr:0x020e15d0 _ZN12ActorUnkBOMB19func_ov031_020e1634Ev kind:function(arm,size=0x58) addr:0x020e1634 _ZN12ActorUnkBOMBC1Ev kind:function(arm,size=0x168) addr:0x020e168c -_ZN12ActorUnkBOMB19func_ov031_020e17f4Ev kind:function(arm,size=0x14) addr:0x020e17f4 +_ZN16ActorUnkBOMB_unkD1Ev kind:function(arm,size=0x14) addr:0x020e17f4 _ZN12ActorUnkBOMB19func_ov031_020e1808Ev kind:function(arm,size=0x14) addr:0x020e1808 _ZN12ActorUnkBOMB19func_ov031_020e181cEv kind:function(arm,size=0x84) addr:0x020e181c _ZN12ActorUnkBOMB19func_ov031_020e18a0Ev kind:function(arm,size=0x24) addr:0x020e18a0 @@ -364,42 +364,42 @@ _ZN12ActorUnkBOMB19func_ov031_020e328cEv kind:function(arm,size=0x84) addr:0x020 _ZN12ActorUnkBOMB19func_ov031_020e3310Ev kind:function(arm,size=0x30) addr:0x020e3310 _ZN12ActorUnkBOMB19func_ov031_020e3340Ev kind:function(arm,size=0x3c) addr:0x020e3340 _ZN12ActorUnkBOMB19func_ov031_020e337cEv kind:function(arm,size=0x30) addr:0x020e337c -_ZN12ActorUnkBOMB19func_ov031_020e33acEv kind:function(arm,size=0x14) addr:0x020e33ac +_ZN16ActorUnkBOMB_unkC1Ev kind:function(arm,size=0x14) addr:0x020e33ac _ZN12ActorUnkBOMB19func_ov031_020e33c0Ev kind:function(arm,size=0x1c) addr:0x020e33c0 _ZN12ActorUnkBOMB19func_ov031_020e33dcEv kind:function(arm,size=0x1c) addr:0x020e33dc _ZN12ActorUnkBOMB19func_ov031_020e33f8Ev kind:function(arm,size=0x50) addr:0x020e33f8 _ZN12ActorUnkBOMB19func_ov031_020e3448Ev kind:function(arm,size=0x58) addr:0x020e3448 _ZN19ActorProfileUnkBOMBD1Ev kind:function(arm,size=0x14) addr:0x020e34a0 -_ZN19ActorProfileUnkBLST10GetProfileEv kind:function(arm,size=0xc) addr:0x020e34b4 -_ZN19ActorProfileUnkBLST6CreateEv kind:function(arm,size=0x24) addr:0x020e34c0 -_ZN19ActorProfileUnkBLSTC1Ev kind:function(arm,size=0x38) addr:0x020e34e4 -_ZN12ActorUnkBLST19func_ov031_020e351cEv kind:function(arm,size=0x1a4) addr:0x020e351c -_ZN12ActorUnkBLSTC1Ev kind:function(arm,size=0x7c) addr:0x020e36c0 -_ZN12ActorUnkBLST19func_ov031_020e373cEv kind:function(arm,size=0x14) addr:0x020e373c -_ZN12ActorUnkBLST19func_ov031_020e3750Ev kind:function(arm,size=0x274) addr:0x020e3750 -_ZN12ActorUnkBLST19func_ov031_020e39c4Ev kind:function(arm,size=0x180) addr:0x020e39c4 -_ZN12ActorUnkBLST19func_ov031_020e3b44Ev kind:function(arm,size=0x50) addr:0x020e3b44 -_ZN12ActorUnkBLST19func_ov031_020e3b94Ev kind:function(arm,size=0x8) addr:0x020e3b94 -_ZN12ActorUnkBLST19func_ov031_020e3b9cEv kind:function(arm,size=0x80) addr:0x020e3b9c -_ZN12ActorUnkBLSTD0Ev kind:function(arm,size=0x1c) addr:0x020e3c1c -_ZN12ActorUnkBLSTD1Ev kind:function(arm,size=0x28) addr:0x020e3c38 -_ZN12ActorUnkBLST19func_ov031_020e3c60Ev kind:function(arm,size=0x30) addr:0x020e3c60 -_ZN19ActorProfileUnkBLSTD1Ev kind:function(arm,size=0x14) addr:0x020e3c90 +_ZN17ActorProfileBlast10GetProfileEv kind:function(arm,size=0xc) addr:0x020e34b4 +_ZN17ActorProfileBlast6CreateEv kind:function(arm,size=0x24) addr:0x020e34c0 +_ZN17ActorProfileBlastC1Ev kind:function(arm,size=0x38) addr:0x020e34e4 +_ZN13ActorBlast_E88vfunc_0CEPK24UnkStruct_ov031_020e54d4i kind:function(arm,size=0x1a4) addr:0x020e351c +_ZN10ActorBlastC1Ev kind:function(arm,size=0x7c) addr:0x020e36c0 +_ZN13ActorBlast_E8D1Ev kind:function(arm,size=0x14) addr:0x020e373c +_ZN10ActorBlast8vfunc_18Ei kind:function(arm,size=0x274) addr:0x020e3750 +_ZN10ActorBlast8vfunc_20Ev kind:function(arm,size=0x180) addr:0x020e39c4 +_ZN10ActorBlast8vfunc_24Ev kind:function(arm,size=0x50) addr:0x020e3b44 +_ZN10ActorBlast19func_ov031_020e3b94Ev kind:function(arm,size=0x8) addr:0x020e3b94 +_ZN10ActorBlast19func_ov031_020e3b9cEss kind:function(arm,size=0x80) addr:0x020e3b9c +_ZN13ActorBlast_E8D0Ev kind:function(arm,size=0x1c) addr:0x020e3c1c +_ZN10ActorBlastD1Ev kind:function(arm,size=0x28) addr:0x020e3c38 +_ZN10ActorBlastD0Ev kind:function(arm,size=0x30) addr:0x020e3c60 +_ZN17ActorProfileBlastD1Ev kind:function(arm,size=0x14) addr:0x020e3c90 func_ov031_020e3ca4 kind:function(arm,size=0x24) addr:0x020e3ca4 func_ov031_020e3cc8 kind:function(arm,size=0x48) addr:0x020e3cc8 func_ov031_020e3d10 kind:function(arm,size=0x90) addr:0x020e3d10 -func_ov031_020e3da0 kind:function(arm,size=0x30) addr:0x020e3da0 +_ZN17ActorUnkTLKT_BaseC2Ev kind:function(arm,size=0x30) addr:0x020e3da0 func_ov031_020e3dd0 kind:function(arm,size=0x28) addr:0x020e3dd0 func_ov031_020e3df8 kind:function(arm,size=0x20) addr:0x020e3df8 -func_ov031_020e3e18 kind:function(arm,size=0x2c) addr:0x020e3e18 -func_ov031_020e3e44 kind:function(arm,size=0x28) addr:0x020e3e44 -func_ov031_020e3e6c kind:function(arm,size=0x18) addr:0x020e3e6c -func_ov031_020e3e84 kind:function(arm,size=0x54) addr:0x020e3e84 +_ZN17ActorUnkTLKT_Base8vfunc_18Ei kind:function(arm,size=0x2c) addr:0x020e3e18 +_ZN17ActorUnkTLKT_Base8vfunc_1CEv kind:function(arm,size=0x28) addr:0x020e3e44 +_ZN17ActorUnkTLKT_Base19func_ov031_020e3e6cEv kind:function(arm,size=0x18) addr:0x020e3e6c +_ZN17ActorUnkTLKT_Base8vfunc_20Ev kind:function(arm,size=0x54) addr:0x020e3e84 func_ov031_020e3ed8 kind:function(arm,size=0x28) addr:0x020e3ed8 func_ov031_020e3f00 kind:function(arm,size=0x50) addr:0x020e3f00 -func_ov031_020e3f50 kind:function(arm,size=0x124) addr:0x020e3f50 +_ZN17ActorUnkTLKT_Base8vfunc_54Ev kind:function(arm,size=0x124) addr:0x020e3f50 func_ov031_020e4074 kind:function(arm,size=0x4) addr:0x020e4074 -func_ov031_020e4078 kind:function(arm,size=0x4) addr:0x020e4078 +_ZN17ActorUnkTLKT_Base8vfunc_5CEv kind:function(arm,size=0x4) addr:0x020e4078 func_ov031_020e407c kind:function(arm,size=0x8) addr:0x020e407c func_ov031_020e4084 kind:function(arm,size=0x24) addr:0x020e4084 _ZN19func_ov031_020e40a8D1Ev kind:function(arm,size=0x14) addr:0x020e40a8 @@ -410,12 +410,12 @@ _ZN19ActorProfileUnkTLKTC1Ev kind:function(arm,size=0x28) addr:0x020e4108 _ZN12ActorUnkTLKTC1Ev kind:function(arm,size=0x34) addr:0x020e4130 _ZN12ActorUnkTLKTD1Ev kind:function(arm,size=0x40) addr:0x020e4164 _ZN12ActorUnkTLKTD0Ev kind:function(arm,size=0x48) addr:0x020e41a4 -_ZN12ActorUnkTLKT19func_ov031_020e41ecEv kind:function(arm,size=0x4c) addr:0x020e41ec -_ZN12ActorUnkTLKT19func_ov031_020e4238Ev kind:function(arm,size=0x3c) addr:0x020e4238 +_ZN12ActorUnkTLKT8vfunc_24Ev kind:function(arm,size=0x4c) addr:0x020e41ec +_ZN12ActorUnkTLKT8vfunc_58Ev kind:function(arm,size=0x3c) addr:0x020e4238 _ZN12ActorUnkTLKT19func_ov031_020e4274Ev kind:function(arm,size=0x38) addr:0x020e4274 -_ZN12ActorUnkTLKT19func_ov031_020e42acEv kind:function(arm,size=0x44) addr:0x020e42ac -_ZN12ActorUnkTLKT19func_ov031_020e42f0Ev kind:function(arm,size=0x30) addr:0x020e42f0 -_ZN12ActorUnkTLKT19func_ov031_020e4320Ev kind:function(arm,size=0x1f4) addr:0x020e4320 +_ZN12ActorUnkTLKT8vfunc_64Ev kind:function(arm,size=0x44) addr:0x020e42ac +_ZN12ActorUnkTLKT8vfunc_68Ev kind:function(arm,size=0x30) addr:0x020e42f0 +_ZN12ActorUnkTLKT8vfunc_60Es kind:function(arm,size=0x1f4) addr:0x020e4320 _ZN12ActorUnkTLKT19func_ov031_020e4514Ev kind:function(arm,size=0x5c) addr:0x020e4514 _ZN19ActorProfileUnkTLKTD1Ev kind:function(arm,size=0x14) addr:0x020e4570 func_ov031_020e4584 kind:function(arm,size=0x10) addr:0x020e4584 @@ -766,9 +766,9 @@ _ZN19ActorProfileUnkRMTG10GetProfileEv kind:function(arm,size=0xc) addr:0x020ef8 _ZN19ActorProfileUnkRMTG6CreateEv kind:function(arm,size=0x24) addr:0x020ef828 _ZN19ActorProfileUnkRMTGC1Ev kind:function(arm,size=0x28) addr:0x020ef84c _ZN12ActorUnkRMTGC1Ev kind:function(arm,size=0x2c) addr:0x020ef874 -_ZN12ActorUnkRMTG19func_ov031_020ef8a0Ev kind:function(arm,size=0xb8) addr:0x020ef8a0 -_ZN12ActorUnkRMTG19func_ov031_020ef958Ev kind:function(arm,size=0x38) addr:0x020ef958 -_ZN12ActorUnkRMTG19func_ov031_020ef990Ev kind:function(arm,size=0x20) addr:0x020ef990 +_ZN12ActorUnkRMTG8vfunc_18Ei kind:function(arm,size=0xb8) addr:0x020ef8a0 +_ZN12ActorUnkRMTG8vfunc_1CEv kind:function(arm,size=0x38) addr:0x020ef958 +_ZN12ActorUnkRMTG8vfunc_2CEi kind:function(arm,size=0x20) addr:0x020ef990 _ZN12ActorUnkRMTGD1Ev kind:function(arm,size=0x20) addr:0x020ef9b0 _ZN12ActorUnkRMTGD0Ev kind:function(arm,size=0x28) addr:0x020ef9d0 _ZN19ActorProfileUnkRMTGD1Ev kind:function(arm,size=0x14) addr:0x020ef9f8 @@ -776,7 +776,7 @@ _ZN19ActorProfileUnkSCCN10GetProfileEv kind:function(arm,size=0xc) addr:0x020efa _ZN19ActorProfileUnkSCCN6CreateEv kind:function(arm,size=0x24) addr:0x020efa18 _ZN19ActorProfileUnkSCCNC1Ev kind:function(arm,size=0x28) addr:0x020efa3c _ZN12ActorUnkSCCNC1Ev kind:function(arm,size=0x3c) addr:0x020efa64 -_ZN12ActorUnkSCCN19func_ov031_020efaa0Ev kind:function(arm,size=0x1d8) addr:0x020efaa0 +_ZN12ActorUnkSCCN8vfunc_18Ei kind:function(arm,size=0x1d8) addr:0x020efaa0 _ZN12ActorUnkSCCND1Ev kind:function(arm,size=0x20) addr:0x020efc78 _ZN12ActorUnkSCCND0Ev kind:function(arm,size=0x28) addr:0x020efc98 _ZN19ActorProfileUnkSCCND1Ev kind:function(arm,size=0x14) addr:0x020efcc0 @@ -1070,9 +1070,9 @@ _ZN19ActorProfileUnkSWCH10GetProfileEv kind:function(arm,size=0xc) addr:0x020f7a _ZN19ActorProfileUnkSWCH6CreateEv kind:function(arm,size=0x24) addr:0x020f7a90 _ZN19ActorProfileUnkSWCHC1Ev kind:function(arm,size=0x28) addr:0x020f7ab4 _ZN12ActorUnkSWCHC1Ev kind:function(arm,size=0x30) addr:0x020f7adc -_ZN12ActorUnkSWCH19func_ov031_020f7b0cEv kind:function(arm,size=0x14) addr:0x020f7b0c -_ZN12ActorUnkSWCH19func_ov031_020f7b20Ev kind:function(arm,size=0x68) addr:0x020f7b20 -_ZN12ActorUnkSWCH19func_ov031_020f7b88Ev kind:function(arm,size=0x10) addr:0x020f7b88 +_ZN12ActorUnkSWCH8vfunc_18Ei kind:function(arm,size=0x14) addr:0x020f7b0c +_ZN12ActorUnkSWCH8vfunc_20Ev kind:function(arm,size=0x68) addr:0x020f7b20 +_ZN12ActorUnkSWCH8vfunc_2CEi kind:function(arm,size=0x10) addr:0x020f7b88 _ZN12ActorUnkSWCHD1Ev kind:function(arm,size=0x14) addr:0x020f7b98 _ZN12ActorUnkSWCHD0Ev kind:function(arm,size=0x1c) addr:0x020f7bac _ZN19ActorProfileUnkSWCHD1Ev kind:function(arm,size=0x14) addr:0x020f7bc8 @@ -1284,7 +1284,7 @@ _ZN17MapObjectDoorBase8vfunc_08Ev kind:function(arm,size=0x400) addr:0x020fc054 _ZN17MapObjectDoorBase8vfunc_40Ev kind:function(arm,size=0x4) addr:0x020fc454 _ZN17MapObjectDoorBase8vfunc_0CEv kind:function(arm,size=0x64) addr:0x020fc458 _ZN17MapObjectDoorBase8vfunc_60Ev kind:function(arm,size=0xfc) addr:0x020fc4bc -_ZN17MapObjectDoorBase8vfunc_5CEii kind:function(arm,size=0x598) addr:0x020fc5b8 +_ZN17MapObjectDoorBase8vfunc_5CEsi kind:function(arm,size=0x598) addr:0x020fc5b8 _ZN17MapObjectDoorBase8vfunc_48Ev kind:function(arm,size=0x4) addr:0x020fcb50 _ZN17MapObjectDoorBase8vfunc_64Ev kind:function(arm,size=0xc) addr:0x020fcb54 _ZN17MapObjectDoorBase8vfunc_68Ev kind:function(arm,size=0x10) addr:0x020fcb60 @@ -1322,7 +1322,7 @@ _ZN24MapObjectDoorDangerSpawn9vfunc2_04Ev kind:function(arm,size=0xc) addr:0x020 _ZN24MapObjectDoorDangerSpawn9vfunc2_08Ev kind:function(arm,size=0x70) addr:0x020fd404 _ZN24MapObjectDoorDangerSpawn8vfunc_08Ev kind:function(arm,size=0x374) addr:0x020fd474 _ZN24MapObjectDoorDangerSpawn8vfunc_0CEv kind:function(arm,size=0x2c) addr:0x020fd7e8 -_ZN24MapObjectDoorDangerSpawn8vfunc_5CEii kind:function(arm,size=0x3f4) addr:0x020fd814 +_ZN24MapObjectDoorDangerSpawn8vfunc_5CEsi kind:function(arm,size=0x3f4) addr:0x020fd814 _ZN24MapObjectDoorDangerSpawn8vfunc_64Ev kind:function(arm,size=0xbc) addr:0x020fdc08 _ZN24MapObjectDoorDangerSpawn8vfunc_68Ev kind:function(arm,size=0xac) addr:0x020fdcc4 _ZN24MapObjectDoorDangerSpawn8vfunc_6CEv kind:function(arm,size=0x158) addr:0x020fdd70 @@ -1353,7 +1353,7 @@ _ZN16MapObjectDoorKey8vfunc_00Ev kind:function(arm,size=0x1c) addr:0x020fe86c _ZN16MapObjectDoorKey8vfunc_08Ev kind:function(arm,size=0x18) addr:0x020fe888 _ZN16MapObjectDoorKey8vfunc_18EPcc kind:function(arm,size=0xc) addr:0x020fe8a0 _ZN16MapObjectDoorKey8vfunc_14Ev kind:function(arm,size=0x14c) addr:0x020fe8ac -_ZN16MapObjectDoorKey8vfunc_5CEii kind:function(arm,size=0x90) addr:0x020fe9f8 +_ZN16MapObjectDoorKey8vfunc_5CEsi kind:function(arm,size=0x90) addr:0x020fe9f8 _ZN16MapObjectDoorKey19func_ov031_020fea88Ev kind:function(arm,size=0x34) addr:0x020fea88 _ZN16MapObjectDoorKey8vfunc_28Ev kind:function(arm,size=0x90) addr:0x020feabc _ZN16MapObjectDoorKey8vfunc_64Ev kind:function(arm,size=0xc) addr:0x020feb4c @@ -1402,7 +1402,7 @@ _ZN18MapObjectDoorClick8vfunc_00Ev kind:function(arm,size=0x100) addr:0x020ff6bc _ZN18MapObjectDoorClick8vfunc_08Ev kind:function(arm,size=0x3d0) addr:0x020ff7bc _ZN18MapObjectDoorClick8vfunc_18EPcc kind:function(arm,size=0xc) addr:0x020ffb8c _ZN18MapObjectDoorClick8vfunc_14Ev kind:function(arm,size=0x14c) addr:0x020ffb98 -_ZN18MapObjectDoorClick8vfunc_5CEii kind:function(arm,size=0xf8) addr:0x020ffce4 +_ZN18MapObjectDoorClick8vfunc_5CEsi kind:function(arm,size=0xf8) addr:0x020ffce4 _ZN18MapObjectDoorClick9vfunc2_14Ev kind:function(arm,size=0x8) addr:0x020ffddc _ZN18MapObjectDoorClick19func_ov031_020ffde4Ev kind:function(arm,size=0x38) addr:0x020ffde4 _ZN18MapObjectDoorClick8vfunc_28Ev kind:function(arm,size=0x60) addr:0x020ffe1c @@ -1469,26 +1469,26 @@ _ZN16MapObjectUnkSTIR19func_ov031_02100da4Ev kind:function(arm,size=0x1fc) addr: _ZN16MapObjectUnkSTIRD1Ev kind:function(arm,size=0x28) addr:0x02100fa0 _ZN16MapObjectUnkSTIRD0Ev kind:function(arm,size=0x30) addr:0x02100fc8 _ZN23MapObjectProfileUnkSTIRD1Ev kind:function(arm,size=0x14) addr:0x02100ff8 -_ZN23MapObjectProfileUnkGRSS10GetProfileEv kind:function(arm,size=0xc) addr:0x0210100c -_ZN23MapObjectProfileUnkGRSS6CreateEv kind:function(arm,size=0x24) addr:0x02101018 -_ZN23MapObjectProfileUnkGRSSC1Ev kind:function(arm,size=0xa4) addr:0x0210103c -_ZN16MapObjectUnkGRSS19func_ov031_021010e0Ev kind:function(arm,size=0x48) addr:0x021010e0 -_ZN16MapObjectUnkGRSSC1Ev kind:function(arm,size=0x48) addr:0x02101128 -_ZN16MapObjectUnkGRSS19func_ov031_02101170Ev kind:function(arm,size=0x31c) addr:0x02101170 -_ZN16MapObjectUnkGRSS19func_ov031_0210148cEv kind:function(arm,size=0x78) addr:0x0210148c -_ZN16MapObjectUnkGRSS19func_ov031_02101504Ev kind:function(arm,size=0x74) addr:0x02101504 -_ZN16MapObjectUnkGRSS19func_ov031_02101578Ev kind:function(arm,size=0x13c) addr:0x02101578 -_ZN16MapObjectUnkGRSS19func_ov031_021016b4Ev kind:function(arm,size=0x88) addr:0x021016b4 -_ZN16MapObjectUnkGRSS19func_ov031_0210173cEv kind:function(arm,size=0x3c) addr:0x0210173c -_ZN16MapObjectUnkGRSS19func_ov031_02101778Ev kind:function(arm,size=0x74) addr:0x02101778 -_ZN16MapObjectUnkGRSS19func_ov031_021017ecEv kind:function(arm,size=0xb8) addr:0x021017ec -_ZN16MapObjectUnkGRSS19func_ov031_021018a4Ev kind:function(arm,size=0xac) addr:0x021018a4 -_ZN16MapObjectUnkGRSS19func_ov031_02101950Ev kind:function(arm,size=0x18) addr:0x02101950 -_ZN16MapObjectUnkGRSS19func_ov031_02101968Ev kind:function(arm,size=0x10) addr:0x02101968 -_ZN16MapObjectUnkGRSS19func_ov031_02101978Ev kind:function(arm,size=0x20) addr:0x02101978 -_ZN16MapObjectUnkGRSSD1Ev kind:function(arm,size=0x14) addr:0x02101998 -_ZN16MapObjectUnkGRSSD0Ev kind:function(arm,size=0x1c) addr:0x021019ac -_ZN23MapObjectProfileUnkGRSSD1Ev kind:function(arm,size=0x14) addr:0x021019c8 +_ZN21MapObjectProfileGrass10GetProfileEv kind:function(arm,size=0xc) addr:0x0210100c +_ZN21MapObjectProfileGrass6CreateEv kind:function(arm,size=0x24) addr:0x02101018 +_ZN21MapObjectProfileGrassC1Ev kind:function(arm,size=0xa4) addr:0x0210103c +_ZN14MapObjectGrassC2Ev kind:function(arm,size=0x48) addr:0x021010e0 +_ZN14MapObjectGrassC1Ev kind:function(arm,size=0x48) addr:0x02101128 +_ZN14MapObjectGrass8vfunc_00Ev kind:function(arm,size=0x31c) addr:0x02101170 +_ZN14MapObjectGrass8vfunc_08Ev kind:function(arm,size=0x78) addr:0x0210148c +_ZN14MapObjectGrass8vfunc_14Ev kind:function(arm,size=0x74) addr:0x02101504 +_ZN14MapObjectGrass8vfunc_38Esi kind:function(arm,size=0x13c) addr:0x02101578 +_ZN14MapObjectGrass19func_ov031_021016b4Ev kind:function(arm,size=0x88) addr:0x021016b4 +_ZN14MapObjectGrass8vfunc_3CEP7VecFx32 kind:function(arm,size=0x3c) addr:0x0210173c +_ZN14MapObjectGrass19func_ov031_02101778Ev kind:function(arm,size=0x74) addr:0x02101778 +_ZN14MapObjectGrass8vfunc_1CE8ActorRefiP7VecFx32 kind:function(arm,size=0xb8) addr:0x021017ec +_ZN14MapObjectGrass19func_ov031_021018a4Es kind:function(arm,size=0xac) addr:0x021018a4 +_ZN14MapObjectGrass19func_ov031_02101950Ev kind:function(arm,size=0x18) addr:0x02101950 +_ZN14MapObjectGrass19func_ov031_02101968Ei kind:function(arm,size=0x10) addr:0x02101968 +_ZN14MapObjectGrass19func_ov031_02101978EiP7VecFx32 kind:function(arm,size=0x20) addr:0x02101978 +_ZN14MapObjectGrassD1Ev kind:function(arm,size=0x14) addr:0x02101998 +_ZN14MapObjectGrassD0Ev kind:function(arm,size=0x1c) addr:0x021019ac +_ZN21MapObjectProfileGrassD1Ev kind:function(arm,size=0x14) addr:0x021019c8 func_ov031_021019dc kind:function(arm,size=0x14) addr:0x021019dc func_ov031_021019f0 kind:function(arm,size=0x24) addr:0x021019f0 _ZN23MapObjectProfileUnkSWHT10GetProfileEv kind:function(arm,size=0xc) addr:0x02101a14 @@ -1666,19 +1666,19 @@ _ZN23MapObjectProfileUnkSKDIC1Ev kind:function(arm,size=0x48) addr:0x02106030 _ZN16MapObjectUnkSKDIC1Ev kind:function(arm,size=0x118) addr:0x02106078 _ZN16MapObjectUnkSKDI19func_ov031_02106190Ev kind:function(arm,size=0x4c) addr:0x02106190 _ZN16MapObjectUnkSKDI19func_ov031_021061dcEv kind:function(arm,size=0x48) addr:0x021061dc -_ZN16MapObjectUnkSKDI19func_ov031_02106224Ev kind:function(arm,size=0xc8) addr:0x02106224 -_ZN16MapObjectUnkSKDI19func_ov031_021062ecEv kind:function(arm,size=0xe0) addr:0x021062ec -_ZN16MapObjectUnkSKDI19func_ov031_021063ccEv kind:function(arm,size=0x10) addr:0x021063cc -_ZN16MapObjectUnkSKDI19func_ov031_021063dcEv kind:function(arm,size=0x60) addr:0x021063dc -_ZN16MapObjectUnkSKDI19func_ov031_0210643cEv kind:function(arm,size=0x23c) addr:0x0210643c -_ZN16MapObjectUnkSKDI19func_ov031_02106678Ev kind:function(arm,size=0x3f8) addr:0x02106678 +_ZN16MapObjectUnkSKDI8vfunc_00Ev kind:function(arm,size=0xc8) addr:0x02106224 +_ZN16MapObjectUnkSKDI8vfunc_04Ev kind:function(arm,size=0xe0) addr:0x021062ec +_ZN16MapObjectUnkSKDI8vfunc_08Ev kind:function(arm,size=0x10) addr:0x021063cc +_ZN16MapObjectUnkSKDI8vfunc_0CEv kind:function(arm,size=0x60) addr:0x021063dc +_ZN16MapObjectUnkSKDI19func_ov031_0210643cEi kind:function(arm,size=0x23c) addr:0x0210643c +_ZN16MapObjectUnkSKDI19func_ov031_02106678Esi kind:function(arm,size=0x3f8) addr:0x02106678 _ZN16MapObjectUnkSKDI19func_ov031_02106a70Ev kind:function(arm,size=0x14) addr:0x02106a70 -_ZN16MapObjectUnkSKDI19func_ov031_02106a84Ev kind:function(arm,size=0x1f4) addr:0x02106a84 -_ZN16MapObjectUnkSKDI19func_ov031_02106c78Ev kind:function(arm,size=0x20) addr:0x02106c78 -_ZN16MapObjectUnkSKDI19func_ov031_02106c98Ev kind:function(arm,size=0x8) addr:0x02106c98 -_ZN16MapObjectUnkSKDI19func_ov031_02106ca0Ev kind:function(arm,size=0x8) addr:0x02106ca0 -_ZN16MapObjectUnkSKDI19func_ov031_02106ca8Ev kind:function(arm,size=0x8) addr:0x02106ca8 -_ZN16MapObjectUnkSKDI19func_ov031_02106cb0Ev kind:function(arm,size=0x14) addr:0x02106cb0 +_ZN16MapObjectUnkSKDI8vfunc_1CE8ActorRefiP7VecFx32 kind:function(arm,size=0x1f4) addr:0x02106a84 +_ZN16MapObjectUnkSKDI8vfunc_14Ev kind:function(arm,size=0x20) addr:0x02106c78 +_ZN16MapObjectUnkSKDI8vfunc_38Ev kind:function(arm,size=0x8) addr:0x02106c98 +_ZN16MapObjectUnkSKDI8vfunc_3CEv kind:function(arm,size=0x8) addr:0x02106ca0 +_ZN16MapObjectUnkSKDI8vfunc_40Ev kind:function(arm,size=0x8) addr:0x02106ca8 +_ZN16MapObjectUnkSKDI19func_ov031_02106cb0Ei kind:function(arm,size=0x14) addr:0x02106cb0 _ZN16MapObjectUnkSKDID1Ev kind:function(arm,size=0x40) addr:0x02106cc4 _ZN16MapObjectUnkSKDID0Ev kind:function(arm,size=0x48) addr:0x02106d04 _ZN23MapObjectProfileUnkSKDID1Ev kind:function(arm,size=0x14) addr:0x02106d4c @@ -1686,11 +1686,11 @@ _ZN19ActorProfileUnkSKDO10GetProfileEv kind:function(arm,size=0xc) addr:0x02106d _ZN19ActorProfileUnkSKDO6CreateEv kind:function(arm,size=0x24) addr:0x02106d6c _ZN19ActorProfileUnkSKDOC1Ev kind:function(arm,size=0x28) addr:0x02106d90 _ZN12ActorUnkSKDOC1Ev kind:function(arm,size=0x28) addr:0x02106db8 -_ZN12ActorUnkSKDO19func_ov031_02106de0Ev kind:function(arm,size=0x8) addr:0x02106de0 -_ZN12ActorUnkSKDO19func_ov031_02106de8Ev kind:function(arm,size=0x70) addr:0x02106de8 -_ZN12ActorUnkSKDO19func_ov031_02106e58Ev kind:function(arm,size=0x38) addr:0x02106e58 -_ZN12ActorUnkSKDO19func_ov031_02106e90Ev kind:function(arm,size=0x8) addr:0x02106e90 -_ZN12ActorUnkSKDO19func_ov031_02106e98Ev kind:function(arm,size=0x3c) addr:0x02106e98 +_ZN12ActorUnkSKDO8vfunc_18Ei kind:function(arm,size=0x8) addr:0x02106de0 +_ZN12ActorUnkSKDO8vfunc_1CEv kind:function(arm,size=0x70) addr:0x02106de8 +_ZN12ActorUnkSKDO8vfunc_20Ev kind:function(arm,size=0x38) addr:0x02106e58 +_ZN12ActorUnkSKDO8vfunc_54Ei kind:function(arm,size=0x8) addr:0x02106e90 +_ZN27ActorUnkSKDO_ov031_02115ce88vfunc_00EP9MapObject kind:function(arm,size=0x3c) addr:0x02106e98 _ZN12ActorUnkSKDOD1Ev kind:function(arm,size=0x14) addr:0x02106ed4 _ZN12ActorUnkSKDOD0Ev kind:function(arm,size=0x1c) addr:0x02106ee8 _ZN19ActorProfileUnkSKDOD1Ev kind:function(arm,size=0x14) addr:0x02106f04 @@ -2071,7 +2071,7 @@ data_ov031_02110f88 kind:data(any) addr:0x02110f88 __sinit_ov031_02110fd0 kind:function(arm,size=0x18) addr:0x02110fd0 __sinit_ov031_02110fe8 kind:function(arm,size=0x10) addr:0x02110fe8 __sinit_ActorUnkBOMB.cpp kind:function(arm,size=0x50) addr:0x02110ff8 -__sinit_ActorUnkBLST.cpp kind:function(arm,size=0x50) addr:0x02111048 +__sinit_ActorBlast.cpp kind:function(arm,size=0x50) addr:0x02111048 __sinit_ActorUnkTLKT.cpp kind:function(arm,size=0x50) addr:0x02111098 __sinit_ActorItemBoomerang.cpp kind:function(arm,size=0x50) addr:0x021110e8 __sinit_ActorItemTornado.cpp kind:function(arm,size=0x74) addr:0x02111138 @@ -2080,7 +2080,7 @@ __sinit_ActorUnkROCK.cpp kind:function(arm,size=0x50) addr:0x02111220 __sinit_ActorRupee.cpp kind:function(arm,size=0x98) addr:0x02111270 __sinit_ActorUnkZLSL_ZSRS.cpp kind:function(arm,size=0x94) addr:0x02111308 __sinit_ActorHeart.cpp kind:function(arm,size=0x6c) addr:0x0211139c -__sinit_ActorUnkRMTG.cpp kind:function(arm,size=0x50) addr:0x02111408 +__sinit_ActorUnkRMTG.cpp kind:function(arm,size=0x50) addr:0x02111408 local __sinit_ActorUnkSCCN.cpp kind:function(arm,size=0x50) addr:0x02111458 __sinit_ActorPot.cpp kind:function(arm,size=0x50) addr:0x021114a8 __sinit_ActorUnkNITF.cpp kind:function(arm,size=0x50) addr:0x021114f8 @@ -2089,7 +2089,7 @@ __sinit_ActorUnkATTG.cpp kind:function(arm,size=0x50) addr:0x02111598 __sinit_ActorUnkNTTZ.cpp kind:function(arm,size=0x50) addr:0x021115e8 local __sinit_ov031_02111638 kind:function(arm,size=0x24) addr:0x02111638 __sinit_ActorUnkTGTZ.cpp kind:function(arm,size=0x64) addr:0x0211165c -__sinit_ActorUnkSWCH.cpp kind:function(arm,size=0x50) addr:0x021116c0 +__sinit_ActorUnkSWCH.cpp kind:function(arm,size=0x50) addr:0x021116c0 local __sinit_ActorUnkSWON.cpp kind:function(arm,size=0x50) addr:0x02111710 local __sinit_ActorUnkNORE.cpp kind:function(arm,size=0x50) addr:0x02111760 __sinit_ActorUnkFLEN.cpp kind:function(arm,size=0x50) addr:0x021117b0 @@ -2108,7 +2108,7 @@ __sinit_MapObjectDoorTouch.cpp kind:function(arm,size=0x50) addr:0x02111cb8 __sinit_MapObjectUnkEXIT.cpp kind:function(arm,size=0x50) addr:0x02111d08 __sinit_MapObjectUnkGATE.cpp kind:function(arm,size=0x50) addr:0x02111d58 __sinit_MapObjectUnkSTIR.cpp kind:function(arm,size=0x50) addr:0x02111da8 -__sinit_MapObjectUnkGRSS.cpp kind:function(arm,size=0x90) addr:0x02111df8 +__sinit_MapObjectGrass.cpp kind:function(arm,size=0x90) addr:0x02111df8 __sinit_MapObjectUnkSWHT.cpp kind:function(arm,size=0x70) addr:0x02111e88 __sinit_MapObjectUnkBMFL.cpp kind:function(arm,size=0x50) addr:0x02111ef8 __sinit_MapObjectTreasureSpawned.cpp kind:function(arm,size=0x6c) addr:0x02111f48 local @@ -2121,7 +2121,7 @@ __sinit_MapObjectPot.cpp kind:function(arm,size=0x50) addr:0x02112178 __sinit_MapObjectUnkSKBN.cpp kind:function(arm,size=0x74) addr:0x021121c8 __sinit_MapObjectUnkITFL.cpp kind:function(arm,size=0x50) addr:0x0211223c __sinit_MapObjectUnkSKDI.cpp kind:function(arm,size=0x50) addr:0x0211228c -__sinit_ActorUnkSKDO.cpp kind:function(arm,size=0x50) addr:0x021122dc +__sinit_ActorUnkSKDO.cpp kind:function(arm,size=0x50) addr:0x021122dc local __sinit_MapObjectUnkCRWL.cpp kind:function(arm,size=0x70) addr:0x0211232c __sinit_MapObjectUnkBREX.cpp kind:function(arm,size=0x64) addr:0x0211239c __sinit_MapObjectUnkTATZ.cpp kind:function(arm,size=0x64) addr:0x02112400 @@ -2135,7 +2135,7 @@ __sinit_MapObjectUnkSWFS.cpp kind:function(arm,size=0x70) addr:0x02112724 .p__sinit_ov031_02110fd0 kind:data(word) addr:0x02112794 .p__sinit_ov031_02110fe8 kind:data(word) addr:0x02112798 .p__sinit_ActorUnkBOMB.cpp kind:data(word) addr:0x0211279c -.p__sinit_ActorUnkBLST.cpp kind:data(word) addr:0x021127a0 +.p__sinit_ActorBlast.cpp kind:data(word) addr:0x021127a0 .p__sinit_ActorUnkTLKT.cpp kind:data(word) addr:0x021127a4 .p__sinit_ActorItemBoomerang.cpp kind:data(word) addr:0x021127a8 .p__sinit_ActorItemTornado.cpp kind:data(word) addr:0x021127ac @@ -2144,7 +2144,7 @@ __sinit_MapObjectUnkSWFS.cpp kind:function(arm,size=0x70) addr:0x02112724 .p__sinit_ActorRupee.cpp kind:data(word) addr:0x021127b8 .p__sinit_ActorUnkZLSL_ZSRS.cpp kind:data(word) addr:0x021127bc .p__sinit_ActorHeart.cpp kind:data(word) addr:0x021127c0 -.p__sinit_ActorUnkRMTG.cpp kind:data(word) addr:0x021127c4 +.p__sinit_ActorUnkRMTG.cpp kind:data(word) addr:0x021127c4 local .p__sinit_ActorUnkSCCN.cpp kind:data(word) addr:0x021127c8 .p__sinit_ActorPot.cpp kind:data(word) addr:0x021127cc .p__sinit_ActorUnkNITF.cpp kind:data(word) addr:0x021127d0 @@ -2153,7 +2153,7 @@ __sinit_MapObjectUnkSWFS.cpp kind:function(arm,size=0x70) addr:0x02112724 .p__sinit_ActorUnkNTTZ.cpp kind:data(word) addr:0x021127dc local .p__sinit_ov031_02111638 kind:data(word) addr:0x021127e0 .p__sinit_ActorUnkTGTZ.cpp kind:data(word) addr:0x021127e4 -.p__sinit_ActorUnkSWCH.cpp kind:data(word) addr:0x021127e8 +.p__sinit_ActorUnkSWCH.cpp kind:data(word) addr:0x021127e8 local .p__sinit_ActorUnkSWON.cpp kind:data(word) addr:0x021127ec local .p__sinit_ActorUnkNORE.cpp kind:data(word) addr:0x021127f0 .p__sinit_ActorUnkFLEN.cpp kind:data(word) addr:0x021127f4 @@ -2172,7 +2172,7 @@ __sinit_MapObjectUnkSWFS.cpp kind:function(arm,size=0x70) addr:0x02112724 .p__sinit_MapObjectUnkEXIT.cpp kind:data(word) addr:0x02112828 .p__sinit_MapObjectUnkGATE.cpp kind:data(word) addr:0x0211282c .p__sinit_MapObjectUnkSTIR.cpp kind:data(word) addr:0x02112830 -.p__sinit_MapObjectUnkGRSS.cpp kind:data(word) addr:0x02112834 +.p__sinit_MapObjectGrass.cpp kind:data(word) addr:0x02112834 .p__sinit_MapObjectUnkSWHT.cpp kind:data(word) addr:0x02112838 .p__sinit_MapObjectUnkBMFL.cpp kind:data(word) addr:0x0211283c .p__sinit_MapObjectTreasureSpawned.cpp kind:data(word) addr:0x02112840 local @@ -2185,7 +2185,7 @@ __sinit_MapObjectUnkSWFS.cpp kind:function(arm,size=0x70) addr:0x02112724 .p__sinit_MapObjectUnkSKBN.cpp kind:data(word) addr:0x0211285c .p__sinit_MapObjectUnkITFL.cpp kind:data(word) addr:0x02112860 .p__sinit_MapObjectUnkSKDI.cpp kind:data(word) addr:0x02112864 -.p__sinit_ActorUnkSKDO.cpp kind:data(word) addr:0x02112868 +.p__sinit_ActorUnkSKDO.cpp kind:data(word) addr:0x02112868 local .p__sinit_MapObjectUnkCRWL.cpp kind:data(word) addr:0x0211286c .p__sinit_MapObjectUnkBREX.cpp kind:data(word) addr:0x02112870 .p__sinit_MapObjectUnkTATZ.cpp kind:data(word) addr:0x02112874 @@ -2245,18 +2245,18 @@ data_ov031_02112bdc kind:data(any) addr:0x02112bdc data_ov031_02112be8 kind:data(any) addr:0x02112be8 data_ov031_02112c00 kind:data(any) addr:0x02112c00 data_ov031_02112c38 kind:data(any) addr:0x02112c38 -data_ov031_02112c78 kind:data(any) addr:0x02112c78 -data_ov031_02112c94 kind:data(any) addr:0x02112c94 -data_ov031_02112cb0 kind:data(any) addr:0x02112cb0 +_ZTV19data_ov031_02112c78 kind:data(any) addr:0x02112c70 +_ZTV19data_ov031_02112c94 kind:data(any) addr:0x02112c8c +_ZTV19data_ov031_02112cb0 kind:data(any) addr:0x02112ca8 _ZTV19data_ov031_02112cc4 kind:data(any) addr:0x02112cc4 _ZTV19data_ov031_02112ce8 kind:data(any) addr:0x02112ce8 -data_ov031_02112d4c kind:data(any) addr:0x02112d4c -_ZTV19data_ov031_02112d60 kind:data(any) addr:0x02112d60 -_ZTV19data_ov031_02112d84 kind:data(any) addr:0x02112d84 +_ZTV13ActorBlast_E8 kind:data(any) addr:0x02112d44 +_ZTV17ActorProfileBlast kind:data(any) addr:0x02112d60 +_ZTV10ActorBlast kind:data(any) addr:0x02112d84 _ZTV19data_ov031_02112de0 kind:data(any) addr:0x02112de0 -_ZTV19data_ov031_02112e4c kind:data(any) addr:0x02112e4c -_ZTV19data_ov031_02112e70 kind:data(any) addr:0x02112e70 -_ZTV19data_ov031_02112eec kind:data(any) addr:0x02112ee4 +_ZTV19ActorProfileUnkTLKT kind:data(any) addr:0x02112e4c +_ZTV12ActorUnkTLKT kind:data(any) addr:0x02112e70 +_ZTV15ActorUnkTLKT_9C kind:data(any) addr:0x02112ee4 _ZTV21ActorItemBoomerang_A0 kind:data(any) addr:0x02112efc _ZTV22ActorItemBoomerang_11C kind:data(any) addr:0x02112f18 _ZTV21ActorItemBoomerang_CC kind:data(any) addr:0x02112f34 @@ -2331,12 +2331,12 @@ data_ov031_02113da4 kind:data(any) addr:0x02113da4 _ZTV13ActorHeart_C4 kind:data(any) addr:0x02113dd4 _ZTV17ActorProfileHeart kind:data(any) addr:0x02113dec _ZTV10ActorHeart kind:data(any) addr:0x02113e10 -_ZTV19data_ov031_02113e6c kind:data(any) addr:0x02113e6c -_ZTV19data_ov031_02113e90 kind:data(any) addr:0x02113e90 -_ZTV19data_ov031_02113eec kind:data(any) addr:0x02113eec +_ZTV19ActorProfileUnkRMTG kind:data(any) addr:0x02113e6c +_ZTV12ActorUnkRMTG kind:data(any) addr:0x02113e90 +_ZTV19ActorProfileUnkSCCN kind:data(any) addr:0x02113eec _ZTV12MapObject_10 kind:data(any) addr:0x02113f10 -_ZTV19data_ov031_02113f38 kind:data(any) addr:0x02113f38 -data_ov031_02113f9c kind:data(any) addr:0x02113f9c +_ZTV12ActorUnkSCCN kind:data(any) addr:0x02113f38 +_ZTV19data_ov031_02113f9c kind:data(any) addr:0x02113f94 data_ov031_02113fb8 kind:data(any) addr:0x02113fb8 _ZTV19data_ov031_02113fcc kind:data(any) addr:0x02113fcc _ZTV15ActorProfilePot kind:data(any) addr:0x0211403c @@ -2375,9 +2375,9 @@ _ZTV19data_ov031_02114778 kind:data(any) addr:0x02114778 data_ov031_021147e0 kind:data(any) addr:0x021147e0 data_ov031_02114804 kind:data(any) addr:0x02114804 data_ov031_0211480c kind:data(any) addr:0x0211480c -_ZTV19data_ov031_02114818 kind:data(any) addr:0x02114818 -_ZTV19data_ov031_0211483c kind:data(any) addr:0x0211483c -data_ov031_021148a0 kind:data(any) addr:0x021148a0 ambiguous +_ZTV19ActorProfileUnkSWCH kind:data(any) addr:0x02114818 +_ZTV12ActorUnkSWCH kind:data(any) addr:0x0211483c +_ZTV19data_ov031_021148a0 kind:data(any) addr:0x02114898 ambiguous data_ov031_021148b0 kind:data(any) addr:0x021148b0 _ZTV19ActorProfileUnkSWON kind:data(any) addr:0x021148b8 _ZTV12ActorUnkSWON kind:data(any) addr:0x021148dc @@ -2436,10 +2436,10 @@ data_ov031_02115588 kind:data(any) addr:0x02115588 data_ov031_021155c8 kind:data(any) addr:0x021155c8 data_ov031_021155e4 kind:data(any) addr:0x021155e4 _ZTV24MapObjectProfilePot_Base kind:data(any) addr:0x0211561c -data_ov031_02115640 kind:data(any) addr:0x02115640 -data_ov031_0211565c kind:data(any) addr:0x0211565c +_ZTV21MapObjectProfileGrass kind:data(any) addr:0x02115638 +_ZTV14MapObjectGrass kind:data(any) addr:0x02115654 data_ov031_0211569c kind:data(any) addr:0x0211569c -data_ov031_021156b0 kind:data(any) addr:0x021156b0 +_ZTV19data_ov031_021156b0 kind:data(any) addr:0x021156a8 data_ov031_021156cc kind:data(any) addr:0x021156cc data_ov031_0211570c kind:data(any) addr:0x0211570c data_ov031_02115728 kind:data(any) addr:0x02115728 @@ -2472,11 +2472,11 @@ data_ov031_02115ba8 kind:data(any) addr:0x02115ba8 data_ov031_02115bc4 kind:data(any) addr:0x02115bc4 data_ov031_02115c04 kind:data(any) addr:0x02115c04 data_ov031_02115c20 kind:data(any) addr:0x02115c20 -data_ov031_02115c80 kind:data(any) addr:0x02115c80 -data_ov031_02115c9c kind:data(any) addr:0x02115c9c -data_ov031_02115ce8 kind:data(any) addr:0x02115ce8 -_ZTV19data_ov031_02115cec kind:data(any) addr:0x02115cec -_ZTV19data_ov031_02115d10 kind:data(any) addr:0x02115d10 +_ZTV23MapObjectProfileUnkSKDI kind:data(any) addr:0x02115c78 +_ZTV16MapObjectUnkSKDI kind:data(any) addr:0x02115c94 +_ZTV27ActorUnkSKDO_ov031_02115ce8 kind:data(any) addr:0x02115ce0 +_ZTV19ActorProfileUnkSKDO kind:data(any) addr:0x02115cec +_ZTV12ActorUnkSKDO kind:data(any) addr:0x02115d10 data_ov031_02115d70 kind:data(any) addr:0x02115d70 data_ov031_02115d84 kind:data(any) addr:0x02115d84 data_ov031_02115dac kind:data(any) addr:0x02115dac @@ -2523,9 +2523,9 @@ data_ov031_02116380 kind:bss addr:0x02116380 _ZGVN15ProfileInstanceI19ActorProfileUnkBOMBE8sProfileE kind:bss addr:0x02116404 @10775 kind:bss addr:0x02116408 _ZN15ProfileInstanceI19ActorProfileUnkBOMBE8sProfileE kind:bss addr:0x02116414 -_ZGVN15ProfileInstanceI19ActorProfileUnkBLSTE8sProfileE kind:bss addr:0x02116450 +_ZGVN15ProfileInstanceI17ActorProfileBlastE8sProfileE kind:bss addr:0x02116450 @10781 kind:bss addr:0x02116454 -_ZN15ProfileInstanceI19ActorProfileUnkBLSTE8sProfileE kind:bss addr:0x02116460 +_ZN15ProfileInstanceI17ActorProfileBlastE8sProfileE kind:bss addr:0x02116460 _ZGVN15ProfileInstanceI19ActorProfileUnkTLKTE8sProfileE kind:bss addr:0x0211649c @10787 kind:bss addr:0x021164a0 _ZN15ProfileInstanceI19ActorProfileUnkTLKTE8sProfileE kind:bss addr:0x021164ac @@ -2556,7 +2556,7 @@ _ZGVN15ProfileInstanceI17ActorProfileHeartE8sProfileE kind:bss addr:0x02116858 @10830 kind:bss addr:0x0211685c _ZN15ProfileInstanceI17ActorProfileHeartE8sProfileE kind:bss addr:0x02116868 _ZGVN15ProfileInstanceI19ActorProfileUnkRMTGE8sProfileE kind:bss addr:0x021168a4 -@10836 kind:bss addr:0x021168a8 +@10836 kind:bss addr:0x021168a8 local _ZN15ProfileInstanceI19ActorProfileUnkRMTGE8sProfileE kind:bss addr:0x021168b4 _ZGVN15ProfileInstanceI19ActorProfileUnkSCCNE8sProfileE kind:bss addr:0x0211698c @10842 kind:bss addr:0x02116990 @@ -2582,7 +2582,7 @@ _ZGVN15ProfileInstanceI19ActorProfileUnkTGTZE8sProfileE kind:bss addr:0x02116b64 @10878 kind:bss addr:0x02116b70 _ZN15ProfileInstanceI19ActorProfileUnkTGTZE8sProfileE kind:bss addr:0x02116b7c _ZGVN15ProfileInstanceI19ActorProfileUnkSWCHE8sProfileE kind:bss addr:0x02116c54 -@10884 kind:bss addr:0x02116c58 +@10884 kind:bss addr:0x02116c58 local _ZN15ProfileInstanceI19ActorProfileUnkSWCHE8sProfileE kind:bss addr:0x02116c64 _ZGVN15ProfileInstanceI19ActorProfileUnkSWONE8sProfileE kind:bss addr:0x02116ca0 @10890 kind:bss addr:0x02116ca4 local @@ -2649,9 +2649,9 @@ _ZGVN15ProfileInstanceI23MapObjectProfileUnkSTIRE8sProfileE kind:bss addr:0x0211 _ZN15ProfileInstanceI23MapObjectProfileUnkSTIRE8sProfileE kind:bss addr:0x02117784 data_ov031_02117858 kind:bss addr:0x02117858 data_ov031_0211785c kind:bss addr:0x0211785c -_ZGVN15ProfileInstanceI23MapObjectProfileUnkGRSSE8sProfileE kind:bss addr:0x02117868 +_ZGVN15ProfileInstanceI21MapObjectProfileGrassE8sProfileE kind:bss addr:0x02117868 @10981 kind:bss addr:0x02117874 -_ZN15ProfileInstanceI23MapObjectProfileUnkGRSSE8sProfileE kind:bss addr:0x021178c4 +_ZN15ProfileInstanceI21MapObjectProfileGrassE8sProfileE kind:bss addr:0x021178c4 data_ov031_02117998 kind:bss addr:0x02117998 _ZGVN15ProfileInstanceI23MapObjectProfileUnkSWHTE8sProfileE kind:bss addr:0x021179b8 @10987 kind:bss addr:0x021179bc @@ -2692,7 +2692,7 @@ _ZGVN15ProfileInstanceI23MapObjectProfileUnkSKDIE8sProfileE kind:bss addr:0x0211 @11047 kind:bss addr:0x02118220 _ZN15ProfileInstanceI23MapObjectProfileUnkSKDIE8sProfileE kind:bss addr:0x0211822c _ZGVN15ProfileInstanceI19ActorProfileUnkSKDOE8sProfileE kind:bss addr:0x02118300 -@11064 kind:bss addr:0x02118304 +@11064 kind:bss addr:0x02118304 local _ZN15ProfileInstanceI19ActorProfileUnkSKDOE8sProfileE kind:bss addr:0x02118310 _ZGVN15ProfileInstanceI23MapObjectProfileUnkCRWLE8sProfileE kind:bss addr:0x0211834c @11059 kind:bss addr:0x02118350 diff --git a/config/eur/arm9/overlays/ov043/relocs.txt b/config/eur/arm9/overlays/ov043/relocs.txt index 4a9a518f..91392c8d 100644 --- a/config/eur/arm9/overlays/ov043/relocs.txt +++ b/config/eur/arm9/overlays/ov043/relocs.txt @@ -381,7 +381,7 @@ from:0x02126aa0 kind:load to:0x0212d248 add:0x8 module:overlay(43) from:0x02126aa4 kind:load to:0x0212dca0 module:overlay(43) from:0x02126aa8 kind:load to:0x0212d204 module:overlay(43) from:0x02126aac kind:load to:0x0212d1bc module:overlay(43) -from:0x02126ab0 kind:load to:0x020b27c8 module:overlay(0) +from:0x02126ab0 kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x02126ab4 kind:load to:0x027e07d4 module:dtcm from:0x02126abc kind:load to:0x0212d178 module:overlay(43) from:0x02126ac8 kind:arm_call_thumb to:0x0209a248 module:overlay(0) diff --git a/config/eur/arm9/overlays/ov048/relocs.txt b/config/eur/arm9/overlays/ov048/relocs.txt index a92034cb..44c267ab 100644 --- a/config/eur/arm9/overlays/ov048/relocs.txt +++ b/config/eur/arm9/overlays/ov048/relocs.txt @@ -10,7 +10,7 @@ from:0x02130608 kind:arm_call to:0x02098388 module:overlay(0) from:0x0213062c kind:arm_call to:0x0207edac module:overlay(0) from:0x02130664 kind:arm_call to:0x020982a8 module:overlay(0) from:0x0213069c kind:load to:0x021375f8 add:0x8 module:overlay(48) -from:0x021306a0 kind:load to:0x020b27c8 module:overlay(0) +from:0x021306a0 kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x021306a4 kind:load to:0x021375e4 module:overlay(48) from:0x021306b0 kind:arm_call to:0x0207bffc module:overlay(0) from:0x021306c8 kind:arm_call to:0x0207bffc module:overlay(0) @@ -256,7 +256,7 @@ from:0x02132280 kind:load to:0x02137c70 module:overlay(48) from:0x02132284 kind:load to:0x0213771c module:overlay(48) from:0x0213228c kind:load to:0x02131000 module:overlay(48) from:0x02132290 kind:load to:0x021320c0 module:overlay(48) -from:0x02132294 kind:load to:0x020b27c8 module:overlay(0) +from:0x02132294 kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x021322b8 kind:arm_call to:0x020a0334 module:overlay(0) from:0x021322d4 kind:arm_call to:0x0207e254 module:overlay(0) from:0x021322dc kind:arm_call to:0x0207b6c0 module:overlay(0) diff --git a/config/eur/arm9/overlays/ov052/relocs.txt b/config/eur/arm9/overlays/ov052/relocs.txt index 52fce6a3..7defcd7e 100644 --- a/config/eur/arm9/overlays/ov052/relocs.txt +++ b/config/eur/arm9/overlays/ov052/relocs.txt @@ -319,7 +319,7 @@ from:0x021334e0 kind:load to:0x021361e8 add:0x8 module:overlay(52) from:0x021334e4 kind:load to:0x02136840 module:overlay(52) from:0x021334e8 kind:load to:0x021361a4 module:overlay(52) from:0x021334ec kind:load to:0x0213615c module:overlay(52) -from:0x021334f0 kind:load to:0x020b27c8 module:overlay(0) +from:0x021334f0 kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x021334f4 kind:load to:0x027e07d4 module:dtcm from:0x021334fc kind:load to:0x02136118 module:overlay(52) from:0x02133508 kind:arm_call_thumb to:0x0209a248 module:overlay(0) diff --git a/config/eur/arm9/overlays/ov059/relocs.txt b/config/eur/arm9/overlays/ov059/relocs.txt index 1289f266..47feac6d 100644 --- a/config/eur/arm9/overlays/ov059/relocs.txt +++ b/config/eur/arm9/overlays/ov059/relocs.txt @@ -522,7 +522,7 @@ from:0x0215c7dc kind:load to:0x0216384c add:0x8 module:overlay(59) from:0x0215c7e0 kind:load to:0x0216449c module:overlay(59) from:0x0215c7e4 kind:load to:0x021637a8 module:overlay(59) from:0x0215c7e8 kind:load to:0x02163514 module:overlay(59) -from:0x0215c7ec kind:load to:0x020b27c8 module:overlay(0) +from:0x0215c7ec kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x0215c7f0 kind:load to:0x02164490 module:overlay(59) from:0x0215c7fc kind:arm_call_thumb to:0x02057bd4 module:overlay(0) from:0x0215c828 kind:arm_call to:0x02057c38 module:overlay(0) @@ -1018,7 +1018,7 @@ from:0x02160e80 kind:load to:0x02163bdc add:0x8 module:overlay(59) from:0x02160e8c kind:arm_call to:0x02098388 module:overlay(0) from:0x02160f24 kind:arm_call_thumb to:0x02057a24 module:overlay(0) from:0x02160f54 kind:load to:0x02163c50 add:0x8 module:overlay(59) -from:0x02160f58 kind:load to:0x020b27c8 module:overlay(0) +from:0x02160f58 kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x02160f5c kind:load to:0x02164678 module:overlay(59) from:0x02160f88 kind:arm_call to:0x02160f94 module:overlay(59) from:0x02160fcc kind:load to:0x02163c00 module:overlay(59) diff --git a/config/eur/arm9/overlays/ov068/relocs.txt b/config/eur/arm9/overlays/ov068/relocs.txt index 01ecac1c..75d73cff 100644 --- a/config/eur/arm9/overlays/ov068/relocs.txt +++ b/config/eur/arm9/overlays/ov068/relocs.txt @@ -816,7 +816,7 @@ from:0x0215ebb4 kind:load to:0x021632c0 add:0x8 module:overlay(68) from:0x0215ebb8 kind:load to:0x0216434c module:overlay(68) from:0x0215ebbc kind:load to:0x0216323c module:overlay(68) from:0x0215ebc0 kind:load to:0x0216278c module:overlay(68) -from:0x0215ebc4 kind:load to:0x020b27c8 module:overlay(0) +from:0x0215ebc4 kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x0215ebd0 kind:arm_call_thumb to:0x02057bd4 module:overlay(0) from:0x0215ebf8 kind:arm_call to:0x02057c38 module:overlay(0) from:0x0215ec08 kind:arm_call to:0x0209a7b8 module:overlay(0) diff --git a/config/eur/arm9/overlays/ov070/relocs.txt b/config/eur/arm9/overlays/ov070/relocs.txt index fcc98449..6b023fe6 100644 --- a/config/eur/arm9/overlays/ov070/relocs.txt +++ b/config/eur/arm9/overlays/ov070/relocs.txt @@ -1090,7 +1090,7 @@ from:0x02147f80 kind:arm_call to:0x020982a8 module:overlay(0) from:0x02147fe8 kind:arm_call to:0x0209862c module:overlay(0) from:0x02148000 kind:load to:0x0214f32c add:0x8 module:overlay(70) from:0x02148004 kind:load to:0x021505a4 module:overlay(70) -from:0x02148008 kind:load to:0x020b27c8 module:overlay(0) +from:0x02148008 kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x0214800c kind:load to:0x0214f274 module:overlay(70) from:0x02148018 kind:arm_call to:0x0207bffc module:overlay(0) from:0x02148060 kind:arm_call to:0x021482cc module:overlay(70) diff --git a/config/eur/arm9/overlays/ov071/relocs.txt b/config/eur/arm9/overlays/ov071/relocs.txt index 348cb528..bd4b4c82 100644 --- a/config/eur/arm9/overlays/ov071/relocs.txt +++ b/config/eur/arm9/overlays/ov071/relocs.txt @@ -1216,7 +1216,7 @@ from:0x0215c498 kind:load to:0x02163c14 module:overlay(71) from:0x0215c49c kind:load to:0x02163c24 module:overlay(71) from:0x0215c4a0 kind:load to:0x0216464c add:0x8 module:overlay(71) from:0x0215c4a4 kind:load to:0x02163c34 module:overlay(71) -from:0x0215c4a8 kind:load to:0x020b27c8 module:overlay(0) +from:0x0215c4a8 kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x0215c4ac kind:load to:0x02163c44 module:overlay(71) from:0x0215c4b0 kind:load to:0x02165134 module:overlay(71) from:0x0215c4b4 kind:load to:0x02163bcc module:overlay(71) diff --git a/config/eur/arm9/overlays/ov073/relocs.txt b/config/eur/arm9/overlays/ov073/relocs.txt index 825e993c..45d07db5 100644 --- a/config/eur/arm9/overlays/ov073/relocs.txt +++ b/config/eur/arm9/overlays/ov073/relocs.txt @@ -76,7 +76,7 @@ from:0x02151648 kind:load to:0x0216400c module:overlay(73) from:0x0215164c kind:load to:0x02163f60 module:overlay(73) from:0x02151650 kind:load to:0x020a02d4 module:overlay(0) from:0x02151654 kind:load to:0x02163198 module:overlay(73) -from:0x02151658 kind:load to:0x021148a0 module:overlay(31) +from:0x02151658 kind:load to:0x02114898 module:overlay(31) add:0x8 from:0x0215165c kind:load to:0x02049be4 module:main from:0x02151668 kind:arm_call_thumb to:0x02057bd4 module:overlay(0) from:0x0215167c kind:arm_call_thumb to:0x0209a248 module:overlay(0) diff --git a/config/eur/arm9/overlays/ov075/relocs.txt b/config/eur/arm9/overlays/ov075/relocs.txt index ff88ff4d..1b6d09ae 100644 --- a/config/eur/arm9/overlays/ov075/relocs.txt +++ b/config/eur/arm9/overlays/ov075/relocs.txt @@ -1475,7 +1475,7 @@ from:0x0215e650 kind:arm_call to:0x0215fa9c module:overlay(75) from:0x0215e660 kind:load to:0x02163208 add:0x8 module:overlay(75) from:0x0215e664 kind:load to:0x021635f4 module:overlay(75) from:0x0215e668 kind:load to:0x021631c8 module:overlay(75) -from:0x0215e66c kind:load to:0x020b27c8 module:overlay(0) +from:0x0215e66c kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x0215e670 kind:load to:0x021635e8 module:overlay(75) from:0x0215e678 kind:load to:0x027e0130 module:dtcm from:0x0215e67c kind:load to:0x027e07d4 module:dtcm diff --git a/config/eur/arm9/overlays/ov077/relocs.txt b/config/eur/arm9/overlays/ov077/relocs.txt index c8112c6c..7ef32e4f 100644 --- a/config/eur/arm9/overlays/ov077/relocs.txt +++ b/config/eur/arm9/overlays/ov077/relocs.txt @@ -24,7 +24,7 @@ from:0x021531a4 kind:load to:0x0215bd98 module:overlay(77) from:0x021531a8 kind:load to:0x0215b4c0 module:overlay(77) from:0x021531ac kind:load to:0x020a02d4 module:overlay(0) from:0x021531b0 kind:load to:0x02156f08 module:overlay(77) -from:0x021531b4 kind:load to:0x021148a0 module:overlay(31) +from:0x021531b4 kind:load to:0x02114898 module:overlay(31) add:0x8 from:0x021531b8 kind:load to:0x0215bd80 module:overlay(77) from:0x021531c4 kind:arm_call_thumb to:0x02057bd4 module:overlay(0) from:0x021531d8 kind:arm_call_thumb to:0x0209a248 module:overlay(0) diff --git a/config/eur/arm9/overlays/ov087/relocs.txt b/config/eur/arm9/overlays/ov087/relocs.txt index 4c8c60c3..0d7dc96e 100644 --- a/config/eur/arm9/overlays/ov087/relocs.txt +++ b/config/eur/arm9/overlays/ov087/relocs.txt @@ -688,7 +688,7 @@ from:0x0215b3a0 kind:arm_call_thumb to:0x0205778c module:overlay(0) from:0x0215b3b4 kind:arm_call to:0x02097bb8 module:overlay(0) from:0x0215b400 kind:arm_call to:0x01ffa06c module:itcm from:0x0215b41c kind:load to:0x02162620 add:0x8 module:overlay(87) -from:0x0215b420 kind:load to:0x020b27c8 module:overlay(0) +from:0x0215b420 kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x0215b424 kind:load to:0x02162c18 module:overlay(87) from:0x0215b428 kind:load to:0x021625dc module:overlay(87) from:0x0215b42c kind:load to:0x02162228 module:overlay(87) diff --git a/config/eur/arm9/overlays/ov091/relocs.txt b/config/eur/arm9/overlays/ov091/relocs.txt index d359483b..b5802128 100644 --- a/config/eur/arm9/overlays/ov091/relocs.txt +++ b/config/eur/arm9/overlays/ov091/relocs.txt @@ -978,7 +978,7 @@ from:0x0216dbbc kind:arm_call to:0x02103fa8 module:overlay(26) from:0x0216dbcc kind:load to:0x02177a30 add:0x8 module:overlay(91) from:0x0216dbd0 kind:load to:0x02178b80 module:overlay(91) from:0x0216dbd4 kind:load to:0x021779ec module:overlay(91) -from:0x0216dbd8 kind:load to:0x020b27c8 module:overlay(0) +from:0x0216dbd8 kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x0216dbe4 kind:arm_call_thumb to:0x0209a248 module:overlay(0) from:0x0216dc84 kind:load to:0x02178b5c module:overlay(91) from:0x0216dc88 kind:load to:0x021779a0 module:overlay(91) @@ -1752,7 +1752,7 @@ from:0x02175e5c kind:arm_call to:0x01ffa06c module:itcm from:0x02175e68 kind:load to:0x0217801c add:0x8 module:overlay(91) from:0x02175e6c kind:load to:0x02178ed4 module:overlay(91) from:0x02175e70 kind:load to:0x020b1960 add:0x8 module:overlay(0) -from:0x02175e74 kind:load to:0x020b27c8 module:overlay(0) +from:0x02175e74 kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x02175eb0 kind:arm_call to:0x021314c0 module:overlay(26) from:0x02175ec8 kind:arm_call to:0x021314c0 module:overlay(26) from:0x02175edc kind:arm_call to:0x01ffb714 module:itcm diff --git a/config/eur/arm9/overlays/ov092/relocs.txt b/config/eur/arm9/overlays/ov092/relocs.txt index c7873943..63c24b96 100644 --- a/config/eur/arm9/overlays/ov092/relocs.txt +++ b/config/eur/arm9/overlays/ov092/relocs.txt @@ -2092,7 +2092,7 @@ from:0x02178d34 kind:arm_call to:0x020fbcbc module:overlay(26) from:0x02178d64 kind:arm_call to:0x02103170 module:overlay(26) from:0x02178da0 kind:arm_call to:0x02103fa8 module:overlay(26) from:0x02178dac kind:load to:0x0217cf68 add:0x8 module:overlay(92) -from:0x02178db0 kind:load to:0x020b27c8 module:overlay(0) +from:0x02178db0 kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x02178e48 kind:load to:0x0217e0a4 module:overlay(92) from:0x02178e4c kind:load to:0x0217cf24 module:overlay(92) from:0x02178e50 kind:load to:0x0217e0f4 module:overlay(92) diff --git a/config/eur/arm9/overlays/ov094/relocs.txt b/config/eur/arm9/overlays/ov094/relocs.txt index e8e15aff..d5a9c53a 100644 --- a/config/eur/arm9/overlays/ov094/relocs.txt +++ b/config/eur/arm9/overlays/ov094/relocs.txt @@ -1178,7 +1178,7 @@ from:0x0216fb40 kind:arm_call to:0x020fbcbc module:overlay(26) from:0x0216fb70 kind:arm_call to:0x02103170 module:overlay(26) from:0x0216fbac kind:arm_call to:0x02103fa8 module:overlay(26) from:0x0216fbb8 kind:load to:0x02177dc4 add:0x8 module:overlay(94) -from:0x0216fbbc kind:load to:0x020b27c8 module:overlay(0) +from:0x0216fbbc kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x0216fbc8 kind:arm_call_thumb to:0x0209a248 module:overlay(0) from:0x0216fc68 kind:load to:0x02178f24 module:overlay(94) from:0x0216fc6c kind:load to:0x02177d80 module:overlay(94) diff --git a/config/eur/arm9/overlays/ov096/relocs.txt b/config/eur/arm9/overlays/ov096/relocs.txt index 02d0aa7b..9b8c1f15 100644 --- a/config/eur/arm9/overlays/ov096/relocs.txt +++ b/config/eur/arm9/overlays/ov096/relocs.txt @@ -186,7 +186,7 @@ from:0x0217b11c kind:load to:0x0217e090 add:0x8 module:overlay(96) from:0x0217b120 kind:load to:0x0217e334 module:overlay(96) from:0x0217b124 kind:load to:0x0217e020 module:overlay(96) from:0x0217b128 kind:load to:0x0217e04c module:overlay(96) -from:0x0217b12c kind:load to:0x020b27c8 module:overlay(0) +from:0x0217b12c kind:load to:0x020b27c0 module:overlay(0) add:0x8 from:0x0217b138 kind:arm_call_thumb to:0x02057bd4 module:overlay(0) from:0x0217b14c kind:arm_call_thumb to:0x0209a248 module:overlay(0) from:0x0217b160 kind:arm_call to:0x0207bffc module:overlay(0) diff --git a/config/jp/arm9/overlays/ov000/relocs.txt b/config/jp/arm9/overlays/ov000/relocs.txt index 446639fd..48eb954a 100644 --- a/config/jp/arm9/overlays/ov000/relocs.txt +++ b/config/jp/arm9/overlays/ov000/relocs.txt @@ -4708,7 +4708,7 @@ from:0x02085b36 kind:thumb_call to:0x02088990 module:overlay(0) from:0x02085bec kind:thumb_call_arm to:0x020871d4 module:overlay(0) from:0x02085bfa kind:thumb_call_arm to:0x020871d4 module:overlay(0) from:0x02085c18 kind:load to:0x020b4250 module:overlay(0) -from:0x02085c1c kind:load to:0x020b3fc8 module:overlay(0) +from:0x02085c1c kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x02085c20 kind:load to:0x020accdc module:overlay(0) from:0x02085c24 kind:load to:0x027e09a4 module:dtcm from:0x02085c44 kind:thumb_call_arm to:0x020804a0 module:overlay(0) diff --git a/config/jp/arm9/overlays/ov000/symbols.txt b/config/jp/arm9/overlays/ov000/symbols.txt index 5e49b683..72b3f85b 100644 --- a/config/jp/arm9/overlays/ov000/symbols.txt +++ b/config/jp/arm9/overlays/ov000/symbols.txt @@ -1280,7 +1280,7 @@ func_ov000_0207a128 kind:function(arm,size=0x34) addr:0x0207a128 func_ov000_0207a15c kind:function(arm,size=0x48) addr:0x0207a15c func_ov000_0207a1a4 kind:function(arm,size=0x24) addr:0x0207a1a4 func_ov000_0207a1c8 kind:function(arm,size=0x18) addr:0x0207a1c8 -func_ov000_0207a1e0 kind:function(arm,size=0x10) addr:0x0207a1e0 +_ZN21UnkStruct_027e09bc_0C19func_ov000_0207a1e0Ei kind:function(arm,size=0x10) addr:0x0207a1e0 func_ov000_0207a1f0 kind:function(arm,size=0x18) addr:0x0207a1f0 func_ov000_0207a208 kind:function(arm,size=0x38) addr:0x0207a208 func_ov000_0207a240 kind:function(arm,size=0x1c) addr:0x0207a240 @@ -1410,8 +1410,8 @@ func_ov000_0207d3b4 kind:function(arm,size=0x88) addr:0x0207d3b4 func_ov000_0207d43c kind:function(arm,size=0x260) addr:0x0207d43c func_ov000_0207d69c kind:function(arm,size=0x4) addr:0x0207d69c _ZN19func_ov000_0207d6a0D0Ev kind:function(arm,size=0x14) addr:0x0207d6a0 -_ZN24UnkStruct_ov031_Items_00D2Ev kind:function(arm,size=0x4) addr:0x0207d6b4 -_ZN26UnkStruct_027e0ce0_38_Base8vfunc_08Ev kind:function(arm,size=0x8) addr:0x0207d6b8 +_ZN29UnkStruct_ov031_Items_00_BaseD2Ev kind:function(arm,size=0x4) addr:0x0207d6b4 +_ZN26UnkStruct_027e0ce0_38_Base8vfunc_08EPK24UnkStruct_ov031_020f3310 kind:function(arm,size=0x8) addr:0x0207d6b8 _ZN26UnkStruct_027e0ce0_38_Base8vfunc_0CEPK24UnkStruct_ov031_020e54d4i kind:function(arm,size=0x8) addr:0x0207d6c0 _ZN26UnkStruct_027e0ce0_38_Base8vfunc_10Ev kind:function(arm,size=0x8) addr:0x0207d6c8 _ZN17MapObject_10_BaseC2Ev kind:function(arm,size=0x30) addr:0x0207d6d0 @@ -1458,18 +1458,18 @@ func_ov000_0207f31c kind:function(arm,size=0x24) addr:0x0207f31c func_ov000_0207f340 kind:function(arm,size=0x210) addr:0x0207f340 func_ov000_0207f550 kind:function(arm,size=0xc0) addr:0x0207f550 func_ov000_0207f610 kind:function(arm,size=0x30) addr:0x0207f610 -func_ov000_0207f640 kind:function(arm,size=0xd8) addr:0x0207f640 +_ZN5Actor19func_ov000_0207df88EP8Cylinderi kind:function(arm,size=0xd8) addr:0x0207f640 func_ov000_0207f718 kind:function(arm,size=0x68) addr:0x0207f718 func_ov000_0207f780 kind:function(arm,size=0xbc) addr:0x0207f780 func_ov000_0207f83c kind:function(arm,size=0x58) addr:0x0207f83c func_ov000_0207f894 kind:function(arm,size=0x30) addr:0x0207f894 func_ov000_0207f8c4 kind:function(arm,size=0x34) addr:0x0207f8c4 -func_ov000_0207f8f8 kind:function(arm,size=0x14) addr:0x0207f8f8 +_ZN18UnkStruct_027e09c019func_ov000_0207e240EP15ActorUnkSCCN_B8 kind:function(arm,size=0x14) addr:0x0207f8f8 func_ov000_0207f90c kind:function(arm,size=0x14) addr:0x0207f90c func_ov000_0207f920 kind:function(arm,size=0x2c) addr:0x0207f920 _ZN5Actor19func_ov000_0207e294EP8Cylinder kind:function(arm,size=0x118) addr:0x0207f94c func_ov000_0207fa64 kind:function(arm,size=0xac) addr:0x0207fa64 -func_ov000_0207fb10 kind:function(arm,size=0x84) addr:0x0207fb10 +_ZN18UnkStruct_027e09c019func_ov000_0207e458EiiP7VecFx32iS1_8ActorRef kind:function(arm,size=0x84) addr:0x0207fb10 func_ov000_0207fb94 kind:function(arm,size=0x84) addr:0x0207fb94 func_ov000_0207fc18 kind:function(arm,size=0x2c) addr:0x0207fc18 _ZN18UnkStruct_027e09c019func_ov000_0207e58cE8ActorRefihP24UnkStruct_ov031_Items_01 kind:function(arm,size=0xa4) addr:0x0207fc44 @@ -1487,8 +1487,8 @@ func_ov000_020801f8 kind:function(arm,size=0x4c) addr:0x020801f8 func_ov000_02080244 kind:function(arm,size=0x68) addr:0x02080244 func_ov000_020802ac kind:function(arm,size=0x74) addr:0x020802ac func_ov000_02080320 kind:function(arm,size=0x20) addr:0x02080320 -func_ov000_02080340 kind:function(arm,size=0x20) addr:0x02080340 -_ZN19func_ov000_02080360D1Ev kind:function(arm,size=0x30) addr:0x02080360 +_ZN15ActorUnkSCCN_B8C1Ev kind:function(arm,size=0x20) addr:0x02080340 +_ZN15ActorUnkSCCN_B8D1Ev kind:function(arm,size=0x30) addr:0x02080360 _ZN19func_ov000_02080390D0Ev kind:function(arm,size=0x38) addr:0x02080390 _ZN19func_ov000_020803c8D2Ev kind:function(arm,size=0x30) addr:0x020803c8 func_ov000_020803f8 kind:function(arm,size=0x44) addr:0x020803f8 @@ -1553,7 +1553,7 @@ func_ov000_02080068 kind:function(arm,size=0x18) addr:0x02081720 func_ov000_02080080 kind:function(arm,size=0x18) addr:0x02081738 func_ov000_02081750 kind:function(arm,size=0xc8) addr:0x02081750 func_ov000_02081818 kind:function(arm,size=0x20) addr:0x02081818 -_ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_02080180EPv kind:function(arm,size=0x10) addr:0x02081838 +_ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_02080180EP8Vec2bCpp kind:function(arm,size=0x10) addr:0x02081838 func_ov000_02081848 kind:function(arm,size=0x20) addr:0x02081848 _ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_020801b0EP8Vec2bCppii kind:function(arm,size=0x60) addr:0x02081868 func_ov000_020818c8 kind:function(arm,size=0x78) addr:0x020818c8 @@ -1562,7 +1562,7 @@ _ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_020802ecEtP7VecFx32 kind:function(ar func_ov000_02081a1c kind:function(arm,size=0x88) addr:0x02081a1c _ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_020803ecEt kind:function(arm,size=0x150) addr:0x02081aa4 _ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_0208053cEt kind:function(arm,size=0xe4) addr:0x02081bf4 -func_ov000_02081cd8 kind:function(arm,size=0x38) addr:0x02081cd8 +_ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_02080620Ev kind:function(arm,size=0x38) addr:0x02081cd8 func_ov000_02081d10 kind:function(arm,size=0xd8) addr:0x02081d10 func_ov000_02081de8 kind:function(arm,size=0x64) addr:0x02081de8 func_ov000_02081e4c kind:function(arm,size=0xac) addr:0x02081e4c @@ -1570,7 +1570,7 @@ func_ov000_02081ef8 kind:function(arm,size=0x6c) addr:0x02081ef8 _ZN26UnkStruct_027e0cd8_0C_Base8vfunc_2CEv kind:function(arm,size=0x20) addr:0x02081f64 _ZN26UnkStruct_027e0cd8_0C_Base8vfunc_3CEv kind:function(arm,size=0x8) addr:0x02081f84 func_ov000_02081f8c kind:function(arm,size=0x20) addr:0x02081f8c -_ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_020808f4EPvS0_h kind:function(arm,size=0x5c) addr:0x02081fac +_ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_020808f4EPvP8Vec2bCpph kind:function(arm,size=0x5c) addr:0x02081fac func_ov000_02082008 kind:function(arm,size=0x48) addr:0x02082008 func_ov000_02082050 kind:function(arm,size=0x40) addr:0x02082050 func_ov000_02082090 kind:function(arm,size=0x6c) addr:0x02082090 @@ -1579,7 +1579,7 @@ _ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_02080a5cEP7VecFx32 kind:function(arm _ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_02080a78EP7VecFx32 kind:function(arm,size=0x18) addr:0x02082130 func_ov000_02082148 kind:function(arm,size=0x1c) addr:0x02082148 func_ov000_02082164 kind:function(arm,size=0x18) addr:0x02082164 -func_ov000_0208217c kind:function(arm,size=0x68) addr:0x0208217c +_ZN26UnkStruct_027e0cd8_0C_Base19func_ov000_0208217cEP7VecFx32i kind:function(arm,size=0x68) addr:0x0208217c func_ov000_020821e4 kind:function(arm,size=0x5c) addr:0x020821e4 func_ov000_02082240 kind:function(arm,size=0x48) addr:0x02082240 func_ov000_02082288 kind:function(arm,size=0x1c) addr:0x02082288 @@ -2332,7 +2332,7 @@ _ZN5Actor4GrabE15ActorGrabParams kind:function(arm,size=0x6c) addr:0x02099d2c _ZN5Actor4DropE15ActorGrabParamsPK7VecFx32 kind:function(arm,size=0x3c) addr:0x02099d98 _ZN5Actor19func_ov000_0209862cEi kind:function(arm,size=0x28) addr:0x02099dd4 func_ov000_02099dfc kind:function(arm,size=0x28) addr:0x02099dfc -func_ov000_02099e24 kind:function(arm,size=0x38) addr:0x02099e24 +_ZN5Actor19func_ov000_0209867cEi kind:function(arm,size=0x38) addr:0x02099e24 func_ov000_02099e5c kind:function(arm,size=0x48) addr:0x02099e5c func_ov000_02099ea4 kind:function(arm,size=0x7c) addr:0x02099ea4 func_ov000_02099f20 kind:function(arm,size=0x88) addr:0x02099f20 @@ -2489,7 +2489,7 @@ _ZN12ActorUnkEFIK8vfunc_54Ei kind:function(arm,size=0x8) addr:0x0209dab0 _ZN12ActorUnkEFIKD1Ev kind:function(arm,size=0x20) addr:0x0209dab8 _ZN12ActorUnkEFIKD0Ev kind:function(arm,size=0x28) addr:0x0209dad8 _ZN19ActorProfileUnkEFIKD1Ev kind:function(arm,size=0x14) addr:0x0209db00 -func_ov000_0209db14 kind:function(arm,size=0x24) addr:0x0209db14 +func_ov000_0209c348 kind:function(arm,size=0x24) addr:0x0209db14 func_ov000_0209db38 kind:function(arm,size=0x3c) addr:0x0209db38 _ZN16MapObjectManager19func_ov000_0209c3a8Ev kind:function(arm,size=0x40) addr:0x0209db74 _ZN16MapObjectManager19func_ov000_0209c3e8Ev kind:function(arm,size=0x5c) addr:0x0209dbb4 @@ -2675,7 +2675,7 @@ func_ov000_020a17d8 kind:function(arm,size=0xa0) addr:0x020a17d8 func_ov000_020a1878 kind:function(arm,size=0x34) addr:0x020a1878 func_ov000_020a18ac kind:function(arm,size=0x3c) addr:0x020a18ac _ZN18UnkStruct_027e0cec19func_ov000_020a0110EP22UnkStruct_PlayerGet_ec kind:function(arm,size=0x30) addr:0x020a18e8 -func_ov000_020a1918 kind:function(arm,size=0xe0) addr:0x020a1918 +_ZN18UnkStruct_027e0cec19func_ov000_020a0140EP10UnkSystem7P7VecFx32 kind:function(arm,size=0xe0) addr:0x020a1918 _ZN18UnkStruct_027e0cec19func_ov000_020a0220EPvS0_ kind:function(arm,size=0xb4) addr:0x020a19f8 _ZN22UnkStruct_PlayerGet_ecD1Ev kind:function(arm,size=0x30) addr:0x020a1aac _ZN10UnkSystem719func_ov000_020a0304Ev kind:function(arm,size=0x30) addr:0x020a1adc @@ -3530,7 +3530,7 @@ data_ov000_020b3f18 kind:data(any) addr:0x020b3f18 data_ov000_020b3f44 kind:data(any) addr:0x020b3f44 data_ov000_020b3f70 kind:data(any) addr:0x020b3f70 data_ov000_020b3f9c kind:data(any) addr:0x020b3f9c -data_ov000_020b3fc8 kind:data(any) addr:0x020b3fc8 +_ZTV24UnkStruct_ov031_Items_01 kind:data(any) addr:0x020b3fc0 data_ov000_020b3fe4 kind:data(any) addr:0x020b3fe4 data_ov000_020b4000 kind:data(any) addr:0x020b4000 data_ov000_020b401c kind:data(any) addr:0x020b401c diff --git a/config/jp/arm9/overlays/ov026/relocs.txt b/config/jp/arm9/overlays/ov026/relocs.txt index 6db46750..5463d661 100644 --- a/config/jp/arm9/overlays/ov026/relocs.txt +++ b/config/jp/arm9/overlays/ov026/relocs.txt @@ -5792,7 +5792,7 @@ from:0x02111440 kind:arm_call to:0x020fdf0c module:overlay(26) from:0x02111470 kind:arm_call to:0x021053c0 module:overlay(26) from:0x021114ac kind:arm_call to:0x021061f8 module:overlay(26) from:0x021114b8 kind:load to:0x0213971c add:0x8 module:overlay(26) -from:0x021114bc kind:load to:0x020b3fc8 module:overlay(0) +from:0x021114bc kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x02111554 kind:load to:0x02142600 module:overlay(26) from:0x02111558 kind:load to:0x021396d8 module:overlay(26) from:0x0211155c kind:load to:0x02142650 module:overlay(26) @@ -6102,7 +6102,7 @@ from:0x02113a58 kind:arm_call to:0x02099dd4 module:overlay(0) from:0x02113a7c kind:arm_call to:0x021035bc module:overlay(26) from:0x02113a88 kind:arm_call to:0x020f0468 module:overlay(26) from:0x02113a94 kind:load to:0x02139bc4 add:0x8 module:overlay(26) -from:0x02113a98 kind:load to:0x020b3fc8 module:overlay(0) +from:0x02113a98 kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x02113a9c kind:load to:0x02137fe0 module:overlay(26) from:0x02113aa0 kind:load to:0x020f5b48 module:overlay(26) from:0x02113aa4 kind:load to:0x020f60cc module:overlay(26) @@ -7791,7 +7791,7 @@ from:0x02124570 kind:arm_call to:0x02124a08 module:overlay(26) from:0x02124588 kind:arm_call to:0x02125050 module:overlay(26) from:0x021245a4 kind:load to:0x0213a858 add:0x8 module:overlay(26) from:0x021245a8 kind:load to:0x02143644 module:overlay(26) -from:0x021245b0 kind:load to:0x020b3fc8 module:overlay(0) +from:0x021245b0 kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x021245c0 kind:arm_call to:0x020804a0 module:overlay(0) from:0x021245c8 kind:arm_call to:0x0207cd78 module:overlay(0) from:0x021245d0 kind:arm_call to:0x020a1aac module:overlay(0) @@ -8011,7 +8011,7 @@ from:0x02126158 kind:load to:0x02143810 module:overlay(26) from:0x0212615c kind:load to:0x0213aa40 module:overlay(26) from:0x02126160 kind:load to:0x02137ea4 module:overlay(26) from:0x02126164 kind:load to:0x0213800c module:overlay(26) -from:0x0212616c kind:load to:0x020b3fc8 module:overlay(0) +from:0x0212616c kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x02126170 kind:load to:0x02143804 module:overlay(26) from:0x02126174 kind:load to:0x021437f0 module:overlay(26) from:0x02126180 kind:arm_call_thumb to:0x02059154 module:overlay(0) @@ -8923,7 +8923,7 @@ from:0x0212de34 kind:arm_call to:0x02103ea4 module:overlay(26) from:0x0212de40 kind:arm_call to:0x020f0468 module:overlay(26) from:0x0212de4c kind:load to:0x0213ae88 add:0x8 module:overlay(26) from:0x0212de50 kind:load to:0x0213aef8 module:overlay(26) -from:0x0212de54 kind:load to:0x020b3fc8 module:overlay(0) +from:0x0212de54 kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x0212de58 kind:load to:0x02137fe0 module:overlay(26) from:0x0212de5c kind:load to:0x020f5b48 module:overlay(26) from:0x0212de60 kind:load to:0x020f60cc module:overlay(26) diff --git a/config/jp/arm9/overlays/ov027/relocs.txt b/config/jp/arm9/overlays/ov027/relocs.txt index f9792ed9..6204c141 100644 --- a/config/jp/arm9/overlays/ov027/relocs.txt +++ b/config/jp/arm9/overlays/ov027/relocs.txt @@ -585,7 +585,7 @@ from:0x0214769c kind:arm_call to:0x0210478c module:overlay(26) from:0x021476b8 kind:arm_call to:0x021035bc module:overlay(26) from:0x021476c4 kind:arm_call to:0x020f0468 module:overlay(26) from:0x021476d0 kind:load to:0x0214b120 add:0x8 module:overlay(27) -from:0x021476d4 kind:load to:0x020b3fc8 module:overlay(0) +from:0x021476d4 kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x021476d8 kind:load to:0x0214a7a0 module:overlay(27) from:0x021476dc kind:load to:0x02147730 module:overlay(27) from:0x021476e0 kind:load to:0x021476f0 module:overlay(27) diff --git a/config/jp/arm9/overlays/ov030/relocs.txt b/config/jp/arm9/overlays/ov030/relocs.txt index 42484b1a..5dfe6eed 100644 --- a/config/jp/arm9/overlays/ov030/relocs.txt +++ b/config/jp/arm9/overlays/ov030/relocs.txt @@ -1418,7 +1418,7 @@ from:0x02150234 kind:arm_call to:0x02099dd4 module:overlay(0) from:0x02150258 kind:arm_call to:0x021035bc module:overlay(26) from:0x02150264 kind:arm_call to:0x020f0468 module:overlay(26) from:0x02150270 kind:load to:0x02154094 add:0x8 module:overlay(30) -from:0x02150274 kind:load to:0x020b3fc8 module:overlay(0) +from:0x02150274 kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x02150278 kind:load to:0x021533ec module:overlay(30) from:0x0215027c kind:load to:0x021502d0 module:overlay(30) from:0x02150280 kind:load to:0x02150290 module:overlay(30) diff --git a/config/jp/arm9/overlays/ov031/delinks.txt b/config/jp/arm9/overlays/ov031/delinks.txt index 6ecdd2ae..56bfc6fa 100644 --- a/config/jp/arm9/overlays/ov031/delinks.txt +++ b/config/jp/arm9/overlays/ov031/delinks.txt @@ -14,28 +14,32 @@ src/031_Land/Actor/ActorUnkBOMB.cpp: .ctor start:0x02114528 end:0x0211452c .bss start:0x021181a4 end:0x021181f0 -src/031_Land/Actor/ActorUnkBLST.cpp: +src/031_Land/Actor/ActorBlast.cpp: .text start:0x020e4ea0 end:0x020e5690 .init start:0x02112db8 end:0x02112e08 .ctor start:0x0211452c end:0x02114530 + .data start:0x02114ae4 end:0x02114b80 .bss start:0x021181f0 end:0x0211823c src/031_Land/Actor/ActorUnkTLKT.cpp: .text start:0x020e5ac4 end:0x020e5f70 .init start:0x02112e08 end:0x02112e58 .ctor start:0x02114530 end:0x02114534 + .data start:0x02114b80 end:0x02114c84 .bss start:0x0211823c end:0x02118288 src/031_Land/Actor/ActorItemBoomerang.cpp: .text start:0x020e5f90 end:0x020e7148 .init start:0x02112e58 end:0x02112ea8 .ctor start:0x02114534 end:0x02114538 + .data start:0x02114c84 end:0x02114d70 .bss start:0x02118288 end:0x021182d4 src/031_Land/Actor/ActorItemTornado.cpp: .text start:0x020e72b4 end:0x020e7ec4 .init start:0x02112ea8 end:0x02112f1c .ctor start:0x02114538 end:0x0211453c + .data start:0x02114d70 end:0x02114e28 .bss start:0x021182d4 end:0x02118320 src/031_Land/Actor/ActorUnkSWBM.cpp: @@ -71,15 +75,18 @@ src/031_Land/Actor/ActorHeart.cpp: .bss start:0x021185f8 end:0x02118644 src/031_Land/Actor/ActorUnkRMTG.cpp: + complete .text start:0x020f1218 end:0x020f1408 .init start:0x02113178 end:0x021131c8 .ctor start:0x02114550 end:0x02114554 + .data start:0x02115c0c end:0x02115c8c .bss start:0x02118644 end:0x0211872c src/031_Land/Actor/ActorUnkSCCN.cpp: .text start:0x020f1408 end:0x020f16d0 .init start:0x021131c8 end:0x02113218 .ctor start:0x02114554 end:0x02114558 + .data start:0x02115c8c end:0x02115d34 .bss start:0x0211872c end:0x02118778 src/031_Land/Actor/ActorPot.cpp: @@ -127,6 +134,7 @@ src/031_Land/Actor/ActorUnkSWCH.cpp: .text start:0x020f94c8 end:0x020f9620 .init start:0x0211344c end:0x0211349c .ctor start:0x02114574 end:0x02114578 + .data start:0x0211658c end:0x0211660c .bss start:0x021189f4 end:0x02118a40 src/031_Land/Actor/ActorUnkSWON.cpp: @@ -254,10 +262,11 @@ src/031_Land/MapObject/MapObjectUnkSTIR.cpp: .ctor start:0x021145bc end:0x021145c0 .bss start:0x02119514 end:0x02119608 -src/031_Land/MapObject/MapObjectUnkGRSS.cpp: +src/031_Land/MapObject/MapObjectGrass.cpp: .text start:0x02102d54 end:0x02103724 .init start:0x02113b84 end:0x02113c14 .ctor start:0x021145c0 end:0x021145c4 + .data start:0x02117390 end:0x0211741c .bss start:0x02119608 end:0x02119758 src/031_Land/MapObject/MapObjectUnkSWHT.cpp: @@ -333,12 +342,15 @@ src/031_Land/MapObject/MapObjectUnkSKDI.cpp: .text start:0x02107d5c end:0x02108abc .init start:0x02114018 end:0x02114068 .ctor start:0x021145f0 end:0x021145f4 + .data start:0x021179ec end:0x02117a54 .bss start:0x02119fbc end:0x0211a0a0 src/031_Land/Actor/ActorUnkSKDO.cpp: + complete .text start:0x02108abc end:0x02108c74 .init start:0x02114068 end:0x021140b8 .ctor start:0x021145f4 end:0x021145f8 + .data start:0x02117a54 end:0x02117ae4 .bss start:0x0211a0a0 end:0x0211a0ec src/031_Land/MapObject/MapObjectUnkCRWL.cpp: diff --git a/config/jp/arm9/overlays/ov031/relocs.txt b/config/jp/arm9/overlays/ov031/relocs.txt index 203085d6..cb8302fc 100644 --- a/config/jp/arm9/overlays/ov031/relocs.txt +++ b/config/jp/arm9/overlays/ov031/relocs.txt @@ -1147,8 +1147,8 @@ from:0x020e50a0 kind:load to:0x027e0ce4 module:dtcm from:0x020e50a4 kind:load to:0x027e0ce8 module:dtcm from:0x020e50b4 kind:arm_call to:0x02099b30 module:overlay(0) from:0x020e511c kind:load to:0x02114b24 add:0x8 module:overlay(31) -from:0x020e5120 kind:load to:0x020b3fc8 module:overlay(0) -from:0x020e5124 kind:load to:0x02114aec module:overlay(31) +from:0x020e5120 kind:load to:0x020b3fc0 module:overlay(0) add:0x8 +from:0x020e5124 kind:load to:0x02114ae4 module:overlay(31) add:0x8 from:0x020e5130 kind:arm_call to:0x0207d6b4 module:overlay(0) from:0x020e5178 kind:arm_call to:0x01ffb6e4 module:itcm from:0x020e51a0 kind:arm_call to:0x01ffb6e4 module:itcm @@ -1237,16 +1237,16 @@ from:0x020e5b00 kind:arm_call to:0x02098e24 module:overlay(0) from:0x020e5b18 kind:load to:0x02114bec add:0x8 module:overlay(31) from:0x020e5b24 kind:arm_call to:0x020e578c module:overlay(31) from:0x020e5b48 kind:load to:0x02114c10 add:0x8 module:overlay(31) -from:0x020e5b4c kind:load to:0x02114c8c module:overlay(31) +from:0x020e5b4c kind:load to:0x02114c84 module:overlay(31) add:0x8 from:0x020e5b74 kind:arm_call to:0x020e5f00 module:overlay(31) from:0x020e5b7c kind:arm_call to:0x02099c30 module:overlay(0) from:0x020e5b88 kind:load to:0x02114c10 add:0x8 module:overlay(31) -from:0x020e5b8c kind:load to:0x02114c8c module:overlay(31) +from:0x020e5b8c kind:load to:0x02114c84 module:overlay(31) add:0x8 from:0x020e5bb4 kind:arm_call to:0x020e5f00 module:overlay(31) from:0x020e5bbc kind:arm_call to:0x02099c30 module:overlay(0) from:0x020e5bc4 kind:arm_call to:0x02011ff4 module:main from:0x020e5bd0 kind:load to:0x02114c10 add:0x8 module:overlay(31) -from:0x020e5bd4 kind:load to:0x02114c8c module:overlay(31) +from:0x020e5bd4 kind:load to:0x02114c84 module:overlay(31) add:0x8 from:0x020e5c1c kind:arm_call to:0x020e5c60 module:overlay(31) from:0x020e5c38 kind:arm_call to:0x020749a4 module:overlay(0) from:0x020e5c5c kind:load to:0x027e09b8 module:dtcm @@ -1447,8 +1447,8 @@ from:0x020e74ec kind:load to:0x02114dcc add:0x8 module:overlay(31) from:0x020e74f0 kind:load to:0x021127f8 module:overlay(31) from:0x020e74f4 kind:load to:0x027e0ce0 module:dtcm from:0x020e74f8 kind:load to:0x02114d94 module:overlay(31) -from:0x020e74fc kind:load to:0x02114d78 module:overlay(31) -from:0x020e7500 kind:load to:0x020b3fc8 module:overlay(0) +from:0x020e74fc kind:load to:0x02114d70 module:overlay(31) add:0x8 +from:0x020e7500 kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x020e7504 kind:load to:0x020a1aac module:overlay(0) from:0x020e7508 kind:load to:0x020e70f0 module:overlay(31) from:0x020e7514 kind:arm_call to:0x0207d6b4 module:overlay(0) @@ -1528,7 +1528,7 @@ from:0x020e8014 kind:arm_call to:0x020f5b40 module:overlay(31) from:0x020e8098 kind:arm_call to:0x02189168 module:overlay(105) from:0x020e80a0 kind:arm_call to:0x021894dc module:overlay(105) from:0x020e80cc kind:load to:0x02114e44 add:0x8 module:overlay(31) -from:0x020e80d0 kind:load to:0x02114e30 module:overlay(31) +from:0x020e80d0 kind:load to:0x02114e28 module:overlay(31) add:0x8 from:0x020e80e0 kind:arm_call to:0x0207d6b4 module:overlay(0) from:0x020e80f4 kind:arm_call to:0x0207cd78 module:overlay(0) from:0x020e8114 kind:arm_call to:0x020e81c8 module:overlay(31) @@ -2603,7 +2603,7 @@ from:0x020f1fd0 kind:arm_call to:0x01ffe6c4 module:itcm from:0x020f1fe0 kind:arm_call to:0x0207f640 module:overlay(0) from:0x020f1fec kind:arm_call to:0x0207f94c module:overlay(0) from:0x020f2020 kind:arm_call to:0x0207d6b4 module:overlay(0) -from:0x020f2030 kind:load to:0x02115d3c module:overlay(31) +from:0x020f2030 kind:load to:0x02115d34 module:overlay(31) add:0x8 from:0x020f203c kind:arm_call to:0x0207d6b4 module:overlay(0) from:0x020f206c kind:arm_call to:0x020f213c module:overlay(31) from:0x020f2074 kind:arm_call to:0x020f207c module:overlay(31) @@ -4487,13 +4487,13 @@ from:0x02102d70 kind:arm_call to:0x02011f3c module:main from:0x02102d7c kind:arm_call to:0x02102e70 module:overlay(31) from:0x02102d94 kind:arm_call to:0x0209e16c module:overlay(0) from:0x02102da4 kind:arm_call to:0x0207d6d0 module:overlay(0) -from:0x02102e10 kind:load to:0x02117398 module:overlay(31) +from:0x02102e10 kind:load to:0x02117390 module:overlay(31) add:0x8 from:0x02102e14 kind:load to:0x02114818 module:overlay(31) -from:0x02102e18 kind:load to:0x021173b4 module:overlay(31) +from:0x02102e18 kind:load to:0x021173ac module:overlay(31) add:0x8 from:0x02102e30 kind:arm_call to:0x0209e7a4 module:overlay(0) -from:0x02102e6c kind:load to:0x021173d0 module:overlay(31) +from:0x02102e6c kind:load to:0x021173c8 module:overlay(31) add:0x8 from:0x02102e78 kind:arm_call to:0x0209e7a4 module:overlay(0) -from:0x02102eb4 kind:load to:0x021173d0 module:overlay(31) +from:0x02102eb4 kind:load to:0x021173c8 module:overlay(31) add:0x8 from:0x02102f10 kind:arm_call to:0x0203aec8 module:main from:0x02102f24 kind:arm_call to:0x0203aa60 module:main from:0x02102f30 kind:arm_call to:0x0203af44 module:main @@ -4552,9 +4552,9 @@ from:0x02103778 kind:arm_call to:0x02011f3c module:main from:0x02103784 kind:arm_call to:0x0210381c module:overlay(31) from:0x0210379c kind:arm_call to:0x0209e16c module:overlay(0) from:0x021037ac kind:arm_call to:0x0207d6d0 module:overlay(0) -from:0x02103804 kind:load to:0x02117398 module:overlay(31) +from:0x02103804 kind:load to:0x02117390 module:overlay(31) add:0x8 from:0x0210380c kind:load to:0x02114818 module:overlay(31) -from:0x02103810 kind:load to:0x02117424 module:overlay(31) +from:0x02103810 kind:load to:0x0211741c module:overlay(31) add:0x8 from:0x02103824 kind:arm_call to:0x0209e7a4 module:overlay(0) from:0x0210383c kind:arm_call_thumb to:0x020590f0 module:overlay(0) from:0x0210384c kind:arm_call_thumb to:0x02058d0c module:overlay(0) @@ -4951,7 +4951,7 @@ from:0x02106ca8 kind:arm_call to:0x02011f3c module:main from:0x02106cb4 kind:arm_call to:0x02106d48 module:overlay(31) from:0x02106ccc kind:arm_call to:0x0209e16c module:overlay(0) from:0x02106cdc kind:arm_call to:0x0207d6d0 module:overlay(0) -from:0x02106d34 kind:load to:0x02117398 module:overlay(31) +from:0x02106d34 kind:load to:0x02117390 module:overlay(31) add:0x8 from:0x02106d38 kind:load to:0x02114818 module:overlay(31) from:0x02106d3c kind:load to:0x02117860 module:overlay(31) from:0x02106d50 kind:arm_call to:0x0209eec4 module:overlay(0) @@ -5070,12 +5070,12 @@ from:0x02107d64 kind:load to:0x02119fcc module:overlay(31) from:0x02107d78 kind:arm_call to:0x02011f3c module:main from:0x02107d84 kind:arm_call to:0x02107dd4 module:overlay(31) from:0x02107d9c kind:arm_call to:0x0209e16c module:overlay(0) -from:0x02107dcc kind:load to:0x021179f4 module:overlay(31) +from:0x02107dcc kind:load to:0x021179ec module:overlay(31) add:0x8 from:0x02107de0 kind:arm_call to:0x0209e7a4 module:overlay(0) from:0x02107e60 kind:arm_call to:0x0203e690 module:main from:0x02107e94 kind:arm_call to:0x020da790 module:overlay(31) from:0x02107e9c kind:arm_call to:0x0207d6d0 module:overlay(0) -from:0x02107ed4 kind:load to:0x02117a10 module:overlay(31) +from:0x02107ed4 kind:load to:0x02117a08 module:overlay(31) add:0x8 from:0x02107ed8 kind:load to:0x02119fcc module:overlay(31) from:0x02107edc kind:load to:0x020b3160 add:0x8 module:overlay(0) from:0x02107ee0 kind:load to:0x020e31c8 module:overlay(31) @@ -5165,7 +5165,7 @@ from:0x02108b10 kind:load to:0x02117a60 add:0x8 module:overlay(31) from:0x02108b1c kind:arm_call to:0x02099b30 module:overlay(0) from:0x02108b38 kind:load to:0x02117a84 add:0x8 module:overlay(31) from:0x02108b88 kind:arm_call to:0x01fff520 module:itcm -from:0x02108bac kind:load to:0x02117a5c module:overlay(31) +from:0x02108bac kind:load to:0x02117a54 module:overlay(31) add:0x8 from:0x02108bb0 kind:load to:0x027e0ce8 module:dtcm from:0x02108be4 kind:arm_call to:0x0209a230 module:overlay(0) from:0x02108c00 kind:arm_call to:0x0209db14 module:overlay(0) @@ -5645,7 +5645,7 @@ from:0x0210d10c kind:arm_call to:0x02011f3c module:main from:0x0210d118 kind:arm_call to:0x0210d1a8 module:overlay(31) from:0x0210d130 kind:arm_call to:0x0209e16c module:overlay(0) from:0x0210d140 kind:arm_call to:0x0207d6d0 module:overlay(0) -from:0x0210d194 kind:load to:0x02117398 module:overlay(31) +from:0x0210d194 kind:load to:0x02117390 module:overlay(31) add:0x8 from:0x0210d19c kind:load to:0x02114818 module:overlay(31) from:0x0210d1a0 kind:load to:0x02117e08 module:overlay(31) from:0x0210d1b0 kind:arm_call to:0x0209e7a4 module:overlay(0) @@ -5713,7 +5713,7 @@ from:0x0210d838 kind:arm_call to:0x02011f3c module:main from:0x0210d844 kind:arm_call to:0x0210d8ec module:overlay(31) from:0x0210d85c kind:arm_call to:0x0209e16c module:overlay(0) from:0x0210d86c kind:arm_call to:0x0207d6d0 module:overlay(0) -from:0x0210d8d4 kind:load to:0x02117398 module:overlay(31) +from:0x0210d8d4 kind:load to:0x02117390 module:overlay(31) add:0x8 from:0x0210d8d8 kind:load to:0x02114818 module:overlay(31) from:0x0210d8dc kind:load to:0x02117eb8 module:overlay(31) from:0x0210d8f4 kind:arm_call to:0x0209e7a4 module:overlay(0) diff --git a/config/jp/arm9/overlays/ov031/symbols.txt b/config/jp/arm9/overlays/ov031/symbols.txt index 58287885..96ae261c 100644 --- a/config/jp/arm9/overlays/ov031/symbols.txt +++ b/config/jp/arm9/overlays/ov031/symbols.txt @@ -312,7 +312,7 @@ _ZN12ActorUnkBOMB19func_ov031_020e1540Ev kind:function(arm,size=0x90) addr:0x020 _ZN12ActorUnkBOMB19func_ov031_020e15d0Ev kind:function(arm,size=0x64) addr:0x020e2fa0 _ZN12ActorUnkBOMB19func_ov031_020e1634Ev kind:function(arm,size=0x58) addr:0x020e3004 _ZN12ActorUnkBOMBC1Ev kind:function(arm,size=0x16c) addr:0x020e305c -_ZN12ActorUnkBOMB19func_ov031_020e17f4Ev kind:function(arm,size=0x14) addr:0x020e31c8 +_ZN16ActorUnkBOMB_unkD1Ev kind:function(arm,size=0x14) addr:0x020e31c8 _ZN12ActorUnkBOMB19func_ov031_020e1808Ev kind:function(arm,size=0x14) addr:0x020e31dc _ZN12ActorUnkBOMB19func_ov031_020e181cEv kind:function(arm,size=0x84) addr:0x020e31f0 _ZN12ActorUnkBOMB19func_ov031_020e18a0Ev kind:function(arm,size=0x24) addr:0x020e3274 @@ -364,27 +364,27 @@ _ZN12ActorUnkBOMB19func_ov031_020e328cEv kind:function(arm,size=0x84) addr:0x020 _ZN12ActorUnkBOMB19func_ov031_020e3310Ev kind:function(arm,size=0x30) addr:0x020e4cfc _ZN12ActorUnkBOMB19func_ov031_020e3340Ev kind:function(arm,size=0x3c) addr:0x020e4d2c _ZN12ActorUnkBOMB19func_ov031_020e337cEv kind:function(arm,size=0x30) addr:0x020e4d68 -_ZN12ActorUnkBOMB19func_ov031_020e33acEv kind:function(arm,size=0x14) addr:0x020e4d98 +_ZN16ActorUnkBOMB_unkC1Ev kind:function(arm,size=0x14) addr:0x020e4d98 _ZN12ActorUnkBOMB19func_ov031_020e33c0Ev kind:function(arm,size=0x1c) addr:0x020e4dac _ZN12ActorUnkBOMB19func_ov031_020e33dcEv kind:function(arm,size=0x1c) addr:0x020e4dc8 _ZN12ActorUnkBOMB19func_ov031_020e33f8Ev kind:function(arm,size=0x50) addr:0x020e4de4 _ZN12ActorUnkBOMB19func_ov031_020e3448Ev kind:function(arm,size=0x58) addr:0x020e4e34 _ZN19ActorProfileUnkBOMBD1Ev kind:function(arm,size=0x14) addr:0x020e4e8c -_ZN19ActorProfileUnkBLST10GetProfileEv kind:function(arm,size=0xc) addr:0x020e4ea0 -_ZN19ActorProfileUnkBLST6CreateEv kind:function(arm,size=0x24) addr:0x020e4eac -_ZN19ActorProfileUnkBLSTC1Ev kind:function(arm,size=0x38) addr:0x020e4ed0 -_ZN12ActorUnkBLST19func_ov031_020e351cEv kind:function(arm,size=0x1a4) addr:0x020e4f08 -_ZN12ActorUnkBLSTC1Ev kind:function(arm,size=0x7c) addr:0x020e50ac -_ZN12ActorUnkBLST19func_ov031_020e373cEv kind:function(arm,size=0x14) addr:0x020e5128 -_ZN12ActorUnkBLST19func_ov031_020e3750Ev kind:function(arm,size=0x274) addr:0x020e513c -_ZN12ActorUnkBLST19func_ov031_020e39c4Ev kind:function(arm,size=0x180) addr:0x020e53b0 -_ZN12ActorUnkBLST19func_ov031_020e3b44Ev kind:function(arm,size=0x50) addr:0x020e5530 -_ZN12ActorUnkBLST19func_ov031_020e3b94Ev kind:function(arm,size=0x8) addr:0x020e5580 -_ZN12ActorUnkBLST19func_ov031_020e3b9cEv kind:function(arm,size=0x80) addr:0x020e5588 -_ZN12ActorUnkBLSTD0Ev kind:function(arm,size=0x1c) addr:0x020e5608 -_ZN12ActorUnkBLSTD1Ev kind:function(arm,size=0x28) addr:0x020e5624 -_ZN12ActorUnkBLST19func_ov031_020e3c60Ev kind:function(arm,size=0x30) addr:0x020e564c -_ZN19ActorProfileUnkBLSTD1Ev kind:function(arm,size=0x14) addr:0x020e567c +_ZN17ActorProfileBlast10GetProfileEv kind:function(arm,size=0xc) addr:0x020e4ea0 +_ZN17ActorProfileBlast6CreateEv kind:function(arm,size=0x24) addr:0x020e4eac +_ZN17ActorProfileBlastC1Ev kind:function(arm,size=0x38) addr:0x020e4ed0 +_ZN13ActorBlast_E88vfunc_0CEPK24UnkStruct_ov031_020e54d4i kind:function(arm,size=0x1a4) addr:0x020e4f08 +_ZN10ActorBlastC1Ev kind:function(arm,size=0x7c) addr:0x020e50ac +_ZN13ActorBlast_E8D1Ev kind:function(arm,size=0x14) addr:0x020e5128 +_ZN10ActorBlast8vfunc_18Ei kind:function(arm,size=0x274) addr:0x020e513c +_ZN10ActorBlast8vfunc_20Ev kind:function(arm,size=0x180) addr:0x020e53b0 +_ZN10ActorBlast8vfunc_24Ev kind:function(arm,size=0x50) addr:0x020e5530 +_ZN10ActorBlast19func_ov031_020e3b94Ev kind:function(arm,size=0x8) addr:0x020e5580 +_ZN10ActorBlast19func_ov031_020e3b9cEss kind:function(arm,size=0x80) addr:0x020e5588 +_ZN13ActorBlast_E8D0Ev kind:function(arm,size=0x1c) addr:0x020e5608 +_ZN10ActorBlastD1Ev kind:function(arm,size=0x28) addr:0x020e5624 +_ZN10ActorBlastD0Ev kind:function(arm,size=0x30) addr:0x020e564c +_ZN17ActorProfileBlastD1Ev kind:function(arm,size=0x14) addr:0x020e567c func_ov031_020e5690 kind:function(arm,size=0x24) addr:0x020e5690 func_ov031_020e56b4 kind:function(arm,size=0x48) addr:0x020e56b4 func_ov031_020e56fc kind:function(arm,size=0x90) addr:0x020e56fc @@ -410,12 +410,12 @@ _ZN19ActorProfileUnkTLKTC1Ev kind:function(arm,size=0x28) addr:0x020e5af4 _ZN12ActorUnkTLKTC1Ev kind:function(arm,size=0x34) addr:0x020e5b1c _ZN12ActorUnkTLKTD1Ev kind:function(arm,size=0x40) addr:0x020e5b50 _ZN12ActorUnkTLKTD0Ev kind:function(arm,size=0x48) addr:0x020e5b90 -_ZN12ActorUnkTLKT19func_ov031_020e41ecEv kind:function(arm,size=0x4c) addr:0x020e5bd8 -_ZN12ActorUnkTLKT19func_ov031_020e4238Ev kind:function(arm,size=0x3c) addr:0x020e5c24 +_ZN12ActorUnkTLKT8vfunc_24Ev kind:function(arm,size=0x4c) addr:0x020e5bd8 +_ZN12ActorUnkTLKT8vfunc_58Ev kind:function(arm,size=0x3c) addr:0x020e5c24 _ZN12ActorUnkTLKT19func_ov031_020e4274Ev kind:function(arm,size=0x38) addr:0x020e5c60 -_ZN12ActorUnkTLKT19func_ov031_020e42acEv kind:function(arm,size=0x44) addr:0x020e5c98 -_ZN12ActorUnkTLKT19func_ov031_020e42f0Ev kind:function(arm,size=0x30) addr:0x020e5cdc -_ZN12ActorUnkTLKT19func_ov031_020e4320Ev kind:function(arm,size=0x1f4) addr:0x020e5d0c +_ZN12ActorUnkTLKT8vfunc_64Ev kind:function(arm,size=0x44) addr:0x020e5c98 +_ZN12ActorUnkTLKT8vfunc_68Ev kind:function(arm,size=0x30) addr:0x020e5cdc +_ZN12ActorUnkTLKT8vfunc_60Es kind:function(arm,size=0x1f4) addr:0x020e5d0c _ZN12ActorUnkTLKT19func_ov031_020e4514Ev kind:function(arm,size=0x5c) addr:0x020e5f00 _ZN19ActorProfileUnkTLKTD1Ev kind:function(arm,size=0x14) addr:0x020e5f5c func_ov031_020e5f70 kind:function(arm,size=0x10) addr:0x020e5f70 @@ -766,9 +766,9 @@ _ZN19ActorProfileUnkRMTG10GetProfileEv kind:function(arm,size=0xc) addr:0x020f12 _ZN19ActorProfileUnkRMTG6CreateEv kind:function(arm,size=0x24) addr:0x020f1224 _ZN19ActorProfileUnkRMTGC1Ev kind:function(arm,size=0x28) addr:0x020f1248 _ZN12ActorUnkRMTGC1Ev kind:function(arm,size=0x2c) addr:0x020f1270 -_ZN12ActorUnkRMTG19func_ov031_020ef8a0Ev kind:function(arm,size=0xb8) addr:0x020f129c -_ZN12ActorUnkRMTG19func_ov031_020ef958Ev kind:function(arm,size=0x38) addr:0x020f1354 -_ZN12ActorUnkRMTG19func_ov031_020ef990Ev kind:function(arm,size=0x20) addr:0x020f138c +_ZN12ActorUnkRMTG8vfunc_18Ei kind:function(arm,size=0xb8) addr:0x020f129c +_ZN12ActorUnkRMTG8vfunc_1CEv kind:function(arm,size=0x38) addr:0x020f1354 +_ZN12ActorUnkRMTG8vfunc_2CEi kind:function(arm,size=0x20) addr:0x020f138c _ZN12ActorUnkRMTGD1Ev kind:function(arm,size=0x20) addr:0x020f13ac _ZN12ActorUnkRMTGD0Ev kind:function(arm,size=0x28) addr:0x020f13cc _ZN19ActorProfileUnkRMTGD1Ev kind:function(arm,size=0x14) addr:0x020f13f4 @@ -776,7 +776,7 @@ _ZN19ActorProfileUnkSCCN10GetProfileEv kind:function(arm,size=0xc) addr:0x020f14 _ZN19ActorProfileUnkSCCN6CreateEv kind:function(arm,size=0x24) addr:0x020f1414 _ZN19ActorProfileUnkSCCNC1Ev kind:function(arm,size=0x28) addr:0x020f1438 _ZN12ActorUnkSCCNC1Ev kind:function(arm,size=0x3c) addr:0x020f1460 -_ZN12ActorUnkSCCN19func_ov031_020f149cEv kind:function(arm,size=0x1d8) addr:0x020f149c +_ZN12ActorUnkSCCN8vfunc_18Ei kind:function(arm,size=0x1d8) addr:0x020f149c _ZN12ActorUnkSCCND1Ev kind:function(arm,size=0x20) addr:0x020f1674 _ZN12ActorUnkSCCND0Ev kind:function(arm,size=0x28) addr:0x020f1694 _ZN19ActorProfileUnkSCCND1Ev kind:function(arm,size=0x14) addr:0x020f16bc @@ -1069,9 +1069,9 @@ _ZN19ActorProfileUnkSWCH10GetProfileEv kind:function(arm,size=0xc) addr:0x020f94 _ZN19ActorProfileUnkSWCH6CreateEv kind:function(arm,size=0x24) addr:0x020f94d4 _ZN19ActorProfileUnkSWCHC1Ev kind:function(arm,size=0x28) addr:0x020f94f8 _ZN12ActorUnkSWCHC1Ev kind:function(arm,size=0x30) addr:0x020f9520 -_ZN12ActorUnkSWCH19func_ov031_020f7b0cEv kind:function(arm,size=0x14) addr:0x020f9550 -_ZN12ActorUnkSWCH19func_ov031_020f7b20Ev kind:function(arm,size=0x68) addr:0x020f9564 -_ZN12ActorUnkSWCH19func_ov031_020f7b88Ev kind:function(arm,size=0x10) addr:0x020f95cc +_ZN12ActorUnkSWCH8vfunc_18Ei kind:function(arm,size=0x14) addr:0x020f9550 +_ZN12ActorUnkSWCH8vfunc_20Ev kind:function(arm,size=0x68) addr:0x020f9564 +_ZN12ActorUnkSWCH8vfunc_2CEi kind:function(arm,size=0x10) addr:0x020f95cc _ZN12ActorUnkSWCHD1Ev kind:function(arm,size=0x14) addr:0x020f95dc _ZN12ActorUnkSWCHD0Ev kind:function(arm,size=0x1c) addr:0x020f95f0 _ZN19ActorProfileUnkSWCHD1Ev kind:function(arm,size=0x14) addr:0x020f960c @@ -1283,7 +1283,7 @@ _ZN17MapObjectDoorBase8vfunc_08Ev kind:function(arm,size=0x400) addr:0x020fda9c _ZN17MapObjectDoorBase8vfunc_40Ev kind:function(arm,size=0x4) addr:0x020fde9c _ZN17MapObjectDoorBase8vfunc_0CEv kind:function(arm,size=0x64) addr:0x020fdea0 _ZN17MapObjectDoorBase8vfunc_60Ev kind:function(arm,size=0xfc) addr:0x020fdf04 -_ZN17MapObjectDoorBase8vfunc_5CEii kind:function(arm,size=0x598) addr:0x020fe000 +_ZN17MapObjectDoorBase8vfunc_5CEsi kind:function(arm,size=0x598) addr:0x020fe000 _ZN17MapObjectDoorBase8vfunc_48Ev kind:function(arm,size=0x4) addr:0x020fe598 _ZN17MapObjectDoorBase8vfunc_64Ev kind:function(arm,size=0xc) addr:0x020fe59c _ZN17MapObjectDoorBase8vfunc_68Ev kind:function(arm,size=0x10) addr:0x020fe5a8 @@ -1321,7 +1321,7 @@ _ZN24MapObjectDoorDangerSpawn9vfunc2_04Ev kind:function(arm,size=0xc) addr:0x020 _ZN24MapObjectDoorDangerSpawn9vfunc2_08Ev kind:function(arm,size=0x70) addr:0x020feeac _ZN24MapObjectDoorDangerSpawn8vfunc_08Ev kind:function(arm,size=0x374) addr:0x020fef1c _ZN24MapObjectDoorDangerSpawn8vfunc_0CEv kind:function(arm,size=0x2c) addr:0x020ff290 -_ZN24MapObjectDoorDangerSpawn8vfunc_5CEii kind:function(arm,size=0x3f4) addr:0x020ff2bc +_ZN24MapObjectDoorDangerSpawn8vfunc_5CEsi kind:function(arm,size=0x3f4) addr:0x020ff2bc _ZN24MapObjectDoorDangerSpawn8vfunc_64Ev kind:function(arm,size=0xbc) addr:0x020ff6b0 _ZN24MapObjectDoorDangerSpawn8vfunc_68Ev kind:function(arm,size=0xac) addr:0x020ff76c _ZN24MapObjectDoorDangerSpawn8vfunc_6CEv kind:function(arm,size=0x158) addr:0x020ff818 @@ -1352,7 +1352,7 @@ _ZN16MapObjectDoorKey8vfunc_00Ev kind:function(arm,size=0x1c) addr:0x02100314 _ZN16MapObjectDoorKey8vfunc_08Ev kind:function(arm,size=0x18) addr:0x02100330 _ZN16MapObjectDoorKey8vfunc_18EPcc kind:function(arm,size=0xc) addr:0x02100348 _ZN16MapObjectDoorKey8vfunc_14Ev kind:function(arm,size=0x14c) addr:0x02100354 -_ZN16MapObjectDoorKey8vfunc_5CEii kind:function(arm,size=0x90) addr:0x021004a0 +_ZN16MapObjectDoorKey8vfunc_5CEsi kind:function(arm,size=0x90) addr:0x021004a0 _ZN16MapObjectDoorKey19func_ov031_020fea88Ev kind:function(arm,size=0x34) addr:0x02100530 _ZN16MapObjectDoorKey8vfunc_28Ev kind:function(arm,size=0x90) addr:0x02100564 _ZN16MapObjectDoorKey8vfunc_64Ev kind:function(arm,size=0xc) addr:0x021005f4 @@ -1401,7 +1401,7 @@ _ZN18MapObjectDoorClick8vfunc_00Ev kind:function(arm,size=0x100) addr:0x02101404 _ZN18MapObjectDoorClick8vfunc_08Ev kind:function(arm,size=0x3d0) addr:0x02101504 _ZN18MapObjectDoorClick8vfunc_18EPcc kind:function(arm,size=0xc) addr:0x021018d4 _ZN18MapObjectDoorClick8vfunc_14Ev kind:function(arm,size=0x14c) addr:0x021018e0 -_ZN18MapObjectDoorClick8vfunc_5CEii kind:function(arm,size=0xf8) addr:0x02101a2c +_ZN18MapObjectDoorClick8vfunc_5CEsi kind:function(arm,size=0xf8) addr:0x02101a2c _ZN18MapObjectDoorClick9vfunc2_14Ev kind:function(arm,size=0x8) addr:0x02101b24 _ZN18MapObjectDoorClick19func_ov031_020ffde4Ev kind:function(arm,size=0x38) addr:0x02101b2c _ZN18MapObjectDoorClick8vfunc_28Ev kind:function(arm,size=0x60) addr:0x02101b64 @@ -1468,26 +1468,26 @@ _ZN16MapObjectUnkSTIR19func_ov031_02100da4Ev kind:function(arm,size=0x1fc) addr: _ZN16MapObjectUnkSTIRD1Ev kind:function(arm,size=0x28) addr:0x02102ce8 _ZN16MapObjectUnkSTIRD0Ev kind:function(arm,size=0x30) addr:0x02102d10 _ZN23MapObjectProfileUnkSTIRD1Ev kind:function(arm,size=0x14) addr:0x02102d40 -_ZN23MapObjectProfileUnkGRSS10GetProfileEv kind:function(arm,size=0xc) addr:0x02102d54 -_ZN23MapObjectProfileUnkGRSS6CreateEv kind:function(arm,size=0x24) addr:0x02102d60 -_ZN23MapObjectProfileUnkGRSSC1Ev kind:function(arm,size=0xa4) addr:0x02102d84 -_ZN16MapObjectUnkGRSS19func_ov031_021010e0Ev kind:function(arm,size=0x48) addr:0x02102e28 -_ZN16MapObjectUnkGRSSC1Ev kind:function(arm,size=0x48) addr:0x02102e70 -_ZN16MapObjectUnkGRSS19func_ov031_02101170Ev kind:function(arm,size=0x31c) addr:0x02102eb8 -_ZN16MapObjectUnkGRSS19func_ov031_0210148cEv kind:function(arm,size=0x78) addr:0x021031d4 -_ZN16MapObjectUnkGRSS19func_ov031_02101504Ev kind:function(arm,size=0x74) addr:0x0210324c -_ZN16MapObjectUnkGRSS19func_ov031_02101578Ev kind:function(arm,size=0x13c) addr:0x021032c0 -_ZN16MapObjectUnkGRSS19func_ov031_021016b4Ev kind:function(arm,size=0x88) addr:0x021033fc -_ZN16MapObjectUnkGRSS19func_ov031_0210173cEv kind:function(arm,size=0x3c) addr:0x02103484 -_ZN16MapObjectUnkGRSS19func_ov031_02101778Ev kind:function(arm,size=0x74) addr:0x021034c0 -_ZN16MapObjectUnkGRSS19func_ov031_021017ecEv kind:function(arm,size=0xb8) addr:0x02103534 -_ZN16MapObjectUnkGRSS19func_ov031_021018a4Ev kind:function(arm,size=0xac) addr:0x021035ec -_ZN16MapObjectUnkGRSS19func_ov031_02101950Ev kind:function(arm,size=0x18) addr:0x02103698 -_ZN16MapObjectUnkGRSS19func_ov031_02101968Ev kind:function(arm,size=0x10) addr:0x021036b0 -_ZN16MapObjectUnkGRSS19func_ov031_02101978Ev kind:function(arm,size=0x20) addr:0x021036c0 -_ZN16MapObjectUnkGRSSD1Ev kind:function(arm,size=0x14) addr:0x021036e0 -_ZN16MapObjectUnkGRSSD0Ev kind:function(arm,size=0x1c) addr:0x021036f4 -_ZN23MapObjectProfileUnkGRSSD1Ev kind:function(arm,size=0x14) addr:0x02103710 +_ZN21MapObjectProfileGrass10GetProfileEv kind:function(arm,size=0xc) addr:0x02102d54 +_ZN21MapObjectProfileGrass6CreateEv kind:function(arm,size=0x24) addr:0x02102d60 +_ZN21MapObjectProfileGrassC1Ev kind:function(arm,size=0xa4) addr:0x02102d84 +_ZN14MapObjectGrassC2Ev kind:function(arm,size=0x48) addr:0x02102e28 +_ZN14MapObjectGrassC1Ev kind:function(arm,size=0x48) addr:0x02102e70 +_ZN14MapObjectGrass8vfunc_00Ev kind:function(arm,size=0x31c) addr:0x02102eb8 +_ZN14MapObjectGrass8vfunc_08Ev kind:function(arm,size=0x78) addr:0x021031d4 +_ZN14MapObjectGrass8vfunc_14Ev kind:function(arm,size=0x74) addr:0x0210324c +_ZN14MapObjectGrass8vfunc_38Esi kind:function(arm,size=0x13c) addr:0x021032c0 +_ZN14MapObjectGrass19func_ov031_021016b4Ev kind:function(arm,size=0x88) addr:0x021033fc +_ZN14MapObjectGrass8vfunc_3CEP7VecFx32 kind:function(arm,size=0x3c) addr:0x02103484 +_ZN14MapObjectGrass19func_ov031_02101778Ev kind:function(arm,size=0x74) addr:0x021034c0 +_ZN14MapObjectGrass8vfunc_1CE8ActorRefiP7VecFx32 kind:function(arm,size=0xb8) addr:0x02103534 +_ZN14MapObjectGrass19func_ov031_021018a4Es kind:function(arm,size=0xac) addr:0x021035ec +_ZN14MapObjectGrass19func_ov031_02101950Ev kind:function(arm,size=0x18) addr:0x02103698 +_ZN14MapObjectGrass19func_ov031_02101968Ei kind:function(arm,size=0x10) addr:0x021036b0 +_ZN14MapObjectGrass19func_ov031_02101978EiP7VecFx32 kind:function(arm,size=0x20) addr:0x021036c0 +_ZN14MapObjectGrassD1Ev kind:function(arm,size=0x14) addr:0x021036e0 +_ZN14MapObjectGrassD0Ev kind:function(arm,size=0x1c) addr:0x021036f4 +_ZN21MapObjectProfileGrassD1Ev kind:function(arm,size=0x14) addr:0x02103710 func_ov031_021019dc kind:function(arm,size=0x14) addr:0x02103724 func_ov031_021019f0 kind:function(arm,size=0x24) addr:0x02103738 _ZN23MapObjectProfileUnkSWHT10GetProfileEv kind:function(arm,size=0xc) addr:0x0210375c @@ -1665,19 +1665,19 @@ _ZN23MapObjectProfileUnkSKDIC1Ev kind:function(arm,size=0x48) addr:0x02107d8c _ZN16MapObjectUnkSKDIC1Ev kind:function(arm,size=0x118) addr:0x02107dd4 _ZN16MapObjectUnkSKDI19func_ov031_02106190Ev kind:function(arm,size=0x4c) addr:0x02107eec _ZN16MapObjectUnkSKDI19func_ov031_021061dcEv kind:function(arm,size=0x48) addr:0x02107f38 -_ZN16MapObjectUnkSKDI19func_ov031_02106224Ev kind:function(arm,size=0xc8) addr:0x02107f80 -_ZN16MapObjectUnkSKDI19func_ov031_021062ecEv kind:function(arm,size=0xe0) addr:0x02108048 -_ZN16MapObjectUnkSKDI19func_ov031_021063ccEv kind:function(arm,size=0x10) addr:0x02108128 -_ZN16MapObjectUnkSKDI19func_ov031_021063dcEv kind:function(arm,size=0x60) addr:0x02108138 -_ZN16MapObjectUnkSKDI19func_ov031_0210643cEv kind:function(arm,size=0x23c) addr:0x02108198 -_ZN16MapObjectUnkSKDI19func_ov031_02106678Ev kind:function(arm,size=0x3f8) addr:0x021083d4 +_ZN16MapObjectUnkSKDI8vfunc_00Ev kind:function(arm,size=0xc8) addr:0x02107f80 +_ZN16MapObjectUnkSKDI8vfunc_04Ev kind:function(arm,size=0xe0) addr:0x02108048 +_ZN16MapObjectUnkSKDI8vfunc_08Ev kind:function(arm,size=0x10) addr:0x02108128 +_ZN16MapObjectUnkSKDI8vfunc_0CEv kind:function(arm,size=0x60) addr:0x02108138 +_ZN16MapObjectUnkSKDI19func_ov031_0210643cEi kind:function(arm,size=0x23c) addr:0x02108198 +_ZN16MapObjectUnkSKDI19func_ov031_02106678Esi kind:function(arm,size=0x3f8) addr:0x021083d4 _ZN16MapObjectUnkSKDI19func_ov031_02106a70Ev kind:function(arm,size=0x14) addr:0x021087cc -_ZN16MapObjectUnkSKDI19func_ov031_02106a84Ev kind:function(arm,size=0x1f4) addr:0x021087e0 -_ZN16MapObjectUnkSKDI19func_ov031_02106c78Ev kind:function(arm,size=0x20) addr:0x021089d4 -_ZN16MapObjectUnkSKDI19func_ov031_02106c98Ev kind:function(arm,size=0x8) addr:0x021089f4 -_ZN16MapObjectUnkSKDI19func_ov031_02106ca0Ev kind:function(arm,size=0x8) addr:0x021089fc -_ZN16MapObjectUnkSKDI19func_ov031_02106ca8Ev kind:function(arm,size=0x8) addr:0x02108a04 -_ZN16MapObjectUnkSKDI19func_ov031_02106cb0Ev kind:function(arm,size=0x14) addr:0x02108a0c +_ZN16MapObjectUnkSKDI8vfunc_1CE8ActorRefiP7VecFx32 kind:function(arm,size=0x1f4) addr:0x021087e0 +_ZN16MapObjectUnkSKDI8vfunc_14Ev kind:function(arm,size=0x20) addr:0x021089d4 +_ZN16MapObjectUnkSKDI8vfunc_38Ev kind:function(arm,size=0x8) addr:0x021089f4 +_ZN16MapObjectUnkSKDI8vfunc_3CEv kind:function(arm,size=0x8) addr:0x021089fc +_ZN16MapObjectUnkSKDI8vfunc_40Ev kind:function(arm,size=0x8) addr:0x02108a04 +_ZN16MapObjectUnkSKDI19func_ov031_02106cb0Ei kind:function(arm,size=0x14) addr:0x02108a0c _ZN16MapObjectUnkSKDID1Ev kind:function(arm,size=0x40) addr:0x02108a20 _ZN16MapObjectUnkSKDID0Ev kind:function(arm,size=0x48) addr:0x02108a60 _ZN23MapObjectProfileUnkSKDID1Ev kind:function(arm,size=0x14) addr:0x02108aa8 @@ -1685,11 +1685,11 @@ _ZN19ActorProfileUnkSKDO10GetProfileEv kind:function(arm,size=0xc) addr:0x02108a _ZN19ActorProfileUnkSKDO6CreateEv kind:function(arm,size=0x24) addr:0x02108ac8 _ZN19ActorProfileUnkSKDOC1Ev kind:function(arm,size=0x28) addr:0x02108aec _ZN12ActorUnkSKDOC1Ev kind:function(arm,size=0x28) addr:0x02108b14 -_ZN12ActorUnkSKDO19func_ov031_02106de0Ev kind:function(arm,size=0x8) addr:0x02108b3c -_ZN12ActorUnkSKDO19func_ov031_02106de8Ev kind:function(arm,size=0x70) addr:0x02108b44 -_ZN12ActorUnkSKDO19func_ov031_02106e58Ev kind:function(arm,size=0x38) addr:0x02108bb4 -_ZN12ActorUnkSKDO19func_ov031_02106e90Ev kind:function(arm,size=0x8) addr:0x02108bec -_ZN12ActorUnkSKDO19func_ov031_02106e98Ev kind:function(arm,size=0x3c) addr:0x02108bf4 +_ZN12ActorUnkSKDO8vfunc_18Ei kind:function(arm,size=0x8) addr:0x02108b3c +_ZN12ActorUnkSKDO8vfunc_1CEv kind:function(arm,size=0x70) addr:0x02108b44 +_ZN12ActorUnkSKDO8vfunc_20Ev kind:function(arm,size=0x38) addr:0x02108bb4 +_ZN12ActorUnkSKDO8vfunc_54Ei kind:function(arm,size=0x8) addr:0x02108bec +_ZN27ActorUnkSKDO_ov031_02115ce88vfunc_00EP9MapObject kind:function(arm,size=0x3c) addr:0x02108bf4 _ZN12ActorUnkSKDOD1Ev kind:function(arm,size=0x14) addr:0x02108c30 _ZN12ActorUnkSKDOD0Ev kind:function(arm,size=0x1c) addr:0x02108c44 _ZN19ActorProfileUnkSKDOD1Ev kind:function(arm,size=0x14) addr:0x02108c60 @@ -2011,7 +2011,7 @@ data_ov031_02112810 kind:data(any) addr:0x02112810 data_ov031_02112830 kind:data(any) addr:0x02112830 data_ov031_02112834 kind:data(any) addr:0x02112834 data_ov031_0211283c kind:data(any) addr:0x0211283c -data_ov031_02112840 kind:data(any) addr:0x02112840 +data_ov031_02110ad0 kind:data(any) addr:0x02112840 data_ov031_02112871 kind:data(any) addr:0x02112871 data_ov031_02112878 kind:data(any) addr:0x02112878 data_ov031_021128ac kind:data(any) addr:0x021128ac @@ -2068,7 +2068,7 @@ data_ov031_02112cf8 kind:data(any) addr:0x02112cf8 __sinit_ov031_02112d40 kind:function(arm,size=0x18) addr:0x02112d40 __sinit_ov031_02112d58 kind:function(arm,size=0x10) addr:0x02112d58 __sinit_ActorUnkBOMB.cpp kind:function(arm,size=0x50) addr:0x02112d68 -__sinit_ActorUnkBLST.cpp kind:function(arm,size=0x50) addr:0x02112db8 +__sinit_ActorBlast.cpp kind:function(arm,size=0x50) addr:0x02112db8 __sinit_ActorUnkTLKT.cpp kind:function(arm,size=0x50) addr:0x02112e08 __sinit_ActorItemBoomerang.cpp kind:function(arm,size=0x50) addr:0x02112e58 __sinit_ActorItemTornado.cpp kind:function(arm,size=0x74) addr:0x02112ea8 @@ -2077,7 +2077,7 @@ __sinit_ActorUnkROCK.cpp kind:function(arm,size=0x50) addr:0x02112f90 __sinit_ActorRupee.cpp kind:function(arm,size=0x98) addr:0x02112fe0 __sinit_ActorUnkZLSL_ZSRS.cpp kind:function(arm,size=0x94) addr:0x02113078 __sinit_ActorHeart.cpp kind:function(arm,size=0x6c) addr:0x0211310c -__sinit_ActorUnkRMTG.cpp kind:function(arm,size=0x50) addr:0x02113178 +__sinit_ActorUnkRMTG.cpp kind:function(arm,size=0x50) addr:0x02113178 local __sinit_ActorUnkSCCN.cpp kind:function(arm,size=0x50) addr:0x021131c8 __sinit_ActorPot.cpp kind:function(arm,size=0x50) addr:0x02113218 __sinit_ActorUnkNITF.cpp kind:function(arm,size=0x50) addr:0x02113268 @@ -2086,7 +2086,7 @@ __sinit_ActorUnkATTG.cpp kind:function(arm,size=0x50) addr:0x02113308 __sinit_ActorUnkNTTZ.cpp kind:function(arm,size=0x50) addr:0x02113358 local __sinit_ov031_021133a8 kind:function(arm,size=0x24) addr:0x021133a8 __sinit_ActorUnkTGTZ.cpp kind:function(arm,size=0x80) addr:0x021133cc -__sinit_ActorUnkSWCH.cpp kind:function(arm,size=0x50) addr:0x0211344c +__sinit_ActorUnkSWCH.cpp kind:function(arm,size=0x50) addr:0x0211344c local __sinit_ActorUnkSWON.cpp kind:function(arm,size=0x50) addr:0x0211349c local __sinit_ActorUnkNORE.cpp kind:function(arm,size=0x50) addr:0x021134ec __sinit_ActorUnkFLEN.cpp kind:function(arm,size=0x50) addr:0x0211353c @@ -2105,7 +2105,7 @@ __sinit_MapObjectDoorTouch.cpp kind:function(arm,size=0x50) addr:0x02113a44 __sinit_MapObjectUnkEXIT.cpp kind:function(arm,size=0x50) addr:0x02113a94 __sinit_MapObjectUnkGATE.cpp kind:function(arm,size=0x50) addr:0x02113ae4 __sinit_MapObjectUnkSTIR.cpp kind:function(arm,size=0x50) addr:0x02113b34 -__sinit_MapObjectUnkGRSS.cpp kind:function(arm,size=0x90) addr:0x02113b84 +__sinit_MapObjectGrass.cpp kind:function(arm,size=0x90) addr:0x02113b84 __sinit_MapObjectUnkSWHT.cpp kind:function(arm,size=0x70) addr:0x02113c14 __sinit_MapObjectUnkBMFL.cpp kind:function(arm,size=0x50) addr:0x02113c84 __sinit_MapObjectTreasureSpawned.cpp kind:function(arm,size=0x6c) addr:0x02113cd4 local @@ -2118,7 +2118,7 @@ __sinit_MapObjectPot.cpp kind:function(arm,size=0x50) addr:0x02113f04 __sinit_MapObjectUnkSKBN.cpp kind:function(arm,size=0x74) addr:0x02113f54 __sinit_MapObjectUnkITFL.cpp kind:function(arm,size=0x50) addr:0x02113fc8 __sinit_MapObjectUnkSKDI.cpp kind:function(arm,size=0x50) addr:0x02114018 -__sinit_ActorUnkSKDO.cpp kind:function(arm,size=0x50) addr:0x02114068 +__sinit_ActorUnkSKDO.cpp kind:function(arm,size=0x50) addr:0x02114068 local __sinit_MapObjectUnkCRWL.cpp kind:function(arm,size=0x70) addr:0x021140b8 __sinit_MapObjectUnkBREX.cpp kind:function(arm,size=0x64) addr:0x02114128 __sinit_MapObjectUnkTATZ.cpp kind:function(arm,size=0x64) addr:0x0211418c @@ -2132,7 +2132,7 @@ __sinit_MapObjectUnkSWFS.cpp kind:function(arm,size=0x70) addr:0x021144b0 .p__sinit_ov031_02112d40 kind:data(word) addr:0x02114520 .p__sinit_ov031_02112d58 kind:data(word) addr:0x02114524 .p__sinit_ActorUnkBOMB.cpp kind:data(word) addr:0x02114528 -.p__sinit_ActorUnkBLST.cpp kind:data(word) addr:0x0211452c +.p__sinit_ActorBlast.cpp kind:data(word) addr:0x0211452c .p__sinit_ActorUnkTLKT.cpp kind:data(word) addr:0x02114530 .p__sinit_ActorItemBoomerang.cpp kind:data(word) addr:0x02114534 .p__sinit_ActorItemTornado.cpp kind:data(word) addr:0x02114538 @@ -2141,7 +2141,7 @@ __sinit_MapObjectUnkSWFS.cpp kind:function(arm,size=0x70) addr:0x021144b0 .p__sinit_ActorRupee.cpp kind:data(word) addr:0x02114544 .p__sinit_ActorUnkZLSL_ZSRS.cpp kind:data(word) addr:0x02114548 .p__sinit_ActorHeart.cpp kind:data(word) addr:0x0211454c -.p__sinit_ActorUnkRMTG.cpp kind:data(word) addr:0x02114550 +.p__sinit_ActorUnkRMTG.cpp kind:data(word) addr:0x02114550 local .p__sinit_ActorUnkSCCN.cpp kind:data(word) addr:0x02114554 .p__sinit_ActorPot.cpp kind:data(word) addr:0x02114558 .p__sinit_ActorUnkNITF.cpp kind:data(word) addr:0x0211455c @@ -2150,7 +2150,7 @@ __sinit_MapObjectUnkSWFS.cpp kind:function(arm,size=0x70) addr:0x021144b0 .p__sinit_ActorUnkNTTZ.cpp kind:data(word) addr:0x02114568 local .p__sinit_ov031_021133a8 kind:data(word) addr:0x0211456c .p__sinit_ActorUnkTGTZ.cpp kind:data(word) addr:0x02114570 -.p__sinit_ActorUnkSWCH.cpp kind:data(word) addr:0x02114574 +.p__sinit_ActorUnkSWCH.cpp kind:data(word) addr:0x02114574 local .p__sinit_ActorUnkSWON.cpp kind:data(word) addr:0x02114578 local .p__sinit_ActorUnkNORE.cpp kind:data(word) addr:0x0211457c .p__sinit_ActorUnkFLEN.cpp kind:data(word) addr:0x02114580 @@ -2169,7 +2169,7 @@ __sinit_MapObjectUnkSWFS.cpp kind:function(arm,size=0x70) addr:0x021144b0 .p__sinit_MapObjectUnkEXIT.cpp kind:data(word) addr:0x021145b4 .p__sinit_MapObjectUnkGATE.cpp kind:data(word) addr:0x021145b8 .p__sinit_MapObjectUnkSTIR.cpp kind:data(word) addr:0x021145bc -.p__sinit_MapObjectUnkGRSS.cpp kind:data(word) addr:0x021145c0 +.p__sinit_MapObjectGrass.cpp kind:data(word) addr:0x021145c0 .p__sinit_MapObjectUnkSWHT.cpp kind:data(word) addr:0x021145c4 .p__sinit_MapObjectUnkBMFL.cpp kind:data(word) addr:0x021145c8 .p__sinit_MapObjectTreasureSpawned.cpp kind:data(word) addr:0x021145cc local @@ -2182,7 +2182,7 @@ __sinit_MapObjectUnkSWFS.cpp kind:function(arm,size=0x70) addr:0x021144b0 .p__sinit_MapObjectUnkSKBN.cpp kind:data(word) addr:0x021145e8 .p__sinit_MapObjectUnkITFL.cpp kind:data(word) addr:0x021145ec .p__sinit_MapObjectUnkSKDI.cpp kind:data(word) addr:0x021145f0 -.p__sinit_ActorUnkSKDO.cpp kind:data(word) addr:0x021145f4 +.p__sinit_ActorUnkSKDO.cpp kind:data(word) addr:0x021145f4 local .p__sinit_MapObjectUnkCRWL.cpp kind:data(word) addr:0x021145f8 .p__sinit_MapObjectUnkBREX.cpp kind:data(word) addr:0x021145fc .p__sinit_MapObjectUnkTATZ.cpp kind:data(word) addr:0x02114600 @@ -2247,24 +2247,24 @@ data_ov031_02114a34 kind:data(any) addr:0x02114a34 data_ov031_02114a50 kind:data(any) addr:0x02114a50 _ZTV19data_ov031_02114a64 kind:data(any) addr:0x02114a64 _ZTV19data_ov031_02114a88 kind:data(any) addr:0x02114a88 -data_ov031_02114aec kind:data(any) addr:0x02114aec -_ZTV19data_ov031_02114b00 kind:data(any) addr:0x02114b00 -_ZTV19data_ov031_02114b24 kind:data(any) addr:0x02114b24 +_ZTV13ActorBlast_E8 kind:data(any) addr:0x02114ae4 +_ZTV17ActorProfileBlast kind:data(any) addr:0x02114b00 +_ZTV10ActorBlast kind:data(any) addr:0x02114b24 _ZTV19data_ov031_02114b80 kind:data(any) addr:0x02114b80 _ZTV19data_ov031_02114bec kind:data(any) addr:0x02114bec _ZTV19data_ov031_02114c10 kind:data(any) addr:0x02114c10 -data_ov031_02114c8c kind:data(any) addr:0x02114c8c +_ZTV19data_ov031_02114c8c kind:data(any) addr:0x02114c84 data_ov031_02114ca4 kind:data(any) addr:0x02114ca4 data_ov031_02114cc0 kind:data(any) addr:0x02114cc0 data_ov031_02114cdc kind:data(any) addr:0x02114cdc _ZTV19data_ov031_02114cf0 kind:data(any) addr:0x02114cf0 _ZTV19data_ov031_02114d14 kind:data(any) addr:0x02114d14 -data_ov031_02114d78 kind:data(any) addr:0x02114d78 +_ZTV19data_ov031_02114d78 kind:data(any) addr:0x02114d70 data_ov031_02114d7c kind:data(any) addr:0x02114d7c data_ov031_02114d94 kind:data(any) addr:0x02114d94 _ZTV19data_ov031_02114da8 kind:data(any) addr:0x02114da8 _ZTV19data_ov031_02114dcc kind:data(any) addr:0x02114dcc -data_ov031_02114e30 kind:data(any) addr:0x02114e30 +_ZTV19data_ov031_02114e30 kind:data(any) addr:0x02114e28 _ZTV19data_ov031_02114e44 kind:data(any) addr:0x02114e44 data_ov031_02114eb0 kind:data(any) addr:0x02114eb0 data_ov031_02114eb4 kind:data(any) addr:0x02114eb4 @@ -2327,12 +2327,12 @@ data_ov031_02113da4 kind:data(any) addr:0x02115b44 _ZTV13ActorHeart_C4 kind:data(any) addr:0x02115b74 _ZTV17ActorProfileHeart kind:data(any) addr:0x02115b8c _ZTV10ActorHeart kind:data(any) addr:0x02115bb0 -_ZTV19data_ov031_02115c0c kind:data(any) addr:0x02115c0c -_ZTV19data_ov031_02115c30 kind:data(any) addr:0x02115c30 -_ZTV19data_ov031_02115c8c kind:data(any) addr:0x02115c8c +_ZTV19ActorProfileUnkRMTG kind:data(any) addr:0x02115c0c +_ZTV12ActorUnkRMTG kind:data(any) addr:0x02115c30 +_ZTV19ActorProfileUnkSCCN kind:data(any) addr:0x02115c8c _ZTV12MapObject_10 kind:data(any) addr:0x02115cb0 -_ZTV19data_ov031_02115cd8 kind:data(any) addr:0x02115cd8 -data_ov031_02115d3c kind:data(any) addr:0x02115d3c +_ZTV12ActorUnkSCCN kind:data(any) addr:0x02115cd8 +_ZTV19data_ov031_02115d3c kind:data(any) addr:0x02115d34 data_ov031_02115d58 kind:data(any) addr:0x02115d58 _ZTV19data_ov031_02115d6c kind:data(any) addr:0x02115d6c _ZTV19data_ov031_02115ddc kind:data(any) addr:0x02115ddc @@ -2370,9 +2370,9 @@ _ZTV19data_ov031_021164ec kind:data(any) addr:0x021164ec data_ov031_02116554 kind:data(any) addr:0x02116554 data_ov031_02116578 kind:data(any) addr:0x02116578 data_ov031_02116580 kind:data(any) addr:0x02116580 -_ZTV19data_ov031_0211658c kind:data(any) addr:0x0211658c -_ZTV19data_ov031_021165b0 kind:data(any) addr:0x021165b0 -data_ov031_02116614 kind:data(any) addr:0x02116614 ambiguous +_ZTV19ActorProfileUnkSWCH kind:data(any) addr:0x0211658c +_ZTV12ActorUnkSWCH kind:data(any) addr:0x021165b0 +_ZTV19data_ov031_02116614 kind:data(any) addr:0x0211660c ambiguous data_ov031_02116624 kind:data(any) addr:0x02116624 _ZTV19ActorProfileUnkSWON kind:data(any) addr:0x0211662c _ZTV12ActorUnkSWON kind:data(any) addr:0x02116650 @@ -2430,11 +2430,11 @@ data_ov031_021172d4 kind:data(any) addr:0x021172d4 data_ov031_021172fc kind:data(any) addr:0x021172fc data_ov031_0211733c kind:data(any) addr:0x0211733c data_ov031_02117358 kind:data(any) addr:0x02117358 -data_ov031_02117398 kind:data(any) addr:0x02117398 -data_ov031_021173b4 kind:data(any) addr:0x021173b4 -data_ov031_021173d0 kind:data(any) addr:0x021173d0 +_ZTV19data_ov031_02117398 kind:data(any) addr:0x02117390 +_ZTV21MapObjectProfileGrass kind:data(any) addr:0x021173ac +_ZTV14MapObjectGrass kind:data(any) addr:0x021173c8 data_ov031_02117410 kind:data(any) addr:0x02117410 -data_ov031_02117424 kind:data(any) addr:0x02117424 +_ZTV19data_ov031_02117424 kind:data(any) addr:0x0211741c data_ov031_02117440 kind:data(any) addr:0x02117440 data_ov031_02117480 kind:data(any) addr:0x02117480 data_ov031_0211749c kind:data(any) addr:0x0211749c @@ -2467,11 +2467,11 @@ data_ov031_0211791c kind:data(any) addr:0x0211791c data_ov031_02117938 kind:data(any) addr:0x02117938 data_ov031_02117978 kind:data(any) addr:0x02117978 data_ov031_02117994 kind:data(any) addr:0x02117994 -data_ov031_021179f4 kind:data(any) addr:0x021179f4 -data_ov031_02117a10 kind:data(any) addr:0x02117a10 -data_ov031_02117a5c kind:data(any) addr:0x02117a5c -_ZTV19data_ov031_02117a60 kind:data(any) addr:0x02117a60 -_ZTV19data_ov031_02117a84 kind:data(any) addr:0x02117a84 +_ZTV23MapObjectProfileUnkSKDI kind:data(any) addr:0x021179ec +_ZTV16MapObjectUnkSKDI kind:data(any) addr:0x02117a08 +_ZTV27ActorUnkSKDO_ov031_02115ce8 kind:data(any) addr:0x02117a54 +_ZTV19ActorProfileUnkSKDO kind:data(any) addr:0x02117a60 +_ZTV12ActorUnkSKDO kind:data(any) addr:0x02117a84 data_ov031_02117ae4 kind:data(any) addr:0x02117ae4 data_ov031_02117af8 kind:data(any) addr:0x02117af8 data_ov031_02117b20 kind:data(any) addr:0x02117b20 @@ -2519,9 +2519,9 @@ data_ov031_02118120 kind:bss addr:0x02118120 _ZGVN15ProfileInstanceI19ActorProfileUnkBOMBE8sProfileE kind:bss addr:0x021181a4 @30775 kind:bss addr:0x021181a8 _ZN15ProfileInstanceI19ActorProfileUnkBOMBE8sProfileE kind:bss addr:0x021181b4 -_ZGVN15ProfileInstanceI19ActorProfileUnkBLSTE8sProfileE kind:bss addr:0x021181f0 +_ZGVN15ProfileInstanceI17ActorProfileBlastE8sProfileE kind:bss addr:0x021181f0 @30781 kind:bss addr:0x021181f4 -_ZN15ProfileInstanceI19ActorProfileUnkBLSTE8sProfileE kind:bss addr:0x02118200 +_ZN15ProfileInstanceI17ActorProfileBlastE8sProfileE kind:bss addr:0x02118200 _ZGVN15ProfileInstanceI19ActorProfileUnkTLKTE8sProfileE kind:bss addr:0x0211823c @30787 kind:bss addr:0x02118240 _ZN15ProfileInstanceI19ActorProfileUnkTLKTE8sProfileE kind:bss addr:0x0211824c @@ -2551,7 +2551,7 @@ _ZGVN15ProfileInstanceI17ActorProfileHeartE8sProfileE kind:bss addr:0x021185f8 @30830 kind:bss addr:0x021185fc _ZN15ProfileInstanceI17ActorProfileHeartE8sProfileE kind:bss addr:0x02118608 _ZGVN15ProfileInstanceI19ActorProfileUnkRMTGE8sProfileE kind:bss addr:0x02118644 -@30836 kind:bss addr:0x02118648 +@30836 kind:bss addr:0x02118648 local _ZN15ProfileInstanceI19ActorProfileUnkRMTGE8sProfileE kind:bss addr:0x02118654 _ZGVN15ProfileInstanceI19ActorProfileUnkSCCNE8sProfileE kind:bss addr:0x0211872c @30842 kind:bss addr:0x02118730 @@ -2645,9 +2645,9 @@ _ZGVN15ProfileInstanceI23MapObjectProfileUnkSTIRE8sProfileE kind:bss addr:0x0211 _ZN15ProfileInstanceI23MapObjectProfileUnkSTIRE8sProfileE kind:bss addr:0x02119524 data_ov031_021195f8 kind:bss addr:0x021195f8 data_ov031_021195fc kind:bss addr:0x021195fc -_ZGVN15ProfileInstanceI23MapObjectProfileUnkGRSSE8sProfileE kind:bss addr:0x02119608 +_ZGVN15ProfileInstanceI21MapObjectProfileGrassE8sProfileE kind:bss addr:0x02119608 @30981 kind:bss addr:0x02119614 -_ZN15ProfileInstanceI23MapObjectProfileUnkGRSSE8sProfileE kind:bss addr:0x02119664 +_ZN15ProfileInstanceI21MapObjectProfileGrassE8sProfileE kind:bss addr:0x02119664 data_ov031_02119738 kind:bss addr:0x02119738 _ZGVN15ProfileInstanceI23MapObjectProfileUnkSWHTE8sProfileE kind:bss addr:0x02119758 @30987 kind:bss addr:0x0211975c @@ -2688,7 +2688,7 @@ _ZGVN15ProfileInstanceI23MapObjectProfileUnkSKDIE8sProfileE kind:bss addr:0x0211 @31047 kind:bss addr:0x02119fc0 _ZN15ProfileInstanceI23MapObjectProfileUnkSKDIE8sProfileE kind:bss addr:0x02119fcc _ZGVN15ProfileInstanceI19ActorProfileUnkSKDOE8sProfileE kind:bss addr:0x0211a0a0 -@31064 kind:bss addr:0x0211a0a4 +@31064 kind:bss addr:0x0211a0a4 local _ZN15ProfileInstanceI19ActorProfileUnkSKDOE8sProfileE kind:bss addr:0x0211a0b0 _ZGVN15ProfileInstanceI23MapObjectProfileUnkCRWLE8sProfileE kind:bss addr:0x0211a0ec @31059 kind:bss addr:0x0211a0f0 diff --git a/config/jp/arm9/overlays/ov043/relocs.txt b/config/jp/arm9/overlays/ov043/relocs.txt index 294c9457..784b1bf3 100644 --- a/config/jp/arm9/overlays/ov043/relocs.txt +++ b/config/jp/arm9/overlays/ov043/relocs.txt @@ -381,7 +381,7 @@ from:0x02128860 kind:load to:0x0212f028 add:0x8 module:overlay(43) from:0x02128864 kind:load to:0x0212fa80 module:overlay(43) from:0x02128868 kind:load to:0x0212efe4 module:overlay(43) from:0x0212886c kind:load to:0x0212ef9c module:overlay(43) -from:0x02128870 kind:load to:0x020b3fc8 module:overlay(0) +from:0x02128870 kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x02128874 kind:load to:0x027e07d4 module:dtcm from:0x0212887c kind:load to:0x0212ef58 module:overlay(43) from:0x02128888 kind:arm_call_thumb to:0x0209ba14 module:overlay(0) diff --git a/config/jp/arm9/overlays/ov048/relocs.txt b/config/jp/arm9/overlays/ov048/relocs.txt index 5008e53e..4e8a6045 100644 --- a/config/jp/arm9/overlays/ov048/relocs.txt +++ b/config/jp/arm9/overlays/ov048/relocs.txt @@ -10,7 +10,7 @@ from:0x02132028 kind:arm_call to:0x02099b30 module:overlay(0) from:0x0213204c kind:arm_call to:0x02080464 module:overlay(0) from:0x02132084 kind:arm_call to:0x02099a50 module:overlay(0) from:0x021320bc kind:load to:0x02139098 add:0x8 module:overlay(48) -from:0x021320c0 kind:load to:0x020b3fc8 module:overlay(0) +from:0x021320c0 kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x021320c4 kind:load to:0x02139084 module:overlay(48) from:0x021320d0 kind:arm_call to:0x0207d6b4 module:overlay(0) from:0x021320e8 kind:arm_call to:0x0207d6b4 module:overlay(0) @@ -260,7 +260,7 @@ from:0x02133ce4 kind:load to:0x02139710 module:overlay(48) from:0x02133ce8 kind:load to:0x021391bc module:overlay(48) from:0x02133cf0 kind:load to:0x02132a20 module:overlay(48) from:0x02133cf4 kind:load to:0x02133b24 module:overlay(48) -from:0x02133cf8 kind:load to:0x020b3fc8 module:overlay(0) +from:0x02133cf8 kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x02133d1c kind:arm_call to:0x020a1b0c module:overlay(0) from:0x02133d38 kind:arm_call to:0x0207f90c module:overlay(0) from:0x02133d40 kind:arm_call to:0x0207cd78 module:overlay(0) diff --git a/config/jp/arm9/overlays/ov052/relocs.txt b/config/jp/arm9/overlays/ov052/relocs.txt index 7206f465..ec293500 100644 --- a/config/jp/arm9/overlays/ov052/relocs.txt +++ b/config/jp/arm9/overlays/ov052/relocs.txt @@ -319,7 +319,7 @@ from:0x02134f00 kind:load to:0x02137e68 add:0x8 module:overlay(52) from:0x02134f04 kind:load to:0x02138540 module:overlay(52) from:0x02134f08 kind:load to:0x02137e24 module:overlay(52) from:0x02134f0c kind:load to:0x02137ddc module:overlay(52) -from:0x02134f10 kind:load to:0x020b3fc8 module:overlay(0) +from:0x02134f10 kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x02134f14 kind:load to:0x027e07d4 module:dtcm from:0x02134f1c kind:load to:0x02137d98 module:overlay(52) from:0x02134f28 kind:arm_call_thumb to:0x0209ba14 module:overlay(0) diff --git a/config/jp/arm9/overlays/ov059/relocs.txt b/config/jp/arm9/overlays/ov059/relocs.txt index 0009856f..3cdfa0f2 100644 --- a/config/jp/arm9/overlays/ov059/relocs.txt +++ b/config/jp/arm9/overlays/ov059/relocs.txt @@ -522,7 +522,7 @@ from:0x0215e51c kind:load to:0x021655ac add:0x8 module:overlay(59) from:0x0215e520 kind:load to:0x021661fc module:overlay(59) from:0x0215e524 kind:load to:0x02165508 module:overlay(59) from:0x0215e528 kind:load to:0x02165274 module:overlay(59) -from:0x0215e52c kind:load to:0x020b3fc8 module:overlay(0) +from:0x0215e52c kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x0215e530 kind:load to:0x021661f0 module:overlay(59) from:0x0215e53c kind:arm_call_thumb to:0x02059154 module:overlay(0) from:0x0215e568 kind:arm_call to:0x020591b8 module:overlay(0) @@ -1018,7 +1018,7 @@ from:0x02162bec kind:load to:0x0216593c add:0x8 module:overlay(59) from:0x02162bf8 kind:arm_call to:0x02099b30 module:overlay(0) from:0x02162c90 kind:arm_call_thumb to:0x02058fa4 module:overlay(0) from:0x02162cc0 kind:load to:0x021659b0 add:0x8 module:overlay(59) -from:0x02162cc4 kind:load to:0x020b3fc8 module:overlay(0) +from:0x02162cc4 kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x02162cc8 kind:load to:0x021663d8 module:overlay(59) from:0x02162cf4 kind:arm_call to:0x02162d00 module:overlay(59) from:0x02162d38 kind:load to:0x02165960 module:overlay(59) diff --git a/config/jp/arm9/overlays/ov068/relocs.txt b/config/jp/arm9/overlays/ov068/relocs.txt index a7efcfc3..26c17eca 100644 --- a/config/jp/arm9/overlays/ov068/relocs.txt +++ b/config/jp/arm9/overlays/ov068/relocs.txt @@ -834,7 +834,7 @@ from:0x02160c18 kind:load to:0x02165320 add:0x8 module:overlay(68) from:0x02160c1c kind:load to:0x021663ac module:overlay(68) from:0x02160c20 kind:load to:0x0216529c module:overlay(68) from:0x02160c24 kind:load to:0x021647ec module:overlay(68) -from:0x02160c28 kind:load to:0x020b3fc8 module:overlay(0) +from:0x02160c28 kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x02160c34 kind:arm_call_thumb to:0x02059154 module:overlay(0) from:0x02160c5c kind:arm_call to:0x020591b8 module:overlay(0) from:0x02160c6c kind:arm_call to:0x0209bf84 module:overlay(0) diff --git a/config/jp/arm9/overlays/ov070/relocs.txt b/config/jp/arm9/overlays/ov070/relocs.txt index 9a6d2115..97c5e1d3 100644 --- a/config/jp/arm9/overlays/ov070/relocs.txt +++ b/config/jp/arm9/overlays/ov070/relocs.txt @@ -1090,7 +1090,7 @@ from:0x02149d08 kind:arm_call to:0x02099a50 module:overlay(0) from:0x02149d70 kind:arm_call to:0x02099dd4 module:overlay(0) from:0x02149d88 kind:load to:0x0215134c add:0x8 module:overlay(70) from:0x02149d8c kind:load to:0x021525c4 module:overlay(70) -from:0x02149d90 kind:load to:0x020b3fc8 module:overlay(0) +from:0x02149d90 kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x02149d94 kind:load to:0x02151294 module:overlay(70) from:0x02149da0 kind:arm_call to:0x0207d6b4 module:overlay(0) from:0x02149de8 kind:arm_call to:0x0214a054 module:overlay(70) diff --git a/config/jp/arm9/overlays/ov071/relocs.txt b/config/jp/arm9/overlays/ov071/relocs.txt index 497fb624..e8ebbf61 100644 --- a/config/jp/arm9/overlays/ov071/relocs.txt +++ b/config/jp/arm9/overlays/ov071/relocs.txt @@ -1230,7 +1230,7 @@ from:0x0215e680 kind:load to:0x02165e74 module:overlay(71) from:0x0215e684 kind:load to:0x02165e84 module:overlay(71) from:0x0215e688 kind:load to:0x021668ac add:0x8 module:overlay(71) from:0x0215e68c kind:load to:0x02165e94 module:overlay(71) -from:0x0215e690 kind:load to:0x020b3fc8 module:overlay(0) +from:0x0215e690 kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x0215e694 kind:load to:0x02165ea4 module:overlay(71) from:0x0215e698 kind:load to:0x02167394 module:overlay(71) from:0x0215e69c kind:load to:0x02165e2c module:overlay(71) diff --git a/config/jp/arm9/overlays/ov073/relocs.txt b/config/jp/arm9/overlays/ov073/relocs.txt index 2ac6e13e..87012aba 100644 --- a/config/jp/arm9/overlays/ov073/relocs.txt +++ b/config/jp/arm9/overlays/ov073/relocs.txt @@ -76,7 +76,7 @@ from:0x02153668 kind:load to:0x0216602c module:overlay(73) from:0x0215366c kind:load to:0x02165f80 module:overlay(73) from:0x02153670 kind:load to:0x020a1aac module:overlay(0) from:0x02153674 kind:load to:0x021651b8 module:overlay(73) -from:0x02153678 kind:load to:0x02116614 module:overlay(31) +from:0x02153678 kind:load to:0x0211660c module:overlay(31) add:0x8 from:0x0215367c kind:load to:0x0204b164 module:main from:0x02153688 kind:arm_call_thumb to:0x02059154 module:overlay(0) from:0x0215369c kind:arm_call_thumb to:0x0209ba14 module:overlay(0) diff --git a/config/jp/arm9/overlays/ov075/relocs.txt b/config/jp/arm9/overlays/ov075/relocs.txt index 1d44183b..c00b4718 100644 --- a/config/jp/arm9/overlays/ov075/relocs.txt +++ b/config/jp/arm9/overlays/ov075/relocs.txt @@ -1479,7 +1479,7 @@ from:0x02160634 kind:arm_call to:0x02161a80 module:overlay(75) from:0x02160644 kind:load to:0x02165208 add:0x8 module:overlay(75) from:0x02160648 kind:load to:0x021655f4 module:overlay(75) from:0x0216064c kind:load to:0x021651c8 module:overlay(75) -from:0x02160650 kind:load to:0x020b3fc8 module:overlay(0) +from:0x02160650 kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x02160654 kind:load to:0x021655e8 module:overlay(75) from:0x0216065c kind:load to:0x027e0130 module:dtcm from:0x02160660 kind:load to:0x027e07d4 module:dtcm diff --git a/config/jp/arm9/overlays/ov077/relocs.txt b/config/jp/arm9/overlays/ov077/relocs.txt index d47d2020..5ff6e7d2 100644 --- a/config/jp/arm9/overlays/ov077/relocs.txt +++ b/config/jp/arm9/overlays/ov077/relocs.txt @@ -24,7 +24,7 @@ from:0x021551c4 kind:load to:0x0215ddb8 module:overlay(77) from:0x021551c8 kind:load to:0x0215d4e0 module:overlay(77) from:0x021551cc kind:load to:0x020a1aac module:overlay(0) from:0x021551d0 kind:load to:0x02158f28 module:overlay(77) -from:0x021551d4 kind:load to:0x02116614 module:overlay(31) +from:0x021551d4 kind:load to:0x0211660c module:overlay(31) add:0x8 from:0x021551d8 kind:load to:0x0215dda0 module:overlay(77) from:0x021551e4 kind:arm_call_thumb to:0x02059154 module:overlay(0) from:0x021551f8 kind:arm_call_thumb to:0x0209ba14 module:overlay(0) diff --git a/config/jp/arm9/overlays/ov087/relocs.txt b/config/jp/arm9/overlays/ov087/relocs.txt index f633dd75..0904c8b7 100644 --- a/config/jp/arm9/overlays/ov087/relocs.txt +++ b/config/jp/arm9/overlays/ov087/relocs.txt @@ -688,7 +688,7 @@ from:0x0215d3f4 kind:arm_call_thumb to:0x02058d0c module:overlay(0) from:0x0215d408 kind:arm_call to:0x02099360 module:overlay(0) from:0x0215d454 kind:arm_call to:0x01ffa06c module:itcm from:0x0215d470 kind:load to:0x02164680 add:0x8 module:overlay(87) -from:0x0215d474 kind:load to:0x020b3fc8 module:overlay(0) +from:0x0215d474 kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x0215d478 kind:load to:0x02164c78 module:overlay(87) from:0x0215d47c kind:load to:0x0216463c module:overlay(87) from:0x0215d480 kind:load to:0x02164288 module:overlay(87) diff --git a/config/jp/arm9/overlays/ov091/relocs.txt b/config/jp/arm9/overlays/ov091/relocs.txt index 115aa3a9..47cc5baf 100644 --- a/config/jp/arm9/overlays/ov091/relocs.txt +++ b/config/jp/arm9/overlays/ov091/relocs.txt @@ -978,7 +978,7 @@ from:0x0216fe1c kind:arm_call to:0x021061f8 module:overlay(26) from:0x0216fe2c kind:load to:0x02179cd0 add:0x8 module:overlay(91) from:0x0216fe30 kind:load to:0x0217ae20 module:overlay(91) from:0x0216fe34 kind:load to:0x02179c8c module:overlay(91) -from:0x0216fe38 kind:load to:0x020b3fc8 module:overlay(0) +from:0x0216fe38 kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x0216fe44 kind:arm_call_thumb to:0x0209ba14 module:overlay(0) from:0x0216fee4 kind:load to:0x0217adfc module:overlay(91) from:0x0216fee8 kind:load to:0x02179c40 module:overlay(91) @@ -1751,7 +1751,7 @@ from:0x02178100 kind:arm_call to:0x01ffa06c module:itcm from:0x0217810c kind:load to:0x0217a2bc add:0x8 module:overlay(91) from:0x02178110 kind:load to:0x0217b174 module:overlay(91) from:0x02178114 kind:load to:0x020b3160 add:0x8 module:overlay(0) -from:0x02178118 kind:load to:0x020b3fc8 module:overlay(0) +from:0x02178118 kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x02178154 kind:arm_call to:0x021337e4 module:overlay(26) from:0x0217816c kind:arm_call to:0x021337e4 module:overlay(26) from:0x02178180 kind:arm_call to:0x01ffb714 module:itcm diff --git a/config/jp/arm9/overlays/ov092/relocs.txt b/config/jp/arm9/overlays/ov092/relocs.txt index bd676cc3..9c827730 100644 --- a/config/jp/arm9/overlays/ov092/relocs.txt +++ b/config/jp/arm9/overlays/ov092/relocs.txt @@ -2104,7 +2104,7 @@ from:0x0217b138 kind:arm_call to:0x020fdf0c module:overlay(26) from:0x0217b168 kind:arm_call to:0x021053c0 module:overlay(26) from:0x0217b1a4 kind:arm_call to:0x021061f8 module:overlay(26) from:0x0217b1b0 kind:load to:0x0217f394 add:0x8 module:overlay(92) -from:0x0217b1b4 kind:load to:0x020b3fc8 module:overlay(0) +from:0x0217b1b4 kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x0217b24c kind:load to:0x021804e4 module:overlay(92) from:0x0217b250 kind:load to:0x0217f350 module:overlay(92) from:0x0217b254 kind:load to:0x02180534 module:overlay(92) diff --git a/config/jp/arm9/overlays/ov094/relocs.txt b/config/jp/arm9/overlays/ov094/relocs.txt index c452d4d8..f92a087e 100644 --- a/config/jp/arm9/overlays/ov094/relocs.txt +++ b/config/jp/arm9/overlays/ov094/relocs.txt @@ -1179,7 +1179,7 @@ from:0x02171db8 kind:arm_call to:0x020fdf0c module:overlay(26) from:0x02171de8 kind:arm_call to:0x021053c0 module:overlay(26) from:0x02171e24 kind:arm_call to:0x021061f8 module:overlay(26) from:0x02171e30 kind:load to:0x0217a084 add:0x8 module:overlay(94) -from:0x02171e34 kind:load to:0x020b3fc8 module:overlay(0) +from:0x02171e34 kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x02171e40 kind:arm_call_thumb to:0x0209ba14 module:overlay(0) from:0x02171ee0 kind:load to:0x0217b1e4 module:overlay(94) from:0x02171ee4 kind:load to:0x0217a040 module:overlay(94) diff --git a/config/jp/arm9/overlays/ov096/relocs.txt b/config/jp/arm9/overlays/ov096/relocs.txt index 3eec4e80..27fe3da8 100644 --- a/config/jp/arm9/overlays/ov096/relocs.txt +++ b/config/jp/arm9/overlays/ov096/relocs.txt @@ -187,7 +187,7 @@ from:0x0217d3e4 kind:load to:0x02180350 add:0x8 module:overlay(96) from:0x0217d3e8 kind:load to:0x021805f4 module:overlay(96) from:0x0217d3ec kind:load to:0x021802e0 module:overlay(96) from:0x0217d3f0 kind:load to:0x0218030c module:overlay(96) -from:0x0217d3f4 kind:load to:0x020b3fc8 module:overlay(0) +from:0x0217d3f4 kind:load to:0x020b3fc0 module:overlay(0) add:0x8 from:0x0217d400 kind:arm_call_thumb to:0x02059154 module:overlay(0) from:0x0217d414 kind:arm_call_thumb to:0x0209ba14 module:overlay(0) from:0x0217d428 kind:arm_call to:0x0207d6b4 module:overlay(0) diff --git a/include/Actor/Actor.hpp b/include/Actor/Actor.hpp index 87bd82ab..cd270019 100644 --- a/include/Actor/Actor.hpp +++ b/include/Actor/Actor.hpp @@ -219,6 +219,7 @@ public: unk32 func_ov000_020984c8(); void func_ov000_020984d0(); void func_ov000_020984f0(); + unk32 func_ov000_0209867c(unk32 param1); u32 func_ov000_02098800(bool param1); bool func_ov000_02098838(); unk32 func_ov000_02098910(UnkStruct_ov031_Items_00 *param1, unk32 param2); diff --git a/include/Actor/ActorBlast.hpp b/include/Actor/ActorBlast.hpp new file mode 100644 index 00000000..3d59be80 --- /dev/null +++ b/include/Actor/ActorBlast.hpp @@ -0,0 +1,64 @@ +#pragma once + +#include "Actor/Actor.hpp" +#include "Actor/ActorProfile.hpp" +#include "global.h" +#include "types.h" + +class ActorBlast; + +class ActorBlast_E8 : public UnkStruct_ov031_Items_00_Base { +public: + /* 00 (base) */ + /* 04 */ ActorBlast *mUnk_04; + /* 08 */ + + ActorBlast_E8(ActorBlast *param1) : + mUnk_04(param1) {} + + // data_ov031_02112d4c + /* 0C */ virtual bool vfunc_0C(const UnkStruct_ov031_020e54d4 *param1, unk32 param2) override; +}; + +class ActorBlast : public Actor { +public: + /* 00 (base) */ + /* 94 */ fx32 mUnk_94; + /* 98 */ volatile u16 mUnk_98; + /* 9A */ u16 mUnk_9A; + /* 9C */ UnkStruct_ov031_Items_01 mUnk_9C; + /* C8 */ Cylinder mUnk_C8; + /* D8 */ Cylinder mUnk_D8; + /* E8 */ ActorBlast_E8 mUnk_E8; + /* F0 */ fx32 mUnk_F0; + /* F4 */ fx32 mUnk_F4; + /* F8 */ + + ActorBlast(); + + /* 18 */ virtual bool vfunc_18(unk32 param1) override; + /* 20 */ virtual void vfunc_20() override; + /* 24 */ virtual void vfunc_24() override; + + bool IsInternalTimerOut() { + if (this->mUnk_98 < this->mUnk_9A) { + ++this->mUnk_98; + return false; + } + return true; + } + + fx32 func_ov031_020e3b94(); + void func_ov031_020e3b9c(unk16 param1, unk16 param2); +}; + +class ActorProfileBlast : public ActorProfile { +public: + /* 00 (base) */ + + ActorProfileBlast(); + + /* 0C */ virtual Actor *Create(); + + static ActorProfileBlast *GetProfile(); +}; diff --git a/include/Actor/ActorTable.inl b/include/Actor/ActorTable.inl index e915d516..447838a5 100644 --- a/include/Actor/ActorTable.inl +++ b/include/Actor/ActorTable.inl @@ -11,7 +11,7 @@ DEFINE_ACTOR_TYPE('AJNP', AJNP) DEFINE_ACTOR_TYPE('AJSP', AJSP) DEFINE_ACTOR_TYPE('AJTM', AJTM) DEFINE_ACTOR_TYPE('ALEV', ALEV) -DEFINE_ACTOR_TYPE('AROW', AROW) +DEFINE_ACTOR_TYPE('AROW', ShotArrow) DEFINE_ACTOR_TYPE('ASBA', ASBA) DEFINE_ACTOR_TYPE('ASYU', ASYU) DEFINE_ACTOR_TYPE('ATTG', ATTG) @@ -34,7 +34,7 @@ DEFINE_ACTOR_TYPE('BLBL', BLBL) DEFINE_ACTOR_TYPE('BLBR', BLBR) DEFINE_ACTOR_TYPE('BLJF', BLJF) DEFINE_ACTOR_TYPE('BLON', BLON) -DEFINE_ACTOR_TYPE('BLST', BLST) +DEFINE_ACTOR_TYPE('BLST', Blast) DEFINE_ACTOR_TYPE('BMHN', BMHN) DEFINE_ACTOR_TYPE('BMOC', BMOC) DEFINE_ACTOR_TYPE('BOMB', BOMB) @@ -184,7 +184,7 @@ DEFINE_ACTOR_TYPE('ICBB', ICBB) DEFINE_ACTOR_TYPE('ICBS', ICBS) DEFINE_ACTOR_TYPE('ITBM', ITBM) DEFINE_ACTOR_TYPE('ITSC', ITSC) -DEFINE_ACTOR_TYPE('ITTD', ITTD) +DEFINE_ACTOR_TYPE('ITTD', ItemTornado) DEFINE_ACTOR_TYPE('ITWP', ITWP) DEFINE_ACTOR_TYPE('IWTS', IWTS) DEFINE_ACTOR_TYPE('JOLN', JOLN) @@ -318,7 +318,7 @@ DEFINE_ACTOR_TYPE('RCFO', RCFO) DEFINE_ACTOR_TYPE('RCHU', RCHU) DEFINE_ACTOR_TYPE('RCMS', RCMS) DEFINE_ACTOR_TYPE('RCSG', RCSG) -DEFINE_ACTOR_TYPE('RLST', RLST) +DEFINE_ACTOR_TYPE('RLST', RollingStone) DEFINE_ACTOR_TYPE('RMA0', RMA0) DEFINE_ACTOR_TYPE('RMA1', RMA1) DEFINE_ACTOR_TYPE('RMA2', RMA2) diff --git a/include/Actor/ActorUnkBLST.hpp b/include/Actor/ActorUnkBLST.hpp deleted file mode 100644 index c39ac312..00000000 --- a/include/Actor/ActorUnkBLST.hpp +++ /dev/null @@ -1,49 +0,0 @@ -//! TODO: This file was generated automatically and might contain errors - -#pragma once - -#include "Actor/Actor.hpp" -#include "Actor/ActorProfile.hpp" -#include "global.h" -#include "types.h" - -class ActorUnkBLST_C4 : public Actor_C4 { -public: - ActorUnkBLST_C4(Actor *param1); - - /* 00 */ virtual bool vfunc_00(ActorRef ref, unk32 param2) override; - /* 04 */ virtual bool vfunc_04() override; - /* 08 */ virtual void vfunc_08() override; - /* 0C */ virtual void vfunc_0C(unk32 param1) override; -}; - -class ActorUnkBLST : public Actor { -public: - /* 00 (base) */ - /* 94 */ - - ActorUnkBLST(); - - /* 4C */ virtual ~ActorUnkBLST() override; - - void func_ov031_020e351c(void); - void func_ov031_020e373c(void); - void func_ov031_020e3750(void); - void func_ov031_020e39c4(void); - void func_ov031_020e3b44(void); - void func_ov031_020e3b94(void); - void func_ov031_020e3b9c(void); - void func_ov031_020e3c60(void); -}; - -class ActorProfileUnkBLST : public ActorProfile { -public: - /* 00 (base) */ - - ActorProfileUnkBLST(); - ~ActorProfileUnkBLST(); - - /* 0C */ virtual Actor *Create(); - - static ActorProfileUnkBLST *GetProfile(); -}; diff --git a/include/Actor/ActorUnkBOMB.hpp b/include/Actor/ActorUnkBOMB.hpp index 38fffe07..eb87c119 100644 --- a/include/Actor/ActorUnkBOMB.hpp +++ b/include/Actor/ActorUnkBOMB.hpp @@ -7,6 +7,18 @@ #include "global.h" #include "types.h" +class ActorUnkBOMB_unk : public UnkStruct_PlayerGet_ec { +public: + /* 00 (base) */ + /* 04 */ unk32 mUnk_04; + /* 08 */ unk32 mUnk_08; + /* 0C */ + + ActorUnkBOMB_unk(); // ActorUnkBOMB::func_ov031_020e33ac() + + // ActorUnkBOMB::func_ov031_020e17f4() dtor ? +}; + class ActorUnkBOMB_C4 : public Actor_C4 { public: ActorUnkBOMB_C4(Actor *param1); diff --git a/include/Actor/ActorUnkRMTG.hpp b/include/Actor/ActorUnkRMTG.hpp index 5be785a1..4d5c801c 100644 --- a/include/Actor/ActorUnkRMTG.hpp +++ b/include/Actor/ActorUnkRMTG.hpp @@ -1,5 +1,3 @@ -//! TODO: This file was generated automatically and might contain errors - #pragma once #include "Actor/Actor.hpp" @@ -7,28 +5,17 @@ #include "global.h" #include "types.h" -class ActorUnkRMTG_C4 : public Actor_C4 { -public: - ActorUnkRMTG_C4(Actor *param1); - - /* 00 */ virtual bool vfunc_00(ActorRef ref, unk32 param2) override; - /* 04 */ virtual bool vfunc_04() override; - /* 08 */ virtual void vfunc_08() override; - /* 0C */ virtual void vfunc_0C(unk32 param1) override; -}; - class ActorUnkRMTG : public Actor { public: /* 00 (base) */ - /* 94 */ + /* 94 */ ModelRender mUnk_94; + /* F4 */ ActorUnkRMTG(); - /* 4C */ virtual ~ActorUnkRMTG() override; - - void func_ov031_020ef8a0(void); - void func_ov031_020ef958(void); - void func_ov031_020ef990(void); + /* 18 */ virtual bool vfunc_18(unk32 param1) override; + /* 1C */ virtual void vfunc_1C() override; + /* 2C */ virtual void vfunc_2C(unk32 param1) override; }; class ActorProfileUnkRMTG : public ActorProfile_Derived1 { @@ -36,7 +23,6 @@ public: /* 00 (base) */ ActorProfileUnkRMTG(); - ~ActorProfileUnkRMTG(); /* 0C */ virtual Actor *Create(); diff --git a/include/Actor/ActorUnkSCCN.hpp b/include/Actor/ActorUnkSCCN.hpp index 4ac7f841..58359d54 100644 --- a/include/Actor/ActorUnkSCCN.hpp +++ b/include/Actor/ActorUnkSCCN.hpp @@ -1,32 +1,36 @@ -//! TODO: This file was generated automatically and might contain errors - #pragma once #include "Actor/Actor.hpp" #include "Actor/ActorProfile.hpp" +#include "MapObject/MapObject.hpp" #include "global.h" #include "types.h" -class ActorUnkSCCN_C4 : public Actor_C4 { +class ActorUnkSCCN_B8 { public: - ActorUnkSCCN_C4(Actor *param1); + /* 00 (vtable) */ + /* 04 */ ActorRef mUnk_04; + /* 08 */ VecFx32 *mUnk_08; + /* 0C */ MapObject_10 *mUnk_0C; + /* 10 */ - /* 00 */ virtual bool vfunc_00(ActorRef ref, unk32 param2) override; - /* 04 */ virtual bool vfunc_04() override; - /* 08 */ virtual void vfunc_08() override; - /* 0C */ virtual void vfunc_0C(unk32 param1) override; + ActorUnkSCCN_B8(); // func_ov000_0207ec88 set all fields to 0 + + // data_ov000_020b287c + /* 00 */ virtual ~ActorUnkSCCN_B8(); // func_ov000_0207eca8 & func_ov000_0207ecd8 + /* 08 */ virtual void vfunc_08(); // func_ov000_0207ed84 }; class ActorUnkSCCN : public Actor { public: /* 00 (base) */ - /* 94 */ + /* 94 */ MapObject_10 mUnk_94; + /* B8 */ ActorUnkSCCN_B8 mUnk_B8; + /* C8 */ ActorUnkSCCN(); - /* 4C */ virtual ~ActorUnkSCCN() override; - - void func_ov031_020efaa0(void); + /* 18 */ virtual bool vfunc_18(unk32 param1) override; }; class ActorProfileUnkSCCN : public ActorProfile { @@ -34,7 +38,6 @@ public: /* 00 (base) */ ActorProfileUnkSCCN(); - ~ActorProfileUnkSCCN(); /* 0C */ virtual Actor *Create(); diff --git a/include/Actor/ActorUnkSKDO.hpp b/include/Actor/ActorUnkSKDO.hpp index fe74c150..fdd66f0c 100644 --- a/include/Actor/ActorUnkSKDO.hpp +++ b/include/Actor/ActorUnkSKDO.hpp @@ -1,36 +1,38 @@ -//! TODO: This file was generated automatically and might contain errors - #pragma once #include "Actor/Actor.hpp" #include "Actor/ActorProfile.hpp" +#include "Map/MapObjectId.hpp" +#include "MapObject/MapObjectUnkSKDI.hpp" +#include "Unknown/UnkStruct_ov000_020b34c4.hpp" #include "global.h" #include "types.h" -class ActorUnkSKDO_C4 : public Actor_C4 { +class ActorUnkSKDO_ov031_02115ce8 : public UnkStruct_ov000_020b34c4 { public: - ActorUnkSKDO_C4(Actor *param1); + /* 00 (base) */ + /* 18 */ - /* 00 */ virtual bool vfunc_00(ActorRef ref, unk32 param2) override; - /* 04 */ virtual bool vfunc_04() override; - /* 08 */ virtual void vfunc_08() override; - /* 0C */ virtual void vfunc_0C(unk32 param1) override; + ActorUnkSKDO_ov031_02115ce8(MapObjectId mapObjId) : + UnkStruct_ov000_020b34c4(mapObjId) {} + + // data_ov031_02115ce8 + virtual bool vfunc_00(MapObject *param1); }; class ActorUnkSKDO : public Actor { public: /* 00 (base) */ - /* 94 */ + /* 94 */ unk32 mUnk_94; + /* 98 */ MapObjectUnkSKDI *mUnk_98; + /* 9C */ ActorUnkSKDO(); - /* 4C */ virtual ~ActorUnkSKDO() override; - - void func_ov031_02106de0(void); - void func_ov031_02106de8(void); - void func_ov031_02106e58(void); - void func_ov031_02106e90(void); - void func_ov031_02106e98(void); + /* 18 */ virtual bool vfunc_18(unk32 param1) override; + /* 1C */ virtual void vfunc_1C() override; + /* 20 */ virtual void vfunc_20() override; + /* 54 */ virtual void vfunc_54(unk32 param1); }; class ActorProfileUnkSKDO : public ActorProfile { @@ -38,7 +40,6 @@ public: /* 00 (base) */ ActorProfileUnkSKDO(); - ~ActorProfileUnkSKDO(); /* 0C */ virtual Actor *Create(); diff --git a/include/Actor/ActorUnkSWCH.hpp b/include/Actor/ActorUnkSWCH.hpp index faa7a97d..4b9a95ea 100644 --- a/include/Actor/ActorUnkSWCH.hpp +++ b/include/Actor/ActorUnkSWCH.hpp @@ -1,5 +1,3 @@ -//! TODO: This file was generated automatically and might contain errors - #pragma once #include "Actor/Actor.hpp" @@ -7,28 +5,18 @@ #include "global.h" #include "types.h" -class ActorUnkSWCH_C4 : public Actor_C4 { -public: - ActorUnkSWCH_C4(Actor *param1); - - /* 00 */ virtual bool vfunc_00(ActorRef ref, unk32 param2) override; - /* 04 */ virtual bool vfunc_04() override; - /* 08 */ virtual void vfunc_08() override; - /* 0C */ virtual void vfunc_0C(unk32 param1) override; -}; - class ActorUnkSWCH : public Actor { public: /* 00 (base) */ - /* 94 */ + /* 94 */ unk32 mUnk_94; + /* 98 */ Actor_9C mUnk_98; + /* B0 */ ActorUnkSWCH(); - /* 4C */ virtual ~ActorUnkSWCH() override; - - void func_ov031_020f7b0c(void); - void func_ov031_020f7b20(void); - void func_ov031_020f7b88(void); + /* 18 */ virtual bool vfunc_18(unk32 param1) override; + /* 20 */ virtual void vfunc_20() override; + /* 2C */ virtual void vfunc_2C(unk32 param1) override; }; class ActorProfileUnkSWCH : public ActorProfile { @@ -36,7 +24,6 @@ public: /* 00 (base) */ ActorProfileUnkSWCH(); - ~ActorProfileUnkSWCH(); /* 0C */ virtual Actor *Create(); diff --git a/include/Actor/ActorUnkTLKT.hpp b/include/Actor/ActorUnkTLKT.hpp index 4e409d68..40b93cab 100644 --- a/include/Actor/ActorUnkTLKT.hpp +++ b/include/Actor/ActorUnkTLKT.hpp @@ -1,38 +1,71 @@ -//! TODO: This file was generated automatically and might contain errors - #pragma once #include "Actor/Actor.hpp" #include "Actor/ActorProfile.hpp" +#include "MapObject/MapObjectDoorBase.hpp" #include "global.h" #include "types.h" -class ActorUnkTLKT_C4 : public Actor_C4 { -public: - ActorUnkTLKT_C4(Actor *param1); - - /* 00 */ virtual bool vfunc_00(ActorRef ref, unk32 param2) override; - /* 04 */ virtual bool vfunc_04() override; - /* 08 */ virtual void vfunc_08() override; - /* 0C */ virtual void vfunc_0C(unk32 param1) override; +enum ActorUnkTLKTState_ { + ActorUnkTLKTState_0 = 0, + ActorUnkTLKTState_1 = 1, + ActorUnkTLKTState_2 = 2, + ActorUnkTLKTState_3 = 3, + ActorUnkTLKTState_4 = 4, + ActorUnkTLKTState_MAX }; -class ActorUnkTLKT : public Actor { +class ActorUnkTLKT_Base : public Actor { public: /* 00 (base) */ /* 94 */ + ActorUnkTLKT_Base(); // func_ov031_020e3da0 + + /* 18 */ virtual bool vfunc_18(unk32 param1) override; // func_ov031_020e3e18 + /* 1C */ virtual void vfunc_1C() override; // func_ov031_020e3e44 + /* 20 */ virtual void vfunc_20() override; // func_ov031_020e3e84 + /* 24 */ virtual void vfunc_24() override; // func_ov031_020e3ed8 + // /* 4C */ virtual ~ActorUnkTLKT_Base() override; // func_ov031_020e40a8 & func_ov031_020e40bc + /* 54 */ virtual void vfunc_54(); // func_ov031_020e3f50 + /* 58 */ virtual void vfunc_58(); // func_ov031_020e4074 + /* 5C */ virtual void vfunc_5C(); // func_ov031_020e4078 + /* 60 */ virtual void vfunc_60(ActorState state); // func_ov031_020e407c + + void func_ov031_020e3e6c(); +}; + +class ActorUnkTLKT_9C : public MapObject_UnkStruct1 { +public: + /* 00 (base) */ + /* 08 */ + + ActorUnkTLKT_9C() { + this->mUnk_04 = 0xFFFFFFFF; + } + + // data_ov031_02112eec + /* 00 */ virtual void vfunc2_00() override; +}; + +class ActorUnkTLKT : public ActorUnkTLKT_Base { +public: + /* 00 (base) */ + /* 94 */ STRUCT_PAD(0x94, 0x9C); + /* 9C */ ActorUnkTLKT_9C mUnk_9C; + /* A4 */ + ActorUnkTLKT(); + /* 24 */ virtual void vfunc_24() override; // func_ov031_020e41ec /* 4C */ virtual ~ActorUnkTLKT() override; + /* 58 */ virtual void vfunc_58() override; // func_ov031_020e4238 + /* 60 */ virtual void vfunc_60(ActorState state) override; // func_ov031_020e4320 + /* 64 */ virtual void vfunc_64(); // func_ov031_020e42ac + /* 68 */ virtual void vfunc_68(); // func_ov031_020e42f0 - void func_ov031_020e41ec(void); - void func_ov031_020e4238(void); - void func_ov031_020e4274(void); - void func_ov031_020e42ac(void); - void func_ov031_020e42f0(void); - void func_ov031_020e4320(void); - void func_ov031_020e4514(void); + void func_ov031_020e4274(); + void func_ov031_020e4514(); }; class ActorProfileUnkTLKT : public ActorProfile { @@ -40,7 +73,6 @@ public: /* 00 (base) */ ActorProfileUnkTLKT(); - ~ActorProfileUnkTLKT(); /* 0C */ virtual Actor *Create(); diff --git a/include/Map/MapObjectTable.inl b/include/Map/MapObjectTable.inl index fd31d127..1d378cc9 100644 --- a/include/Map/MapObjectTable.inl +++ b/include/Map/MapObjectTable.inl @@ -83,7 +83,7 @@ DEFINE_MAP_OBJECT_TYPE('GATE', GATE) DEFINE_MAP_OBJECT_TYPE('GBDR', GBDR) DEFINE_MAP_OBJECT_TYPE('GELG', GELG) DEFINE_MAP_OBJECT_TYPE('GRSG', GRSG) -DEFINE_MAP_OBJECT_TYPE('GRSS', GRSS) +DEFINE_MAP_OBJECT_TYPE('GRSS', Grass) DEFINE_MAP_OBJECT_TYPE('GRSV', GRSV) DEFINE_MAP_OBJECT_TYPE('GSST', GSST) DEFINE_MAP_OBJECT_TYPE('GTAT', GTAT) @@ -239,7 +239,7 @@ DEFINE_MAP_OBJECT_TYPE('TRTS', TRTS) DEFINE_MAP_OBJECT_TYPE('TRWA', TRWA) DEFINE_MAP_OBJECT_TYPE('TRWS', TRWS) DEFINE_MAP_OBJECT_TYPE('TSGM', TSGM) -DEFINE_MAP_OBJECT_TYPE('TSUB', TSUB) +DEFINE_MAP_OBJECT_TYPE('TSUB', Pot) DEFINE_MAP_OBJECT_TYPE('TWGS', TWGS) DEFINE_MAP_OBJECT_TYPE('TWPC', TWPC) DEFINE_MAP_OBJECT_TYPE('TWPG', TWPG) diff --git a/include/MapObject/MapObject.hpp b/include/MapObject/MapObject.hpp index ac0c927e..80357857 100644 --- a/include/MapObject/MapObject.hpp +++ b/include/MapObject/MapObject.hpp @@ -112,13 +112,16 @@ public: static void func_ov000_0209c7ac(MapObjectId mapObjId); }; +typedef s16 MapObjState; +#define MapObjState_None -1 + class MapObject { public: /* 00 (vtable) */ /* 04 */ VecFx32 mPos; /* 10 */ MapObject_10 *mUnk_10; /* 14 */ s16 mUnk_14; - /* 16 */ s16 mUnk_16; + /* 16 */ MapObjState mState; /* 18 */ unk8 mUnk_18[2]; // related to Link walking to the map object when touched /* 1A */ unk8 mUnk_1A; /* 1B */ unk8 mUnk_1B; @@ -165,7 +168,7 @@ public: MapObject(); MapObjectId GetMapObjectId(); - void func_01fff590(unk32 param2); + unk32 func_01fff590(unk32 param2); bool func_ov000_0209d114(); bool func_ov000_0209d12c(); @@ -174,7 +177,7 @@ public: bool func_ov000_0209d29c(unk32 param1); void func_ov000_0209d2c4(unk32 param1, bool param2); void func_ov000_0209d2f0(unk32 param1, unk32 param2, Vec2bCpp *param3); - void func_ov000_0209d3b4(unk32 param1, fx32 size); + unk32 func_ov000_0209d3b4(unk32 param1, fx32 size); void func_ov000_0209d434(s8 *param1, UnkStruct_ov019_020d24c8_28_258_00 *param2, unk32 param3); void func_ov000_0209d518(VecFx32 *param1, unk32 param2, unk32 param3, u8 param4); void func_ov000_0209d5c8(ActorRef ref); diff --git a/include/MapObject/MapObjectChestBase.hpp b/include/MapObject/MapObjectChestBase.hpp index 3899efe9..95ef0c3d 100644 --- a/include/MapObject/MapObjectChestBase.hpp +++ b/include/MapObject/MapObjectChestBase.hpp @@ -27,6 +27,19 @@ public: void func_ov031_0210306c(void); }; +enum MapObjectChestBaseState { + MapObjChestBaseState_0 = 0, + MapObjChestBaseState_1 = 1, + MapObjChestBaseState_2 = 2, + MapObjChestBaseState_3 = 3, + MapObjChestBaseState_4 = 4, + MapObjChestBaseState_5 = 5, + MapObjChestBaseState_6 = 6, + MapObjChestBaseState_7 = 7, + MapObjChestBaseState_8 = 8, + MapObjChestBaseState_MAX +}; + class MapObjectChestBase : public MapObject { public: /* 000 (base) */ diff --git a/include/MapObject/MapObjectDoorBase.hpp b/include/MapObject/MapObjectDoorBase.hpp index 2557f575..28d2cc96 100644 --- a/include/MapObject/MapObjectDoorBase.hpp +++ b/include/MapObject/MapObjectDoorBase.hpp @@ -6,13 +6,10 @@ class MapObject_UnkStruct1 { public: /* 00 (vtable) */ - /* 04 */ unk32 mUnk_44; - /* 08 */ unk16 mUnk_48; - /* 0A */ s16 mUnk_4A; - /* 0C */ VecFx32 mUnk_4C; - /* 18 */ + /* 04 */ unk32 mUnk_04; + /* 08 */ - MapObject_UnkStruct1(); // func_ov000_02073194 & func_ov000_020731c4 + // MapObject_UnkStruct1(); // func_ov000_02073194 & func_ov000_020731c4 // data_ov000_020b2290 /* 00 */ virtual void vfunc2_00(); @@ -24,6 +21,9 @@ public: class MapObject_UnkStruct1_Derived1 : public MapObject_UnkStruct1 { public: /* 00 (base) */ + /* 08 */ unk16 mUnk_48; + /* 0A */ s16 mUnk_4A; + /* 0C */ VecFx32 mUnk_4C; /* 18 */ bool mUnk_58; /* 19 */ unk8 mUnk_59; /* 1A */ s16 mUnk_5A; @@ -46,6 +46,19 @@ public: /* 08 */ virtual void vfunc2_08() override; }; +enum MapObjectDoorBaseState { + MapObjDoorBaseState_0 = 0, + MapObjDoorBaseState_1 = 1, + MapObjDoorBaseState_2 = 2, + MapObjDoorBaseState_3 = 3, + MapObjDoorBaseState_4 = 4, + MapObjDoorBaseState_5 = 5, + MapObjDoorBaseState_6 = 6, + MapObjDoorBaseState_7 = 7, + MapObjDoorBaseState_8 = 8, + MapObjDoorBaseState_MAX +}; + class MapObjectDoorBase : public MapObject, public MapObject_UnkStruct1_Derived2 { public: /* 00 (base MapObject) */ @@ -102,7 +115,7 @@ public: /* 50 */ virtual void vfunc_50(); /* 54 */ virtual void vfunc_54(); /* 58 */ virtual void vfunc_58(); - /* 5C */ virtual void vfunc_5C(unk32 param1, unk32 param2); + /* 5C */ virtual void vfunc_5C(MapObjState state, unk32 param2); /* 60 */ virtual void vfunc_60(); /* 64 */ virtual bool vfunc_64(); /* 68 */ virtual bool vfunc_68(); diff --git a/include/MapObject/MapObjectDoorClick.hpp b/include/MapObject/MapObjectDoorClick.hpp index a82a0e57..2b18957e 100644 --- a/include/MapObject/MapObjectDoorClick.hpp +++ b/include/MapObject/MapObjectDoorClick.hpp @@ -17,6 +17,19 @@ public: static MapObjectProfileDoorClick *GetProfile(); }; +enum MapObjDoorClickState_ { + MapObjDoorClickState_0 = 0, + MapObjDoorClickState_1 = 1, + MapObjDoorClickState_2 = 2, + MapObjDoorClickState_3 = 3, + MapObjDoorClickState_4 = 4, + MapObjDoorClickState_5 = 5, + MapObjDoorClickState_6 = 6, + MapObjDoorClickState_7 = 7, + MapObjDoorClickState_8 = 8, + MapObjDoorClickState_MAX, +}; + class MapObjectDoorClick : public MapObjectDoorBase { public: /* 00 (base) */ @@ -42,7 +55,7 @@ public: /* 44 */ virtual void vfunc_44() override; /* 48 */ virtual void vfunc_48() override; /* 4C */ virtual void vfunc_4C() override; - /* 5C */ virtual void vfunc_5C(unk32 param1, unk32 param2) override; + /* 5C */ virtual void vfunc_5C(MapObjState state, unk32 param2) override; /* 64 */ virtual bool vfunc_64() override; /* 68 */ virtual bool vfunc_68() override; /* 6C */ virtual bool vfunc_6C() override; diff --git a/include/MapObject/MapObjectDoorDangerSpawn.hpp b/include/MapObject/MapObjectDoorDangerSpawn.hpp index ede99ebd..a36acaa9 100644 --- a/include/MapObject/MapObjectDoorDangerSpawn.hpp +++ b/include/MapObject/MapObjectDoorDangerSpawn.hpp @@ -1,13 +1,20 @@ #pragma once -#include "MapObject/MapObject.hpp" #include "MapObject/MapObjectDoorBase.hpp" #include "MapObject/MapObjectProfile.hpp" -#include "Player/PlayerGet.hpp" #include "Unknown/Common.hpp" +#include "Unknown/UnkStruct_ov000_020b34c4.hpp" #include "global.h" #include "types.h" +class MapObjectDoorDangerSpawn_ov031_02116e24 : public UnkStruct_ov000_020b34c4 { +public: + MapObjectDoorDangerSpawn_ov031_02116e24(MapObjectId mapObjectId) : + UnkStruct_ov000_020b34c4(mapObjectId) {} + + bool vfunc_00(MapObject *param1) override; +}; + class MapObjectProfileDoorDangerSpawn : public MapObjectProfile_Derived2 { public: /* 00 (base) */ @@ -20,6 +27,19 @@ public: static MapObjectProfileDoorDangerSpawn *GetProfile(); }; +enum MapObjDoorDangerSpawnState_ { + MapObjDoorDangerSpawnState_0 = 0, + MapObjDoorDangerSpawnState_1 = 1, + MapObjDoorDangerSpawnState_2 = 2, + MapObjDoorDangerSpawnState_3 = 3, + MapObjDoorDangerSpawnState_4 = 4, + MapObjDoorDangerSpawnState_5 = 5, + MapObjDoorDangerSpawnState_6 = 6, + MapObjDoorDangerSpawnState_7 = 7, + MapObjDoorDangerSpawnState_8 = 8, + MapObjDoorDangerSpawnState_MAX +}; + class MapObjectDoorDangerSpawn : public MapObjectDoorBase { public: /* 00 (base) */ @@ -57,7 +77,7 @@ public: /* 44 */ virtual void vfunc_44() override; /* 48 */ virtual void vfunc_48() override; /* 4C */ virtual void vfunc_4C() override; - /* 5C */ virtual void vfunc_5C(unk32 param1, unk32 param2) override; + /* 5C */ virtual void vfunc_5C(MapObjState state, unk32 param2) override; /* 64 */ virtual bool vfunc_64() override; /* 68 */ virtual bool vfunc_68() override; /* 6C */ virtual bool vfunc_6C() override; diff --git a/include/MapObject/MapObjectDoorKey.hpp b/include/MapObject/MapObjectDoorKey.hpp index 2de00cfa..5189e653 100644 --- a/include/MapObject/MapObjectDoorKey.hpp +++ b/include/MapObject/MapObjectDoorKey.hpp @@ -6,6 +6,19 @@ #include "global.h" #include "types.h" +enum MapObjDoorKeyState_ { + MapObjDoorKeyState_0 = 0, + MapObjDoorKeyState_1 = 1, + MapObjDoorKeyState_2 = 2, + MapObjDoorKeyState_3 = 3, + MapObjDoorKeyState_4 = 4, + MapObjDoorKeyState_5 = 5, + MapObjDoorKeyState_6 = 6, + MapObjDoorKeyState_7 = 7, + MapObjDoorKeyState_8 = 8, + MapObjDoorKeyState_MAX +}; + class MapObjectDoorKey : public MapObjectDoorBase { public: /* 00 (base) */ @@ -33,7 +46,7 @@ public: /* 44 */ virtual void vfunc_44() override; /* 48 */ virtual void vfunc_48() override; /* 4C */ virtual void vfunc_4C() override; - /* 5C */ virtual void vfunc_5C(unk32 param1, unk32 param2) override; + /* 5C */ virtual void vfunc_5C(MapObjState state, unk32 param2) override; /* 64 */ virtual bool vfunc_64() override; /* 68 */ virtual bool vfunc_68() override; /* 6C */ virtual bool vfunc_6C() override; diff --git a/include/MapObject/MapObjectDoorSwitch.hpp b/include/MapObject/MapObjectDoorSwitch.hpp index 0be299ee..5f50fba2 100644 --- a/include/MapObject/MapObjectDoorSwitch.hpp +++ b/include/MapObject/MapObjectDoorSwitch.hpp @@ -8,6 +8,16 @@ #include "types.h" #include "versions.h" +enum MapObjDoorSwitchState_ { + MapObjDoorSwitchState_0 = 0, + MapObjDoorSwitchState_1 = 1, + MapObjDoorSwitchState_2 = 2, + MapObjDoorSwitchState_3 = 3, + MapObjDoorSwitchState_4 = 4, + MapObjDoorSwitchState_5 = 5, + MapObjDoorSwitchState_MAX, +}; + class MapObjectDoorSwitch : public MapObjectDoorBase { public: /* 000 (base) */ diff --git a/include/MapObject/MapObjectGrass.hpp b/include/MapObject/MapObjectGrass.hpp new file mode 100644 index 00000000..98c88363 --- /dev/null +++ b/include/MapObject/MapObjectGrass.hpp @@ -0,0 +1,54 @@ +#pragma once + +#include "MapObject/MapObject.hpp" +#include "MapObject/MapObjectProfile.hpp" +#include "global.h" +#include "types.h" + +enum MapObjGrassState_ { + MapObjGrassState_0, + MapObjGrassState_1, + MapObjGrassState_2, + MapObjGrassState_3, + MapObjGrassState_MAX +}; + +class MapObjectGrass : public MapObject { +public: + /* 00 (base) */ + /* 40 */ VecFx32 mUnk_40[2]; + /* 58 */ u16 mUnk_58; + /* 5C */ fx32 mUnk_5C; + /* 60 */ unk16 mUnk_60; + /* 62 */ unk16 mUnk_62; + /* 64 */ unk32 mUnk_64; + /* 68 */ + + MapObjectGrass(); + + /* 00 */ virtual bool vfunc_00() override; + /* 08 */ virtual void vfunc_08() override; + /* 14 */ virtual void vfunc_14() override; + /* 1C */ virtual bool vfunc_1C(ActorRef param1, unk32 param2, VecFx32 *param3) override; + /* 38 */ virtual bool vfunc_38(MapObjState state, unk32 param2); + /* 3C */ virtual void vfunc_3C(VecFx32 *param1); + + bool func_ov031_021016b4(); + bool func_ov031_02101778(); + void func_ov031_021018a4(unk16 param1); + unk32 func_ov031_02101950(); + void func_ov031_02101968(unk32 param1); + void func_ov031_02101978(unk32 param1, VecFx32 *param2); +}; + +class MapObjectProfileGrass : public MapObjectProfile_Derived2 { +public: + /* 00 (base) */ + /* D4 */ MapObject_10 mUnk_D4; + + MapObjectProfileGrass(); + + /* 0C */ virtual MapObject *Create(); + + static MapObjectProfileGrass *GetProfile(); +}; diff --git a/include/MapObject/MapObjectSwitchStep.hpp b/include/MapObject/MapObjectSwitchStep.hpp index a8ef6d17..a3051c30 100644 --- a/include/MapObject/MapObjectSwitchStep.hpp +++ b/include/MapObject/MapObjectSwitchStep.hpp @@ -24,6 +24,14 @@ public: void func_ov000_0209dde0(void); }; +enum MapObjSwitchStepState_ { + MapObjSwitchStepState_0 = 0, + MapObjSwitchStepState_1 = 1, + MapObjSwitchStepState_2 = 2, + MapObjSwitchStepState_3 = 3, + MapObjSwitchStepState_MAX +}; + class MapObjectSwitchStep : public MapObject { public: /* 00 (base) */ @@ -49,7 +57,7 @@ public: void func_ov000_0209dda4(void); - void func_ov000_0209e11c(unk32 param1, unk32 param2); + void func_ov000_0209e11c(MapObjState state, unk32 param2); void func_ov000_0209e38c(void); }; diff --git a/include/MapObject/MapObjectUnkGRSS.hpp b/include/MapObject/MapObjectUnkGRSS.hpp deleted file mode 100644 index 4a452c10..00000000 --- a/include/MapObject/MapObjectUnkGRSS.hpp +++ /dev/null @@ -1,44 +0,0 @@ -//! TODO: This file was generated automatically and might contain errors - -#pragma once - -#include "MapObject/MapObject.hpp" -#include "MapObject/MapObjectProfile.hpp" -#include "global.h" -#include "types.h" - -class MapObjectUnkGRSS : public MapObject { -public: - /* 00 (base) */ - /* 40 */ - - MapObjectUnkGRSS(); - - /* 30 */ virtual ~MapObjectUnkGRSS() override; - - void func_ov031_021010e0(void); - void func_ov031_02101170(void); - void func_ov031_0210148c(void); - void func_ov031_02101504(void); - void func_ov031_02101578(void); - void func_ov031_021016b4(void); - void func_ov031_0210173c(void); - void func_ov031_02101778(void); - void func_ov031_021017ec(void); - void func_ov031_021018a4(void); - void func_ov031_02101950(void); - void func_ov031_02101968(void); - void func_ov031_02101978(void); -}; - -class MapObjectProfileUnkGRSS : public MapObjectProfile { -public: - /* 00 (base) */ - - MapObjectProfileUnkGRSS(); - ~MapObjectProfileUnkGRSS(); - - /* 0C */ virtual MapObject *Create(); - - static MapObjectProfileUnkGRSS *GetProfile(); -}; diff --git a/include/MapObject/MapObjectUnkSKDI.hpp b/include/MapObject/MapObjectUnkSKDI.hpp index 68cfd504..56bd86aa 100644 --- a/include/MapObject/MapObjectUnkSKDI.hpp +++ b/include/MapObject/MapObjectUnkSKDI.hpp @@ -1,44 +1,71 @@ -//! TODO: This file was generated automatically and might contain errors - #pragma once +#include "Actor/ActorUnkBOMB.hpp" #include "MapObject/MapObject.hpp" #include "MapObject/MapObjectProfile.hpp" +#include "Unknown/UnkStruct_ov031_Items.hpp" #include "global.h" #include "types.h" +enum MapObjUnkSKDIState_ { + MapObjUnkSKDIState_0 = 0, + MapObjUnkSKDIState_1 = 1, + MapObjUnkSKDIState_2 = 2, + MapObjUnkSKDIState_3 = 3, + MapObjUnkSKDIState_MAX +}; + class MapObjectUnkSKDI : public MapObject { public: - /* 00 (base) */ - /* 40 */ + /* 000 (base) */ + /* 040 */ UnkSystem6_Derived2 mUnk_040; + /* 048 */ unk8 mUnk_048; + /* 049 */ STRUCT_PAD(0x049, 0x04C); + /* 04C */ ActorUnkBOMB_unk mUnk_04C[0x4]; + /* 07C */ unk32 mUnk_07C; + /* 080 */ unk32 mUnk_080; + /* 084 */ u16 mUnk_084; + /* 086 */ u8 mUnk_086; + /* 087 */ u8 mUnk_087; + /* 088 */ u8 mUnk_088; + /* 089 */ unk8 mUnk_089; + /* 080 */ STRUCT_PAD(0x08A, 0x08C); + /* 08C */ UnkStruct_ov031_Items_02 mUnk_08C; + /* 0A8 */ STRUCT_PAD(0x098, 0x0BC); + /* 0BC */ unk32 mUnk_0BC; + /* 0C0 */ STRUCT_PAD(0x0C0, 0x0D4); + /* 0D4 */ MapObject_10 mUnk_0D4; + /* 0F8 */ volatile u16 mUnk_0F8; + /* 0FA */ u16 mUnk_0FA; + /* 0FC */ unk32 mUnk_0FC; + /* 100 */ MapObjectUnkSKDI(); - /* 30 */ virtual ~MapObjectUnkSKDI() override; + /* 00 */ virtual bool vfunc_00() override; + /* 04 */ virtual void vfunc_04() override; + /* 08 */ virtual void vfunc_08() override; + /* 0C */ virtual void vfunc_0C() override; + /* 14 */ virtual void vfunc_14() override; + /* 1C */ virtual bool vfunc_1C(ActorRef param1, unk32 param2, VecFx32 *param3) override; + /* 38 */ virtual unk32 vfunc_38(); + /* 3C */ virtual unk32 vfunc_3C(); + /* 40 */ virtual s16 vfunc_40(); - void func_ov031_02106190(void); - void func_ov031_021061dc(void); - void func_ov031_02106224(void); - void func_ov031_021062ec(void); - void func_ov031_021063cc(void); - void func_ov031_021063dc(void); - void func_ov031_0210643c(void); - void func_ov031_02106678(void); - void func_ov031_02106a70(void); - void func_ov031_02106a84(void); - void func_ov031_02106c78(void); - void func_ov031_02106c98(void); - void func_ov031_02106ca0(void); - void func_ov031_02106ca8(void); - void func_ov031_02106cb0(void); + void func_ov031_02106190(); + void func_ov031_021061dc(); + void func_ov031_0210643c(unk32 param1); + void func_ov031_02106a70(); + void func_ov031_02106678(MapObjState state, unk32 param2); + void func_ov031_02106cb0(unk32 param1); }; -class MapObjectProfileUnkSKDI : public MapObjectProfile { +class MapObjectProfileUnkSKDI : public MapObjectProfile_Derived2 { public: /* 00 (base) */ + /* D4 */ MapObjectProfileUnkSKDI(); - ~MapObjectProfileUnkSKDI(); /* 0C */ virtual MapObject *Create(); diff --git a/include/Unknown/UnkStruct_027e09a8.hpp b/include/Unknown/UnkStruct_027e09a8.hpp index 8ebd91b4..20120162 100644 --- a/include/Unknown/UnkStruct_027e09a8.hpp +++ b/include/Unknown/UnkStruct_027e09a8.hpp @@ -8,7 +8,7 @@ public: // overlay 0 void func_ov000_020713bc(); void func_ov000_020716dc(unk32 param1); - void func_ov000_02071b30(unk32 param1, VecFx32 *pPos, unk32 param3); + u16 func_ov000_02071b30(unk32 param1, VecFx32 *pPos, unk32 param3); void func_ov000_02071d34(void *param1, unk32 param2, VecFx32 *pPos, unk32 param4); void func_ov000_02071eac(VecFx32 *pPos); diff --git a/include/Unknown/UnkStruct_027e09bc.hpp b/include/Unknown/UnkStruct_027e09bc.hpp index ef243cc3..fdf71836 100644 --- a/include/Unknown/UnkStruct_027e09bc.hpp +++ b/include/Unknown/UnkStruct_027e09bc.hpp @@ -33,6 +33,7 @@ public: bool func_ov000_02078764(VecFx32 *param1, void *param2, unk32 param3); void func_ov000_02078ba4(); void func_ov000_02078cec(); + void func_ov000_0207a1e0(unk32 param1); }; class UnkStruct_027e09bc_24 : public UnkStruct_0204a060_Base { diff --git a/include/Unknown/UnkStruct_027e09c0.hpp b/include/Unknown/UnkStruct_027e09c0.hpp index 677deab8..94561de5 100644 --- a/include/Unknown/UnkStruct_027e09c0.hpp +++ b/include/Unknown/UnkStruct_027e09c0.hpp @@ -2,6 +2,7 @@ #include "Actor/ActorRef.hpp" #include "Actor/ActorShotArrow.hpp" +#include "Actor/ActorUnkSCCN.hpp" #include "Unknown/UnkFileSystem.hpp" #include "global.h" #include "types.h" @@ -68,6 +69,7 @@ public: // overlay 0 void func_ov000_0207da40(); void func_ov000_0207de98(ActorRef param1, UnkStruct_ov000_0207de98 *param2, Actor_38 *param3); + void func_ov000_0207e240(ActorUnkSCCN_B8 *param1); void func_ov000_0207e58c(ActorRef param1, unk32 param2, u8 param3, UnkStruct_ov031_Items_01 *param4); bool func_ov000_0207e458(unk32 param1, unk32 param2, VecFx32 *param3, unk32 param4, VecFx32 *param5, ActorRef param6); diff --git a/include/Unknown/UnkStruct_027e0cd8.hpp b/include/Unknown/UnkStruct_027e0cd8.hpp index 1cb7f45e..bd3fd4b1 100644 --- a/include/Unknown/UnkStruct_027e0cd8.hpp +++ b/include/Unknown/UnkStruct_027e0cd8.hpp @@ -181,6 +181,18 @@ enum UnkFlags2_ { UnkFlags2_Max = 12, }; +class UnkStruct_func_ov000_02080620 { +public: + /* 00 (vtable) */ + /* 04 */ STRUCT_PAD(0x04, 0x14); + /* 14 */ VecFx32 mUnk_14; + /* 20 */ VecFx32 mUnk_20; + /* 2C */ + + /* 00 */ virtual void vfunc_00(); + /* 04 */ virtual bool vfunc_04(); +}; + class UnkStruct_027e0cd8_0C_Base { public: /* 000 (vtable) */ @@ -258,13 +270,15 @@ public: fx32 func_01ffedf4(Vec2bCpp *pPos); // overlay 0 - unk32 func_ov000_02080180(void *param1); + unk32 func_ov000_02080180(Vec2bCpp *param1); void func_ov000_020801b0(Vec2bCpp *param1, unk32 param2, unk32 param3); + bool func_ov000_0208217c(VecFx32 *param1, unk32 param2); bool func_ov000_020802ec(u16 param1, VecFx32 *param2); void func_ov000_020803ec(u16 param1); void func_ov000_0208053c(u16 param1); + UnkStruct_func_ov000_02080620 *func_ov000_02080620(); bool func_ov000_02080658(unk32 param1, EntranceInfo *param2); - void func_ov000_020808f4(void *param1, void *param2, u8 param3); + void func_ov000_020808f4(void *param1, Vec2bCpp *param2, u8 param3); unk32 func_ov000_02080a44(); void func_ov000_02080a5c(VecFx32 *param1); void func_ov000_02080a78(VecFx32 *param1); diff --git a/include/Unknown/UnkStruct_027e0cec.hpp b/include/Unknown/UnkStruct_027e0cec.hpp index d0d905f7..d63d0f51 100644 --- a/include/Unknown/UnkStruct_027e0cec.hpp +++ b/include/Unknown/UnkStruct_027e0cec.hpp @@ -79,6 +79,7 @@ public: void func_ov000_020a00d4(UnkStruct_PlayerGet_ec *param1, unk32 param2, unk32 param3, unk32 param4, VecFx32 *param5, unk32 param6); void func_ov000_020a0110(UnkStruct_PlayerGet_ec *param1); + void func_ov000_020a0140(UnkSystem7 *param1, VecFx32 *param2); void func_ov000_020a0220(void *param1, void *param2); // overlay 1 diff --git a/include/Unknown/UnkStruct_027e0d34.hpp b/include/Unknown/UnkStruct_027e0d34.hpp index f8f2ff1b..f50b1c9f 100644 --- a/include/Unknown/UnkStruct_027e0d34.hpp +++ b/include/Unknown/UnkStruct_027e0d34.hpp @@ -20,6 +20,7 @@ public: static void Destroy(); // overlay 31 + bool func_ov031_020d9758(); bool func_ov031_020d97e4(); bool func_ov031_020d97f4(); void func_ov031_020d9844(); diff --git a/include/Unknown/UnkStruct_ov000_020b34c4.hpp b/include/Unknown/UnkStruct_ov000_020b34c4.hpp index 607819ce..b66cda37 100644 --- a/include/Unknown/UnkStruct_ov000_020b34c4.hpp +++ b/include/Unknown/UnkStruct_ov000_020b34c4.hpp @@ -2,16 +2,19 @@ #include "types.h" -//! TODO: this is probably all fake to match func_01fff520 - -typedef bool (**UnkStruct_ov000_020b34c4_Callback)(void *, void *); - class UnkStruct_ov000_020b34c4 { public: - /* 08 */ unk32 mUnk_08; - /* 08 */ unk32 mUnk_0C; - /* 00 */ UnkStruct_ov000_020b34c4_Callback *mUnk_00; - /* 04 */ unk32 mUnk_04; + /* 00 (vtable) */ + /* 04 */ MapObjectId mUnk_04; + /* 08 */ VecFx32 mUnk_08; + /* 14 */ fx32 mUnk_14; + /* 18 */ + + UnkStruct_ov000_020b34c4(); + UnkStruct_ov000_020b34c4(MapObjectId mapObjId) : + mUnk_04(mapObjId) {} + + virtual bool vfunc_00(MapObject *param1); }; extern UnkStruct_ov000_020b34c4 data_ov000_020b34c4; diff --git a/include/Unknown/UnkStruct_ov031_Items.hpp b/include/Unknown/UnkStruct_ov031_Items.hpp index 8ccee82d..53fb0846 100644 --- a/include/Unknown/UnkStruct_ov031_Items.hpp +++ b/include/Unknown/UnkStruct_ov031_Items.hpp @@ -1,7 +1,19 @@ #pragma once #include "UnkStruct_027e0ce0.hpp" -class UnkStruct_ov031_Items_00 : public UnkStruct_027e0ce0_38_Base { +class Actor; + +class UnkStruct_ov031_Items_00_Base : public UnkStruct_027e0ce0_38_Base { +public: + /* 00 (vtable) */ + /* 04 */ + + UnkStruct_ov031_Items_00_Base() {} + + /* 00 */ virtual ~UnkStruct_ov031_Items_00_Base(); +}; + +class UnkStruct_ov031_Items_00 : public UnkStruct_ov031_Items_00_Base { public: /* 00 (vtable) */ /* 04 */ @@ -9,15 +21,26 @@ public: UnkStruct_ov031_Items_00(); // data_ov000_020b30d0 - /* 00 */ virtual ~UnkStruct_ov031_Items_00(); /* 08 */ virtual bool vfunc_08(const UnkStruct_ov031_020f3310 *param1) override; // func_ov000_020982d8 }; -class UnkStruct_ov031_Items_01 { +class UnkStruct_ov031_Items_01_Base { public: /* 00 (vtable) */ /* 04 */ ActorRef mUnk_04; /* 08 */ unk16 mUnk_08; + /* 0C */ + + UnkStruct_ov031_Items_01_Base() : + mUnk_04(0x0), + mUnk_08(0x0) {} + + /* 00 */ virtual ~UnkStruct_ov031_Items_01_Base(); +}; + +class UnkStruct_ov031_Items_01 : public UnkStruct_ov031_Items_01_Base { +public: + /* 00 (vtable) */ /* 08 */ unk16 mUnk_0A; /* 0C */ Cylinder mUnk_0C; /* 1C */ unk32 mUnk_1C; @@ -27,8 +50,6 @@ public: /* 2C */ UnkStruct_ov031_Items_01() { - this->mUnk_04 = 0; - this->mUnk_08 = 0; this->mUnk_0C.Init(FLOAT_TO_FX32(0.0f)); this->mUnk_1C = 0; this->mUnk_20 = 0; diff --git a/src/000_Second/Actor/ActorUnkEFIK.cpp b/src/000_Second/Actor/ActorUnkEFIK.cpp index 0da041d3..c4cabea6 100644 --- a/src/000_Second/Actor/ActorUnkEFIK.cpp +++ b/src/000_Second/Actor/ActorUnkEFIK.cpp @@ -62,16 +62,16 @@ void ActorUnkEFIK::vfunc_20() { for (j = bStack_3c[0]; j < bStack_3e[0]; j++) { for (k = bStack_3c[1]; k < bStack_3e[1]; k++) { - u8 bStack_40[2]; - bStack_40[0] = j; - bStack_40[1] = k; + Vec2bCpp bStack_40; + bStack_40.x = j; + bStack_40.y = k; - if (pUVar5->func_ov000_02080180(bStack_40) == 0x38) { + if (pUVar5->func_ov000_02080180(&bStack_40) == 0x38) { u16 random = gRandom.Next32(6); if (random == 0) { VecFx32 vec; - pUVar5->func_ov000_020808f4(&vec, bStack_40, 0); + pUVar5->func_ov000_020808f4(&vec, &bStack_40, 0); data_027e0cec->func_ov000_020a0220(&this->mUnk_98, &vec); } } diff --git a/src/000_Second/MapObject/MapObject.cpp b/src/000_Second/MapObject/MapObject.cpp index ece9577f..10686c9d 100644 --- a/src/000_Second/MapObject/MapObject.cpp +++ b/src/000_Second/MapObject/MapObject.cpp @@ -13,13 +13,13 @@ extern "C" void func_01ffb714(VecFx32 *, VecFx32 *, void *); extern "C" void func_01ffb9cc(VecFx32 *, VecFx32 *); extern "C" u16 func_01ffbbe0(fx32 x, fx32 z); -extern "C" void func_01ffecdc(unk32 param1, Cylinder *param2); +extern "C" unk32 func_01ffecdc(unk32 param1, Cylinder *param2); extern "C" bool func_01ffd768(unk32, void *, void *, unk8); extern "C" void func_01fff6d0(void *, VecFx32 *param1, s32 *param2, s32 *param3); MapObject::MapObject() { this->mUnk_10 = NULL; - this->mUnk_16 = -1; + this->mState = MapObjState_None; this->mFlags[0] = 0; this->mUnk_20.Init(); *(u32 *) &this->mUnk_38 = 0; @@ -170,7 +170,7 @@ void MapObject::func_ov000_0209d2f0(unk32 param1, unk32 param2, Vec2bCpp *param3 } } -void MapObject::func_ov000_0209d3b4(unk32 param1, fx32 size) { +unk32 MapObject::func_ov000_0209d3b4(unk32 param1, fx32 size) { Cylinder spC; if (this->mUnk_10 != NULL) { @@ -182,7 +182,7 @@ void MapObject::func_ov000_0209d3b4(unk32 param1, fx32 size) { VecFx32_Add(&spC.pos, &this->mPos, &spC.pos); spC.size += size; - func_01ffecdc(param1, &spC); + return func_01ffecdc(param1, &spC); } struct stack_struct { diff --git a/src/000_Second/MapObject/MapObjectManager_000.cpp b/src/000_Second/MapObject/MapObjectManager_000.cpp index a1105572..8d2e1e99 100644 --- a/src/000_Second/MapObject/MapObjectManager_000.cpp +++ b/src/000_Second/MapObject/MapObjectManager_000.cpp @@ -24,7 +24,7 @@ MapObject *MapObjectManager::AllocateMapObject(MapObjectId mapObjId, Vec2b param spawnData.pos.x = param2.x; spawnData.pos.y = param2.y; - data_027e0cd8->mUnk_0C->func_ov000_020808f4(&sp14, (void *) ¶m2, param5); + data_027e0cd8->mUnk_0C->func_ov000_020808f4(&sp14, (Vec2bCpp *) ¶m2, param5); UnkStruct_ov000_020b5d34_00 args; args.mUnk_00 = (unk32 *) &spawnData; diff --git a/src/000_Second/MapObject/MapObjectSwitchStep.cpp b/src/000_Second/MapObject/MapObjectSwitchStep.cpp index f70d986d..d991a3bd 100644 --- a/src/000_Second/MapObject/MapObjectSwitchStep.cpp +++ b/src/000_Second/MapObject/MapObjectSwitchStep.cpp @@ -113,9 +113,9 @@ bool MapObjectSwitchStep::vfunc_00(void) { this->mUnk_18[1] = 1; if (this->func_ov000_0209d29c(0)) { - this->func_ov000_0209e11c(2, 1); + this->func_ov000_0209e11c(MapObjSwitchStepState_2, 1); } else { - this->func_ov000_0209e11c(0, 1); + this->func_ov000_0209e11c(MapObjSwitchStepState_0, 1); } if (data_027e09a4->mUnk_00.sceneIndex >= SceneIndex_battle01 && data_027e09a4->mUnk_00.sceneIndex < SceneIndex_Max) { @@ -126,14 +126,14 @@ bool MapObjectSwitchStep::vfunc_00(void) { return true; } -void MapObjectSwitchStep::func_ov000_0209e11c(unk32 param1, unk32 param2) { - this->mUnk_16 = param1; +void MapObjectSwitchStep::func_ov000_0209e11c(MapObjState state, unk32 param2) { + this->mState = state; this->mUnk_E6 = -1; this->mUnk_E4 = 0; this->mUnk_A4.func_01ffc3b4(); - switch (this->mUnk_16) { - case 0: + switch (this->mState) { + case MapObjSwitchStepState_0: if (param2 == 0) { this->func_ov000_0209d2c4(0, false); data_027e09a8->func_ov000_02071b30(0x123, &this->mPos, 0); @@ -143,13 +143,13 @@ void MapObjectSwitchStep::func_ov000_0209e11c(unk32 param1, unk32 param2) { this->mUnk_40.mUnk_60 = 0; this->mUnk_A4.func_ov000_020577f8(0); break; - case 1: + case MapObjSwitchStepState_1: this->mUnk_E8 = 0; data_027e09a8->func_ov000_02071b30(0x121, &this->mPos, 0); this->mUnk_A4.func_ov000_020577f8(0); this->func_ov000_0209e11c(2, 0); break; - case 2: + case MapObjSwitchStepState_2: this->mUnk_40.mUnk_60 = -0x19A; this->func_ov000_0209d2c4(0, true); this->mUnk_40.mUnk_62 = 0; @@ -167,7 +167,7 @@ void MapObjectSwitchStep::func_ov000_0209e11c(unk32 param1, unk32 param2) { this->mUnk_A4.func_ov000_020577f8(0x1000); break; - case 3: + case MapObjSwitchStepState_3: this->func_ov000_0209d2c4(0, false); break; default: @@ -176,10 +176,10 @@ void MapObjectSwitchStep::func_ov000_0209e11c(unk32 param1, unk32 param2) { } void MapObjectSwitchStep::vfunc_20(void) { - switch (this->mUnk_16) { - case 1: - case 2: - case 3: + switch (this->mState) { + case MapObjSwitchStepState_1: + case MapObjSwitchStepState_2: + case MapObjSwitchStepState_3: break; default: this->func_ov000_0209e11c(1, 0); diff --git a/src/001_SceneInit/ZeldaMapBinary.cpp b/src/001_SceneInit/ZeldaMapBinary.cpp index e33494f0..10f63cc4 100644 --- a/src/001_SceneInit/ZeldaMapBinary.cpp +++ b/src/001_SceneInit/ZeldaMapBinary.cpp @@ -308,10 +308,10 @@ BOOL ZMB_ParseActorList(ZMBFileInfos *pFileInfos, ZMBSectionActorList *pSection, local_24.y = 0x7FFFEFFF; local_24.y = pDst->vfunc_28(&local_24, 0x01, 0x00); - u8 bStack_40[2]; - bStack_40[0] = posX; - bStack_40[1] = posY; - unk32 value = pDst->func_ov000_02080180(bStack_40); + Vec2bCpp bStack_40; + bStack_40.x = posX; + bStack_40.y = posY; + unk32 value = pDst->func_ov000_02080180(&bStack_40); if (value == 0x14 || value == 0x47) { local_24.y = 0; diff --git a/src/031_Land/Actor/ActorBlast.cpp b/src/031_Land/Actor/ActorBlast.cpp new file mode 100644 index 00000000..3e7f5222 --- /dev/null +++ b/src/031_Land/Actor/ActorBlast.cpp @@ -0,0 +1,164 @@ +#include "Actor/ActorBlast.hpp" + +#include "Actor/ActorManager.hpp" +#include "System/SysNew.hpp" +#include "Unknown/UnkStruct_027e09a8.hpp" +#include "Unknown/UnkStruct_027e09bc.hpp" +#include "Unknown/UnkStruct_027e09c0.hpp" +#include "Unknown/UnkStruct_027e0cd8.hpp" +#include "Unknown/UnkStruct_027e0cec.hpp" + +struct UnkStruct_ov031_020e5d18_00 { + /* 00 */ Actor *mUnk_00; + /* 04 */ STRUCT_PAD(0x04, 0x18); + /* 18 */ +}; + +extern "C" VecFx32 data_027e07d4; + +extern "C" void func_01ffe6c4(UnkStruct_ov031_020e5d18_00 *, ActorRef, VecFx32 *, VecFx32 *, s32, VecFx32 *, + UnkStruct_ov031_Items_00_Base *); + +DECL_PROFILE(ActorProfileBlast); + +Actor *ActorProfileBlast::Create() { + return new(HeapIndex_2) ActorBlast(); +} + +ActorProfileBlast::ActorProfileBlast() : + ActorProfile(ActorId_Blast) { + VecFx32_Init(FLOAT_TO_FX32(0.0f), FLOAT_TO_FX32(0.0f), FLOAT_TO_FX32(0.0f), &this->mUnk_04.pos); +} + +// non-matching +bool ActorBlast_E8::vfunc_0C(const UnkStruct_ov031_020e54d4 *param1, unk32 param2) {} + +ActorBlast::ActorBlast() : + mUnk_94(FLOAT_TO_FX32(0.625f)), + mUnk_98(0x0), + mUnk_9A(0x18), + mUnk_E8(this) {} + +bool ActorBlast::vfunc_18(unk32 param1) { + this->mPos.y += FLOAT_TO_FX32(0.5f); + + this->mUnk_C8 = *this->mUnk_34; + VecFx32_Add(&this->mUnk_C8.pos, &this->mPos, &this->mUnk_C8.pos); + + this->mUnk_D8 = *this->mUnk_30; + VecFx32_Add(&this->mUnk_D8.pos, &this->mPos, &this->mUnk_D8.pos); + + data_027e09a8->func_ov000_02071b30(0xF3, &this->mPos, 0x0); + data_027e09a8->func_ov000_02071eac(&this->mPos); + + if (this->mUnk_5C.mParams[1] == 0x1) { + this->mUnk_F4 = FLOAT_TO_FX32(0.2f); + this->mUnk_F0 = FLOAT_TO_FX32(1.5f); + } else { + this->mUnk_F4 = FLOAT_TO_FX32(0.1f); + this->mUnk_F0 = FLOAT_TO_FX32(1.0f); + } + + data_027e09bc->mUnk_0C->func_ov000_0207a1e0(0x6); + + if (this->mUnk_5C.mParams[0] != 0x0) { + data_027e0cec->func_ov000_0209feac(0x812, &this->mPos, 0x2, 0x0, 0x0); + data_027e0cec->func_ov000_0209feac(0x813, &this->mPos, 0x2, 0x0, 0x0); + data_027e0cec->func_ov000_0209feac(0x814, &this->mPos, 0x2, 0x0, 0x0); + } else { + data_027e0cec->func_ov000_0209feac(0x80B, &this->mPos, 0x2, 0x0, 0x0); + data_027e0cec->func_ov000_0209feac(0x80C, &this->mPos, 0x2, 0x0, 0x0); + data_027e0cec->func_ov000_0209feac(0x80D, &this->mPos, 0x2, 0x0, 0x0); + data_027e0cec->func_ov000_0209feac(0x80E, &this->mPos, 0x2, 0x0, 0x0); + data_027e0cec->func_ov000_0209feac(0x80F, &this->mPos, 0x2, 0x0, 0x0); + } + + UnkStruct_027e0cd8_0C_Base *data = data_027e0cd8->mUnk_0C; + if (data->mUnk_110 == 0x7 && data->func_ov000_0208217c(&this->mPos, 0x1)) { + ActorParams actorParams; + ActorRef actorRef; + actorParams.mUnk_28 = 0x0; + + actorParams.func_ov000_020975f8(); + actorParams.mUnk_28 = this->mRef; + + VecFx32_Copy(&this->mPos, &actorParams.mInitialPos); + actorParams.mParams[0] = 0x1; + Actor::func_ov000_020973f4(&actorRef, &data_ov000_020b539c_eur, ActorId_FLDK, &actorParams, 0x0); + } + return true; +} + +// non-matching +void ActorBlast::vfunc_20() { + fx32 f0 = this->mUnk_F0; + fx32 newVal = this->mUnk_94 + this->mUnk_F4; + this->mUnk_94 = newVal; + if (newVal <= f0) { + this->mUnk_C8.size = newVal; + this->mUnk_D8.size = newVal; + } else { + this->mUnk_94 = f0; + this->mUnk_C8.size = ~FLOAT_TO_FX32(0.0f); + } + if (this->IsInternalTimerOut()) { + this->func_ov000_020984d0(); + return; + } + if (this->mUnk_C8.size <= FLOAT_TO_FX32(0.0f)) { + return; + } + this->mUnk_9C.mUnk_0C = this->mUnk_C8; + + data_027e09c0->func_ov000_0207e58c(this->mRef, 0x0, 0xC, &this->mUnk_9C); + + UnkStruct_ov031_020e5d18_00 sp14; + sp14.mUnk_00 = NULL; + + func_01ffe6c4(&sp14, this->mRef, &data_027e07d4, &data_027e07d4, 0x1C, NULL, &this->mUnk_E8); + + sp14.mUnk_00->func_ov000_0207df88(&this->mUnk_C8, 0x0); + + if (this->func_ov000_0209867c(0x0) < 0x1000) { + data_027e09c0->func_ov000_0207e458(0x4, 0x0, &this->mUnk_C8.pos, 0x1, NULL, 0x1); + } + + if (!data_027e0ce0->func_01fff1a4()) { + return; + } + data_027e09c0->func_ov000_0207e458(0x2, 0x1A, &this->mUnk_C8.pos, 0x2, NULL, 0x0); +} + +void ActorBlast::vfunc_24() { + fx32 f0 = this->mUnk_F0; + fx32 newVal = this->mUnk_94 + this->mUnk_F4; + if (newVal >= f0) { + newVal = f0; + } + this->mUnk_94 = newVal; + if (!this->IsInternalTimerOut()) { + return; + } + this->func_ov000_020984d0(); +} + +fx32 ActorBlast::func_ov031_020e3b94() { + return FLOAT_TO_FX32(0.5f); +} + +void ActorBlast::func_ov031_020e3b9c(unk16 param1, unk16 param2) { + ActorParams actorParams; + ActorRef ref; + + actorParams.mUnk_28 = 0x0; + actorParams.func_ov000_020975f8(); + actorParams.func_ov000_020975f8(); + + actorParams.mUnk_28 = this->mRef; + VecFx32_Copy(&this->mPos, &actorParams.mInitialPos); + + actorParams.mParams[0] = param1; + actorParams.mParams[1] = param2; + + this->func_ov000_020973f4(&ref, &data_ov000_020b539c_eur, ActorId_Blast, &actorParams, 0x0); +} diff --git a/src/031_Land/Actor/ActorHeart.cpp b/src/031_Land/Actor/ActorHeart.cpp index c8cd7424..d1c85abd 100644 --- a/src/031_Land/Actor/ActorHeart.cpp +++ b/src/031_Land/Actor/ActorHeart.cpp @@ -23,7 +23,7 @@ typedef struct { extern "C" void func_01ffce1c(unk16 *, unk16 *); extern "C" int func_01ffcea0(unk32, UnkStruct_ov031_020eeee8 *); -extern "C" void func_01ffedac(u16 *, VecFx32 *); +extern "C" void func_01ffedac(Vec2bCpp *, VecFx32 *); extern "C" void func_01fff17c(UnkStruct_ov031_020eeee8 *, UnkStruct_027e0ce0 *, unk32); extern "C" void func_02018114(unk16 *, unk16); extern "C" void func_02098388(void); @@ -81,7 +81,7 @@ ActorHeart::ActorHeart() : this->mUnk_98.mUnk_04 = 0x13100; this->mUnk_40 = &this->mUnk_C8; - u16 sp0; + Vec2bCpp sp0; func_01ffedac(&sp0, &this->mPos); if (data_027e0cd8->mUnk_0C->func_ov000_02080180(&sp0) == 0x5) { diff --git a/src/031_Land/Actor/ActorItemBoomerang.cpp b/src/031_Land/Actor/ActorItemBoomerang.cpp index 86802ac9..119404e7 100644 --- a/src/031_Land/Actor/ActorItemBoomerang.cpp +++ b/src/031_Land/Actor/ActorItemBoomerang.cpp @@ -169,7 +169,7 @@ void ActorItemBoomerang::vfunc_20() { } } MapObjectId objectId = object->GetMapObjectId(); - if (objectId != MapObjectId_SKDI && objectId != MapObjectId_SWHT && objectId != MapObjectId_TSUB) { + if (objectId != MapObjectId_SKDI && objectId != MapObjectId_SWHT && objectId != MapObjectId_Pot) { this->func_ov031_020e49b0(0x8D70); } return; @@ -405,7 +405,7 @@ bool ActorItemBoomerang_11C::vfunc_0C(const UnkStruct_ov031_020e54d4 *param1, un case MapObjectId_SKDI: case MapObjectId_SWHT: data_027e0d2c->func_ov031_020d95c8(param2); - case MapObjectId_TSUB: + case MapObjectId_Pot: mapObject->vfunc_1C(this->mUnk_08->mRef, 0xC, &this->mUnk_08->mVel); return false; } diff --git a/src/031_Land/Actor/ActorItemDrop.cpp b/src/031_Land/Actor/ActorItemDrop.cpp index fde1817f..664886e5 100644 --- a/src/031_Land/Actor/ActorItemDrop.cpp +++ b/src/031_Land/Actor/ActorItemDrop.cpp @@ -9,7 +9,7 @@ #include "Unknown/UnkStruct_027e0d34.hpp" #include "versions.h" -extern "C" void func_01ffedac(u16 *, VecFx32 *); +extern "C" void func_01ffedac(Vec2bCpp *, VecFx32 *); extern "C" void func_01fff05c(u32 *, UnkStruct_027e0cd8_0C_Base *, VecFx32 *); extern "C" void func_ov000_0205c1f0(unk32 *, u16); extern "C" void func_ov000_0205c204(unk32 *, VecFx32 *, unk32, unk32, unk32); @@ -165,7 +165,7 @@ ActorItemDrop::ActorItemDrop() : this->mUnk_B4.mUnk_04 = 0x13100; this->mUnk_40 = &this->mUnk_E4; - u16 sp0; + Vec2bCpp sp0; func_01ffedac(&sp0, &this->mPos); if (data_027e0cd8->mUnk_0C->func_ov000_02080180(&sp0) == 0x5) { diff --git a/src/031_Land/Actor/ActorItemTornado.cpp b/src/031_Land/Actor/ActorItemTornado.cpp index 04a40404..1ab07873 100644 --- a/src/031_Land/Actor/ActorItemTornado.cpp +++ b/src/031_Land/Actor/ActorItemTornado.cpp @@ -33,7 +33,7 @@ Actor *ActorProfileItemTornado::Create() { } ActorProfileItemTornado::ActorProfileItemTornado() : - ActorProfile(ActorId_ITTD) { + ActorProfile(ActorId_ItemTornado) { this->mUnk_04.Init(FLOAT_TO_FX32(0.0f), FLOAT_TO_FX32(0.25f), FLOAT_TO_FX32(0.0f), FLOAT_TO_FX32(0.20f)); } diff --git a/src/031_Land/Actor/ActorPot.cpp b/src/031_Land/Actor/ActorPot.cpp index 6ab6817e..423d99d9 100644 --- a/src/031_Land/Actor/ActorPot.cpp +++ b/src/031_Land/Actor/ActorPot.cpp @@ -40,7 +40,7 @@ ActorProfilePot::ActorProfilePot() : } ActorPot::ActorPot() : - mUnk_110(G3d_GetModelPtr(data_ov000_020b5d34.GetProfileFromId(MapObjectId_TSUB)->vfunc_04()->mUnk_50), 0x01) {} + mUnk_110(G3d_GetModelPtr(data_ov000_020b5d34.GetProfileFromId(MapObjectId_Pot)->vfunc_04()->mUnk_50), 0x01) {} bool ActorPot::vfunc_18(unk32 param1) { Actor_ov031_02113fd4::vfunc_18(param1); diff --git a/src/031_Land/Actor/ActorRollingStone.cpp b/src/031_Land/Actor/ActorRollingStone.cpp index acc09bc3..41cca559 100644 --- a/src/031_Land/Actor/ActorRollingStone.cpp +++ b/src/031_Land/Actor/ActorRollingStone.cpp @@ -56,7 +56,7 @@ Actor *ActorProfileRollingStone::Create() { } ActorProfileRollingStone::ActorProfileRollingStone() : - ActorProfile_Derived1(ActorId_RLST) { + ActorProfile_Derived1(ActorId_RollingStone) { this->mUnk_04.Init(FLOAT_TO_FX32(0.8f)); } @@ -67,7 +67,7 @@ bool ActorRollingStone_104::vfunc_0C(const UnkStruct_ov031_020e54d4 *param1, unk void ActorRollingStone_104::vfunc_10() {} void ActorRollingStone_D4::vfunc_10(Actor *param1) { - if (param1->GetActorId() != ActorId_RLST) { + if (param1->GetActorId() != ActorId_RollingStone) { return; } this->mUnk_2C->SetState(ActorRollingStoneState_6); @@ -388,7 +388,7 @@ void ActorRollingStone::func_ov031_020f8f30() { sp14.mParams[0] = 0x1; ActorRef ref; - this->func_ov000_020973f4(&ref, &data_ov000_020b539c_eur, ActorId_RLST, &sp14, 0x0); + this->func_ov000_020973f4(&ref, &data_ov000_020b539c_eur, ActorId_RollingStone, &sp14, 0x0); this->mUnk_150 = 0; this->mUnk_152 = this->mUnk_5C.mParams[1]; } diff --git a/src/031_Land/Actor/ActorShotArrow.cpp b/src/031_Land/Actor/ActorShotArrow.cpp index 10671a86..6a1948a3 100644 --- a/src/031_Land/Actor/ActorShotArrow.cpp +++ b/src/031_Land/Actor/ActorShotArrow.cpp @@ -118,7 +118,7 @@ Actor *ActorProfileShotArrow::Create() { } ActorProfileShotArrow::ActorProfileShotArrow() : - ActorProfile(ActorId_AROW) { + ActorProfile(ActorId_ShotArrow) { this->mUnk_04.Init(FLOAT_TO_FX32(0.2f)); } @@ -1039,7 +1039,7 @@ void ActorShotArrow_194::vfunc_10(Actor *actor) { return; } - if (actor->GetActorId() == ActorId_AROW) { + if (actor->GetActorId() == ActorId_ShotArrow) { return; } diff --git a/src/031_Land/Actor/ActorUnkBLST.cpp b/src/031_Land/Actor/ActorUnkBLST.cpp deleted file mode 100644 index a260a2fb..00000000 --- a/src/031_Land/Actor/ActorUnkBLST.cpp +++ /dev/null @@ -1,27 +0,0 @@ -//! TODO: This file was generated automatically and might contain errors - -#include "Actor/ActorUnkBLST.hpp" -#include "System/SysNew.hpp" - -DECL_PROFILE(ActorProfileUnkBLST); - -Actor *ActorProfileUnkBLST::Create() { - return new(HeapIndex_2) ActorUnkBLST(); -} - -ActorProfileUnkBLST::ActorProfileUnkBLST() : - ActorProfile(ActorId_BLST) {} - -ActorUnkBLST::ActorUnkBLST() {} - -void ActorUnkBLST::func_ov031_020e351c(void) {} -void ActorUnkBLST::func_ov031_020e373c(void) {} -void ActorUnkBLST::func_ov031_020e3750(void) {} -void ActorUnkBLST::func_ov031_020e39c4(void) {} -void ActorUnkBLST::func_ov031_020e3b44(void) {} -void ActorUnkBLST::func_ov031_020e3b94(void) {} -void ActorUnkBLST::func_ov031_020e3b9c(void) {} -void ActorUnkBLST::func_ov031_020e3c60(void) {} - -ActorUnkBLST::~ActorUnkBLST() {} -ActorProfileUnkBLST::~ActorProfileUnkBLST() {} diff --git a/src/031_Land/Actor/ActorUnkRMTG.cpp b/src/031_Land/Actor/ActorUnkRMTG.cpp index 4c9685c3..9dbc8b94 100644 --- a/src/031_Land/Actor/ActorUnkRMTG.cpp +++ b/src/031_Land/Actor/ActorUnkRMTG.cpp @@ -1,7 +1,12 @@ -//! TODO: This file was generated automatically and might contain errors - #include "Actor/ActorUnkRMTG.hpp" #include "System/SysNew.hpp" +#include "Unknown/UnkStruct_027e09bc.hpp" +#include "Unknown/UnkStruct_027e0cd8.hpp" + +extern "C" const char data_ov031_02110ad0; + +extern "C" void func_01ffedac(Vec2bCpp *, VecFx32 *); +extern "C" unk32 func_ov000_02077590(unk32); DECL_PROFILE(ActorProfileUnkRMTG); @@ -12,11 +17,33 @@ Actor *ActorProfileUnkRMTG::Create() { ActorProfileUnkRMTG::ActorProfileUnkRMTG() : ActorProfile_Derived1(ActorId_RMTG) {} -ActorUnkRMTG::ActorUnkRMTG() {} +ActorUnkRMTG::ActorUnkRMTG() : + mUnk_94(NULL) {} -void ActorUnkRMTG::func_ov031_020ef8a0(void) {} -void ActorUnkRMTG::func_ov031_020ef958(void) {} -void ActorUnkRMTG::func_ov031_020ef990(void) {} +bool ActorUnkRMTG::vfunc_18(unk32 param1) { + this->mPos.x -= FLOAT_TO_FX32(0.5f); + this->mPos.z -= FLOAT_TO_FX32(0.5f); -ActorUnkRMTG::~ActorUnkRMTG() {} -ActorProfileUnkRMTG::~ActorProfileUnkRMTG() {} + UnkStruct_027e0cd8_0C_Base *data = data_027e0cd8->mUnk_0C; + + Vec2bCpp sp0; + func_01ffedac(&sp0, &this->mPos); + + this->mPos.y = data->func_01ffedf4(&sp0); + data->mUnk_12D = true; + + u16 var_6C = this->mUnk_5C.mParams[0]; + this->mUnk_94.vfunc_08( + GetModelFromProfile3(&GET_PROFILE(ActorProfileUnkRMTG)->mUnk_3C, &data_ov031_02110ad0 + (var_6C << 4))); + + return true; +} + +void ActorUnkRMTG::vfunc_1C() { + UnkStruct_027e09bc_0C *data = data_027e09bc->mUnk_0C; + data->func_ov000_0207834c(&this->mPos, func_ov000_02077590(0x7), 0x0); +} + +void ActorUnkRMTG::vfunc_2C(unk32 param1) { + this->mUnk_94.vfunc_18(&this->mPos); +} diff --git a/src/031_Land/Actor/ActorUnkSCCN.cpp b/src/031_Land/Actor/ActorUnkSCCN.cpp index f3beb63a..1bb85e44 100644 --- a/src/031_Land/Actor/ActorUnkSCCN.cpp +++ b/src/031_Land/Actor/ActorUnkSCCN.cpp @@ -1,7 +1,9 @@ -//! TODO: This file was generated automatically and might contain errors - #include "Actor/ActorUnkSCCN.hpp" #include "System/SysNew.hpp" +#include "Unknown/UnkStruct_027e09c0.hpp" +#include "Unknown/UnkStruct_027e0cd8.hpp" + +extern "C" void func_01ffd054(VecFx32 *, VecFx32 *); DECL_PROFILE(ActorProfileUnkSCCN); @@ -14,7 +16,64 @@ ActorProfileUnkSCCN::ActorProfileUnkSCCN() : ActorUnkSCCN::ActorUnkSCCN() {} -void ActorUnkSCCN::func_ov031_020efaa0(void) {} +// non-matching +bool ActorUnkSCCN::vfunc_18(unk32 param1) { + if (this->mUnk_5C.mParams[1] == 0x0) { + return false; + } + UnkStruct_027e0cd8_0C_Base *data_0C = data_027e0cd8->mUnk_0C; + UnkStruct_func_ov000_02080620 *unk = data_027e0cd8->mUnk_0C->func_ov000_02080620(); + if (unk == NULL) { + return false; + } + if (!unk->vfunc_04()) { + VecFx32 vec1; + VecFx32 vec2; + vec2 = unk->mUnk_14; + vec1 = unk->mUnk_20; + func_01ffd054(&vec2, &this->mPos); + this->mPos.y = data_0C->vfunc_28(&this->mPos, 0x1, 0x0); -ActorUnkSCCN::~ActorUnkSCCN() {} -ActorProfileUnkSCCN::~ActorProfileUnkSCCN() {} + VecFx32 vec3; + VecFx32_Init(FLOAT_TO_FX32(0.0f), FLOAT_TO_FX32(0.0f), FLOAT_TO_FX32(0.0f), &vec3); + vec3.x = -this->mPos.x; + vec3.z = -this->mPos.z; + + VecFx32_Add(&vec2, &vec3, &vec2); + VecFx32_Add(&vec1, &vec3, &vec1); + + this->mUnk_94.mUnk_0C = vec2; + this->mUnk_94.mUnk_18 = vec1; + } + this->mUnk_94.mUnk_08 = (((0x04407007 | ((u8) this->mUnk_5C.mParams[0] << 0x10)) & ~0x7000) | 0x3000); + this->mUnk_94.mUnk_04 |= 0x2; + if (this->mUnk_5C.mParams[2] != 0) { + this->mUnk_94.mUnk_07 = 0x13; + } else { + unk32 var; + switch (((u32) (this->mAngle + DEG_TO_ANG(45)) << 0x10) >> 0x1E) { + case 0: + var = 9; + break; + case 2: + var = 8; + break; + case 3: + var = 0x22; + break; + case 1: + var = 0x23; + break; + default: + var = 7; + break; + } + this->mUnk_94.mUnk_07 = var; + } + this->mUnk_B8.mUnk_04 = this->mRef; + this->mUnk_B8.mUnk_08 = &this->mPos; + this->mUnk_B8.mUnk_0C = &this->mUnk_94; + + data_027e09c0->func_ov000_0207e240(&this->mUnk_B8); + return true; +} diff --git a/src/031_Land/Actor/ActorUnkSKDO.cpp b/src/031_Land/Actor/ActorUnkSKDO.cpp index 1ad1e31d..7f4f3c2d 100644 --- a/src/031_Land/Actor/ActorUnkSKDO.cpp +++ b/src/031_Land/Actor/ActorUnkSKDO.cpp @@ -1,7 +1,12 @@ -//! TODO: This file was generated automatically and might contain errors - #include "Actor/ActorUnkSKDO.hpp" + +#include "Map/MapObjectId.hpp" +#include "MapObject/MapObjectManager.hpp" #include "System/SysNew.hpp" +#include "Unknown/UnkStruct_ov000_020b34c4.hpp" + +extern "C" bool func_ov000_0209c348(); +extern "C" fx32 func_01ffb9cc(VecFx32 *, VecFx32 *); DECL_PROFILE(ActorProfileUnkSKDO); @@ -12,13 +17,42 @@ Actor *ActorProfileUnkSKDO::Create() { ActorProfileUnkSKDO::ActorProfileUnkSKDO() : ActorProfile(ActorId_SKDO) {} -ActorUnkSKDO::ActorUnkSKDO() {} +ActorUnkSKDO::ActorUnkSKDO() : + mUnk_98(NULL) {} -void ActorUnkSKDO::func_ov031_02106de0(void) {} -void ActorUnkSKDO::func_ov031_02106de8(void) {} -void ActorUnkSKDO::func_ov031_02106e58(void) {} -void ActorUnkSKDO::func_ov031_02106e90(void) {} -void ActorUnkSKDO::func_ov031_02106e98(void) {} +bool ActorUnkSKDO::vfunc_18(unk32 param1) { + return true; +} -ActorUnkSKDO::~ActorUnkSKDO() {} -ActorProfileUnkSKDO::~ActorProfileUnkSKDO() {} +void ActorUnkSKDO::vfunc_1C() { + ActorUnkSKDO_ov031_02115ce8 stack(MapObjectId_SKDI); + stack.mUnk_08 = this->mPos; + stack.mUnk_14 = FLOAT_TO_FX32(2.0f); + + MapObject **mapObject = gpMapObjManager->func_01fff520(&stack, gpMapObjManager->mMapObjTable); + + if (gpMapObjManager->mUnk_08 != mapObject) { + this->mUnk_98 = (MapObjectUnkSKDI *) *mapObject; + } +} + +void ActorUnkSKDO::vfunc_20() { + unk32 var2 = 0x0; + if (this->mUnk_98->vfunc_40() == 0x2) { + var2 = 0x1; + } + this->func_ov000_02098a88(0x0, var2); +} + +void ActorUnkSKDO::vfunc_54(unk32 param1) { + this->mUnk_94 = param1; +} + +bool ActorUnkSKDO_ov031_02115ce8::vfunc_00(MapObject *param1) { + if (func_ov000_0209c348()) { + if (func_01ffb9cc(¶m1->mPos, &this->mUnk_08) < this->mUnk_14) { + return true; + } + } + return false; +} diff --git a/src/031_Land/Actor/ActorUnkSWCH.cpp b/src/031_Land/Actor/ActorUnkSWCH.cpp index e3ba8e71..c23c9e50 100644 --- a/src/031_Land/Actor/ActorUnkSWCH.cpp +++ b/src/031_Land/Actor/ActorUnkSWCH.cpp @@ -1,10 +1,12 @@ -//! TODO: This file was generated automatically and might contain errors - #include "Actor/ActorUnkSWCH.hpp" #include "System/SysNew.hpp" DECL_PROFILE(ActorProfileUnkSWCH); +#if IS_JP +unk8 data_ov031_02118a1c[0x24]; +#endif + Actor *ActorProfileUnkSWCH::Create() { return new(HeapIndex_2) ActorUnkSWCH(); } @@ -12,11 +14,32 @@ Actor *ActorProfileUnkSWCH::Create() { ActorProfileUnkSWCH::ActorProfileUnkSWCH() : ActorProfile(ActorId_SWCH) {} -ActorUnkSWCH::ActorUnkSWCH() {} +ActorUnkSWCH::ActorUnkSWCH() : + mUnk_94(0x1) {} -void ActorUnkSWCH::func_ov031_020f7b0c(void) {} -void ActorUnkSWCH::func_ov031_020f7b20(void) {} -void ActorUnkSWCH::func_ov031_020f7b88(void) {} +bool ActorUnkSWCH::vfunc_18(unk32 param1) { + this->mUnk_98.mUnk_04 = 0x0; + this->mUnk_98.mUnk_04 |= 0x10000; + return true; +} -ActorUnkSWCH::~ActorUnkSWCH() {} -ActorProfileUnkSWCH::~ActorProfileUnkSWCH() {} +void ActorUnkSWCH::vfunc_20() { + if (!this->func_ov000_02098a60(0x0) && this->mUnk_5C.mUnk_1A[0] != 0x0) { + return; + } + this->mUnk_3C = &this->mUnk_98; + this->func_ov000_020989e0(); + if (!(this->mUnk_98.mUnk_08 & 0x3FFFF)) { + return; + } + if (this->mUnk_98.mUnk_1C != 0x10) { + return; + } + this->func_ov000_02098a88(0x1, 0x1); +} + +void ActorUnkSWCH::vfunc_2C(unk32 param1) { + if (this->func_01fff5d0(param1, 0x0)) { + return; + } +} diff --git a/src/031_Land/Actor/ActorUnkTLKT.cpp b/src/031_Land/Actor/ActorUnkTLKT.cpp index 5924ef51..116f9890 100644 --- a/src/031_Land/Actor/ActorUnkTLKT.cpp +++ b/src/031_Land/Actor/ActorUnkTLKT.cpp @@ -1,7 +1,7 @@ -//! TODO: This file was generated automatically and might contain errors - #include "Actor/ActorUnkTLKT.hpp" #include "System/SysNew.hpp" +#include "Unknown/UnkStruct_027e09b8.hpp" +#include "Unknown/UnkStruct_027e0d34.hpp" DECL_PROFILE(ActorProfileUnkTLKT); @@ -14,13 +14,81 @@ ActorProfileUnkTLKT::ActorProfileUnkTLKT() : ActorUnkTLKT::ActorUnkTLKT() {} -void ActorUnkTLKT::func_ov031_020e41ec(void) {} -void ActorUnkTLKT::func_ov031_020e4238(void) {} -void ActorUnkTLKT::func_ov031_020e4274(void) {} -void ActorUnkTLKT::func_ov031_020e42ac(void) {} -void ActorUnkTLKT::func_ov031_020e42f0(void) {} -void ActorUnkTLKT::func_ov031_020e4320(void) {} -void ActorUnkTLKT::func_ov031_020e4514(void) {} +// non-matching +ActorUnkTLKT::~ActorUnkTLKT() { + if (this->mState == ActorUnkTLKTState_2) { + this->func_ov031_020e4514(); + } +} -ActorUnkTLKT::~ActorUnkTLKT() {} -ActorProfileUnkTLKT::~ActorProfileUnkTLKT() {} +void ActorUnkTLKT::vfunc_24() { + switch (this->mState) { + case ActorUnkTLKTState_0: + this->vfunc_54(); + break; + case ActorUnkTLKTState_1: + this->vfunc_58(); + break; + case ActorUnkTLKTState_4: + this->func_ov031_020e4274(); + break; + default: + break; + } +} + +void ActorUnkTLKT::vfunc_58() { + if (!data_027e09b8->func_ov000_020732ec(this->mUnk_9C.mUnk_04)) { + return; + } + this->vfunc_60(ActorUnkTLKTState_2); +} + +void ActorUnkTLKT::func_ov031_020e4274() { + if (data_027e0d34->func_ov031_020d9758()) { + return; + } + data_027e09b8->func_ov000_020732fc(this->mUnk_9C.mUnk_04); +} + +void ActorUnkTLKT::vfunc_64() { + switch (this->mState) { + case ActorUnkTLKTState_1: + this->vfunc_60(ActorUnkTLKTState_2); + break; + case ActorUnkTLKTState_3: + this->vfunc_60(ActorUnkTLKTState_4); + break; + default: + break; + } +} + +// non-matching +void ActorUnkTLKT::vfunc_68() { + if (this->mState == ActorUnkTLKTState_2) { + this->func_ov031_020e4514(); + if (this->mState == ActorUnkTLKTState_3) { + return; + } + } + this->func_ov031_020e3e6c(); +} + +// non-matching +void ActorUnkTLKT::vfunc_60(ActorState state) {} + +// non-matching +void ActorUnkTLKT::func_ov031_020e4514() { + u16 param = this->mUnk_5C.mParams[2]; + switch (param - (0xA * ((param >> 0x1F) + (param / 10)))) { + case 0: + this->func_ov000_02098a88(0x1, 0x1); + return; + case 1: + this->vfunc_60(ActorUnkTLKTState_3); + break; + default: + break; + } +} diff --git a/src/031_Land/MapObject/MapObjectChestBase.cpp b/src/031_Land/MapObject/MapObjectChestBase.cpp index 08a12a97..83705c00 100644 --- a/src/031_Land/MapObject/MapObjectChestBase.cpp +++ b/src/031_Land/MapObject/MapObjectChestBase.cpp @@ -205,17 +205,17 @@ unk32 MapObjectChestBase::vfunc_28() { } ItemId MapObjectChestBase::func_ov031_021037d0() { - switch (this->mUnk_16) { - case 0: - case 1: - case 4: - case 5: - case 6: - case 7: - case 8: + switch (this->mState) { + case MapObjChestBaseState_0: + case MapObjChestBaseState_1: + case MapObjChestBaseState_4: + case MapObjChestBaseState_5: + case MapObjChestBaseState_6: + case MapObjChestBaseState_7: + case MapObjChestBaseState_8: return ItemId_None; - case 2: - case 3: + case MapObjChestBaseState_2: + case MapObjChestBaseState_3: default: break; } @@ -230,7 +230,7 @@ ItemId MapObjectChestBase::func_ov031_021037d0() { } bool MapObjectChestBase::func_ov031_02103864() { - return this->mUnk_16 == 8 ? true : false; + return this->mState == MapObjChestBaseState_8 ? true : false; } void MapObjectChestBase::func_ov031_02103878() { diff --git a/src/031_Land/MapObject/MapObjectDoorBase.cpp b/src/031_Land/MapObject/MapObjectDoorBase.cpp index c3665b4f..43a9d576 100644 --- a/src/031_Land/MapObject/MapObjectDoorBase.cpp +++ b/src/031_Land/MapObject/MapObjectDoorBase.cpp @@ -108,21 +108,21 @@ void MapObjectDoorBase::func_ov031_020fbf10(bool param1, bool param2) { SET_FLAG(this->mFlags, MapObjFlag_5); if (this->vfunc_64()) { - this->vfunc_5C(8, 1); + this->vfunc_5C(MapObjDoorBaseState_8, 1); if (param2) { this->func_ov031_020fcd40(); } } else { - this->vfunc_5C(2, 1); + this->vfunc_5C(MapObjDoorBaseState_2, 1); } } void MapObjectDoorBase::vfunc_08() { this->vfunc_70(); - switch (this->mUnk_16) { - case 0: + switch (this->mState) { + case MapObjDoorBaseState_0: if (this->mUnk_80 > 0) { this->mUnk_80--; } @@ -132,7 +132,7 @@ void MapObjectDoorBase::vfunc_08() { } if (this->mUnk_80 == 0) { - this->vfunc_5C(1, 0); + this->vfunc_5C(MapObjDoorBaseState_1, 0); break; } @@ -143,65 +143,65 @@ void MapObjectDoorBase::vfunc_08() { } if (!this->mUnk_86 && this->vfunc_68()) { - this->vfunc_5C(3, 0); + this->vfunc_5C(MapObjDoorBaseState_3, 0); } break; - case 1: + case MapObjDoorBaseState_1: this->mUnk_82++; if (this->mUnk_82 >= this->mUnk_7A + this->mUnk_7C && this->vfunc_88()) { this->vfunc_58(); - this->vfunc_5C(2, 0); + this->vfunc_5C(MapObjDoorBaseState_2, 0); break; } if (!this->mUnk_86 && this->vfunc_68()) { - this->vfunc_5C(3, 0); + this->vfunc_5C(MapObjDoorBaseState_3, 0); } break; - case 2: + case MapObjDoorBaseState_2: if (this->vfunc_68()) { - this->vfunc_5C(3, 0); + this->vfunc_5C(MapObjDoorBaseState_3, 0); } break; - case 3: + case MapObjDoorBaseState_3: this->mUnk_84++; if (!this->mUnk_86 && this->vfunc_6C()) { - this->vfunc_5C(0, 0); + this->vfunc_5C(MapObjDoorBaseState_0, 0); break; } this->mUnk_82++; if (this->mUnk_82 >= 0x1D) { - this->vfunc_5C(4, 0); + this->vfunc_5C(MapObjDoorBaseState_4, 0); } break; - case 4: + case MapObjDoorBaseState_4: this->mUnk_84++; if (!this->mUnk_86 && this->vfunc_6C()) { - this->vfunc_5C(0, 0); + this->vfunc_5C(MapObjDoorBaseState_0, 0); break; } this->mUnk_82++; if (this->mUnk_82 >= 0x28) { - this->vfunc_5C(5, 0); + this->vfunc_5C(MapObjDoorBaseState_5, 0); } break; - case 5: + case MapObjDoorBaseState_5: this->mUnk_84++; if (!this->mUnk_86 && this->vfunc_6C()) { - this->vfunc_5C(0, 0); + this->vfunc_5C(MapObjDoorBaseState_0, 0); break; } @@ -228,36 +228,36 @@ void MapObjectDoorBase::vfunc_08() { if (this->mUnk_82 >= 0x32) { this->mUnk_82 = 0x32; - this->vfunc_5C(6, 0); + this->vfunc_5C(MapObjDoorBaseState_6, 0); } } break; - case 6: + case MapObjDoorBaseState_6: this->mUnk_82++; this->mUnk_84++; if (this->mUnk_82 >= 0x32) { this->mUnk_82 = 0x32; - this->vfunc_5C(7, 0); + this->vfunc_5C(MapObjDoorBaseState_7, 0); } break; - case 7: + case MapObjDoorBaseState_7: this->mUnk_82++; this->mUnk_84++; if (this->mUnk_82 >= 0x50) { - this->vfunc_5C(8, 0); + this->vfunc_5C(MapObjDoorBaseState_8, 0); } // fallthrough - case 8: + case MapObjDoorBaseState_8: if (!this->vfunc_6C()) { break; } - this->vfunc_5C(0, 0); + this->vfunc_5C(MapObjDoorBaseState_0, 0); break; default: break; @@ -271,31 +271,31 @@ void MapObjectDoorBase::vfunc_40() {} void MapObjectDoorBase::vfunc_0C() { if (this->mUnk_74 >= 0 && data_027e09b8->func_ov000_020732ec(this->mUnk_74)) { this->vfunc_08(); - } else if (this->mUnk_16 == 2 || this->mUnk_16 == 8) { + } else if (this->mState == MapObjDoorBaseState_2 || this->mState == MapObjDoorBaseState_8) { this->vfunc_08(); } } void MapObjectDoorBase::vfunc_60() { - switch (this->mUnk_16) { - case 0: + switch (this->mState) { + case MapObjDoorBaseState_0: if (!this->mUnk_86 && !GET_FLAG(this->mFlags, MapObjFlag_1) && this->mUnk_6C <= FLOAT_TO_FX32(0.5f)) { this->func_ov031_020fcf0c(1); } this->vfunc_54(); break; - case 2: + case MapObjDoorBaseState_2: if (this->mUnk_86 && !GET_FLAG(this->mFlags, MapObjFlag_1) && this->mUnk_6C <= FLOAT_TO_FX32(0.5f)) { this->func_ov031_020fcf0c(1); this->vfunc_58(); } break; - case 5: + case MapObjDoorBaseState_5: if (GET_FLAG(this->mFlags, MapObjFlag_1) && this->mUnk_6C >= FLOAT_TO_FX32(0.5f)) { this->func_ov031_020fcf0c(0); } break; - case 1: + case MapObjDoorBaseState_1: if (this->mUnk_86) { this->func_ov031_020fcf0c(1); this->vfunc_58(); @@ -319,13 +319,13 @@ struct UnkStackStruct { u16 mUnk_1E; }; -void MapObjectDoorBase::vfunc_5C(unk32 param1, unk32 param2) { +void MapObjectDoorBase::vfunc_5C(MapObjState state, unk32 param2) { UnkStackStruct1 auStack_5c; UnkStackStruct1 auStack_9c; - this->mUnk_16 = param1; + this->mState = state; - switch (this->mUnk_16) { - case 0: + switch (this->mState) { + case MapObjDoorBaseState_0: if (this->mUnk_88) { this->vfunc_74(); } @@ -395,7 +395,7 @@ void MapObjectDoorBase::vfunc_5C(unk32 param1, unk32 param2) { this->func_ov000_0209d614(0); } break; - case 1: + case MapObjDoorBaseState_1: if (this->mUnk_91) { this->vfunc_48(); } @@ -403,11 +403,11 @@ void MapObjectDoorBase::vfunc_5C(unk32 param1, unk32 param2) { this->mUnk_82 = 0; this->vfunc_7C(); break; - case 2: + case MapObjDoorBaseState_2: this->mUnk_84 = 0x0D; this->func_ov031_020fcf0c(1); break; - case 3: + case MapObjDoorBaseState_3: this->vfunc_7C(); this->mUnk_80 = @@ -484,7 +484,7 @@ void MapObjectDoorBase::vfunc_5C(unk32 param1, unk32 param2) { } break; - case 4: + case MapObjDoorBaseState_4: this->vfunc_7C(); if (this->mUnk_8A && this->mUnk_86 && param2 == 0) { @@ -505,17 +505,17 @@ void MapObjectDoorBase::vfunc_5C(unk32 param1, unk32 param2) { } } break; - case 5: + case MapObjDoorBaseState_5: if (this->mUnk_88) { this->vfunc_74(); } break; - case 6: + case MapObjDoorBaseState_6: this->vfunc_7C(); break; - case 7: + case MapObjDoorBaseState_7: break; - case 8: + case MapObjDoorBaseState_8: this->vfunc_7C(); if (param2 == 0) { @@ -621,30 +621,30 @@ void MapObjectDoorBase::func_ov031_020fcd40() { } void MapObjectDoorBase::vfunc_70() { - switch (this->mUnk_16) { - case 5: + switch (this->mState) { + case MapObjDoorBaseState_5: if (this->mUnk_80 > 0) { this->vfunc_44(); } break; - case 0: + case MapObjDoorBaseState_0: if (this->mUnk_80 > 0) { this->vfunc_4C(); } break; - case 1: + case MapObjDoorBaseState_1: break; - case 2: + case MapObjDoorBaseState_2: break; - case 3: + case MapObjDoorBaseState_3: break; - case 4: + case MapObjDoorBaseState_4: break; - case 6: + case MapObjDoorBaseState_6: break; - case 7: + case MapObjDoorBaseState_7: break; - case 8: + case MapObjDoorBaseState_8: break; default: this->vfunc_44(); @@ -709,7 +709,7 @@ void MapObjectDoorBase::vfunc2_08() { u16 *temp_r3; u16 *temp_r3_2; - if (this->mUnk_16 != 1 || !this->mUnk_8C || (u16) (this->mUnk_14 + 0x2000) / DEG_TO_ANG(90) != 2) { + if (this->mState != MapObjDoorBaseState_1 || !this->mUnk_8C || (u16) (this->mUnk_14 + 0x2000) / DEG_TO_ANG(90) != 2) { return; } @@ -725,7 +725,7 @@ void MapObjectDoorBase::vfunc2_08() { // temp_r3 = sp - 4; // *temp_r3 = this->mUnk_4A; - data_027e0ce0->func_ov000_0208bbd4(this->mUnk_44, &this->mUnk_4C, this->mUnk_4A); + data_027e0ce0->func_ov000_0208bbd4(this->mUnk_04, &this->mUnk_4C, this->mUnk_4A); return; } @@ -735,7 +735,7 @@ void MapObjectDoorBase::vfunc2_08() { // temp_r3_2 = sp - 4; // *temp_r3_2 = this->mUnk_4A; - data_027e0ce0->func_ov000_0208bbd4(this->mUnk_44, &this->mUnk_4C, this->mUnk_4A); + data_027e0ce0->func_ov000_0208bbd4(this->mUnk_04, &this->mUnk_4C, this->mUnk_4A); this->mUnk_5C.x = this->mPos.x + FLOAT_TO_FX32(1.0f); this->mUnk_5C.y = this->mPos.y; diff --git a/src/031_Land/MapObject/MapObjectDoorClick.cpp b/src/031_Land/MapObject/MapObjectDoorClick.cpp index 06110066..38a80edc 100644 --- a/src/031_Land/MapObject/MapObjectDoorClick.cpp +++ b/src/031_Land/MapObject/MapObjectDoorClick.cpp @@ -98,46 +98,46 @@ void MapObjectDoorClick::vfunc_08(void) { this->mUnk_A4 = 0; } - if (this->mUnk_16 == 2) { + if (this->mState == MapObjDoorClickState_2) { this->mUnk_8B = this->func_ov031_020fcf30(); } - switch (this->mUnk_16) { - case 3: + switch (this->mState) { + case MapObjDoorClickState_3: this->mUnk_84++; if (!this->mUnk_86 && this->vfunc_6C()) { - this->vfunc_5C(0, 0); + this->vfunc_5C(MapObjDoorClickState_0, 0); break; } this->mUnk_82++; if (this->mUnk_82 >= this->vfunc2_1C(4)) { - this->vfunc_5C(4, 0); + this->vfunc_5C(MapObjDoorClickState_4, 0); } break; - case 4: + case MapObjDoorClickState_4: this->mUnk_84++; if (!this->mUnk_86 && this->vfunc_6C()) { - this->vfunc_5C(0, 0); + this->vfunc_5C(MapObjDoorClickState_0, 0); break; } this->mUnk_82++; if (this->mUnk_82 >= this->vfunc2_1C(5)) { - this->vfunc_5C(5, 0); + this->vfunc_5C(MapObjDoorClickState_5, 0); } break; - case 5: + case MapObjDoorClickState_5: this->mUnk_84++; if (!this->mUnk_86 && this->vfunc_6C()) { - this->vfunc_5C(0, 0); + this->vfunc_5C(MapObjDoorClickState_0, 0); break; } @@ -165,31 +165,31 @@ void MapObjectDoorClick::vfunc_08(void) { if (this->mUnk_82 >= this->vfunc2_1C(6)) { this->mUnk_82 = this->vfunc2_1C(6); - this->vfunc_5C(6, 0); + this->vfunc_5C(MapObjDoorClickState_6, 0); } } break; - case 6: + case MapObjDoorClickState_6: this->mUnk_84++; this->mUnk_82++; if (this->mUnk_82 >= this->vfunc2_1C(7)) { this->mUnk_82 = this->vfunc2_1C(7); - this->vfunc_5C(7, 0); + this->vfunc_5C(MapObjDoorClickState_7, 0); } break; - case 7: + case MapObjDoorClickState_7: this->mUnk_84++; this->mUnk_82++; if (this->mUnk_82 >= this->vfunc2_1C(8)) { - this->vfunc_5C(8, 0); + this->vfunc_5C(MapObjDoorClickState_8, 0); } break; - case 8: + case MapObjDoorClickState_8: this->MapObjectDoorBase::vfunc_08(); break; default: @@ -246,17 +246,17 @@ void MapObjectDoorClick::vfunc_14(void) { this->mUnk_94.vfunc_14(&m, &local_48); } -void MapObjectDoorClick::vfunc_5C(unk32 param1, unk32 param2) { +void MapObjectDoorClick::vfunc_5C(MapObjState state, unk32 param2) { s32 var_r6; u32 temp_r8; UnkStackStruct1 sp8; s16 sp4; s16 *sp4Ptr; - this->mUnk_16 = param1; + this->mState = state; - switch (this->mUnk_16) { - case 3: + switch (this->mState) { + case MapObjDoorClickState_3: this->vfunc_7C(); u16 result = ROUND_FX32(MUL_FX32(func_01ffb428(0x1000 - this->mUnk_6C, 0x1000), INT_TO_FX32(this->mUnk_78))); @@ -272,9 +272,9 @@ void MapObjectDoorClick::vfunc_5C(unk32 param1, unk32 param2) { } break; - case 8: + case MapObjDoorClickState_8: if (this->mUnk_20.mParams[2] & 0xFF) { - this->MapObjectDoorBase::vfunc_5C(param1, param2); + this->MapObjectDoorBase::vfunc_5C(state, param2); this->func_ov031_020fcf0c(1); this->mUnk_10 = this->vfunc2_14(); break; @@ -282,7 +282,7 @@ void MapObjectDoorClick::vfunc_5C(unk32 param1, unk32 param2) { // fallthrough default: - this->MapObjectDoorBase::vfunc_5C(param1, param2); + this->MapObjectDoorBase::vfunc_5C(state, param2); break; } } @@ -308,16 +308,16 @@ bool MapObjectDoorClick::func_ov031_020ffde4(void) { } unk32 MapObjectDoorClick::vfunc_28(void) { - switch (this->mUnk_16) { - case 3: - case 4: - case 5: - case 6: - case 7: - case 8: + switch (this->mState) { + case MapObjDoorClickState_3: + case MapObjDoorClickState_4: + case MapObjDoorClickState_5: + case MapObjDoorClickState_6: + case MapObjDoorClickState_7: + case MapObjDoorClickState_8: return -1; default: - this->vfunc_5C(3, 0); + this->vfunc_5C(MapObjDoorClickState_3, 0); break; } diff --git a/src/031_Land/MapObject/MapObjectDoorDangerSpawn.cpp b/src/031_Land/MapObject/MapObjectDoorDangerSpawn.cpp index dbf1bfd5..3dc55bfb 100644 --- a/src/031_Land/MapObject/MapObjectDoorDangerSpawn.cpp +++ b/src/031_Land/MapObject/MapObjectDoorDangerSpawn.cpp @@ -19,7 +19,6 @@ extern "C" unk32 func_01ffb428(unk32, unk32); extern "C" void func_01ffaf74(VecFx32 *, Mat4x3p *, VecFx32 *); extern "C" void func_01ff93c0(VecFx32 *, fx32); extern unk32 data_ov031_02110c00[]; -extern UnkStruct_ov000_020b34c4_Callback data_ov000_020b4cc4; const UnkStruct_ov031_021150b0 data_ov031_021150b0(0x1E66); @@ -70,7 +69,7 @@ void MapObjectDoorDangerSpawn::vfunc_04(void) { ptr = data_027e0cd8->mUnk_0C; ptr->func_ov000_0208053c(this->mUnk_20.mParams[0]); ptr->func_ov000_020803ec(this->mUnk_20.mParams[0]); - this->vfunc_5C(2, 1); + this->vfunc_5C(MapObjDoorDangerSpawnState_2, 1); return; } @@ -81,22 +80,19 @@ void MapObjectDoorDangerSpawn::vfunc_04(void) { if (this->mUnk_20.mParams[1] == 4) { if (this->func_ov000_0209d29c(0) != 0) { this->mUnk_6C = 0; - this->MapObjectDoorBase::vfunc_5C(2, 1); + this->MapObjectDoorBase::vfunc_5C(MapObjDoorDangerSpawnState_2, 1); return; } } - this->vfunc_5C(8, 1); + this->vfunc_5C(MapObjDoorDangerSpawnState_8, 1); #if IS_JP //! TODO: non-matching - UnkStruct_ov000_020b34c4 stack; - bool run = true; - stack.mUnk_00 = &data_ov000_020b4cc4; - stack.mUnk_04 = MapObjectId_DoorDangerSpawn; + MapObjectDoorDangerSpawn_ov031_02116e24 stack(MapObjectId_DoorDangerSpawn); + bool run = true; - MapObject **ppMapObject = - gpMapObjManager->func_01fff520((UnkStruct_ov000_020b34c4 *) &stack.mUnk_00, gpMapObjManager->mMapObjTable); + MapObject **ppMapObject = gpMapObjManager->func_01fff520(&stack, gpMapObjManager->mMapObjTable); if (ppMapObject != gpMapObjManager->mUnk_08) { MapObjectDoorDangerSpawn *pMapObject = (MapObjectDoorDangerSpawn *) *ppMapObject; @@ -126,7 +122,7 @@ void MapObjectDoorDangerSpawn::vfunc_04(void) { this->mUnk_A2 = true; this->mUnk_8C = 0; ptr->func_ov000_020803ec(this->mUnk_20.mParams[0]); - this->vfunc_5C(0, 0); + this->vfunc_5C(MapObjDoorDangerSpawnState_0, 0); UnkStruct_027e09bc_0C *uVar5 = data_027e09bc->mUnk_0C; MapObjectDoorDangerSpawn::func_ov031_020fe5fc(&auStack_20, this); @@ -166,8 +162,8 @@ void MapObjectDoorDangerSpawn::vfunc_08(void) { this->mUnk_AC++; } - switch (this->mUnk_16) { - case 0: + switch (this->mState) { + case MapObjDoorDangerSpawnState_0: if (this->mUnk_A2) { u16 max = this->mUnk_AE; u16 timer = this->mUnk_AC; @@ -204,7 +200,7 @@ void MapObjectDoorDangerSpawn::vfunc_08(void) { return; } } - case 1: + case MapObjDoorDangerSpawnState_1: if (!this->mUnk_86 || data_027e09b8->func_ov000_020732ec(this->mUnk_74)) { if (!this->mUnk_A2) { if (data_027e09b8->func_ov000_0207330c() == 0x0A) { @@ -228,7 +224,7 @@ void MapObjectDoorDangerSpawn::vfunc_08(void) { } } break; - case 2: + case MapObjDoorDangerSpawnState_2: if (this->mUnk_20.mParams[1] == 4 && this->func_ov000_0209d29c(0) != 0) { if (this->func_ov000_0209d29c(1) != 0) { return; @@ -258,7 +254,7 @@ void MapObjectDoorDangerSpawn::vfunc_08(void) { this->MapObjectDoorBase::vfunc_08(); this->vfunc2_10(); - if (this->mUnk_16 == 2 && this->mUnk_A4 == 0 && !this->mUnk_A1) { + if (this->mState == MapObjDoorDangerSpawnState_2 && this->mUnk_A4 == 0 && !this->mUnk_A1) { data_ov000_020b51b8.func_ov000_0206d0bc(5); this->mUnk_A1 = true; } @@ -267,12 +263,12 @@ void MapObjectDoorDangerSpawn::vfunc_08(void) { void MapObjectDoorDangerSpawn::vfunc_0C(void) { this->MapObjectDoorBase::vfunc_0C(); - if ((u16) this->mUnk_16 <= 1) { + if ((u16) this->mState <= MapObjDoorDangerSpawnState_1) { this->vfunc_08(); } } -void MapObjectDoorDangerSpawn::vfunc_5C(unk32 param1, unk32 param2) { +void MapObjectDoorDangerSpawn::vfunc_5C(MapObjState state, unk32 param2) { UnkStruct_027e0cd8 **ptr; s32 var_r6; u32 temp_r8; @@ -280,12 +276,12 @@ void MapObjectDoorDangerSpawn::vfunc_5C(unk32 param1, unk32 param2) { s16 sp4; s16 *sp4Ptr; - this->mUnk_16 = param1; + this->mState = state; this->mUnk_AE = 0; this->mUnk_AC = 0; - switch (this->mUnk_16) { - case 3: + switch (this->mState) { + case MapObjDoorDangerSpawnState_3: this->vfunc_7C(); sp4Ptr = (s16 *) &sp4; @@ -331,10 +327,10 @@ void MapObjectDoorDangerSpawn::vfunc_5C(unk32 param1, unk32 param2) { } break; - case 4: - this->MapObjectDoorBase::vfunc_5C(param1, param2); + case MapObjDoorDangerSpawnState_4: + this->MapObjectDoorBase::vfunc_5C(state, param2); break; - case 0: + case MapObjDoorDangerSpawnState_0: this->func_ov000_0209d2c4(1, false); this->func_ov000_0209d2c4(0, true); @@ -351,17 +347,17 @@ void MapObjectDoorDangerSpawn::vfunc_5C(unk32 param1, unk32 param2) { this->mUnk_90 = false; } - this->MapObjectDoorBase::vfunc_5C(param1, param2); + this->MapObjectDoorBase::vfunc_5C(state, param2); if (this->mUnk_86 && param2 == 0 && this->mUnk_90 && data_027e0ce0->func_01fff1a4()) { data_027e0d8c->func_ov093_02166058(); } return; - case 2: + case MapObjDoorDangerSpawnState_2: ptr = &data_027e0cd8; // whyyy - this->MapObjectDoorBase::vfunc_5C(param1, param2); + this->MapObjectDoorBase::vfunc_5C(state, param2); var_r6 = 1; temp_r8 = data_027e09a4->CurrentSceneIndex(); @@ -382,9 +378,9 @@ void MapObjectDoorDangerSpawn::vfunc_5C(unk32 param1, unk32 param2) { } break; - case 8: + case MapObjDoorDangerSpawnState_8: ptr = &data_027e0cd8; - this->MapObjectDoorBase::vfunc_5C(param1, param2); + this->MapObjectDoorBase::vfunc_5C(state, param2); this->func_ov000_0209d2c4(0, false); if (param2 == 0) { @@ -397,7 +393,7 @@ void MapObjectDoorDangerSpawn::vfunc_5C(unk32 param1, unk32 param2) { break; default: - this->MapObjectDoorBase::vfunc_5C(param1, param2); + this->MapObjectDoorBase::vfunc_5C(state, param2); break; } } @@ -577,8 +573,8 @@ void MapObjectDoorDangerSpawn::vfunc_14(void) { } void MapObjectDoorDangerSpawn::vfunc2_10(void) { - switch (this->mUnk_16) { - case 0: + switch (this->mState) { + case MapObjDoorDangerSpawnState_0: default: if (data_027e09b8->func_ov000_020732ec(this->mUnk_74) != 0) { if (this->mUnk_68.mUnk_00 != NULL) { @@ -588,14 +584,14 @@ void MapObjectDoorDangerSpawn::vfunc2_10(void) { this->mUnk_68.mUnk_00->mUnk_24 |= 0x08; } break; - case 1: - case 2: - case 3: - case 4: - case 5: - case 6: - case 7: - case 8: + case MapObjDoorDangerSpawnState_1: + case MapObjDoorDangerSpawnState_2: + case MapObjDoorDangerSpawnState_3: + case MapObjDoorDangerSpawnState_4: + case MapObjDoorDangerSpawnState_5: + case MapObjDoorDangerSpawnState_6: + case MapObjDoorDangerSpawnState_7: + case MapObjDoorDangerSpawnState_8: break; } } @@ -628,7 +624,7 @@ void MapObjectDoorDangerSpawn::vfunc_74(void) { u16 var_r5 = (u16) (this->mUnk_14 + DEG_TO_ANG(45)); - if (((u16) this->mUnk_14 / DEG_TO_ANG(90)) == 2 && this->mUnk_16 == 5) { + if (((u16) this->mUnk_14 / DEG_TO_ANG(90)) == 2 && this->mState == MapObjDoorDangerSpawnState_5) { var_r5 = 0; } diff --git a/src/031_Land/MapObject/MapObjectDoorKey.cpp b/src/031_Land/MapObject/MapObjectDoorKey.cpp index 6e47e8bc..f7005429 100644 --- a/src/031_Land/MapObject/MapObjectDoorKey.cpp +++ b/src/031_Land/MapObject/MapObjectDoorKey.cpp @@ -91,12 +91,12 @@ void MapObjectDoorKey::vfunc_14(void) { this->mUnk_94.vfunc_14(&m, &local_48); } -void MapObjectDoorKey::vfunc_5C(unk32 param1, unk32 param2) { +void MapObjectDoorKey::vfunc_5C(MapObjState state, unk32 param2) { this->mUnk_8D = true; - this->MapObjectDoorBase::vfunc_5C(param1, param2); + this->MapObjectDoorBase::vfunc_5C(state, param2); - switch (this->mUnk_16) { - case 3: + switch (this->mState) { + case MapObjDoorKeyState_3: if (param2 == 0) { data_027e0ce0->mUnk_2C->GetInventory()->GiveSmallKeys(-1); } @@ -104,7 +104,7 @@ void MapObjectDoorKey::vfunc_5C(unk32 param1, unk32 param2) { UNSET_FLAG(this->mFlags, MapObjFlag_9); data_027e09a8->func_ov000_02071b30(0x134, &this->mPos, 0); break; - case 8: + case MapObjDoorKeyState_8: UNSET_FLAG(this->mFlags, MapObjFlag_9); break; default: @@ -133,16 +133,16 @@ unk32 MapObjectDoorKey::vfunc_28(void) { return -1; } - switch (this->mUnk_16) { - case 3: - case 4: - case 5: - case 6: - case 7: - case 8: + switch (this->mState) { + case MapObjDoorKeyState_3: + case MapObjDoorKeyState_4: + case MapObjDoorKeyState_5: + case MapObjDoorKeyState_6: + case MapObjDoorKeyState_7: + case MapObjDoorKeyState_8: return -1; default: - this->vfunc_5C(3, 0); + this->vfunc_5C(MapObjDoorKeyState_3, 0); break; } diff --git a/src/031_Land/MapObject/MapObjectDoorSwitch.cpp b/src/031_Land/MapObject/MapObjectDoorSwitch.cpp index b7c6a0a9..e9c5672d 100644 --- a/src/031_Land/MapObject/MapObjectDoorSwitch.cpp +++ b/src/031_Land/MapObject/MapObjectDoorSwitch.cpp @@ -93,7 +93,7 @@ bool MapObjectDoorSwitch::vfunc_00(void) { void MapObjectDoorSwitch::vfunc_08(void) { if (this->mUnk_20.mParams[3] == 2 && data_027e09b8->func_01ffd420()) { this->MapObjectDoorBase::vfunc_08(); - } else if (this->mUnk_16 == 5 && this->vfunc_6C()) { + } else if (this->mState == MapObjDoorSwitchState_5 && this->vfunc_6C()) { this->vfunc_5C(0, 0); } else { this->MapObjectDoorBase::vfunc_08(); diff --git a/src/031_Land/MapObject/MapObjectGrass.cpp b/src/031_Land/MapObject/MapObjectGrass.cpp new file mode 100644 index 00000000..a44863c7 --- /dev/null +++ b/src/031_Land/MapObject/MapObjectGrass.cpp @@ -0,0 +1,167 @@ +#include "MapObject/MapObjectGrass.hpp" + +#include "System/Random.hpp" +#include "System/SysNew.hpp" +#include "Unknown/UnkStruct_027e09a8.hpp" +#include "Unknown/UnkStruct_027e0cec.hpp" + +DECL_PROFILE(MapObjectProfileGrass); + +MapObject *MapObjectProfileGrass::Create() { + return new(HeapIndex_ITCM) MapObjectGrass(); +} + +// non-matching +MapObjectProfileGrass::MapObjectProfileGrass() : + MapObjectProfile_Derived2(MapObjectId_Grass, MapObjectId_Grass) {} + +MapObjectGrass::MapObjectGrass() : + mUnk_58(0x0), + mUnk_5C(FLOAT_TO_FX32(0.0f)), + mUnk_64(-1) { + this->mUnk_62 = 0x0; + this->mUnk_60 = 0x0; + SET_FLAG(this->mFlags, MapObjFlag_6); +} + +// non-matching +bool MapObjectGrass::vfunc_00() {} + +void MapObjectGrass::vfunc_08() { + MapObjState state = this->mState; + if (state != MapObjGrassState_1) { + if (state == MapObjGrassState_2 && this->func_ov031_021016b4()) { + this->vfunc_38(MapObjGrassState_3, 0x0); + } + } else if (this->func_ov031_02101778()) { + this->vfunc_38(MapObjGrassState_0, 0x0); + } + if (this->mUnk_64 > -1) { + --this->mUnk_64; + } +} + +// non-matching +void MapObjectGrass::vfunc_14() { + VecFx32 vec; + for (unk32 i = 0; i < ARRAY_LEN(this->mUnk_40); ++i) { + VecFx32_Add(&this->mUnk_40[i], &this->mPos, &vec); + vec.x += this->mUnk_5C; + } +} + +bool MapObjectGrass::vfunc_38(MapObjState state, unk32 param2) { + if (this->mState == state) { + return true; + } + this->mState = state; + switch (this->mState) { + case MapObjGrassState_0: + this->mUnk_5C = FLOAT_TO_FX32(0.0f); + if (param2 != 0) { + this->func_ov031_021018a4(0x0); + } + break; + case MapObjGrassState_2: + this->mUnk_58 = 0x0; + this->mUnk_5C = FLOAT_TO_FX32(0.0f); + + VecFx32 vec; + for (unk32 i = 0; i < ARRAY_LEN(this->mUnk_40); ++i) { + VecFx32_Init(this->mUnk_40[i].x, this->mUnk_40[i].y + FLOAT_TO_FX32(0.35f), this->mUnk_40[i].z, &vec); + VecFx32_Add(&vec, &this->mPos, &vec); + this->vfunc_3C(&vec); + } + + if (this->GetMapObjectId() == MapObjectId_GRSV) { + data_027e09a8->func_ov000_02071b30(0xFB, &this->mPos, 0); + } else { + data_027e09a8->func_ov000_02071b30(0xF7, &this->mPos, 0); + } + this->func_ov031_021018a4(0x1); + break; + case MapObjGrassState_1: + this->mUnk_5C = FLOAT_TO_FX32(0.0f); + this->mUnk_58 = 0x0; + break; + case MapObjGrassState_3: + this->mUnk_5C = FLOAT_TO_FX32(0.0f); + this->func_ov031_021018a4(0x1); + break; + default: + break; + } + return true; +} + +// non-matching +bool MapObjectGrass::func_ov031_021016b4() {} + +void MapObjectGrass::vfunc_3C(VecFx32 *param1) { + data_027e0cec->func_ov000_0209feac(0x923, param1, 0x4, 0x0, 0x0); +} + +bool MapObjectGrass::func_ov031_02101778() { + this->mUnk_5C = gRandom.Next32(0x4CD) + 0xFFFFFD9A; + if (this->mUnk_58 >= 4U) { + return true; + } + ++this->mUnk_58; + return false; +} + +bool MapObjectGrass::vfunc_1C(ActorRef param1, unk32 param2, VecFx32 *param3) { + if (this->mUnk_64 != -0x1) { + return false; + } + switch (param2) { + case 0x7: + case 0x8: + case 0xC: + if (this->mState >= MapObjGrassState_2) { + return false; + } + this->vfunc_38(MapObjGrassState_2, 0x0); + return false; + case 0x4: + if (this->mState >= MapObjGrassState_1) { + return false; + } + this->vfunc_38(MapObjGrassState_1, 0x0); + return false; + default: + return false; + } +} + +void MapObjectGrass::func_ov031_021018a4(unk16 param1) { + if (param1 != 0x0) { + this->mUnk_60 = 0x4; + this->mUnk_62 = 0x4; + return; + } + if (this->mUnk_20.mParams[1] == 0x1) { + this->mUnk_60 = 0x3; + } else { + this->mUnk_60 = gRandom.Next32(0x3); + } + this->mUnk_62 = gRandom.Next32(0x3); +} + +unk32 MapObjectGrass::func_ov031_02101950() { + if (!(this->mState != MapObjGrassState_0 && this->mState != MapObjGrassState_1)) { + return 0x15; + } + return 0x16; +} + +void MapObjectGrass::func_ov031_02101968(unk32 param1) { + if (param1 != 0x0) { + this->mUnk_64 = 0xA; + } +} + +// non-matching +void MapObjectGrass::func_ov031_02101978(unk32 param1, VecFx32 *param2) { + VecFx32_Copy(param2, &this->mUnk_40[param1]); +} diff --git a/src/031_Land/MapObject/MapObjectPot.cpp b/src/031_Land/MapObject/MapObjectPot.cpp index 6156e01d..78ead72a 100644 --- a/src/031_Land/MapObject/MapObjectPot.cpp +++ b/src/031_Land/MapObject/MapObjectPot.cpp @@ -21,7 +21,7 @@ MapObject *MapObjectProfilePot::Create() { } MapObjectProfilePot::MapObjectProfilePot() : - MapObjectProfilePot_Base(MapObjectId_TSUB, MapObjectId_TSUB) { + MapObjectProfilePot_Base(MapObjectId_Pot, MapObjectId_Pot) { this->mUnk_0E = 0x0; this->mUnk_D4.mUnk_08 = 0x7007; this->mUnk_D4.mUnk_0C.x = FLOAT_TO_FX32(0.0f); diff --git a/src/031_Land/MapObject/MapObjectUnkGRSS.cpp b/src/031_Land/MapObject/MapObjectUnkGRSS.cpp deleted file mode 100644 index a7a1ae4a..00000000 --- a/src/031_Land/MapObject/MapObjectUnkGRSS.cpp +++ /dev/null @@ -1,32 +0,0 @@ -//! TODO: This file was generated automatically and might contain errors - -#include "MapObject/MapObjectUnkGRSS.hpp" -#include "System/SysNew.hpp" - -DECL_PROFILE(MapObjectProfileUnkGRSS); - -MapObject *MapObjectProfileUnkGRSS::Create() { - return new(HeapIndex_2) MapObjectUnkGRSS(); -} - -MapObjectProfileUnkGRSS::MapObjectProfileUnkGRSS() : - MapObjectProfile(MapObjectId_GRSS) {} - -MapObjectUnkGRSS::MapObjectUnkGRSS() {} - -void MapObjectUnkGRSS::func_ov031_021010e0(void) {} -void MapObjectUnkGRSS::func_ov031_02101170(void) {} -void MapObjectUnkGRSS::func_ov031_0210148c(void) {} -void MapObjectUnkGRSS::func_ov031_02101504(void) {} -void MapObjectUnkGRSS::func_ov031_02101578(void) {} -void MapObjectUnkGRSS::func_ov031_021016b4(void) {} -void MapObjectUnkGRSS::func_ov031_0210173c(void) {} -void MapObjectUnkGRSS::func_ov031_02101778(void) {} -void MapObjectUnkGRSS::func_ov031_021017ec(void) {} -void MapObjectUnkGRSS::func_ov031_021018a4(void) {} -void MapObjectUnkGRSS::func_ov031_02101950(void) {} -void MapObjectUnkGRSS::func_ov031_02101968(void) {} -void MapObjectUnkGRSS::func_ov031_02101978(void) {} - -MapObjectUnkGRSS::~MapObjectUnkGRSS() {} -MapObjectProfileUnkGRSS::~MapObjectProfileUnkGRSS() {} diff --git a/src/031_Land/MapObject/MapObjectUnkSKDI.cpp b/src/031_Land/MapObject/MapObjectUnkSKDI.cpp index 1e44089a..92c4abb5 100644 --- a/src/031_Land/MapObject/MapObjectUnkSKDI.cpp +++ b/src/031_Land/MapObject/MapObjectUnkSKDI.cpp @@ -1,34 +1,423 @@ -//! TODO: This file was generated automatically and might contain errors - #include "MapObject/MapObjectUnkSKDI.hpp" -#include "System/SysNew.hpp" +#include "Actor/ActorManager.hpp" +#include "System/SysNew.hpp" +#include "Unknown/UnkStruct_027e09a8.hpp" +#include "Unknown/UnkStruct_027e09b8.hpp" +#include "Unknown/UnkStruct_027e0cd8.hpp" +#include "Unknown/UnkStruct_027e0cec.hpp" + +struct UnkStackStruct; DECL_PROFILE(MapObjectProfileUnkSKDI); MapObject *MapObjectProfileUnkSKDI::Create() { - return new(HeapIndex_2) MapObjectUnkSKDI(); + return new(HeapIndex_ITCM) MapObjectUnkSKDI(); } MapObjectProfileUnkSKDI::MapObjectProfileUnkSKDI() : - MapObjectProfile(MapObjectId_SKDI) {} + MapObjectProfile_Derived2(MapObjectId_SKDI, MapObjectId_SKDI) { + this->mUnk_06 = -0x1; + this->mUnk_1E &= 0xFFFE; +} -MapObjectUnkSKDI::MapObjectUnkSKDI() {} +MapObjectUnkSKDI::MapObjectUnkSKDI() : + mUnk_040(GetModelFromProfile()), + mUnk_048(0x1), + mUnk_07C(0x0), + mUnk_080(-0x1), + mUnk_084(0x0), + mUnk_086(0x0), + mUnk_087(0x1), + mUnk_088(0x0), + mUnk_089(0x0), + mUnk_08C(0x3000, 0x1), + mUnk_0F8(0x0), + mUnk_0FA(0x0), + mUnk_0FC(0x0) { + SET_FLAG(this->mFlags, MapObjFlag_10); + this->mUnk_18[1] = 0x12; +} -void MapObjectUnkSKDI::func_ov031_02106190(void) {} -void MapObjectUnkSKDI::func_ov031_021061dc(void) {} -void MapObjectUnkSKDI::func_ov031_02106224(void) {} -void MapObjectUnkSKDI::func_ov031_021062ec(void) {} -void MapObjectUnkSKDI::func_ov031_021063cc(void) {} -void MapObjectUnkSKDI::func_ov031_021063dc(void) {} -void MapObjectUnkSKDI::func_ov031_0210643c(void) {} -void MapObjectUnkSKDI::func_ov031_02106678(void) {} -void MapObjectUnkSKDI::func_ov031_02106a70(void) {} -void MapObjectUnkSKDI::func_ov031_02106a84(void) {} -void MapObjectUnkSKDI::func_ov031_02106c78(void) {} -void MapObjectUnkSKDI::func_ov031_02106c98(void) {} -void MapObjectUnkSKDI::func_ov031_02106ca0(void) {} -void MapObjectUnkSKDI::func_ov031_02106ca8(void) {} -void MapObjectUnkSKDI::func_ov031_02106cb0(void) {} +void MapObjectUnkSKDI::func_ov031_02106190() { + this->mUnk_04C[0].mUnk_04 = 0x8C0; + this->mUnk_04C[0].mUnk_08 = 0x4; -MapObjectUnkSKDI::~MapObjectUnkSKDI() {} -MapObjectProfileUnkSKDI::~MapObjectProfileUnkSKDI() {} + this->mUnk_04C[1].mUnk_04 = 0x8C1; + this->mUnk_04C[1].mUnk_08 = 0x4; + + this->mUnk_04C[2].mUnk_04 = 0x8C2; + this->mUnk_04C[2].mUnk_08 = 0x4; + + this->mUnk_04C[3].mUnk_04 = 0x8C2; + this->mUnk_04C[3].mUnk_08 = 0x4; + this->mUnk_04C[3].func_ov000_020a0334(); + + this->mUnk_0FC = 0x0; +} + +void MapObjectUnkSKDI::func_ov031_021061dc() { + this->mUnk_04C[0].mUnk_04 = 0x8B8; + this->mUnk_04C[0].mUnk_08 = 0x4; + + this->mUnk_04C[1].mUnk_04 = 0x8B9; + this->mUnk_04C[1].mUnk_08 = 0x4; + + this->mUnk_04C[2].mUnk_04 = 0x8BA; + this->mUnk_04C[2].mUnk_08 = 0x4; + + this->mUnk_04C[3].mUnk_04 = 0x8BB; + this->mUnk_04C[3].mUnk_08 = 0x4; + + this->mUnk_0FC = 0x1; +} + +// non-matching +bool MapObjectUnkSKDI::vfunc_00() { + unk32 var1; + if (this->mUnk_20.mParams[2] == 0x1) { + var1 = 0x1; + } else { + var1 = 0x0; + } + this->mUnk_07C = var1; + VecFx32_Copy(&this->mPos, &this->mUnk_08C.mUnk_00); + if (var1 == 1) { + var1 = 0x7806; + } else { + var1 = 0x7406; + } + + this->mUnk_0D4.mUnk_08 = (var1 & ~0x7000) | 0x7000; + VecFx32_Init(FLOAT_TO_FX32(-0.5002f), FLOAT_TO_FX32(0.0f), FLOAT_TO_FX32(-0.5002f), &this->mUnk_0D4.mUnk_0C); + VecFx32_Init(FLOAT_TO_FX32(0.5f), FLOAT_TO_FX32(1.2f), FLOAT_TO_FX32(0.5f), &this->mUnk_0D4.mUnk_18); + + if (this->mUnk_07C == 0x0) { + this->func_ov031_02106190(); + } else { + this->func_ov031_021061dc(); + } + + this->mUnk_10 = &this->mUnk_0D4; + if (this->mUnk_20.mParams[1] == 0x1) { + var1 = 0x1; + } else { + var1 = 0x0; + } + this->mUnk_086 = var1; + return true; +} + +void MapObjectUnkSKDI::vfunc_04() { + data_027e0cd8->mUnk_0C->func_ov000_02080a5c(&this->mUnk_08C.mUnk_00); + + if (this->mUnk_20.mParams[0] == 0x0) { + if ((!this->func_ov000_0209d29c(0x0) && this->mUnk_20.mUnk_0A[0] != 0x0) || + (!this->func_ov000_0209d29c(0x1) && this->mUnk_20.mUnk_0A[1] != 0x0)) { + this->func_ov031_02106678(0x2, 0x1); + return; + } + this->func_ov031_02106678(0x1, 0x1); + return; + } + + if (this->func_ov000_0209d29c(0x0) || this->func_ov000_0209d29c(0x1)) { + this->func_ov031_02106678(0x1, 0x1); + return; + } + this->func_ov031_02106678(0x2, 0x1); +} + +void MapObjectUnkSKDI::vfunc_08() { + this->func_ov031_0210643c(0x0); +} + +void MapObjectUnkSKDI::vfunc_0C() { + if (this->mUnk_080 >= 0x0 && data_027e09b8->func_ov000_020732ec(this->mUnk_080) != 0x0) { + this->func_ov031_0210643c(0x1); + return; + } + if (this->mState != MapObjUnkSKDIState_0 && this->mState != MapObjUnkSKDIState_1 && this->mState != MapObjUnkSKDIState_2) { + return; + } + this->func_ov031_0210643c(0x0); +} + +void MapObjectUnkSKDI::func_ov031_0210643c(unk32 param1) { + switch (this->mState) { + case MapObjUnkSKDIState_0: + ++this->mUnk_084; + if (this->mUnk_084 < 0x6) { + return; + } + this->func_ov031_02106678(MapObjUnkSKDIState_1, 0x0); + break; + case MapObjUnkSKDIState_3: + if (param1 == 0x0) { + return; + } + if ((u32) data_027e09b8->func_ov000_0207330c() < 0x1E) { + return; + } + this->func_ov031_02106678(MapObjUnkSKDIState_0, 0x0); + break; + case MapObjUnkSKDIState_1: + if (this->func_ov000_0209d3b4(0x0, FLOAT_TO_FX32(2.0f)) != 0x0) { + VecFx32 vec; + VecFx32_Init(this->mPos.x, this->mPos.y + FLOAT_TO_FX32(1.25f), this->mPos.z, &vec); + UnkStruct_027e0cec *data = data_027e0cec; + for (ActorUnkBOMB_unk *ptr = this->mUnk_04C; ptr != this->mUnk_04C + ARRAY_LEN(this->mUnk_04C); ++ptr) { + data->func_ov000_020a0140(ptr, &vec); + } + } else { + UnkStruct_027e0cec *data = data_027e0cec; + for (ActorUnkBOMB_unk *ptr = this->mUnk_04C; ptr != this->mUnk_04C + ARRAY_LEN(this->mUnk_04C); ++ptr) { + data->func_ov000_020a0110(ptr); + } + } + if (this->func_ov000_0209d29c(0x0) != 0 || this->mUnk_20.mUnk_0A[0] == 0x0) { + if (this->func_ov000_0209d29c(0x1) != 0) { + return; + } + if (this->mUnk_20.mUnk_0A[1] == 0x0) { + return; + } + } + this->func_ov031_02106678(MapObjUnkSKDIState_2, 0x0); + break; + case MapObjUnkSKDIState_2: + if (this->func_ov000_0209d29c(0x1) != 0x0) { + if (this->mUnk_086 != 0) { + this->func_ov031_02106678(MapObjUnkSKDIState_3, 0x0); + } else { + this->func_ov031_02106678(MapObjUnkSKDIState_0, 0x0); + } + } + unk32 temp_r1 = this->mUnk_0FA; + if (temp_r1 != 0 && ((u32) this->mUnk_0F8 >= (u32) temp_r1)) { + this->func_ov031_02106678(MapObjUnkSKDIState_0, 0x0); + this->mUnk_0FA = 0x0; + this->mUnk_0F8 = 0x0; + } + if (data_027e09b8->func_01ffd420() != 0) { + return; + } + if (this->mUnk_0F8 < this->mUnk_0FA) { + ++this->mUnk_0F8; + } + break; + default: + break; + } +} + +void MapObjectUnkSKDI::func_ov031_02106678(MapObjState state, unk32 param2) { + VecFx32 sp48; + if (this->mState == state) { + return; + } + this->mState = state; + VecFx32_Init(this->mPos.x, this->mPos.y + FLOAT_TO_FX32(1.25f), this->mPos.z, &sp48); + + switch (this->mState) { + case MapObjUnkSKDIState_0: + if (param2 == 0x0) { + if (this->mUnk_0FC == 0x0) { + data_027e0cec->func_ov000_0209feac(0x8C5, &sp48, 0x4, 0x0, 0x0); + data_027e0cec->func_ov000_0209feac(0x8C6, &sp48, 0x4, 0x0, 0x0); + data_027e09a8->func_ov000_02071b30(0x108, &this->mPos, 0x0); + } else { + data_027e0cec->func_ov000_0209feac(0x8BE, &sp48, 0x4, 0x0, 0x0); + data_027e0cec->func_ov000_0209feac(0x8BF, &sp48, 0x4, 0x0, 0x0); + data_027e09a8->func_ov000_02071b30(0x10A, &this->mPos, 0x0); + } + } + this->mUnk_084 = 0x0; + break; + case MapObjUnkSKDIState_3: + if (param2 == 0x0 && this->mUnk_087 != 0x0) { + UnkStackStruct1 stack; + + func_ov000_02072fd0(&stack); + stack.mUnk_08 = 0x3C; + stack.mUnk_00 = 0x80; + stack.mUnk_3A = 0x07; + stack.mUnk_38 |= 0x80; + + VecFx32_Copy(&this->mPos, &stack.mUnk_0C); + + if (this->mUnk_20.mUnk_16) { + stack.mUnk_38 |= 0x4; + } + + this->mUnk_080 = data_027e09b8->func_ov000_02073388(&stack, 0x0); + this->mUnk_087 = 0x0; + break; + } + this->func_ov031_02106678(MapObjUnkSKDIState_0, 0x0); + break; + case MapObjUnkSKDIState_1: + SET_FLAG(this->mFlags, MapObjFlag_7); + SET_FLAG(this->mFlags, MapObjFlag_8); + if (param2 == 0x0) { + if (this->mUnk_07C != this->mUnk_0FC && this->mUnk_088 == 0x0) { + break; + } + this->func_ov000_0209d2c4(0x0, true); + } + UnkStruct_027e0cec *data = data_027e0cec; + for (ActorUnkBOMB_unk *ptr = this->mUnk_04C; ptr != this->mUnk_04C + ARRAY_LEN(this->mUnk_04C); ++ptr) { + data->func_ov000_020a0140(ptr, &sp48); + } + unk32 dc = this->mUnk_0D4.mUnk_08; + if (this->mUnk_0FC == 0x1) { + dc = (dc & ~0xE00) | 0x800; + } else { + dc = (dc & ~0xE00) | 0x400; + } + this->mUnk_0D4.mUnk_08 = dc; + this->mUnk_080 = -1; + this->mUnk_0BC = 0x3000; + UNSET_FLAG(this->mFlags, MapObjFlag_10); + break; + case MapObjUnkSKDIState_2: + SET_FLAG(this->mFlags, MapObjFlag_7); + this->mFlags[0] &= 0xFEFF; + this->mUnk_0FA = 0x0; + this->mUnk_0F8 = 0x0; + if (param2 == 0) { + this->func_ov000_0209d2c4(0x0, false); + UnkStruct_027e0cec *data = data_027e0cec; + for (ActorUnkBOMB_unk *ptr = this->mUnk_04C; ptr != this->mUnk_04C + ARRAY_LEN(this->mUnk_04C); ++ptr) { + data->func_ov000_020a0110(ptr); + } + if (this->mUnk_0FC == 0) { + data_027e0cec->func_ov000_0209feac(0x8C3, &sp48, 0x4, 0x0, 0x0); + data_027e0cec->func_ov000_0209feac(0x8C4, &sp48, 0x4, 0x0, 0x0); + data_027e09a8->func_ov000_02071b30(0x109, &this->mPos, 0x0); + } else { + data_027e0cec->func_ov000_0209feac(0x8BC, &sp48, 0x4, 0x0, 0x0); + data_027e0cec->func_ov000_0209feac(0x8BD, &sp48, 0x4, 0x0, 0x0); + data_027e09a8->func_ov000_02071b30(0x10B, &this->mPos, 0x0); + } + } + this->mUnk_0D4.mUnk_08 &= ~0xE00; + this->mUnk_080 = -1; + this->mUnk_0BC = 0x800; + SET_FLAG(this->mFlags, MapObjFlag_10); + break; + default: + break; + } +} + +void MapObjectUnkSKDI::func_ov031_02106a70() { + this->func_ov031_02106678(MapObjUnkSKDIState_2, 0x0); +} + +// ActorItemBoomerang? +class ActorUnk_MapObjectUnkSKDI_vfunc_1C : public Actor { +public: + /* 000 (base) */ + /* 094 */ STRUCT_PAD(0x094, 0x128); + /* 128 */ unk32 mUnk_128; + /* 12C */ +}; + +// non-matching +bool MapObjectUnkSKDI::vfunc_1C(ActorRef param1, unk32 param2, VecFx32 *param3) { + bool var_r1 = false; + if (param1.type_index == 0x102) { + if (param1.unk_id == 1 || param1.unk_id == 3) { + var_r1 = true; + } + } + if (var_r1 != 0 && param1.unk_id == 1) { + if (data_027e0ce0->mEquippedItem != ActorId_PMTB) { + return false; + } + this->func_ov031_02106678(MapObjUnkSKDIState_0, 0x0); + return true; + } + + switch (param2) { + case 0x4: + if (this->mState != MapObjUnkSKDIState_2) { + this->func_ov031_02106678(MapObjUnkSKDIState_2, 0x0); + this->mUnk_0F8 = 0; + unk32 var = 0x28; + if (this->mUnk_20.mParams[3] != 0) { + var = this->mUnk_20.mParams[3]; + } + this->mUnk_0FA = var; + } + return false; + case 0x3: + return false; + case 0xC: + var_r1 = true; + if (data_027e09a4->mUnk_00.sceneIndex == SceneIndex_d_snow26 && this->mUnk_0FA != 0x0) { + var_r1 = false; + } + if (this->mState == MapObjUnkSKDIState_2 && var_r1) { + ActorUnk_MapObjectUnkSKDI_vfunc_1C *actor = + (ActorUnk_MapObjectUnkSKDI_vfunc_1C *) gpActorManager->func_01fff3b4(param1); + if (actor != NULL) { + switch (actor->mUnk_128) { + case 0x1: + switch (this->mUnk_07C) { + case 0x0: + this->func_ov031_02106190(); + this->func_ov031_02106678(MapObjUnkSKDIState_0, 0); + break; + case 0x1: + this->func_ov031_02106190(); + this->func_ov031_02106678(MapObjUnkSKDIState_0, 0); + break; + default: + break; + } + break; + case 0x2: + switch (this->mUnk_07C) { + case 0x0: + this->func_ov031_021061dc(); + this->func_ov031_02106678(MapObjUnkSKDIState_0, 0); + break; + case 0x1: + this->func_ov031_021061dc(); + this->func_ov031_02106678(MapObjUnkSKDIState_0, 0); + break; + default: + break; + } + break; + default: + break; + } + } + } + return false; + default: + return true; + } +} + +void MapObjectUnkSKDI::vfunc_14() { + this->mUnk_040.vfunc_18(&this->mPos); +} + +unk32 MapObjectUnkSKDI::vfunc_38() { + return this->mUnk_07C; +} + +unk32 MapObjectUnkSKDI::vfunc_3C() { + return this->mUnk_0FC; +} + +s16 MapObjectUnkSKDI::vfunc_40() { + return this->mState; +} + +void MapObjectUnkSKDI::func_ov031_02106cb0(unk32 param1) { + this->func_ov031_02106678(MapObjUnkSKDIState_0, param1); +} diff --git a/src/ITCM/ITCM_MapObjectManager.cpp b/src/ITCM/ITCM_MapObjectManager.cpp index 503ed415..0b9eb8e0 100644 --- a/src/ITCM/ITCM_MapObjectManager.cpp +++ b/src/ITCM/ITCM_MapObjectManager.cpp @@ -7,7 +7,7 @@ struct UnkStruct { unk32 four; }; -extern "C" void func_01ffecdc(int, void *); +extern "C" unk32 func_01ffecdc(int, void *); MapObject *MapObjectManager::func_01fff498(Vec2bCpp param1) { if (this->mUnk_0C[param1.y][param1.x] < 0) { @@ -29,16 +29,13 @@ void MapObjectManager::func_01fff4cc(UnkCallback_func_01fff4cc param1, void *par } } -// non-matching MapObject **MapObjectManager::func_01fff520(UnkStruct_ov000_020b34c4 *param1, MapObject **param2) { MapObject **ptr = param2; while (ptr != this->mUnk_08) { MapObject *ptr2 = *ptr; if (ptr2 != NULL && GET_FLAG((ptr2)->mFlags, MapObjFlag_Alive)) { - UnkStruct_ov000_020b34c4_Callback cb = *param1->mUnk_00; - - if ((*cb)(param1, ptr2)) { + if (param1->vfunc_00(ptr2)) { break; } } @@ -53,7 +50,7 @@ MapObjectId MapObject::GetMapObjectId() { return this->mpProfile->mMapObjId; } -void MapObject::func_01fff590(unk32 param2) { +unk32 MapObject::func_01fff590(unk32 param2) { UnkStruct stack; unk32 one; unk32 two; @@ -69,5 +66,5 @@ void MapObject::func_01fff590(unk32 param2) { stack.two = two; stack.three = three; stack.four = four; - func_01ffecdc(param2, &stack); + return func_01ffecdc(param2, &stack); } diff --git a/tools/configure.py b/tools/configure.py index 21d8abb9..6ced3022 100755 --- a/tools/configure.py +++ b/tools/configure.py @@ -473,7 +473,7 @@ config.libs = [ Object("031_Land/Actor/ActorRupee.cpp"), Object("031_Land/Actor/ActorShotArrow.cpp"), Object("031_Land/Actor/ActorUnkATTG.cpp"), - Object("031_Land/Actor/ActorUnkBLST.cpp"), + Object("031_Land/Actor/ActorBlast.cpp"), Object("031_Land/Actor/ActorUnkBOMB.cpp"), Object("031_Land/Actor/ActorUnkCLLT.cpp"), Object("031_Land/Actor/ActorUnkEFSB.cpp"), @@ -511,7 +511,7 @@ config.libs = [ Object("031_Land/MapObject/MapObjectDoorTouch.cpp"), Object("031_Land/MapObject/MapObjectUnkEXIT.cpp"), Object("031_Land/MapObject/MapObjectUnkGATE.cpp"), - Object("031_Land/MapObject/MapObjectUnkGRSS.cpp"), + Object("031_Land/MapObject/MapObjectGrass.cpp"), Object("031_Land/MapObject/MapObjectUnkGSST.cpp"), Object("031_Land/MapObject/MapObjectUnkITFL.cpp"), Object("031_Land/MapObject/MapObjectUnkRLSG.cpp"),