Symbol cleanup (#897)

* symbol cleanup

* run formatter

* run formatter

* remove duplicate z_demo_ik symbols

* run formatter
This commit is contained in:
Dragorn421 2021-08-22 17:52:02 +02:00 committed by GitHub
parent 743f42f651
commit 5e071a014d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
130 changed files with 1210 additions and 2940 deletions

View File

@ -62,8 +62,8 @@ glabel BossTw_TwinrovaDeathCS
/* 06DBC 8093FA8C 2401000F */ addiu $at, $zero, 0x000F ## $at = 0000000F
/* 06DC0 8093FA90 02002025 */ or $a0, $s0, $zero ## $a0 = 00000568
/* 06DC4 8093FA94 14410005 */ bne $v0, $at, .L8093FAAC
/* 06DC8 8093FA98 3C050602 */ lui $a1, %hi(D_060216DC) ## $a1 = 06020000
/* 06DCC 8093FA9C 24A516DC */ addiu $a1, $a1, %lo(D_060216DC) ## $a1 = 060216DC
/* 06DC8 8093FA98 3C050602 */ lui $a1, %hi(object_tw_Anim_0216DC) ## $a1 = 06020000
/* 06DCC 8093FA9C 24A516DC */ addiu $a1, $a1, %lo(object_tw_Anim_0216DC) ## $a1 = 060216DC
/* 06DD0 8093FAA0 0C029490 */ jal Animation_MorphToPlayOnce
/* 06DD4 8093FAA4 3C06C040 */ lui $a2, 0xC040 ## $a2 = C0400000
/* 06DD8 8093FAA8 86420150 */ lh $v0, 0x0150($s2) ## 00000150

View File

@ -20,6 +20,6 @@
<Animation Name="object_brob_Anim_001678" Offset="0x1678"/>
<Animation Name="object_brob_Anim_001750" Offset="0x1750"/>
<Animation Name="object_brob_Anim_001958" Offset="0x1958"/>
<Blob Name="object_brob_Blob_001968" Size="0x138" Offset="0x1968"/>
<Collision Name="object_brob_Col_001A70" Offset="0x1A70"/>
</File>
</Root>

View File

@ -24,6 +24,6 @@
<Limb Name="object_bw_Limb_0020B8" LimbType="Standard" Offset="0x20B8"/>
<Skeleton Name="object_bw_Skel_0020F0" Type="Normal" LimbType="Standard" Offset="0x20F0"/>
<Animation Name="object_bw_Anim_0021A0" Offset="0x21A0"/>
<Blob Name="object_bw_Blob_0021B0" Size="0xB0" Offset="0x21B0"/>
<Animation Name="object_bw_Anim_002250" Offset="0x2250"/>
</File>
</Root>

View File

@ -1,7 +1,7 @@
<Root>
<File Name="object_d_elevator" Segment="6">
<DList Name="object_d_elevator_DL_000180" Offset="0x180"/>
<Blob Name="object_d_elevator_Blob_000260" Size="0x130" Offset="0x260"/>
<Collision Name="object_d_elevator_Col_000360" Offset="0x360"/>
<Texture Name="object_d_elevator_Tex_000390" OutName="tex_00000390" Format="i8" Width="64" Height="64" Offset="0x390"/>
</File>
</Root>

View File

@ -7,7 +7,7 @@
<Texture Name="object_dekujr_Tex_001600" OutName="tex_00001600" Format="ia8" Width="8" Height="8" Offset="0x1600"/>
<Texture Name="object_dekujr_Tex_001640" OutName="tex_00001640" Format="ia8" Width="64" Height="64" Offset="0x1640"/>
<Texture Name="object_dekujr_Tex_002640" OutName="tex_00002640" Format="ia16" Width="32" Height="16" Offset="0x2640"/>
<DList Name="object_dekujr_DL_0030D0" Offset="0x30D0"/>
<DList Name="object_dekujr_DL_0032D8" Offset="0x32D8"/>
<DList Name="object_dekujr_DL_0030D0" Offset="0x30D0"/> <!-- dekujr body -->
<DList Name="object_dekujr_DL_0032D8" Offset="0x32D8"/> <!-- dekujr face and shadow -->
</File>
</Root>

View File

@ -5,6 +5,9 @@
<Texture Name="object_demo_6k_Tex_0010D0" OutName="tex_000010D0" Format="i8" Width="16" Height="128" Offset="0x10D0"/>
<DList Name="object_demo_6k_DL_0022B0" Offset="0x22B0"/>
<Texture Name="object_demo_6k_Tex_0025E0" OutName="tex_000025E0" Format="i8" Width="64" Height="64" Offset="0x25E0"/>
<Array Name="object_demo_6kVtx_0035E0" Count="63" Offset="0x35E0">
<Vtx/>
</Array>
<DList Name="object_demo_6k_DL_0039D0" Offset="0x39D0"/>
</File>
</Root>

View File

@ -12,6 +12,6 @@
<DList Name="object_door_killer_DL_001550" Offset="0x1550"/>
<DList Name="object_door_killer_DL_0017B8" Offset="0x17B8"/>
<DList Name="object_door_killer_DL_001A58" Offset="0x1A58"/>
<Blob Name="object_door_killer_Blob_001B28" Size="0xB8" Offset="0x1B28"/>
<Skeleton Name="object_door_killer_Skel_001BC8" Type="Flex" LimbType="Standard" Offset="0x1BC8" />
</File>
</Root>

View File

@ -1,7 +1,7 @@
<Root>
<File Name="object_fr" Segment="6">
<Animation Name="object_fr_Anim_0007BC" Offset="0x7BC"/>
<Animation Name="object_fr_Anim_0011C0" Offset="0x11C0"/>
<Animation Name="object_fr_Anim_0007BC" Offset="0x7BC"/> <!-- Frog Jumping -->
<Animation Name="object_fr_Anim_0011C0" Offset="0x11C0"/> <!-- Frog Landing -->
<Animation Name="object_fr_Anim_001534" Offset="0x1534"/>
<Texture Name="object_fr_Tex_001550" OutName="tex_00001550" Format="rgba16" Width="32" Height="32" Offset="0x1550"/>
<Blob Name="object_fr_Blob_001D50" Size="0x1D50" Offset="0x1D50"/>

View File

@ -51,7 +51,8 @@
<Texture Name="object_ganon_Tex_00A260" OutName="tex_0000A260" Format="rgba16" Width="16" Height="16" Offset="0xA260"/>
<Texture Name="object_ganon_Tex_00A460" OutName="tex_0000A460" Format="ci8" Width="8" Height="8" Offset="0xA460"/>
<Texture Name="object_ganon_Tex_00A4A0" OutName="tex_0000A4A0" Format="ci8" Width="8" Height="8" Offset="0xA4A0"/>
<Blob Name="object_ganon_Blob_00A4E0" Size="0x800" Offset="0xA4E0"/>
<Texture Name="object_ganon_Tex_00A4E0" OutName="tex_0000A4E0" Format="rgba16" Width="32" Height="16" Offset="0xA4E0"/>
<Blob Name="object_ganon_Blob_00A8E0" Size="0x400" Offset="0xA8E0"/>
<DList Name="object_ganon_DL_00BE90" Offset="0xBE90"/>
<DList Name="object_ganon_DL_00BF40" Offset="0xBF40"/>
<DList Name="object_ganon_DL_00C048" Offset="0xC048"/>

View File

@ -42,7 +42,9 @@
<Texture Name="object_gndd_Tex_00EF38" OutName="tex_0000EF38" Format="rgba16" Width="16" Height="16" Offset="0xEF38"/>
<Texture Name="object_gndd_Tex_00F138" OutName="tex_0000F138" Format="rgba16" Width="4" Height="8" Offset="0xF138"/>
<Texture Name="object_gndd_Tex_00F178" OutName="tex_0000F178" Format="ci8" Width="32" Height="16" Offset="0xF178"/>
<Blob Name="object_gndd_Blob_00F378" Size="0x600" Offset="0xF378"/>
<Texture Name="object_gndd_Tex_00F378" OutName="tex_0000F378" Format="ci8" Width="32" Height="16" Offset="0xF378"/>
<Texture Name="object_gndd_Tex_00F578" OutName="tex_0000F578" Format="ci8" Width="32" Height="16" Offset="0xF578"/>
<Texture Name="object_gndd_Tex_00F778" OutName="tex_0000F778" Format="ci8" Width="32" Height="16" Offset="0xF778"/>
<Texture Name="object_gndd_Tex_00F978" OutName="tex_0000F978" Format="rgba16" Width="16" Height="16" Offset="0xF978"/>
<Texture Name="object_gndd_Tex_00FB78" OutName="tex_0000FB78" Format="rgba16" Width="8" Height="16" Offset="0xFB78"/>
<Texture Name="object_gndd_Tex_00FC78" OutName="tex_0000FC78" Format="rgba16" Width="8" Height="8" Offset="0xFC78"/>

View File

@ -1,7 +1,7 @@
<Root>
<File Name="object_haka_objects" Segment="6">
<DList Name="object_haka_objects_DL_000040" Offset="0x40"/>
<Blob Name="object_haka_objects_Blob_0000D0" Size="0x80" Offset="0xD0"/>
<Collision Name="object_haka_objects_Col_000118" Offset="0x118"/>
<DList Name="object_haka_objects_DL_001120" Offset="0x1120"/>
<DList Name="object_haka_objects_DL_0018F0" Offset="0x18F0"/>
<DList Name="object_haka_objects_DL_002ED0" Offset="0x2ED0"/>
@ -19,39 +19,39 @@
<DList Name="object_haka_objects_DL_004B70" Offset="0x4B70"/>
<Blob Name="object_haka_objects_Blob_004C40" Size="0xB0" Offset="0x4C40"/>
<DList Name="object_haka_objects_DL_005000" Offset="0x5000"/>
<Blob Name="object_haka_objects_Blob_005130" Size="0x230" Offset="0x5130"/>
<Collision Name="object_haka_objects_Col_005334" Offset="0x5334"/>
<DList Name="object_haka_objects_DL_005A70" Offset="0x5A70"/>
<DList Name="object_haka_objects_DL_005CE0" Offset="0x5CE0"/>
<Blob Name="object_haka_objects_Blob_005DB8" Size="0xA8" Offset="0x5DB8"/>
<Collision Name="object_haka_objects_Col_005E30" Offset="0x5E30"/>
<DList Name="object_haka_objects_DL_0064E0" Offset="0x64E0"/>
<Blob Name="object_haka_objects_Blob_0067C8" Size="0x7D8" Offset="0x67C8"/>
<Collision Name="object_haka_objects_Col_006F70" Offset="0x6F70"/>
<DList Name="object_haka_objects_DL_0072C0" Offset="0x72C0"/>
<DList Name="object_haka_objects_DL_007610" Offset="0x7610"/>
<DList Name="object_haka_objects_DL_007EF0" Offset="0x7EF0"/>
<Blob Name="object_haka_objects_Blob_008148" Size="0xB8" Offset="0x8148"/>
<Collision Name="object_haka_objects_Col_0081D0" Offset="0x81D0"/>
<DList Name="object_haka_objects_DL_008A20" Offset="0x8A20"/>
<Blob Name="object_haka_objects_Blob_008C90" Size="0xB0" Offset="0x8C90"/>
<Collision Name="object_haka_objects_Col_008D10" Offset="0x8D10"/>
<DList Name="object_haka_objects_DL_008EB0" Offset="0x8EB0"/>
<Blob Name="object_haka_objects_Blob_009038" Size="0x168" Offset="0x9038"/>
<Collision Name="object_haka_objects_Col_009168" Offset="0x9168"/>
<DList Name="object_haka_objects_DL_009860" Offset="0x9860"/>
<Blob Name="object_haka_objects_Blob_009AC0" Size="0x240" Offset="0x9AC0"/>
<Collision Name="object_haka_objects_Col_009CD0" Offset="0x9CD0"/>
<DList Name="object_haka_objects_DL_00A1A0" Offset="0xA1A0"/>
<Blob Name="object_haka_objects_Blob_00A460" Size="0x3C0" Offset="0xA460"/>
<Collision Name="object_haka_objects_Col_00A7F4" Offset="0xA7F4"/>
<DList Name="object_haka_objects_DL_00A860" Offset="0xA860"/>
<Blob Name="object_haka_objects_Blob_00A8F0" Size="0x80" Offset="0xA8F0"/>
<Collision Name="object_haka_objects_Col_00A938" Offset="0xA938"/>
<DList Name="object_haka_objects_DL_00BF20" Offset="0xBF20"/>
<DList Name="object_haka_objects_DL_00D330" Offset="0xD330"/>
<Blob Name="object_haka_objects_Blob_00DA88" Size="0x9B8" Offset="0xDA88"/>
<Collision Name="object_haka_objects_Col_00E408" Offset="0xE408"/>
<DList Name="object_haka_objects_DL_00E910" Offset="0xE910"/>
<Blob Name="object_haka_objects_Blob_00EA40" Size="0x370" Offset="0xEA40"/>
<Collision Name="object_haka_objects_Col_00ED7C" Offset="0xED7C"/>
<DList Name="object_haka_objects_DL_00F1B0" Offset="0xF1B0"/>
<DList Name="object_haka_objects_DL_00FE40" Offset="0xFE40"/>
<Blob Name="object_haka_objects_Blob_010168" Size="0x788" Offset="0x10168"/>
<Collision Name="object_haka_objects_Col_0108B8" Offset="0x108B8"/>
<DList Name="object_haka_objects_DL_010A10" Offset="0x10A10"/>
<DList Name="object_haka_objects_DL_010C10" Offset="0x10C10"/>
<Blob Name="object_haka_objects_Blob_010CF0" Size="0x150" Offset="0x10CF0"/>
<Collision Name="object_haka_objects_Col_010E10" Offset="0x10E10"/>
<DList Name="object_haka_objects_DL_012270" Offset="0x12270"/>
<Blob Name="object_haka_objects_Blob_012AA0" Size="0x750" Offset="0x12AA0"/>
<Collision Name="object_haka_objects_Col_0131C4" Offset="0x131C4"/>
<Texture Name="object_haka_objects_Tex_0131F0" OutName="tex_000131F0" Format="ia8" Width="32" Height="32" Offset="0x131F0"/>
<Texture Name="object_haka_objects_Tex_0135F0" OutName="tex_000135F0" Format="rgba16" Width="32" Height="32" Offset="0x135F0"/>
<Texture Name="object_haka_objects_Tex_013DF0" OutName="tex_00013DF0" Format="rgba16" Width="32" Height="32" Offset="0x13DF0"/>

View File

@ -1,17 +1,18 @@
<Root>
<File Name="object_ice_objects" Segment="6">
<DList Name="object_ice_objects_DL_000190" Offset="0x190"/>
<Blob Name="object_ice_objects_Blob_0002B8" Size="0x168" Offset="0x2B8"/>
<Collision Name="object_ice_objects_Col_0003F0" Offset="0x3F0"/>
<DList Name="object_ice_objects_DL_0006F0" Offset="0x6F0"/>
<DList Name="object_ice_objects_DL_0012A0" Offset="0x12A0"/>
<Blob Name="object_ice_objects_Blob_001520" Size="0x730" Offset="0x1520"/>
<Collision Name="object_ice_objects_Col_001C1C" Offset="0x1C1C"/>
<DList Name="object_ice_objects_DL_001D10" Offset="0x1D10"/>
<DList Name="object_ice_objects_DL_0021F0" Offset="0x21F0"/>
<DList Name="object_ice_objects_DL_0023D0" Offset="0x23D0"/>
<Blob Name="object_ice_objects_Blob_002470" Size="0x150" Offset="0x2470"/>
<Collision Name="object_ice_objects_Col_002594" Offset="0x2594"/>
<DList Name="object_ice_objects_DL_002640" Offset="0x2640"/>
<DList Name="object_ice_objects_DL_002740" Offset="0x2740"/>
<Blob Name="object_ice_objects_Blob_0027D8" Size="0x178" Offset="0x27D8"/>
<Collision Name="object_ice_objects_Col_002854" Offset="0x2854"/>
<Collision Name="object_ice_objects_Col_002920" Offset="0x2920"/>
<Texture Name="object_ice_objects_Tex_002950" OutName="tex_00002950" Format="rgba16" Width="32" Height="32" Offset="0x2950"/>
<Texture Name="object_ice_objects_Tex_003150" OutName="tex_00003150" Format="i8" Width="32" Height="128" Offset="0x3150"/>
<Texture Name="object_ice_objects_Tex_004150" OutName="tex_00004150" Format="rgba16" Width="32" Height="32" Offset="0x4150"/>

View File

@ -30,8 +30,8 @@
<DList Name="object_im_DL_006BB8" Offset="0x6BB8"/>
<DList Name="object_im_DL_006D70" Offset="0x6D70"/>
<Texture Name="object_im_Tex_006F40" OutName="tex_00006F40" Format="rgba16" Width="16" Height="16" Offset="0x6F40"/>
<Texture Name="object_im_TLUT_007140" OutName="tlut_00007140" Format="rgba16" Width="16" Height="16" Offset="0x7140"/>
<Blob Name="object_im_Blob_007340" Size="0x2D0" Offset="0x7340"/>
<Texture Name="object_im_TLUT_007140" OutName="tlut_00007140" Format="rgba16" Width="8" Height="13" Offset="0x7140"/>
<Texture Name="object_im_Tex_007210" OutName="tex_00007210" Format="ci8" Width="32" Height="32" Offset="0x7210"/>
<Texture Name="object_im_Tex_007610" OutName="tex_00007610" Format="ci8" Width="16" Height="16" Offset="0x7610"/>
<Texture Name="object_im_Tex_007710" OutName="tex_00007710" Format="ci8" Width="8" Height="8" Offset="0x7710"/>
<Texture Name="object_im_Tex_007750" OutName="tex_00007750" Format="rgba16" Width="8" Height="8" Offset="0x7750"/>

View File

@ -18,7 +18,8 @@
<Texture Name="object_in_Tex_0031D0" OutName="tex_000031D0" Format="ci8" Width="8" Height="8" Offset="0x31D0"/>
<!-- <Blob Name="object_in_Blob_003210" Size="0x1F8" Offset="0x3210"/> -->
<Texture Name="object_in_TLUT_003408" OutName="tlut_00003408" Format="rgba16" Width="100" Height="1" Offset="0x3408"/>
<!-- <Blob Name="object_in_Blob_003608" Size="0x388" Offset="0x3608" /> -->
<Texture Name="object_in_Tex_0034D0" OutName="tex_000034D0" Format="ci8" Width="8" Height="8" Offset="0x34D0"/>
<Texture Name="object_in_Tex_003590" OutName="tex_00003590" Format="ci8" Width="32" Height="32" Offset="0x3590"/>
<Texture Name="object_in_Tex_003990" OutName="tex_00003990" Format="rgba16" Width="16" Height="16" Offset="0x3990"/>
<Texture Name="object_in_Tex_003B90" OutName="tex_00003B90" Format="ci8" Width="16" Height="16" Offset="0x3B90"/>
<Texture Name="object_in_Tex_003C90" OutName="tex_00003C90" Format="ci8" Width="16" Height="16" Offset="0x3C90"/>
@ -28,9 +29,11 @@
<Texture Name="object_in_Tex_0040D0" OutName="tex_000040D0" Format="rgba16" Width="8" Height="16" Offset="0x40D0"/>
<Texture Name="object_in_Tex_0041D0" OutName="tex_000041D0" Format="ci8" Width="8" Height="16" Offset="0x41D0"/>
<Texture Name="object_in_Tex_004250" OutName="tex_00004250" Format="ci8" Width="16" Height="16" Offset="0x4250"/>
<Blob Name="object_in_Blob_004350" Size="0x440" Offset="0x4350"/>
<Texture Name="object_in_Tex_004350" OutName="tex_00004350" Format="ci8" Width="8" Height="8" Offset="0x4350"/>
<Texture Name="object_in_Tex_004390" OutName="tex_00004390" Format="ci8" Width="32" Height="32" Offset="0x4390"/>
<Texture Name="object_in_Tex_004790" OutName="tex_00004790" Format="ci8" Width="8" Height="8" Offset="0x4790"/>
<Blob Name="object_in_Blob_0047D0" Size="0x800" Offset="0x47D0"/>
<Texture Name="object_in_Tex_0047D0" OutName="tex_000047D0" Format="ci8" Width="32" Height="32" Offset="0x47D0"/>
<Texture Name="object_in_Tex_004BD0" OutName="tex_00004BD0" Format="ci8" Width="32" Height="32" Offset="0x4BD0"/>
<DList Name="object_in_DL_006730" Offset="0x6730"/>
<DList Name="object_in_DL_007398" Offset="0x7398"/>
<DList Name="object_in_DL_0074C0" Offset="0x74C0"/>

View File

@ -48,7 +48,7 @@
<Texture Name="object_kingdodongo_Tex_016D90" OutName="tex_00016D90" Format="rgba16" Width="8" Height="8" Offset="0x16D90"/>
<Texture Name="object_kingdodongo_Tex_016E10" OutName="tex_00016E10" Format="rgba16" Width="32" Height="16" Offset="0x16E10"/>
<Texture Name="object_kingdodongo_Tex_017210" OutName="tex_00017210" Format="rgba16" Width="8" Height="32" Offset="0x17210"/>
<Blob Name="object_kingdodongo_Blob_017410" Size="0x3C00" Offset="0x17410"/>
<Blob Name="object_kingdodongo_Blob_017410" Size="0x3C00" Offset="0x17410"/> <!-- title card texture -->
<Limb Name="object_kingdodongo_Limb_01B010" LimbType="Standard" Offset="0x1B010"/>
<Limb Name="object_kingdodongo_Limb_01B01C" LimbType="Standard" Offset="0x1B01C"/>
<Limb Name="object_kingdodongo_Limb_01B028" LimbType="Standard" Offset="0x1B028"/>

View File

@ -3,13 +3,16 @@
<Animation Name="object_kz_Anim_00046C" Offset="0x46C" />
<Animation Name="object_kz_Anim_00075C" Offset="0x75C" />
<Texture Name="object_kz_TLUT_000770" OutName="tlut_000770" Format="rgba16" Width="16" Height="16" Offset="0x770" />
<Texture Name="object_kz_Tex_000970" OutName="tex_000970" Format="rgba16" Width="16" Height="16" Offset="0x970" />
<Texture Name="object_kz_TLUT_000970" OutName="tlut_000970" Format="rgba16" Width="16" Height="16" Offset="0x970" />
<Texture Name="object_kz_Tex_000B70" OutName="tex_000B70" Format="ci8" Width="32" Height="32" Offset="0xB70" TlutOffset="0x770"/>
<Texture Name="object_kz_Tex_000F70" OutName="tex_000F70" Format="ci8" Width="8" Height="16" Offset="0xF70" TlutOffset="0x770"/>
<Texture Name="object_kz_Tex_000FF0" OutName="tex_000FF0" Format="ci8" Width="32" Height="32" Offset="0xFF0" TlutOffset="0x770"/>
<Texture Name="object_kz_Tex_0013F0" OutName="tex_0013F0" Format="ci8" Width="8" Height="8" Offset="0x13F0" TlutOffset="0x770"/>
<Texture Name="object_kz_Tex_001430" OutName="tex_001430" Format="ci8" Width="8" Height="8" Offset="0x1430" TlutOffset="0x770"/>
<Blob Name="object_kz_Blob_001470" Size="0x1000" Offset="0x1470" />
<Texture Name="object_kz_Tex_001470" OutName="tex_001470" Format="ci8" Width="32" Height="32" Offset="0x1470" TlutOffset="0x970"/>
<Texture Name="object_kz_Tex_001870" OutName="tex_001870" Format="ci8" Width="32" Height="32" Offset="0x1870" TlutOffset="0x970"/>
<Texture Name="object_kz_Tex_001C70" OutName="tex_001C70" Format="ci8" Width="32" Height="32" Offset="0x1C70" TlutOffset="0x970"/>
<Blob Name="object_kz_Blob_002070" Size="0x400" Offset="0x2070" />
<Texture Name="object_kz_Tex_002470" OutName="tex_002470" Format="ci8" Width="16" Height="16" Offset="0x2470" TlutOffset="0x770"/>
<Texture Name="object_kz_Tex_002570" OutName="tex_002570" Format="ci8" Width="16" Height="16" Offset="0x2570" TlutOffset="0x770"/>
<Texture Name="object_kz_Tex_002670" OutName="tex_002670" Format="ci8" Width="32" Height="32" Offset="0x2670" TlutOffset="0x770"/>

View File

@ -10,6 +10,6 @@
<DList Name="object_lightbox_DL_000B70" Offset="0xB70"/>
<Texture Name="object_lightbox_Tex_000E10" OutName="tex_00000E10" Format="rgba16" Width="32" Height="32" Offset="0xE10"/>
<Texture Name="object_lightbox_Tex_001610" OutName="tex_00001610" Format="rgba16" Width="32" Height="32" Offset="0x1610"/>
<Blob Name="object_lightbox_Blob_001E10" Size="0x130" Offset="0x1E10"/>
<Collision Name="object_lightbox_Col_001F10" Offset="0x1F10"/>
</File>
</Root>

View File

@ -1,9 +1,14 @@
<Root>
<File Name="object_lightswitch" Segment="6">
<!-- face, uses rgba16 32x32 texture at 0x08000000, branches to dlist 0x09000000, uses env color -->
<DList Name="object_lightswitch_DL_000260" Offset="0x260"/>
<!-- flame ring, branches to dlist 0x09000000, uses env color -->
<DList Name="object_lightswitch_DL_000398" Offset="0x398"/>
<!-- a square, geometry only -->
<DList Name="object_lightswitch_DL_000408" Offset="0x408"/>
<Blob Name="object_lightswitch_Blob_000420" Size="0x1800" Offset="0x420"/>
<Texture Name="object_lightswitch_Tex_000420" OutName="tex_00000420" Format="rgba16" Width="32" Height="32" Offset="0x420"/> <!-- eyes open -->
<Texture Name="object_lightswitch_Tex_000C20" OutName="tex_00000C20" Format="rgba16" Width="32" Height="32" Offset="0xC20"/> <!-- eyes closed -->
<Texture Name="object_lightswitch_Tex_001420" OutName="tex_00001420" Format="rgba16" Width="32" Height="32" Offset="0x1420"/> <!-- eyes open, smiling -->
<Texture Name="object_lightswitch_Tex_001C20" OutName="tex_00001C20" Format="rgba16" Width="32" Height="32" Offset="0x1C20"/>
</File>
</Root>

View File

@ -17,11 +17,14 @@
<Texture Name="object_ma2_Tex_0021F0" OutName="tex_000021F0" Format="rgba16" Width="8" Height="8" Offset="0x21F0"/>
<Texture Name="object_ma2_Tex_002270" OutName="tex_00002270" Format="rgba16" Width="16" Height="16" Offset="0x2270"/>
<Texture Name="object_ma2_Tex_002470" OutName="tex_00002470" Format="ci8" Width="16" Height="16" Offset="0x2470"/>
<Blob Name="object_ma2_Blob_002570" Size="0x600" Offset="0x2570"/>
<Texture Name="object_ma2_Tex_002570" OutName="tex_00002570" Format="ci8" Width="32" Height="32" Offset="0x2570"/>
<Blob Name="object_ma2_Blob_002970" Size="0x200" Offset="0x2970"/>
<Texture Name="object_ma2_Tex_002B70" OutName="tex_00002B70" Format="rgba16" Width="8" Height="16" Offset="0x2B70"/>
<Blob Name="object_ma2_Blob_002C70" Size="0x800" Offset="0x2C70"/>
<Texture Name="object_ma2_Tex_002C70" OutName="tex_00002C70" Format="ci8" Width="32" Height="32" Offset="0x2C70"/>
<Texture Name="object_ma2_Tex_003070" OutName="tex_00003070" Format="ci8" Width="32" Height="32" Offset="0x3070"/>
<Texture Name="object_ma2_Tex_003470" OutName="tex_00003470" Format="rgba16" Width="8" Height="16" Offset="0x3470"/>
<Blob Name="object_ma2_Blob_003570" Size="0x400" Offset="0x3570"/>
<Blob Name="object_ma2_Blob_003570" Size="0x200" Offset="0x3570"/>
<Texture Name="object_ma2_Tex_003770" OutName="tex_00003770" Format="ci8" Width="32" Height="16" Offset="0x3770"/>
<DList Name="object_ma2_DL_004BE0" Offset="0x4BE0"/>
<DList Name="object_ma2_DL_005420" Offset="0x5420"/>
<DList Name="object_ma2_DL_007568" Offset="0x7568"/>
@ -60,6 +63,6 @@
<Skeleton Name="object_ma2_Skel_008D90" Type="Flex" LimbType="Standard" Offset="0x8D90"/>
<Animation Name="object_ma2_Anim_0092F0" Offset="0x92F0"/>
<Animation Name="object_ma2_Anim_0093BC" Offset="0x93BC"/>
<Blob Name="object_ma2_Blob_0093CC" Size="0xB24" Offset="0x93CC"/>
<Animation Name="object_ma2_Anim_009EE0" Offset="0x9EE0"/>
</File>
</Root>

View File

@ -19,7 +19,9 @@
<DList Name="gObjectMizuObjectsBwallDL_002090" Offset="0x2090"/>
<DList Name="gObjectMizuObjectsBwallDL_002390" Offset="0x2390"/>
<Collision Name="gObjectMizuObjectsBwallCol_0025A4" Offset="0x25A4"/>
<Texture Name="object_mizu_objects_Tex_0035C0" OutName="tex_000035C0" Format="rgba16" Width="32" Height="64" Offset="0x35C0" />
<DList Name="gWaterTempleDoorDL_0048B0" Offset="0x48B0"/>
<DList Name="gWaterTempleDoorLeftDL" Offset="0x4958"/>
<DList Name="gWaterTempleDoorRightDL" Offset="0x4A10"/>

View File

@ -1,6 +1,6 @@
<Root>
<File Name="object_mori_hineri1" Segment="6">
<DList Name="object_mori_hineri1_DL_0024E0" Offset="0x24E0"/>
<Blob Name="object_mori_hineri1_Blob_0043B0" Size="0x1140" Offset="0x43B0"/>
<Collision Name="object_mori_hineri1_Col_0054B8" Offset="0x54B8"/>
</File>
</Root>

View File

@ -1,6 +1,6 @@
<Root>
<File Name="object_mori_hineri1a" Segment="6">
<DList Name="object_mori_hineri1a_DL_001980" Offset="0x1980"/>
<Blob Name="object_mori_hineri1a_Blob_0028D8" Size="0xBE8" Offset="0x28D8"/>
<Collision Name="object_mori_hineri1a_Col_003490" Offset="0x3490"/>
</File>
</Root>

View File

@ -1,6 +1,6 @@
<Root>
<File Name="object_mori_hineri2" Segment="6">
<DList Name="object_mori_hineri2_DL_0020F0" Offset="0x20F0"/>
<Blob Name="object_mori_hineri2_Blob_0032B0" Size="0x1150" Offset="0x32B0"/>
<Collision Name="object_mori_hineri2_Col_0043D0" Offset="0x43D0"/>
</File>
</Root>

View File

@ -1,6 +1,6 @@
<Root>
<File Name="object_mori_hineri2a" Segment="6">
<DList Name="object_mori_hineri2a_DL_002B70" Offset="0x2B70"/>
<Blob Name="object_mori_hineri2a_Blob_004BB8" Size="0x14F8" Offset="0x4BB8"/>
<Collision Name="object_mori_hineri2a_Col_006078" Offset="0x6078"/>
</File>
</Root>

View File

@ -22,6 +22,6 @@
<Texture Name="object_reeba_Tex_000CD8" OutName="tex_00000CD8" Format="rgba16" Width="8" Height="16" Offset="0xCD8"/>
<Texture Name="object_reeba_Tex_000DD8" OutName="tex_00000DD8" Format="rgba16" Width="32" Height="32" Offset="0xDD8"/>
<Texture Name="object_reeba_Tex_0015D8" OutName="tex_000015D8" Format="rgba16" Width="32" Height="32" Offset="0x15D8"/>
<Blob Name="object_reeba_Blob_001DD8" Size="0x118" Offset="0x1DD8"/>
<Skeleton Name="object_reeba_Skel_001EE8" Type="Normal" LimbType="Standard" Offset="0x1EE8"/>
</File>
</Root>

View File

@ -17,7 +17,8 @@
<Texture Name="object_rl_Tex_003620" OutName="tex_00003620" Format="ci8" Width="32" Height="16" Offset="0x3620"/>
<Texture Name="object_rl_Tex_003820" OutName="tex_00003820" Format="ci8" Width="16" Height="16" Offset="0x3820"/>
<Texture Name="object_rl_Tex_003920" OutName="tex_00003920" Format="ci8" Width="8" Height="8" Offset="0x3920"/>
<Blob Name="object_rl_Blob_003960" Size="0x400" Offset="0x3960"/>
<Texture Name="object_rl_Tex_003960" OutName="tex_00003960" Format="ci8" Width="32" Height="16" Offset="0x3960"/>
<Texture Name="object_rl_Tex_003B60" OutName="tex_00003B60" Format="ci8" Width="32" Height="16" Offset="0x3B60"/>
<Texture Name="object_rl_Tex_003D60" OutName="tex_00003D60" Format="ci8" Width="8" Height="8" Offset="0x3D60"/>
<Texture Name="object_rl_Tex_003DA0" OutName="tex_00003DA0" Format="ci8" Width="16" Height="16" Offset="0x3DA0"/>
<DList Name="object_rl_DL_005220" Offset="0x5220"/>

View File

@ -2,6 +2,6 @@
<File Name="object_siofuki" Segment="6">
<Texture Name="object_siofuki_Tex_000000" OutName="tex_00000000" Format="i4" Width="64" Height="64" Offset="0x0"/>
<DList Name="object_siofuki_DL_000B70" Offset="0xB70"/>
<Blob Name="object_siofuki_Blob_000D30" Size="0x80" Offset="0xD30"/>
<Collision Name="object_siofuki_Col_000D78" Offset="0xD78"/>
</File>
</Root>

View File

@ -1,5 +1,7 @@
<Root>
<File Name="object_spot01_matoyab" Segment="6">
<Collision Name="object_spot01_matoyab_col" Offset="0x1C58"/>
<!-- Kakariko Guard Gate -->
<DList Name="gKakarikoGuardGateDL" Offset="0x1CD0"/>
<Texture Name="gKakarikoGuardGateMetalSidebarDL" OutName="guard_gate_metal_sidebar" Format="rgba16" Width="8" Height="64" Offset="0x1DE0"/>

View File

@ -8,12 +8,12 @@
<Blob Name="object_spot02_objects_Blob_0096A8" Size="0x9008" Offset="0x96A8"/>
<DList Name="object_spot02_objects_DL_0126F0" Offset="0x126F0"/>
<DList Name="object_spot02_objects_DL_0127C0" Offset="0x127C0"/>
<Blob Name="object_spot02_objects_Blob_012890" Size="0x80" Offset="0x12890"/>
<Collision Name="object_spot02_objects_Col_0128D8" Offset="0x128D8"/>
<DList Name="object_spot02_objects_DL_012A50" Offset="0x12A50"/>
<Blob Name="object_spot02_objects_Blob_012B28" Size="0xA8" Offset="0x12B28"/>
<Collision Name="object_spot02_objects_Col_012BA4" Offset="0x12BA4"/>
<DList Name="object_spot02_objects_DL_012D30" Offset="0x12D30"/>
<DList Name="object_spot02_objects_DL_0130B0" Offset="0x130B0"/>
<Blob Name="object_spot02_objects_Blob_013220" Size="0x200" Offset="0x13220"/>
<Collision Name="object_spot02_objects_Col_0133EC" Offset="0x133EC"/>
<Texture Name="object_spot02_objects_Tex_013420" OutName="tex_00013420" Format="i4" Width="32" Height="64" Offset="0x13420"/>
<Texture Name="object_spot02_objects_Tex_013820" OutName="tex_00013820" Format="rgba16" Width="32" Height="32" Offset="0x13820"/>
<Texture Name="object_spot02_objects_Tex_014020" OutName="tex_00014020" Format="rgba16" Width="32" Height="32" Offset="0x14020"/>

View File

@ -1,10 +1,15 @@
<Root>
<File Name="object_spot03_object" Segment="6">
<Texture Name="object_spot03_object_Tex_000000" OutName="tex_00000000" Format="i4" Width="64" Height="64" Offset="0x0"/>
<Blob Name="object_spot03_object_Blob_000800" Size="0x320" Offset="0x800"/>
<Array Name="object_spot03_object_Vtx_000800" Count="25" Offset="0x800">
<Vtx/>
</Array>
<Array Name="object_spot03_object_Vtx_000990" Count="25" Offset="0x990">
<Vtx/>
</Array>
<DList Name="object_spot03_object_DL_000B20" Offset="0xB20"/>
<DList Name="object_spot03_object_DL_000BC0" Offset="0xBC0"/>
<Blob Name="object_spot03_object_Blob_000C48" Size="0x88" Offset="0xC48"/>
<Collision Name="object_spot03_object_Col_000C98" Offset="0xC98"/>
<Texture Name="object_spot03_object_Tex_000CD0" OutName="tex_00000CD0" Format="i4" Width="64" Height="64" Offset="0xCD0"/>
<DList Name="object_spot03_object_DL_001580" Offset="0x1580"/>
</File>

View File

@ -2,9 +2,9 @@
<File Name="object_spot05_objects" Segment="6">
<Texture Name="object_spot05_objects_Tex_000000" OutName="tex_00000000" Format="rgba16" Width="32" Height="32" Offset="0x0"/>
<DList Name="object_spot05_objects_DL_000840" Offset="0x840"/>
<Blob Name="object_spot05_objects_Blob_0008D0" Size="0x80" Offset="0x8D0"/>
<Collision Name="object_spot05_objects_Col_000918" Offset="0x918"/>
<Texture Name="object_spot05_objects_Tex_000950" OutName="tex_00000950" Format="rgba16" Width="16" Height="64" Offset="0x950"/>
<DList Name="object_spot05_objects_DL_001190" Offset="0x1190"/>
<Blob Name="object_spot05_objects_Blob_001220" Size="0xD0" Offset="0x1220"/>
<Collision Name="object_spot05_objects_Col_0012C0" Offset="0x12C0"/>
</File>
</Root>

View File

@ -6,12 +6,12 @@
<Texture Name="object_spot07_object_Tex_000EE0" OutName="tex_00000EE0" Format="ci4" Width="32" Height="128" Offset="0xEE0"/>
<DList Name="object_spot07_object_DL_001CF0" Offset="0x1CF0"/>
<DList Name="object_spot07_object_DL_001F68" Offset="0x1F68"/>
<Blob Name="object_spot07_object_Blob_0020F0" Size="0x4D0" Offset="0x20F0"/>
<Collision Name="object_spot07_object_Col_002590" Offset="0x2590"/>
<Texture Name="object_spot07_object_TLUT_0025C0" OutName="tlut_000025C0" Format="rgba16" Width="4" Height="4" Offset="0x25C0"/>
<Texture Name="object_spot07_object_Tex_0025E0" OutName="tex_000025E0" Format="ci4" Width="32" Height="128" Offset="0x25E0"/>
<DList Name="object_spot07_object_DL_003210" Offset="0x3210"/>
<DList Name="object_spot07_object_DL_0032D8" Offset="0x32D8"/>
<Blob Name="object_spot07_object_Blob_003588" Size="0x3A8" Offset="0x3588"/>
<Collision Name="object_spot07_object_Col_0038FC" Offset="0x38FC"/>
<Texture Name="object_spot07_object_Tex_003930" OutName="tex_00003930" Format="rgba16" Width="32" Height="32" Offset="0x3930"/>
<Texture Name="object_spot07_object_Tex_004130" OutName="tex_00004130" Format="i4" Width="64" Height="64" Offset="0x4130"/>
<Texture Name="object_spot07_object_Tex_004930" OutName="tex_00004930" Format="i4" Width="32" Height="128" Offset="0x4930"/>

View File

@ -22,8 +22,8 @@
<Texture Name="object_st_Tex_0024D0" OutName="tex_000024D0" Format="rgba16" Width="16" Height="8" Offset="0x24D0"/>
<Texture Name="object_st_Tex_0025D0" OutName="tex_000025D0" Format="i4" Width="16" Height="16" Offset="0x25D0"/>
<Texture Name="object_st_Tex_002650" OutName="tex_00002650" Format="rgba16" Width="8" Height="8" Offset="0x2650"/>
<Blob Name="object_st_Blob_003C50" Size="0x358" Offset="0x3C50"/>
<DList Name="object_st_DL_003FA8" Offset="0x3FA8"/>
<Blob Name="object_st_Blob_003C50" Size="0x360" Offset="0x3C50"/>
<DList Name="object_st_DL_003FB0" Offset="0x3FB0"/>
<DList Name="object_st_DL_0043D8" Offset="0x43D8"/>
<DList Name="object_st_DL_0045C0" Offset="0x45C0"/>
<DList Name="object_st_DL_004658" Offset="0x4658"/>

View File

@ -18,12 +18,15 @@
<Texture Name="object_ta_Tex_006DC0" OutName="tex_00006DC0" Format="ci8" Width="8" Height="8" Offset="0x6DC0"/>
<Texture Name="object_ta_Tex_006E00" OutName="tex_00006E00" Format="ci8" Width="8" Height="8" Offset="0x6E00"/>
<Texture Name="object_ta_Tex_006E40" OutName="tex_00006E40" Format="ci8" Width="8" Height="16" Offset="0x6E40"/>
<Blob Name="object_ta_Blob_006EC0" Size="0xC40" Offset="0x6EC0"/>
<Texture Name="object_ta_Tex_006EC0" OutName="tex_00006EC0" Format="ci8" Width="32" Height="32" Offset="0x6EC0"/>
<Texture Name="object_ta_Tex_0072C0" OutName="tex_000072C0" Format="ci8" Width="32" Height="32" Offset="0x72C0"/>
<Texture Name="object_ta_Tex_0076C0" OutName="tex_000076C0" Format="ci8" Width="32" Height="32" Offset="0x76C0"/>
<Texture Name="object_ta_Tex_007AC0" OutName="tex_00007AC0" Format="ci8" Width="8" Height="8" Offset="0x7AC0"/>
<Texture Name="object_ta_Tex_007B00" OutName="tex_00007B00" Format="ci8" Width="16" Height="32" Offset="0x7B00"/>
<Texture Name="object_ta_Tex_007D00" OutName="tex_00007D00" Format="ci8" Width="16" Height="16" Offset="0x7D00"/>
<Texture Name="object_ta_Tex_007E00" OutName="tex_00007E00" Format="ci8" Width="16" Height="16" Offset="0x7E00"/>
<Texture Name="object_ta_Tex_007F00" OutName="tex_00007F00" Format="ci8" Width="8" Height="16" Offset="0x7F00"/>
<Blob Name="object_ta_Blob_007F80" Size="0x400" Offset="0x7F80"/>
<Texture Name="object_ta_Tex_007F80" OutName="tex_00007F80" Format="ci8" Width="32" Height="32" Offset="0x7F80"/>
<DList Name="object_ta_DL_0096D0" Offset="0x96D0"/>
<DList Name="object_ta_DL_00A2F8" Offset="0xA2F8"/>
<DList Name="object_ta_DL_00A498" Offset="0xA498"/>

View File

@ -3,15 +3,20 @@
<Animation Name="object_tite_Anim_0001D4" Offset="0x1D4"/>
<Animation Name="object_tite_Anim_0004F8" Offset="0x4F8"/>
<Animation Name="object_tite_Anim_00069C" Offset="0x69C"/>
<Animation Name="object_tite_Anim_00083C" Offset="0x83C"/>
<Animation Name="object_tite_Anim_000A14" Offset="0xA14"/>
<Animation Name="object_tite_Anim_000C70" Offset="0xC70"/>
<Animation Name="object_tite_Anim_00083C" Offset="0x83C"/> <!-- Lunge (6 frames) -->
<Animation Name="object_tite_Anim_000A14" Offset="0xA14"/> <!-- Turning (8 frames) -->
<Animation Name="object_tite_Anim_000C70" Offset="0xC70"/> <!-- Jump / travelling to player (11 frames) -->
<Animation Name="object_tite_Anim_000F50" Offset="0xF50"/>
<Animation Name="object_tite_Anim_0012E4" Offset="0x12E4"/>
<Blob Name="object_tite_Blob_0012F4" Size="0x70C" Offset="0x12F4"/>
<Animation Name="object_tite_Anim_0012E4" Offset="0x12E4"/> <!-- Idle (14 frames) -->
<Blob Name="object_tite_Blob_0012F4" Size="0xC" Offset="0x12F4"/>
<Texture Name="object_tite_Tex_001300" OutName="tex_00001300" Format="rgba16" Width="16" Height="32" Offset="0x1300"/>
<Texture Name="object_tite_Tex_001700" OutName="tex_00001700" Format="rgba16" Width="16" Height="16" Offset="0x1700"/>
<Texture Name="object_tite_Tex_001900" OutName="tex_00001900" Format="rgba16" Width="8" Height="16" Offset="0x1900"/>
<Texture Name="object_tite_Tex_001A00" OutName="tex_00001A00" Format="rgba16" Width="4" Height="16" Offset="0x1A00"/>
<Texture Name="object_tite_Tex_001A80" OutName="tex_00001A80" Format="rgba16" Width="8" Height="8" Offset="0x1A80"/>
<Blob Name="object_tite_Blob_001B00" Size="0x700" Offset="0x1B00"/>
<Texture Name="object_tite_Tex_001B00" OutName="tex_00001B00" Format="rgba16" Width="16" Height="32" Offset="0x1B00"/>
<Texture Name="object_tite_Tex_001F00" OutName="tex_00001F00" Format="rgba16" Width="16" Height="16" Offset="0x1F00"/>
<Texture Name="object_tite_Tex_002100" OutName="tex_00002100" Format="rgba16" Width="8" Height="16" Offset="0x2100"/>
<DList Name="object_tite_DL_002FF0" Offset="0x2FF0"/>
<DList Name="object_tite_DL_003160" Offset="0x3160"/>
<DList Name="object_tite_DL_003290" Offset="0x3290"/>

View File

@ -16,7 +16,7 @@
<Texture Name="object_toki_objects_Tex_006FC0" OutName="tex_006FC0" Format="rgba16" Width="16" Height="16" Offset="0x6FC0" />
<DList Name="object_toki_objects_DL_007440" Offset="0x7440" />
<DList Name="object_toki_objects_DL_007578" Offset="0x7578" />
<Blob Name="object_toki_objects_Blob_0076B0" Size="0x210" Offset="0x76B0" />
<Collision Name="gDoorTokiCol" Offset="0x7888"/>
<DList Name="object_toki_objects_DL_007E20" Offset="0x7E20" />
<DList Name="object_toki_objects_DL_007EE0" Offset="0x7EE0" />
<DList Name="object_toki_objects_DL_008190" Offset="0x8190" />

View File

@ -1,12 +1,12 @@
<Root>
<File Name="object_tr" Segment="6">
<Animation Name="object_tr_Anim_000BFC" Offset="0xBFC"/>
<Animation Name="object_tr_Anim_0013CC" Offset="0x13CC"/>
<Animation Name="object_tr_Anim_001CDC" Offset="0x1CDC"/>
<Animation Name="object_tr_Anim_0013CC" Offset="0x13CC"/> <!-- Looking over right shoulder -->
<Animation Name="object_tr_Anim_001CDC" Offset="0x1CDC"/> <!-- Standing, broom in left hand -->
<Animation Name="object_tr_Anim_002BC4" Offset="0x2BC4"/>
<Animation Name="object_tr_Anim_0035CC" Offset="0x35CC"/>
<Animation Name="object_tr_Anim_003FC8" Offset="0x3FC8"/>
<Animation Name="object_tr_Anim_0049C8" Offset="0x49C8"/>
<Animation Name="object_tr_Anim_0035CC" Offset="0x35CC"/> <!-- Looking over left shoulder -->
<Animation Name="object_tr_Anim_003FC8" Offset="0x3FC8"/> <!-- Standing, broom over right shoulder -->
<Animation Name="object_tr_Anim_0049C8" Offset="0x49C8"/> <!-- Floating on broom -->
<Animation Name="object_tr_Anim_005308" Offset="0x5308"/>
<Blob Name="object_tr_Blob_0062E0" Size="0x60" Offset="0x62E0"/>
<DList Name="object_tr_DL_006520" Offset="0x6520"/>

View File

@ -136,12 +136,12 @@
<DList Name="object_tw_DL_0189A0" Offset="0x189A0" />
<Texture Name="object_tw_Tex_018B20" OutName="tex_018B20" Format="rgba16" Width="4" Height="8" Offset="0x18B20" />
<Texture Name="object_tw_Tex_018B60" OutName="tex_018B60" Format="i4" Width="32" Height="64" Offset="0x18B60" />
<DList Name="object_tw_DL_018FC0" Offset="0x18FC0" />
<DList Name="object_tw_DL_018FC0" Offset="0x18FC0" /> <!-- Koume Ground Smoke -->
<Texture Name="object_tw_Tex_019078" OutName="tex_019078" Format="i8" Width="32" Height="32" Offset="0x19078" />
<Texture Name="object_tw_Tex_019478" OutName="tex_019478" Format="i4" Width="32" Height="64" Offset="0x19478" />
<DList Name="object_tw_DL_019938" Offset="0x19938" />
<DList Name="object_tw_DL_019938" Offset="0x19938" /> <!-- koume Ground Flame -->
<Texture Name="object_tw_Tex_019A20" OutName="tex_019A20" Format="i4" Width="32" Height="32" Offset="0x19A20" />
<DList Name="object_tw_DL_019D40" Offset="0x19D40" />
<DList Name="object_tw_DL_019D40" Offset="0x19D40" /> <!-- Koume Ground Crater -->
<Texture Name="object_tw_Tex_019E00" OutName="tex_019E00" Format="i4" Width="32" Height="64" Offset="0x19E00" />
<Texture Name="object_tw_Tex_01A200" OutName="tex_01A200" Format="i4" Width="32" Height="32" Offset="0x1A200" />
<DList Name="object_tw_DL_01A430" Offset="0x1A430" />
@ -271,7 +271,7 @@
<DList Name="object_tw_DL_02DEB0" Offset="0x2DEB0" />
<DList Name="object_tw_DL_02DFB0" Offset="0x2DFB0" />
<DList Name="object_tw_DL_02E098" Offset="0x2E098" />
<!--Blob Name="object_tw_Blob_02E170" Size="0x3C00" Offset="0x2E170" /-->
<Blob Name="object_tw_Blob_02E170" Size="0x3C00" Offset="0x2E170" /> <!-- boss title card -->
<Limb Name="object_tw_Limb_031D70" LimbType="Standard" Offset="0x31D70" />
<Limb Name="object_tw_Limb_031D7C" LimbType="Standard" Offset="0x31D7C" />
<Limb Name="object_tw_Limb_031D88" LimbType="Standard" Offset="0x31D88" />

View File

@ -1,5 +1,8 @@
<Root>
<File Name="nintendo_rogo_static" Segment="1">
<DList Name="gNintendo64LogoDL" Offset="0x2720"/>
<Texture Name="nintendo_rogo_static_Tex_000000" OutName="tex_00000000" Format="i8" Width="192" Height="32" Offset="0x0000"/>
<Texture Name="nintendo_rogo_static_Tex_001800" OutName="tex_00001800" Format="i8" Width="32" Height="32" Offset="0x1800"/>
<DList Name="gNintendo64LogoDL" Offset="0x2720"/>
</File>
</Root>

View File

@ -212,7 +212,7 @@ void func_80871FB8(BgDodoago* this, GlobalContext* globalCtx) {
D_80872824--;
return;
}
if (D_80872824 == 0x6C) {
for (i = 10; i >= 0; i--) {
currentPos.x = D_808725CC[i].x + this->dyna.actor.world.pos.x;

View File

@ -1,7 +1,5 @@
#include "z_bg_ganon_otyuka.h"
extern Gfx D_08000000[];
static UNK_TYPE sPlatformTexture[] = {
0x19033187, 0x39C74207, 0x4A495247, 0x5A494A09, 0x498749C5, 0x5A476247, 0x62076287, 0x734F8393, 0x6A8B6A09,
0x5A495207, 0x49C54A89, 0x4A895289, 0x5AC95A89, 0x5A4B5A8B, 0x5A896249, 0x52095207, 0x19033185, 0x420949C7,
@ -200,7 +198,7 @@ static Gfx sFlashDList[] = {
COMBINED, ENVIRONMENT, COMBINED, 0, SHADE, 0),
gsDPSetRenderMode(G_RM_PASS, G_RM_AA_ZB_XLU_SURF2),
gsSPClearGeometryMode(G_CULL_BACK | G_FOG | G_LIGHTING | G_TEXTURE_GEN | G_TEXTURE_GEN_LINEAR),
gsSPDisplayList(D_08000000),
gsSPDisplayList(0x08000000),
gsSPVertex(sFlashVerts, 8, 0),
gsSP2Triangles(0, 1, 2, 0, 0, 3, 1, 0),
gsSP2Triangles(4, 2, 5, 0, 4, 0, 2, 0),

View File

@ -38,8 +38,6 @@ static InitChainEntry sInitChain[] = {
ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP),
};
extern CutsceneData D_02002640[];
void BgGjyoBridge_Init(Actor* thisx, GlobalContext* globalCtx) {
BgGjyoBridge* this = THIS;
s32 pad;

View File

@ -6,6 +6,7 @@
#include "z_bg_haka_gate.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#include "objects/object_haka_objects/object_haka_objects.h"
#define FLAGS 0x00000000
@ -47,13 +48,6 @@ void BgHakaGate_GateOpen(BgHakaGate* this, GlobalContext* globalCtx);
void BgHakaGate_SkullOfTruth(BgHakaGate* this, GlobalContext* globalCtx);
void BgHakaGate_FalseSkull(BgHakaGate* this, GlobalContext* globalCtx);
extern CollisionHeader D_0600A938;
extern Gfx D_0600F1B0[];
extern Gfx D_06010A10[];
extern Gfx D_06010C10[];
extern CollisionHeader D_06010E10;
extern CollisionHeader D_060131C4;
static s16 sSkullOfTruthRotY = 0x100;
static u8 sPuzzleState = 1;
static f32 sStatueDistToPlayer = 0;
@ -111,7 +105,7 @@ void BgHakaGate_Init(Actor* thisx, GlobalContext* globalCtx) {
}
} else {
if (thisx->params == BGHAKAGATE_STATUE) {
CollisionHeader_GetVirtual(&D_060131C4, &colHeader);
CollisionHeader_GetVirtual(&object_haka_objects_Col_0131C4, &colHeader);
this->vTimer = 0;
sStatueDistToPlayer = 0.0f;
if (Flags_GetSwitch(globalCtx, this->switchFlag)) {
@ -120,14 +114,14 @@ void BgHakaGate_Init(Actor* thisx, GlobalContext* globalCtx) {
this->actionFunc = BgHakaGate_StatueIdle;
}
} else if (thisx->params == BGHAKAGATE_FLOOR) {
CollisionHeader_GetVirtual(&D_06010E10, &colHeader);
CollisionHeader_GetVirtual(&object_haka_objects_Col_010E10, &colHeader);
if (Flags_GetSwitch(globalCtx, this->switchFlag)) {
this->actionFunc = BgHakaGate_DoNothing;
} else {
this->actionFunc = BgHakaGate_FloorClosed;
}
} else { // BGHAKAGATE_GATE
CollisionHeader_GetVirtual(&D_0600A938, &colHeader);
CollisionHeader_GetVirtual(&object_haka_objects_Col_00A938, &colHeader);
if (Flags_GetSwitch(globalCtx, this->switchFlag)) {
this->actionFunc = BgHakaGate_DoNothing;
thisx->world.pos.y += 80.0f;
@ -349,7 +343,7 @@ void BgHakaGate_Draw(Actor* thisx, GlobalContext* globalCtx) {
MtxF currentMtxF;
if ((thisx->flags & 0x80) == 0x80) {
Gfx_DrawDListXlu(globalCtx, D_0600F1B0);
Gfx_DrawDListXlu(globalCtx, object_haka_objects_DL_00F1B0);
} else {
func_80093D18(globalCtx->state.gfxCtx);
if (thisx->params == BGHAKAGATE_FLOOR) {
@ -360,14 +354,14 @@ void BgHakaGate_Draw(Actor* thisx, GlobalContext* globalCtx) {
Matrix_Translate(0.0f, 0.0f, 2000.0f, MTXMODE_APPLY);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_haka_gate.c", 788),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, D_06010A10);
gSPDisplayList(POLY_OPA_DISP++, object_haka_objects_DL_010A10);
Matrix_Put(&currentMtxF);
Matrix_Translate(0.0f, 0.0f, 2000.0f, MTXMODE_APPLY);
Matrix_RotateX(-this->vOpenAngle * (M_PI / 0x8000), MTXMODE_APPLY);
Matrix_Translate(0.0f, 0.0f, -2000.0f, MTXMODE_APPLY);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_haka_gate.c", 796),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, D_06010C10);
gSPDisplayList(POLY_OPA_DISP++, object_haka_objects_DL_010C10);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_haka_gate.c", 800);
} else {
Gfx_DrawDListOpa(globalCtx, displayLists[thisx->params]);

View File

@ -5,6 +5,7 @@
*/
#include "z_bg_haka_meganebg.h"
#include "objects/object_haka_objects/object_haka_objects.h"
#define FLAGS 0x00000000
@ -48,18 +49,12 @@ static u32 D_8087E3FC[] = {
};
static Gfx* D_8087E410[] = {
0x06008EB0,
0x0600A1A0,
0x06005000,
0x06000040,
object_haka_objects_DL_008EB0,
object_haka_objects_DL_00A1A0,
object_haka_objects_DL_005000,
object_haka_objects_DL_000040,
};
extern CollisionHeader D_06000118;
extern CollisionHeader D_06005334;
extern Gfx D_06008EB0[];
extern CollisionHeader D_06009168;
extern CollisionHeader D_0600A7F4;
void BgHakaMeganeBG_Init(Actor* thisx, GlobalContext* globalCtx) {
s32 pad;
BgHakaMeganeBG* this = THIS;
@ -72,18 +67,18 @@ void BgHakaMeganeBG_Init(Actor* thisx, GlobalContext* globalCtx) {
if (thisx->params == 2) {
DynaPolyActor_Init(&this->dyna, DPM_UNK3);
thisx->flags |= 0x10;
CollisionHeader_GetVirtual(&D_06005334, &colHeader);
CollisionHeader_GetVirtual(&object_haka_objects_Col_005334, &colHeader);
this->actionFunc = func_8087E258;
} else {
DynaPolyActor_Init(&this->dyna, DPM_PLAYER);
if (thisx->params == 0) {
CollisionHeader_GetVirtual(&D_06009168, &colHeader);
CollisionHeader_GetVirtual(&object_haka_objects_Col_009168, &colHeader);
thisx->flags |= 0x80;
this->unk_16A = 20;
this->actionFunc = func_8087DFF8;
} else if (thisx->params == 3) {
CollisionHeader_GetVirtual(&D_06000118, &colHeader);
CollisionHeader_GetVirtual(&object_haka_objects_Col_000118, &colHeader);
thisx->home.pos.y += 100.0f;
if (Flags_GetSwitch(globalCtx, this->unk_168)) {
@ -94,7 +89,7 @@ void BgHakaMeganeBG_Init(Actor* thisx, GlobalContext* globalCtx) {
this->actionFunc = func_8087E288;
}
} else {
CollisionHeader_GetVirtual(&D_0600A7F4, &colHeader);
CollisionHeader_GetVirtual(&object_haka_objects_Col_00A7F4, &colHeader);
this->unk_16A = 80;
this->actionFunc = func_8087E10C;
thisx->uncullZoneScale = 3000.0f;
@ -220,7 +215,7 @@ void BgHakaMeganeBG_Draw(Actor* thisx, GlobalContext* globalCtx) {
s16 params = this->dyna.actor.params;
if (params == 0) {
Gfx_DrawDListXlu(globalCtx, D_06008EB0);
Gfx_DrawDListXlu(globalCtx, object_haka_objects_DL_008EB0);
} else {
Gfx_DrawDListOpa(globalCtx, D_8087E410[params]);
}

View File

@ -5,6 +5,8 @@
*/
#include "z_bg_haka_sgami.h"
#include "objects/object_haka_objects/object_haka_objects.h"
#include "objects/object_ice_objects/object_ice_objects.h"
#define FLAGS 0x00000011
@ -26,9 +28,6 @@ void BgHakaSgami_Draw(Actor* thisx, GlobalContext* globalCtx);
void BgHakaSgami_SetupSpin(BgHakaSgami* this, GlobalContext* globalCtx);
void BgHakaSgami_Spin(BgHakaSgami* this, GlobalContext* globalCtx);
extern Gfx D_0600BF20[];
extern Gfx D_060021F0[];
const ActorInit Bg_Haka_Sgami_InitVars = {
ACTOR_BG_HAKA_SGAMI,
ACTORCAT_PROP,
@ -301,10 +300,10 @@ void BgHakaSgami_Draw(Actor* thisx, GlobalContext* globalCtx) {
BgHakaSgami* this = THIS;
if (this->unk_151 != 0) {
Gfx_DrawDListXlu(globalCtx, D_0600BF20);
Gfx_DrawDListXlu(globalCtx, object_haka_objects_DL_00BF20);
} else if (this->actor.params == SCYTHE_TRAP_SHADOW_TEMPLE) {
Gfx_DrawDListOpa(globalCtx, D_0600BF20);
Gfx_DrawDListOpa(globalCtx, object_haka_objects_DL_00BF20);
} else {
Gfx_DrawDListOpa(globalCtx, D_060021F0);
Gfx_DrawDListOpa(globalCtx, object_ice_objects_DL_0021F0);
}
}

View File

@ -5,6 +5,7 @@
*/
#include "z_bg_haka_ship.h"
#include "objects/object_haka_objects/object_haka_objects.h"
#define FLAGS 0x00000030
@ -22,12 +23,6 @@ void BgHakaShip_SetupCrash(BgHakaShip* this, GlobalContext* globalCtx);
void BgHakaShip_CrashShake(BgHakaShip* this, GlobalContext* globalCtx);
void BgHakaShip_CrashFall(BgHakaShip* this, GlobalContext* globalCtx);
extern Gfx D_06005A70[];
extern Gfx D_0600D330[];
extern CollisionHeader D_0600E408;
extern Gfx D_0600E910[];
extern CollisionHeader D_0600ED7C;
const ActorInit Bg_Haka_Ship_InitVars = {
ACTOR_BG_HAKA_SHIP,
ACTORCAT_BG,
@ -55,11 +50,11 @@ void BgHakaShip_Init(Actor* thisx, GlobalContext* globalCtx) {
this->dyna.actor.params &= 0xFF;
if (this->dyna.actor.params == 0) {
CollisionHeader_GetVirtual(&D_0600E408, &colHeader);
CollisionHeader_GetVirtual(&object_haka_objects_Col_00E408, &colHeader);
this->counter = 8;
this->actionFunc = BgHakaShip_WaitForSong;
} else {
CollisionHeader_GetVirtual(&D_0600ED7C, &colHeader);
CollisionHeader_GetVirtual(&object_haka_objects_Col_00ED7C, &colHeader);
this->actionFunc = BgHakaShip_ChildUpdatePosition;
}
this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader);
@ -209,22 +204,22 @@ void BgHakaShip_Draw(Actor* thisx, GlobalContext* globalCtx) {
if (this->dyna.actor.params == 0) {
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_haka_ship.c", 534),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, D_0600D330);
gSPDisplayList(POLY_OPA_DISP++, object_haka_objects_DL_00D330);
angleTemp = this->yOffset * (M_PI / 0x8000);
Matrix_Translate(-3670.0f, 620.0f, 1150.0f, MTXMODE_APPLY);
Matrix_RotateZ(angleTemp, MTXMODE_APPLY);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_haka_ship.c", 547),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, D_06005A70);
gSPDisplayList(POLY_OPA_DISP++, object_haka_objects_DL_005A70);
Matrix_Translate(0.0f, 0.0f, -2300.0f, MTXMODE_APPLY);
Matrix_RotateZ(-(2.0f * angleTemp), MTXMODE_APPLY);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_haka_ship.c", 556),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, D_06005A70);
gSPDisplayList(POLY_OPA_DISP++, object_haka_objects_DL_005A70);
} else {
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_haka_ship.c", 562),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, D_0600E910);
gSPDisplayList(POLY_OPA_DISP++, object_haka_objects_DL_00E910);
}
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_haka_ship.c", 568);
if (this->actionFunc == BgHakaShip_CutsceneStationary || this->actionFunc == BgHakaShip_Move) {

View File

@ -5,6 +5,7 @@
*/
#include "z_bg_haka_trap.h"
#include "objects/object_haka_objects/object_haka_objects.h"
#define FLAGS 0x00000000
@ -106,10 +107,6 @@ static InitChainEntry sInitChain[] = {
ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP),
};
extern CollisionHeader D_060081D0;
extern CollisionHeader D_06008D10;
extern CollisionHeader D_06009CD0;
void BgHakaTrap_Init(Actor* thisx, GlobalContext* globalCtx) {
static UNK_TYPE D_80881014 = 0;
BgHakaTrap* this = THIS;
@ -139,7 +136,7 @@ void BgHakaTrap_Init(Actor* thisx, GlobalContext* globalCtx) {
thisx->flags |= 0x10;
if (thisx->params == HAKA_TRAP_SPIKED_BOX) {
CollisionHeader_GetVirtual(&D_06009CD0, &colHeader);
CollisionHeader_GetVirtual(&object_haka_objects_Col_009CD0, &colHeader);
this->timer = 30;
if (D_80881014 != 0) {
@ -158,11 +155,11 @@ void BgHakaTrap_Init(Actor* thisx, GlobalContext* globalCtx) {
this->colliderCylinder.dim.height = 40;
} else {
if (thisx->params == HAKA_TRAP_SPIKED_WALL) {
CollisionHeader_GetVirtual(&D_060081D0, &colHeader);
CollisionHeader_GetVirtual(&object_haka_objects_Col_0081D0, &colHeader);
thisx->home.pos.x -= 200.0f;
} else {
thisx->home.pos.x += 200.0f;
CollisionHeader_GetVirtual(&D_06008D10, &colHeader);
CollisionHeader_GetVirtual(&object_haka_objects_Col_008D10, &colHeader);
}
Collider_InitTris(globalCtx, &this->colliderSpikes);

View File

@ -6,6 +6,7 @@
#include "z_bg_haka_tubo.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#include "objects/object_haka_objects/object_haka_objects.h"
#define FLAGS 0x00000010
@ -77,9 +78,6 @@ static InitChainEntry sInitChain[] = {
ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP),
};
extern CollisionHeader D_060108B8;
extern Gfx D_0600FE40[];
void BgHakaTubo_Init(Actor* thisx, GlobalContext* globalCtx) {
BgHakaTubo* this = THIS;
s32 pad;
@ -87,7 +85,7 @@ void BgHakaTubo_Init(Actor* thisx, GlobalContext* globalCtx) {
Actor_ProcessInitChain(&this->dyna.actor, sInitChain);
DynaPolyActor_Init(&this->dyna, DPM_UNK3);
CollisionHeader_GetVirtual(&D_060108B8, &colHeader);
CollisionHeader_GetVirtual(&object_haka_objects_Col_0108B8, &colHeader);
this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader);
Collider_InitCylinder(globalCtx, &this->potCollider);
Collider_SetCylinder(globalCtx, &this->potCollider, &this->dyna.actor, &sPotColliderInit);
@ -248,6 +246,6 @@ void BgHakaTubo_DrawFlameCircle(BgHakaTubo* this, GlobalContext* globalCtx) {
void BgHakaTubo_Draw(Actor* thisx, GlobalContext* globalCtx) {
BgHakaTubo* this = THIS;
Gfx_DrawDListOpa(globalCtx, D_0600FE40);
Gfx_DrawDListOpa(globalCtx, object_haka_objects_DL_00FE40);
BgHakaTubo_DrawFlameCircle(this, globalCtx);
}

View File

@ -6,6 +6,7 @@
#include "z_bg_haka_zou.h"
#include "objects/object_hakach_objects/object_hakach_objects.h"
#include "objects/object_haka_objects/object_haka_objects.h"
#define FLAGS 0x00000010
@ -72,9 +73,6 @@ static InitChainEntry sInitChain[] = {
ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP),
};
extern CollisionHeader D_06005E30;
extern CollisionHeader D_06006F70;
void BgHakaZou_Init(Actor* thisx, GlobalContext* globalCtx) {
s32 pad;
BgHakaZou* this = THIS;
@ -174,7 +172,7 @@ void BgHakaZou_Wait(BgHakaZou* this, GlobalContext* globalCtx) {
colHeader = NULL;
if (this->dyna.actor.params == STA_GIANT_BIRD_STATUE) {
CollisionHeader_GetVirtual(&D_06006F70, &colHeader);
CollisionHeader_GetVirtual(&object_haka_objects_Col_006F70, &colHeader);
this->collider.dim.radius = 80;
this->collider.dim.height = 100;
this->collider.dim.yShift = -30;
@ -182,7 +180,7 @@ void BgHakaZou_Wait(BgHakaZou* this, GlobalContext* globalCtx) {
this->collider.dim.pos.z += 56;
this->dyna.actor.uncullZoneScale = 1500.0f;
} else if (this->dyna.actor.params == STA_BOMBABLE_SKULL_WALL) {
CollisionHeader_GetVirtual(&D_06005E30, &colHeader);
CollisionHeader_GetVirtual(&object_haka_objects_Col_005E30, &colHeader);
this->collider.dim.yShift = -50;
} else {
CollisionHeader_GetVirtual(&gBotwBombSpotCol, &colHeader);

View File

@ -5,6 +5,7 @@
*/
#include "z_bg_ice_objects.h"
#include "objects/object_ice_objects/object_ice_objects.h"
#define FLAGS 0x00000000
@ -20,9 +21,6 @@ void BgIceObjects_Slide(BgIceObjects* this, GlobalContext* globalCtx);
void BgIceObjects_Reset(BgIceObjects* this, GlobalContext* globalCtx);
void BgIceObjects_Stuck(BgIceObjects* this, GlobalContext* globalCtx);
extern Gfx D_06000190[];
extern CollisionHeader D_060003F0;
static Color_RGBA8 sWhite = { 250, 250, 250, 255 };
static Color_RGBA8 sGray = { 180, 180, 180, 255 };
static Vec3f sZeroVec = { 0.0f, 0.0f, 0.0f };
@ -50,7 +48,7 @@ void BgIceObjects_Init(Actor* thisx, GlobalContext* globalCtx) {
Actor_ProcessInitChain(&this->dyna.actor, sInitChain);
DynaPolyActor_Init(&this->dyna, DPM_UNK);
CollisionHeader_GetVirtual(&D_060003F0, &colHeader);
CollisionHeader_GetVirtual(&object_ice_objects_Col_0003F0, &colHeader);
Math_Vec3f_Copy(&this->targetPos, &this->dyna.actor.home.pos);
this->actionFunc = BgIceObjects_Idle;
this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader);
@ -237,5 +235,5 @@ void BgIceObjects_Draw(Actor* thisx, GlobalContext* globalCtx) {
s32 pad;
BgIceObjects* this = THIS;
Gfx_DrawDListOpa(globalCtx, D_06000190);
Gfx_DrawDListOpa(globalCtx, object_ice_objects_DL_000190);
}

View File

@ -1,4 +1,5 @@
#include "z_bg_ice_shelter.h"
#include "objects/object_ice_objects/object_ice_objects.h"
#define FLAGS 0x00000000
@ -15,12 +16,6 @@ void func_808911BC(BgIceShelter* this);
void func_8089107C(BgIceShelter* this, GlobalContext* globalCtx);
void func_808911D4(BgIceShelter* this, GlobalContext* globalCtx);
extern Gfx D_060006F0[];
extern Gfx D_060012A0[];
extern CollisionHeader D_06001C1C;
extern Gfx D_06002640[];
extern CollisionHeader D_06002920;
const ActorInit Bg_Ice_Shelter_InitVars = {
ACTOR_BG_ICE_SHELTER,
ACTORCAT_BG,
@ -158,10 +153,10 @@ void BgIceShelter_Init(Actor* thisx, GlobalContext* globalCtx) {
switch (type) {
case 2:
func_80890874(this, globalCtx, &D_06001C1C, 0);
func_80890874(this, globalCtx, &object_ice_objects_Col_001C1C, 0);
break;
case 3:
func_80890874(this, globalCtx, &D_06002920, 0);
func_80890874(this, globalCtx, &object_ice_objects_Col_002920, 0);
break;
}
@ -421,7 +416,7 @@ void BgIceShelter_Draw(Actor* thisx, GlobalContext* globalCtx2) {
-globalCtx->gameplayFrames & 0x7F, 0x20, 0x20, 1,
-globalCtx->gameplayFrames & 0x7F, globalCtx->gameplayFrames & 0x7F, 0x20,
0x20));
gSPDisplayList(POLY_XLU_DISP++, D_060006F0);
gSPDisplayList(POLY_XLU_DISP++, object_ice_objects_DL_0006F0);
break;
case 2:
@ -433,11 +428,11 @@ void BgIceShelter_Draw(Actor* thisx, GlobalContext* globalCtx2) {
globalCtx->gameplayFrames & 0xFF, 0x40, 0x40, 1,
globalCtx->gameplayFrames & 0xFF, globalCtx->gameplayFrames & 0xFF, 0x40,
0x40));
gSPDisplayList(POLY_XLU_DISP++, D_060012A0);
gSPDisplayList(POLY_XLU_DISP++, object_ice_objects_DL_0012A0);
break;
case 3:
gSPDisplayList(POLY_XLU_DISP++, D_06002640);
gSPDisplayList(POLY_XLU_DISP++, object_ice_objects_DL_002640);
break;
}

View File

@ -5,6 +5,7 @@
*/
#include "z_bg_ice_shutter.h"
#include "objects/object_ice_objects/object_ice_objects.h"
#define FLAGS 0x00000010
@ -31,9 +32,6 @@ const ActorInit Bg_Ice_Shutter_InitVars = {
(ActorFunc)BgIceShutter_Draw,
};
extern CollisionHeader D_06002854;
extern Gfx D_06002740[];
static InitChainEntry sInitChain[] = {
ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP),
};
@ -60,7 +58,7 @@ void BgIceShutter_Init(Actor* thisx, GlobalContext* globalCtx) {
DynaPolyActor_Init(&this->dyna, DPM_UNK);
sp28 = this->dyna.actor.params & 0xFF;
this->dyna.actor.params = (this->dyna.actor.params >> 8) & 0xFF;
CollisionHeader_GetVirtual(&D_06002854, &colHeader);
CollisionHeader_GetVirtual(&object_ice_objects_Col_002854, &colHeader);
this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader);
if (sp28 == 2) {
this->dyna.actor.shape.rot.x = -0x4000;
@ -133,5 +131,5 @@ void BgIceShutter_Update(Actor* thisx, GlobalContext* globalCtx) {
}
void BgIceShutter_Draw(Actor* thisx, GlobalContext* globalCtx) {
Gfx_DrawDListOpa(globalCtx, D_06002740);
Gfx_DrawDListOpa(globalCtx, object_ice_objects_DL_002740);
}

View File

@ -5,6 +5,7 @@
*/
#include "z_bg_ice_turara.h"
#include "objects/object_ice_objects/object_ice_objects.h"
#define FLAGS 0x00000000
@ -41,9 +42,6 @@ static ColliderCylinderInit sCylinderInit = {
{ 13, 120, 0, { 0, 0, 0 } },
};
extern Gfx D_060023D0[];
extern CollisionHeader D_06002594;
const ActorInit Bg_Ice_Turara_InitVars = {
ACTOR_BG_ICE_TURARA,
ACTORCAT_PROP,
@ -70,7 +68,7 @@ void BgIceTurara_Init(Actor* thisx, GlobalContext* globalCtx) {
Actor_ProcessInitChain(&this->dyna.actor, sInitChain);
DynaPolyActor_Init(&this->dyna, DPM_UNK);
CollisionHeader_GetVirtual(&D_06002594, &colHeader);
CollisionHeader_GetVirtual(&object_ice_objects_Col_002594, &colHeader);
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinder(globalCtx, &this->collider, &this->dyna.actor, &sCylinderInit);
Collider_UpdateCylinder(&this->dyna.actor, &this->collider);
@ -201,5 +199,5 @@ void BgIceTurara_Update(Actor* thisx, GlobalContext* globalCtx) {
}
void BgIceTurara_Draw(Actor* thisx, GlobalContext* globalCtx) {
Gfx_DrawDListOpa(globalCtx, D_060023D0);
Gfx_DrawDListOpa(globalCtx, object_ice_objects_DL_0023D0);
}

View File

@ -6,6 +6,7 @@
#include "z_bg_jya_haheniron.h"
#include "overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.h"
#include "objects/object_jya_iron/object_jya_iron.h"
#define FLAGS 0x00000010
@ -76,8 +77,6 @@ static Vec3f D_808987A0[] = { 0.0f, 14.0f, 0.0f };
static Vec3f D_808987AC[] = { 0.0f, 8.0f, 0.0f };
extern Gfx D_06000880[];
void BgJyaHaheniron_ColliderInit(BgJyaHaheniron* this, GlobalContext* globalCtx) {
s32 pad;
@ -109,7 +108,7 @@ void BgJyaHaheniron_SpawnFragments(GlobalContext* globalCtx, Vec3f* vec1, Vec3f*
}
EffectSsKakera_Spawn(globalCtx, vec1, &vel, vec1, -350, arg5, 40, 4, 0, sKakeraScales[i], 0, 20, 40,
KAKERA_COLOR_NONE, OBJECT_JYA_IRON, D_06000880);
KAKERA_COLOR_NONE, OBJECT_JYA_IRON, gObjectJyaIronDL_000880);
angle += 0x3333;
}
pos.x = vec1->x + (vec2->x * 5.0f);

View File

@ -6,6 +6,12 @@
#include "z_bg_mori_hineri.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#include "objects/object_box/object_box.h"
#include "objects/object_mori_hineri1/object_mori_hineri1.h"
#include "objects/object_mori_hineri1a/object_mori_hineri1a.h"
#include "objects/object_mori_hineri2/object_mori_hineri2.h"
#include "objects/object_mori_hineri2a/object_mori_hineri2a.h"
#include "objects/object_mori_tex/object_mori_tex.h"
#define FLAGS 0x00000030
@ -48,13 +54,6 @@ static Gfx* sDLists[] = {
0x06002B70,
};
extern CollisionHeader D_060054B8;
extern CollisionHeader D_06003490;
extern CollisionHeader D_060043D0;
extern CollisionHeader D_06006078;
extern Gfx D_06000AE8[];
extern Gfx D_06001678[];
void BgMoriHineri_Init(Actor* thisx, GlobalContext* globalCtx) {
BgMoriHineri* this = THIS;
s8 moriHineriObjIdx;
@ -142,16 +141,16 @@ void func_808A39FC(BgMoriHineri* this, GlobalContext* globalCtx) {
this->dyna.actor.draw = BgMoriHineri_DrawHallAndRoom;
if (this->dyna.actor.params == 0) {
this->actionFunc = func_808A3C8C;
CollisionHeader_GetVirtual(&D_060054B8, &colHeader);
CollisionHeader_GetVirtual(&object_mori_hineri1_Col_0054B8, &colHeader);
} else if (this->dyna.actor.params == 1) {
this->actionFunc = BgMoriHineri_SpawnBossKeyChest;
CollisionHeader_GetVirtual(&D_06003490, &colHeader);
CollisionHeader_GetVirtual(&object_mori_hineri1a_Col_003490, &colHeader);
} else if (this->dyna.actor.params == 2) {
this->actionFunc = BgMoriHineri_DoNothing;
CollisionHeader_GetVirtual(&D_060043D0, &colHeader);
CollisionHeader_GetVirtual(&object_mori_hineri2_Col_0043D0, &colHeader);
} else {
this->actionFunc = func_808A3C8C;
CollisionHeader_GetVirtual(&D_06006078, &colHeader);
CollisionHeader_GetVirtual(&object_mori_hineri2a_Col_006078, &colHeader);
}
this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader);
}
@ -264,7 +263,7 @@ void BgMoriHineri_DrawHallAndRoom(Actor* thisx, GlobalContext* globalCtx) {
Matrix_Scale(0.01f, 0.01f, 0.01f, MTXMODE_APPLY);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_mori_hineri.c", 689),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, D_06000AE8);
gSPDisplayList(POLY_OPA_DISP++, gTreasureChestBossKeyChestFrontDL);
Matrix_Put(&mtx);
Matrix_Translate(167.0f, -218.0f, -453.0f, MTXMODE_APPLY);
if (Flags_GetTreasure(globalCtx, 0xE)) {
@ -275,7 +274,7 @@ void BgMoriHineri_DrawHallAndRoom(Actor* thisx, GlobalContext* globalCtx) {
Matrix_Scale(0.01f, 0.01f, 0.01f, MTXMODE_APPLY);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_mori_hineri.c", 703),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, D_06001678);
gSPDisplayList(POLY_OPA_DISP++, gTreasureChestBossKeyChestSideAndTopDL);
}
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_mori_hineri.c", 709);

View File

@ -6,6 +6,7 @@
#include "z_bg_po_syokudai.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#include "objects/object_syokudai/object_syokudai.h"
#define FLAGS 0x00000000
@ -75,8 +76,6 @@ static InitChainEntry sInitChain[] = {
ICHAIN_VEC3F_DIV1000(scale, 1000, ICHAIN_STOP),
};
extern Gfx D_060003A0[];
void BgPoSyokudai_Init(Actor* thisx, GlobalContext* globalCtx) {
BgPoSyokudai* this = THIS;
s32 pad;
@ -157,7 +156,7 @@ void BgPoSyokudai_Draw(Actor* thisx, GlobalContext* globalCtx) {
func_80093D18(globalCtx->state.gfxCtx);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_po_syokudai.c", 319),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, D_060003A0);
gSPDisplayList(POLY_OPA_DISP++, gGoldenTorchDL);
if (Flags_GetSwitch(globalCtx, this->actor.params)) {
Color_RGBA8* primColor = &sPrimColors[this->flameColor];

View File

@ -6,6 +6,7 @@
#include "z_bg_spot01_objects2.h"
#include "objects/object_spot01_matoya/object_spot01_matoya.h"
#include "objects/object_spot01_matoyab/object_spot01_matoyab.h"
#define FLAGS 0x00000010
@ -40,8 +41,6 @@ static InitChainEntry sInitChain[] = {
static Gfx* D_808AC510[] = { 0x06001EB0, 0x06002780, 0x06003078, 0x06001228, 0x06001528 };
extern CollisionHeader D_06001C58;
void BgSpot01Objects2_Init(Actor* thisx, GlobalContext* globalCtx) {
BgSpot01Objects2* this = THIS;
@ -105,7 +104,7 @@ void func_808AC2BC(BgSpot01Objects2* this, GlobalContext* globalCtx) {
this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, thisx, colHeader);
break;
case 3: // Shooting Gallery, spawns Carpenter Sabooro during the day
CollisionHeader_GetVirtual(&D_06001C58, &colHeader);
CollisionHeader_GetVirtual(&object_spot01_matoyab_col, &colHeader);
this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, thisx, colHeader);
if (IS_DAY) {
func_808AC22C(globalCtx->setupPathList, &position, ((s32)thisx->params >> 8) & 0xFF, 0);

View File

@ -5,6 +5,7 @@
*/
#include "z_bg_spot02_objects.h"
#include "objects/object_spot02_objects/object_spot02_objects.h"
#define FLAGS 0x00000030
@ -25,13 +26,6 @@ void func_808ACB58(BgSpot02Objects* this, GlobalContext* globalCtx);
void func_808ACC34(BgSpot02Objects* this, GlobalContext* globalCtx);
void func_808AD3D4(BgSpot02Objects* this, GlobalContext* globalCtx);
extern CollisionHeader D_060128D8;
extern CollisionHeader D_06012BA4;
extern CollisionHeader D_060133EC;
extern Gfx D_060013F0[];
extern Gfx D_060126F0[];
extern Gfx D_06012D30[];
static void* D_808AD850[] = {
0x060096B0, 0x0600A2B0, 0x0600AEB0, 0x0600BAB0, 0x0600C6B0, 0x0600D2B0,
0x0600DEB0, 0x0600EAB0, 0x0600F6B0, 0x060102B0, 0x06010EB0, 0x06011AB0,
@ -76,10 +70,10 @@ void BgSpot02Objects_Init(Actor* thisx, GlobalContext* globalCtx) {
this->actionFunc = func_808ACAFC;
}
CollisionHeader_GetVirtual(&D_06012BA4, &colHeader);
CollisionHeader_GetVirtual(&object_spot02_objects_Col_012BA4, &colHeader);
} else if (thisx->params == 1) {
this->actionFunc = func_808AC8FC;
CollisionHeader_GetVirtual(&D_060128D8, &colHeader);
CollisionHeader_GetVirtual(&object_spot02_objects_Col_0128D8, &colHeader);
thisx->flags |= 0x400000;
} else {
if (globalCtx->sceneNum == SCENE_SPOT02) {
@ -88,7 +82,7 @@ void BgSpot02Objects_Init(Actor* thisx, GlobalContext* globalCtx) {
this->actionFunc = func_808AC8FC;
}
CollisionHeader_GetVirtual(&D_060133EC, &colHeader);
CollisionHeader_GetVirtual(&object_spot02_objects_Col_0133EC, &colHeader);
}
this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, thisx, colHeader);
@ -158,7 +152,7 @@ void func_808ACA08(BgSpot02Objects* this, GlobalContext* globalCtx) {
if (this->timer == 20) {
this->dyna.actor.draw = NULL;
EffectSsHahen_SpawnBurst(globalCtx, &this->dyna.actor.world.pos, 30.0f, 0, 25, 5, 40, OBJECT_SPOT02_OBJECTS, 20,
D_06012D30);
object_spot02_objects_DL_012D30);
} else if (this->timer == 0) {
Actor_Kill(&this->dyna.actor);
}
@ -262,7 +256,7 @@ void func_808ACCB8(Actor* thisx, GlobalContext* globalCtx) {
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPSegment(POLY_XLU_DISP++, 0x08, SEGMENTED_TO_VIRTUAL(D_808AD850[this->unk_16A]));
gDPPipeSync(POLY_XLU_DISP++);
gSPDisplayList(POLY_XLU_DISP++, D_060126F0);
gSPDisplayList(POLY_XLU_DISP++, object_spot02_objects_DL_0126F0);
gDPPipeSync(POLY_XLU_DISP++);
}
@ -325,7 +319,7 @@ void func_808AD450(Actor* thisx, GlobalContext* globalCtx) {
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, 2 * this->timer, -3 * this->timer, 32, 64, 1,
4 * this->timer, -6 * this->timer, 32, 64));
gDPPipeSync(POLY_XLU_DISP++);
gSPDisplayList(POLY_XLU_DISP++, D_060013F0);
gSPDisplayList(POLY_XLU_DISP++, object_spot02_objects_DL_0013F0);
gDPPipeSync(POLY_XLU_DISP++);
}
}

View File

@ -5,6 +5,7 @@
*/
#include "z_bg_spot03_taki.h"
#include "objects/object_spot03_object/object_spot03_object.h"
#define FLAGS 0x00000030
@ -33,19 +34,10 @@ static InitChainEntry sInitChain[] = {
ICHAIN_VEC3F_DIV1000(scale, 100, ICHAIN_STOP),
};
extern CollisionHeader D_06000C98;
// These are identical vertex data for the waterfall.
extern Vtx* D_06000800[]; // Vertex buffer 0
extern Vtx* D_06000990[]; // Vertex buffer 1
extern Gfx* D_06000B20[];
extern Gfx* D_06000BC0[];
extern Gfx* D_06001580[];
void BgSpot03Taki_ApplyOpeningAlpha(BgSpot03Taki* this, s32 bufferIndex) {
s32 i;
Vtx* vtx = (bufferIndex == 0) ? SEGMENTED_TO_VIRTUAL(D_06000800) : SEGMENTED_TO_VIRTUAL(D_06000990);
Vtx* vtx = (bufferIndex == 0) ? SEGMENTED_TO_VIRTUAL(object_spot03_object_Vtx_000800)
: SEGMENTED_TO_VIRTUAL(object_spot03_object_Vtx_000990);
for (i = 0; i < 5; i++) {
vtx[i + 10].v.cn[3] = this->openingAlpha;
@ -59,7 +51,7 @@ void BgSpot03Taki_Init(Actor* thisx, GlobalContext* globalCtx) {
this->switchFlag = (this->dyna.actor.params & 0x3F);
DynaPolyActor_Init(&this->dyna, DPM_UNK);
CollisionHeader_GetVirtual(&D_06000C98, &colHeader);
CollisionHeader_GetVirtual(&object_spot03_object_Col_000C98, &colHeader);
this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader);
Actor_ProcessInitChain(&this->dyna.actor, sInitChain);
this->bufferIndex = 0;
@ -141,21 +133,21 @@ void BgSpot03Taki_Draw(Actor* thisx, GlobalContext* globalCtx) {
POLY_XLU_DISP++, 0x08,
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, 0, gameplayFrames * 5, 64, 64, 1, 0, gameplayFrames * 5, 64, 64));
gSPDisplayList(POLY_XLU_DISP++, D_06000B20);
gSPDisplayList(POLY_XLU_DISP++, object_spot03_object_DL_000B20);
if (this->bufferIndex == 0) {
gSPVertex(POLY_XLU_DISP++, D_06000800, 25, 0);
gSPVertex(POLY_XLU_DISP++, object_spot03_object_Vtx_000800, 25, 0);
} else {
gSPVertex(POLY_XLU_DISP++, D_06000990, 25, 0);
gSPVertex(POLY_XLU_DISP++, object_spot03_object_Vtx_000990, 25, 0);
}
gSPDisplayList(POLY_XLU_DISP++, D_06000BC0);
gSPDisplayList(POLY_XLU_DISP++, object_spot03_object_DL_000BC0);
gSPSegment(POLY_XLU_DISP++, 0x08,
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, gameplayFrames * 1, gameplayFrames * 3, 64, 64, 1,
-gameplayFrames, gameplayFrames * 3, 64, 64));
gSPDisplayList(POLY_XLU_DISP++, D_06001580);
gSPDisplayList(POLY_XLU_DISP++, object_spot03_object_DL_001580);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_spot03_taki.c", 358);

View File

@ -5,6 +5,7 @@
*/
#include "z_bg_spot05_soko.h"
#include "objects/object_spot05_objects/object_spot05_objects.h"
#define FLAGS 0x00000000
@ -18,9 +19,6 @@ void func_808AE5A8(BgSpot05Soko* this, GlobalContext* globalCtx);
void func_808AE5B4(BgSpot05Soko* this, GlobalContext* globalCtx);
void func_808AE630(BgSpot05Soko* this, GlobalContext* globalCtx);
extern CollisionHeader D_06000918;
extern CollisionHeader D_060012C0;
const ActorInit Bg_Spot05_Soko_InitVars = {
ACTOR_BG_SPOT05_SOKO,
ACTORCAT_PROP,
@ -38,8 +36,8 @@ static InitChainEntry sInitChain[] = {
};
static Gfx* sDLists[] = {
0x06000840,
0x06001190,
object_spot05_objects_DL_000840,
object_spot05_objects_DL_001190,
};
void BgSpot05Soko_Init(Actor* thisx, GlobalContext* globalCtx) {
@ -53,14 +51,14 @@ void BgSpot05Soko_Init(Actor* thisx, GlobalContext* globalCtx) {
thisx->params &= 0xFF;
DynaPolyActor_Init(&this->dyna, DPM_UNK);
if (thisx->params == 0) {
CollisionHeader_GetVirtual(&D_06000918, &colHeader);
CollisionHeader_GetVirtual(&object_spot05_objects_Col_000918, &colHeader);
if (LINK_IS_ADULT) {
Actor_Kill(thisx);
} else {
this->actionFunc = func_808AE5A8;
}
} else {
CollisionHeader_GetVirtual(&D_060012C0, &colHeader);
CollisionHeader_GetVirtual(&object_spot05_objects_Col_0012C0, &colHeader);
if (Flags_GetSwitch(globalCtx, this->switchFlag) != 0) {
Actor_Kill(thisx);
} else {

View File

@ -5,6 +5,7 @@
*/
#include "z_bg_spot07_taki.h"
#include "objects/object_spot07_object/object_spot07_object.h"
#define FLAGS 0x00000030
@ -17,15 +18,6 @@ void BgSpot07Taki_Draw(Actor* thisx, GlobalContext* globalCtx);
void BgSpot07Taki_DoNothing(BgSpot07Taki* this, GlobalContext* globalCtx);
extern Gfx D_06000460[];
extern Gfx D_06000BE0[];
extern Gfx D_06001CF0[];
extern Gfx D_06001F68[];
extern CollisionHeader D_06002590;
extern Gfx D_06003210[];
extern Gfx D_060032D8[];
extern CollisionHeader D_060038FC;
const ActorInit Bg_Spot07_Taki_InitVars = {
ACTOR_BG_SPOT07_TAKI,
ACTORCAT_BG,
@ -51,9 +43,9 @@ void BgSpot07Taki_Init(Actor* thisx, GlobalContext* globalCtx) {
Actor_ProcessInitChain(&this->dyna.actor, sInitChain);
if (LINK_IS_ADULT) {
if (this->dyna.actor.params == 0) {
CollisionHeader_GetVirtual(&D_06002590, &colHeader);
CollisionHeader_GetVirtual(&object_spot07_object_Col_002590, &colHeader);
} else {
CollisionHeader_GetVirtual(&D_060038FC, &colHeader);
CollisionHeader_GetVirtual(&object_spot07_object_Col_0038FC, &colHeader);
}
this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader);
}
@ -86,9 +78,9 @@ void BgSpot07Taki_Draw(Actor* thisx, GlobalContext* globalCtx) {
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_spot07_taki.c", 177),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
if (this->dyna.actor.params == 0) {
gSPDisplayList(POLY_OPA_DISP++, D_06001CF0);
gSPDisplayList(POLY_OPA_DISP++, object_spot07_object_DL_001CF0);
} else {
gSPDisplayList(POLY_OPA_DISP++, D_06003210);
gSPDisplayList(POLY_OPA_DISP++, object_spot07_object_DL_003210);
}
}
func_80093D84(globalCtx->state.gfxCtx);
@ -109,7 +101,7 @@ void BgSpot07Taki_Draw(Actor* thisx, GlobalContext* globalCtx) {
gSPSegment(POLY_XLU_DISP++, 0x0A,
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, frames * 0, ((frames * 3) & 0x1FF), 32, 128, 1,
frames * 0, ((frames * 3) & 0x1FF), 32, 128));
gSPDisplayList(POLY_XLU_DISP++, D_06000460);
gSPDisplayList(POLY_XLU_DISP++, object_spot07_object_DL_000460);
} else {
gSPSegment(POLY_XLU_DISP++, 0x09,
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, frames * 0, ((frames * -1) & 0x7F), 32, 32, 1,
@ -117,12 +109,12 @@ void BgSpot07Taki_Draw(Actor* thisx, GlobalContext* globalCtx) {
gSPSegment(POLY_XLU_DISP++, 0x0A,
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, frames * 0, ((frames * 3) & 0x1FF), 32, 128, 1,
frames * 0, ((frames * 3) & 0x1FF), 32, 128));
gSPDisplayList(POLY_XLU_DISP++, &D_06000BE0);
gSPDisplayList(POLY_XLU_DISP++, object_spot07_object_DL_000BE0);
}
} else if (this->dyna.actor.params == 0) {
gSPDisplayList(POLY_XLU_DISP++, D_06001F68);
gSPDisplayList(POLY_XLU_DISP++, object_spot07_object_DL_001F68);
} else {
gSPDisplayList(POLY_XLU_DISP++, D_060032D8);
gSPDisplayList(POLY_XLU_DISP++, object_spot07_object_DL_0032D8);
}
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_spot07_taki.c", 272);
}

View File

@ -1,5 +1,6 @@
#include "z_bg_spot16_bombstone.h"
#include "objects/object_spot16_obj/object_spot16_obj.h"
#include "objects/object_bombiwa/object_bombiwa.h"
#include "overlays/actors/ovl_En_Bombf/z_en_bombf.h"
#include "overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.h"
@ -21,9 +22,6 @@ void func_808B5934(BgSpot16Bombstone* this);
void func_808B5AF0(BgSpot16Bombstone* this);
void func_808B5A78(BgSpot16Bombstone* this);
extern Gfx D_06000C20[];
extern Gfx D_060009E0[];
static EnBombf* sPlayerBomb = NULL;
static s16 sTimer = 0;
@ -221,7 +219,7 @@ s32 func_808B4E58(BgSpot16Bombstone* this, GlobalContext* globalctx) {
actor->shape.rot.y = D_808B5DD8[actor->params][8];
actor->shape.rot.z = D_808B5DD8[actor->params][9];
this->dList = D_060009E0;
this->dList = object_bombiwa_DL_0009E0;
this->bombiwaBankIndex = Object_GetIndex(&globalctx->objectCtx, OBJECT_BOMBIWA);
if (this->bombiwaBankIndex < 0) {
@ -348,7 +346,7 @@ void BgSpot16Bombstone_SpawnFragments(BgSpot16Bombstone* this, GlobalContext* gl
scale = D_808B6074[index] * this->actor.scale.x * 3;
EffectSsKakera_Spawn(globalCtx, &pos, &velocity, &this->actor.world.pos, -420, 0x31, 0xF, 0xF, 0, scale, 2,
0x40, 160, KAKERA_COLOR_NONE, OBJECT_BOMBIWA, D_060009E0);
0x40, 160, KAKERA_COLOR_NONE, OBJECT_BOMBIWA, object_bombiwa_DL_0009E0);
index += 1;
} while (index != ARRAY_COUNT(D_808B6074));
}

View File

@ -5,6 +5,7 @@
*/
#include "z_bg_toki_hikari.h"
#include "objects/object_toki_objects/object_toki_objects.h"
#define FLAGS 0x00000020
@ -22,13 +23,6 @@ void func_808BA22C(BgTokiHikari* this, GlobalContext* globalCtx);
void func_808BA274(BgTokiHikari* this, GlobalContext* globalCtx);
void func_808BA2CC(BgTokiHikari* this, GlobalContext* globalCtx);
extern Gfx D_06000880[];
extern Gfx D_060009C0[];
extern Gfx D_06000A10[];
extern Gfx D_06007E20[];
extern Gfx D_06007EE0[];
extern Gfx D_06008190[];
const ActorInit Bg_Toki_Hikari_InitVars = {
ACTOR_BG_TOKI_HIKARI,
ACTORCAT_BG,
@ -97,9 +91,9 @@ void func_808BA018(BgTokiHikari* this, GlobalContext* globalCtx) {
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
if (LINK_IS_ADULT) {
gSPDisplayList(POLY_OPA_DISP++, D_06008190);
gSPDisplayList(POLY_OPA_DISP++, object_toki_objects_DL_008190);
} else {
gSPDisplayList(POLY_OPA_DISP++, D_06007E20);
gSPDisplayList(POLY_OPA_DISP++, object_toki_objects_DL_007E20);
func_80093D84(globalCtx->state.gfxCtx);
gSPSegment(POLY_XLU_DISP++, 8,
Gfx_TexScroll(globalCtx->state.gfxCtx, 0, globalCtx->gameplayFrames % 128, 64, 32));
@ -110,7 +104,7 @@ void func_808BA018(BgTokiHikari* this, GlobalContext* globalCtx) {
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_toki_hikari.c", 278),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06007EE0);
gSPDisplayList(POLY_XLU_DISP++, object_toki_objects_DL_007EE0);
}
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_toki_hikari.c", 284);
}
@ -161,7 +155,7 @@ void func_808BA2CC(BgTokiHikari* this, GlobalContext* globalCtx) {
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, -2 * (globalCtx->gameplayFrames & 0x7F), 0, 0x20, 0x40, 1,
(globalCtx->gameplayFrames & 0x7F) * 4, 0, 0x20, 0x40));
gSPDisplayList(POLY_XLU_DISP++, D_06000880);
gSPDisplayList(POLY_XLU_DISP++, object_toki_objects_DL_000880);
Matrix_Pop();
Matrix_Push();
gDPPipeSync(POLY_XLU_DISP++);
@ -173,7 +167,7 @@ void func_808BA2CC(BgTokiHikari* this, GlobalContext* globalCtx) {
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_toki_hikari.c", 415),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_060009C0);
gSPDisplayList(POLY_XLU_DISP++, object_toki_objects_DL_0009C0);
Matrix_Pop();
Matrix_Push();
gDPPipeSync(POLY_XLU_DISP++);
@ -185,7 +179,7 @@ void func_808BA2CC(BgTokiHikari* this, GlobalContext* globalCtx) {
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_toki_hikari.c", 437),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06000A10);
gSPDisplayList(POLY_XLU_DISP++, &object_toki_objects_DL_0009C0[10]);
Matrix_Pop();
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_toki_hikari.c", 443);
}

View File

@ -5,6 +5,7 @@
*/
#include "z_bg_toki_swd.h"
#include "objects/object_toki_objects/object_toki_objects.h"
#define FLAGS 0x00000010
@ -19,8 +20,6 @@ void func_808BAF40(BgTokiSwd* this, GlobalContext* globalCtx);
void func_808BB0AC(BgTokiSwd* this, GlobalContext* globalCtx);
void func_808BB128(BgTokiSwd* this, GlobalContext* globalCtx);
extern Gfx D_06001BD0[];
extern CutsceneData D_808BB2F0[];
extern CutsceneData D_808BB7A0[];
extern CutsceneData D_808BBD90[];
@ -176,7 +175,7 @@ void BgTokiSwd_Draw(Actor* thisx, GlobalContext* globalCtx2) {
Gfx_TexScroll(globalCtx->state.gfxCtx, 0, -(globalCtx->gameplayFrames % 0x80), 32, 32));
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_bg_toki_swd.c", 742),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, D_06001BD0);
gSPDisplayList(POLY_OPA_DISP++, object_toki_objects_DL_001BD0);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_bg_toki_swd.c", 776);
}

View File

@ -1,4 +1,5 @@
#include "z_boss_dodongo.h"
#include "objects/object_kingdodongo/object_kingdodongo.h"
#include "scenes/dungeons/ddan_boss/ddan_boss_room_1.h"
#define FLAGS 0x00000035
@ -54,36 +55,6 @@ static InitChainEntry sInitChain[] = {
ICHAIN_F32(targetArrowOffset, 8200.0f, ICHAIN_STOP),
};
extern SkeletonHeader D_0601B310;
extern AnimationHeader D_0600F0D8;
extern AnimationHeader D_06008EEC;
extern u64 D_06017410[]; // Title card
extern AnimationHeader D_0601CAE0;
extern AnimationHeader D_06008EEC;
extern AnimationHeader D_060061D4;
extern AnimationHeader D_0600DF38;
extern AnimationHeader D_0600E848;
extern AnimationHeader D_06004E0C;
extern AnimationHeader D_060042A8;
extern AnimationHeader D_06009D10;
extern AnimationHeader D_0601D934;
extern AnimationHeader D_06002D0C;
extern AnimationHeader D_060042A8;
extern AnimationHeader D_06001074;
extern AnimationHeader D_06003CF8;
extern s16 D_06015890[];
extern s16 D_06017210[];
extern s16 D_06015D90[];
extern s16 D_06016390[];
extern s16 D_06016590[];
extern s16 D_06016790[];
extern s16 D_06015990[];
extern s16 D_06015F90[];
extern s16 D_06016990[];
extern s16 D_06016E10[];
extern Gfx D_06009D50[];
extern Gfx D_06009DD0[];
void func_808C1190(s16* arg0, u8* arg1, s16 arg2) {
if (arg2[arg1] != 0) {
arg0[arg2 / 2] = 0;
@ -123,16 +94,16 @@ void func_808C1278(s16* arg0, u8* arg1, s16 arg2) {
}
void func_808C12C4(u8* arg1, s16 arg2) {
func_808C1190(SEGMENTED_TO_VIRTUAL(D_06015890), arg1, arg2);
func_808C1200(SEGMENTED_TO_VIRTUAL(D_06017210), arg1, arg2);
func_808C11D0(SEGMENTED_TO_VIRTUAL(D_06015D90), arg1, arg2);
func_808C11D0(SEGMENTED_TO_VIRTUAL(D_06016390), arg1, arg2);
func_808C11D0(SEGMENTED_TO_VIRTUAL(D_06016590), arg1, arg2);
func_808C11D0(SEGMENTED_TO_VIRTUAL(D_06016790), arg1, arg2);
func_808C1230(SEGMENTED_TO_VIRTUAL(D_06015990), arg1, arg2);
func_808C1230(SEGMENTED_TO_VIRTUAL(D_06015F90), arg1, arg2);
func_808C1278(SEGMENTED_TO_VIRTUAL(D_06016990), arg1, arg2);
func_808C1278(SEGMENTED_TO_VIRTUAL(D_06016E10), arg1, arg2);
func_808C1190(SEGMENTED_TO_VIRTUAL(object_kingdodongo_Tex_015890), arg1, arg2);
func_808C1200(SEGMENTED_TO_VIRTUAL(object_kingdodongo_Tex_017210), arg1, arg2);
func_808C11D0(SEGMENTED_TO_VIRTUAL(object_kingdodongo_Tex_015D90), arg1, arg2);
func_808C11D0(SEGMENTED_TO_VIRTUAL(object_kingdodongo_Tex_016390), arg1, arg2);
func_808C11D0(SEGMENTED_TO_VIRTUAL(object_kingdodongo_Tex_016590), arg1, arg2);
func_808C11D0(SEGMENTED_TO_VIRTUAL(object_kingdodongo_Tex_016790), arg1, arg2);
func_808C1230(SEGMENTED_TO_VIRTUAL(object_kingdodongo_Tex_015990), arg1, arg2);
func_808C1230(SEGMENTED_TO_VIRTUAL(object_kingdodongo_Tex_015F90), arg1, arg2);
func_808C1278(SEGMENTED_TO_VIRTUAL(object_kingdodongo_Tex_016990), arg1, arg2);
func_808C1278(SEGMENTED_TO_VIRTUAL(object_kingdodongo_Tex_016E10), arg1, arg2);
}
void func_808C1554(void* arg0, void* floorTex, s32 arg2, f32 arg3) {
@ -217,8 +188,9 @@ void BossDodongo_Init(Actor* thisx, GlobalContext* globalCtx) {
Actor_ProcessInitChain(&this->actor, sInitChain);
ActorShape_Init(&this->actor.shape, 9200.0f, ActorShadow_DrawCircle, 250.0f);
Actor_SetScale(&this->actor, 0.01f);
SkelAnime_Init(globalCtx, &this->skelAnime, &D_0601B310, &D_0600F0D8, NULL, NULL, 0);
Animation_PlayLoop(&this->skelAnime, &D_0600F0D8);
SkelAnime_Init(globalCtx, &this->skelAnime, &object_kingdodongo_Skel_01B310, &object_kingdodongo_Anim_00F0D8, NULL,
NULL, 0);
Animation_PlayLoop(&this->skelAnime, &object_kingdodongo_Anim_00F0D8);
this->unk_1F8 = 1.0f;
BossDodongo_SetupIntroCutscene(this, globalCtx);
this->health = 12;
@ -257,9 +229,9 @@ void BossDodongo_Destroy(Actor* thisx, GlobalContext* globalCtx) {
}
void BossDodongo_SetupIntroCutscene(BossDodongo* this, GlobalContext* globalCtx) {
s16 frames = Animation_GetLastFrame(&D_0600F0D8);
s16 frames = Animation_GetLastFrame(&object_kingdodongo_Anim_00F0D8);
Animation_Change(&this->skelAnime, &D_0600F0D8, 1.0f, 0.0f, frames, ANIMMODE_LOOP, -10.0f);
Animation_Change(&this->skelAnime, &object_kingdodongo_Anim_00F0D8, 1.0f, 0.0f, frames, ANIMMODE_LOOP, -10.0f);
this->actionFunc = BossDodongo_IntroCutscene;
this->csState = 0;
this->unk_1BC = 1;
@ -373,8 +345,8 @@ void BossDodongo_IntroCutscene(BossDodongo* this, GlobalContext* globalCtx) {
this->unk_196 = 30;
this->unk_198 = 150;
this->unk_204 = 0.0f;
Animation_Change(&this->skelAnime, &D_06008EEC, 1.0f, 0.0f, Animation_GetLastFrame(&D_06008EEC),
ANIMMODE_ONCE, 0.0f);
Animation_Change(&this->skelAnime, &object_kingdodongo_Anim_008EEC, 1.0f, 0.0f,
Animation_GetLastFrame(&object_kingdodongo_Anim_008EEC), ANIMMODE_ONCE, 0.0f);
SkelAnime_Update(&this->skelAnime);
}
} else if (this->unk_198 == 0) {
@ -396,8 +368,8 @@ void BossDodongo_IntroCutscene(BossDodongo* this, GlobalContext* globalCtx) {
this->unk_196 = 0x1E;
this->unk_198 = 0x96;
this->unk_204 = 0.0f;
Animation_Change(&this->skelAnime, &D_06008EEC, 1.0f, 0.0f, Animation_GetLastFrame(&D_06008EEC),
ANIMMODE_ONCE, -5.0f);
Animation_Change(&this->skelAnime, &object_kingdodongo_Anim_008EEC, 1.0f, 0.0f,
Animation_GetLastFrame(&object_kingdodongo_Anim_008EEC), ANIMMODE_ONCE, -5.0f);
}
break;
case 4:
@ -432,8 +404,9 @@ void BossDodongo_IntroCutscene(BossDodongo* this, GlobalContext* globalCtx) {
if (this->unk_198 == 0x5A) {
if (!(gSaveContext.eventChkInf[7] & 2)) {
TitleCard_InitBossName(globalCtx, &globalCtx->actorCtx.titleCtx, SEGMENTED_TO_VIRTUAL(&D_06017410),
0xA0, 0xB4, 0x80, 0x28);
TitleCard_InitBossName(globalCtx, &globalCtx->actorCtx.titleCtx,
SEGMENTED_TO_VIRTUAL(&object_kingdodongo_Blob_017410), 0xA0, 0xB4, 0x80,
0x28);
}
Audio_QueueSeqCmd(0x6B);
}
@ -480,8 +453,8 @@ void BossDodongo_IntroCutscene(BossDodongo* this, GlobalContext* globalCtx) {
void BossDodongo_SetupDamaged(BossDodongo* this) {
if (this->actionFunc != BossDodongo_Damaged) {
Animation_Change(&this->skelAnime, &D_06001074, 1.0f, 0.0f, Animation_GetLastFrame(&D_06001074), ANIMMODE_ONCE,
-5.0f);
Animation_Change(&this->skelAnime, &object_kingdodongo_Anim_001074, 1.0f, 0.0f,
Animation_GetLastFrame(&object_kingdodongo_Anim_001074), ANIMMODE_ONCE, -5.0f);
this->actionFunc = BossDodongo_Damaged;
}
@ -489,8 +462,8 @@ void BossDodongo_SetupDamaged(BossDodongo* this) {
}
void BossDodongo_SetupExplode(BossDodongo* this) {
Animation_Change(&this->skelAnime, &D_0600E848, 1.0f, 0.0f, Animation_GetLastFrame(&D_0600E848), ANIMMODE_ONCE,
-5.0f);
Animation_Change(&this->skelAnime, &object_kingdodongo_Anim_00E848, 1.0f, 0.0f,
Animation_GetLastFrame(&object_kingdodongo_Anim_00E848), ANIMMODE_ONCE, -5.0f);
this->actionFunc = BossDodongo_Explode;
this->unk_1B0 = 10;
this->unk_1C0 = 2;
@ -500,8 +473,8 @@ void BossDodongo_SetupExplode(BossDodongo* this) {
}
void BossDodongo_SetupWalk(BossDodongo* this) {
Animation_Change(&this->skelAnime, &D_0601D934, 1.0f, 0.0f, Animation_GetLastFrame(&D_0601D934), ANIMMODE_ONCE,
-10.0f);
Animation_Change(&this->skelAnime, &object_kingdodongo_Anim_01D934, 1.0f, 0.0f,
Animation_GetLastFrame(&object_kingdodongo_Anim_01D934), ANIMMODE_ONCE, -10.0f);
this->unk_1AA = 0;
this->actionFunc = BossDodongo_Walk;
this->unk_1DA = 0;
@ -510,7 +483,7 @@ void BossDodongo_SetupWalk(BossDodongo* this) {
}
void BossDodongo_SetupRoll(BossDodongo* this) {
Animation_Change(&this->skelAnime, &D_0600DF38, 1.0f, 0.0f, 59.0f, ANIMMODE_ONCE, -5.0f);
Animation_Change(&this->skelAnime, &object_kingdodongo_Anim_00DF38, 1.0f, 0.0f, 59.0f, ANIMMODE_ONCE, -5.0f);
this->actionFunc = BossDodongo_Roll;
this->numWallCollisions = 0;
this->unk_1DA = 27;
@ -519,8 +492,8 @@ void BossDodongo_SetupRoll(BossDodongo* this) {
void BossDodongo_SetupBlowFire(BossDodongo* this) {
this->actor.speedXZ = 0.0f;
this->unk_1E4 = 0.0f;
Animation_Change(&this->skelAnime, &D_060061D4, 1.0f, 0.0f, Animation_GetLastFrame(&D_060061D4), ANIMMODE_ONCE,
0.0f);
Animation_Change(&this->skelAnime, &object_kingdodongo_Anim_0061D4, 1.0f, 0.0f,
Animation_GetLastFrame(&object_kingdodongo_Anim_0061D4), ANIMMODE_ONCE, 0.0f);
this->actionFunc = BossDodongo_BlowFire;
this->unk_1DA = 50;
this->unk_1AE = 0;
@ -528,8 +501,8 @@ void BossDodongo_SetupBlowFire(BossDodongo* this) {
void BossDodongo_SetupInhale(BossDodongo* this) {
this->actor.speedXZ = 0.0f;
Animation_Change(&this->skelAnime, &D_06008EEC, 1.0f, 0.0f, Animation_GetLastFrame(&D_06008EEC), ANIMMODE_ONCE,
-5.0f);
Animation_Change(&this->skelAnime, &object_kingdodongo_Anim_008EEC, 1.0f, 0.0f,
Animation_GetLastFrame(&object_kingdodongo_Anim_008EEC), ANIMMODE_ONCE, -5.0f);
this->actionFunc = BossDodongo_Inhale;
this->unk_1DA = 100;
this->unk_1AC = 0;
@ -541,7 +514,7 @@ void BossDodongo_Damaged(BossDodongo* this, GlobalContext* globalCtx) {
Math_SmoothStepToF(&this->unk_1F8, 1.0f, 0.5f, 0.02f, 0.001f);
Math_SmoothStepToF(&this->unk_208, 0.05f, 1.0f, 0.005f, 0.0f);
if (Animation_OnFrame(&this->skelAnime, Animation_GetLastFrame(&D_06001074))) {
if (Animation_OnFrame(&this->skelAnime, Animation_GetLastFrame(&object_kingdodongo_Anim_001074))) {
BossDodongo_SetupRoll(this);
}
}
@ -575,8 +548,8 @@ void BossDodongo_Explode(BossDodongo* this, GlobalContext* globalCtx) {
func_8002836C(globalCtx, &dustPos, &dustVel, &dustAcell, &dustPrimColor, &dustEnvColor, 500, 10, 10);
}
Animation_Change(&this->skelAnime, &D_06004E0C, 1.0f, 0.0f, Animation_GetLastFrame(&D_06004E0C), ANIMMODE_ONCE,
-5.0f);
Animation_Change(&this->skelAnime, &object_kingdodongo_Anim_004E0C, 1.0f, 0.0f,
Animation_GetLastFrame(&object_kingdodongo_Anim_004E0C), ANIMMODE_ONCE, -5.0f);
this->actionFunc = BossDodongo_LayDown;
Audio_PlayActorSound2(&this->actor, NA_SE_IT_BOMB_EXPLOSION);
Audio_PlayActorSound2(&this->actor, NA_SE_EN_DODO_K_DAMAGE);
@ -595,9 +568,9 @@ void BossDodongo_LayDown(BossDodongo* this, GlobalContext* globalCtx) {
Math_SmoothStepToF(&this->unk_1F8, 1.3f, 1.0f, 0.1f, 0.001f);
SkelAnime_Update(&this->skelAnime);
if (Animation_OnFrame(&this->skelAnime, Animation_GetLastFrame(&D_06004E0C))) {
Animation_Change(&this->skelAnime, &D_060042A8, 1.0f, 0.0f, Animation_GetLastFrame(&D_060042A8), ANIMMODE_LOOP,
-5.0f);
if (Animation_OnFrame(&this->skelAnime, Animation_GetLastFrame(&object_kingdodongo_Anim_004E0C))) {
Animation_Change(&this->skelAnime, &object_kingdodongo_Anim_0042A8, 1.0f, 0.0f,
Animation_GetLastFrame(&object_kingdodongo_Anim_0042A8), ANIMMODE_LOOP, -5.0f);
this->actionFunc = BossDodongo_Vulnerable;
this->unk_1DA = 100;
}
@ -611,8 +584,8 @@ void BossDodongo_Vulnerable(BossDodongo* this, GlobalContext* globalCtx) {
SkelAnime_Update(&this->skelAnime);
if (this->unk_1DA == 0) {
Animation_Change(&this->skelAnime, &D_06009D10, 1.0f, 0.0f, Animation_GetLastFrame(&D_06009D10), ANIMMODE_ONCE,
-5.0f);
Animation_Change(&this->skelAnime, &object_kingdodongo_Anim_009D10, 1.0f, 0.0f,
Animation_GetLastFrame(&object_kingdodongo_Anim_009D10), ANIMMODE_ONCE, -5.0f);
this->actionFunc = BossDodongo_GetUp;
}
}
@ -620,7 +593,7 @@ void BossDodongo_Vulnerable(BossDodongo* this, GlobalContext* globalCtx) {
void BossDodongo_GetUp(BossDodongo* this, GlobalContext* globalCtx) {
SkelAnime_Update(&this->skelAnime);
if (Animation_OnFrame(&this->skelAnime, Animation_GetLastFrame(&D_06009D10))) {
if (Animation_OnFrame(&this->skelAnime, Animation_GetLastFrame(&object_kingdodongo_Anim_009D10))) {
BossDodongo_SetupRoll(this);
}
}
@ -687,7 +660,7 @@ void BossDodongo_Walk(BossDodongo* this, GlobalContext* globalCtx) {
if (this->unk_1AA == 0) {
if (Animation_OnFrame(&this->skelAnime, 14.0f)) {
Animation_PlayLoop(&this->skelAnime, &D_0601CAE0);
Animation_PlayLoop(&this->skelAnime, &object_kingdodongo_Anim_01CAE0);
this->unk_1AA = 1;
}
} else if (this->unk_1BC != 2) {
@ -1301,8 +1274,8 @@ void BossDodongo_UpdateDamage(BossDodongo* this, GlobalContext* globalCtx) {
void BossDodongo_SetupDeathCutscene(BossDodongo* this) {
this->actor.speedXZ = 0.0f;
this->unk_1E4 = 0.0f;
Animation_Change(&this->skelAnime, &D_06002D0C, 1.0f, 0.0f, Animation_GetLastFrame(&D_06002D0C), ANIMMODE_ONCE,
-5.0f);
Animation_Change(&this->skelAnime, &object_kingdodongo_Anim_002D0C, 1.0f, 0.0f,
Animation_GetLastFrame(&object_kingdodongo_Anim_002D0C), ANIMMODE_ONCE, -5.0f);
this->actionFunc = BossDodongo_DeathCutscene;
Audio_PlayActorSound2(&this->actor, NA_SE_EN_DODO_K_DEAD);
this->unk_1DA = 0;
@ -1356,9 +1329,9 @@ void BossDodongo_DeathCutscene(BossDodongo* this, GlobalContext* globalCtx) {
Math_SmoothStepToF(&this->cameraAt.x, this->actor.world.pos.x, 0.2f, 30.0f, 0.1f);
Math_SmoothStepToF(&this->cameraAt.y, this->actor.focus.pos.y - 70.0f, 0.2f, 30.0f, 0.1f);
Math_SmoothStepToF(&this->cameraAt.z, this->actor.world.pos.z, 0.2f, 30.0f, 0.1f);
if (Animation_OnFrame(&this->skelAnime, Animation_GetLastFrame(&D_06002D0C))) {
Animation_Change(&this->skelAnime, &D_06003CF8, 1.0f, 0.0f, Animation_GetLastFrame(&D_06003CF8),
ANIMMODE_ONCE, -1.0f);
if (Animation_OnFrame(&this->skelAnime, Animation_GetLastFrame(&object_kingdodongo_Anim_002D0C))) {
Animation_Change(&this->skelAnime, &object_kingdodongo_Anim_003CF8, 1.0f, 0.0f,
Animation_GetLastFrame(&object_kingdodongo_Anim_003CF8), ANIMMODE_ONCE, -1.0f);
this->csState = 6;
Actor_Spawn(&globalCtx->actorCtx, globalCtx, ACTOR_BG_BREAKWALL, -890.0f, -1523.76f, -3304.0f, 0, 0, 0,
0x6000);
@ -1369,8 +1342,9 @@ void BossDodongo_DeathCutscene(BossDodongo* this, GlobalContext* globalCtx) {
Math_SmoothStepToF(&this->cameraAt.y, (this->actor.world.pos.y - 70.0f) + 130.0f, 0.2f, 20.0f, 0.1f);
Math_SmoothStepToF(&this->cameraAt.z, this->actor.world.pos.z, 0.2f, 30.0f, 0.1f);
if (Animation_OnFrame(&this->skelAnime, Animation_GetLastFrame(&D_06003CF8))) {
Animation_Change(&this->skelAnime, &D_0600DF38, 1.0f, 30.0f, 59.0f, ANIMMODE_ONCE, -1.0f);
if (Animation_OnFrame(&this->skelAnime, Animation_GetLastFrame(&object_kingdodongo_Anim_003CF8))) {
Animation_Change(&this->skelAnime, &object_kingdodongo_Anim_00DF38, 1.0f, 30.0f, 59.0f, ANIMMODE_ONCE,
-1.0f);
this->csState = 7;
this->unk_228 = 7700.0f;
this->unk_204 = 0.0f;
@ -1459,8 +1433,8 @@ void BossDodongo_DeathCutscene(BossDodongo* this, GlobalContext* globalCtx) {
case 8:
case 9:
if (this->unk_1DA == 884) {
Animation_Change(&this->skelAnime, &D_060042A8, 1.0f, 0.0f, (f32)Animation_GetLastFrame(&D_060042A8),
ANIMMODE_LOOP, -20.0f);
Animation_Change(&this->skelAnime, &object_kingdodongo_Anim_0042A8, 1.0f, 0.0f,
(f32)Animation_GetLastFrame(&object_kingdodongo_Anim_0042A8), ANIMMODE_LOOP, -20.0f);
tempSin = this->cameraEye.x - this->actor.world.pos.x;
tempCos = this->cameraEye.z - this->actor.world.pos.z;
this->unk_22C = sqrtf(SQ(tempSin) + SQ(tempCos));
@ -1714,7 +1688,7 @@ void BossDodongo_DrawEffects(GlobalContext* globalCtx) {
gDPPipeSync(POLY_XLU_DISP++);
if (phi_s3 == 0) {
gSPDisplayList(POLY_XLU_DISP++, D_06009D50);
gSPDisplayList(POLY_XLU_DISP++, object_kingdodongo_DL_009D50);
phi_s3++;
}
@ -1724,7 +1698,7 @@ void BossDodongo_DrawEffects(GlobalContext* globalCtx) {
Matrix_Scale(eff->unk_2C, eff->unk_2C, 1.0f, MTXMODE_APPLY);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_boss_dodongo.c", 5253),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06009DD0);
gSPDisplayList(POLY_XLU_DISP++, object_kingdodongo_DL_009DD0);
}
}

View File

@ -1,5 +1,6 @@
#include "z_boss_tw.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#include "objects/object_tw/object_tw.h"
#define FLAGS 0x00000035
@ -231,78 +232,6 @@ static s16 D_8094C87C;
static u8 D_8094C87E;
static BossTwEffect sTwEffects[150];
extern FlexSkeletonHeader D_060070E0;
extern AnimationHeader D_06006F28;
extern FlexSkeletonHeader D_0601F888;
extern AnimationHeader D_0603A2D0;
extern AnimationHeader D_06032BF8;
extern AnimationHeader D_06035988;
extern AnimationHeader D_060343B4;
extern AnimationHeader D_06035030;
extern AnimationHeader D_060338F0;
extern AnimationHeader D_06024374;
extern AnimationHeader D_06023750;
extern AnimationHeader D_06022700;
extern AnimationHeader D_06036FBC;
extern Gfx D_0601A528[];
extern Gfx D_0601A998[];
extern Gfx D_0601AB00[];
extern Gfx D_0601A430[];
extern Gfx D_0601A790[];
extern Gfx D_0601AA50[];
extern Gfx D_0601A5A8[];
extern Gfx D_0601F390[];
extern Gfx D_0601F238[];
extern Gfx D_0601EEB0[];
extern Gfx D_0601EC68[];
extern Gfx D_0601E0E0[];
extern Gfx D_0601E020[];
extern Gfx D_0601DDF0[];
extern Gfx D_0601E3A0[];
extern Gfx D_0601E2C0[];
extern Gfx D_0601E9F0[];
extern Gfx D_0602D940[];
extern Gfx D_0602D890[];
extern Gfx D_0601CEE0[];
extern Gfx D_0601DBE8[];
extern Gfx D_06019D40[]; // Koume Ground Crater
extern Gfx D_06018FC0[]; // Koume Ground Smoke
extern Gfx D_06019938[]; // koume Ground Flame
extern Gfx D_0601BC00[];
extern Gfx D_0601C1C0[];
extern Gfx D_06013E98[];
extern Gfx D_06013F98[];
extern Gfx D_06014070[];
extern Gfx D_06014158[];
extern Gfx D_06013AE8[];
extern Gfx D_06013D68[];
extern Gfx D_06012CE0[];
extern Gfx D_060134B8[];
extern Gfx D_06012B38[];
extern Gfx D_06013310[];
extern AnimationHeader D_060216DC;
extern AnimationHeader D_0600230C;
extern AnimationHeader D_06001D10;
extern AnimationHeader D_060017E0;
extern AnimationHeader D_060012A4;
extern AnimationHeader D_060004A4;
extern AnimationHeader D_06000AAC;
extern AnimationHeader D_060088C8;
extern UNK_TYPE D_0602E170[];
extern AnimationHeader D_06038E2C;
extern AnimationHeader D_06032BF8;
extern AnimationHeader D_06007CA8;
extern AnimationHeader D_06006530;
extern AnimationHeader D_0600578C;
extern AnimationHeader D_06004548;
extern AnimationHeader D_06009398;
extern AnimationHeader D_06003614;
extern AnimationHeader D_06003E34;
extern AnimationHeader D_06007688;
extern FlexSkeletonHeader D_06032020;
extern AnimationHeader D_060244B4;
extern Gfx D_0601F608[];
void BossTw_AddDotEffect(GlobalContext* globalCtx, Vec3f* initalPos, Vec3f* initalSpeed, Vec3f* accel, f32 scale,
s16 args, s16 countLimit) {
s16 i;
@ -582,7 +511,7 @@ void BossTw_Init(Actor* thisx, GlobalContext* globalCtx2) {
if (this->actor.params == TW_KOTAKE) {
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInitKoumeKotake);
this->actor.naviEnemyId = 0x33;
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_060070E0, &D_06006F28, NULL, NULL, 0);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &object_tw_Skel_0070E0, &object_tw_Anim_006F28, NULL, NULL, 0);
if (gSaveContext.eventChkInf[7] & 0x20) {
// began twinrova battle
@ -595,12 +524,12 @@ void BossTw_Init(Actor* thisx, GlobalContext* globalCtx2) {
BossTw_SetupCSWait(this, globalCtx);
}
Animation_MorphToLoop(&this->skelAnime, &D_06006F28, -3.0f);
Animation_MorphToLoop(&this->skelAnime, &object_tw_Anim_006F28, -3.0f);
this->visible = true;
} else if (this->actor.params == TW_KOUME) {
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInitKoumeKotake);
this->actor.naviEnemyId = 0x32;
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_0601F888, &D_06006F28, NULL, NULL, 0);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &object_tw_Skel_01F888, &object_tw_Anim_006F28, NULL, NULL, 0);
if (gSaveContext.eventChkInf[7] & 0x20) {
// began twinrova battle
@ -612,7 +541,7 @@ void BossTw_Init(Actor* thisx, GlobalContext* globalCtx2) {
BossTw_SetupCSWait(this, globalCtx);
}
Animation_MorphToLoop(&this->skelAnime, &D_06006F28, -3.0f);
Animation_MorphToLoop(&this->skelAnime, &object_tw_Anim_006F28, -3.0f);
this->visible = true;
} else {
// Twinrova
@ -621,8 +550,8 @@ void BossTw_Init(Actor* thisx, GlobalContext* globalCtx2) {
this->actor.colChkInfo.health = 24;
this->actor.update = BossTw_TwinrovaUpdate;
this->actor.draw = BossTw_TwinrovaDraw;
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_06032020, &D_060244B4, NULL, NULL, 0);
Animation_MorphToLoop(&this->skelAnime, &D_060244B4, -3.0f);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &object_tw_Skel_032020, &object_tw_Anim_0244B4, NULL, NULL, 0);
Animation_MorphToLoop(&this->skelAnime, &object_tw_Anim_0244B4, -3.0f);
if (gSaveContext.eventChkInf[7] & 0x20) {
// began twinrova battle
@ -720,7 +649,7 @@ void BossTw_SetupFlyTo(BossTw* this, GlobalContext* globalCtx) {
this->actor.flags |= 1;
this->actionFunc = BossTw_FlyTo;
this->rotateSpeed = 0.0f;
Animation_MorphToLoop(&this->skelAnime, &D_06006F28, -10.0f);
Animation_MorphToLoop(&this->skelAnime, &object_tw_Anim_006F28, -10.0f);
if ((Rand_ZeroOne() < 0.5f) && (otherTw != NULL && otherTw->actionFunc == BossTw_ShootBeam)) {
// Other Sister is shooting a beam, go near them.
this->targetPos.x = otherTw->actor.world.pos.x + Rand_CenteredFloat(200.0f);
@ -781,8 +710,8 @@ void BossTw_SetupShootBeam(BossTw* this, GlobalContext* globalCtx) {
Player* player = PLAYER;
this->actionFunc = BossTw_ShootBeam;
Animation_MorphToPlayOnce(&this->skelAnime, &D_06007688, -5.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&D_06007688);
Animation_MorphToPlayOnce(&this->skelAnime, &object_tw_Anim_007688, -5.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&object_tw_Anim_007688);
this->timers[1] = 70;
this->targetPos = player->actor.world.pos;
this->csState1 = 0;
@ -1122,13 +1051,13 @@ void BossTw_ShootBeam(BossTw* this, GlobalContext* globalCtx) {
}
if (Animation_OnFrame(&this->skelAnime, this->workf[ANIM_SW_TGT])) {
Animation_MorphToLoop(&this->skelAnime, &D_06009398, 0.0f);
Animation_MorphToLoop(&this->skelAnime, &object_tw_Anim_009398, 0.0f);
this->workf[ANIM_SW_TGT] = 10000.0f;
}
if (this->timers[1] == 1) {
Animation_MorphToPlayOnce(&this->skelAnime, &D_06003614, 0.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&D_06003614);
Animation_MorphToPlayOnce(&this->skelAnime, &object_tw_Anim_003614, 0.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&object_tw_Anim_003614);
this->unk_4DC = 0.0f;
this->spawnPortalAlpha = 0.0f;
this->flameAlpha = 0.0f;
@ -1136,7 +1065,7 @@ void BossTw_ShootBeam(BossTw* this, GlobalContext* globalCtx) {
}
} else {
if (Animation_OnFrame(&this->skelAnime, this->workf[ANIM_SW_TGT])) {
Animation_MorphToLoop(&this->skelAnime, &D_06003E34, 0.0f);
Animation_MorphToLoop(&this->skelAnime, &object_tw_Anim_003E34, 0.0f);
this->workf[ANIM_SW_TGT] = 10000.0f;
}
@ -1390,8 +1319,8 @@ void BossTw_ShootBeam(BossTw* this, GlobalContext* globalCtx) {
void BossTw_SetupFinishBeamShoot(BossTw* this, GlobalContext* globalCtx) {
this->actionFunc = BossTw_FinishBeamShoot;
Animation_MorphToPlayOnce(&this->skelAnime, &D_06004548, 0.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&D_06004548);
Animation_MorphToPlayOnce(&this->skelAnime, &object_tw_Anim_004548, 0.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&object_tw_Anim_004548);
}
void BossTw_FinishBeamShoot(BossTw* this, GlobalContext* globalCtx) {
@ -1411,7 +1340,7 @@ void BossTw_FinishBeamShoot(BossTw* this, GlobalContext* globalCtx) {
void BossTw_SetupHitByBeam(BossTw* this, GlobalContext* globalCtx) {
this->actionFunc = BossTw_HitByBeam;
Animation_MorphToPlayOnce(&this->skelAnime, &D_0600578C, 0.0f);
Animation_MorphToPlayOnce(&this->skelAnime, &object_tw_Anim_00578C, 0.0f);
this->timers[0] = 53;
this->actor.speedXZ = 0.0f;
@ -1465,8 +1394,8 @@ void BossTw_HitByBeam(BossTw* this, GlobalContext* globalCtx) {
}
if (this->timers[0] == 1) {
Animation_MorphToPlayOnce(&this->skelAnime, &D_06006530, 0.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&D_06006530);
Animation_MorphToPlayOnce(&this->skelAnime, &object_tw_Anim_006530, 0.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&object_tw_Anim_006530);
}
if ((this->timers[0] == 0) && Animation_OnFrame(&this->skelAnime, this->workf[ANIM_SW_TGT])) {
@ -1476,8 +1405,8 @@ void BossTw_HitByBeam(BossTw* this, GlobalContext* globalCtx) {
void BossTw_SetupLaugh(BossTw* this, GlobalContext* globalCtx) {
this->actionFunc = BossTw_Laugh;
Animation_MorphToPlayOnce(&this->skelAnime, &D_060088C8, 0.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&D_060088C8);
Animation_MorphToPlayOnce(&this->skelAnime, &object_tw_Anim_0088C8, 0.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&object_tw_Anim_0088C8);
this->actor.speedXZ = 0.0f;
}
@ -1499,8 +1428,8 @@ void BossTw_Laugh(BossTw* this, GlobalContext* globalCtx) {
void BossTw_SetupSpin(BossTw* this, GlobalContext* globalCtx) {
this->actionFunc = BossTw_Spin;
Animation_MorphToPlayOnce(&this->skelAnime, &D_06007CA8, -3.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&D_06007CA8);
Animation_MorphToPlayOnce(&this->skelAnime, &object_tw_Anim_007CA8, -3.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&object_tw_Anim_007CA8);
this->actor.speedXZ = 0.0f;
SkelAnime_Update(&this->skelAnime);
this->timers[0] = 20;
@ -1528,7 +1457,7 @@ void BossTw_SetupMergeCS(BossTw* this, GlobalContext* globalCtx) {
this->actionFunc = BossTw_MergeCS;
this->rotateSpeed = 0.0f;
this->actor.speedXZ = 0.0f;
Animation_MorphToLoop(&this->skelAnime, &D_06006F28, -10.0f);
Animation_MorphToLoop(&this->skelAnime, &object_tw_Anim_006F28, -10.0f);
}
void BossTw_MergeCS(BossTw* this, GlobalContext* globalCtx) {
@ -1707,8 +1636,8 @@ void BossTw_TwinrovaMergeCS(BossTw* this, GlobalContext* globalCtx) {
BossTw_SetupWait(sKotakePtr, globalCtx);
BossTw_SetupWait(sKoumePtr, globalCtx);
Actor_SetScale(&this->actor, 0.0f);
Animation_MorphToPlayOnce(&this->skelAnime, &D_06038E2C, 0.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&D_06038E2C);
Animation_MorphToPlayOnce(&this->skelAnime, &object_tw_Anim_038E2C, 0.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&object_tw_Anim_038E2C);
this->timers[0] = 50;
func_8002DF54(globalCtx, &this->actor, 2);
Audio_PlayActorSound2(&this->actor, NA_SE_EN_TWINROBA_TRANSFORM);
@ -1722,7 +1651,7 @@ void BossTw_TwinrovaMergeCS(BossTw* this, GlobalContext* globalCtx) {
case 1:
if (Animation_OnFrame(&this->skelAnime, this->workf[ANIM_SW_TGT])) {
Animation_MorphToLoop(&this->skelAnime, &D_06032BF8, -15.0f);
Animation_MorphToLoop(&this->skelAnime, &object_tw_Anim_032BF8, -15.0f);
}
sEnvType = -1;
@ -1797,7 +1726,7 @@ void BossTw_TwinrovaMergeCS(BossTw* this, GlobalContext* globalCtx) {
void BossTw_SetupDeathCS(BossTw* this, GlobalContext* globalCtx) {
this->actionFunc = BossTw_DeathCS;
Animation_MorphToLoop(&this->skelAnime, &D_060004A4, -3.0f);
Animation_MorphToLoop(&this->skelAnime, &object_tw_Anim_0004A4, -3.0f);
this->unk_5F8 = 0;
this->work[CS_TIMER_2] = Rand_ZeroFloat(20.0f);
}
@ -1923,7 +1852,7 @@ void BossTw_TwinrovaIntroCS(BossTw* this, GlobalContext* globalCtx) {
if (this->work[CS_TIMER_1] >= 236) {
this->csState2 = 2;
sKoumePtr->visible = 1;
Animation_MorphToLoop(&sKoumePtr->skelAnime, &D_060004A4, 0.0f);
Animation_MorphToLoop(&sKoumePtr->skelAnime, &object_tw_Anim_0004A4, 0.0f);
sKoumePtr->actor.world.pos.x = 0.0f;
sKoumePtr->actor.world.pos.y = 80.0f;
sKoumePtr->actor.world.pos.z = 600.0f;
@ -2003,8 +1932,8 @@ void BossTw_TwinrovaIntroCS(BossTw* this, GlobalContext* globalCtx) {
this->subCamAtStep.z = fabsf(this->subCamAtTarget.z - this->subCamAt.z);
this->subCamUpdateRate = 0.0f;
this->subCamDistStep = 0.05f;
Animation_MorphToPlayOnce(&sKoumePtr->skelAnime, &D_06000AAC, 0.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&D_06000AAC);
Animation_MorphToPlayOnce(&sKoumePtr->skelAnime, &object_tw_Anim_000AAC, 0.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&object_tw_Anim_000AAC);
this->work[CS_TIMER_1] = 0;
}
break;
@ -2052,8 +1981,8 @@ void BossTw_TwinrovaIntroCS(BossTw* this, GlobalContext* globalCtx) {
1.0f, 0.005f);
} else {
if (this->work[CS_TIMER_1] == 50) {
Animation_MorphToPlayOnce(&sKoumePtr->skelAnime, &D_060088C8, -5);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&D_060088C8);
Animation_MorphToPlayOnce(&sKoumePtr->skelAnime, &object_tw_Anim_0088C8, -5);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&object_tw_Anim_0088C8);
}
if (this->work[CS_TIMER_1] == 60) {
@ -2061,7 +1990,7 @@ void BossTw_TwinrovaIntroCS(BossTw* this, GlobalContext* globalCtx) {
}
if (Animation_OnFrame(&sKoumePtr->skelAnime, this->workf[ANIM_SW_TGT])) {
Animation_MorphToLoop(&sKoumePtr->skelAnime, &D_06006F28, 0.f);
Animation_MorphToLoop(&sKoumePtr->skelAnime, &object_tw_Anim_006F28, 0.f);
this->workf[ANIM_SW_TGT] = 1000.0f;
}
@ -2077,7 +2006,7 @@ void BossTw_TwinrovaIntroCS(BossTw* this, GlobalContext* globalCtx) {
this->work[CS_TIMER_1] = 0;
this->subCamYawStep = 0.0f;
sKotakePtr->visible = 1;
Animation_MorphToLoop(&sKotakePtr->skelAnime, &D_060004A4, 0.0f);
Animation_MorphToLoop(&sKotakePtr->skelAnime, &object_tw_Anim_0004A4, 0.0f);
sKotakePtr->actor.world.pos.x = 0.0f;
sKotakePtr->actor.world.pos.y = 80.0f;
sKotakePtr->actor.world.pos.z = -600.0f;
@ -2105,7 +2034,7 @@ void BossTw_TwinrovaIntroCS(BossTw* this, GlobalContext* globalCtx) {
Math_ApproachF(&this->subCamYawStep, 12288.0f, 1.0f, 384.0f);
if (Animation_OnFrame(&sKoumePtr->skelAnime, this->workf[ANIM_SW_TGT])) {
Animation_MorphToLoop(&sKoumePtr->skelAnime, &D_06006F28, 0.0f);
Animation_MorphToLoop(&sKoumePtr->skelAnime, &object_tw_Anim_006F28, 0.0f);
this->workf[ANIM_SW_TGT] = 1000.0f;
}
}
@ -2167,8 +2096,8 @@ void BossTw_TwinrovaIntroCS(BossTw* this, GlobalContext* globalCtx) {
this->subCamAtStep.z = fabsf(this->subCamAtTarget.z - this->subCamAt.z);
this->subCamUpdateRate = 0;
this->subCamDistStep = 0.05f;
Animation_MorphToPlayOnce(&sKotakePtr->skelAnime, &D_06000AAC, 0);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&D_06000AAC);
Animation_MorphToPlayOnce(&sKotakePtr->skelAnime, &object_tw_Anim_000AAC, 0);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&object_tw_Anim_000AAC);
this->work[CS_TIMER_1] = 0;
}
break;
@ -2214,8 +2143,8 @@ void BossTw_TwinrovaIntroCS(BossTw* this, GlobalContext* globalCtx) {
1.0f, 0.005f);
} else {
if (this->work[CS_TIMER_1] == 50) {
Animation_MorphToPlayOnce(&sKotakePtr->skelAnime, &D_060088C8, -5.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&D_060088C8);
Animation_MorphToPlayOnce(&sKotakePtr->skelAnime, &object_tw_Anim_0088C8, -5.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&object_tw_Anim_0088C8);
}
if (this->work[CS_TIMER_1] == 60) {
@ -2223,7 +2152,7 @@ void BossTw_TwinrovaIntroCS(BossTw* this, GlobalContext* globalCtx) {
}
if (Animation_OnFrame(&sKotakePtr->skelAnime, this->workf[ANIM_SW_TGT])) {
Animation_MorphToLoop(&sKotakePtr->skelAnime, &D_06006F28, 0.0f);
Animation_MorphToLoop(&sKotakePtr->skelAnime, &object_tw_Anim_006F28, 0.0f);
this->workf[ANIM_SW_TGT] = 1000.0f;
}
@ -2266,7 +2195,7 @@ void BossTw_TwinrovaIntroCS(BossTw* this, GlobalContext* globalCtx) {
Math_ApproachF(&this->subCamYawStep, 12288.0f, 1.0f, 384.0f);
if (Animation_OnFrame(&sKotakePtr->skelAnime, this->workf[ANIM_SW_TGT])) {
Animation_MorphToLoop(&sKotakePtr->skelAnime, &D_06006F28, 0.0f);
Animation_MorphToLoop(&sKotakePtr->skelAnime, &object_tw_Anim_006F28, 0.0f);
this->workf[ANIM_SW_TGT] = 1000.0f;
}
}
@ -2287,8 +2216,8 @@ void BossTw_TwinrovaIntroCS(BossTw* this, GlobalContext* globalCtx) {
globalCtx->envCtx.unk_BE = 1;
globalCtx->envCtx.unk_BD = 1;
globalCtx->envCtx.unk_D8 = 0.0f;
TitleCard_InitBossName(globalCtx, &globalCtx->actorCtx.titleCtx, SEGMENTED_TO_VIRTUAL(D_0602E170), 0xA0,
0xB4, 0x80, 0x28);
TitleCard_InitBossName(globalCtx, &globalCtx->actorCtx.titleCtx,
SEGMENTED_TO_VIRTUAL(object_tw_Blob_02E170), 0xA0, 0xB4, 0x80, 0x28);
gSaveContext.eventChkInf[7] |= 0x20;
Audio_QueueSeqCmd(0x1B);
}
@ -2441,7 +2370,7 @@ void BossTw_DeathBall(BossTw* this, GlobalContext* globalCtx) {
void BossTw_TwinrovaSetupDeathCS(BossTw* this, GlobalContext* globalCtx) {
this->actionFunc = BossTw_TwinrovaDeathCS;
Animation_MorphToLoop(&this->skelAnime, &D_06024374, -3.0f);
Animation_MorphToLoop(&this->skelAnime, &object_tw_Anim_024374, -3.0f);
this->actor.world.rot.y = this->actor.shape.rot.y;
this->actor.flags &= ~1;
this->csState2 = this->csState1 = 0;
@ -2616,31 +2545,31 @@ void BossTw_DeathCSMsgSfx(BossTw* this, GlobalContext* globalCtx) {
switch (kotakeAnim) {
case 1:
Animation_MorphToLoop(&sKotakePtr->skelAnime, &D_0600230C, -5.0f);
Animation_MorphToLoop(&sKotakePtr->skelAnime, &object_tw_Anim_00230C, -5.0f);
break;
case 2:
Animation_MorphToLoop(&sKotakePtr->skelAnime, &D_06001D10, -5.0f);
Animation_MorphToLoop(&sKotakePtr->skelAnime, &object_tw_Anim_001D10, -5.0f);
break;
case 3:
Animation_MorphToLoop(&sKotakePtr->skelAnime, &D_060017E0, -5.0f);
Animation_MorphToLoop(&sKotakePtr->skelAnime, &object_tw_Anim_0017E0, -5.0f);
break;
case 4:
Animation_MorphToLoop(&sKotakePtr->skelAnime, &D_060012A4, -5.0f);
Animation_MorphToLoop(&sKotakePtr->skelAnime, &object_tw_Anim_0012A4, -5.0f);
break;
}
switch (koumeAnim) {
case 1:
Animation_MorphToLoop(&sKoumePtr->skelAnime, &D_0600230C, -5.0f);
Animation_MorphToLoop(&sKoumePtr->skelAnime, &object_tw_Anim_00230C, -5.0f);
break;
case 2:
Animation_MorphToLoop(&sKoumePtr->skelAnime, &D_06001D10, -5.0f);
Animation_MorphToLoop(&sKoumePtr->skelAnime, &object_tw_Anim_001D10, -5.0f);
break;
case 3:
Animation_MorphToLoop(&sKoumePtr->skelAnime, &D_060017E0, -5.0f);
Animation_MorphToLoop(&sKoumePtr->skelAnime, &object_tw_Anim_0017E0, -5.0f);
break;
case 4:
Animation_MorphToLoop(&sKoumePtr->skelAnime, &D_060012A4, -5.0f);
Animation_MorphToLoop(&sKoumePtr->skelAnime, &object_tw_Anim_0012A4, -5.0f);
break;
}
@ -2695,7 +2624,7 @@ void BossTw_TwinrovaDeathCS(BossTw* this, GlobalContext* globalCtx) {
switch (this->csState1) {
case 0:
if (this->work[CS_TIMER_1] == 15) {
Animation_MorphToPlayOnce(&this->skelAnime, &D_060216DC, -3.0f);
Animation_MorphToPlayOnce(&this->skelAnime, &object_tw_Anim_0216DC, -3.0f);
}
if (this->work[CS_TIMER_1] >= 15) {
@ -3253,9 +3182,9 @@ s32 BossTw_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList
if (limbIndex == 21) {
if (this->unk_5F8 == 0) {
if (this->actor.params == 0) {
*dList = D_06012CE0;
*dList = object_tw_DL_012CE0;
} else {
*dList = D_060134B8;
*dList = object_tw_DL_0134B8;
}
}
}
@ -3265,9 +3194,9 @@ s32 BossTw_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList
*dList = NULL;
} else if (this->scepterAlpha == 0.0f) {
if (this->actor.params == 0) {
*dList = D_06012B38;
*dList = object_tw_DL_012B38;
} else {
*dList = D_06013310;
*dList = object_tw_DL_013310;
}
}
}
@ -3295,9 +3224,9 @@ void BossTw_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, V
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_boss_tw.c", 6190),
G_MTX_LOAD | G_MTX_MODELVIEW | G_MTX_NOPUSH);
if (this->actor.params == 0) {
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_06013AE8));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_013AE8));
} else {
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_06013D68));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_013D68));
}
}
break;
@ -3313,14 +3242,14 @@ void BossTw_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, V
G_MTX_LOAD | G_MTX_MODELVIEW | G_MTX_NOPUSH);
if (this->actor.params == 0) {
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 255, 225, 255, (s16)this->scepterAlpha);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_06013E98));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_013E98));
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 195, 225, 235, (s16)this->scepterAlpha);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_06013F98));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_013F98));
} else {
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 100, 20, 0, (s16)this->scepterAlpha);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_06014070));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_014070));
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 255, 70, 0, (s16)this->scepterAlpha);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_06014158));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_014158));
}
}
break;
@ -3342,7 +3271,7 @@ void func_80941BC0(BossTw* this, GlobalContext* globalCtx) {
G_MTX_LOAD | G_MTX_MODELVIEW | G_MTX_NOPUSH);
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 255, 255, 255, (s16)this->workf[UNK_F11]);
gDPSetEnvColor(POLY_XLU_DISP++, 0, 40, 30, 80);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601BC00));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01BC00));
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 215, 215, 215, (s16)this->workf[UNK_F11] * this->workf[UNK_F14]);
gDPSetEnvColor(POLY_XLU_DISP++, 255, 255, 255, 128);
gSPSegment(POLY_XLU_DISP++, 8,
@ -3352,7 +3281,7 @@ void func_80941BC0(BossTw* this, GlobalContext* globalCtx) {
Matrix_RotateY(this->workf[UNK_F15], MTXMODE_APPLY);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_boss_tw.c", 6423),
G_MTX_LOAD | G_MTX_MODELVIEW | G_MTX_NOPUSH);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601C1C0));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01C1C0));
Matrix_Pop();
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_boss_tw.c", 6427),
G_MTX_LOAD | G_MTX_MODELVIEW | G_MTX_NOPUSH);
@ -3367,7 +3296,7 @@ void func_80941BC0(BossTw* this, GlobalContext* globalCtx) {
GBL_c1(G_BL_CLR_FOG, G_BL_A_SHADE, G_BL_CLR_IN, G_BL_1MA),
G_RM_ZB_OVL_SURF2);
gSPSetGeometryMode(POLY_XLU_DISP++, G_CULL_BACK | G_FOG);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601A790));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01A790));
Matrix_Pop();
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_boss_tw.c", 6461);
@ -3391,7 +3320,7 @@ void func_80942180(BossTw* this, GlobalContext* globalCtx) {
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 100, 40, 00, (s16)this->workf[KM_GRND_CRTR_A]);
gDPPipeSync(POLY_XLU_DISP++);
gDPSetEnvColor(POLY_XLU_DISP++, 255, 245, 255, 128);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_06019D40));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_019D40));
func_800D1FD4(&globalCtx->mf_11DA0);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_boss_tw.c", 6514),
@ -3403,7 +3332,7 @@ void func_80942180(BossTw* this, GlobalContext* globalCtx) {
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 80, 0, 0, (s16)this->workf[KM_GD_SMOKE_A]);
gDPPipeSync(POLY_XLU_DISP++);
gDPSetEnvColor(POLY_XLU_DISP++, 0, 0, 0, 100);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_06018FC0));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_018FC0));
gSPSegment(POLY_XLU_DISP++, 8,
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, (-this->work[CS_TIMER_1] * 3) & 0x7F, 0, 0x20, 0x20, 1, 0,
@ -3414,7 +3343,7 @@ void func_80942180(BossTw* this, GlobalContext* globalCtx) {
Matrix_Scale(this->workf[KM_GD_FLM_SCL], this->workf[KM_GD_FLM_SCL], this->workf[KM_GD_FLM_SCL], MTXMODE_APPLY);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_boss_tw.c", 6575),
G_MTX_LOAD | G_MTX_MODELVIEW | G_MTX_NOPUSH);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_06019938));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_019938));
Matrix_Pop();
@ -3440,17 +3369,17 @@ void func_809426F0(BossTw* this, GlobalContext* globalCtx) {
if (this->actor.params == 0) {
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 135, 175, 165, (s16)this->spawnPortalAlpha);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601CEE0));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01CEE0));
} else {
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 255, 255, 0, (s16)this->spawnPortalAlpha);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601DBE8));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01DBE8));
}
Matrix_Pop();
if (this->actor.params == 0) {
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 195, 225, 235, (s16)this->flameAlpha);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601A998));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01A998));
} else {
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 200, 20, 0, (s16)this->flameAlpha);
gDPSetEnvColor(POLY_XLU_DISP++, 255, 215, 255, 128);
@ -3468,7 +3397,7 @@ void func_809426F0(BossTw* this, GlobalContext* globalCtx) {
func_800D1FD4(&globalCtx->mf_11DA0);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_boss_tw.c", 6751),
G_MTX_LOAD | G_MTX_MODELVIEW | G_MTX_NOPUSH);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601A430));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01A430));
Matrix_Pop();
}
@ -3502,7 +3431,7 @@ void func_80942C70(Actor* thisx, GlobalContext* globalCtx) {
Matrix_Scale(this->beamScale, this->beamScale, (this->beamDist * 0.01f * 98.0f) / 20000.0f, MTXMODE_APPLY);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_boss_tw.c", 6846),
G_MTX_LOAD | G_MTX_MODELVIEW | G_MTX_NOPUSH);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601DDF0));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01DDF0));
if (this->beamReflectionDist > 10.0f) {
Matrix_Translate(this->beamReflectionOrigin.x, this->beamReflectionOrigin.y, this->beamReflectionOrigin.z,
@ -3514,7 +3443,7 @@ void func_80942C70(Actor* thisx, GlobalContext* globalCtx) {
MTXMODE_APPLY);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_boss_tw.c", 6870),
G_MTX_LOAD | G_MTX_MODELVIEW | G_MTX_NOPUSH);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601DDF0));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01DDF0));
}
Matrix_Pop();
@ -3534,7 +3463,7 @@ void func_80943028(Actor* thisx, GlobalContext* globalCtx) {
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 255, 255, 255, 255);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_boss_tw.c", 6908),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601F608));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01F608));
func_80094044(globalCtx->state.gfxCtx);
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 0, 0, 0, 200);
Matrix_Translate(this->actor.world.pos.x, 240.0f, this->actor.world.pos.z, MTXMODE_NEW);
@ -3684,13 +3613,13 @@ s32 BossTw_TwinrovaOverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx
break;
case 19:
if (this->unk_5F8 != 0) {
*dList = D_0602D940;
*dList = object_tw_DL_02D940;
}
break;
case 20:
if (this->unk_5F8 != 0) {
*dList = D_0602D890;
*dList = object_tw_DL_02D890;
}
break;
}
@ -3791,20 +3720,20 @@ void BossTw_ShieldChargeDraw(BossTw* this, GlobalContext* globalCtx) {
temp_a0 = (Math_SinS(this->work[CS_TIMER_1] * 2730 * temp_t0) * D_8094C854 * 0.5f) + (D_8094C854 * 0.5f);
if (sShieldFireCharge != 0) {
gDPSetEnvColor(POLY_XLU_DISP++, 255, 245, 255, temp_a0);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601E0E0));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01E0E0));
gSPSegment(POLY_XLU_DISP++, 8,
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, (this->work[CS_TIMER_1] * 2) * temp_t0, 0, 0x20,
0x20, 1, (-this->work[CS_TIMER_1] * 2) * temp_t0, 0, 0x20, 0x20));
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 100, 20, 0, (s16)D_8094C854);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601E020));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01E020));
} else {
gDPSetEnvColor(POLY_XLU_DISP++, 225, 255, 255, temp_a0);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601E3A0));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01E3A0));
gSPSegment(POLY_XLU_DISP++, 8,
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, 0, (-this->work[CS_TIMER_1] * 5) * temp_t0,
0x20, 0x40, 1, (this->work[CS_TIMER_1] * 4) * temp_t0, 0, 0x20, 0x20));
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 175, 205, 195, (s16)D_8094C854);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601E2C0));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01E2C0));
}
}
}
@ -3839,7 +3768,7 @@ void BossTw_ShieldChargeDraw(BossTw* this, GlobalContext* globalCtx) {
gSPSegment(POLY_XLU_DISP++, 8,
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, 0, this->work[CS_TIMER_1] * D_8094C872, 0x20, 0x40, 1,
0, this->work[CS_TIMER_1] * D_8094C872, 0x20, 0x20));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601E9F0));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01E9F0));
}
Matrix_Pop();
@ -3864,28 +3793,28 @@ void BossTw_SpawnPortalDraw(BossTw* this, GlobalContext* globalCtx) {
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 0, 0, 0, (s16)this->spawnPortalAlpha);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_boss_tw.c", 7582),
G_MTX_LOAD | G_MTX_MODELVIEW | G_MTX_NOPUSH);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601EC68));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01EC68));
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 135, 175, 165, (s16)this->spawnPortalAlpha);
Matrix_Translate(0.0f, 2.0f, 0.0f, MTXMODE_APPLY);
Matrix_RotateX(M_PI / 2.0f, MTXMODE_APPLY);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_boss_tw.c", 7596),
G_MTX_LOAD | G_MTX_MODELVIEW | G_MTX_NOPUSH);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601CEE0));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01CEE0));
Matrix_Translate(0.0f, 232.0f, 600.0f, MTXMODE_NEW);
Matrix_Scale(this->spawnPortalScale, this->spawnPortalScale, this->spawnPortalScale, MTXMODE_APPLY);
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 0, 0, 0, (s16)this->spawnPortalAlpha);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_boss_tw.c", 7617),
G_MTX_LOAD | G_MTX_MODELVIEW | G_MTX_NOPUSH);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601EC68));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01EC68));
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 255, 255, 0, (s16)this->spawnPortalAlpha);
Matrix_Translate(0.0f, 2.0f, 0.0f, MTXMODE_APPLY);
Matrix_RotateX(M_PI / 2.0f, MTXMODE_APPLY);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_boss_tw.c", 7631),
G_MTX_LOAD | G_MTX_MODELVIEW | G_MTX_NOPUSH);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601DBE8));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01DBE8));
Matrix_Pop();
@ -3905,7 +3834,7 @@ void func_80944C50(BossTw* this, GlobalContext* globalCtx) {
Matrix_Scale(this->workf[UNK_F19], this->workf[UNK_F19], this->workf[UNK_F19], MTXMODE_APPLY);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_boss_tw.c", 7671),
G_MTX_LOAD | G_MTX_MODELVIEW | G_MTX_NOPUSH);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601F390));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01F390));
Matrix_Pop();
gSPSegment(POLY_XLU_DISP++, 8,
@ -3914,7 +3843,7 @@ void func_80944C50(BossTw* this, GlobalContext* globalCtx) {
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 255, 255, 255, (s16)this->workf[UNK_F18] / 2);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_boss_tw.c", 7694),
G_MTX_LOAD | G_MTX_MODELVIEW | G_MTX_NOPUSH);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601F238));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01F238));
gSPSegment(POLY_XLU_DISP++, 8,
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, -sKoumePtr->work[CS_TIMER_1] * 5,
@ -3928,7 +3857,7 @@ void func_80944C50(BossTw* this, GlobalContext* globalCtx) {
Matrix_Scale(scale, 1.0f, scale, MTXMODE_APPLY);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_boss_tw.c", 7728),
G_MTX_LOAD | G_MTX_MODELVIEW | G_MTX_NOPUSH);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601EEB0));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01EEB0));
Matrix_Pop();
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_boss_tw.c", 7732);
@ -4533,7 +4462,7 @@ void BossTw_BlastDraw(Actor* thisx, GlobalContext* globalCtx2) {
func_800D1FD4(&globalCtx->mf_11DA0);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_boss_tw.c", 8865),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601A430));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01A430));
}
break;
@ -4542,7 +4471,7 @@ void BossTw_BlastDraw(Actor* thisx, GlobalContext* globalCtx2) {
case TW_ICE_BLAST:
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 195, 225, 235, (s8)this->workf[TAIL_ALPHA]);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601A998));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01A998));
for (i = 9; i >= 0; i--) {
gSPSegment(POLY_XLU_DISP++, 8,
Gfx_TwoTexScroll(
@ -4557,7 +4486,7 @@ void BossTw_BlastDraw(Actor* thisx, GlobalContext* globalCtx2) {
func_800D1FD4(&globalCtx->mf_11DA0);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_boss_tw.c", 9004),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601AB00));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01AB00));
}
break;
@ -4597,11 +4526,11 @@ void BossTw_DrawDeathBall(Actor* thisx, GlobalContext* globalCtx2) {
func_800D1FD4(&globalCtx->mf_11DA0);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_boss_tw.c", 9071),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601A430));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01A430));
}
} else {
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 195, 225, 235, (s8)this->workf[TAIL_ALPHA]);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601A998));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01A998));
for (i = 9; i >= 0; i--) {
gSPSegment(POLY_XLU_DISP++, 8,
@ -4617,7 +4546,7 @@ void BossTw_DrawDeathBall(Actor* thisx, GlobalContext* globalCtx2) {
func_800D1FD4(&globalCtx->mf_11DA0);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_boss_tw.c", 9107),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601AB00));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01AB00));
}
}
@ -4984,7 +4913,7 @@ void BossTw_DrawEffects(GlobalContext* globalCtx) {
for (i = 0; i < ARRAY_COUNT(sTwEffects); i++) {
if (currentEffect->type == 1) {
if (sp18F == 0) {
gSPDisplayList(POLY_XLU_DISP++, D_0601A528);
gSPDisplayList(POLY_XLU_DISP++, object_tw_DL_01A528);
sp18F++;
}
@ -4995,7 +4924,7 @@ void BossTw_DrawEffects(GlobalContext* globalCtx) {
Matrix_Scale(currentEffect->workf[EFF_SCALE], currentEffect->workf[EFF_SCALE], 1.0f, MTXMODE_APPLY);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_boss_tw.c", 9617),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_0601A5A8);
gSPDisplayList(POLY_XLU_DISP++, object_tw_DL_01A5A8);
}
currentEffect++;
@ -5007,7 +4936,7 @@ void BossTw_DrawEffects(GlobalContext* globalCtx) {
for (i = 0; i < ARRAY_COUNT(sTwEffects); i++) {
if (currentEffect->type == 3) {
if (sp18F == 0) {
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601A998));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01A998));
sp18F++;
}
@ -5020,7 +4949,7 @@ void BossTw_DrawEffects(GlobalContext* globalCtx) {
Matrix_Scale(currentEffect->workf[EFF_SCALE], currentEffect->workf[EFF_SCALE], 1.0f, MTXMODE_APPLY);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_boss_tw.c", 9660),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601AB00));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01AB00));
}
currentEffect++;
}
@ -5045,7 +4974,7 @@ void BossTw_DrawEffects(GlobalContext* globalCtx) {
Matrix_Scale(currentEffect->workf[EFF_SCALE], currentEffect->workf[EFF_SCALE], 1.0f, MTXMODE_APPLY);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_boss_tw.c", 9709),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601A430));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01A430));
}
currentEffect++;
@ -5090,7 +5019,7 @@ void BossTw_DrawEffects(GlobalContext* globalCtx) {
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gDPSetRenderMode(POLY_XLU_DISP++, G_RM_PASS, G_RM_AA_ZB_XLU_SURF2);
gSPClearGeometryMode(POLY_XLU_DISP++, G_CULL_BACK | G_FOG);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601A790));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01A790));
}
currentEffect++;
@ -5105,7 +5034,7 @@ void BossTw_DrawEffects(GlobalContext* globalCtx) {
if (currentEffect->type == TWEFF_PLYR_FRZ) {
if (sp18F == 0) {
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601AA50));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01AA50));
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 195, 225, 235, 255);
gSPSegment(POLY_XLU_DISP++, 8,
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, 0, 0, 0x20, 0x40, 1, 0, 0, 0x20, 0x20));
@ -5135,7 +5064,7 @@ void BossTw_DrawEffects(GlobalContext* globalCtx) {
Matrix_RotateX((BossTw_RandZeroOne() - 0.5f) * M_PI * 0.5f, MTXMODE_APPLY);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_boss_tw.c", 9855),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601AB00));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01AB00));
}
}
@ -5149,7 +5078,7 @@ void BossTw_DrawEffects(GlobalContext* globalCtx) {
if (currentEffect->type >= 6) {
if (currentEffect->work[EFF_ARGS] == 0) {
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 195, 225, 235, currentEffect->alpha);
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601A998));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01A998));
} else {
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 200, 20, 0, currentEffect->alpha);
gDPPipeSync(POLY_XLU_DISP++);
@ -5166,9 +5095,9 @@ void BossTw_DrawEffects(GlobalContext* globalCtx) {
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
if (currentEffect->work[EFF_ARGS] == 0) {
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601AB00));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01AB00));
} else {
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(D_0601A430));
gSPDisplayList(POLY_XLU_DISP++, SEGMENTED_TO_VIRTUAL(object_tw_DL_01A430));
}
}
@ -5180,7 +5109,7 @@ void BossTw_DrawEffects(GlobalContext* globalCtx) {
void BossTw_TwinrovaSetupArriveAtTarget(BossTw* this, GlobalContext* globalCtx) {
this->actionFunc = BossTw_TwinrovaArriveAtTarget;
Animation_MorphToLoop(&this->skelAnime, &D_06032BF8, -3.0f);
Animation_MorphToLoop(&this->skelAnime, &object_tw_Anim_032BF8, -3.0f);
this->work[CS_TIMER_1] = Rand_ZeroFloat(100.0f);
this->timers[1] = 25;
this->rotateSpeed = 0.0f;
@ -5203,8 +5132,8 @@ void BossTw_TwinrovaArriveAtTarget(BossTw* this, GlobalContext* globalCtx) {
void BossTw_TwinrovaSetupChargeBlast(BossTw* this, GlobalContext* globalCtx) {
this->actionFunc = BossTw_TwinrovaChargeBlast;
Animation_MorphToPlayOnce(&this->skelAnime, &D_06036FBC, -5.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&D_06036FBC);
Animation_MorphToPlayOnce(&this->skelAnime, &object_tw_Anim_036FBC, -5.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&object_tw_Anim_036FBC);
this->csState1 = 0;
}
@ -5236,12 +5165,12 @@ void BossTw_TwinrovaSetupShootBlast(BossTw* this, GlobalContext* globalCtx) {
this->actionFunc = BossTw_TwinrovaShootBlast;
if (sTwinrovaBlastType == 0) {
Animation_MorphToPlayOnce(&this->skelAnime, &D_06022700, 0.0f);
Animation_MorphToPlayOnce(&this->skelAnime, &object_tw_Anim_022700, 0.0f);
} else {
Animation_MorphToPlayOnce(&this->skelAnime, &D_06023750, 0.0f);
Animation_MorphToPlayOnce(&this->skelAnime, &object_tw_Anim_023750, 0.0f);
}
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&D_06023750);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&object_tw_Anim_023750);
}
void BossTw_TwinrovaShootBlast(BossTw* this, GlobalContext* globalCtx) {
@ -5299,7 +5228,7 @@ void BossTw_TwinrovaShootBlast(BossTw* this, GlobalContext* globalCtx) {
void BossTw_TwinrovaSetupDoneBlastShoot(BossTw* this, GlobalContext* globalCtx) {
this->actionFunc = BossTw_TwinrovaDoneBlastShoot;
Animation_MorphToLoop(&this->skelAnime, &D_06032BF8, -10.0f);
Animation_MorphToLoop(&this->skelAnime, &object_tw_Anim_032BF8, -10.0f);
this->timers[1] = 60;
}
@ -5320,7 +5249,7 @@ void BossTw_TwinrovaDoneBlastShoot(BossTw* this, GlobalContext* globalCtx) {
void BossTw_TwinrovaDamage(BossTw* this, GlobalContext* globalCtx, u8 damage) {
if (this->actionFunc != BossTw_TwinrovaStun) {
Animation_MorphToPlayOnce(&this->skelAnime, &D_060338F0, -15.0f);
Animation_MorphToPlayOnce(&this->skelAnime, &object_tw_Anim_0338F0, -15.0f);
this->timers[0] = 150;
this->timers[1] = 20;
this->csState1 = 0;
@ -5328,8 +5257,8 @@ void BossTw_TwinrovaDamage(BossTw* this, GlobalContext* globalCtx, u8 damage) {
} else {
this->work[FOG_TIMER] = 10;
this->work[INVINC_TIMER] = 20;
Animation_MorphToPlayOnce(&this->skelAnime, &D_06024374, -3.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&D_06024374);
Animation_MorphToPlayOnce(&this->skelAnime, &object_tw_Anim_024374, -3.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&object_tw_Anim_024374);
this->csState1 = 1;
if ((s8)(this->actor.colChkInfo.health -= damage) < 0) {
@ -5391,12 +5320,12 @@ void BossTw_TwinrovaStun(BossTw* this, GlobalContext* globalCtx) {
if (this->csState1 == 0) {
if (this->timers[1] == 0) {
this->csState1 = 1;
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&D_060343B4);
Animation_Change(&this->skelAnime, &D_060343B4, 1.0f, 0.0f, this->workf[ANIM_SW_TGT], 3, 0.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&object_tw_Anim_0343B4);
Animation_Change(&this->skelAnime, &object_tw_Anim_0343B4, 1.0f, 0.0f, this->workf[ANIM_SW_TGT], 3, 0.0f);
}
} else if (Animation_OnFrame(&this->skelAnime, this->workf[ANIM_SW_TGT])) {
this->workf[ANIM_SW_TGT] = 1000.0f;
Animation_MorphToLoop(&this->skelAnime, &D_06035030, 0.0f);
Animation_MorphToLoop(&this->skelAnime, &object_tw_Anim_035030, 0.0f);
}
if (this->actor.bgCheckFlags & 1) {
@ -5409,8 +5338,8 @@ void BossTw_TwinrovaStun(BossTw* this, GlobalContext* globalCtx) {
}
void BossTw_TwinrovaSetupGetUp(BossTw* this, GlobalContext* globalCtx) {
Animation_MorphToPlayOnce(&this->skelAnime, &D_06035988, 0.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&D_06035988);
Animation_MorphToPlayOnce(&this->skelAnime, &object_tw_Anim_035988, 0.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&object_tw_Anim_035988);
this->actionFunc = BossTw_TwinrovaGetUp;
this->timers[0] = 50;
}
@ -5421,7 +5350,7 @@ void BossTw_TwinrovaGetUp(BossTw* this, GlobalContext* globalCtx) {
if (Animation_OnFrame(&this->skelAnime, this->workf[ANIM_SW_TGT])) {
this->workf[ANIM_SW_TGT] = 1000.0f;
Animation_MorphToLoop(&this->skelAnime, &D_06032BF8, 0.0f);
Animation_MorphToLoop(&this->skelAnime, &object_tw_Anim_032BF8, 0.0f);
}
if (this->timers[0] == 0) {
@ -5455,7 +5384,7 @@ void BossTw_TwinrovaSetupFly(BossTw* this, GlobalContext* globalCtx) {
this->actor.world.rot.y = Math_FAtan2F(xDiff, zDiff) * (32768 / M_PI);
xzDist = sqrtf(SQ(xDiff) + SQ(zDiff));
this->actor.world.rot.x = Math_FAtan2F(yDiff, xzDist) * (32768 / M_PI);
Animation_MorphToLoop(&this->skelAnime, &D_06032BF8, -10.0f);
Animation_MorphToLoop(&this->skelAnime, &object_tw_Anim_032BF8, -10.0f);
}
void BossTw_TwinrovaFly(BossTw* this, GlobalContext* globalCtx) {
@ -5494,7 +5423,7 @@ void BossTw_TwinrovaFly(BossTw* this, GlobalContext* globalCtx) {
void BossTw_TwinrovaSetupSpin(BossTw* this, GlobalContext* globalCtx) {
this->actionFunc = BossTw_TwinrovaSpin;
Animation_MorphToLoop(&this->skelAnime, &D_06032BF8, 0.0f);
Animation_MorphToLoop(&this->skelAnime, &object_tw_Anim_032BF8, 0.0f);
this->timers[0] = 20;
this->actor.speedXZ = 0.0f;
}
@ -5515,8 +5444,8 @@ void BossTw_TwinrovaSpin(BossTw* this, GlobalContext* globalCtx) {
void BossTw_TwinrovaSetupLaugh(BossTw* this, GlobalContext* globalCtx) {
this->actionFunc = BossTw_TwinrovaLaugh;
Animation_MorphToPlayOnce(&this->skelAnime, &D_0603A2D0, 0.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&D_0603A2D0);
Animation_MorphToPlayOnce(&this->skelAnime, &object_tw_Anim_03A2D0, 0.0f);
this->workf[ANIM_SW_TGT] = Animation_GetLastFrame(&object_tw_Anim_03A2D0);
this->actor.speedXZ = 0.0f;
}

View File

@ -7,6 +7,8 @@
#include "z_demo_6k.h"
#include "vt.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#include "objects/object_demo_6k/object_demo_6k.h"
#include "objects/object_gnd_magic/object_gnd_magic.h"
#include "overlays/actors/ovl_Eff_Dust/z_eff_dust.h"
#define FLAGS 0x00000010
@ -37,12 +39,6 @@ void func_80968B70(Actor* thisx, GlobalContext* globalCtx);
void func_80968FB0(Actor* thisx, GlobalContext* globalCtx);
void func_809691BC(Demo6K* this, GlobalContext* globalCtx, s32 params);
extern Gfx D_06001040[];
extern Gfx D_06001190[];
extern Gfx D_060022B0[];
extern Vtx D_060035E0[];
extern Gfx D_060039D0[];
const ActorInit Demo_6K_InitVars = {
ACTOR_DEMO_6K,
ACTORCAT_PROP,
@ -593,7 +589,7 @@ void func_80967FFC(Actor* thisx, GlobalContext* globalCtx) {
gDPPipeSync(POLY_XLU_DISP++);
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0x80, colors[i][0].r, colors[i][0].g, colors[i][0].b, 255);
gDPSetEnvColor(POLY_XLU_DISP++, colors[i][1].r, colors[i][1].g, colors[i][1].b, 255);
gSPDisplayList(POLY_XLU_DISP++, D_060022B0);
gSPDisplayList(POLY_XLU_DISP++, object_demo_6k_DL_0022B0);
}
// required to avoid optimizing out i
@ -609,7 +605,7 @@ void func_80968298(Actor* thisx, GlobalContext* globalCtx) {
s32 pad;
u32 timer1 = this->timer1;
f32 scale = this->unk_164 * this->unk_168;
Vtx* vertices = SEGMENTED_TO_VIRTUAL(D_060035E0);
Vtx* vertices = SEGMENTED_TO_VIRTUAL(object_demo_6kVtx_0035E0);
s32 i;
s32 i2;
u8 alpha;
@ -641,14 +637,14 @@ void func_80968298(Actor* thisx, GlobalContext* globalCtx) {
gSPSegment(POLY_XLU_DISP++, 0x08,
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, (0xFFF - (timer1 * 6)) & 0xFFF, (timer1 * 12) & 0xFFF, 128,
64, 1, (0xFFF - (timer1 * 6)) & 0xFFF, (timer1 * 12) & 0xFFF, 64, 32));
gSPDisplayList(POLY_XLU_DISP++, D_060039D0);
gSPDisplayList(POLY_XLU_DISP++, object_demo_6k_DL_0039D0);
Matrix_Scale(scale, scale, scale, MTXMODE_APPLY);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_demo_6k.c", 1189),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
func_80093D84(globalCtx->state.gfxCtx);
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 255, 255, 255, 255);
gDPSetEnvColor(POLY_XLU_DISP++, 50, 50, 50, 255);
gSPDisplayList(POLY_XLU_DISP++, D_06001040);
gSPDisplayList(POLY_XLU_DISP++, object_demo_6k_DL_001040);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_demo_6k.c", 1198);
}
@ -767,7 +763,7 @@ void func_80968B70(Actor* thisx, GlobalContext* globalCtx) {
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0x80, primColor[0], primColor[1], primColor[2], primColor[3]);
gDPSetEnvColor(POLY_XLU_DISP++, envColor[0], envColor[1], envColor[2], 128);
gSPDisplayList(POLY_XLU_DISP++, D_06001190);
gSPDisplayList(POLY_XLU_DISP++, object_gnd_magic_DL_001190);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_demo_6k.c", 1368);
}

View File

@ -10,6 +10,27 @@
#include "objects/object_ec/object_ec.h"
#include "objects/object_fish/object_fish.h"
#include "objects/object_oF1d_map/object_oF1d_map.h"
#include "objects/object_ma2/object_ma2.h"
#include "objects/object_in/object_in.h"
#include "objects/object_ta/object_ta.h"
#include "objects/object_fu/object_fu.h"
#include "objects/object_toryo/object_toryo.h"
#include "objects/object_daiku/object_daiku.h"
#include "objects/object_ge1/object_ge1.h"
#include "objects/object_kz/object_kz.h"
#include "objects/object_md/object_md.h"
#include "objects/object_niw/object_niw.h"
#include "objects/object_ds2/object_ds2.h"
#include "objects/object_os/object_os.h"
#include "objects/object_rs/object_rs.h"
#include "objects/object_gm/object_gm.h"
#include "objects/object_km1/object_km1.h"
#include "objects/object_kw1/object_kw1.h"
#include "objects/object_bji/object_bji.h"
#include "objects/object_ahg/object_ahg.h"
#include "objects/object_bob/object_bob.h"
#include "objects/object_bba/object_bba.h"
#include "objects/object_ane/object_ane.h"
#define FLAGS 0x00000010
@ -80,11 +101,41 @@ typedef enum {
} DemoEcDrawconfig;
static s16 sDrawObjects[] = {
OBJECT_IN, OBJECT_TA, OBJECT_FU, OBJECT_KM1, OBJECT_KW1, OBJECT_BJI, OBJECT_AHG,
OBJECT_BOB, OBJECT_BBA, OBJECT_TORYO, OBJECT_DAIKU, OBJECT_DAIKU, OBJECT_DAIKU, OBJECT_DAIKU,
OBJECT_KM1, OBJECT_KW1, OBJECT_GE1, OBJECT_GE1, OBJECT_GE1, OBJECT_ZO, OBJECT_KZ,
OBJECT_MD, OBJECT_NIW, OBJECT_NIW, OBJECT_NIW, OBJECT_ANE, OBJECT_DS2, OBJECT_OS,
OBJECT_FISH, OBJECT_RS, OBJECT_OF1D_MAP, OBJECT_OF1D_MAP, OBJECT_OF1D_MAP, OBJECT_OF1D_MAP, OBJECT_MA2,
/* 0 */ OBJECT_IN,
/* 1 */ OBJECT_TA,
/* 2 */ OBJECT_FU,
/* 3 */ OBJECT_KM1,
/* 4 */ OBJECT_KW1,
/* 5 */ OBJECT_BJI,
/* 6 */ OBJECT_AHG,
/* 7 */ OBJECT_BOB,
/* 8 */ OBJECT_BBA,
/* 9 */ OBJECT_TORYO,
/* 10 */ OBJECT_DAIKU,
/* 11 */ OBJECT_DAIKU,
/* 12 */ OBJECT_DAIKU,
/* 13 */ OBJECT_DAIKU,
/* 14 */ OBJECT_KM1,
/* 15 */ OBJECT_KW1,
/* 16 */ OBJECT_GE1,
/* 17 */ OBJECT_GE1,
/* 18 */ OBJECT_GE1,
/* 19 */ OBJECT_ZO,
/* 20 */ OBJECT_KZ,
/* 21 */ OBJECT_MD,
/* 22 */ OBJECT_NIW,
/* 23 */ OBJECT_NIW,
/* 24 */ OBJECT_NIW,
/* 25 */ OBJECT_ANE,
/* 26 */ OBJECT_DS2,
/* 27 */ OBJECT_OS,
/* 28 */ OBJECT_FISH,
/* 29 */ OBJECT_RS,
/* 30 */ OBJECT_OF1D_MAP,
/* 31 */ OBJECT_OF1D_MAP,
/* 32 */ OBJECT_OF1D_MAP,
/* 33 */ OBJECT_OF1D_MAP,
/* 34 */ OBJECT_MA2,
};
static s16 sAnimationObjects[] = {
@ -94,73 +145,8 @@ static s16 sAnimationObjects[] = {
OBJECT_EC, OBJECT_EC, OBJECT_EC, OBJECT_EC, OBJECT_EC, OBJECT_EC, OBJECT_GM, OBJECT_MA2,
};
// 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_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_RS
extern FlexSkeletonHeader D_06004868;
// Object_MA2
extern FlexSkeletonHeader D_06008D90;
// animations from other objects
extern AnimationHeader D_060002B8;
extern AnimationHeader D_06009EE0; // Object MA2
extern AnimationHeader D_06004390;
extern AnimationHeader D_060076C0;
extern AnimationHeader D_06005F20;
// mouth textures
extern u8 D_06004350[];
extern u8 D_06007AC0[];
extern u8 D_06006920[];
extern u8 D_060004C8[];
extern u8 D_060035D8[];
extern u8 D_06003770[];
// PostLimbDraw display lists
extern Gfx D_06005BD0[];
extern Gfx D_06005AC0[];
extern Gfx D_06005990[];
extern Gfx D_06005880[];
extern Gfx D_06009198[];
extern Gfx D_06009430[];
extern Gfx D_06009690[];
extern FlexSkeletonHeader object_bji_Skel_0000F0;
extern FlexSkeletonHeader object_ahg_Skel_0000F0;
void DemoEc_Destroy(Actor* thisx, GlobalContext* globalCtx) {
DemoEc* this = THIS;
@ -367,7 +353,7 @@ void DemoEc_SetNpcActionPosRot(DemoEc* this, GlobalContext* globalCtx, s32 actio
void DemoEc_InitIngo(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_UseDrawObject(this, globalCtx);
DemoEc_InitSkelAnime(this, globalCtx, &D_06013B88);
DemoEc_InitSkelAnime(this, globalCtx, &object_in_Skel_013B88);
DemoEc_UseAnimationObject(this, globalCtx);
DemoEc_ChangeAnimation(this, &gDemoEcIngoAnim, 0, 0.0f, false);
func_8096D64C(this, globalCtx);
@ -383,12 +369,12 @@ void DemoEc_UpdateIngo(DemoEc* this, GlobalContext* globalCtx) {
}
void DemoEc_DrawIngo(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_DrawSkeleton(this, globalCtx, &D_06004390, &D_06004350, 0, 0);
DemoEc_DrawSkeleton(this, globalCtx, &object_in_Tex_004390, &object_in_Tex_004350, 0, 0);
}
void DemoEc_InitTalon(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_UseDrawObject(this, globalCtx);
DemoEc_InitSkelAnime(this, globalCtx, &D_0600B7B8);
DemoEc_InitSkelAnime(this, globalCtx, &object_ta_Skel_00B7B8);
DemoEc_UseAnimationObject(this, globalCtx);
DemoEc_ChangeAnimation(this, &gDemoEcTalonAnim, 0, 0.0f, false);
func_8096D64C(this, globalCtx);
@ -404,12 +390,12 @@ void DemoEc_UpdateTalon(DemoEc* this, GlobalContext* globalCtx) {
}
void DemoEc_DrawTalon(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_DrawSkeleton(this, globalCtx, &D_060076C0, &D_06007AC0, NULL, NULL);
DemoEc_DrawSkeleton(this, globalCtx, &object_ta_Tex_0076C0, &object_ta_Tex_007AC0, NULL, NULL);
}
void DemoEc_InitWindmillMan(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_UseDrawObject(this, globalCtx);
DemoEc_InitSkelAnime(this, globalCtx, &D_06006C90);
DemoEc_InitSkelAnime(this, globalCtx, &gWindmillManSkel);
DemoEc_UseAnimationObject(this, globalCtx);
DemoEc_ChangeAnimation(this, &gDemoEcWindmillManAnim, 0, 0.0f, false);
func_8096D5D4(this, globalCtx);
@ -425,12 +411,12 @@ void DemoEc_UpdateWindmillMan(DemoEc* this, GlobalContext* globalCtx) {
}
void DemoEc_DrawWindmillMan(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_DrawSkeleton(this, globalCtx, &D_06005F20, &D_06006920, NULL, NULL);
DemoEc_DrawSkeleton(this, globalCtx, &gWindmillManEyeClosedTex, &gWindMillManMouthAngryTex, NULL, NULL);
}
void DemoEc_InitKokiriBoy(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_UseDrawObject(this, globalCtx);
DemoEc_InitSkelAnime(this, globalCtx, &D_060000F0);
DemoEc_InitSkelAnime(this, globalCtx, &gKm1Skel);
DemoEc_UseAnimationObject(this, globalCtx);
DemoEc_ChangeAnimation(this, &gDemoEcKokiriAnim, 0, 0.0f, false);
func_8096D5D4(this, globalCtx);
@ -441,7 +427,7 @@ void DemoEc_InitKokiriBoy(DemoEc* this, GlobalContext* globalCtx) {
void DemoEc_InitDancingKokiriBoy(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_UseDrawObject(this, globalCtx);
DemoEc_InitSkelAnime(this, globalCtx, &D_060000F0);
DemoEc_InitSkelAnime(this, globalCtx, &gKm1Skel);
DemoEc_UseAnimationObject(this, globalCtx);
DemoEc_ChangeAnimation(this, &gDemoEcDancingKokiriAnim, 0, 0.0f, false);
func_8096D5D4(this, globalCtx);
@ -469,7 +455,7 @@ void DemoEc_DrawKokiriBoy(DemoEc* this, GlobalContext* globalCtx) {
void DemoEc_InitKokiriGirl(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_UseDrawObject(this, globalCtx);
DemoEc_InitSkelAnime(this, globalCtx, &D_060000F0);
DemoEc_InitSkelAnime(this, globalCtx, &gKw1Skel);
DemoEc_UseAnimationObject(this, globalCtx);
DemoEc_ChangeAnimation(this, &gDemoEcKokiriAnim, 0, 0.0f, false);
func_8096D5D4(this, globalCtx);
@ -480,7 +466,7 @@ void DemoEc_InitKokiriGirl(DemoEc* this, GlobalContext* globalCtx) {
void DemoEc_InitDancingKokiriGirl(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_UseDrawObject(this, globalCtx);
DemoEc_InitSkelAnime(this, globalCtx, &D_060000F0);
DemoEc_InitSkelAnime(this, globalCtx, &gKw1Skel);
DemoEc_UseAnimationObject(this, globalCtx);
DemoEc_ChangeAnimation(this, &gDemoEcDancingKokiriAnim, 0, 0.0f, false);
func_8096D5D4(this, globalCtx);
@ -511,7 +497,7 @@ void DemoEc_DrawKokiriGirl(DemoEc* this, GlobalContext* globalCtx) {
}
void DemoEc_InitOldMan(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_UseDrawObject(this, globalCtx);
DemoEc_InitSkelAnime(this, globalCtx, &D_060000F0);
DemoEc_InitSkelAnime(this, globalCtx, &object_bji_Skel_0000F0);
DemoEc_UseAnimationObject(this, globalCtx);
DemoEc_ChangeAnimation(this, &gDemoEcOldManAnim, 0, 0.0f, false);
func_8096D5D4(this, globalCtx);
@ -539,7 +525,7 @@ void DemoEc_DrawOldMan(DemoEc* this, GlobalContext* globalCtx) {
void DemoEc_InitBeardedMan(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_UseDrawObject(this, globalCtx);
DemoEc_InitSkelAnime(this, globalCtx, &D_060000F0);
DemoEc_InitSkelAnime(this, globalCtx, &object_ahg_Skel_0000F0);
DemoEc_UseAnimationObject(this, globalCtx);
DemoEc_ChangeAnimation(this, &gDemoEcOldManAnim, 0, 0.0f, false);
func_8096D5D4(this, globalCtx);
@ -567,7 +553,7 @@ void DemoEc_DrawBeardedMan(DemoEc* this, GlobalContext* globalCtx) {
void DemoEc_InitWoman(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_UseDrawObject(this, globalCtx);
DemoEc_InitSkelAnime(this, globalCtx, &D_060000F0);
DemoEc_InitSkelAnime(this, globalCtx, &object_bob_Skel_0000F0);
DemoEc_UseAnimationObject(this, globalCtx);
DemoEc_ChangeAnimation(this, &gDemoEcOldManAnim, 0, 0.0f, false);
func_8096D5D4(this, globalCtx);
@ -593,7 +579,7 @@ void DemoEc_DrawWoman(DemoEc* this, GlobalContext* globalCtx) {
void DemoEc_InitOldWoman(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_UseDrawObject(this, globalCtx);
DemoEc_InitSkelAnime(this, globalCtx, &D_060000F0);
DemoEc_InitSkelAnime(this, globalCtx, &object_bba_Skel_0000F0);
DemoEc_UseAnimationObject(this, globalCtx);
DemoEc_ChangeAnimation(this, &gDemoEcOldManAnim, 0, 0.0f, false);
func_8096D5D4(this, globalCtx);
@ -609,12 +595,12 @@ void DemoEc_UpdateOldWoman(DemoEc* this, GlobalContext* globalCtx) {
}
void DemoEc_DrawOldWoman(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_DrawSkeleton(this, globalCtx, &D_060004C8, NULL, NULL, NULL);
DemoEc_DrawSkeleton(this, globalCtx, &object_bba_Tex_0004C8, NULL, NULL, NULL);
}
void DemoEc_InitBossCarpenter(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_UseDrawObject(this, globalCtx);
DemoEc_InitSkelAnime(this, globalCtx, &D_06007150);
DemoEc_InitSkelAnime(this, globalCtx, &object_toryo_Skel_007150);
DemoEc_UseAnimationObject(this, globalCtx);
DemoEc_ChangeAnimation(this, &gDemoEcCarpenterAnim, 0, 0.0f, false);
func_8096D5D4(this, globalCtx);
@ -635,7 +621,7 @@ void DemoEc_DrawBossCarpenter(DemoEc* this, GlobalContext* globalCtx) {
void DemoEc_InitCarpenter(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_UseDrawObject(this, globalCtx);
DemoEc_InitSkelAnime(this, globalCtx, &D_06007958);
DemoEc_InitSkelAnime(this, globalCtx, &object_daiku_Skel_007958);
DemoEc_UseAnimationObject(this, globalCtx);
DemoEc_ChangeAnimation(this, &gDemoEcCarpenterAnim, 0, 0.0f, false);
func_8096D5D4(this, globalCtx);
@ -678,13 +664,13 @@ s32 DemoEc_CarpenterOverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gf
Gfx* DemoEc_GetCarpenterPostLimbDList(DemoEc* this) {
switch (this->actor.params) {
case 10:
return D_06005BD0;
return object_daiku_DL_005BD0;
case 11:
return D_06005AC0;
return object_daiku_DL_005AC0;
case 12:
return D_06005990;
return object_daiku_DL_005990;
case 13:
return D_06005880;
return object_daiku_DL_005880;
default:
osSyncPrintf(VT_FGCOL(RED) "かつらが無い!!!!!!!!!!!!!!!!\n" VT_RST);
return 0;
@ -708,7 +694,7 @@ void DemoEc_DrawCarpenter(DemoEc* this, GlobalContext* globalCtx) {
void DemoEc_InitGerudo(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_UseDrawObject(this, globalCtx);
DemoEc_InitSkelAnime(this, globalCtx, &D_06000330);
DemoEc_InitSkelAnime(this, globalCtx, &gGerudoWhiteSkel);
DemoEc_UseAnimationObject(this, globalCtx);
DemoEc_ChangeAnimation(this, &gDemoEcGerudoAnim, 0, 0.0f, false);
func_8096D5D4(this, globalCtx);
@ -727,11 +713,11 @@ void DemoEc_UpdateGerudo(DemoEc* this, GlobalContext* globalCtx) {
Gfx* DemoEc_GetGerudoPostLimbDList(DemoEc* this) {
switch (this->actor.params) {
case 16:
return D_06009198;
return gGerudoWhiteHairstyleBobDL;
case 17:
return D_06009430;
return gGerudoWhiteHairstyleStraightFringeDL;
case 18:
return D_06009690;
return gGerudoWhiteHairstyleSpikyDL;
default:
osSyncPrintf(VT_FGCOL(RED) "かつらが無い!!!!!!!!!!!!!!!!\n" VT_RST);
return NULL;
@ -785,7 +771,7 @@ void DemoEc_DrawDancingZora(DemoEc* this, GlobalContext* globalCtx) {
void DemoEc_InitKingZora(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_UseDrawObject(this, globalCtx);
DemoEc_InitSkelAnime(this, globalCtx, &D_060086D0);
DemoEc_InitSkelAnime(this, globalCtx, &object_kz_Skel_0086D0);
DemoEc_UseAnimationObject(this, globalCtx);
DemoEc_ChangeAnimation(this, &gDemoEcKingZoraAnim, 0, 0.0f, false);
func_8096D5D4(this, globalCtx);
@ -870,7 +856,7 @@ void DemoEc_DrawKingZora(DemoEc* this, GlobalContext* globalCtx) {
void DemoEc_InitMido(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_UseDrawObject(this, globalCtx);
DemoEc_InitSkelAnime(this, globalCtx, &D_06007FB8);
DemoEc_InitSkelAnime(this, globalCtx, &gMidoSkel);
DemoEc_UseAnimationObject(this, globalCtx);
DemoEc_ChangeAnimation(this, &gDemoEcMidoAnim, 0, 0.0f, false);
func_8096D5D4(this, globalCtx);
@ -937,7 +923,7 @@ void DemoEc_InitCucco(DemoEc* this, GlobalContext* globalCtx) {
AnimationHeader* animation;
DemoEc_UseDrawObject(this, globalCtx);
DemoEc_InitSkelAnime(this, globalCtx, &D_06002530);
DemoEc_InitSkelAnime(this, globalCtx, &gCuccoSkel);
DemoEc_UseAnimationObject(this, globalCtx);
if (this->actor.params == 22) {
@ -967,7 +953,7 @@ void DemoEc_DrawCucco(DemoEc* this, GlobalContext* globalCtx) {
void DemoEc_InitCuccoLady(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_UseDrawObject(this, globalCtx);
DemoEc_InitSkelAnime(this, globalCtx, &D_060000F0);
DemoEc_InitSkelAnime(this, globalCtx, &gCuccoLadySkel);
DemoEc_UseAnimationObject(this, globalCtx);
DemoEc_ChangeAnimation(this, &gDemoEcCuccoLadyAnim, 0, 0.0f, false);
func_8096D5D4(this, globalCtx);
@ -993,7 +979,7 @@ void DemoEc_DrawCuccoLady(DemoEc* this, GlobalContext* globalCtx) {
void DemoEc_InitPotionShopOwner(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_UseDrawObject(this, globalCtx);
DemoEc_InitSkelAnime(this, globalCtx, &D_06004258);
DemoEc_InitSkelAnime(this, globalCtx, &object_ds2_Skel_004258);
DemoEc_UseAnimationObject(this, globalCtx);
DemoEc_ChangeAnimation(this, &gDemoEcPotionShopOwnerAnim, 0, 0.0f, false);
func_8096D5D4(this, globalCtx);
@ -1019,7 +1005,7 @@ void DemoEc_DrawPotionShopOwner(DemoEc* this, GlobalContext* globalCtx) {
void DemoEc_InitMaskShopOwner(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_UseDrawObject(this, globalCtx);
DemoEc_InitSkelAnime(this, globalCtx, &D_06004658);
DemoEc_InitSkelAnime(this, globalCtx, &object_os_Skel_004658);
DemoEc_UseAnimationObject(this, globalCtx);
DemoEc_ChangeAnimation(this, &gDemoEcPotionShopOwnerAnim, 0, 0.0f, false);
func_8096D5D4(this, globalCtx);
@ -1035,7 +1021,7 @@ void DemoEc_UpdateMaskShopOwner(DemoEc* this, GlobalContext* globalCtx) {
}
void DemoEc_DrawMaskShopOwner(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_DrawSkeleton(this, globalCtx, &D_060035D8, NULL, NULL, NULL);
DemoEc_DrawSkeleton(this, globalCtx, &gOsEyeClosedTex, NULL, NULL, NULL);
}
void DemoEc_InitFishingOwner(DemoEc* this, GlobalContext* globalCtx) {
@ -1079,7 +1065,7 @@ void DemoEc_DrawFishingOwner(DemoEc* this, GlobalContext* globalCtx) {
void DemoEc_InitBombchuShopOwner(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_UseDrawObject(this, globalCtx);
DemoEc_InitSkelAnime(this, globalCtx, &D_06004868);
DemoEc_InitSkelAnime(this, globalCtx, &object_rs_Skel_004868);
DemoEc_UseAnimationObject(this, globalCtx);
DemoEc_ChangeAnimation(this, &gDemoEcPotionShopOwnerAnim, 0, 0.0f, false);
func_8096D5D4(this, globalCtx);
@ -1096,7 +1082,8 @@ void DempEc_UpdateBombchuShopOwner(DemoEc* this, GlobalContext* globalCtx) {
}
void DemoEc_DrawBombchuShopOwner(DemoEc* this, GlobalContext* globalCtx) {
static void* eyeTextures[] = { 0x06003968, 0x06003D68, 0x06004168 };
static void* eyeTextures[] = { gBombchuShopkeeperEyeOpenTex, gBombchuShopkeeperEyeHalfTex,
gBombchuShopkeeperEyeClosedTex };
s32 eyeTexIndex = this->eyeTexIndex;
void* eyeTexture = eyeTextures[eyeTexIndex];
@ -1124,7 +1111,7 @@ void DemoEc_InitGorons(DemoEc* this, GlobalContext* globalCtx) {
goronScale = 15.0f;
} else {
goronScale = 5.0f;
animation = &D_060002B8;
animation = &object_gm_Anim_0002B8;
}
DemoEc_ChangeAnimation(this, animation, 0, 0.0f, false);
@ -1156,9 +1143,9 @@ void DemoEc_DrawGorons(DemoEc* this, GlobalContext* globalCtx) {
void DemoEc_InitMalon(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_UseDrawObject(this, globalCtx);
DemoEc_InitSkelAnime(this, globalCtx, &D_06008D90);
DemoEc_InitSkelAnime(this, globalCtx, &object_ma2_Skel_008D90);
DemoEc_UseAnimationObject(this, globalCtx);
DemoEc_ChangeAnimation(this, &D_06009EE0, 0, 0.0f, false);
DemoEc_ChangeAnimation(this, &object_ma2_Anim_009EE0, 0, 0.0f, false);
func_8096D5D4(this, globalCtx);
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f);
this->updateMode = EC_UPDATE_MALON;
@ -1173,49 +1160,49 @@ void DemoEc_UpdateMalon(DemoEc* this, GlobalContext* globalCtx) {
}
void DemoEc_DrawMalon(DemoEc* this, GlobalContext* globalCtx) {
static void* eyeTextures[] = { 0x06002570, 0x06002C70, 0x06003070 };
static void* eyeTextures[] = { object_ma2_Tex_002570, object_ma2_Tex_002C70, object_ma2_Tex_003070 };
s32 eyeTexIndex = this->eyeTexIndex;
void* eyeTexture = eyeTextures[eyeTexIndex];
DemoEc_DrawSkeleton(this, globalCtx, eyeTexture, &D_06003770, NULL, NULL);
DemoEc_DrawSkeleton(this, globalCtx, eyeTexture, &object_ma2_Tex_003770, NULL, NULL);
}
static DemoEcInitFunc sInitFuncs[] = {
DemoEc_InitIngo,
DemoEc_InitTalon,
DemoEc_InitWindmillMan,
DemoEc_InitKokiriBoy,
DemoEc_InitKokiriGirl,
DemoEc_InitOldMan,
DemoEc_InitBeardedMan,
DemoEc_InitWoman,
DemoEc_InitOldWoman,
DemoEc_InitBossCarpenter,
DemoEc_InitCarpenter,
DemoEc_InitCarpenter,
DemoEc_InitCarpenter,
DemoEc_InitCarpenter,
DemoEc_InitDancingKokiriBoy,
DemoEc_InitDancingKokiriGirl,
DemoEc_InitGerudo,
DemoEc_InitGerudo,
DemoEc_InitGerudo,
DemoEc_InitDancingZora,
DemoEc_InitKingZora,
DemoEc_InitMido,
DemoEc_InitCucco,
DemoEc_InitCucco,
DemoEc_InitCucco,
DemoEc_InitCuccoLady,
DemoEc_InitPotionShopOwner,
DemoEc_InitMaskShopOwner,
DemoEc_InitFishingOwner,
DemoEc_InitBombchuShopOwner,
DemoEc_InitGorons,
DemoEc_InitGorons,
DemoEc_InitGorons,
DemoEc_InitGorons,
DemoEc_InitMalon,
/* 0 */ DemoEc_InitIngo,
/* 1 */ DemoEc_InitTalon,
/* 2 */ DemoEc_InitWindmillMan,
/* 3 */ DemoEc_InitKokiriBoy,
/* 4 */ DemoEc_InitKokiriGirl,
/* 5 */ DemoEc_InitOldMan,
/* 6 */ DemoEc_InitBeardedMan,
/* 7 */ DemoEc_InitWoman,
/* 8 */ DemoEc_InitOldWoman,
/* 9 */ DemoEc_InitBossCarpenter,
/* 10 */ DemoEc_InitCarpenter,
/* 11 */ DemoEc_InitCarpenter,
/* 12 */ DemoEc_InitCarpenter,
/* 13 */ DemoEc_InitCarpenter,
/* 14 */ DemoEc_InitDancingKokiriBoy,
/* 15 */ DemoEc_InitDancingKokiriGirl,
/* 16 */ DemoEc_InitGerudo,
/* 17 */ DemoEc_InitGerudo,
/* 18 */ DemoEc_InitGerudo,
/* 19 */ DemoEc_InitDancingZora,
/* 20 */ DemoEc_InitKingZora,
/* 21 */ DemoEc_InitMido,
/* 22 */ DemoEc_InitCucco,
/* 23 */ DemoEc_InitCucco,
/* 24 */ DemoEc_InitCucco,
/* 25 */ DemoEc_InitCuccoLady,
/* 26 */ DemoEc_InitPotionShopOwner,
/* 27 */ DemoEc_InitMaskShopOwner,
/* 28 */ DemoEc_InitFishingOwner,
/* 29 */ DemoEc_InitBombchuShopOwner,
/* 30 */ DemoEc_InitGorons,
/* 31 */ DemoEc_InitGorons,
/* 32 */ DemoEc_InitGorons,
/* 33 */ DemoEc_InitGorons,
/* 34 */ DemoEc_InitMalon,
};
void DemoEc_InitNpc(DemoEc* this, GlobalContext* globalCtx) {

View File

@ -6,6 +6,7 @@
#include "z_demo_ext.h"
#include "vt.h"
#include "objects/object_fhg/object_fhg.h"
#define FLAGS 0x00000010
@ -27,8 +28,6 @@ void DemoExt_Destroy(Actor* thisx, GlobalContext* globalCtx);
void DemoExt_Update(Actor* thisx, GlobalContext* globalCtx);
void DemoExt_Draw(Actor* thisx, GlobalContext* globalCtx);
extern Gfx D_0600FAA0[];
void DemoExt_Destroy(Actor* thisx, GlobalContext* globalCtx) {
}
@ -213,7 +212,7 @@ void DemoExt_DrawVortex(Actor* thisx, GlobalContext* globalCtx) {
Gfx_TwoTexScroll(gfxCtx, 0, curScroll[0], curScroll[1], 0x40, 0x40, 1, curScroll[2], curScroll[3], 0x40, 0x40));
gSPMatrix(POLY_XLU_DISP++, mtx, G_MTX_PUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_0600FAA0);
gSPDisplayList(POLY_XLU_DISP++, gPhantomWarpDL);
gSPPopMatrix(POLY_XLU_DISP++, G_MTX_MODELVIEW);
CLOSE_DISPS(gfxCtx, "../z_demo_ext.c", 512);

View File

@ -7,6 +7,7 @@
#include "z_demo_im.h"
#include "overlays/actors/ovl_En_Arrow/z_en_arrow.h"
#include "scenes/indoors/nakaniwa/nakaniwa_scene.h"
#include "objects/object_im/object_im.h"
#include "vt.h"
#define FLAGS 0x00000011
@ -102,19 +103,6 @@ const ActorInit Demo_Im_InitVars = {
(ActorFunc)DemoIm_Draw,
};
extern AnimationHeader D_06000710;
extern AnimationHeader D_06000AFC;
extern Gfx D_0600EDE8[];
extern AnimationHeader D_060014E4;
extern AnimationHeader D_06001868;
extern FlexSkeletonHeader D_0600F788;
extern AnimationHeader D_0600FB10;
extern AnimationHeader D_060101C8;
extern AnimationHeader D_06010EE0;
extern AnimationHeader D_0601182C;
extern AnimationHeader D_06011C08;
extern AnimationHeader D_06012218;
void func_80984BE0(DemoIm* this) {
s32 pad[3];
s16* unk_25E = &this->unk_25E;
@ -307,7 +295,7 @@ void func_80985280(DemoIm* this, AnimationHeader* animHeaderSeg, u8 arg2, f32 tr
}
void func_80985310(DemoIm* this, GlobalContext* globalCtx) {
func_80985280(this, &D_06001868, 0, 0.0f, 0);
func_80985280(this, &object_im_Anim_001868, 0, 0.0f, 0);
this->actor.shape.yOffset = -10000.0f;
}
@ -351,8 +339,8 @@ void func_8098544C(DemoIm* this, GlobalContext* globalCtx) {
void func_809854DC(DemoIm* this, GlobalContext* globalCtx) {
if ((globalCtx->csCtx.state != CS_STATE_IDLE) && (globalCtx->csCtx.npcActions[5] != NULL) &&
(globalCtx->csCtx.npcActions[5]->action == 2)) {
Animation_Change(&this->skelAnime, &D_06001868, 1.0f, 0.0f, Animation_GetLastFrame(&D_06001868), ANIMMODE_LOOP,
0.0f);
Animation_Change(&this->skelAnime, &object_im_Anim_001868, 1.0f, 0.0f,
Animation_GetLastFrame(&object_im_Anim_001868), ANIMMODE_LOOP, 0.0f);
this->action = 2;
this->drawConfig = 1;
func_80985358(this, globalCtx);
@ -369,16 +357,16 @@ void func_8098557C(DemoIm* this) {
void func_809855A8(DemoIm* this, GlobalContext* globalCtx) {
if ((globalCtx->csCtx.state != CS_STATE_IDLE) && (globalCtx->csCtx.npcActions[5] != NULL) &&
(globalCtx->csCtx.npcActions[5]->action == 3)) {
Animation_Change(&this->skelAnime, &D_06000710, 1.0f, 0.0f, Animation_GetLastFrame(&D_06000710), ANIMMODE_ONCE,
4.0f);
Animation_Change(&this->skelAnime, &object_im_Anim_000710, 1.0f, 0.0f,
Animation_GetLastFrame(&object_im_Anim_000710), ANIMMODE_ONCE, 4.0f);
this->action = 4;
}
}
void func_80985640(DemoIm* this, s32 arg1) {
if (arg1 != 0) {
Animation_Change(&this->skelAnime, &D_06000AFC, 1.0f, 0.0f, Animation_GetLastFrame(&D_06000AFC), ANIMMODE_LOOP,
0.0f);
Animation_Change(&this->skelAnime, &object_im_Anim_000AFC, 1.0f, 0.0f,
Animation_GetLastFrame(&object_im_Anim_000AFC), ANIMMODE_LOOP, 0.0f);
this->action = 5;
}
}
@ -436,7 +424,7 @@ void func_80985830(DemoIm* this, GlobalContext* globalCtx) {
}
void func_80985860(DemoIm* this, GlobalContext* globalCtx) {
func_80985280(this, &D_06001868, 0, 0.0f, 0);
func_80985280(this, &object_im_Anim_001868, 0, 0.0f, 0);
this->action = 7;
this->actor.shape.shadowAlpha = 0;
}
@ -452,8 +440,8 @@ void func_809858C8(DemoIm* this, GlobalContext* globalCtx) {
void func_80985948(DemoIm* this, GlobalContext* globalCtx) {
if (func_809850E8(this, globalCtx, 4, 5)) {
Animation_Change(&this->skelAnime, &D_06011C08, 1.0f, 0.0f, Animation_GetLastFrame(&D_06011C08), ANIMMODE_ONCE,
0.0f);
Animation_Change(&this->skelAnime, &object_im_Anim_011C08, 1.0f, 0.0f,
Animation_GetLastFrame(&object_im_Anim_011C08), ANIMMODE_ONCE, 0.0f);
this->action = 8;
this->drawConfig = 2;
this->unk_26C = 0;
@ -492,8 +480,8 @@ void func_809859E0(DemoIm* this, GlobalContext* globalCtx) {
void func_80985B34(DemoIm* this, GlobalContext* globalCtx) {
if (func_80985134(this, globalCtx, 4, 5)) {
Animation_Change(&this->skelAnime, &D_06012218, 1.0f, 0.0f, Animation_GetLastFrame(&D_06012218), ANIMMODE_ONCE,
-8.0f);
Animation_Change(&this->skelAnime, &object_im_Anim_012218, 1.0f, 0.0f,
Animation_GetLastFrame(&object_im_Anim_012218), ANIMMODE_ONCE, -8.0f);
this->action = 8;
this->drawConfig = 2;
this->unk_268 = kREG(5) + 10.0f;
@ -549,7 +537,7 @@ void func_80985CE8(DemoIm* this, GlobalContext* globalCtx) {
}
void func_80985E60(DemoIm* this, GlobalContext* globalCtx) {
func_80985280(this, &D_06001868, 0, 0.0f, 0);
func_80985280(this, &object_im_Anim_001868, 0, 0.0f, 0);
this->action = 10;
this->unk_280 = 1;
}
@ -563,7 +551,7 @@ void func_80985EAC(DemoIm* this, GlobalContext* globalCtx) {
}
void func_80985EF4(DemoIm* this) {
if (!Animation_OnFrame(&this->skelAnime, Animation_GetLastFrame(&D_0601182C) - 1.0f)) {
if (!Animation_OnFrame(&this->skelAnime, Animation_GetLastFrame(&object_im_Anim_01182C) - 1.0f)) {
func_80985060(this);
}
}
@ -574,8 +562,8 @@ void func_80985F54(DemoIm* this) {
}
void func_80985F64(DemoIm* this, GlobalContext* globalCtx) {
Animation_Change(&this->skelAnime, &D_06001868, 1.0f, 0.0f, Animation_GetLastFrame(&D_06001868), ANIMMODE_LOOP,
0.0f);
Animation_Change(&this->skelAnime, &object_im_Anim_001868, 1.0f, 0.0f,
Animation_GetLastFrame(&object_im_Anim_001868), ANIMMODE_LOOP, 0.0f);
func_80985180(this, globalCtx, 5);
this->action = 11;
this->drawConfig = 1;
@ -583,15 +571,15 @@ void func_80985F64(DemoIm* this, GlobalContext* globalCtx) {
void func_80985FE8(DemoIm* this, s32 arg1) {
if (arg1 != 0) {
Animation_Change(&this->skelAnime, &D_0601182C, 1.0f, 0.0f, Animation_GetLastFrame(&D_0601182C), ANIMMODE_LOOP,
-8.0f);
Animation_Change(&this->skelAnime, &object_im_Anim_01182C, 1.0f, 0.0f,
Animation_GetLastFrame(&object_im_Anim_01182C), ANIMMODE_LOOP, -8.0f);
}
}
void func_8098604C(DemoIm* this) {
f32 frameCount = Animation_GetLastFrame(&D_06010EE0);
f32 frameCount = Animation_GetLastFrame(&object_im_Anim_010EE0);
Animation_Change(&this->skelAnime, &D_06010EE0, 1.0f, 0.0f, frameCount, ANIMMODE_ONCE, -8.0f);
Animation_Change(&this->skelAnime, &object_im_Anim_010EE0, 1.0f, 0.0f, frameCount, ANIMMODE_ONCE, -8.0f);
this->action = 12;
this->drawConfig = 1;
this->unk_2D0 = 1;
@ -604,15 +592,15 @@ void func_809860C8(DemoIm* this) {
void func_809860DC(DemoIm* this, s32 arg1) {
if (arg1 != 0) {
Animation_Change(&this->skelAnime, &D_06001868, 1.0f, 0.0f, Animation_GetLastFrame(&D_06001868), ANIMMODE_LOOP,
-8.0f);
Animation_Change(&this->skelAnime, &object_im_Anim_001868, 1.0f, 0.0f,
Animation_GetLastFrame(&object_im_Anim_001868), ANIMMODE_LOOP, -8.0f);
this->unk_2D0 = 0;
}
}
void func_80986148(DemoIm* this) {
Animation_Change(&this->skelAnime, &D_06010EE0, -1.0f, Animation_GetLastFrame(&D_06010EE0), 0.0f, ANIMMODE_ONCE,
-8.0f);
Animation_Change(&this->skelAnime, &object_im_Anim_010EE0, -1.0f, Animation_GetLastFrame(&object_im_Anim_010EE0),
0.0f, ANIMMODE_ONCE, -8.0f);
this->action = 14;
this->drawConfig = 1;
}
@ -630,8 +618,8 @@ void func_809861C4(DemoIm* this, GlobalContext* globalCtx) {
func_80986148(this);
break;
case 7:
Animation_Change(&this->skelAnime, &D_0601182C, 1.0f, 0.0f, Animation_GetLastFrame(&D_0601182C),
ANIMMODE_LOOP, -8.0f);
Animation_Change(&this->skelAnime, &object_im_Anim_01182C, 1.0f, 0.0f,
Animation_GetLastFrame(&object_im_Anim_01182C), ANIMMODE_LOOP, -8.0f);
this->action = 12;
break;
default:
@ -722,7 +710,7 @@ void func_809864D4(DemoIm* this, GlobalContext* globalCtx) {
}
void func_8098652C(DemoIm* this, GlobalContext* globalCtx) {
func_80985280(this, &D_06001868, 0, 0.0f, 0);
func_80985280(this, &object_im_Anim_001868, 0, 0.0f, 0);
this->action = 15;
}
@ -765,16 +753,16 @@ void func_80986700(DemoIm* this) {
}
void func_80986710(DemoIm* this, GlobalContext* globalCtx) {
Animation_Change(&this->skelAnime, &D_06001868, 1.0f, 0.0f, Animation_GetLastFrame(&D_06001868), ANIMMODE_LOOP,
0.0f);
Animation_Change(&this->skelAnime, &object_im_Anim_001868, 1.0f, 0.0f,
Animation_GetLastFrame(&object_im_Anim_001868), ANIMMODE_LOOP, 0.0f);
func_80985180(this, globalCtx, 5);
this->action = 16;
this->drawConfig = 1;
}
void func_80986794(DemoIm* this) {
Animation_Change(&this->skelAnime, &D_060014E4, 1.0f, 0.0f, Animation_GetLastFrame(&D_060014E4), ANIMMODE_ONCE,
-8.0f);
Animation_Change(&this->skelAnime, &object_im_Anim_0014E4, 1.0f, 0.0f,
Animation_GetLastFrame(&object_im_Anim_0014E4), ANIMMODE_ONCE, -8.0f);
this->action = 17;
this->drawConfig = 1;
}
@ -831,7 +819,7 @@ void func_80986948(DemoIm* this, GlobalContext* globalCtx) {
}
void func_809869B0(DemoIm* this, GlobalContext* globalCtx) {
func_80985280(this, &D_06001868, 0, 0.0f, 0);
func_80985280(this, &object_im_Anim_001868, 0, 0.0f, 0);
this->action = 18;
this->actor.shape.shadowAlpha = 0;
}
@ -1001,7 +989,7 @@ void func_80986FA8(DemoIm* this, GlobalContext* globalCtx) {
}
void func_80987018(DemoIm* this, GlobalContext* globalCtx) {
func_80985280(this, &D_06001868, 0, 0.0f, 0);
func_80985280(this, &object_im_Anim_001868, 0, 0.0f, 0);
this->action = 27;
this->drawConfig = 0;
this->actor.shape.shadowAlpha = 0;
@ -1036,13 +1024,13 @@ void func_80987128(DemoIm* this) {
}
void func_80987174(DemoIm* this) {
func_80985280(this, &D_060101C8, 2, -8.0f, 0);
func_80985280(this, &object_im_Anim_0101C8, 2, -8.0f, 0);
this->action = 30;
}
void func_809871B4(DemoIm* this, s32 arg1) {
if (arg1 != 0) {
func_80985280(this, &D_0600FB10, 0, 0.0f, 0);
func_80985280(this, &object_im_Anim_00FB10, 0, 0.0f, 0);
}
}
@ -1112,7 +1100,8 @@ void DemoIm_Init(Actor* thisx, GlobalContext* globalCtx) {
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 30.0f);
func_80984D00(thisx, globalCtx);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_0600F788, NULL, this->jointTable, this->morphTable, 17);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &object_im_Skel_00F788, NULL, this->jointTable, this->morphTable,
17);
thisx->flags &= ~1;
switch (this->actor.params) {
@ -1161,7 +1150,7 @@ s32 DemoIm_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList
}
if ((*unk_2D0 != 0) && (limbIndex == 15)) {
*dList = D_0600EDE8;
*dList = object_im_DL_00EDE8;
}
return false;

View File

@ -7,6 +7,9 @@
#include "z_door_killer.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#include "objects/object_hidan_objects/object_hidan_objects.h"
#include "objects/object_mizu_objects/object_mizu_objects.h"
#include "objects/object_haka_door/object_haka_door.h"
#include "objects/object_door_killer/object_door_killer.h"
#define FLAGS 0x00000010
@ -28,8 +31,6 @@ void DoorKiller_SetProperties(DoorKiller* this, GlobalContext* globalCtx);
void DoorKiller_DrawDoor(Actor* thisx, GlobalContext* globalCtx);
void DoorKiller_DrawRubble(Actor* thisx, GlobalContext* globalCtx);
extern FlexSkeletonHeader D_06001BC8;
const ActorInit Door_Killer_InitVars = {
ACTOR_DOOR_KILLER,
ACTORCAT_BG,
@ -91,8 +92,8 @@ static ColliderJntSphInit sJntSphInit = {
static DoorKillerTextureEntry sDoorTextures[4] = {
{ OBJECT_HIDAN_OBJECTS, gFireTempleDoorKillerTex },
{ OBJECT_MIZU_OBJECTS, 0x060035C0 },
{ OBJECT_HAKA_DOOR, 0x06000000 },
{ OBJECT_MIZU_OBJECTS, object_mizu_objects_Tex_0035C0 },
{ OBJECT_HAKA_DOOR, object_haka_door_Tex_000000 },
{ OBJECT_GAMEPLAY_KEEP, gWoodenDoorTex },
};
@ -125,7 +126,8 @@ void DoorKiller_Init(Actor* thisx, GlobalContext* globalCtx2) {
case DOOR_KILLER_DOOR:
// `jointTable` is used for both the `jointTable` and `morphTable` args here. Because this actor doesn't
// play any animations it does not cause problems, but it would need to be changed otherwise.
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_06001BC8, NULL, this->jointTable, this->jointTable, 9);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &object_door_killer_Skel_001BC8, NULL, this->jointTable,
this->jointTable, 9);
this->actionFunc = DoorKiller_SetProperties;
DoorKiller_SetProperties(this, globalCtx);
@ -512,7 +514,8 @@ void DoorKiller_DrawDoor(Actor* thisx, GlobalContext* globalCtx) {
}
void DoorKiller_DrawRubble(Actor* thisx, GlobalContext* globalCtx) {
static Gfx* dLists[] = { 0x06001250, 0x06001550, 0x060017B8, 0x06001A58 };
static Gfx* dLists[] = { object_door_killer_DL_001250, object_door_killer_DL_001550, object_door_killer_DL_0017B8,
object_door_killer_DL_001A58 };
s32 rubblePieceIndex = (thisx->params & 0xFF) - 1;
DoorKiller* this = THIS;

View File

@ -5,6 +5,7 @@
*/
#include "z_door_toki.h"
#include "objects/object_toki_objects/object_toki_objects.h"
#define FLAGS 0x00000000
@ -26,8 +27,6 @@ const ActorInit Door_Toki_InitVars = {
NULL,
};
extern CollisionHeader D_06007888;
static InitChainEntry sInitChain[] = {
ICHAIN_VEC3F_DIV1000(scale, 1000, ICHAIN_STOP),
};
@ -39,7 +38,7 @@ void DoorToki_Init(Actor* thisx, GlobalContext* globalCtx) {
Actor_ProcessInitChain(&this->dyna.actor, sInitChain);
DynaPolyActor_Init(&this->dyna, DPM_UNK);
CollisionHeader_GetVirtual(&D_06007888, &colHeader);
CollisionHeader_GetVirtual(&gDoorTokiCol, &colHeader);
this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, &this->dyna.actor, colHeader);
}

View File

@ -1,4 +1,5 @@
#include "z_efc_erupc.h"
#include "objects/object_efc_erupc/object_efc_erupc.h"
#define FLAGS 0x00000030
@ -15,11 +16,6 @@ void EfcErupc_UpdateParticles(EfcErupc* this, GlobalContext* globalCtx);
void EfcErupc_AddParticle(EfcErupcParticles* particles, Vec3f* pos, Vec3f* vel, Vec3f* accel, f32 scaleFactor);
void EfcErupc_InitParticles(EfcErupcParticles* particles);
extern Gfx D_06001720[];
extern Gfx D_06002570[];
extern Gfx D_06002760[];
extern Gfx D_060027D8[];
const ActorInit Efc_Erupc_InitVars = {
ACTOR_EFC_ERUPC,
ACTORCAT_ITEMACTION,
@ -143,7 +139,7 @@ void EfcErupc_Draw(Actor* thisx, GlobalContext* globalCtx) {
if (globalCtx->csCtx.state != 0) {
if ((globalCtx->csCtx.npcActions[1] != 0) && (globalCtx->csCtx.npcActions[1]->action == 2)) {
gSPDisplayList(POLY_XLU_DISP++, D_06002570);
gSPDisplayList(POLY_XLU_DISP++, object_efc_erupc_DL_002570);
}
}
Matrix_Pop();
@ -157,7 +153,7 @@ void EfcErupc_Draw(Actor* thisx, GlobalContext* globalCtx) {
if ((csAction == 2) || (csAction == 3)) {
gDPSetPrimColor(POLY_XLU_DISP++, 0x80, 0x80, 255, 255, 200, 255);
gDPSetEnvColor(POLY_XLU_DISP++, 100, 0, 0, 255);
gSPDisplayList(POLY_XLU_DISP++, D_06001720);
gSPDisplayList(POLY_XLU_DISP++, object_efc_erupc_DL_001720);
}
}
}
@ -174,7 +170,7 @@ void EfcErupc_DrawParticles(EfcErupcParticles* particles, GlobalContext* globalC
for (i = 0; i < EFC_ERUPC_NUM_PARTICLES; i++, particles++) {
if (particles->isActive) {
func_80093D84(globalCtx->state.gfxCtx);
gSPDisplayList(POLY_XLU_DISP++, D_06002760);
gSPDisplayList(POLY_XLU_DISP++, object_efc_erupc_DL_002760);
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, particles->color.r, particles->color.g, particles->color.b,
particles->alpha);
gDPSetEnvColor(POLY_XLU_DISP++, 150, 0, 0, 0);
@ -184,7 +180,7 @@ void EfcErupc_DrawParticles(EfcErupcParticles* particles, GlobalContext* globalC
Matrix_Scale(particles->scale, particles->scale, 1.0f, MTXMODE_APPLY);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(gfxCtx, "../z_efc_erupc.c", 393),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_060027D8);
gSPDisplayList(POLY_XLU_DISP++, object_efc_erupc_DL_0027D8);
}
}
CLOSE_DISPS(gfxCtx, "../z_efc_erupc.c", 399);

View File

@ -5,6 +5,7 @@
*/
#include "z_en_ba.h"
#include "objects/object_bxa/object_bxa.h"
#define FLAGS 0x00000015
@ -24,9 +25,6 @@ void EnBa_RecoilFromDamage(EnBa* this, GlobalContext* globalCtx);
void EnBa_Die(EnBa* this, GlobalContext* globalCtx);
void EnBa_SetupSwingAtPlayer(EnBa* this);
extern Gfx D_06000890[];
extern Gfx D_06001D80[];
const ActorInit En_Ba_InitVars = {
ACTOR_EN_BA,
ACTORCAT_ENEMY,
@ -507,7 +505,7 @@ void EnBa_Draw(Actor* thisx, GlobalContext* globalCtx) {
Matrix_Pop();
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_ba.c", 973),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, D_06000890);
gSPDisplayList(POLY_OPA_DISP++, object_bxa_DL_000890);
} else {
gSPSegment(POLY_OPA_DISP++, 0x08,
Gfx_TwoTexScroll(globalCtx->state.gfxCtx, 0, (globalCtx->gameplayFrames * 2) % 128,
@ -517,7 +515,7 @@ void EnBa_Draw(Actor* thisx, GlobalContext* globalCtx) {
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 255, 125, 100, 255);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_ba.c", 991),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, D_06001D80);
gSPDisplayList(POLY_OPA_DISP++, object_bxa_DL_001D80);
}
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_ba.c", 995);
}

View File

@ -6,6 +6,7 @@
#include "z_en_bb.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#include "objects/object_Bb/object_Bb.h"
#define FLAGS 0x01000015
@ -91,10 +92,6 @@ void EnBb_Green(EnBb* this, GlobalContext* globalCtx);
void EnBb_Stunned(EnBb* this, GlobalContext* globalCtx);
extern AnimationHeader D_06000184;
extern AnimationHeader D_06000444;
extern SkeletonHeader D_06001A30;
static DamageTable sDamageTableBlueGreen = {
/* Deku nut */ DMG_ENTRY(0, 0xF),
/* Deku stick */ DMG_ENTRY(2, 0x0),
@ -316,7 +313,8 @@ void EnBb_Init(Actor* thisx, GlobalContext* globalCtx) {
EnBb* this = THIS;
Actor_ProcessInitChain(thisx, sInitChain);
SkelAnime_Init(globalCtx, &this->skelAnime, &D_06001A30, &D_06000444, this->jointTable, this->morphTable, 16);
SkelAnime_Init(globalCtx, &this->skelAnime, &object_Bb_Skel_001A30, &object_Bb_Anim_000444, this->jointTable,
this->morphTable, 16);
this->unk_254 = 0;
thisx->colChkInfo.health = 4;
Collider_InitJntSph(globalCtx, &this->collider);
@ -533,7 +531,7 @@ void EnBb_Damage(EnBb* this, GlobalContext* globalCtx) {
}
void EnBb_SetupBlue(EnBb* this) {
Animation_PlayLoop(&this->skelAnime, &D_06000444);
Animation_PlayLoop(&this->skelAnime, &object_Bb_Anim_000444);
this->actor.speedXZ = (Rand_ZeroOne() * 0.5f) + 0.5f;
this->timer = (Rand_ZeroOne() * 20.0f) + 40.0f;
this->unk_264 = (Rand_ZeroOne() * 30.0f) + 180.0f;
@ -578,14 +576,14 @@ void EnBb_Blue(EnBb* this, GlobalContext* globalCtx) {
if (this->charge && (this->targetActor == NULL)) {
this->vMoveAngleY = this->actor.world.rot.y;
if (this->actor.xzDistToPlayer < 200.0f) {
Animation_PlayLoop(&this->skelAnime, &D_06000184);
Animation_PlayLoop(&this->skelAnime, &object_Bb_Anim_000184);
this->vMoveAngleY = this->actor.yawTowardsPlayer;
}
this->maxSpeed = (Rand_ZeroOne() * 1.5f) + 6.0f;
this->timer = (Rand_ZeroOne() * 5.0f) + 20.0f;
this->actionState = BBBLUE_NORMAL;
} else {
Animation_PlayLoop(&this->skelAnime, &D_06000444);
Animation_PlayLoop(&this->skelAnime, &object_Bb_Anim_000444);
this->maxSpeed = (Rand_ZeroOne() * 1.5f) + 1.0f;
this->timer = (Rand_ZeroOne() * 20.0f) + 40.0f;
this->vMoveAngleY = Math_SinF(this->bobPhase) * 65535.0f;
@ -593,7 +591,7 @@ void EnBb_Blue(EnBb* this, GlobalContext* globalCtx) {
}
if ((this->actor.xzDistToPlayer < 150.0f) && (this->actionState != BBBLUE_NORMAL)) {
if (!this->charge) {
Animation_PlayLoop(&this->skelAnime, &D_06000184);
Animation_PlayLoop(&this->skelAnime, &object_Bb_Anim_000184);
this->maxSpeed = (Rand_ZeroOne() * 1.5f) + 6.0f;
this->timer = (Rand_ZeroOne() * 5.0f) + 20.0f;
this->vMoveAngleY = this->actor.yawTowardsPlayer;
@ -671,7 +669,7 @@ void EnBb_Blue(EnBb* this, GlobalContext* globalCtx) {
}
void EnBb_SetupDown(EnBb* this) {
Animation_PlayLoop(&this->skelAnime, &D_06000444);
Animation_PlayLoop(&this->skelAnime, &object_Bb_Anim_000444);
this->action = BB_DOWN;
this->timer = 200;
this->actor.colorFilterTimer = 0;
@ -749,7 +747,7 @@ void EnBb_Down(EnBb* this, GlobalContext* globalCtx) {
}
void EnBb_SetupRed(GlobalContext* globalCtx, EnBb* this) {
Animation_PlayLoop(&this->skelAnime, &D_06000184);
Animation_PlayLoop(&this->skelAnime, &object_Bb_Anim_000184);
if (this->action == BB_DOWN) {
this->actor.speedXZ = 5.0f;
this->actor.gravity = -1.0f;
@ -876,7 +874,7 @@ void EnBb_SetWaypoint(EnBb* this, GlobalContext* globalCtx) {
}
void EnBb_SetupWhite(GlobalContext* globalCtx, EnBb* this) {
Animation_PlayLoop(&this->skelAnime, &D_06000444);
Animation_PlayLoop(&this->skelAnime, &object_Bb_Anim_000444);
this->actor.speedXZ = 0.0f;
this->actor.world.pos.y += 60.0f;
this->flameScaleX = 100.0f;
@ -907,11 +905,11 @@ void EnBb_White(EnBb* this, GlobalContext* globalCtx) {
if (this->timer == 0) {
EnBb_SetWaypoint(this, globalCtx);
EnBb_FaceWaypoint(this);
Animation_PlayLoop(&this->skelAnime, &D_06000184);
Animation_PlayLoop(&this->skelAnime, &object_Bb_Anim_000184);
this->timer = Rand_ZeroOne() * 30.0f + 40.0f;
} else {
if (this->moveMode != BBMOVE_NORMAL) {
Animation_PlayLoop(&this->skelAnime, &D_06000444);
Animation_PlayLoop(&this->skelAnime, &object_Bb_Anim_000444);
}
this->actor.world.rot.y += 0x1F40;
}
@ -944,7 +942,7 @@ void EnBb_White(EnBb* this, GlobalContext* globalCtx) {
void EnBb_InitGreen(EnBb* this, GlobalContext* globalCtx) {
Vec3f bobOffset = { 0.0f, 0.0f, 0.0f };
Animation_PlayLoop(&this->skelAnime, &D_06000444);
Animation_PlayLoop(&this->skelAnime, &object_Bb_Anim_000444);
this->moveMode = BBMOVE_NOCLIP;
this->actionState = BBGREEN_FLAME_ON;
this->bobPhase = Rand_ZeroOne();
@ -967,7 +965,7 @@ void EnBb_InitGreen(EnBb* this, GlobalContext* globalCtx) {
}
void EnBb_SetupGreen(EnBb* this) {
Animation_PlayLoop(&this->skelAnime, &D_06000444);
Animation_PlayLoop(&this->skelAnime, &object_Bb_Anim_000444);
this->moveMode = BBMOVE_NOCLIP;
this->actionState = BBGREEN_FLAME_ON;
this->targetActor = NULL;

View File

@ -5,6 +5,7 @@
*/
#include "z_en_bdfire.h"
#include "objects/object_kingdodongo/object_kingdodongo.h"
#define FLAGS 0x00000030
@ -19,8 +20,6 @@ void EnBdfire_DrawFire(EnBdfire* this, GlobalContext* globalCtx);
void func_809BC2A4(EnBdfire* this, GlobalContext* globalCtx);
void func_809BC598(EnBdfire* this, GlobalContext* globalCtx);
extern Gfx D_0601D950[];
const ActorInit En_Bdfire_InitVars = {
0,
ACTORCAT_ENEMY,
@ -219,7 +218,7 @@ void EnBdfire_DrawFire(EnBdfire* this, GlobalContext* globalCtx) {
Matrix_Translate(0.0f, 11.0f, 0.0f, MTXMODE_APPLY);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_bdfire.c", 647),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_0601D950);
gSPDisplayList(POLY_XLU_DISP++, object_kingdodongo_DL_01D950);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_bdfire.c", 651);
}

View File

@ -5,6 +5,7 @@
*/
#include "z_en_brob.h"
#include "objects/object_brob/object_brob.h"
#define FLAGS 0x00000005
@ -23,13 +24,6 @@ void func_809CB2B8(EnBrob* this, GlobalContext* globalCtx);
void func_809CB354(EnBrob* this, GlobalContext* globalCtx);
void func_809CB458(EnBrob* this, GlobalContext* globalCtx);
extern AnimationHeader D_06000290;
extern FlexSkeletonHeader D_060015D8;
extern AnimationHeader D_06001678;
extern AnimationHeader D_06001750;
extern AnimationHeader D_06001958;
extern CollisionHeader D_06001A70;
const ActorInit En_Brob_InitVars = {
ACTOR_EN_BROB,
ACTORCAT_ENEMY,
@ -69,9 +63,10 @@ void EnBrob_Init(Actor* thisx, GlobalContext* globalCtx) {
EnBrob* this = THIS;
CollisionHeader* colHeader = NULL;
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_060015D8, &D_06001750, this->jointTable, this->morphTable, 10);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &object_brob_Skel_0015D8, &object_brob_Anim_001750,
this->jointTable, this->morphTable, 10);
DynaPolyActor_Init(&this->dyna, DPM_UNK);
CollisionHeader_GetVirtual(&D_06001A70, &colHeader);
CollisionHeader_GetVirtual(&object_brob_Col_001A70, &colHeader);
this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, thisx, colHeader);
Collider_InitCylinder(globalCtx, &this->colliders[0]);
Collider_SetCylinder(globalCtx, &this->colliders[0], &this->dyna.actor, &sCylinderInit);
@ -118,21 +113,21 @@ void func_809CADDC(EnBrob* this, GlobalContext* globalCtx) {
}
void func_809CAE44(EnBrob* this, GlobalContext* globalCtx) {
Animation_PlayOnce(&this->skelAnime, &D_06001750);
Animation_PlayOnce(&this->skelAnime, &object_brob_Anim_001750);
func_8003EBF8(globalCtx, &globalCtx->colCtx.dyna, this->dyna.bgId);
this->unk_1AE = 1000;
this->actionFunc = func_809CB114;
}
void func_809CAEA0(EnBrob* this) {
Animation_MorphToLoop(&this->skelAnime, &D_06001958, -5.0f);
Animation_MorphToLoop(&this->skelAnime, &object_brob_Anim_001958, -5.0f);
this->unk_1AE = 8000;
this->timer = 1200;
this->actionFunc = func_809CB218;
}
void func_809CAEF4(EnBrob* this) {
Animation_MorphToPlayOnce(&this->skelAnime, &D_06000290, -5.0f);
Animation_MorphToPlayOnce(&this->skelAnime, &object_brob_Anim_000290, -5.0f);
this->unk_1AE -= 125.0f;
Actor_SetColorFilter(&this->dyna.actor, 0, 0xFF, 0, 0x50);
Audio_PlayActorSound2(&this->dyna.actor, NA_SE_EN_GOMA_JR_FREEZE);
@ -140,14 +135,14 @@ void func_809CAEF4(EnBrob* this) {
}
void func_809CAF88(EnBrob* this) {
Animation_Change(&this->skelAnime, &D_06001750, -1.0f, Animation_GetLastFrame(&D_06001750), 0.0f, ANIMMODE_ONCE,
-5.0f);
Animation_Change(&this->skelAnime, &object_brob_Anim_001750, -1.0f,
Animation_GetLastFrame(&object_brob_Anim_001750), 0.0f, ANIMMODE_ONCE, -5.0f);
this->unk_1AE = 8250;
this->actionFunc = func_809CB354;
}
void func_809CB008(EnBrob* this) {
Animation_MorphToLoop(&this->skelAnime, &D_06001678, -5.0f);
Animation_MorphToLoop(&this->skelAnime, &object_brob_Anim_001678, -5.0f);
this->timer = 10;
this->actionFunc = func_809CB458;
}

View File

@ -6,6 +6,7 @@
#include "z_en_bw.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#include "objects/object_bw/object_bw.h"
#define FLAGS 0x00000015
@ -34,11 +35,6 @@ void func_809D0268(EnBw* this, GlobalContext* globalCtx);
void func_809D03CC(EnBw* this);
void func_809D0424(EnBw* this, GlobalContext* globalCtx);
extern AnimationHeader D_06000228;
extern SkeletonHeader D_060020F0;
extern AnimationHeader D_060021A0;
extern AnimationHeader D_06002250;
const ActorInit En_Bw_InitVars = {
ACTOR_EN_BW,
ACTORCAT_ENEMY,
@ -138,7 +134,8 @@ void EnBw_Init(Actor* thisx, GlobalContext* globalCtx) {
Actor_SetScale(&this->actor, 0.012999999f);
this->actor.naviEnemyId = 0x23;
this->actor.gravity = -2.0f;
SkelAnime_Init(globalCtx, &this->skelAnime, &D_060020F0, &D_06000228, this->jointTable, this->morphTable, 12);
SkelAnime_Init(globalCtx, &this->skelAnime, &object_bw_Skel_0020F0, &object_bw_Anim_000228, this->jointTable,
this->morphTable, 12);
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 40.0f);
this->actor.colChkInfo.damageTable = &sDamageTable;
this->actor.colChkInfo.health = 6;
@ -179,7 +176,7 @@ void func_809CE884(EnBw* this, GlobalContext* globalCtx) {
}
void func_809CE9A8(EnBw* this) {
Animation_MorphToLoop(&this->skelAnime, &D_06000228, -2.0f);
Animation_MorphToLoop(&this->skelAnime, &object_bw_Anim_000228, -2.0f);
this->unk_220 = 2;
this->unk_222 = Rand_ZeroOne() * 200.0f + 200.0f;
this->unk_232 = 0;
@ -394,7 +391,7 @@ void func_809CEA24(EnBw* this, GlobalContext* globalCtx) {
}
void func_809CF72C(EnBw* this) {
Animation_MorphToPlayOnce(&this->skelAnime, &D_060021A0, -2.0f);
Animation_MorphToPlayOnce(&this->skelAnime, &object_bw_Anim_0021A0, -2.0f);
this->unk_220 = 3;
this->unk_221 = 0;
this->unk_250 = 0.6f;
@ -426,7 +423,7 @@ void func_809CF7AC(EnBw* this, GlobalContext* globalCtx) {
}
void func_809CF8F0(EnBw* this) {
Animation_MorphToPlayOnce(&this->skelAnime, &D_06002250, -1.0f);
Animation_MorphToPlayOnce(&this->skelAnime, &object_bw_Anim_002250, -1.0f);
this->actor.speedXZ = 7.0f;
this->actor.world.rot.y = this->actor.shape.rot.y = this->actor.yawTowardsPlayer;
this->unk_220 = 4;
@ -471,7 +468,7 @@ void func_809CF984(EnBw* this, GlobalContext* globalCtx) {
}
void func_809CFBA8(EnBw* this) {
Animation_MorphToLoop(&this->skelAnime, &D_06002250, -1.0f);
Animation_MorphToLoop(&this->skelAnime, &object_bw_Anim_002250, -1.0f);
this->unk_220 = 5;
this->unk_222 = 1000;
this->unk_260 = 0.0f;
@ -529,7 +526,7 @@ void func_809CFC4C(EnBw* this, GlobalContext* globalCtx) {
}
void func_809CFF10(EnBw* this) {
Animation_MorphToLoop(&this->skelAnime, &D_06002250, -1.0f);
Animation_MorphToLoop(&this->skelAnime, &object_bw_Anim_002250, -1.0f);
this->unk_220 = 6;
this->unk_222 = 1000;
this->unk_221 = 3;

View File

@ -5,6 +5,7 @@
*/
#include "z_en_bx.h"
#include "objects/object_bxa/object_bxa.h"
#define FLAGS 0x00000010
@ -15,8 +16,6 @@ void EnBx_Destroy(Actor* thisx, GlobalContext* globalCtx);
void EnBx_Update(Actor* thisx, GlobalContext* globalCtx);
void EnBx_Draw(Actor* thisx, GlobalContext* globalCtx);
extern Gfx D_060022F0[];
const ActorInit En_Bx_InitVars = {
ACTOR_EN_BX,
ACTORCAT_ENEMY,
@ -238,7 +237,7 @@ void EnBx_Draw(Actor* thisx, GlobalContext* globalCtx) {
Matrix_ToMtx(mtx, "../z_en_bx.c", 507);
}
gSPDisplayList(POLY_OPA_DISP++, D_060022F0);
gSPDisplayList(POLY_OPA_DISP++, object_bxa_DL_0022F0);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_bx.c", 511);
}

View File

@ -1,5 +1,6 @@
#include "z_en_daiku.h"
#include "overlays/actors/ovl_En_GeldB/z_en_geldb.h"
#include "objects/object_daiku/object_daiku.h"
#define FLAGS 0x00000019
@ -57,8 +58,6 @@ void EnDaiku_EscapeRun(EnDaiku* this, GlobalContext* globalCtx);
s32 EnDaiku_OverrideLimbDraw(GlobalContext* globalCtx, s32 limb, Gfx** dList, Vec3f* pos, Vec3s* rot, void* thisx);
void EnDaiku_PostLimbDraw(GlobalContext* globalCtx, s32 limb, Gfx** dList, Vec3s* rot, void* thisx);
extern FlexSkeletonHeader D_06007958;
const ActorInit En_Daiku_InitVars = {
ACTOR_EN_DAIKU,
ACTORCAT_NPC,
@ -129,8 +128,9 @@ static DamageTable sDamageTable = {
};
static EnDaikuAnimation sAnimations[] = {
{ 0x06001AB0, 1.0f, 0, 0 }, { 0x06007DE0, 1.0f, 0, 0 }, { 0x0600885C, 1.0f, 0, 0 },
{ 0x06000C44, 1.0f, 0, 0 }, { 0x06008164, 1.0f, 0, 0 },
{ &object_daiku_Anim_001AB0, 1.0f, 0, 0 }, { &object_daiku_Anim_007DE0, 1.0f, 0, 0 },
{ &object_daiku_Anim_00885C, 1.0f, 0, 0 }, { &object_daiku_Anim_000C44, 1.0f, 0, 0 },
{ &object_daiku_Anim_008164, 1.0f, 0, 0 },
};
static EnDaikuEscapeSubCamParam sEscapeSubCamParams[] = {
@ -181,7 +181,8 @@ void EnDaiku_Init(Actor* thisx, GlobalContext* globalCtx) {
this->actor.shape.rot.z = 0;
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 40.0f);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_06007958, NULL, this->jointTable, this->morphTable, 17);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &object_daiku_Skel_007958, NULL, this->jointTable, this->morphTable,
17);
if (!noKill) {
Actor_Kill(&this->actor);
@ -633,7 +634,8 @@ s32 EnDaiku_OverrideLimbDraw(GlobalContext* globalCtx, s32 limb, Gfx** dList, Ve
}
void EnDaiku_PostLimbDraw(GlobalContext* globalCtx, s32 limb, Gfx** dList, Vec3s* rot, void* thisx) {
static Gfx* hairDLists[] = { 0x06005BD0, 0x06005AC0, 0x06005990, 0x06005880 };
static Gfx* hairDLists[] = { object_daiku_DL_005BD0, object_daiku_DL_005AC0, object_daiku_DL_005990,
object_daiku_DL_005880 };
static Vec3f targetPosHeadLocal = { 700, 1100, 0 };
EnDaiku* this = THIS;

View File

@ -5,6 +5,7 @@
*/
#include "z_en_daiku_kakariko.h"
#include "objects/object_daiku/object_daiku.h"
#define FLAGS 0x00000019
@ -25,8 +26,6 @@ void EnDaikuKakariko_Draw(Actor* thisx, GlobalContext* globalCtx);
void EnDaikuKakariko_Wait(EnDaikuKakariko* this, GlobalContext* globalCtx);
void EnDaikuKakariko_Run(EnDaikuKakariko* this, GlobalContext* globalCtx);
extern FlexSkeletonHeader D_06007958;
const ActorInit En_Daiku_Kakariko_InitVars = {
ACTOR_EN_DAIKU_KAKARIKO,
ACTORCAT_NPC,
@ -97,8 +96,9 @@ static DamageTable sDamageTable = {
};
static struct_D_80AA1678 sAnimations[] = {
{ 0x06001AB0, 1.0f, 2, -7.0f }, { 0x06007DE0, 1.0f, 0, -7.0f }, { 0x0600885C, 1.0f, 0, -7.0f },
{ 0x06000C44, 1.0f, 0, -7.0f }, { 0x06000600, 1.0f, 0, -7.0f }, { 0x06008164, 1.0f, 0, -7.0f },
{ &object_daiku_Anim_001AB0, 1.0f, 2, -7.0f }, { &object_daiku_Anim_007DE0, 1.0f, 0, -7.0f },
{ &object_daiku_Anim_00885C, 1.0f, 0, -7.0f }, { &object_daiku_Anim_000C44, 1.0f, 0, -7.0f },
{ &object_daiku_Anim_000600, 1.0f, 0, -7.0f }, { &object_daiku_Anim_008164, 1.0f, 0, -7.0f },
};
void EnDaikuKakariko_SetAnimFromIndex(EnDaikuKakariko* this, s32 animIndex, s32* currentAnimIndex) {
@ -151,7 +151,8 @@ void EnDaikuKakariko_Init(Actor* thisx, GlobalContext* globalCtx) {
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 40.0f);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_06007958, NULL, this->jointTable, this->morphTable, 17);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &object_daiku_Skel_007958, NULL, this->jointTable, this->morphTable,
17);
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit);
@ -516,7 +517,8 @@ s32 EnDaikuKakariko_OverrideLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gf
}
void EnDaikuKakariko_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3s* rot, void* thisx) {
static Gfx* carpenterHeadDLists[] = { 0x06005BD0, 0x06005AC0, 0x06005990, 0x06005880 };
static Gfx* carpenterHeadDLists[] = { object_daiku_DL_005BD0, object_daiku_DL_005AC0, object_daiku_DL_005990,
object_daiku_DL_005880 };
static Vec3f unkVec = { 700.0f, 1100.0f, 0.0f };
EnDaikuKakariko* this = THIS;

View File

@ -1,4 +1,5 @@
#include "z_en_dh.h"
#include "objects/object_dh/object_dh.h"
#define FLAGS 0x00000415
@ -32,17 +33,6 @@ void EnDh_Burrow(EnDh* this, GlobalContext* globalCtx);
void EnDh_Damage(EnDh* this, GlobalContext* globalCtx);
void EnDh_Death(EnDh* this, GlobalContext* globalCtx);
extern FlexSkeletonHeader D_06007E88;
extern AnimationHeader D_06005880;
extern AnimationHeader D_06003A8C;
extern AnimationHeader D_06004658;
extern AnimationHeader D_06002148;
extern AnimationHeader D_06003D6C;
extern AnimationHeader D_060032BC;
extern AnimationHeader D_06001A3C;
extern AnimationHeader D_0600375C;
extern Gfx D_06007FC0[];
const ActorInit En_Dh_InitVars = {
ACTOR_EN_DH,
ACTORCAT_ENEMY,
@ -153,7 +143,8 @@ void EnDh_Init(Actor* thisx, GlobalContext* globalCtx) {
Actor_ProcessInitChain(&this->actor, sInitChain);
this->actor.colChkInfo.damageTable = &D_809EC620;
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_06007E88, &D_06005880, this->jointTable, this->limbRotTable, 16);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &object_dh_Skel_007E88, &object_dh_Anim_005880, this->jointTable,
this->limbRotTable, 16);
ActorShape_Init(&this->actor.shape, 0.0f, &ActorShadow_DrawCircle, 64.0f);
this->actor.params = ENDH_WAIT_UNDERGROUND;
this->actor.colChkInfo.mass = MASS_HEAVY;
@ -196,7 +187,7 @@ void EnDh_SpawnDebris(GlobalContext* globalCtx, EnDh* this, Vec3f* spawnPos, f32
}
void EnDh_SetupWait(EnDh* this) {
Animation_PlayLoop(&this->skelAnime, &D_06003A8C);
Animation_PlayLoop(&this->skelAnime, &object_dh_Anim_003A8C);
this->curAction = DH_WAIT;
this->actor.world.pos.x = Rand_CenteredFloat(600.0f) + this->actor.home.pos.x;
this->actor.world.pos.z = Rand_CenteredFloat(600.0f) + this->actor.home.pos.z;
@ -250,8 +241,8 @@ void EnDh_Wait(EnDh* this, GlobalContext* globalCtx) {
}
void EnDh_SetupWalk(EnDh* this) {
Animation_Change(&this->skelAnime, &D_06003A8C, 1.0f, 0.0f, Animation_GetLastFrame(&D_06003A8C) - 3.0f,
ANIMMODE_LOOP, -6.0f);
Animation_Change(&this->skelAnime, &object_dh_Anim_003A8C, 1.0f, 0.0f,
Animation_GetLastFrame(&object_dh_Anim_003A8C) - 3.0f, ANIMMODE_LOOP, -6.0f);
this->curAction = DH_WALK;
this->timer = 300;
this->actor.speedXZ = 1.0f;
@ -279,7 +270,7 @@ void EnDh_Walk(EnDh* this, GlobalContext* globalCtx) {
}
void EnDh_SetupRetreat(EnDh* this, GlobalContext* globalCtx) {
Animation_MorphToLoop(&this->skelAnime, &D_06005880, -4.0f);
Animation_MorphToLoop(&this->skelAnime, &object_dh_Anim_005880, -4.0f);
this->curAction = DH_RETREAT;
this->timer = 70;
this->actor.speedXZ = 1.0f;
@ -299,7 +290,7 @@ void EnDh_Retreat(EnDh* this, GlobalContext* globalCtx) {
}
void EnDh_SetupAttack(EnDh* this) {
Animation_MorphToPlayOnce(&this->skelAnime, &D_06004658, -6.0f);
Animation_MorphToPlayOnce(&this->skelAnime, &object_dh_Anim_004658, -6.0f);
this->timer = this->actionState = 0;
this->curAction = DH_ATTACK;
this->actor.speedXZ = 0.0f;
@ -312,14 +303,15 @@ void EnDh_Attack(EnDh* this, GlobalContext* globalCtx) {
if (SkelAnime_Update(&this->skelAnime)) {
this->actionState++;
} else if ((this->actor.xzDistToPlayer > 100.0f) || !Actor_IsFacingPlayer(&this->actor, 60 * 0x10000 / 360)) {
Animation_Change(&this->skelAnime, &D_06004658, -1.0f, this->skelAnime.curFrame, 0.0f, ANIMMODE_ONCE, -4.0f);
Animation_Change(&this->skelAnime, &object_dh_Anim_004658, -1.0f, this->skelAnime.curFrame, 0.0f, ANIMMODE_ONCE,
-4.0f);
this->actionState = 4;
this->collider2.base.atFlags = this->collider2.elements[0].info.toucherFlags = AT_NONE; // also TOUCH_NONE
this->collider2.elements[0].info.toucher.dmgFlags = this->collider2.elements[0].info.toucher.damage = 0;
}
switch (this->actionState) {
case 1:
Animation_PlayOnce(&this->skelAnime, &D_06001A3C);
Animation_PlayOnce(&this->skelAnime, &object_dh_Anim_001A3C);
this->actionState++;
Audio_PlayActorSound2(&this->actor, NA_SE_EN_DEADHAND_BITE);
case 0:
@ -345,12 +337,12 @@ void EnDh_Attack(EnDh* this, GlobalContext* globalCtx) {
break;
case 3:
if ((this->actor.xzDistToPlayer <= 100.0f) && (Actor_IsFacingPlayer(&this->actor, 60 * 0x10000 / 360))) {
Animation_Change(&this->skelAnime, &D_06004658, 1.0f, 20.0f, Animation_GetLastFrame(&D_06004658),
ANIMMODE_ONCE, -6.0f);
Animation_Change(&this->skelAnime, &object_dh_Anim_004658, 1.0f, 20.0f,
Animation_GetLastFrame(&object_dh_Anim_004658), ANIMMODE_ONCE, -6.0f);
this->actionState = 0;
} else {
Animation_Change(&this->skelAnime, &D_06004658, -1.0f, Animation_GetLastFrame(&D_06004658), 0.0f,
ANIMMODE_ONCE, -4.0f);
Animation_Change(&this->skelAnime, &object_dh_Anim_004658, -1.0f,
Animation_GetLastFrame(&object_dh_Anim_004658), 0.0f, ANIMMODE_ONCE, -4.0f);
this->actionState++;
this->collider2.base.atFlags = this->collider2.elements[0].info.toucherFlags =
AT_NONE; // also TOUCH_NONE
@ -367,7 +359,7 @@ void EnDh_Attack(EnDh* this, GlobalContext* globalCtx) {
}
void EnDh_SetupBurrow(EnDh* this) {
Animation_MorphToPlayOnce(&this->skelAnime, &D_06002148, -6.0f);
Animation_MorphToPlayOnce(&this->skelAnime, &object_dh_Anim_002148, -6.0f);
this->curAction = DH_BURROW;
this->dirtWaveSpread = this->actor.speedXZ = 0.0f;
this->actor.world.rot.y = this->actor.shape.rot.y;
@ -409,7 +401,7 @@ void EnDh_Burrow(EnDh* this, GlobalContext* globalCtx) {
}
void EnDh_SetupDamage(EnDh* this) {
Animation_MorphToPlayOnce(&this->skelAnime, &D_06003D6C, -6.0f);
Animation_MorphToPlayOnce(&this->skelAnime, &object_dh_Anim_003D6C, -6.0f);
if (this->actor.bgCheckFlags & 1) {
this->actor.speedXZ = -1.0f;
}
@ -428,10 +420,10 @@ void EnDh_Damage(EnDh* this, GlobalContext* globalCtx) {
if (this->retreat) {
EnDh_SetupRetreat(this, globalCtx);
} else if ((this->actor.xzDistToPlayer <= 105.0f) && Actor_IsFacingPlayer(&this->actor, 60 * 0x10000 / 360)) {
f32 frames = Animation_GetLastFrame(&D_06004658);
f32 frames = Animation_GetLastFrame(&object_dh_Anim_004658);
EnDh_SetupAttack(this);
Animation_Change(&this->skelAnime, &D_06004658, 1.0f, 20.0f, frames, ANIMMODE_ONCE, -6.0f);
Animation_Change(&this->skelAnime, &object_dh_Anim_004658, 1.0f, 20.0f, frames, ANIMMODE_ONCE, -6.0f);
} else {
EnDh_SetupWalk(this);
}
@ -440,7 +432,7 @@ void EnDh_Damage(EnDh* this, GlobalContext* globalCtx) {
}
void EnDh_SetupDeath(EnDh* this) {
Animation_MorphToPlayOnce(&this->skelAnime, &D_060032BC, -1.0f);
Animation_MorphToPlayOnce(&this->skelAnime, &object_dh_Anim_0032BC, -1.0f);
this->curAction = DH_DEATH;
this->timer = 300;
this->actor.flags &= ~1;
@ -454,7 +446,7 @@ void EnDh_SetupDeath(EnDh* this) {
void EnDh_Death(EnDh* this, GlobalContext* globalCtx) {
if (SkelAnime_Update(&this->skelAnime) || (this->timer != 300)) {
if (this->timer == 300) {
Animation_PlayLoop(&this->skelAnime, &D_0600375C);
Animation_PlayLoop(&this->skelAnime, &object_dh_Anim_00375C);
}
this->timer--;
if (this->timer < 150) {
@ -585,7 +577,7 @@ void EnDh_Draw(Actor* thisx, GlobalContext* globalCtx) {
MTXMODE_APPLY);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_dh.c", 1160),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06007FC0);
gSPDisplayList(POLY_XLU_DISP++, object_dh_DL_007FC0);
}
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_dh.c", 1166);
}

View File

@ -6,6 +6,7 @@
#include "z_en_dha.h"
#include "overlays/actors/ovl_En_Dh/z_en_dh.h"
#include "objects/object_dh/object_dh.h"
#define FLAGS 0x00000015
@ -148,9 +149,6 @@ static InitChainEntry sInitChain[] = {
ICHAIN_VEC3F_DIV1000(scale, 10, ICHAIN_STOP),
};
extern FlexSkeletonHeader D_06000BD8;
extern AnimationHeader D_060015B0;
void EnDha_SetupAction(EnDha* this, EnDhaActionFunc actionFunc) {
this->actionFunc = actionFunc;
}
@ -160,7 +158,8 @@ void EnDha_Init(Actor* thisx, GlobalContext* globalCtx) {
Actor_ProcessInitChain(&this->actor, sInitChain);
this->actor.colChkInfo.damageTable = &sDamageTable;
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_06000BD8, &D_060015B0, this->jointTable, this->morphTable, 4);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &object_dh_Skel_000BD8, &object_dh_Anim_0015B0, this->jointTable,
this->morphTable, 4);
ActorShape_Init(&this->actor.shape, 0, ActorShadow_DrawFeet, 90.0f);
this->actor.focus.pos = this->actor.world.pos;
this->actor.focus.pos.y += 50.0f;
@ -182,7 +181,7 @@ void EnDha_Destroy(Actor* thisx, GlobalContext* globalCtx) {
}
void EnDha_SetupWait(EnDha* this) {
Animation_PlayLoop(&this->skelAnime, &D_060015B0);
Animation_PlayLoop(&this->skelAnime, &object_dh_Anim_0015B0);
this->unk_1C0 = 0;
this->actionTimer = ((Rand_ZeroOne() * 10.0f) + 5.0f);
this->actor.speedXZ = 0.0f;

View File

@ -6,6 +6,7 @@
#include "z_en_dodojr.h"
#include "overlays/actors/ovl_En_Bom/z_en_bom.h"
#include "objects/object_dodojr/object_dodojr.h"
#define FLAGS 0x00000005
@ -32,13 +33,6 @@ void func_809F7B3C(EnDodojr* this, GlobalContext* globalCtx);
void func_809F7C48(EnDodojr* this, GlobalContext* globalCtx);
void func_809F768C(EnDodojr* this, GlobalContext* globalCtx);
extern AnimationHeader D_060004A0;
extern AnimationHeader D_060005F0;
extern AnimationHeader D_06000724;
extern AnimationHeader D_06000860;
extern AnimationHeader D_060009D4;
extern SkeletonHeader D_060020E0;
const ActorInit En_Dodojr_InitVars = {
ACTOR_EN_DODOJR,
ACTORCAT_ENEMY,
@ -77,7 +71,8 @@ void EnDodojr_Init(Actor* thisx, GlobalContext* globalCtx) {
EnDodojr* this = THIS;
ActorShape_Init(&this->actor.shape, 0.0f, NULL, 18.0f);
SkelAnime_Init(globalCtx, &this->skelAnime, &D_060020E0, &D_060009D4, this->jointTable, this->morphTable, 15);
SkelAnime_Init(globalCtx, &this->skelAnime, &object_dodojr_Skel_0020E0, &object_dodojr_Anim_0009D4,
this->jointTable, this->morphTable, 15);
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit);
CollisionCheck_SetInfo2(&this->actor.colChkInfo, DamageTable_Get(4), &sColChkInit);
@ -168,18 +163,18 @@ s32 func_809F68B0(EnDodojr* this, GlobalContext* globalCtx) {
}
void func_809F6994(EnDodojr* this) {
f32 lastFrame = Animation_GetLastFrame(&D_06000860);
f32 lastFrame = Animation_GetLastFrame(&object_dodojr_Anim_000860);
Animation_Change(&this->skelAnime, &D_06000860, 1.8f, 0.0f, lastFrame, ANIMMODE_LOOP_INTERP, -10.0f);
Animation_Change(&this->skelAnime, &object_dodojr_Anim_000860, 1.8f, 0.0f, lastFrame, ANIMMODE_LOOP_INTERP, -10.0f);
this->actor.velocity.y = 0.0f;
this->actor.speedXZ = 2.6f;
this->actor.gravity = -0.8f;
}
void func_809F6A20(EnDodojr* this) {
f32 lastFrame = Animation_GetLastFrame(&D_060004A0);
f32 lastFrame = Animation_GetLastFrame(&object_dodojr_Anim_0004A0);
Animation_Change(&this->skelAnime, &D_060004A0, 1.0f, 0.0f, lastFrame, ANIMMODE_ONCE, -10.0f);
Animation_Change(&this->skelAnime, &object_dodojr_Anim_0004A0, 1.0f, 0.0f, lastFrame, ANIMMODE_ONCE, -10.0f);
this->actor.speedXZ = 0.0f;
this->actor.velocity.x = 0.0f;
this->actor.velocity.z = 0.0f;
@ -192,17 +187,17 @@ void func_809F6A20(EnDodojr* this) {
}
void func_809F6AC4(EnDodojr* this) {
f32 lastFrame = Animation_GetLastFrame(&D_060005F0);
f32 lastFrame = Animation_GetLastFrame(&object_dodojr_Anim_0005F0);
Animation_Change(&this->skelAnime, &D_060005F0, 1.0f, 0.0f, lastFrame, ANIMMODE_LOOP, 0.0f);
Animation_Change(&this->skelAnime, &object_dodojr_Anim_0005F0, 1.0f, 0.0f, lastFrame, ANIMMODE_LOOP, 0.0f);
this->actor.velocity.y = 0.0f;
this->actor.gravity = -0.8f;
}
void func_809F6B38(EnDodojr* this) {
f32 lastFrame = Animation_GetLastFrame(&D_06000724);
f32 lastFrame = Animation_GetLastFrame(&object_dodojr_Anim_000724);
Animation_Change(&this->skelAnime, &D_06000724, 1.0f, 0.0f, lastFrame, ANIMMODE_LOOP, -10.0f);
Animation_Change(&this->skelAnime, &object_dodojr_Anim_000724, 1.0f, 0.0f, lastFrame, ANIMMODE_LOOP, -10.0f);
this->actor.gravity = -0.8f;
this->unk_1FC = 3;
this->actor.velocity.y = 10.0f;
@ -219,7 +214,7 @@ void func_809F6BBC(EnDodojr* this) {
}
void func_809F6C24(EnDodojr* this) {
Animation_Change(&this->skelAnime, &D_06000724, 1.0f, 8.0f, 12.0f, ANIMMODE_ONCE, 0.0f);
Animation_Change(&this->skelAnime, &object_dodojr_Anim_000724, 1.0f, 8.0f, 12.0f, ANIMMODE_ONCE, 0.0f);
Audio_PlayActorSound2(&this->actor, NA_SE_EN_DODO_M_EAT);
this->actor.speedXZ = 0.0f;
this->actor.velocity.x = 0.0f;
@ -395,7 +390,7 @@ void func_809F72A4(EnDodojr* this, GlobalContext* globalCtx) {
}
void func_809F73AC(EnDodojr* this, GlobalContext* globalCtx) {
f32 lastFrame = Animation_GetLastFrame(&D_06000860);
f32 lastFrame = Animation_GetLastFrame(&object_dodojr_Anim_000860);
Player* player = PLAYER;
f32 dist;
@ -403,7 +398,8 @@ void func_809F73AC(EnDodojr* this, GlobalContext* globalCtx) {
dist = this->actor.world.pos.y - player->actor.world.pos.y;
if (!(dist >= 40.0f)) {
Animation_Change(&this->skelAnime, &D_06000860, 1.8f, 0.0f, lastFrame, ANIMMODE_LOOP_INTERP, -10.0f);
Animation_Change(&this->skelAnime, &object_dodojr_Anim_000860, 1.8f, 0.0f, lastFrame, ANIMMODE_LOOP_INTERP,
-10.0f);
Audio_PlayActorSound2(&this->actor, NA_SE_EN_DODO_M_UP);
this->actor.world.pos.y -= 60.0f;
this->actor.flags |= 1;

View File

@ -5,6 +5,7 @@
*/
#include "z_en_dog.h"
#include "objects/object_dog/object_dog.h"
#define FLAGS 0x00000000
@ -57,14 +58,14 @@ static ColliderCylinderInit sCylinderInit = {
static CollisionCheckInfoInit2 sColChkInfoInit = { 0, 0, 0, 0, 50 };
static struct_80034EC0_Entry sAnimations[] = {
{ 0x06001368, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, 0.0f },
{ 0x06001368, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, -6.0f },
{ 0x06000D78, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, -6.0f },
{ 0x06000278, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, -6.0f },
{ 0x06001150, 1.0f, 0.0f, 4.0f, ANIMMODE_ONCE, -6.0f },
{ 0x06001150, 1.0f, 5.0f, 25.0f, ANIMMODE_LOOP_PARTIAL, -6.0f },
{ 0x06000928, 1.0f, 0.0f, 6.0f, ANIMMODE_ONCE, -6.0f },
{ 0x06000C28, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, -6.0f },
{ &object_dog_Anim_001368, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, 0.0f },
{ &object_dog_Anim_001368, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, -6.0f },
{ &object_dog_Anim_000D78, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, -6.0f },
{ &object_dog_Anim_000278, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, -6.0f },
{ &object_dog_Anim_001150, 1.0f, 0.0f, 4.0f, ANIMMODE_ONCE, -6.0f },
{ &object_dog_Anim_001150, 1.0f, 5.0f, 25.0f, ANIMMODE_LOOP_PARTIAL, -6.0f },
{ &object_dog_Anim_000928, 1.0f, 0.0f, 6.0f, ANIMMODE_ONCE, -6.0f },
{ &object_dog_Anim_000C28, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, -6.0f },
};
typedef enum {
@ -77,13 +78,9 @@ typedef enum {
/* 0x06 */ DOG_BOW_2
} DogBehavior;
extern FlexSkeletonHeader D_06007290;
extern AnimationHeader D_06001368;
extern AnimationHeader D_06000D78;
extern AnimationHeader D_06000278;
void EnDog_PlayWalkSFX(EnDog* this) {
AnimationHeader* walk = &D_06001368;
AnimationHeader* walk = &object_dog_Anim_001368;
if (this->skelAnime.animation == walk) {
if ((this->skelAnime.curFrame == 1.0f) || (this->skelAnime.curFrame == 7.0f)) {
Audio_PlayActorSound2(&this->actor, NA_SE_EV_CHIBI_WALK);
@ -92,7 +89,8 @@ void EnDog_PlayWalkSFX(EnDog* this) {
}
void EnDog_PlayRunSFX(EnDog* this) {
AnimationHeader* run = &D_06000D78;
AnimationHeader* run = &object_dog_Anim_000D78;
if (this->skelAnime.animation == run) {
if ((this->skelAnime.curFrame == 2.0f) || (this->skelAnime.curFrame == 4.0f)) {
Audio_PlayActorSound2(&this->actor, NA_SE_EV_CHIBI_WALK);
@ -101,7 +99,8 @@ void EnDog_PlayRunSFX(EnDog* this) {
}
void EnDog_PlayBarkSFX(EnDog* this) {
AnimationHeader* bark = &D_06000278;
AnimationHeader* bark = &object_dog_Anim_000278;
if (this->skelAnime.animation == bark) {
if ((this->skelAnime.curFrame == 13.0f) || (this->skelAnime.curFrame == 19.0f)) {
Audio_PlayActorSound2(&this->actor, NA_SE_EV_SMALL_DOG_BARK);
@ -238,7 +237,8 @@ void EnDog_Init(Actor* thisx, GlobalContext* globalCtx) {
s32 pad;
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 24.0f);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_06007290, NULL, this->jointTable, this->morphTable, 13);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &object_dog_Skel_007290, NULL, this->jointTable, this->morphTable,
13);
func_80034EC0(&this->skelAnime, sAnimations, 0);
if ((this->actor.params & 0x8000) == 0) {

View File

@ -1,6 +1,7 @@
#include "z_en_encount2.h"
#include "overlays/actors/ovl_En_Fire_Rock/z_en_fire_rock.h"
#include "vt.h"
#include "objects/object_efc_star_field/object_efc_star_field.h"
#define FLAGS 0x00000030
@ -23,8 +24,6 @@ void EnEncount2_ParticleInit(EnEncount2* this, Vec3f* particlePos, f32 scale);
void EnEncount2_ParticleDraw(Actor* thisx, GlobalContext* globalCtx);
void EnEncount2_ParticleUpdate(EnEncount2* this, GlobalContext* globalCtx);
extern Gfx* D_06000DE0[];
const ActorInit En_Encount2_InitVars = {
ACTOR_EN_ENCOUNT2,
ACTORCAT_ENEMY,
@ -365,7 +364,7 @@ void EnEncount2_ParticleDraw(Actor* thisx, GlobalContext* globalCtx) {
gDPSetEnvColor(POLY_OPA_DISP++, 155, 255, 55, 255);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_encount2.c", 669),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, D_06000DE0);
gSPDisplayList(POLY_OPA_DISP++, object_efc_star_field_DL_000DE0);
}
}
}

View File

@ -1,6 +1,7 @@
#include "z_en_fire_rock.h"
#include "overlays/actors/ovl_En_Encount2/z_en_encount2.h"
#include "vt.h"
#include "objects/object_efc_star_field/object_efc_star_field.h"
#define FLAGS 0x00000030
@ -16,8 +17,6 @@ void FireRock_WaitOnFloor(EnFireRock* this, GlobalContext* globalCtx);
void EnFireRock_Fall(EnFireRock* this, GlobalContext* globalCtx);
void EnFireRock_SpawnMoreBrokenPieces(EnFireRock* this, GlobalContext* globalCtx);
extern Gfx D_06000DE0[];
const ActorInit En_Fire_Rock_InitVars = {
ACTOR_EN_FIRE_ROCK,
ACTORCAT_ENEMY,
@ -395,6 +394,6 @@ void EnFireRock_Draw(Actor* thisx, GlobalContext* globalCtx) {
gDPSetEnvColor(POLY_OPA_DISP++, 155, 255, 55, 255);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_fire_rock.c", 768),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, D_06000DE0);
gSPDisplayList(POLY_OPA_DISP++, object_efc_star_field_DL_000DE0);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_fire_rock.c", 773);
}

View File

@ -1,6 +1,7 @@
#include "z_en_fr.h"
#include "objects/gameplay_field_keep/gameplay_field_keep.h"
#include "vt.h"
#include "objects/object_fr/object_fr.h"
#define FLAGS 0x02000019
@ -50,11 +51,6 @@ void EnFr_Deactivate(EnFr* this, GlobalContext* globalCtx);
void EnFr_GiveReward(EnFr* this, GlobalContext* globalCtx);
void EnFr_SetIdle(EnFr* this, GlobalContext* globalCtx);
extern FlexSkeletonHeader D_0600B498; // Frog
extern AnimationHeader D_06001534; // Frog
extern AnimationHeader D_060007BC; // Frog Jumping
extern AnimationHeader D_060011C0; // Frog Landing
/*
Frogs params WIP docs
@ -278,8 +274,8 @@ void EnFr_Update(Actor* thisx, GlobalContext* globalCtx) {
sEnFrPointers.frogs[frogIndex] = this;
Actor_ProcessInitChain(&this->actor, sInitChain);
// frog
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_0600B498, &D_06001534, this->jointTable, this->morphTable,
24);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &object_fr_Skel_00B498, &object_fr_Anim_001534,
this->jointTable, this->morphTable, 24);
// butterfly
SkelAnime_Init(globalCtx, &this->skelAnimeButterfly, &gButterflySkel, &gButterflyAnim,
this->jointTableButterfly, this->morphTableButterfly, 8);
@ -397,8 +393,8 @@ void EnFr_DecrementBlinkTimerUpdate(EnFr* this) {
void EnFr_SetupJumpingOutOfWater(EnFr* this, GlobalContext* globalCtx) {
if (sEnFrPointers.flags == sTimerJumpingOutOfWater[this->actor.params - 1]) {
Animation_Change(&this->skelAnime, &D_060007BC, 1.0f, 0.0f, Animation_GetLastFrame(&D_060007BC), ANIMMODE_ONCE,
0.0f);
Animation_Change(&this->skelAnime, &object_fr_Anim_0007BC, 1.0f, 0.0f,
Animation_GetLastFrame(&object_fr_Anim_0007BC), ANIMMODE_ONCE, 0.0f);
EnFr_DrawActive(this);
this->actionFunc = EnFr_JumpingOutOfWater;
}
@ -446,20 +442,20 @@ void EnFr_OrientOnLogSpot(EnFr* this, GlobalContext* globalCtx) {
if ((rotYRemaining == 0) && (this->skelAnime.curFrame == this->skelAnime.endFrame)) {
sEnFrPointers.flags++;
this->actionFunc = EnFr_ChooseJumpFromLogSpot;
Animation_Change(&this->skelAnime, &D_06001534, 1.0f, 0.0f, Animation_GetLastFrame(&D_06001534), ANIMMODE_LOOP,
0.0f);
Animation_Change(&this->skelAnime, &object_fr_Anim_001534, 1.0f, 0.0f,
Animation_GetLastFrame(&object_fr_Anim_001534), ANIMMODE_LOOP, 0.0f);
}
}
void EnFr_ChooseJumpFromLogSpot(EnFr* this, GlobalContext* globalCtx) {
if (sEnFrPointers.flags == 12) {
this->actor.world.rot.y = ((f32)0x8000 / M_PI) * sLogSpotToFromWater[this->actor.params].yaw;
Animation_Change(&this->skelAnime, &D_060007BC, 1.0f, 0.0f, Animation_GetLastFrame(&D_060007BC), ANIMMODE_ONCE,
0.0f);
Animation_Change(&this->skelAnime, &object_fr_Anim_0007BC, 1.0f, 0.0f,
Animation_GetLastFrame(&object_fr_Anim_0007BC), ANIMMODE_ONCE, 0.0f);
this->actionFunc = EnFr_JumpingBackIntoWater;
} else if (this->isJumpingUp) {
Animation_Change(&this->skelAnime, &D_060007BC, 1.0f, 0.0f, Animation_GetLastFrame(&D_060007BC), ANIMMODE_ONCE,
0.0f);
Animation_Change(&this->skelAnime, &object_fr_Anim_0007BC, 1.0f, 0.0f,
Animation_GetLastFrame(&object_fr_Anim_0007BC), ANIMMODE_ONCE, 0.0f);
this->actionFunc = EnFr_JumpingUp;
}
}
@ -481,8 +477,8 @@ void EnFr_JumpingUp(EnFr* this, GlobalContext* globalCtx) {
if (EnFr_IsBelowLogSpot(this, &yDistToLogSpot)) {
this->isJumpingUp = false;
this->actor.gravity = 0.0f;
Animation_Change(&this->skelAnime, &D_060011C0, 1.0f, 0.0f, Animation_GetLastFrame(&D_060011C0), ANIMMODE_LOOP,
0.0f);
Animation_Change(&this->skelAnime, &object_fr_Anim_0011C0, 1.0f, 0.0f,
Animation_GetLastFrame(&object_fr_Anim_0011C0), ANIMMODE_LOOP, 0.0f);
this->actionFunc = EnFr_ChooseJumpFromLogSpot;
} else if ((this->actor.velocity.y <= 0.0f) && (yDistToLogSpot < 40.0f)) {
this->skelAnime.playSpeed = 1.0f;
@ -503,8 +499,8 @@ void EnFr_JumpingBackIntoWater(EnFr* this, GlobalContext* globalCtx) {
// Final Spot Reached
if ((this->actor.velocity.y < 0.0f) && (this->actor.world.pos.y < yUnderwater)) {
Animation_Change(&this->skelAnime, &D_06001534, 1.0f, 0.0f, Animation_GetLastFrame(&D_06001534), ANIMMODE_LOOP,
0.0f);
Animation_Change(&this->skelAnime, &object_fr_Anim_001534, 1.0f, 0.0f,
Animation_GetLastFrame(&object_fr_Anim_001534), ANIMMODE_LOOP, 0.0f);
this->actionFunc = EnFr_SetupJumpingOutOfWater;
EnFr_DrawIdle(this);
this->isDeactivating = true;

View File

@ -10,6 +10,7 @@
#include "overlays/effects/ovl_Effect_Ss_Kakera/z_eff_ss_kakera.h"
#include "overlays/effects/ovl_Effect_Ss_HitMark/z_eff_ss_hitmark.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#include "objects/object_tsubo/object_tsubo.h"
#define FLAGS 0x00000030
@ -38,9 +39,6 @@ void EnGSwitch_SpawnEffects(EnGSwitch* this, Vec3f* pos, s16 scale, s16 colorIdx
void EnGSwitch_UpdateEffects(EnGSwitch* this, GlobalContext* globalCtx);
void EnGSwitch_DrawEffects(EnGSwitch* this, GlobalContext* globalCtx);
extern Gfx D_060017C0[];
extern Gfx D_06001960[];
static s16 sCollectedCount = 0;
static ColliderCylinderInit sCylinderInit = {
@ -401,7 +399,7 @@ void EnGSwitch_ArcheryPot(EnGSwitch* this, GlobalContext* globalCtx) {
scale = 30.0f + Rand_ZeroOne() * 130.0f;
EffectSsKakera_Spawn(globalCtx, &pos, &vel, thisPos, -240, phi_s0, 10, 10, 0, scale, 0, 0x20, 60,
KAKERA_COLOR_NONE, OBJECT_TSUBO, D_06001960);
KAKERA_COLOR_NONE, OBJECT_TSUBO, object_tsubo_DL_001960);
}
func_80033480(globalCtx, thisPos, 30.0f, 4, 20, 50, 0);
Audio_PlaySoundAtPosition(globalCtx, thisPos, 40, NA_SE_EV_POT_BROKEN);
@ -462,7 +460,7 @@ void EnGSwitch_DrawPot(Actor* thisx, GlobalContext* globalCtx) {
func_80093D18(globalCtx->state.gfxCtx);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_g_switch.c", 925),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, D_060017C0);
gSPDisplayList(POLY_OPA_DISP++, object_tsubo_DL_0017C0);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_g_switch.c", 928);
}
}

View File

@ -6,6 +6,7 @@
#include "z_en_gm.h"
#include "objects/object_oF1d_map/object_oF1d_map.h"
#include "objects/object_gm/object_gm.h"
#include "vt.h"
#define FLAGS 0x00000019
@ -27,8 +28,6 @@ void EnGm_ProcessChoiceIndex(EnGm* this, GlobalContext* globalCtx);
void func_80A3DF00(EnGm* this, GlobalContext* globalCtx);
void func_80A3DF60(EnGm* this, GlobalContext* globalCtx);
extern AnimationHeader D_060002B8;
const ActorInit En_Gm_InitVars = {
ACTOR_EN_GM,
ACTORCAT_NPC,
@ -109,8 +108,8 @@ void func_80A3D838(EnGm* this, GlobalContext* globalCtx) {
this->actor.flags &= ~0x10;
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &gGoronSkel, NULL, this->jointTable, this->morphTable, 18);
gSegments[6] = VIRTUAL_TO_PHYSICAL(globalCtx->objectCtx.status[this->objGmBankIndex].segment);
Animation_Change(&this->skelAnime, &D_060002B8, 1.0f, 0.0f, Animation_GetLastFrame(&D_060002B8), ANIMMODE_LOOP,
0.0f);
Animation_Change(&this->skelAnime, &object_gm_Anim_0002B8, 1.0f, 0.0f,
Animation_GetLastFrame(&object_gm_Anim_0002B8), ANIMMODE_LOOP, 0.0f);
this->actor.draw = EnGm_Draw;
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinderType1(globalCtx, &this->collider, &this->actor, &sCylinderInit);

View File

@ -6,6 +6,7 @@
#include "z_en_hs.h"
#include "vt.h"
#include "objects/object_hs/object_hs.h"
#define FLAGS 0x00000009
@ -51,11 +52,6 @@ static ColliderCylinderInit sCylinderInit = {
{ 40, 40, 0, { 0, 0, 0 } },
};
extern AnimationHeader D_06000304;
extern AnimationHeader D_06000528;
extern AnimationHeader D_060005C0;
extern FlexSkeletonHeader D_06006260;
void func_80A6E3A0(EnHs* this, EnHsActionFunc actionFunc) {
this->actionFunc = actionFunc;
}
@ -65,8 +61,9 @@ void EnHs_Init(Actor* thisx, GlobalContext* globalCtx) {
s32 pad;
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 36.0f);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_06006260, &D_060005C0, this->jointTable, this->morphTable, 16);
Animation_PlayLoop(&this->skelAnime, &D_060005C0);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &object_hs_Skel_006260, &object_hs_Anim_0005C0, this->jointTable,
this->morphTable, 16);
Animation_PlayLoop(&this->skelAnime, &object_hs_Anim_0005C0);
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit);
this->actor.colChkInfo.mass = MASS_IMMOVABLE;
@ -179,8 +176,8 @@ void func_80A6E7BC(EnHs* this, GlobalContext* globalCtx) {
break;
}
Animation_Change(&this->skelAnime, &D_060005C0, 1.0f, 0.0f, Animation_GetLastFrame(&D_060005C0), ANIMMODE_LOOP,
8.0f);
Animation_Change(&this->skelAnime, &object_hs_Anim_0005C0, 1.0f, 0.0f,
Animation_GetLastFrame(&object_hs_Anim_0005C0), ANIMMODE_LOOP, 8.0f);
}
this->unk_2A8 |= 1;
@ -192,8 +189,8 @@ void func_80A6E8CC(EnHs* this, GlobalContext* globalCtx) {
if ((func_8010BDBC(&globalCtx->msgCtx) == 5) && func_80106BC8(globalCtx)) {
func_8010B720(globalCtx, 0x10B3);
func_80A6E3A0(this, func_80A6E7BC);
Animation_Change(&this->skelAnime, &D_06000528, 1.0f, 0.0f, Animation_GetLastFrame(&D_06000528), ANIMMODE_LOOP,
8.0f);
Animation_Change(&this->skelAnime, &object_hs_Anim_000528, 1.0f, 0.0f,
Animation_GetLastFrame(&object_hs_Anim_000528), ANIMMODE_LOOP, 8.0f);
}
if (this->unk_2AA > 0) {
@ -214,8 +211,8 @@ void func_80A6E9AC(EnHs* this, GlobalContext* globalCtx) {
if (func_8002F368(globalCtx) == 7) {
player->actor.textId = 0x10B2;
func_80A6E3A0(this, func_80A6E8CC);
Animation_Change(&this->skelAnime, &D_06000304, 1.0f, 0.0f, Animation_GetLastFrame(&D_06000304),
ANIMMODE_LOOP, 8.0f);
Animation_Change(&this->skelAnime, &object_hs_Anim_000304, 1.0f, 0.0f,
Animation_GetLastFrame(&object_hs_Anim_000304), ANIMMODE_LOOP, 8.0f);
this->unk_2AA = 40;
func_80078884(NA_SE_SY_TRE_BOX_APPEAR);
} else {

View File

@ -6,6 +6,7 @@
#include "z_en_hs2.h"
#include "vt.h"
#include "objects/object_hs/object_hs.h"
#define FLAGS 0x00000009
@ -49,16 +50,14 @@ static ColliderCylinderInit sCylinderInit = {
{ 40, 40, 0, { 0, 0, 0 } },
};
extern FlexSkeletonHeader D_06006260;
extern AnimationHeader D_060005C0;
void EnHs2_Init(Actor* thisx, GlobalContext* globalCtx) {
EnHs2* this = THIS;
s32 pad;
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 36.0f);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_06006260, &D_060005C0, this->jointTable, this->morphTable, 16);
Animation_PlayLoop(&this->skelAnime, &D_060005C0);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &object_hs_Skel_006260, &object_hs_Anim_0005C0, this->jointTable,
this->morphTable, 16);
Animation_PlayLoop(&this->skelAnime, &object_hs_Anim_0005C0);
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit);
this->actor.colChkInfo.mass = MASS_IMMOVABLE;

View File

@ -1,5 +1,6 @@
#include "z_en_in.h"
#include "overlays/actors/ovl_En_Horse/z_en_horse.h"
#include "objects/object_in/object_in.h"
#define FLAGS 0x00000019
@ -62,35 +63,41 @@ static CollisionCheckInfoInit2 sColChkInfoInit = {
};
static struct_D_80AA1678 sAnimationInfo[] = {
{ 0x06001CC0, 1.0f, ANIMMODE_LOOP, 0.0f }, { 0x06001CC0, 1.0f, ANIMMODE_LOOP, -10.0f },
{ 0x06013C6C, 1.0f, ANIMMODE_LOOP, 0.0f }, { 0x06013C6C, 1.0f, ANIMMODE_LOOP, -10.0f },
{ 0x06000CB0, 1.0f, ANIMMODE_LOOP, 0.0f }, { 0x060003B4, 1.0f, ANIMMODE_LOOP, -10.0f },
{ 0x06001BE0, 1.0f, ANIMMODE_LOOP, 0.0f }, { 0x06013D60, 1.0f, ANIMMODE_LOOP, 0.0f },
{ 0x0601431C, 1.0f, ANIMMODE_LOOP, 0.0f }, { 0x06014CA8, 1.0f, ANIMMODE_LOOP, 0.0f },
{ &object_in_Anim_001CC0, 1.0f, ANIMMODE_LOOP, 0.0f }, { &object_in_Anim_001CC0, 1.0f, ANIMMODE_LOOP, -10.0f },
{ &object_in_Anim_013C6C, 1.0f, ANIMMODE_LOOP, 0.0f }, { &object_in_Anim_013C6C, 1.0f, ANIMMODE_LOOP, -10.0f },
{ &object_in_Anim_000CB0, 1.0f, ANIMMODE_LOOP, 0.0f }, { &object_in_Anim_0003B4, 1.0f, ANIMMODE_LOOP, -10.0f },
{ &object_in_Anim_001BE0, 1.0f, ANIMMODE_LOOP, 0.0f }, { &object_in_Anim_013D60, 1.0f, ANIMMODE_LOOP, 0.0f },
{ &object_in_Anim_01431C, 1.0f, ANIMMODE_LOOP, 0.0f }, { &object_in_Anim_014CA8, 1.0f, ANIMMODE_LOOP, 0.0f },
};
static AnimationHeader* D_80A7B918[] = {
0x060151C8, 0x06015DF0, 0x06016B3C, 0x06015814, 0x0601646C, 0x060175D0, 0x06017B58, 0x06018C38,
&object_in_Anim_0151C8, &object_in_Anim_015DF0, &object_in_Anim_016B3C, &object_in_Anim_015814,
&object_in_Anim_01646C, &object_in_Anim_0175D0, &object_in_Anim_017B58, &object_in_Anim_018C38,
};
static Gfx* sAlternateOutfitDLs[] = {
NULL, NULL, 0x06013688, 0x060137C0, 0x06013910, 0x060132B8, 0x060133F0,
0x06013540, 0x06013100, 0x06011758, 0x06012AC0, 0x06012BF0, 0x06012D20, 0x06012480,
0x060125B0, 0x060126E0, 0x06011AD8, 0x06012350, 0x06012220, 0x06012120,
NULL,
NULL,
object_in_DL_013688,
object_in_DL_0137C0,
object_in_DL_013910,
object_in_DL_0132B8,
object_in_DL_0133F0,
object_in_DL_013540,
object_in_DL_013100,
object_in_DL_011758,
object_in_DL_012AC0,
object_in_DL_012BF0,
object_in_DL_012D20,
object_in_DL_012480,
object_in_DL_0125B0,
object_in_DL_0126E0,
object_in_DL_011AD8,
object_in_DL_012350,
object_in_DL_012220,
object_in_DL_012120,
};
extern AnimationHeader D_060003B4;
extern AnimationHeader D_06001BE0;
extern AnimationHeader D_06013D60;
extern AnimationHeader D_06014CA8;
extern AnimationHeader D_06015814;
extern AnimationHeader D_0601646C;
extern AnimationHeader D_06018C38;
extern FlexSkeletonHeader D_06013B88;
extern UNK_TYPE D_060034D0;
extern Gfx D_06007A20[];
extern Gfx D_06007BF8[];
u16 func_80A78FB0(GlobalContext* globalCtx) {
if (gSaveContext.eventChkInf[1] & 0x10) {
if (gSaveContext.infTable[9] & 0x80) {
@ -298,8 +305,8 @@ void func_80A795C8(EnIn* this, GlobalContext* globalCtx) {
Player* player = PLAYER;
s16 phi_a3;
if (this->skelAnime.animation == &D_060003B4 || this->skelAnime.animation == &D_06001BE0 ||
this->skelAnime.animation == &D_06013D60) {
if (this->skelAnime.animation == &object_in_Anim_0003B4 || this->skelAnime.animation == &object_in_Anim_001BE0 ||
this->skelAnime.animation == &object_in_Anim_013D60) {
phi_a3 = 1;
} else {
phi_a3 = 0;
@ -401,7 +408,7 @@ void func_80A79AB4(EnIn* this, GlobalContext* globalCtx) {
s32 i;
u32 f = 0;
if (this->skelAnime.animation != &D_06014CA8) {
if (this->skelAnime.animation != &object_in_Anim_014CA8) {
f = globalCtx->gameplayFrames;
}
for (i = 0; i < ARRAY_COUNT(this->unk_330); i++) {
@ -496,7 +503,8 @@ void func_80A79FB0(EnIn* this, GlobalContext* globalCtx) {
if (Object_IsLoaded(&globalCtx->objectCtx, this->ingoObjBankIndex) || this->actor.params <= 0) {
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawCircle, 36.0f);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_06013B88, NULL, this->jointTable, this->morphTable, 20);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &object_in_Skel_013B88, NULL, this->jointTable,
this->morphTable, 20);
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit);
CollisionCheck_SetInfo2(&this->actor.colChkInfo, NULL, &sColChkInfoInit);
@ -595,12 +603,12 @@ void func_80A79FB0(EnIn* this, GlobalContext* globalCtx) {
}
void func_80A7A304(EnIn* this, GlobalContext* globalCtx) {
if (this->skelAnime.animation == &D_06015814 || this->skelAnime.animation == &D_0601646C) {
if (this->skelAnime.animation == &object_in_Anim_015814 || this->skelAnime.animation == &object_in_Anim_01646C) {
if (this->skelAnime.curFrame == 8.0f) {
func_800F41E0(&this->actor.projectedPos, NA_SE_VO_IN_LASH_0, 2);
}
}
if (this->skelAnime.animation == &D_06018C38 && this->skelAnime.curFrame == 20.0f) {
if (this->skelAnime.animation == &object_in_Anim_018C38 && this->skelAnime.curFrame == 20.0f) {
Audio_PlayActorSound2(&this->actor, NA_SE_VO_IN_CRY_0);
}
if (SkelAnime_Update(&this->skelAnime) != 0) {
@ -900,7 +908,7 @@ void EnIn_Update(Actor* thisx, GlobalContext* globalCtx) {
CollisionCheck_SetOC(globalCtx, &globalCtx->colChkCtx, &collider->base);
if (this->actionFunc != func_80A7A304) {
SkelAnime_Update(&this->skelAnime);
if (this->skelAnime.animation == &D_06001BE0 && ((gSaveContext.eventInf[0] & 0xF) != 6)) {
if (this->skelAnime.animation == &object_in_Anim_001BE0 && ((gSaveContext.eventInf[0] & 0xF) != 6)) {
func_80A79690(&this->skelAnime, this, globalCtx);
}
Actor_UpdateBgCheckInfo(globalCtx, &this->actor, 0.0f, 0.0f, 0.0f, 4);
@ -961,24 +969,25 @@ void EnIn_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec
Matrix_MultVec3f(&D_80A7B9A8, &this->actor.focus.pos);
this->actor.focus.rot = this->actor.world.rot;
}
if (limbIndex == 12 && this->skelAnime.animation == &D_06014CA8) {
gSPDisplayList(POLY_OPA_DISP++, D_06007A20);
if (limbIndex == 12 && this->skelAnime.animation == &object_in_Anim_014CA8) {
gSPDisplayList(POLY_OPA_DISP++, object_in_DL_007A20);
}
if (limbIndex == 15 && this->skelAnime.animation == &D_06014CA8) {
gSPDisplayList(POLY_OPA_DISP++, D_06007BF8);
if (limbIndex == 15 && this->skelAnime.animation == &object_in_Anim_014CA8) {
gSPDisplayList(POLY_OPA_DISP++, object_in_DL_007BF8);
}
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_en_in.c", 2365);
}
void EnIn_Draw(Actor* thisx, GlobalContext* globalCtx) {
static UNK_TYPE* D_80A7B9B4[] = { 0x06003590, 0x060047D0, 0x06004BD0, 0x06004390 };
static UNK_TYPE* D_80A7B9B4[] = { object_in_Tex_003590, object_in_Tex_0047D0, object_in_Tex_004BD0,
object_in_Tex_004390 };
EnIn* this = THIS;
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_in.c", 2384);
if (this->actionFunc != func_80A79FB0) {
func_80093D18(globalCtx->state.gfxCtx);
gSPSegment(POLY_OPA_DISP++, 0x08, SEGMENTED_TO_VIRTUAL(D_80A7B9B4[this->unk_1EE]));
gSPSegment(POLY_OPA_DISP++, 0x09, SEGMENTED_TO_VIRTUAL(&D_060034D0));
gSPSegment(POLY_OPA_DISP++, 0x09, SEGMENTED_TO_VIRTUAL(&object_in_Tex_0034D0));
SkelAnime_DrawFlexOpa(globalCtx, this->skelAnime.skeleton, this->skelAnime.jointTable,
this->skelAnime.dListCount, EnIn_OverrideLimbDraw, EnIn_PostLimbDraw, &this->actor);
}

View File

@ -6,6 +6,7 @@
#include "z_en_kakasi.h"
#include "vt.h"
#include "objects/object_ka/object_ka.h"
#define FLAGS 0x02000009
@ -43,9 +44,6 @@ static ColliderCylinderInit sCylinderInit = {
{ 20, 70, 0, { 0, 0, 0 } },
};
extern FlexSkeletonHeader D_060065B0;
extern AnimationHeader D_06000214;
const ActorInit En_Kakasi_InitVars = {
ACTOR_EN_KAKASI,
ACTORCAT_NPC,
@ -74,7 +72,7 @@ void EnKakasi_Init(Actor* thisx, GlobalContext* globalCtx) {
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit);
this->actor.targetMode = 6;
SkelAnime_InitFlex(globalCtx, &this->skelanime, &D_060065B0, &D_06000214, NULL, NULL, 0);
SkelAnime_InitFlex(globalCtx, &this->skelanime, &object_ka_Skel_0065B0, &object_ka_Anim_000214, NULL, NULL, 0);
this->rot = this->actor.world.rot;
this->actor.flags |= 0x400;
@ -175,9 +173,9 @@ void func_80A8F320(EnKakasi* this, GlobalContext* globalCtx, s16 arg) {
}
void func_80A8F660(EnKakasi* this, GlobalContext* globalCtx) {
f32 frameCount = Animation_GetLastFrame(&D_06000214);
f32 frameCount = Animation_GetLastFrame(&object_ka_Anim_000214);
Animation_Change(&this->skelanime, &D_06000214, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f);
Animation_Change(&this->skelanime, &object_ka_Anim_000214, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f);
this->actor.textId = 0x4076;
this->unk_196 = 6;

View File

@ -6,6 +6,7 @@
#include "z_en_kakasi2.h"
#include "vt.h"
#include "objects/object_ka/object_ka.h"
#define FLAGS 0x0A000031
@ -42,9 +43,6 @@ void func_80A904D8(EnKakasi2* this, GlobalContext* globalCtx);
void func_80A90578(EnKakasi2* this, GlobalContext* globalCtx);
void func_80A906C4(EnKakasi2* this, GlobalContext* globalCtx);
extern FlexSkeletonHeader D_060065B0;
extern AnimationHeader D_06000214;
const ActorInit En_Kakasi2_InitVars = {
ACTOR_EN_KAKASI2,
ACTORCAT_PROP,
@ -100,7 +98,7 @@ void EnKakasi2_Init(Actor* thisx, GlobalContext* globalCtx) {
this->actor.draw = func_80A90948;
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_060065B0, &D_06000214, NULL, NULL, 0);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &object_ka_Skel_0065B0, &object_ka_Anim_000214, NULL, NULL, 0);
this->actionFunc = func_80A9062C;
} else {
this->actionFunc = func_80A90264;
@ -126,7 +124,7 @@ void func_80A90264(EnKakasi2* this, GlobalContext* globalCtx) {
this->actor.draw = func_80A90948;
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_060065B0, &D_06000214, NULL, NULL, 0);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &object_ka_Skel_0065B0, &object_ka_Anim_000214, NULL, NULL, 0);
OnePointCutscene_Attention(globalCtx, &this->actor);
this->actor.flags |= 0x8000001;
@ -151,7 +149,8 @@ void func_80A90264(EnKakasi2* this, GlobalContext* globalCtx) {
this->actor.draw = func_80A90948;
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_060065B0, &D_06000214, NULL, NULL, 0);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &object_ka_Skel_0065B0, &object_ka_Anim_000214, NULL, NULL,
0);
OnePointCutscene_Attention(globalCtx, &this->actor);
func_80078884(NA_SE_SY_CORRECT_CHIME);
@ -162,9 +161,9 @@ void func_80A90264(EnKakasi2* this, GlobalContext* globalCtx) {
}
void func_80A904D8(EnKakasi2* this, GlobalContext* globalCtx) {
f32 frameCount = Animation_GetLastFrame(&D_06000214);
f32 frameCount = Animation_GetLastFrame(&object_ka_Anim_000214);
Animation_Change(&this->skelAnime, &D_06000214, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f);
Animation_Change(&this->skelAnime, &object_ka_Anim_000214, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f);
Audio_PlayActorSound2(&this->actor, NA_SE_EV_COME_UP_DEKU_JR);
this->actionFunc = func_80A90578;
}
@ -189,9 +188,9 @@ void func_80A90578(EnKakasi2* this, GlobalContext* globalCtx) {
}
void func_80A9062C(EnKakasi2* this, GlobalContext* globalCtx) {
f32 frameCount = Animation_GetLastFrame(&D_06000214);
f32 frameCount = Animation_GetLastFrame(&object_ka_Anim_000214);
Animation_Change(&this->skelAnime, &D_06000214, 0.0f, 0.0f, (s16)frameCount, ANIMMODE_ONCE, -10.0f);
Animation_Change(&this->skelAnime, &object_ka_Anim_000214, 0.0f, 0.0f, (s16)frameCount, ANIMMODE_ONCE, -10.0f);
this->actionFunc = func_80A906C4;
}

View File

@ -6,6 +6,7 @@
#include "z_en_kakasi3.h"
#include "vt.h"
#include "objects/object_ka/object_ka.h"
#define FLAGS 0x02000009
@ -47,9 +48,6 @@ static ColliderCylinderInit sCylinderInit = {
{ 20, 70, 0, { 0, 0, 0 } },
};
extern FlexSkeletonHeader D_060065B0;
extern AnimationHeader D_06000214;
const ActorInit En_Kakasi3_InitVars = {
ACTOR_EN_KAKASI3,
ACTORCAT_NPC,
@ -79,7 +77,7 @@ void EnKakasi3_Init(Actor* thisx, GlobalContext* globalCtx) {
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &D_060065B0, &D_06000214, NULL, NULL, 0);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &object_ka_Skel_0065B0, &object_ka_Anim_000214, NULL, NULL, 0);
this->actor.flags |= 0x400;
this->rot = this->actor.world.rot;
this->actor.colChkInfo.mass = MASS_IMMOVABLE;
@ -178,9 +176,9 @@ void func_80A90EBC(EnKakasi3* this, GlobalContext* globalCtx, s32 arg) {
}
void func_80A911F0(EnKakasi3* this, GlobalContext* globalCtx) {
f32 frameCount = Animation_GetLastFrame(&D_06000214);
f32 frameCount = Animation_GetLastFrame(&object_ka_Anim_000214);
Animation_Change(&this->skelAnime, &D_06000214, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f);
Animation_Change(&this->skelAnime, &object_ka_Anim_000214, 1.0f, 0.0f, (s16)frameCount, ANIMMODE_LOOP, -10.0f);
this->actionFunc = func_80A91284;
}

View File

@ -6,6 +6,7 @@
#include "z_en_kanban.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#include "objects/object_kanban/object_kanban.h"
#include "vt.h"
#define FLAGS 0x00000019
@ -76,9 +77,6 @@ void EnKanban_Destroy(Actor* thisx, GlobalContext* globalCtx);
void EnKanban_Update(Actor* thisx, GlobalContext* globalCtx);
void EnKanban_Draw(Actor* thisx, GlobalContext* globalCtx);
extern Gfx D_06000C30[];
extern Gfx D_06001630[];
const ActorInit En_Kanban_InitVars = {
ACTOR_EN_KANBAN,
ACTORCAT_PROP,
@ -765,8 +763,9 @@ void EnKanban_Update(Actor* thisx, GlobalContext* globalCtx2) {
}
static Gfx* sDisplayLists[] = {
0x06000CB0, 0x06000DB8, 0x06000E78, 0x06000F38, 0x06000FF8, 0x060010B8,
0x060011C0, 0x060012C8, 0x060013D0, 0x06001488, 0x06001540,
object_kanban_DL_000CB0, object_kanban_DL_000DB8, object_kanban_DL_000E78, object_kanban_DL_000F38,
object_kanban_DL_000FF8, object_kanban_DL_0010B8, object_kanban_DL_0011C0, object_kanban_DL_0012C8,
object_kanban_DL_0013D0, object_kanban_DL_001488, object_kanban_DL_001540,
};
#include "z_en_kanban_gfx.c"
@ -813,7 +812,7 @@ void EnKanban_Draw(Actor* thisx, GlobalContext* globalCtx) {
OPEN_DISPS(globalCtx->state.gfxCtx, "../z_en_kanban.c", 1659);
func_80093D18(globalCtx->state.gfxCtx);
func_80093D84(globalCtx->state.gfxCtx);
gSPDisplayList(POLY_OPA_DISP++, D_06000C30);
gSPDisplayList(POLY_OPA_DISP++, object_kanban_DL_000C30);
if (this->actionState != ENKANBAN_SIGN) {
Matrix_Translate(this->actor.world.pos.x, this->actor.world.pos.y, this->actor.world.pos.z, MTXMODE_NEW);
Matrix_Scale(this->actor.scale.x, this->actor.scale.y, this->actor.scale.z, MTXMODE_APPLY);
@ -861,7 +860,7 @@ void EnKanban_Draw(Actor* thisx, GlobalContext* globalCtx) {
gDPSetEnvColor(POLY_XLU_DISP++, 255, 255, 150, 0);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_en_kanban.c", 1773),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, D_06001630);
gSPDisplayList(POLY_XLU_DISP++, object_kanban_DL_001630);
}
}
if ((this->actor.projectedPos.z <= 400.0f) && (this->actor.projectedPos.z > 0.0f) &&

View File

@ -5,6 +5,7 @@
*/
#include "z_en_kz.h"
#include "objects/object_kz/object_kz.h"
#define FLAGS 0x00000009
@ -58,13 +59,11 @@ static ColliderCylinderInit sCylinderInit = {
static CollisionCheckInfoInit2 sColChkInfoInit = { 0, 0, 0, 0, MASS_IMMOVABLE };
static struct_80034EC0_Entry sAnimations[] = {
{ 0x0600075C, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, 0.0f },
{ 0x0600075C, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, -10.0f },
{ 0x0600046C, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, -10.0f },
{ &object_kz_Anim_00075C, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, 0.0f },
{ &object_kz_Anim_00075C, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, -10.0f },
{ &object_kz_Anim_00046C, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, -10.0f },
};
extern FlexSkeletonHeader D_060086D0;
u16 EnKz_GetTextNoMaskChild(GlobalContext* globalCtx, EnKz* this) {
Player* player = PLAYER;
@ -316,7 +315,8 @@ void EnKz_Init(Actor* thisx, GlobalContext* globalCtx) {
EnKz* this = THIS;
s32 pad;
SkelAnime_InitFlex(globalCtx, &this->skelanime, &D_060086D0, NULL, this->jointTable, this->morphTable, 12);
SkelAnime_InitFlex(globalCtx, &this->skelanime, &object_kz_Skel_0086D0, NULL, this->jointTable, this->morphTable,
12);
ActorShape_Init(&this->actor.shape, 0.0, NULL, 0.0);
Collider_InitCylinder(globalCtx, &this->collider);
Collider_SetCylinder(globalCtx, &this->collider, &this->actor, &sCylinderInit);
@ -486,9 +486,9 @@ void EnKz_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec
void EnKz_Draw(Actor* thisx, GlobalContext* globalCtx) {
static void* sEyeSegments[] = {
0x06001470,
0x06001870,
0x06001C70,
object_kz_Tex_001470,
object_kz_Tex_001870,
object_kz_Tex_001C70,
};
EnKz* this = THIS;

View File

@ -5,6 +5,7 @@
*/
#include "z_en_lightbox.h"
#include "objects/object_lightbox/object_lightbox.h"
#define FLAGS 0x00000010
@ -27,9 +28,6 @@ const ActorInit En_Lightbox_InitVars = {
(ActorFunc)EnLightbox_Draw,
};
extern Gfx D_06000B70[];
extern CollisionHeader D_06001F10;
void EnLightbox_Init(Actor* thisx, GlobalContext* globalCtx) {
CollisionHeader* colHeader = NULL;
EnLightbox* this = THIS;
@ -59,7 +57,7 @@ void EnLightbox_Init(Actor* thisx, GlobalContext* globalCtx) {
this->dyna.unk_15C = 0;
thisx->targetMode = 0;
thisx->gravity = -2.0f;
CollisionHeader_GetVirtual(&D_06001F10, &colHeader);
CollisionHeader_GetVirtual(&object_lightbox_Col_001F10, &colHeader);
this->dyna.bgId = DynaPoly_SetBgActor(globalCtx, &globalCtx->colCtx.dyna, thisx, colHeader);
}
@ -112,5 +110,5 @@ void EnLightbox_Update(Actor* thisx, GlobalContext* globalCtx) {
}
void EnLightbox_Draw(Actor* thisx, GlobalContext* globalCtx) {
Gfx_DrawDListOpa(globalCtx, D_06000B70);
Gfx_DrawDListOpa(globalCtx, object_lightbox_DL_000B70);
}

View File

@ -56,12 +56,6 @@ static u16 sSfxIds[] = {
NA_SE_IT_ROLLING_CUT_LV1,
};
extern Gfx D_04012570[];
extern Gfx D_04012690[];
extern Gfx D_04012AF0[];
extern Gfx D_04012C10[];
extern Gfx D_04013610[];
// Setup action
void func_80A9EFE0(EnMThunder* this, EnMThunderActionFunc actionFunc) {
this->actionFunc = actionFunc;

Some files were not shown because too many files have changed in this diff Show More