From 201c9ec1cdbc3baffd7cc5520d4f6e1f47093b7e Mon Sep 17 00:00:00 2001 From: louist103 <35883445+louist103@users.noreply.github.com> Date: Wed, 26 May 2021 18:59:21 -0400 Subject: [PATCH] Decompile a bunch of objects (#603) * Mostly done but shifted * still messed up * Almost OK * OBJECT_JYA_OBJ OK, OBJECT_GR OK * Done * Merge master and format * Cleanup * Cleanup 2 * Start object MB dont merge yet * Object_MB OK * Object_ydan_objects OK * General 'ydan' actor cleanup * Forgot some small things * Object_EC OK * add .gitkeep and run format * Object_sd OK but no textures cause of a zap issue * PR fixes * Fix object_sd * fix ydan * delete .gitkeep files * OBJECT_BOX as far as it can go with current ZAP * Fix undefined_syms * Start child link object * Push progress, dont merge yet * Object_mori_objects OK * Fixed? * Fix conflicts again * Seems like i missed some textures * Extract data for BgBombwall * More field * ZAP YEP 2.0 * Object_Box OK * Object_SD ok. Ready to merge * remove ASM and merge master * remove ASM * remove files wrongfully added to docs/ * Almost done * Change comment in z_player_lib.c * forgot some DLists in player_lib.c * Fix conflict, run format * Same as before but this time with Tex and TLUT * Last few things * fix object_GR and add limbs to object_sd * Nane -> Name * gChildDekuShieldMtx is now a matrix and not a blob * PR fixes (Fig) * add a space for comment in z_player_lib.c * re push and new lines * PR fixes (AngheloAlf) * PR fixes (Roman) * Fix Heishi2 * PR fixes (Fig) * Replace spacing in a file * PR fixes (Roman) --- .../code/z_kankyo/func_80076934.s | 4 +- assets/xml/objects/gameplay_field_keep.xml | 60 +++ assets/xml/objects/object_box.xml | 29 ++ assets/xml/objects/object_ec.xml | 26 + assets/xml/objects/object_gr.xml | 16 + assets/xml/objects/object_jya_obj.xml | 79 +++ assets/xml/objects/object_link_child.xml | 225 ++++++++ assets/xml/objects/object_mb.xml | 59 +++ assets/xml/objects/object_mori_objects.xml | 24 + assets/xml/objects/object_ny.xml | 6 +- assets/xml/objects/object_sd.xml | 70 +++ assets/xml/objects/object_ydan_objects.xml | 15 + include/variables.h | 3 - spec | 27 +- src/code/z_kankyo.c | 1 + src/code/z_player_lib.c | 127 +++-- .../actors/ovl_Bg_Bombwall/z_bg_bombwall.c | 15 +- .../ovl_Bg_Jya_1flift/z_bg_jya_1flift.c | 29 +- .../z_bg_jya_amishutter.c | 35 +- .../ovl_Bg_Jya_Bigmirror/z_bg_jya_bigmirror.c | 18 +- .../z_bg_jya_bombchuiwa.c | 18 +- .../ovl_Bg_Jya_Bombiwa/z_bg_jya_bombiwa.c | 18 +- .../actors/ovl_Bg_Jya_Cobra/z_bg_jya_cobra.c | 21 +- .../ovl_Bg_Jya_Kanaami/z_bg_jya_kanaami.c | 21 +- .../actors/ovl_Bg_Jya_Lift/z_bg_jya_lift.c | 16 +- .../actors/ovl_Bg_Jya_Lift/z_bg_jya_lift.h | 2 +- .../ovl_Bg_Jya_Megami/z_bg_jya_megami.c | 87 ++-- .../z_bg_jya_zurerukabe.c | 21 +- .../ovl_Bg_Mori_Bigst/z_bg_mori_bigst.c | 8 +- .../ovl_Bg_Mori_Elevator/z_bg_mori_elevator.c | 8 +- .../ovl_Bg_Mori_Hashigo/z_bg_mori_hashigo.c | 29 +- .../ovl_Bg_Mori_Hashigo/z_bg_mori_hashigo.h | 5 + .../ovl_Bg_Mori_Hashira4/z_bg_mori_hashira4.c | 10 +- .../ovl_Bg_Mori_Idomizu/z_bg_mori_idomizu.c | 5 +- .../z_bg_mori_kaitenkabe.c | 8 +- .../z_bg_mori_rakkatenjo.c | 8 +- .../z_bg_spot08_bakudankabe.c | 4 +- .../z_bg_spot11_bakudankabe.c | 5 +- .../z_bg_spot17_bakudankabe.c | 5 +- .../actors/ovl_Bg_Ydan_Hasi/z_bg_ydan_hasi.c | 31 +- .../actors/ovl_Bg_Ydan_Hasi/z_bg_ydan_hasi.h | 9 +- .../ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.c | 30 +- .../ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.h | 2 +- src/overlays/actors/ovl_Demo_Ec/z_demo_ec.c | 132 ++--- .../actors/ovl_Demo_Tre_Lgt/z_demo_tre_lgt.c | 8 +- src/overlays/actors/ovl_Door_Ana/z_door_ana.c | 11 +- .../actors/ovl_Door_Shutter/z_door_shutter.c | 5 +- src/overlays/actors/ovl_En_Box/z_en_box.c | 32 +- src/overlays/actors/ovl_En_Butte/z_en_butte.c | 9 +- src/overlays/actors/ovl_En_Cs/z_en_cs.c | 4 +- src/overlays/actors/ovl_En_Door/z_en_door.c | 3 +- src/overlays/actors/ovl_En_Fr/z_en_fr.c | 12 +- .../actors/ovl_En_Heishi1/z_en_heishi1.c | 32 +- .../actors/ovl_En_Heishi2/z_en_heishi2.c | 101 ++-- .../actors/ovl_En_Heishi2/z_en_heishi2.h | 2 +- .../actors/ovl_En_Heishi3/z_en_heishi3.c | 20 +- .../actors/ovl_En_Heishi4/z_en_heishi4.c | 34 +- src/overlays/actors/ovl_En_Ishi/z_en_ishi.c | 16 +- src/overlays/actors/ovl_En_Ishi/z_en_ishi.h | 2 + src/overlays/actors/ovl_En_Kusa/z_en_kusa.c | 3 +- src/overlays/actors/ovl_En_Light/z_en_light.c | 5 +- src/overlays/actors/ovl_En_Mb/z_en_mb.c | 109 ++-- src/overlays/actors/ovl_En_Mb/z_en_mb.h | 4 +- .../actors/ovl_En_Niw_Girl/z_en_niw_girl.c | 37 +- .../actors/ovl_En_Niw_Girl/z_en_niw_girl.h | 4 +- src/overlays/actors/ovl_En_Ny/z_en_ny.c | 8 +- src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c | 12 +- .../actors/ovl_Obj_Hamishi/z_obj_hamishi.c | 8 +- src/overlays/actors/ovl_Obj_Hana/z_obj_hana.c | 7 +- .../actors/ovl_player_actor/z_player.c | 486 +++++++++--------- .../docs/zapd_extraction_xml_reference.md | 4 +- undefined_syms.txt | 278 ++-------- 72 files changed, 1499 insertions(+), 1128 deletions(-) create mode 100644 assets/xml/objects/gameplay_field_keep.xml create mode 100644 assets/xml/objects/object_box.xml create mode 100644 assets/xml/objects/object_ec.xml create mode 100644 assets/xml/objects/object_gr.xml create mode 100644 assets/xml/objects/object_jya_obj.xml create mode 100644 assets/xml/objects/object_link_child.xml create mode 100644 assets/xml/objects/object_mb.xml create mode 100644 assets/xml/objects/object_mori_objects.xml create mode 100644 assets/xml/objects/object_sd.xml diff --git a/asm/non_matchings/code/z_kankyo/func_80076934.s b/asm/non_matchings/code/z_kankyo/func_80076934.s index 79dbe67f43..16f522e35e 100644 --- a/asm/non_matchings/code/z_kankyo/func_80076934.s +++ b/asm/non_matchings/code/z_kankyo/func_80076934.s @@ -712,8 +712,8 @@ glabel func_80076934 /* AEE4D0 80077330 AC400004 */ sw $zero, 4($v0) /* AEE4D4 80077334 AC590000 */ sw $t9, ($v0) /* AEE4D8 80077338 8C6202D0 */ lw $v0, 0x2d0($v1) -/* AEE4DC 8007733C 3C0E0501 */ lui $t6, %hi(D_0500CA70) # $t6, 0x501 -/* AEE4E0 80077340 25CECA70 */ addiu $t6, %lo(D_0500CA70) # addiu $t6, $t6, -0x3590 +/* AEE4DC 8007733C 3C0E0501 */ lui $t6, %hi(gFieldDL_00CA70) # $t6, 0x501 +/* AEE4E0 80077340 25CECA70 */ addiu $t6, %lo(gFieldDL_00CA70) # addiu $t6, $t6, -0x3590 /* AEE4E4 80077344 244F0008 */ addiu $t7, $v0, 8 /* AEE4E8 80077348 AC6F02D0 */ sw $t7, 0x2d0($v1) /* AEE4EC 8007734C 3C18DE00 */ lui $t8, 0xde00 diff --git a/assets/xml/objects/gameplay_field_keep.xml b/assets/xml/objects/gameplay_field_keep.xml new file mode 100644 index 0000000000..da33f58719 --- /dev/null +++ b/assets/xml/objects/gameplay_field_keep.xml @@ -0,0 +1,60 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_box.xml b/assets/xml/objects/object_box.xml new file mode 100644 index 0000000000..c77f635ae1 --- /dev/null +++ b/assets/xml/objects/object_box.xml @@ -0,0 +1,29 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_ec.xml b/assets/xml/objects/object_ec.xml new file mode 100644 index 0000000000..7ec83e284d --- /dev/null +++ b/assets/xml/objects/object_ec.xml @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_gr.xml b/assets/xml/objects/object_gr.xml new file mode 100644 index 0000000000..77bd0955c7 --- /dev/null +++ b/assets/xml/objects/object_gr.xml @@ -0,0 +1,16 @@ + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_jya_obj.xml b/assets/xml/objects/object_jya_obj.xml new file mode 100644 index 0000000000..fa1e8f2b93 --- /dev/null +++ b/assets/xml/objects/object_jya_obj.xml @@ -0,0 +1,79 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_link_child.xml b/assets/xml/objects/object_link_child.xml new file mode 100644 index 0000000000..4c37ebe07c --- /dev/null +++ b/assets/xml/objects/object_link_child.xml @@ -0,0 +1,225 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_mb.xml b/assets/xml/objects/object_mb.xml new file mode 100644 index 0000000000..a321bfb977 --- /dev/null +++ b/assets/xml/objects/object_mb.xml @@ -0,0 +1,59 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_mori_objects.xml b/assets/xml/objects/object_mori_objects.xml new file mode 100644 index 0000000000..cb0f768c1a --- /dev/null +++ b/assets/xml/objects/object_mori_objects.xml @@ -0,0 +1,24 @@ + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_ny.xml b/assets/xml/objects/object_ny.xml index c530591960..cec28d9577 100644 --- a/assets/xml/objects/object_ny.xml +++ b/assets/xml/objects/object_ny.xml @@ -3,8 +3,8 @@ - - - + + + diff --git a/assets/xml/objects/object_sd.xml b/assets/xml/objects/object_sd.xml new file mode 100644 index 0000000000..9d5b6d8f24 --- /dev/null +++ b/assets/xml/objects/object_sd.xml @@ -0,0 +1,70 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/assets/xml/objects/object_ydan_objects.xml b/assets/xml/objects/object_ydan_objects.xml index b17915747e..d7d0e5634c 100644 --- a/assets/xml/objects/object_ydan_objects.xml +++ b/assets/xml/objects/object_ydan_objects.xml @@ -1,5 +1,20 @@ + + + + + + + + + + + + + + + diff --git a/include/variables.h b/include/variables.h index 394ead111b..4bdafa8713 100644 --- a/include/variables.h +++ b/include/variables.h @@ -26,9 +26,6 @@ extern u8 D_02003940[]; extern u8 D_02003AC0[]; extern u32 D_0300AA48; extern u32 D_03012B20; -//extern ? D_0500CA70; -extern Gfx D_06006CC0[]; -extern Gfx D_06016118[]; extern Gfx D_06025218[]; extern Gfx D_060252D8[]; extern Gfx D_06025438[]; diff --git a/spec b/spec index 8715fd6cfa..c5e0ff574b 100644 --- a/spec +++ b/spec @@ -3453,7 +3453,8 @@ endseg beginseg name "gameplay_field_keep" romalign 0x1000 - include "build/baserom/gameplay_field_keep.o" + include "build/assets/objects/gameplay_field_keep/gameplay_field_keep.o" + number 5 endseg beginseg @@ -3478,13 +3479,15 @@ endseg beginseg name "object_link_child" romalign 0x1000 - include "build/baserom/object_link_child.o" + include "build/assets/objects/object_link_child/object_link_child.o" + number 6 endseg beginseg name "object_box" romalign 0x1000 - include "build/baserom/object_box.o" + include "build/assets/objects/object_box/object_box.o" + number 6 endseg beginseg @@ -3732,7 +3735,8 @@ endseg beginseg name "object_mb" romalign 0x1000 - include "build/baserom/object_mb.o" + include "build/assets/objects/object_mb/object_mb.o" + number 6 endseg beginseg @@ -4164,7 +4168,8 @@ endseg beginseg name "object_mori_objects" romalign 0x1000 - include "build/baserom/object_mori_objects.o" + include "build/assets/objects/object_mori_objects/object_mori_objects.o" + number 6 endseg beginseg @@ -4353,7 +4358,8 @@ endseg beginseg name "object_sd" romalign 0x1000 - include "build/baserom/object_sd.o" + include "build/assets/objects/object_sd/object_sd.o" + number 6 endseg beginseg @@ -4948,7 +4954,8 @@ endseg beginseg name "object_jya_obj" romalign 0x1000 - include "build/baserom/object_jya_obj.o" + include "build/assets/objects/object_jya_obj/object_jya_obj.o" + number 6 endseg beginseg @@ -5633,7 +5640,8 @@ endseg beginseg name "object_ec" romalign 0x1000 - include "build/baserom/object_ec.o" + include "build/assets/objects/object_ec/object_ec.o" + number 6 endseg beginseg @@ -5741,7 +5749,8 @@ endseg beginseg name "object_gr" romalign 0x1000 - include "build/baserom/object_gr.o" + include "build/assets/objects/object_gr/object_gr.o" + number 6 endseg beginseg diff --git a/src/code/z_kankyo.c b/src/code/z_kankyo.c index baab19ec77..61e9b2f78c 100644 --- a/src/code/z_kankyo.c +++ b/src/code/z_kankyo.c @@ -1,4 +1,5 @@ #include "global.h" +#include "objects/gameplay_field_keep/gameplay_field_keep.h" #pragma GLOBAL_ASM("asm/non_matchings/code/z_kankyo/func_8006F0A0.s") diff --git a/src/code/z_player_lib.c b/src/code/z_player_lib.c index 2c4ff37e85..9090729ae1 100644 --- a/src/code/z_player_lib.c +++ b/src/code/z_player_lib.c @@ -1,5 +1,6 @@ #include "global.h" #include "objects/gameplay_keep/gameplay_keep.h" +#include "objects/object_link_child/object_link_child.h" typedef struct { /* 0x00 */ u8 flag; @@ -11,7 +12,7 @@ typedef struct { /* 0x04 */ Vec3f pos; } BowStringData; // size = 0x10 -FlexSkeletonHeader* gPlayerSkelHeaders[] = { 0x060377F4, 0x0602CF6C }; +FlexSkeletonHeader* gPlayerSkelHeaders[] = { 0x060377F4, &gLinkChildSkel }; s16 sBootData[PLAYER_BOOTS_MAX][17] = { { 200, 1000, 300, 700, 550, 270, 600, 350, 800, 600, -100, 600, 590, 750, 125, 200, 130 }, @@ -44,146 +45,164 @@ u8 gPlayerModelTypes[][5] = { }; Gfx* D_80125CE8[] = { - 0x060226E0, 0x06014320, 0x06027690, 0x06016620, 0x060226E0, 0x06014440, 0x06027690, 0x06016740, - 0x06022970, 0x06014320, 0x06027918, 0x06016620, 0x060241C0, 0x06014320, 0x06028B40, 0x06016620, + 0x060226E0, gLinkChildRightHandClosedNearDL, 0x06027690, gLinkChildRightHandClosedFarDL, + 0x060226E0, gLinkChildRightFistAndDekuShieldNearDL, 0x06027690, gLinkChildRightFistAndDekuShieldFarDL, + 0x06022970, gLinkChildRightHandClosedNearDL, 0x06027918, gLinkChildRightHandClosedFarDL, + 0x060241C0, gLinkChildRightHandClosedNearDL, 0x06028B40, gLinkChildRightHandClosedFarDL, }; Gfx* D_80125D28[] = { - 0x06023160, 0x06015248, 0x06027F00, 0x06017360, 0x06023160, 0x06014D68, 0x06027F00, 0x06016EE8, - 0x06020A78, 0x060148A8, 0x06025FB8, 0x06016A98, 0x060211B8, 0x06015248, 0x060264F0, 0x06017360, + 0x06023160, gLinkChildSwordAndSheathNearDL, + 0x06027F00, gLinkChildSwordAndSheathFarDL, + 0x06023160, gLinkChildDekuShieldSwordAndSheathNearDL, + 0x06027F00, gLinkChildDekuShieldSwordAndSheathFarDL, + 0x06020A78, gLinkChildHylianShieldSwordAndSheathNearDL, + 0x06025FB8, gLinkChildHylianShieldSwordAndSheathFarDL, + 0x060211B8, gLinkChildSwordAndSheathNearDL, + 0x060264F0, gLinkChildSwordAndSheathFarDL, }; Gfx* D_80125D68[] = { - NULL, NULL, NULL, NULL, NULL, 0x06022688, NULL, 0x06022688, + NULL, NULL, NULL, NULL, NULL, gLinkChildDekuShieldWithMatrixDL, NULL, gLinkChildDekuShieldWithMatrixDL, }; Gfx* D_80125D88[] = { - 0x060249D8, 0x06015408, 0x06028150, 0x06017500, 0x060249D8, 0x06015010, 0x06028150, 0x06017150, - 0x06020E70, 0x06014B40, 0x060262B8, 0x06016CF8, 0x060216B0, 0x06015408, 0x06026910, 0x06017500, - NULL, NULL, NULL, NULL, 0x060249D8, 0x06022688, 0x060249D8, 0x06022688, + 0x060249D8, gLinkChildSheathNearDL, + 0x06028150, gLinkChildSheathFarDL, + 0x060249D8, gLinkChildDekuShieldAndSheathNearDL, + 0x06028150, gLinkChildDekuShieldAndSheathFarDL, + 0x06020E70, gLinkChildHylianShieldAndSheathNearDL, + 0x060262B8, gLinkChildHylianShieldAndSheathFarDL, + 0x060216B0, gLinkChildSheathNearDL, + 0x06026910, gLinkChildSheathFarDL, + NULL, NULL, + NULL, NULL, + 0x060249D8, gLinkChildDekuShieldWithMatrixDL, + 0x060249D8, gLinkChildDekuShieldWithMatrixDL, }; Gfx* D_80125DE8[] = { - 0x060238C8, 0x06015540, 0x060286B8, 0x06015540, 0x06023D50, 0x06015540, 0x060291E8, 0x06015540, + 0x060238C8, gLinkChildLeftHandHoldingMasterSwordDL, 0x060286B8, gLinkChildLeftHandHoldingMasterSwordDL, + 0x06023D50, gLinkChildLeftHandHoldingMasterSwordDL, 0x060291E8, gLinkChildLeftHandHoldingMasterSwordDL, }; Gfx* D_80125E08[] = { 0x06021AA8, - 0x06013CB0, + gLinkChildLeftHandNearDL, 0x06026C58, - 0x06016280, + gLinkChildLeftHandFarDL, }; Gfx* D_80125E18[] = { 0x06021CE8, - 0x06013E18, + gLinkChildLeftFistNearDL, 0x06026DF0, - 0x060163C0, + gLinkChildLeftFistFarDL, }; Gfx* D_80125E28[] = { 0x06021F78, - 0x06013F38, + gLinkChildLeftFistAndKokiriSwordNearDL, 0x06027078, - 0x06017630, + gLinkChildLeftFistAndKokiriSwordFarDL, }; Gfx* D_80125E38[] = { 0x06021F78, - 0x06013F38, + gLinkChildLeftFistAndKokiriSwordNearDL, 0x06027078, - 0x06017630, + gLinkChildLeftFistAndKokiriSwordFarDL, }; Gfx* D_80125E48[] = { 0x06022498, - 0x060141C0, + gLinkChildRightHandNearDL, 0x060274F8, - 0x060164E0, + gLinkChildRightHandFarDL, }; Gfx* D_80125E58[] = { 0x060226E0, - 0x06014320, + gLinkChildRightHandClosedNearDL, 0x06027690, - 0x06016620, + gLinkChildRightHandClosedFarDL, }; Gfx* D_80125E68[] = { 0x06022DA8, - 0x06015DF0, + gLinkChildRightHandHoldingFairySlingshotNearDL, 0x06027B88, - 0x06017D38, + gLinkChildRightHandHoldingFairySlingshotFarDL, }; Gfx* D_80125E78[] = { 0x06023160, - 0x06015248, + gLinkChildSwordAndSheathNearDL, 0x06027F00, - 0x06017360, + gLinkChildSwordAndSheathFarDL, }; Gfx* D_80125E88[] = { 0x060249D8, - 0x06015408, + gLinkChildSheathNearDL, 0x06028150, - 0x06017500, + gLinkChildSheathFarDL, }; Gfx* D_80125E98[] = { 0x06035330, - 0x060202A8, + gLinkChildWaistNearDL, 0x0602F530, - 0x0601AEC8, + gLinkChildWaistFarDL, }; Gfx* D_80125EA8[] = { 0x06022DA8, - 0x06015DF0, + gLinkChildRightHandHoldingFairySlingshotNearDL, 0x06027B88, - 0x06017D38, + gLinkChildRightHandHoldingFairySlingshotFarDL, }; Gfx* D_80125EB8[] = { 0x06024698, - 0x06015BA8, + gLinkChildRightHandHoldingFairyOcarinaNearDL, 0x06028F58, - 0x06017AF0, + gLinkChildRightHandHoldingFairyOcarinaFarDL, }; Gfx* D_80125EC8[] = { 0x06024698, - 0x06015958, + gLinkChildRightHandAndOOTNearDL, 0x06028F58, - 0x060178A0, + gLinkChildRightHandHoldingOOTFarDL, }; Gfx* D_80125ED8[] = { 0x06024D70, - 0x060141C0, + gLinkChildRightHandNearDL, 0x06024D70, - 0x060164E0, + gLinkChildRightHandFarDL, }; Gfx* D_80125EE8[] = { 0x060233E0, - 0x06013CB0, + gLinkChildLeftHandNearDL, 0x06028288, - 0x06016280, + gLinkChildLeftHandFarDL, }; Gfx* D_80125EF8[] = { 0x06021AA8, - 0x06014660, + gLinkChildLeftFistAndBoomerangNearDL, 0x06026C58, - 0x06016908, + gLinkChildLeftFistAndBoomerangFarDL, }; Gfx* D_80125F08[] = { 0x06024B58, - 0x06015FD0, + gLinkChildLeftHandUpNearDL, 0x06024B58, - 0x06015FD0, + gLinkChildLeftHandUpNearDL, }; Gfx* D_80125F18[] = { @@ -198,7 +217,7 @@ Gfx* D_80125F20[] = { Gfx* D_80125F28[] = { 0x06036E58, - 0x06021AE8, + gLinkChildLeftShoulderNearDL, }; Gfx* D_80125F30[] = { @@ -208,7 +227,7 @@ Gfx* D_80125F30[] = { Gfx* D_80125F38[] = { 0x0602A248, - 0x06018048, + gLinkChildRightArmStretchedSlingshotDL, }; // Indexed by model types (left hand, right hand, sheath or waist) @@ -599,11 +618,17 @@ u8 sEyeMouthIndexes[][2] = { { 7, 2 }, { 0, 2 }, { 3, 0 }, { 4, 0 }, { 2, 2 }, { 1, 1 }, { 0, 2 }, { 0, 0 }, }; -u8* sEyeTextures[] = { +/** + * Link's eye and mouth textures are placed at the exact same place in adult and child Link's respective object files. + * This allows the array to only contain the symbols for one file and have it apply to both. This is a problem for + * shiftability, and changes will need to be made in the code to account for this in a modding scenario. The symbols + * from adult Link's object are used here. + */ +void* sEyeTextures[] = { 0x06000000, 0x06000800, 0x06001000, 0x06001800, 0x06002000, 0x06002800, 0x06003000, 0x06003800, }; -u8* sMouthTextures[] = { +void* sMouthTextures[] = { 0x06004000, 0x06004400, 0x06004800, @@ -677,7 +702,7 @@ void func_8008F470(GlobalContext* globalCtx, void** skeleton, Vec3s* jointTable, } } else { if (Player_GetStrength() > PLAYER_STR_NONE) { - gSPDisplayList(POLY_OPA_DISP++, D_06016118); + gSPDisplayList(POLY_OPA_DISP++, gLinkChildGoronBraceletDL); } } } @@ -1112,7 +1137,7 @@ f32 sSwordLengths[] = { 0.0f, 4000.0f, 3000.0f, 5500.0f, 0.0f, 2500.0f, }; -Gfx* sBottleDLists[] = { 0x0602AD58, 0x06018478 }; +Gfx* sBottleDLists[] = { 0x0602AD58, gLinkChildBottleDL }; Color_RGB8 sBottleColors[] = { { 255, 255, 255 }, { 80, 80, 255 }, { 255, 100, 255 }, { 0, 0, 255 }, { 255, 0, 255 }, @@ -1186,7 +1211,7 @@ void func_80090D20(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3s* gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_player_lib.c", 2653), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); - gSPDisplayList(POLY_OPA_DISP++, D_06006CC0); + gSPDisplayList(POLY_OPA_DISP++, gLinkChildLinkDekuStickDL); CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_player_lib.c", 2656); } else if ((this->actor.scale.y >= 0.0f) && (this->swordState != 0)) { diff --git a/src/overlays/actors/ovl_Bg_Bombwall/z_bg_bombwall.c b/src/overlays/actors/ovl_Bg_Bombwall/z_bg_bombwall.c index e38cf2ef3f..00f8ccae6f 100644 --- a/src/overlays/actors/ovl_Bg_Bombwall/z_bg_bombwall.c +++ b/src/overlays/actors/ovl_Bg_Bombwall/z_bg_bombwall.c @@ -5,6 +5,7 @@ */ #include "z_bg_bombwall.h" +#include "objects/gameplay_field_keep/gameplay_field_keep.h" #define FLAGS 0x00400000 @@ -21,10 +22,6 @@ void func_8086EDFC(BgBombwall* this, GlobalContext* globalCtx); void func_8086EE40(BgBombwall* this, GlobalContext* globalCtx); void func_8086EE94(BgBombwall* this, GlobalContext* globalCtx); -extern CollisionHeader D_050041B0; -extern Gfx D_05003FC0[]; -extern Gfx D_05004088[]; - static ColliderTrisElementInit sTrisElementsInit[3] = { { { @@ -92,7 +89,7 @@ void BgBombwall_InitDynapoly(BgBombwall* this, GlobalContext* globalCtx) { CollisionHeader* colHeader = NULL; DynaPolyActor_Init(&this->dyna, DPM_UNK); - CollisionHeader_GetVirtual(&D_050041B0, &colHeader); + CollisionHeader_GetVirtual(&gBgBombwallCol, &colHeader); this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader); if (this->dyna.bgId == BG_ACTOR_MAX) { @@ -176,7 +173,7 @@ void BgBombwall_Destroy(Actor* thisx, GlobalContext* globalCtx) { BgBombwall_DestroyCollision(this, globalCtx); } -Vec3s D_8086F010[] = { +static Vec3s D_8086F010[] = { { 40, 85, 21 }, { -43, 107, 14 }, { -1, 142, 14 }, { -27, 44, 27 }, { 28, 24, 20 }, { -39, 54, 21 }, { 49, 50, 20 }, }; @@ -210,7 +207,7 @@ void func_8086EB5C(BgBombwall* this, GlobalContext* globalCtx) { } void func_8086ED50(BgBombwall* this, GlobalContext* globalCtx) { - this->dList = D_05003FC0; + this->dList = gBgBombwallNormalDL; this->actionFunc = func_8086ED70; } @@ -225,7 +222,7 @@ void func_8086ED70(BgBombwall* this, GlobalContext* globalCtx) { } void func_8086EDFC(BgBombwall* this, GlobalContext* globalCtx) { - this->dList = D_05003FC0; + this->dList = gBgBombwallNormalDL; this->unk_2A0 = 1; func_8086EB5C(this, globalCtx); this->actionFunc = func_8086EE40; @@ -244,7 +241,7 @@ void func_8086EE40(BgBombwall* this, GlobalContext* globalCtx) { } void func_8086EE94(BgBombwall* this, GlobalContext* globalCtx) { - this->dList = D_05004088; + this->dList = gBgBombwallBrokenDL; BgBombwall_DestroyCollision(this, globalCtx); this->actionFunc = NULL; } diff --git a/src/overlays/actors/ovl_Bg_Jya_1flift/z_bg_jya_1flift.c b/src/overlays/actors/ovl_Bg_Jya_1flift/z_bg_jya_1flift.c index f68dc3cd7d..b9d172655c 100644 --- a/src/overlays/actors/ovl_Bg_Jya_1flift/z_bg_jya_1flift.c +++ b/src/overlays/actors/ovl_Bg_Jya_1flift/z_bg_jya_1flift.c @@ -5,6 +5,7 @@ */ #include "z_bg_jya_1flift.h" +#include "objects/object_jya_obj/object_jya_obj.h" #define FLAGS 0x00000010 @@ -15,12 +16,12 @@ void BgJya1flift_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgJya1flift_Update(Actor* thisx, GlobalContext* globalCtx); void BgJya1flift_Draw(Actor* thisx, GlobalContext* globalCtx); -void func_80892DB0(BgJya1flift* this); -void func_80892DCC(BgJya1flift* this, GlobalContext* globalCtx); +void BgJya1flift_SetupWaitForSwitch(BgJya1flift* this); +void BgJya1flift_WaitForSwitch(BgJya1flift* this, GlobalContext* globalCtx); void BgJya1flift_DoNothing(BgJya1flift* this, GlobalContext* globalCtx); void BgJya1flift_ChangeDirection(BgJya1flift* this); void BgJya1flift_Move(BgJya1flift* this, GlobalContext* globalCtx); -void func_80892E0C(BgJya1flift* this); +void BgJya1flift_SetupDoNothing(BgJya1flift* this); void BgJya1flift_ResetMoveDelay(BgJya1flift* this); void BgJya1flift_DelayMove(BgJya1flift* this, GlobalContext* globalCtx); @@ -67,10 +68,8 @@ static InitChainEntry sInitChain[] = { ICHAIN_F32(uncullZoneDownward, 1200, ICHAIN_STOP), }; -extern CollisionHeader D_060004A8; -extern Gfx D_060001F0[]; - -void BgJya1flift_InitDynapoly(BgJya1flift* this, GlobalContext* globalCtx, CollisionHeader* collision, s32 moveFlag) { +void BgJya1flift_InitDynapoly(BgJya1flift* this, GlobalContext* globalCtx, CollisionHeader* collision, + DynaPolyMoveFlag moveFlag) { s32 pad; CollisionHeader* colHeader = NULL; s32 pad2; @@ -103,13 +102,13 @@ void BgJya1flift_Init(Actor* thisx, GlobalContext* globalCtx) { Actor_Kill(thisx); return; } - BgJya1flift_InitDynapoly(this, globalCtx, &D_060004A8, DPM_UNK); + BgJya1flift_InitDynapoly(this, globalCtx, &g1fliftCol, 0); Actor_ProcessInitChain(thisx, sInitChain); BgJya1flift_InitCollision(thisx, globalCtx); if (Flags_GetSwitch(globalCtx, (thisx->params & 0x3F))) { - LINK_AGE_IN_YEARS == YEARS_ADULT ? BgJya1flift_ChangeDirection(this) : func_80892E0C(this); + LINK_AGE_IN_YEARS == YEARS_ADULT ? BgJya1flift_ChangeDirection(this) : BgJya1flift_SetupDoNothing(this); } else { - func_80892DB0(this); + BgJya1flift_SetupWaitForSwitch(this); } thisx->room = -1; sIsSpawned = true; @@ -126,18 +125,18 @@ void BgJya1flift_Destroy(Actor* thisx, GlobalContext* globalCtx) { } } -void func_80892DB0(BgJya1flift* this) { - this->actionFunc = func_80892DCC; +void BgJya1flift_SetupWaitForSwitch(BgJya1flift* this) { + this->actionFunc = BgJya1flift_WaitForSwitch; this->dyna.actor.world.pos.y = sFinalPositions[0]; } -void func_80892DCC(BgJya1flift* this, GlobalContext* globalCtx) { +void BgJya1flift_WaitForSwitch(BgJya1flift* this, GlobalContext* globalCtx) { if (Flags_GetSwitch(globalCtx, (this->dyna.actor.params & 0x3F))) { BgJya1flift_ChangeDirection(this); } } -void func_80892E0C(BgJya1flift* this) { +void BgJya1flift_SetupDoNothing(BgJya1flift* this) { this->actionFunc = BgJya1flift_DoNothing; this->dyna.actor.world.pos.y = sFinalPositions[0]; } @@ -208,5 +207,5 @@ void BgJya1flift_Update(Actor* thisx, GlobalContext* globalCtx) { } void BgJya1flift_Draw(Actor* thisx, GlobalContext* globalCtx) { - Gfx_DrawDListOpa(globalCtx, D_060001F0); + Gfx_DrawDListOpa(globalCtx, g1fliftDL); } diff --git a/src/overlays/actors/ovl_Bg_Jya_Amishutter/z_bg_jya_amishutter.c b/src/overlays/actors/ovl_Bg_Jya_Amishutter/z_bg_jya_amishutter.c index b4b8164be5..b3b34cefb3 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Amishutter/z_bg_jya_amishutter.c +++ b/src/overlays/actors/ovl_Bg_Jya_Amishutter/z_bg_jya_amishutter.c @@ -5,6 +5,7 @@ */ #include "z_bg_jya_amishutter.h" +#include "objects/object_jya_obj/object_jya_obj.h" #define FLAGS 0x00000000 @@ -15,8 +16,8 @@ void BgJyaAmishutter_Destroy(Actor* thisx, GlobalContext* globalCtx); void BgJyaAmishutter_Update(Actor* thisx, GlobalContext* globalCtx); void BgJyaAmishutter_Draw(Actor* thisx, GlobalContext* globalCtx); -void func_808933BC(BgJyaAmishutter* this); -void func_808933CC(BgJyaAmishutter* this); +void BgJyaAmishutter_SetupWaitForPlayer(BgJyaAmishutter* this); +void BgJyaAmishutter_WaitForPlayer(BgJyaAmishutter* this); void func_80893428(BgJyaAmishutter* this); void func_80893438(BgJyaAmishutter* this); void func_808934B0(BgJyaAmishutter* this); @@ -43,13 +44,11 @@ static InitChainEntry sInitChain[] = { ICHAIN_F32(uncullZoneDownward, 1000, ICHAIN_STOP), }; -extern CollisionHeader D_0600C4C8; -extern Gfx D_0600C0A0[]; - -void func_808932C0(BgJyaAmishutter* this, GlobalContext* globalCtx, CollisionHeader* collision, DynaPolyMoveFlag flag) { - s16 pad1; +void BgJyaAmishutter_InitDynaPoly(BgJyaAmishutter* this, GlobalContext* globalCtx, CollisionHeader* collision, + DynaPolyMoveFlag flag) { + s32 pad1; CollisionHeader* colHeader = NULL; - s16 pad2; + s32 pad2; DynaPolyActor_Init(&this->dyna, flag); CollisionHeader_GetVirtual(collision, &colHeader); @@ -63,9 +62,9 @@ void func_808932C0(BgJyaAmishutter* this, GlobalContext* globalCtx, CollisionHea void BgJyaAmishutter_Init(Actor* thisx, GlobalContext* globalCtx) { BgJyaAmishutter* this = THIS; - func_808932C0(this, globalCtx, &D_0600C4C8, DPM_UNK); + BgJyaAmishutter_InitDynaPoly(this, globalCtx, &gAmishutterCol, DPM_UNK); Actor_ProcessInitChain(&this->dyna.actor, sInitChain); - func_808933BC(this); + BgJyaAmishutter_SetupWaitForPlayer(this); } void BgJyaAmishutter_Destroy(Actor* thisx, GlobalContext* globalCtx) { @@ -74,15 +73,13 @@ void BgJyaAmishutter_Destroy(Actor* thisx, GlobalContext* globalCtx) { DynaPoly_DeleteBgActor(globalCtx, &globalCtx->colCtx.dyna, this->dyna.bgId); } -void func_808933BC(BgJyaAmishutter* this) { - this->actionFunc = func_808933CC; +void BgJyaAmishutter_SetupWaitForPlayer(BgJyaAmishutter* this) { + this->actionFunc = BgJyaAmishutter_WaitForPlayer; } -void func_808933CC(BgJyaAmishutter* this) { - if (this->dyna.actor.xzDistToPlayer < 60.0f) { - if (fabsf(this->dyna.actor.yDistToPlayer) < 30.0f) { - func_80893428(this); - } +void BgJyaAmishutter_WaitForPlayer(BgJyaAmishutter* this) { + if ((this->dyna.actor.xzDistToPlayer < 60.0f) && (fabsf(this->dyna.actor.yDistToPlayer) < 30.0f)) { + func_80893428(this); } } @@ -115,7 +112,7 @@ void func_808934FC(BgJyaAmishutter* this) { void func_8089350C(BgJyaAmishutter* this) { if (Math_StepToF(&this->dyna.actor.world.pos.y, this->dyna.actor.home.pos.y, 3.0f)) { - func_808933BC(this); + BgJyaAmishutter_SetupWaitForPlayer(this); Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_METALDOOR_STOP); } else { func_8002F974(&this->dyna.actor, NA_SE_EV_METALDOOR_SLIDE - SFX_FLAG); @@ -129,5 +126,5 @@ void BgJyaAmishutter_Update(Actor* thisx, GlobalContext* globalCtx) { } void BgJyaAmishutter_Draw(Actor* thisx, GlobalContext* globalCtx) { - Gfx_DrawDListOpa(globalCtx, D_0600C0A0); + Gfx_DrawDListOpa(globalCtx, gAmishutterDL); } diff --git a/src/overlays/actors/ovl_Bg_Jya_Bigmirror/z_bg_jya_bigmirror.c b/src/overlays/actors/ovl_Bg_Jya_Bigmirror/z_bg_jya_bigmirror.c index 5a632075bd..82a7f0a80f 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Bigmirror/z_bg_jya_bigmirror.c +++ b/src/overlays/actors/ovl_Bg_Jya_Bigmirror/z_bg_jya_bigmirror.c @@ -5,6 +5,7 @@ */ #include "z_bg_jya_bigmirror.h" +#include "objects/object_jya_obj/object_jya_obj.h" #define FLAGS 0x00000030 @@ -41,11 +42,6 @@ static BigMirrorDataEntry sCobraSpawnData[] = { { { 60.0f, 1743.0f, -310.0f }, 0xFF02, 0x8000, 0xA000 }, }; -extern Gfx D_0600BC70[]; -extern Gfx D_0600BD80[]; -extern Gfx D_0600E1B0[]; -extern Gfx D_0600E2D0[]; - void BgJyaBigmirror_SetRoomFlag(Actor* thisx, GlobalContext* globalCtx) { BgJyaBigmirror* this = THIS; @@ -68,11 +64,9 @@ void BgJyaBigmirror_HandleCobra(Actor* thisx, GlobalContext* globalCtx) { s32 i; if (this->puzzleFlags & (BIGMIR_PUZZLE_IN_1ST_TOP_ROOM | BIGMIR_PUZZLE_IN_2ND_TOP_ROOM)) { - for (i = 0; i < 2; i++) { curSpawnData = &sCobraSpawnData[i]; curCobraInfo = &this->cobraInfo[i]; - if (curCobraInfo->cobra != NULL) { curCobraInfo->rotY = curCobraInfo->cobra->dyna.actor.shape.rot.y; @@ -197,7 +191,7 @@ void BgJyaBigmirror_Init(Actor* thisx, GlobalContext* globalCtx) { this->mirRayObjIndex = -1; // jya Bigmirror - osSyncPrintf("(jya 大鏡)(arg_data 0x%04x)\n", this->actor.params, this); + osSyncPrintf("(jya 大鏡)(arg_data 0x%04x)\n", this->actor.params); } void BgJyaBigmirror_Destroy(Actor* thisx, GlobalContext* globalCtx) { @@ -231,7 +225,7 @@ void BgJyaBigmirror_DrawLightBeam(Actor* thisx, GlobalContext* globalCtx) { Matrix_Scale(0.1f, (this->liftHeight * -(1.0f / 1280.0f)) + (1779.4f / 1280.0f), 0.1f, MTXMODE_APPLY); gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_jya_bigmirror.c", 457), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); - gSPDisplayList(POLY_XLU_DISP++, D_0600BC70); + gSPDisplayList(POLY_XLU_DISP++, gBigMirror1DL); if (lift != NULL) { if (1) {} @@ -239,7 +233,7 @@ void BgJyaBigmirror_DrawLightBeam(Actor* thisx, GlobalContext* globalCtx) { Matrix_Scale(0.1f, 0.1f, 0.1f, MTXMODE_APPLY); gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_jya_bigmirror.c", 467), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); - gSPDisplayList(POLY_XLU_DISP++, D_0600BD80); + gSPDisplayList(POLY_XLU_DISP++, gBigMirror2DL); } CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_jya_bigmirror.c", 476); @@ -249,8 +243,8 @@ void BgJyaBigmirror_Draw(Actor* thisx, GlobalContext* globalCtx) { BgJyaBigmirror* this = THIS; if (this->puzzleFlags & BIGMIR_PUZZLE_IN_1ST_TOP_ROOM) { - Gfx_DrawDListOpa(globalCtx, D_0600E1B0); - Gfx_DrawDListXlu(globalCtx, D_0600E2D0); + Gfx_DrawDListOpa(globalCtx, gBigMirror3DL); + Gfx_DrawDListXlu(globalCtx, gBigMirror4DL); } if ((this->puzzleFlags & diff --git a/src/overlays/actors/ovl_Bg_Jya_Bombchuiwa/z_bg_jya_bombchuiwa.c b/src/overlays/actors/ovl_Bg_Jya_Bombchuiwa/z_bg_jya_bombchuiwa.c index 2b474bdc9b..5b703bac86 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Bombchuiwa/z_bg_jya_bombchuiwa.c +++ b/src/overlays/actors/ovl_Bg_Jya_Bombchuiwa/z_bg_jya_bombchuiwa.c @@ -1,6 +1,6 @@ #include "z_bg_jya_bombchuiwa.h" #include "overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.h" - +#include "objects/object_jya_obj/object_jya_obj.h" #define FLAGS 0x00000001 #define THIS ((BgJyaBombchuiwa*)thisx) @@ -63,12 +63,6 @@ static InitChainEntry sInitChain[] = { ICHAIN_F32(uncullZoneDownward, 1000, ICHAIN_STOP), }; -extern Gfx D_0600EDC0[]; -extern Gfx D_0600E8D0[]; -extern Gfx D_060119B0[]; -extern Gfx D_0600DC40[]; -extern Gfx D_0600DB60[]; - void BgJyaBombchuiwa_SetupCollider(BgJyaBombchuiwa* this, GlobalContext* globalCtx) { s32 pad; @@ -137,7 +131,7 @@ void BgJyaBombchuiwa_Break(BgJyaBombchuiwa* this, GlobalContext* globalCtx) { } } EffectSsKakera_Spawn(globalCtx, &pos, &velocity, &pos, -300, arg5, arg6, arg7, 0, scale, 1, 15, 80, - KAKERA_COLOR_NONE, OBJECT_JYA_OBJ, D_0600EDC0); + KAKERA_COLOR_NONE, OBJECT_JYA_OBJ, gBombiwaEffectDL); } func_80033480(globalCtx, &this->actor.world.pos, 100.0f, 8, 100, 160, 0); } @@ -208,7 +202,7 @@ void BgJyaBombchuiwa_DrawRock(GlobalContext* globalCtx) { func_80093D84(globalCtx->state.gfxCtx); gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_jya_bombchuiwa.c", 439), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); - gSPDisplayList(POLY_XLU_DISP++, D_060119B0); + gSPDisplayList(POLY_XLU_DISP++, gBombchuiwa2DL); CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_jya_bombchuiwa.c", 443); } @@ -220,10 +214,10 @@ void BgJyaBombchuiwa_DrawLight(Actor* thisx, GlobalContext* globalCtx) { gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_jya_bombchuiwa.c", 457), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 255, 255, 255, CLAMP_MAX((u32)(this->lightRayIntensity * 153.0f), 153)); - gSPDisplayList(POLY_XLU_DISP++, D_0600DC40); + gSPDisplayList(POLY_XLU_DISP++, gBombchuiwaLight1DL); gDPPipeSync(POLY_XLU_DISP++); gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 255, 255, 255, CLAMP_MAX((u32)(this->lightRayIntensity * 255.0f), 255)); - gSPDisplayList(POLY_XLU_DISP++, D_0600DB60); + gSPDisplayList(POLY_XLU_DISP++, gBombchuiwaLight2DL); CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_jya_bombchuiwa.c", 472); } @@ -233,7 +227,7 @@ void BgJyaBombchuiwa_Draw(Actor* thisx, GlobalContext* globalCtx) { BgJyaBombchuiwa* this = THIS; if (this->drawFlags & 1) { - Gfx_DrawDListOpa(globalCtx, D_0600E8D0); + Gfx_DrawDListOpa(globalCtx, gBombchuiwaDL); Collider_UpdateSpheres(0, &this->collider); } diff --git a/src/overlays/actors/ovl_Bg_Jya_Bombiwa/z_bg_jya_bombiwa.c b/src/overlays/actors/ovl_Bg_Jya_Bombiwa/z_bg_jya_bombiwa.c index 42a2ef5b72..10e4606dc3 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Bombiwa/z_bg_jya_bombiwa.c +++ b/src/overlays/actors/ovl_Bg_Jya_Bombiwa/z_bg_jya_bombiwa.c @@ -6,6 +6,7 @@ #include "z_bg_jya_bombiwa.h" #include "overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.h" +#include "objects/object_jya_obj/object_jya_obj.h" #include "vt.h" #define FLAGS 0x00000000 @@ -42,6 +43,7 @@ static ColliderJntSphElementInit sJntSphElementsInit[] = { { 0, { { 0, 0, 0 }, 50 }, 100 }, }, }; + static ColliderJntSphInit sJntSphInit = { { COLTYPE_NONE, @@ -54,6 +56,7 @@ static ColliderJntSphInit sJntSphInit = { 1, sJntSphElementsInit, }; + static InitChainEntry sInitChain[] = { ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_CONTINUE), ICHAIN_F32(uncullZoneForward, 1000, ICHAIN_CONTINUE), @@ -61,17 +64,14 @@ static InitChainEntry sInitChain[] = { ICHAIN_F32(uncullZoneDownward, 1000, ICHAIN_STOP), }; -extern CollisionHeader D_0600E710; -extern Gfx D_0600E490[]; -extern Gfx D_0600EDC0[]; - -void BgJyaBombiwa_SetupDynaPoly(BgJyaBombiwa* this, GlobalContext* globalCtx, void* arg2, DynaPolyMoveFlag flag) { +void BgJyaBombiwa_SetupDynaPoly(BgJyaBombiwa* this, GlobalContext* globalCtx, CollisionHeader* collision, + DynaPolyMoveFlag flag) { s16 pad1; CollisionHeader* colHeader = NULL; s16 pad2; DynaPolyActor_Init(&this->dyna, flag); - CollisionHeader_GetVirtual(arg2, &colHeader); + CollisionHeader_GetVirtual(collision, &colHeader); this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader); if (this->dyna.bgId == BG_ACTOR_MAX) { @@ -99,7 +99,7 @@ void BgJyaBombiwa_Init(Actor* thisx, GlobalContext* globalCtx) { this->dyna.actor.params & 0x3F); osSyncPrintf(VT_RST); } - BgJyaBombiwa_SetupDynaPoly(this, globalCtx, &D_0600E710, DPM_UNK); + BgJyaBombiwa_SetupDynaPoly(this, globalCtx, &gBombiwaCol, DPM_UNK); BgJyaBombiwa_InitCollider(this, globalCtx); if (Flags_GetSwitch(globalCtx, this->dyna.actor.params & 0x3F)) { Actor_Kill(&this->dyna.actor); @@ -154,7 +154,7 @@ void BgJyaBombiwa_Break(BgJyaBombiwa* this, GlobalContext* globalCtx) { } } EffectSsKakera_Spawn(globalCtx, &pos, &velocity, &pos, -400, arg5, arg6, arg7, 0, scale, 1, 20, 80, - KAKERA_COLOR_NONE, OBJECT_JYA_OBJ, D_0600EDC0); + KAKERA_COLOR_NONE, OBJECT_JYA_OBJ, gBombiwaEffectDL); } pos.x = this->dyna.actor.world.pos.x; pos.y = this->dyna.actor.world.pos.y + 70.0f; @@ -178,6 +178,6 @@ void BgJyaBombiwa_Update(Actor* thisx, GlobalContext* globalCtx) { void BgJyaBombiwa_Draw(Actor* thisx, GlobalContext* globalCtx) { BgJyaBombiwa* this = THIS; - Gfx_DrawDListOpa(globalCtx, D_0600E490); + Gfx_DrawDListOpa(globalCtx, gBombiwaDL); Collider_UpdateSpheres(0, &this->collider); } diff --git a/src/overlays/actors/ovl_Bg_Jya_Cobra/z_bg_jya_cobra.c b/src/overlays/actors/ovl_Bg_Jya_Cobra/z_bg_jya_cobra.c index ea127dd099..5f0f4dcbb4 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Cobra/z_bg_jya_cobra.c +++ b/src/overlays/actors/ovl_Bg_Jya_Cobra/z_bg_jya_cobra.c @@ -1,6 +1,7 @@ #include "z_bg_jya_cobra.h" #include "overlays/actors/ovl_Bg_Jya_Bigmirror/z_bg_jya_bigmirror.h" #include "overlays/actors/ovl_Mir_Ray/z_mir_ray.h" +#include "objects/object_jya_obj/object_jya_obj.h" #include "vt.h" #define FLAGS 0x00000010 @@ -17,11 +18,6 @@ void func_80896950(BgJyaCobra* this, GlobalContext* globalCtx); void func_808969F8(BgJyaCobra* this, GlobalContext* globalCtx); void func_80896ABC(BgJyaCobra* this, GlobalContext* globalCtx); -extern Gfx D_06010790[]; -extern Gfx D_06010C20[]; -extern UNK_TYPE D_0601167C; -extern Gfx D_060117D0[]; - static Vtx sShadowVtx[4] = { VTX(-800, 0, -800, 0, 2048, 255, 255, 255, 255), VTX(800, 0, -800, 2048, 2048, 255, 255, 255, 255), @@ -136,13 +132,14 @@ void func_808958F0(Vec3f* dest, Vec3f* src, f32 arg2, f32 arg3) { dest->z = (src->z * arg3) - (src->x * arg2); } -void BgJyaCobra_InitDynapoly(BgJyaCobra* this, GlobalContext* globalCtx, void* arg2, DynaPolyMoveFlag flags) { +void BgJyaCobra_InitDynapoly(BgJyaCobra* this, GlobalContext* globalCtx, CollisionHeader* collision, + DynaPolyMoveFlag flags) { s32 pad; CollisionHeader* colHeader = NULL; s32 pad2; DynaPolyActor_Init(&this->dyna, flags); - CollisionHeader_GetVirtual(arg2, &colHeader); + CollisionHeader_GetVirtual(collision, &colHeader); this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader); if (this->dyna.bgId == BG_ACTOR_MAX) { // Warning : move BG Registration Failure @@ -156,7 +153,7 @@ void BgJyaCobra_SpawnRay(BgJyaCobra* this, GlobalContext* globalCtx) { this->dyna.actor.world.pos.y + 57.0f, this->dyna.actor.world.pos.z, 0, 0, 0, 6); if (this->dyna.actor.child == NULL) { osSyncPrintf(VT_FGCOL(RED)); - // Error : Mir Ray occurrence failure + // Error : Mir Ray occurrence failure osSyncPrintf("Error : Mir Ray 発生失敗 (%s %d)\n", "../z_bg_jya_cobra.c", 270); osSyncPrintf(VT_RST); } @@ -421,7 +418,7 @@ void BgJyaCobra_UpdateShadowFromTop(BgJyaCobra* this) { void BgJyaCobra_Init(Actor* thisx, GlobalContext* globalCtx) { BgJyaCobra* this = THIS; - BgJyaCobra_InitDynapoly(this, globalCtx, &D_0601167C, DPM_UNK); + BgJyaCobra_InitDynapoly(this, globalCtx, &gCobraCol, DPM_UNK); Actor_ProcessInitChain(&this->dyna.actor, sInitChain); if (!(this->dyna.actor.params & 3) && Flags_GetSwitch(globalCtx, ((s32)this->dyna.actor.params >> 8) & 0x3F)) { this->dyna.actor.world.rot.y = this->dyna.actor.home.rot.y = this->dyna.actor.shape.rot.y = 0; @@ -554,7 +551,7 @@ void func_80896CB4(GlobalContext* globalCtx) { func_80093D84(globalCtx->state.gfxCtx); gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_jya_cobra.c", 867), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); - gSPDisplayList(POLY_XLU_DISP++, D_06010C20); + gSPDisplayList(POLY_XLU_DISP++, gCobra2DL); CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_jya_cobra.c", 872); } @@ -575,7 +572,7 @@ void func_80896D78(BgJyaCobra* this, GlobalContext* globalCtx) { gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_jya_cobra.c", 939), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 255, 255, 255, (s32)(this->unk_18C * 140.0f)); - gSPDisplayList(POLY_XLU_DISP++, D_060117D0); + gSPDisplayList(POLY_XLU_DISP++, gCobra3DL); CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_jya_cobra.c", 947); } @@ -629,7 +626,7 @@ void BgJyaCobra_Draw(Actor* thisx, GlobalContext* globalCtx) { BgJyaCobra* this = THIS; func_80896CB4(globalCtx); - Gfx_DrawDListOpa(globalCtx, D_06010790); + Gfx_DrawDListOpa(globalCtx, gCobra1DL); if (this->unk_18C > 0.0f) { func_80896D78(this, globalCtx); diff --git a/src/overlays/actors/ovl_Bg_Jya_Kanaami/z_bg_jya_kanaami.c b/src/overlays/actors/ovl_Bg_Jya_Kanaami/z_bg_jya_kanaami.c index 288d4dfe45..d8f9f9760b 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Kanaami/z_bg_jya_kanaami.c +++ b/src/overlays/actors/ovl_Bg_Jya_Kanaami/z_bg_jya_kanaami.c @@ -5,6 +5,7 @@ */ #include "z_bg_jya_kanaami.h" +#include "objects/object_jya_obj/object_jya_obj.h" #define FLAGS 0x00000000 @@ -40,10 +41,8 @@ static InitChainEntry sInitChain[] = { ICHAIN_F32(uncullZoneDownward, 1000, ICHAIN_STOP), }; -extern Gfx D_0600F000[]; -extern CollisionHeader D_0600F208; - -void func_80899740(BgJyaKanaami* this, GlobalContext* globalCtx, CollisionHeader* collision, DynaPolyMoveFlag flag) { +void BgJyaKanaami_InitDynaPoly(BgJyaKanaami* this, GlobalContext* globalCtx, CollisionHeader* collision, + DynaPolyMoveFlag flag) { s32 pad; CollisionHeader* colHeader = NULL; s32 pad2; @@ -60,7 +59,7 @@ void func_80899740(BgJyaKanaami* this, GlobalContext* globalCtx, CollisionHeader void BgJyaKanaami_Init(Actor* thisx, GlobalContext* globalCtx) { BgJyaKanaami* this = THIS; - func_80899740(this, globalCtx, &D_0600F208, 0); + BgJyaKanaami_InitDynaPoly(this, globalCtx, &gKanaamiCol, DPM_UNK); Actor_ProcessInitChain(&this->dyna.actor, sInitChain); if (Flags_GetSwitch(globalCtx, this->dyna.actor.params & 0x3F)) { func_80899A08(this); @@ -100,16 +99,16 @@ void func_8089993C(BgJyaKanaami* this) { void func_80899950(BgJyaKanaami* this, GlobalContext* globalCtx) { s32 pad[2]; - s32 var; + s32 quakeId; this->unk_168 += 0x20; if (Math_ScaledStepToS(&this->dyna.actor.world.rot.x, 0x4000, this->unk_168)) { func_80899A08(this); Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EV_TRAP_BOUND); - var = Quake_Add(ACTIVE_CAM, 3); - Quake_SetSpeed(var, 25000); - Quake_SetQuakeValues(var, 2, 0, 0, 0); - Quake_SetCountdown(var, 0x10); + quakeId = Quake_Add(ACTIVE_CAM, 3); + Quake_SetSpeed(quakeId, 25000); + Quake_SetQuakeValues(quakeId, 2, 0, 0, 0); + Quake_SetCountdown(quakeId, 16); } } @@ -128,5 +127,5 @@ void BgJyaKanaami_Update(Actor* thisx, GlobalContext* globalCtx) { } void BgJyaKanaami_Draw(Actor* thisx, GlobalContext* globalCtx) { - Gfx_DrawDListOpa(globalCtx, D_0600F000); + Gfx_DrawDListOpa(globalCtx, gKanaamiDL); } diff --git a/src/overlays/actors/ovl_Bg_Jya_Lift/z_bg_jya_lift.c b/src/overlays/actors/ovl_Bg_Jya_Lift/z_bg_jya_lift.c index 2d111ebb38..e1229cf301 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Lift/z_bg_jya_lift.c +++ b/src/overlays/actors/ovl_Bg_Jya_Lift/z_bg_jya_lift.c @@ -5,6 +5,7 @@ */ #include "z_bg_jya_lift.h" +#include "objects/object_jya_obj/object_jya_obj.h" #define FLAGS 0x00000010 @@ -44,12 +45,9 @@ static InitChainEntry sInitChain[] = { ICHAIN_F32(uncullZoneDownward, 2500, ICHAIN_STOP), }; -extern CollisionHeader D_0600D7E8; -extern Gfx D_0600CCE0[]; - void BgJyaLift_InitDynapoly(BgJyaLift* this, GlobalContext* globalCtx, CollisionHeader* collisionHeader, DynaPolyMoveFlag moveFlag) { - s32 pad1; + s32 pad; CollisionHeader* colHeader = NULL; DynaPolyActor_Init(&this->dyna, moveFlag); @@ -59,8 +57,8 @@ void BgJyaLift_InitDynapoly(BgJyaLift* this, GlobalContext* globalCtx, Collision void BgJyaLift_Init(Actor* thisx, GlobalContext* globalCtx) { BgJyaLift* this = THIS; - this->unk_16A = 0; + this->isSpawned = false; if (sIsSpawned) { Actor_Kill(thisx); return; @@ -68,7 +66,7 @@ void BgJyaLift_Init(Actor* thisx, GlobalContext* globalCtx) { // Goddess lift CT osSyncPrintf("女神リフト CT\n"); - BgJyaLift_InitDynapoly(this, globalCtx, &D_0600D7E8, 0); + BgJyaLift_InitDynapoly(this, globalCtx, &gLiftCol, DPM_UNK); Actor_ProcessInitChain(thisx, sInitChain); if (Flags_GetSwitch(globalCtx, (thisx->params & 0x3F))) { BgJyaLift_SetFinalPosY(this); @@ -77,13 +75,13 @@ void BgJyaLift_Init(Actor* thisx, GlobalContext* globalCtx) { } thisx->room = -1; sIsSpawned = true; - this->unk_16A = 1; + this->isSpawned = true; } void BgJyaLift_Destroy(Actor* thisx, GlobalContext* globalCtx) { BgJyaLift* this = THIS; - if (this->unk_16A != 0) { + if (this->isSpawned) { // Goddess Lift DT osSyncPrintf("女神リフト DT\n"); @@ -157,5 +155,5 @@ void BgJyaLift_Update(Actor* thisx, GlobalContext* globalCtx) { } void BgJyaLift_Draw(Actor* thisx, GlobalContext* globalCtx) { - Gfx_DrawDListOpa(globalCtx, D_0600CCE0); + Gfx_DrawDListOpa(globalCtx, gLiftDL); } diff --git a/src/overlays/actors/ovl_Bg_Jya_Lift/z_bg_jya_lift.h b/src/overlays/actors/ovl_Bg_Jya_Lift/z_bg_jya_lift.h index 78dfc03759..91f1d06fcf 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Lift/z_bg_jya_lift.h +++ b/src/overlays/actors/ovl_Bg_Jya_Lift/z_bg_jya_lift.h @@ -11,7 +11,7 @@ typedef struct BgJyaLift { /* 0x000 */ DynaPolyActor dyna; /* 0x164 */ BgJyaLiftActionFunc actionFunc; /* 0x168 */ s16 moveDelay; - /* 0x16A */ u8 unk_16A; + /* 0x16A */ u8 isSpawned; /* 0x16B */ u8 unk_16B; } BgJyaLift; // size = 0x016C diff --git a/src/overlays/actors/ovl_Bg_Jya_Megami/z_bg_jya_megami.c b/src/overlays/actors/ovl_Bg_Jya_Megami/z_bg_jya_megami.c index 9374eb14fc..582b59a863 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Megami/z_bg_jya_megami.c +++ b/src/overlays/actors/ovl_Bg_Jya_Megami/z_bg_jya_megami.c @@ -1,5 +1,6 @@ #include "z_bg_jya_megami.h" #include "overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.h" +#include "objects/object_jya_obj/object_jya_obj.h" #define FLAGS 0x00000000 @@ -15,18 +16,6 @@ void BgJyaMegami_DetectLight(BgJyaMegami* this, GlobalContext* globalCtx); void BgJyaMegami_SetupExplode(BgJyaMegami* this); void BgJyaMegami_Explode(BgJyaMegami* this, GlobalContext* globalCtx); -extern Gfx D_06005780[]; -extern CollisionHeader D_06005C4C; -extern Gfx D_0600B9F8[]; - -typedef struct { - /* 0x00 */ Vec3f unk_00; - /* 0x0C */ f32 velX; - /* 0x10 */ s16 rotVelX; - /* 0x12 */ s16 rotVelY; - /* 0x14 */ s16 delay; -} BgJyaMegamiPieceInit; // size = 0x18 - const ActorInit Bg_Jya_Megami_InitVars = { ACTOR_BG_JYA_MEGAMI, ACTORCAT_BG, @@ -66,6 +55,14 @@ static ColliderJntSphInit sJntSphInit = { sJntSphElementsInit, }; +typedef struct { + /* 0x00 */ Vec3f unk_00; + /* 0x0C */ f32 velX; + /* 0x10 */ s16 rotVelX; + /* 0x12 */ s16 rotVelY; + /* 0x14 */ s16 delay; +} BgJyaMegamiPieceInit; // size = 0x18 + static BgJyaMegamiPieceInit sPiecesInit[] = { { { -50.0f, -21.28f, -38.92f }, -1.6f, 0xFED4, 0xFE70, 40 }, { { -4.32f, -13.44f, -13.76f }, 0.0f, 0x04B0, 0x0190, 42 }, @@ -100,7 +97,7 @@ static s16 D_8089B17C[] = { 0x0007, }; -static Vec3f D_8089B184 = { 0.0f, 0.0f, 0.8f }; +static Vec3f sVelocity = { 0.0f, 0.0f, 0.8f }; static InitChainEntry sInitChain[] = { ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_CONTINUE), @@ -109,27 +106,12 @@ static InitChainEntry sInitChain[] = { ICHAIN_F32(uncullZoneDownward, 1200, ICHAIN_STOP), }; -static Vec3f sVec = { 0.0f, 0.0f, 0.0f }; - -static UNK_PTR sRightSideCrumbles[] = { - 0x06000D00, 0x06001D00, 0x06002500, 0x06002D00, 0x06004D00, -}; - -static UNK_PTR sLeftSideCrumbles[] = { - 0x06001500, 0x06003500, 0x06003D00, 0x06004500, 0x06000500, -}; - -static Gfx* sDLists[] = { - 0x06009928, 0x06009AC0, 0x06009C80, 0x06009DE8, 0x06009F60, 0x0600A0A8, 0x0600A278, - 0x0600A418, 0x0600A568, 0x0600A6A0, 0x0600A7E0, 0x0600A978, 0x0600AAC8, -}; - void BgJyaMegami_InitDynaPoly(BgJyaMegami* this, GlobalContext* globalCtx, CollisionHeader* collision, - DynaPolyMoveFlag flags) { + DynaPolyMoveFlag flag) { s32 pad; CollisionHeader* colHeader = NULL; - DynaPolyActor_Init(&this->dyna, flags); + DynaPolyActor_Init(&this->dyna, flag); CollisionHeader_GetVirtual(collision, &colHeader); this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader); } @@ -141,7 +123,7 @@ void BgJyaMegami_InitCollider(BgJyaMegami* this, GlobalContext* globalCtx) { Collider_SetJntSph(globalCtx, &this->collider, &this->dyna.actor, &sJntSphInit, &this->colliderItem); } -void func_8089A1DC(GlobalContext* globalCtx, Vec3f* pos, Vec3f* velocity, s32 num, s32 arg4) { +void BgJyaMegami_SpawnEffect(GlobalContext* globalCtx, Vec3f* pos, Vec3f* velocity, s32 num, s32 arg4) { Vec3f spB4; s32 i; @@ -149,7 +131,7 @@ void func_8089A1DC(GlobalContext* globalCtx, Vec3f* pos, Vec3f* velocity, s32 nu s32 idx = ((s16)(Rand_ZeroOne() * 8.0f)) & D_8089B17C[arg4]; s16 arg5 = ((idx < 5) && (Rand_ZeroOne() < 0.7f)) ? 0x40 : 0x20; EffectSsKakera_Spawn(globalCtx, pos, velocity, pos, -90, arg5, D_8089B16C[idx], 4, 0, D_8089B14C[idx], 0, 5, - D_8089B15C[idx], KAKERA_COLOR_NONE, OBJECT_JYA_OBJ, D_0600B9F8); + D_8089B15C[idx], KAKERA_COLOR_NONE, OBJECT_JYA_OBJ, gMegami2DL); if (Rand_ZeroOne() < 0.45f) { Math_Vec3f_Copy(&spB4, pos); spB4.z += 25.0f; @@ -158,15 +140,15 @@ void func_8089A1DC(GlobalContext* globalCtx, Vec3f* pos, Vec3f* velocity, s32 nu } } -void func_8089A41C(BgJyaMegami* this, GlobalContext* globalCtx, f32 arg2) { +void BgJyaMegami_SetupSpawnEffect(BgJyaMegami* this, GlobalContext* globalCtx, f32 arg2) { s32 i; - Vec3f sp50; + Vec3f pos; for (i = 0; i < ARRAY_COUNT(this->pieces); i++) { if (Rand_ZeroOne() < arg2) { - Math_Vec3f_Sum(&this->dyna.actor.world.pos, &sPiecesInit[i].unk_00, &sp50); - sp50.z += 15.0f; - func_8089A1DC(globalCtx, &sp50, &D_8089B184, 1, 0); + Math_Vec3f_Sum(&this->dyna.actor.world.pos, &sPiecesInit[i].unk_00, &pos); + pos.z += 15.0f; + BgJyaMegami_SpawnEffect(globalCtx, &pos, &sVelocity, 1, 0); } } } @@ -174,7 +156,7 @@ void func_8089A41C(BgJyaMegami* this, GlobalContext* globalCtx, f32 arg2) { void BgJyaMegami_Init(Actor* thisx, GlobalContext* globalCtx) { BgJyaMegami* this = THIS; - BgJyaMegami_InitDynaPoly(this, globalCtx, &D_06005C4C, DPM_UNK); + BgJyaMegami_InitDynaPoly(this, globalCtx, &GMegamiCol, DPM_UNK); BgJyaMegami_InitCollider(this, globalCtx); if (Flags_GetSwitch(globalCtx, this->dyna.actor.params & 0x3F)) { Actor_Kill(&this->dyna.actor); @@ -203,7 +185,7 @@ void BgJyaMegami_DetectLight(BgJyaMegami* this, GlobalContext* globalCtx) { this->lightTimer++; this->collider.base.acFlags &= ~AC_HIT; if (globalCtx->gameplayFrames % 4 == 0) { - func_8089A41C(this, globalCtx, (this->crumbleIndex * 0.04f) + 0.05f); + BgJyaMegami_SetupSpawnEffect(this, globalCtx, (this->crumbleIndex * 0.04f) + 0.05f); } func_8002F974(&this->dyna.actor, NA_SE_EV_FACE_CRUMBLE_SLOW - SFX_FLAG); } else if (this->lightTimer > 0) { @@ -242,6 +224,7 @@ void BgJyaMegami_SetupExplode(BgJyaMegami* this) { } void BgJyaMegami_Explode(BgJyaMegami* this, GlobalContext* globalCtx) { + static Vec3f sVec = { 0.0f, 0.0f, 0.0f }; BgJyaMegamiPiece* temp; u32 i; Vec3f sp8C; @@ -269,12 +252,12 @@ void BgJyaMegami_Explode(BgJyaMegami* this, GlobalContext* globalCtx) { if (Rand_ZeroOne() < 0.067f) { Math_Vec3f_Sum(&temp->pos, &temp2->unk_00, &sp8C); sp8C.z += 10.0f; - func_8089A1DC(globalCtx, &sp8C, &temp->vel, 3, 2); + BgJyaMegami_SpawnEffect(globalCtx, &sp8C, &temp->vel, 3, 2); } } else if (this->explosionTimer == temp2->delay) { Math_Vec3f_Sum(&temp->pos, &temp2->unk_00, &sp8C); sp8C.z += 10.0f; - func_8089A1DC(globalCtx, &sp8C, &temp->vel, 4, 2); + BgJyaMegami_SpawnEffect(globalCtx, &sp8C, &temp->vel, 4, 2); } } @@ -282,8 +265,8 @@ void BgJyaMegami_Explode(BgJyaMegami* this, GlobalContext* globalCtx) { (this->explosionTimer > 40)) { sp8C.x = ((Rand_ZeroOne() - 0.5f) * 90.0f) + this->dyna.actor.world.pos.x; sp8C.y = (this->dyna.actor.world.pos.y - (Rand_ZeroOne() * 80.0f)) - 20.0f; - sp8C.z = this->dyna.actor.world.pos.z - ((Rand_ZeroOne() - 0.5f) * 50.0f); - func_8089A1DC(globalCtx, &sp8C, &sVec, 1, 0); + sp8C.z = this->dyna.actor.world.pos.z - (Rand_ZeroOne() - 0.5f) * 50.0f; + BgJyaMegami_SpawnEffect(globalCtx, &sp8C, &sVec, 1, 0); } if (this->explosionTimer < ARRAY_COUNT(this->pieces)) { sp8C.x = this->dyna.actor.world.pos.x; @@ -305,6 +288,16 @@ void BgJyaMegami_Update(Actor* thisx, GlobalContext* globalCtx) { this->actionFunc(this, globalCtx); } +static u64* sRightSideCrumbles[] = { + gMeagmiRightCrumble1Tex, gMeagmiRightCrumble2Tex, gMeagmiRightCrumble3Tex, + gMeagmiRightCrumble4Tex, gMeagmiRightCrumble5Tex, +}; + +static u64* sLeftSideCrumbles[] = { + gMeagmiLeftCrumble1Tex, gMeagmiLeftCrumble2Tex, gMeagmiLeftCrumble3Tex, + gMeagmiLeftCrumble4Tex, gMeagmiLeftCrumble5Tex, +}; + void BgJyaMegami_DrawFace(BgJyaMegami* this, GlobalContext* globalCtx) { OPEN_DISPS(globalCtx->state.gfxCtx, "../z_bg_jya_megami.c", 706); @@ -313,11 +306,17 @@ void BgJyaMegami_DrawFace(BgJyaMegami* this, GlobalContext* globalCtx) { gSPSegment(POLY_OPA_DISP++, 0x09, SEGMENTED_TO_VIRTUAL(sLeftSideCrumbles[this->crumbleIndex])); gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_jya_megami.c", 716), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); - gSPDisplayList(POLY_OPA_DISP++, D_06005780); + gSPDisplayList(POLY_OPA_DISP++, gMegami1DL); CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_jya_megami.c", 720); } +static Gfx* sDLists[] = { + gMegamiPiece1DL, gMegamiPiece2DL, gMegamiPiece3DL, gMegamiPiece4DL, gMegamiPiece5DL, + gMegamiPiece6DL, gMegamiPiece7DL, gMegamiPiece8DL, gMegamiPiece9DL, gMegamiPiece10DL, + gMegamiPiece11DL, gMegamiPiece12DL, gMegamiPiece13DL, +}; + void BgJyaMegami_DrawExplode(BgJyaMegami* this, GlobalContext* globalCtx) { s32 pad; BgJyaMegamiPiece* piece; diff --git a/src/overlays/actors/ovl_Bg_Jya_Zurerukabe/z_bg_jya_zurerukabe.c b/src/overlays/actors/ovl_Bg_Jya_Zurerukabe/z_bg_jya_zurerukabe.c index a9d78688b1..fa47035d12 100644 --- a/src/overlays/actors/ovl_Bg_Jya_Zurerukabe/z_bg_jya_zurerukabe.c +++ b/src/overlays/actors/ovl_Bg_Jya_Zurerukabe/z_bg_jya_zurerukabe.c @@ -1,10 +1,11 @@ /* * File: z_bg_jya_zurerukabe.c * Overlay: ovl_Bg_Jya_Zurerukabe - * Description: + * Description: Sliding, Climbable Brick Wall */ #include "z_bg_jya_zurerukabe.h" +#include "objects/object_jya_obj/object_jya_obj.h" #include "vt.h" #define FLAGS 0x00000010 @@ -60,18 +61,15 @@ static InitChainEntry sInitChain[] = { ICHAIN_F32(uncullZoneDownward, 1000, ICHAIN_STOP), }; -extern Gfx D_06012340[]; -extern CollisionHeader D_06012508; - -void func_8089B440(BgJyaZurerukabe* this, GlobalContext* globalCtx, CollisionHeader* collision, s32 flags) { +void BgJyaZurerukabe_InitDynaPoly(BgJyaZurerukabe* this, GlobalContext* globalCtx, CollisionHeader* collision, + DynaPolyMoveFlag flag) { s32 pad; CollisionHeader* colHeader = NULL; s32 pad2; - DynaPolyActor_Init(&this->dyna, flags); + DynaPolyActor_Init(&this->dyna, flag); CollisionHeader_GetVirtual(collision, &colHeader); this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader); - if (this->dyna.bgId == BG_ACTOR_MAX) { osSyncPrintf("Warning : move BG 登録失敗(%s %d)(name %d)(arg_data 0x%04x)\n", "../z_bg_jya_zurerukabe.c", 194, this->dyna.actor.id, this->dyna.actor.params); @@ -86,6 +84,7 @@ void func_8089B4C8(BgJyaZurerukabe* this, GlobalContext* globalCtx) { for (i = 0; i < ARRAY_COUNT(D_8089BA18); i++) { f32 posY = player->actor.world.pos.y; + if ((posY >= D_8089BA18[i][0]) && (posY <= D_8089BA18[i][1])) { break; } @@ -114,7 +113,7 @@ void BgJyaZurerukabe_Init(Actor* thisx, GlobalContext* globalCtx) { BgJyaZurerukabe* this = THIS; s32 i; - func_8089B440(this, globalCtx, &D_06012508, DPM_UNK); + BgJyaZurerukabe_InitDynaPoly(this, globalCtx, &gZurerukabeCol, DPM_UNK); Actor_ProcessInitChain(thisx, sInitChain); for (i = 0; i < ARRAY_COUNT(D_8089B9F0); i++) { @@ -157,11 +156,9 @@ void func_8089B7C4(BgJyaZurerukabe* this, GlobalContext* globalCtx) { void func_8089B80C(BgJyaZurerukabe* this) { this->actionFunc = func_8089B870; this->unk_16A = D_8089BA00[this->unk_168]; - if (ABS(this->unk_16C) == 4) { this->unk_16E = -this->unk_16E; } - this->unk_16C += this->unk_16E; } @@ -183,12 +180,12 @@ void BgJyaZurerukabe_Update(Actor* thisx, GlobalContext* globalCtx) { } this->actionFunc(this, globalCtx); - + if (this->unk_168 == 0) { func_8089B4C8(this, globalCtx); } } void BgJyaZurerukabe_Draw(Actor* thisx, GlobalContext* globalCtx) { - Gfx_DrawDListOpa(globalCtx, D_06012340); + Gfx_DrawDListOpa(globalCtx, gZurerukabeDL); } diff --git a/src/overlays/actors/ovl_Bg_Mori_Bigst/z_bg_mori_bigst.c b/src/overlays/actors/ovl_Bg_Mori_Bigst/z_bg_mori_bigst.c index f51726dc6e..ca4a9e283a 100644 --- a/src/overlays/actors/ovl_Bg_Mori_Bigst/z_bg_mori_bigst.c +++ b/src/overlays/actors/ovl_Bg_Mori_Bigst/z_bg_mori_bigst.c @@ -5,6 +5,7 @@ */ #include "z_bg_mori_bigst.h" +#include "objects/object_mori_objects/object_mori_objects.h" #define FLAGS 0x00000010 @@ -28,9 +29,6 @@ void BgMoriBigst_SetupStalfosPairFight(BgMoriBigst* this, GlobalContext* globalC void BgMoriBigst_StalfosPairFight(BgMoriBigst* this, GlobalContext* globalCtx); void BgMoriBigst_SetupDone(BgMoriBigst* this, GlobalContext* globalCtx); -extern CollisionHeader D_0600221C; -extern Gfx D_06001E50[]; - const ActorInit Bg_Mori_Bigst_InitVars = { ACTOR_BG_MORI_BIGST, ACTORCAT_BG, @@ -78,7 +76,7 @@ void BgMoriBigst_Init(Actor* thisx, GlobalContext* globalCtx) { Flags_GetSwitch(globalCtx, (this->dyna.actor.params >> 8) & 0x3F), Flags_GetTempClear(globalCtx, this->dyna.actor.room), Flags_GetClear(globalCtx, this->dyna.actor.room), PLAYER->actor.world.pos.y); - BgMoriBigst_InitDynapoly(this, globalCtx, &D_0600221C, DPM_UNK); + BgMoriBigst_InitDynapoly(this, globalCtx, &gMoriBigstCol, DPM_UNK); Actor_ProcessInitChain(&this->dyna.actor, sInitChain); this->moriTexObjIndex = Object_GetIndex(&globalCtx->objectCtx, OBJECT_MORI_TEX); if (this->moriTexObjIndex < 0) { @@ -254,6 +252,6 @@ void BgMoriBigst_Draw(Actor* thisx, GlobalContext* globalCtx) { gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_mori_bigst.c", 548), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); - gSPDisplayList(POLY_OPA_DISP++, D_06001E50); + gSPDisplayList(POLY_OPA_DISP++, gMoriBigstDL); CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_mori_bigst.c", 553); } diff --git a/src/overlays/actors/ovl_Bg_Mori_Elevator/z_bg_mori_elevator.c b/src/overlays/actors/ovl_Bg_Mori_Elevator/z_bg_mori_elevator.c index 6f6386af88..54051f4ccb 100644 --- a/src/overlays/actors/ovl_Bg_Mori_Elevator/z_bg_mori_elevator.c +++ b/src/overlays/actors/ovl_Bg_Mori_Elevator/z_bg_mori_elevator.c @@ -1,4 +1,5 @@ #include "z_bg_mori_elevator.h" +#include "objects/object_mori_objects/object_mori_objects.h" #define FLAGS 0x00000010 @@ -39,9 +40,6 @@ static InitChainEntry sInitChain[] = { ICHAIN_VEC3F_DIV1000(scale, 1000, ICHAIN_STOP), }; -extern CollisionHeader D_060035F8; -extern Gfx D_06002AD0[]; - f32 func_808A1800(f32* pValue, f32 target, f32 scale, f32 maxStep, f32 minStep) { f32 var = (target - *pValue) * scale; @@ -105,7 +103,7 @@ void BgMoriElevator_Init(Actor* thisx, GlobalContext* globalCtx) { this->dyna.actor.room = -1; Actor_ProcessInitChain(&this->dyna.actor, sInitChain); DynaPolyActor_Init(&this->dyna, DPM_PLAYER); - CollisionHeader_GetVirtual(&D_060035F8, &colHeader); + CollisionHeader_GetVirtual(&gMoriElevatorCol, &colHeader); this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, thisx, colHeader); BgMoriElevator_SetupWaitAfterInit(this); break; @@ -261,7 +259,7 @@ void BgMoriElevator_Draw(Actor* thisx, GlobalContext* globalCtx) { gSPSegment(POLY_OPA_DISP++, 0x08, globalCtx->objectCtx.status[this->moriTexObjIndex].segment); gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_mori_elevator.c", 580), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); - gSPDisplayList(POLY_OPA_DISP++, D_06002AD0); + gSPDisplayList(POLY_OPA_DISP++, gMoriElevatorDL); CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_mori_elevator.c", 584); } diff --git a/src/overlays/actors/ovl_Bg_Mori_Hashigo/z_bg_mori_hashigo.c b/src/overlays/actors/ovl_Bg_Mori_Hashigo/z_bg_mori_hashigo.c index 060f8b2991..24ceceb38a 100644 --- a/src/overlays/actors/ovl_Bg_Mori_Hashigo/z_bg_mori_hashigo.c +++ b/src/overlays/actors/ovl_Bg_Mori_Hashigo/z_bg_mori_hashigo.c @@ -5,6 +5,7 @@ */ #include "z_bg_mori_hashigo.h" +#include "objects/object_mori_objects/object_mori_objects.h" #define FLAGS 0x00000000 @@ -25,10 +26,6 @@ void BgMoriHashigo_SetupLadderFall(BgMoriHashigo* this); void BgMoriHashigo_LadderFall(BgMoriHashigo* this, GlobalContext* globalCtx); void BgMoriHashigo_SetupLadderRest(BgMoriHashigo* this); -extern CollisionHeader D_060037D8; -extern Gfx D_060036B0[]; -extern Gfx D_06004770[]; - const ActorInit Bg_Mori_Hashigo_InitVars = { ACTOR_BG_MORI_HASHIGO, ACTORCAT_BG, @@ -142,7 +139,7 @@ s32 BgMoriHashigo_InitClasp(BgMoriHashigo* this, GlobalContext* globalCtx) { this->dyna.actor.flags |= 1; Actor_SetFocus(&this->dyna.actor, 55.0f); BgMoriHashigo_InitCollider(this, globalCtx); - if ((this->dyna.actor.params == -1) && !BgMoriHashigo_SpawnLadder(this, globalCtx)) { + if ((this->dyna.actor.params == HASHIGO_CLASP) && !BgMoriHashigo_SpawnLadder(this, globalCtx)) { return false; } else { return true; @@ -150,7 +147,7 @@ s32 BgMoriHashigo_InitClasp(BgMoriHashigo* this, GlobalContext* globalCtx) { } s32 BgMoriHashigo_InitLadder(BgMoriHashigo* this, GlobalContext* globalCtx) { - BgMoriHashigo_InitDynapoly(this, globalCtx, &D_060037D8, DPM_UNK); + BgMoriHashigo_InitDynapoly(this, globalCtx, &gMoriHashigoCol, DPM_UNK); Actor_ProcessInitChain(&this->dyna.actor, sInitChainLadder); return true; } @@ -159,12 +156,12 @@ void BgMoriHashigo_Init(Actor* thisx, GlobalContext* globalCtx) { s32 pad; BgMoriHashigo* this = THIS; - if (this->dyna.actor.params == -1) { + if (this->dyna.actor.params == HASHIGO_CLASP) { if (!BgMoriHashigo_InitClasp(this, globalCtx)) { Actor_Kill(&this->dyna.actor); return; } - } else if (this->dyna.actor.params == 0) { + } else if (this->dyna.actor.params == HASHIGO_LADDER) { if (!BgMoriHashigo_InitLadder(this, globalCtx)) { Actor_Kill(&this->dyna.actor); return; @@ -187,10 +184,10 @@ void BgMoriHashigo_Destroy(Actor* thisx, GlobalContext* globalCtx) { s32 pad; BgMoriHashigo* this = THIS; - if (this->dyna.actor.params == 0) { + if (this->dyna.actor.params == HASHIGO_LADDER) { DynaPoly_DeleteBgActor(globalCtx, &globalCtx->colCtx.dyna, this->dyna.bgId); } - if (this->dyna.actor.params == -1) { + if (this->dyna.actor.params == HASHIGO_CLASP) { Collider_DestroyJntSph(globalCtx, &this->collider); } } @@ -201,9 +198,9 @@ void BgMoriHashigo_SetupWaitForMoriTex(BgMoriHashigo* this) { void BgMoriHashigo_WaitForMoriTex(BgMoriHashigo* this, GlobalContext* globalCtx) { if (Object_IsLoaded(&globalCtx->objectCtx, this->moriTexObjIndex)) { - if (this->dyna.actor.params == -1) { + if (this->dyna.actor.params == HASHIGO_CLASP) { BgMoriHashigo_SetupClasp(this); - } else if (this->dyna.actor.params == 0) { + } else if (this->dyna.actor.params == HASHIGO_LADDER) { BgMoriHashigo_SetupLadderWait(this); } this->dyna.actor.draw = BgMoriHashigo_Draw; @@ -295,11 +292,11 @@ void BgMoriHashigo_Draw(Actor* thisx, GlobalContext* globalCtx) { G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); switch (this->dyna.actor.params) { - case -1: - gSPDisplayList(POLY_OPA_DISP++, D_06004770); + case HASHIGO_CLASP: + gSPDisplayList(POLY_OPA_DISP++, gMoriHashigoClaspDL); break; - case 0: - gSPDisplayList(POLY_OPA_DISP++, D_060036B0); + case HASHIGO_LADDER: + gSPDisplayList(POLY_OPA_DISP++, gMoriHashigoLadderDL); break; } CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_mori_hashigo.c", 531); diff --git a/src/overlays/actors/ovl_Bg_Mori_Hashigo/z_bg_mori_hashigo.h b/src/overlays/actors/ovl_Bg_Mori_Hashigo/z_bg_mori_hashigo.h index aeeea7fc71..63280560c6 100644 --- a/src/overlays/actors/ovl_Bg_Mori_Hashigo/z_bg_mori_hashigo.h +++ b/src/overlays/actors/ovl_Bg_Mori_Hashigo/z_bg_mori_hashigo.h @@ -18,6 +18,11 @@ typedef struct BgMoriHashigo { /* 0x01CC */ s8 moriTexObjIndex; } BgMoriHashigo; // size = 0x01D0 +typedef enum { + /* -1 */ HASHIGO_CLASP = -1, + /* 0 */ HASHIGO_LADDER +} HasigoType; + extern const ActorInit Bg_Mori_Hashigo_InitVars; #endif diff --git a/src/overlays/actors/ovl_Bg_Mori_Hashira4/z_bg_mori_hashira4.c b/src/overlays/actors/ovl_Bg_Mori_Hashira4/z_bg_mori_hashira4.c index de77013964..c21a740f71 100644 --- a/src/overlays/actors/ovl_Bg_Mori_Hashira4/z_bg_mori_hashira4.c +++ b/src/overlays/actors/ovl_Bg_Mori_Hashira4/z_bg_mori_hashira4.c @@ -5,6 +5,7 @@ */ #include "z_bg_mori_hashira4.h" +#include "objects/object_mori_objects/object_mori_objects.h" #define FLAGS 0x00000010 @@ -22,9 +23,6 @@ void BgMoriHashira4_PillarsRotate(BgMoriHashira4* this, GlobalContext* globalCtx void BgMoriHashira4_GateWait(BgMoriHashira4* this, GlobalContext* globalCtx); void BgMoriHashira4_GateOpen(BgMoriHashira4* this, GlobalContext* globalCtx); -extern CollisionHeader D_06001AF8; -extern CollisionHeader D_060089E0; - const ActorInit Bg_Mori_Hashira4_InitVars = { ACTOR_BG_MORI_HASHIRA4, ACTORCAT_BG, @@ -44,7 +42,7 @@ static InitChainEntry sInitChain[] = { ICHAIN_VEC3F_DIV1000(scale, 1000, ICHAIN_STOP), }; -static Gfx* sDisplayLists[] = { 0x06001300, 0x06008840 }; +static Gfx* sDisplayLists[] = { gMoriHashiraPlatformsDL, gMoriHashiraGateDL }; static s16 sUnkTimer; // seems to be unused @@ -78,9 +76,9 @@ void BgMoriHashira4_Init(Actor* thisx, GlobalContext* globalCtx) { this->dyna.actor.params &= 0xFF; if (this->dyna.actor.params == 0) { - BgMoriHashira4_InitDynaPoly(this, globalCtx, &D_06001AF8, DPM_UNK3); + BgMoriHashira4_InitDynaPoly(this, globalCtx, &gMoriHashira1Col, DPM_UNK3); } else { - BgMoriHashira4_InitDynaPoly(this, globalCtx, &D_060089E0, DPM_UNK); + BgMoriHashira4_InitDynaPoly(this, globalCtx, &gMoriHashira2Col, DPM_UNK); } Actor_ProcessInitChain(&this->dyna.actor, sInitChain); this->moriTexObjIndex = Object_GetIndex(&globalCtx->objectCtx, OBJECT_MORI_TEX); diff --git a/src/overlays/actors/ovl_Bg_Mori_Idomizu/z_bg_mori_idomizu.c b/src/overlays/actors/ovl_Bg_Mori_Idomizu/z_bg_mori_idomizu.c index fa52f85500..e8ebb1efb8 100644 --- a/src/overlays/actors/ovl_Bg_Mori_Idomizu/z_bg_mori_idomizu.c +++ b/src/overlays/actors/ovl_Bg_Mori_Idomizu/z_bg_mori_idomizu.c @@ -5,6 +5,7 @@ */ #include "z_bg_mori_idomizu.h" +#include "objects/object_mori_objects/object_mori_objects.h" #define FLAGS 0x00000030 @@ -20,8 +21,6 @@ void BgMoriIdomizu_WaitForMoriTex(BgMoriIdomizu* this, GlobalContext* globalCtx) void BgMoriIdomizu_SetupMain(BgMoriIdomizu* this); void BgMoriIdomizu_Main(BgMoriIdomizu* this, GlobalContext* globalCtx); -extern Gfx D_060049D0[]; - static s16 sIsSpawned = false; const ActorInit Bg_Mori_Idomizu_InitVars = { @@ -180,7 +179,7 @@ void BgMoriIdomizu_Draw(Actor* thisx, GlobalContext* globalCtx) { Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, 0x7F - (gameplayFrames & 0x7F), gameplayFrames % 0x80, 0x20, 0x20, 1, gameplayFrames & 0x7F, gameplayFrames % 0x80, 0x20, 0x20)); - gSPDisplayList(POLY_XLU_DISP++, D_060049D0); + gSPDisplayList(POLY_XLU_DISP++, gMoriIdomizuWaterDL); CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_mori_idomizu.c", 382); } diff --git a/src/overlays/actors/ovl_Bg_Mori_Kaitenkabe/z_bg_mori_kaitenkabe.c b/src/overlays/actors/ovl_Bg_Mori_Kaitenkabe/z_bg_mori_kaitenkabe.c index edb1419290..f17336f890 100644 --- a/src/overlays/actors/ovl_Bg_Mori_Kaitenkabe/z_bg_mori_kaitenkabe.c +++ b/src/overlays/actors/ovl_Bg_Mori_Kaitenkabe/z_bg_mori_kaitenkabe.c @@ -5,6 +5,7 @@ */ #include "z_bg_mori_kaitenkabe.h" +#include "objects/object_mori_objects/object_mori_objects.h" #define FLAGS 0x00000000 @@ -21,9 +22,6 @@ void BgMoriKaitenkabe_Wait(BgMoriKaitenkabe* this, GlobalContext* globalCtx); void BgMoriKaitenkabe_SetupRotate(BgMoriKaitenkabe* this); void BgMoriKaitenkabe_Rotate(BgMoriKaitenkabe* this, GlobalContext* globalCtx); -extern CollisionHeader D_060063B8; -extern Gfx D_060056B0[]; - const ActorInit Bg_Mori_Kaitenkabe_InitVars = { ACTOR_BG_MORI_KAITENKABE, ACTORCAT_BG, @@ -58,7 +56,7 @@ void BgMoriKaitenkabe_Init(Actor* thisx, GlobalContext* globalCtx) { osSyncPrintf("◯◯◯森の神殿オブジェクト【回転壁(arg_data : 0x%04x)】出現 \n", this->dyna.actor.params); Actor_ProcessInitChain(&this->dyna.actor, sInitChain); DynaPolyActor_Init(&this->dyna, DPM_UNK); - CollisionHeader_GetVirtual(&D_060063B8, &colHeader); + CollisionHeader_GetVirtual(&gMoriKaitenkabeCol, &colHeader); this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader); this->moriTexObjIndex = Object_GetIndex(&globalCtx->objectCtx, OBJECT_MORI_TEX); if (this->moriTexObjIndex < 0) { @@ -172,7 +170,7 @@ void BgMoriKaitenkabe_Draw(Actor* thisx, GlobalContext* globalCtx) { gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_mori_kaitenkabe.c", 352), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); - gSPDisplayList(POLY_OPA_DISP++, D_060056B0); + gSPDisplayList(POLY_OPA_DISP++, gMoriKaitenkabeDL); CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_mori_kaitenkabe.c", 356); } diff --git a/src/overlays/actors/ovl_Bg_Mori_Rakkatenjo/z_bg_mori_rakkatenjo.c b/src/overlays/actors/ovl_Bg_Mori_Rakkatenjo/z_bg_mori_rakkatenjo.c index f285d149e4..4111dc0b88 100644 --- a/src/overlays/actors/ovl_Bg_Mori_Rakkatenjo/z_bg_mori_rakkatenjo.c +++ b/src/overlays/actors/ovl_Bg_Mori_Rakkatenjo/z_bg_mori_rakkatenjo.c @@ -5,6 +5,7 @@ */ #include "z_bg_mori_rakkatenjo.h" +#include "objects/object_mori_objects/object_mori_objects.h" #define FLAGS 0x00000030 @@ -26,9 +27,6 @@ void BgMoriRakkatenjo_Rest(BgMoriRakkatenjo* this, GlobalContext* globalCtx); void BgMoriRakkatenjo_SetupRise(BgMoriRakkatenjo* this); void BgMoriRakkatenjo_Rise(BgMoriRakkatenjo* this, GlobalContext* globalCtx); -extern CollisionHeader D_060087AC; -extern Gfx D_06007690[]; - static s16 sCamSetting = 0; const ActorInit Bg_Mori_Rakkatenjo_InitVars = { @@ -75,7 +73,7 @@ void BgMoriRakkatenjo_Init(Actor* thisx, GlobalContext* globalCtx) { return; } Actor_ProcessInitChain(&this->dyna.actor, sInitChain); - CollisionHeader_GetVirtual(&D_060087AC, &colHeader); + CollisionHeader_GetVirtual(&gMoriRakkatenjoCol, &colHeader); this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader); BgMoriRakkatenjo_SetupWaitForMoriTex(this); sCamSetting = 0; @@ -233,7 +231,7 @@ void BgMoriRakkatenjo_Draw(Actor* thisx, GlobalContext* globalCtx) { gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_mori_rakkatenjo.c", 502), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); - gSPDisplayList(POLY_OPA_DISP++, D_06007690); + gSPDisplayList(POLY_OPA_DISP++, gMoriRakkatenjoDL); CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_mori_rakkatenjo.c", 506); } diff --git a/src/overlays/actors/ovl_Bg_Spot08_Bakudankabe/z_bg_spot08_bakudankabe.c b/src/overlays/actors/ovl_Bg_Spot08_Bakudankabe/z_bg_spot08_bakudankabe.c index c74daa5120..e0930fa3dc 100644 --- a/src/overlays/actors/ovl_Bg_Spot08_Bakudankabe/z_bg_spot08_bakudankabe.c +++ b/src/overlays/actors/ovl_Bg_Spot08_Bakudankabe/z_bg_spot08_bakudankabe.c @@ -6,6 +6,7 @@ #include "z_bg_spot08_bakudankabe.h" #include "overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.h" +#include "objects/gameplay_field_keep/gameplay_field_keep.h" #define FLAGS 0x00400000 @@ -31,7 +32,6 @@ const ActorInit Bg_Spot08_Bakudankabe_InitVars = { (ActorFunc)BgSpot08Bakudankabe_Draw, }; -extern Gfx D_0500A880[]; extern CollisionHeader D_060039D4; extern Gfx D_06003898[]; @@ -149,7 +149,7 @@ void func_808B0324(BgSpot08Bakudankabe* this, GlobalContext* globalCtx) { } EffectSsKakera_Spawn(globalCtx, &burstDepthY, &burstDepthX, &burstDepthY, gravityInfluence, rotationSpeed, 0x1E, - 4, 0, scale, 1, 3, 80, KAKERA_COLOR_NONE, OBJECT_GAMEPLAY_FIELD_KEEP, D_0500A880); + 4, 0, scale, 1, 3, 80, KAKERA_COLOR_NONE, OBJECT_GAMEPLAY_FIELD_KEEP, gFieldKakeraDL); } for (i = 0; i < ARRAY_COUNT(D_808B08AC); i++) { diff --git a/src/overlays/actors/ovl_Bg_Spot11_Bakudankabe/z_bg_spot11_bakudankabe.c b/src/overlays/actors/ovl_Bg_Spot11_Bakudankabe/z_bg_spot11_bakudankabe.c index 35bb82a539..00497efdfe 100644 --- a/src/overlays/actors/ovl_Bg_Spot11_Bakudankabe/z_bg_spot11_bakudankabe.c +++ b/src/overlays/actors/ovl_Bg_Spot11_Bakudankabe/z_bg_spot11_bakudankabe.c @@ -7,6 +7,7 @@ #include "z_bg_spot11_bakudankabe.h" #include "overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.h" #include "objects/object_spot11_obj/object_spot11_obj.h" +#include "objects/gameplay_field_keep/gameplay_field_keep.h" #define FLAGS 0x00000030 @@ -52,8 +53,6 @@ static ColliderCylinderInit sCylinderInit = { static Vec3f D_808B272C = { 2259.0f, 108.0f, -1550.0f }; static Vec3f D_808B2738 = { 2259.0f, 108.0f, -1550.0f }; -extern Gfx D_0500A880[]; - void func_808B2180(BgSpot11Bakudankabe* this, GlobalContext* globalCtx) { s32 pad; @@ -100,7 +99,7 @@ void func_808B2218(BgSpot11Bakudankabe* this, GlobalContext* globalCtx) { rotationSpeed = 33; } EffectSsKakera_Spawn(globalCtx, &burstDepthY, &burstDepthX, &burstDepthY, gravityInfluence, rotationSpeed, 0x1E, - 4, 0, scale, 1, 3, 80, KAKERA_COLOR_NONE, OBJECT_GAMEPLAY_FIELD_KEEP, D_0500A880); + 4, 0, scale, 1, 3, 80, KAKERA_COLOR_NONE, OBJECT_GAMEPLAY_FIELD_KEEP, gFieldKakeraDL); } Math_Vec3f_Sum(&thisx->world.pos, &D_808B272C, &burstDepthY); func_80033480(globalCtx, &burstDepthY, 70, 4, 110, 160, 1); diff --git a/src/overlays/actors/ovl_Bg_Spot17_Bakudankabe/z_bg_spot17_bakudankabe.c b/src/overlays/actors/ovl_Bg_Spot17_Bakudankabe/z_bg_spot17_bakudankabe.c index 6af480a1da..5816e890f6 100644 --- a/src/overlays/actors/ovl_Bg_Spot17_Bakudankabe/z_bg_spot17_bakudankabe.c +++ b/src/overlays/actors/ovl_Bg_Spot17_Bakudankabe/z_bg_spot17_bakudankabe.c @@ -7,6 +7,7 @@ #include "z_bg_spot17_bakudankabe.h" #include "overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.h" #include "objects/object_spot17_obj/object_spot17_obj.h" +#include "objects/gameplay_field_keep/gameplay_field_keep.h" #define FLAGS 0x00000000 @@ -36,8 +37,6 @@ static InitChainEntry sInitChain[] = { ICHAIN_F32(uncullZoneDownward, 1000, ICHAIN_STOP), }; -extern Gfx D_0500A880[]; - void func_808B6BC0(BgSpot17Bakudankabe* this, GlobalContext* globalCtx) { s32 pad[2]; s32 i; @@ -83,7 +82,7 @@ void func_808B6BC0(BgSpot17Bakudankabe* this, GlobalContext* globalCtx) { rotationSpeed = 33; } EffectSsKakera_Spawn(globalCtx, &burstDepthY, &burstDepthX, &burstDepthY, gravityInfluence, rotationSpeed, 0x1E, - 4, 0, scale, 1, 3, 80, KAKERA_COLOR_NONE, OBJECT_GAMEPLAY_FIELD_KEEP, D_0500A880); + 4, 0, scale, 1, 3, 80, KAKERA_COLOR_NONE, OBJECT_GAMEPLAY_FIELD_KEEP, gFieldKakeraDL); } Math_Vec3f_Copy(&burstDepthY, &this->dyna.actor.world.pos); func_80033480(globalCtx, &burstDepthY, 60.0f, 4, 110, 160, 1); diff --git a/src/overlays/actors/ovl_Bg_Ydan_Hasi/z_bg_ydan_hasi.c b/src/overlays/actors/ovl_Bg_Ydan_Hasi/z_bg_ydan_hasi.c index c800465eaa..b472c26410 100644 --- a/src/overlays/actors/ovl_Bg_Ydan_Hasi/z_bg_ydan_hasi.c +++ b/src/overlays/actors/ovl_Bg_Ydan_Hasi/z_bg_ydan_hasi.c @@ -46,16 +46,16 @@ void BgYdanHasi_Init(Actor* thisx, GlobalContext* globalCtx) { WaterBox* waterBox; Actor_ProcessInitChain(thisx, sInitChain); - this->unk_168 = ((thisx->params >> 8) & 0x3F); + this->type = ((thisx->params >> 8) & 0x3F); thisx->params = thisx->params & 0xFF; waterBox = &globalCtx->colCtx.colHeader->waterBoxes[1]; DynaPolyActor_Init(&this->dyna, DPM_PLAYER); - if (thisx->params == 1) { + if (thisx->params == HASI_WATER) { // Water the moving platform floats on in B1. Never runs in Master Quest waterBox->ySurface = thisx->world.pos.y = thisx->home.pos.y += -5.0f; this->actionFunc = BgYdanHasi_InitWater; } else { - if (thisx->params == 0) { + if (thisx->params == HASI_WATER_BLOCK) { // Moving platform on the water in B1 CollisionHeader_GetVirtual(&gDTSlidingPlatformCol, &colHeader); thisx->scale.z = 0.15f; @@ -67,9 +67,9 @@ void BgYdanHasi_Init(Actor* thisx, GlobalContext* globalCtx) { CollisionHeader_GetVirtual(&gDTRisingPlatformsCol, &colHeader); thisx->draw = NULL; this->actionFunc = BgYdanHasi_SetupThreeBlocks; - Actor_SetFocus(thisx, 40.0f); + Actor_SetFocus(&this->dyna.actor, 40.0f); } - this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, thisx, colHeader); + this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader); } this->timer = 0; } @@ -101,7 +101,7 @@ void BgYdanHasi_UpdateFloatingBlock(BgYdanHasi* this, GlobalContext* globalCtx) } void BgYdanHasi_InitWater(BgYdanHasi* this, GlobalContext* globalCtx) { - if (Flags_GetSwitch(globalCtx, this->unk_168)) { + if (Flags_GetSwitch(globalCtx, this->type)) { this->timer = 600; this->actionFunc = BgYdanHasi_MoveWater; } @@ -111,8 +111,8 @@ void BgYdanHasi_MoveWater(BgYdanHasi* this, GlobalContext* globalCtx) { WaterBox* waterBox; if (this->timer == 0) { - if (Math_StepToF(&this->dyna.actor.world.pos.y, this->dyna.actor.home.pos.y, 1.0f)) { - Flags_UnsetSwitch(globalCtx, this->unk_168); + if (Math_StepToF(&this->dyna.actor.world.pos.y, this->dyna.actor.home.pos.y, 1.0f) != 0) { + Flags_UnsetSwitch(globalCtx, this->type); this->actionFunc = BgYdanHasi_InitWater; } func_8002F948(&this->dyna.actor, NA_SE_EV_WATER_LEVEL_DOWN - SFX_FLAG); @@ -137,7 +137,7 @@ void BgYdanHasi_DecWaterTimer(BgYdanHasi* this, GlobalContext* globalCtx) { } void BgYdanHasi_SetupThreeBlocks(BgYdanHasi* this, GlobalContext* globalCtx) { - if (Flags_GetSwitch(globalCtx, this->unk_168)) { + if (Flags_GetSwitch(globalCtx, this->type)) { this->timer = 260; this->dyna.actor.draw = BgYdanHasi_Draw; this->actionFunc = BgYdanHasi_UpdateThreeBlocks; @@ -151,18 +151,17 @@ void BgYdanHasi_UpdateThreeBlocks(BgYdanHasi* this, GlobalContext* globalCtx) { } if (this->timer == 0) { if (Math_StepToF(&this->dyna.actor.world.pos.y, this->dyna.actor.home.pos.y, 3.0f) != 0) { - Flags_UnsetSwitch(globalCtx, this->unk_168); + Flags_UnsetSwitch(globalCtx, this->type); this->dyna.actor.draw = NULL; this->actionFunc = BgYdanHasi_SetupThreeBlocks; } else { func_8002F948(&this->dyna.actor, NA_SE_EV_ELEVATOR_MOVE - SFX_FLAG); } + } else if (!Math_StepToF(&this->dyna.actor.world.pos.y, this->dyna.actor.home.pos.y + 120.0f, 3.0f)) { + func_8002F948(&this->dyna.actor, NA_SE_EV_ELEVATOR_MOVE - SFX_FLAG); + } else { - if (!Math_StepToF(&this->dyna.actor.world.pos.y, this->dyna.actor.home.pos.y + 120.0f, 3.0f)) { - func_8002F948(&this->dyna.actor, NA_SE_EV_ELEVATOR_MOVE - SFX_FLAG); - } else { - func_8002F994(&this->dyna.actor, this->timer); - } + func_8002F994(&this->dyna.actor, this->timer); } } @@ -176,7 +175,7 @@ void BgYdanHasi_Draw(Actor* thisx, GlobalContext* globalCtx) { static Gfx* dLists[] = { gDTSlidingPlatformDL, gDTWaterPlaneDL, gDTRisingPlatformsDL }; BgYdanHasi* this = THIS; - if (this->dyna.actor.params == 0 || this->dyna.actor.params == 2) { + if (this->dyna.actor.params == HASI_WATER_BLOCK || this->dyna.actor.params == HASI_THREE_BLOCKS) { Gfx_DrawDListOpa(globalCtx, dLists[this->dyna.actor.params]); } else { OPEN_DISPS(globalCtx->state.gfxCtx, "../z_bg_ydan_hasi.c", 577); diff --git a/src/overlays/actors/ovl_Bg_Ydan_Hasi/z_bg_ydan_hasi.h b/src/overlays/actors/ovl_Bg_Ydan_Hasi/z_bg_ydan_hasi.h index 6f5aaaf242..2b0e84b2d1 100644 --- a/src/overlays/actors/ovl_Bg_Ydan_Hasi/z_bg_ydan_hasi.h +++ b/src/overlays/actors/ovl_Bg_Ydan_Hasi/z_bg_ydan_hasi.h @@ -11,11 +11,16 @@ typedef void (*BgYdanHasiActionFunc)(struct BgYdanHasi*, GlobalContext*); typedef struct BgYdanHasi { /* 0x0000 */ DynaPolyActor dyna; /* 0x0164 */ BgYdanHasiActionFunc actionFunc; - /* 0x0168 */ u8 unk_168; - /* 0x0169 */ s8 unk_169; //Unused + /* 0x0168 */ u8 type; /* 0x016A */ s16 timer; //Also used as an offset for the water blocks Y position for a "bobbing" effect } BgYdanHasi; // size = 0x016C +typedef enum { + /* 0 */ HASI_WATER_BLOCK, + /* 1 */ HASI_WATER, + /* 2 */ HASI_THREE_BLOCKS +} HasiType; + extern const ActorInit Bg_Ydan_Hasi_InitVars; #endif diff --git a/src/overlays/actors/ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.c b/src/overlays/actors/ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.c index 38fed82b03..76c3dfc7a7 100644 --- a/src/overlays/actors/ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.c +++ b/src/overlays/actors/ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.c @@ -86,14 +86,14 @@ void BgYdanMaruta_Init(Actor* thisx, GlobalContext* globalCtx) { CollisionHeader* colHeader = NULL; ColliderTrisElementInit* triInit; - Actor_ProcessInitChain(thisx, sInitChain); + Actor_ProcessInitChain(&this->dyna.actor, sInitChain); Collider_InitTris(globalCtx, &this->collider); - Collider_SetTris(globalCtx, &this->collider, thisx, &sTrisInit, this->elements); + Collider_SetTris(globalCtx, &this->collider, &this->dyna.actor, &sTrisInit, this->elements); - this->unk_168 = thisx->params & 0xFFFF; - thisx->params = (thisx->params >> 8) & 0xFF; + this->switchFlag = this->dyna.actor.params & 0xFFFF; + thisx->params = (thisx->params >> 8) & 0xFF; // thisx is required to match here - if (thisx->params == 0) { + if (this->dyna.actor.params == 0) { triInit = &sTrisElementsInit[0]; this->actionFunc = func_808BEFF4; } else { @@ -102,7 +102,7 @@ void BgYdanMaruta_Init(Actor* thisx, GlobalContext* globalCtx) { CollisionHeader_GetVirtual(&gDTFallingLadderCol, &colHeader); this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, thisx, colHeader); thisx->home.pos.y += -280.0f; - if (Flags_GetSwitch(globalCtx, this->unk_168)) { + if (Flags_GetSwitch(globalCtx, this->switchFlag)) { thisx->world.pos.y = thisx->home.pos.y; this->actionFunc = BgYdanMaruta_DoNothing; } else { @@ -110,20 +110,20 @@ void BgYdanMaruta_Init(Actor* thisx, GlobalContext* globalCtx) { } } - sinRotY = Math_SinS(thisx->shape.rot.y); - cosRotY = Math_CosS(thisx->shape.rot.y); + sinRotY = Math_SinS(this->dyna.actor.shape.rot.y); + cosRotY = Math_CosS(this->dyna.actor.shape.rot.y); for (i = 0; i < 3; i++) { - sp4C[i].x = (triInit->dim.vtx[i].x * cosRotY) + thisx->world.pos.x; - sp4C[i].y = triInit->dim.vtx[i].y + thisx->world.pos.y; - sp4C[i].z = thisx->world.pos.z - (triInit->dim.vtx[i].x * sinRotY); + sp4C[i].x = (triInit->dim.vtx[i].x * cosRotY) + this->dyna.actor.world.pos.x; + sp4C[i].y = triInit->dim.vtx[i].y + this->dyna.actor.world.pos.y; + sp4C[i].z = this->dyna.actor.world.pos.z - (triInit->dim.vtx[i].x * sinRotY); } Collider_SetTrisVertices(&this->collider, 0, &sp4C[0], &sp4C[1], &sp4C[2]); - sp4C[1].x = (triInit->dim.vtx[2].x * cosRotY) + thisx->world.pos.x; - sp4C[1].y = triInit->dim.vtx[0].y + thisx->world.pos.y; - sp4C[1].z = thisx->world.pos.z - (triInit->dim.vtx[2].x * sinRotY); + sp4C[1].x = (triInit->dim.vtx[2].x * cosRotY) + this->dyna.actor.world.pos.x; + sp4C[1].y = triInit->dim.vtx[0].y + this->dyna.actor.world.pos.y; + sp4C[1].z = this->dyna.actor.world.pos.z - (triInit->dim.vtx[2].x * sinRotY); Collider_SetTrisVertices(&this->collider, 1, &sp4C[0], &sp4C[2], &sp4C[1]); } @@ -149,7 +149,7 @@ void func_808BEFF4(BgYdanMaruta* this, GlobalContext* globalCtx) { void func_808BF078(BgYdanMaruta* this, GlobalContext* globalCtx) { if (this->collider.base.acFlags & AC_HIT) { this->unk_16A = 20; - Flags_SetSwitch(globalCtx, this->unk_168); + Flags_SetSwitch(globalCtx, this->switchFlag); func_80078884(NA_SE_SY_CORRECT_CHIME); this->actionFunc = func_808BF108; OnePointCutscene_Init(globalCtx, 3010, 50, &this->dyna.actor, MAIN_CAM); diff --git a/src/overlays/actors/ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.h b/src/overlays/actors/ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.h index 29bc4393d3..b9f94fde3c 100644 --- a/src/overlays/actors/ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.h +++ b/src/overlays/actors/ovl_Bg_Ydan_Maruta/z_bg_ydan_maruta.h @@ -11,7 +11,7 @@ typedef void (*BgYdanMarutaActionFunc)(struct BgYdanMaruta*, GlobalContext*); typedef struct BgYdanMaruta { /* 0x0000 */ DynaPolyActor dyna; /* 0x0164 */ BgYdanMarutaActionFunc actionFunc; - /* 0x0168 */ u8 unk_168; + /* 0x0168 */ u8 switchFlag; /* 0x016A */ s16 unk_16A; /* 0x016C */ ColliderTris collider; /* 0x018C */ ColliderTrisElement elements[2]; diff --git a/src/overlays/actors/ovl_Demo_Ec/z_demo_ec.c b/src/overlays/actors/ovl_Demo_Ec/z_demo_ec.c index b77860adf2..057f1a8dc6 100644 --- a/src/overlays/actors/ovl_Demo_Ec/z_demo_ec.c +++ b/src/overlays/actors/ovl_Demo_Ec/z_demo_ec.c @@ -5,8 +5,9 @@ */ #include "z_demo_ec.h" -#include "objects/object_zo/object_zo.h" #include "vt.h" +#include "objects/object_zo/object_zo.h" +#include "objects/object_ec/object_ec.h" #define FLAGS 0x00000010 @@ -91,53 +92,62 @@ static s16 sAnimationObjects[] = { OBJECT_EC, OBJECT_EC, OBJECT_EC, OBJECT_EC, OBJECT_EC, OBJECT_EC, OBJECT_GM, OBJECT_MA2, }; -// skeletons +// skeletons (all from other objects) + +// Object_IN extern FlexSkeletonHeader D_06013B88; + +// Object_TA extern FlexSkeletonHeader D_0600B7B8; + +// Object_FU extern FlexSkeletonHeader D_06006C90; + +// Object_KM1, Object_KW1, Object_BJI, Objct_AHG, Object_BOB, Object_BBA, Object_ANE extern FlexSkeletonHeader D_060000F0; + +// Object_Toryo extern FlexSkeletonHeader D_06007150; + +// Object_Daiku extern FlexSkeletonHeader D_06007958; + +// Object_GE1 extern FlexSkeletonHeader D_06000330; + +// Object_ZO extern FlexSkeletonHeader D_0600BFA8; + +// Object_KZ extern FlexSkeletonHeader D_060086D0; + +// Object_MD extern FlexSkeletonHeader D_06007FB8; + +// Object_Niw extern FlexSkeletonHeader D_06002530; + +// Object_DS2 extern FlexSkeletonHeader D_06004258; + +// Object_OS extern FlexSkeletonHeader D_06004658; + +// Object_Fish extern FlexSkeletonHeader D_060085F8; + +// Object_RS extern FlexSkeletonHeader D_06004868; + +// Object_OF1D_MAP extern FlexSkeletonHeader D_0600FEF0; + +// Object_MA2 extern FlexSkeletonHeader D_06008D90; -// animations -extern AnimationHeader D_0600BD38; -extern AnimationHeader D_060048F4; -extern AnimationHeader D_0600196C; -extern AnimationHeader D_06005670; -extern AnimationHeader D_06005EA8; -extern AnimationHeader D_0600164C; -extern AnimationHeader D_0600164C; -extern AnimationHeader D_0600513C; -extern AnimationHeader D_06002254; -extern AnimationHeader D_0600C918; -extern AnimationHeader D_06006C40; -extern AnimationHeader D_060095DC; -extern AnimationHeader D_06009BB4; -extern AnimationHeader D_0600A07C; -extern AnimationHeader D_0600A474; -extern AnimationHeader D_06000CD8; -extern AnimationHeader D_0600AFE0; -extern AnimationHeader D_0600AFE0; -extern AnimationHeader D_06002FA0; -extern AnimationHeader D_06003A98; -extern AnimationHeader D_06002FA0; +// animations from other objects extern AnimationHeader D_060002B8; -extern AnimationHeader D_06009EE0; -extern AnimationHeader D_06006930; -extern AnimationHeader D_06006220; -extern AnimationHeader D_06008D1C; -extern AnimationHeader D_06009234; +extern AnimationHeader D_06009EE0; // Object MA2 extern AnimationHeader D_06004390; extern AnimationHeader D_060076C0; extern AnimationHeader D_06005F20; @@ -368,7 +378,7 @@ void DemoEc_InitIngo(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseDrawObject(this, globalCtx); DemoEc_InitSkelAnime(this, globalCtx, &D_06013B88); DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_060048F4, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcIngoAnim, 0, 0.0f, false); func_8096D64C(this, globalCtx); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); this->updateMode = EC_UPDATE_INGO; @@ -389,7 +399,7 @@ void DemoEc_InitTalon(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseDrawObject(this, globalCtx); DemoEc_InitSkelAnime(this, globalCtx, &D_0600B7B8); DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_0600BD38, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcTalonAnim, 0, 0.0f, false); func_8096D64C(this, globalCtx); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); this->updateMode = EC_UPDATE_TALON; @@ -410,7 +420,7 @@ void DemoEc_InitWindmillMan(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseDrawObject(this, globalCtx); DemoEc_InitSkelAnime(this, globalCtx, &D_06006C90); DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_0600196C, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcWindmillManAnim, 0, 0.0f, false); func_8096D5D4(this, globalCtx); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); this->updateMode = EC_UPDATE_WINDMILL_MAN; @@ -431,7 +441,7 @@ void DemoEc_InitKokiriBoy(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseDrawObject(this, globalCtx); DemoEc_InitSkelAnime(this, globalCtx, &D_060000F0); DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_06005670, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcKokiriAnim, 0, 0.0f, false); func_8096D5D4(this, globalCtx); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); this->updateMode = EC_UPDATE_KOKIRI_BOY; @@ -442,7 +452,7 @@ void DemoEc_InitDancingKokiriBoy(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseDrawObject(this, globalCtx); DemoEc_InitSkelAnime(this, globalCtx, &D_060000F0); DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_0600513C, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcDancingKokiriAnim, 0, 0.0f, false); func_8096D5D4(this, globalCtx); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); this->updateMode = EC_UPDATE_DANCING_KOKIRI_BOY; @@ -470,7 +480,7 @@ void DemoEc_InitKokiriGirl(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseDrawObject(this, globalCtx); DemoEc_InitSkelAnime(this, globalCtx, &D_060000F0); DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_06005670, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcKokiriAnim, 0, 0.0f, false); func_8096D5D4(this, globalCtx); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); this->updateMode = EC_UPDATE_KOKIRI_GIRL; @@ -481,7 +491,7 @@ void DemoEc_InitDancingKokiriGirl(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseDrawObject(this, globalCtx); DemoEc_InitSkelAnime(this, globalCtx, &D_060000F0); DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_0600513C, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcDancingKokiriAnim, 0, 0.0f, false); func_8096D5D4(this, globalCtx); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); this->updateMode = EC_UPDATE_DANCING_KOKIRI_GIRL; @@ -512,7 +522,7 @@ void DemoEc_InitOldMan(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseDrawObject(this, globalCtx); DemoEc_InitSkelAnime(this, globalCtx, &D_060000F0); DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_06005EA8, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcOldManAnim, 0, 0.0f, false); func_8096D5D4(this, globalCtx); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); this->updateMode = EC_UPDATE_OLD_MAN; @@ -540,7 +550,7 @@ void DemoEc_InitBeardedMan(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseDrawObject(this, globalCtx); DemoEc_InitSkelAnime(this, globalCtx, &D_060000F0); DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_06005EA8, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcOldManAnim, 0, 0.0f, false); func_8096D5D4(this, globalCtx); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); this->updateMode = EC_UPDATE_BEARDED_MAN; @@ -568,7 +578,7 @@ void DemoEc_InitWoman(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseDrawObject(this, globalCtx); DemoEc_InitSkelAnime(this, globalCtx, &D_060000F0); DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_06005EA8, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcOldManAnim, 0, 0.0f, false); func_8096D5D4(this, globalCtx); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); this->updateMode = EC_UPDATE_WOMAN; @@ -594,7 +604,7 @@ void DemoEc_InitOldWoman(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseDrawObject(this, globalCtx); DemoEc_InitSkelAnime(this, globalCtx, &D_060000F0); DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_06005EA8, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcOldManAnim, 0, 0.0f, false); func_8096D5D4(this, globalCtx); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); this->updateMode = EC_UPDATE_OLD_WOMAN; @@ -615,7 +625,7 @@ void DemoEc_InitBossCarpenter(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseDrawObject(this, globalCtx); DemoEc_InitSkelAnime(this, globalCtx, &D_06007150); DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_0600164C, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcCarpenterAnim, 0, 0.0f, false); func_8096D5D4(this, globalCtx); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); this->updateMode = EC_UPDATE_BOSS_CARPENTER; @@ -636,7 +646,7 @@ void DemoEc_InitCarpenter(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseDrawObject(this, globalCtx); DemoEc_InitSkelAnime(this, globalCtx, &D_06007958); DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_0600164C, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcCarpenterAnim, 0, 0.0f, false); func_8096D5D4(this, globalCtx); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); this->updateMode = EC_UPDATE_CARPENTER; @@ -709,7 +719,7 @@ void DemoEc_InitGerudo(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseDrawObject(this, globalCtx); DemoEc_InitSkelAnime(this, globalCtx, &D_06000330); DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_06002254, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcGerudoAnim, 0, 0.0f, false); func_8096D5D4(this, globalCtx); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); this->updateMode = EC_UPDATE_GERUDO; @@ -760,7 +770,7 @@ void DemoEc_InitDancingZora(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseDrawObject(this, globalCtx); DemoEc_InitSkelAnime(this, globalCtx, &gZoraSkel); DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_0600C918, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcDancingZoraAnim, 0, 0.0f, false); func_8096D5D4(this, globalCtx); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); this->updateMode = EC_UPDATE_DANCING_ZORA; @@ -786,7 +796,7 @@ void DemoEc_InitKingZora(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseDrawObject(this, globalCtx); DemoEc_InitSkelAnime(this, globalCtx, &D_060086D0); DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_06006C40, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcKingZoraAnim, 0, 0.0f, false); func_8096D5D4(this, globalCtx); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); this->updateMode = EC_UPDATE_KING_ZORA; @@ -806,13 +816,13 @@ void func_8096F1D4(DemoEc* this) { void func_8096F224(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_06006930, 2, -8.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcAnim_006930, 2, -8.0f, false); this->updateMode = EC_UPDATE_17; } void func_8096F26C(DemoEc* this, s32 arg1) { if (arg1 != 0) { - DemoEc_ChangeAnimation(this, &D_06006220, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcAnim_006220, 0, 0.0f, false); this->updateMode = EC_UPDATE_18; } } @@ -871,7 +881,7 @@ void DemoEc_InitMido(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseDrawObject(this, globalCtx); DemoEc_InitSkelAnime(this, globalCtx, &D_06007FB8); DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_060095DC, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcMidoAnim, 0, 0.0f, false); func_8096D5D4(this, globalCtx); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); this->updateMode = EC_UPDATE_MIDO; @@ -881,13 +891,13 @@ void DemoEc_InitMido(DemoEc* this, GlobalContext* globalCtx) { void func_8096F4FC(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_06008D1C, 2, -8.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcAnim_008D1C, 2, -8.0f, false); this->updateMode = EC_UPDATE_20; } void func_8096F544(DemoEc* this, s32 changeAnim) { if (changeAnim) { - DemoEc_ChangeAnimation(this, &D_06009234, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcAnim_009234, 0, 0.0f, false); } } @@ -940,11 +950,11 @@ void DemoEc_InitCucco(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseAnimationObject(this, globalCtx); if (this->actor.params == 22) { - animation = &D_06009BB4; + animation = &gDemoEcJumpingCuccoAnim; } else if (this->actor.params == 23) { - animation = &D_0600A07C; + animation = &gDemoEcJumpingCucco2Anim; } else { - animation = &D_0600A474; + animation = &gDemoEcWalkingCuccoAnim; } DemoEc_ChangeAnimation(this, animation, 0, 0.0f, false); @@ -968,7 +978,7 @@ void DemoEc_InitCuccoLady(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseDrawObject(this, globalCtx); DemoEc_InitSkelAnime(this, globalCtx, &D_060000F0); DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_06000CD8, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcCuccoLadyAnim, 0, 0.0f, false); func_8096D5D4(this, globalCtx); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); this->updateMode = EC_UPDATE_CUCCO_LADY; @@ -994,7 +1004,7 @@ void DemoEc_InitPotionShopOwner(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseDrawObject(this, globalCtx); DemoEc_InitSkelAnime(this, globalCtx, &D_06004258); DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_0600AFE0, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcPotionShopOwnerAnim, 0, 0.0f, false); func_8096D5D4(this, globalCtx); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); this->updateMode = EC_UPDATE_POTION_SHOP_OWNER; @@ -1020,7 +1030,7 @@ void DemoEc_InitMaskShopOwner(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseDrawObject(this, globalCtx); DemoEc_InitSkelAnime(this, globalCtx, &D_06004658); DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_0600AFE0, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcPotionShopOwnerAnim, 0, 0.0f, false); func_8096D5D4(this, globalCtx); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); this->updateMode = EC_UPDATE_MASK_SHOP_OWNER; @@ -1041,7 +1051,7 @@ void DemoEc_InitFishingMan(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseDrawObject(this, globalCtx); DemoEc_InitSkelAnime(this, globalCtx, &D_060085F8); DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_0600AFE0, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcPotionShopOwnerAnim, 0, 0.0f, false); func_8096D5D4(this, globalCtx); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); this->updateMode = EC_UPDATE_FISHING_MAN; @@ -1076,7 +1086,7 @@ void DemoEc_InitBombchuShopOwner(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseDrawObject(this, globalCtx); DemoEc_InitSkelAnime(this, globalCtx, &D_06004868); DemoEc_UseAnimationObject(this, globalCtx); - DemoEc_ChangeAnimation(this, &D_0600AFE0, 0, 0.0f, false); + DemoEc_ChangeAnimation(this, &gDemoEcPotionShopOwnerAnim, 0, 0.0f, false); func_8096D5D4(this, globalCtx); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); this->updateMode = EC_UPDATE_BOMBCHU_SHOP_OWNER; @@ -1108,13 +1118,13 @@ void DemoEc_InitGorons(DemoEc* this, GlobalContext* globalCtx) { DemoEc_UseAnimationObject(this, globalCtx); if (this->actor.params == 30) { - animation = &D_06002FA0; + animation = &gDemoEcGoronAnim; goronScale = 1.0f; } else if (this->actor.params == 31) { - animation = &D_06003A98; + animation = &gDemoEcGoron2Anim; goronScale = 1.0f; } else if (this->actor.params == 32) { - animation = &D_06002FA0; + animation = &gDemoEcGoronAnim; goronScale = 15.0f; } else { goronScale = 5.0f; diff --git a/src/overlays/actors/ovl_Demo_Tre_Lgt/z_demo_tre_lgt.c b/src/overlays/actors/ovl_Demo_Tre_Lgt/z_demo_tre_lgt.c index 11b985164f..39df520dc7 100644 --- a/src/overlays/actors/ovl_Demo_Tre_Lgt/z_demo_tre_lgt.c +++ b/src/overlays/actors/ovl_Demo_Tre_Lgt/z_demo_tre_lgt.c @@ -1,5 +1,6 @@ #include "z_demo_tre_lgt.h" #include "overlays/actors/ovl_En_Box/z_en_box.h" +#include "objects/object_box/object_box.h" #define FLAGS 0x00000010 @@ -15,8 +16,6 @@ void func_80993754(DemoTreLgt* this); void func_8099375C(DemoTreLgt* this, GlobalContext* globalCtx); void func_809937B4(DemoTreLgt* this, GlobalContext* globalCtx, f32 currentFrame); -extern SkelCurveLimbList D_06005EB8; - typedef struct { /* 0x00 */ f32 startFrame; /* 0x04 */ f32 endFrame; @@ -41,7 +40,7 @@ const ActorInit Demo_Tre_Lgt_InitVars = { (ActorFunc)DemoTreLgt_Draw, }; -static TransformUpdateIndex* sTransformUpdIdx[] = { 0x06004B60, 0x06004F70 }; +static TransformUpdateIndex* sTransformUpdIdx[] = { &gTreasureChestCurveAnim_4B60, &gTreasureChestCurveAnim_4F70 }; static DemoTreLgtActionFunc sActionFuncs[] = { func_8099375C, @@ -51,7 +50,8 @@ static DemoTreLgtActionFunc sActionFuncs[] = { void DemoTreLgt_Init(Actor* thisx, GlobalContext* globalCtx) { DemoTreLgt* this = THIS; - if (!SkelCurve_Init(globalCtx, &this->skelCurve, &D_06005EB8, sTransformUpdIdx[0])) { + if (!SkelCurve_Init(globalCtx, &this->skelCurve, &gTreasureChestCurveSkel, sTransformUpdIdx[0])) { + // Demo_Tre_Lgt_Actor_ct (); Construct failed osSyncPrintf("Demo_Tre_Lgt_Actor_ct();コンストラクト失敗\n"); } diff --git a/src/overlays/actors/ovl_Door_Ana/z_door_ana.c b/src/overlays/actors/ovl_Door_Ana/z_door_ana.c index afe992c09b..df5188bde5 100644 --- a/src/overlays/actors/ovl_Door_Ana/z_door_ana.c +++ b/src/overlays/actors/ovl_Door_Ana/z_door_ana.c @@ -5,6 +5,7 @@ */ #include "z_door_ana.h" +#include "objects/gameplay_field_keep/gameplay_field_keep.h" #define FLAGS 0x02000000 @@ -17,7 +18,7 @@ void DoorAna_Draw(Actor* thisx, GlobalContext* globalCtx); void DoorAna_WaitClosed(DoorAna* this, GlobalContext* globalCtx); void DoorAna_WaitOpen(DoorAna* this, GlobalContext* globalCtx); -void DoorAna_GrabLink(DoorAna* this, GlobalContext* globalCtx); +void DoorAna_GrabPlayer(DoorAna* this, GlobalContext* globalCtx); const ActorInit Door_Ana_InitVars = { ACTOR_DOOR_ANA, @@ -57,8 +58,6 @@ static s16 entrances[] = { 0x05B0, 0x05B4, 0x05B8, 0x05BC, 0x05C0, 0x05C4, 0x05FC, }; -extern Gfx D_05001390[]; - void DoorAna_SetupAction(DoorAna* this, DoorAnaActionFunc actionFunc) { this->actionFunc = actionFunc; } @@ -140,7 +139,7 @@ void DoorAna_WaitOpen(DoorAna* this, GlobalContext* globalCtx) { destinationIdx = this->actor.home.rot.z + 1; } globalCtx->nextEntranceIndex = entrances[destinationIdx]; - DoorAna_SetupAction(this, DoorAna_GrabLink); + DoorAna_SetupAction(this, DoorAna_GrabPlayer); } else { if (!Player_InCsMode(globalCtx) && !(player->stateFlags1 & 0x8800000) && this->actor.xzDistToPlayer <= 15.0f && -50.0f <= this->actor.yDistToPlayer && @@ -156,7 +155,7 @@ void DoorAna_WaitOpen(DoorAna* this, GlobalContext* globalCtx) { } // update function for after the player has triggered the grotto -void DoorAna_GrabLink(DoorAna* this, GlobalContext* globalCtx) { +void DoorAna_GrabPlayer(DoorAna* this, GlobalContext* globalCtx) { Player* player; if (this->actor.yDistToPlayer <= 0.0f && 15.0f < this->actor.xzDistToPlayer) { @@ -180,7 +179,7 @@ void DoorAna_Draw(Actor* thisx, GlobalContext* globalCtx) { func_80093D84(globalCtx->state.gfxCtx); gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_door_ana.c", 446), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); - gSPDisplayList(POLY_XLU_DISP++, D_05001390); + gSPDisplayList(POLY_XLU_DISP++, gGrottoDL); CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_door_ana.c", 449); } diff --git a/src/overlays/actors/ovl_Door_Shutter/z_door_shutter.c b/src/overlays/actors/ovl_Door_Shutter/z_door_shutter.c index 7b6061f2bd..dc8fe5092c 100644 --- a/src/overlays/actors/ovl_Door_Shutter/z_door_shutter.c +++ b/src/overlays/actors/ovl_Door_Shutter/z_door_shutter.c @@ -7,6 +7,7 @@ #include "z_door_shutter.h" #include "objects/object_demo_kekkai/object_demo_kekkai.h" #include "overlays/actors/ovl_Boss_Goma/z_boss_goma.h" +#include "objects/object_ydan_objects/object_ydan_objects.h" #include "objects/object_gnd/object_gnd.h" #include "objects/object_goma/object_goma.h" #include "objects/gameplay_keep/gameplay_keep.h" @@ -86,8 +87,8 @@ typedef struct { } ShutterInfo; static ShutterInfo D_80998134[] = { - { 0x060067A0, gDoorMetalBarsDL, 130, 12, 20, 15 }, - { 0x06006910, gDoorMetalBarsDL, 130, 12, 20, 15 }, + { gDTDungeonDoor1DL, gDoorMetalBarsDL, 130, 12, 20, 15 }, + { gDTDungeonDoor2DL, gDoorMetalBarsDL, 130, 12, 20, 15 }, { 0x060000C0, 0x060001F0, 240, 14, 70, 15 }, { 0x06000590, 0x06006460, 0, 110, 50, 15 }, { gPhantomGanonBarsDL, NULL, 130, 12, 50, 15 }, diff --git a/src/overlays/actors/ovl_En_Box/z_en_box.c b/src/overlays/actors/ovl_En_Box/z_en_box.c index e4ab6667ed..28fa27ae0f 100644 --- a/src/overlays/actors/ovl_En_Box/z_en_box.c +++ b/src/overlays/actors/ovl_En_Box/z_en_box.c @@ -1,4 +1,5 @@ #include "z_en_box.h" +#include "objects/object_box/object_box.h" #define FLAGS 0x00000000 @@ -50,16 +51,6 @@ void EnBox_AppearAnimation(EnBox*, GlobalContext*); void EnBox_WaitOpen(EnBox*, GlobalContext*); void EnBox_Open(EnBox*, GlobalContext*); -extern AnimationHeader D_06000128; -extern AnimationHeader D_0600024C; -extern AnimationHeader D_0600043C; -extern Gfx D_060006F0[]; // regular chest base -extern Gfx D_06000AE8[]; // boss key chest base -extern Gfx D_060010C0[]; // regular chest top -extern Gfx D_06001678[]; // boss key chest top -extern SkeletonHeader D_060047D8; -extern CollisionHeader D_06005FC8; - const ActorInit En_Box_InitVars = { ACTOR_EN_BOX, ACTORCAT_CHEST, @@ -72,13 +63,14 @@ const ActorInit En_Box_InitVars = { (ActorFunc)EnBox_Draw, }; -static AnimationHeader* D_809CA800[4] = { &D_0600024C, &D_06000128, &D_0600043C, &D_0600043C }; +static AnimationHeader* sAnimations[4] = { &gTreasureChestAnim_00024C, &gTreasureChestAnim_000128, + &gTreasureChestAnim_00043C, &gTreasureChestAnim_00043C }; static InitChainEntry sInitChain[] = { ICHAIN_U8(targetMode, 0, ICHAIN_STOP), }; -static s32 sUnused; +static UNK_TYPE sUnused; void EnBox_SetupAction(EnBox* this, EnBoxActionFunc actionFunc) { this->actionFunc = actionFunc; @@ -107,13 +99,13 @@ void EnBox_Init(Actor* thisx, GlobalContext* globalCtx) { f32 endFrame; animFrameStart = 0.0f; - anim = D_809CA800[((void)0, gSaveContext.linkAge)]; + anim = sAnimations[((void)0, gSaveContext.linkAge)]; colHeader = NULL; endFrame = Animation_GetLastFrame(anim); Actor_ProcessInitChain(&this->dyna.actor, sInitChain); DynaPolyActor_Init(&this->dyna, DPM_UNK); - CollisionHeader_GetVirtual(&D_06005FC8, &colHeader); + CollisionHeader_GetVirtual(&gTreasureChestCol, &colHeader); this->dyna.bgId = DynaPoly_SetBgActor(globalCtx2, &globalCtx2->colCtx.dyna, &this->dyna.actor, colHeader); func_8003ECA8(globalCtx2, &globalCtx2->colCtx.dyna, this->dyna.bgId); @@ -179,7 +171,7 @@ void EnBox_Init(Actor* thisx, GlobalContext* globalCtx) { this->dyna.actor.world.rot.y += 0x8000; this->dyna.actor.home.rot.z = this->dyna.actor.world.rot.z = this->dyna.actor.shape.rot.z = 0; - SkelAnime_Init(globalCtx2, &this->skelanime, &D_060047D8, anim, this->jointTable, this->morphTable, 5); + SkelAnime_Init(globalCtx2, &this->skelanime, &gTreasureChestSkel, anim, this->jointTable, this->morphTable, 5); Animation_Change(&this->skelanime, anim, 1.5f, animFrameStart, endFrame, ANIMMODE_ONCE, 0.0f); switch (this->type) { @@ -407,7 +399,7 @@ void EnBox_WaitOpen(EnBox* this, GlobalContext* globalCtx) { this->movementFlags |= ENBOX_MOVE_IMMOBILE; if (this->unk_1F4 != 0) { // unk_1F4 is modified by player code linkAge = gSaveContext.linkAge; - anim = D_809CA800[(this->unk_1F4 < 0 ? 2 : 0) + linkAge]; + anim = sAnimations[(this->unk_1F4 < 0 ? 2 : 0) + linkAge]; frameCount = Animation_GetLastFrame(anim); Animation_Change(&this->skelanime, anim, 1.5f, 0, frameCount, ANIMMODE_ONCE, 0.0f); EnBox_SetupAction(this, EnBox_Open); @@ -558,17 +550,17 @@ void EnBox_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Ve gSPMatrix((*gfx)++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_box.c", 1492), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); if (this->type != ENBOX_TYPE_DECORATED_BIG) { - gSPDisplayList((*gfx)++, D_060006F0); + gSPDisplayList((*gfx)++, gTreasureChestChestFrontDL); } else { - gSPDisplayList((*gfx)++, D_06000AE8); + gSPDisplayList((*gfx)++, gTreasureChestBossKeyChestFrontDL); } } else if (limbIndex == 3) { gSPMatrix((*gfx)++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_box.c", 1502), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); if (this->type != ENBOX_TYPE_DECORATED_BIG) { - gSPDisplayList((*gfx)++, D_060010C0); + gSPDisplayList((*gfx)++, gTreasureChestChestSideAndLidDL); } else { - gSPDisplayList((*gfx)++, D_06001678); + gSPDisplayList((*gfx)++, gTreasureChestBossKeyChestSideAndTopDL); } } } diff --git a/src/overlays/actors/ovl_En_Butte/z_en_butte.c b/src/overlays/actors/ovl_En_Butte/z_en_butte.c index ddd62502c6..02f8700157 100644 --- a/src/overlays/actors/ovl_En_Butte/z_en_butte.c +++ b/src/overlays/actors/ovl_En_Butte/z_en_butte.c @@ -7,6 +7,7 @@ #include "z_en_butte.h" #include "overlays/actors/ovl_En_Elf/z_en_elf.h" #include "objects/gameplay_keep/gameplay_keep.h" +#include "objects/gameplay_field_keep/gameplay_field_keep.h" #define FLAGS 0x00000000 @@ -82,9 +83,6 @@ static EnButteFlightParams sFollowLinkParams[] = { { 10, 20, 2.4f, 0.3f, 1.0f, 0 }, }; -extern AnimationHeader D_05002470; -extern SkeletonHeader D_050036F0; - void EnButte_SelectFlightParams(EnButte* this, EnButteFlightParams* flightParams) { if (this->flightParamsIdx == 0) { if (Rand_ZeroOne() < 0.6f) { @@ -162,14 +160,15 @@ void EnButte_Init(Actor* thisx, GlobalContext* globalCtx) { this->actor.uncullZoneScale = 200.0f; } - SkelAnime_Init(globalCtx, &this->skelAnime, &D_050036F0, &D_05002470, this->jointTable, this->morphTable, 8); + SkelAnime_Init(globalCtx, &this->skelAnime, &gButterflySkel, &gButterflyAnim, this->jointTable, this->morphTable, + 8); Collider_InitJntSph(globalCtx, &this->collider); Collider_SetJntSph(globalCtx, &this->collider, &this->actor, &sColliderInit, this->colliderItems); this->actor.colChkInfo.mass = 0; this->unk_25C = Rand_ZeroOne() * 0xFFFF; this->unk_25E = Rand_ZeroOne() * 0xFFFF; this->unk_260 = Rand_ZeroOne() * 0xFFFF; - Animation_Change(&this->skelAnime, &D_05002470, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP_INTERP, 0.0f); + Animation_Change(&this->skelAnime, &gButterflyAnim, 1.0f, 0.0f, 0.0f, ANIMMODE_LOOP_INTERP, 0.0f); EnButte_SetupFlyAround(this); this->actor.shape.rot.x -= 0x2320; this->drawSkelAnime = true; diff --git a/src/overlays/actors/ovl_En_Cs/z_en_cs.c b/src/overlays/actors/ovl_En_Cs/z_en_cs.c index 7155b3342d..260fdfe76e 100644 --- a/src/overlays/actors/ovl_En_Cs/z_en_cs.c +++ b/src/overlays/actors/ovl_En_Cs/z_en_cs.c @@ -1,4 +1,5 @@ #include "z_en_cs.h" +#include "objects/object_link_child/object_link_child.h" #define FLAGS 0x00000009 @@ -16,7 +17,6 @@ s32 EnCs_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, void EnCs_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3s* rot, void* thisx); extern FlexSkeletonHeader D_06008540; // Graveyard boy skeleton -extern Gfx D_0602AF70[]; // Spooky Mask in Child Link's object const ActorInit En_Cs_InitVars = { ACTOR_EN_CS, @@ -439,7 +439,7 @@ void EnCs_Draw(Actor* thisx, GlobalContext* globalCtx) { mtx = Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_cs.c", 1000); gSPSegment(POLY_OPA_DISP++, 0x06, globalCtx->objectCtx.status[childLinkObjectIndex].segment); gSPSegment(POLY_OPA_DISP++, 0x0D, mtx - 7); - gSPDisplayList(POLY_OPA_DISP++, D_0602AF70); + gSPDisplayList(POLY_OPA_DISP++, gLinkChildSpookyMaskDL); gSPSegment(POLY_OPA_DISP++, 0x06, globalCtx->objectCtx.status[this->actor.objBankIndex].segment); } } diff --git a/src/overlays/actors/ovl_En_Door/z_en_door.c b/src/overlays/actors/ovl_En_Door/z_en_door.c index 1bd7aa1193..36f2d8a125 100644 --- a/src/overlays/actors/ovl_En_Door/z_en_door.c +++ b/src/overlays/actors/ovl_En_Door/z_en_door.c @@ -6,6 +6,7 @@ #include "z_en_door.h" #include "objects/gameplay_keep/gameplay_keep.h" +#include "objects/gameplay_field_keep/gameplay_field_keep.h" #include "objects/object_hidan_objects/object_hidan_objects.h" #include "objects/object_mizu_objects/object_mizu_objects.h" @@ -73,7 +74,7 @@ static Gfx* D_809FCEE4[5][2] = { { gFireTempleDoorWithHandleFrontDL, gFireTempleDoorWithHandleBackDL }, { gWaterTempleDoorLeftDL, gWaterTempleDoorRightDL }, { 0x060013B8, 0x06001420 }, - { 0x050047A0, 0x05004978 }, + { gFieldDoor1DL, gFieldDoor2DL }, }; void EnDoor_Init(Actor* thisx, GlobalContext* globalCtx2) { diff --git a/src/overlays/actors/ovl_En_Fr/z_en_fr.c b/src/overlays/actors/ovl_En_Fr/z_en_fr.c index d9035b00cb..8bff9e08f7 100644 --- a/src/overlays/actors/ovl_En_Fr/z_en_fr.c +++ b/src/overlays/actors/ovl_En_Fr/z_en_fr.c @@ -1,4 +1,5 @@ #include "z_en_fr.h" +#include "objects/gameplay_field_keep/gameplay_field_keep.h" #include "vt.h" #define FLAGS 0x02000019 @@ -51,8 +52,6 @@ void EnFr_SetIdle(EnFr* this, GlobalContext* globalCtx); extern FlexSkeletonHeader D_0600B498; // Frog extern AnimationHeader D_06001534; // Frog -extern SkeletonHeader D_050036F0; // Butterfly -extern AnimationHeader D_05002470; // Butterfly extern AnimationHeader D_060007BC; // Frog Jumping extern AnimationHeader D_060011C0; // Frog Landing @@ -161,8 +160,7 @@ static s16 sTimerFrogSong[] = { 40, 20, 15, 12, 12, }; -// static InitChainEntry sInitChain[] -InitChainEntry D_80A1D0BC[] = { +static InitChainEntry sInitChain[] = { ICHAIN_U8(targetMode, 2, ICHAIN_CONTINUE), ICHAIN_F32(targetArrowOffset, 30, ICHAIN_STOP), }; @@ -278,13 +276,13 @@ void EnFr_Update(Actor* thisx, GlobalContext* globalCtx) { this->actor.flags &= ~0x10; frogIndex = this->actor.params - 1; sEnFrPointers.frogs[frogIndex] = this; - Actor_ProcessInitChain(&this->actor, D_80A1D0BC); + Actor_ProcessInitChain(&this->actor, sInitChain); // frog SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_0600B498, &D_06001534, this->jointTable, this->morphTable, 24); // butterfly - SkelAnime_Init(globalCtx, &this->skelAnimeButterfly, &D_050036F0, &D_05002470, this->jointTableButterfly, - this->morphTableButterfly, 8); + SkelAnime_Init(globalCtx, &this->skelAnimeButterfly, &gButterflySkel, &gButterflyAnim, + this->jointTableButterfly, this->morphTableButterfly, 8); // When playing the song for the HP, the frog with the next note and the butterfly turns on its lightsource this->lightNode = LightContext_InsertLight(globalCtx, &globalCtx->lightCtx, &this->lightInfo); Lights_PointNoGlowSetInfo(&this->lightInfo, this->actor.home.pos.x, this->actor.home.pos.y, diff --git a/src/overlays/actors/ovl_En_Heishi1/z_en_heishi1.c b/src/overlays/actors/ovl_En_Heishi1/z_en_heishi1.c index d38f1ef5f7..be22d6706c 100644 --- a/src/overlays/actors/ovl_En_Heishi1/z_en_heishi1.c +++ b/src/overlays/actors/ovl_En_Heishi1/z_en_heishi1.c @@ -5,6 +5,7 @@ */ #include "z_en_heishi1.h" +#include "objects/object_sd/object_sd.h" #include "vt.h" #define FLAGS 0x00000010 @@ -64,10 +65,6 @@ static s32 sCamDataIdxs[] = { static s16 sWaypoints[] = { 0, 4, 1, 5, 2, 6, 3, 7 }; -extern AnimationHeader D_06005880; -extern AnimationHeader D_06005C30; -extern SkeletonHeader D_0600BAC8; - void EnHeishi1_Init(Actor* thisx, GlobalContext* globalCtx) { s32 pad; EnHeishi1* this = THIS; @@ -76,7 +73,8 @@ void EnHeishi1_Init(Actor* thisx, GlobalContext* globalCtx) { u16 time; Actor_SetScale(&this->actor, 0.01f); - SkelAnime_Init(globalCtx, &this->skelAnime, &D_0600BAC8, &D_06005C30, this->jointTable, this->morphTable, 17); + SkelAnime_Init(globalCtx, &this->skelAnime, &gEnHeishiSkel, &gEnHeishiIdleAnim, this->jointTable, this->morphTable, + 17); this->type = (this->actor.params >> 8) & 0xFF; this->path = this->actor.params & 0xFF; @@ -139,9 +137,9 @@ void EnHeishi1_Destroy(Actor* thisx, GlobalContext* globalCtx) { } void EnHeishi1_SetupWalk(EnHeishi1* this, GlobalContext* globalCtx) { - f32 frameCount = Animation_GetLastFrame(&D_06005880); + f32 frameCount = Animation_GetLastFrame(&gEnHeishiWalkAnim); - Animation_Change(&this->skelAnime, &D_06005880, this->animSpeed, 0.0f, (s16)frameCount, ANIMMODE_LOOP, + Animation_Change(&this->skelAnime, &gEnHeishiWalkAnim, this->animSpeed, 0.0f, (s16)frameCount, ANIMMODE_LOOP, this->transitionRate); this->bodyTurnSpeed = 0.0f; this->moveSpeed = 0.0f; @@ -223,9 +221,9 @@ void EnHeishi1_Walk(EnHeishi1* this, GlobalContext* globalCtx) { } void EnHeishi1_SetupMoveToLink(EnHeishi1* this, GlobalContext* globalCtx) { - f32 frameCount = Animation_GetLastFrame(&D_06005880); + f32 frameCount = Animation_GetLastFrame(&gEnHeishiWalkAnim); - Animation_Change(&this->skelAnime, &D_06005880, 3.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -3.0f); + Animation_Change(&this->skelAnime, &gEnHeishiWalkAnim, 3.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -3.0f); this->bodyTurnSpeed = 0.0f; this->moveSpeed = 0.0f; func_8010B680(globalCtx, 0x702D, &this->actor); @@ -251,9 +249,9 @@ void EnHeishi1_MoveToLink(EnHeishi1* this, GlobalContext* globalCtx) { void EnHeishi1_SetupWait(EnHeishi1* this, GlobalContext* globalCtx) { s16 rand; - f32 frameCount = Animation_GetLastFrame(&D_06005C30); + f32 frameCount = Animation_GetLastFrame(&gEnHeishiIdleAnim); - Animation_Change(&this->skelAnime, &D_06005C30, this->animSpeed, 0.0f, (s16)frameCount, ANIMMODE_LOOP, + Animation_Change(&this->skelAnime, &gEnHeishiIdleAnim, this->animSpeed, 0.0f, (s16)frameCount, ANIMMODE_LOOP, this->transitionRate); this->headBehaviorDecided = false; this->headDirection = Rand_ZeroFloat(1.99f); @@ -321,9 +319,9 @@ void EnHeishi1_Wait(EnHeishi1* this, GlobalContext* globalCtx) { } void EnHeishi1_SetupTurnTowardLink(EnHeishi1* this, GlobalContext* globalCtx) { - f32 frameCount = Animation_GetLastFrame(&D_06005C30); + f32 frameCount = Animation_GetLastFrame(&gEnHeishiIdleAnim); - Animation_Change(&this->skelAnime, &D_06005C30, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); + Animation_Change(&this->skelAnime, &gEnHeishiIdleAnim, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); this->kickTimer = 30; this->actionFunc = EnHeishi1_TurnTowardLink; } @@ -343,9 +341,9 @@ void EnHeishi1_TurnTowardLink(EnHeishi1* this, GlobalContext* globalCtx) { } void EnHeishi1_SetupKick(EnHeishi1* this, GlobalContext* globalCtx) { - f32 frameCount = Animation_GetLastFrame(&D_06005C30); + f32 frameCount = Animation_GetLastFrame(&gEnHeishiIdleAnim); - Animation_Change(&this->skelAnime, &D_06005C30, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); + Animation_Change(&this->skelAnime, &gEnHeishiIdleAnim, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); this->actionFunc = EnHeishi1_Kick; } @@ -369,9 +367,9 @@ void EnHeishi1_Kick(EnHeishi1* this, GlobalContext* globalCtx) { } void EnHeishi1_SetupWaitNight(EnHeishi1* this, GlobalContext* globalCtx) { - f32 frameCount = Animation_GetLastFrame(&D_06005C30); + f32 frameCount = Animation_GetLastFrame(&gEnHeishiIdleAnim); - Animation_Change(&this->skelAnime, &D_06005C30, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); + Animation_Change(&this->skelAnime, &gEnHeishiIdleAnim, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); this->actionFunc = EnHeishi1_WaitNight; } diff --git a/src/overlays/actors/ovl_En_Heishi2/z_en_heishi2.c b/src/overlays/actors/ovl_En_Heishi2/z_en_heishi2.c index c917bfa15e..5f43d47400 100644 --- a/src/overlays/actors/ovl_En_Heishi2/z_en_heishi2.c +++ b/src/overlays/actors/ovl_En_Heishi2/z_en_heishi2.c @@ -6,6 +6,8 @@ #include "vt.h" #include "z_en_heishi2.h" +#include "objects/object_sd/object_sd.h" +#include "objects/object_link_child/object_link_child.h" #include "overlays/actors/ovl_Bg_Gate_Shutter/z_bg_gate_shutter.h" #include "overlays/actors/ovl_En_Bom/z_en_bom.h" #include "overlays/actors/ovl_Bg_Spot15_Saku/z_bg_spot15_saku.h" @@ -19,9 +21,9 @@ void EnHeishi2_Destroy(Actor* thisx, GlobalContext* globalCtx); void EnHeishi2_Update(Actor* thisx, GlobalContext* globalCtx); void EnHeishi2_Draw(Actor* thisx, GlobalContext* globalCtx); -void func_80A54C6C(Actor* thisx, GlobalContext* globalCtx); -void func_80A531CC(EnHeishi2* this, GlobalContext* globalCtx); -void func_80A531D8(EnHeishi2* this, GlobalContext* globalCtx); +void EnHeishi2_DrawKingGuard(Actor* thisx, GlobalContext* globalCtx); +void EnHeishi2_DoNothing1(EnHeishi2* this, GlobalContext* globalCtx); +void EnHeishi_DoNothing2(EnHeishi2* this, GlobalContext* globalCtx); void func_80A531E4(EnHeishi2* this, GlobalContext* globalCtx); void func_80A53278(EnHeishi2* this, GlobalContext* globalCtx); void func_80A5344C(EnHeishi2* this, GlobalContext* globalCtx); @@ -50,12 +52,6 @@ void func_80A546DC(EnHeishi2* this, GlobalContext* globalCtx); void func_80A541FC(EnHeishi2* this, GlobalContext* globalCtx); void func_80A53DF8(EnHeishi2* this, GlobalContext* globalCtx); -extern AnimationHeader D_06005C30; -extern AnimationHeader D_06005500; -extern SkeletonHeader D_0600BAC8; -extern Gfx D_0602B060[]; // Keaton Mask -extern Gfx D_06002C10[]; // 2D Guard in Window - const ActorInit En_Heishi2_InitVars = { ACTOR_EN_HEISHI2, ACTORCAT_NPC, @@ -93,15 +89,15 @@ void EnHeishi2_Init(Actor* thisx, GlobalContext* globalCtx) { EnHeishi2* this = THIS; Actor_SetScale(&this->actor, 0.01f); - this->initParams = this->actor.params & 0xFF; + this->type = this->actor.params & 0xFF; this->actor.colChkInfo.mass = MASS_IMMOVABLE; - if ((this->initParams == 6) || (this->initParams == 9)) { - this->actor.draw = func_80A54C6C; + if ((this->type == 6) || (this->type == 9)) { + this->actor.draw = EnHeishi2_DrawKingGuard; this->actor.flags &= -2; Actor_ChangeCategory(globalCtx, &globalCtx->actorCtx, &this->actor, 6); - if (this->initParams == 6) { - this->actionFunc = func_80A531CC; + if (this->type == 6) { + this->actionFunc = EnHeishi2_DoNothing1; } else { osSyncPrintf("\n\n"); @@ -124,7 +120,8 @@ void EnHeishi2_Init(Actor* thisx, GlobalContext* globalCtx) { } else { this->unk_2E0 = 60.0f; ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); - SkelAnime_Init(globalCtx, &this->skelAnime, &D_0600BAC8, &D_06005C30, this->jointTable, this->morphTable, 17); + SkelAnime_Init(globalCtx, &this->skelAnime, &gEnHeishiSkel, &gEnHeishiIdleAnim, this->jointTable, + this->morphTable, 17); collider = &this->collider; Collider_InitCylinder(globalCtx, collider); Collider_SetCylinder(globalCtx, collider, &this->actor, &sCylinderInit); @@ -133,7 +130,7 @@ void EnHeishi2_Init(Actor* thisx, GlobalContext* globalCtx) { this->collider.dim.height = 0x46; this->actor.targetMode = 6; - switch (this->initParams) { + switch (this->type) { case 2: this->actionFunc = func_80A531E4; @@ -149,7 +146,7 @@ void EnHeishi2_Init(Actor* thisx, GlobalContext* globalCtx) { osSyncPrintf(VT_FGCOL(GREEN) " ☆☆☆☆☆ 覗き穴奥兵士ふぃ〜 ☆☆☆☆☆ \n" VT_RST); Collider_DestroyCylinder(globalCtx, collider); this->actor.flags &= -0xA; - this->actionFunc = func_80A531D8; + this->actionFunc = EnHeishi_DoNothing2; break; } @@ -158,7 +155,7 @@ void EnHeishi2_Init(Actor* thisx, GlobalContext* globalCtx) { // "Soldier Set 2 Completed!" osSyncPrintf(VT_FGCOL(GREEN) " ☆☆☆☆☆ 兵士2セット完了! ☆☆☆☆☆ %d\n" VT_RST, this->actor.params); // "Identification Completed!" - osSyncPrintf(VT_FGCOL(YELLOW) " ☆☆☆☆☆ 識別完了! ☆☆☆☆☆ %d\n" VT_RST, this->initParams); + osSyncPrintf(VT_FGCOL(YELLOW) " ☆☆☆☆☆ 識別完了! ☆☆☆☆☆ %d\n" VT_RST, this->type); // "Message completed!" osSyncPrintf(VT_FGCOL(PURPLE) " ☆☆☆☆☆ メッセージ完了! ☆☆☆☆☆ %x\n\n" VT_RST, (this->actor.params >> 8) & 0xF); } @@ -172,16 +169,16 @@ void EnHeishi2_Destroy(Actor* thisx, GlobalContext* globalCtx) { } } -void func_80A531CC(EnHeishi2* this, GlobalContext* globalCtx) { +void EnHeishi2_DoNothing1(EnHeishi2* this, GlobalContext* globalCtx) { } -void func_80A531D8(EnHeishi2* this, GlobalContext* globalCtx) { +void EnHeishi_DoNothing2(EnHeishi2* this, GlobalContext* globalCtx) { } void func_80A531E4(EnHeishi2* this, GlobalContext* globalCtx) { - f32 frameCount = Animation_GetLastFrame(&D_06005C30); + f32 frameCount = Animation_GetLastFrame(&gEnHeishiIdleAnim); - Animation_Change(&this->skelAnime, &D_06005C30, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); + Animation_Change(&this->skelAnime, &gEnHeishiIdleAnim, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); this->actionFunc = func_80A53278; } @@ -277,10 +274,10 @@ void func_80A53538(EnHeishi2* this, GlobalContext* globalCtx) { } void func_80A535BC(EnHeishi2* this, GlobalContext* globalCtx) { - f32 frameCount = Animation_GetLastFrame(&D_06005500); + f32 frameCount = Animation_GetLastFrame(&gEnHeishiSlamSpearAnim); this->unk_2EC = frameCount; - Animation_Change(&this->skelAnime, &D_06005500, 1.0f, 0.0f, frameCount, ANIMMODE_ONCE, -10.0f); + Animation_Change(&this->skelAnime, &gEnHeishiSlamSpearAnim, 1.0f, 0.0f, frameCount, ANIMMODE_ONCE, -10.0f); this->actionFunc = func_80A53638; } @@ -312,9 +309,9 @@ void func_80A53638(EnHeishi2* this, GlobalContext* globalCtx) { } void func_80A5372C(EnHeishi2* this, GlobalContext* globalCtx) { - f32 frameCount = Animation_GetLastFrame(&D_06005C30); + f32 frameCount = Animation_GetLastFrame(&gEnHeishiIdleAnim); - Animation_Change(&this->skelAnime, &D_06005C30, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); + Animation_Change(&this->skelAnime, &gEnHeishiIdleAnim, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); this->unk_2F2[0] = 200; this->cameraId = Gameplay_CreateSubCamera(globalCtx); Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_WAIT); @@ -348,9 +345,9 @@ void func_80A53850(EnHeishi2* this, GlobalContext* globalCtx) { } void func_80A53908(EnHeishi2* this, GlobalContext* globalCtx) { - f32 frameCount = Animation_GetLastFrame(&D_06005C30); + f32 frameCount = Animation_GetLastFrame(&gEnHeishiIdleAnim); - Animation_Change(&this->skelAnime, &D_06005C30, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); + Animation_Change(&this->skelAnime, &gEnHeishiIdleAnim, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); this->actionFunc = func_80A5399C; } @@ -441,10 +438,10 @@ void func_80A53C0C(EnHeishi2* this, GlobalContext* globalCtx) { } void func_80A53C90(EnHeishi2* this, GlobalContext* globalCtx) { - f32 frameCount = Animation_GetLastFrame(&D_06005500); + f32 frameCount = Animation_GetLastFrame(&gEnHeishiSlamSpearAnim); this->unk_2EC = frameCount; - Animation_Change(&this->skelAnime, &D_06005500, 1.0f, 0.0f, frameCount, ANIMMODE_ONCE, -10.0f); + Animation_Change(&this->skelAnime, &gEnHeishiSlamSpearAnim, 1.0f, 0.0f, frameCount, ANIMMODE_ONCE, -10.0f); this->actionFunc = func_80A53D0C; } @@ -479,9 +476,9 @@ void func_80A53D0C(EnHeishi2* this, GlobalContext* globalCtx) { } void func_80A53DF8(EnHeishi2* this, GlobalContext* globalCtx) { - f32 frameCount = Animation_GetLastFrame(&D_06005C30); + f32 frameCount = Animation_GetLastFrame(&gEnHeishiIdleAnim); - Animation_Change(&this->skelAnime, &D_06005C30, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); + Animation_Change(&this->skelAnime, &gEnHeishiIdleAnim, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); this->unk_2F2[0] = 200; this->cameraId = Gameplay_CreateSubCamera(globalCtx); Gameplay_ChangeCameraStatus(globalCtx, MAIN_CAM, CAM_STAT_WAIT); @@ -604,10 +601,10 @@ void func_80A5427C(EnHeishi2* this, GlobalContext* globalCtx) { } void func_80A54320(EnHeishi2* this, GlobalContext* globalCtx) { - f32 frameCount = Animation_GetLastFrame(&D_06005500); + f32 frameCount = Animation_GetLastFrame(&gEnHeishiSlamSpearAnim); this->unk_2EC = frameCount; - Animation_Change(&this->skelAnime, &D_06005500, 1.0f, 0.0f, frameCount, ANIMMODE_ONCE, -10.0f); + Animation_Change(&this->skelAnime, &gEnHeishiSlamSpearAnim, 1.0f, 0.0f, frameCount, ANIMMODE_ONCE, -10.0f); this->audioFlag = 0; this->actionFunc = func_80A543A0; } @@ -699,28 +696,28 @@ void func_80A5475C(EnHeishi2* this, GlobalContext* globalCtx) { if (Text_GetFaceReaction(globalCtx, 5) != 0) { if (this->unk_30B == 0) { - if (this->initParams == 2) { + if (this->type == 2) { this->actionFunc = func_80A53278; return; } - if (this->initParams == 5) { + if (this->type == 5) { this->actionFunc = func_80A5399C; return; } } } else if (this->unk_30B != 0) { - if (this->initParams == 2) { + if (this->type == 2) { this->actionFunc = func_80A53278; return; } - if (this->initParams == 5) { + if (this->type == 5) { this->actionFunc = func_80A5399C; return; } } if (func_8002F194(&this->actor, globalCtx)) { - if (this->initParams == 2) { + if (this->type == 2) { if (this->unk_30E == 1) { this->actionFunc = func_80A5344C; return; @@ -728,7 +725,7 @@ void func_80A5475C(EnHeishi2* this, GlobalContext* globalCtx) { this->actionFunc = func_80A53278; return; } - } else if (this->initParams == 5) { + } else if (this->type == 5) { if (this->unk_300 == 6) { this->actionFunc = func_80A5399C; } @@ -746,7 +743,7 @@ void func_80A5475C(EnHeishi2* this, GlobalContext* globalCtx) { } } - if (((this->initParams != 2) && (this->initParams != 5)) || + if (((this->type != 2) && (this->type != 5)) || ((yawDiff = ABS((s16)(this->actor.yawTowardsPlayer - this->actor.shape.rot.y)), !(this->actor.xzDistToPlayer > 120.0f)) && (yawDiff < 0x4300))) { @@ -755,9 +752,9 @@ void func_80A5475C(EnHeishi2* this, GlobalContext* globalCtx) { } void func_80A54954(EnHeishi2* this, GlobalContext* globalCtx) { - f32 frameCount = Animation_GetLastFrame(&D_06005C30); + f32 frameCount = Animation_GetLastFrame(&gEnHeishiIdleAnim); - Animation_Change(&this->skelAnime, &D_06005C30, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); + Animation_Change(&this->skelAnime, &gEnHeishiIdleAnim, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); this->actionFunc = func_80A549E8; } @@ -766,10 +763,10 @@ void func_80A549E8(EnHeishi2* this, GlobalContext* globalCtx) { if (this->unk_300 == func_8010BDBC(&globalCtx->msgCtx)) { if (func_80106BC8(globalCtx) != 0) { func_80106CCC(globalCtx); - if (this->initParams == 2) { + if (this->type == 2) { this->actionFunc = func_80A531E4; } - if (this->initParams == 5) { + if (this->type == 5) { this->actionFunc = func_80A53908; } } @@ -782,7 +779,7 @@ void EnHeishi2_Update(Actor* thisx, GlobalContext* globalCtx) { s32 i; Actor_SetFocus(&this->actor, this->unk_2E0); - if ((this->initParams == 2) || (this->initParams == 5)) { + if ((this->type == 2) || (this->type == 5)) { this->actor.focus.pos.y = 70.0f; Actor_SetFocus(&this->actor, 70.0f); func_80038290(globalCtx, &this->actor, &this->unk_260, &this->unk_26C, this->actor.focus.pos); @@ -797,7 +794,7 @@ void EnHeishi2_Update(Actor* thisx, GlobalContext* globalCtx) { } this->actionFunc(this, globalCtx); Actor_MoveForward(&this->actor); - switch (this->initParams) { + switch (this->type) { case 6: break; case 9: @@ -814,7 +811,7 @@ s32 EnHeishi2_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dL void* thisx) { EnHeishi2* this = THIS; - switch (this->initParams) { + switch (this->type) { case 1: break; case 7: @@ -840,12 +837,12 @@ void EnHeishi2_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList } } -void func_80A54C6C(Actor* thisx, GlobalContext* globalCtx) { +void EnHeishi2_DrawKingGuard(Actor* thisx, GlobalContext* globalCtx) { OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_heishi2.c", 1772); gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_heishi2.c", 1774), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); - gSPDisplayList(POLY_OPA_DISP++, &D_06002C10); + gSPDisplayList(POLY_OPA_DISP++, &gHeishiKingGuardDL); CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_heishi2.c", 1777); } @@ -861,7 +858,7 @@ void EnHeishi2_Draw(Actor* thisx, GlobalContext* globalCtx) { SkelAnime_DrawOpa(globalCtx, this->skelAnime.skeleton, this->skelAnime.jointTable, EnHeishi2_OverrideLimbDraw, EnHeishi2_PostLimbDraw, this); - if ((this->initParams == 5) && (gSaveContext.infTable[7] & 0x80)) { + if ((this->type == 5) && (gSaveContext.infTable[7] & 0x80)) { linkObjBankIndex = Object_GetIndex(&globalCtx->objectCtx, OBJECT_LINK_CHILD); if (linkObjBankIndex >= 0) { Matrix_Put(&this->mtxf_330); @@ -871,7 +868,7 @@ void EnHeishi2_Draw(Actor* thisx, GlobalContext* globalCtx) { gSPSegment(POLY_OPA_DISP++, 0x06, globalCtx->objectCtx.status[linkObjBankIndex].segment); gSPSegment(POLY_OPA_DISP++, 0x0D, mtx); - gSPDisplayList(POLY_OPA_DISP++, &D_0602B060); + gSPDisplayList(POLY_OPA_DISP++, gLinkChildKeatonMaskDL); gSPSegment(POLY_OPA_DISP++, 0x06, globalCtx->objectCtx.status[this->actor.objBankIndex].segment); } } diff --git a/src/overlays/actors/ovl_En_Heishi2/z_en_heishi2.h b/src/overlays/actors/ovl_En_Heishi2/z_en_heishi2.h index 4a79433770..10702fcc85 100644 --- a/src/overlays/actors/ovl_En_Heishi2/z_en_heishi2.h +++ b/src/overlays/actors/ovl_En_Heishi2/z_en_heishi2.h @@ -32,7 +32,7 @@ typedef struct EnHeishi2 { /* 0x02F0 */ u16 unk_2F0; /* 0x02F2 */ s16 unk_2F2[0x5]; // starts counting down when guard starts to open gate. /* 0x02FC */ s16 unk_2FC; - /* 0x02FE */ s16 initParams; // copy of actor params at init + /* 0x02FE */ s16 type; // copy of actor params at init /* 0x0300 */ s16 unk_300; // mask related /* 0x0302 */ char unk_302[0x6]; /* 0x0308 */ u8 audioFlag; diff --git a/src/overlays/actors/ovl_En_Heishi3/z_en_heishi3.c b/src/overlays/actors/ovl_En_Heishi3/z_en_heishi3.c index e73b40387e..ab6aa5e956 100644 --- a/src/overlays/actors/ovl_En_Heishi3/z_en_heishi3.c +++ b/src/overlays/actors/ovl_En_Heishi3/z_en_heishi3.c @@ -5,6 +5,7 @@ */ #include "z_en_heishi3.h" +#include "objects/object_sd/object_sd.h" #include "vt.h" #define FLAGS 0x00000000 @@ -24,10 +25,6 @@ void EnHeishi3_ResetAnimationToIdle(EnHeishi3* this, GlobalContext* globalCtx); void func_80A55D00(EnHeishi3* this, GlobalContext* globalCtx); void func_80A55BD4(EnHeishi3* this, GlobalContext* globalCtx); -extern SkeletonHeader D_0600BAC8; -extern AnimationHeader D_06005C30; // EnHeishi3_IdleAnimation -extern AnimationHeader D_06005880; // EnHeishi3_WalkAnimation - static s16 sPlayerCaught = 0; const ActorInit En_Heishi3_InitVars = { @@ -76,7 +73,8 @@ void EnHeishi3_Init(Actor* thisx, GlobalContext* globalCtx) { } Actor_SetScale(&this->actor, 0.01f); ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f); - SkelAnime_Init(globalCtx, &this->skelAnime, &D_0600BAC8, &D_06005C30, this->jointTable, this->morphTable, 17); + SkelAnime_Init(globalCtx, &this->skelAnime, &gEnHeishiSkel, &gEnHeishiIdleAnim, this->jointTable, this->morphTable, + 17); this->actor.colChkInfo.mass = MASS_IMMOVABLE; this->actor.targetMode = 6; Collider_InitCylinder(globalCtx, &this->collider); @@ -96,9 +94,9 @@ void EnHeishi3_Destroy(Actor* thisx, GlobalContext* globalCtx) { } void EnHeishi3_SetupGuardType(EnHeishi3* this, GlobalContext* globalCtx) { - f32 frameCount = Animation_GetLastFrame(&D_06005C30); + f32 frameCount = Animation_GetLastFrame(&gEnHeishiIdleAnim); - Animation_Change(&this->skelAnime, &D_06005C30, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); + Animation_Change(&this->skelAnime, &gEnHeishiIdleAnim, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); if (this->unk_278 == 0) { this->actionFunc = EnHeishi3_StandSentinelInGrounds; } else { @@ -172,9 +170,9 @@ void EnHeishi3_StandSentinelInCastle(EnHeishi3* this, GlobalContext* globalCtx) } void EnHeishi3_CatchStart(EnHeishi3* this, GlobalContext* globalCtx) { - f32 frameCount = Animation_GetLastFrame(&D_06005880); + f32 frameCount = Animation_GetLastFrame(&gEnHeishiWalkAnim); - Animation_Change(&this->skelAnime, &D_06005880, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); + Animation_Change(&this->skelAnime, &gEnHeishiWalkAnim, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); this->caughtTimer = 20; this->actionFunc = func_80A55BD4; this->actor.speedXZ = 2.5f; @@ -195,9 +193,9 @@ void func_80A55BD4(EnHeishi3* this, GlobalContext* globalCtx) { } void EnHeishi3_ResetAnimationToIdle(EnHeishi3* this, GlobalContext* globalCtx) { - f32 frameCount = Animation_GetLastFrame(&D_06005C30); + f32 frameCount = Animation_GetLastFrame(&gEnHeishiIdleAnim); - Animation_Change(&this->skelAnime, &D_06005C30, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); + Animation_Change(&this->skelAnime, &gEnHeishiIdleAnim, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f); this->actionFunc = func_80A55D00; } diff --git a/src/overlays/actors/ovl_En_Heishi4/z_en_heishi4.c b/src/overlays/actors/ovl_En_Heishi4/z_en_heishi4.c index eba4eef9d9..b139c804e2 100644 --- a/src/overlays/actors/ovl_En_Heishi4/z_en_heishi4.c +++ b/src/overlays/actors/ovl_En_Heishi4/z_en_heishi4.c @@ -1,4 +1,5 @@ #include "z_en_heishi4.h" +#include "objects/object_sd/object_sd.h" #include "vt.h" #define FLAGS 0x00000009 @@ -56,12 +57,6 @@ static ColliderCylinderInit sCylinderInit = { { 33, 40, 0, { 0, 0, 0 } }, }; -extern SkeletonHeader D_0600BAC8; -extern AnimationHeader D_0600C444; -extern AnimationHeader D_06005C30; -extern AnimationHeader D_0600C6C8; -extern AnimationHeader D_0600C374; - void EnHeishi4_Init(Actor* thisx, GlobalContext* globalCtx) { EnHeishi4* this = THIS; @@ -73,11 +68,13 @@ void EnHeishi4_Init(Actor* thisx, GlobalContext* globalCtx) { if (this->type == HEISHI4_AT_MARKET_DYING) { this->height = 30.0f; ActorShape_Init(&thisx->shape, 0.0f, NULL, 30.0f); - SkelAnime_Init(globalCtx, &this->skelAnime, &D_0600BAC8, &D_0600C444, this->jointTable, this->morphTable, 17); + SkelAnime_Init(globalCtx, &this->skelAnime, &gEnHeishiSkel, &gEnHeishiDyingGuardAnim_00C444, this->jointTable, + this->morphTable, 17); } else { this->height = 60.0f; ActorShape_Init(&thisx->shape, 0.0f, ActorShadow_DrawCircle, 30.0f); - SkelAnime_Init(globalCtx, &this->skelAnime, &D_0600BAC8, &D_06005C30, this->jointTable, this->morphTable, 17); + SkelAnime_Init(globalCtx, &this->skelAnime, &gEnHeishiSkel, &gEnHeishiIdleAnim, this->jointTable, + this->morphTable, 17); } Collider_InitCylinder(globalCtx, &this->collider); Collider_SetCylinder(globalCtx, &this->collider, thisx, &sCylinderInit); @@ -113,9 +110,9 @@ void EnHeishi4_Destroy(Actor* thisx, GlobalContext* globalCtx) { } void func_80A56328(EnHeishi4* this, GlobalContext* globalCtx) { - f32 frames = Animation_GetLastFrame(&D_06005C30); + f32 frames = Animation_GetLastFrame(&gEnHeishiIdleAnim); - Animation_Change(&this->skelAnime, &D_06005C30, 1.0f, 0.0f, (s16)frames, ANIMMODE_LOOP, -10.0f); + Animation_Change(&this->skelAnime, &gEnHeishiIdleAnim, 1.0f, 0.0f, (s16)frames, ANIMMODE_LOOP, -10.0f); this->actionFunc = func_80A563BC; } @@ -168,9 +165,9 @@ void func_80A563BC(EnHeishi4* this, GlobalContext* globalCtx) { } void func_80A56544(EnHeishi4* this, GlobalContext* globalCtx) { - f32 frames = Animation_GetLastFrame(&D_06005C30); + f32 frames = Animation_GetLastFrame(&gEnHeishiIdleAnim); - Animation_Change(&this->skelAnime, &D_06005C30, 1.0f, 0.0f, (s16)frames, ANIMMODE_LOOP, -10.0f); + Animation_Change(&this->skelAnime, &gEnHeishiIdleAnim, 1.0f, 0.0f, (s16)frames, ANIMMODE_LOOP, -10.0f); if (LINK_AGE_IN_YEARS != YEARS_CHILD) { osSyncPrintf(VT_FGCOL(GREEN) " ☆☆☆☆☆ ぎゃぁ!オトナだー ☆☆☆☆☆ \n" VT_RST); Actor_Kill(&this->actor); @@ -224,8 +221,9 @@ void func_80A5673C(EnHeishi4* this, GlobalContext* globalCtx) { this->unk_284 = 0; if (gSaveContext.eventChkInf[8] & 1) { if (!(gSaveContext.infTable[6] & 0x1000)) { - f32 frames = Animation_GetLastFrame(&D_0600C444); - Animation_Change(&this->skelAnime, &D_0600C444, 1.0f, 0.0f, (s16)frames, ANIMMODE_LOOP, -10.0f); + f32 frames = Animation_GetLastFrame(&gEnHeishiDyingGuardAnim_00C444); + Animation_Change(&this->skelAnime, &gEnHeishiDyingGuardAnim_00C444, 1.0f, 0.0f, (s16)frames, ANIMMODE_LOOP, + -10.0f); this->actor.textId = 0x7007; this->unk_282 = 5; this->unk_284 = 1; @@ -258,9 +256,9 @@ void func_80A56874(EnHeishi4* this, GlobalContext* globalCtx) { } void func_80A56900(EnHeishi4* this, GlobalContext* globalCtx) { - f32 frames = Animation_GetLastFrame(&D_0600C6C8); + f32 frames = Animation_GetLastFrame(&gEnHeishiDyingGuardTalkAnim); - Animation_Change(&this->skelAnime, &D_0600C6C8, 1.0f, 0.0f, (s16)frames, ANIMMODE_LOOP, -10.0f); + Animation_Change(&this->skelAnime, &gEnHeishiDyingGuardTalkAnim, 1.0f, 0.0f, (s16)frames, ANIMMODE_LOOP, -10.0f); this->actionFunc = func_80A56994; } @@ -278,9 +276,9 @@ void func_80A56994(EnHeishi4* this, GlobalContext* globalCtx) { } void func_80A56A50(EnHeishi4* this, GlobalContext* globalCtx) { - f32 frames = Animation_GetLastFrame(&D_0600C374); + f32 frames = Animation_GetLastFrame(&gEnHeishiDyingGuardDieAnim); this->unk_288 = frames; - Animation_Change(&this->skelAnime, &D_0600C374, 1.0f, 0.0f, frames, ANIMMODE_ONCE, -10.0f); + Animation_Change(&this->skelAnime, &gEnHeishiDyingGuardDieAnim, 1.0f, 0.0f, frames, ANIMMODE_ONCE, -10.0f); this->actionFunc = func_80A56ACC; } diff --git a/src/overlays/actors/ovl_En_Ishi/z_en_ishi.c b/src/overlays/actors/ovl_En_Ishi/z_en_ishi.c index 61db8e5b8b..e266bf78f9 100644 --- a/src/overlays/actors/ovl_En_Ishi/z_en_ishi.c +++ b/src/overlays/actors/ovl_En_Ishi/z_en_ishi.c @@ -6,6 +6,7 @@ #include "z_en_ishi.h" #include "overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.h" +#include "objects/gameplay_field_keep/gameplay_field_keep.h" #include "vt.h" @@ -29,13 +30,6 @@ void EnIshi_SpawnFragmentsLarge(EnIshi* this, GlobalContext* globalCtx); void EnIshi_SpawnDustSmall(EnIshi* this, GlobalContext* globalCtx); void EnIshi_SpawnDustLarge(EnIshi* this, GlobalContext* globalCtx); -extern Gfx D_0500A3B8[]; // Large gray rock -extern Gfx D_0500A5E8[]; // Large gray rock fragments -extern Gfx D_0500A880[]; // Small gray rock - -typedef void (*EnIshiEffectSpawnFunc)(struct EnIshi*, GlobalContext*); -typedef void (*EnIshiDrawFunc)(struct EnIshi*, GlobalContext*); - static s16 sRotSpeedX = 0; static s16 sRotSpeedY = 0; @@ -171,7 +165,7 @@ void EnIshi_SpawnFragmentsSmall(EnIshi* this, GlobalContext* globalCtx) { phi_v0 = 33; } EffectSsKakera_Spawn(globalCtx, &pos, &velocity, &pos, -420, phi_v0, 30, 5, 0, scales[i], 3, 10, 40, - KAKERA_COLOR_NONE, OBJECT_GAMEPLAY_FIELD_KEEP, D_0500A880); + KAKERA_COLOR_NONE, OBJECT_GAMEPLAY_FIELD_KEEP, gFieldKakeraDL); } } @@ -217,7 +211,7 @@ void EnIshi_SpawnFragmentsLarge(EnIshi* this, GlobalContext* globalCtx) { phi_v1 = -320; } EffectSsKakera_Spawn(globalCtx, &pos, &velocity, &this->actor.world.pos, phi_v1, phi_v0, 30, 5, 0, scales[i], 5, - 2, 70, KAKERA_COLOR_WHITE, OBJECT_GAMEPLAY_FIELD_KEEP, D_0500A5E8); + 2, 70, KAKERA_COLOR_WHITE, OBJECT_GAMEPLAY_FIELD_KEEP, gSilverRockFragmentsDL); } } @@ -483,7 +477,7 @@ void EnIshi_Update(Actor* thisx, GlobalContext* globalCtx) { } void EnIshi_DrawSmall(EnIshi* this, GlobalContext* globalCtx) { - Gfx_DrawDListOpa(globalCtx, D_0500A880); + Gfx_DrawDListOpa(globalCtx, gFieldKakeraDL); } void EnIshi_DrawLarge(EnIshi* this, GlobalContext* globalCtx) { @@ -493,7 +487,7 @@ void EnIshi_DrawLarge(EnIshi* this, GlobalContext* globalCtx) { gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_ishi.c", 1055), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 255, 255, 255, 255); - gSPDisplayList(POLY_OPA_DISP++, D_0500A3B8); + gSPDisplayList(POLY_OPA_DISP++, gSilverRockDL); CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_ishi.c", 1062); } diff --git a/src/overlays/actors/ovl_En_Ishi/z_en_ishi.h b/src/overlays/actors/ovl_En_Ishi/z_en_ishi.h index 20579696bd..c93d815387 100644 --- a/src/overlays/actors/ovl_En_Ishi/z_en_ishi.h +++ b/src/overlays/actors/ovl_En_Ishi/z_en_ishi.h @@ -12,6 +12,8 @@ typedef enum { struct EnIshi; typedef void (*EnIshiActionFunc)(struct EnIshi*, GlobalContext*); +typedef void (*EnIshiEffectSpawnFunc)(struct EnIshi*, GlobalContext*); +typedef void (*EnIshiDrawFunc)(struct EnIshi*, GlobalContext*); typedef struct EnIshi { /* 0x0000 */ Actor actor; diff --git a/src/overlays/actors/ovl_En_Kusa/z_en_kusa.c b/src/overlays/actors/ovl_En_Kusa/z_en_kusa.c index 15f88c57df..a14ae34860 100644 --- a/src/overlays/actors/ovl_En_Kusa/z_en_kusa.c +++ b/src/overlays/actors/ovl_En_Kusa/z_en_kusa.c @@ -7,6 +7,7 @@ #include "z_en_kusa.h" #include "overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.h" #include "objects/gameplay_keep/gameplay_keep.h" +#include "objects/gameplay_field_keep/gameplay_field_keep.h" #include "vt.h" #define FLAGS 0x00800010 @@ -490,7 +491,7 @@ void EnKusa_Update(Actor* thisx, GlobalContext* globalCtx) { } void EnKusa_Draw(Actor* thisx, GlobalContext* globalCtx) { - static Gfx* dLists[] = { 0x0500B9D0, 0x06000140, 0x06000140 }; + static Gfx* dLists[] = { gFieldBushDL, 0x06000140, 0x06000140 }; EnKusa* this = THIS; if (this->actor.flags & 0x800) { diff --git a/src/overlays/actors/ovl_En_Light/z_en_light.c b/src/overlays/actors/ovl_En_Light/z_en_light.c index 35808a5074..23b0e45777 100644 --- a/src/overlays/actors/ovl_En_Light/z_en_light.c +++ b/src/overlays/actors/ovl_En_Light/z_en_light.c @@ -6,6 +6,7 @@ #include "z_en_light.h" #include "objects/gameplay_keep/gameplay_keep.h" +#include "objects/gameplay_dangeon_keep/gameplay_dangeon_keep.h" #define FLAGS 0x00000000 @@ -46,8 +47,6 @@ static FlameParams D_80A9E840[] = { { { 170, 255, 255, 255 }, { 0, 0, 255 }, 75 }, { { 170, 255, 255, 255 }, { 0, 150, 255 }, 75 }, }; -extern Gfx D_05000440[]; - void EnLight_Init(Actor* thisx, GlobalContext* globalCtx) { EnLight* this = THIS; s16 yOffset; @@ -180,7 +179,7 @@ void EnLight_Draw(Actor* thisx, GlobalContext* globalCtx) { Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, 0, 0, 16, 32, 1, ((this->timer * 2) & 63), (this->timer * -6) & 127 * 1, 16, 32)); - dList = D_05000440; + dList = gUnusedCandleDL; gDPSetPrimColor(POLY_XLU_DISP++, 0xC0, 0xC0, 255, 200, 0, 0); gDPSetEnvColor(POLY_XLU_DISP++, 255, 0, 0, 0); } diff --git a/src/overlays/actors/ovl_En_Mb/z_en_mb.c b/src/overlays/actors/ovl_En_Mb/z_en_mb.c index 510e2216e7..902e51c8fa 100644 --- a/src/overlays/actors/ovl_En_Mb/z_en_mb.c +++ b/src/overlays/actors/ovl_En_Mb/z_en_mb.c @@ -5,6 +5,7 @@ */ #include "z_en_mb.h" +#include "objects/object_mb/object_mb.h" #define FLAGS 0x00000015 @@ -27,26 +28,6 @@ const ActorInit En_Mb_InitVars = { (ActorFunc)EnMb_Draw, }; -extern FlexSkeletonHeader D_06008F38; -extern FlexSkeletonHeader D_06014190; -extern AnimationHeader D_060028E0; -extern AnimationHeader D_0600EBE4; -extern AnimationHeader D_060041A8; -extern AnimationHeader D_06009FC0; -extern AnimationHeader D_06002C10; -extern AnimationHeader D_06002F10; -extern AnimationHeader D_06009280; -extern AnimationHeader D_06001950; -extern AnimationHeader D_0600BE58; -extern AnimationHeader D_0600D5D4; -extern AnimationHeader D_0600E18C; -extern AnimationHeader D_0600B4BC; -extern AnimationHeader D_0600ABE0; -extern AnimationHeader D_0600095C; -extern AnimationHeader D_060016B4; -extern AnimationHeader D_060041A8; -extern AnimationHeader D_0600C44C; - void func_80AA68FC(EnMb* this, GlobalContext* globalCtx); void func_80AA6898(EnMb* this); void func_80AA7134(EnMb* this, GlobalContext* globalCtx); @@ -248,7 +229,7 @@ void EnMb_Init(Actor* thisx, GlobalContext* globalCtx) { switch (this->actor.params) { case -1: - SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_06008F38, &D_060028E0, this->jointTable, + SkelAnime_InitFlex(globalCtx, &this->skelAnime, &gEnMbSkel_008F38, &gEnMbStandStillAnim, this->jointTable, this->morphTable, 28); this->actor.colChkInfo.health = 2; this->actor.colChkInfo.mass = MASS_HEAVY; @@ -257,7 +238,7 @@ void EnMb_Init(Actor* thisx, GlobalContext* globalCtx) { func_80AA6830(this); break; case 0: - SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_06014190, &D_0600EBE4, this->jointTable, + SkelAnime_InitFlex(globalCtx, &this->skelAnime, &gEnMbSkel_014190, &gEnMbAnim_00EBE4, this->jointTable, this->morphTable, 28); this->actor.colChkInfo.health = 6; this->actor.colChkInfo.mass = MASS_IMMOVABLE; @@ -283,7 +264,7 @@ void EnMb_Init(Actor* thisx, GlobalContext* globalCtx) { func_80AA6898(this); break; default: - SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_06008F38, &D_060028E0, this->jointTable, + SkelAnime_InitFlex(globalCtx, &this->skelAnime, &gEnMbSkel_008F38, &gEnMbStandStillAnim, this->jointTable, this->morphTable, 28); Actor_SetScale(&this->actor, 0.014f); this->path = (thisx->params & 0xFF00) >> 8; @@ -406,7 +387,7 @@ void func_80AA66A0(EnMb* this, GlobalContext* globalCtx) { } void func_80AA6830(EnMb* this) { - Animation_MorphToLoop(&this->skelAnime, &D_060041A8, -4.0f); + Animation_MorphToLoop(&this->skelAnime, &gEnMbLookLeftAndRightAnim, -4.0f); this->actor.speedXZ = 0.0f; this->unk_32A = Rand_S16Offset(30, 50); this->unk_320 = 6; @@ -414,7 +395,7 @@ void func_80AA6830(EnMb* this) { } void func_80AA6898(EnMb* this) { - Animation_PlayLoop(&this->skelAnime, &D_0600EBE4); + Animation_PlayLoop(&this->skelAnime, &gEnMbAnim_00EBE4); this->actor.speedXZ = 0.0f; this->unk_32A = Rand_S16Offset(30, 50); this->unk_320 = 6; @@ -422,7 +403,7 @@ void func_80AA6898(EnMb* this) { } void func_80AA68FC(EnMb* this, GlobalContext* globalCtx) { - Animation_MorphToLoop(&this->skelAnime, &D_060041A8, -4.0f); + Animation_MorphToLoop(&this->skelAnime, &gEnMbLookLeftAndRightAnim, -4.0f); this->actor.speedXZ = 0.0f; this->unk_32A = Rand_S16Offset(40, 80); this->unk_320 = 6; @@ -431,8 +412,8 @@ void func_80AA68FC(EnMb* this, GlobalContext* globalCtx) { } void func_80AA6974(EnMb* this) { - Animation_Change(&this->skelAnime, &D_06009FC0, 0.0f, 0.0f, Animation_GetLastFrame(&D_06009FC0), ANIMMODE_LOOP, - -4.0f); + Animation_Change(&this->skelAnime, &gEnMbWalkAnim, 0.0f, 0.0f, Animation_GetLastFrame(&gEnMbWalkAnim), + ANIMMODE_LOOP, -4.0f); this->actor.speedXZ = 0.59999996f; this->unk_32A = Rand_S16Offset(50, 70); this->unk_332 = 1; @@ -443,20 +424,20 @@ void func_80AA6974(EnMb* this) { void func_80AA6A18(EnMb* this) { f32 frameCount; - frameCount = Animation_GetLastFrame(&D_06009FC0); + frameCount = Animation_GetLastFrame(&gEnMbWalkAnim); this->actor.speedXZ = 0.59999996f; this->unk_32A = Rand_S16Offset(50, 70); this->unk_332 = 1; this->unk_320 = 9; - Animation_Change(&this->skelAnime, &D_06009FC0, 0.0f, 0.0f, frameCount, ANIMMODE_LOOP_INTERP, -4.0f); + Animation_Change(&this->skelAnime, &gEnMbWalkAnim, 0.0f, 0.0f, frameCount, ANIMMODE_LOOP_INTERP, -4.0f); EnMb_SetupAction(this, func_80AA8AEC); } void func_80AA6AC8(EnMb* this) { f32 frameCount; - frameCount = Animation_GetLastFrame(&D_06002C10); - Animation_MorphToPlayOnce(&this->skelAnime, &D_06002C10, -4.0f); + frameCount = Animation_GetLastFrame(&gEnMbReadyAttackAnim); + Animation_MorphToPlayOnce(&this->skelAnime, &gEnMbReadyAttackAnim, -4.0f); this->unk_320 = 10; this->actor.speedXZ = 0.0f; this->unk_32E = (s16)frameCount + 6; @@ -469,7 +450,7 @@ void func_80AA6AC8(EnMb* this) { } void func_80AA6B80(EnMb* this) { - Animation_PlayLoop(&this->skelAnime, &D_06002F10); + Animation_PlayLoop(&this->skelAnime, &gEnMbChargePlayerAnim); Audio_PlayActorSound2(&this->actor, NA_SE_EN_MORIBLIN_ATTACK); this->attackParams = 1; this->unk_320 = 10; @@ -483,9 +464,9 @@ void func_80AA6BF0(EnMb* this) { s16 yawDiff; s32 yawDiffABS; - frames = Animation_GetLastFrame(&D_0600B4BC); + frames = Animation_GetLastFrame(&gEnMbAnim_00B4BC); this->unk_320 = 10; - Animation_Change(&this->skelAnime, &D_0600B4BC, 3.0f, 0.0f, frames, ANIMMODE_ONCE_INTERP, 0.0f); + Animation_Change(&this->skelAnime, &gEnMbAnim_00B4BC, 3.0f, 0.0f, frames, ANIMMODE_ONCE_INTERP, 0.0f); this->unk_32E = 1; yawDiff = (this->actor.world.rot.y - this->actor.yawTowardsPlayer); @@ -507,7 +488,7 @@ void func_80AA6BF0(EnMb* this) { } void func_80AA6CC0(EnMb* this) { - Animation_PlayOnce(&this->skelAnime, &D_06009280); + Animation_PlayOnce(&this->skelAnime, &gEnMbResumePatrolAnim); this->unk_320 = 11; this->unk_32A = 0; this->unk_32E = 5; @@ -516,7 +497,7 @@ void func_80AA6CC0(EnMb* this) { } void func_80AA6D20(EnMb* this) { - Animation_PlayOnce(&this->skelAnime, &D_06009280); + Animation_PlayOnce(&this->skelAnime, &gEnMbResumePatrolAnim); this->unk_320 = 0xB; this->actor.bgCheckFlags &= ~1; this->unk_32A = 0; @@ -530,14 +511,14 @@ void func_80AA6D20(EnMb* this) { void func_80AA6DA4(EnMb* this) { f32 frameCount; - frameCount = Animation_GetLastFrame(&D_0600EBE4); + frameCount = Animation_GetLastFrame(&gEnMbAnim_00EBE4); this->unk_320 = 11; - Animation_Change(&this->skelAnime, &D_0600EBE4, 5.0f, 0.0f, frameCount, ANIMMODE_ONCE_INTERP, 0.0f); + Animation_Change(&this->skelAnime, &gEnMbAnim_00EBE4, 5.0f, 0.0f, frameCount, ANIMMODE_ONCE_INTERP, 0.0f); EnMb_SetupAction(this, func_80AA7478); } void func_80AA6E1C(EnMb* this) { - Animation_PlayOnce(&this->skelAnime, &D_0600C44C); + Animation_PlayOnce(&this->skelAnime, &gEnMbAnim_00C44C); this->unk_320 = 3; this->unk_32A = 0; this->unk_32E = 20; @@ -548,16 +529,16 @@ void func_80AA6E1C(EnMb* this) { void func_80AA6E7C(EnMb* this) { f32 frames; - frames = Animation_GetLastFrame(&D_0600D5D4); + frames = Animation_GetLastFrame(&gEnMbAnim_00D5D4); this->unk_320 = 2; this->unk_32A = 0; this->unk_32E = 6; - Animation_Change(&this->skelAnime, &D_0600D5D4, 1.0f, 4.0f, frames, ANIMMODE_ONCE_INTERP, 0.0f); + Animation_Change(&this->skelAnime, &gEnMbAnim_00D5D4, 1.0f, 4.0f, frames, ANIMMODE_ONCE_INTERP, 0.0f); EnMb_SetupAction(this, func_80AA840C); } void func_80AA6F04(EnMb* this) { - Animation_MorphToPlayOnce(&this->skelAnime, &D_0600BE58, -4.0f); + Animation_MorphToPlayOnce(&this->skelAnime, &gEnMbAnim_00BE58, -4.0f); this->unk_320 = 1; this->actor.flags &= ~1; this->collider1.dim.height = 80; @@ -576,7 +557,7 @@ void func_80AA6F8C(EnMb* this) { this->unk_328 = 40; } else { if (this->actor.params != 0) { - Animation_PlayOnceSetSpeed(&this->skelAnime, &D_06001950, 0.0f); + Animation_PlayOnceSetSpeed(&this->skelAnime, &gEnMbAnim_001950, 0.0f); } Audio_PlayActorSound2(&this->actor, NA_SE_EN_GOMA_JR_FREEZE); } @@ -668,8 +649,8 @@ void func_80AA7310(EnMb* this, GlobalContext* globalCtx) { if (this->unk_32A == 0) { this->unk_32E--; if (this->unk_32E == 0) { - Animation_Change(&this->skelAnime, &D_06002C10, -1.0f, Animation_GetLastFrame(&D_06002C10), 0.0f, - ANIMMODE_ONCE, 0.0f); + Animation_Change(&this->skelAnime, &gEnMbReadyAttackAnim, -1.0f, + Animation_GetLastFrame(&gEnMbReadyAttackAnim), 0.0f, ANIMMODE_ONCE, 0.0f); this->unk_32A = 1; this->actor.speedXZ = 0.0f; Audio_PlayActorSound2(&this->actor, NA_SE_EN_MORIBLIN_SPEAR_NORM); @@ -717,8 +698,9 @@ void func_80AA74BC(EnMb* this, GlobalContext* globalCtx) { (ABS(yawDiff) <= 0x4000) && (this->actor.xzDistToPlayer <= 200.0f)) { func_80AA6AC8(this); } else { - endFrame = Animation_GetLastFrame(&D_06002C10); - Animation_Change(&this->skelAnime, &D_06002C10, -1.0f, endFrame, 0.0f, ANIMMODE_ONCE, 0.0f); + endFrame = Animation_GetLastFrame(&gEnMbReadyAttackAnim); + Animation_Change(&this->skelAnime, &gEnMbReadyAttackAnim, -1.0f, endFrame, 0.0f, ANIMMODE_ONCE, + 0.0f); this->actor.speedXZ = 0.0f; Audio_PlayActorSound2(&this->actor, NA_SE_EN_MORIBLIN_SPEAR_NORM); } @@ -731,8 +713,9 @@ void func_80AA74BC(EnMb* this, GlobalContext* globalCtx) { } if (SkelAnime_Update(&this->skelAnime) != 0) { if (this->unk_32A == 0) { - endFrame = Animation_GetLastFrame(&D_06002F10); - Animation_Change(&this->skelAnime, &D_06002F10, 0.5f, 0.0f, endFrame, ANIMMODE_LOOP_INTERP, 0.0f); + endFrame = Animation_GetLastFrame(&gEnMbChargePlayerAnim); + Animation_Change(&this->skelAnime, &gEnMbChargePlayerAnim, 0.5f, 0.0f, endFrame, ANIMMODE_LOOP_INTERP, + 0.0f); this->unk_32A = 1; } else { yawDiff = Math_Vec3f_Yaw(&this->actor.world.pos, &this->waypointPos) - this->actor.yawTowardsPlayer; @@ -760,7 +743,7 @@ void func_80AA77D0(EnMb* this, GlobalContext* globalCtx) { currentFrame = this->skelAnime.curFrame; if (SkelAnime_Update(&this->skelAnime)) { - Animation_PlayLoop(&this->skelAnime, &D_06002F10); + Animation_PlayLoop(&this->skelAnime, &gEnMbChargePlayerAnim); Audio_PlayActorSound2(&this->actor, NA_SE_EN_MORIBLIN_ATTACK); } @@ -818,8 +801,8 @@ void func_80AA7938(EnMb* this, GlobalContext* globalCtx) { if (this->unk_32E != 0) { this->unk_32E--; if (this->unk_32E == 0) { - f32 pad1 = Animation_GetLastFrame(&D_0600ABE0); - Animation_Change(&this->skelAnime, &D_0600ABE0, 1.5f, 0.0f, pad1, ANIMMODE_ONCE_INTERP, 0.0f); + f32 pad1 = Animation_GetLastFrame(&gEnMbAnim_00ABE0); + Animation_Change(&this->skelAnime, &gEnMbAnim_00ABE0, 1.5f, 0.0f, pad1, ANIMMODE_ONCE_INTERP, 0.0f); } } else { sp74 = this->effSpawnPos; @@ -853,7 +836,7 @@ void func_80AA7CAC(EnMb* this, GlobalContext* globalCtx) { sp48 = !func_800339B8(&this->actor, globalCtx, 110.0f, this->actor.world.rot.y); currentFrame = (s32)this->skelAnime.curFrame; if (SkelAnime_Update(&this->skelAnime) != 0) { - Animation_PlayLoop(&this->skelAnime, &D_06002F10); + Animation_PlayLoop(&this->skelAnime, &gEnMbChargePlayerAnim); Audio_PlayActorSound2(&this->actor, NA_SE_EN_MORIBLIN_ATTACK); } if (this->unk_32E != 0) { @@ -998,7 +981,7 @@ void func_80AA800C(EnMb* this, GlobalContext* globalCtx) { void func_80AA8378(EnMb* this, GlobalContext* globalCtx) { if (SkelAnime_Update(&this->skelAnime)) { if (this->unk_32E != 0) { - Animation_PlayOnce(&this->skelAnime, &D_0600E18C); + Animation_PlayOnce(&this->skelAnime, &gEnMbAnim_00E18C); this->unk_32E = 0; func_800AA000(this->actor.xzDistToPlayer, 0xFF, 0x14, 0x96); Camera_AddQuake(&globalCtx->mainCamera, 2, 25, 5); @@ -1016,13 +999,13 @@ void func_80AA840C(EnMb* this, GlobalContext* globalCtx) { this->unk_32E--; if (this->unk_32E == 0) { if (this->unk_32A == 0) { - Animation_Change(&this->skelAnime, &D_0600E18C, 3.0f, 0.0f, Animation_GetLastFrame(&D_0600E18C), - ANIMMODE_ONCE_INTERP, 0.0f); + Animation_Change(&this->skelAnime, &gEnMbAnim_00E18C, 3.0f, 0.0f, + Animation_GetLastFrame(&gEnMbAnim_00E18C), ANIMMODE_ONCE_INTERP, 0.0f); this->unk_32A = 1; this->unk_32E = 6; } else { - Animation_Change(&this->skelAnime, &D_0600E18C, 3.0f, 0.0f, Animation_GetLastFrame(&D_0600E18C), - ANIMMODE_ONCE_INTERP, 0.0f); + Animation_Change(&this->skelAnime, &gEnMbAnim_00E18C, 3.0f, 0.0f, + Animation_GetLastFrame(&gEnMbAnim_00E18C), ANIMMODE_ONCE_INTERP, 0.0f); } } } else { @@ -1205,10 +1188,10 @@ void func_80AA8E88(EnMb* this) { yawDiff = this->actor.yawTowardsPlayer - this->actor.shape.rot.y; yawDiffABS = ABS(yawDiff); if (yawDiffABS <= 0x4000) { - Animation_MorphToPlayOnce(&this->skelAnime, &D_06001950, -4.0f); + Animation_MorphToPlayOnce(&this->skelAnime, &gEnMbAnim_001950, -4.0f); this->actor.speedXZ = -8.0f; } else { - Animation_MorphToPlayOnce(&this->skelAnime, &D_0600095C, -4.0f); + Animation_MorphToPlayOnce(&this->skelAnime, &gEnMbAnim_00095C, -4.0f); this->actor.speedXZ = 8.0f; } this->unk_32A = 30; @@ -1236,10 +1219,10 @@ void func_80AA8FC8(EnMb* this) { yawDiff = this->actor.yawTowardsPlayer - this->actor.shape.rot.y; yawDiffAbs = ABS(yawDiff); if (yawDiffAbs <= 0x4000) { - Animation_MorphToPlayOnce(&this->skelAnime, &D_060016B4, -4.0f); + Animation_MorphToPlayOnce(&this->skelAnime, &gEnMbFallBackAnim, -4.0f); this->actor.speedXZ = -8.0f; } else { - Animation_MorphToPlayOnce(&this->skelAnime, &D_060016B4, -4.0f); + Animation_MorphToPlayOnce(&this->skelAnime, &gEnMbFallBackAnim, -4.0f); this->actor.speedXZ = 8.0f; } this->actor.world.rot.y = this->actor.shape.rot.y; diff --git a/src/overlays/actors/ovl_En_Mb/z_en_mb.h b/src/overlays/actors/ovl_En_Mb/z_en_mb.h index 51b724edcb..3f692ae262 100644 --- a/src/overlays/actors/ovl_En_Mb/z_en_mb.h +++ b/src/overlays/actors/ovl_En_Mb/z_en_mb.h @@ -16,7 +16,7 @@ typedef struct EnMb { /* 0x01D0 */ Vec3s jointTable[28]; /* 0x0278 */ Vec3s morphTable[28]; /* 0x0320 */ s32 unk_320; - /* 0x0324 */ EnMbActionFunc actionFunc; + /* 0x0324 */ EnMbActionFunc actionFunc; /* 0x0328 */ s16 unk_328; /* 0x032A */ s16 unk_32A; /* 0x032C */ s16 soundTimer; @@ -24,7 +24,7 @@ typedef struct EnMb { /* 0x0330 */ s16 unk_330; /* 0x0332 */ s16 unk_332; /* 0x0334 */ s16 attackParams; - /* 0x0338 */ Vec3f effSpawnPos; + /* 0x0338 */ Vec3f effSpawnPos; /* 0x0344 */ Vec3f waypointPos; /* 0x0350 */ char unk_34A[0xC]; /* 0x035C */ s8 waypoint; diff --git a/src/overlays/actors/ovl_En_Niw_Girl/z_en_niw_girl.c b/src/overlays/actors/ovl_En_Niw_Girl/z_en_niw_girl.c index 8b4a30a11c..c33f8ce64e 100644 --- a/src/overlays/actors/ovl_En_Niw_Girl/z_en_niw_girl.c +++ b/src/overlays/actors/ovl_En_Niw_Girl/z_en_niw_girl.c @@ -5,6 +5,7 @@ */ #include "z_en_niw_girl.h" +#include "objects/object_gr/object_gr.h" #include "vt.h" #define FLAGS 0x00000019 @@ -52,14 +53,6 @@ static ColliderCylinderInit sCylinderInit = { { 10, 30, 0, { 0, 0, 0 } }, }; -static Vec3f sConstVec3f = { 0.2f, 0.2f, 0.2f }; - -static Gfx* D_80AB99D8[] = { 0x06004178, 0x06004978, 0x06005178 }; - -extern FlexSkeletonHeader D_06009948; -extern AnimationHeader D_06000378; -extern AnimationHeader D_06009C78; - void EnNiwGirl_Init(Actor* thisx, GlobalContext* globalCtx) { EnNiwGirl* this = THIS; s32 pad; @@ -67,7 +60,8 @@ void EnNiwGirl_Init(Actor* thisx, GlobalContext* globalCtx) { Vec3f vec2; s32 pad2; - SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_06009948, &D_06000378, this->jointTable, this->morphTable, 17); + SkelAnime_InitFlex(globalCtx, &this->skelAnime, &gNiwGirlSkel, &gNiwGirlRunAnim, this->jointTable, this->morphTable, + 17); Collider_InitCylinder(globalCtx, &this->collider); Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit); this->actor.targetMode = 6; @@ -103,8 +97,8 @@ void EnNiwGirl_Destroy(Actor* thisx, GlobalContext* globalCtx) { } void EnNiwGirl_Jump(EnNiwGirl* this, GlobalContext* globalCtx) { - f32 frameCount = Animation_GetLastFrame(&D_06000378); - Animation_Change(&this->skelAnime, &D_06000378, 1.0f, 0.0f, frameCount, ANIMMODE_LOOP, -10.0f); + f32 frameCount = Animation_GetLastFrame(&gNiwGirlRunAnim); + Animation_Change(&this->skelAnime, &gNiwGirlRunAnim, 1.0f, 0.0f, frameCount, 0, -10.0f); this->actor.flags &= ~1; this->actionFunc = func_80AB9210; } @@ -144,7 +138,7 @@ void func_80AB9210(EnNiwGirl* this, GlobalContext* globalCtx) { } void EnNiwGirl_Talk(EnNiwGirl* this, GlobalContext* globalCtx) { - Animation_Change(&this->skelAnime, &D_06009C78, 1.0f, 0.0f, Animation_GetLastFrame(&D_06009C78), ANIMMODE_LOOP, + Animation_Change(&this->skelAnime, &gNiwGirlJumpAnim, 1.0f, 0.0f, Animation_GetLastFrame(&gNiwGirlJumpAnim), 0, -10.0f); this->actor.flags |= 1; this->actor.textId = 0x7000; @@ -201,11 +195,11 @@ void EnNiwGirl_Update(Actor* thisx, GlobalContext* globalCtx) { Actor_SetScale(&this->actor, 0.013f); this->unkUpTimer++; tempActionFunc = func_80AB94D0; - if (this->unk_274 == 0) { - this->unk_272++; - if (this->unk_272 >= 3) { - this->unk_272 = 0; - this->unk_274 = (s16)Rand_ZeroFloat(60.0f) + 20; + if (this->blinkTimer == 0) { + this->eyeIndex++; + if (this->eyeIndex >= 3) { + this->eyeIndex = 0; + this->blinkTimer = (s16)Rand_ZeroFloat(60.0f) + 20; } } this->unk_280 = 30.0f; @@ -223,8 +217,8 @@ void EnNiwGirl_Update(Actor* thisx, GlobalContext* globalCtx) { Math_SmoothStepToS(&this->unk_260.y, 0, 5, 3000, 0); Math_SmoothStepToS(&this->unk_260.z, 0, 5, 3000, 0); } - if (this->unk_274 != 0) { - this->unk_274--; + if (this->blinkTimer != 0) { + this->blinkTimer--; } if (this->jumpTimer != 0) { this->jumpTimer--; @@ -250,7 +244,10 @@ s32 EnNiwGirlOverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dLi return false; } +static Vec3f sConstVec3f = { 0.2f, 0.2f, 0.2f }; + void EnNiwGirl_Draw(Actor* thisx, GlobalContext* globalCtx) { + static u64* eyeTextures[] = { gNiwGirlEyeOpenTex, gNiwGirlEyeHalfTex, gNiwGirlEyeClosedTex }; EnNiwGirl* this = THIS; s32 pad; Vec3f sp4C = sConstVec3f; @@ -258,7 +255,7 @@ void EnNiwGirl_Draw(Actor* thisx, GlobalContext* globalCtx) { OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_niw_girl.c", 573); func_80093D18(globalCtx->state.gfxCtx); - gSPSegment(POLY_OPA_DISP++, 0x08, SEGMENTED_TO_VIRTUAL(D_80AB99D8[this->unk_272])); + gSPSegment(POLY_OPA_DISP++, 0x08, SEGMENTED_TO_VIRTUAL(eyeTextures[this->eyeIndex])); SkelAnime_DrawFlexOpa(globalCtx, this->skelAnime.skeleton, this->skelAnime.jointTable, this->skelAnime.dListCount, EnNiwGirlOverrideLimbDraw, NULL, this); func_80033C30(&this->actor.world.pos, &sp4C, 255, globalCtx); diff --git a/src/overlays/actors/ovl_En_Niw_Girl/z_en_niw_girl.h b/src/overlays/actors/ovl_En_Niw_Girl/z_en_niw_girl.h index 587c08dc4d..1b7d09dc8f 100644 --- a/src/overlays/actors/ovl_En_Niw_Girl/z_en_niw_girl.h +++ b/src/overlays/actors/ovl_En_Niw_Girl/z_en_niw_girl.h @@ -20,8 +20,8 @@ typedef struct EnNiwGirl { /* 0x026C */ s16 jumpTimer; // Controls how many frames she jumps for and how long until she jumps again /* 0x026E */ s16 unkUpTimer; /* 0x0270 */ s16 unk_270; - /* 0x0272 */ s16 unk_272; - /* 0x0274 */ s16 unk_274; + /* 0x0272 */ s16 eyeIndex; + /* 0x0274 */ s16 blinkTimer; /* 0x0276 */ s16 path; /* 0x0278 */ s16 unk_278; /* 0x027A */ s16 unk_27A; diff --git a/src/overlays/actors/ovl_En_Ny/z_en_ny.c b/src/overlays/actors/ovl_En_Ny/z_en_ny.c index 1ae02ee1b8..548e8b2568 100644 --- a/src/overlays/actors/ovl_En_Ny/z_en_ny.c +++ b/src/overlays/actors/ovl_En_Ny/z_en_ny.c @@ -534,18 +534,18 @@ void EnNy_Draw(Actor* thisx, GlobalContext* globalCtx) { gDPPipeSync(POLY_XLU_DISP++); gDPSetRenderMode(POLY_XLU_DISP++, G_RM_PASS, G_RM_AA_ZB_XLU_SURF2); gDPSetEnvColor(POLY_XLU_DISP++, 0, 0, 0, this->unk_1D8); - gSPDisplayList(POLY_XLU_DISP++, gEnNyMetalBodyDlist); + gSPDisplayList(POLY_XLU_DISP++, gEnNyMetalBodyDL); gDPPipeSync(POLY_XLU_DISP++); gDPSetRenderMode(POLY_XLU_DISP++, G_RM_FOG_SHADE_A, G_RM_AA_ZB_XLU_SURF2); gDPSetEnvColor(POLY_XLU_DISP++, 0, 0, 0, this->unk_1D4); - gSPDisplayList(POLY_XLU_DISP++, gEnNyRockBodyDlist); + gSPDisplayList(POLY_XLU_DISP++, gEnNyRockBodyDL); if (this->unk_1E0 > 0.25f) { Matrix_Scale(this->unk_1E0, this->unk_1E0, this->unk_1E0, MTXMODE_APPLY); func_8002EBCC(&this->actor, globalCtx, 1); func_80093D18(globalCtx->state.gfxCtx); gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_ny.c", 868), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); - gSPDisplayList(POLY_OPA_DISP++, gEnNySpikeDlist); + gSPDisplayList(POLY_OPA_DISP++, gEnNySpikeDL); } CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_ny.c", 872); if (this->unk_1CA != 0) { @@ -583,7 +583,7 @@ void EnNy_DrawDeathEffect(Actor* thisx, GlobalContext* globalCtx) { Matrix_Scale(scale, scale, scale, MTXMODE_APPLY); gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_ny.c", 912), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); - gSPDisplayList(POLY_OPA_DISP++, gEnNyRockBodyDlist); + gSPDisplayList(POLY_OPA_DISP++, gEnNyRockBodyDL); } } CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_ny.c", 919); diff --git a/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c b/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c index 8d548e78f6..4b1d60784e 100644 --- a/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c +++ b/src/overlays/actors/ovl_Obj_Comb/z_obj_comb.c @@ -6,6 +6,7 @@ #include "z_obj_comb.h" #include "overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.h" +#include "objects/gameplay_field_keep/gameplay_field_keep.h" #define FLAGS 0x00000000 @@ -67,14 +68,11 @@ static InitChainEntry sInitChain[] = { ICHAIN_F32(uncullZoneDownward, 900, ICHAIN_STOP), }; -extern Gfx D_050095B0[]; -extern Gfx D_05009940[]; - void ObjComb_Break(ObjComb* this, GlobalContext* globalCtx) { Vec3f pos1; Vec3f pos; Vec3f velocity; - Gfx* dlist = D_05009940; + Gfx* dlist = gFieldBeehiveFragmentDL; s16 scale; s16 angle = 0; s16 gravity; @@ -85,7 +83,7 @@ void ObjComb_Break(ObjComb* this, GlobalContext* globalCtx) { s32 i; for (i = 0; i < 31; i++) { - angle += 20000; + angle += 0x4E20; rand1 = Rand_ZeroOne() * 10.0f; pos1.x = Math_SinS(angle) * rand1; @@ -200,7 +198,7 @@ void ObjComb_Wait(ObjComb* this, GlobalContext* globalCtx) { void ObjComb_Update(Actor* thisx, GlobalContext* globalCtx) { ObjComb* this = THIS; - this->unk_1B2 += 12000; + this->unk_1B2 += 0x2EE0; this->actionFunc(this, globalCtx); this->actor.shape.rot.x = Math_SinS(this->unk_1B2) * this->unk_1B0 + this->actor.home.rot.x; } @@ -223,7 +221,7 @@ void ObjComb_Draw(Actor* thisx, GlobalContext* globalCtx) { gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_obj_comb.c", 394), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); - gSPDisplayList(POLY_OPA_DISP++, D_050095B0); + gSPDisplayList(POLY_OPA_DISP++, gFieldBeehiveDL); Collider_UpdateSpheres(0, &this->collider); diff --git a/src/overlays/actors/ovl_Obj_Hamishi/z_obj_hamishi.c b/src/overlays/actors/ovl_Obj_Hamishi/z_obj_hamishi.c index a84b4b3ce7..843afa24a8 100644 --- a/src/overlays/actors/ovl_Obj_Hamishi/z_obj_hamishi.c +++ b/src/overlays/actors/ovl_Obj_Hamishi/z_obj_hamishi.c @@ -5,6 +5,7 @@ */ #include "z_obj_hamishi.h" +#include "objects/gameplay_field_keep/gameplay_field_keep.h" #define FLAGS 0x00000000 @@ -15,9 +16,6 @@ void ObjHamishi_Destroy(Actor* thisx, GlobalContext* globalCtx); void ObjHamishi_Update(Actor* thisx, GlobalContext* globalCtx); void ObjHamishi_Draw(Actor* thisx, GlobalContext* globalCtx); -extern Gfx D_0500A3B8[]; -extern Gfx D_0500A5E8[]; - const ActorInit Obj_Hamishi_InitVars = { ACTOR_OBJ_HAMISHI, ACTORCAT_PROP, @@ -131,7 +129,7 @@ void ObjHamishi_Break(ObjHamishi* this, GlobalContext* globalCtx) { } EffectSsKakera_Spawn(globalCtx, &pos, &velocity, &this->actor.world.pos, gravity, phi_v0, 30, 5, 0, - sEffectScales[i], 3, 0, 70, 1, OBJECT_GAMEPLAY_FIELD_KEEP, D_0500A5E8); + sEffectScales[i], 3, 0, 70, 1, OBJECT_GAMEPLAY_FIELD_KEEP, gSilverRockFragmentsDL); } func_80033480(globalCtx, &this->actor.world.pos, 140.0f, 6, 180, 90, 1); @@ -205,7 +203,7 @@ void ObjHamishi_Draw(Actor* thisx, GlobalContext* globalCtx) { gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_obj_hamishi.c", 404), G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW); gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 255, 170, 130, 255); - gSPDisplayList(POLY_OPA_DISP++, D_0500A3B8); + gSPDisplayList(POLY_OPA_DISP++, gSilverRockDL); CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_obj_hamishi.c", 411); } diff --git a/src/overlays/actors/ovl_Obj_Hana/z_obj_hana.c b/src/overlays/actors/ovl_Obj_Hana/z_obj_hana.c index bcb0219f9b..fec11a1d4e 100644 --- a/src/overlays/actors/ovl_Obj_Hana/z_obj_hana.c +++ b/src/overlays/actors/ovl_Obj_Hana/z_obj_hana.c @@ -5,6 +5,7 @@ */ #include "z_obj_hana.h" +#include "objects/gameplay_field_keep/gameplay_field_keep.h" #define FLAGS 0x00000000 @@ -58,9 +59,9 @@ typedef struct { } HanaParams; // size = 0x10 static HanaParams sHanaParams[] = { - { 0x05000500, 0.01f, 0.0f, -1, 0 }, - { 0x0500A880, 0.1f, 58.0f, 10, 18 }, - { 0x0500B9D0, 0.4f, 0.0f, 12, 44 }, + { gHanaDL, 0.01f, 0.0f, -1, 0 }, + { gFieldKakeraDL, 0.1f, 58.0f, 10, 18 }, + { gFieldBushDL, 0.4f, 0.0f, 12, 44 }, }; static InitChainEntry sInitChain[] = { diff --git a/src/overlays/actors/ovl_player_actor/z_player.c b/src/overlays/actors/ovl_player_actor/z_player.c index aed89820b4..7e57489af4 100644 --- a/src/overlays/actors/ovl_player_actor/z_player.c +++ b/src/overlays/actors/ovl_player_actor/z_player.c @@ -18,6 +18,7 @@ #include "overlays/actors/ovl_En_Horse/z_en_horse.h" #include "overlays/effects/ovl_Effect_Ss_Fhg_Flash/z_eff_ss_fhg_flash.h" #include "objects/gameplay_keep/gameplay_keep.h" +#include "objects/object_link_child/object_link_child.h" #define THIS ((Player*)thisx) @@ -354,16 +355,16 @@ s32 Player_InflictDamage(GlobalContext* globalCtx, s32 damage); void func_80853148(GlobalContext* globalCtx, Actor* actor); // .bss part 1 -s32 D_80858AA0; -s32 D_80858AA4; -Vec3f D_80858AA8; -Input* sControlInput; +static s32 D_80858AA0; +static s32 D_80858AA4; +static Vec3f D_80858AA8; +static Input* sControlInput; // .data -u8 D_80853410[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }; +static u8 D_80853410[] = { 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1 }; -PlayerAgeProperties sAgeProperties[] = { +static PlayerAgeProperties sAgeProperties[] = { { 56.0f, 90.0f, @@ -468,34 +469,34 @@ PlayerAgeProperties sAgeProperties[] = { }, }; -u32 D_808535D0 = false; -f32 D_808535D4 = 0.0f; -s16 D_808535D8 = 0; -s16 D_808535DC = 0; -s32 D_808535E0 = 0; -s32 D_808535E4 = 0; -f32 D_808535E8 = 1.0f; -f32 D_808535EC = 1.0f; -u32 D_808535F0 = 0; -u32 D_808535F4 = 0; -s16 D_808535F8 = 0; -s16 D_808535FC = 0; -f32 D_80853600 = 0.0f; -s32 D_80853604 = 0; -s32 D_80853608 = 0; -s32 D_8085360C = 0; -s16 D_80853610 = 0; -s32 D_80853614 = 0; -s32 D_80853618 = 0; +static u32 D_808535D0 = false; +static f32 D_808535D4 = 0.0f; +static s16 D_808535D8 = 0; +static s16 D_808535DC = 0; +static s32 D_808535E0 = 0; +static s32 D_808535E4 = 0; +static f32 D_808535E8 = 1.0f; +static f32 D_808535EC = 1.0f; +static u32 D_808535F0 = 0; +static u32 D_808535F4 = 0; +static s16 D_808535F8 = 0; +static s16 D_808535FC = 0; +static f32 D_80853600 = 0.0f; +static s32 D_80853604 = 0; +static s32 D_80853608 = 0; +static s32 D_8085360C = 0; +static s16 D_80853610 = 0; +static s32 D_80853614 = 0; +static s32 D_80853618 = 0; -u16 D_8085361C[] = { +static u16 D_8085361C[] = { NA_SE_VO_LI_SWEAT, NA_SE_VO_LI_SNEEZE, NA_SE_VO_LI_RELAX, NA_SE_VO_LI_FALL_L, }; -GetItemEntry sGetItemTable[] = { +static GetItemEntry sGetItemTable[] = { GET_ITEM(ITEM_BOMBS_5, OBJECT_GI_BOMB_1, GID_BOMB, 0x32, 0x59, CHEST_ANIM_SHORT), GET_ITEM(ITEM_NUTS_5, OBJECT_GI_NUTS, GID_NUTS, 0x34, 0x0C, CHEST_ANIM_SHORT), GET_ITEM(ITEM_BOMBCHU, OBJECT_GI_BOMB_2, GID_BOMBCHU, 0x33, 0x80, CHEST_ANIM_SHORT), @@ -623,306 +624,306 @@ GetItemEntry sGetItemTable[] = { GET_ITEM_NONE, }; -LinkAnimationHeader* D_80853914[] = { +static LinkAnimationHeader* D_80853914[] = { &gPlayerAnim_003240, &gPlayerAnim_003238, &gPlayerAnim_003238, &gPlayerAnim_002BE0, &gPlayerAnim_003240, &gPlayerAnim_003240, }; -LinkAnimationHeader* D_8085392C[] = { +static LinkAnimationHeader* D_8085392C[] = { &gPlayerAnim_003290, &gPlayerAnim_003268, &gPlayerAnim_003268, &gPlayerAnim_002BF8, &gPlayerAnim_003290, &gPlayerAnim_003290, }; -LinkAnimationHeader* D_80853944[] = { +static LinkAnimationHeader* D_80853944[] = { &gPlayerAnim_003140, &gPlayerAnim_002B38, &gPlayerAnim_003138, &gPlayerAnim_002B40, &gPlayerAnim_003140, &gPlayerAnim_003140, }; -LinkAnimationHeader* D_8085395C[] = { +static LinkAnimationHeader* D_8085395C[] = { &gPlayerAnim_002E98, &gPlayerAnim_0029E8, &gPlayerAnim_002E98, &gPlayerAnim_0029F0, &gPlayerAnim_002E98, &gPlayerAnim_002E98, }; -LinkAnimationHeader* D_80853974[] = { +static LinkAnimationHeader* D_80853974[] = { &gPlayerAnim_002FB0, &gPlayerAnim_002FA8, &gPlayerAnim_002FB0, &gPlayerAnim_002A40, &gPlayerAnim_002FB0, &gPlayerAnim_002FB0, }; -LinkAnimationHeader* D_8085398C[] = { +static LinkAnimationHeader* D_8085398C[] = { &gPlayerAnim_003220, &gPlayerAnim_002590, &gPlayerAnim_002590, &gPlayerAnim_002BC0, &gPlayerAnim_003220, &gPlayerAnim_003220, }; -LinkAnimationHeader* D_808539A4[] = { +static LinkAnimationHeader* D_808539A4[] = { &gPlayerAnim_003230, &gPlayerAnim_0025D0, &gPlayerAnim_0025D0, &gPlayerAnim_002BD0, &gPlayerAnim_003230, &gPlayerAnim_003230, }; -LinkAnimationHeader* D_808539BC[] = { +static LinkAnimationHeader* D_808539BC[] = { &gPlayerAnim_002BB0, &gPlayerAnim_0031F8, &gPlayerAnim_0031F8, &gPlayerAnim_002BB0, &gPlayerAnim_002BB0, &gPlayerAnim_002BB0, }; -LinkAnimationHeader* D_808539D4[] = { +static LinkAnimationHeader* D_808539D4[] = { &gPlayerAnim_003088, &gPlayerAnim_002A70, &gPlayerAnim_002A70, &gPlayerAnim_003088, &gPlayerAnim_003088, &gPlayerAnim_003088, }; -LinkAnimationHeader* D_808539EC[] = { +static LinkAnimationHeader* D_808539EC[] = { &gPlayerAnim_002750, &gPlayerAnim_002748, &gPlayerAnim_002748, &gPlayerAnim_002750, &gPlayerAnim_002750, &gPlayerAnim_002750, }; -LinkAnimationHeader* D_80853A04[] = { +static LinkAnimationHeader* D_80853A04[] = { &gPlayerAnim_002330, &gPlayerAnim_002330, &gPlayerAnim_002330, &gPlayerAnim_002330, &gPlayerAnim_002330, &gPlayerAnim_002330, }; -LinkAnimationHeader* D_80853A1C[] = { +static LinkAnimationHeader* D_80853A1C[] = { &gPlayerAnim_002760, &gPlayerAnim_002758, &gPlayerAnim_002758, &gPlayerAnim_002760, &gPlayerAnim_002760, &gPlayerAnim_002760, }; -LinkAnimationHeader* D_80853A34[] = { +static LinkAnimationHeader* D_80853A34[] = { &gPlayerAnim_002338, &gPlayerAnim_002338, &gPlayerAnim_002338, &gPlayerAnim_002338, &gPlayerAnim_002338, &gPlayerAnim_002338, }; -LinkAnimationHeader* D_80853A4C[] = { +static LinkAnimationHeader* D_80853A4C[] = { &gPlayerAnim_002E08, &gPlayerAnim_002E00, &gPlayerAnim_002E00, &gPlayerAnim_002E08, &gPlayerAnim_002E08, &gPlayerAnim_002E08, }; -LinkAnimationHeader* D_80853A64[] = { +static LinkAnimationHeader* D_80853A64[] = { &gPlayerAnim_003028, &gPlayerAnim_003020, &gPlayerAnim_003020, &gPlayerAnim_003028, &gPlayerAnim_003028, &gPlayerAnim_003028, }; -LinkAnimationHeader* D_80853A7C[] = { +static LinkAnimationHeader* D_80853A7C[] = { &gPlayerAnim_003170, &gPlayerAnim_003168, &gPlayerAnim_003168, &gPlayerAnim_003170, &gPlayerAnim_003170, &gPlayerAnim_003170, }; -LinkAnimationHeader* D_80853A94[] = { +static LinkAnimationHeader* D_80853A94[] = { &gPlayerAnim_003038, &gPlayerAnim_003030, &gPlayerAnim_003030, &gPlayerAnim_002A68, &gPlayerAnim_003038, &gPlayerAnim_003038, }; -LinkAnimationHeader* D_80853AAC[] = { +static LinkAnimationHeader* D_80853AAC[] = { &gPlayerAnim_002FC0, &gPlayerAnim_002FB8, &gPlayerAnim_002FB8, &gPlayerAnim_002FC8, &gPlayerAnim_002FC0, &gPlayerAnim_002FC0, }; -LinkAnimationHeader* D_80853AC4[] = { +static LinkAnimationHeader* D_80853AC4[] = { &gPlayerAnim_003278, &gPlayerAnim_003270, &gPlayerAnim_003270, &gPlayerAnim_002BE8, &gPlayerAnim_003278, &gPlayerAnim_003278, }; -LinkAnimationHeader* D_80853ADC[] = { +static LinkAnimationHeader* D_80853ADC[] = { &gPlayerAnim_003288, &gPlayerAnim_003280, &gPlayerAnim_003280, &gPlayerAnim_002BF0, &gPlayerAnim_003288, &gPlayerAnim_003288, }; -LinkAnimationHeader* D_80853AF4[] = { +static LinkAnimationHeader* D_80853AF4[] = { &gPlayerAnim_002EB8, &gPlayerAnim_002EA0, &gPlayerAnim_002EA0, &gPlayerAnim_002EB8, &gPlayerAnim_0026C8, &gPlayerAnim_002EB8, }; -LinkAnimationHeader* D_80853B0C[] = { +static LinkAnimationHeader* D_80853B0C[] = { &gPlayerAnim_002ED8, &gPlayerAnim_002ED0, &gPlayerAnim_002ED0, &gPlayerAnim_002ED8, &gPlayerAnim_0026D0, &gPlayerAnim_002ED8, }; -LinkAnimationHeader* D_80853B24[] = { +static LinkAnimationHeader* D_80853B24[] = { &gPlayerAnim_002EB0, &gPlayerAnim_002EA8, &gPlayerAnim_002EA8, &gPlayerAnim_002EB0, &gPlayerAnim_002EB0, &gPlayerAnim_002EB0, }; -LinkAnimationHeader* D_80853B3C[] = { +static LinkAnimationHeader* D_80853B3C[] = { &gPlayerAnim_003190, &gPlayerAnim_003188, &gPlayerAnim_003188, &gPlayerAnim_002B68, &gPlayerAnim_003190, &gPlayerAnim_003190, }; -LinkAnimationHeader* D_80853B54[] = { +static LinkAnimationHeader* D_80853B54[] = { &gPlayerAnim_003178, &gPlayerAnim_002568, &gPlayerAnim_002568, &gPlayerAnim_002B58, &gPlayerAnim_003178, &gPlayerAnim_003178, }; -LinkAnimationHeader* D_80853B6C[] = { +static LinkAnimationHeader* D_80853B6C[] = { &gPlayerAnim_003180, &gPlayerAnim_002570, &gPlayerAnim_002570, &gPlayerAnim_002B60, &gPlayerAnim_003180, &gPlayerAnim_003180, }; -LinkAnimationHeader* D_80853B84[] = { +static LinkAnimationHeader* D_80853B84[] = { &gPlayerAnim_002D60, &gPlayerAnim_002D58, &gPlayerAnim_002D58, &gPlayerAnim_002D60, &gPlayerAnim_002D60, &gPlayerAnim_002D60, }; -LinkAnimationHeader* D_80853B9C[] = { +static LinkAnimationHeader* D_80853B9C[] = { &gPlayerAnim_002BB8, &gPlayerAnim_003218, &gPlayerAnim_003218, &gPlayerAnim_002BB8, &gPlayerAnim_002BB8, &gPlayerAnim_002BB8, }; -LinkAnimationHeader* D_80853BB4[] = { +static LinkAnimationHeader* D_80853BB4[] = { &gPlayerAnim_002BC8, &gPlayerAnim_003228, &gPlayerAnim_003228, &gPlayerAnim_002BC8, &gPlayerAnim_002BC8, &gPlayerAnim_002BC8, }; -LinkAnimationHeader* D_80853BCC[] = { +static LinkAnimationHeader* D_80853BCC[] = { &gPlayerAnim_0031C8, &gPlayerAnim_0031C0, &gPlayerAnim_0031C0, &gPlayerAnim_0031C8, &gPlayerAnim_0031C8, &gPlayerAnim_0031C8, }; -LinkAnimationHeader* D_80853BE4[] = { +static LinkAnimationHeader* D_80853BE4[] = { &gPlayerAnim_003118, &gPlayerAnim_003110, &gPlayerAnim_003110, &gPlayerAnim_003118, &gPlayerAnim_003118, &gPlayerAnim_003118, }; -LinkAnimationHeader* D_80853BFC[] = { +static LinkAnimationHeader* D_80853BFC[] = { &gPlayerAnim_002DE8, &gPlayerAnim_002DE8, &gPlayerAnim_002DE8, &gPlayerAnim_002DE8, &gPlayerAnim_002DE8, &gPlayerAnim_002DE8, }; -LinkAnimationHeader* D_80853C14[] = { +static LinkAnimationHeader* D_80853C14[] = { &gPlayerAnim_002E30, &gPlayerAnim_002E18, &gPlayerAnim_002E18, &gPlayerAnim_002E30, &gPlayerAnim_002E30, &gPlayerAnim_002E30, }; -LinkAnimationHeader* D_80853C2C[] = { +static LinkAnimationHeader* D_80853C2C[] = { &gPlayerAnim_002E40, &gPlayerAnim_002E38, &gPlayerAnim_002E38, &gPlayerAnim_002E40, &gPlayerAnim_002E40, &gPlayerAnim_002E40, }; -LinkAnimationHeader* D_80853C44[] = { +static LinkAnimationHeader* D_80853C44[] = { &gPlayerAnim_002E28, &gPlayerAnim_002E20, &gPlayerAnim_002E20, &gPlayerAnim_002E28, &gPlayerAnim_002E28, &gPlayerAnim_002E28, }; -LinkAnimationHeader* D_80853C5C[] = { +static LinkAnimationHeader* D_80853C5C[] = { &gPlayerAnim_0030C8, &gPlayerAnim_0030C0, &gPlayerAnim_0030C0, &gPlayerAnim_0030C8, &gPlayerAnim_0030C8, &gPlayerAnim_0030C8, }; -LinkAnimationHeader* D_80853C74[] = { +static LinkAnimationHeader* D_80853C74[] = { &gPlayerAnim_0030D8, &gPlayerAnim_0030D0, &gPlayerAnim_0030D0, &gPlayerAnim_0030D8, &gPlayerAnim_0030D8, &gPlayerAnim_0030D8, }; -LinkAnimationHeader* D_80853C8C[] = { +static LinkAnimationHeader* D_80853C8C[] = { &gPlayerAnim_0030B8, &gPlayerAnim_0030B0, &gPlayerAnim_0030B0, &gPlayerAnim_0030B8, &gPlayerAnim_0030B8, &gPlayerAnim_0030B8, }; -LinkAnimationHeader* D_80853CA4[] = { +static LinkAnimationHeader* D_80853CA4[] = { &gPlayerAnim_002F20, &gPlayerAnim_002F18, &gPlayerAnim_002F18, &gPlayerAnim_002F20, &gPlayerAnim_002F20, &gPlayerAnim_002F20, }; -LinkAnimationHeader* D_80853CBC[] = { +static LinkAnimationHeader* D_80853CBC[] = { &gPlayerAnim_002FF0, &gPlayerAnim_002FE8, &gPlayerAnim_002FE8, &gPlayerAnim_002FF0, &gPlayerAnim_002FF0, &gPlayerAnim_002FF0, }; -LinkAnimationHeader* D_80853CD4[] = { +static LinkAnimationHeader* D_80853CD4[] = { &gPlayerAnim_003010, &gPlayerAnim_003008, &gPlayerAnim_003008, &gPlayerAnim_003010, &gPlayerAnim_003010, &gPlayerAnim_003010, }; -LinkAnimationHeader* D_80853CEC[] = { +static LinkAnimationHeader* D_80853CEC[] = { &gPlayerAnim_003000, &gPlayerAnim_002FF8, &gPlayerAnim_002FF8, &gPlayerAnim_003000, &gPlayerAnim_003000, &gPlayerAnim_003000, }; -LinkAnimationHeader* D_80853D04[] = { +static LinkAnimationHeader* D_80853D04[] = { &gPlayerAnim_002EF0, &gPlayerAnim_002EE8, &gPlayerAnim_002EE8, &gPlayerAnim_002EF8, &gPlayerAnim_002EF0, &gPlayerAnim_002EF0, }; -LinkAnimationHeader* D_80853D1C[] = { +static LinkAnimationHeader* D_80853D1C[] = { &gPlayerAnim_0031E0, &gPlayerAnim_0031D8, &gPlayerAnim_0031D8, &gPlayerAnim_0031E8, &gPlayerAnim_0031E0, &gPlayerAnim_0031E0, }; -LinkAnimationHeader* D_80853D34[] = { +static LinkAnimationHeader* D_80853D34[] = { &gPlayerAnim_003468, &gPlayerAnim_003438, &gPlayerAnim_003438, &gPlayerAnim_003468, &gPlayerAnim_003468, &gPlayerAnim_003468, }; -LinkAnimationHeader* D_80853D4C[][3] = { +static LinkAnimationHeader* D_80853D4C[][3] = { { &gPlayerAnim_002A28, &gPlayerAnim_002A38, &gPlayerAnim_002A30 }, { &gPlayerAnim_002950, &gPlayerAnim_002960, &gPlayerAnim_002958 }, { &gPlayerAnim_0029D0, &gPlayerAnim_0029E0, &gPlayerAnim_0029D8 }, { &gPlayerAnim_002988, &gPlayerAnim_002998, &gPlayerAnim_002990 }, }; -LinkAnimationHeader* D_80853D7C[][2] = { +static LinkAnimationHeader* D_80853D7C[][2] = { { &gPlayerAnim_003248, &gPlayerAnim_003200 }, { &gPlayerAnim_003258, &gPlayerAnim_003210 }, { &gPlayerAnim_003250, &gPlayerAnim_003208 }, { &gPlayerAnim_003250, &gPlayerAnim_003208 }, { &gPlayerAnim_003430, &gPlayerAnim_0033F0 }, { &gPlayerAnim_003430, &gPlayerAnim_0033F0 }, { &gPlayerAnim_003430, &gPlayerAnim_0033F0 }, { &gPlayerAnim_0033F8, &gPlayerAnim_0033D0 }, { &gPlayerAnim_003400, &gPlayerAnim_0033D8 }, { &gPlayerAnim_003420, &gPlayerAnim_003420 }, { &gPlayerAnim_003408, &gPlayerAnim_0033E0 }, { &gPlayerAnim_003410, &gPlayerAnim_0033E8 }, - { &gPlayerAnim_003418, &gPlayerAnim_003418 }, { &gPlayerAnim_003428, &gPlayerAnim_003428 }, + { &gPlayerAnim_003418, &gPlayerAnim_003418 }, { &gPlayerAnim_003428, &gPlayerAnim_003428 } }; -struct_80832924 D_80853DEC[] = { +static struct_80832924 D_80853DEC[] = { { NA_SE_VO_LI_SNEEZE, -0x2008 }, }; -struct_80832924 D_80853DF0[] = { +static struct_80832924 D_80853DF0[] = { { NA_SE_VO_LI_SWEAT, -0x2012 }, }; -struct_80832924 D_80853DF4[] = { +static struct_80832924 D_80853DF4[] = { { NA_SE_VO_LI_BREATH_REST, -0x200D }, }; -struct_80832924 D_80853DF8[] = { +static struct_80832924 D_80853DF8[] = { { NA_SE_VO_LI_BREATH_REST, -0x200A }, }; -struct_80832924 D_80853DFC[] = { +static struct_80832924 D_80853DFC[] = { { NA_SE_PL_CALM_HIT, 0x82C }, { NA_SE_PL_CALM_HIT, 0x830 }, { NA_SE_PL_CALM_HIT, 0x834 }, { NA_SE_PL_CALM_HIT, 0x838 }, { NA_SE_PL_CALM_HIT, -0x83C }, }; -struct_80832924 D_80853E10[] = { +static struct_80832924 D_80853E10[] = { { 0, 0x4019 }, { 0, 0x401E }, { 0, 0x402C }, { 0, 0x4030 }, { 0, 0x4034 }, { 0, -0x4038 }, }; -struct_80832924 D_80853E28[] = { +static struct_80832924 D_80853E28[] = { { NA_SE_IT_SHIELD_POSTURE, 0x810 }, { NA_SE_IT_SHIELD_POSTURE, 0x814 }, { NA_SE_IT_SHIELD_POSTURE, -0x846 }, }; -struct_80832924 D_80853E34[] = { +static struct_80832924 D_80853E34[] = { { NA_SE_IT_HAMMER_SWING, 0x80A }, { NA_SE_VO_LI_AUTO_JUMP, 0x200A }, { NA_SE_IT_SWORD_SWING, 0x816 }, { NA_SE_VO_LI_SWORD_N, -0x2016 }, }; -struct_80832924 D_80853E44[] = { +static struct_80832924 D_80853E44[] = { { NA_SE_IT_SWORD_SWING, 0x827 }, { NA_SE_VO_LI_SWORD_N, -0x2027 }, }; -struct_80832924 D_80853E4C[] = { +static struct_80832924 D_80853E4C[] = { { NA_SE_VO_LI_RELAX, -0x2014 }, }; -struct_80832924* D_80853E50[] = { +static struct_80832924* D_80853E50[] = { D_80853DEC, D_80853DF0, D_80853DF4, D_80853DF8, D_80853DFC, D_80853E10, D_80853E28, D_80853E34, D_80853E44, D_80853E4C, NULL, }; -u8 D_80853E7C[] = { +static u8 D_80853E7C[] = { 0, 0, 1, 1, 2, 2, 2, 2, 10, 10, 10, 10, 10, 10, 3, 3, 4, 4, 8, 8, 5, 5, 6, 6, 7, 7, 9, 9, 0, }; // Used to map item IDs to action params -s8 sItemActionParams[] = { +static s8 sItemActionParams[] = { PLAYER_AP_STICK, PLAYER_AP_NUT, PLAYER_AP_BOMB, @@ -987,7 +988,7 @@ s8 sItemActionParams[] = { PLAYER_AP_SWORD_BGS, }; -s32 (*D_80853EDC[])(Player* this, GlobalContext* globalCtx) = { +static s32 (*D_80853EDC[])(Player* this, GlobalContext* globalCtx) = { func_8083485C, func_8083485C, func_8083485C, func_808349DC, func_808349DC, func_808349DC, func_8083485C, func_8083485C, func_8083501C, func_8083501C, func_8083501C, func_8083501C, func_8083501C, func_8083501C, func_8083501C, func_8083501C, func_8083501C, func_8083501C, func_808356E8, func_808356E8, func_80835800, @@ -1000,7 +1001,7 @@ s32 (*D_80853EDC[])(Player* this, GlobalContext* globalCtx) = { func_8083485C, func_8083485C, func_8083485C, func_8083485C, }; -void (*D_80853FE8[])(GlobalContext* globalCtx, Player* this) = { +static void (*D_80853FE8[])(GlobalContext* globalCtx, Player* this) = { func_80833770, func_80833770, func_80833770, func_80833770, func_80833770, func_80833770, func_8083377C, func_80833790, func_8083379C, func_8083379C, func_8083379C, func_8083379C, func_8083379C, func_8083379C, func_8083379C, func_8083379C, func_80833910, func_80833910, func_808337D4, func_808337D4, func_80833984, @@ -1013,24 +1014,24 @@ void (*D_80853FE8[])(GlobalContext* globalCtx, Player* this) = { func_80833770, func_80833770, func_80833770, func_80833770, }; -struct_808540F4 D_808540F4[] = { +static struct_808540F4 D_808540F4[] = { { &gPlayerAnim_002F50, 12 }, { &gPlayerAnim_003080, 6 }, { &gPlayerAnim_002C68, 8 }, { &gPlayerAnim_003090, 8 }, { &gPlayerAnim_002A20, 8 }, { &gPlayerAnim_002F30, 10 }, { &gPlayerAnim_002C58, 7 }, { &gPlayerAnim_002C60, 11 }, { &gPlayerAnim_002F50, 12 }, { &gPlayerAnim_003078, 4 }, { &gPlayerAnim_003058, 4 }, { &gPlayerAnim_002F38, 4 }, { &gPlayerAnim_0024E0, 5 }, { &gPlayerAnim_002F48, 13 }, }; -s8 D_80854164[][6] = { +static s8 D_80854164[][6] = { { 8, -5, -3, -6, 8, 11 }, { 5, 0, -1, 4, 5, 9 }, { 3, 1, 0, 2, 3, 9 }, { 6, -4, -2, 7, 6, 10 }, { 8, -5, -3, -6, 8, 11 }, { 8, -5, -3, -6, 8, 11 }, }; -ExplosiveInfo sExplosiveInfos[] = { +static ExplosiveInfo sExplosiveInfos[] = { { ITEM_BOMB, ACTOR_EN_BOM }, { ITEM_BOMBCHU, ACTOR_EN_BOM_CHU }, }; -struct_80854190 D_80854190[] = { +static struct_80854190 D_80854190[] = { { &gPlayerAnim_002A80, &gPlayerAnim_002A90, &gPlayerAnim_002A88, 1, 4 }, { &gPlayerAnim_0028C0, &gPlayerAnim_0028C8, &gPlayerAnim_002498, 1, 4 }, { &gPlayerAnim_002A98, &gPlayerAnim_002AA0, &gPlayerAnim_002540, 0, 5 }, @@ -1061,78 +1062,78 @@ struct_80854190 D_80854190[] = { { &gPlayerAnim_0029C0, &gPlayerAnim_0029C8, &gPlayerAnim_0024B8, 0, 16 }, }; -LinkAnimationHeader* D_80854350[] = { +static LinkAnimationHeader* D_80854350[] = { &gPlayerAnim_002AE8, &gPlayerAnim_002920, }; -LinkAnimationHeader* D_80854358[] = { +static LinkAnimationHeader* D_80854358[] = { &gPlayerAnim_002AE0, &gPlayerAnim_002920, }; -LinkAnimationHeader* D_80854360[] = { +static LinkAnimationHeader* D_80854360[] = { &gPlayerAnim_002AF0, &gPlayerAnim_002928, }; -LinkAnimationHeader* D_80854368[] = { +static LinkAnimationHeader* D_80854368[] = { &gPlayerAnim_002AF8, &gPlayerAnim_002930, }; -LinkAnimationHeader* D_80854370[] = { +static LinkAnimationHeader* D_80854370[] = { &gPlayerAnim_002B00, &gPlayerAnim_002938, }; -LinkAnimationHeader* D_80854378[] = { +static LinkAnimationHeader* D_80854378[] = { &gPlayerAnim_002AD8, &gPlayerAnim_002918, }; -u8 D_80854380[2] = { 0x18, 0x19 }; -u8 D_80854384[2] = { 0x1A, 0x1B }; +static u8 D_80854380[2] = { 0x18, 0x19 }; +static u8 D_80854384[2] = { 0x1A, 0x1B }; -u16 D_80854388[] = { BTN_B, BTN_CLEFT, BTN_CDOWN, BTN_CRIGHT }; +static u16 D_80854388[] = { BTN_B, BTN_CLEFT, BTN_CDOWN, BTN_CRIGHT }; -u8 sMagicSpellCosts[] = { 12, 24, 24, 12, 24, 12 }; +static u8 sMagicSpellCosts[] = { 12, 24, 24, 12, 24, 12 }; -u16 D_80854398[] = { NA_SE_IT_BOW_DRAW, NA_SE_IT_SLING_DRAW, NA_SE_IT_HOOKSHOT_READY }; +static u16 D_80854398[] = { NA_SE_IT_BOW_DRAW, NA_SE_IT_SLING_DRAW, NA_SE_IT_HOOKSHOT_READY }; -u8 sMagicArrowCosts[] = { 4, 4, 8 }; +static u8 sMagicArrowCosts[] = { 4, 4, 8 }; -LinkAnimationHeader* D_808543A4[] = { +static LinkAnimationHeader* D_808543A4[] = { &gPlayerAnim_0025C0, &gPlayerAnim_0025C8, }; -LinkAnimationHeader* D_808543AC[] = { +static LinkAnimationHeader* D_808543AC[] = { &gPlayerAnim_002580, &gPlayerAnim_002588, }; -LinkAnimationHeader* D_808543B4[] = { +static LinkAnimationHeader* D_808543B4[] = { &gPlayerAnim_002510, &gPlayerAnim_002518, }; -LinkAnimationHeader* D_808543BC[] = { +static LinkAnimationHeader* D_808543BC[] = { &gPlayerAnim_002510, &gPlayerAnim_002520, }; -LinkAnimationHeader* D_808543C4[] = { +static LinkAnimationHeader* D_808543C4[] = { &gPlayerAnim_002EC0, &gPlayerAnim_002A08, }; -LinkAnimationHeader* D_808543CC[] = { +static LinkAnimationHeader* D_808543CC[] = { &gPlayerAnim_0026F0, &gPlayerAnim_002CC8, }; -LinkAnimationHeader* D_808543D4[] = { +static LinkAnimationHeader* D_808543D4[] = { &gPlayerAnim_0026C0, &gPlayerAnim_002CC0, }; @@ -1570,7 +1571,7 @@ void func_808332F4(Player* this, GlobalContext* globalCtx) { this->unk_862 = ABS(giEntry->gi); } -LinkAnimationHeader* func_80833338(Player* this) { +static LinkAnimationHeader* func_80833338(Player* this) { return D_80853914[this->modelAnimType]; } @@ -2347,7 +2348,7 @@ s32 func_808350A4(GlobalContext* globalCtx, Player* this) { return 0; } -u16 D_808543DC[] = { NA_SE_IT_BOW_FLICK, NA_SE_IT_SLING_FLICK }; +static u16 D_808543DC[] = { NA_SE_IT_BOW_FLICK, NA_SE_IT_SLING_FLICK }; s32 func_808351D4(Player* this, GlobalContext* globalCtx) { s32 sp2C; @@ -3128,19 +3129,19 @@ s32 func_80837268(Player* this, f32* arg1, s16* arg2, f32 arg3, GlobalContext* g } } -s8 D_808543E0[] = { 13, 2, 4, 9, 10, 11, 8, -7 }; -s8 D_808543E8[] = { 13, 1, 2, 5, 3, 4, 9, 10, 11, 7, 8, -6 }; -s8 D_808543F4[] = { 13, 1, 2, 3, 4, 9, 10, 11, 8, 7, -6 }; -s8 D_80854400[] = { 13, 2, 4, 9, 10, 11, 8, -7 }; -s8 D_80854408[] = { 13, 2, 4, 9, 10, 11, 12, 8, -7 }; -s8 D_80854414[] = { -7 }; -s8 D_80854418[] = { 0, 11, 1, 2, 3, 5, 4, 9, 8, 7, -6 }; -s8 D_80854424[] = { 0, 11, 1, 2, 3, 12, 5, 4, 9, 8, 7, -6 }; -s8 D_80854430[] = { 13, 1, 2, 3, 12, 5, 4, 9, 10, 11, 8, 7, -6 }; -s8 D_80854440[] = { 10, 8, -7 }; -s8 D_80854444[] = { 0, 12, 5, -4 }; +static s8 D_808543E0[] = { 13, 2, 4, 9, 10, 11, 8, -7 }; +static s8 D_808543E8[] = { 13, 1, 2, 5, 3, 4, 9, 10, 11, 7, 8, -6 }; +static s8 D_808543F4[] = { 13, 1, 2, 3, 4, 9, 10, 11, 8, 7, -6 }; +static s8 D_80854400[] = { 13, 2, 4, 9, 10, 11, 8, -7 }; +static s8 D_80854408[] = { 13, 2, 4, 9, 10, 11, 12, 8, -7 }; +static s8 D_80854414[] = { -7 }; +static s8 D_80854418[] = { 0, 11, 1, 2, 3, 5, 4, 9, 8, 7, -6 }; +static s8 D_80854424[] = { 0, 11, 1, 2, 3, 12, 5, 4, 9, 8, 7, -6 }; +static s8 D_80854430[] = { 13, 1, 2, 3, 12, 5, 4, 9, 10, 11, 8, 7, -6 }; +static s8 D_80854440[] = { 10, 8, -7 }; +static s8 D_80854444[] = { 0, 12, 5, -4 }; -s32 (*D_80854448[])(Player* this, GlobalContext* globalCtx) = { +static s32 (*D_80854448[])(Player* this, GlobalContext* globalCtx) = { func_8083B998, func_80839800, func_8083E5A8, func_8083E0FC, func_8083B644, func_8083F7BC, func_8083C1DC, func_80850224, func_8083C544, func_8083EB44, func_8083BDBC, func_8083C2B0, func_80838A14, func_8083B040, }; @@ -3267,8 +3268,8 @@ void func_808377DC(GlobalContext* globalCtx, Player* this) { func_80837704(globalCtx, this); } -s8 D_80854480[] = { 12, 4, 4, 8 }; -s8 D_80854484[] = { 22, 23, 22, 23 }; +static s8 D_80854480[] = { 12, 4, 4, 8 }; +static s8 D_80854484[] = { 22, 23, 22, 23 }; s32 func_80837818(Player* this) { s32 sp1C = this->unk_84B[this->unk_846]; @@ -3321,7 +3322,7 @@ void func_80837918(Player* this, s32 quadIndex, u32 flags) { } } -u32 D_80854488[][2] = { +static u32 D_80854488[][2] = { { 0x00000200, 0x08000000 }, { 0x00000100, 0x02000000 }, { 0x00000400, 0x04000000 }, { 0x00000002, 0x08000000 }, { 0x00000040, 0x40000000 }, }; @@ -3407,7 +3408,7 @@ void func_80837B9C(Player* this, GlobalContext* globalCtx) { } } -LinkAnimationHeader* D_808544B0[] = { +static LinkAnimationHeader* D_808544B0[] = { &gPlayerAnim_002F80, &gPlayerAnim_002F78, &gPlayerAnim_002DE0, &gPlayerAnim_002DD8, &gPlayerAnim_002F70, &gPlayerAnim_002528, &gPlayerAnim_002DC8, &gPlayerAnim_0024F0, }; @@ -3658,7 +3659,7 @@ s32 func_808382DC(Player* this, GlobalContext* globalCtx) { } else { sp64 = (this->shieldQuad.base.acFlags & AC_BOUNCED) != 0; - // @bug The second set of conditions here seems intended as a way for Link to "block" hits by rolling. + //! @bug The second set of conditions here seems intended as a way for Link to "block" hits by rolling. // However, `Collider.atFlags` is a byte so the flag check at the end is incorrect and cannot work. // Additionally, `Collider.atHit` can never be set while already colliding as AC, so it's also bugged. // This behavior was later fixed in MM, most likely by removing both the `atHit` and `atFlags` checks. @@ -3911,13 +3912,11 @@ s32 func_80838FB8(GlobalContext* globalCtx, Player* this) { return 0; } -s16 D_808544F8[] = { - 0x045B, 0x0482, 0x0340, 0x044B, 0x02A2, 0x0201, 0x03B8, 0x04EE, 0x03C0, 0x0463, 0x01CD, 0x0394, 0x0340, 0x057C, -}; - -u8 D_80854514[] = { 11, 9, 3, 5, 7, 0 }; - s32 func_80839034(GlobalContext* globalCtx, Player* this, CollisionPoly* poly, s32 bgId) { + static s16 D_808544F8[] = { + 0x045B, 0x0482, 0x0340, 0x044B, 0x02A2, 0x0201, 0x03B8, 0x04EE, 0x03C0, 0x0463, 0x01CD, 0x0394, 0x0340, 0x057C, + }; + static u8 D_80854514[] = { 11, 9, 3, 5, 7, 0 }; s32 sp3C; s32 temp; s32 sp34; @@ -4520,7 +4519,7 @@ void func_8083A9B8(Player* this, LinkAnimationHeader* anim, GlobalContext* globa LinkAnimation_PlayOnceSetSpeed(globalCtx, &this->skelAnime, anim, 1.3f); } -Vec3f D_8085451C = { 0.0f, 0.0f, 100.0f }; +static Vec3f D_8085451C = { 0.0f, 0.0f, 100.0f }; void func_8083AA10(Player* this, GlobalContext* globalCtx) { s32 sp5C; @@ -4671,7 +4670,7 @@ void func_8083B010(Player* this) { this->actor.focus.rot.y = this->actor.shape.rot.y; } -u8 D_80854528[] = { +static u8 D_80854528[] = { GI_LETTER_ZELDA, GI_WEIRD_EGG, GI_CHICKEN, GI_BEAN, GI_POCKET_EGG, GI_POCKET_CUCCO, GI_COJIRO, GI_ODD_MUSHROOM, GI_ODD_POTION, GI_SAW, GI_SWORD_BROKEN, GI_PRESCRIPTION, GI_FROG, GI_EYEDROPS, GI_CLAIM_CHECK, GI_MASK_SKULL, GI_MASK_SPOOKY, GI_MASK_KEATON, @@ -4679,7 +4678,7 @@ u8 D_80854528[] = { GI_LETTER_RUTO, GI_LETTER_RUTO, GI_LETTER_RUTO, GI_LETTER_RUTO, GI_LETTER_RUTO, }; -LinkAnimationHeader* D_80854548[] = { +static LinkAnimationHeader* D_80854548[] = { &gPlayerAnim_002F88, &gPlayerAnim_002690, &gPlayerAnim_003198, @@ -5202,7 +5201,7 @@ s32 func_8083C61C(GlobalContext* globalCtx, Player* this) { return 0; } -struct_80854554 D_80854554[] = { +static struct_80854554 D_80854554[] = { { &gPlayerAnim_002648, &gPlayerAnim_002640, 2, 3 }, { &gPlayerAnim_002680, &gPlayerAnim_002678, 5, 3 }, }; @@ -5671,7 +5670,7 @@ s32 func_8083DB98(Player* this, s32 arg1) { return func_80836AB8(this, arg1); } -Vec3f D_8085456C = { 0.0f, 100.0f, 40.0f }; +static Vec3f D_8085456C = { 0.0f, 100.0f, 40.0f }; void func_8083DC54(Player* this, GlobalContext* globalCtx) { s16 sp46; @@ -5745,7 +5744,7 @@ void func_8083DFE0(Player* this, f32* arg1, s16* arg2) { } } -struct_80854578 D_80854578[] = { +static struct_80854578 D_80854578[] = { { &gPlayerAnim_003398, 35.17f, 6.6099997f }, { &gPlayerAnim_0033A8, -34.16f, 7.91f }, }; @@ -5803,7 +5802,7 @@ void func_8083E298(CollisionPoly* arg0, Vec3f* arg1, s16* arg2) { *arg2 = Math_Atan2S(arg1->z, arg1->x); } -LinkAnimationHeader* D_80854590[] = { +static LinkAnimationHeader* D_80854590[] = { &gPlayerAnim_002EE0, &gPlayerAnim_0031D0, }; @@ -5848,7 +5847,7 @@ s32 func_8083E318(GlobalContext* globalCtx, Player* this, CollisionPoly* arg2) { } // unknown data (unused) -s32 D_80854598[] = { +static s32 D_80854598[] = { 0xFFDB0871, 0xF8310000, 0x00940470, 0xF3980000, 0xFFB504A9, 0x0C9F0000, 0x08010402, }; @@ -7347,8 +7346,8 @@ void func_8084260C(Vec3f* src, Vec3f* dest, f32 arg2, f32 arg3, f32 arg4) { dest->z = (Rand_ZeroOne() * arg3) + src->z; } -Vec3f D_808545B4 = { 0.0f, 0.0f, 0.0f }; -Vec3f D_808545C0 = { 0.0f, 0.0f, 0.0f }; +static Vec3f D_808545B4 = { 0.0f, 0.0f, 0.0f }; +static Vec3f D_808545C0 = { 0.0f, 0.0f, 0.0f }; s32 func_8084269C(GlobalContext* globalCtx, Player* this) { Vec3f sp2C; @@ -7460,7 +7459,7 @@ void func_80842CF0(GlobalContext* globalCtx, Player* this) { func_80842B7C(globalCtx, this); } -LinkAnimationHeader* D_808545CC[] = { +static LinkAnimationHeader* D_808545CC[] = { &gPlayerAnim_002B10, &gPlayerAnim_002B20, &gPlayerAnim_002B08, @@ -7778,7 +7777,7 @@ void func_80843954(Player* this, GlobalContext* globalCtx) { } } -struct_80832924 D_808545DC[] = { +static struct_80832924 D_808545DC[] = { { 0, 0x4014 }, { 0, -0x401E }, }; @@ -7801,7 +7800,7 @@ void func_80843A38(Player* this, GlobalContext* globalCtx) { func_80832924(this, D_808545DC); } -Vec3f D_808545E4 = { 0.0f, 0.0f, 5.0f }; +static Vec3f D_808545E4 = { 0.0f, 0.0f, 5.0f }; void func_80843AE8(GlobalContext* globalCtx, Player* this) { if (this->unk_850 != 0) { @@ -7839,7 +7838,7 @@ void func_80843AE8(GlobalContext* globalCtx, Player* this) { } } -struct_80832924 D_808545F0[] = { +static struct_80832924 D_808545F0[] = { { NA_SE_PL_BOUND, 0x103C }, { 0, 0x408C }, { 0, 0x40A4 }, @@ -7881,7 +7880,7 @@ void func_80843E14(Player* this, u16 sfxId) { } } -FallImpactInfo D_80854600[] = { +static FallImpactInfo D_80854600[] = { { -8, 180, 40, 100, NA_SE_VO_LI_LAND_DAMAGE_S }, { -16, 255, 140, 150, NA_SE_VO_LI_LAND_DAMAGE_S }, }; @@ -8066,7 +8065,7 @@ void func_8084411C(Player* this, GlobalContext* globalCtx) { } } -struct_80832924 D_8085460C[] = { +static struct_80832924 D_8085460C[] = { { NA_SE_VO_LI_SWORD_N, 0x2001 }, { NA_SE_PL_WALK_GROUND, 0x1806 }, { NA_SE_PL_ROLL, 0x806 }, @@ -8694,7 +8693,7 @@ void func_80846050(Player* this, GlobalContext* globalCtx) { Math_ScaledStepToS(&this->unk_3BC.y, 0, 4000); } -struct_80832924 D_8085461C[] = { +static struct_80832924 D_8085461C[] = { { NA_SE_VO_LI_SWORD_L, 0x2031 }, { NA_SE_VO_LI_SWORD_N, -0x20E6 }, }; @@ -8835,7 +8834,7 @@ void func_80846578(Player* this, GlobalContext* globalCtx) { } } -ColliderCylinderInit D_80854624 = { +static ColliderCylinderInit D_80854624 = { { COLTYPE_HIT5, AT_NONE, @@ -8855,7 +8854,7 @@ ColliderCylinderInit D_80854624 = { { 12, 60, 0, { 0, 0, 0 } }, }; -ColliderQuadInit D_80854650 = { +static ColliderQuadInit D_80854650 = { { COLTYPE_NONE, AT_ON | AT_TYPE_PLAYER, @@ -8875,7 +8874,7 @@ ColliderQuadInit D_80854650 = { { { { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f }, { 0.0f, 0.0f, 0.0f } } }, }; -ColliderQuadInit D_808546A0 = { +static ColliderQuadInit D_808546A0 = { { COLTYPE_METAL, AT_ON | AT_TYPE_PLAYER, @@ -8914,7 +8913,7 @@ void func_80846660(GlobalContext* globalCtx, Player* this) { this->actor.world.pos.y += 800.0f; } -u8 D_808546F0[] = { ITEM_SWORD_MASTER, ITEM_SWORD_KOKIRI }; +static u8 D_808546F0[] = { ITEM_SWORD_MASTER, ITEM_SWORD_KOKIRI }; void func_80846720(GlobalContext* globalCtx, Player* this, s32 arg2) { s32 item = D_808546F0[(void)0, gSaveContext.linkAge]; @@ -8934,7 +8933,7 @@ void func_80846720(GlobalContext* globalCtx, Player* this, s32 arg2) { } } -Vec3f D_808546F4 = { -1.0f, 69.0f, 20.0f }; +static Vec3f D_808546F4 = { -1.0f, 69.0f, 20.0f }; void func_808467D4(GlobalContext* globalCtx, Player* this) { func_80835C58(globalCtx, this, func_8084E9AC, 0); @@ -8973,7 +8972,7 @@ void func_808469BC(GlobalContext* globalCtx, Player* this) { this->stateFlags1 |= 0x20000000; } -s16 D_80854700[] = { ACTOR_MAGIC_WIND, ACTOR_MAGIC_DARK, ACTOR_MAGIC_FIRE }; +static s16 D_80854700[] = { ACTOR_MAGIC_WIND, ACTOR_MAGIC_DARK, ACTOR_MAGIC_FIRE }; Actor* func_80846A00(GlobalContext* globalCtx, Player* this, s32 arg2) { return Actor_Spawn(&globalCtx->actorCtx, globalCtx, D_80854700[arg2], this->actor.world.pos.x, @@ -8986,16 +8985,16 @@ void func_80846A68(GlobalContext* globalCtx, Player* this) { this->stateFlags1 |= 0x20000000; } -InitChainEntry D_80854708[] = { +static InitChainEntry D_80854708[] = { ICHAIN_F32(targetArrowOffset, 500, ICHAIN_STOP), }; -EffectBlureInit2 D_8085470C = { +static EffectBlureInit2 D_8085470C = { 0, 8, 0, { 255, 255, 255, 255 }, { 255, 255, 255, 64 }, { 255, 255, 255, 0 }, { 255, 255, 255, 0 }, 4, 0, 2, 0, { 0, 0, 0, 0 }, { 0, 0, 0, 0 }, }; -Vec3s D_80854730 = { -57, 3377, 0 }; +static Vec3s D_80854730 = { -57, 3377, 0 }; void Player_InitCommon(Player* this, GlobalContext* globalCtx, FlexSkeletonHeader* skelHeader) { this->ageProperties = &sAgeProperties[gSaveContext.linkAge]; @@ -9025,13 +9024,13 @@ void Player_InitCommon(Player* this, GlobalContext* globalCtx, FlexSkeletonHeade Collider_SetQuad(globalCtx, &this->shieldQuad, &this->actor, &D_808546A0); } -void (*D_80854738[])(GlobalContext* globalCtx, Player* this) = { +static void (*D_80854738[])(GlobalContext* globalCtx, Player* this) = { func_80846648, func_808467D4, func_80846660, func_808468A8, func_808468E8, func_808469BC, func_80846A68, func_80846978, func_8083CA54, func_8083CA54, func_8083CA54, func_8083CA54, func_8083CA54, func_8083CA20, func_8083CA54, func_8083CA9C, }; -Vec3f D_80854778 = { 0.0f, 50.0f, 0.0f }; +static Vec3f D_80854778 = { 0.0f, 50.0f, 0.0f }; void Player_Init(Actor* thisx, GlobalContext* globalCtx2) { Player* this = THIS; @@ -9207,9 +9206,9 @@ void func_80847298(Player* this) { this->unk_6AE = 0; } -f32 D_80854784[] = { 120.0f, 240.0f, 360.0f }; +static f32 D_80854784[] = { 120.0f, 240.0f, 360.0f }; -u8 D_80854790[] = { 0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C }; +static u8 D_80854790[] = { 0x15, 0x16, 0x17, 0x18, 0x19, 0x1A, 0x1B, 0x1C }; void func_808473D4(GlobalContext* globalCtx, Player* this) { if ((func_8010BDBC(&globalCtx->msgCtx) == 0) && (this->actor.category == ACTORCAT_PLAYER)) { @@ -9353,7 +9352,7 @@ s32 func_80847A78(Player* this) { return 1; } -Vec3f D_80854798 = { 0.0f, 18.0f, 0.0f }; +static Vec3f D_80854798 = { 0.0f, 18.0f, 0.0f }; void func_80847BA0(GlobalContext* globalCtx, Player* this) { u8 spC7 = 0; @@ -9700,11 +9699,11 @@ void func_808486A8(GlobalContext* globalCtx, Player* this) { } } -Vec3f D_808547A4 = { 0.0f, 0.5f, 0.0f }; -Vec3f D_808547B0 = { 0.0f, 0.5f, 0.0f }; +static Vec3f D_808547A4 = { 0.0f, 0.5f, 0.0f }; +static Vec3f D_808547B0 = { 0.0f, 0.5f, 0.0f }; -Color_RGBA8 D_808547BC = { 255, 255, 100, 255 }; -Color_RGBA8 D_808547C0 = { 255, 50, 0, 0 }; +static Color_RGBA8 D_808547BC = { 255, 255, 100, 255 }; +static Color_RGBA8 D_808547C0 = { 255, 50, 0, 0 }; void func_80848A04(GlobalContext* globalCtx, Player* this) { f32 temp; @@ -9842,16 +9841,16 @@ void func_80848EF8(Player* this) { } } -s8 D_808547C4[] = { +static s8 D_808547C4[] = { 0, 3, 3, 5, 4, 8, 9, 13, 14, 15, 16, 17, 18, -22, 23, 24, 25, 26, 27, 28, 29, 31, 32, 33, 34, -35, 30, 36, 38, -39, -40, -41, 42, 43, 45, 46, 0, 0, 0, 67, 48, 47, -50, 51, -52, -53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64, -65, -66, 68, 11, 69, 70, 71, 8, 8, 72, 73, 78, 79, 80, 89, 90, 91, 92, 77, 19, 94, }; -Vec3f D_80854814 = { 0.0f, 0.0f, 200.0f }; +static Vec3f D_80854814 = { 0.0f, 0.0f, 200.0f }; -f32 D_80854820[] = { 2.0f, 4.0f, 7.0f }; -f32 D_8085482C[] = { 0.5f, 1.0f, 3.0f }; +static f32 D_80854820[] = { 2.0f, 4.0f, 7.0f }; +static f32 D_8085482C[] = { 0.5f, 1.0f, 3.0f }; void Player_UpdateCommon(Player* this, GlobalContext* globalCtx, Input* input) { s32 pad; @@ -10242,7 +10241,7 @@ void Player_UpdateCommon(Player* this, GlobalContext* globalCtx, Input* input) { Collider_ResetQuadAT(globalCtx, &this->shieldQuad.base); } -Vec3f D_80854838 = { 0.0f, 0.0f, -30.0f }; +static Vec3f D_80854838 = { 0.0f, 0.0f, -30.0f }; void Player_Update(Actor* thisx, GlobalContext* globalCtx) { static Vec3f sDogSpawnPos; @@ -10296,14 +10295,15 @@ void Player_Update(Actor* thisx, GlobalContext* globalCtx) { MREG(55) = this->actor.world.rot.y; } -struct_80858AC8 D_80858AC8; -Vec3s D_80858AD8[25]; +static struct_80858AC8 D_80858AC8; +static Vec3s D_80858AD8[25]; -Gfx* D_80854844[PLAYER_MASK_MAX - 1] = { - 0x0602B060, 0x0602AD40, 0x0602AF70, 0x0602CA38, 0x0602B350, 0x0602B580, 0x0602B788, 0x0602B1F0, +static Gfx* sMaskDlists[PLAYER_MASK_MAX - 1] = { + gLinkChildKeatonMaskDL, gLinkChildSkullMaskDL, gLinkChildSpookyMaskDL, gLinkChildBunnyHoodDL, + gLinkChildGoronMaskDL, gLinkChildZoraMaskDL, gLinkChildGerudoMaskDL, gLinkChildMaskOfTruthDL, }; -Vec3s D_80854864 = { 0, 0, 0 }; +static Vec3s D_80854864 = { 0, 0, 0 }; void func_8084A0E8(GlobalContext* globalCtx, Player* this, s32 lod, Gfx* cullDList, OverrideLimbDrawOpa overrideLimbDraw) { @@ -10339,7 +10339,7 @@ void func_8084A0E8(GlobalContext* globalCtx, Player* this, s32 lod, Gfx* cullDLi Matrix_ToMtx(sp70, "../z_player.c", 19279); } - gSPDisplayList(POLY_OPA_DISP++, D_80854844[this->currentMask - 1]); + gSPDisplayList(POLY_OPA_DISP++, sMaskDlists[this->currentMask - 1]); } if ((this->currentBoots == PLAYER_BOOTS_HOVER) && !(this->actor.bgCheckFlags & 1) && @@ -10767,7 +10767,7 @@ void func_8084B840(GlobalContext* globalCtx, Player* this, f32 arg2) { } } -struct_80832924 D_80854870[] = { +static struct_80832924 D_80854870[] = { { NA_SE_PL_SLIP, 0x1003 }, { NA_SE_PL_SLIP, -0x1015 }, }; @@ -10808,12 +10808,12 @@ void func_8084B898(Player* this, GlobalContext* globalCtx) { } } -struct_80832924 D_80854878[] = { +static struct_80832924 D_80854878[] = { { NA_SE_PL_SLIP, 0x1004 }, { NA_SE_PL_SLIP, -0x1018 }, }; -Vec3f D_80854880 = { 0.0f, 26.0f, -40.0f }; +static Vec3f D_80854880 = { 0.0f, 26.0f, -40.0f }; void func_8084B9E4(Player* this, GlobalContext* globalCtx) { LinkAnimationHeader* anim; @@ -11092,10 +11092,10 @@ void func_8084BF1C(Player* this, GlobalContext* globalCtx) { } } -f32 D_80854898[] = { 10.0f, 20.0f }; -f32 D_808548A0[] = { 40.0f, 50.0f }; +static f32 D_80854898[] = { 10.0f, 20.0f }; +static f32 D_808548A0[] = { 40.0f, 50.0f }; -struct_80832924 D_808548A8[] = { +static struct_80832924 D_808548A8[] = { { NA_SE_PL_WALK_LADDER, 0x80A }, { NA_SE_PL_WALK_LADDER, 0x814 }, { NA_SE_PL_WALK_LADDER, -0x81E }, @@ -11141,7 +11141,7 @@ void func_8084C5F8(Player* this, GlobalContext* globalCtx) { } } -struct_80832924 D_808548B4[] = { +static struct_80832924 D_808548B4[] = { { 0, 0x3028 }, { 0, 0x3030 }, { 0, 0x3038 }, { 0, 0x3040 }, { 0, 0x3048 }, { 0, 0x3050 }, { 0, 0x3058 }, { 0, 0x3060 }, { 0, -0x3068 }, }; @@ -11166,7 +11166,7 @@ void func_8084C760(Player* this, GlobalContext* globalCtx) { func_80832924(this, D_808548B4); } -struct_80832924 D_808548D8[] = { +static struct_80832924 D_808548D8[] = { { 0, 0x300A }, { 0, 0x3012 }, { 0, 0x301A }, { 0, 0x3022 }, { 0, 0x3034 }, { 0, 0x303C }, { 0, 0x3044 }, { 0, 0x304C }, { 0, -0x3054 }, }; @@ -11183,17 +11183,17 @@ void func_8084C81C(Player* this, GlobalContext* globalCtx) { func_80832924(this, D_808548D8); } -Vec3f D_808548FC[] = { +static Vec3f D_808548FC[] = { { 40.0f, 0.0f, 0.0f }, { -40.0f, 0.0f, 0.0f }, }; -Vec3f D_80854914[] = { +static Vec3f D_80854914[] = { { 60.0f, 20.0f, 0.0f }, { -60.0f, 20.0f, 0.0f }, }; -Vec3f D_8085492C[] = { +static Vec3f D_8085492C[] = { { 60.0f, -20.0f, 0.0f }, { -60.0f, -20.0f, 0.0f }, }; @@ -11273,7 +11273,7 @@ void func_8084CBF4(Player* this, f32 arg1, f32 arg2) { } } -LinkAnimationHeader* D_80854944[] = { +static LinkAnimationHeader* D_80854944[] = { &gPlayerAnim_003370, &gPlayerAnim_003368, &gPlayerAnim_003380, @@ -11285,7 +11285,7 @@ LinkAnimationHeader* D_80854944[] = { NULL, }; -LinkAnimationHeader* D_80854968[] = { +static LinkAnimationHeader* D_80854968[] = { &gPlayerAnim_003388, &gPlayerAnim_003388, &gPlayerAnim_003388, @@ -11297,20 +11297,20 @@ LinkAnimationHeader* D_80854968[] = { NULL, }; -LinkAnimationHeader* D_8085498C[] = { +static LinkAnimationHeader* D_8085498C[] = { &gPlayerAnim_0033C8, &gPlayerAnim_0033B8, &gPlayerAnim_0033C0, }; -u8 D_80854998[2][2] = { +static u8 D_80854998[2][2] = { { 32, 58 }, { 25, 42 }, }; -Vec3s D_8085499C = { -69, 7146, -266 }; +static Vec3s D_8085499C = { -69, 7146, -266 }; -struct_80832924 D_808549A4[] = { +static struct_80832924 D_808549A4[] = { { NA_SE_PL_CALM_HIT, 0x830 }, { NA_SE_PL_CALM_HIT, 0x83A }, { NA_SE_PL_CALM_HIT, 0x844 }, { NA_SE_PL_CALM_PAT, 0x85C }, { NA_SE_PL_CALM_PAT, 0x86E }, { NA_SE_PL_CALM_PAT, 0x87E }, { NA_SE_PL_CALM_PAT, 0x884 }, { NA_SE_PL_CALM_PAT, -0x888 }, @@ -11488,7 +11488,7 @@ void func_8084CC98(Player* this, GlobalContext* globalCtx) { } } -struct_80832924 D_808549C4[] = { +static struct_80832924 D_808549C4[] = { { 0, 0x2800 }, { NA_SE_PL_GET_OFF_HORSE, 0x80A }, { NA_SE_PL_SLIPDOWN, -0x819 }, @@ -11524,7 +11524,7 @@ void func_8084D3E4(Player* this, GlobalContext* globalCtx) { } } -struct_80832924 D_808549D0[] = { +static struct_80832924 D_808549D0[] = { { NA_SE_PL_SWIM, -0x800 }, }; @@ -11861,7 +11861,7 @@ void func_8084E368(Player* this, GlobalContext* globalCtx) { func_8084AEEC(this, &this->linearVelocity, 0.0f, this->actor.shape.rot.y); } -s16 D_808549D4[] = { 0x0600, 0x04F6, 0x0604, 0x01F1, 0x0568, 0x05F4 }; +static s16 D_808549D4[] = { 0x0600, 0x04F6, 0x0604, 0x01F1, 0x0568, 0x05F4 }; void func_8084E3C4(Player* this, GlobalContext* globalCtx) { if (LinkAnimation_Update(globalCtx, &this->skelAnime)) { @@ -11930,7 +11930,7 @@ void func_8084E604(Player* this, GlobalContext* globalCtx) { func_8083721C(this); } -struct_80832924 D_808549E0[] = { +static struct_80832924 D_808549E0[] = { { 0, 0x3857 }, { NA_SE_VO_LI_CLIMB_END, 0x2057 }, { NA_SE_VO_LI_AUTO_JUMP, 0x2045 }, @@ -12006,7 +12006,7 @@ void func_8084E6D4(Player* this, GlobalContext* globalCtx) { } } -struct_80832924 D_808549F0[] = { +static struct_80832924 D_808549F0[] = { { NA_SE_IT_MASTER_SWORD_SWING, -0x83C }, }; @@ -12014,7 +12014,7 @@ void func_8084E988(Player* this) { func_80832924(this, D_808549F0); } -struct_80832924 D_808549F4[] = { +static struct_80832924 D_808549F4[] = { { NA_SE_VO_LI_AUTO_JUMP, 0x2005 }, { 0, -0x280F }, }; @@ -12043,7 +12043,7 @@ void func_8084E9AC(Player* this, GlobalContext* globalCtx) { } } -u8 D_808549FC[] = { +static u8 D_808549FC[] = { 0x01, 0x03, 0x02, 0x04, 0x04, }; @@ -12101,7 +12101,7 @@ void func_8084EAC0(Player* this, GlobalContext* globalCtx) { } } -BottleCatchInfo D_80854A04[] = { +static BottleCatchInfo D_80854A04[] = { { ACTOR_EN_ELF, ITEM_FAIRY, 0x2A, 0x46 }, { ACTOR_EN_FISH, ITEM_FISH, 0x1F, 0x47 }, { ACTOR_EN_ICE_HONO, ITEM_BLUE_FIRE, 0x20, 0x5D }, @@ -12170,7 +12170,7 @@ void func_8084ECA4(Player* this, GlobalContext* globalCtx) { } } -Vec3f D_80854A1C = { 0.0f, 0.0f, 5.0f }; +static Vec3f D_80854A1C = { 0.0f, 0.0f, 5.0f }; void func_8084EED8(Player* this, GlobalContext* globalCtx) { if (LinkAnimation_Update(globalCtx, &this->skelAnime)) { @@ -12189,13 +12189,13 @@ void func_8084EED8(Player* this, GlobalContext* globalCtx) { } } -BottleDropInfo D_80854A28[] = { +static BottleDropInfo D_80854A28[] = { { ACTOR_EN_FISH, FISH_DROPPED }, { ACTOR_EN_ICE_HONO, 0 }, { ACTOR_EN_INSECT, 2 }, }; -struct_80832924 D_80854A34[] = { +static struct_80832924 D_80854A34[] = { { NA_SE_VO_LI_AUTO_JUMP, 0x2026 }, { NA_SE_EV_BOTTLE_CAP_OPEN, -0x828 }, }; @@ -12224,7 +12224,7 @@ void func_8084EFC0(Player* this, GlobalContext* globalCtx) { func_80832924(this, D_80854A34); } -struct_80832924 D_80854A3C[] = { +static struct_80832924 D_80854A3C[] = { { NA_SE_PL_PUT_OUT_ITEM, -0x81E }, }; @@ -12654,7 +12654,7 @@ s32 func_80850224(Player* this, GlobalContext* globalCtx) { return 1; } -Vec3f D_80854A40 = { 0.0f, 40.0f, 45.0f }; +static Vec3f D_80854A40 = { 0.0f, 40.0f, 45.0f }; void func_808502D0(Player* this, GlobalContext* globalCtx) { struct_80854190* sp44 = &D_80854190[this->swordAnimation]; @@ -12783,33 +12783,33 @@ void func_8085076C(Player* this, GlobalContext* globalCtx) { } } -LinkAnimationHeader* D_80854A58[] = { +static LinkAnimationHeader* D_80854A58[] = { &gPlayerAnim_002CF8, &gPlayerAnim_002CE0, &gPlayerAnim_002D10, }; -LinkAnimationHeader* D_80854A64[] = { +static LinkAnimationHeader* D_80854A64[] = { &gPlayerAnim_002D00, &gPlayerAnim_002CE8, &gPlayerAnim_002D18, }; -LinkAnimationHeader* D_80854A70[] = { +static LinkAnimationHeader* D_80854A70[] = { &gPlayerAnim_002D08, &gPlayerAnim_002CF0, &gPlayerAnim_002D20, }; -u8 D_80854A7C[] = { 70, 10, 10 }; +static u8 D_80854A7C[] = { 70, 10, 10 }; -struct_80832924 D_80854A80[] = { +static struct_80832924 D_80854A80[] = { { NA_SE_PL_SKIP, 0x814 }, { NA_SE_VO_LI_SWORD_N, 0x2014 }, { 0, -0x301A }, }; -struct_80832924 D_80854A8C[][2] = { +static struct_80832924 D_80854A8C[][2] = { { { 0, 0x4014 }, { NA_SE_VO_LI_MAGIC_FROL, -0x201E }, @@ -12967,28 +12967,28 @@ void func_80850E84(Player* this, GlobalContext* globalCtx) { } } -void (*D_80854AA4[])(GlobalContext*, Player*, void*) = { +static void (*D_80854AA4[])(GlobalContext*, Player*, void*) = { NULL, func_80851008, func_80851030, func_80851094, func_808510B4, func_808510D4, func_808510F4, func_80851114, func_80851134, func_80851154, func_80851174, func_808511D4, func_808511FC, func_80851294, func_80851050, func_80851194, func_808511B4, func_80851248, func_808512E0, }; -struct_80832924 D_80854AF0[] = { +static struct_80832924 D_80854AF0[] = { { 0, 0x2822 }, { NA_SE_PL_CALM_HIT, 0x82D }, { NA_SE_PL_CALM_HIT, 0x833 }, { NA_SE_PL_CALM_HIT, -0x840 }, }; -struct_80832924 D_80854B00[] = { +static struct_80832924 D_80854B00[] = { { NA_SE_VO_LI_SURPRISE, 0x2003 }, { 0, 0x300F }, { 0, 0x3018 }, { 0, 0x301E }, { NA_SE_VO_LI_FALL_L, -0x201F }, }; -struct_80832924 D_80854B14[] = { +static struct_80832924 D_80854B14[] = { { 0, -0x300A }, }; -struct_80854B18 D_80854B18[] = { +static struct_80854B18 D_80854B18[] = { { 0, NULL }, { -1, func_808515A4 }, { 2, &gPlayerAnim_002790 }, @@ -13094,7 +13094,7 @@ struct_80854B18 D_80854B18[] = { { 3, &gPlayerAnim_002800 }, }; -struct_80854B18 D_80854E50[] = { +static struct_80854B18 D_80854E50[] = { { 0, NULL }, { -1, func_808514C0 }, { -1, func_8085157C }, @@ -13414,7 +13414,7 @@ void func_80851688(GlobalContext* globalCtx, Player* this, CsCmdActorAction* arg } } -struct_80832924 D_80855188[] = { +static struct_80832924 D_80855188[] = { { 0, 0x302A }, { 0, -0x3030 }, }; @@ -13488,12 +13488,12 @@ void func_808519C0(GlobalContext* globalCtx, Player* this, CsCmdActorAction* arg } // unused -LinkAnimationHeader* D_80855190[] = { +static LinkAnimationHeader* D_80855190[] = { &gPlayerAnim_002720, &gPlayerAnim_002360, }; -Vec3f D_80855198 = { -1.0f, 70.0f, 20.0f }; +static Vec3f D_80855198 = { -1.0f, 70.0f, 20.0f }; void func_808519EC(GlobalContext* globalCtx, Player* this, CsCmdActorAction* arg2) { Math_Vec3f_Copy(&this->actor.world.pos, &D_80855198); @@ -13502,12 +13502,12 @@ void func_808519EC(GlobalContext* globalCtx, Player* this, CsCmdActorAction* arg func_80832F54(globalCtx, this, 0x28F); } -struct_808551A4 D_808551A4[] = { +static struct_808551A4 D_808551A4[] = { { NA_SE_IT_SWORD_PUTAWAY_STN, 0 }, { NA_SE_IT_SWORD_STICK_STN, NA_SE_VO_LI_SWORD_N }, }; -struct_80832924 D_808551AC[] = { +static struct_80832924 D_808551AC[] = { { 0, 0x401D }, { 0, -0x4027 }, }; @@ -13548,7 +13548,7 @@ void func_80851B90(GlobalContext* globalCtx, Player* this, CsCmdActorAction* arg 0.0f); } -struct_80832924 D_808551B4[] = { +static struct_80832924 D_808551B4[] = { { 0, -0x281E }, }; @@ -13583,7 +13583,7 @@ void func_80851D2C(GlobalContext* globalCtx, Player* this, CsCmdActorAction* arg Player_SetModels(this, Player_ActionToModelGroup(this, this->itemActionParam)); } -struct_80832924 D_808551B8[] = { +static struct_80832924 D_808551B8[] = { { NA_SE_IT_SWORD_PICKOUT, -0x80C }, }; @@ -13636,7 +13636,7 @@ void func_80851F84(GlobalContext* globalCtx, Player* this, CsCmdActorAction* arg func_80851134(globalCtx, this, &gPlayerAnim_002420); } -struct_80832924 D_808551BC[] = { +static struct_80832924 D_808551BC[] = { { NA_SE_VO_LI_RELAX, 0x2023 }, { NA_SE_PL_SLIPDOWN, 0x8EC }, { NA_SE_PL_SLIPDOWN, -0x900 }, @@ -13654,7 +13654,7 @@ void func_80851FB0(GlobalContext* globalCtx, Player* this, CsCmdActorAction* arg } } -struct_80832924 D_808551C8[] = { +static struct_80832924 D_808551C8[] = { { NA_SE_PL_LAND_LADDER, 0x843 }, { 0, 0x4854 }, { 0, 0x485A }, @@ -13685,7 +13685,7 @@ void func_808520BC(GlobalContext* globalCtx, Player* this, CsCmdActorAction* arg this->actor.world.pos.z = distZ * sp4 + startZ; } -struct_80832924 D_808551D8[] = { +static struct_80832924 D_808551D8[] = { { NA_SE_PL_BOUND, 0x1014 }, { NA_SE_PL_BOUND, -0x101E }, }; @@ -13731,7 +13731,7 @@ void func_80852298(GlobalContext* globalCtx, Player* this, CsCmdActorAction* arg } } -struct_80832924 D_808551E0[] = { +static struct_80832924 D_808551E0[] = { { 0, 0x300A }, { 0, -0x3018 }, }; @@ -13740,7 +13740,7 @@ void func_80852328(GlobalContext* globalCtx, Player* this, CsCmdActorAction* arg func_80851F14(globalCtx, this, &gPlayerAnim_002770, D_808551E0); } -struct_80832924 D_808551E8[] = { +static struct_80832924 D_808551E8[] = { { 0, 0x400F }, { 0, -0x4023 }, }; @@ -13769,7 +13769,7 @@ void func_80852414(GlobalContext* globalCtx, Player* this, LinkAnimationHeader* } } -struct_80832924 D_808551F0[] = { +static struct_80832924 D_808551F0[] = { { 0, 0x300F }, { 0, -0x3021 }, }; @@ -13778,7 +13778,7 @@ void func_80852450(GlobalContext* globalCtx, Player* this, CsCmdActorAction* arg func_80852414(globalCtx, this, &gPlayerAnim_002378, D_808551F0); } -struct_80832924 D_808551F8[] = { +static struct_80832924 D_808551F8[] = { { NA_SE_PL_KNOCK, -0x84E }, }; @@ -13815,7 +13815,7 @@ void func_80852564(GlobalContext* globalCtx, Player* this, CsCmdActorAction* arg func_80832698(this, NA_SE_VO_LI_FALL_L); } -void (*D_808551FC[])(Player* this, GlobalContext* globalCtx) = { +static void (*D_808551FC[])(Player* this, GlobalContext* globalCtx) = { func_8084377C, func_80843954, func_80843A38, @@ -13844,12 +13844,12 @@ void func_80852648(GlobalContext* globalCtx, Player* this, CsCmdActorAction* arg } } -LinkAnimationHeader* D_80855208[] = { +static LinkAnimationHeader* D_80855208[] = { &gPlayerAnim_0034B8, &gPlayerAnim_003458, }; -Vec3s D_80855210[2][2] = { +static Vec3s D_80855210[2][2] = { { { -200, 700, 100 }, { 800, 600, 800 } }, { { -200, 500, 0 }, { 600, 400, 600 } }, }; diff --git a/tools/ZAPD/docs/zapd_extraction_xml_reference.md b/tools/ZAPD/docs/zapd_extraction_xml_reference.md index 86e64fb4c9..ed6468862e 100644 --- a/tools/ZAPD/docs/zapd_extraction_xml_reference.md +++ b/tools/ZAPD/docs/zapd_extraction_xml_reference.md @@ -230,7 +230,7 @@ TODO. I'm hoping somebody else will do this. - Example: ```xml - + ``` - Attributes: @@ -245,7 +245,7 @@ TODO. I'm hoping somebody else will do this. - Example: ```xml - + ``` - Attributes: diff --git a/undefined_syms.txt b/undefined_syms.txt index 17327dfb34..f01a05649d 100644 --- a/undefined_syms.txt +++ b/undefined_syms.txt @@ -81,9 +81,6 @@ D_02003AC0 = 0x02003AC0; D_0201DA50 = 0x0201DA50; D_0300AA48 = 0x0300AA48; D_03012B20 = 0x03012B20; -D_05001390 = 0x05001390; -D_05001390 = 0x05001390; -D_0500CA70 = 0x0500CA70; D_06001220 = 0x06001220; D_06001220 = 0x06001220; D_06001290 = 0x06001290; @@ -93,7 +90,6 @@ D_06001438 = 0x06001438; D_06001470 = 0x06001470; D_06001470 = 0x06001470; D_06001C40 = 0x06001C40; -D_06006CC0 = 0x06006CC0; D_06016118 = 0x06016118; D_06025218 = 0x06025218; D_060252D8 = 0x060252D8; @@ -121,10 +117,6 @@ D_06004348 = 0x06004348; D_06004C30 = 0x06004C30; D_06004E98 = 0x06004E98; -// z_en_tubo_trap -D_05017870 = 0x05017870; -D_05017A60 = 0x05017A60; - // z_door_toki D_06007888 = 0x06007888; @@ -135,9 +127,6 @@ D_060007D0 = 0x060007D0; D_06001A38 = 0x06001A38; D_06001C58 = 0x06001C58; -// z_bg_spot11_bakudankabe -D_0500A880 = 0x0500A880; - // z_bg_spot12_gate D_06001080 = 0x06001080; D_060011EC = 0x060011EC; @@ -175,9 +164,6 @@ D_06001220 = 0x06001220; D_06001290 = 0x06001290; D_06001470 = 0x06001470; -// z_door_ana -D_05001390 = 0x05001390; - // z_bg_bdan_switch D_06005CF8 = 0x06005CF8; D_060061A0 = 0x060061A0; @@ -187,35 +173,18 @@ D_06005A20 = 0x06005A20; D_06000360 = 0x06000360; D_06000180 = 0x06000180; -// z_bg_jya_1flift -D_060004A8 = 0x060004A8; -D_060001F0 = 0x060001F0; +// z_bg_hidan_dalm +D_0600BBF0 = 0x0600BBF0; +D_0600BDF0 = 0x0600BDF0; +D_0600DA10 = 0x0600DA10; -// z_bg_jya_bombiwa -D_0600E490 = 0x0600E490; -D_0600EDC0 = 0x0600EDC0; -D_0600E710 = 0x0600E710; +// z_bg_hidan_fslift +D_0600B630 = 0x0600B630; +D_0600E1E8 = 0x0600E1E8; -// z_bg_jya_amishutter -D_0600C0A0 = 0x0600C0A0; -D_0600C4C8 = 0x0600C4C8; - -// z_bg_jya_block -D_05004350 = 0x05004350; -D_05004CD0 = 0x05004CD0; -D_05004E98 = 0x05004E98; - -// z_bg_jya_kanaami -D_0600F000 = 0x0600F000; -D_0600F208 = 0x0600F208; - -// z_bg_jya_lift -D_0600D7E8 = 0x0600D7E8; -D_0600CCE0 = 0x0600CCE0; - -// z_bg_jya_zurerukabe -D_06012340 = 0x06012340; -D_06012508 = 0x06012508; +// z_bg_hidan_syoku +D_0600A7E0 = 0x0600A7E0; +D_0600E568 = 0x0600E568; // z_bg_menkuri_kaiten D_060038D0 = 0x060038D0; @@ -231,10 +200,6 @@ D_060074EC = 0x060074EC; // z_bg_mizu_water D_06004B20 = 0x06004B20; -// z_bg_mori_elevator -D_060035F8 = 0x060035F8; -D_06002AD0 = 0x06002AD0; - // z_bg_spot07_taki D_060038FC = 0x060038FC; D_06002590 = 0x06002590; @@ -242,7 +207,6 @@ D_06002590 = 0x06002590; // z_bg_spot08_bakudankabe D_060039D4 = 0x060039D4; D_06003898 = 0x06003898; -D_0500A880 = 0x0500A880; // z_bg_ydan_hasi D_06005780 = 0x06005780; @@ -346,8 +310,6 @@ D_060138E0 = 0x060138E0; D_06013F10 = 0x06013F10; D_060143A8 = 0x060143A8; -// z_bg_spot17_bakudankabe -D_0500A880 = 0x0500A880; // z_bg_spot00_break D_06000908 = 0x06000908; @@ -379,12 +341,6 @@ D_060014E0 = 0x060014E0; D_060053D0 = 0x060053D0; D_06007564 = 0x06007564; -// z_bg_jya_cobra -D_0601167C = 0x0601167C; -D_06010790 = 0x06010790; -D_06010C20 = 0x06010C20; -D_060117D0 = 0x060117D0; - // z_en_lightbox D_06001F10 = 0x06001F10; D_06000B70 = 0x06000B70; @@ -452,10 +408,6 @@ D_06009CD0 = 0x6009CD0; // z_bg_spot01_fusya D_06000100 = 0x06000100; -// z_en_niw_girl -D_06009948 = 0x06009948; -D_06000378 = 0x06000378; -D_06009C78 = 0x06009C78; // z_title D_01002720 = 0x01002720; @@ -605,11 +557,6 @@ D_06005048 = 0x06005048; D_06005580 = 0x06005580; D_06008CE0 = 0x06008CE0; -// z_bg_bombwall -D_050041B0 = 0x050041B0; -D_05003FC0 = 0x05003FC0; -D_05004088 = 0x05004088; - // z_bg_bom_guard D_06001C40 = 0x06001C40; @@ -652,28 +599,6 @@ D_06005810 = 0x06005810; D_06000180 = 0x06000180; D_06000360 = 0x06000360; -// z_obj_switch -D_05005800 = 0x05005800; -D_05005AD0 = 0x05005AD0; -D_05005D50 = 0x05005D50; -D_05005FB8 = 0x05005FB8; -D_05006170 = 0x05006170; -D_05006610 = 0x05006610; -D_05006810 = 0x05006810; -D_05006D10 = 0x05006D10; -D_05006E60 = 0x05006E60; -D_05007340 = 0x05007340; -D_05007488 = 0x05007488; -D_050090A0 = 0x050090A0; -D_050098A0 = 0x050098A0; -D_0500A0A0 = 0x0500A0A0; -D_0500A8A0 = 0x0500A8A0; -D_0500B0A0 = 0x0500B0A0; -D_0500B8A0 = 0x0500B8A0; -D_0500C0A0 = 0x0500C0A0; -D_050144B0 = 0x050144B0; -D_05014CB0 = 0x05014CB0; - // z_obj_lightswitch D_06000260 = 0x06000260; D_06000398 = 0x06000398; @@ -794,10 +719,6 @@ D_060086D0 = 0x060086D0; D_06000918 = 0x06000918; D_060012C0 = 0x060012C0; -// z_obj_comb -D_050095B0 = 0x050095B0; -D_05009940 = 0x05009940; - // z_en_ani D_060000F0 = 0x060000F0; D_060067B8 = 0x060067B8; @@ -811,9 +732,6 @@ D_06001A30 = 0x06001A30; D_060018A0 = 0x060018A0; // z_en_heishi2 -D_06005C30 = 0x06005C30; -D_06005500 = 0x06005500; -D_0600BAC8 = 0x0600BAC8; D_0602B060 = 0x0602B060; D_06002C10 = 0x06002C10; @@ -823,17 +741,9 @@ D_060048A8 = 0x060048A8; -// z_en_heishi3 -D_0600BAC8 = 0x0600BAC8; -D_06005C30 = 0x06005C30; -D_06005880 = 0x06005880; - -// z_en_heishi4 -D_0600BAC8 = 0x0600BAC8; -D_0600C444 = 0x0600C444; -D_06005C30 = 0x06005C30; -D_0600C6C8 = 0x0600C6C8; -D_0600C374 = 0x0600C374; +// z_en_floormas +D_06002158 = 0x06002158; +D_060039B0 = 0x060039B0; // z_en_fu D_0600057C = 0x0600057C; @@ -896,41 +806,15 @@ D_06003128 = 0x06003128; D_060042AC = 0x060042AC; D_060059B0 = 0x060059B0; -// z_obj_oshijiki -D_05004E98 = 0x05004E98; -D_05003350 = 0x05003350; -D_05003B50 = 0x05003B50; -D_05004350 = 0x05004350; -D_05004CD0 = 0x05004CD0; - // z_en_goroiwa D_060006B0 = 0x060006B0; -// z_en_heishi1 -D_06005880 = 0x06005880; -D_06005C30 = 0x06005C30; -D_0600BAC8 = 0x0600BAC8; // z_en_bombf D_06000340 = 0x06000340; D_06000408 = 0x06000408; D_06000530 = 0x06000530; -// z_en_box -D_06000128 = 0x06000128; -D_0600024C = 0x0600024C; -D_0600043C = 0x0600043C; -D_060006F0 = 0x060006F0; -D_06000AE8 = 0x06000AE8; -D_060010C0 = 0x060010C0; -D_06001678 = 0x06001678; -D_060047D8 = 0x060047D8; -D_06005FC8 = 0x06005FC8; - -// z_en_butte -D_05002470 = 0x05002470; -D_050036F0 = 0x050036F0; - // z_Bg_Spot16_Bombstone D_06000C20 = 0x06000C20; D_060009E0 = 0x060009E0; @@ -1118,27 +1002,26 @@ D_0601E178 = 0x0601E178; D_060203D8 = 0x060203D8; D_060205C0 = 0x060205C0; -// z_en_ishi -D_0500A3B8 = 0x0500A3B8; -D_0500A5E8 = 0x0500A5E8; -D_0500A880 = 0x0500A880; - // z_obj_dekujr D_060030D0 = 0x060030D0; D_060032D8 = 0x060032D8; -// z_en_light -D_05000440 = 0x05000440; // z_en_okarina_Tag D_02003C80 = 0x02003C80; D_02005020 = 0x02005020; D_020024A0 = 0x020024A0; -// z_bg_jya_megami -D_06005C4C = 0x06005C4C; -D_06005780 = 0x06005780; -D_0600B9F8 = 0x0600B9F8; +// z_en_okuta +D_06000344 = 0x06000344; +D_060008FC = 0x060008FC; +D_06000AC0 = 0x06000AC0; +D_06000DDC = 0x06000DDC; +D_06003380 = 0x06003380; +D_06003660 = 0x06003660; +D_06003910 = 0x06003910; +D_06003C64 = 0x06003C64; + // z_bg_mori_hineri D_060054B8 = 0x060054B8; @@ -1203,14 +1086,6 @@ D_0600BEC0 = 0x0600BEC0; // z_en_torch2 D_06004764 = 0x06004764; -// z_bg_mori_rakkatenjo -D_06007690 = 0x06007690; -D_060087AC = 0x060087AC; - -// z_bg_mori_kaitenkabe -D_060056B0 = 0x060056B0; -D_060063B8 = 0x060063B8; - // z_en_ssh D_06000304 = 0x06000304; D_060052E0 = 0x060052E0; @@ -1228,26 +1103,9 @@ D_060055A8 = 0x060055A8; D_0601BFB0 = 0x0601BFB0; D_0601C160 = 0x0601C160; -// z_en_mb -D_06008F38 = 0x06008F38; -D_060028E0 = 0x060028E0; -D_06014190 = 0x06014190; -D_0600EBE4 = 0x0600EBE4; -D_060041A8 = 0x060041A8; -D_06009FC0 = 0x06009FC0; -D_06002C10 = 0x06002C10; -D_06002F10 = 0x06002F10; -D_06009280 = 0x06009280; -D_06001950 = 0x06001950; -D_0600BE58 = 0x0600BE58; -D_0600D5D4 = 0x0600D5D4; -D_0600E18C = 0x0600E18C; -D_0600B4BC = 0x0600B4BC; -D_0600ABE0 = 0x0600ABE0; -D_060016B4 = 0x060016B4; -D_060041A8 = 0x060041A8; -D_0600C44C = 0x0600C44C; -D_0600095C = 0x0600095C; +// z_en_crow +D_060010C0 = 0x060010C0; +D_060000F0 = 0x060000F0; // z_en_rl D_06007B38 = 0x06007B38; @@ -1267,12 +1125,6 @@ D_06001A3C = 0x06001A3C; D_0600375C = 0x0600375C; D_06007FC0 = 0x06007FC0; -// z_bg_jya_bombchuiwa -D_0600E8D0 = 0x0600E8D0; -D_060119B0 = 0x060119B0; -D_0600DC40 = 0x0600DC40; -D_0600DB60 = 0x0600DB60; - // z_en_takara_man D_06004FE0 = 0x06004FE0; D_06000498 = 0x06000498; @@ -1344,42 +1196,6 @@ D_06006830 = 0x06006830; D_06006D60 = 0x06006D60; D_06007230 = 0x06007230; -// z_bg_mori_idomizu -D_060049D0 = 0x060049D0; - -// z_bg_mori_hashigo -D_060037D8 = 0x060037D8; -D_060036B0 = 0x060036B0; -D_06004770 = 0x06004770; - -// z_bg_mori_bigst -D_0600221C = 0x0600221C; -D_06001E50 = 0x06001E50; - -// z_bg_mori_hashira4 -D_06001AF8 = 0x06001AF8; -D_060089E0 = 0x060089E0; - -//z_boss_dodongo -D_0601B310 = 0x0601B310; -D_0600F0D8 = 0x0600F0D8; -D_030021D8 = 0x030021D8; -D_06008EEC = 0x06008EEC; -D_06017410 = 0x06017410; -D_0601CAE0 = 0x0601CAE0; -D_06008EEC = 0x06008EEC; -D_060061D4 = 0x060061D4; -D_0600DF38 = 0x0600DF38; -D_0600E848 = 0x0600E848; -D_06004E0C = 0x06004E0C; -D_060042A8 = 0x060042A8; -D_06009D10 = 0x06009D10; -D_0601D934 = 0x0601D934; -D_06002D0C = 0x06002D0C; -D_060042A8 = 0x060042A8; -D_06009D50 = 0x06009D50; -D_06009DD0 = 0x06009DD0; -D_06001074 = 0x06001074; // z_obj_timeblock D_06000980 = 0x06000980; D_06000B30 = 0x06000B30; @@ -1490,18 +1306,6 @@ D_06001C1C = 0x06001C1C; D_06002640 = 0x06002640; D_06002920 = 0x06002920; -// z_bg_jya_bigmirror -D_0600BC70 = 0x0600BC70; -D_0600BD80 = 0x0600BD80; -D_0600E1B0 = 0x0600E1B0; -D_0600E2D0 = 0x0600E2D0; - -// z_bg_jya_cobra -D_06010790 = 0x06010790; -D_06010C20 = 0x06010C20; -D_0601167C = 0x0601167C; -D_060117D0 = 0x060117D0; - // z_bg_jya_haheniron D_06000880 = 0x06000880; @@ -1830,9 +1634,6 @@ D_06004F00 = 0x06004F00; D_06005A30 = 0x06005A30; D_06005CB0 = 0x06005CB0; -// z_demo_tre_lgt -D_06005EB8 = 0x06005EB8; - // z_door_killer D_06001BC8 = 0x06001BC8; @@ -1969,12 +1770,10 @@ D_06000DE0 = 0x06000DE0; D_06000DE0 = 0x06000DE0; // z_en_fr -D_05002470 = 0x05002470; -D_050036F0 = 0x050036F0; -D_060007BC = 0x060007BC; D_060011C0 = 0x060011C0; D_06001534 = 0x06001534; D_0600B498 = 0x0600B498; +D_060007BC = 0x060007BC; // z_en_fz D_060030A0 = 0x060030A0; @@ -2053,7 +1852,6 @@ D_06010590 = 0x06010590; // z_en_goma -D_05000530 = 0x05000530; D_0600017C = 0x0600017C; D_06000334 = 0x06000334; D_06000544 = 0x06000544; @@ -2069,8 +1867,10 @@ D_06003D78 = 0x06003D78; D_060017C0 = 0x060017C0; D_06001960 = 0x06001960; -// z_en_honotrap -D_05006810 = 0x05006810; +// z_en_horse +D_02000230 = 0x02000230; +D_02002AC0 = 0x02002AC0; +D_06006530 = 0x06006530; // z_en_hs D_06000304 = 0x06000304; @@ -2361,6 +2161,18 @@ D_0601B874 = 0x0601B874; D_0601BCF0 = 0x0601BCF0; D_0601CE08 = 0x0601CE08; +// z_en_zo +D_06000598 = 0x06000598; +D_06000D48 = 0x06000D48; +D_060022F0 = 0x060022F0; +D_06002350 = 0x06002350; +D_060024A0 = 0x060024A0; +D_06002510 = 0x06002510; +D_06002F10 = 0x06002F10; +D_0600BFA8 = 0x0600BFA8; +D_0600BFC0 = 0x0600BFC0; +D_0600C028 = 0x0600C028; + // z_fishing D_0600007C = 0x0600007C; D_060029C0 = 0x060029C0; @@ -2420,10 +2232,6 @@ D_060003F0 = 0x060003F0; D_060005DC = 0x060005DC; D_06000650 = 0x06000650; -// z_obj_hamishi -D_0500A3B8 = 0x0500A3B8; -D_0500A5E8 = 0x0500A5E8; - // z_obj_kibako2 D_06000960 = 0x06000960; D_06000B70 = 0x06000B70;