1
0
mirror of https://github.com/zeldaret/oot.git synced 2024-09-21 04:24:43 +00:00
* remove fake match

* merge master

* animations

* dog limbs

* textures

* KZ limbs and DL

* a few KZ textures and make a file for link_boy

* the rest of KZ

* Far Limb DLs

* near DLs and limbs

* small fix to child

* boots and some sword and more child clean ups

* a bunch of DLs

* fix boy

* fix link child for real this time

* adult should be good now

* progress

* all undefined symbols done

* progress

* done (for now)

* restore makefile

* child -> adult

* child -> adult

* dog fixes

* KZ fixes

* more player fixes

* remove unneeded enum in dog

* rename hookshot stuff

* Update z_player_lib.c

* revert model group stuff

* move comment

* fix mirror shield upper

* remove useless 2

* OOT -> Oot

* gauntlet plate 2 fix

* fix

Co-authored-by: Louis <louist103@pop-os.localdomain>
This commit is contained in:
louist103 2021-12-27 08:08:26 -05:00 committed by GitHub
parent 6213fe3bbd
commit a862411f00
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
14 changed files with 622 additions and 343 deletions

View File

@ -1,41 +1,41 @@
<Root>
<File Name="object_dog" Segment="6">
<Animation Name="object_dog_Anim_000278" Offset="0x278"/>
<Animation Name="object_dog_Anim_000928" Offset="0x928"/>
<Animation Name="object_dog_Anim_000C28" Offset="0xC28"/>
<Animation Name="object_dog_Anim_000D78" Offset="0xD78"/>
<Animation Name="object_dog_Anim_001150" Offset="0x1150"/>
<Animation Name="object_dog_Anim_001368" Offset="0x1368"/>
<Texture Name="object_dog_Tex_001380" OutName="tex_001380" Format="rgba16" Width="32" Height="32" Offset="0x1380"/>
<Texture Name="object_dog_Tex_001B80" OutName="tex_001B80" Format="rgba16" Width="32" Height="32" Offset="0x1B80"/>
<Texture Name="object_dog_Tex_002380" OutName="tex_002380" Format="rgba16" Width="32" Height="32" Offset="0x2380"/>
<Texture Name="object_dog_Tex_002B80" OutName="tex_002B80" Format="rgba16" Width="32" Height="32" Offset="0x2B80"/>
<Texture Name="object_dog_Tex_003380" OutName="tex_003380" Format="rgba16" Width="32" Height="32" Offset="0x3380"/>
<Texture Name="object_dog_Tex_003B80" OutName="tex_003B80" Format="rgba16" Width="32" Height="32" Offset="0x3B80"/>
<Texture Name="object_dog_Tex_004380" OutName="tex_004380" Format="rgba16" Width="16" Height="16" Offset="0x4380"/>
<Texture Name="object_dog_Tex_004580" OutName="tex_004580" Format="rgba16" Width="32" Height="32" Offset="0x4580"/>
<DList Name="object_dog_DL_0060E0" Offset="0x60E0"/>
<DList Name="object_dog_DL_006448" Offset="0x6448"/>
<DList Name="object_dog_DL_0064E8" Offset="0x64E8"/>
<DList Name="object_dog_DL_006588" Offset="0x6588"/>
<DList Name="object_dog_DL_0067A0" Offset="0x67A0"/>
<DList Name="object_dog_DL_006950" Offset="0x6950"/>
<DList Name="object_dog_DL_006B00" Offset="0x6B00"/>
<DList Name="object_dog_DL_006CA0" Offset="0x6CA0"/>
<DList Name="object_dog_DL_006E50" Offset="0x6E50"/>
<DList Name="object_dog_DL_007000" Offset="0x7000"/>
<Limb Name="object_dog_Limb_0071D0" LimbType="Standard" Offset="0x71D0"/>
<Limb Name="object_dog_Limb_0071DC" LimbType="Standard" Offset="0x71DC"/>
<Limb Name="object_dog_Limb_0071E8" LimbType="Standard" Offset="0x71E8"/>
<Limb Name="object_dog_Limb_0071F4" LimbType="Standard" Offset="0x71F4"/>
<Limb Name="object_dog_Limb_007200" LimbType="Standard" Offset="0x7200"/>
<Limb Name="object_dog_Limb_00720C" LimbType="Standard" Offset="0x720C"/>
<Limb Name="object_dog_Limb_007218" LimbType="Standard" Offset="0x7218"/>
<Limb Name="object_dog_Limb_007224" LimbType="Standard" Offset="0x7224"/>
<Limb Name="object_dog_Limb_007230" LimbType="Standard" Offset="0x7230"/>
<Limb Name="object_dog_Limb_00723C" LimbType="Standard" Offset="0x723C"/>
<Limb Name="object_dog_Limb_007248" LimbType="Standard" Offset="0x7248"/>
<Limb Name="object_dog_Limb_007254" LimbType="Standard" Offset="0x7254"/>
<Skeleton Name="object_dog_Skel_007290" Type="Flex" LimbType="Standard" Offset="0x7290"/>
<Animation Name="gDogBarkAnim" Offset="0x278"/>
<Animation Name="gDogBowAnim" Offset="0x928"/>
<Animation Name="gDogBow2Anim" Offset="0xC28"/>
<Animation Name="gDogRunAnim" Offset="0xD78"/>
<Animation Name="gDogSitAnim" Offset="0x1150"/>
<Animation Name="gDogWalkAnim" Offset="0x1368"/>
<Texture Name="gDogFur1Tex" OutName="fur_1" Format="rgba16" Width="32" Height="32" Offset="0x1380"/> <!-- Lower body-->
<Texture Name="gDogFur2Tex" OutName="fur_2" Format="rgba16" Width="32" Height="32" Offset="0x1B80"/> <!-- Front of ears, upper part of the tail, and around the feet-->
<Texture Name="gDogFur3Tex" OutName="fur_3" Format="rgba16" Width="32" Height="32" Offset="0x2380"/> <!-- Upper body, top of head-->
<Texture Name="gDogFaceEyeTex" OutName="face_and_eye" Format="rgba16" Width="32" Height="32" Offset="0x2B80"/>
<Texture Name="gDogFaceNoseTex" OutName="face_and_nose" Format="rgba16" Width="32" Height="32" Offset="0x3380"/>
<Texture Name="gDogFur4Tex" OutName="fur_4" Format="rgba16" Width="32" Height="32" Offset="0x3B80"/> <!-- Back of ears, side of head, and part of front body-->
<Texture Name="gDogPawTex" OutName="paw" Format="rgba16" Width="16" Height="16" Offset="0x4380"/>
<Texture Name="gDogFaceHairTex" OutName="face_hair" Format="rgba16" Width="32" Height="32" Offset="0x4580"/>
<DList Name="gDogHeadDL" Offset="0x60E0"/>
<DList Name="gDogRightFaceHairDL" Offset="0x6448"/>
<DList Name="gDogLeftFaceHairDL" Offset="0x64E8"/>
<DList Name="gDogFrontBodyDL" Offset="0x6588"/>
<DList Name="gDogFrontRightLegDL" Offset="0x67A0"/>
<DList Name="gDogFrontLeftLegDL" Offset="0x6950"/>
<DList Name="gDogBackBodyDL" Offset="0x6B00"/>
<DList Name="gDogBackRightLegDL" Offset="0x6CA0"/>
<DList Name="gDogBackLeftLegDL" Offset="0x6E50"/>
<DList Name="gDogTailDL" Offset="0x7000"/>
<Limb Name="gDogRootLimb" LimbType="Standard" Offset="0x71D0"/>
<Limb Name="gDogBodyBackLimb" LimbType="Standard" Offset="0x71DC"/>
<Limb Name="gDogBodyFrontLimb" LimbType="Standard" Offset="0x71E8"/>
<Limb Name="gDogHeadControlLimb" LimbType="Standard" Offset="0x71F4"/>
<Limb Name="gDogHeadLimb" LimbType="Standard" Offset="0x7200"/>
<Limb Name="gDogRightFaceHairLimb" LimbType="Standard" Offset="0x720C"/>
<Limb Name="gDogLeftFaceHairLimb" LimbType="Standard" Offset="0x7218"/>
<Limb Name="gDogFrontRightLegLimb" LimbType="Standard" Offset="0x7224"/>
<Limb Name="gDogFrontLeftLegLimb" LimbType="Standard" Offset="0x7230"/>
<Limb Name="gDogBackRightLegLimb" LimbType="Standard" Offset="0x723C"/>
<Limb Name="gDogBackLeftLegLimb" LimbType="Standard" Offset="0x7248"/>
<Limb Name="gDogTailLimb" LimbType="Standard" Offset="0x7254"/>
<Skeleton Name="gDogSkel" Type="Flex" LimbType="Standard" Offset="0x7290"/>
</File>
</Root>

View File

@ -1,43 +1,45 @@
<Root>
<File Name="object_kz" Segment="6">
<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_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"/>
<Animation Name="gKzMweepAnim" Offset="0x46C"/>
<Animation Name="gKzIdleAnim" Offset="0x75C"/>
<Texture Name="gKzTlut" OutName="tlut" Format="rgba16" Width="16" Height="16" Offset="0x770"/>
<Texture Name="gKzEyeTlut" OutName="eye_tlut" Format="rgba16" Width="16" Height="16" Offset="0x970"/>
<Texture Name="gKzFaceScalesTex" OutName="face_scales" Format="ci8" Width="32" Height="32" Offset="0xB70" TlutOffset="0x770"/>
<Texture Name="gKzSkinGradient1Tex" OutName="skin_gradient_1" Format="ci8" Width="8" Height="16" Offset="0xF70" TlutOffset="0x770"/>
<Texture Name="gKzCrownTex" OutName="crown" Format="ci8" Width="32" Height="32" Offset="0xFF0" TlutOffset="0x770"/>
<Texture Name="gKzSkinGradient2Tex" OutName="skin_gradient_2" 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"/>
<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="gKzEyeOpenTex" OutName="eye_open" Format="ci8" Width="32" Height="32" Offset="0x1470" TlutOffset="0x970"/>
<Texture Name="gKzEyeHalfTex" OutName="eye_half" Format="ci8" Width="32" Height="32" Offset="0x1870" TlutOffset="0x970"/>
<Texture Name="gKzEyeClosedTex" OutName="eye_closed" Format="ci8" Width="32" Height="32" Offset="0x1C70" TlutOffset="0x970"/>
<Texture Name="gKzEyeOpen2Tex" OutName="eye_open_2" Format="ci8" Width="32" Height="32" Offset="0x2070" TlutOffset="0x970"/>
<Texture Name="gKzHandAndFootTex" OutName="hand_and_foot" 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"/>
<DList Name="object_kz_DL_005920" Offset="0x5920"/>
<DList Name="object_kz_DL_006420" Offset="0x6420"/>
<DList Name="object_kz_DL_007298" Offset="0x7298"/>
<DList Name="object_kz_DL_0074B0" Offset="0x74B0"/>
<DList Name="object_kz_DL_0076C8" Offset="0x76C8"/>
<DList Name="object_kz_DL_0079E0" Offset="0x79E0"/>
<DList Name="object_kz_DL_007C00" Offset="0x7C00"/>
<DList Name="object_kz_DL_007D40" Offset="0x7D40"/>
<DList Name="object_kz_DL_008000" Offset="0x8000"/>
<DList Name="object_kz_DL_008220" Offset="0x8220"/>
<DList Name="object_kz_DL_008360" Offset="0x8360"/>
<Limb Name="object_kz_Limb_008620" LimbType="Standard" Offset="0x8620"/>
<Limb Name="object_kz_Limb_00862C" LimbType="Standard" Offset="0x862C"/>
<Limb Name="object_kz_Limb_008638" LimbType="Standard" Offset="0x8638"/>
<Limb Name="object_kz_Limb_008644" LimbType="Standard" Offset="0x8644"/>
<Limb Name="object_kz_Limb_008650" LimbType="Standard" Offset="0x8650"/>
<Limb Name="object_kz_Limb_00865C" LimbType="Standard" Offset="0x865C"/>
<Limb Name="object_kz_Limb_008668" LimbType="Standard" Offset="0x8668"/>
<Texture Name="gKzCloakOutlineTex" OutName="cloak_outline" Format="ci8" Width="32" Height="32" Offset="0x2670" TlutOffset="0x770"/>
<DList Name="gKzCloakAndTorsoDL" Offset="0x5920"/>
<DList Name="gKzHeadDL" Offset="0x6420"/>
<DList Name="gKzRightHandDL" Offset="0x7298"/>
<DList Name="gKzLeftHandDL" Offset="0x74B0"/>
<DList Name="gKzPelvisDL" Offset="0x76C8"/>
<DList Name="gKzRightThighDL" Offset="0x79E0"/>
<DList Name="gKzRightLegDL" Offset="0x7C00"/>
<DList Name="gKzRightFootDL" Offset="0x7D40"/>
<DList Name="gKzLeftThighDL" Offset="0x8000"/>
<DList Name="gKzLeftLegDL" Offset="0x8220"/>
<DList Name="gKzLeftFootDL" Offset="0x8360"/>
<Limb Name="gKzPelvisLimb" LimbType="Standard" Offset="0x8620"/>
<Limb Name="gKzLeftThighLimb" LimbType="Standard" Offset="0x862C"/>
<Limb Name="gKzLeftLegLimb" LimbType="Standard" Offset="0x8638"/>
<Limb Name="gKzLeftFootLimb" LimbType="Standard" Offset="0x8644"/>
<Limb Name="gKzRightThighLimb" LimbType="Standard" Offset="0x8650"/>
<Limb Name="gKzRightLegLimb" LimbType="Standard" Offset="0x865C"/>
<Limb Name="gKzRightFootLimb" LimbType="Standard" Offset="0x8668"/>
<Limb Name="object_kz_Limb_008674" LimbType="Standard" Offset="0x8674"/>
<Limb Name="object_kz_Limb_008680" LimbType="Standard" Offset="0x8680"/>
<Limb Name="object_kz_Limb_00868C" LimbType="Standard" Offset="0x868C"/>
<Limb Name="object_kz_Limb_008698" LimbType="Standard" Offset="0x8698"/>
<Skeleton Name="object_kz_Skel_0086D0" Type="Flex" LimbType="Standard" Offset="0x86D0"/>
<Limb Name="gKzLeftHandLimb" LimbType="Standard" Offset="0x8680"/>
<Limb Name="gKzRightHandLimb" LimbType="Standard" Offset="0x868C"/>
<Limb Name="gKzHeadLimb" LimbType="Standard" Offset="0x8698"/>
<Skeleton Name="gKzSkel" Type="Flex" LimbType="Standard" Offset="0x86D0"/>
</File>
</Root>

View File

@ -0,0 +1,271 @@
<Root>
<File Name="object_link_boy" Segment="6">
<Skeleton Name="gLinkAdultSkel" Type="Flex" LimbType="LOD" Offset="0x377F4"/>
<!-- Far Limb DLists-->
<DList Name="gLinkAdultWaistFarDL" Offset="0x2F530"/>
<DList Name="gLinkAdultRightThighFarDL" Offset="0x2F7A0"/>
<DList Name="gLinkAdultRightLegFarDL" Offset="0x2F9B8"/>
<DList Name="gLinkAdultRightFootFarDL" Offset="0x2FB80"/>
<DList Name="gLinkAdultLeftThighFarDL" Offset="0x2FCA0"/>
<DList Name="gLinkAdultLeftLegFarDL" Offset="0x2FEC0"/>
<DList Name="gLinkAdultLeftFootFarDL" Offset="0x30088"/>
<DList Name="gLinkAdultCollarFarDL" Offset="0x301A8"/>
<DList Name="gLinkAdultTorsoFarDL" Offset="0x30250"/>
<DList Name="gLinkAdultHeadFarDL" Offset="0x30400"/>
<DList Name="gLinkAdultHatFarDL" Offset="0x309B0"/>
<DList Name="gLinkAdultRightShoulderFarDL" Offset="0x30AA0"/>
<DList Name="gLinkAdultRightArmFarDL" Offset="0x30C48"/>
<DList Name="gLinkAdultRightHandFarDL" Offset="0x274F8"/>
<DList Name="gLinkAdultLeftShoulderFarDL" Offset="0x30EF8"/>
<DList Name="gLinkAdultLeftArmFarDL" Offset="0x310A0"/>
<DList Name="gLinkAdultLeftHandFarDL" Offset="0x26C58"/>
<!-- Near Limb DLists-->
<DList Name="gLinkAdultWaistNearDL" Offset="0x35330"/>
<DList Name="gLinkAdultRightThighNearDL" Offset="0x35678"/>
<DList Name="gLinkAdultRightLegNearDL" Offset="0x358B0"/>
<DList Name="gLinkAdultRightFootNearDL" Offset="0x35B60"/>
<DList Name="gLinkAdultLeftThighNearDL" Offset="0x35CB8"/>
<DList Name="gLinkAdultLeftLegNearDL" Offset="0x35EF0"/>
<DList Name="gLinkAdultLeftFootNearDL" Offset="0x361A0"/>
<DList Name="gLinkAdultCollarNearDL" Offset="0x362F8"/>
<DList Name="gLinkAdultTorsoNearDL" Offset="0x363B8"/>
<DList Name="gLinkAdultHeadNearDL" Offset="0x365E8"/>
<DList Name="gLinkAdultHatNearDL" Offset="0x36D30"/>
<DList Name="gLinkAdultRightShoulderNearDL" Offset="0x36E58"/>
<DList Name="gLinkAdultRightArmNearDL" Offset="0x37018"/>
<DList Name="gLinkAdultRightHandNearDL" Offset="0x22498"/>
<DList Name="gLinkAdultLeftShoulderNearDL" Offset="0x37210"/>
<DList Name="gLinkAdultLeftArmNearDL" Offset="0x373D8"/>
<DList Name="gLinkAdultLeftHandNearDL" Offset="0x21AA8"/>
<DList Name="gLinkAdultBottleDL" Offset="0x2AD58"/>
<DList Name="gLinkAdultHandHoldingBottleDL" Offset="0x29600"/>
<!-- Bodypart DLs not directly used in the skeleton -->
<!-- TODO check left vs right-->
<DList Name="gLinkAdultRightHandClosedNearDL" Offset="0x226E0"/>
<DList Name="gLinkAdultRightHandClosedFarDL" Offset="0x27690"/>
<DList Name="gLinkAdultLeftHandHoldingMasterSwordNearDL" Offset="0x21F78"/>
<DList Name="gLinkAdultLeftHandHoldingMasterSwordFarDL" Offset="0x27078"/>
<DList Name="gLinkAdultLeftHandClosedNearDL" Offset="0x21CE8"/>
<DList Name="gLinkAdultLeftHandClosedFarDL" Offset="0x26DF0"/>
<!-- Left hand, left arm, and right arm are used with the Bow. Not sure what right hand is for -->
<DList Name="gLinkAdultRightArmOutNearDL" Offset="0x29918"/>
<DList Name="gLinkAdultRightHandOutNearDL" Offset="0x29C20"/>
<DList Name="gLinkAdultLeftArmOutNearDL" Offset="0x29FA0"/>
<DList Name="gLinkAdultLeftHandOutNearDL" Offset="0x24B58"/>
<!-- Limbs-->
<Limb Name="gLinkAdultRootLimb" LimbType="LOD" Offset="0x37650"/>
<Limb Name="gLinkAdultWaistLimb" LimbType="LOD" Offset="0x37660"/>
<Limb Name="gLinkAdultLowerControlLimb" LimbType="LOD" Offset="0x37670"/>
<Limb Name="gLinkAdultRightThighLimb" LimbType="LOD" Offset="0x37680"/>
<Limb Name="gLinkAdultRightLegLimb" LimbType="LOD" Offset="0x37690"/>
<Limb Name="gLinkAdultRightFootLimb" LimbType="LOD" Offset="0x376A0"/>
<Limb Name="gLinkAdultLeftThighLimb" LimbType="LOD" Offset="0x376B0"/>
<Limb Name="gLinkAdultLeftLegLimb" LimbType="LOD" Offset="0x376C0"/>
<Limb Name="gLinkAdultLeftFootLimb" LimbType="LOD" Offset="0x376D0"/>
<Limb Name="gLinkAdultUpperControlLimb" LimbType="LOD" Offset="0x376E0"/>
<Limb Name="gLinkAdultHeadLimb" LimbType="LOD" Offset="0x376F0"/>
<Limb Name="gLinkAdultHatLimb" LimbType="LOD" Offset="0x37700"/>
<Limb Name="gLinkAdultCollarLimb" LimbType="LOD" Offset="0x37710"/>
<Limb Name="gLinkAdultLeftShoulderLimb" LimbType="LOD" Offset="0x37720"/>
<Limb Name="gLinkAdultLeftArmLimb" LimbType="LOD" Offset="0x37730"/>
<Limb Name="gLinkAdultLeftHandLimb" LimbType="LOD" Offset="0x37740"/>
<Limb Name="gLinkAdultRightShoulderLimb" LimbType="LOD" Offset="0x37750"/>
<Limb Name="gLinkAdultRightArmLimb" LimbType="LOD" Offset="0x37760"/>
<Limb Name="gLinkAdultRightHandLimb" LimbType="LOD" Offset="0x37770"/>
<Limb Name="gLinkAdultSwordAndSheathLimb" LimbType="LOD" Offset="0x37780"/>
<Limb Name="gLinkTorsoLimb" LimbType="LOD" Offset="0x37790"/>
<!-- Swords and shields -->
<DList Name="gLinkAdultMasterSwordAndSheathNearDL" Offset="0x23160"/>
<DList Name="gLinkAdultMasterSwordAndSheathFarDL" Offset="0x27F00"/>
<DList Name="gLinkAdultHylianShieldSwordAndSheathNearDL" Offset="0x20A78"/>
<DList Name="gLinkAdultHylianShieldSwordAndSheathFarDL" Offset="0x25FB8"/>
<DList Name="gLinkAdultHylianShieldAndSheathNearDL" Offset="0x20E70"/>
<DList Name="gLinkAdultHylianShieldAndSheathFarDL" Offset="0x262B8"/>
<DList Name="gLinkAdultMirrorShieldAndSheathNearDL" Offset="0x216B0"/>
<DList Name="gLinkAdultMirrorShieldAndSheathFarDL" Offset="0x26910"/>
<DList Name="gLinkAdultMirrorShieldSwordAndSheathNearDL" Offset="0x211B8"/>
<DList Name="gLinkAdultMirrorShieldSwordAndSheathFarDL" Offset="0x264F0"/>
<DList Name="gLinkAdultLeftHandHoldingBgsNearDL" Offset="0x238C8"/>
<DList Name="gLinkAdultLeftHandHoldingBgsFarDL" Offset="0x286B8"/>
<DList Name="gLinkAdultHandHoldingBrokenGiantsKnifeDL" Offset="0x23D50"/>
<DList Name="gLinkAdultHandHoldingBrokenGiantsKnifeFarDL" Offset="0x291E8"/>
<DList Name="gLinkAdultSheathNearDL" Offset="0x249D8"/>
<DList Name="gLinkAdultSheathFarDL" Offset="0x28150"/>
<DList Name="gLinkAdultRightHandHoldingHylianShieldNearDL" Offset="0x22970"/>
<DList Name="gLinkAdultRightHandHoldingHylianShieldFarDL" Offset="0x27918"/>
<DList Name="gLinkAdultBrokenGiantsKnifeBladeDL" Offset="0x2BA38"/> <!-- Used for when Giants Knife shatters -->
<Texture Name="gLinkAdultShieldHandleTex" OutName="shield_handle" Format="ci8" Width="8" Height="16" Offset="0xD4B8" TlutOffset="0xCD48"/>
<Texture Name="gLinkAdultHylianShieldBackTex" OutName="hylian_shield_back" Format="ci8" Width="16" Height="32" Offset="0xD938" TlutOffset="0xCB40"/>
<Texture Name="gLinkAdultSheathBandTex" OutName="sheath_band" Format="ci8" Width="32" Height="16" Offset="0xE838" TlutOffset="0xCB40"/>
<Texture Name="gLinkAdultMirrorShieldLowerDesignTex" OutName="mirror_shield_lower_design" Format="ia16" Width="32" Height="64" Offset="0xB280"/>
<Texture Name="gLinkAdultMirrorShieldUpperDesignTex" OutName="mirror_shield_upper_design" Format="ia8" Width="64" Height="32" Offset="0xC280"/>
<Texture Name="gLinkAdultDefaultGauntlet1Tex" OutName="default_gauntlet_1" Format="ci8" Width="16" Height="32" Offset="0xD2B8" TlutOffset="0xCD48"/>
<Texture Name="gLinkAdultDefaultGauntlet2Tex" OutName="default_gauntlet_2" Format="ci8" Width="16" Height="32" Offset="0xD538" TlutOffset="0xCD48"/>
<Texture Name="gLinkAdultHandTex" OutName="hand" Format="ci8" Width="16" Height="16" Offset="0xD738" TlutOffset="0xCF50"/>
<Texture Name="gLinkAdultClosedHandThumbTex" OutName="closed_hand_thumb" Format="ci8" Width="16" Height="16" Offset="0xD838" TlutOffset="0xCF50"/>
<Texture Name="gLinkAdultClosedHandSideTex" OutName="closed_hand_side" Format="ci8" Width="16" Height="16" Offset="0xDB38" TlutOffset="0xCF50"/> <!-- TODO CHECK-->
<Texture Name="gLinkAdultBowBodyTex" OutName="bow_body" Format="i8" Width="8" Height="8" Offset="0xCB00"/> <!-- TODO get proper name for this-->
<Texture Name="gLinkAdultSwordEmblemTex" OutName="sword_emblem" Format="ci8" Width="16" Height="16" Offset="0xEA38" TlutOffset="0xCB40"/>
<Texture Name="gLinkAdultArmOutSleeveTex" OutName="arm_out_sleeve" Format="ci8" Width="16" Height="32" Offset="0xEDB8" TlutOffset="0xD078"/>
<Texture Name="gLinkAdultArmOutUpperGauntletTex" OutName="arm_out_upper_gauntlet" Format="ci8" Width="32" Height="32" Offset="0xE038" TlutOffset="0xCD48"/>
<Texture Name="gLinkAdultArmGauntletTex" OutName="arm_gauntlet" Format="ci8" Width="32" Height="32" Offset="0x7F80" TlutOffset="0x5800"/>
<Texture Name="gLinkAdultBoot2Tex" OutName="boot_2" Format="ci8" Width="16" Height="32" Offset="0x6300" TlutOffset="0x5800"/>
<Texture Name="gLinkAdultBootBuckleTex" OutName="boot_buckle" Format="ci8" Width="32" Height="16" Offset="0x6500" TlutOffset="0x5800"/>
<Texture Name="gLinkAdultEarringTex" OutName="earring" Format="ia16" Width="32" Height="32" Offset="0x7180"/>
<!-- Bow -->
<DList Name="gLinkAdultRightHandHoldingBowNearDL" Offset="0x22DA8"/>
<DList Name="gLinkAdultRightHandHoldingBowFarDL" Offset="0x27B88"/>
<DList Name="gLinkAdultRightHandHoldingBowFirstPersonDL" Offset="0x2A248"/>
<DList Name="gLinkAdultBowStringDL" Offset="0x2B108"/>
<DList Name="gLinkAdultLeftHandHoldingHammerNearDL" Offset="0x233E0"/>
<DList Name="gLinkAdultLeftHandHoldingHammerFarDL" Offset="0x28288"/>
<DList Name="gLinkAdultRightHandHoldingMirrorShieldNearDL" Offset="0x241C0"/>
<DList Name="gLinkAdultRightHandHoldingMirrorShieldFarDL" Offset="0x28B40"/>
<!-- Ocarina -->
<DList Name="gLinkAdultRightHandHoldingOotNearDL" Offset="0x24698"/>
<DList Name="gLinkAdultRightHandHoldingOotFarDL" Offset="0x28F58"/>
<!-- Hookshot -->
<DList Name="gLinkAdultRightHandHoldingHookshotNearDL" Offset="0x24D70"/>
<DList Name="gLinkAdultRightHandHoldingHookshotFarDL" Offset="0x2A738"/>
<DList Name="gLinkAdultHookshotChainDL" Offset="0x2AFF0"/>
<DList Name="gLinkAdultHookshotTipDL" Offset="0x2B288"/>
<Texture Name="gLinkAdultHookshotMetalTex" OutName="hookshot_metal" Format="rgba16" Width="8" Height="8" Offset="0xCA80"/>
<Texture Name="gLinkAdultHookshotHandleTex" OutName="hookshot_handle" Format="ci8" Width="16" Height="8" Offset="0xEB38" TlutOffset="0xCD48"/>
<Texture Name="gLinkAdultHookshotDesignTex" OutName="hookshot_design" Format="ci8" Width="16" Height="32" Offset="0xEBB8" TlutOffset="0xCB40"/>
<Texture Name="gLinkAdultHookshotChainTex" OutName="hookshot_chain" Format="rgba16" Width="16" Height="32" Offset="0x2B338"/>
<Texture Name="gLinkAdultHookshotReticleTex" OutName="hookshot_dot" Format="i8" Width="64" Height="64" Offset="0x2BB18"/>
<Texture Name="gLinkAdultBeltClaspTex" OutName="belt_clasp" Format="ci8" Width="32" Height="16" Offset="0x6F80" TlutOffset="0x5800"/>
<Texture Name="gLinkAdultSkirtAndHatTex" OutName="skirt_and_hat" Format="rgba16" Width="32" Height="32" Offset="0x6700"/>
<Texture Name="gLinkAdultBeltTex" OutName="belt" Format="ci8" Width="8" Height="16" Offset="0x6F00" TlutOffset="0x5800"/>
<Texture Name="gLinkAdultLegTex" OutName="leg" Format="ci8" Width="16" Height="32" Offset="0x6100" TlutOffset="0x5A00"/>
<Texture Name="gLinkAdultBootFarTex" OutName="boot_far" Format="ci8" Width="16" Height="32" Offset="0x5600" TlutOffset="0x5400"/>
<Texture Name="gLinkAdultBootTex" OutName="boot" Format="ci8" Width="16" Height="16" Offset="0x6000" TlutOffset="0x5800"/>
<Texture Name="gLinkAdultCollarTex" OutName="collar" Format="rgba16" Width="16" Height="32" Offset="0x9580"/>
<Texture Name="gLinkAdultTunicTex" OutName="tunic" Format="ci8" Width="16" Height="32" Offset="0x9380" TlutOffset="0x5A00"/>
<Texture Name="gLinkAdultNeckTex" OutName="neck" Format="ci8" Width="16" Height="32" Offset="0x7980" TlutOffset="0x5A00"/>
<Texture Name="gLinkAdultNose2Tex" OutName="nose2" Format="ci8" Width="16" Height="16" Offset="0x5200"/>
<!-- Gauntlets -->
<DList Name="gLinkAdultLeftGauntletPlate1DL" Offset="0x25218"/>
<DList Name="gLinkAdultLeftGauntletPlate2DL" Offset="0x252D8"/>
<DList Name="gLinkAdultLeftGauntletPlate3DL" Offset="0x25438"/>
<DList Name="gLinkAdultRightGauntletPlate1DL" Offset="0x25598"/>
<DList Name="gLinkAdultRightGauntletPlate2DL" Offset="0x25658"/>
<DList Name="gLinkAdultRightGauntletPlate3DL" Offset="0x257B8"/>
<Texture Name="gLinkAdultGauntletPlate1Tex" OutName="gauntlet_plate_1" Format="rgba16" Width="16" Height="32" Offset="0x9980"/>
<Texture Name="gLinkAdultGauntletPlate2Tex" OutName="gauntlet_plate_2" Format="rgba16" Width="32" Height="32" Offset="0x9D80"/>
<DList Name="gLinkAdultHookshotReticleDL" Offset="0x2CB48"/>
<!-- Boots -->
<DList Name="gLinkAdultLeftIronBootDL" Offset="0x25918"/> <!-- TODO verify the positions-->
<DList Name="gLinkAdultRightIronBootDL" Offset="0x25A60"/>
<Texture Name="gLinkAdultIronBootTex" OutName="iron_boot" Format="ci8" Width="16" Height="16" Offset="0xD1B8" TlutOffset="0xCB40"/>
<DList Name="gLinkAdultLeftHoverBootDL" Offset="0x25BA8"/>
<DList Name="gLinkAdultRightHoverBootDL" Offset="0x25DB0"/>
<Texture Name="gLinkAdultHoverBootsHeelTex" OutName="hover_boots_heel" Format="rgba16" Width="16" Height="8" Offset="0xA580"/>
<Texture Name="gLinkAdultHoverBootsJetTex" OutName="hover_boots_jet" Format="rgba16" Width="32" Height="32" Offset="0xA680"/>
<Texture Name="gLinkAdultHoverBootsFeatherTex" OutName="hover_boots_feather" Format="rgba16" Width="32" Height="16" Offset="0xAE80"/>
<!-- Sword and sheath-->
<Texture Name="gLinkAdultSheathTex" OutName="sheath" Format="ci8" Width="32" Height="32" Offset="0xDC38" TlutOffset="0xCB40"/>
<Texture Name="gLinkAdultSwordPommelTex" OutName="sword_pommel" Format="ci8" Width="16" Height="16" Offset="0xD0B8" TlutOffset="0xCB40"/>
<Texture Name="gLinkAdultSwordGuardTex" OutName="sword_guard" Format="ci8" Width="32" Height="32" Offset="0xE438" TlutOffset="0xCB40"/>
<!-- Eyes -->
<Texture Name="gLinkAdultEyesOpenTex" OutName="eyes_open" Format="ci8" Width="64" Height="32" Offset="0x0000" TlutOffset="0x5C00"/>
<Texture Name="gLinkAdultEyesHalfTex" OutName="eyes_half" Format="ci8" Width="64" Height="32" Offset="0x0800" TlutOffset="0x5C00"/>
<Texture Name="gLinkAdultEyesClosedfTex" OutName="eyes_closed" Format="ci8" Width="64" Height="32" Offset="0x1000" TlutOffset="0x5C00"/>
<Texture Name="gLinkAdultEyesRollLeftTex" OutName="eyes_roll_left" Format="ci8" Width="64" Height="32" Offset="0x1800" TlutOffset="0x5C00"/><!--Left from links perspective-->
<Texture Name="gLinkAdultEyesRollRightTex" OutName="eyes_roll_right" Format="ci8" Width="64" Height="32" Offset="0x2000" TlutOffset="0x5C00"/><!--Right from links perspective-->
<Texture Name="gLinkAdultEyesShockTex" OutName="eyes_shock" Format="ci8" Width="64" Height="32" Offset="0x2800" TlutOffset="0x5C00"/>
<Texture Name="gLinkAdultEyesUnk1Tex" OutName="eyes_unk_1" Format="ci8" Width="64" Height="32" Offset="0x3000" TlutOffset="0x5C00"/>
<Texture Name="gLinkAdultEyesUnk2Tex" OutName="eyes_unk_2" Format="ci8" Width="64" Height="32" Offset="0x3800" TlutOffset="0x5C00"/>
<!--Mouth-->
<Texture Name="gLinkAdultMouth1Tex" OutName="mouth_1" Format="ci8" Width="32" Height="32" Offset="0x4000" TlutOffset="0x5C00"/>
<Texture Name="gLinkAdultMouth2Tex" OutName="mouth_2" Format="ci8" Width="32" Height="32" Offset="0x4400" TlutOffset="0x5C00"/>
<Texture Name="gLinkAdultMouth3Tex" OutName="mouth_3" Format="ci8" Width="32" Height="32" Offset="0x4800" TlutOffset="0x5C00"/>
<Texture Name="gLinkAdultMouth4Tex" OutName="mouth_4" Format="ci8" Width="32" Height="32" Offset="0x4C00" TlutOffset="0x5C00"/>
<Texture Name="gLinkAdultEarTex" OutName="ear" Format="ci8" Width="16" Height="16" Offset="0x5000" TlutOffset="0x5C00"/>
<Texture Name="gLinkAdultNoseTex" OutName="nose" Format="ci8" Width="16" Height="16" Offset="0x5100" TlutOffset="0x5C00"/>
<!-- Tluts -->
<Texture Name="gLinkAdultHeadTlut" OutName="head_tlut" Format="rgba16" Width="16" Height="16" Offset="0x5C00"/>
<Texture Name="gLinkAdultTlut_005E00" OutName="tlut_5E00" Format="rgba16" Width="16" Height="16" Offset="0x5E00"/>
<!-- Unused -->
<Texture Name="gLinkAdultUnusedHandTex" OutName="unused_hand" Format="ci8" Width="16" Height="16" Offset="0x5300" TlutOffset="0x5C00"/>
<Texture Name="gLinkAdultUnusedGauntlet1Tex" OutName="unused_gauntlet_1" Format="ci8" Width="16" Height="32" Offset="0x7B80" TlutOffset="0x5800"/>
<Texture Name="gLinkAdultUnusedGauntlet2Tex" OutName="unused_gauntlet_2" Format="ci8" Width="16" Height="32" Offset="0x7D80" TlutOffset="0x5800"/>
<Texture Name="gLinkAdultUnusedSheathTex" OutName="unused_sheath" Format="ci8" Width="32" Height="64" Offset="0x8380" TlutOffset="0x5E00"/>
<Texture Name="gLinkAdultUnusedSheathBandTex" OutName="unused_sheat_band" Format="ci8" Width="32" Height="16" Offset="0x8B80" TlutOffset="0x5E00"/>
<Texture Name="gLinkAdultUnusedSwordPommelTex" OutName="unused_sword_pommel" Format="ci8" Width="16" Height="16" Offset="0x8D80" TlutOffset="0x5E00"/>
<Texture Name="gLinkAdultUnusedSwordGuardTex" OutName="unused_sword_guard" Format="ci8" Width="32" Height="32" Offset="0x8E80" TlutOffset="5E00"/>
<Texture Name="gLinkAdultUnusedSwordEmblemTex" OutName="unused_sword_emblem" Format="ci8" Width="16" Height="16" Offset="0x9280" TlutOffset="0x5E00"/>
<Array Name="gLinkAdultVtx_02E120" Count="38" Offset="0x2E120" Static="On">
<Vtx/>
</Array>
<Array Name="gLinkAdultVtx_033760" Count="54" Offset="0x33760" Static="On">
<Vtx/>
</Array>
<Array Name="gLinkAdultVtx_0340A0" Count="146" Offset="0x340A0" Static="On">
<Vtx/>
</Array>
<Array Name="gLinkAdultVtx_02E7E0" Count="114" Offset="0x2E7E0" Static="On">
<Vtx/>
</Array>
</File>
</Root>

View File

@ -7,60 +7,60 @@
<DList Name="gLinkChildRightHandFarDL" Offset="0x164E0"/>
<DList Name="gLinkChildSwordAndSheathFarDL" Offset="0x17360"/>
<DList Name="gLinkChildWaistFarDL" Offset="0x1AEC8"/>
<DList Name="gLinkChildLeftThighFarDL" Offset="0x1B0F8"/>
<DList Name="gLinkChildLeftShinFarDL" Offset="0x1B2B8"/>
<DList Name="gLinkChildLeftFootFarDL" Offset="0x1B510"/>
<DList Name="gLinkChildRightThighFarDL" Offset="0x1B638"/>
<DList Name="gLinkChildRightShinFarDL" Offset="0x1B7F8"/>
<DList Name="gLinkChildRightFootFarDL" Offset="0x1BA50"/>
<DList Name="gLinkChildRightThighFarDL" Offset="0x1B0F8"/>
<DList Name="gLinkChildRightShinFarDL" Offset="0x1B2B8"/>
<DList Name="gLinkChildRightFootFarDL" Offset="0x1B510"/>
<DList Name="gLinkChildLeftThighFarDL" Offset="0x1B638"/>
<DList Name="gLinkChildLeftShinFarDL" Offset="0x1B7F8"/>
<DList Name="gLinkChildLeftFootFarDL" Offset="0x1BA50"/>
<DList Name="gLinkChildCollarFarDL" Offset="0x1BB78"/>
<DList Name="gLinkChildTorsoFarDL" Offset="0x1BBD8"/>
<DList Name="gLinkChildHeadFarDL" Offset="0x1BDA0"/>
<DList Name="gLinkChildHatFarDL" Offset="0x1C2A8"/>
<DList Name="gLinkChildLeftShoulderFarDL" Offset="0x1C398"/>
<DList Name="gLinkChildLeftForearmFarDL" Offset="0x1C558"/>
<DList Name="gLinkChildRightShoulderFarDL" Offset="0x1C688"/>
<DList Name="gLinkChildRightForearmFarDL" Offset="0x1C848"/>
<DList Name="gLinkChildRightShoulderFarDL" Offset="0x1C398"/>
<DList Name="gLinkChildRightForearmFarDL" Offset="0x1C558"/>
<DList Name="gLinkChildLeftShoulderFarDL" Offset="0x1C688"/>
<DList Name="gLinkChildLeftForearmFarDL" Offset="0x1C848"/>
<!--Near Limb DLists-->
<DList Name="gLinkChildLeftHandNearDL" Offset="0x13CB0"/>
<DList Name="gLinkChildRightHandNearDL" Offset="0x141C0"/>
<DList Name="gLinkChildSwordAndSheathNearDL" Offset="0x15248"/>
<DList Name="gLinkChildWaistNearDL" Offset="0x202A8"/>
<DList Name="gLinkChildLeftThighNearDL" Offset="0x204F0"/>
<DList Name="gLinkChildLeftShinNearDL" Offset="0x206E8"/>
<DList Name="gLinkChildLeftFootNearDL" Offset="0x20978"/>
<DList Name="gLinkChildRightThighNearDL" Offset="0x20AD8"/>
<DList Name="gLinkChildRightShinNearDL" Offset="0x20CD0"/>
<DList Name="gLinkChildRightFootNearDL" Offset="0x20F60"/>
<DList Name="gLinkChildRightThighNearDL" Offset="0x204F0"/>
<DList Name="gLinkChildRightShinNearDL" Offset="0x206E8"/>
<DList Name="gLinkChildRightFootNearDL" Offset="0x20978"/>
<DList Name="gLinkChildLeftThighNearDL" Offset="0x20AD8"/>
<DList Name="gLinkChildLeftShinNearDL" Offset="0x20CD0"/>
<DList Name="gLinkChildLeftFootNearDL" Offset="0x20F60"/>
<DList Name="gLinkChildCollarNearDL" Offset="0x210C0"/>
<DList Name="gLinkChildTorsoNearDL" Offset="0x21130"/>
<DList Name="gLinkChildHeadNearDL" Offset="0x21360"/>
<DList Name="gLinkChildHatNearDL" Offset="0x219B0"/>
<DList Name="gLinkChildLeftShoulderNearDL" Offset="0x21AE8"/>
<DList Name="gLinkChildLeftForearmNearDL" Offset="0x21CB8"/>
<DList Name="gLinkChildRightShoulderNearDL" Offset="0x21E18"/>
<DList Name="gLinkChildRightForearmNearDL" Offset="0x21FE8"/>
<DList Name="gLinkChildRightShoulderNearDL" Offset="0x21AE8"/>
<DList Name="gLinkChildRightForearmNearDL" Offset="0x21CB8"/>
<DList Name="gLinkChildLeftShoulderNearDL" Offset="0x21E18"/>
<DList Name="gLinkChildLeftForearmNearDL" Offset="0x21FE8"/>
<!--Limbs-->
<Limb Name="gLinkChildLimb_02CDC8" LimbType="LOD" Offset="0x2CDC8"/>
<Limb Name="gLinkChildRootLimb" LimbType="LOD" Offset="0x2CDC8"/>
<Limb Name="gLinkChildWaistLimb" LimbType="LOD" Offset="0x2CDD8"/>
<Limb Name="gLinkChildLimb_02CDE8" LimbType="LOD" Offset="0x2CDE8"/>
<Limb Name="gLinkChildLeftThighLimb" LimbType="LOD" Offset="0x2CDF8"/>
<Limb Name="gLinkChildLeftShinLimb" LimbType="LOD" Offset="0x2CE08"/>
<Limb Name="gLinkChildLeftFootLimb" LimbType="LOD" Offset="0x2CE18"/>
<Limb Name="gLinkChildRightThighLimb" LimbType="LOD" Offset="0x2CE28"/>
<Limb Name="gLinkChildRightShinLimb" LimbType="LOD" Offset="0x2CE38"/>
<Limb Name="gLinkChildRightFootLimb" LimbType="LOD" Offset="0x2CE48"/>
<Limb Name="gLinkChildLimb_02CE58" LimbType="LOD" Offset="0x2CE58"/>
<Limb Name="gLinkChildHandLimb" LimbType="LOD" Offset="0x2CE68"/>
<Limb Name="gLinkChildLowerControlLimb" LimbType="LOD" Offset="0x2CDE8"/>
<Limb Name="gLinkChildRightThighLimb" LimbType="LOD" Offset="0x2CDF8"/>
<Limb Name="gLinkChildRightShinLimb" LimbType="LOD" Offset="0x2CE08"/>
<Limb Name="gLinkChildRightFootLimb" LimbType="LOD" Offset="0x2CE18"/>
<Limb Name="gLinkChildLeftThighLimb" LimbType="LOD" Offset="0x2CE28"/>
<Limb Name="gLinkChildLeftShinLimb" LimbType="LOD" Offset="0x2CE38"/>
<Limb Name="gLinkChildLeftFootLimb" LimbType="LOD" Offset="0x2CE48"/>
<Limb Name="gLinkChildUpperControlLimb" LimbType="LOD" Offset="0x2CE58"/>
<Limb Name="gLinkChildHeadLimb" LimbType="LOD" Offset="0x2CE68"/>
<Limb Name="gLinkChildHatLimb" LimbType="LOD" Offset="0x2CE78"/>
<Limb Name="gLinkChildCollarLimb" LimbType="LOD" Offset="0x2CE88"/>
<Limb Name="gLinkChildRightSholderLimb" LimbType="LOD" Offset="0x2CE98"/>
<Limb Name="gLinkChildRightForearmLimb" LimbType="LOD" Offset="0x2CEA8"/>
<Limb Name="gLinkChildLeftshoulderLimb" LimbType="LOD" Offset="0x2CE98"/>
<Limb Name="gLinkChildLeftForearmLimb" LimbType="LOD" Offset="0x2CEA8"/>
<Limb Name="gLinkChildLeftHandLimb" LimbType="LOD" Offset="0x2CEB8"/>
<Limb Name="gLinkChildLeftSholderLimb" LimbType="LOD" Offset="0x2CEC8"/>
<Limb Name="gLinkChildLeftForearmLimb" LimbType="LOD" Offset="0x2CED8"/>
<Limb Name="gLinkChildRightshoulderLimb" LimbType="LOD" Offset="0x2CEC8"/>
<Limb Name="gLinkChildRightForearmLimb" LimbType="LOD" Offset="0x2CED8"/>
<Limb Name="gLinkChildRightHandLimb" LimbType="LOD" Offset="0x2CEE8"/>
<Limb Name="gLinkChildSwordAndSheathLimb" LimbType="LOD" Offset="0x2CEF8"/>
<Limb Name="gLinkChildTorsoLimb" LimbType="LOD" Offset="0x2CF08"/>
@ -91,12 +91,12 @@
<DList Name="gLinkChildDekuShieldAndSheathFarDL" Offset="0x17150"/>
<DList Name="gLinkChildSheathNearDL" Offset="0x15408"/>
<DList Name="gLinkChildSheathFarDL" Offset="0x17500"/>
<DList Name="gLinkChildRightHandAndOOTNearDL" Offset="0x15958"/>
<DList Name="gLinkChildRightHandAndOotNearDL" Offset="0x15958"/>
<DList Name="gLinkChildRightHandHoldingOOTFarDL" Offset="0x178A0"/>
<DList Name="gLinkChildRightHandHoldingFairyOcarinaNearDL" Offset="0x15BA8"/>
<DList Name="gLinkChildRightHandHoldingFairyOcarinaFarDL" Offset="0x17AF0"/>
<DList Name="gLinkChildRightHandHoldingFairySlingshotNearDL" Offset="0x15DF0"/>
<DList Name="gLinkChildRightHandHoldingFairySlingshotFarDL" Offset="0x17D38"/>
<DList Name="gLinkChildRightHandHoldingSlingshotNearDL" Offset="0x15DF0"/>
<DList Name="gLinkChildRightHandHoldingSlingshotFarDL" Offset="0x17D38"/>
<DList Name="gLinkChildLeftHandUpNearDL" Offset="0x15FD0"/>
<DList Name="gLinkChildLeftHandUpFarDL" Offset="0x17F00"/>
@ -120,105 +120,105 @@
<DList Name="gLinkChildBunnyHoodDL" Offset="0x2CA38"/>
<!--Textures-->
<Texture Name="gLinkChildNoseTex" OutName="link_child_nose" Format="ci8" Width="16" Height="16" Offset="0x5000" TlutOffset="0x5500"/>
<Texture Name="gLinkChildUnusedHandTex" OutName="link_child_unused_hand" Format="ci8" Width="16" Height="16" Offset="0x5100" TlutOffset="0x5500"/>
<Texture Name="gLinkChildEarTex" OutName="link_child_ear" Format="ci8" Width="16" Height="16" Offset="0x5200" TlutOffset="0x5500"/>
<Texture Name="gLinkChildLowerBootTex" OutName="link_child_lower_boot" Format="ci8" Width="16" Height="16" Offset="0x5C00" TlutOffset="0x5300"/>
<Texture Name="gLinkChildUnusedBootTex" OutName="link_child_unused_boot" Format="ci8" Width="24" Height="32" Offset="0x5D00" TlutOffset="0x5300"/><!--Unused so hard to verify-->
<Texture Name="gLinkChildBootTex" OutName="link_child_boot" Format="ci8" Width="32" Height="32" Offset="0x6000" TlutOffset="0x5300"/>
<Texture Name="gLinkChildWaistTex" OutName="link_child_waist" Format="i8" Width="32" Height="32" Offset="0x6400"/>
<Texture Name="gLinkChildBeltTex" OutName="link_child_belt" Format="ci8" Width="8" Height="16" Offset="0x6800" TlutOffset="0x5300"/>
<Texture Name="gLinkChildBeltClaspTex" OutName="link_child_belt_clasp" Format="ci8" Width="32" Height="16" Offset="0x6880" TlutOffset="0x5300"/>
<Texture Name="gLinkChildFairyOcarinaTex" OutName="link_child_fairy_ocarina" Format="rgba16" Width="32" Height="16" Offset="0x6E08"/>
<Texture Name="gLinkChildDekuShieldBackTex" OutName="link_child_deku_shield_back" Format="rgba16" Width="32" Height="32" Offset="0x7688"/>
<Texture Name="gLinkChildDekuShieldFrontTex" OutName="link_child_deku_shield_front" Format="rgba16" Width="32" Height="64" Offset="0x7E88"/>
<Texture Name="gLinkChildHylianShieldBackTex" OutName="link_child_hylian_shield_back" Format="rgba16" Width="16" Height="32" Offset="0x8E88"/>
<Texture Name="gLinkChildSlingshotTex" OutName="link_child_slingshot" Format="rgba16" Width="16" Height="32" Offset="0x9288"/>
<Texture Name="gLinkChildSlingshotSeedTex" OutName="link_child_slingshot_seed" Format="rgba16" Width="32" Height="32" Offset="0x9688"/>
<Texture Name="gLinkChildHandTex" OutName="link_child_hand" Format="ci8" Width="16" Height="16" Offset="0xA1F0" TlutOffset="0x9E88"/>
<Texture Name="gLinkChildKokiriSwordSheathTex" OutName="link_child_kokiri_sword_sheath" Format="ci8" Width="16" Height="16" Offset="0xA2F0" TlutOffset="0x9F10"/>
<Texture Name="gLinkChildSwordJewelTex" OutName="link_child_sword_jewel" Format="ci8" Width="32" Height="16" Offset="0xA3F0" TlutOffset="0xA118"/>
<Texture Name="gLinkChildMasterSwordPommelTex" OutName="link_child_master_sword_pommel" Format="ci8" Width="16" Height="16" Offset="0xA5F0" TlutOffset="0x9F10"/>
<Texture Name="gLinkChildMasterSwordGuardTex" OutName="link_child_master_sword_guard" Format="ci8" Width="32" Height="32" Offset="0xA6F0" TlutOffset="0x9F10"/>
<Texture Name="gLinkChildMasterSwordEmblemTex" OutName="link_child_master_sword_emblem" Format="ci8" Width="16" Height="16" Offset="0xAAF0" TlutOffset="0x9F10"/>
<Texture Name="gLinkChildGoronBraceletTex" OutName="link_child_goron_bracelet" Format="rgba16" Width="8" Height="8" Offset="0x7208"/>
<Texture Name="gLinkChildGoronSymbolTex" OutName="link_child_goron_symbol" Format="ia16" Width="16" Height="32" Offset="0x7288"/>
<Texture Name="gLinkChildNoseTex" OutName="nose" Format="ci8" Width="16" Height="16" Offset="0x5000" TlutOffset="0x5500"/>
<Texture Name="gLinkChildUnusedHandTex" OutName="unused_hand" Format="ci8" Width="16" Height="16" Offset="0x5100" TlutOffset="0x5500"/>
<Texture Name="gLinkChildEarTex" OutName="ear" Format="ci8" Width="16" Height="16" Offset="0x5200" TlutOffset="0x5500"/>
<Texture Name="gLinkChildLowerBootTex" OutName="lower_boot" Format="ci8" Width="16" Height="16" Offset="0x5C00" TlutOffset="0x5300"/>
<Texture Name="gLinkChildUnusedBootTex" OutName="unused_boot" Format="ci8" Height="32" Width="24" Offset="0x5D00" TlutOffset="0x5300"/><!--Unused so hard to verify-->
<Texture Name="gLinkChildBootTex" OutName="boot" Format="ci8" Width="32" Height="32" Offset="0x6000" TlutOffset="0x5300"/>
<Texture Name="gLinkChildWaistTex" OutName="waist" Format="i8" Width="32" Height="32" Offset="0x6400"/>
<Texture Name="gLinkChildBeltTex" OutName="belt" Format="ci8" Width="8" Height="16" Offset="0x6800" TlutOffset="0x5300"/>
<Texture Name="gLinkChildBeltClaspTex" OutName="belt_clasp" Format="ci8" Width="32" Height="16" Offset="0x6880" TlutOffset="0x5300"/>
<Texture Name="gLinkChildFairyOcarinaTex" OutName="fairy_ocarina" Format="rgba16" Width="32" Height="16" Offset="0x6E08"/>
<Texture Name="gLinkChildDekuShieldBackTex" OutName="deku_shield_back" Format="rgba16" Height="32" Width="32" Offset="0x7688"/>
<Texture Name="gLinkChildDekuShieldFrontTex" OutName="deku_shield_front" Format="rgba16" Width="32" Height="64" Offset="0x7E88"/>
<Texture Name="gLinkChildHylianShieldBackTex" OutName="hylian_shield_back" Format="rgba16" Height="32" Width="16" Offset="0x8E88"/>
<Texture Name="gLinkChildSlingshotTex" OutName="slingshot" Format="rgba16" Width="16" Height="32" Offset="0x9288"/>
<Texture Name="gLinkChildSlingshotSeedTex" OutName="slingshot_seed" Format="rgba16" Width="32" Height="32" Offset="0x9688"/>
<Texture Name="gLinkChildHandTex" OutName="hand" Format="ci8" Width="16" Height="16" Offset="0xA1F0" TlutOffset="0x9E88"/>
<Texture Name="gLinkChildKokiriSwordSheathTex" OutName="kokiri_sword_sheath" Format="ci8" Height="16" Width="16" Offset="0xA2F0" TlutOffset="0x9F10"/>
<Texture Name="gLinkChildSwordJewelTex" OutName="sword_jewel" Format="ci8" Width="32" Height="16" Offset="0xA3F0" TlutOffset="0xA118"/>
<Texture Name="gLinkChildMasterSwordPommelTex" OutName="master_sword_pommel" Format="ci8" Height="16" Width="16" Offset="0xA5F0" TlutOffset="0x9F10"/>
<Texture Name="gLinkChildMasterSwordGuardTex" OutName="master_sword_guard" Format="ci8" Height="32" Width="32" Offset="0xA6F0" TlutOffset="0x9F10"/>
<Texture Name="gLinkChildMasterSwordEmblemTex" OutName="master_sword_emblem" Format="ci8" Height="16" Width="16" Offset="0xAAF0" TlutOffset="0x9F10"/>
<Texture Name="gLinkChildGoronBraceletTex" OutName="goron_bracelet" Format="rgba16" Width="8" Height="8" Offset="0x7208"/>
<Texture Name="gLinkChildGoronSymbolTex" OutName="goron_symbol" Format="ia16" Width="16" Height="32" Offset="0x7288"/>
<Texture Name="gLinkChildSkullMaskTeethTex" OutName="link_child_skull_mask_teeth" Format="rgba16" Width="8" Height="8" Offset="0x26BA0"/>
<Texture Name="gLinkChildSkullMaskNoseTex" OutName="link_child_skull_mask_nose" Format="rgba16" Width="8" Height="8" Offset="0x27520"/>
<Texture Name="gLinkChildSkullMaskEyeTex" OutName="link_child_skull_mask_eye" Format="rgba16" Width="16" Height="16" Offset="0x23B20"/>
<Texture Name="gLinkChildSkullMaskTeethTex" OutName="skull_mask_teeth" Format="rgba16" Width="8" Height="8" Offset="0x26BA0"/>
<Texture Name="gLinkChildSkullMaskNoseTex" OutName="skull_mask_nose" Format="rgba16" Width="8" Height="8" Offset="0x27520"/>
<Texture Name="gLinkChildSkullMaskEyeTex" OutName="skull_mask_eye" Format="rgba16" Width="16" Height="16" Offset="0x23B20"/>
<Texture Name="gLinkChildSpookyMaskTex" OutName="link_child_spooky_mask" Format="ia16" Width="32" Height="64" Offset="0x226A0"/>
<Texture Name="gLinkChildKeatonMaskEyeBrowTex" OutName="link_child_keaton_mask_eye_brow" Format="rgba16" Width="32" Height="16" Offset="0x236A0"/>
<Texture Name="gLinkChildKeatonMaskEarTex" OutName="link_child_keaton_mask_ear" Format="rgba16" Width="8" Height="8" Offset="0x23AA0"/>
<Texture Name="gLinkChildMaskOfTruthCurveTex" OutName="link_child_mask_of_truth_curves" Format="rgba16" Width="16" Height="32" Offset="0x24D20"/>
<Texture Name="gLinkChildMaskOfTruthTex" OutName="link_child_mask_of_truth" Format="rgba16" Width="32" Height="64" Offset="0x23D20"/>
<Texture Name="gLinkChildSpookyMaskTex" OutName="spooky_mask" Format="ia16" Width="32" Height="64" Offset="0x226A0"/>
<Texture Name="gLinkChildKeatonMaskEyeBrowTex" OutName="keaton_mask_eye_brow" Format="rgba16" Width="32" Height="16" Offset="0x236A0"/>
<Texture Name="gLinkChildKeatonMaskEarTex" OutName="keaton_mask_ear" Format="rgba16" Width="8" Height="8" Offset="0x23AA0"/>
<Texture Name="gLinkChildMaskOfTruthCurveTex" OutName="mask_of_truth_curves" Format="rgba16" Width="16" Height="32" Offset="0x24D20"/>
<Texture Name="gLinkChildMaskOfTruthTex" OutName="mask_of_truth" Format="rgba16" Width="32" Height="64" Offset="0x23D20"/>
<Texture Name="gLinkChildGoronMaskMouthTex" OutName="link_child_goron_mask_mouth" Format="rgba16" Width="64" Height="32" Offset="0x25120"/>
<Texture Name="gLinkChildGoronMaskEyeTex" OutName="link_child_goron_mask_eye" Format="rgba16" Width="32" Height="32" Offset="0x26120"/>
<Texture Name="gLinkChildGoronMaskNoseTex" OutName="link_child_goron_mask_nose" Format="rgba16" Width="8" Height="8" Offset="0x26920"/>
<Texture Name="gLinkChildGoronMaskHairTex" OutName="link_child_goron_mask_hair" Format="rgba16" Width="16" Height="16" Offset="0x269A0"/>
<Texture Name="gLinkChildGoronMaskEarTex" OutName="link_child_goron_mask_ear" Format="rgba16" Width="8" Height="8" Offset="0x26C20"/><!--TODO verify this-->
<Texture Name="gLinkChildGoronMaskMouthTex" OutName="goron_mask_mouth" Format="rgba16" Width="64" Height="32" Offset="0x25120"/>
<Texture Name="gLinkChildGoronMaskEyeTex" OutName="goron_mask_eye" Format="rgba16" Width="32" Height="32" Offset="0x26120"/>
<Texture Name="gLinkChildGoronMaskNoseTex" OutName="goron_mask_nose" Format="rgba16" Width="8" Height="8" Offset="0x26920"/>
<Texture Name="gLinkChildGoronMaskHairTex" OutName="goron_mask_hair" Format="rgba16" Width="16" Height="16" Offset="0x269A0"/>
<Texture Name="gLinkChildGoronMaskEarTex" OutName="goron_mask_ear" Format="rgba16" Width="8" Height="8" Offset="0x26C20"/><!--TODO verify this-->
<Texture Name="gLinkChildZoraMaskEyeBoarderTex" OutName="link_child_zora_mask_eye_boarder" Format="rgba16" Width="8" Height="8" Offset="0x26CA0"/>
<Texture Name="gLinkChildZoraMaskEarTex" OutName="link_child_zora_mask_ear" Format="rgba16" Width="32" Height="32" Offset="0x26D20"/>
<Texture Name="gLinkChildZoraMaskEyeTex" OutName="link_child_zora_mask_eye" Format="rgba16" Width="32" Height="32" Offset="0x275A0"/>
<Texture Name="gLinkChildZoraMaskMouthTex" OutName="link_child_zora_mask_mouth" Format="rgba16" Width="32" Height="32" Offset="0x27DA0"/>
<Texture Name="gLinkChildZoraMaskEyeBoarderTex" OutName="zora_mask_eye_boarder" Format="rgba16" Width="8" Height="8" Offset="0x26CA0"/>
<Texture Name="gLinkChildZoraMaskEarTex" OutName="zora_mask_ear" Format="rgba16" Width="32" Height="32" Offset="0x26D20"/>
<Texture Name="gLinkChildZoraMaskEyeTex" OutName="zora_mask_eye" Format="rgba16" Width="32" Height="32" Offset="0x275A0"/>
<Texture Name="gLinkChildZoraMaskMouthTex" OutName="zora_mask_mouth" Format="rgba16" Width="32" Height="32" Offset="0x27DA0"/>
<Texture Name="gLinkChildGerudoMaskEyeTex" OutName="link_child_gerudo_mask_eye" Format="rgba16" Width="32" Height="32" Offset="0x285A0"/>
<Texture Name="gLinkChildGerudoMaskMouthTex" OutName="link_child_gerudo_mask_mouth" Format="rgba16" Width="16" Height="16" Offset="0x28DA0"/>
<Texture Name="gLinkChildGerudoMaskHairTex" OutName="link_child_gerudo_mask_hair" Format="rgba16" Width="16" Height="16" Offset="0x28FA0"/>
<Texture Name="gLinkChildGerudoMaskNoseTex" OutName="link_child_gerudo_mask_nose" Format="rgba16" Width="8" Height="8" Offset="0x291A0"/>
<Texture Name="gLinkChildGerudoMaskEyeTex" OutName="gerudo_mask_eye" Format="rgba16" Width="32" Height="32" Offset="0x285A0"/>
<Texture Name="gLinkChildGerudoMaskMouthTex" OutName="gerudo_mask_mouth" Format="rgba16" Width="16" Height="16" Offset="0x28DA0"/>
<Texture Name="gLinkChildGerudoMaskHairTex" OutName="gerudo_mask_hair" Format="rgba16" Width="16" Height="16" Offset="0x28FA0"/>
<Texture Name="gLinkChildGerudoMaskNoseTex" OutName="gerudo_mask_nose" Format="rgba16" Width="8" Height="8" Offset="0x291A0"/>
<Texture Name="gLinkChildBunnyHoodEyeTex" OutName="link_child_bunny_hood_eye" Format="rgba16" Width="16" Height="16" Offset="0x2BA28"/>
<Texture Name="gLinkChildBunnyHoodTex" OutName="link_child_bunny_hood" Format="rgba16" Width="16" Height="32" Offset="0x2BC28"/>
<Texture Name="gLinkChildBunnyHoodEarTex" OutName="link_child_bunny_hood_ear" Format="rgba16" Width="16" Height="32" Offset="0x2C028"/>
<Texture Name="gLinkChildBunnyHoodEyeTex" OutName="bunny_hood_eye" Format="rgba16" Width="16" Height="16" Offset="0x2BA28"/>
<Texture Name="gLinkChildBunnyHoodTex" OutName="bunny_hood" Format="rgba16" Width="16" Height="32" Offset="0x2BC28"/>
<Texture Name="gLinkChildBunnyHoodEarTex" OutName="bunny_hood_ear" Format="rgba16" Width="16" Height="32" Offset="0x2C028"/>
<!--TLUTs-->
<Texture Name="gLinkChildSkinTLUT" OutName="link_child_skin_tlut" Format="rgba16" Width="16" Height="16" Offset="0x5500"/>
<Texture Name="gLinkChildHandTLUT" OutName="link_child_hand_tlut" Format="rgba16" Width="17" Height="4" Offset="0x9E88"/>
<Texture Name="gLinkChildSwordsTLUT" OutName="link_child_swords_tlut" Format="rgba16" Width="16" Height="16" Offset="0x9F10"/> <!--For both the kokiri sword sheath and master sword-->
<Texture Name="gLinkChildSwordTLUT" OutName="link_child_sword_tlut" Format="rgba16" Width="27" Height="4" Offset="0xA118"/>
<Texture Name="gLinkChildBeltTLUT" OutName="link_child_belt_tlut" Format="rgba16" Width="16" Height="16" Offset="0x5300"/>
<Texture Name="gLinkChildSkinTLUT" OutName="skin_tlut" Format="rgba16" Width="16" Height="16" Offset="0x5500"/>
<Texture Name="gLinkChildHandTLUT" OutName="hand_tlut" Format="rgba16" Width="17" Height="4" Offset="0x9E88"/>
<Texture Name="gLinkChildSwordsTLUT" OutName="swords_tlut" Format="rgba16" Width="16" Height="16" Offset="0x9F10"/> <!--For both the kokiri sword sheath and master sword-->
<Texture Name="gLinkChildSwordTLUT" OutName="sword_tlut" Format="rgba16" Width="27" Height="4" Offset="0xA118"/>
<Texture Name="gLinkChildBeltTLUT" OutName="belt_tlut" Format="rgba16" Width="16" Height="16" Offset="0x5300"/>
<!--Eyes-->
<Texture Name="gLinkChildEyesOpenTex" OutName="link_child_eyes_open" Format="ci8" Width="64" Height="32" Offset="0x0000" TlutOffset="0x5500"/>
<Texture Name="gLinkChildEyesHalfTex" OutName="link_child_eyes_half" Format="ci8" Width="64" Height="32" Offset="0x0800" TlutOffset="0x5500"/>
<Texture Name="gLinkChildEyesClosedfTex" OutName="link_child_eyes_closed" Format="ci8" Width="64" Height="32" Offset="0x1000" TlutOffset="0x5500"/>
<Texture Name="gLinkChildEyesRollLeftTex" OutName="link_child_eyes_roll_left" Format="ci8" Width="64" Height="32" Offset="0x1800" TlutOffset="0x5500"/><!--Left from links perspective-->
<Texture Name="gLinkChildEyesRollRightTex" OutName="link_child_eyes_roll_right" Format="ci8" Width="64" Height="32" Offset="0x2000" TlutOffset="0x5500"/><!--Right from links perspective-->
<Texture Name="gLinkChildEyesShockTex" OutName="link_child_eyes_shock" Format="ci8" Width="64" Height="32" Offset="0x2800" TlutOffset="0x5500"/>
<Texture Name="gLinkChildEyesUnk1Tex" OutName="link_child_eyes_unk_1" Format="ci8" Width="64" Height="32" Offset="0x3000" TlutOffset="0x5500"/>
<Texture Name="gLinkChildEyesUnk2Tex" OutName="link_child_eyes_unk_2" Format="ci8" Width="64" Height="32" Offset="0x3800" TlutOffset="0x5500"/>
<Texture Name="gLinkChildEyesOpenTex" OutName="eyes_open" Format="ci8" Width="64" Height="32" Offset="0x0000" TlutOffset="0x5500"/>
<Texture Name="gLinkChildEyesHalfTex" OutName="eyes_half" Format="ci8" Width="64" Height="32" Offset="0x0800" TlutOffset="0x5500"/>
<Texture Name="gLinkChildEyesClosedfTex" OutName="eyes_closed" Format="ci8" Width="64" Height="32" Offset="0x1000" TlutOffset="0x5500"/>
<Texture Name="gLinkChildEyesRollLeftTex" OutName="eyes_roll_left" Format="ci8" Width="64" Height="32" Offset="0x1800" TlutOffset="0x5500"/><!--Left from links perspective-->
<Texture Name="gLinkChildEyesRollRightTex" OutName="eyes_roll_right" Format="ci8" Width="64" Height="32" Offset="0x2000" TlutOffset="0x5500"/><!--Right from links perspective-->
<Texture Name="gLinkChildEyesShockTex" OutName="eyes_shock" Format="ci8" Width="64" Height="32" Offset="0x2800" TlutOffset="0x5500"/>
<Texture Name="gLinkChildEyesUnk1Tex" OutName="eyes_unk_1" Format="ci8" Width="64" Height="32" Offset="0x3000" TlutOffset="0x5500"/>
<Texture Name="gLinkChildEyesUnk2Tex" OutName="eyes_unk_2" Format="ci8" Width="64" Height="32" Offset="0x3800" TlutOffset="0x5500"/>
<!--Mouth-->
<Texture Name="gLinkChildMouth1Tex" OutName="link_mouth_1" Format="ci8" Width="32" Height="32" Offset="0x4000" TlutOffset="0x5500"/>
<Texture Name="gLinkChildMouth2Tex" OutName="link_mouth_2" Format="ci8" Width="32" Height="32" Offset="0x4400" TlutOffset="0x5500"/>
<Texture Name="gLinkChildMouth3Tex" OutName="link_mouth_3" Format="ci8" Width="32" Height="32" Offset="0x4800" TlutOffset="0x5500"/>
<Texture Name="gLinkChildMouth4Tex" OutName="link_mouth_4" Format="ci8" Width="32" Height="32" Offset="0x4C00" TlutOffset="0x5500"/>
<Texture Name="gLinkChildMouth1Tex" OutName="mouth_1" Format="ci8" Width="32" Height="32" Offset="0x4000" TlutOffset="0x5500"/>
<Texture Name="gLinkChildMouth2Tex" OutName="mouth_2" Format="ci8" Width="32" Height="32" Offset="0x4400" TlutOffset="0x5500"/>
<Texture Name="gLinkChildMouth3Tex" OutName="mouth_3" Format="ci8" Width="32" Height="32" Offset="0x4800" TlutOffset="0x5500"/>
<Texture Name="gLinkChildMouth4Tex" OutName="mouth_4" Format="ci8" Width="32" Height="32" Offset="0x4C00" TlutOffset="0x5500"/>
<!--Unused Vtx-->
<Array Name="gLinkChildVtx_019E08" Count="35" Offset="0x19E08">
<Array Name="gLinkChildVtx_019E08" Count="35" Offset="0x19E08" Static="On">
<Vtx/>
</Array>
<Array Name="gLinkChildVtx_01A428" Count="39" Offset="0x1A428">
<Array Name="gLinkChildVtx_01A428" Count="39" Offset="0x1A428" Static="On">
<Vtx/>
</Array>
<Array Name="gLinkChildVtx_01AA98" Count="40" Offset="0x1AA98">
<Array Name="gLinkChildVtx_01AA98" Count="40" Offset="0x1AA98" Static="On">
<Vtx/>
</Array>
<Array Name="gLinkChildVtx_01EB38" Count="39" Offset="0x1EB38">
<Array Name="gLinkChildVtx_01EB38" Count="39" Offset="0x1EB38" Static="On">
<Vtx/>
</Array>
<Array Name="gLinkChildVtx_01F2B8" Count="39" Offset="0x1F2B8">
<Array Name="gLinkChildVtx_01F2B8" Count="39" Offset="0x1F2B8" Static="On">
<Vtx/>
</Array>
<Array Name="gLinkChildVtx_01FA28" Count="62" Offset="0x1FA28">
<Array Name="gLinkChildVtx_01FA28" Count="62" Offset="0x1FA28" Static="On">
<Vtx/>
</Array>
</File>

View File

@ -5,14 +5,6 @@
#include "segment_symbols.h"
extern Mtx D_01000000;
extern Gfx D_06025218[];
extern Gfx D_060252D8[];
extern Gfx D_06025438[];
extern Gfx D_06025598[];
extern Gfx D_06025658[];
extern Gfx D_060257B8[];
extern Gfx D_0602A738[];
extern Gfx D_0602CB48[];
extern u32 osTvType;
extern u32 osRomBase;

2
spec
View File

@ -3396,7 +3396,7 @@ endseg
beginseg
name "object_link_boy"
romalign 0x1000
include "build/baserom/object_link_boy.o"
include "build/assets/objects/object_link_boy/object_link_boy.o"
number 6
endseg

View File

@ -1,5 +1,6 @@
#include "global.h"
#include "objects/gameplay_keep/gameplay_keep.h"
#include "objects/object_link_boy/object_link_boy.h"
#include "objects/object_link_child/object_link_child.h"
typedef struct {
@ -12,7 +13,7 @@ typedef struct {
/* 0x04 */ Vec3f pos;
} BowStringData; // size = 0x10
FlexSkeletonHeader* gPlayerSkelHeaders[] = { 0x060377F4, &gLinkChildSkel };
FlexSkeletonHeader* gPlayerSkelHeaders[] = { &gLinkAdultSkel, &gLinkChildSkel };
s16 sBootData[PLAYER_BOOTS_MAX][17] = {
{ 200, 1000, 300, 700, 550, 270, 600, 350, 800, 600, -100, 600, 590, 750, 125, 200, 130 },
@ -45,21 +46,33 @@ u8 gPlayerModelTypes[][5] = {
};
Gfx* D_80125CE8[] = {
0x060226E0, gLinkChildRightHandClosedNearDL, 0x06027690, gLinkChildRightHandClosedFarDL,
0x060226E0, gLinkChildRightFistAndDekuShieldNearDL, 0x06027690, gLinkChildRightFistAndDekuShieldFarDL,
0x06022970, gLinkChildRightHandClosedNearDL, 0x06027918, gLinkChildRightHandClosedFarDL,
0x060241C0, gLinkChildRightHandClosedNearDL, 0x06028B40, gLinkChildRightHandClosedFarDL,
gLinkAdultRightHandClosedNearDL,
gLinkChildRightHandClosedNearDL,
gLinkAdultRightHandClosedFarDL,
gLinkChildRightHandClosedFarDL,
gLinkAdultRightHandClosedNearDL,
gLinkChildRightFistAndDekuShieldNearDL,
gLinkAdultRightHandClosedFarDL,
gLinkChildRightFistAndDekuShieldFarDL,
gLinkAdultRightHandHoldingHylianShieldNearDL,
gLinkChildRightHandClosedNearDL,
gLinkAdultRightHandHoldingHylianShieldFarDL,
gLinkChildRightHandClosedFarDL,
gLinkAdultRightHandHoldingMirrorShieldNearDL,
gLinkChildRightHandClosedNearDL,
gLinkAdultRightHandHoldingMirrorShieldFarDL,
gLinkChildRightHandClosedFarDL,
};
Gfx* D_80125D28[] = {
0x06023160, gLinkChildSwordAndSheathNearDL,
0x06027F00, gLinkChildSwordAndSheathFarDL,
0x06023160, gLinkChildDekuShieldSwordAndSheathNearDL,
0x06027F00, gLinkChildDekuShieldSwordAndSheathFarDL,
0x06020A78, gLinkChildHylianShieldSwordAndSheathNearDL,
0x06025FB8, gLinkChildHylianShieldSwordAndSheathFarDL,
0x060211B8, gLinkChildSwordAndSheathNearDL,
0x060264F0, gLinkChildSwordAndSheathFarDL,
gLinkAdultMasterSwordAndSheathNearDL, gLinkChildSwordAndSheathNearDL,
gLinkAdultMasterSwordAndSheathFarDL, gLinkChildSwordAndSheathFarDL,
gLinkAdultMasterSwordAndSheathNearDL, gLinkChildDekuShieldSwordAndSheathNearDL,
gLinkAdultMasterSwordAndSheathFarDL, gLinkChildDekuShieldSwordAndSheathFarDL,
gLinkAdultHylianShieldSwordAndSheathNearDL, gLinkChildHylianShieldSwordAndSheathNearDL,
gLinkAdultHylianShieldSwordAndSheathFarDL, gLinkChildHylianShieldSwordAndSheathFarDL,
gLinkAdultMirrorShieldSwordAndSheathNearDL, gLinkChildSwordAndSheathNearDL,
gLinkAdultMirrorShieldSwordAndSheathFarDL, gLinkChildSwordAndSheathFarDL,
};
Gfx* D_80125D68[] = {
@ -67,166 +80,180 @@ Gfx* D_80125D68[] = {
};
Gfx* D_80125D88[] = {
0x060249D8, gLinkChildSheathNearDL,
0x06028150, gLinkChildSheathFarDL,
0x060249D8, gLinkChildDekuShieldAndSheathNearDL,
0x06028150, gLinkChildDekuShieldAndSheathFarDL,
0x06020E70, gLinkChildHylianShieldAndSheathNearDL,
0x060262B8, gLinkChildHylianShieldAndSheathFarDL,
0x060216B0, gLinkChildSheathNearDL,
0x06026910, gLinkChildSheathFarDL,
NULL, NULL,
NULL, NULL,
0x060249D8, gLinkChildDekuShieldWithMatrixDL,
0x060249D8, gLinkChildDekuShieldWithMatrixDL,
gLinkAdultSheathNearDL,
gLinkChildSheathNearDL,
gLinkAdultSheathFarDL,
gLinkChildSheathFarDL,
gLinkAdultSheathNearDL,
gLinkChildDekuShieldAndSheathNearDL,
gLinkAdultSheathFarDL,
gLinkChildDekuShieldAndSheathFarDL,
gLinkAdultHylianShieldAndSheathNearDL,
gLinkChildHylianShieldAndSheathNearDL,
gLinkAdultHylianShieldAndSheathFarDL,
gLinkChildHylianShieldAndSheathFarDL,
gLinkAdultMirrorShieldAndSheathNearDL,
gLinkChildSheathNearDL,
gLinkAdultMirrorShieldAndSheathFarDL,
gLinkChildSheathFarDL,
NULL,
NULL,
NULL,
NULL,
gLinkAdultSheathNearDL,
gLinkChildDekuShieldWithMatrixDL,
gLinkAdultSheathNearDL,
gLinkChildDekuShieldWithMatrixDL,
};
Gfx* D_80125DE8[] = {
0x060238C8, gLinkChildLeftHandHoldingMasterSwordDL, 0x060286B8, gLinkChildLeftHandHoldingMasterSwordDL,
0x06023D50, gLinkChildLeftHandHoldingMasterSwordDL, 0x060291E8, gLinkChildLeftHandHoldingMasterSwordDL,
gLinkAdultLeftHandHoldingBgsNearDL, gLinkChildLeftHandHoldingMasterSwordDL,
gLinkAdultLeftHandHoldingBgsFarDL, gLinkChildLeftHandHoldingMasterSwordDL,
gLinkAdultHandHoldingBrokenGiantsKnifeDL, gLinkChildLeftHandHoldingMasterSwordDL,
gLinkAdultHandHoldingBrokenGiantsKnifeFarDL, gLinkChildLeftHandHoldingMasterSwordDL,
};
Gfx* D_80125E08[] = {
0x06021AA8,
gLinkAdultLeftHandNearDL,
gLinkChildLeftHandNearDL,
0x06026C58,
gLinkAdultLeftHandFarDL,
gLinkChildLeftHandFarDL,
};
Gfx* D_80125E18[] = {
0x06021CE8,
gLinkAdultLeftHandClosedNearDL,
gLinkChildLeftFistNearDL,
0x06026DF0,
gLinkAdultLeftHandClosedFarDL,
gLinkChildLeftFistFarDL,
};
Gfx* D_80125E28[] = {
0x06021F78,
gLinkAdultLeftHandHoldingMasterSwordNearDL,
gLinkChildLeftFistAndKokiriSwordNearDL,
0x06027078,
gLinkAdultLeftHandHoldingMasterSwordFarDL,
gLinkChildLeftFistAndKokiriSwordFarDL,
};
Gfx* D_80125E38[] = {
0x06021F78,
gLinkAdultLeftHandHoldingMasterSwordNearDL,
gLinkChildLeftFistAndKokiriSwordNearDL,
0x06027078,
gLinkAdultLeftHandHoldingMasterSwordFarDL,
gLinkChildLeftFistAndKokiriSwordFarDL,
};
Gfx* D_80125E48[] = {
0x06022498,
gLinkAdultRightHandNearDL,
gLinkChildRightHandNearDL,
0x060274F8,
gLinkAdultRightHandFarDL,
gLinkChildRightHandFarDL,
};
Gfx* D_80125E58[] = {
0x060226E0,
gLinkAdultRightHandClosedNearDL,
gLinkChildRightHandClosedNearDL,
0x06027690,
gLinkAdultRightHandClosedFarDL,
gLinkChildRightHandClosedFarDL,
};
Gfx* D_80125E68[] = {
0x06022DA8,
gLinkChildRightHandHoldingFairySlingshotNearDL,
0x06027B88,
gLinkChildRightHandHoldingFairySlingshotFarDL,
gLinkAdultRightHandHoldingBowNearDL,
gLinkChildRightHandHoldingSlingshotNearDL,
gLinkAdultRightHandHoldingBowFarDL,
gLinkChildRightHandHoldingSlingshotFarDL,
};
Gfx* D_80125E78[] = {
0x06023160,
gLinkAdultMasterSwordAndSheathNearDL,
gLinkChildSwordAndSheathNearDL,
0x06027F00,
gLinkAdultMasterSwordAndSheathFarDL,
gLinkChildSwordAndSheathFarDL,
};
Gfx* D_80125E88[] = {
0x060249D8,
gLinkAdultSheathNearDL,
gLinkChildSheathNearDL,
0x06028150,
gLinkAdultSheathFarDL,
gLinkChildSheathFarDL,
};
Gfx* D_80125E98[] = {
0x06035330,
gLinkAdultWaistNearDL,
gLinkChildWaistNearDL,
0x0602F530,
gLinkAdultWaistFarDL,
gLinkChildWaistFarDL,
};
Gfx* D_80125EA8[] = {
0x06022DA8,
gLinkChildRightHandHoldingFairySlingshotNearDL,
0x06027B88,
gLinkChildRightHandHoldingFairySlingshotFarDL,
gLinkAdultRightHandHoldingBowNearDL,
gLinkChildRightHandHoldingSlingshotNearDL,
gLinkAdultRightHandHoldingBowFarDL,
gLinkChildRightHandHoldingSlingshotFarDL,
};
Gfx* D_80125EB8[] = {
0x06024698,
gLinkAdultRightHandHoldingOotNearDL,
gLinkChildRightHandHoldingFairyOcarinaNearDL,
0x06028F58,
gLinkAdultRightHandHoldingOotFarDL,
gLinkChildRightHandHoldingFairyOcarinaFarDL,
};
Gfx* D_80125EC8[] = {
0x06024698,
gLinkChildRightHandAndOOTNearDL,
0x06028F58,
gLinkAdultRightHandHoldingOotNearDL,
gLinkChildRightHandAndOotNearDL,
gLinkAdultRightHandHoldingOotFarDL,
gLinkChildRightHandHoldingOOTFarDL,
};
Gfx* D_80125ED8[] = {
0x06024D70,
gLinkAdultRightHandHoldingHookshotNearDL,
gLinkChildRightHandNearDL,
0x06024D70,
gLinkAdultRightHandHoldingHookshotNearDL, // The 'far' display list exists but is not used
gLinkChildRightHandFarDL,
};
Gfx* D_80125EE8[] = {
0x060233E0,
gLinkAdultLeftHandHoldingHammerNearDL,
gLinkChildLeftHandNearDL,
0x06028288,
gLinkAdultLeftHandHoldingHammerFarDL,
gLinkChildLeftHandFarDL,
};
Gfx* D_80125EF8[] = {
0x06021AA8,
gLinkAdultLeftHandNearDL,
gLinkChildLeftFistAndBoomerangNearDL,
0x06026C58,
gLinkAdultLeftHandFarDL,
gLinkChildLeftFistAndBoomerangFarDL,
};
Gfx* D_80125F08[] = {
0x06024B58,
gLinkAdultLeftHandOutNearDL,
gLinkChildLeftHandUpNearDL,
0x06024B58,
gLinkAdultLeftHandOutNearDL,
gLinkChildLeftHandUpNearDL,
};
Gfx* D_80125F18[] = {
0x06029918,
Gfx* sArmOutDLs[] = {
gLinkAdultRightArmOutNearDL,
NULL,
};
Gfx* D_80125F20[] = {
0x06029C20,
Gfx* sHandOutDLs[] = {
gLinkAdultRightHandOutNearDL,
NULL,
};
Gfx* D_80125F28[] = {
0x06036E58,
gLinkChildLeftShoulderNearDL,
Gfx* sRightShoulderNearDLs[] = {
gLinkAdultRightShoulderNearDL,
gLinkChildRightShoulderNearDL,
};
Gfx* D_80125F30[] = {
0x06029FA0,
gLinkAdultLeftArmOutNearDL,
NULL,
};
Gfx* D_80125F38[] = {
0x0602A248,
Gfx* sHoldingFirstPersonWeaponDLs[] = {
gLinkAdultRightHandHoldingBowFirstPersonDL,
gLinkChildRightArmStretchedSlingshotDL,
};
@ -625,14 +652,15 @@ u8 sEyeMouthIndexes[][2] = {
* from adult Link's object are used here.
*/
void* sEyeTextures[] = {
0x06000000, 0x06000800, 0x06001000, 0x06001800, 0x06002000, 0x06002800, 0x06003000, 0x06003800,
gLinkAdultEyesOpenTex, gLinkAdultEyesHalfTex, gLinkAdultEyesClosedfTex, gLinkAdultEyesRollLeftTex,
gLinkAdultEyesRollRightTex, gLinkAdultEyesShockTex, gLinkAdultEyesUnk1Tex, gLinkAdultEyesUnk2Tex,
};
void* sMouthTextures[] = {
0x06004000,
0x06004400,
0x06004800,
0x06004C00,
gLinkAdultMouth1Tex,
gLinkAdultMouth2Tex,
gLinkAdultMouth3Tex,
gLinkAdultMouth4Tex,
};
Color_RGB8 sTunicColors[] = {
@ -647,8 +675,8 @@ Color_RGB8 sGauntletColors[] = {
};
Gfx* sBootDListGroups[][2] = {
{ 0x06025918, 0x06025A60 },
{ 0x06025BA8, 0x06025DB0 },
{ gLinkAdultLeftIronBootDL, gLinkAdultRightIronBootDL },
{ gLinkAdultLeftHoverBootDL, gLinkAdultRightHoverBootDL },
};
void func_8008F470(GlobalContext* globalCtx, void** skeleton, Vec3s* jointTable, s32 dListCount, s32 lod, s32 tunic,
@ -689,10 +717,12 @@ void func_8008F470(GlobalContext* globalCtx, void** skeleton, Vec3s* jointTable,
color = &sGauntletColors[strengthUpgrade - 2];
gDPSetEnvColor(POLY_OPA_DISP++, color->r, color->g, color->b, 0);
gSPDisplayList(POLY_OPA_DISP++, D_06025218);
gSPDisplayList(POLY_OPA_DISP++, D_06025598);
gSPDisplayList(POLY_OPA_DISP++, (D_80160014 == 0) ? D_060252D8 : D_06025438);
gSPDisplayList(POLY_OPA_DISP++, (D_80160018 == 8) ? D_06025658 : D_060257B8);
gSPDisplayList(POLY_OPA_DISP++, gLinkAdultLeftGauntletPlate1DL);
gSPDisplayList(POLY_OPA_DISP++, gLinkAdultRightGauntletPlate1DL);
gSPDisplayList(POLY_OPA_DISP++,
(D_80160014 == 0) ? gLinkAdultLeftGauntletPlate2DL : gLinkAdultLeftGauntletPlate3DL);
gSPDisplayList(POLY_OPA_DISP++,
(D_80160018 == 8) ? gLinkAdultRightGauntletPlate2DL : gLinkAdultRightGauntletPlate3DL);
}
if (boots != 0) {
@ -943,15 +973,16 @@ s32 func_800902F0(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3f* p
if (this->unk_6AD != 2) {
*dList = NULL;
} else if (limbIndex == PLAYER_LIMB_L_FOREARM) {
*dList = D_80125F18[(void)0, gSaveContext.linkAge];
*dList = sArmOutDLs[(void)0, gSaveContext.linkAge];
} else if (limbIndex == PLAYER_LIMB_L_HAND) {
*dList = D_80125F20[(void)0, gSaveContext.linkAge];
*dList = sHandOutDLs[(void)0, gSaveContext.linkAge];
} else if (limbIndex == PLAYER_LIMB_R_SHOULDER) {
*dList = D_80125F28[(void)0, gSaveContext.linkAge];
*dList = sRightShoulderNearDLs[(void)0, gSaveContext.linkAge];
} else if (limbIndex == PLAYER_LIMB_R_FOREARM) {
*dList = D_80125F30[(void)0, gSaveContext.linkAge];
} else if (limbIndex == PLAYER_LIMB_R_HAND) {
*dList = Player_HoldsHookshot(this) ? D_0602A738 : D_80125F38[(void)0, gSaveContext.linkAge];
*dList = Player_HoldsHookshot(this) ? gLinkAdultRightHandHoldingHookshotFarDL
: sHoldingFirstPersonWeaponDLs[(void)0, gSaveContext.linkAge];
} else {
*dList = NULL;
}
@ -1093,7 +1124,7 @@ void func_80090A28(Player* this, Vec3f* vecs) {
Matrix_MultVec3f(&D_80126098, &vecs[2]);
}
void func_80090AFC(GlobalContext* globalCtx, Player* this, f32 arg2) {
void Player_DrawHookshotReticle(GlobalContext* globalCtx, Player* this, f32 arg2) {
static Vec3f D_801260C8 = { -500.0f, -100.0f, 0.0f };
CollisionPoly* sp9C;
s32 bgId;
@ -1126,7 +1157,7 @@ void func_80090AFC(GlobalContext* globalCtx, Player* this, f32 arg2) {
gSPMatrix(OVERLAY_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_player_lib.c", 2587),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPSegment(OVERLAY_DISP++, 0x06, globalCtx->objectCtx.status[this->actor.objBankIndex].segment);
gSPDisplayList(OVERLAY_DISP++, D_0602CB48);
gSPDisplayList(OVERLAY_DISP++, gLinkAdultHookshotReticleDL);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_player_lib.c", 2592);
}
@ -1138,7 +1169,7 @@ f32 sSwordLengths[] = {
0.0f, 4000.0f, 3000.0f, 5500.0f, 0.0f, 2500.0f,
};
Gfx* sBottleDLists[] = { 0x0602AD58, gLinkChildBottleDL };
Gfx* sBottleDLists[] = { gLinkAdultBottleDL, gLinkChildBottleDL };
Color_RGB8 sBottleColors[] = {
{ 255, 255, 255 }, { 80, 80, 255 }, { 255, 100, 255 }, { 0, 0, 255 }, { 255, 0, 255 },
@ -1149,8 +1180,8 @@ Color_RGB8 sBottleColors[] = {
Vec3f D_80126128 = { 398.0f, 1419.0f, 244.0f };
BowStringData sBowStringData[] = {
{ 0x0602B108, { 0.0f, -360.4f, 0.0f } }, // bow
{ 0x060221A8, { 606.0f, 236.0f, 0.0f } }, // slingshot
{ gLinkAdultBowStringDL, { 0.0f, -360.4f, 0.0f } }, // bow
{ gLinkChildSlinghotStringDL, { 606.0f, 236.0f, 0.0f } }, // slingshot
};
Vec3f D_80126154[] = {
@ -1332,8 +1363,8 @@ void func_80090D20(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec3s*
if (func_8002DD78(this) != 0) {
Matrix_Translate(500.0f, 300.0f, 0.0f, MTXMODE_APPLY);
func_80090AFC(globalCtx, this,
(this->heldItemActionParam == PLAYER_AP_HOOKSHOT) ? 38600.0f : 77600.0f);
Player_DrawHookshotReticle(
globalCtx, this, (this->heldItemActionParam == PLAYER_AP_HOOKSHOT) ? 38600.0f : 77600.0f);
}
}
}

View File

@ -1,4 +1,5 @@
#include "z_arms_hook.h"
#include "objects/object_link_boy/object_link_boy.h"
#define FLAGS (ACTOR_FLAG_4 | ACTOR_FLAG_5)
@ -57,9 +58,6 @@ static Vec3f D_80865B94 = { 0.0f, -500.0f, -3000.0f };
static Vec3f D_80865BA0 = { 0.0f, 500.0f, 1200.0f };
static Vec3f D_80865BAC = { 0.0f, -500.0f, 1200.0f };
extern Gfx D_0602B288[];
extern Gfx D_0602AFF0[];
void ArmsHook_SetupAction(ArmsHook* this, ArmsHookActionFunc actionFunc) {
this->actionFunc = actionFunc;
}
@ -324,7 +322,7 @@ void ArmsHook_Draw(Actor* thisx, GlobalContext* globalCtx) {
func_80093D18(globalCtx->state.gfxCtx);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_arms_hook.c", 895),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, D_0602B288);
gSPDisplayList(POLY_OPA_DISP++, gLinkAdultHookshotTipDL);
Matrix_Translate(this->actor.world.pos.x, this->actor.world.pos.y, this->actor.world.pos.z, MTXMODE_NEW);
Math_Vec3f_Diff(&player->unk_3C8, &this->actor.world.pos, &sp78);
sp58 = SQ(sp78.x) + SQ(sp78.z);
@ -334,7 +332,7 @@ void ArmsHook_Draw(Actor* thisx, GlobalContext* globalCtx) {
Matrix_Scale(0.015f, 0.015f, sqrtf(SQ(sp78.y) + sp58) * 0.01f, MTXMODE_APPLY);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx, "../z_arms_hook.c", 910),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_OPA_DISP++, D_0602AFF0);
gSPDisplayList(POLY_OPA_DISP++, gLinkAdultHookshotChainDL);
CLOSE_DISPS(globalCtx->state.gfxCtx, "../z_arms_hook.c", 913);
}

View File

@ -774,7 +774,7 @@ void DemoEc_DrawDancingZora(DemoEc* this, GlobalContext* globalCtx) {
void DemoEc_InitKingZora(DemoEc* this, GlobalContext* globalCtx) {
DemoEc_UseDrawObject(this, globalCtx);
DemoEc_InitSkelAnime(this, globalCtx, &object_kz_Skel_0086D0);
DemoEc_InitSkelAnime(this, globalCtx, &gKzSkel);
DemoEc_UseAnimationObject(this, globalCtx);
DemoEc_ChangeAnimation(this, &gDemoEcKingZoraAnim, 0, 0.0f, false);
func_8096D5D4(this, globalCtx);
@ -850,7 +850,7 @@ void func_8096F3D4(DemoEc* this, GlobalContext* globalCtx) {
}
void DemoEc_DrawKingZora(DemoEc* this, GlobalContext* globalCtx) {
static void* eyeTextures[] = { 0x06001470, 0x06001870, 0x06001C70, 0x06002070 };
static void* eyeTextures[] = { gKzEyeOpenTex, gKzEyeHalfTex, gKzEyeClosedTex, gKzEyeOpen2Tex };
s32 eyeTexIndex = this->eyeTexIndex;
void* eyeTexture = eyeTextures[eyeTexIndex];

View File

@ -16,7 +16,7 @@ void EnDog_Draw(Actor* thisx, GlobalContext* globalCtx);
void EnDog_FollowPath(EnDog* this, GlobalContext* globalCtx);
void EnDog_ChooseMovement(EnDog* this, GlobalContext* globalCtx);
void EnDog_FollowLink(EnDog* this, GlobalContext* globalCtx);
void EnDog_FollowPlayer(EnDog* this, GlobalContext* globalCtx);
void EnDog_RunAway(EnDog* this, GlobalContext* globalCtx);
void EnDog_FaceLink(EnDog* this, GlobalContext* globalCtx);
void EnDog_Wait(EnDog* this, GlobalContext* globalCtx);
@ -56,14 +56,14 @@ static ColliderCylinderInit sCylinderInit = {
static CollisionCheckInfoInit2 sColChkInfoInit = { 0, 0, 0, 0, 50 };
static struct_80034EC0_Entry sAnimations[] = {
{ &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 },
{ &gDogWalkAnim, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, 0.0f },
{ &gDogWalkAnim, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, -6.0f },
{ &gDogRunAnim, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, -6.0f },
{ &gDogBarkAnim, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, -6.0f },
{ &gDogSitAnim, 1.0f, 0.0f, 4.0f, ANIMMODE_ONCE, -6.0f },
{ &gDogSitAnim, 1.0f, 5.0f, 25.0f, ANIMMODE_LOOP_PARTIAL, -6.0f },
{ &gDogBowAnim, 1.0f, 0.0f, 6.0f, ANIMMODE_ONCE, -6.0f },
{ &gDogBow2Anim, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, -6.0f },
};
typedef enum {
@ -77,7 +77,7 @@ typedef enum {
} DogBehavior;
void EnDog_PlayWalkSFX(EnDog* this) {
AnimationHeader* walk = &object_dog_Anim_001368;
AnimationHeader* walk = &gDogWalkAnim;
if (this->skelAnime.animation == walk) {
if ((this->skelAnime.curFrame == 1.0f) || (this->skelAnime.curFrame == 7.0f)) {
@ -87,7 +87,7 @@ void EnDog_PlayWalkSFX(EnDog* this) {
}
void EnDog_PlayRunSFX(EnDog* this) {
AnimationHeader* run = &object_dog_Anim_000D78;
AnimationHeader* run = &gDogRunAnim;
if (this->skelAnime.animation == run) {
if ((this->skelAnime.curFrame == 2.0f) || (this->skelAnime.curFrame == 4.0f)) {
@ -97,7 +97,7 @@ void EnDog_PlayRunSFX(EnDog* this) {
}
void EnDog_PlayBarkSFX(EnDog* this) {
AnimationHeader* bark = &object_dog_Anim_000278;
AnimationHeader* bark = &gDogBarkAnim;
if (this->skelAnime.animation == bark) {
if ((this->skelAnime.curFrame == 13.0f) || (this->skelAnime.curFrame == 19.0f)) {
@ -140,13 +140,13 @@ s32 EnDog_PlayAnimAndSFX(EnDog* this) {
switch (this->behavior) {
case DOG_SIT:
if (Animation_OnFrame(&this->skelAnime, this->skelAnime.endFrame) != 0) {
if (Animation_OnFrame(&this->skelAnime, this->skelAnime.endFrame)) {
func_80034EC0(&this->skelAnime, sAnimations, 5);
this->behavior = this->nextBehavior = DOG_SIT_2;
}
break;
case DOG_BOW:
if (Animation_OnFrame(&this->skelAnime, this->skelAnime.endFrame) != 0) {
if (Animation_OnFrame(&this->skelAnime, this->skelAnime.endFrame)) {
func_80034EC0(&this->skelAnime, sAnimations, 7);
this->behavior = this->nextBehavior = DOG_BOW_2;
}
@ -159,7 +159,6 @@ s32 EnDog_PlayAnimAndSFX(EnDog* this) {
break;
case DOG_BARK:
EnDog_PlayBarkSFX(this);
if (this) {} // needed for regalloc
break;
}
return 0;
@ -235,8 +234,7 @@ 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, &object_dog_Skel_007290, NULL, this->jointTable, this->morphTable,
13);
SkelAnime_InitFlex(globalCtx, &this->skelAnime, &gDogSkel, NULL, this->jointTable, this->morphTable, 13);
func_80034EC0(&this->skelAnime, sAnimations, 0);
if ((this->actor.params & 0x8000) == 0) {
@ -264,7 +262,7 @@ void EnDog_Init(Actor* thisx, GlobalContext* globalCtx) {
}
break;
case SCENE_IMPA: // Richard's Home
if ((u32)(this->actor.params & 0x8000) == 0) {
if (!(this->actor.params & 0x8000)) {
if (!gSaveContext.dogIsLost) {
this->nextBehavior = DOG_SIT;
this->actionFunc = EnDog_Wait;
@ -278,9 +276,9 @@ void EnDog_Init(Actor* thisx, GlobalContext* globalCtx) {
break;
}
if ((u32)(this->actor.params & 0x8000) != 0) {
if (this->actor.params & 0x8000) {
this->nextBehavior = DOG_WALK;
this->actionFunc = EnDog_FollowLink;
this->actionFunc = EnDog_FollowPlayer;
} else {
this->nextBehavior = DOG_SIT;
this->actionFunc = EnDog_ChooseMovement;
@ -299,7 +297,7 @@ void EnDog_FollowPath(EnDog* this, GlobalContext* globalCtx) {
s32 frame;
if (EnDog_CanFollow(this, globalCtx) == 1) {
this->actionFunc = EnDog_FollowLink;
this->actionFunc = EnDog_FollowPlayer;
}
if (DECR(this->behaviorTimer) != 0) {
@ -332,7 +330,7 @@ void EnDog_FollowPath(EnDog* this, GlobalContext* globalCtx) {
void EnDog_ChooseMovement(EnDog* this, GlobalContext* globalCtx) {
if (EnDog_CanFollow(this, globalCtx) == 1) {
this->actionFunc = EnDog_FollowLink;
this->actionFunc = EnDog_FollowPlayer;
}
if (DECR(this->behaviorTimer) == 0) {
@ -351,7 +349,7 @@ void EnDog_ChooseMovement(EnDog* this, GlobalContext* globalCtx) {
Math_SmoothStepToF(&this->actor.speedXZ, 0.0f, 0.4f, 1.0f, 0.0f);
}
void EnDog_FollowLink(EnDog* this, GlobalContext* globalCtx) {
void EnDog_FollowPlayer(EnDog* this, GlobalContext* globalCtx) {
f32 speed;
if (gSaveContext.dogParams == 0) {

View File

@ -57,9 +57,9 @@ static ColliderCylinderInit sCylinderInit = {
static CollisionCheckInfoInit2 sColChkInfoInit = { 0, 0, 0, 0, MASS_IMMOVABLE };
static struct_80034EC0_Entry sAnimations[] = {
{ &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 },
{ &gKzIdleAnim, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, 0.0f },
{ &gKzIdleAnim, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, -10.0f },
{ &gKzMweepAnim, 1.0f, 0.0f, -1.0f, ANIMMODE_LOOP, -10.0f },
};
u16 EnKz_GetTextNoMaskChild(GlobalContext* globalCtx, EnKz* this) {
@ -313,7 +313,7 @@ void EnKz_Init(Actor* thisx, GlobalContext* globalCtx) {
EnKz* this = (EnKz*)thisx;
s32 pad;
SkelAnime_InitFlex(globalCtx, &this->skelanime, &object_kz_Skel_0086D0, NULL, this->jointTable, this->morphTable,
SkelAnime_InitFlex(globalCtx, &this->skelanime, &gKzSkel, NULL, this->jointTable, this->morphTable,
12);
ActorShape_Init(&this->actor.shape, 0.0, NULL, 0.0);
Collider_InitCylinder(globalCtx, &this->collider);
@ -484,9 +484,9 @@ void EnKz_PostLimbDraw(GlobalContext* globalCtx, s32 limbIndex, Gfx** dList, Vec
void EnKz_Draw(Actor* thisx, GlobalContext* globalCtx) {
static void* sEyeSegments[] = {
object_kz_Tex_001470,
object_kz_Tex_001870,
object_kz_Tex_001C70,
gKzEyeOpenTex,
gKzEyeHalfTex,
gKzEyeClosedTex,
};
EnKz* this = (EnKz*)thisx;

View File

@ -9024,7 +9024,6 @@ void Player_InitCommon(Player* this, GlobalContext* globalCtx, FlexSkeletonHeade
Effect_Add(globalCtx, &this->swordEffectIndex, EFFECT_BLURE2, 0, 0, &D_8085470C);
ActorShape_Init(&this->actor.shape, 0.0f, ActorShadow_DrawFeet, this->ageProperties->unk_04);
this->unk_46C = SUBCAM_NONE;
Collider_InitCylinder(globalCtx, &this->cylinder);
Collider_SetCylinder(globalCtx, &this->cylinder, &this->actor, &D_80854624);
Collider_InitQuad(globalCtx, &this->swordQuads[0]);

View File

@ -5,6 +5,8 @@
*/
#include "z_eff_ss_stick.h"
#include "objects/object_link_boy/object_link_boy.h"
#include "objects/object_link_child/object_link_child.h"
#define rObjBankIdx regs[0]
#define rYaw regs[1]
@ -25,8 +27,8 @@ typedef struct {
u32 EffectSsStick_Init(GlobalContext* globalCtx, u32 index, EffectSs* this, void* initParamsx) {
StickDrawInfo drawInfo[] = {
{ OBJECT_LINK_BOY, 0x0602BA38 }, // adult, broken sword
{ OBJECT_LINK_CHILD, 0x06006CC0 }, // child, broken stick
{ OBJECT_LINK_BOY, gLinkAdultBrokenGiantsKnifeBladeDL }, // adult, broken sword
{ OBJECT_LINK_CHILD, gLinkChildLinkDekuStickDL }, // child, broken stick
};
StickDrawInfo* ageInfoEntry = gSaveContext.linkAge + drawInfo;
EffectSsStickInitParams* initParams = (EffectSsStickInitParams*)initParamsx;

View File

@ -58,23 +58,9 @@ object_ahg_Skel_0000F0 = 0x060000F0;
object_bji_Skel_0000F0 = 0x060000F0;
object_boj_Skel_0000F0 = 0x060000F0;
// z_player_lib
D_06025218 = 0x06025218;
D_060252D8 = 0x060252D8;
D_06025438 = 0x06025438;
D_06025598 = 0x06025598;
D_06025658 = 0x06025658;
D_060257B8 = 0x060257B8;
D_0602A738 = 0x0602A738;
D_0602CB48 = 0x0602CB48;
// z_kankyo, z_demo_kankyo, z_en_viewer, z_object_kankyo, z_eff_ss_dead_dd
D_01000000 = 0x01000000;
// z_arms_hook
D_0602B288 = 0x0602B288;
D_0602AFF0 = 0x0602AFF0;
// code_800AD920
D_0E000000 = 0x0E000000;