mirror of https://github.com/zeldaret/mm.git
Document object_boss02 (#795)
This commit is contained in:
parent
25f00ef995
commit
374c05fda3
|
@ -1,99 +1,125 @@
|
|||
<Root>
|
||||
<!-- Assets for the Twinmold boss fight (Twinmold itself, the props in its arena, its title card, etc.)-->
|
||||
<File Name="object_boss02" Segment="6">
|
||||
<Texture Name="object_boss02_Tex_000000" OutName="tex_000000" Format="i4" Width="32" Height="32" Offset="0x0" />
|
||||
<DList Name="object_boss02_DL_000230" Offset="0x230" />
|
||||
<DList Name="object_boss02_DL_0002E0" Offset="0x2E0" />
|
||||
<Texture Name="object_boss02_Tex_000300" OutName="tex_000300" Format="rgba16" Width="4" Height="4" Offset="0x300" />
|
||||
<Texture Name="object_boss02_TLUT_000320" OutName="tlut_000320" Format="rgba16" Width="4" Height="4" Offset="0x320" />
|
||||
<Texture Name="object_boss02_TLUT_000340" OutName="tlut_000340" Format="rgba16" Width="4" Height="4" Offset="0x340" />
|
||||
<Texture Name="object_boss02_TLUT_000360" OutName="tlut_000360" Format="rgba16" Width="4" Height="4" Offset="0x360" />
|
||||
<Texture Name="object_boss02_TLUT_000380" OutName="tlut_000380" Format="rgba16" Width="4" Height="4" Offset="0x380" />
|
||||
<Texture Name="object_boss02_Tex_0003A0" OutName="tex_0003A0" Format="ci4" Width="64" Height="64" Offset="0x3A0" />
|
||||
<Texture Name="object_boss02_Tex_000BA0" OutName="tex_000BA0" Format="rgba16" Width="32" Height="32" Offset="0xBA0" />
|
||||
<Texture Name="object_boss02_Tex_0013A0" OutName="tex_0013A0" Format="ci4" Width="64" Height="64" Offset="0x13A0" />
|
||||
<Texture Name="object_boss02_Tex_001BA0" OutName="tex_001BA0" Format="ci4" Width="64" Height="64" Offset="0x1BA0" />
|
||||
<Texture Name="object_boss02_Tex_0023A0" OutName="tex_0023A0" Format="rgba16" Width="16" Height="32" Offset="0x23A0" />
|
||||
<Texture Name="object_boss02_Tex_0027A0" OutName="tex_0027A0" Format="ci4" Width="64" Height="64" Offset="0x27A0" />
|
||||
<Texture Name="object_boss02_Tex_002FA0" OutName="tex_002FA0" Format="ci4" Width="64" Height="64" Offset="0x2FA0" />
|
||||
<Texture Name="object_boss02_Tex_0037A0" OutName="tex_0037A0" Format="rgba16" Width="16" Height="16" Offset="0x37A0" />
|
||||
<Texture Name="object_boss02_Tex_0039A0" OutName="tex_0039A0" Format="rgba16" Width="32" Height="32" Offset="0x39A0" />
|
||||
<Texture Name="object_boss02_Tex_0041A0" OutName="tex_0041A0" Format="ci4" Width="64" Height="64" Offset="0x41A0" />
|
||||
<Animation Name="object_boss02_Anim_004A1C" Offset="0x4A1C" />
|
||||
<DList Name="object_boss02_DL_006160" Offset="0x6160" />
|
||||
<DList Name="object_boss02_DL_006820" Offset="0x6820" />
|
||||
<DList Name="object_boss02_DL_0068C8" Offset="0x68C8" />
|
||||
<DList Name="object_boss02_DL_006970" Offset="0x6970" />
|
||||
<DList Name="object_boss02_DL_006A18" Offset="0x6A18" />
|
||||
<DList Name="object_boss02_DL_006AC0" Offset="0x6AC0" />
|
||||
<DList Name="object_boss02_DL_006C68" Offset="0x6C68" />
|
||||
<DList Name="object_boss02_DL_006FD0" Offset="0x6FD0" />
|
||||
<Texture Name="object_boss02_TLUT_007158" OutName="tlut_007158" Format="rgba16" Width="4" Height="4" Offset="0x7158" />
|
||||
<Texture Name="object_boss02_Tex_007178" OutName="tex_007178" Format="ci4" Width="64" Height="64" Offset="0x7178" />
|
||||
<DList Name="object_boss02_DL_007A88" Offset="0x7A88" />
|
||||
<DList Name="object_boss02_DL_007D18" Offset="0x7D18" />
|
||||
<Texture Name="object_boss02_TLUT_007E30" OutName="tlut_007E30" Format="rgba16" Width="4" Height="4" Offset="0x7E30" />
|
||||
<Texture Name="object_boss02_Tex_007E50" OutName="tex_007E50" Format="ci4" Width="64" Height="64" Offset="0x7E50" />
|
||||
<Texture Name="object_boss02_Tex_008650" OutName="tex_008650" Format="ia8" Width="128" Height="40" Offset="0x8650" />
|
||||
<Limb Name="object_boss02_Standardlimb_009A50" Type="Standard" EnumName="OBJECT_BOSS02_1_LIMB_01" Offset="0x9A50" />
|
||||
<Limb Name="object_boss02_Standardlimb_009A5C" Type="Standard" EnumName="OBJECT_BOSS02_1_LIMB_02" Offset="0x9A5C" />
|
||||
<Limb Name="object_boss02_Standardlimb_009A68" Type="Standard" EnumName="OBJECT_BOSS02_1_LIMB_03" Offset="0x9A68" />
|
||||
<Limb Name="object_boss02_Standardlimb_009A74" Type="Standard" EnumName="OBJECT_BOSS02_1_LIMB_04" Offset="0x9A74" />
|
||||
<Limb Name="object_boss02_Standardlimb_009A80" Type="Standard" EnumName="OBJECT_BOSS02_1_LIMB_05" Offset="0x9A80" />
|
||||
<Limb Name="object_boss02_Standardlimb_009A8C" Type="Standard" EnumName="OBJECT_BOSS02_1_LIMB_06" Offset="0x9A8C" />
|
||||
<Limb Name="object_boss02_Standardlimb_009A98" Type="Standard" EnumName="OBJECT_BOSS02_1_LIMB_07" Offset="0x9A98" />
|
||||
<Limb Name="object_boss02_Standardlimb_009AA4" Type="Standard" EnumName="OBJECT_BOSS02_1_LIMB_08" Offset="0x9AA4" />
|
||||
<Limb Name="object_boss02_Standardlimb_009AB0" Type="Standard" EnumName="OBJECT_BOSS02_1_LIMB_09" Offset="0x9AB0" />
|
||||
<Limb Name="object_boss02_Standardlimb_009ABC" Type="Standard" EnumName="OBJECT_BOSS02_1_LIMB_0A" Offset="0x9ABC" />
|
||||
<Limb Name="object_boss02_Standardlimb_009AC8" Type="Standard" EnumName="OBJECT_BOSS02_1_LIMB_0B" Offset="0x9AC8" />
|
||||
<Limb Name="object_boss02_Standardlimb_009AD4" Type="Standard" EnumName="OBJECT_BOSS02_1_LIMB_0C" Offset="0x9AD4" />
|
||||
<Skeleton Name="object_boss02_Skel_009B10" Type="Normal" LimbType="Standard" LimbNone="OBJECT_BOSS02_1_LIMB_NONE" LimbMax="OBJECT_BOSS02_1_LIMB_MAX" EnumName="object_boss02_1_Limbs" Offset="0x9B10" />
|
||||
<Animation Name="object_boss02_Anim_009C78" Offset="0x9C78" />
|
||||
<!-- <Blob Name="object_boss02_Blob_009C88" Size="0x18" Offset="0x9C88" /> -->
|
||||
<DList Name="object_boss02_DL_00ECF0" Offset="0xECF0" />
|
||||
<DList Name="object_boss02_DL_00EF90" Offset="0xEF90" />
|
||||
<DList Name="object_boss02_DL_00F310" Offset="0xF310" />
|
||||
<DList Name="object_boss02_DL_00F690" Offset="0xF690" />
|
||||
<DList Name="object_boss02_DL_00FA10" Offset="0xFA10" />
|
||||
<DList Name="object_boss02_DL_00FD90" Offset="0xFD90" />
|
||||
<DList Name="object_boss02_DL_010110" Offset="0x10110" />
|
||||
<DList Name="object_boss02_DL_010490" Offset="0x10490" />
|
||||
<DList Name="object_boss02_DL_010810" Offset="0x10810" />
|
||||
<DList Name="object_boss02_DL_010B90" Offset="0x10B90" />
|
||||
<DList Name="object_boss02_DL_010F10" Offset="0x10F10" />
|
||||
<DList Name="object_boss02_DL_011290" Offset="0x11290" />
|
||||
<DList Name="object_boss02_DL_011610" Offset="0x11610" />
|
||||
<DList Name="object_boss02_DL_011990" Offset="0x11990" />
|
||||
<DList Name="object_boss02_DL_011D10" Offset="0x11D10" />
|
||||
<DList Name="object_boss02_DL_012090" Offset="0x12090" />
|
||||
<DList Name="object_boss02_DL_012410" Offset="0x12410" />
|
||||
<DList Name="object_boss02_DL_012790" Offset="0x12790" />
|
||||
<DList Name="object_boss02_DL_012B10" Offset="0x12B10" />
|
||||
<DList Name="object_boss02_DL_012E90" Offset="0x12E90" />
|
||||
<DList Name="object_boss02_DL_013210" Offset="0x13210" />
|
||||
<DList Name="object_boss02_DL_013590" Offset="0x13590" />
|
||||
<Limb Name="object_boss02_Standardlimb_013818" Type="Standard" EnumName="OBJECT_BOSS02_2_LIMB_01" Offset="0x13818" />
|
||||
<Limb Name="object_boss02_Standardlimb_013824" Type="Standard" EnumName="OBJECT_BOSS02_2_LIMB_02" Offset="0x13824" />
|
||||
<Limb Name="object_boss02_Standardlimb_013830" Type="Standard" EnumName="OBJECT_BOSS02_2_LIMB_03" Offset="0x13830" />
|
||||
<Limb Name="object_boss02_Standardlimb_01383C" Type="Standard" EnumName="OBJECT_BOSS02_2_LIMB_04" Offset="0x1383C" />
|
||||
<Limb Name="object_boss02_Standardlimb_013848" Type="Standard" EnumName="OBJECT_BOSS02_2_LIMB_05" Offset="0x13848" />
|
||||
<Limb Name="object_boss02_Standardlimb_013854" Type="Standard" EnumName="OBJECT_BOSS02_2_LIMB_06" Offset="0x13854" />
|
||||
<Limb Name="object_boss02_Standardlimb_013860" Type="Standard" EnumName="OBJECT_BOSS02_2_LIMB_07" Offset="0x13860" />
|
||||
<Limb Name="object_boss02_Standardlimb_01386C" Type="Standard" EnumName="OBJECT_BOSS02_2_LIMB_08" Offset="0x1386C" />
|
||||
<Limb Name="object_boss02_Standardlimb_013878" Type="Standard" EnumName="OBJECT_BOSS02_2_LIMB_09" Offset="0x13878" />
|
||||
<Limb Name="object_boss02_Standardlimb_013884" Type="Standard" EnumName="OBJECT_BOSS02_2_LIMB_0A" Offset="0x13884" />
|
||||
<Limb Name="object_boss02_Standardlimb_013890" Type="Standard" EnumName="OBJECT_BOSS02_2_LIMB_0B" Offset="0x13890" />
|
||||
<Limb Name="object_boss02_Standardlimb_01389C" Type="Standard" EnumName="OBJECT_BOSS02_2_LIMB_0C" Offset="0x1389C" />
|
||||
<Limb Name="object_boss02_Standardlimb_0138A8" Type="Standard" EnumName="OBJECT_BOSS02_2_LIMB_0D" Offset="0x138A8" />
|
||||
<Limb Name="object_boss02_Standardlimb_0138B4" Type="Standard" EnumName="OBJECT_BOSS02_2_LIMB_0E" Offset="0x138B4" />
|
||||
<Limb Name="object_boss02_Standardlimb_0138C0" Type="Standard" EnumName="OBJECT_BOSS02_2_LIMB_0F" Offset="0x138C0" />
|
||||
<Limb Name="object_boss02_Standardlimb_0138CC" Type="Standard" EnumName="OBJECT_BOSS02_2_LIMB_10" Offset="0x138CC" />
|
||||
<Limb Name="object_boss02_Standardlimb_0138D8" Type="Standard" EnumName="OBJECT_BOSS02_2_LIMB_11" Offset="0x138D8" />
|
||||
<Limb Name="object_boss02_Standardlimb_0138E4" Type="Standard" EnumName="OBJECT_BOSS02_2_LIMB_12" Offset="0x138E4" />
|
||||
<Limb Name="object_boss02_Standardlimb_0138F0" Type="Standard" EnumName="OBJECT_BOSS02_2_LIMB_13" Offset="0x138F0" />
|
||||
<Limb Name="object_boss02_Standardlimb_0138FC" Type="Standard" EnumName="OBJECT_BOSS02_2_LIMB_14" Offset="0x138FC" />
|
||||
<Limb Name="object_boss02_Standardlimb_013908" Type="Standard" EnumName="OBJECT_BOSS02_2_LIMB_15" Offset="0x13908" />
|
||||
<Limb Name="object_boss02_Standardlimb_013914" Type="Standard" EnumName="OBJECT_BOSS02_2_LIMB_16" Offset="0x13914" />
|
||||
<Limb Name="object_boss02_Standardlimb_013920" Type="Standard" EnumName="OBJECT_BOSS02_2_LIMB_17" Offset="0x13920" />
|
||||
<Skeleton Name="object_boss02_Skel_013988" Type="Flex" LimbType="Standard" LimbNone="OBJECT_BOSS02_2_LIMB_NONE" LimbMax="OBJECT_BOSS02_2_LIMB_MAX" EnumName="object_boss02_2_Limbs" Offset="0x13988" />
|
||||
<!-- DisplayLists and Textures for the dust that appears wherever Twinmold contacts the ground -->
|
||||
<Texture Name="gTwinmoldDustMaskTex" OutName="dust_mask" Format="i4" Width="32" Height="32" Offset="0x0" />
|
||||
<DList Name="gTwinmoldDustMaterialDL" Offset="0x230" />
|
||||
<DList Name="gTwinmoldDustModelDL" Offset="0x2E0" />
|
||||
|
||||
<!-- Twinmold Textures -->
|
||||
<Texture Name="gTwinmoldSkinTLUT" OutName="twinmold_skin_tlut" Format="rgba16" Width="4" Height="4" Offset="0x300" />
|
||||
<Texture Name="gTwinmoldSnoutTLUT" OutName="twinmold_snout_tlut" Format="rgba16" Width="4" Height="4" Offset="0x320" />
|
||||
<Texture Name="gTwinmoldVeinsTLUT" OutName="twinmold_veins_tlut" Format="rgba16" Width="4" Height="4" Offset="0x340" />
|
||||
<Texture Name="gTwinmoldUndersideTLUT" OutName="twinmold_underside_tlut" Format="rgba16" Width="4" Height="4" Offset="0x360" />
|
||||
<Texture Name="gTwinmoldSpikeAndMandibleTLUT" OutName="twinmold_spike_and_mandible_tlut" Format="rgba16" Width="4" Height="4" Offset="0x380" />
|
||||
<Texture Name="gTwinmoldRedSkinTex" OutName="twinmold_red_skin" Format="ci4" Width="64" Height="64" Offset="0x3A0" TlutOffset="0x300" />
|
||||
<Texture Name="gTwinmoldEyeTex" OutName="twinmold_eye" Format="rgba16" Width="32" Height="32" Offset="0xBA0" />
|
||||
<Texture Name="gTwinmoldSnoutTex" OutName="twinmold_snout" Format="ci4" Width="64" Height="64" Offset="0x13A0" />
|
||||
<Texture Name="gTwinmoldVeinsTex" OutName="twinmold_veins" Format="ci4" Width="64" Height="64" Offset="0x1BA0" />
|
||||
<Texture Name="gTwinmoldTeethTex" OutName="twinmold_teeth" Format="rgba16" Width="16" Height="32" Offset="0x23A0" />
|
||||
<Texture Name="gTwinmoldUndersideTex" OutName="twinmold_underside" Format="ci4" Width="64" Height="64" Offset="0x27A0" />
|
||||
<Texture Name="gTwinmoldSpikeAndMandibleTex" OutName="twinmold_spike_and_mandible" Format="ci4" Width="64" Height="64" Offset="0x2FA0" />
|
||||
<Texture Name="gTwinmoldAntennaTex" OutName="twinmold_antenna" Format="rgba16" Width="16" Height="16" Offset="0x37A0" />
|
||||
<Texture Name="gTwinmoldTailGemTex" OutName="twinmold_tail_gem" Format="rgba16" Width="32" Height="32" Offset="0x39A0" />
|
||||
<Texture Name="gTwinmoldBlueSkinTex" OutName="twinmold_blue_skin" Format="ci4" Width="64" Height="64" Offset="0x41A0" TlutOffset="0x300"/>
|
||||
|
||||
<!-- Unused, completely motionless Twinmold Head animation -->
|
||||
<Animation Name="gTwinmoldHeadStationaryAnim" Offset="0x4A1C" />
|
||||
|
||||
<!-- Twinmold Head Limb DisplayLists -->
|
||||
<DList Name="gTwinmoldHeadDL" Offset="0x6160" />
|
||||
<DList Name="gTwinmoldHeadLeftAntennaBackDL" Offset="0x6820" />
|
||||
<DList Name="gTwinmoldHeadLeftAntennaFrontDL" Offset="0x68C8" />
|
||||
<DList Name="gTwinmoldHeadRightAntennaBackDL" Offset="0x6970" />
|
||||
<DList Name="gTwinmoldHeadRightAntennaFrontDL" Offset="0x6A18" />
|
||||
<DList Name="gTwinmoldHeadLeftMandibleDL" Offset="0x6AC0" />
|
||||
<DList Name="gTwinmoldHeadRightMandibleDL" Offset="0x6C68" />
|
||||
|
||||
<!-- DisplayLists and Textures for the destructible props in Twinmold's arena -->
|
||||
<DList Name="gTwinmoldPyramidRuinDL" Offset="0x6FD0" />
|
||||
<Texture Name="gTwinmoldPyramidRuinTLUT" OutName="pyramid_ruin_tlut" Format="rgba16" Width="4" Height="4" Offset="0x7158" />
|
||||
<Texture Name="gTwinmoldPyramidRuinTex" OutName="pyramid_ruin" Format="ci4" Width="64" Height="64" Offset="0x7178" />
|
||||
<DList Name="gRuinFragmentDL" Offset="0x7A88" />
|
||||
<DList Name="gTwinmoldMajoraPillarDL" Offset="0x7D18" />
|
||||
<Texture Name="gTwinmoldMajoraPillarTLUT" OutName="majora_pillar_tlut" Format="rgba16" Width="4" Height="4" Offset="0x7E30" />
|
||||
<Texture Name="gTwinmoldMajoraPillarTex" OutName="majora_pillar" Format="ci4" Width="64" Height="64" Offset="0x7E50" />
|
||||
|
||||
<!-- Twinmold Title Card -->
|
||||
<Texture Name="gTwinmoldTitleCardTex" OutName="twinmold_title_card" Format="ia8" Width="128" Height="40" Offset="0x8650" />
|
||||
|
||||
<!-- Twinmold Head Limbs -->
|
||||
<Limb Name="gTwinmoldHeadRootLimb" Type="Standard" EnumName="TWINMOLD_HEAD_LIMB_ROOT" Offset="0x9A50" />
|
||||
<Limb Name="gTwinmoldHeadLimb" Type="Standard" EnumName="TWINMOLD_HEAD_LIMB_HEAD" Offset="0x9A5C" />
|
||||
<Limb Name="gTwinmoldHeadRightMandibleRootLimb" Type="Standard" EnumName="TWINMOLD_HEAD_LIMB_RIGHT_MANDIBLE_ROOT" Offset="0x9A68" />
|
||||
<Limb Name="gTwinmoldHeadRightMandibleLimb" Type="Standard" EnumName="TWINMOLD_HEAD_LIMB_RIGHT_MANDIBLE" Offset="0x9A74" />
|
||||
<Limb Name="gTwinmoldHeadLeftMandibleRootLimb" Type="Standard" EnumName="TWINMOLD_HEAD_LIMB_LEFT_MANDIBLE_ROOT" Offset="0x9A80" />
|
||||
<Limb Name="gTwinmoldHeadLeftMandibleLimb" Type="Standard" EnumName="TWINMOLD_HEAD_LIMB_LEFT_MANDIBLE" Offset="0x9A8C" />
|
||||
<Limb Name="gTwinmoldHeadRightAntennaRootLimb" Type="Standard" EnumName="TWINMOLD_HEAD_LIMB_RIGHT_ANTENNA_ROOT" Offset="0x9A98" />
|
||||
<Limb Name="gTwinmoldHeadRightAntennaBackLimb" Type="Standard" EnumName="TWINMOLD_HEAD_LIMB_RIGHT_ANTENNA_BACK" Offset="0x9AA4" />
|
||||
<Limb Name="gTwinmoldHeadRightAntennaFrontLimb" Type="Standard" EnumName="TWINMOLD_HEAD_LIMB_RIGHT_ANTENNA_FRONT" Offset="0x9AB0" />
|
||||
<Limb Name="gTwinmoldHeadLeftAntennaRootLimb" Type="Standard" EnumName="TWINMOLD_HEAD_LIMB_LEFT_ANTENNA_ROOT" Offset="0x9ABC" />
|
||||
<Limb Name="gTwinmoldHeadLeftAntennaBackLimb" Type="Standard" EnumName="TWINMOLD_HEAD_LIMB_LEFT_ANTENNA_BACK" Offset="0x9AC8" />
|
||||
<Limb Name="gTwinmoldHeadLeftAntennaFrontLimb" Type="Standard" EnumName="TWINMOLD_HEAD_LIMB_LEFT_ANTENNA_FRONT" Offset="0x9AD4" />
|
||||
|
||||
<!-- Twinmold Head Skeleton -->
|
||||
<Skeleton Name="gTwinmoldHeadSkel" Type="Normal" LimbType="Standard" LimbNone="TWINMOLD_HEAD_LIMB_NONE" LimbMax="TWINMOLD_HEAD_LIMB_MAX" EnumName="TwinmoldHeadLimbs" Offset="0x9B10" />
|
||||
|
||||
<!-- The only used animation for Twinmold's Head -->
|
||||
<Animation Name="gTwinmoldHeadFlyAnim" Offset="0x9C78" />
|
||||
|
||||
<!-- Unused Empty Texture Animation -->
|
||||
<TextureAnimation Name="gTwinmoldUnusedTexAnim" Offset="0x9C90" />
|
||||
|
||||
<!-- Twinmold Body Limb DisplayLists -->
|
||||
<DList Name="gTwinmoldBodySegment1DL" Offset="0xECF0" />
|
||||
<DList Name="gTwinmoldBodySegment2DL" Offset="0xEF90" />
|
||||
<DList Name="gTwinmoldBodySegment3DL" Offset="0xF310" />
|
||||
<DList Name="gTwinmoldBodySegment4DL" Offset="0xF690" />
|
||||
<DList Name="gTwinmoldBodySegment5DL" Offset="0xFA10" />
|
||||
<DList Name="gTwinmoldBodySegment6DL" Offset="0xFD90" />
|
||||
<DList Name="gTwinmoldBodySegment7DL" Offset="0x10110" />
|
||||
<DList Name="gTwinmoldBodySegment8DL" Offset="0x10490" />
|
||||
<DList Name="gTwinmoldBodySegment9DL" Offset="0x10810" />
|
||||
<DList Name="gTwinmoldBodySegment10DL" Offset="0x10B90" />
|
||||
<DList Name="gTwinmoldBodySegment11DL" Offset="0x10F10" />
|
||||
<DList Name="gTwinmoldBodySegment12DL" Offset="0x11290" />
|
||||
<DList Name="gTwinmoldBodySegment13DL" Offset="0x11610" />
|
||||
<DList Name="gTwinmoldBodySegment14DL" Offset="0x11990" />
|
||||
<DList Name="gTwinmoldBodySegment15DL" Offset="0x11D10" />
|
||||
<DList Name="gTwinmoldBodySegment16DL" Offset="0x12090" />
|
||||
<DList Name="gTwinmoldBodySegment17DL" Offset="0x12410" />
|
||||
<DList Name="gTwinmoldBodySegment18DL" Offset="0x12790" />
|
||||
<DList Name="gTwinmoldBodySegment19DL" Offset="0x12B10" />
|
||||
<DList Name="gTwinmoldBodySegment20DL" Offset="0x12E90" />
|
||||
<DList Name="gTwinmoldBodySegment21DL" Offset="0x13210" />
|
||||
<DList Name="gTwinmoldBodyTailDL" Offset="0x13590" />
|
||||
|
||||
<!-- Twinmold Body Limbs -->
|
||||
<Limb Name="gTwinmoldBodyRootLimb" Type="Standard" EnumName="TWINMOLD_BODY_LIMB_ROOT" Offset="0x13818" />
|
||||
<Limb Name="gTwinmoldBodySegment1Limb" Type="Standard" EnumName="TWINMOLD_BODY_LIMB_SEGMENT_1" Offset="0x13824" />
|
||||
<Limb Name="gTwinmoldBodySegment2Limb" Type="Standard" EnumName="TWINMOLD_BODY_LIMB_SEGMENT_2" Offset="0x13830" />
|
||||
<Limb Name="gTwinmoldBodySegment3Limb" Type="Standard" EnumName="TWINMOLD_BODY_LIMB_SEGMENT_3" Offset="0x1383C" />
|
||||
<Limb Name="gTwinmoldBodySegment4Limb" Type="Standard" EnumName="TWINMOLD_BODY_LIMB_SEGMENT_4" Offset="0x13848" />
|
||||
<Limb Name="gTwinmoldBodySegment5Limb" Type="Standard" EnumName="TWINMOLD_BODY_LIMB_SEGMENT_5" Offset="0x13854" />
|
||||
<Limb Name="gTwinmoldBodySegment6Limb" Type="Standard" EnumName="TWINMOLD_BODY_LIMB_SEGMENT_6" Offset="0x13860" />
|
||||
<Limb Name="gTwinmoldBodySegment7Limb" Type="Standard" EnumName="TWINMOLD_BODY_LIMB_SEGMENT_7" Offset="0x1386C" />
|
||||
<Limb Name="gTwinmoldBodySegment8Limb" Type="Standard" EnumName="TWINMOLD_BODY_LIMB_SEGMENT_8" Offset="0x13878" />
|
||||
<Limb Name="gTwinmoldBodySegment9Limb" Type="Standard" EnumName="TWINMOLD_BODY_LIMB_SEGMENT_9" Offset="0x13884" />
|
||||
<Limb Name="gTwinmoldBodySegment10Limb" Type="Standard" EnumName="TWINMOLD_BODY_LIMB_SEGMENT_10" Offset="0x13890" />
|
||||
<Limb Name="gTwinmoldBodySegment11Limb" Type="Standard" EnumName="TWINMOLD_BODY_LIMB_SEGMENT_11" Offset="0x1389C" />
|
||||
<Limb Name="gTwinmoldBodySegment12Limb" Type="Standard" EnumName="TWINMOLD_BODY_LIMB_SEGMENT_12" Offset="0x138A8" />
|
||||
<Limb Name="gTwinmoldBodySegment13Limb" Type="Standard" EnumName="TWINMOLD_BODY_LIMB_SEGMENT_13" Offset="0x138B4" />
|
||||
<Limb Name="gTwinmoldBodySegment14Limb" Type="Standard" EnumName="TWINMOLD_BODY_LIMB_SEGMENT_14" Offset="0x138C0" />
|
||||
<Limb Name="gTwinmoldBodySegment15Limb" Type="Standard" EnumName="TWINMOLD_BODY_LIMB_SEGMENT_15" Offset="0x138CC" />
|
||||
<Limb Name="gTwinmoldBodySegment16Limb" Type="Standard" EnumName="TWINMOLD_BODY_LIMB_SEGMENT_16" Offset="0x138D8" />
|
||||
<Limb Name="gTwinmoldBodySegment17Limb" Type="Standard" EnumName="TWINMOLD_BODY_LIMB_SEGMENT_17" Offset="0x138E4" />
|
||||
<Limb Name="gTwinmoldBodySegment18Limb" Type="Standard" EnumName="TWINMOLD_BODY_LIMB_SEGMENT_18" Offset="0x138F0" />
|
||||
<Limb Name="gTwinmoldBodySegment19Limb" Type="Standard" EnumName="TWINMOLD_BODY_LIMB_SEGMENT_19" Offset="0x138FC" />
|
||||
<Limb Name="gTwinmoldBodySegment20Limb" Type="Standard" EnumName="TWINMOLD_BODY_LIMB_SEGMENT_20" Offset="0x13908" />
|
||||
<Limb Name="gTwinmoldBodySegment21Limb" Type="Standard" EnumName="TWINMOLD_BODY_LIMB_SEGMENT_21" Offset="0x13914" />
|
||||
<Limb Name="gTwinmoldBodyTailLimb" Type="Standard" EnumName="TWINMOLD_BODY_LIMB_TAIL" Offset="0x13920" />
|
||||
|
||||
<!-- Unused Twinmold Body Skeleton -->
|
||||
<Skeleton Name="gTwinmoldBodySkel" Type="Flex" LimbType="Standard" LimbNone="TWINMOLD_BODY_LIMB_NONE" LimbMax="TWINMOLD_BODY_LIMB_MAX" EnumName="TwinmoldBodyLimbs" Offset="0x13988" />
|
||||
</File>
|
||||
</Root>
|
||||
|
|
|
@ -7,7 +7,6 @@
|
|||
#include "z_boss_02.h"
|
||||
#include "overlays/actors/ovl_Door_Warp1/z_door_warp1.h"
|
||||
#include "overlays/actors/ovl_Item_B_Heart/z_item_b_heart.h"
|
||||
#include "objects/object_boss02/object_boss02.h"
|
||||
#include "objects/gameplay_keep/gameplay_keep.h"
|
||||
#include "prevent_bss_reordering.h"
|
||||
|
||||
|
@ -597,8 +596,8 @@ void Boss02_Init(Actor* thisx, GlobalContext* globalCtx) {
|
|||
this->actor.colChkInfo.mass = MASS_HEAVY;
|
||||
this->actor.colChkInfo.health = 20;
|
||||
Actor_SetScale(&this->actor, 0.01f);
|
||||
SkelAnime_Init(globalCtx, &this->skelAnime, &object_boss02_Skel_009B10, &object_boss02_Anim_009C78,
|
||||
this->jointTable, this->morphTable, 13);
|
||||
SkelAnime_Init(globalCtx, &this->skelAnime, &gTwinmoldHeadSkel, &gTwinmoldHeadFlyAnim, this->jointTable,
|
||||
this->morphTable, TWINMOLD_HEAD_LIMB_MAX);
|
||||
Collider_InitAndSetJntSph(globalCtx, &this->colliderSphere1, &this->actor, &sJntSphInit1,
|
||||
this->colliderSphere1Elements);
|
||||
Collider_InitAndSetJntSph(globalCtx, &this->colliderSphere2, &this->actor, &sJntSphInit2,
|
||||
|
@ -637,7 +636,7 @@ void func_809DAA98(Boss02* this, GlobalContext* globalCtx) {
|
|||
|
||||
void func_809DAAA8(Boss02* this, GlobalContext* globalCtx) {
|
||||
this->actionFunc = func_809DAB78;
|
||||
Animation_MorphToLoop(&this->skelAnime, &object_boss02_Anim_009C78, 0.0f);
|
||||
Animation_MorphToLoop(&this->skelAnime, &gTwinmoldHeadFlyAnim, 0.0f);
|
||||
if (D_809E042C->unk_1D20 != 0) {
|
||||
this->unk_0144 = 10;
|
||||
} else {
|
||||
|
@ -1323,12 +1322,12 @@ void func_809DC78C(Actor* thisx, GlobalContext* globalCtx) {
|
|||
|
||||
void Boss02_Draw(Actor* thisx, GlobalContext* globalCtx2) {
|
||||
static Gfx* D_809DFA9C[] = {
|
||||
object_boss02_DL_00ECF0, object_boss02_DL_00EF90, object_boss02_DL_00F310, object_boss02_DL_00F690,
|
||||
object_boss02_DL_00FA10, object_boss02_DL_00FD90, object_boss02_DL_010110, object_boss02_DL_010490,
|
||||
object_boss02_DL_010810, object_boss02_DL_010B90, object_boss02_DL_010F10, object_boss02_DL_011290,
|
||||
object_boss02_DL_011610, object_boss02_DL_011990, object_boss02_DL_011D10, object_boss02_DL_012090,
|
||||
object_boss02_DL_012410, object_boss02_DL_012790, object_boss02_DL_012B10, object_boss02_DL_012E90,
|
||||
object_boss02_DL_013210, object_boss02_DL_013590,
|
||||
gTwinmoldBodySegment1DL, gTwinmoldBodySegment2DL, gTwinmoldBodySegment3DL, gTwinmoldBodySegment4DL,
|
||||
gTwinmoldBodySegment5DL, gTwinmoldBodySegment6DL, gTwinmoldBodySegment7DL, gTwinmoldBodySegment8DL,
|
||||
gTwinmoldBodySegment9DL, gTwinmoldBodySegment10DL, gTwinmoldBodySegment11DL, gTwinmoldBodySegment12DL,
|
||||
gTwinmoldBodySegment13DL, gTwinmoldBodySegment14DL, gTwinmoldBodySegment15DL, gTwinmoldBodySegment16DL,
|
||||
gTwinmoldBodySegment17DL, gTwinmoldBodySegment18DL, gTwinmoldBodySegment19DL, gTwinmoldBodySegment20DL,
|
||||
gTwinmoldBodySegment21DL, gTwinmoldBodyTailDL,
|
||||
};
|
||||
static Vec3f D_809DFAF4 = { -10000.0f, -100000.0f, -100000.0f };
|
||||
GlobalContext* globalCtx = globalCtx2;
|
||||
|
@ -1353,9 +1352,9 @@ void Boss02_Draw(Actor* thisx, GlobalContext* globalCtx2) {
|
|||
func_8012C28C(globalCtx->state.gfxCtx);
|
||||
|
||||
if (this->actor.params == 0) {
|
||||
gSPSegment(POLY_OPA_DISP++, 0x08, Lib_SegmentedToVirtual(object_boss02_Tex_0003A0));
|
||||
gSPSegment(POLY_OPA_DISP++, 0x08, Lib_SegmentedToVirtual(gTwinmoldRedSkinTex));
|
||||
} else {
|
||||
gSPSegment(POLY_OPA_DISP++, 0x08, Lib_SegmentedToVirtual(object_boss02_Tex_0041A0));
|
||||
gSPSegment(POLY_OPA_DISP++, 0x08, Lib_SegmentedToVirtual(gTwinmoldBlueSkinTex));
|
||||
}
|
||||
|
||||
gSPSegment(POLY_OPA_DISP++, 0x0D, mtx);
|
||||
|
@ -1528,7 +1527,7 @@ void func_809DD2F8(GlobalContext* globalCtx) {
|
|||
for (i = 0; i < ARRAY_COUNT(D_809E0438); i++, effect++) {
|
||||
if (effect->unk_24 == 1) {
|
||||
if (!flag) {
|
||||
gSPDisplayList(POLY_XLU_DISP++, object_boss02_DL_000230);
|
||||
gSPDisplayList(POLY_XLU_DISP++, gTwinmoldDustMaterialDL);
|
||||
gDPSetEnvColor(POLY_XLU_DISP++, 185, 140, 70, 128);
|
||||
flag++;
|
||||
}
|
||||
|
@ -1549,7 +1548,7 @@ void func_809DD2F8(GlobalContext* globalCtx) {
|
|||
|
||||
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx),
|
||||
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
gSPDisplayList(POLY_XLU_DISP++, object_boss02_DL_0002E0);
|
||||
gSPDisplayList(POLY_XLU_DISP++, gTwinmoldDustModelDL);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -1598,7 +1597,7 @@ void func_809DD2F8(GlobalContext* globalCtx) {
|
|||
for (i = 0, flag = false; i < ARRAY_COUNT(D_809E0438); i++, effect++) {
|
||||
if (effect->unk_24 == 2) {
|
||||
if (!flag) {
|
||||
gSPDisplayList(POLY_XLU_DISP++, object_boss02_DL_000230);
|
||||
gSPDisplayList(POLY_XLU_DISP++, gTwinmoldDustMaterialDL);
|
||||
gDPSetEnvColor(POLY_XLU_DISP++, 30, 30, 30, 128);
|
||||
flag++;
|
||||
}
|
||||
|
@ -1614,7 +1613,7 @@ void func_809DD2F8(GlobalContext* globalCtx) {
|
|||
|
||||
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(globalCtx->state.gfxCtx),
|
||||
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
|
||||
gSPDisplayList(POLY_XLU_DISP++, object_boss02_DL_0002E0);
|
||||
gSPDisplayList(POLY_XLU_DISP++, gTwinmoldDustModelDL);
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -2141,7 +2140,7 @@ void func_809DEAC4(Boss02* this, GlobalContext* globalCtx) {
|
|||
|
||||
if (this->unk_1D1C == (u32)(KREG(92) + 125)) {
|
||||
TitleCard_InitBossName(&globalCtx->state, &globalCtx->actorCtx.titleCtxt,
|
||||
Lib_SegmentedToVirtual(object_boss02_Tex_008650), 160, 180, 128, 40);
|
||||
Lib_SegmentedToVirtual(gTwinmoldTitleCardTex), 160, 180, 128, 40);
|
||||
}
|
||||
|
||||
if (this->unk_1D1C == (u32)(BREG(27) + 335)) {
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
#define Z_BOSS_02_H
|
||||
|
||||
#include "global.h"
|
||||
#include "objects/object_boss02/object_boss02.h"
|
||||
|
||||
struct Boss02;
|
||||
|
||||
|
@ -56,8 +57,8 @@ typedef struct Boss02 {
|
|||
/* 0x0B1C */ Vec3f unk_0B1C[200];
|
||||
/* 0x147C */ Vec3f unk_147C[23];
|
||||
/* 0x1590 */ SkelAnime skelAnime;
|
||||
/* 0x15D4 */ Vec3s jointTable[13];
|
||||
/* 0x1622 */ Vec3s morphTable[13];
|
||||
/* 0x15D4 */ Vec3s jointTable[TWINMOLD_HEAD_LIMB_MAX];
|
||||
/* 0x1622 */ Vec3s morphTable[TWINMOLD_HEAD_LIMB_MAX];
|
||||
/* 0x1670 */ Boss02ActionFunc actionFunc;
|
||||
/* 0x1674 */ struct Boss02* unk_1674; // points to the other's instance
|
||||
/* 0x1678 */ s32 unk_1678;
|
||||
|
|
|
@ -65,11 +65,11 @@ Vec2s D_80BE5DD4[] = {
|
|||
};
|
||||
|
||||
Gfx* D_80BE5E24[] = {
|
||||
object_boss02_DL_007D18, object_boss02_DL_007D18, object_boss02_DL_007D18, object_boss02_DL_007D18,
|
||||
object_boss02_DL_007D18, object_boss02_DL_007D18, object_boss02_DL_007D18, object_boss02_DL_007D18,
|
||||
object_boss02_DL_007D18, object_boss02_DL_007D18, object_boss02_DL_007D18, object_boss02_DL_007D18,
|
||||
object_boss02_DL_006FD0, object_boss02_DL_006FD0, object_boss02_DL_006FD0, object_boss02_DL_006FD0,
|
||||
object_boss02_DL_006FD0, object_boss02_DL_006FD0, object_boss02_DL_006FD0, object_boss02_DL_006FD0,
|
||||
gTwinmoldMajoraPillarDL, gTwinmoldMajoraPillarDL, gTwinmoldMajoraPillarDL, gTwinmoldMajoraPillarDL,
|
||||
gTwinmoldMajoraPillarDL, gTwinmoldMajoraPillarDL, gTwinmoldMajoraPillarDL, gTwinmoldMajoraPillarDL,
|
||||
gTwinmoldMajoraPillarDL, gTwinmoldMajoraPillarDL, gTwinmoldMajoraPillarDL, gTwinmoldMajoraPillarDL,
|
||||
gTwinmoldPyramidRuinDL, gTwinmoldPyramidRuinDL, gTwinmoldPyramidRuinDL, gTwinmoldPyramidRuinDL,
|
||||
gTwinmoldPyramidRuinDL, gTwinmoldPyramidRuinDL, gTwinmoldPyramidRuinDL, gTwinmoldPyramidRuinDL,
|
||||
};
|
||||
|
||||
f32 D_80BE5E74[] = {
|
||||
|
@ -176,7 +176,7 @@ void EnTanron5_Init(Actor* thisx, GlobalContext* globalCtx) {
|
|||
this->unk_144 = 250;
|
||||
this->actor.shape.rot.x = this->actor.shape.rot.y = this->actor.shape.rot.z = 0;
|
||||
} else {
|
||||
this->unk_148 = object_boss02_DL_007A88;
|
||||
this->unk_148 = gRuinFragmentDL;
|
||||
this->unk_144 = 150;
|
||||
}
|
||||
} else if (ENTANRON5_GET(&this->actor) == ENTANRON5_0) {
|
||||
|
@ -194,7 +194,7 @@ void EnTanron5_Init(Actor* thisx, GlobalContext* globalCtx) {
|
|||
Actor_SetScale(&child->actor, child->unk_19C);
|
||||
|
||||
child->unk_148 = D_80BE5E24[i];
|
||||
if (child->unk_148 == object_boss02_DL_006FD0) {
|
||||
if (child->unk_148 == gTwinmoldPyramidRuinDL) {
|
||||
child->actor.shape.rot.y = 0;
|
||||
}
|
||||
|
||||
|
@ -249,7 +249,7 @@ void EnTanron5_Update(Actor* thisx, GlobalContext* globalCtx2) {
|
|||
|
||||
Actor_SetScale(&this->actor, this->unk_19C * D_80BE5DD0);
|
||||
|
||||
if (this->unk_148 == object_boss02_DL_007D18) {
|
||||
if (this->unk_148 == gTwinmoldMajoraPillarDL) {
|
||||
this->collider.dim.radius = 65.0f * D_80BE5DD0;
|
||||
this->collider.dim.height = 380.0f * D_80BE5DD0;
|
||||
} else if (this->unk_1A0 == 0) {
|
||||
|
@ -280,7 +280,7 @@ void EnTanron5_Update(Actor* thisx, GlobalContext* globalCtx2) {
|
|||
|
||||
if ((KREG(19) != 0) || ((acHitInfo->toucher.dmgFlags & 0x05000202) && (D_80BE5DD0 < 0.5f)) ||
|
||||
(ac->id == ACTOR_BOSS_02)) {
|
||||
if (this->unk_148 == object_boss02_DL_007D18) {
|
||||
if (this->unk_148 == gTwinmoldMajoraPillarDL) {
|
||||
Math_Vec3f_Copy(&spB8, &this->actor.world.pos);
|
||||
spB8.y += D_80BE5DD0 * 300.0f;
|
||||
|
||||
|
@ -366,11 +366,11 @@ void EnTanron5_Update(Actor* thisx, GlobalContext* globalCtx2) {
|
|||
}
|
||||
|
||||
Collider_UpdateCylinder(&this->actor, &this->collider);
|
||||
if (this->unk_148 == object_boss02_DL_006FD0) {
|
||||
if (this->unk_148 == gTwinmoldPyramidRuinDL) {
|
||||
this->collider.dim.pos.y = this->actor.floorHeight;
|
||||
}
|
||||
|
||||
if ((this->unk_148 == object_boss02_DL_007D18) || (D_80BE5DD0 < 0.5f)) {
|
||||
if ((this->unk_148 == gTwinmoldMajoraPillarDL) || (D_80BE5DD0 < 0.5f)) {
|
||||
CollisionCheck_SetOC(globalCtx, &globalCtx->colChkCtx, &this->collider.base);
|
||||
} else {
|
||||
f32 xDiff = player->actor.world.pos.x - this->actor.world.pos.x;
|
||||
|
|
Loading…
Reference in New Issue