Rando: Shuffle Ocarina Buttons (Rando V3) (#3735)

* Shuffle Ocarina Buttons

* Address review

* Add trick names

* Temporarily remove the ocarina button ice trap models

* Update soh/soh/Enhancements/randomizer/3drando/location_access/locacc_death_mountain.cpp

Fix lost closing brackets from merge resolution.

---------

Co-authored-by: Christopher Leggett <chris@leggett.dev>
This commit is contained in:
Pepe20129 2023-12-28 20:19:23 +01:00 committed by GitHub
parent 2495f45124
commit c860f7a73a
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
87 changed files with 3088 additions and 185 deletions

View File

@ -0,0 +1,16 @@
<DisplayList Version="0">
<ClearGeometryMode G_LIGHTING="1" />
<LoadVertices Path="objects/object_ocarina_a_button/gOcarinaAButtonDL_vtx_cull" VertexBufferIndex="0" VertexOffset="0" Count="8"/>
<CullDisplayList Start="0" End="7"/>
<CallDisplayList Path="objects/object_ocarina_a_button/mat_gOcarinaAButtonDL_f3dlite_ocarina_A_button_edge"/>
<CallDisplayList Path="objects/object_ocarina_a_button/gOcarinaAButtonDL_tri_0"/>
<CallDisplayList Path="objects/object_ocarina_a_button/mat_gOcarinaAButtonDL_f3dlite_ocarina_A_button_surface"/>
<CallDisplayList Path="objects/object_ocarina_a_button/gOcarinaAButtonDL_tri_1"/>
<PipeSync/>
<SetGeometryMode G_LIGHTING="1" />
<ClearGeometryMode G_TEXTURE_GEN="1" />
<SetCombineLERP A0="G_CCMUX_0" B0="G_CCMUX_0" C0="G_CCMUX_0" D0="G_CCMUX_SHADE" Aa0="G_ACMUX_0" Ab0="G_ACMUX_0" Ac0="G_ACMUX_0" Ad0="G_ACMUX_ENVIRONMENT" A1="G_CCMUX_0" B1="G_CCMUX_0" C1="G_CCMUX_0" D1="G_CCMUX_SHADE" Aa1="G_ACMUX_0" Ab1="G_ACMUX_0" Ac1="G_ACMUX_0" Ad1="G_ACMUX_ENVIRONMENT"/>
<Texture S="65535" T="65535" Level="0" Tile="0" On="0"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,94 @@
<DisplayList Version="0">
<LoadVertices Path="objects/object_ocarina_a_button/gOcarinaAButtonDL_vtx_0" VertexBufferIndex="0" VertexOffset="0" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="4" V01="0" V02="3" Flag0="0" V10="4" V11="5" V12="0" Flag1="0"/>
<Triangles2 V00="6" V01="7" V02="8" Flag0="0" V10="6" V11="8" V12="9" Flag1="0"/>
<Triangles2 V00="9" V01="8" V02="10" Flag0="0" V10="9" V11="10" V12="11" Flag1="0"/>
<Triangles2 V00="12" V01="13" V02="14" Flag0="0" V10="12" V11="14" V12="15" Flag1="0"/>
<Triangles2 V00="16" V01="12" V02="15" Flag0="0" V10="16" V11="17" V12="12" Flag1="0"/>
<Triangles2 V00="18" V01="19" V02="20" Flag0="0" V10="18" V11="20" V12="21" Flag1="0"/>
<Triangles2 V00="20" V01="22" V02="21" Flag0="0" V10="22" V11="23" V12="21" Flag1="0"/>
<Triangles2 V00="24" V01="23" V02="22" Flag0="0" V10="21" V11="23" V12="25" Flag1="0"/>
<Triangles2 V00="25" V01="23" V02="26" Flag0="0" V10="25" V11="26" V12="27" Flag1="0"/>
<Triangles2 V00="18" V01="25" V02="27" Flag0="0" V10="18" V11="28" V12="25" Flag1="0"/>
<Triangles2 V00="18" V01="21" V02="28" Flag0="0" V10="29" V11="30" V12="31" Flag1="0"/>
<LoadVertices Path="objects/object_ocarina_a_button/gOcarinaAButtonDL_vtx_0" VertexBufferIndex="0" VertexOffset="32" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="2" V11="1" V12="3" Flag1="0"/>
<Triangles2 V00="2" V01="3" V02="4" Flag0="0" V10="5" V11="6" V12="7" Flag1="0"/>
<Triangles2 V00="5" V01="7" V02="8" Flag0="0" V10="9" V11="8" V12="7" Flag1="0"/>
<Triangles2 V00="9" V01="10" V02="8" Flag0="0" V10="11" V11="12" V12="13" Flag1="0"/>
<Triangles2 V00="11" V01="13" V02="14" Flag0="0" V10="15" V11="14" V12="13" Flag1="0"/>
<Triangles2 V00="15" V01="16" V02="14" Flag0="0" V10="17" V11="18" V12="19" Flag1="0"/>
<Triangles2 V00="17" V01="19" V02="20" Flag0="0" V10="20" V11="19" V12="21" Flag1="0"/>
<Triangles2 V00="20" V01="21" V02="22" Flag0="0" V10="23" V11="24" V12="25" Flag1="0"/>
<Triangles2 V00="23" V01="25" V02="26" Flag0="0" V10="27" V11="26" V12="25" Flag1="0"/>
<Triangles2 V00="27" V01="28" V02="26" Flag0="0" V10="29" V11="30" V12="31" Flag1="0"/>
<LoadVertices Path="objects/object_ocarina_a_button/gOcarinaAButtonDL_vtx_0" VertexBufferIndex="0" VertexOffset="64" Count="30"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="0" V01="3" V02="4" Flag0="0" V10="5" V11="6" V12="7" Flag1="0"/>
<Triangles2 V00="5" V01="8" V02="6" Flag0="0" V10="9" V11="10" V12="11" Flag1="0"/>
<Triangles2 V00="9" V01="11" V02="12" Flag0="0" V10="8" V11="13" V12="14" Flag1="0"/>
<Triangles2 V00="8" V01="15" V02="13" Flag0="0" V10="16" V11="17" V12="18" Flag1="0"/>
<Triangles2 V00="16" V01="18" V02="19" Flag0="0" V10="15" V11="20" V12="21" Flag1="0"/>
<Triangles2 V00="15" V01="22" V02="20" Flag0="0" V10="23" V11="24" V12="25" Flag1="0"/>
<Triangles2 V00="23" V01="25" V02="26" Flag0="0" V10="22" V11="27" V12="28" Flag1="0"/>
<Triangle1 V00="22" V01="29" V02="27"/>
<LoadVertices Path="objects/object_ocarina_a_button/gOcarinaAButtonDL_vtx_0" VertexBufferIndex="0" VertexOffset="94" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="4" V01="5" V02="6" Flag0="0" V10="4" V11="7" V12="5" Flag1="0"/>
<Triangles2 V00="8" V01="9" V02="10" Flag0="0" V10="8" V11="10" V12="11" Flag1="0"/>
<Triangles2 V00="7" V01="12" V02="13" Flag0="0" V10="7" V11="14" V12="12" Flag1="0"/>
<Triangles2 V00="15" V01="16" V02="17" Flag0="0" V10="15" V11="17" V12="18" Flag1="0"/>
<Triangles2 V00="14" V01="19" V02="20" Flag0="0" V10="14" V11="21" V12="19" Flag1="0"/>
<Triangles2 V00="22" V01="23" V02="24" Flag0="0" V10="22" V11="24" V12="25" Flag1="0"/>
<Triangles2 V00="21" V01="26" V02="27" Flag0="0" V10="21" V11="28" V12="26" Flag1="0"/>
<Triangle1 V00="29" V01="30" V02="31"/>
<LoadVertices Path="objects/object_ocarina_a_button/gOcarinaAButtonDL_vtx_0" VertexBufferIndex="0" VertexOffset="126" Count="30"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="3" V11="4" V12="5" Flag1="0"/>
<Triangles2 V00="3" V01="5" V02="6" Flag0="0" V10="7" V11="8" V12="9" Flag1="0"/>
<Triangles2 V00="7" V01="9" V02="10" Flag0="0" V10="11" V11="12" V12="13" Flag1="0"/>
<Triangles2 V00="11" V01="9" V02="12" Flag0="0" V10="14" V11="15" V12="16" Flag1="0"/>
<Triangles2 V00="14" V01="16" V02="17" Flag0="0" V10="18" V11="19" V12="20" Flag1="0"/>
<Triangles2 V00="18" V01="20" V02="21" Flag0="0" V10="22" V11="23" V12="24" Flag1="0"/>
<Triangles2 V00="22" V01="24" V02="25" Flag0="0" V10="26" V11="27" V12="28" Flag1="0"/>
<Triangle1 V00="26" V01="28" V02="29"/>
<LoadVertices Path="objects/object_ocarina_a_button/gOcarinaAButtonDL_vtx_0" VertexBufferIndex="0" VertexOffset="156" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="4" V01="5" V02="6" Flag0="0" V10="4" V11="6" V12="7" Flag1="0"/>
<Triangles2 V00="8" V01="9" V02="10" Flag0="0" V10="8" V11="10" V12="2" Flag1="0"/>
<Triangles2 V00="11" V01="12" V02="13" Flag0="0" V10="11" V11="13" V12="14" Flag1="0"/>
<Triangles2 V00="15" V01="16" V02="17" Flag0="0" V10="15" V11="17" V12="10" Flag1="0"/>
<Triangles2 V00="18" V01="19" V02="20" Flag0="0" V10="18" V11="20" V12="21" Flag1="0"/>
<Triangles2 V00="22" V01="23" V02="24" Flag0="0" V10="22" V11="24" V12="17" Flag1="0"/>
<Triangles2 V00="25" V01="26" V02="27" Flag0="0" V10="25" V11="27" V12="28" Flag1="0"/>
<Triangles2 V00="29" V01="30" V02="31" Flag0="0" V10="29" V11="31" V12="24" Flag1="0"/>
<LoadVertices Path="objects/object_ocarina_a_button/gOcarinaAButtonDL_vtx_0" VertexBufferIndex="0" VertexOffset="188" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="4" V01="5" V02="6" Flag0="0" V10="4" V11="6" V12="7" Flag1="0"/>
<Triangles2 V00="8" V01="9" V02="10" Flag0="0" V10="8" V11="10" V12="11" Flag1="0"/>
<Triangles2 V00="12" V01="13" V02="14" Flag0="0" V10="12" V11="14" V12="6" Flag1="0"/>
<Triangles2 V00="15" V01="16" V02="17" Flag0="0" V10="15" V11="17" V12="18" Flag1="0"/>
<Triangles2 V00="19" V01="20" V02="21" Flag0="0" V10="19" V11="21" V12="14" Flag1="0"/>
<Triangles2 V00="22" V01="23" V02="24" Flag0="0" V10="22" V11="21" V12="23" Flag1="0"/>
<Triangles2 V00="25" V01="26" V02="27" Flag0="0" V10="25" V11="27" V12="28" Flag1="0"/>
<Triangle1 V00="29" V01="30" V02="31"/>
<LoadVertices Path="objects/object_ocarina_a_button/gOcarinaAButtonDL_vtx_0" VertexBufferIndex="0" VertexOffset="220" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="1" V11="3" V12="4" Flag1="0"/>
<Triangles2 V00="1" V01="5" V02="3" Flag0="0" V10="6" V11="7" V12="8" Flag1="0"/>
<Triangles2 V00="6" V01="9" V02="7" Flag0="0" V10="6" V11="10" V12="9" Flag1="0"/>
<Triangles2 V00="6" V01="11" V02="10" Flag0="0" V10="12" V11="13" V12="5" Flag1="0"/>
<Triangles2 V00="12" V01="5" V02="0" Flag0="0" V10="14" V11="15" V12="16" Flag1="0"/>
<Triangles2 V00="14" V01="16" V02="17" Flag0="0" V10="18" V11="14" V12="17" Flag1="0"/>
<Triangles2 V00="18" V01="17" V02="19" Flag0="0" V10="19" V11="20" V12="18" Flag1="0"/>
<Triangles2 V00="19" V01="21" V02="20" Flag0="0" V10="22" V11="23" V12="24" Flag1="0"/>
<Triangles2 V00="22" V01="24" V02="16" Flag0="0" V10="25" V11="26" V12="27" Flag1="0"/>
<Triangles2 V00="25" V01="28" V02="26" Flag0="0" V10="28" V11="29" V12="30" Flag1="0"/>
<Triangle1 V00="28" V01="31" V02="29"/>
<LoadVertices Path="objects/object_ocarina_a_button/gOcarinaAButtonDL_vtx_0" VertexBufferIndex="0" VertexOffset="252" Count="14"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="4" V01="5" V02="6" Flag0="0" V10="4" V11="7" V12="5" Flag1="0"/>
<Triangles2 V00="4" V01="8" V02="7" Flag0="0" V10="4" V11="9" V12="8" Flag1="0"/>
<Triangles2 V00="10" V01="11" V02="12" Flag0="0" V10="10" V11="12" V12="13" Flag1="0"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,19 @@
<DisplayList Version="0">
<LoadVertices Path="objects/object_ocarina_a_button/gOcarinaAButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="0" Count="31"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="3" V11="4" V12="5" Flag1="0"/>
<Triangles2 V00="6" V01="3" V02="5" Flag0="0" V10="6" V11="5" V12="7" Flag1="0"/>
<Triangles2 V00="5" V01="8" V02="7" Flag0="0" V10="7" V11="9" V12="6" Flag1="0"/>
<Triangles2 V00="7" V01="10" V02="9" Flag0="0" V10="7" V11="11" V12="10" Flag1="0"/>
<Triangles2 V00="10" V01="12" V02="9" Flag0="0" V10="10" V11="13" V12="12" Flag1="0"/>
<Triangles2 V00="12" V01="14" V02="9" Flag0="0" V10="15" V11="14" V12="12" Flag1="0"/>
<Triangles2 V00="15" V01="12" V02="3" Flag0="0" V10="12" V11="16" V12="3" Flag1="0"/>
<Triangles2 V00="15" V01="3" V02="17" Flag0="0" V10="3" V11="18" V12="17" Flag1="0"/>
<Triangles2 V00="6" V01="18" V02="3" Flag0="0" V10="17" V11="19" V12="15" Flag1="0"/>
<Triangles2 V00="19" V01="20" V02="15" Flag0="0" V10="21" V11="22" V12="23" Flag1="0"/>
<Triangles2 V00="21" V01="23" V02="24" Flag0="0" V10="23" V11="25" V12="24" Flag1="0"/>
<Triangles2 V00="24" V01="26" V02="21" Flag0="0" V10="24" V11="27" V12="26" Flag1="0"/>
<Triangles2 V00="24" V01="28" V02="27" Flag0="0" V10="27" V11="29" V12="26" Flag1="0"/>
<Triangle1 V00="26" V01="30" V02="21"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,268 @@
<Vertex Version="0">
<Vtx X="-10" Y="-23" Z="3" S="-529" T="495" R="123" G="246" B="30" A="255"/>
<Vtx X="-10" Y="-23" Z="2" S="-529" T="495" R="127" G="245" B="0" A="255"/>
<Vtx X="-6" Y="23" Z="2" S="-426" T="495" R="127" G="245" B="0" A="255"/>
<Vtx X="-6" Y="23" Z="3" S="-426" T="495" R="123" G="246" B="30" A="255"/>
<Vtx X="-6" Y="24" Z="5" S="-426" T="495" R="114" G="246" B="55" A="255"/>
<Vtx X="-10" Y="-24" Z="5" S="-529" T="495" R="114" G="246" B="55" A="255"/>
<Vtx X="-3" Y="-23" Z="2" S="188" T="495" R="0" G="127" B="0" A="255"/>
<Vtx X="-10" Y="-23" Z="2" S="-529" T="495" R="0" G="127" B="0" A="255"/>
<Vtx X="-10" Y="-23" Z="3" S="-529" T="495" R="0" G="125" B="22" A="255"/>
<Vtx X="-3" Y="-23" Z="3" S="188" T="495" R="0" G="125" B="21" A="255"/>
<Vtx X="-10" Y="-24" Z="5" S="-529" T="495" R="0" G="121" B="39" A="255"/>
<Vtx X="-2" Y="-24" Z="5" S="188" T="495" R="0" G="121" B="39" A="255"/>
<Vtx X="1" Y="-7" Z="4" S="291" T="495" R="125" G="8" B="21" A="255"/>
<Vtx X="1" Y="-7" Z="2" S="291" T="495" R="127" G="8" B="0" A="255"/>
<Vtx X="0" Y="12" Z="2" S="393" T="495" R="127" G="8" B="0" A="255"/>
<Vtx X="0" Y="12" Z="4" S="393" T="495" R="127" G="8" B="5" A="255"/>
<Vtx X="0" Y="7" Z="5" S="368" T="495" R="117" G="8" B="48" A="255"/>
<Vtx X="1" Y="-7" Z="5" S="293" T="495" R="117" G="8" B="48" A="255"/>
<Vtx X="-10" Y="-23" Z="2" S="-529" T="495" R="0" G="0" B="127" A="255"/>
<Vtx X="-3" Y="-23" Z="2" S="188" T="495" R="0" G="0" B="127" A="255"/>
<Vtx X="-2" Y="-13" Z="2" S="86" T="495" R="0" G="0" B="127" A="255"/>
<Vtx X="1" Y="-7" Z="2" S="291" T="495" R="0" G="0" B="127" A="255"/>
<Vtx X="2" Y="-13" Z="2" S="-17" T="495" R="0" G="0" B="127" A="255"/>
<Vtx X="10" Y="-23" Z="2" S="-221" T="495" R="0" G="0" B="127" A="255"/>
<Vtx X="3" Y="-23" Z="2" S="-119" T="495" R="0" G="0" B="127" A="255"/>
<Vtx X="0" Y="12" Z="2" S="393" T="495" R="0" G="0" B="127" A="255"/>
<Vtx X="5" Y="23" Z="2" S="-324" T="495" R="0" G="0" B="127" A="255"/>
<Vtx X="-6" Y="23" Z="2" S="-426" T="495" R="0" G="0" B="127" A="255"/>
<Vtx X="-1" Y="-7" Z="2" S="495" T="495" R="0" G="0" B="127" A="255"/>
<Vtx X="5" Y="23" Z="2" S="-324" T="495" R="129" G="245" B="0" A="255"/>
<Vtx X="10" Y="-23" Z="2" S="-221" T="495" R="129" G="245" B="0" A="255"/>
<Vtx X="10" Y="-23" Z="3" S="-221" T="495" R="133" G="245" B="30" A="255"/>
<Vtx X="5" Y="23" Z="2" S="-324" T="495" R="129" G="245" B="0" A="255"/>
<Vtx X="10" Y="-23" Z="3" S="-221" T="495" R="133" G="245" B="30" A="255"/>
<Vtx X="5" Y="23" Z="3" S="-324" T="495" R="133" G="245" B="30" A="255"/>
<Vtx X="10" Y="-24" Z="5" S="-221" T="495" R="142" G="246" B="55" A="255"/>
<Vtx X="6" Y="24" Z="5" S="-324" T="495" R="142" G="246" B="55" A="255"/>
<Vtx X="-2" Y="-13" Z="2" S="86" T="495" R="129" G="11" B="0" A="255"/>
<Vtx X="-3" Y="-23" Z="2" S="188" T="495" R="129" G="11" B="0" A="255"/>
<Vtx X="-3" Y="-23" Z="3" S="188" T="495" R="132" G="11" B="26" A="255"/>
<Vtx X="-2" Y="-13" Z="3" S="86" T="495" R="131" G="11" B="21" A="255"/>
<Vtx X="-2" Y="-24" Z="5" S="188" T="495" R="139" G="10" B="48" A="255"/>
<Vtx X="-1" Y="-14" Z="5" S="90" T="495" R="139" G="10" B="48" A="255"/>
<Vtx X="0" Y="12" Z="2" S="393" T="495" R="129" G="9" B="0" A="255"/>
<Vtx X="-1" Y="-7" Z="2" S="495" T="495" R="129" G="9" B="0" A="255"/>
<Vtx X="-1" Y="-7" Z="4" S="495" T="495" R="131" G="9" B="21" A="255"/>
<Vtx X="0" Y="12" Z="4" S="393" T="495" R="129" G="9" B="5" A="255"/>
<Vtx X="-1" Y="-7" Z="5" S="494" T="495" R="139" G="8" B="48" A="255"/>
<Vtx X="0" Y="7" Z="5" S="418" T="495" R="139" G="8" B="48" A="255"/>
<Vtx X="10" Y="-23" Z="2" S="-221" T="495" R="0" G="127" B="0" A="255"/>
<Vtx X="3" Y="-23" Z="2" S="-119" T="495" R="0" G="127" B="0" A="255"/>
<Vtx X="3" Y="-23" Z="3" S="-119" T="495" R="0" G="125" B="21" A="255"/>
<Vtx X="10" Y="-23" Z="3" S="-221" T="495" R="0" G="125" B="22" A="255"/>
<Vtx X="2" Y="-24" Z="5" S="-119" T="495" R="0" G="121" B="39" A="255"/>
<Vtx X="10" Y="-24" Z="5" S="-221" T="495" R="0" G="121" B="39" A="255"/>
<Vtx X="2" Y="-13" Z="2" S="-17" T="495" R="0" G="127" B="0" A="255"/>
<Vtx X="-2" Y="-13" Z="2" S="86" T="495" R="0" G="127" B="0" A="255"/>
<Vtx X="-2" Y="-13" Z="3" S="86" T="495" R="0" G="125" B="21" A="255"/>
<Vtx X="2" Y="-13" Z="3" S="-17" T="495" R="0" G="125" B="21" A="255"/>
<Vtx X="-1" Y="-14" Z="5" S="73" T="495" R="0" G="118" B="48" A="255"/>
<Vtx X="1" Y="-14" Z="5" S="-4" T="495" R="0" G="118" B="48" A="255"/>
<Vtx X="3" Y="-23" Z="3" S="-119" T="495" R="124" G="12" B="26" A="255"/>
<Vtx X="3" Y="-23" Z="2" S="-119" T="495" R="126" G="12" B="0" A="255"/>
<Vtx X="2" Y="-13" Z="2" S="-17" T="495" R="126" G="12" B="0" A="255"/>
<Vtx X="3" Y="-23" Z="3" S="-119" T="495" R="124" G="12" B="26" A="255"/>
<Vtx X="2" Y="-13" Z="2" S="-17" T="495" R="126" G="12" B="0" A="255"/>
<Vtx X="2" Y="-13" Z="3" S="-17" T="495" R="125" G="12" B="21" A="255"/>
<Vtx X="1" Y="-14" Z="5" S="-21" T="495" R="117" G="11" B="48" A="255"/>
<Vtx X="2" Y="-24" Z="5" S="-119" T="495" R="117" G="11" B="48" A="255"/>
<Vtx X="0" Y="34" Z="5" S="-273" T="27" R="0" G="28" B="124" A="255"/>
<Vtx X="22" Y="30" Z="4" S="-131" T="40" R="27" G="37" B="119" A="255"/>
<Vtx X="0" Y="37" Z="4" S="-270" T="-5" R="0" G="46" B="118" A="255"/>
<Vtx X="20" Y="27" Z="5" S="-148" T="67" R="16" G="22" B="124" A="255"/>
<Vtx X="0" Y="37" Z="4" S="493" T="-529" R="36" G="112" B="48" A="255"/>
<Vtx X="22" Y="30" Z="4" S="395" T="-529" R="36" G="112" B="48" A="255"/>
<Vtx X="23" Y="32" Z="0" S="393" T="-273" R="36" G="112" B="48" A="255"/>
<Vtx X="0" Y="39" Z="0" S="495" T="-273" R="36" G="112" B="48" A="255"/>
<Vtx X="36" Y="12" Z="4" S="-41" T="161" R="44" G="14" B="118" A="255"/>
<Vtx X="22" Y="30" Z="4" S="-126" T="43" R="27" G="37" B="119" A="255"/>
<Vtx X="32" Y="10" Z="5" S="-70" T="174" R="27" G="8" B="124" A="255"/>
<Vtx X="22" Y="30" Z="4" S="391" T="-529" R="95" G="69" B="48" A="255"/>
<Vtx X="36" Y="12" Z="4" S="293" T="-529" R="95" G="69" B="48" A="255"/>
<Vtx X="37" Y="12" Z="0" S="291" T="-273" R="95" G="69" B="48" A="255"/>
<Vtx X="23" Y="32" Z="0" S="393" T="-273" R="95" G="69" B="48" A="255"/>
<Vtx X="36" Y="-11" Z="4" S="-39" T="311" R="42" G="242" B="119" A="255"/>
<Vtx X="36" Y="12" Z="4" S="-39" T="167" R="44" G="14" B="118" A="255"/>
<Vtx X="32" Y="-10" Z="5" S="-70" T="299" R="26" G="249" B="124" A="255"/>
<Vtx X="36" Y="12" Z="4" S="289" T="-529" R="118" G="0" B="48" A="255"/>
<Vtx X="36" Y="-11" Z="4" S="191" T="-529" R="118" G="0" B="48" A="255"/>
<Vtx X="37" Y="-12" Z="0" S="188" T="-273" R="118" G="0" B="48" A="255"/>
<Vtx X="37" Y="12" Z="0" S="291" T="-273" R="118" G="0" B="48" A="255"/>
<Vtx X="22" Y="-31" Z="4" S="-128" T="438" R="29" G="220" B="118" A="255"/>
<Vtx X="36" Y="-11" Z="4" S="-40" T="317" R="42" G="242" B="119" A="255"/>
<Vtx X="18" Y="-29" Z="5" S="-158" T="420" R="15" G="231" B="124" A="255"/>
<Vtx X="36" Y="-11" Z="4" S="187" T="-529" R="94" G="188" B="53" A="255"/>
<Vtx X="22" Y="-31" Z="4" S="86" T="-529" R="94" G="188" B="53" A="255"/>
<Vtx X="23" Y="-32" Z="0" S="86" T="-273" R="94" G="188" B="53" A="255"/>
<Vtx X="37" Y="-12" Z="0" S="188" T="-273" R="94" G="188" B="53" A="255"/>
<Vtx X="18" Y="-29" Z="5" S="-158" T="420" R="15" G="231" B="124" A="255"/>
<Vtx X="0" Y="-38" Z="4" S="-270" T="484" R="0" G="203" B="116" A="255"/>
<Vtx X="22" Y="-31" Z="4" S="-134" T="440" R="29" G="220" B="118" A="255"/>
<Vtx X="0" Y="-34" Z="5" S="-273" T="457" R="0" G="224" B="123" A="255"/>
<Vtx X="22" Y="-31" Z="4" S="81" T="-529" R="37" G="142" B="42" A="255"/>
<Vtx X="0" Y="-38" Z="4" S="-15" T="-529" R="37" G="142" B="42" A="255"/>
<Vtx X="0" Y="-39" Z="0" S="-17" T="-273" R="37" G="142" B="42" A="255"/>
<Vtx X="23" Y="-32" Z="0" S="86" T="-273" R="37" G="142" B="42" A="255"/>
<Vtx X="-22" Y="-31" Z="4" S="-411" T="440" R="227" G="220" B="118" A="255"/>
<Vtx X="0" Y="-38" Z="4" S="-275" T="484" R="0" G="203" B="116" A="255"/>
<Vtx X="-18" Y="-29" Z="5" S="-387" T="420" R="241" G="231" B="124" A="255"/>
<Vtx X="0" Y="-38" Z="4" S="-18" T="-529" R="219" G="142" B="42" A="255"/>
<Vtx X="-22" Y="-31" Z="4" S="-114" T="-529" R="219" G="142" B="42" A="255"/>
<Vtx X="-23" Y="-32" Z="0" S="-119" T="-273" R="219" G="142" B="42" A="255"/>
<Vtx X="0" Y="-39" Z="0" S="-17" T="-273" R="219" G="142" B="42" A="255"/>
<Vtx X="-36" Y="-11" Z="4" S="-505" T="317" R="214" G="242" B="119" A="255"/>
<Vtx X="-22" Y="-31" Z="4" S="-417" T="438" R="227" G="220" B="118" A="255"/>
<Vtx X="-32" Y="-10" Z="5" S="-475" T="299" R="230" G="249" B="124" A="255"/>
<Vtx X="-22" Y="-31" Z="4" S="-119" T="-529" R="162" G="188" B="53" A="255"/>
<Vtx X="-36" Y="-11" Z="4" S="-220" T="-529" R="162" G="188" B="53" A="255"/>
<Vtx X="-37" Y="-12" Z="0" S="-221" T="-273" R="162" G="188" B="53" A="255"/>
<Vtx X="-23" Y="-32" Z="0" S="-119" T="-273" R="162" G="188" B="53" A="255"/>
<Vtx X="-36" Y="12" Z="4" S="-506" T="167" R="212" G="14" B="118" A="255"/>
<Vtx X="-36" Y="-11" Z="4" S="-506" T="311" R="214" G="242" B="119" A="255"/>
<Vtx X="-32" Y="10" Z="5" S="-475" T="174" R="229" G="8" B="124" A="255"/>
<Vtx X="-36" Y="-11" Z="4" S="-224" T="-529" R="138" G="0" B="48" A="255"/>
<Vtx X="-36" Y="12" Z="4" S="-322" T="-529" R="138" G="0" B="48" A="255"/>
<Vtx X="-37" Y="12" Z="0" S="-324" T="-273" R="138" G="0" B="48" A="255"/>
<Vtx X="-36" Y="-11" Z="4" S="-224" T="-529" R="138" G="0" B="48" A="255"/>
<Vtx X="-37" Y="12" Z="0" S="-324" T="-273" R="138" G="0" B="48" A="255"/>
<Vtx X="-37" Y="-12" Z="0" S="-221" T="-273" R="138" G="0" B="48" A="255"/>
<Vtx X="0" Y="39" Z="0" S="-529" T="-273" R="220" G="112" B="48" A="255"/>
<Vtx X="-23" Y="32" Z="0" S="-426" T="-273" R="220" G="112" B="48" A="255"/>
<Vtx X="-22" Y="30" Z="4" S="-428" T="-529" R="220" G="112" B="48" A="255"/>
<Vtx X="0" Y="37" Z="4" S="-526" T="-529" R="220" G="112" B="48" A="255"/>
<Vtx X="0" Y="37" Z="4" S="-275" T="-5" R="0" G="46" B="118" A="255"/>
<Vtx X="-22" Y="30" Z="4" S="-414" T="40" R="229" G="37" B="119" A="255"/>
<Vtx X="-20" Y="27" Z="5" S="-397" T="67" R="240" G="22" B="124" A="255"/>
<Vtx X="0" Y="34" Z="5" S="-273" T="27" R="0" G="28" B="124" A="255"/>
<Vtx X="-32" Y="10" Z="5" S="-475" T="174" R="229" G="8" B="124" A="255"/>
<Vtx X="-22" Y="30" Z="4" S="-419" T="43" R="229" G="37" B="119" A="255"/>
<Vtx X="-36" Y="12" Z="4" S="-504" T="161" R="212" G="14" B="118" A="255"/>
<Vtx X="-36" Y="12" Z="4" S="-326" T="-529" R="161" G="69" B="48" A="255"/>
<Vtx X="-22" Y="30" Z="4" S="-424" T="-529" R="161" G="69" B="48" A="255"/>
<Vtx X="-23" Y="32" Z="0" S="-426" T="-273" R="161" G="69" B="48" A="255"/>
<Vtx X="-37" Y="12" Z="0" S="-324" T="-273" R="161" G="69" B="48" A="255"/>
<Vtx X="0" Y="39" Z="0" S="495" T="-273" R="36" G="112" B="208" A="255"/>
<Vtx X="23" Y="32" Z="0" S="393" T="-273" R="36" G="112" B="208" A="255"/>
<Vtx X="22" Y="30" Z="-4" S="395" T="-17" R="36" G="112" B="208" A="255"/>
<Vtx X="0" Y="37" Z="-4" S="493" T="-17" R="36" G="112" B="208" A="255"/>
<Vtx X="0" Y="37" Z="-4" S="242" T="-5" R="0" G="46" B="138" A="255"/>
<Vtx X="22" Y="30" Z="-4" S="381" T="40" R="27" G="37" B="137" A="255"/>
<Vtx X="20" Y="27" Z="-5" S="364" T="67" R="16" G="22" B="132" A="255"/>
<Vtx X="0" Y="34" Z="-5" S="239" T="27" R="0" G="28" B="132" A="255"/>
<Vtx X="23" Y="32" Z="0" S="393" T="-273" R="95" G="69" B="208" A="255"/>
<Vtx X="37" Y="12" Z="0" S="291" T="-273" R="95" G="69" B="208" A="255"/>
<Vtx X="36" Y="12" Z="-4" S="293" T="-17" R="95" G="69" B="208" A="255"/>
<Vtx X="22" Y="30" Z="-4" S="391" T="-17" R="95" G="69" B="208" A="255"/>
<Vtx X="22" Y="30" Z="-4" S="386" T="43" R="27" G="37" B="137" A="255"/>
<Vtx X="36" Y="12" Z="-4" S="471" T="161" R="44" G="14" B="138" A="255"/>
<Vtx X="32" Y="10" Z="-5" S="442" T="174" R="27" G="8" B="132" A="255"/>
<Vtx X="20" Y="27" Z="-5" S="364" T="67" R="16" G="22" B="132" A="255"/>
<Vtx X="37" Y="12" Z="0" S="291" T="-273" R="118" G="0" B="208" A="255"/>
<Vtx X="37" Y="-12" Z="0" S="188" T="-273" R="118" G="0" B="208" A="255"/>
<Vtx X="36" Y="-12" Z="-4" S="190" T="-17" R="118" G="0" B="208" A="255"/>
<Vtx X="36" Y="12" Z="-4" S="289" T="-17" R="118" G="0" B="208" A="255"/>
<Vtx X="36" Y="12" Z="-4" S="473" T="167" R="44" G="14" B="138" A="255"/>
<Vtx X="36" Y="-12" Z="-4" S="473" T="312" R="44" G="242" B="138" A="255"/>
<Vtx X="32" Y="-10" Z="-5" S="442" T="305" R="27" G="248" B="132" A="255"/>
<Vtx X="37" Y="-12" Z="0" S="188" T="-273" R="95" G="187" B="208" A="255"/>
<Vtx X="23" Y="-32" Z="0" S="86" T="-273" R="95" G="187" B="208" A="255"/>
<Vtx X="22" Y="-30" Z="-4" S="88" T="-17" R="95" G="187" B="208" A="255"/>
<Vtx X="36" Y="-12" Z="-4" S="186" T="-17" R="95" G="187" B="208" A="255"/>
<Vtx X="36" Y="-12" Z="-4" S="471" T="318" R="44" G="242" B="138" A="255"/>
<Vtx X="22" Y="-30" Z="-4" S="386" T="436" R="27" G="219" B="137" A="255"/>
<Vtx X="20" Y="-27" Z="-5" S="364" T="412" R="16" G="234" B="132" A="255"/>
<Vtx X="23" Y="-32" Z="0" S="86" T="-273" R="36" G="144" B="208" A="255"/>
<Vtx X="0" Y="-39" Z="0" S="-17" T="-273" R="36" G="144" B="208" A="255"/>
<Vtx X="0" Y="-37" Z="-4" S="-14" T="-17" R="36" G="144" B="208" A="255"/>
<Vtx X="22" Y="-30" Z="-4" S="84" T="-17" R="36" G="144" B="208" A="255"/>
<Vtx X="22" Y="-30" Z="-4" S="381" T="439" R="27" G="219" B="137" A="255"/>
<Vtx X="0" Y="-37" Z="-4" S="242" T="484" R="0" G="210" B="138" A="255"/>
<Vtx X="0" Y="-34" Z="-5" S="239" T="452" R="0" G="228" B="132" A="255"/>
<Vtx X="0" Y="-39" Z="0" S="-17" T="-273" R="220" G="144" B="208" A="255"/>
<Vtx X="-23" Y="-32" Z="0" S="-119" T="-273" R="220" G="144" B="208" A="255"/>
<Vtx X="-22" Y="-30" Z="-4" S="-117" T="-17" R="220" G="144" B="208" A="255"/>
<Vtx X="0" Y="-37" Z="-4" S="-19" T="-17" R="220" G="144" B="208" A="255"/>
<Vtx X="0" Y="-37" Z="-4" S="237" T="484" R="0" G="210" B="138" A="255"/>
<Vtx X="-22" Y="-30" Z="-4" S="98" T="439" R="229" G="219" B="137" A="255"/>
<Vtx X="-20" Y="-27" Z="-5" S="115" T="412" R="240" G="234" B="132" A="255"/>
<Vtx X="-23" Y="-32" Z="0" S="-119" T="-273" R="161" G="187" B="208" A="255"/>
<Vtx X="-37" Y="-12" Z="0" S="-221" T="-273" R="161" G="187" B="208" A="255"/>
<Vtx X="-36" Y="-12" Z="-4" S="-219" T="-17" R="161" G="187" B="208" A="255"/>
<Vtx X="-22" Y="-30" Z="-4" S="-121" T="-17" R="161" G="187" B="208" A="255"/>
<Vtx X="-22" Y="-30" Z="-4" S="93" T="436" R="229" G="219" B="137" A="255"/>
<Vtx X="-36" Y="-12" Z="-4" S="8" T="318" R="212" G="242" B="138" A="255"/>
<Vtx X="-32" Y="-10" Z="-5" S="37" T="305" R="229" G="248" B="132" A="255"/>
<Vtx X="-20" Y="-27" Z="-5" S="115" T="412" R="240" G="234" B="132" A="255"/>
<Vtx X="-37" Y="-12" Z="0" S="-221" T="-273" R="138" G="0" B="208" A="255"/>
<Vtx X="-37" Y="12" Z="0" S="-324" T="-273" R="138" G="0" B="208" A="255"/>
<Vtx X="-36" Y="12" Z="-4" S="-322" T="-17" R="138" G="0" B="208" A="255"/>
<Vtx X="-36" Y="-12" Z="-4" S="-223" T="-17" R="138" G="0" B="208" A="255"/>
<Vtx X="-36" Y="-12" Z="-4" S="6" T="312" R="212" G="242" B="138" A="255"/>
<Vtx X="-36" Y="12" Z="-4" S="6" T="167" R="212" G="14" B="138" A="255"/>
<Vtx X="-32" Y="10" Z="-5" S="37" T="174" R="229" G="8" B="132" A="255"/>
<Vtx X="-37" Y="12" Z="0" S="-324" T="-273" R="161" G="69" B="208" A="255"/>
<Vtx X="-23" Y="32" Z="0" S="-426" T="-273" R="161" G="69" B="208" A="255"/>
<Vtx X="-22" Y="30" Z="-4" S="-424" T="-17" R="161" G="69" B="208" A="255"/>
<Vtx X="-36" Y="12" Z="-4" S="-326" T="-17" R="161" G="69" B="208" A="255"/>
<Vtx X="-36" Y="12" Z="-4" S="8" T="161" R="212" G="14" B="138" A="255"/>
<Vtx X="-22" Y="30" Z="-4" S="93" T="43" R="229" G="37" B="137" A="255"/>
<Vtx X="-20" Y="27" Z="-5" S="115" T="67" R="240" G="22" B="132" A="255"/>
<Vtx X="0" Y="34" Z="-5" S="239" T="27" R="0" G="28" B="132" A="255"/>
<Vtx X="-22" Y="30" Z="-4" S="98" T="40" R="229" G="37" B="137" A="255"/>
<Vtx X="0" Y="37" Z="-4" S="237" T="-5" R="0" G="46" B="138" A="255"/>
<Vtx X="0" Y="37" Z="-4" S="-526" T="-17" R="220" G="112" B="208" A="255"/>
<Vtx X="-22" Y="30" Z="-4" S="-428" T="-17" R="220" G="112" B="208" A="255"/>
<Vtx X="-23" Y="32" Z="0" S="-426" T="-273" R="220" G="112" B="208" A="255"/>
<Vtx X="0" Y="39" Z="0" S="-529" T="-273" R="220" G="112" B="208" A="255"/>
<Vtx X="0" Y="-6" Z="5" S="-273" T="276" R="237" G="239" B="124" A="255"/>
<Vtx X="0" Y="7" Z="5" S="-274" T="193" R="208" G="3" B="118" A="255"/>
<Vtx X="-1" Y="-7" Z="5" S="-281" T="281" R="208" G="3" B="118" A="255"/>
<Vtx X="0" Y="-6" Z="5" S="-273" T="276" R="237" G="239" B="124" A="255"/>
<Vtx X="0" Y="-4" Z="5" S="-272" T="262" R="0" G="3" B="127" A="255"/>
<Vtx X="0" Y="7" Z="5" S="-274" T="193" R="208" G="3" B="118" A="255"/>
<Vtx X="1" Y="-7" Z="5" S="-264" T="281" R="48" G="3" B="118" A="255"/>
<Vtx X="0" Y="7" Z="5" S="-270" T="193" R="48" G="3" B="118" A="255"/>
<Vtx X="0" Y="-6" Z="5" S="-271" T="276" R="19" G="239" B="124" A="255"/>
<Vtx X="-1" Y="-7" Z="4" S="495" T="495" R="0" G="131" B="21" A="255"/>
<Vtx X="1" Y="-7" Z="5" S="317" T="495" R="0" G="138" B="48" A="255"/>
<Vtx X="-1" Y="-7" Z="5" S="469" T="495" R="0" G="138" B="48" A="255"/>
<Vtx X="1" Y="-7" Z="4" S="291" T="495" R="0" G="131" B="21" A="255"/>
<Vtx X="1" Y="-7" Z="2" S="291" T="495" R="0" G="129" B="0" A="255"/>
<Vtx X="-1" Y="-7" Z="2" S="495" T="495" R="0" G="129" B="0" A="255"/>
<Vtx X="-1" Y="-7" Z="5" S="-279" T="283" R="0" G="208" B="118" A="255"/>
<Vtx X="1" Y="-7" Z="5" S="-266" T="283" R="0" G="208" B="118" A="255"/>
<Vtx X="6" Y="24" Z="5" S="-239" T="93" R="235" G="228" B="122" A="255"/>
<Vtx X="10" Y="-24" Z="5" S="-211" T="386" R="213" G="252" B="119" A="255"/>
<Vtx X="12" Y="-24" Z="5" S="-199" T="394" R="250" G="5" B="127" A="255"/>
<Vtx X="7" Y="25" Z="5" S="-228" T="83" R="244" G="244" B="126" A="255"/>
<Vtx X="-6" Y="24" Z="5" S="-308" T="93" R="21" G="229" B="122" A="255"/>
<Vtx X="-7" Y="25" Z="5" S="-318" T="83" R="12" G="244" B="126" A="255"/>
<Vtx X="-10" Y="-24" Z="5" S="-334" T="386" R="43" G="253" B="120" A="255"/>
<Vtx X="-12" Y="-24" Z="5" S="-346" T="394" R="6" G="5" B="127" A="255"/>
<Vtx X="10" Y="-24" Z="5" S="-211" T="386" R="0" G="60" B="112" A="255"/>
<Vtx X="2" Y="-24" Z="5" S="-256" T="386" R="0" G="60" B="112" A="255"/>
<Vtx X="1" Y="-24" Z="5" S="-265" T="394" R="14" G="15" B="125" A="255"/>
<Vtx X="-1" Y="-24" Z="5" S="-280" T="394" R="242" G="15" B="125" A="255"/>
<Vtx X="-1" Y="-14" Z="5" S="-283" T="327" R="231" G="27" B="122" A="255"/>
<Vtx X="-2" Y="-24" Z="5" S="-289" T="386" R="208" G="4" B="118" A="255"/>
<Vtx X="0" Y="-15" Z="5" S="-274" T="334" R="238" G="20" B="124" A="255"/>
<Vtx X="1" Y="-14" Z="5" S="-265" T="324" R="25" G="27" B="122" A="255"/>
<Vtx X="-1" Y="-14" Z="5" S="-281" T="324" R="231" G="27" B="122" A="255"/>
<Vtx X="0" Y="-15" Z="5" S="-271" T="334" R="18" G="20" B="124" A="255"/>
<Vtx X="-2" Y="-24" Z="5" S="-289" T="386" R="0" G="60" B="112" A="255"/>
<Vtx X="-10" Y="-24" Z="5" S="-334" T="386" R="0" G="60" B="112" A="255"/>
<Vtx X="-12" Y="-24" Z="5" S="-346" T="394" R="6" G="5" B="127" A="255"/>
<Vtx X="-1" Y="-24" Z="5" S="-280" T="394" R="242" G="15" B="125" A="255"/>
<Vtx X="-6" Y="23" Z="3" S="-426" T="495" R="0" G="132" B="27" A="255"/>
<Vtx X="6" Y="24" Z="5" S="-324" T="495" R="0" G="138" B="48" A="255"/>
<Vtx X="-6" Y="24" Z="5" S="-426" T="495" R="0" G="138" B="48" A="255"/>
<Vtx X="5" Y="23" Z="3" S="-324" T="495" R="0" G="132" B="27" A="255"/>
<Vtx X="5" Y="23" Z="2" S="-324" T="495" R="0" G="129" B="0" A="255"/>
<Vtx X="-6" Y="23" Z="2" S="-426" T="495" R="0" G="129" B="0" A="255"/>
<Vtx X="2" Y="-24" Z="5" S="-256" T="386" R="48" G="4" B="118" A="255"/>
<Vtx X="1" Y="-14" Z="5" S="-262" T="327" R="25" G="27" B="122" A="255"/>
<Vtx X="0" Y="-15" Z="5" S="-271" T="334" R="18" G="20" B="124" A="255"/>
<Vtx X="1" Y="-24" Z="5" S="-265" T="394" R="14" G="15" B="125" A="255"/>
</Vertex>

View File

@ -0,0 +1,33 @@
<Vertex Version="0">
<Vtx X="0" Y="-4" Z="5" S="-144" T="-9" R="0" G="3" B="127" A="255"/>
<Vtx X="0" Y="-6" Z="5" S="-145" T="5" R="237" G="239" B="124" A="255"/>
<Vtx X="0" Y="-6" Z="5" S="-143" T="5" R="19" G="239" B="124" A="255"/>
<Vtx X="18" Y="-29" Z="5" S="-29" T="148" R="15" G="231" B="124" A="255"/>
<Vtx X="32" Y="-10" Z="5" S="58" T="28" R="26" G="249" B="124" A="255"/>
<Vtx X="32" Y="10" Z="5" S="58" T="-98" R="27" G="8" B="124" A="255"/>
<Vtx X="7" Y="25" Z="5" S="-100" T="-188" R="244" G="244" B="126" A="255"/>
<Vtx X="0" Y="34" Z="5" S="-144" T="-245" R="0" G="28" B="124" A="255"/>
<Vtx X="20" Y="27" Z="5" S="-19" T="-204" R="16" G="22" B="124" A="255"/>
<Vtx X="-7" Y="25" Z="5" S="-190" T="-188" R="12" G="244" B="126" A="255"/>
<Vtx X="-32" Y="10" Z="5" S="-346" T="-98" R="229" G="8" B="124" A="255"/>
<Vtx X="-20" Y="27" Z="5" S="-269" T="-204" R="240" G="22" B="124" A="255"/>
<Vtx X="-18" Y="-29" Z="5" S="-259" T="148" R="241" G="231" B="124" A="255"/>
<Vtx X="-32" Y="-10" Z="5" S="-346" T="28" R="230" G="249" B="124" A="255"/>
<Vtx X="-12" Y="-24" Z="5" S="-217" T="122" R="6" G="5" B="127" A="255"/>
<Vtx X="-1" Y="-24" Z="5" S="-151" T="122" R="242" G="15" B="125" A="255"/>
<Vtx X="0" Y="-34" Z="5" S="-144" T="185" R="0" G="224" B="123" A="255"/>
<Vtx X="1" Y="-24" Z="5" S="-137" T="122" R="14" G="15" B="125" A="255"/>
<Vtx X="12" Y="-24" Z="5" S="-71" T="122" R="250" G="5" B="127" A="255"/>
<Vtx X="0" Y="-15" Z="5" S="-143" T="63" R="18" G="20" B="124" A="255"/>
<Vtx X="0" Y="-15" Z="5" S="-146" T="63" R="238" G="20" B="124" A="255"/>
<Vtx X="-32" Y="10" Z="-5" S="166" T="-98" R="229" G="8" B="132" A="255"/>
<Vtx X="-20" Y="27" Z="-5" S="243" T="-204" R="240" G="22" B="132" A="255"/>
<Vtx X="0" Y="34" Z="-5" S="368" T="-245" R="0" G="28" B="132" A="255"/>
<Vtx X="32" Y="10" Z="-5" S="570" T="-98" R="27" G="8" B="132" A="255"/>
<Vtx X="20" Y="27" Z="-5" S="493" T="-204" R="16" G="22" B="132" A="255"/>
<Vtx X="-20" Y="-27" Z="-5" S="243" T="140" R="240" G="234" B="132" A="255"/>
<Vtx X="20" Y="-27" Z="-5" S="493" T="140" R="16" G="234" B="132" A="255"/>
<Vtx X="32" Y="-10" Z="-5" S="570" T="34" R="27" G="248" B="132" A="255"/>
<Vtx X="0" Y="-34" Z="-5" S="368" T="181" R="0" G="228" B="132" A="255"/>
<Vtx X="-32" Y="-10" Z="-5" S="166" T="34" R="229" G="248" B="132" A="255"/>
</Vertex>

View File

@ -0,0 +1,10 @@
<Vertex Version="0">
<Vtx X="-37" Y="-39" Z="-5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="-37" Y="-39" Z="5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="-37" Y="39" Z="5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="-37" Y="39" Z="-5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="37" Y="-39" Z="-5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="37" Y="-39" Z="5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="37" Y="39" Z="5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="37" Y="39" Z="-5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
</Vertex>

View File

@ -0,0 +1,21 @@
<DisplayList Version="0">
<PipeSync/>
<SetCombineLERP A0="G_CCMUX_TEXEL0" B0="G_CCMUX_0" C0="G_CCMUX_SHADE" D0="G_CCMUX_0" Aa0="G_ACMUX_0" Ab0="G_ACMUX_0" Ac0="G_ACMUX_0" Ad0="G_ACMUX_1" A1="G_CCMUX_COMBINED" B1="G_CCMUX_0" C1="G_CCMUX_PRIMITIVE" D1="G_CCMUX_0" Aa1="G_ACMUX_0" Ab1="G_ACMUX_0" Ac1="G_ACMUX_0" Ad1="G_ACMUX_COMBINED"/>
<SetGeometryMode G_ZBUFFER="1" G_SHADE="1" G_CULL_BACK="1" G_FOG="1" G_LIGHTING="1" G_TEXTURE_GEN="1" G_SHADING_SMOOTH="1" />
<SetOtherMode Cmd="G_SETOTHERMODE_H" Sft="4" Length="20" G_AD_NOISE="1" G_CD_MAGICSQ="1" G_CK_NONE="1" G_TC_FILT="1" G_TF_BILERP="1" G_TL_TILE="1" G_TD_CLAMP="1" G_TP_PERSP="1" G_CYC_2CYCLE="1" G_PM_NPRIMITIVE="1" />
<SetOtherMode Cmd="G_SETOTHERMODE_L" Sft="0" Length="32" G_AC_NONE="1" G_ZS_PIXEL="1" G_RM_FOG_SHADE_A="1" G_RM_AA_ZB_OPA_SURF2="1" />
<Texture S="1984" T="1984" Level="0" Tile="0" On="1"/>
<SetTextureLUT Mode="G_TT_NONE"/>
<TileSync/>
<SetTextureImage Path="objects/object_ocarina_a_button/noise_tex" Format="G_IM_FMT_I" Size="G_IM_SIZ_8b_LOAD_BLOCK" Width="1"/>
<SetTile Format="G_IM_FMT_I" Size="G_IM_SIZ_8b_LOAD_BLOCK" Line="0" TMem="0" Tile="7" Palette="0" Cms0="G_TX_WRAP" Cms1="G_TX_NOMIRROR" Cmt0="G_TX_WRAP" Cmt1="G_TX_NOMIRROR" MaskS="5" ShiftS="0" MaskT="5" ShiftT="0"/>
<LoadSync/>
<LoadBlock Tile="7" Uls="0" Ult="0" Lrs="511" Dxt="512"/>
<PipeSync/>
<SetTile Format="G_IM_FMT_I" Size="G_IM_SIZ_8b" Line="4" TMem="0" Tile="0" Palette="0" Cms0="G_TX_WRAP" Cms1="G_TX_NOMIRROR" Cmt0="G_TX_WRAP" Cmt1="G_TX_NOMIRROR" MaskS="5" ShiftS="0" MaskT="5" ShiftT="0"/>
<SetTileSize T="0" Uls="0" Ult="0" Lrs="124" Lrt="124"/>
<SetPrimColor M="0" L="0" R="90" G="90" B="255" A="255"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,21 @@
<DisplayList Version="0">
<PipeSync/>
<SetCombineLERP A0="G_CCMUX_TEXEL0" B0="G_CCMUX_0" C0="G_CCMUX_SHADE" D0="G_CCMUX_0" Aa0="G_ACMUX_0" Ab0="G_ACMUX_0" Ac0="G_ACMUX_0" Ad0="G_ACMUX_1" A1="G_CCMUX_COMBINED" B1="G_CCMUX_0" C1="G_CCMUX_PRIMITIVE" D1="G_CCMUX_0" Aa1="G_ACMUX_0" Ab1="G_ACMUX_0" Ac1="G_ACMUX_0" Ad1="G_ACMUX_COMBINED"/>
<SetGeometryMode G_ZBUFFER="1" G_SHADE="1" G_CULL_BACK="1" G_FOG="1" G_LIGHTING="1" G_TEXTURE_GEN="1" G_SHADING_SMOOTH="1" />
<SetOtherMode Cmd="G_SETOTHERMODE_H" Sft="4" Length="20" G_AD_NOISE="1" G_CD_MAGICSQ="1" G_CK_NONE="1" G_TC_FILT="1" G_TF_BILERP="1" G_TL_TILE="1" G_TD_CLAMP="1" G_TP_PERSP="1" G_CYC_2CYCLE="1" G_PM_NPRIMITIVE="1" />
<SetOtherMode Cmd="G_SETOTHERMODE_L" Sft="0" Length="32" G_AC_NONE="1" G_ZS_PIXEL="1" G_RM_FOG_SHADE_A="1" G_RM_AA_ZB_OPA_SURF2="1" />
<Texture S="2621" T="1311" Level="0" Tile="0" On="1"/>
<SetTextureLUT Mode="G_TT_NONE"/>
<TileSync/>
<SetTextureImage Path="objects/object_ocarina_a_button/noise_tex" Format="G_IM_FMT_I" Size="G_IM_SIZ_8b_LOAD_BLOCK" Width="1"/>
<SetTile Format="G_IM_FMT_I" Size="G_IM_SIZ_8b_LOAD_BLOCK" Line="0" TMem="0" Tile="7" Palette="0" Cms0="G_TX_WRAP" Cms1="G_TX_NOMIRROR" Cmt0="G_TX_WRAP" Cmt1="G_TX_NOMIRROR" MaskS="5" ShiftS="0" MaskT="5" ShiftT="0"/>
<LoadSync/>
<LoadBlock Tile="7" Uls="0" Ult="0" Lrs="511" Dxt="512"/>
<PipeSync/>
<SetTile Format="G_IM_FMT_I" Size="G_IM_SIZ_8b" Line="4" TMem="0" Tile="0" Palette="0" Cms0="G_TX_WRAP" Cms1="G_TX_NOMIRROR" Cmt0="G_TX_WRAP" Cmt1="G_TX_NOMIRROR" MaskS="5" ShiftS="0" MaskT="5" ShiftT="0"/>
<SetTileSize T="0" Uls="0" Ult="0" Lrs="124" Lrt="124"/>
<SetPrimColor M="0" L="0" R="60" G="60" B="170" A="255"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,16 @@
<DisplayList Version="0">
<ClearGeometryMode G_LIGHTING="1" />
<LoadVertices Path="objects/object_ocarina_c_down_button/gOcarinaCDownButtonDL_vtx_cull" VertexBufferIndex="0" VertexOffset="0" Count="8"/>
<CullDisplayList Start="0" End="7"/>
<CallDisplayList Path="objects/object_ocarina_c_down_button/mat_gOcarinaCDownButtonDL_f3dlite_ocarina_C_button_edge"/>
<CallDisplayList Path="objects/object_ocarina_c_down_button/gOcarinaCDownButtonDL_tri_0"/>
<CallDisplayList Path="objects/object_ocarina_c_down_button/mat_gOcarinaCDownButtonDL_f3dlite_ocarina_C_button_surface"/>
<CallDisplayList Path="objects/object_ocarina_c_down_button/gOcarinaCDownButtonDL_tri_1"/>
<PipeSync/>
<SetGeometryMode G_LIGHTING="1" />
<ClearGeometryMode G_TEXTURE_GEN="1" />
<SetCombineLERP A0="G_CCMUX_0" B0="G_CCMUX_0" C0="G_CCMUX_0" D0="G_CCMUX_SHADE" Aa0="G_ACMUX_0" Ab0="G_ACMUX_0" Ac0="G_ACMUX_0" Ad0="G_ACMUX_ENVIRONMENT" A1="G_CCMUX_0" B1="G_CCMUX_0" C1="G_CCMUX_0" D1="G_CCMUX_SHADE" Aa1="G_ACMUX_0" Ab1="G_ACMUX_0" Ac1="G_ACMUX_0" Ad1="G_ACMUX_ENVIRONMENT"/>
<Texture S="65535" T="65535" Level="0" Tile="0" On="0"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,93 @@
<DisplayList Version="0">
<LoadVertices Path="objects/object_ocarina_c_down_button/gOcarinaCDownButtonDL_vtx_0" VertexBufferIndex="0" VertexOffset="0" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="4" V01="0" V02="3" Flag0="0" V10="4" V11="5" V12="0" Flag1="0"/>
<Triangles2 V00="6" V01="7" V02="8" Flag0="0" V10="6" V11="8" V12="9" Flag1="0"/>
<Triangles2 V00="10" V01="6" V02="9" Flag0="0" V10="10" V11="11" V12="6" Flag1="0"/>
<Triangles2 V00="12" V01="13" V02="14" Flag0="0" V10="12" V11="14" V12="15" Flag1="0"/>
<Triangles2 V00="16" V01="15" V02="14" Flag0="0" V10="16" V11="17" V12="15" Flag1="0"/>
<Triangles2 V00="18" V01="7" V02="19" Flag0="0" V10="18" V11="19" V12="20" Flag1="0"/>
<Triangles2 V00="20" V01="19" V02="11" Flag0="0" V10="20" V11="11" V12="21" Flag1="0"/>
<Triangles2 V00="22" V01="1" V02="23" Flag0="0" V10="22" V11="23" V12="24" Flag1="0"/>
<Triangles2 V00="5" V01="24" V02="23" Flag0="0" V10="5" V11="25" V12="24" Flag1="0"/>
<Triangles2 V00="26" V01="27" V02="28" Flag0="0" V10="26" V11="28" V12="29" Flag1="0"/>
<Triangles2 V00="29" V01="28" V02="30" Flag0="0" V10="29" V11="30" V12="31" Flag1="0"/>
<LoadVertices Path="objects/object_ocarina_c_down_button/gOcarinaCDownButtonDL_vtx_0" VertexBufferIndex="0" VertexOffset="32" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="3" V01="2" V02="4" Flag0="0" V10="3" V11="4" V12="5" Flag1="0"/>
<Triangles2 V00="6" V01="7" V02="8" Flag0="0" V10="6" V11="8" V12="9" Flag1="0"/>
<Triangles2 V00="9" V01="8" V02="10" Flag0="0" V10="9" V11="10" V12="11" Flag1="0"/>
<Triangles2 V00="12" V01="13" V02="14" Flag0="0" V10="12" V11="15" V12="13" Flag1="0"/>
<Triangles2 V00="16" V01="17" V02="18" Flag0="0" V10="16" V11="18" V12="19" Flag1="0"/>
<Triangles2 V00="15" V01="20" V02="21" Flag0="0" V10="15" V11="22" V12="20" Flag1="0"/>
<Triangles2 V00="23" V01="24" V02="25" Flag0="0" V10="23" V11="25" V12="18" Flag1="0"/>
<Triangles2 V00="22" V01="26" V02="27" Flag0="0" V10="22" V11="28" V12="26" Flag1="0"/>
<Triangles2 V00="29" V01="30" V02="31" Flag0="0" V10="29" V11="31" V12="25" Flag1="0"/>
<LoadVertices Path="objects/object_ocarina_c_down_button/gOcarinaCDownButtonDL_vtx_0" VertexBufferIndex="0" VertexOffset="64" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="3" V12="1" Flag1="0"/>
<Triangles2 V00="4" V01="5" V02="6" Flag0="0" V10="4" V11="6" V12="7" Flag1="0"/>
<Triangles2 V00="3" V01="8" V02="9" Flag0="0" V10="3" V11="10" V12="8" Flag1="0"/>
<Triangles2 V00="11" V01="12" V02="13" Flag0="0" V10="11" V11="13" V12="6" Flag1="0"/>
<Triangles2 V00="10" V01="14" V02="15" Flag0="0" V10="10" V11="16" V12="14" Flag1="0"/>
<Triangles2 V00="17" V01="18" V02="19" Flag0="0" V10="17" V11="19" V12="13" Flag1="0"/>
<Triangles2 V00="16" V01="20" V02="21" Flag0="0" V10="16" V11="22" V12="20" Flag1="0"/>
<Triangles2 V00="23" V01="24" V02="25" Flag0="0" V10="23" V11="25" V12="19" Flag1="0"/>
<Triangles2 V00="22" V01="26" V02="27" Flag0="0" V10="22" V11="28" V12="26" Flag1="0"/>
<Triangles2 V00="29" V01="30" V02="31" Flag0="0" V10="29" V11="31" V12="25" Flag1="0"/>
<LoadVertices Path="objects/object_ocarina_c_down_button/gOcarinaCDownButtonDL_vtx_0" VertexBufferIndex="0" VertexOffset="96" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="4" V01="5" V02="6" Flag0="0" V10="4" V11="6" V12="7" Flag1="0"/>
<Triangles2 V00="8" V01="9" V02="10" Flag0="0" V10="8" V11="6" V12="9" Flag1="0"/>
<Triangles2 V00="11" V01="12" V02="1" Flag0="0" V10="11" V11="1" V12="13" Flag1="0"/>
<Triangles2 V00="14" V01="15" V02="16" Flag0="0" V10="14" V11="16" V12="17" Flag1="0"/>
<Triangles2 V00="18" V01="19" V02="20" Flag0="0" V10="18" V11="20" V12="21" Flag1="0"/>
<Triangles2 V00="22" V01="23" V02="24" Flag0="0" V10="22" V11="24" V12="25" Flag1="0"/>
<Triangles2 V00="26" V01="27" V02="28" Flag0="0" V10="26" V11="28" V12="20" Flag1="0"/>
<Triangle1 V00="29" V01="30" V02="31"/>
<LoadVertices Path="objects/object_ocarina_c_down_button/gOcarinaCDownButtonDL_vtx_0" VertexBufferIndex="0" VertexOffset="128" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="3" V11="4" V12="5" Flag1="0"/>
<Triangles2 V00="3" V01="5" V02="6" Flag0="0" V10="7" V11="8" V12="9" Flag1="0"/>
<Triangles2 V00="7" V01="9" V02="10" Flag0="0" V10="11" V11="12" V12="13" Flag1="0"/>
<Triangles2 V00="11" V01="13" V02="5" Flag0="0" V10="14" V11="15" V12="16" Flag1="0"/>
<Triangles2 V00="14" V01="16" V02="17" Flag0="0" V10="18" V11="19" V12="20" Flag1="0"/>
<Triangles2 V00="18" V01="20" V02="13" Flag0="0" V10="21" V11="22" V12="23" Flag1="0"/>
<Triangles2 V00="21" V01="23" V02="24" Flag0="0" V10="25" V11="26" V12="27" Flag1="0"/>
<Triangles2 V00="25" V01="27" V02="20" Flag0="0" V10="28" V11="29" V12="30" Flag1="0"/>
<Triangle1 V00="28" V01="30" V02="31"/>
<LoadVertices Path="objects/object_ocarina_c_down_button/gOcarinaCDownButtonDL_vtx_0" VertexBufferIndex="0" VertexOffset="160" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="4" V01="5" V02="6" Flag0="0" V10="4" V11="6" V12="7" Flag1="0"/>
<Triangles2 V00="8" V01="9" V02="10" Flag0="0" V10="8" V11="10" V12="2" Flag1="0"/>
<Triangles2 V00="11" V01="12" V02="13" Flag0="0" V10="11" V11="13" V12="14" Flag1="0"/>
<Triangles2 V00="15" V01="16" V02="17" Flag0="0" V10="15" V11="17" V12="10" Flag1="0"/>
<Triangles2 V00="18" V01="19" V02="20" Flag0="0" V10="18" V11="17" V12="19" Flag1="0"/>
<Triangles2 V00="21" V01="22" V02="23" Flag0="0" V10="21" V11="23" V12="24" Flag1="0"/>
<Triangles2 V00="25" V01="26" V02="27" Flag0="0" V10="25" V11="28" V12="26" Flag1="0"/>
<Triangles2 V00="25" V01="29" V02="28" Flag0="0" V10="25" V11="30" V12="29" Flag1="0"/>
<Triangle1 V00="28" V01="29" V02="31"/>
<LoadVertices Path="objects/object_ocarina_c_down_button/gOcarinaCDownButtonDL_vtx_0" VertexBufferIndex="0" VertexOffset="192" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="2" V11="1" V12="3" Flag1="0"/>
<Triangles2 V00="2" V01="3" V02="4" Flag0="0" V10="4" V11="3" V12="5" Flag1="0"/>
<Triangles2 V00="4" V01="5" V02="6" Flag0="0" V10="7" V11="4" V12="6" Flag1="0"/>
<Triangles2 V00="7" V01="8" V02="4" Flag0="0" V10="2" V11="4" V12="8" Flag1="0"/>
<Triangles2 V00="2" V01="8" V02="9" Flag0="0" V10="0" V11="2" V12="9" Flag1="0"/>
<Triangles2 V00="0" V01="9" V02="10" Flag0="0" V10="11" V11="12" V12="13" Flag1="0"/>
<Triangles2 V00="11" V01="13" V02="14" Flag0="0" V10="15" V11="11" V12="14" Flag1="0"/>
<Triangles2 V00="15" V01="14" V02="16" Flag0="0" V10="16" V11="17" V12="15" Flag1="0"/>
<Triangles2 V00="16" V01="18" V02="17" Flag0="0" V10="19" V11="17" V12="18" Flag1="0"/>
<Triangles2 V00="19" V01="18" V02="20" Flag0="0" V10="21" V11="19" V12="20" Flag1="0"/>
<Triangles2 V00="21" V01="20" V02="22" Flag0="0" V10="23" V11="21" V12="22" Flag1="0"/>
<Triangles2 V00="23" V01="22" V02="24" Flag0="0" V10="24" V11="25" V12="23" Flag1="0"/>
<Triangles2 V00="24" V01="26" V02="25" Flag0="0" V10="26" V11="27" V12="25" Flag1="0"/>
<Triangles2 V00="26" V01="28" V02="27" Flag0="0" V10="29" V11="30" V12="31" Flag1="0"/>
<LoadVertices Path="objects/object_ocarina_c_down_button/gOcarinaCDownButtonDL_vtx_0" VertexBufferIndex="0" VertexOffset="224" Count="17"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="3" V11="1" V12="0" Flag1="0"/>
<Triangles2 V00="3" V01="4" V02="1" Flag0="0" V10="5" V11="6" V12="7" Flag1="0"/>
<Triangles2 V00="5" V01="7" V02="8" Flag0="0" V10="8" V11="9" V12="5" Flag1="0"/>
<Triangles2 V00="8" V01="10" V02="9" Flag0="0" V10="11" V11="9" V12="10" Flag1="0"/>
<Triangles2 V00="11" V01="10" V02="12" Flag0="0" V10="13" V11="11" V12="12" Flag1="0"/>
<Triangles2 V00="13" V01="12" V02="14" Flag0="0" V10="14" V11="15" V12="13" Flag1="0"/>
<Triangle1 V00="14" V01="16" V02="15"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,29 @@
<DisplayList Version="0">
<LoadVertices Path="objects/object_ocarina_c_down_button/gOcarinaCDownButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="0" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="3" V11="4" V12="5" Flag1="0"/>
<Triangles2 V00="6" V01="3" V02="5" Flag0="0" V10="5" V11="7" V12="6" Flag1="0"/>
<Triangles2 V00="5" V01="8" V02="7" Flag0="0" V10="7" V11="9" V12="6" Flag1="0"/>
<Triangles2 V00="10" V01="11" V02="12" Flag0="0" V10="13" V11="10" V12="12" Flag1="0"/>
<Triangles2 V00="12" V01="14" V02="13" Flag0="0" V10="12" V11="15" V12="14" Flag1="0"/>
<Triangles2 V00="14" V01="16" V02="13" Flag0="0" V10="17" V11="1" V12="18" Flag1="0"/>
<Triangles2 V00="18" V01="1" V02="19" Flag0="0" V10="20" V11="21" V12="22" Flag1="0"/>
<Triangles2 V00="20" V01="22" V02="23" Flag0="0" V10="22" V11="24" V12="23" Flag1="0"/>
<Triangles2 V00="25" V01="20" V02="23" Flag0="0" V10="26" V11="25" V12="23" Flag1="0"/>
<Triangles2 V00="26" V01="23" V02="27" Flag0="0" V10="27" V11="28" V12="26" Flag1="0"/>
<Triangles2 V00="27" V01="29" V02="28" Flag0="0" V10="27" V11="30" V12="29" Flag1="0"/>
<Triangle1 V00="29" V01="31" V02="28"/>
<LoadVertices Path="objects/object_ocarina_c_down_button/gOcarinaCDownButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="32" Count="25"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="3" V12="1" Flag1="0"/>
<Triangles2 V00="0" V01="4" V02="3" Flag0="0" V10="5" V11="3" V12="4" Flag1="0"/>
<Triangles2 V00="5" V01="4" V02="6" Flag0="0" V10="4" V11="7" V12="6" Flag1="0"/>
<Triangles2 V00="6" V01="8" V02="5" Flag0="0" V10="6" V11="9" V12="8" Flag1="0"/>
<Triangles2 V00="6" V01="10" V02="9" Flag0="0" V10="6" V11="11" V12="10" Flag1="0"/>
<Triangles2 V00="6" V01="12" V02="11" Flag0="0" V10="11" V11="13" V12="10" Flag1="0"/>
<Triangles2 V00="9" V01="14" V02="8" Flag0="0" V10="15" V11="16" V12="17" Flag1="0"/>
<Triangles2 V00="15" V01="17" V02="18" Flag0="0" V10="17" V11="19" V12="18" Flag1="0"/>
<Triangles2 V00="18" V01="20" V02="15" Flag0="0" V10="18" V11="21" V12="20" Flag1="0"/>
<Triangles2 V00="18" V01="22" V02="21" Flag0="0" V10="21" V11="23" V12="20" Flag1="0"/>
<Triangle1 V00="20" V01="24" V02="15"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,243 @@
<Vertex Version="0">
<Vtx X="-22" Y="12" Z="2" S="-135" T="-49" R="2" G="250" B="127" A="255"/>
<Vtx X="-22" Y="12" Z="2" S="-145" T="-49" R="159" G="17" B="81" A="255"/>
<Vtx X="-19" Y="16" Z="2" S="-145" T="-17" R="197" G="79" B="81" A="255"/>
<Vtx X="-19" Y="16" Z="2" S="-135" T="-17" R="5" G="255" B="127" A="255"/>
<Vtx X="-19" Y="17" Z="4" S="-245" T="-17" R="49" G="191" B="97" A="255"/>
<Vtx X="-23" Y="12" Z="4" S="-245" T="-49" R="80" G="241" B="98" A="255"/>
<Vtx X="-2" Y="-27" Z="2" S="-135" T="-239" R="2" G="6" B="127" A="255"/>
<Vtx X="-2" Y="-27" Z="2" S="-145" T="-239" R="215" G="166" B="79" A="255"/>
<Vtx X="-6" Y="-23" Z="2" S="-145" T="-215" R="179" G="204" B="86" A="255"/>
<Vtx X="-6" Y="-23" Z="2" S="-135" T="-215" R="244" G="248" B="126" A="255"/>
<Vtx X="-7" Y="-24" Z="4" S="-245" T="-215" R="73" G="48" B="92" A="255"/>
<Vtx X="-3" Y="-28" Z="4" S="-245" T="-239" R="32" G="72" B="100" A="255"/>
<Vtx X="20" Y="6" Z="2" S="111" T="-74" R="88" G="226" B="86" A="255"/>
<Vtx X="6" Y="-23" Z="2" S="111" T="-215" R="77" G="204" B="86" A="255"/>
<Vtx X="6" Y="-23" Z="2" S="102" T="-215" R="12" G="248" B="126" A="255"/>
<Vtx X="20" Y="6" Z="2" S="102" T="-74" R="15" G="254" B="126" A="255"/>
<Vtx X="7" Y="-24" Z="4" S="212" T="-215" R="183" G="48" B="92" A="255"/>
<Vtx X="21" Y="6" Z="4" S="212" T="-74" R="174" G="28" B="93" A="255"/>
<Vtx X="2" Y="-27" Z="2" S="-145" T="-273" R="41" G="166" B="79" A="255"/>
<Vtx X="-2" Y="-27" Z="2" S="-135" T="-239" R="2" G="6" B="127" A="255"/>
<Vtx X="2" Y="-27" Z="2" S="-135" T="-273" R="254" G="6" B="127" A="255"/>
<Vtx X="3" Y="-28" Z="4" S="-245" T="-273" R="224" G="72" B="100" A="255"/>
<Vtx X="-20" Y="6" Z="2" S="-145" T="-74" R="168" G="226" B="86" A="255"/>
<Vtx X="-22" Y="12" Z="2" S="-135" T="-49" R="2" G="250" B="127" A="255"/>
<Vtx X="-20" Y="6" Z="2" S="-135" T="-74" R="241" G="254" B="126" A="255"/>
<Vtx X="-21" Y="6" Z="4" S="-245" T="-73" R="82" G="28" B="93" A="255"/>
<Vtx X="19" Y="16" Z="2" S="111" T="-17" R="59" G="79" B="81" A="255"/>
<Vtx X="22" Y="12" Z="2" S="111" T="-49" R="97" G="17" B="81" A="255"/>
<Vtx X="22" Y="12" Z="2" S="102" T="-49" R="254" G="250" B="127" A="255"/>
<Vtx X="19" Y="16" Z="2" S="102" T="-17" R="251" G="255" B="127" A="255"/>
<Vtx X="23" Y="12" Z="4" S="212" T="-49" R="176" G="241" B="98" A="255"/>
<Vtx X="19" Y="17" Z="4" S="212" T="-17" R="207" G="191" B="97" A="255"/>
<Vtx X="6" Y="-23" Z="2" S="111" T="-215" R="77" G="204" B="86" A="255"/>
<Vtx X="2" Y="-27" Z="2" S="111" T="-273" R="41" G="166" B="79" A="255"/>
<Vtx X="2" Y="-27" Z="2" S="102" T="-273" R="254" G="6" B="127" A="255"/>
<Vtx X="6" Y="-23" Z="2" S="102" T="-215" R="12" G="248" B="126" A="255"/>
<Vtx X="3" Y="-28" Z="4" S="212" T="-273" R="224" G="72" B="100" A="255"/>
<Vtx X="7" Y="-24" Z="4" S="212" T="-215" R="183" G="48" B="92" A="255"/>
<Vtx X="22" Y="12" Z="2" S="111" T="-49" R="97" G="17" B="81" A="255"/>
<Vtx X="20" Y="6" Z="2" S="111" T="-74" R="88" G="226" B="86" A="255"/>
<Vtx X="20" Y="6" Z="2" S="102" T="-74" R="15" G="254" B="126" A="255"/>
<Vtx X="22" Y="12" Z="2" S="102" T="-49" R="254" G="250" B="127" A="255"/>
<Vtx X="21" Y="6" Z="4" S="212" T="-73" R="174" G="28" B="93" A="255"/>
<Vtx X="23" Y="12" Z="4" S="212" T="-49" R="176" G="241" B="98" A="255"/>
<Vtx X="0" Y="34" Z="5" S="-273" T="27" R="0" G="28" B="124" A="255"/>
<Vtx X="22" Y="30" Z="4" S="-129" T="40" R="56" G="76" B="85" A="255"/>
<Vtx X="0" Y="37" Z="4" S="-270" T="-5" R="0" G="93" B="87" A="255"/>
<Vtx X="21" Y="27" Z="5" S="-142" T="69" R="18" G="23" B="124" A="255"/>
<Vtx X="0" Y="37" Z="4" S="493" T="-529" R="0" G="93" B="87" A="255"/>
<Vtx X="22" Y="30" Z="4" S="394" T="-529" R="56" G="76" B="85" A="255"/>
<Vtx X="23" Y="32" Z="0" S="393" T="-273" R="74" G="103" B="255" A="255"/>
<Vtx X="0" Y="39" Z="0" S="495" T="-273" R="0" G="127" B="0" A="255"/>
<Vtx X="35" Y="12" Z="4" S="-42" T="159" R="88" G="29" B="87" A="255"/>
<Vtx X="22" Y="30" Z="4" S="-125" T="44" R="56" G="76" B="85" A="255"/>
<Vtx X="32" Y="12" Z="5" S="-73" T="164" R="27" G="11" B="124" A="255"/>
<Vtx X="22" Y="30" Z="4" S="390" T="-529" R="56" G="76" B="85" A="255"/>
<Vtx X="35" Y="12" Z="4" S="295" T="-529" R="88" G="29" B="87" A="255"/>
<Vtx X="37" Y="12" Z="0" S="291" T="-273" R="121" G="38" B="0" A="255"/>
<Vtx X="35" Y="-12" Z="4" S="-39" T="314" R="87" G="228" B="88" A="255"/>
<Vtx X="35" Y="12" Z="4" S="-39" T="164" R="88" G="29" B="87" A="255"/>
<Vtx X="32" Y="-11" Z="5" S="-73" T="309" R="25" G="247" B="124" A="255"/>
<Vtx X="35" Y="12" Z="4" S="291" T="-529" R="88" G="29" B="87" A="255"/>
<Vtx X="35" Y="-12" Z="4" S="190" T="-529" R="87" G="228" B="88" A="255"/>
<Vtx X="37" Y="-12" Z="0" S="188" T="-273" R="121" G="218" B="1" A="255"/>
<Vtx X="32" Y="-11" Z="5" S="-73" T="309" R="25" G="247" B="124" A="255"/>
<Vtx X="22" Y="-30" Z="4" S="-126" T="436" R="54" G="181" B="87" A="255"/>
<Vtx X="35" Y="-12" Z="4" S="-41" T="319" R="87" G="228" B="88" A="255"/>
<Vtx X="20" Y="-27" Z="5" S="-148" T="412" R="16" G="234" B="124" A="255"/>
<Vtx X="35" Y="-12" Z="4" S="185" T="-529" R="87" G="228" B="88" A="255"/>
<Vtx X="22" Y="-30" Z="4" S="88" T="-529" R="54" G="181" B="87" A="255"/>
<Vtx X="23" Y="-32" Z="0" S="86" T="-273" R="75" G="153" B="0" A="255"/>
<Vtx X="37" Y="-12" Z="0" S="188" T="-273" R="121" G="218" B="1" A="255"/>
<Vtx X="0" Y="-37" Z="4" S="-270" T="484" R="0" G="163" B="87" A="255"/>
<Vtx X="22" Y="-30" Z="4" S="-131" T="439" R="54" G="181" B="87" A="255"/>
<Vtx X="0" Y="-34" Z="5" S="-273" T="452" R="0" G="228" B="124" A="255"/>
<Vtx X="22" Y="-30" Z="4" S="84" T="-529" R="54" G="181" B="87" A="255"/>
<Vtx X="0" Y="-37" Z="4" S="-14" T="-529" R="0" G="163" B="87" A="255"/>
<Vtx X="0" Y="-39" Z="0" S="-17" T="-273" R="0" G="129" B="0" A="255"/>
<Vtx X="-22" Y="-30" Z="4" S="-414" T="439" R="202" G="181" B="87" A="255"/>
<Vtx X="0" Y="-37" Z="4" S="-275" T="484" R="0" G="163" B="87" A="255"/>
<Vtx X="-20" Y="-27" Z="5" S="-397" T="412" R="240" G="234" B="124" A="255"/>
<Vtx X="0" Y="-37" Z="4" S="-19" T="-529" R="0" G="163" B="87" A="255"/>
<Vtx X="-22" Y="-30" Z="4" S="-117" T="-529" R="202" G="181" B="87" A="255"/>
<Vtx X="-23" Y="-32" Z="0" S="-119" T="-273" R="181" G="153" B="0" A="255"/>
<Vtx X="-35" Y="-12" Z="4" S="-504" T="319" R="169" G="228" B="88" A="255"/>
<Vtx X="-22" Y="-30" Z="4" S="-419" T="436" R="202" G="181" B="87" A="255"/>
<Vtx X="-32" Y="-11" Z="5" S="-472" T="309" R="231" G="247" B="124" A="255"/>
<Vtx X="-22" Y="-30" Z="4" S="-121" T="-529" R="202" G="181" B="87" A="255"/>
<Vtx X="-35" Y="-12" Z="4" S="-218" T="-529" R="169" G="228" B="88" A="255"/>
<Vtx X="-37" Y="-12" Z="0" S="-221" T="-273" R="135" G="218" B="1" A="255"/>
<Vtx X="-35" Y="12" Z="4" S="-506" T="164" R="168" G="29" B="87" A="255"/>
<Vtx X="-35" Y="-12" Z="4" S="-506" T="314" R="169" G="228" B="88" A="255"/>
<Vtx X="-32" Y="12" Z="5" S="-472" T="164" R="229" G="11" B="124" A="255"/>
<Vtx X="-35" Y="-12" Z="4" S="-223" T="-529" R="169" G="228" B="88" A="255"/>
<Vtx X="-35" Y="12" Z="4" S="-324" T="-529" R="168" G="29" B="87" A="255"/>
<Vtx X="-37" Y="12" Z="0" S="-324" T="-273" R="135" G="38" B="0" A="255"/>
<Vtx X="0" Y="39" Z="0" S="-529" T="-273" R="0" G="127" B="0" A="255"/>
<Vtx X="-23" Y="32" Z="0" S="-426" T="-273" R="182" G="103" B="255" A="255"/>
<Vtx X="-22" Y="30" Z="4" S="-427" T="-529" R="200" G="76" B="85" A="255"/>
<Vtx X="0" Y="37" Z="4" S="-526" T="-529" R="0" G="93" B="87" A="255"/>
<Vtx X="0" Y="37" Z="4" S="-275" T="-5" R="0" G="93" B="87" A="255"/>
<Vtx X="-22" Y="30" Z="4" S="-416" T="40" R="200" G="76" B="85" A="255"/>
<Vtx X="-21" Y="27" Z="5" S="-403" T="69" R="238" G="23" B="124" A="255"/>
<Vtx X="0" Y="34" Z="5" S="-273" T="27" R="0" G="28" B="124" A="255"/>
<Vtx X="-32" Y="12" Z="5" S="-472" T="164" R="229" G="11" B="124" A="255"/>
<Vtx X="-22" Y="30" Z="4" S="-420" T="44" R="200" G="76" B="85" A="255"/>
<Vtx X="-35" Y="12" Z="4" S="-503" T="159" R="168" G="29" B="87" A="255"/>
<Vtx X="-35" Y="12" Z="4" S="-328" T="-529" R="168" G="29" B="87" A="255"/>
<Vtx X="-22" Y="30" Z="4" S="-423" T="-529" R="200" G="76" B="85" A="255"/>
<Vtx X="-37" Y="12" Z="0" S="-324" T="-273" R="135" G="38" B="0" A="255"/>
<Vtx X="0" Y="39" Z="0" S="495" T="-273" R="0" G="127" B="0" A="255"/>
<Vtx X="23" Y="32" Z="0" S="393" T="-273" R="74" G="103" B="255" A="255"/>
<Vtx X="22" Y="30" Z="-4" S="395" T="-17" R="54" G="75" B="169" A="255"/>
<Vtx X="0" Y="37" Z="-4" S="493" T="-17" R="0" G="93" B="169" A="255"/>
<Vtx X="0" Y="37" Z="-4" S="242" T="-5" R="0" G="93" B="169" A="255"/>
<Vtx X="22" Y="30" Z="-4" S="381" T="40" R="54" G="75" B="169" A="255"/>
<Vtx X="20" Y="27" Z="-5" S="364" T="67" R="16" G="22" B="132" A="255"/>
<Vtx X="0" Y="34" Z="-5" S="239" T="27" R="0" G="28" B="132" A="255"/>
<Vtx X="23" Y="32" Z="0" S="393" T="-273" R="74" G="103" B="255" A="255"/>
<Vtx X="37" Y="12" Z="0" S="291" T="-273" R="121" G="38" B="0" A="255"/>
<Vtx X="36" Y="12" Z="-4" S="293" T="-17" R="88" G="28" B="169" A="255"/>
<Vtx X="22" Y="30" Z="-4" S="391" T="-17" R="54" G="75" B="169" A="255"/>
<Vtx X="22" Y="30" Z="-4" S="386" T="43" R="54" G="75" B="169" A="255"/>
<Vtx X="36" Y="12" Z="-4" S="471" T="161" R="88" G="28" B="169" A="255"/>
<Vtx X="32" Y="10" Z="-5" S="442" T="174" R="27" G="8" B="132" A="255"/>
<Vtx X="37" Y="12" Z="0" S="291" T="-273" R="121" G="38" B="0" A="255"/>
<Vtx X="37" Y="-12" Z="0" S="188" T="-273" R="121" G="218" B="1" A="255"/>
<Vtx X="36" Y="-12" Z="-4" S="190" T="-17" R="88" G="228" B="169" A="255"/>
<Vtx X="37" Y="12" Z="0" S="291" T="-273" R="121" G="38" B="0" A="255"/>
<Vtx X="36" Y="-12" Z="-4" S="190" T="-17" R="88" G="228" B="169" A="255"/>
<Vtx X="36" Y="12" Z="-4" S="289" T="-17" R="88" G="28" B="169" A="255"/>
<Vtx X="36" Y="12" Z="-4" S="473" T="167" R="88" G="28" B="169" A="255"/>
<Vtx X="36" Y="-12" Z="-4" S="473" T="312" R="88" G="228" B="169" A="255"/>
<Vtx X="32" Y="-10" Z="-5" S="442" T="305" R="27" G="248" B="132" A="255"/>
<Vtx X="32" Y="10" Z="-5" S="442" T="174" R="27" G="8" B="132" A="255"/>
<Vtx X="37" Y="-12" Z="0" S="188" T="-273" R="121" G="218" B="1" A="255"/>
<Vtx X="23" Y="-32" Z="0" S="86" T="-273" R="75" G="153" B="0" A="255"/>
<Vtx X="22" Y="-30" Z="-4" S="88" T="-17" R="54" G="181" B="169" A="255"/>
<Vtx X="36" Y="-12" Z="-4" S="186" T="-17" R="88" G="228" B="169" A="255"/>
<Vtx X="36" Y="-12" Z="-4" S="471" T="318" R="88" G="228" B="169" A="255"/>
<Vtx X="22" Y="-30" Z="-4" S="386" T="436" R="54" G="181" B="169" A="255"/>
<Vtx X="20" Y="-27" Z="-5" S="364" T="412" R="16" G="234" B="132" A="255"/>
<Vtx X="23" Y="-32" Z="0" S="86" T="-273" R="75" G="153" B="0" A="255"/>
<Vtx X="0" Y="-39" Z="0" S="-17" T="-273" R="0" G="129" B="0" A="255"/>
<Vtx X="0" Y="-37" Z="-4" S="-14" T="-17" R="0" G="163" B="169" A="255"/>
<Vtx X="22" Y="-30" Z="-4" S="84" T="-17" R="54" G="181" B="169" A="255"/>
<Vtx X="22" Y="-30" Z="-4" S="381" T="439" R="54" G="181" B="169" A="255"/>
<Vtx X="0" Y="-37" Z="-4" S="242" T="484" R="0" G="163" B="169" A="255"/>
<Vtx X="0" Y="-34" Z="-5" S="239" T="452" R="0" G="228" B="132" A="255"/>
<Vtx X="0" Y="-39" Z="0" S="-17" T="-273" R="0" G="129" B="0" A="255"/>
<Vtx X="-23" Y="-32" Z="0" S="-119" T="-273" R="181" G="153" B="0" A="255"/>
<Vtx X="-22" Y="-30" Z="-4" S="-117" T="-17" R="202" G="181" B="169" A="255"/>
<Vtx X="0" Y="-37" Z="-4" S="-19" T="-17" R="0" G="163" B="169" A="255"/>
<Vtx X="0" Y="-37" Z="-4" S="237" T="484" R="0" G="163" B="169" A="255"/>
<Vtx X="-22" Y="-30" Z="-4" S="98" T="439" R="202" G="181" B="169" A="255"/>
<Vtx X="-20" Y="-27" Z="-5" S="115" T="412" R="240" G="234" B="132" A="255"/>
<Vtx X="-23" Y="-32" Z="0" S="-119" T="-273" R="181" G="153" B="0" A="255"/>
<Vtx X="-37" Y="-12" Z="0" S="-221" T="-273" R="135" G="218" B="1" A="255"/>
<Vtx X="-36" Y="-12" Z="-4" S="-219" T="-17" R="168" G="228" B="169" A="255"/>
<Vtx X="-22" Y="-30" Z="-4" S="-121" T="-17" R="202" G="181" B="169" A="255"/>
<Vtx X="-22" Y="-30" Z="-4" S="93" T="436" R="202" G="181" B="169" A="255"/>
<Vtx X="-36" Y="-12" Z="-4" S="8" T="318" R="168" G="228" B="169" A="255"/>
<Vtx X="-32" Y="-10" Z="-5" S="37" T="305" R="229" G="248" B="132" A="255"/>
<Vtx X="-20" Y="-27" Z="-5" S="115" T="412" R="240" G="234" B="132" A="255"/>
<Vtx X="-37" Y="-12" Z="0" S="-221" T="-273" R="135" G="218" B="1" A="255"/>
<Vtx X="-37" Y="12" Z="0" S="-324" T="-273" R="135" G="38" B="0" A="255"/>
<Vtx X="-36" Y="12" Z="-4" S="-322" T="-17" R="168" G="28" B="169" A="255"/>
<Vtx X="-36" Y="-12" Z="-4" S="-223" T="-17" R="168" G="228" B="169" A="255"/>
<Vtx X="-36" Y="-12" Z="-4" S="6" T="312" R="168" G="228" B="169" A="255"/>
<Vtx X="-36" Y="12" Z="-4" S="6" T="167" R="168" G="28" B="169" A="255"/>
<Vtx X="-32" Y="10" Z="-5" S="37" T="174" R="229" G="8" B="132" A="255"/>
<Vtx X="-37" Y="12" Z="0" S="-324" T="-273" R="135" G="38" B="0" A="255"/>
<Vtx X="-23" Y="32" Z="0" S="-426" T="-273" R="182" G="103" B="255" A="255"/>
<Vtx X="-22" Y="30" Z="-4" S="-424" T="-17" R="202" G="75" B="169" A="255"/>
<Vtx X="-36" Y="12" Z="-4" S="-326" T="-17" R="168" G="28" B="169" A="255"/>
<Vtx X="-36" Y="12" Z="-4" S="8" T="161" R="168" G="28" B="169" A="255"/>
<Vtx X="-22" Y="30" Z="-4" S="93" T="43" R="202" G="75" B="169" A="255"/>
<Vtx X="-20" Y="27" Z="-5" S="115" T="67" R="240" G="22" B="132" A="255"/>
<Vtx X="0" Y="34" Z="-5" S="239" T="27" R="0" G="28" B="132" A="255"/>
<Vtx X="-22" Y="30" Z="-4" S="98" T="40" R="202" G="75" B="169" A="255"/>
<Vtx X="0" Y="37" Z="-4" S="237" T="-5" R="0" G="93" B="169" A="255"/>
<Vtx X="0" Y="37" Z="-4" S="-526" T="-17" R="0" G="93" B="169" A="255"/>
<Vtx X="-22" Y="30" Z="-4" S="-428" T="-17" R="202" G="75" B="169" A="255"/>
<Vtx X="-23" Y="32" Z="0" S="-426" T="-273" R="182" G="103" B="255" A="255"/>
<Vtx X="0" Y="39" Z="0" S="-529" T="-273" R="0" G="127" B="0" A="255"/>
<Vtx X="-19" Y="16" Z="2" S="-145" T="-26" R="5" G="255" B="127" A="255"/>
<Vtx X="-13" Y="19" Z="4" S="-81" T="84" R="11" G="169" B="92" A="255"/>
<Vtx X="-19" Y="17" Z="4" S="-145" T="84" R="49" G="191" B="97" A="255"/>
<Vtx X="-13" Y="18" Z="2" S="-81" T="-26" R="255" G="14" B="126" A="255"/>
<Vtx X="-13" Y="18" Z="2" S="-81" T="-17" R="244" G="93" B="86" A="255"/>
<Vtx X="-19" Y="16" Z="2" S="-145" T="-17" R="197" G="79" B="81" A="255"/>
<Vtx X="0" Y="18" Z="2" S="-17" T="-17" R="0" G="90" B="90" A="255"/>
<Vtx X="-13" Y="18" Z="2" S="-81" T="-26" R="255" G="14" B="126" A="255"/>
<Vtx X="0" Y="18" Z="2" S="-17" T="-17" R="0" G="90" B="90" A="255"/>
<Vtx X="0" Y="18" Z="2" S="-17" T="-26" R="0" G="24" B="125" A="255"/>
<Vtx X="13" Y="18" Z="2" S="47" T="-17" R="12" G="93" B="86" A="255"/>
<Vtx X="13" Y="18" Z="2" S="47" T="-26" R="1" G="14" B="126" A="255"/>
<Vtx X="19" Y="16" Z="2" S="111" T="-17" R="59" G="79" B="81" A="255"/>
<Vtx X="19" Y="16" Z="2" S="111" T="-26" R="251" G="255" B="127" A="255"/>
<Vtx X="19" Y="17" Z="4" S="111" T="84" R="207" G="191" B="97" A="255"/>
<Vtx X="13" Y="19" Z="4" S="47" T="84" R="245" G="169" B="92" A="255"/>
<Vtx X="0" Y="19" Z="4" S="-17" T="84" R="0" G="166" B="90" A="255"/>
<Vtx X="-13" Y="19" Z="4" S="-81" T="84" R="11" G="169" B="92" A="255"/>
<Vtx X="23" Y="12" Z="4" S="-136" T="164" R="176" G="241" B="98" A="255"/>
<Vtx X="21" Y="6" Z="4" S="-143" T="200" R="174" G="28" B="93" A="255"/>
<Vtx X="24" Y="6" Z="5" S="-123" T="203" R="234" G="7" B="125" A="255"/>
<Vtx X="25" Y="12" Z="5" S="-115" T="164" R="239" G="254" B="126" A="255"/>
<Vtx X="19" Y="17" Z="4" S="-153" T="137" R="207" G="191" B="97" A="255"/>
<Vtx X="21" Y="19" Z="5" S="-142" T="120" R="242" G="237" B="125" A="255"/>
<Vtx X="13" Y="19" Z="4" S="-189" T="127" R="245" G="169" B="92" A="255"/>
<Vtx X="14" Y="21" Z="5" S="-187" T="108" R="253" G="232" B="125" A="255"/>
<Vtx X="0" Y="19" Z="4" S="-273" T="127" R="0" G="166" B="90" A="255"/>
<Vtx X="0" Y="21" Z="5" S="-273" T="108" R="0" G="232" B="125" A="255"/>
<Vtx X="-13" Y="19" Z="4" S="-356" T="127" R="11" G="169" B="92" A="255"/>
<Vtx X="-14" Y="21" Z="5" S="-358" T="108" R="3" G="232" B="125" A="255"/>
<Vtx X="-19" Y="17" Z="4" S="-392" T="137" R="49" G="191" B="97" A="255"/>
<Vtx X="-21" Y="19" Z="5" S="-403" T="120" R="14" G="237" B="125" A="255"/>
<Vtx X="-23" Y="12" Z="4" S="-409" T="164" R="80" G="241" B="98" A="255"/>
<Vtx X="-25" Y="12" Z="5" S="-430" T="164" R="17" G="254" B="126" A="255"/>
<Vtx X="-21" Y="6" Z="4" S="-402" T="200" R="82" G="28" B="93" A="255"/>
<Vtx X="-24" Y="6" Z="5" S="-422" T="203" R="22" G="7" B="125" A="255"/>
<Vtx X="-6" Y="-23" Z="2" S="-135" T="-215" R="244" G="248" B="126" A="255"/>
<Vtx X="-21" Y="6" Z="4" S="-245" T="-74" R="82" G="28" B="93" A="255"/>
<Vtx X="-7" Y="-24" Z="4" S="-245" T="-215" R="73" G="48" B="92" A="255"/>
<Vtx X="-6" Y="-23" Z="2" S="-135" T="-215" R="244" G="248" B="126" A="255"/>
<Vtx X="-20" Y="6" Z="2" S="-135" T="-74" R="241" G="254" B="126" A="255"/>
<Vtx X="-21" Y="6" Z="4" S="-245" T="-74" R="82" G="28" B="93" A="255"/>
<Vtx X="-6" Y="-23" Z="2" S="-145" T="-215" R="179" G="204" B="86" A="255"/>
<Vtx X="-20" Y="6" Z="2" S="-145" T="-74" R="168" G="226" B="86" A="255"/>
<Vtx X="-7" Y="-24" Z="4" S="-310" T="385" R="73" G="48" B="92" A="255"/>
<Vtx X="-21" Y="6" Z="4" S="-402" T="201" R="82" G="28" B="93" A="255"/>
<Vtx X="-24" Y="6" Z="5" S="-422" T="203" R="22" G="7" B="125" A="255"/>
<Vtx X="-8" Y="-25" Z="5" S="-326" T="396" R="20" G="13" B="125" A="255"/>
<Vtx X="-3" Y="-28" Z="4" S="-286" T="412" R="32" G="72" B="100" A="255"/>
<Vtx X="-4" Y="-30" Z="5" S="-295" T="431" R="9" G="20" B="125" A="255"/>
<Vtx X="3" Y="-28" Z="4" S="-259" T="412" R="224" G="72" B="100" A="255"/>
<Vtx X="4" Y="-30" Z="5" S="-250" T="431" R="247" G="20" B="125" A="255"/>
<Vtx X="7" Y="-24" Z="4" S="-235" T="385" R="183" G="48" B="92" A="255"/>
<Vtx X="8" Y="-25" Z="5" S="-219" T="396" R="236" G="13" B="125" A="255"/>
<Vtx X="21" Y="6" Z="4" S="-143" T="201" R="174" G="28" B="93" A="255"/>
<Vtx X="24" Y="6" Z="5" S="-123" T="203" R="234" G="7" B="125" A="255"/>
</Vertex>

View File

@ -0,0 +1,59 @@
<Vertex Version="0">
<Vtx X="-2" Y="-27" Z="2" S="-16" T="-511" R="215" G="166" B="79" A="255"/>
<Vtx X="0" Y="-22" Z="2" S="16" T="-480" R="0" G="0" B="127" A="255"/>
<Vtx X="-6" Y="-23" Z="2" S="8" T="-488" R="179" G="204" B="86" A="255"/>
<Vtx X="-20" Y="6" Z="2" S="-16" T="-345" R="168" G="226" B="86" A="255"/>
<Vtx X="-6" Y="-23" Z="2" S="-16" T="-487" R="179" G="204" B="86" A="255"/>
<Vtx X="0" Y="-22" Z="2" S="-16" T="-480" R="0" G="0" B="127" A="255"/>
<Vtx X="-22" Y="12" Z="2" S="-7" T="-317" R="159" G="17" B="81" A="255"/>
<Vtx X="-13" Y="18" Z="2" S="48" T="-288" R="244" G="93" B="86" A="255"/>
<Vtx X="0" Y="18" Z="2" S="48" T="-288" R="0" G="90" B="90" A="255"/>
<Vtx X="-19" Y="16" Z="2" S="16" T="-296" R="197" G="79" B="81" A="255"/>
<Vtx X="19" Y="16" Z="2" S="112" T="-296" R="59" G="79" B="81" A="255"/>
<Vtx X="13" Y="18" Z="2" S="112" T="-288" R="12" G="93" B="86" A="255"/>
<Vtx X="0" Y="18" Z="2" S="112" T="-288" R="0" G="90" B="90" A="255"/>
<Vtx X="22" Y="12" Z="2" S="112" T="-317" R="97" G="17" B="81" A="255"/>
<Vtx X="6" Y="-23" Z="2" S="141" T="-487" R="77" G="204" B="86" A="255"/>
<Vtx X="0" Y="-22" Z="2" S="112" T="-480" R="0" G="0" B="127" A="255"/>
<Vtx X="20" Y="6" Z="2" S="112" T="-345" R="88" G="226" B="86" A="255"/>
<Vtx X="6" Y="-23" Z="2" S="13" T="-487" R="77" G="204" B="86" A="255"/>
<Vtx X="2" Y="-27" Z="2" S="2" T="-508" R="41" G="166" B="79" A="255"/>
<Vtx X="-2" Y="-27" Z="2" S="2" T="-508" R="215" G="166" B="79" A="255"/>
<Vtx X="-24" Y="6" Z="5" S="-293" T="-68" R="22" G="7" B="125" A="255"/>
<Vtx X="-25" Y="12" Z="5" S="-301" T="-108" R="17" G="254" B="126" A="255"/>
<Vtx X="-32" Y="12" Z="5" S="-343" T="-108" R="229" G="11" B="124" A="255"/>
<Vtx X="-20" Y="-27" Z="5" S="-269" T="140" R="240" G="234" B="124" A="255"/>
<Vtx X="-32" Y="-11" Z="5" S="-343" T="38" R="231" G="247" B="124" A="255"/>
<Vtx X="-8" Y="-25" Z="5" S="-197" T="124" R="20" G="13" B="125" A="255"/>
<Vtx X="-4" Y="-30" Z="5" S="-166" T="160" R="9" G="20" B="125" A="255"/>
<Vtx X="0" Y="-34" Z="5" S="-144" T="181" R="0" G="228" B="124" A="255"/>
<Vtx X="4" Y="-30" Z="5" S="-122" T="160" R="247" G="20" B="125" A="255"/>
<Vtx X="32" Y="-11" Z="5" S="55" T="38" R="25" G="247" B="124" A="255"/>
<Vtx X="20" Y="-27" Z="5" S="-19" T="140" R="16" G="234" B="124" A="255"/>
<Vtx X="8" Y="-25" Z="5" S="-91" T="124" R="236" G="13" B="125" A="255"/>
<Vtx X="32" Y="-11" Z="5" S="55" T="38" R="25" G="247" B="124" A="255"/>
<Vtx X="24" Y="6" Z="5" S="5" T="-68" R="234" G="7" B="125" A="255"/>
<Vtx X="8" Y="-25" Z="5" S="-91" T="124" R="236" G="13" B="125" A="255"/>
<Vtx X="25" Y="12" Z="5" S="13" T="-108" R="239" G="254" B="126" A="255"/>
<Vtx X="32" Y="12" Z="5" S="55" T="-108" R="27" G="11" B="124" A="255"/>
<Vtx X="21" Y="19" Z="5" S="-14" T="-152" R="242" G="237" B="125" A="255"/>
<Vtx X="0" Y="34" Z="5" S="-144" T="-245" R="0" G="28" B="124" A="255"/>
<Vtx X="21" Y="27" Z="5" S="-13" T="-202" R="18" G="23" B="124" A="255"/>
<Vtx X="14" Y="21" Z="5" S="-58" T="-164" R="253" G="232" B="125" A="255"/>
<Vtx X="-14" Y="21" Z="5" S="-230" T="-164" R="3" G="232" B="125" A="255"/>
<Vtx X="-21" Y="19" Z="5" S="-274" T="-152" R="14" G="237" B="125" A="255"/>
<Vtx X="-32" Y="12" Z="5" S="-343" T="-108" R="229" G="11" B="124" A="255"/>
<Vtx X="-21" Y="27" Z="5" S="-275" T="-202" R="238" G="23" B="124" A="255"/>
<Vtx X="-25" Y="12" Z="5" S="-301" T="-108" R="17" G="254" B="126" A="255"/>
<Vtx X="0" Y="21" Z="5" S="-144" T="-164" R="0" G="232" B="125" A="255"/>
<Vtx X="-32" Y="10" Z="-5" S="166" T="-98" R="229" G="8" B="132" A="255"/>
<Vtx X="-20" Y="27" Z="-5" S="243" T="-204" R="240" G="22" B="132" A="255"/>
<Vtx X="0" Y="34" Z="-5" S="368" T="-245" R="0" G="28" B="132" A="255"/>
<Vtx X="32" Y="10" Z="-5" S="570" T="-98" R="27" G="8" B="132" A="255"/>
<Vtx X="20" Y="27" Z="-5" S="493" T="-204" R="16" G="22" B="132" A="255"/>
<Vtx X="-20" Y="-27" Z="-5" S="243" T="140" R="240" G="234" B="132" A="255"/>
<Vtx X="20" Y="-27" Z="-5" S="493" T="140" R="16" G="234" B="132" A="255"/>
<Vtx X="32" Y="-10" Z="-5" S="570" T="34" R="27" G="248" B="132" A="255"/>
<Vtx X="0" Y="-34" Z="-5" S="368" T="181" R="0" G="228" B="132" A="255"/>
<Vtx X="-32" Y="-10" Z="-5" S="166" T="34" R="229" G="248" B="132" A="255"/>
</Vertex>

View File

@ -0,0 +1,10 @@
<Vertex Version="0">
<Vtx X="-37" Y="-39" Z="-5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="-37" Y="-39" Z="5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="-37" Y="39" Z="5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="-37" Y="39" Z="-5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="37" Y="-39" Z="-5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="37" Y="-39" Z="5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="37" Y="39" Z="5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="37" Y="39" Z="-5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
</Vertex>

View File

@ -0,0 +1,21 @@
<DisplayList Version="0">
<PipeSync/>
<SetCombineLERP A0="G_CCMUX_TEXEL0" B0="G_CCMUX_0" C0="G_CCMUX_SHADE" D0="G_CCMUX_0" Aa0="G_ACMUX_0" Ab0="G_ACMUX_0" Ac0="G_ACMUX_0" Ad0="G_ACMUX_1" A1="G_CCMUX_COMBINED" B1="G_CCMUX_0" C1="G_CCMUX_PRIMITIVE" D1="G_CCMUX_0" Aa1="G_ACMUX_0" Ab1="G_ACMUX_0" Ac1="G_ACMUX_0" Ad1="G_ACMUX_COMBINED"/>
<SetGeometryMode G_ZBUFFER="1" G_SHADE="1" G_CULL_BACK="1" G_FOG="1" G_LIGHTING="1" G_TEXTURE_GEN="1" G_SHADING_SMOOTH="1" />
<SetOtherMode Cmd="G_SETOTHERMODE_H" Sft="4" Length="20" G_AD_NOISE="1" G_CD_MAGICSQ="1" G_CK_NONE="1" G_TC_FILT="1" G_TF_BILERP="1" G_TL_TILE="1" G_TD_CLAMP="1" G_TP_PERSP="1" G_CYC_2CYCLE="1" G_PM_NPRIMITIVE="1" />
<SetOtherMode Cmd="G_SETOTHERMODE_L" Sft="0" Length="32" G_AC_NONE="1" G_ZS_PIXEL="1" G_RM_FOG_SHADE_A="1" G_RM_AA_ZB_OPA_SURF2="1" />
<Texture S="1984" T="1984" Level="0" Tile="0" On="1"/>
<SetTextureLUT Mode="G_TT_NONE"/>
<TileSync/>
<SetTextureImage Path="objects/object_ocarina_c_down_button/noise_tex" Format="G_IM_FMT_I" Size="G_IM_SIZ_8b_LOAD_BLOCK" Width="1"/>
<SetTile Format="G_IM_FMT_I" Size="G_IM_SIZ_8b_LOAD_BLOCK" Line="0" TMem="0" Tile="7" Palette="0" Cms0="G_TX_WRAP" Cms1="G_TX_NOMIRROR" Cmt0="G_TX_WRAP" Cmt1="G_TX_NOMIRROR" MaskS="5" ShiftS="0" MaskT="5" ShiftT="0"/>
<LoadSync/>
<LoadBlock Tile="7" Uls="0" Ult="0" Lrs="511" Dxt="512"/>
<PipeSync/>
<SetTile Format="G_IM_FMT_I" Size="G_IM_SIZ_8b" Line="4" TMem="0" Tile="0" Palette="0" Cms0="G_TX_WRAP" Cms1="G_TX_NOMIRROR" Cmt0="G_TX_WRAP" Cmt1="G_TX_NOMIRROR" MaskS="5" ShiftS="0" MaskT="5" ShiftT="0"/>
<SetTileSize T="0" Uls="0" Ult="0" Lrs="124" Lrt="124"/>
<SetPrimColor M="0" L="0" R="255" G="160" B="0" A="255"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,21 @@
<DisplayList Version="0">
<PipeSync/>
<SetCombineLERP A0="G_CCMUX_TEXEL0" B0="G_CCMUX_0" C0="G_CCMUX_SHADE" D0="G_CCMUX_0" Aa0="G_ACMUX_0" Ab0="G_ACMUX_0" Ac0="G_ACMUX_0" Ad0="G_ACMUX_1" A1="G_CCMUX_COMBINED" B1="G_CCMUX_0" C1="G_CCMUX_PRIMITIVE" D1="G_CCMUX_0" Aa1="G_ACMUX_0" Ab1="G_ACMUX_0" Ac1="G_ACMUX_0" Ad1="G_ACMUX_COMBINED"/>
<SetGeometryMode G_ZBUFFER="1" G_SHADE="1" G_CULL_BACK="1" G_FOG="1" G_LIGHTING="1" G_TEXTURE_GEN="1" G_SHADING_SMOOTH="1" />
<SetOtherMode Cmd="G_SETOTHERMODE_H" Sft="4" Length="20" G_AD_NOISE="1" G_CD_MAGICSQ="1" G_CK_NONE="1" G_TC_FILT="1" G_TF_BILERP="1" G_TL_TILE="1" G_TD_CLAMP="1" G_TP_PERSP="1" G_CYC_2CYCLE="1" G_PM_NPRIMITIVE="1" />
<SetOtherMode Cmd="G_SETOTHERMODE_L" Sft="0" Length="32" G_AC_NONE="1" G_ZS_PIXEL="1" G_RM_FOG_SHADE_A="1" G_RM_AA_ZB_OPA_SURF2="1" />
<Texture S="2621" T="1311" Level="0" Tile="0" On="1"/>
<SetTextureLUT Mode="G_TT_NONE"/>
<TileSync/>
<SetTextureImage Path="objects/object_ocarina_c_down_button/noise_tex" Format="G_IM_FMT_I" Size="G_IM_SIZ_8b_LOAD_BLOCK" Width="1"/>
<SetTile Format="G_IM_FMT_I" Size="G_IM_SIZ_8b_LOAD_BLOCK" Line="0" TMem="0" Tile="7" Palette="0" Cms0="G_TX_WRAP" Cms1="G_TX_NOMIRROR" Cmt0="G_TX_WRAP" Cmt1="G_TX_NOMIRROR" MaskS="5" ShiftS="0" MaskT="5" ShiftT="0"/>
<LoadSync/>
<LoadBlock Tile="7" Uls="0" Ult="0" Lrs="511" Dxt="512"/>
<PipeSync/>
<SetTile Format="G_IM_FMT_I" Size="G_IM_SIZ_8b" Line="4" TMem="0" Tile="0" Palette="0" Cms0="G_TX_WRAP" Cms1="G_TX_NOMIRROR" Cmt0="G_TX_WRAP" Cmt1="G_TX_NOMIRROR" MaskS="5" ShiftS="0" MaskT="5" ShiftT="0"/>
<SetTileSize T="0" Uls="0" Ult="0" Lrs="124" Lrt="124"/>
<SetPrimColor M="0" L="0" R="170" G="107" B="0" A="255"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,16 @@
<DisplayList Version="0">
<ClearGeometryMode G_LIGHTING="1" />
<LoadVertices Path="objects/object_ocarina_c_left_button/gOcarinaCLeftButtonDL_vtx_cull" VertexBufferIndex="0" VertexOffset="0" Count="8"/>
<CullDisplayList Start="0" End="7"/>
<CallDisplayList Path="objects/object_ocarina_c_left_button/mat_gOcarinaCLeftButtonDL_f3dlite_ocarina_C_button_surface"/>
<CallDisplayList Path="objects/object_ocarina_c_left_button/gOcarinaCLeftButtonDL_tri_0"/>
<CallDisplayList Path="objects/object_ocarina_c_left_button/mat_gOcarinaCLeftButtonDL_f3dlite_ocarina_C_button_edge"/>
<CallDisplayList Path="objects/object_ocarina_c_left_button/gOcarinaCLeftButtonDL_tri_1"/>
<PipeSync/>
<SetGeometryMode G_LIGHTING="1" />
<ClearGeometryMode G_TEXTURE_GEN="1" />
<SetCombineLERP A0="G_CCMUX_0" B0="G_CCMUX_0" C0="G_CCMUX_0" D0="G_CCMUX_SHADE" Aa0="G_ACMUX_0" Ab0="G_ACMUX_0" Ac0="G_ACMUX_0" Ad0="G_ACMUX_ENVIRONMENT" A1="G_CCMUX_0" B1="G_CCMUX_0" C1="G_CCMUX_0" D1="G_CCMUX_SHADE" Aa1="G_ACMUX_0" Ab1="G_ACMUX_0" Ac1="G_ACMUX_0" Ad1="G_ACMUX_ENVIRONMENT"/>
<Texture S="65535" T="65535" Level="0" Tile="0" On="0"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,28 @@
<DisplayList Version="0">
<LoadVertices Path="objects/object_ocarina_c_left_button/gOcarinaCLeftButtonDL_vtx_0" VertexBufferIndex="0" VertexOffset="0" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="3" V11="4" V12="5" Flag1="0"/>
<Triangles2 V00="3" V01="5" V02="6" Flag0="0" V10="5" V11="7" V12="6" Flag1="0"/>
<Triangles2 V00="6" V01="8" V02="3" Flag0="0" V10="8" V11="9" V12="3" Flag1="0"/>
<Triangles2 V00="10" V01="11" V02="12" Flag0="0" V10="13" V11="10" V12="12" Flag1="0"/>
<Triangles2 V00="12" V01="14" V02="13" Flag0="0" V10="12" V11="15" V12="14" Flag1="0"/>
<Triangles2 V00="14" V01="16" V02="13" Flag0="0" V10="17" V11="1" V12="18" Flag1="0"/>
<Triangles2 V00="18" V01="1" V02="3" Flag0="0" V10="19" V11="20" V12="21" Flag1="0"/>
<Triangles2 V00="22" V01="21" V02="20" Flag0="0" V10="22" V11="20" V12="23" Flag1="0"/>
<Triangles2 V00="22" V01="23" V02="24" Flag0="0" V10="25" V11="22" V12="24" Flag1="0"/>
<Triangles2 V00="24" V01="26" V02="25" Flag0="0" V10="26" V11="27" V12="25" Flag1="0"/>
<Triangles2 V00="27" V01="28" V02="25" Flag0="0" V10="28" V11="29" V12="25" Flag1="0"/>
<Triangles2 V00="30" V01="29" V02="28" Flag0="0" V10="30" V11="28" V12="31" Flag1="0"/>
<LoadVertices Path="objects/object_ocarina_c_left_button/gOcarinaCLeftButtonDL_vtx_0" VertexBufferIndex="0" VertexOffset="32" Count="26"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="4" V01="0" V02="3" Flag0="0" V10="4" V11="3" V12="5" Flag1="0"/>
<Triangles2 V00="5" V01="6" V02="4" Flag0="0" V10="5" V11="7" V12="6" Flag1="0"/>
<Triangles2 V00="7" V01="8" V02="6" Flag0="0" V10="7" V11="9" V12="8" Flag1="0"/>
<Triangles2 V00="8" V01="10" V02="6" Flag0="0" V10="10" V11="11" V12="6" Flag1="0"/>
<Triangles2 V00="4" V01="12" V02="0" Flag0="0" V10="13" V11="14" V12="15" Flag1="0"/>
<Triangles2 V00="16" V01="17" V02="18" Flag0="0" V10="16" V11="18" V12="19" Flag1="0"/>
<Triangles2 V00="18" V01="20" V02="19" Flag0="0" V10="19" V11="21" V12="16" Flag1="0"/>
<Triangles2 V00="19" V01="22" V02="21" Flag0="0" V10="19" V11="23" V12="22" Flag1="0"/>
<Triangles2 V00="22" V01="24" V02="21" Flag0="0" V10="21" V11="25" V12="16" Flag1="0"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,94 @@
<DisplayList Version="0">
<LoadVertices Path="objects/object_ocarina_c_left_button/gOcarinaCLeftButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="0" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="2" V01="4" V02="3" Flag0="0" V10="2" V11="5" V12="4" Flag1="0"/>
<Triangles2 V00="5" V01="6" V02="4" Flag0="0" V10="5" V11="7" V12="6" Flag1="0"/>
<Triangles2 V00="4" V01="6" V02="8" Flag0="0" V10="4" V11="8" V12="9" Flag1="0"/>
<Triangles2 V00="9" V01="3" V02="4" Flag0="0" V10="9" V11="10" V12="3" Flag1="0"/>
<Triangles2 V00="11" V01="12" V02="13" Flag0="0" V10="11" V11="13" V12="14" Flag1="0"/>
<Triangles2 V00="15" V01="14" V02="13" Flag0="0" V10="15" V11="16" V12="14" Flag1="0"/>
<Triangles2 V00="7" V01="17" V02="18" Flag0="0" V10="7" V11="18" V12="19" Flag1="0"/>
<Triangles2 V00="19" V01="18" V02="20" Flag0="0" V10="19" V11="20" V12="8" Flag1="0"/>
<Triangles2 V00="21" V01="22" V02="23" Flag0="0" V10="21" V11="23" V12="24" Flag1="0"/>
<Triangles2 V00="25" V01="24" V02="23" Flag0="0" V10="25" V11="26" V12="24" Flag1="0"/>
<Triangles2 V00="27" V01="21" V02="28" Flag0="0" V10="27" V11="28" V12="29" Flag1="0"/>
<Triangles2 V00="26" V01="29" V02="28" Flag0="0" V10="26" V11="30" V12="29" Flag1="0"/>
<Triangle1 V00="30" V01="31" V02="29"/>
<LoadVertices Path="objects/object_ocarina_c_left_button/gOcarinaCLeftButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="32" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="3" V11="4" V12="2" Flag1="0"/>
<Triangles2 V00="3" V01="5" V02="4" Flag0="0" V10="6" V11="7" V12="8" Flag1="0"/>
<Triangles2 V00="6" V01="8" V02="9" Flag0="0" V10="6" V11="9" V12="10" Flag1="0"/>
<Triangles2 V00="6" V01="10" V02="11" Flag0="0" V10="12" V11="3" V12="13" Flag1="0"/>
<Triangles2 V00="12" V01="13" V02="14" Flag0="0" V10="1" V11="14" V12="13" Flag1="0"/>
<Triangles2 V00="1" V01="15" V02="14" Flag0="0" V10="16" V11="17" V12="18" Flag1="0"/>
<Triangles2 V00="16" V01="18" V02="19" Flag0="0" V10="19" V11="18" V12="20" Flag1="0"/>
<Triangles2 V00="19" V01="20" V02="21" Flag0="0" V10="22" V11="23" V12="24" Flag1="0"/>
<Triangles2 V00="22" V01="24" V02="25" Flag0="0" V10="25" V11="24" V12="26" Flag1="0"/>
<Triangles2 V00="25" V01="26" V02="27" Flag0="0" V10="23" V11="28" V12="29" Flag1="0"/>
<Triangles2 V00="23" V01="29" V02="30" Flag0="0" V10="30" V11="29" V12="31" Flag1="0"/>
<Triangle1 V00="30" V01="31" V02="26"/>
<LoadVertices Path="objects/object_ocarina_c_left_button/gOcarinaCLeftButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="64" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="4" V01="5" V02="6" Flag0="0" V10="4" V11="6" V12="7" Flag1="0"/>
<Triangles2 V00="8" V01="4" V02="7" Flag0="0" V10="8" V11="7" V12="9" Flag1="0"/>
<Triangles2 V00="9" V01="10" V02="8" Flag0="0" V10="9" V11="11" V12="10" Flag1="0"/>
<Triangles2 V00="11" V01="12" V02="10" Flag0="0" V10="11" V11="13" V12="12" Flag1="0"/>
<Triangles2 V00="13" V01="14" V02="12" Flag0="0" V10="13" V11="15" V12="14" Flag1="0"/>
<Triangles2 V00="15" V01="16" V02="14" Flag0="0" V10="15" V11="17" V12="16" Flag1="0"/>
<Triangles2 V00="18" V01="19" V02="20" Flag0="0" V10="18" V11="20" V12="21" Flag1="0"/>
<Triangles2 V00="22" V01="18" V02="21" Flag0="0" V10="22" V11="21" V12="23" Flag1="0"/>
<Triangles2 V00="24" V01="22" V02="23" Flag0="0" V10="24" V11="23" V12="25" Flag1="0"/>
<Triangles2 V00="26" V01="24" V02="25" Flag0="0" V10="26" V11="25" V12="27" Flag1="0"/>
<Triangles2 V00="28" V01="26" V02="27" Flag0="0" V10="28" V11="27" V12="29" Flag1="0"/>
<Triangles2 V00="29" V01="30" V02="28" Flag0="0" V10="29" V11="6" V12="30" Flag1="0"/>
<Triangle1 V00="17" V01="20" V02="31"/>
<LoadVertices Path="objects/object_ocarina_c_left_button/gOcarinaCLeftButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="96" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="3" V11="4" V12="5" Flag1="0"/>
<Triangles2 V00="3" V01="5" V02="6" Flag0="0" V10="7" V11="8" V12="9" Flag1="0"/>
<Triangles2 V00="7" V01="9" V02="10" Flag0="0" V10="4" V11="11" V12="12" Flag1="0"/>
<Triangles2 V00="4" V01="12" V02="13" Flag0="0" V10="14" V11="15" V12="16" Flag1="0"/>
<Triangles2 V00="14" V01="16" V02="9" Flag0="0" V10="11" V11="17" V12="18" Flag1="0"/>
<Triangles2 V00="11" V01="18" V02="19" Flag0="0" V10="20" V11="21" V12="22" Flag1="0"/>
<Triangles2 V00="20" V01="22" V02="16" Flag0="0" V10="17" V11="23" V12="24" Flag1="0"/>
<Triangles2 V00="17" V01="24" V02="25" Flag0="0" V10="26" V11="27" V12="28" Flag1="0"/>
<Triangles2 V00="26" V01="28" V02="22" Flag0="0" V10="23" V11="29" V12="30" Flag1="0"/>
<Triangle1 V00="23" V01="30" V02="31"/>
<LoadVertices Path="objects/object_ocarina_c_left_button/gOcarinaCLeftButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="128" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="4" V01="5" V02="6" Flag0="0" V10="4" V11="6" V12="7" Flag1="0"/>
<Triangles2 V00="8" V01="9" V02="10" Flag0="0" V10="8" V11="10" V12="2" Flag1="0"/>
<Triangles2 V00="5" V01="11" V02="12" Flag0="0" V10="5" V11="12" V12="13" Flag1="0"/>
<Triangles2 V00="14" V01="15" V02="16" Flag0="0" V10="14" V11="16" V12="10" Flag1="0"/>
<Triangles2 V00="11" V01="17" V02="18" Flag0="0" V10="11" V11="18" V12="19" Flag1="0"/>
<Triangles2 V00="20" V01="21" V02="22" Flag0="0" V10="20" V11="22" V12="16" Flag1="0"/>
<Triangles2 V00="23" V01="24" V02="25" Flag0="0" V10="23" V11="25" V12="26" Flag1="0"/>
<Triangles2 V00="27" V01="28" V02="29" Flag0="0" V10="27" V11="29" V12="30" Flag1="0"/>
<Triangle1 V00="17" V01="29" V02="31"/>
<LoadVertices Path="objects/object_ocarina_c_left_button/gOcarinaCLeftButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="160" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="3" V11="4" V12="5" Flag1="0"/>
<Triangles2 V00="3" V01="5" V02="6" Flag0="0" V10="7" V11="8" V12="9" Flag1="0"/>
<Triangles2 V00="7" V01="9" V02="10" Flag0="0" V10="11" V11="12" V12="13" Flag1="0"/>
<Triangles2 V00="11" V01="13" V02="14" Flag0="0" V10="15" V11="16" V12="17" Flag1="0"/>
<Triangles2 V00="15" V01="17" V02="18" Flag0="0" V10="19" V11="20" V12="21" Flag1="0"/>
<Triangles2 V00="19" V01="21" V02="13" Flag0="0" V10="22" V11="23" V12="24" Flag1="0"/>
<Triangles2 V00="22" V01="24" V02="25" Flag0="0" V10="26" V11="27" V12="28" Flag1="0"/>
<Triangles2 V00="26" V01="28" V02="21" Flag0="0" V10="29" V11="30" V12="31" Flag1="0"/>
<LoadVertices Path="objects/object_ocarina_c_left_button/gOcarinaCLeftButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="192" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="3" V11="4" V12="5" Flag1="0"/>
<Triangles2 V00="3" V01="5" V02="6" Flag0="0" V10="7" V11="8" V12="9" Flag1="0"/>
<Triangles2 V00="7" V01="9" V02="10" Flag0="0" V10="11" V11="12" V12="13" Flag1="0"/>
<Triangles2 V00="11" V01="13" V02="5" Flag0="0" V10="14" V11="15" V12="16" Flag1="0"/>
<Triangles2 V00="14" V01="16" V02="17" Flag0="0" V10="18" V11="19" V12="20" Flag1="0"/>
<Triangles2 V00="18" V01="20" V02="13" Flag0="0" V10="21" V11="22" V12="23" Flag1="0"/>
<Triangles2 V00="21" V01="23" V02="24" Flag0="0" V10="25" V11="26" V12="27" Flag1="0"/>
<Triangles2 V00="25" V01="27" V02="20" Flag0="0" V10="28" V11="29" V12="30" Flag1="0"/>
<Triangle1 V00="28" V01="30" V02="31"/>
<LoadVertices Path="objects/object_ocarina_c_left_button/gOcarinaCLeftButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="224" Count="18"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="4" V01="5" V02="6" Flag0="0" V10="4" V11="6" V12="7" Flag1="0"/>
<Triangles2 V00="8" V01="9" V02="10" Flag0="0" V10="8" V11="10" V12="2" Flag1="0"/>
<Triangles2 V00="11" V01="10" V02="12" Flag0="0" V10="11" V11="12" V12="13" Flag1="0"/>
<Triangles2 V00="14" V01="15" V02="16" Flag0="0" V10="14" V11="16" V12="17" Flag1="0"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,60 @@
<Vertex Version="0">
<Vtx X="-23" Y="-6" Z="2" S="13" T="-487" R="204" G="179" B="86" A="255"/>
<Vtx X="-22" Y="0" Z="2" S="16" T="-480" R="0" G="0" B="127" A="255"/>
<Vtx X="-27" Y="-2" Z="2" S="15" T="-482" R="166" G="215" B="79" A="255"/>
<Vtx X="-23" Y="6" Z="2" S="-16" T="-487" R="204" G="77" B="86" A="255"/>
<Vtx X="-22" Y="0" Z="2" S="112" T="-288" R="0" G="0" B="127" A="255"/>
<Vtx X="18" Y="0" Z="2" S="112" T="-288" R="90" G="0" B="90" A="255"/>
<Vtx X="16" Y="19" Z="2" S="-16" T="-360" R="79" G="59" B="81" A="255"/>
<Vtx X="18" Y="13" Z="2" S="-16" T="-416" R="93" G="12" B="86" A="255"/>
<Vtx X="12" Y="22" Z="2" S="-7" T="-317" R="17" G="97" B="81" A="255"/>
<Vtx X="6" Y="20" Z="2" S="-16" T="-345" R="226" G="88" B="86" A="255"/>
<Vtx X="16" Y="-19" Z="2" S="204" T="-296" R="79" G="197" B="81" A="255"/>
<Vtx X="18" Y="-13" Z="2" S="176" T="-288" R="93" G="244" B="86" A="255"/>
<Vtx X="18" Y="0" Z="2" S="112" T="-480" R="90" G="0" B="90" A="255"/>
<Vtx X="12" Y="-22" Z="2" S="217" T="-317" R="17" G="159" B="81" A="255"/>
<Vtx X="-23" Y="-6" Z="2" S="141" T="-288" R="204" G="179" B="86" A="255"/>
<Vtx X="-22" Y="0" Z="2" S="112" T="-480" R="0" G="0" B="127" A="255"/>
<Vtx X="6" Y="-20" Z="2" S="211" T="-307" R="226" G="168" B="86" A="255"/>
<Vtx X="-27" Y="-2" Z="2" S="2" T="-508" R="166" G="215" B="79" A="255"/>
<Vtx X="-27" Y="2" Z="2" S="-16" T="-511" R="166" G="41" B="79" A="255"/>
<Vtx X="21" Y="-11" Z="5" S="-12" T="39" R="230" G="2" B="124" A="255"/>
<Vtx X="18" Y="-22" Z="5" S="-31" T="107" R="243" G="11" B="126" A="255"/>
<Vtx X="20" Y="-27" Z="5" S="-15" T="137" R="17" G="234" B="124" A="255"/>
<Vtx X="0" Y="-34" Z="5" S="-146" T="180" R="0" G="229" B="124" A="255"/>
<Vtx X="13" Y="-25" Z="5" S="-61" T="125" R="252" G="21" B="125" A="255"/>
<Vtx X="5" Y="-23" Z="5" S="-112" T="115" R="8" G="23" B="125" A="255"/>
<Vtx X="-33" Y="-9" Z="5" S="-352" T="26" R="226" G="249" B="123" A="255"/>
<Vtx X="-25" Y="-8" Z="5" S="-300" T="21" R="13" G="20" B="125" A="255"/>
<Vtx X="-30" Y="-4" Z="5" S="-332" T="-7" R="22" G="11" B="125" A="255"/>
<Vtx X="-30" Y="5" Z="5" S="-332" T="-61" R="14" G="248" B="126" A="255"/>
<Vtx X="-33" Y="8" Z="5" S="-352" T="-82" R="226" G="5" B="123" A="255"/>
<Vtx X="-19" Y="28" Z="5" S="-262" T="-206" R="242" G="22" B="124" A="255"/>
<Vtx X="-26" Y="8" Z="5" S="-309" T="-80" R="13" G="238" B="125" A="255"/>
<Vtx X="-19" Y="28" Z="5" S="-262" T="-206" R="242" G="22" B="124" A="255"/>
<Vtx X="-26" Y="8" Z="5" S="-309" T="-80" R="13" G="238" B="125" A="255"/>
<Vtx X="5" Y="23" Z="5" S="-112" T="-179" R="8" G="233" B="125" A="255"/>
<Vtx X="13" Y="25" Z="5" S="-65" T="-189" R="252" G="233" B="125" A="255"/>
<Vtx X="20" Y="27" Z="5" S="-19" T="-204" R="16" G="22" B="124" A="255"/>
<Vtx X="19" Y="21" Z="5" S="-25" T="-164" R="238" G="242" B="125" A="255"/>
<Vtx X="32" Y="10" Z="5" S="58" T="-98" R="27" G="8" B="124" A="255"/>
<Vtx X="21" Y="14" Z="5" S="-12" T="-118" R="232" G="253" B="125" A="255"/>
<Vtx X="21" Y="-11" Z="5" S="-12" T="39" R="230" G="2" B="124" A="255"/>
<Vtx X="21" Y="0" Z="5" S="-12" T="-32" R="232" G="0" B="125" A="255"/>
<Vtx X="20" Y="-27" Z="5" S="-15" T="137" R="17" G="234" B="124" A="255"/>
<Vtx X="32" Y="-11" Z="5" S="58" T="36" R="27" G="247" B="124" A="255"/>
<Vtx X="0" Y="34" Z="5" S="-144" T="-245" R="0" G="28" B="124" A="255"/>
<Vtx X="-33" Y="-9" Z="5" S="-352" T="26" R="226" G="249" B="123" A="255"/>
<Vtx X="-20" Y="-27" Z="5" S="-269" T="140" R="240" G="234" B="124" A="255"/>
<Vtx X="0" Y="-34" Z="5" S="-146" T="180" R="0" G="229" B="124" A="255"/>
<Vtx X="-32" Y="10" Z="-5" S="166" T="-98" R="229" G="8" B="132" A="255"/>
<Vtx X="-20" Y="27" Z="-5" S="243" T="-204" R="240" G="22" B="132" A="255"/>
<Vtx X="0" Y="34" Z="-5" S="368" T="-245" R="0" G="28" B="132" A="255"/>
<Vtx X="32" Y="10" Z="-5" S="570" T="-98" R="27" G="8" B="132" A="255"/>
<Vtx X="20" Y="27" Z="-5" S="493" T="-204" R="16" G="22" B="132" A="255"/>
<Vtx X="-20" Y="-27" Z="-5" S="243" T="140" R="240" G="234" B="132" A="255"/>
<Vtx X="20" Y="-27" Z="-5" S="493" T="140" R="16" G="234" B="132" A="255"/>
<Vtx X="32" Y="-10" Z="-5" S="570" T="34" R="27" G="248" B="132" A="255"/>
<Vtx X="0" Y="-34" Z="-5" S="368" T="181" R="0" G="228" B="132" A="255"/>
<Vtx X="-32" Y="-10" Z="-5" S="166" T="34" R="229" G="248" B="132" A="255"/>
</Vertex>

View File

@ -0,0 +1,244 @@
<Vertex Version="0">
<Vtx X="-27" Y="2" Z="2" S="-135" T="-239" R="13" G="9" B="126" A="255"/>
<Vtx X="-27" Y="2" Z="2" S="-145" T="-239" R="166" G="41" B="79" A="255"/>
<Vtx X="-23" Y="6" Z="2" S="-145" T="-215" R="204" G="77" B="86" A="255"/>
<Vtx X="-23" Y="6" Z="2" S="-135" T="-215" R="243" G="11" B="126" A="255"/>
<Vtx X="6" Y="20" Z="2" S="-135" T="-74" R="252" G="13" B="126" A="255"/>
<Vtx X="6" Y="20" Z="2" S="-145" T="-74" R="226" G="88" B="86" A="255"/>
<Vtx X="12" Y="22" Z="2" S="-135" T="-49" R="0" G="253" B="127" A="255"/>
<Vtx X="12" Y="22" Z="2" S="-145" T="-49" R="17" G="97" B="81" A="255"/>
<Vtx X="12" Y="23" Z="4" S="-245" T="-49" R="242" G="177" B="98" A="255"/>
<Vtx X="6" Y="21" Z="4" S="-245" T="-74" R="28" G="173" B="92" A="255"/>
<Vtx X="-24" Y="6" Z="4" S="-245" T="-215" R="47" G="185" B="94" A="255"/>
<Vtx X="18" Y="-13" Z="2" S="47" T="-17" R="93" G="244" B="86" A="255"/>
<Vtx X="16" Y="-19" Z="2" S="111" T="-17" R="79" G="197" B="81" A="255"/>
<Vtx X="16" Y="-19" Z="2" S="111" T="-26" R="244" G="247" B="126" A="255"/>
<Vtx X="18" Y="-13" Z="2" S="47" T="-26" R="12" G="7" B="126" A="255"/>
<Vtx X="17" Y="-20" Z="4" S="111" T="84" R="188" G="48" B="96" A="255"/>
<Vtx X="19" Y="-13" Z="4" S="47" T="84" R="165" G="12" B="88" A="255"/>
<Vtx X="16" Y="19" Z="2" S="-145" T="-17" R="79" G="59" B="81" A="255"/>
<Vtx X="16" Y="19" Z="2" S="-135" T="-17" R="254" G="254" B="127" A="255"/>
<Vtx X="12" Y="22" Z="2" S="-135" T="-49" R="0" G="253" B="127" A="255"/>
<Vtx X="17" Y="20" Z="4" S="-245" T="-17" R="191" G="208" B="98" A="255"/>
<Vtx X="-23" Y="-6" Z="2" S="111" T="-215" R="204" G="179" B="86" A="255"/>
<Vtx X="-27" Y="-2" Z="2" S="111" T="-273" R="166" G="215" B="79" A="255"/>
<Vtx X="-27" Y="-2" Z="2" S="102" T="-273" R="12" G="253" B="126" A="255"/>
<Vtx X="-23" Y="-6" Z="2" S="102" T="-215" R="248" G="244" B="126" A="255"/>
<Vtx X="-28" Y="-3" Z="4" S="212" T="-273" R="76" G="33" B="96" A="255"/>
<Vtx X="-24" Y="-7" Z="4" S="212" T="-215" R="48" G="73" B="92" A="255"/>
<Vtx X="6" Y="-20" Z="2" S="111" T="-74" R="226" G="168" B="86" A="255"/>
<Vtx X="-23" Y="-6" Z="2" S="102" T="-215" R="248" G="244" B="126" A="255"/>
<Vtx X="6" Y="-20" Z="2" S="102" T="-74" R="252" G="243" B="126" A="255"/>
<Vtx X="6" Y="-21" Z="4" S="212" T="-74" R="28" G="83" B="92" A="255"/>
<Vtx X="12" Y="-22" Z="2" S="102" T="-49" R="5" G="2" B="127" A="255"/>
<Vtx X="6" Y="-21" Z="4" S="212" T="-74" R="28" G="83" B="92" A="255"/>
<Vtx X="12" Y="-23" Z="4" S="212" T="-49" R="243" G="77" B="100" A="255"/>
<Vtx X="12" Y="-22" Z="2" S="102" T="-49" R="5" G="2" B="127" A="255"/>
<Vtx X="12" Y="-22" Z="2" S="111" T="-49" R="17" G="159" B="81" A="255"/>
<Vtx X="6" Y="-20" Z="2" S="102" T="-74" R="252" G="243" B="126" A="255"/>
<Vtx X="6" Y="-20" Z="2" S="111" T="-74" R="226" G="168" B="86" A="255"/>
<Vtx X="-27" Y="-2" Z="2" S="-135" T="-236" R="12" G="253" B="126" A="255"/>
<Vtx X="-27" Y="-2" Z="2" S="-145" T="-239" R="166" G="215" B="79" A="255"/>
<Vtx X="-27" Y="2" Z="2" S="-145" T="-239" R="166" G="41" B="79" A="255"/>
<Vtx X="-27" Y="2" Z="2" S="-135" T="-236" R="13" G="9" B="126" A="255"/>
<Vtx X="-28" Y="3" Z="4" S="-245" T="-273" R="75" G="225" B="98" A="255"/>
<Vtx X="-28" Y="-3" Z="4" S="-245" T="-273" R="76" G="33" B="96" A="255"/>
<Vtx X="16" Y="-19" Z="2" S="111" T="-17" R="79" G="197" B="81" A="255"/>
<Vtx X="12" Y="-22" Z="2" S="102" T="-49" R="5" G="2" B="127" A="255"/>
<Vtx X="16" Y="-19" Z="2" S="102" T="-17" R="244" G="247" B="126" A="255"/>
<Vtx X="17" Y="-20" Z="4" S="212" T="-17" R="188" G="48" B="96" A="255"/>
<Vtx X="18" Y="0" Z="2" S="-17" T="-17" R="90" G="0" B="90" A="255"/>
<Vtx X="18" Y="-13" Z="2" S="-17" T="-17" R="93" G="244" B="86" A="255"/>
<Vtx X="18" Y="-13" Z="2" S="-17" T="-26" R="12" G="7" B="126" A="255"/>
<Vtx X="18" Y="0" Z="2" S="-17" T="-26" R="24" G="0" B="125" A="255"/>
<Vtx X="19" Y="-13" Z="4" S="-17" T="84" R="165" G="12" B="88" A="255"/>
<Vtx X="19" Y="0" Z="4" S="-17" T="84" R="166" G="0" B="90" A="255"/>
<Vtx X="16" Y="19" Z="2" S="-145" T="-17" R="79" G="59" B="81" A="255"/>
<Vtx X="18" Y="13" Z="2" S="-81" T="-17" R="93" G="12" B="86" A="255"/>
<Vtx X="18" Y="13" Z="2" S="-81" T="-26" R="14" G="1" B="126" A="255"/>
<Vtx X="16" Y="19" Z="2" S="-145" T="-26" R="254" G="254" B="127" A="255"/>
<Vtx X="19" Y="13" Z="4" S="-81" T="84" R="169" G="245" B="92" A="255"/>
<Vtx X="17" Y="20" Z="4" S="-145" T="84" R="191" G="208" B="98" A="255"/>
<Vtx X="18" Y="0" Z="2" S="-81" T="-17" R="90" G="0" B="90" A="255"/>
<Vtx X="18" Y="0" Z="2" S="-81" T="-26" R="24" G="0" B="125" A="255"/>
<Vtx X="18" Y="13" Z="2" S="-81" T="-26" R="14" G="1" B="126" A="255"/>
<Vtx X="19" Y="0" Z="4" S="-81" T="84" R="166" G="0" B="90" A="255"/>
<Vtx X="-27" Y="2" Z="2" S="-135" T="-239" R="13" G="9" B="126" A="255"/>
<Vtx X="-23" Y="6" Z="2" S="-135" T="-215" R="243" G="11" B="126" A="255"/>
<Vtx X="-24" Y="6" Z="4" S="-245" T="-217" R="47" G="185" B="94" A="255"/>
<Vtx X="-28" Y="3" Z="4" S="-245" T="-239" R="75" G="225" B="98" A="255"/>
<Vtx X="-28" Y="3" Z="4" S="-445" T="226" R="75" G="225" B="98" A="255"/>
<Vtx X="-24" Y="6" Z="4" S="-420" T="204" R="47" G="185" B="94" A="255"/>
<Vtx X="-26" Y="8" Z="5" S="-438" T="191" R="13" G="238" B="125" A="255"/>
<Vtx X="-30" Y="5" Z="5" S="-460" T="210" R="14" G="248" B="126" A="255"/>
<Vtx X="-28" Y="-3" Z="4" S="-445" T="253" R="76" G="33" B="96" A="255"/>
<Vtx X="-30" Y="-4" Z="5" S="-460" T="265" R="22" G="11" B="125" A="255"/>
<Vtx X="-24" Y="-7" Z="4" S="-418" T="277" R="48" G="73" B="92" A="255"/>
<Vtx X="-25" Y="-8" Z="5" S="-429" T="293" R="13" G="20" B="125" A="255"/>
<Vtx X="6" Y="-21" Z="4" S="-234" T="369" R="28" G="83" B="92" A="255"/>
<Vtx X="5" Y="-23" Z="5" S="-240" T="387" R="8" G="23" B="125" A="255"/>
<Vtx X="12" Y="-23" Z="4" S="-197" T="376" R="243" G="77" B="100" A="255"/>
<Vtx X="13" Y="-25" Z="5" S="-189" T="397" R="252" G="21" B="125" A="255"/>
<Vtx X="17" Y="-20" Z="4" S="-170" T="360" R="188" G="48" B="96" A="255"/>
<Vtx X="18" Y="-22" Z="5" S="-159" T="379" R="243" G="11" B="126" A="255"/>
<Vtx X="19" Y="0" Z="4" S="-160" T="239" R="166" G="0" B="90" A="255"/>
<Vtx X="19" Y="-13" Z="4" S="-160" T="319" R="165" G="12" B="88" A="255"/>
<Vtx X="21" Y="-11" Z="5" S="-141" T="310" R="230" G="2" B="124" A="255"/>
<Vtx X="21" Y="0" Z="5" S="-141" T="239" R="232" G="0" B="125" A="255"/>
<Vtx X="19" Y="13" Z="4" S="-160" T="156" R="169" G="245" B="92" A="255"/>
<Vtx X="21" Y="14" Z="5" S="-141" T="154" R="232" G="253" B="125" A="255"/>
<Vtx X="17" Y="20" Z="4" S="-170" T="120" R="191" G="208" B="98" A="255"/>
<Vtx X="19" Y="21" Z="5" S="-153" T="108" R="238" G="242" B="125" A="255"/>
<Vtx X="12" Y="23" Z="4" S="-197" T="103" R="242" G="177" B="98" A="255"/>
<Vtx X="13" Y="25" Z="5" S="-193" T="83" R="252" G="233" B="125" A="255"/>
<Vtx X="6" Y="21" Z="4" S="-234" T="110" R="28" G="173" B="92" A="255"/>
<Vtx X="5" Y="23" Z="5" S="-240" T="92" R="8" G="233" B="125" A="255"/>
<Vtx X="-24" Y="6" Z="4" S="-418" T="202" R="47" G="185" B="94" A="255"/>
<Vtx X="19" Y="-13" Z="4" S="-160" T="323" R="165" G="12" B="88" A="255"/>
<Vtx X="18" Y="-22" Z="5" S="-159" T="379" R="243" G="11" B="126" A="255"/>
<Vtx X="19" Y="-13" Z="4" S="-160" T="323" R="165" G="12" B="88" A="255"/>
<Vtx X="17" Y="-20" Z="4" S="-170" T="359" R="188" G="48" B="96" A="255"/>
<Vtx X="0" Y="34" Z="5" S="-273" T="27" R="0" G="28" B="124" A="255"/>
<Vtx X="20" Y="27" Z="5" S="-148" T="67" R="16" G="22" B="124" A="255"/>
<Vtx X="22" Y="30" Z="4" S="-131" T="40" R="54" G="75" B="87" A="255"/>
<Vtx X="0" Y="37" Z="4" S="-270" T="-5" R="0" G="93" B="87" A="255"/>
<Vtx X="0" Y="37" Z="4" S="493" T="-529" R="0" G="93" B="87" A="255"/>
<Vtx X="22" Y="30" Z="4" S="395" T="-529" R="54" G="75" B="87" A="255"/>
<Vtx X="23" Y="32" Z="0" S="393" T="-273" R="75" G="103" B="0" A="255"/>
<Vtx X="0" Y="39" Z="0" S="495" T="-273" R="0" G="127" B="0" A="255"/>
<Vtx X="32" Y="10" Z="5" S="-70" T="174" R="27" G="8" B="124" A="255"/>
<Vtx X="36" Y="12" Z="4" S="-41" T="161" R="88" G="28" B="87" A="255"/>
<Vtx X="22" Y="30" Z="4" S="-126" T="43" R="54" G="75" B="87" A="255"/>
<Vtx X="22" Y="30" Z="4" S="391" T="-529" R="54" G="75" B="87" A="255"/>
<Vtx X="36" Y="12" Z="4" S="293" T="-529" R="88" G="28" B="87" A="255"/>
<Vtx X="37" Y="12" Z="0" S="291" T="-273" R="121" G="39" B="0" A="255"/>
<Vtx X="32" Y="-11" Z="5" S="-70" T="308" R="27" G="247" B="124" A="255"/>
<Vtx X="36" Y="-12" Z="4" S="-39" T="313" R="89" G="227" B="86" A="255"/>
<Vtx X="36" Y="12" Z="4" S="-39" T="167" R="88" G="28" B="87" A="255"/>
<Vtx X="36" Y="12" Z="4" S="289" T="-529" R="88" G="28" B="87" A="255"/>
<Vtx X="36" Y="-12" Z="4" S="190" T="-529" R="89" G="227" B="86" A="255"/>
<Vtx X="37" Y="-12" Z="0" S="188" T="-273" R="121" G="217" B="0" A="255"/>
<Vtx X="20" Y="-27" Z="5" S="-144" T="409" R="17" G="234" B="124" A="255"/>
<Vtx X="22" Y="-30" Z="4" S="-126" T="435" R="55" G="181" B="87" A="255"/>
<Vtx X="36" Y="-12" Z="4" S="-41" T="318" R="89" G="227" B="86" A="255"/>
<Vtx X="36" Y="-12" Z="4" S="186" T="-529" R="89" G="227" B="86" A="255"/>
<Vtx X="22" Y="-30" Z="4" S="89" T="-529" R="55" G="181" B="87" A="255"/>
<Vtx X="23" Y="-32" Z="0" S="86" T="-273" R="74" G="153" B="0" A="255"/>
<Vtx X="0" Y="-34" Z="5" S="-275" T="451" R="0" G="229" B="124" A="255"/>
<Vtx X="0" Y="-37" Z="4" S="-270" T="484" R="0" G="164" B="88" A="255"/>
<Vtx X="22" Y="-30" Z="4" S="-130" T="439" R="55" G="181" B="87" A="255"/>
<Vtx X="22" Y="-30" Z="4" S="85" T="-529" R="55" G="181" B="87" A="255"/>
<Vtx X="0" Y="-37" Z="4" S="-15" T="-529" R="0" G="164" B="88" A="255"/>
<Vtx X="0" Y="-39" Z="0" S="-17" T="-273" R="0" G="129" B="0" A="255"/>
<Vtx X="23" Y="-32" Z="0" S="86" T="-273" R="74" G="153" B="0" A="255"/>
<Vtx X="0" Y="-34" Z="5" S="-275" T="451" R="0" G="229" B="124" A="255"/>
<Vtx X="-20" Y="-27" Z="5" S="-397" T="412" R="240" G="234" B="124" A="255"/>
<Vtx X="-22" Y="-30" Z="4" S="-414" T="439" R="202" G="181" B="87" A="255"/>
<Vtx X="0" Y="-37" Z="4" S="-276" T="484" R="0" G="164" B="88" A="255"/>
<Vtx X="0" Y="-37" Z="4" S="-19" T="-529" R="0" G="164" B="88" A="255"/>
<Vtx X="-22" Y="-30" Z="4" S="-117" T="-529" R="202" G="181" B="87" A="255"/>
<Vtx X="-23" Y="-32" Z="0" S="-119" T="-273" R="181" G="153" B="0" A="255"/>
<Vtx X="-33" Y="-9" Z="5" S="-481" T="297" R="226" G="249" B="123" A="255"/>
<Vtx X="-36" Y="-11" Z="4" S="-506" T="315" R="165" G="227" B="84" A="255"/>
<Vtx X="-22" Y="-30" Z="4" S="-419" T="436" R="202" G="181" B="87" A="255"/>
<Vtx X="-22" Y="-30" Z="4" S="-121" T="-529" R="202" G="181" B="87" A="255"/>
<Vtx X="-36" Y="-11" Z="4" S="-221" T="-529" R="165" G="227" B="84" A="255"/>
<Vtx X="-37" Y="-12" Z="0" S="-221" T="-273" R="135" G="216" B="255" A="255"/>
<Vtx X="-33" Y="8" Z="5" S="-481" T="189" R="226" G="5" B="123" A="255"/>
<Vtx X="-36" Y="11" Z="4" S="-506" T="171" R="166" G="27" B="86" A="255"/>
<Vtx X="-36" Y="-11" Z="4" S="-506" T="310" R="165" G="227" B="84" A="255"/>
<Vtx X="-36" Y="-11" Z="4" S="-225" T="-529" R="165" G="227" B="84" A="255"/>
<Vtx X="-36" Y="11" Z="4" S="-319" T="-529" R="166" G="27" B="86" A="255"/>
<Vtx X="-37" Y="12" Z="0" S="-324" T="-273" R="136" G="41" B="0" A="255"/>
<Vtx X="0" Y="39" Z="0" S="-529" T="-273" R="0" G="127" B="0" A="255"/>
<Vtx X="-23" Y="32" Z="0" S="-426" T="-273" R="181" G="103" B="1" A="255"/>
<Vtx X="-22" Y="30" Z="4" S="-430" T="-529" R="203" G="74" B="89" A="255"/>
<Vtx X="0" Y="37" Z="4" S="-526" T="-529" R="0" G="93" B="87" A="255"/>
<Vtx X="0" Y="37" Z="4" S="-275" T="-5" R="0" G="93" B="87" A="255"/>
<Vtx X="-22" Y="30" Z="4" S="-412" T="39" R="203" G="74" B="89" A="255"/>
<Vtx X="-19" Y="28" Z="5" S="-391" T="65" R="242" G="22" B="124" A="255"/>
<Vtx X="0" Y="34" Z="5" S="-273" T="27" R="0" G="28" B="124" A="255"/>
<Vtx X="-22" Y="30" Z="4" S="-418" T="42" R="203" G="74" B="89" A="255"/>
<Vtx X="-33" Y="8" Z="5" S="-481" T="189" R="226" G="5" B="123" A="255"/>
<Vtx X="-22" Y="30" Z="4" S="-418" T="42" R="203" G="74" B="89" A="255"/>
<Vtx X="-36" Y="11" Z="4" S="-506" T="164" R="166" G="27" B="86" A="255"/>
<Vtx X="-36" Y="11" Z="4" S="-324" T="-529" R="166" G="27" B="86" A="255"/>
<Vtx X="-22" Y="30" Z="4" S="-425" T="-529" R="203" G="74" B="89" A="255"/>
<Vtx X="-23" Y="32" Z="0" S="-426" T="-273" R="181" G="103" B="1" A="255"/>
<Vtx X="-37" Y="12" Z="0" S="-324" T="-273" R="136" G="41" B="0" A="255"/>
<Vtx X="0" Y="39" Z="0" S="495" T="-273" R="0" G="127" B="0" A="255"/>
<Vtx X="23" Y="32" Z="0" S="393" T="-273" R="75" G="103" B="0" A="255"/>
<Vtx X="22" Y="30" Z="-4" S="395" T="-17" R="54" G="75" B="169" A="255"/>
<Vtx X="0" Y="37" Z="-4" S="493" T="-17" R="0" G="93" B="169" A="255"/>
<Vtx X="0" Y="37" Z="-4" S="242" T="-5" R="0" G="93" B="169" A="255"/>
<Vtx X="22" Y="30" Z="-4" S="381" T="40" R="54" G="75" B="169" A="255"/>
<Vtx X="20" Y="27" Z="-5" S="364" T="67" R="16" G="22" B="132" A="255"/>
<Vtx X="0" Y="34" Z="-5" S="239" T="27" R="0" G="28" B="132" A="255"/>
<Vtx X="23" Y="32" Z="0" S="393" T="-273" R="75" G="103" B="0" A="255"/>
<Vtx X="37" Y="12" Z="0" S="291" T="-273" R="121" G="39" B="0" A="255"/>
<Vtx X="36" Y="12" Z="-4" S="293" T="-17" R="88" G="28" B="169" A="255"/>
<Vtx X="22" Y="30" Z="-4" S="391" T="-17" R="54" G="75" B="169" A="255"/>
<Vtx X="22" Y="30" Z="-4" S="386" T="43" R="54" G="75" B="169" A="255"/>
<Vtx X="36" Y="12" Z="-4" S="471" T="161" R="88" G="28" B="169" A="255"/>
<Vtx X="32" Y="10" Z="-5" S="442" T="174" R="27" G="8" B="132" A="255"/>
<Vtx X="37" Y="12" Z="0" S="291" T="-273" R="121" G="39" B="0" A="255"/>
<Vtx X="37" Y="-12" Z="0" S="188" T="-273" R="121" G="217" B="0" A="255"/>
<Vtx X="36" Y="-12" Z="-4" S="190" T="-17" R="88" G="228" B="169" A="255"/>
<Vtx X="36" Y="12" Z="-4" S="289" T="-17" R="88" G="28" B="169" A="255"/>
<Vtx X="36" Y="12" Z="-4" S="473" T="167" R="88" G="28" B="169" A="255"/>
<Vtx X="36" Y="-12" Z="-4" S="473" T="312" R="88" G="228" B="169" A="255"/>
<Vtx X="32" Y="-10" Z="-5" S="442" T="305" R="27" G="248" B="132" A="255"/>
<Vtx X="37" Y="-12" Z="0" S="188" T="-273" R="121" G="217" B="0" A="255"/>
<Vtx X="23" Y="-32" Z="0" S="86" T="-273" R="74" G="153" B="0" A="255"/>
<Vtx X="22" Y="-30" Z="-4" S="88" T="-17" R="54" G="181" B="169" A="255"/>
<Vtx X="37" Y="-12" Z="0" S="188" T="-273" R="121" G="217" B="0" A="255"/>
<Vtx X="22" Y="-30" Z="-4" S="88" T="-17" R="54" G="181" B="169" A="255"/>
<Vtx X="36" Y="-12" Z="-4" S="186" T="-17" R="88" G="228" B="169" A="255"/>
<Vtx X="36" Y="-12" Z="-4" S="471" T="318" R="88" G="228" B="169" A="255"/>
<Vtx X="22" Y="-30" Z="-4" S="386" T="436" R="54" G="181" B="169" A="255"/>
<Vtx X="20" Y="-27" Z="-5" S="364" T="412" R="16" G="234" B="132" A="255"/>
<Vtx X="32" Y="-10" Z="-5" S="442" T="305" R="27" G="248" B="132" A="255"/>
<Vtx X="23" Y="-32" Z="0" S="86" T="-273" R="74" G="153" B="0" A="255"/>
<Vtx X="0" Y="-39" Z="0" S="-17" T="-273" R="0" G="129" B="0" A="255"/>
<Vtx X="0" Y="-37" Z="-4" S="-14" T="-17" R="0" G="163" B="169" A="255"/>
<Vtx X="22" Y="-30" Z="-4" S="84" T="-17" R="54" G="181" B="169" A="255"/>
<Vtx X="22" Y="-30" Z="-4" S="381" T="439" R="54" G="181" B="169" A="255"/>
<Vtx X="0" Y="-37" Z="-4" S="242" T="484" R="0" G="163" B="169" A="255"/>
<Vtx X="0" Y="-34" Z="-5" S="239" T="452" R="0" G="228" B="132" A="255"/>
<Vtx X="0" Y="-39" Z="0" S="-17" T="-273" R="0" G="129" B="0" A="255"/>
<Vtx X="-23" Y="-32" Z="0" S="-119" T="-273" R="181" G="153" B="0" A="255"/>
<Vtx X="-22" Y="-30" Z="-4" S="-117" T="-17" R="202" G="181" B="169" A="255"/>
<Vtx X="0" Y="-37" Z="-4" S="-19" T="-17" R="0" G="163" B="169" A="255"/>
<Vtx X="0" Y="-37" Z="-4" S="237" T="484" R="0" G="163" B="169" A="255"/>
<Vtx X="-22" Y="-30" Z="-4" S="98" T="439" R="202" G="181" B="169" A="255"/>
<Vtx X="-20" Y="-27" Z="-5" S="115" T="412" R="240" G="234" B="132" A="255"/>
<Vtx X="-23" Y="-32" Z="0" S="-119" T="-273" R="181" G="153" B="0" A="255"/>
<Vtx X="-37" Y="-12" Z="0" S="-221" T="-273" R="135" G="216" B="255" A="255"/>
<Vtx X="-36" Y="-12" Z="-4" S="-219" T="-17" R="168" G="228" B="169" A="255"/>
<Vtx X="-22" Y="-30" Z="-4" S="-121" T="-17" R="202" G="181" B="169" A="255"/>
<Vtx X="-22" Y="-30" Z="-4" S="93" T="436" R="202" G="181" B="169" A="255"/>
<Vtx X="-36" Y="-12" Z="-4" S="8" T="318" R="168" G="228" B="169" A="255"/>
<Vtx X="-32" Y="-10" Z="-5" S="37" T="305" R="229" G="248" B="132" A="255"/>
<Vtx X="-37" Y="-12" Z="0" S="-221" T="-273" R="135" G="216" B="255" A="255"/>
<Vtx X="-37" Y="12" Z="0" S="-324" T="-273" R="136" G="41" B="0" A="255"/>
<Vtx X="-36" Y="12" Z="-4" S="-322" T="-17" R="168" G="28" B="169" A="255"/>
<Vtx X="-36" Y="-12" Z="-4" S="-223" T="-17" R="168" G="228" B="169" A="255"/>
<Vtx X="-36" Y="-12" Z="-4" S="6" T="312" R="168" G="228" B="169" A="255"/>
<Vtx X="-36" Y="12" Z="-4" S="6" T="167" R="168" G="28" B="169" A="255"/>
<Vtx X="-32" Y="10" Z="-5" S="37" T="174" R="229" G="8" B="132" A="255"/>
<Vtx X="-32" Y="-10" Z="-5" S="37" T="305" R="229" G="248" B="132" A="255"/>
<Vtx X="-37" Y="12" Z="0" S="-324" T="-273" R="136" G="41" B="0" A="255"/>
<Vtx X="-23" Y="32" Z="0" S="-426" T="-273" R="181" G="103" B="1" A="255"/>
<Vtx X="-22" Y="30" Z="-4" S="-424" T="-17" R="202" G="75" B="169" A="255"/>
<Vtx X="-36" Y="12" Z="-4" S="-326" T="-17" R="168" G="28" B="169" A="255"/>
<Vtx X="-36" Y="12" Z="-4" S="8" T="161" R="168" G="28" B="169" A="255"/>
<Vtx X="-22" Y="30" Z="-4" S="93" T="43" R="202" G="75" B="169" A="255"/>
<Vtx X="-20" Y="27" Z="-5" S="115" T="67" R="240" G="22" B="132" A="255"/>
<Vtx X="0" Y="34" Z="-5" S="239" T="27" R="0" G="28" B="132" A="255"/>
<Vtx X="-22" Y="30" Z="-4" S="98" T="40" R="202" G="75" B="169" A="255"/>
<Vtx X="0" Y="37" Z="-4" S="237" T="-5" R="0" G="93" B="169" A="255"/>
<Vtx X="0" Y="37" Z="-4" S="-526" T="-17" R="0" G="93" B="169" A="255"/>
<Vtx X="-22" Y="30" Z="-4" S="-428" T="-17" R="202" G="75" B="169" A="255"/>
<Vtx X="-23" Y="32" Z="0" S="-426" T="-273" R="181" G="103" B="1" A="255"/>
<Vtx X="0" Y="39" Z="0" S="-529" T="-273" R="0" G="127" B="0" A="255"/>
</Vertex>

View File

@ -0,0 +1,10 @@
<Vertex Version="0">
<Vtx X="-37" Y="-39" Z="-5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="-37" Y="-39" Z="5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="-37" Y="39" Z="5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="-37" Y="39" Z="-5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="37" Y="-39" Z="-5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="37" Y="-39" Z="5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="37" Y="39" Z="5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="37" Y="39" Z="-5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
</Vertex>

View File

@ -0,0 +1,21 @@
<DisplayList Version="0">
<PipeSync/>
<SetCombineLERP A0="G_CCMUX_TEXEL0" B0="G_CCMUX_0" C0="G_CCMUX_SHADE" D0="G_CCMUX_0" Aa0="G_ACMUX_0" Ab0="G_ACMUX_0" Ac0="G_ACMUX_0" Ad0="G_ACMUX_1" A1="G_CCMUX_COMBINED" B1="G_CCMUX_0" C1="G_CCMUX_PRIMITIVE" D1="G_CCMUX_0" Aa1="G_ACMUX_0" Ab1="G_ACMUX_0" Ac1="G_ACMUX_0" Ad1="G_ACMUX_COMBINED"/>
<SetGeometryMode G_ZBUFFER="1" G_SHADE="1" G_CULL_BACK="1" G_FOG="1" G_LIGHTING="1" G_TEXTURE_GEN="1" G_SHADING_SMOOTH="1" />
<SetOtherMode Cmd="G_SETOTHERMODE_H" Sft="4" Length="20" G_AD_NOISE="1" G_CD_MAGICSQ="1" G_CK_NONE="1" G_TC_FILT="1" G_TF_BILERP="1" G_TL_TILE="1" G_TD_CLAMP="1" G_TP_PERSP="1" G_CYC_2CYCLE="1" G_PM_NPRIMITIVE="1" />
<SetOtherMode Cmd="G_SETOTHERMODE_L" Sft="0" Length="32" G_AC_NONE="1" G_ZS_PIXEL="1" G_RM_FOG_SHADE_A="1" G_RM_AA_ZB_OPA_SURF2="1" />
<Texture S="1984" T="1984" Level="0" Tile="0" On="1"/>
<SetTextureLUT Mode="G_TT_NONE"/>
<TileSync/>
<SetTextureImage Path="objects/object_ocarina_c_left_button/noise_tex" Format="G_IM_FMT_I" Size="G_IM_SIZ_8b_LOAD_BLOCK" Width="1"/>
<SetTile Format="G_IM_FMT_I" Size="G_IM_SIZ_8b_LOAD_BLOCK" Line="0" TMem="0" Tile="7" Palette="0" Cms0="G_TX_WRAP" Cms1="G_TX_NOMIRROR" Cmt0="G_TX_WRAP" Cmt1="G_TX_NOMIRROR" MaskS="5" ShiftS="0" MaskT="5" ShiftT="0"/>
<LoadSync/>
<LoadBlock Tile="7" Uls="0" Ult="0" Lrs="511" Dxt="512"/>
<PipeSync/>
<SetTile Format="G_IM_FMT_I" Size="G_IM_SIZ_8b" Line="4" TMem="0" Tile="0" Palette="0" Cms0="G_TX_WRAP" Cms1="G_TX_NOMIRROR" Cmt0="G_TX_WRAP" Cmt1="G_TX_NOMIRROR" MaskS="5" ShiftS="0" MaskT="5" ShiftT="0"/>
<SetTileSize T="0" Uls="0" Ult="0" Lrs="124" Lrt="124"/>
<SetPrimColor M="0" L="0" R="255" G="160" B="0" A="255"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,21 @@
<DisplayList Version="0">
<PipeSync/>
<SetCombineLERP A0="G_CCMUX_TEXEL0" B0="G_CCMUX_0" C0="G_CCMUX_SHADE" D0="G_CCMUX_0" Aa0="G_ACMUX_0" Ab0="G_ACMUX_0" Ac0="G_ACMUX_0" Ad0="G_ACMUX_1" A1="G_CCMUX_COMBINED" B1="G_CCMUX_0" C1="G_CCMUX_PRIMITIVE" D1="G_CCMUX_0" Aa1="G_ACMUX_0" Ab1="G_ACMUX_0" Ac1="G_ACMUX_0" Ad1="G_ACMUX_COMBINED"/>
<SetGeometryMode G_ZBUFFER="1" G_SHADE="1" G_CULL_BACK="1" G_FOG="1" G_LIGHTING="1" G_TEXTURE_GEN="1" G_SHADING_SMOOTH="1" />
<SetOtherMode Cmd="G_SETOTHERMODE_H" Sft="4" Length="20" G_AD_NOISE="1" G_CD_MAGICSQ="1" G_CK_NONE="1" G_TC_FILT="1" G_TF_BILERP="1" G_TL_TILE="1" G_TD_CLAMP="1" G_TP_PERSP="1" G_CYC_2CYCLE="1" G_PM_NPRIMITIVE="1" />
<SetOtherMode Cmd="G_SETOTHERMODE_L" Sft="0" Length="32" G_AC_NONE="1" G_ZS_PIXEL="1" G_RM_FOG_SHADE_A="1" G_RM_AA_ZB_OPA_SURF2="1" />
<Texture S="2621" T="1311" Level="0" Tile="0" On="1"/>
<SetTextureLUT Mode="G_TT_NONE"/>
<TileSync/>
<SetTextureImage Path="objects/object_ocarina_c_left_button/noise_tex" Format="G_IM_FMT_I" Size="G_IM_SIZ_8b_LOAD_BLOCK" Width="1"/>
<SetTile Format="G_IM_FMT_I" Size="G_IM_SIZ_8b_LOAD_BLOCK" Line="0" TMem="0" Tile="7" Palette="0" Cms0="G_TX_WRAP" Cms1="G_TX_NOMIRROR" Cmt0="G_TX_WRAP" Cmt1="G_TX_NOMIRROR" MaskS="5" ShiftS="0" MaskT="5" ShiftT="0"/>
<LoadSync/>
<LoadBlock Tile="7" Uls="0" Ult="0" Lrs="511" Dxt="512"/>
<PipeSync/>
<SetTile Format="G_IM_FMT_I" Size="G_IM_SIZ_8b" Line="4" TMem="0" Tile="0" Palette="0" Cms0="G_TX_WRAP" Cms1="G_TX_NOMIRROR" Cmt0="G_TX_WRAP" Cmt1="G_TX_NOMIRROR" MaskS="5" ShiftS="0" MaskT="5" ShiftT="0"/>
<SetTileSize T="0" Uls="0" Ult="0" Lrs="124" Lrt="124"/>
<SetPrimColor M="0" L="0" R="170" G="107" B="0" A="255"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,16 @@
<DisplayList Version="0">
<ClearGeometryMode G_LIGHTING="1" />
<LoadVertices Path="objects/object_ocarina_c_right_button/gOcarinaCRightButtonDL_vtx_cull" VertexBufferIndex="0" VertexOffset="0" Count="8"/>
<CullDisplayList Start="0" End="7"/>
<CallDisplayList Path="objects/object_ocarina_c_right_button/mat_gOcarinaCRightButtonDL_f3dlite_ocarina_C_button_surface"/>
<CallDisplayList Path="objects/object_ocarina_c_right_button/gOcarinaCRightButtonDL_tri_0"/>
<CallDisplayList Path="objects/object_ocarina_c_right_button/mat_gOcarinaCRightButtonDL_f3dlite_ocarina_C_button_edge"/>
<CallDisplayList Path="objects/object_ocarina_c_right_button/gOcarinaCRightButtonDL_tri_1"/>
<PipeSync/>
<SetGeometryMode G_LIGHTING="1" />
<ClearGeometryMode G_TEXTURE_GEN="1" />
<SetCombineLERP A0="G_CCMUX_0" B0="G_CCMUX_0" C0="G_CCMUX_0" D0="G_CCMUX_SHADE" Aa0="G_ACMUX_0" Ab0="G_ACMUX_0" Ac0="G_ACMUX_0" Ad0="G_ACMUX_ENVIRONMENT" A1="G_CCMUX_0" B1="G_CCMUX_0" C1="G_CCMUX_0" D1="G_CCMUX_SHADE" Aa1="G_ACMUX_0" Ab1="G_ACMUX_0" Ac1="G_ACMUX_0" Ad1="G_ACMUX_ENVIRONMENT"/>
<Texture S="65535" T="65535" Level="0" Tile="0" On="0"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,28 @@
<DisplayList Version="0">
<LoadVertices Path="objects/object_ocarina_c_right_button/gOcarinaCRightButtonDL_vtx_0" VertexBufferIndex="0" VertexOffset="0" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="3" V11="4" V12="5" Flag1="0"/>
<Triangles2 V00="6" V01="3" V02="5" Flag0="0" V10="5" V11="7" V12="6" Flag1="0"/>
<Triangles2 V00="5" V01="8" V02="7" Flag0="0" V10="7" V11="9" V12="6" Flag1="0"/>
<Triangles2 V00="10" V01="11" V02="12" Flag0="0" V10="13" V11="10" V12="12" Flag1="0"/>
<Triangles2 V00="12" V01="14" V02="13" Flag0="0" V10="12" V11="15" V12="14" Flag1="0"/>
<Triangles2 V00="14" V01="16" V02="13" Flag0="0" V10="17" V11="1" V12="18" Flag1="0"/>
<Triangles2 V00="18" V01="1" V02="8" Flag0="0" V10="19" V11="20" V12="21" Flag1="0"/>
<Triangles2 V00="22" V01="21" V02="20" Flag0="0" V10="22" V11="20" V12="23" Flag1="0"/>
<Triangles2 V00="24" V01="22" V02="23" Flag0="0" V10="24" V11="23" V12="25" Flag1="0"/>
<Triangles2 V00="25" V01="26" V02="24" Flag0="0" V10="26" V11="27" V12="24" Flag1="0"/>
<Triangles2 V00="27" V01="28" V02="24" Flag0="0" V10="27" V11="29" V12="28" Flag1="0"/>
<Triangles2 V00="30" V01="28" V02="29" Flag0="0" V10="30" V11="29" V12="31" Flag1="0"/>
<LoadVertices Path="objects/object_ocarina_c_right_button/gOcarinaCRightButtonDL_vtx_0" VertexBufferIndex="0" VertexOffset="32" Count="26"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="1" V11="3" V12="2" Flag1="0"/>
<Triangles2 V00="0" V01="2" V02="4" Flag0="0" V10="5" V11="0" V12="4" Flag1="0"/>
<Triangles2 V00="5" V01="4" V02="6" Flag0="0" V10="6" V11="7" V12="5" Flag1="0"/>
<Triangles2 V00="7" V01="8" V02="5" Flag0="0" V10="7" V11="9" V12="8" Flag1="0"/>
<Triangles2 V00="9" V01="10" V02="8" Flag0="0" V10="10" V11="11" V12="8" Flag1="0"/>
<Triangles2 V00="5" V01="12" V02="0" Flag0="0" V10="13" V11="14" V12="15" Flag1="0"/>
<Triangles2 V00="16" V01="17" V02="18" Flag0="0" V10="16" V11="18" V12="19" Flag1="0"/>
<Triangles2 V00="18" V01="20" V02="19" Flag0="0" V10="19" V11="21" V12="16" Flag1="0"/>
<Triangles2 V00="19" V01="22" V02="21" Flag0="0" V10="19" V11="23" V12="22" Flag1="0"/>
<Triangles2 V00="22" V01="24" V02="21" Flag0="0" V10="21" V11="25" V12="16" Flag1="0"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,93 @@
<DisplayList Version="0">
<LoadVertices Path="objects/object_ocarina_c_right_button/gOcarinaCRightButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="0" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="4" V01="0" V02="3" Flag0="0" V10="4" V11="5" V12="0" Flag1="0"/>
<Triangles2 V00="6" V01="7" V02="8" Flag0="0" V10="6" V11="8" V12="9" Flag1="0"/>
<Triangles2 V00="6" V01="9" V02="10" Flag0="0" V10="6" V11="10" V12="11" Flag1="0"/>
<Triangles2 V00="12" V01="13" V02="14" Flag0="0" V10="12" V11="14" V12="15" Flag1="0"/>
<Triangles2 V00="15" V01="14" V02="16" Flag0="0" V10="15" V11="16" V12="17" Flag1="0"/>
<Triangles2 V00="18" V01="19" V02="20" Flag0="0" V10="18" V11="20" V12="21" Flag1="0"/>
<Triangles2 V00="22" V01="21" V02="20" Flag0="0" V10="22" V11="23" V12="21" Flag1="0"/>
<Triangles2 V00="24" V01="18" V02="25" Flag0="0" V10="24" V11="25" V12="26" Flag1="0"/>
<Triangles2 V00="26" V01="25" V02="27" Flag0="0" V10="26" V11="27" V12="28" Flag1="0"/>
<Triangles2 V00="29" V01="12" V02="30" Flag0="0" V10="29" V11="30" V12="31" Flag1="0"/>
<Triangle1 V00="31" V01="30" V02="17"/>
<LoadVertices Path="objects/object_ocarina_c_right_button/gOcarinaCRightButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="32" Count="30"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="2" V11="3" V12="0" Flag1="0"/>
<Triangles2 V00="2" V01="4" V02="3" Flag0="0" V10="5" V11="0" V12="3" Flag1="0"/>
<Triangles2 V00="5" V01="6" V02="0" Flag0="0" V10="7" V11="8" V12="9" Flag1="0"/>
<Triangles2 V00="7" V01="9" V02="10" Flag0="0" V10="11" V11="7" V12="10" Flag1="0"/>
<Triangles2 V00="11" V01="12" V02="7" Flag0="0" V10="13" V11="14" V12="15" Flag1="0"/>
<Triangles2 V00="13" V01="15" V02="16" Flag0="0" V10="16" V11="15" V12="17" Flag1="0"/>
<Triangles2 V00="16" V01="17" V02="18" Flag0="0" V10="18" V11="17" V12="19" Flag1="0"/>
<Triangles2 V00="18" V01="19" V02="20" Flag0="0" V10="18" V11="20" V12="21" Flag1="0"/>
<Triangles2 V00="18" V01="21" V02="22" Flag0="0" V10="16" V11="18" V12="23" Flag1="0"/>
<Triangles2 V00="16" V01="23" V02="24" Flag0="0" V10="24" V11="13" V12="16" Flag1="0"/>
<Triangles2 V00="24" V01="25" V02="13" Flag0="0" V10="26" V11="9" V12="27" Flag1="0"/>
<Triangles2 V00="26" V01="27" V02="28" Flag0="0" V10="26" V11="28" V12="29" Flag1="0"/>
<Triangle1 V00="26" V01="29" V02="11"/>
<LoadVertices Path="objects/object_ocarina_c_right_button/gOcarinaCRightButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="62" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="3" V12="1" Flag1="0"/>
<Triangles2 V00="0" V01="4" V02="3" Flag0="0" V10="0" V11="5" V12="4" Flag1="0"/>
<Triangles2 V00="6" V01="7" V02="8" Flag0="0" V10="6" V11="9" V12="7" Flag1="0"/>
<Triangles2 V00="10" V01="7" V02="9" Flag0="0" V10="10" V11="9" V12="11" Flag1="0"/>
<Triangles2 V00="11" V01="12" V02="10" Flag0="0" V10="11" V11="13" V12="12" Flag1="0"/>
<Triangles2 V00="13" V01="14" V02="12" Flag0="0" V10="13" V11="15" V12="14" Flag1="0"/>
<Triangles2 V00="16" V01="14" V02="15" Flag0="0" V10="16" V11="15" V12="17" Flag1="0"/>
<Triangles2 V00="17" V01="18" V02="16" Flag0="0" V10="17" V11="19" V12="18" Flag1="0"/>
<Triangles2 V00="20" V01="21" V02="18" Flag0="0" V10="20" V11="22" V12="21" Flag1="0"/>
<Triangles2 V00="22" V01="23" V02="21" Flag0="0" V10="22" V11="24" V12="23" Flag1="0"/>
<Triangles2 V00="25" V01="23" V02="24" Flag0="0" V10="25" V11="24" V12="26" Flag1="0"/>
<Triangles2 V00="27" V01="25" V02="26" Flag0="0" V10="27" V11="26" V12="28" Flag1="0"/>
<Triangles2 V00="28" V01="29" V02="27" Flag0="0" V10="28" V11="30" V12="29" Flag1="0"/>
<Triangle1 V00="30" V01="31" V02="29"/>
<LoadVertices Path="objects/object_ocarina_c_right_button/gOcarinaCRightButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="94" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="3" V11="2" V12="4" Flag1="0"/>
<Triangles2 V00="3" V01="4" V02="5" Flag0="0" V10="6" V11="7" V12="8" Flag1="0"/>
<Triangles2 V00="6" V01="8" V02="9" Flag0="0" V10="10" V11="11" V12="12" Flag1="0"/>
<Triangles2 V00="10" V01="12" V02="13" Flag0="0" V10="7" V11="14" V12="15" Flag1="0"/>
<Triangles2 V00="7" V01="15" V02="16" Flag0="0" V10="17" V11="18" V12="19" Flag1="0"/>
<Triangles2 V00="17" V01="19" V02="12" Flag0="0" V10="14" V11="20" V12="21" Flag1="0"/>
<Triangles2 V00="14" V01="21" V02="22" Flag0="0" V10="23" V11="24" V12="25" Flag1="0"/>
<Triangles2 V00="23" V01="25" V02="19" Flag0="0" V10="20" V11="26" V12="27" Flag1="0"/>
<Triangles2 V00="20" V01="27" V02="28" Flag0="0" V10="29" V11="30" V12="31" Flag1="0"/>
<Triangle1 V00="29" V01="31" V02="25"/>
<LoadVertices Path="objects/object_ocarina_c_right_button/gOcarinaCRightButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="126" Count="30"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="4" V01="5" V02="6" Flag0="0" V10="4" V11="6" V12="7" Flag1="0"/>
<Triangles2 V00="1" V01="8" V02="9" Flag0="0" V10="1" V11="9" V12="10" Flag1="0"/>
<Triangles2 V00="11" V01="12" V02="13" Flag0="0" V10="11" V11="13" V12="6" Flag1="0"/>
<Triangles2 V00="8" V01="14" V02="15" Flag0="0" V10="8" V11="15" V12="16" Flag1="0"/>
<Triangles2 V00="17" V01="18" V02="19" Flag0="0" V10="17" V11="19" V12="13" Flag1="0"/>
<Triangles2 V00="14" V01="20" V02="21" Flag0="0" V10="14" V11="21" V12="22" Flag1="0"/>
<Triangles2 V00="23" V01="24" V02="25" Flag0="0" V10="23" V11="25" V12="19" Flag1="0"/>
<Triangles2 V00="26" V01="27" V02="28" Flag0="0" V10="26" V11="28" V12="29" Flag1="0"/>
<LoadVertices Path="objects/object_ocarina_c_right_button/gOcarinaCRightButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="156" Count="30"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="4" V01="2" V02="5" Flag0="0" V10="4" V11="5" V12="6" Flag1="0"/>
<Triangles2 V00="7" V01="8" V02="9" Flag0="0" V10="7" V11="9" V12="10" Flag1="0"/>
<Triangles2 V00="11" V01="12" V02="13" Flag0="0" V10="11" V11="13" V12="14" Flag1="0"/>
<Triangles2 V00="15" V01="16" V02="17" Flag0="0" V10="15" V11="17" V12="18" Flag1="0"/>
<Triangles2 V00="19" V01="20" V02="21" Flag0="0" V10="19" V11="21" V12="22" Flag1="0"/>
<Triangles2 V00="23" V01="24" V02="25" Flag0="0" V10="23" V11="25" V12="17" Flag1="0"/>
<Triangles2 V00="26" V01="27" V02="28" Flag0="0" V10="26" V11="28" V12="29" Flag1="0"/>
<LoadVertices Path="objects/object_ocarina_c_right_button/gOcarinaCRightButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="186" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="4" V01="5" V02="6" Flag0="0" V10="4" V11="6" V12="7" Flag1="0"/>
<Triangles2 V00="8" V01="9" V02="10" Flag0="0" V10="8" V11="10" V12="2" Flag1="0"/>
<Triangles2 V00="11" V01="12" V02="13" Flag0="0" V10="11" V11="13" V12="14" Flag1="0"/>
<Triangles2 V00="15" V01="16" V02="17" Flag0="0" V10="15" V11="17" V12="10" Flag1="0"/>
<Triangles2 V00="18" V01="19" V02="20" Flag0="0" V10="18" V11="20" V12="21" Flag1="0"/>
<Triangles2 V00="22" V01="23" V02="24" Flag0="0" V10="22" V11="24" V12="17" Flag1="0"/>
<Triangles2 V00="25" V01="26" V02="27" Flag0="0" V10="25" V11="27" V12="28" Flag1="0"/>
<Triangles2 V00="29" V01="30" V02="31" Flag0="0" V10="29" V11="31" V12="24" Flag1="0"/>
<LoadVertices Path="objects/object_ocarina_c_right_button/gOcarinaCRightButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="218" Count="22"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="4" V01="5" V02="6" Flag0="0" V10="4" V11="6" V12="7" Flag1="0"/>
<Triangles2 V00="8" V01="9" V02="10" Flag0="0" V10="8" V11="10" V12="11" Flag1="0"/>
<Triangles2 V00="12" V01="13" V02="14" Flag0="0" V10="12" V11="14" V12="6" Flag1="0"/>
<Triangles2 V00="15" V01="14" V02="16" Flag0="0" V10="15" V11="16" V12="17" Flag1="0"/>
<Triangles2 V00="18" V01="19" V02="20" Flag0="0" V10="18" V11="20" V12="21" Flag1="0"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,60 @@
<Vertex Version="0">
<Vtx X="23" Y="6" Z="2" S="13" T="-487" R="52" G="77" B="86" A="255"/>
<Vtx X="22" Y="0" Z="2" S="16" T="-480" R="0" G="0" B="127" A="255"/>
<Vtx X="27" Y="2" Z="2" S="15" T="-482" R="90" G="41" B="79" A="255"/>
<Vtx X="-16" Y="-19" Z="2" S="-16" T="-360" R="177" G="197" B="81" A="255"/>
<Vtx X="-12" Y="-22" Z="2" S="-7" T="-317" R="239" G="159" B="81" A="255"/>
<Vtx X="-6" Y="-20" Z="2" S="-16" T="-345" R="30" G="168" B="86" A="255"/>
<Vtx X="-18" Y="-13" Z="2" S="-16" T="-416" R="163" G="244" B="86" A="255"/>
<Vtx X="22" Y="0" Z="2" S="112" T="-288" R="0" G="0" B="127" A="255"/>
<Vtx X="23" Y="-6" Z="2" S="-16" T="-487" R="52" G="179" B="86" A="255"/>
<Vtx X="-18" Y="0" Z="2" S="112" T="-288" R="166" G="0" B="90" A="255"/>
<Vtx X="-16" Y="19" Z="2" S="204" T="-296" R="177" G="59" B="81" A="255"/>
<Vtx X="-18" Y="13" Z="2" S="176" T="-288" R="163" G="12" B="86" A="255"/>
<Vtx X="-18" Y="0" Z="2" S="112" T="-480" R="166" G="0" B="90" A="255"/>
<Vtx X="-12" Y="22" Z="2" S="217" T="-317" R="239" G="97" B="81" A="255"/>
<Vtx X="23" Y="6" Z="2" S="141" T="-288" R="52" G="77" B="86" A="255"/>
<Vtx X="22" Y="0" Z="2" S="112" T="-480" R="0" G="0" B="127" A="255"/>
<Vtx X="-6" Y="20" Z="2" S="211" T="-307" R="30" G="88" B="86" A="255"/>
<Vtx X="27" Y="2" Z="2" S="2" T="-508" R="90" G="41" B="79" A="255"/>
<Vtx X="27" Y="-2" Z="2" S="-16" T="-511" R="90" G="215" B="79" A="255"/>
<Vtx X="26" Y="8" Z="5" S="21" T="-80" R="243" G="238" B="125" A="255"/>
<Vtx X="30" Y="5" Z="5" S="44" T="-61" R="242" G="248" B="126" A="255"/>
<Vtx X="33" Y="8" Z="5" S="64" T="-82" R="30" G="5" B="123" A="255"/>
<Vtx X="33" Y="-9" Z="5" S="64" T="26" R="30" G="249" B="123" A="255"/>
<Vtx X="30" Y="-4" Z="5" S="44" T="-7" R="234" G="11" B="125" A="255"/>
<Vtx X="20" Y="-27" Z="5" S="-19" T="140" R="16" G="234" B="124" A="255"/>
<Vtx X="25" Y="-8" Z="5" S="12" T="21" R="243" G="20" B="125" A="255"/>
<Vtx X="-5" Y="-23" Z="5" S="-176" T="115" R="248" G="23" B="125" A="255"/>
<Vtx X="-13" Y="-25" Z="5" S="-227" T="125" R="4" G="21" B="125" A="255"/>
<Vtx X="-20" Y="-27" Z="5" S="-273" T="137" R="239" G="234" B="124" A="255"/>
<Vtx X="-18" Y="-22" Z="5" S="-257" T="107" R="13" G="11" B="126" A="255"/>
<Vtx X="-32" Y="-11" Z="5" S="-346" T="36" R="229" G="247" B="124" A="255"/>
<Vtx X="-21" Y="-11" Z="5" S="-276" T="39" R="26" G="2" B="124" A="255"/>
<Vtx X="-32" Y="-11" Z="5" S="-346" T="36" R="229" G="247" B="124" A="255"/>
<Vtx X="-21" Y="-11" Z="5" S="-276" T="39" R="26" G="2" B="124" A="255"/>
<Vtx X="-21" Y="14" Z="5" S="-276" T="-118" R="24" G="253" B="125" A="255"/>
<Vtx X="-21" Y="0" Z="5" S="-276" T="-32" R="24" G="0" B="125" A="255"/>
<Vtx X="-19" Y="21" Z="5" S="-263" T="-164" R="18" G="242" B="125" A="255"/>
<Vtx X="-20" Y="27" Z="5" S="-269" T="-204" R="240" G="22" B="124" A="255"/>
<Vtx X="-13" Y="25" Z="5" S="-223" T="-189" R="4" G="233" B="125" A="255"/>
<Vtx X="-5" Y="23" Z="5" S="-176" T="-179" R="248" G="233" B="125" A="255"/>
<Vtx X="0" Y="34" Z="5" S="-144" T="-245" R="0" G="28" B="124" A="255"/>
<Vtx X="26" Y="8" Z="5" S="21" T="-80" R="243" G="238" B="125" A="255"/>
<Vtx X="33" Y="8" Z="5" S="64" T="-82" R="30" G="5" B="123" A="255"/>
<Vtx X="19" Y="28" Z="5" S="-26" T="-206" R="14" G="22" B="124" A="255"/>
<Vtx X="-32" Y="10" Z="5" S="-346" T="-98" R="229" G="8" B="124" A="255"/>
<Vtx X="-20" Y="-27" Z="5" S="-273" T="137" R="239" G="234" B="124" A="255"/>
<Vtx X="0" Y="-34" Z="5" S="-142" T="180" R="0" G="229" B="124" A="255"/>
<Vtx X="20" Y="-27" Z="5" S="-19" T="140" R="16" G="234" B="124" A="255"/>
<Vtx X="-32" Y="10" Z="-5" S="166" T="-98" R="229" G="8" B="132" A="255"/>
<Vtx X="-20" Y="27" Z="-5" S="243" T="-204" R="240" G="22" B="132" A="255"/>
<Vtx X="0" Y="34" Z="-5" S="368" T="-245" R="0" G="28" B="132" A="255"/>
<Vtx X="32" Y="10" Z="-5" S="570" T="-98" R="27" G="8" B="132" A="255"/>
<Vtx X="20" Y="27" Z="-5" S="493" T="-204" R="16" G="22" B="132" A="255"/>
<Vtx X="-20" Y="-27" Z="-5" S="243" T="140" R="240" G="234" B="132" A="255"/>
<Vtx X="20" Y="-27" Z="-5" S="493" T="140" R="16" G="234" B="132" A="255"/>
<Vtx X="32" Y="-10" Z="-5" S="570" T="34" R="27" G="248" B="132" A="255"/>
<Vtx X="0" Y="-34" Z="-5" S="368" T="181" R="0" G="228" B="132" A="255"/>
<Vtx X="-32" Y="-10" Z="-5" S="166" T="34" R="229" G="248" B="132" A="255"/>
</Vertex>

View File

@ -0,0 +1,242 @@
<Vertex Version="0">
<Vtx X="-18" Y="0" Z="2" S="-17" T="-26" R="232" G="0" B="125" A="255"/>
<Vtx X="-18" Y="0" Z="2" S="-17" T="-17" R="166" G="0" B="90" A="255"/>
<Vtx X="-18" Y="13" Z="2" S="-17" T="-17" R="163" G="12" B="86" A="255"/>
<Vtx X="-18" Y="13" Z="2" S="-17" T="-26" R="242" G="1" B="126" A="255"/>
<Vtx X="-19" Y="13" Z="4" S="-17" T="84" R="87" G="245" B="92" A="255"/>
<Vtx X="-19" Y="0" Z="4" S="-17" T="84" R="90" G="0" B="90" A="255"/>
<Vtx X="-16" Y="19" Z="2" S="102" T="-17" R="2" G="254" B="127" A="255"/>
<Vtx X="-16" Y="19" Z="2" S="111" T="-17" R="177" G="59" B="81" A="255"/>
<Vtx X="-12" Y="22" Z="2" S="111" T="-49" R="239" G="97" B="81" A="255"/>
<Vtx X="-12" Y="22" Z="2" S="102" T="-49" R="0" G="253" B="127" A="255"/>
<Vtx X="-12" Y="23" Z="4" S="212" T="-49" R="14" G="177" B="98" A="255"/>
<Vtx X="-17" Y="20" Z="4" S="212" T="-17" R="65" G="208" B="98" A="255"/>
<Vtx X="-12" Y="-22" Z="2" S="-145" T="-49" R="239" G="159" B="81" A="255"/>
<Vtx X="-16" Y="-19" Z="2" S="-145" T="-17" R="177" G="197" B="81" A="255"/>
<Vtx X="-16" Y="-19" Z="2" S="-135" T="-17" R="12" G="247" B="126" A="255"/>
<Vtx X="-12" Y="-22" Z="2" S="-135" T="-49" R="251" G="2" B="127" A="255"/>
<Vtx X="-17" Y="-20" Z="4" S="-245" T="-17" R="68" G="48" B="96" A="255"/>
<Vtx X="-12" Y="-23" Z="4" S="-245" T="-49" R="13" G="77" B="100" A="255"/>
<Vtx X="27" Y="-2" Z="2" S="-145" T="-239" R="90" G="215" B="79" A="255"/>
<Vtx X="23" Y="-6" Z="2" S="-145" T="-215" R="52" G="179" B="86" A="255"/>
<Vtx X="23" Y="-6" Z="2" S="-135" T="-215" R="8" G="244" B="126" A="255"/>
<Vtx X="27" Y="-2" Z="2" S="-135" T="-239" R="244" G="253" B="126" A="255"/>
<Vtx X="24" Y="-7" Z="4" S="-245" T="-215" R="208" G="73" B="92" A="255"/>
<Vtx X="28" Y="-3" Z="4" S="-245" T="-239" R="180" G="33" B="96" A="255"/>
<Vtx X="27" Y="2" Z="2" S="-145" T="-239" R="90" G="41" B="79" A="255"/>
<Vtx X="27" Y="-2" Z="2" S="-135" T="-236" R="244" G="253" B="126" A="255"/>
<Vtx X="27" Y="2" Z="2" S="-135" T="-236" R="243" G="9" B="126" A="255"/>
<Vtx X="28" Y="-3" Z="4" S="-245" T="-273" R="180" G="33" B="96" A="255"/>
<Vtx X="28" Y="3" Z="4" S="-245" T="-273" R="181" G="225" B="98" A="255"/>
<Vtx X="-6" Y="-20" Z="2" S="-145" T="-74" R="30" G="168" B="86" A="255"/>
<Vtx X="-12" Y="-22" Z="2" S="-135" T="-49" R="251" G="2" B="127" A="255"/>
<Vtx X="-6" Y="-20" Z="2" S="-135" T="-74" R="4" G="243" B="126" A="255"/>
<Vtx X="-6" Y="-20" Z="2" S="-135" T="-74" R="4" G="243" B="126" A="255"/>
<Vtx X="-12" Y="-23" Z="4" S="-245" T="-49" R="13" G="77" B="100" A="255"/>
<Vtx X="-6" Y="-21" Z="4" S="-245" T="-74" R="228" G="83" B="92" A="255"/>
<Vtx X="23" Y="-6" Z="2" S="-135" T="-215" R="8" G="244" B="126" A="255"/>
<Vtx X="24" Y="-7" Z="4" S="-245" T="-215" R="208" G="73" B="92" A="255"/>
<Vtx X="23" Y="-6" Z="2" S="-145" T="-215" R="52" G="179" B="86" A="255"/>
<Vtx X="-6" Y="-20" Z="2" S="-145" T="-74" R="30" G="168" B="86" A="255"/>
<Vtx X="-16" Y="-19" Z="2" S="-145" T="-26" R="12" G="247" B="126" A="255"/>
<Vtx X="-16" Y="-19" Z="2" S="-145" T="-17" R="177" G="197" B="81" A="255"/>
<Vtx X="-18" Y="-13" Z="2" S="-81" T="-17" R="163" G="244" B="86" A="255"/>
<Vtx X="-18" Y="-13" Z="2" S="-81" T="-26" R="244" G="7" B="126" A="255"/>
<Vtx X="-19" Y="-13" Z="4" S="-81" T="84" R="91" G="12" B="88" A="255"/>
<Vtx X="-17" Y="-20" Z="4" S="-145" T="84" R="68" G="48" B="96" A="255"/>
<Vtx X="-12" Y="22" Z="2" S="102" T="-49" R="0" G="253" B="127" A="255"/>
<Vtx X="-12" Y="22" Z="2" S="111" T="-49" R="239" G="97" B="81" A="255"/>
<Vtx X="-6" Y="20" Z="2" S="111" T="-74" R="30" G="88" B="86" A="255"/>
<Vtx X="-6" Y="20" Z="2" S="102" T="-74" R="4" G="13" B="126" A="255"/>
<Vtx X="23" Y="6" Z="2" S="111" T="-215" R="52" G="77" B="86" A="255"/>
<Vtx X="23" Y="6" Z="2" S="102" T="-215" R="13" G="11" B="126" A="255"/>
<Vtx X="27" Y="2" Z="2" S="111" T="-273" R="90" G="41" B="79" A="255"/>
<Vtx X="27" Y="2" Z="2" S="102" T="-273" R="243" G="9" B="126" A="255"/>
<Vtx X="28" Y="3" Z="4" S="212" T="-273" R="181" G="225" B="98" A="255"/>
<Vtx X="24" Y="6" Z="4" S="212" T="-219" R="209" G="185" B="94" A="255"/>
<Vtx X="24" Y="6" Z="4" S="212" T="-215" R="209" G="185" B="94" A="255"/>
<Vtx X="-6" Y="21" Z="4" S="212" T="-74" R="228" G="173" B="92" A="255"/>
<Vtx X="-12" Y="23" Z="4" S="212" T="-49" R="14" G="177" B="98" A="255"/>
<Vtx X="-18" Y="-13" Z="2" S="-81" T="-26" R="244" G="7" B="126" A="255"/>
<Vtx X="-18" Y="0" Z="2" S="-81" T="-17" R="166" G="0" B="90" A="255"/>
<Vtx X="-18" Y="0" Z="2" S="-81" T="-26" R="232" G="0" B="125" A="255"/>
<Vtx X="-19" Y="0" Z="4" S="-81" T="84" R="90" G="0" B="90" A="255"/>
<Vtx X="-18" Y="13" Z="2" S="47" T="-26" R="242" G="1" B="126" A="255"/>
<Vtx X="-17" Y="20" Z="4" S="111" T="84" R="65" G="208" B="98" A="255"/>
<Vtx X="-19" Y="13" Z="4" S="47" T="84" R="87" G="245" B="92" A="255"/>
<Vtx X="-16" Y="19" Z="2" S="111" T="-26" R="2" G="254" B="127" A="255"/>
<Vtx X="-16" Y="19" Z="2" S="111" T="-17" R="177" G="59" B="81" A="255"/>
<Vtx X="-18" Y="13" Z="2" S="47" T="-17" R="163" G="12" B="86" A="255"/>
<Vtx X="-19" Y="-13" Z="4" S="-385" T="319" R="91" G="12" B="88" A="255"/>
<Vtx X="-21" Y="0" Z="5" S="-404" T="239" R="24" G="0" B="125" A="255"/>
<Vtx X="-21" Y="-11" Z="5" S="-404" T="310" R="26" G="2" B="124" A="255"/>
<Vtx X="-19" Y="0" Z="4" S="-385" T="239" R="90" G="0" B="90" A="255"/>
<Vtx X="-21" Y="14" Z="5" S="-404" T="154" R="24" G="253" B="125" A="255"/>
<Vtx X="-19" Y="13" Z="4" S="-385" T="156" R="87" G="245" B="92" A="255"/>
<Vtx X="-19" Y="21" Z="5" S="-392" T="108" R="18" G="242" B="125" A="255"/>
<Vtx X="-17" Y="20" Z="4" S="-375" T="120" R="65" G="208" B="98" A="255"/>
<Vtx X="-13" Y="25" Z="5" S="-352" T="83" R="4" G="233" B="125" A="255"/>
<Vtx X="-12" Y="23" Z="4" S="-348" T="103" R="14" G="177" B="98" A="255"/>
<Vtx X="-5" Y="23" Z="5" S="-305" T="92" R="248" G="233" B="125" A="255"/>
<Vtx X="-6" Y="21" Z="4" S="-311" T="110" R="228" G="173" B="92" A="255"/>
<Vtx X="26" Y="8" Z="5" S="-107" T="191" R="243" G="238" B="125" A="255"/>
<Vtx X="24" Y="6" Z="4" S="-127" T="202" R="209" G="185" B="94" A="255"/>
<Vtx X="24" Y="6" Z="4" S="-125" T="204" R="209" G="185" B="94" A="255"/>
<Vtx X="30" Y="5" Z="5" S="-85" T="210" R="242" G="248" B="126" A="255"/>
<Vtx X="28" Y="3" Z="4" S="-100" T="226" R="181" G="225" B="98" A="255"/>
<Vtx X="30" Y="-4" Z="5" S="-85" T="265" R="234" G="11" B="125" A="255"/>
<Vtx X="28" Y="-3" Z="4" S="-100" T="253" R="180" G="33" B="96" A="255"/>
<Vtx X="25" Y="-8" Z="5" S="-116" T="293" R="243" G="20" B="125" A="255"/>
<Vtx X="24" Y="-7" Z="4" S="-127" T="277" R="208" G="73" B="92" A="255"/>
<Vtx X="-5" Y="-23" Z="5" S="-305" T="387" R="248" G="23" B="125" A="255"/>
<Vtx X="-6" Y="-21" Z="4" S="-311" T="369" R="228" G="83" B="92" A="255"/>
<Vtx X="-13" Y="-25" Z="5" S="-356" T="397" R="4" G="21" B="125" A="255"/>
<Vtx X="-12" Y="-23" Z="4" S="-348" T="376" R="13" G="77" B="100" A="255"/>
<Vtx X="-18" Y="-22" Z="5" S="-386" T="379" R="13" G="11" B="126" A="255"/>
<Vtx X="-12" Y="-23" Z="4" S="-348" T="376" R="13" G="77" B="100" A="255"/>
<Vtx X="-17" Y="-20" Z="4" S="-375" T="360" R="68" G="48" B="96" A="255"/>
<Vtx X="-18" Y="-22" Z="5" S="-386" T="379" R="13" G="11" B="126" A="255"/>
<Vtx X="-21" Y="-11" Z="5" S="-404" T="310" R="26" G="2" B="124" A="255"/>
<Vtx X="-17" Y="-20" Z="4" S="-375" T="359" R="68" G="48" B="96" A="255"/>
<Vtx X="-19" Y="-13" Z="4" S="-385" T="323" R="91" G="12" B="88" A="255"/>
<Vtx X="0" Y="34" Z="5" S="-273" T="27" R="0" G="28" B="124" A="255"/>
<Vtx X="19" Y="28" Z="5" S="-154" T="65" R="14" G="22" B="124" A="255"/>
<Vtx X="22" Y="30" Z="4" S="-133" T="39" R="53" G="74" B="89" A="255"/>
<Vtx X="0" Y="37" Z="4" S="-270" T="-5" R="0" G="93" B="87" A="255"/>
<Vtx X="0" Y="37" Z="4" S="493" T="-529" R="0" G="93" B="87" A="255"/>
<Vtx X="22" Y="30" Z="4" S="396" T="-529" R="53" G="74" B="89" A="255"/>
<Vtx X="23" Y="32" Z="0" S="393" T="-273" R="75" G="103" B="1" A="255"/>
<Vtx X="0" Y="39" Z="0" S="495" T="-273" R="0" G="127" B="0" A="255"/>
<Vtx X="33" Y="8" Z="5" S="-64" T="189" R="30" G="5" B="123" A="255"/>
<Vtx X="36" Y="11" Z="4" S="-39" T="164" R="90" G="27" B="86" A="255"/>
<Vtx X="22" Y="30" Z="4" S="-127" T="42" R="53" G="74" B="89" A="255"/>
<Vtx X="22" Y="30" Z="4" S="392" T="-529" R="53" G="74" B="89" A="255"/>
<Vtx X="36" Y="11" Z="4" S="291" T="-529" R="90" G="27" B="86" A="255"/>
<Vtx X="37" Y="12" Z="0" S="291" T="-273" R="120" G="41" B="0" A="255"/>
<Vtx X="33" Y="-9" Z="5" S="-64" T="297" R="30" G="249" B="123" A="255"/>
<Vtx X="36" Y="-11" Z="4" S="-39" T="310" R="91" G="227" B="84" A="255"/>
<Vtx X="36" Y="11" Z="4" S="-39" T="171" R="90" G="27" B="86" A="255"/>
<Vtx X="36" Y="11" Z="4" S="286" T="-529" R="90" G="27" B="86" A="255"/>
<Vtx X="36" Y="-11" Z="4" S="192" T="-529" R="91" G="227" B="84" A="255"/>
<Vtx X="37" Y="-12" Z="0" S="188" T="-273" R="121" G="216" B="255" A="255"/>
<Vtx X="20" Y="-27" Z="5" S="-148" T="412" R="16" G="234" B="124" A="255"/>
<Vtx X="22" Y="-30" Z="4" S="-126" T="436" R="54" G="181" B="87" A="255"/>
<Vtx X="36" Y="-11" Z="4" S="-39" T="315" R="91" G="227" B="84" A="255"/>
<Vtx X="36" Y="-11" Z="4" S="188" T="-529" R="91" G="227" B="84" A="255"/>
<Vtx X="22" Y="-30" Z="4" S="88" T="-529" R="54" G="181" B="87" A="255"/>
<Vtx X="23" Y="-32" Z="0" S="86" T="-273" R="75" G="153" B="0" A="255"/>
<Vtx X="20" Y="-27" Z="5" S="-148" T="412" R="16" G="234" B="124" A="255"/>
<Vtx X="0" Y="-34" Z="5" S="-270" T="451" R="0" G="229" B="124" A="255"/>
<Vtx X="0" Y="-37" Z="4" S="-269" T="484" R="0" G="164" B="88" A="255"/>
<Vtx X="22" Y="-30" Z="4" S="-131" T="439" R="54" G="181" B="87" A="255"/>
<Vtx X="22" Y="-30" Z="4" S="84" T="-529" R="54" G="181" B="87" A="255"/>
<Vtx X="0" Y="-37" Z="4" S="-14" T="-529" R="0" G="164" B="88" A="255"/>
<Vtx X="0" Y="-39" Z="0" S="-17" T="-273" R="0" G="129" B="0" A="255"/>
<Vtx X="23" Y="-32" Z="0" S="86" T="-273" R="75" G="153" B="0" A="255"/>
<Vtx X="-20" Y="-27" Z="5" S="-401" T="409" R="239" G="234" B="124" A="255"/>
<Vtx X="-22" Y="-30" Z="4" S="-415" T="439" R="201" G="181" B="87" A="255"/>
<Vtx X="0" Y="-37" Z="4" S="-275" T="484" R="0" G="164" B="88" A="255"/>
<Vtx X="0" Y="-37" Z="4" S="-18" T="-529" R="0" G="164" B="88" A="255"/>
<Vtx X="-22" Y="-30" Z="4" S="-118" T="-529" R="201" G="181" B="87" A="255"/>
<Vtx X="-23" Y="-32" Z="0" S="-119" T="-273" R="182" G="153" B="0" A="255"/>
<Vtx X="-32" Y="-11" Z="5" S="-475" T="308" R="229" G="247" B="124" A="255"/>
<Vtx X="-36" Y="-12" Z="4" S="-504" T="318" R="167" G="227" B="86" A="255"/>
<Vtx X="-22" Y="-30" Z="4" S="-420" T="435" R="201" G="181" B="87" A="255"/>
<Vtx X="-22" Y="-30" Z="4" S="-122" T="-529" R="201" G="181" B="87" A="255"/>
<Vtx X="-36" Y="-12" Z="4" S="-219" T="-529" R="167" G="227" B="86" A="255"/>
<Vtx X="-37" Y="-12" Z="0" S="-221" T="-273" R="135" G="217" B="0" A="255"/>
<Vtx X="-32" Y="10" Z="5" S="-475" T="174" R="229" G="8" B="124" A="255"/>
<Vtx X="-36" Y="12" Z="4" S="-506" T="167" R="168" G="28" B="87" A="255"/>
<Vtx X="-36" Y="-12" Z="4" S="-506" T="313" R="167" G="227" B="86" A="255"/>
<Vtx X="-36" Y="-12" Z="4" S="-223" T="-529" R="167" G="227" B="86" A="255"/>
<Vtx X="-36" Y="12" Z="4" S="-322" T="-529" R="168" G="28" B="87" A="255"/>
<Vtx X="-37" Y="12" Z="0" S="-324" T="-273" R="135" G="39" B="0" A="255"/>
<Vtx X="0" Y="39" Z="0" S="-529" T="-273" R="0" G="127" B="0" A="255"/>
<Vtx X="-23" Y="32" Z="0" S="-426" T="-273" R="181" G="103" B="0" A="255"/>
<Vtx X="-22" Y="30" Z="4" S="-428" T="-529" R="202" G="75" B="87" A="255"/>
<Vtx X="0" Y="37" Z="4" S="-526" T="-529" R="0" G="93" B="87" A="255"/>
<Vtx X="0" Y="37" Z="4" S="-275" T="-5" R="0" G="93" B="87" A="255"/>
<Vtx X="-22" Y="30" Z="4" S="-414" T="40" R="202" G="75" B="87" A="255"/>
<Vtx X="-20" Y="27" Z="5" S="-397" T="67" R="240" G="22" B="124" A="255"/>
<Vtx X="0" Y="34" Z="5" S="-273" T="27" R="0" G="28" B="124" A="255"/>
<Vtx X="-32" Y="10" Z="5" S="-475" T="174" R="229" G="8" B="124" A="255"/>
<Vtx X="-22" Y="30" Z="4" S="-419" T="43" R="202" G="75" B="87" A="255"/>
<Vtx X="-36" Y="12" Z="4" S="-504" T="161" R="168" G="28" B="87" A="255"/>
<Vtx X="-36" Y="12" Z="4" S="-326" T="-529" R="168" G="28" B="87" A="255"/>
<Vtx X="-22" Y="30" Z="4" S="-424" T="-529" R="202" G="75" B="87" A="255"/>
<Vtx X="-23" Y="32" Z="0" S="-426" T="-273" R="181" G="103" B="0" A="255"/>
<Vtx X="-37" Y="12" Z="0" S="-324" T="-273" R="135" G="39" B="0" A="255"/>
<Vtx X="0" Y="39" Z="0" S="495" T="-273" R="0" G="127" B="0" A="255"/>
<Vtx X="23" Y="32" Z="0" S="393" T="-273" R="75" G="103" B="1" A="255"/>
<Vtx X="22" Y="30" Z="-4" S="395" T="-17" R="54" G="75" B="169" A="255"/>
<Vtx X="0" Y="37" Z="-4" S="493" T="-17" R="0" G="93" B="169" A="255"/>
<Vtx X="0" Y="37" Z="-4" S="242" T="-5" R="0" G="93" B="169" A="255"/>
<Vtx X="22" Y="30" Z="-4" S="381" T="40" R="54" G="75" B="169" A="255"/>
<Vtx X="20" Y="27" Z="-5" S="364" T="67" R="16" G="22" B="132" A="255"/>
<Vtx X="0" Y="34" Z="-5" S="239" T="27" R="0" G="28" B="132" A="255"/>
<Vtx X="23" Y="32" Z="0" S="393" T="-273" R="75" G="103" B="1" A="255"/>
<Vtx X="37" Y="12" Z="0" S="291" T="-273" R="120" G="41" B="0" A="255"/>
<Vtx X="36" Y="12" Z="-4" S="293" T="-17" R="88" G="28" B="169" A="255"/>
<Vtx X="22" Y="30" Z="-4" S="391" T="-17" R="54" G="75" B="169" A="255"/>
<Vtx X="22" Y="30" Z="-4" S="386" T="43" R="54" G="75" B="169" A="255"/>
<Vtx X="36" Y="12" Z="-4" S="471" T="161" R="88" G="28" B="169" A="255"/>
<Vtx X="32" Y="10" Z="-5" S="442" T="174" R="27" G="8" B="132" A="255"/>
<Vtx X="37" Y="12" Z="0" S="291" T="-273" R="120" G="41" B="0" A="255"/>
<Vtx X="37" Y="-12" Z="0" S="188" T="-273" R="121" G="216" B="255" A="255"/>
<Vtx X="36" Y="-12" Z="-4" S="190" T="-17" R="88" G="228" B="169" A="255"/>
<Vtx X="36" Y="12" Z="-4" S="289" T="-17" R="88" G="28" B="169" A="255"/>
<Vtx X="36" Y="12" Z="-4" S="473" T="167" R="88" G="28" B="169" A="255"/>
<Vtx X="36" Y="-12" Z="-4" S="473" T="312" R="88" G="228" B="169" A="255"/>
<Vtx X="32" Y="-10" Z="-5" S="442" T="305" R="27" G="248" B="132" A="255"/>
<Vtx X="32" Y="10" Z="-5" S="442" T="174" R="27" G="8" B="132" A="255"/>
<Vtx X="37" Y="-12" Z="0" S="188" T="-273" R="121" G="216" B="255" A="255"/>
<Vtx X="23" Y="-32" Z="0" S="86" T="-273" R="75" G="153" B="0" A="255"/>
<Vtx X="22" Y="-30" Z="-4" S="88" T="-17" R="54" G="181" B="169" A="255"/>
<Vtx X="36" Y="-12" Z="-4" S="186" T="-17" R="88" G="228" B="169" A="255"/>
<Vtx X="36" Y="-12" Z="-4" S="471" T="318" R="88" G="228" B="169" A="255"/>
<Vtx X="22" Y="-30" Z="-4" S="386" T="436" R="54" G="181" B="169" A="255"/>
<Vtx X="20" Y="-27" Z="-5" S="364" T="412" R="16" G="234" B="132" A="255"/>
<Vtx X="23" Y="-32" Z="0" S="86" T="-273" R="75" G="153" B="0" A="255"/>
<Vtx X="0" Y="-39" Z="0" S="-17" T="-273" R="0" G="129" B="0" A="255"/>
<Vtx X="0" Y="-37" Z="-4" S="-14" T="-17" R="0" G="163" B="169" A="255"/>
<Vtx X="22" Y="-30" Z="-4" S="84" T="-17" R="54" G="181" B="169" A="255"/>
<Vtx X="22" Y="-30" Z="-4" S="381" T="439" R="54" G="181" B="169" A="255"/>
<Vtx X="0" Y="-37" Z="-4" S="242" T="484" R="0" G="163" B="169" A="255"/>
<Vtx X="0" Y="-34" Z="-5" S="239" T="452" R="0" G="228" B="132" A="255"/>
<Vtx X="0" Y="-39" Z="0" S="-17" T="-273" R="0" G="129" B="0" A="255"/>
<Vtx X="-23" Y="-32" Z="0" S="-119" T="-273" R="182" G="153" B="0" A="255"/>
<Vtx X="-22" Y="-30" Z="-4" S="-117" T="-17" R="202" G="181" B="169" A="255"/>
<Vtx X="0" Y="-37" Z="-4" S="-19" T="-17" R="0" G="163" B="169" A="255"/>
<Vtx X="0" Y="-37" Z="-4" S="237" T="484" R="0" G="163" B="169" A="255"/>
<Vtx X="-22" Y="-30" Z="-4" S="98" T="439" R="202" G="181" B="169" A="255"/>
<Vtx X="-20" Y="-27" Z="-5" S="115" T="412" R="240" G="234" B="132" A="255"/>
<Vtx X="-23" Y="-32" Z="0" S="-119" T="-273" R="182" G="153" B="0" A="255"/>
<Vtx X="-37" Y="-12" Z="0" S="-221" T="-273" R="135" G="217" B="0" A="255"/>
<Vtx X="-36" Y="-12" Z="-4" S="-219" T="-17" R="168" G="228" B="169" A="255"/>
<Vtx X="-22" Y="-30" Z="-4" S="-121" T="-17" R="202" G="181" B="169" A="255"/>
<Vtx X="-22" Y="-30" Z="-4" S="93" T="436" R="202" G="181" B="169" A="255"/>
<Vtx X="-36" Y="-12" Z="-4" S="8" T="318" R="168" G="228" B="169" A="255"/>
<Vtx X="-32" Y="-10" Z="-5" S="37" T="305" R="229" G="248" B="132" A="255"/>
<Vtx X="-37" Y="-12" Z="0" S="-221" T="-273" R="135" G="217" B="0" A="255"/>
<Vtx X="-37" Y="12" Z="0" S="-324" T="-273" R="135" G="39" B="0" A="255"/>
<Vtx X="-36" Y="12" Z="-4" S="-322" T="-17" R="168" G="28" B="169" A="255"/>
<Vtx X="-36" Y="-12" Z="-4" S="-223" T="-17" R="168" G="228" B="169" A="255"/>
<Vtx X="-36" Y="-12" Z="-4" S="6" T="312" R="168" G="228" B="169" A="255"/>
<Vtx X="-36" Y="12" Z="-4" S="6" T="167" R="168" G="28" B="169" A="255"/>
<Vtx X="-32" Y="10" Z="-5" S="37" T="174" R="229" G="8" B="132" A="255"/>
<Vtx X="-32" Y="-10" Z="-5" S="37" T="305" R="229" G="248" B="132" A="255"/>
<Vtx X="-37" Y="12" Z="0" S="-324" T="-273" R="135" G="39" B="0" A="255"/>
<Vtx X="-23" Y="32" Z="0" S="-426" T="-273" R="181" G="103" B="0" A="255"/>
<Vtx X="-22" Y="30" Z="-4" S="-424" T="-17" R="202" G="75" B="169" A="255"/>
<Vtx X="-36" Y="12" Z="-4" S="-326" T="-17" R="168" G="28" B="169" A="255"/>
<Vtx X="-36" Y="12" Z="-4" S="8" T="161" R="168" G="28" B="169" A="255"/>
<Vtx X="-22" Y="30" Z="-4" S="93" T="43" R="202" G="75" B="169" A="255"/>
<Vtx X="-20" Y="27" Z="-5" S="115" T="67" R="240" G="22" B="132" A="255"/>
<Vtx X="0" Y="34" Z="-5" S="239" T="27" R="0" G="28" B="132" A="255"/>
<Vtx X="-22" Y="30" Z="-4" S="98" T="40" R="202" G="75" B="169" A="255"/>
<Vtx X="0" Y="37" Z="-4" S="237" T="-5" R="0" G="93" B="169" A="255"/>
<Vtx X="0" Y="37" Z="-4" S="-526" T="-17" R="0" G="93" B="169" A="255"/>
<Vtx X="-22" Y="30" Z="-4" S="-428" T="-17" R="202" G="75" B="169" A="255"/>
<Vtx X="-23" Y="32" Z="0" S="-426" T="-273" R="181" G="103" B="0" A="255"/>
<Vtx X="0" Y="39" Z="0" S="-529" T="-273" R="0" G="127" B="0" A="255"/>
</Vertex>

View File

@ -0,0 +1,10 @@
<Vertex Version="0">
<Vtx X="-37" Y="-39" Z="-5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="-37" Y="-39" Z="5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="-37" Y="39" Z="5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="-37" Y="39" Z="-5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="37" Y="-39" Z="-5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="37" Y="-39" Z="5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="37" Y="39" Z="5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="37" Y="39" Z="-5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
</Vertex>

View File

@ -0,0 +1,21 @@
<DisplayList Version="0">
<PipeSync/>
<SetCombineLERP A0="G_CCMUX_TEXEL0" B0="G_CCMUX_0" C0="G_CCMUX_SHADE" D0="G_CCMUX_0" Aa0="G_ACMUX_0" Ab0="G_ACMUX_0" Ac0="G_ACMUX_0" Ad0="G_ACMUX_1" A1="G_CCMUX_COMBINED" B1="G_CCMUX_0" C1="G_CCMUX_PRIMITIVE" D1="G_CCMUX_0" Aa1="G_ACMUX_0" Ab1="G_ACMUX_0" Ac1="G_ACMUX_0" Ad1="G_ACMUX_COMBINED"/>
<SetGeometryMode G_ZBUFFER="1" G_SHADE="1" G_CULL_BACK="1" G_FOG="1" G_LIGHTING="1" G_TEXTURE_GEN="1" G_SHADING_SMOOTH="1" />
<SetOtherMode Cmd="G_SETOTHERMODE_H" Sft="4" Length="20" G_AD_NOISE="1" G_CD_MAGICSQ="1" G_CK_NONE="1" G_TC_FILT="1" G_TF_BILERP="1" G_TL_TILE="1" G_TD_CLAMP="1" G_TP_PERSP="1" G_CYC_2CYCLE="1" G_PM_NPRIMITIVE="1" />
<SetOtherMode Cmd="G_SETOTHERMODE_L" Sft="0" Length="32" G_AC_NONE="1" G_ZS_PIXEL="1" G_RM_FOG_SHADE_A="1" G_RM_AA_ZB_OPA_SURF2="1" />
<Texture S="1984" T="1984" Level="0" Tile="0" On="1"/>
<SetTextureLUT Mode="G_TT_NONE"/>
<TileSync/>
<SetTextureImage Path="objects/object_ocarina_c_right_button/noise_tex" Format="G_IM_FMT_I" Size="G_IM_SIZ_8b_LOAD_BLOCK" Width="1"/>
<SetTile Format="G_IM_FMT_I" Size="G_IM_SIZ_8b_LOAD_BLOCK" Line="0" TMem="0" Tile="7" Palette="0" Cms0="G_TX_WRAP" Cms1="G_TX_NOMIRROR" Cmt0="G_TX_WRAP" Cmt1="G_TX_NOMIRROR" MaskS="5" ShiftS="0" MaskT="5" ShiftT="0"/>
<LoadSync/>
<LoadBlock Tile="7" Uls="0" Ult="0" Lrs="511" Dxt="512"/>
<PipeSync/>
<SetTile Format="G_IM_FMT_I" Size="G_IM_SIZ_8b" Line="4" TMem="0" Tile="0" Palette="0" Cms0="G_TX_WRAP" Cms1="G_TX_NOMIRROR" Cmt0="G_TX_WRAP" Cmt1="G_TX_NOMIRROR" MaskS="5" ShiftS="0" MaskT="5" ShiftT="0"/>
<SetTileSize T="0" Uls="0" Ult="0" Lrs="124" Lrt="124"/>
<SetPrimColor M="0" L="0" R="255" G="160" B="0" A="255"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,21 @@
<DisplayList Version="0">
<PipeSync/>
<SetCombineLERP A0="G_CCMUX_TEXEL0" B0="G_CCMUX_0" C0="G_CCMUX_SHADE" D0="G_CCMUX_0" Aa0="G_ACMUX_0" Ab0="G_ACMUX_0" Ac0="G_ACMUX_0" Ad0="G_ACMUX_1" A1="G_CCMUX_COMBINED" B1="G_CCMUX_0" C1="G_CCMUX_PRIMITIVE" D1="G_CCMUX_0" Aa1="G_ACMUX_0" Ab1="G_ACMUX_0" Ac1="G_ACMUX_0" Ad1="G_ACMUX_COMBINED"/>
<SetGeometryMode G_ZBUFFER="1" G_SHADE="1" G_CULL_BACK="1" G_FOG="1" G_LIGHTING="1" G_TEXTURE_GEN="1" G_SHADING_SMOOTH="1" />
<SetOtherMode Cmd="G_SETOTHERMODE_H" Sft="4" Length="20" G_AD_NOISE="1" G_CD_MAGICSQ="1" G_CK_NONE="1" G_TC_FILT="1" G_TF_BILERP="1" G_TL_TILE="1" G_TD_CLAMP="1" G_TP_PERSP="1" G_CYC_2CYCLE="1" G_PM_NPRIMITIVE="1" />
<SetOtherMode Cmd="G_SETOTHERMODE_L" Sft="0" Length="32" G_AC_NONE="1" G_ZS_PIXEL="1" G_RM_FOG_SHADE_A="1" G_RM_AA_ZB_OPA_SURF2="1" />
<Texture S="2621" T="1311" Level="0" Tile="0" On="1"/>
<SetTextureLUT Mode="G_TT_NONE"/>
<TileSync/>
<SetTextureImage Path="objects/object_ocarina_c_right_button/noise_tex" Format="G_IM_FMT_I" Size="G_IM_SIZ_8b_LOAD_BLOCK" Width="1"/>
<SetTile Format="G_IM_FMT_I" Size="G_IM_SIZ_8b_LOAD_BLOCK" Line="0" TMem="0" Tile="7" Palette="0" Cms0="G_TX_WRAP" Cms1="G_TX_NOMIRROR" Cmt0="G_TX_WRAP" Cmt1="G_TX_NOMIRROR" MaskS="5" ShiftS="0" MaskT="5" ShiftT="0"/>
<LoadSync/>
<LoadBlock Tile="7" Uls="0" Ult="0" Lrs="511" Dxt="512"/>
<PipeSync/>
<SetTile Format="G_IM_FMT_I" Size="G_IM_SIZ_8b" Line="4" TMem="0" Tile="0" Palette="0" Cms0="G_TX_WRAP" Cms1="G_TX_NOMIRROR" Cmt0="G_TX_WRAP" Cmt1="G_TX_NOMIRROR" MaskS="5" ShiftS="0" MaskT="5" ShiftT="0"/>
<SetTileSize T="0" Uls="0" Ult="0" Lrs="124" Lrt="124"/>
<SetPrimColor M="0" L="0" R="170" G="107" B="0" A="255"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,16 @@
<DisplayList Version="0">
<ClearGeometryMode G_LIGHTING="1" />
<LoadVertices Path="objects/object_ocarina_c_up_button/gOcarinaCUpButtonDL_vtx_cull" VertexBufferIndex="0" VertexOffset="0" Count="8"/>
<CullDisplayList Start="0" End="7"/>
<CallDisplayList Path="objects/object_ocarina_c_up_button/mat_gOcarinaCUpButtonDL_f3dlite_ocarina_C_button_surface"/>
<CallDisplayList Path="objects/object_ocarina_c_up_button/gOcarinaCUpButtonDL_tri_0"/>
<CallDisplayList Path="objects/object_ocarina_c_up_button/mat_gOcarinaCUpButtonDL_f3dlite_ocarina_C_button_edge"/>
<CallDisplayList Path="objects/object_ocarina_c_up_button/gOcarinaCUpButtonDL_tri_1"/>
<PipeSync/>
<SetGeometryMode G_LIGHTING="1" />
<ClearGeometryMode G_TEXTURE_GEN="1" />
<SetCombineLERP A0="G_CCMUX_0" B0="G_CCMUX_0" C0="G_CCMUX_0" D0="G_CCMUX_SHADE" Aa0="G_ACMUX_0" Ab0="G_ACMUX_0" Ac0="G_ACMUX_0" Ad0="G_ACMUX_ENVIRONMENT" A1="G_CCMUX_0" B1="G_CCMUX_0" C1="G_CCMUX_0" D1="G_CCMUX_SHADE" Aa1="G_ACMUX_0" Ab1="G_ACMUX_0" Ac1="G_ACMUX_0" Ad1="G_ACMUX_ENVIRONMENT"/>
<Texture S="65535" T="65535" Level="0" Tile="0" On="0"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,29 @@
<DisplayList Version="0">
<LoadVertices Path="objects/object_ocarina_c_up_button/gOcarinaCUpButtonDL_vtx_0" VertexBufferIndex="0" VertexOffset="0" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="3" V11="4" V12="5" Flag1="0"/>
<Triangles2 V00="3" V01="5" V02="6" Flag0="0" V10="5" V11="7" V12="6" Flag1="0"/>
<Triangles2 V00="6" V01="8" V02="3" Flag0="0" V10="8" V11="9" V12="3" Flag1="0"/>
<Triangles2 V00="10" V01="11" V02="12" Flag0="0" V10="13" V11="10" V12="12" Flag1="0"/>
<Triangles2 V00="12" V01="14" V02="13" Flag0="0" V10="12" V11="15" V12="14" Flag1="0"/>
<Triangles2 V00="14" V01="16" V02="13" Flag0="0" V10="17" V11="1" V12="18" Flag1="0"/>
<Triangles2 V00="18" V01="1" V02="19" Flag0="0" V10="20" V11="21" V12="22" Flag1="0"/>
<Triangles2 V00="22" V01="21" V02="23" Flag0="0" V10="24" V11="22" V12="23" Flag1="0"/>
<Triangles2 V00="24" V01="23" V02="25" Flag0="0" V10="26" V11="24" V12="25" Flag1="0"/>
<Triangles2 V00="25" V01="27" V02="26" Flag0="0" V10="27" V11="28" V12="26" Flag1="0"/>
<Triangles2 V00="28" V01="29" V02="26" Flag0="0" V10="29" V11="30" V12="26" Flag1="0"/>
<Triangle1 V00="30" V01="29" V02="31"/>
<LoadVertices Path="objects/object_ocarina_c_up_button/gOcarinaCUpButtonDL_vtx_0" VertexBufferIndex="0" VertexOffset="32" Count="28"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="2" V01="4" V02="3" Flag0="0" V10="0" V11="3" V12="5" Flag1="0"/>
<Triangles2 V00="6" V01="0" V02="5" Flag0="0" V10="6" V11="5" V12="7" Flag1="0"/>
<Triangles2 V00="7" V01="8" V02="6" Flag0="0" V10="8" V11="9" V12="6" Flag1="0"/>
<Triangles2 V00="9" V01="10" V02="6" Flag0="0" V10="9" V11="11" V12="10" Flag1="0"/>
<Triangles2 V00="11" V01="12" V02="10" Flag0="0" V10="12" V11="13" V12="10" Flag1="0"/>
<Triangles2 V00="0" V01="14" V02="1" Flag0="0" V10="15" V11="16" V12="17" Flag1="0"/>
<Triangles2 V00="18" V01="19" V02="20" Flag0="0" V10="18" V11="20" V12="21" Flag1="0"/>
<Triangles2 V00="20" V01="22" V02="21" Flag0="0" V10="21" V11="23" V12="18" Flag1="0"/>
<Triangles2 V00="21" V01="24" V02="23" Flag0="0" V10="21" V11="25" V12="24" Flag1="0"/>
<Triangles2 V00="24" V01="26" V02="23" Flag0="0" V10="23" V11="27" V12="18" Flag1="0"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,97 @@
<DisplayList Version="0">
<LoadVertices Path="objects/object_ocarina_c_up_button/gOcarinaCUpButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="0" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="3" V01="2" V02="4" Flag0="0" V10="3" V11="4" V12="5" Flag1="0"/>
<Triangles2 V00="3" V01="6" V02="0" Flag0="0" V10="6" V11="3" V12="7" Flag1="0"/>
<Triangles2 V00="6" V01="7" V02="8" Flag0="0" V10="1" V11="9" V12="10" Flag1="0"/>
<Triangles2 V00="1" V01="10" V02="11" Flag0="0" V10="11" V11="10" V12="12" Flag1="0"/>
<Triangles2 V00="11" V01="12" V02="4" Flag0="0" V10="13" V11="14" V12="15" Flag1="0"/>
<Triangles2 V00="13" V01="15" V02="16" Flag0="0" V10="16" V11="15" V12="17" Flag1="0"/>
<Triangles2 V00="16" V01="17" V02="18" Flag0="0" V10="19" V11="20" V12="21" Flag1="0"/>
<Triangles2 V00="19" V01="21" V02="22" Flag0="0" V10="23" V11="19" V12="22" Flag1="0"/>
<Triangles2 V00="23" V01="24" V02="19" Flag0="0" V10="9" V11="25" V12="26" Flag1="0"/>
<Triangles2 V00="9" V01="26" V02="27" Flag0="0" V10="27" V11="26" V12="28" Flag1="0"/>
<Triangles2 V00="27" V01="28" V02="12" Flag0="0" V10="29" V11="20" V12="30" Flag1="0"/>
<Triangle1 V00="29" V01="30" V02="31"/>
<LoadVertices Path="objects/object_ocarina_c_up_button/gOcarinaCUpButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="32" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="3" V12="1" Flag1="0"/>
<Triangles2 V00="4" V01="1" V02="3" Flag0="0" V10="4" V11="3" V12="5" Flag1="0"/>
<Triangles2 V00="5" V01="6" V02="4" Flag0="0" V10="5" V11="7" V12="6" Flag1="0"/>
<Triangles2 V00="8" V01="4" V02="6" Flag0="0" V10="8" V11="9" V12="4" Flag1="0"/>
<Triangles2 V00="9" V01="1" V02="4" Flag0="0" V10="9" V11="10" V12="1" Flag1="0"/>
<Triangles2 V00="11" V01="8" V02="6" Flag0="0" V10="11" V11="6" V12="12" Flag1="0"/>
<Triangles2 V00="13" V01="12" V02="6" Flag0="0" V10="13" V11="14" V12="12" Flag1="0"/>
<Triangles2 V00="15" V01="16" V02="17" Flag0="0" V10="15" V11="17" V12="18" Flag1="0"/>
<Triangles2 V00="15" V01="18" V02="19" Flag0="0" V10="15" V11="19" V12="20" Flag1="0"/>
<Triangles2 V00="21" V01="22" V02="23" Flag0="0" V10="21" V11="23" V12="24" Flag1="0"/>
<Triangles2 V00="21" V01="24" V02="25" Flag0="0" V10="21" V11="25" V12="26" Flag1="0"/>
<Triangles2 V00="27" V01="28" V02="29" Flag0="0" V10="27" V11="29" V12="30" Flag1="0"/>
<Triangle1 V00="31" V01="30" V02="29"/>
<LoadVertices Path="objects/object_ocarina_c_up_button/gOcarinaCUpButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="64" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="3" V11="4" V12="5" Flag1="0"/>
<Triangles2 V00="3" V01="5" V02="6" Flag0="0" V10="7" V11="3" V12="6" Flag1="0"/>
<Triangles2 V00="7" V01="6" V02="8" Flag0="0" V10="8" V11="9" V12="7" Flag1="0"/>
<Triangles2 V00="8" V01="10" V02="9" Flag0="0" V10="11" V11="9" V12="10" Flag1="0"/>
<Triangles2 V00="11" V01="10" V02="12" Flag0="0" V10="12" V11="13" V12="11" Flag1="0"/>
<Triangles2 V00="12" V01="14" V02="13" Flag0="0" V10="14" V11="15" V12="13" Flag1="0"/>
<Triangles2 V00="14" V01="16" V02="15" Flag0="0" V10="17" V11="15" V12="16" Flag1="0"/>
<Triangles2 V00="17" V01="16" V02="18" Flag0="0" V10="18" V11="19" V12="17" Flag1="0"/>
<Triangles2 V00="18" V01="20" V02="19" Flag0="0" V10="21" V11="22" V12="5" Flag1="0"/>
<Triangles2 V00="21" V01="23" V02="22" Flag0="0" V10="23" V11="24" V12="22" Flag1="0"/>
<Triangles2 V00="23" V01="25" V02="24" Flag0="0" V10="25" V11="26" V12="24" Flag1="0"/>
<Triangles2 V00="25" V01="27" V02="26" Flag0="0" V10="28" V11="26" V12="27" Flag1="0"/>
<Triangles2 V00="28" V01="27" V02="29" Flag0="0" V10="29" V11="30" V12="28" Flag1="0"/>
<Triangle1 V00="29" V01="31" V02="30"/>
<LoadVertices Path="objects/object_ocarina_c_up_button/gOcarinaCUpButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="96" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="4" V01="5" V02="6" Flag0="0" V10="4" V11="6" V12="7" Flag1="0"/>
<Triangles2 V00="6" V01="8" V02="7" Flag0="0" V10="6" V11="9" V12="8" Flag1="0"/>
<Triangles2 V00="10" V01="11" V02="12" Flag0="0" V10="10" V11="12" V12="13" Flag1="0"/>
<Triangles2 V00="14" V01="15" V02="16" Flag0="0" V10="14" V11="16" V12="17" Flag1="0"/>
<Triangles2 V00="11" V01="18" V02="19" Flag0="0" V10="11" V11="19" V12="20" Flag1="0"/>
<Triangles2 V00="21" V01="22" V02="23" Flag0="0" V10="21" V11="23" V12="16" Flag1="0"/>
<Triangles2 V00="18" V01="24" V02="25" Flag0="0" V10="18" V11="25" V12="26" Flag1="0"/>
<Triangles2 V00="27" V01="28" V02="29" Flag0="0" V10="27" V11="29" V12="23" Flag1="0"/>
<Triangle1 V00="24" V01="30" V02="31"/>
<LoadVertices Path="objects/object_ocarina_c_up_button/gOcarinaCUpButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="128" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="3" V11="4" V12="5" Flag1="0"/>
<Triangles2 V00="3" V01="5" V02="6" Flag0="0" V10="7" V11="8" V12="9" Flag1="0"/>
<Triangles2 V00="7" V01="9" V02="10" Flag0="0" V10="11" V11="12" V12="13" Flag1="0"/>
<Triangles2 V00="11" V01="13" V02="5" Flag0="0" V10="8" V11="14" V12="15" Flag1="0"/>
<Triangles2 V00="8" V01="15" V02="16" Flag0="0" V10="17" V11="18" V12="19" Flag1="0"/>
<Triangles2 V00="17" V01="19" V02="13" Flag0="0" V10="14" V11="20" V12="21" Flag1="0"/>
<Triangles2 V00="14" V01="21" V02="22" Flag0="0" V10="23" V11="24" V12="25" Flag1="0"/>
<Triangles2 V00="23" V01="25" V02="19" Flag0="0" V10="20" V11="26" V12="27" Flag1="0"/>
<Triangles2 V00="20" V01="27" V02="28" Flag0="0" V10="29" V11="30" V12="31" Flag1="0"/>
<Triangle1 V00="29" V01="31" V02="25"/>
<LoadVertices Path="objects/object_ocarina_c_up_button/gOcarinaCUpButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="160" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="4" V01="5" V02="6" Flag0="0" V10="4" V11="6" V12="7" Flag1="0"/>
<Triangles2 V00="8" V01="6" V02="9" Flag0="0" V10="8" V11="9" V12="10" Flag1="0"/>
<Triangles2 V00="11" V01="12" V02="1" Flag0="0" V10="11" V11="1" V12="13" Flag1="0"/>
<Triangles2 V00="14" V01="15" V02="16" Flag0="0" V10="14" V11="16" V12="17" Flag1="0"/>
<Triangles2 V00="18" V01="19" V02="20" Flag0="0" V10="18" V11="20" V12="21" Flag1="0"/>
<Triangles2 V00="22" V01="23" V02="24" Flag0="0" V10="22" V11="24" V12="25" Flag1="0"/>
<Triangles2 V00="26" V01="27" V02="28" Flag0="0" V10="26" V11="28" V12="20" Flag1="0"/>
<Triangle1 V00="29" V01="30" V02="31"/>
<LoadVertices Path="objects/object_ocarina_c_up_button/gOcarinaCUpButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="192" Count="32"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="3" V11="4" V12="5" Flag1="0"/>
<Triangles2 V00="3" V01="5" V02="6" Flag0="0" V10="7" V11="8" V12="9" Flag1="0"/>
<Triangles2 V00="7" V01="9" V02="10" Flag0="0" V10="11" V11="12" V12="13" Flag1="0"/>
<Triangles2 V00="11" V01="13" V02="5" Flag0="0" V10="14" V11="15" V12="16" Flag1="0"/>
<Triangles2 V00="14" V01="16" V02="17" Flag0="0" V10="18" V11="19" V12="20" Flag1="0"/>
<Triangles2 V00="18" V01="20" V02="13" Flag0="0" V10="21" V11="22" V12="23" Flag1="0"/>
<Triangles2 V00="21" V01="23" V02="24" Flag0="0" V10="25" V11="26" V12="27" Flag1="0"/>
<Triangles2 V00="25" V01="27" V02="20" Flag0="0" V10="28" V11="29" V12="30" Flag1="0"/>
<Triangle1 V00="28" V01="30" V02="31"/>
<LoadVertices Path="objects/object_ocarina_c_up_button/gOcarinaCUpButtonDL_vtx_1" VertexBufferIndex="0" VertexOffset="224" Count="25"/>
<Triangles2 V00="0" V01="1" V02="2" Flag0="0" V10="0" V11="2" V12="3" Flag1="0"/>
<Triangles2 V00="4" V01="5" V02="6" Flag0="0" V10="4" V11="6" V12="7" Flag1="0"/>
<Triangles2 V00="8" V01="9" V02="10" Flag0="0" V10="8" V11="10" V12="2" Flag1="0"/>
<Triangles2 V00="11" V01="12" V02="13" Flag0="0" V10="11" V11="13" V12="14" Flag1="0"/>
<Triangles2 V00="15" V01="16" V02="17" Flag0="0" V10="15" V11="17" V12="10" Flag1="0"/>
<Triangles2 V00="18" V01="17" V02="19" Flag0="0" V10="18" V11="19" V12="20" Flag1="0"/>
<Triangles2 V00="21" V01="22" V02="23" Flag0="0" V10="21" V11="23" V12="24" Flag1="0"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,62 @@
<Vertex Version="0">
<Vtx X="2" Y="27" Z="2" S="-16" T="-511" R="41" G="90" B="79" A="255"/>
<Vtx X="0" Y="22" Z="2" S="16" T="-480" R="0" G="0" B="127" A="255"/>
<Vtx X="6" Y="23" Z="2" S="8" T="-488" R="77" G="52" B="86" A="255"/>
<Vtx X="0" Y="22" Z="2" S="-16" T="-480" R="0" G="0" B="127" A="255"/>
<Vtx X="0" Y="-18" Z="2" S="48" T="-288" R="0" G="166" B="90" A="255"/>
<Vtx X="13" Y="-18" Z="2" S="48" T="-288" R="12" G="163" B="86" A="255"/>
<Vtx X="22" Y="-12" Z="2" S="-7" T="-317" R="97" G="239" B="81" A="255"/>
<Vtx X="19" Y="-16" Z="2" S="16" T="-296" R="59" G="177" B="81" A="255"/>
<Vtx X="20" Y="-6" Z="2" S="-16" T="-345" R="88" G="30" B="86" A="255"/>
<Vtx X="6" Y="23" Z="2" S="-16" T="-487" R="77" G="52" B="86" A="255"/>
<Vtx X="-19" Y="-16" Z="2" S="112" T="-296" R="197" G="177" B="81" A="255"/>
<Vtx X="-13" Y="-18" Z="2" S="112" T="-288" R="244" G="163" B="86" A="255"/>
<Vtx X="0" Y="-18" Z="2" S="112" T="-288" R="0" G="166" B="90" A="255"/>
<Vtx X="-22" Y="-12" Z="2" S="112" T="-317" R="159" G="239" B="81" A="255"/>
<Vtx X="-6" Y="23" Z="2" S="141" T="-487" R="179" G="52" B="86" A="255"/>
<Vtx X="0" Y="22" Z="2" S="112" T="-480" R="0" G="0" B="127" A="255"/>
<Vtx X="-20" Y="-6" Z="2" S="112" T="-345" R="168" G="30" B="86" A="255"/>
<Vtx X="-6" Y="23" Z="2" S="13" T="-487" R="179" G="52" B="86" A="255"/>
<Vtx X="-2" Y="27" Z="2" S="2" T="-508" R="215" G="90" B="79" A="255"/>
<Vtx X="2" Y="27" Z="2" S="2" T="-508" R="41" G="90" B="79" A="255"/>
<Vtx X="-4" Y="30" Z="5" S="-166" T="-224" R="9" G="236" B="125" A="255"/>
<Vtx X="0" Y="30" Z="5" S="-146" T="-224" R="0" G="232" B="125" A="255"/>
<Vtx X="0" Y="34" Z="5" S="-145" T="-245" R="0" G="28" B="124" A="255"/>
<Vtx X="4" Y="30" Z="5" S="-122" T="-224" R="247" G="236" B="125" A="255"/>
<Vtx X="20" Y="27" Z="5" S="-19" T="-203" R="16" G="22" B="124" A="255"/>
<Vtx X="8" Y="25" Z="5" S="-91" T="-188" R="236" G="243" B="125" A="255"/>
<Vtx X="32" Y="-12" Z="5" S="58" T="41" R="28" G="245" B="123" A="255"/>
<Vtx X="23" Y="-5" Z="5" S="3" T="0" R="233" G="248" B="125" A="255"/>
<Vtx X="25" Y="-12" Z="5" S="12" T="42" R="231" G="3" B="124" A="255"/>
<Vtx X="20" Y="-20" Z="5" S="-19" T="92" R="247" G="15" B="126" A="255"/>
<Vtx X="22" Y="-26" Z="5" S="-8" T="133" R="19" G="234" B="124" A="255"/>
<Vtx X="15" Y="-21" Z="5" S="-49" T="100" R="253" G="22" B="125" A="255"/>
<Vtx X="-20" Y="-27" Z="5" S="-269" T="140" R="240" G="234" B="124" A="255"/>
<Vtx X="22" Y="-26" Z="5" S="-8" T="133" R="19" G="234" B="124" A="255"/>
<Vtx X="15" Y="-21" Z="5" S="-49" T="100" R="253" G="22" B="125" A="255"/>
<Vtx X="-14" Y="-21" Z="5" S="-230" T="100" R="3" G="24" B="125" A="255"/>
<Vtx X="0" Y="-21" Z="5" S="-144" T="100" R="0" G="24" B="125" A="255"/>
<Vtx X="-21" Y="-19" Z="5" S="-276" T="87" R="14" G="18" B="125" A="255"/>
<Vtx X="-32" Y="-10" Z="5" S="-346" T="34" R="229" G="248" B="124" A="255"/>
<Vtx X="-25" Y="-13" Z="5" S="-301" T="47" R="23" G="4" B="125" A="255"/>
<Vtx X="-23" Y="-5" Z="5" S="-291" T="0" R="23" G="248" B="125" A="255"/>
<Vtx X="-8" Y="25" Z="5" S="-197" T="-188" R="20" G="243" B="125" A="255"/>
<Vtx X="-32" Y="10" Z="5" S="-346" T="-98" R="229" G="8" B="124" A="255"/>
<Vtx X="-4" Y="30" Z="5" S="-166" T="-224" R="9" G="236" B="125" A="255"/>
<Vtx X="0" Y="34" Z="5" S="-145" T="-245" R="0" G="28" B="124" A="255"/>
<Vtx X="-20" Y="27" Z="5" S="-269" T="-205" R="240" G="23" B="124" A="255"/>
<Vtx X="-1" Y="-33" Z="5" S="-149" T="179" R="255" G="229" B="124" A="255"/>
<Vtx X="32" Y="-12" Z="5" S="58" T="41" R="28" G="245" B="123" A="255"/>
<Vtx X="32" Y="10" Z="5" S="58" T="-98" R="27" G="8" B="124" A="255"/>
<Vtx X="20" Y="27" Z="5" S="-19" T="-203" R="16" G="22" B="124" A="255"/>
<Vtx X="-32" Y="10" Z="-5" S="166" T="-98" R="229" G="8" B="132" A="255"/>
<Vtx X="-20" Y="27" Z="-5" S="243" T="-204" R="240" G="22" B="132" A="255"/>
<Vtx X="0" Y="34" Z="-5" S="368" T="-245" R="0" G="28" B="132" A="255"/>
<Vtx X="32" Y="10" Z="-5" S="570" T="-98" R="27" G="8" B="132" A="255"/>
<Vtx X="20" Y="27" Z="-5" S="493" T="-204" R="16" G="22" B="132" A="255"/>
<Vtx X="-20" Y="-27" Z="-5" S="243" T="140" R="240" G="234" B="132" A="255"/>
<Vtx X="20" Y="-27" Z="-5" S="493" T="140" R="16" G="234" B="132" A="255"/>
<Vtx X="32" Y="-10" Z="-5" S="570" T="34" R="27" G="248" B="132" A="255"/>
<Vtx X="0" Y="-34" Z="-5" S="368" T="181" R="0" G="228" B="132" A="255"/>
<Vtx X="-32" Y="-10" Z="-5" S="166" T="34" R="229" G="248" B="132" A="255"/>
</Vertex>

View File

@ -0,0 +1,251 @@
<Vertex Version="0">
<Vtx X="-2" Y="27" Z="2" S="-145" T="-273" R="215" G="90" B="79" A="255"/>
<Vtx X="2" Y="27" Z="2" S="-145" T="-239" R="41" G="90" B="79" A="255"/>
<Vtx X="2" Y="27" Z="2" S="-135" T="-239" R="254" G="250" B="127" A="255"/>
<Vtx X="0" Y="27" Z="2" S="-135" T="-259" R="0" G="24" B="125" A="255"/>
<Vtx X="3" Y="28" Z="4" S="-245" T="-239" R="224" G="184" B="100" A="255"/>
<Vtx X="0" Y="28" Z="4" S="-245" T="-259" R="0" G="166" B="90" A="255"/>
<Vtx X="-2" Y="27" Z="2" S="-135" T="-273" R="2" G="250" B="127" A="255"/>
<Vtx X="0" Y="28" Z="4" S="-245" T="-259" R="0" G="166" B="90" A="255"/>
<Vtx X="-3" Y="28" Z="4" S="-245" T="-273" R="32" G="184" B="100" A="255"/>
<Vtx X="6" Y="23" Z="2" S="-145" T="-215" R="77" G="52" B="86" A="255"/>
<Vtx X="6" Y="23" Z="2" S="-135" T="-215" R="12" G="8" B="126" A="255"/>
<Vtx X="2" Y="27" Z="2" S="-135" T="-239" R="254" G="250" B="127" A="255"/>
<Vtx X="7" Y="24" Z="4" S="-245" T="-215" R="183" G="208" B="92" A="255"/>
<Vtx X="22" Y="-12" Z="2" S="-145" T="-49" R="97" G="239" B="81" A="255"/>
<Vtx X="19" Y="-16" Z="2" S="-145" T="-17" R="59" G="177" B="81" A="255"/>
<Vtx X="19" Y="-16" Z="2" S="-135" T="-17" R="244" G="252" B="126" A="255"/>
<Vtx X="22" Y="-12" Z="2" S="-135" T="-49" R="252" G="8" B="127" A="255"/>
<Vtx X="19" Y="-17" Z="4" S="-245" T="-17" R="205" G="65" B="97" A="255"/>
<Vtx X="23" Y="-12" Z="4" S="-245" T="-49" R="173" G="16" B="95" A="255"/>
<Vtx X="-19" Y="-16" Z="2" S="102" T="-17" R="2" G="2" B="127" A="255"/>
<Vtx X="-19" Y="-16" Z="2" S="111" T="-17" R="197" G="177" B="81" A="255"/>
<Vtx X="-22" Y="-12" Z="2" S="111" T="-49" R="159" G="239" B="81" A="255"/>
<Vtx X="-22" Y="-12" Z="2" S="102" T="-49" R="3" G="0" B="127" A="255"/>
<Vtx X="-23" Y="-12" Z="4" S="212" T="-49" R="79" G="14" B="98" A="255"/>
<Vtx X="-20" Y="-17" Z="4" S="212" T="-17" R="48" G="65" B="98" A="255"/>
<Vtx X="20" Y="-6" Z="2" S="-145" T="-74" R="88" G="30" B="86" A="255"/>
<Vtx X="20" Y="-6" Z="2" S="-135" T="-74" R="13" G="4" B="126" A="255"/>
<Vtx X="6" Y="23" Z="2" S="-135" T="-215" R="12" G="8" B="126" A="255"/>
<Vtx X="21" Y="-6" Z="4" S="-245" T="-74" R="173" G="228" B="92" A="255"/>
<Vtx X="-13" Y="-18" Z="2" S="47" T="-17" R="244" G="163" B="86" A="255"/>
<Vtx X="-19" Y="-16" Z="2" S="111" T="-26" R="2" G="2" B="127" A="255"/>
<Vtx X="-13" Y="-18" Z="2" S="47" T="-26" R="255" G="242" B="126" A="255"/>
<Vtx X="-20" Y="-17" Z="4" S="111" T="84" R="48" G="65" B="98" A="255"/>
<Vtx X="-13" Y="-18" Z="2" S="47" T="-26" R="255" G="242" B="126" A="255"/>
<Vtx X="-19" Y="-16" Z="2" S="111" T="-26" R="2" G="2" B="127" A="255"/>
<Vtx X="-13" Y="-19" Z="4" S="47" T="84" R="11" G="87" B="92" A="255"/>
<Vtx X="0" Y="-18" Z="2" S="-17" T="-26" R="0" G="232" B="125" A="255"/>
<Vtx X="0" Y="-19" Z="4" S="-17" T="84" R="0" G="90" B="90" A="255"/>
<Vtx X="13" Y="-18" Z="2" S="-81" T="-26" R="6" G="241" B="126" A="255"/>
<Vtx X="14" Y="-19" Z="4" S="-81" T="84" R="245" G="85" B="94" A="255"/>
<Vtx X="13" Y="-18" Z="2" S="-81" T="-17" R="12" G="163" B="86" A="255"/>
<Vtx X="0" Y="-18" Z="2" S="-17" T="-17" R="0" G="166" B="90" A="255"/>
<Vtx X="-13" Y="-18" Z="2" S="47" T="-17" R="244" G="163" B="86" A="255"/>
<Vtx X="19" Y="-16" Z="2" S="-145" T="-17" R="59" G="177" B="81" A="255"/>
<Vtx X="19" Y="-16" Z="2" S="-145" T="-26" R="244" G="252" B="126" A="255"/>
<Vtx X="14" Y="-19" Z="4" S="-84" T="84" R="245" G="85" B="94" A="255"/>
<Vtx X="19" Y="-17" Z="4" S="-144" T="84" R="205" G="65" B="97" A="255"/>
<Vtx X="-22" Y="-12" Z="2" S="102" T="-49" R="3" G="0" B="127" A="255"/>
<Vtx X="-22" Y="-12" Z="2" S="111" T="-49" R="159" G="239" B="81" A="255"/>
<Vtx X="-20" Y="-6" Z="2" S="111" T="-74" R="168" G="30" B="86" A="255"/>
<Vtx X="-20" Y="-6" Z="2" S="102" T="-74" R="243" G="4" B="126" A="255"/>
<Vtx X="-21" Y="-6" Z="4" S="212" T="-74" R="83" G="228" B="92" A="255"/>
<Vtx X="-23" Y="-12" Z="4" S="212" T="-49" R="79" G="14" B="98" A="255"/>
<Vtx X="-6" Y="23" Z="2" S="102" T="-215" R="244" G="8" B="126" A="255"/>
<Vtx X="-6" Y="23" Z="2" S="111" T="-215" R="179" G="52" B="86" A="255"/>
<Vtx X="-2" Y="27" Z="2" S="111" T="-273" R="215" G="90" B="79" A="255"/>
<Vtx X="-2" Y="27" Z="2" S="102" T="-273" R="2" G="250" B="127" A="255"/>
<Vtx X="-3" Y="28" Z="4" S="212" T="-273" R="32" G="184" B="100" A="255"/>
<Vtx X="-7" Y="24" Z="4" S="212" T="-215" R="73" G="208" B="92" A="255"/>
<Vtx X="20" Y="-6" Z="2" S="-145" T="-74" R="88" G="30" B="86" A="255"/>
<Vtx X="22" Y="-12" Z="2" S="-145" T="-49" R="97" G="239" B="81" A="255"/>
<Vtx X="22" Y="-12" Z="2" S="-135" T="-49" R="252" G="8" B="127" A="255"/>
<Vtx X="20" Y="-6" Z="2" S="-135" T="-74" R="13" G="4" B="126" A="255"/>
<Vtx X="23" Y="-12" Z="4" S="-245" T="-49" R="173" G="16" B="95" A="255"/>
<Vtx X="23" Y="-12" Z="4" S="-245" T="-49" R="173" G="16" B="95" A="255"/>
<Vtx X="21" Y="-6" Z="4" S="-245" T="-74" R="173" G="228" B="92" A="255"/>
<Vtx X="20" Y="-6" Z="2" S="-135" T="-74" R="13" G="4" B="126" A="255"/>
<Vtx X="-3" Y="28" Z="4" S="-286" T="67" R="32" G="184" B="100" A="255"/>
<Vtx X="0" Y="28" Z="4" S="-275" T="67" R="0" G="166" B="90" A="255"/>
<Vtx X="0" Y="30" Z="5" S="-275" T="48" R="0" G="232" B="125" A="255"/>
<Vtx X="-4" Y="30" Z="5" S="-295" T="48" R="9" G="236" B="125" A="255"/>
<Vtx X="-7" Y="24" Z="4" S="-310" T="94" R="73" G="208" B="92" A="255"/>
<Vtx X="-8" Y="25" Z="5" S="-326" T="83" R="20" G="243" B="125" A="255"/>
<Vtx X="-21" Y="-6" Z="4" S="-402" T="278" R="83" G="228" B="92" A="255"/>
<Vtx X="-23" Y="-5" Z="5" S="-420" T="272" R="23" G="248" B="125" A="255"/>
<Vtx X="-23" Y="-12" Z="4" S="-409" T="315" R="79" G="14" B="98" A="255"/>
<Vtx X="-25" Y="-13" Z="5" S="-429" T="319" R="23" G="4" B="125" A="255"/>
<Vtx X="-20" Y="-17" Z="4" S="-392" T="342" R="48" G="65" B="98" A="255"/>
<Vtx X="-21" Y="-19" Z="5" S="-404" T="359" R="14" G="18" B="125" A="255"/>
<Vtx X="-13" Y="-19" Z="4" S="-356" T="352" R="11" G="87" B="92" A="255"/>
<Vtx X="-14" Y="-21" Z="5" S="-358" T="371" R="3" G="24" B="125" A="255"/>
<Vtx X="0" Y="-19" Z="4" S="-273" T="352" R="0" G="90" B="90" A="255"/>
<Vtx X="0" Y="-21" Z="5" S="-273" T="371" R="0" G="24" B="125" A="255"/>
<Vtx X="14" Y="-19" Z="4" S="-189" T="352" R="245" G="85" B="94" A="255"/>
<Vtx X="15" Y="-21" Z="5" S="-178" T="371" R="253" G="22" B="125" A="255"/>
<Vtx X="0" Y="28" Z="4" S="-275" T="67" R="0" G="166" B="90" A="255"/>
<Vtx X="4" Y="30" Z="5" S="-250" T="48" R="247" G="236" B="125" A="255"/>
<Vtx X="3" Y="28" Z="4" S="-259" T="67" R="224" G="184" B="100" A="255"/>
<Vtx X="8" Y="25" Z="5" S="-219" T="83" R="236" G="243" B="125" A="255"/>
<Vtx X="7" Y="24" Z="4" S="-235" T="94" R="183" G="208" B="92" A="255"/>
<Vtx X="23" Y="-5" Z="5" S="-125" T="272" R="233" G="248" B="125" A="255"/>
<Vtx X="21" Y="-6" Z="4" S="-143" T="278" R="173" G="228" B="92" A="255"/>
<Vtx X="25" Y="-12" Z="5" S="-117" T="314" R="231" G="3" B="124" A="255"/>
<Vtx X="23" Y="-12" Z="4" S="-136" T="315" R="173" G="16" B="95" A="255"/>
<Vtx X="20" Y="-20" Z="5" S="-147" T="363" R="247" G="15" B="126" A="255"/>
<Vtx X="19" Y="-17" Z="4" S="-153" T="342" R="205" G="65" B="97" A="255"/>
<Vtx X="15" Y="-21" Z="5" S="-178" T="371" R="253" G="22" B="125" A="255"/>
<Vtx X="20" Y="-20" Z="5" S="-147" T="363" R="247" G="15" B="126" A="255"/>
<Vtx X="19" Y="-17" Z="4" S="-153" T="342" R="205" G="65" B="97" A="255"/>
<Vtx X="14" Y="-19" Z="4" S="-188" T="352" R="245" G="85" B="94" A="255"/>
<Vtx X="-7" Y="24" Z="4" S="212" T="-215" R="73" G="208" B="92" A="255"/>
<Vtx X="-21" Y="-6" Z="4" S="212" T="-74" R="83" G="228" B="92" A="255"/>
<Vtx X="-20" Y="-6" Z="2" S="102" T="-74" R="243" G="4" B="126" A="255"/>
<Vtx X="-6" Y="23" Z="2" S="102" T="-215" R="244" G="8" B="126" A="255"/>
<Vtx X="-6" Y="23" Z="2" S="111" T="-215" R="179" G="52" B="86" A="255"/>
<Vtx X="-20" Y="-6" Z="2" S="111" T="-74" R="168" G="30" B="86" A="255"/>
<Vtx X="0" Y="34" Z="5" S="-274" T="27" R="0" G="28" B="124" A="255"/>
<Vtx X="20" Y="27" Z="5" S="-147" T="68" R="16" G="22" B="124" A="255"/>
<Vtx X="22" Y="30" Z="4" S="-131" T="40" R="54" G="75" B="87" A="255"/>
<Vtx X="0" Y="37" Z="4" S="-270" T="-5" R="0" G="93" B="87" A="255"/>
<Vtx X="0" Y="37" Z="4" S="494" T="-529" R="0" G="93" B="87" A="255"/>
<Vtx X="22" Y="30" Z="4" S="395" T="-529" R="54" G="75" B="87" A="255"/>
<Vtx X="23" Y="32" Z="0" S="393" T="-273" R="75" G="103" B="0" A="255"/>
<Vtx X="0" Y="39" Z="0" S="495" T="-273" R="0" G="127" B="0" A="255"/>
<Vtx X="32" Y="10" Z="5" S="-70" T="174" R="27" G="8" B="124" A="255"/>
<Vtx X="36" Y="12" Z="4" S="-41" T="161" R="88" G="28" B="87" A="255"/>
<Vtx X="22" Y="30" Z="4" S="-126" T="43" R="54" G="75" B="87" A="255"/>
<Vtx X="22" Y="30" Z="4" S="391" T="-529" R="54" G="75" B="87" A="255"/>
<Vtx X="36" Y="12" Z="4" S="293" T="-529" R="88" G="28" B="87" A="255"/>
<Vtx X="37" Y="12" Z="0" S="291" T="-273" R="121" G="39" B="0" A="255"/>
<Vtx X="32" Y="-12" Z="5" S="-70" T="313" R="28" G="245" B="123" A="255"/>
<Vtx X="36" Y="-12" Z="4" S="-39" T="315" R="90" G="226" B="85" A="255"/>
<Vtx X="36" Y="12" Z="4" S="-39" T="167" R="88" G="28" B="87" A="255"/>
<Vtx X="36" Y="12" Z="4" S="289" T="-529" R="88" G="28" B="87" A="255"/>
<Vtx X="36" Y="-12" Z="4" S="189" T="-529" R="90" G="226" B="85" A="255"/>
<Vtx X="37" Y="-12" Z="0" S="188" T="-273" R="121" G="218" B="255" A="255"/>
<Vtx X="22" Y="-26" Z="5" S="-137" T="404" R="19" G="234" B="124" A="255"/>
<Vtx X="23" Y="-30" Z="4" S="-124" T="433" R="56" G="181" B="86" A="255"/>
<Vtx X="32" Y="-12" Z="5" S="-70" T="313" R="28" G="245" B="123" A="255"/>
<Vtx X="23" Y="-30" Z="4" S="-124" T="433" R="56" G="181" B="86" A="255"/>
<Vtx X="36" Y="-12" Z="4" S="-42" T="319" R="90" G="226" B="85" A="255"/>
<Vtx X="36" Y="-12" Z="4" S="185" T="-529" R="90" G="226" B="85" A="255"/>
<Vtx X="23" Y="-30" Z="4" S="90" T="-529" R="56" G="181" B="86" A="255"/>
<Vtx X="23" Y="-32" Z="0" S="86" T="-273" R="73" G="152" B="0" A="255"/>
<Vtx X="37" Y="-12" Z="0" S="188" T="-273" R="121" G="218" B="255" A="255"/>
<Vtx X="22" Y="-26" Z="5" S="-137" T="404" R="19" G="234" B="124" A="255"/>
<Vtx X="-1" Y="-33" Z="5" S="-278" T="450" R="255" G="229" B="124" A="255"/>
<Vtx X="0" Y="-37" Z="4" S="-271" T="485" R="0" G="165" B="89" A="255"/>
<Vtx X="23" Y="-30" Z="4" S="-128" T="438" R="56" G="181" B="86" A="255"/>
<Vtx X="23" Y="-30" Z="4" S="86" T="-529" R="56" G="181" B="86" A="255"/>
<Vtx X="0" Y="-37" Z="4" S="-15" T="-529" R="0" G="165" B="89" A="255"/>
<Vtx X="0" Y="-39" Z="0" S="-17" T="-273" R="0" G="129" B="1" A="255"/>
<Vtx X="-20" Y="-27" Z="5" S="-397" T="412" R="240" G="234" B="124" A="255"/>
<Vtx X="-22" Y="-30" Z="4" S="-414" T="439" R="202" G="181" B="87" A="255"/>
<Vtx X="0" Y="-37" Z="4" S="-277" T="484" R="0" G="165" B="89" A="255"/>
<Vtx X="0" Y="-37" Z="4" S="-20" T="-529" R="0" G="165" B="89" A="255"/>
<Vtx X="-22" Y="-30" Z="4" S="-117" T="-529" R="202" G="181" B="87" A="255"/>
<Vtx X="-23" Y="-32" Z="0" S="-119" T="-273" R="181" G="153" B="0" A="255"/>
<Vtx X="-32" Y="-10" Z="5" S="-475" T="305" R="229" G="248" B="124" A="255"/>
<Vtx X="-36" Y="-12" Z="4" S="-504" T="318" R="168" G="228" B="87" A="255"/>
<Vtx X="-22" Y="-30" Z="4" S="-419" T="436" R="202" G="181" B="87" A="255"/>
<Vtx X="-22" Y="-30" Z="4" S="-121" T="-529" R="202" G="181" B="87" A="255"/>
<Vtx X="-36" Y="-12" Z="4" S="-219" T="-529" R="168" G="228" B="87" A="255"/>
<Vtx X="-37" Y="-12" Z="0" S="-221" T="-273" R="135" G="217" B="0" A="255"/>
<Vtx X="-32" Y="10" Z="5" S="-475" T="174" R="229" G="8" B="124" A="255"/>
<Vtx X="-36" Y="12" Z="4" S="-506" T="167" R="168" G="28" B="87" A="255"/>
<Vtx X="-36" Y="-12" Z="4" S="-506" T="312" R="168" G="228" B="87" A="255"/>
<Vtx X="-36" Y="-12" Z="4" S="-223" T="-529" R="168" G="228" B="87" A="255"/>
<Vtx X="-36" Y="12" Z="4" S="-322" T="-529" R="168" G="28" B="87" A="255"/>
<Vtx X="-37" Y="12" Z="0" S="-324" T="-273" R="135" G="39" B="0" A="255"/>
<Vtx X="0" Y="39" Z="0" S="-529" T="-273" R="0" G="127" B="0" A="255"/>
<Vtx X="-23" Y="32" Z="0" S="-426" T="-273" R="181" G="103" B="0" A="255"/>
<Vtx X="-22" Y="30" Z="4" S="-428" T="-529" R="202" G="75" B="87" A="255"/>
<Vtx X="0" Y="37" Z="4" S="-526" T="-529" R="0" G="93" B="87" A="255"/>
<Vtx X="0" Y="37" Z="4" S="-276" T="-5" R="0" G="93" B="87" A="255"/>
<Vtx X="-22" Y="30" Z="4" S="-414" T="40" R="202" G="75" B="87" A="255"/>
<Vtx X="-20" Y="27" Z="5" S="-397" T="67" R="240" G="23" B="124" A="255"/>
<Vtx X="0" Y="34" Z="5" S="-274" T="27" R="0" G="28" B="124" A="255"/>
<Vtx X="-32" Y="10" Z="5" S="-475" T="174" R="229" G="8" B="124" A="255"/>
<Vtx X="-22" Y="30" Z="4" S="-419" T="43" R="202" G="75" B="87" A="255"/>
<Vtx X="-36" Y="12" Z="4" S="-504" T="161" R="168" G="28" B="87" A="255"/>
<Vtx X="-36" Y="12" Z="4" S="-326" T="-529" R="168" G="28" B="87" A="255"/>
<Vtx X="-22" Y="30" Z="4" S="-424" T="-529" R="202" G="75" B="87" A="255"/>
<Vtx X="-37" Y="12" Z="0" S="-324" T="-273" R="135" G="39" B="0" A="255"/>
<Vtx X="0" Y="39" Z="0" S="495" T="-273" R="0" G="127" B="0" A="255"/>
<Vtx X="23" Y="32" Z="0" S="393" T="-273" R="75" G="103" B="0" A="255"/>
<Vtx X="22" Y="30" Z="-4" S="395" T="-17" R="54" G="75" B="169" A="255"/>
<Vtx X="0" Y="37" Z="-4" S="493" T="-17" R="0" G="93" B="169" A="255"/>
<Vtx X="0" Y="37" Z="-4" S="242" T="-5" R="0" G="93" B="169" A="255"/>
<Vtx X="22" Y="30" Z="-4" S="381" T="40" R="54" G="75" B="169" A="255"/>
<Vtx X="20" Y="27" Z="-5" S="364" T="67" R="16" G="22" B="132" A="255"/>
<Vtx X="0" Y="34" Z="-5" S="239" T="27" R="0" G="28" B="132" A="255"/>
<Vtx X="23" Y="32" Z="0" S="393" T="-273" R="75" G="103" B="0" A="255"/>
<Vtx X="37" Y="12" Z="0" S="291" T="-273" R="121" G="39" B="0" A="255"/>
<Vtx X="36" Y="12" Z="-4" S="293" T="-17" R="88" G="28" B="169" A="255"/>
<Vtx X="22" Y="30" Z="-4" S="391" T="-17" R="54" G="75" B="169" A="255"/>
<Vtx X="22" Y="30" Z="-4" S="386" T="43" R="54" G="75" B="169" A="255"/>
<Vtx X="36" Y="12" Z="-4" S="471" T="161" R="88" G="28" B="169" A="255"/>
<Vtx X="32" Y="10" Z="-5" S="442" T="174" R="27" G="8" B="132" A="255"/>
<Vtx X="37" Y="12" Z="0" S="291" T="-273" R="121" G="39" B="0" A="255"/>
<Vtx X="37" Y="-12" Z="0" S="188" T="-273" R="121" G="218" B="255" A="255"/>
<Vtx X="36" Y="-12" Z="-4" S="190" T="-17" R="88" G="228" B="169" A="255"/>
<Vtx X="37" Y="12" Z="0" S="291" T="-273" R="121" G="39" B="0" A="255"/>
<Vtx X="36" Y="-12" Z="-4" S="190" T="-17" R="88" G="228" B="169" A="255"/>
<Vtx X="36" Y="12" Z="-4" S="289" T="-17" R="88" G="28" B="169" A="255"/>
<Vtx X="36" Y="12" Z="-4" S="473" T="167" R="88" G="28" B="169" A="255"/>
<Vtx X="36" Y="-12" Z="-4" S="473" T="312" R="88" G="228" B="169" A="255"/>
<Vtx X="32" Y="-10" Z="-5" S="442" T="305" R="27" G="248" B="132" A="255"/>
<Vtx X="32" Y="10" Z="-5" S="442" T="174" R="27" G="8" B="132" A="255"/>
<Vtx X="37" Y="-12" Z="0" S="188" T="-273" R="121" G="218" B="255" A="255"/>
<Vtx X="23" Y="-32" Z="0" S="86" T="-273" R="73" G="152" B="0" A="255"/>
<Vtx X="22" Y="-30" Z="-4" S="88" T="-17" R="54" G="181" B="169" A="255"/>
<Vtx X="36" Y="-12" Z="-4" S="186" T="-17" R="88" G="228" B="169" A="255"/>
<Vtx X="36" Y="-12" Z="-4" S="471" T="318" R="88" G="228" B="169" A="255"/>
<Vtx X="22" Y="-30" Z="-4" S="386" T="436" R="54" G="181" B="169" A="255"/>
<Vtx X="20" Y="-27" Z="-5" S="364" T="412" R="16" G="234" B="132" A="255"/>
<Vtx X="23" Y="-32" Z="0" S="86" T="-273" R="73" G="152" B="0" A="255"/>
<Vtx X="0" Y="-39" Z="0" S="-17" T="-273" R="0" G="129" B="1" A="255"/>
<Vtx X="0" Y="-37" Z="-4" S="-14" T="-17" R="0" G="163" B="169" A="255"/>
<Vtx X="22" Y="-30" Z="-4" S="84" T="-17" R="54" G="181" B="169" A="255"/>
<Vtx X="22" Y="-30" Z="-4" S="381" T="439" R="54" G="181" B="169" A="255"/>
<Vtx X="0" Y="-37" Z="-4" S="242" T="484" R="0" G="163" B="169" A="255"/>
<Vtx X="0" Y="-34" Z="-5" S="239" T="452" R="0" G="228" B="132" A="255"/>
<Vtx X="0" Y="-39" Z="0" S="-17" T="-273" R="0" G="129" B="1" A="255"/>
<Vtx X="-23" Y="-32" Z="0" S="-119" T="-273" R="181" G="153" B="0" A="255"/>
<Vtx X="-22" Y="-30" Z="-4" S="-117" T="-17" R="202" G="181" B="169" A="255"/>
<Vtx X="0" Y="-37" Z="-4" S="-19" T="-17" R="0" G="163" B="169" A="255"/>
<Vtx X="0" Y="-37" Z="-4" S="237" T="484" R="0" G="163" B="169" A="255"/>
<Vtx X="-22" Y="-30" Z="-4" S="98" T="439" R="202" G="181" B="169" A="255"/>
<Vtx X="-20" Y="-27" Z="-5" S="115" T="412" R="240" G="234" B="132" A="255"/>
<Vtx X="-23" Y="-32" Z="0" S="-119" T="-273" R="181" G="153" B="0" A="255"/>
<Vtx X="-37" Y="-12" Z="0" S="-221" T="-273" R="135" G="217" B="0" A="255"/>
<Vtx X="-36" Y="-12" Z="-4" S="-219" T="-17" R="168" G="228" B="169" A="255"/>
<Vtx X="-22" Y="-30" Z="-4" S="-121" T="-17" R="202" G="181" B="169" A="255"/>
<Vtx X="-22" Y="-30" Z="-4" S="93" T="436" R="202" G="181" B="169" A="255"/>
<Vtx X="-36" Y="-12" Z="-4" S="8" T="318" R="168" G="228" B="169" A="255"/>
<Vtx X="-32" Y="-10" Z="-5" S="37" T="305" R="229" G="248" B="132" A="255"/>
<Vtx X="-20" Y="-27" Z="-5" S="115" T="412" R="240" G="234" B="132" A="255"/>
<Vtx X="-37" Y="-12" Z="0" S="-221" T="-273" R="135" G="217" B="0" A="255"/>
<Vtx X="-37" Y="12" Z="0" S="-324" T="-273" R="135" G="39" B="0" A="255"/>
<Vtx X="-36" Y="12" Z="-4" S="-322" T="-17" R="168" G="28" B="169" A="255"/>
<Vtx X="-36" Y="-12" Z="-4" S="-223" T="-17" R="168" G="228" B="169" A="255"/>
<Vtx X="-36" Y="-12" Z="-4" S="6" T="312" R="168" G="228" B="169" A="255"/>
<Vtx X="-36" Y="12" Z="-4" S="6" T="167" R="168" G="28" B="169" A="255"/>
<Vtx X="-32" Y="10" Z="-5" S="37" T="174" R="229" G="8" B="132" A="255"/>
<Vtx X="-37" Y="12" Z="0" S="-324" T="-273" R="135" G="39" B="0" A="255"/>
<Vtx X="-23" Y="32" Z="0" S="-426" T="-273" R="181" G="103" B="0" A="255"/>
<Vtx X="-22" Y="30" Z="-4" S="-424" T="-17" R="202" G="75" B="169" A="255"/>
<Vtx X="-36" Y="12" Z="-4" S="-326" T="-17" R="168" G="28" B="169" A="255"/>
<Vtx X="-36" Y="12" Z="-4" S="8" T="161" R="168" G="28" B="169" A="255"/>
<Vtx X="-22" Y="30" Z="-4" S="93" T="43" R="202" G="75" B="169" A="255"/>
<Vtx X="-20" Y="27" Z="-5" S="115" T="67" R="240" G="22" B="132" A="255"/>
<Vtx X="0" Y="34" Z="-5" S="239" T="27" R="0" G="28" B="132" A="255"/>
<Vtx X="-22" Y="30" Z="-4" S="98" T="40" R="202" G="75" B="169" A="255"/>
<Vtx X="0" Y="37" Z="-4" S="237" T="-5" R="0" G="93" B="169" A="255"/>
<Vtx X="0" Y="37" Z="-4" S="-526" T="-17" R="0" G="93" B="169" A="255"/>
<Vtx X="-22" Y="30" Z="-4" S="-428" T="-17" R="202" G="75" B="169" A="255"/>
<Vtx X="-23" Y="32" Z="0" S="-426" T="-273" R="181" G="103" B="0" A="255"/>
<Vtx X="0" Y="39" Z="0" S="-529" T="-273" R="0" G="127" B="0" A="255"/>
</Vertex>

View File

@ -0,0 +1,10 @@
<Vertex Version="0">
<Vtx X="-37" Y="-39" Z="-5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="-37" Y="-39" Z="5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="-37" Y="39" Z="5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="-37" Y="39" Z="-5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="37" Y="-39" Z="-5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="37" Y="-39" Z="5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="37" Y="39" Z="5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
<Vtx X="37" Y="39" Z="-5" S="-16" T="-16" R="0" G="0" B="0" A="0"/>
</Vertex>

View File

@ -0,0 +1,21 @@
<DisplayList Version="0">
<PipeSync/>
<SetCombineLERP A0="G_CCMUX_TEXEL0" B0="G_CCMUX_0" C0="G_CCMUX_SHADE" D0="G_CCMUX_0" Aa0="G_ACMUX_0" Ab0="G_ACMUX_0" Ac0="G_ACMUX_0" Ad0="G_ACMUX_1" A1="G_CCMUX_COMBINED" B1="G_CCMUX_0" C1="G_CCMUX_PRIMITIVE" D1="G_CCMUX_0" Aa1="G_ACMUX_0" Ab1="G_ACMUX_0" Ac1="G_ACMUX_0" Ad1="G_ACMUX_COMBINED"/>
<SetGeometryMode G_ZBUFFER="1" G_SHADE="1" G_CULL_BACK="1" G_FOG="1" G_LIGHTING="1" G_TEXTURE_GEN="1" G_SHADING_SMOOTH="1" />
<SetOtherMode Cmd="G_SETOTHERMODE_H" Sft="4" Length="20" G_AD_NOISE="1" G_CD_MAGICSQ="1" G_CK_NONE="1" G_TC_FILT="1" G_TF_BILERP="1" G_TL_TILE="1" G_TD_CLAMP="1" G_TP_PERSP="1" G_CYC_2CYCLE="1" G_PM_NPRIMITIVE="1" />
<SetOtherMode Cmd="G_SETOTHERMODE_L" Sft="0" Length="32" G_AC_NONE="1" G_ZS_PIXEL="1" G_RM_FOG_SHADE_A="1" G_RM_AA_ZB_OPA_SURF2="1" />
<Texture S="1984" T="1984" Level="0" Tile="0" On="1"/>
<SetTextureLUT Mode="G_TT_NONE"/>
<TileSync/>
<SetTextureImage Path="objects/object_ocarina_c_up_button/noise_tex" Format="G_IM_FMT_I" Size="G_IM_SIZ_8b_LOAD_BLOCK" Width="1"/>
<SetTile Format="G_IM_FMT_I" Size="G_IM_SIZ_8b_LOAD_BLOCK" Line="0" TMem="0" Tile="7" Palette="0" Cms0="G_TX_WRAP" Cms1="G_TX_NOMIRROR" Cmt0="G_TX_WRAP" Cmt1="G_TX_NOMIRROR" MaskS="5" ShiftS="0" MaskT="5" ShiftT="0"/>
<LoadSync/>
<LoadBlock Tile="7" Uls="0" Ult="0" Lrs="511" Dxt="512"/>
<PipeSync/>
<SetTile Format="G_IM_FMT_I" Size="G_IM_SIZ_8b" Line="4" TMem="0" Tile="0" Palette="0" Cms0="G_TX_WRAP" Cms1="G_TX_NOMIRROR" Cmt0="G_TX_WRAP" Cmt1="G_TX_NOMIRROR" MaskS="5" ShiftS="0" MaskT="5" ShiftT="0"/>
<SetTileSize T="0" Uls="0" Ult="0" Lrs="124" Lrt="124"/>
<SetPrimColor M="0" L="0" R="255" G="160" B="0" A="255"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,21 @@
<DisplayList Version="0">
<PipeSync/>
<SetCombineLERP A0="G_CCMUX_TEXEL0" B0="G_CCMUX_0" C0="G_CCMUX_SHADE" D0="G_CCMUX_0" Aa0="G_ACMUX_0" Ab0="G_ACMUX_0" Ac0="G_ACMUX_0" Ad0="G_ACMUX_1" A1="G_CCMUX_COMBINED" B1="G_CCMUX_0" C1="G_CCMUX_PRIMITIVE" D1="G_CCMUX_0" Aa1="G_ACMUX_0" Ab1="G_ACMUX_0" Ac1="G_ACMUX_0" Ad1="G_ACMUX_COMBINED"/>
<SetGeometryMode G_ZBUFFER="1" G_SHADE="1" G_CULL_BACK="1" G_FOG="1" G_LIGHTING="1" G_TEXTURE_GEN="1" G_SHADING_SMOOTH="1" />
<SetOtherMode Cmd="G_SETOTHERMODE_H" Sft="4" Length="20" G_AD_NOISE="1" G_CD_MAGICSQ="1" G_CK_NONE="1" G_TC_FILT="1" G_TF_BILERP="1" G_TL_TILE="1" G_TD_CLAMP="1" G_TP_PERSP="1" G_CYC_2CYCLE="1" G_PM_NPRIMITIVE="1" />
<SetOtherMode Cmd="G_SETOTHERMODE_L" Sft="0" Length="32" G_AC_NONE="1" G_ZS_PIXEL="1" G_RM_FOG_SHADE_A="1" G_RM_AA_ZB_OPA_SURF2="1" />
<Texture S="2621" T="1311" Level="0" Tile="0" On="1"/>
<SetTextureLUT Mode="G_TT_NONE"/>
<TileSync/>
<SetTextureImage Path="objects/object_ocarina_c_up_button/noise_tex" Format="G_IM_FMT_I" Size="G_IM_SIZ_8b_LOAD_BLOCK" Width="1"/>
<SetTile Format="G_IM_FMT_I" Size="G_IM_SIZ_8b_LOAD_BLOCK" Line="0" TMem="0" Tile="7" Palette="0" Cms0="G_TX_WRAP" Cms1="G_TX_NOMIRROR" Cmt0="G_TX_WRAP" Cmt1="G_TX_NOMIRROR" MaskS="5" ShiftS="0" MaskT="5" ShiftT="0"/>
<LoadSync/>
<LoadBlock Tile="7" Uls="0" Ult="0" Lrs="511" Dxt="512"/>
<PipeSync/>
<SetTile Format="G_IM_FMT_I" Size="G_IM_SIZ_8b" Line="4" TMem="0" Tile="0" Palette="0" Cms0="G_TX_WRAP" Cms1="G_TX_NOMIRROR" Cmt0="G_TX_WRAP" Cmt1="G_TX_NOMIRROR" MaskS="5" ShiftS="0" MaskT="5" ShiftT="0"/>
<SetTileSize T="0" Uls="0" Ult="0" Lrs="124" Lrt="124"/>
<SetPrimColor M="0" L="0" R="170" G="107" B="0" A="255"/>
<EndDisplayList/>
</DisplayList>

View File

@ -44,6 +44,21 @@ static const ALIGN_ASSET(2) char gTitleRandomizerSubtitleTex[] = dgTitleRandomiz
#define dgTitleBossRushSubtitleTex "__OTR__objects/object_mag/gTitleBossRushSubtitleTex" #define dgTitleBossRushSubtitleTex "__OTR__objects/object_mag/gTitleBossRushSubtitleTex"
static const ALIGN_ASSET(2) char gTitleBossRushSubtitleTex[] = dgTitleBossRushSubtitleTex; static const ALIGN_ASSET(2) char gTitleBossRushSubtitleTex[] = dgTitleBossRushSubtitleTex;
#define dgOcarinaAButtonDL "__OTR__objects/object_ocarina_a_button/gOcarinaAButtonDL"
static const ALIGN_ASSET(2) char gOcarinaAButtonDL[] = dgOcarinaAButtonDL;
#define dgOcarinaCLeftButtonDL "__OTR__objects/object_ocarina_c_left_button/gOcarinaCLeftButtonDL"
static const ALIGN_ASSET(2) char gOcarinaCLeftButtonDL[] = dgOcarinaCLeftButtonDL;
#define dgOcarinaCRightButtonDL "__OTR__objects/object_ocarina_c_right_button/gOcarinaCRightButtonDL"
static const ALIGN_ASSET(2) char gOcarinaCRightButtonDL[] = dgOcarinaCRightButtonDL;
#define dgOcarinaCUpButtonDL "__OTR__objects/object_ocarina_c_up_button/gOcarinaCUpButtonDL"
static const ALIGN_ASSET(2) char gOcarinaCUpButtonDL[] = dgOcarinaCUpButtonDL;
#define dgOcarinaCDownButtonDL "__OTR__objects/object_ocarina_c_down_button/gOcarinaCDownButtonDL"
static const ALIGN_ASSET(2) char gOcarinaCDownButtonDL[] = dgOcarinaCDownButtonDL;
#define dgTriforcePiece0DL "__OTR__objects/object_triforce_piece_0/gTriforcePiece0DL" #define dgTriforcePiece0DL "__OTR__objects/object_triforce_piece_0/gTriforcePiece0DL"
static const ALIGN_ASSET(2) char gTriforcePiece0DL[] = dgTriforcePiece0DL; static const ALIGN_ASSET(2) char gTriforcePiece0DL[] = dgTriforcePiece0DL;

View File

@ -283,7 +283,7 @@ typedef struct {
// #endregion // #endregion
// #region SOH [Randomizer] // #region SOH [Randomizer]
// Upstream TODO: Move these to their own struct or name to more obviously specific to Randomizer // Upstream TODO: Move these to their own struct or name to more obviously specific to Randomizer
/* */ u16 randomizerInf[10]; /* */ u16 randomizerInf[11];
/* */ u8 mqDungeonCount; /* */ u8 mqDungeonCount;
/* */ u16 adultTradeItems; /* */ u16 adultTradeItems;
/* */ u8 triforcePiecesCollected; /* */ u8 triforcePiecesCollected;

View File

@ -348,7 +348,7 @@ const std::vector<FlagTable> flagTables = {
{ 0x24, "Market Crowd Text Randomizer" }, { 0x24, "Market Crowd Text Randomizer" },
{ 0x30, "Entered the Market" }, { 0x30, "Entered the Market" },
} }, } },
{ "Randomizer Inf Flags", RANDOMIZER_INF, 0x09, { { "Randomizer Inf Flags", RANDOMIZER_INF, 0x0A, {
{ RAND_INF_DUNGEONS_DONE_DEKU_TREE, "DUNGEONS_DONE_DEKU_TREE" }, { RAND_INF_DUNGEONS_DONE_DEKU_TREE, "DUNGEONS_DONE_DEKU_TREE" },
{ RAND_INF_DUNGEONS_DONE_DODONGOS_CAVERN, "DUNGEONS_DONE_DODONGOS_CAVERN" }, { RAND_INF_DUNGEONS_DONE_DODONGOS_CAVERN, "DUNGEONS_DONE_DODONGOS_CAVERN" },
{ RAND_INF_DUNGEONS_DONE_JABU_JABUS_BELLY, "DUNGEONS_DONE_JABU_JABUS_BELLY" }, { RAND_INF_DUNGEONS_DONE_JABU_JABUS_BELLY, "DUNGEONS_DONE_JABU_JABUS_BELLY" },
@ -516,6 +516,12 @@ const std::vector<FlagTable> flagTables = {
{ RAND_INF_TWINROVA_SOUL, "RAND_INF_TWINROVA_SOUL" }, { RAND_INF_TWINROVA_SOUL, "RAND_INF_TWINROVA_SOUL" },
{ RAND_INF_GANON_SOUL, "RAND_INF_GANON_SOUL" }, { RAND_INF_GANON_SOUL, "RAND_INF_GANON_SOUL" },
{ RAND_INF_GRANT_GANONS_BOSSKEY, "RAND_INF_GRANT_GANONS_BOSSKEY" }, { RAND_INF_GRANT_GANONS_BOSSKEY, "RAND_INF_GRANT_GANONS_BOSSKEY" },
{ RAND_INF_HAS_OCARINA_A, "RAND_INF_HAS_OCARINA_A"},
{ RAND_INF_HAS_OCARINA_C_UP, "RAND_INF_HAS_OCARINA_C_UP" },
{ RAND_INF_HAS_OCARINA_C_DOWN, "RAND_INF_HAS_OCARINA_C_DOWN" },
{ RAND_INF_HAS_OCARINA_C_LEFT, "RAND_INF_HAS_OCARINA_C_LEFT"},
{ RAND_INF_HAS_OCARINA_C_RIGHT, "RAND_INF_HAS_OCARINA_C_RIGHT"},
} }, } },
}; };

View File

@ -2047,6 +2047,61 @@ void HintTable_Init_Item() {
Text{"the soul of Ganon", "", ""}} Text{"the soul of Ganon", "", ""}}
); );
hintTable[RHT_OCARINA_A_BUTTON] = HintText::Item({
//obscure text
Text{"a musical letter", /*french*/"une lettre musicale", /*spanish*/"una letra musical"},
}, {
//ambiguous text
Text{"something melodic", /*french*/"quelque chose de mélodieux", /*spanish*/"algo melódico"}
}, {
//clear text
Text{"an Ocarina A Button", /*french*/"la Touche A de l'Ocarina", /*spanish*/"un botón A de Ocarina"}}
);
hintTable[RHT_OCARINA_C_UP_BUTTON] = HintText::Item({
//obscure text
Text{"a high tone", /*french*/"une tonalité élevée", /*spanish*/"un tono alto"},
}, {
//ambiguous text
Text{"something melodic", /*french*/"quelque chose de mélodieux", /*spanish*/"algo melódico"}
}, {
//clear text
Text{"an Ocarina C Up Button", /*french*/"la Touche C-Haut de l'Ocarina", /*spanish*/"un botón C superior de Ocarina"}}
);
hintTable[RHT_OCARINA_C_DOWN_BUTTON] = HintText::Item({
//obscure text
Text{"a low tone", /*french*/"une tonalité basse", /*spanish*/"un tono bajo"},
}, {
//ambiguous text
Text{"something melodic", /*french*/"quelque chose de mélodieux", /*spanish*/"algo melódico"}
}, {
//clear text
Text{"an Ocarina C Down Button", /*french*/"la Touche C-Bas de l'Ocarina", /*spanish*/"un botón C inferior de Ocarina"}}
);
hintTable[RHT_OCARINA_C_LEFT_BUTTON] = HintText::Item({
//obscure text
Text{"a leftward tone", /*french*/"une tonalité vers la gauche", /*spanish*/"un tono hacia la izquierda"},
}, {
//ambiguous text
Text{"something melodic", /*french*/"quelque chose de mélodieux", /*spanish*/"algo melódico"}
}, {
//clear text
Text{"an Ocarina C Left Button", /*french*/"la Touche C-Gauche de l'Ocarina", /*spanish*/"un botón C izquierdo de Ocarina"}}
);
hintTable[RHT_OCARINA_C_RIGHT_BUTTON] = HintText::Item({
//obscure text
Text{"a rightward tone", /*french*/"une tonalité vers la droite", /*spanish*/"un tono hacia la derecha"},
}, {
//ambiguous text
Text{"something melodic", /*french*/"quelque chose de mélodieux", /*spanish*/"algo melódico"}
}, {
//clear text
Text{"an Ocarina C Right Button", /*french*/"la Touche C-Droit de l'Ocarina", /*spanish*/"un botón C derecho de Ocarina"}}
);
hintTable[RHT_EPONA] = HintText::Item({ hintTable[RHT_EPONA] = HintText::Item({
//obscure text //obscure text
Text{"a horse", /*french*/"un fidèle destrier", /*spanish*/"una yegua"}, Text{"a horse", /*french*/"un fidèle destrier", /*spanish*/"una yegua"},

View File

@ -723,6 +723,21 @@ void GenerateItemPool() {
} }
} }
if (ctx->GetOption(RSK_SHUFFLE_OCARINA_BUTTONS)) {
AddItemToMainPool(RG_OCARINA_A_BUTTON);
AddItemToMainPool(RG_OCARINA_C_UP_BUTTON);
AddItemToMainPool(RG_OCARINA_C_DOWN_BUTTON);
AddItemToMainPool(RG_OCARINA_C_LEFT_BUTTON);
AddItemToMainPool(RG_OCARINA_C_RIGHT_BUTTON);
//TODO: Re-add when custom models work with ice traps
//ctx->possibleIceTrapModels.push_back(RG_OCARINA_A_BUTTON);
//ctx->possibleIceTrapModels.push_back(RG_OCARINA_C_UP_BUTTON);
//ctx->possibleIceTrapModels.push_back(RG_OCARINA_C_DOWN_BUTTON);
//ctx->possibleIceTrapModels.push_back(RG_OCARINA_C_LEFT_BUTTON);
//ctx->possibleIceTrapModels.push_back(RG_OCARINA_C_RIGHT_BUTTON);
}
if (ctx->GetOption(RSK_SHUFFLE_COWS)) { if (ctx->GetOption(RSK_SHUFFLE_COWS)) {
//9 total cow locations //9 total cow locations
for (uint8_t i = 0; i < 9; i++) { for (uint8_t i = 0; i < 9; i++) {

View File

@ -261,7 +261,7 @@ void AreaTable_Init() {
//Locations //Locations
LocationAccess(RC_LINKS_POCKET, {[]{return true;}}), LocationAccess(RC_LINKS_POCKET, {[]{return true;}}),
LocationAccess(RC_TRIFORCE_COMPLETED, {[]{return CanCompleteTriforce;}}), LocationAccess(RC_TRIFORCE_COMPLETED, {[]{return CanCompleteTriforce;}}),
LocationAccess(RC_SARIA_SONG_HINT, {[]{return CanPlay(SariasSong);}}), LocationAccess(RC_SARIA_SONG_HINT, {[]{return CanUse(RG_SARIAS_SONG);}}),
}, { }, {
//Exits //Exits
Entrance(RR_ROOT_EXITS, {[]{return true;}}) Entrance(RR_ROOT_EXITS, {[]{return true;}})
@ -271,12 +271,12 @@ void AreaTable_Init() {
//Exits //Exits
Entrance(RR_CHILD_SPAWN, {[]{return IsChild;}}), Entrance(RR_CHILD_SPAWN, {[]{return IsChild;}}),
Entrance(RR_ADULT_SPAWN, {[]{return IsAdult;}}), Entrance(RR_ADULT_SPAWN, {[]{return IsAdult;}}),
Entrance(RR_MINUET_OF_FOREST_WARP, {[]{return CanPlay(MinuetOfForest);}}), Entrance(RR_MINUET_OF_FOREST_WARP, {[]{return CanUse(RG_MINUET_OF_FOREST);}}),
Entrance(RR_BOLERO_OF_FIRE_WARP, {[]{return CanPlay(BoleroOfFire) && CanLeaveForest;}}), Entrance(RR_BOLERO_OF_FIRE_WARP, {[]{return CanUse(RG_BOLERO_OF_FIRE) && CanLeaveForest;}}),
Entrance(RR_SERENADE_OF_WATER_WARP, {[]{return CanPlay(SerenadeOfWater) && CanLeaveForest;}}), Entrance(RR_SERENADE_OF_WATER_WARP, {[]{return CanUse(RG_SERENADE_OF_WATER) && CanLeaveForest;}}),
Entrance(RR_NOCTURNE_OF_SHADOW_WARP, {[]{return CanPlay(NocturneOfShadow) && CanLeaveForest;}}), Entrance(RR_NOCTURNE_OF_SHADOW_WARP, {[]{return CanUse(RG_NOCTURNE_OF_SHADOW) && CanLeaveForest;}}),
Entrance(RR_REQUIEM_OF_SPIRIT_WARP, {[]{return CanPlay(RequiemOfSpirit) && CanLeaveForest;}}), Entrance(RR_REQUIEM_OF_SPIRIT_WARP, {[]{return CanUse(RG_REQUIEM_OF_SPIRIT) && CanLeaveForest;}}),
Entrance(RR_PRELUDE_OF_LIGHT_WARP, {[]{return CanPlay(PreludeOfLight) && CanLeaveForest;}}), Entrance(RR_PRELUDE_OF_LIGHT_WARP, {[]{return CanUse(RG_PRELUDE_OF_LIGHT) && CanLeaveForest;}}),
}); });
areaTable[RR_CHILD_SPAWN] = Area("Child Spawn", "", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, {}, { areaTable[RR_CHILD_SPAWN] = Area("Child Spawn", "", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, {}, {

View File

@ -34,10 +34,10 @@ void AreaTable_Init_BottomOfTheWell() {
LocationAccess(RC_BOTTOM_OF_THE_WELL_CENTER_SKULLTULA_CHEST, {[]{return randoCtx->GetTrickOption(RT_LENS_BOTW) || CanUse(RG_LENS_OF_TRUTH);}}), LocationAccess(RC_BOTTOM_OF_THE_WELL_CENTER_SKULLTULA_CHEST, {[]{return randoCtx->GetTrickOption(RT_LENS_BOTW) || CanUse(RG_LENS_OF_TRUTH);}}),
LocationAccess(RC_BOTTOM_OF_THE_WELL_BACK_LEFT_BOMBABLE_CHEST, {[]{return (randoCtx->GetTrickOption(RT_LENS_BOTW) || CanUse(RG_LENS_OF_TRUTH)) && HasExplosives;}}), LocationAccess(RC_BOTTOM_OF_THE_WELL_BACK_LEFT_BOMBABLE_CHEST, {[]{return (randoCtx->GetTrickOption(RT_LENS_BOTW) || CanUse(RG_LENS_OF_TRUTH)) && HasExplosives;}}),
LocationAccess(RC_BOTTOM_OF_THE_WELL_FREESTANDING_KEY, {[]{return Sticks || CanUse(RG_DINS_FIRE);}}), LocationAccess(RC_BOTTOM_OF_THE_WELL_FREESTANDING_KEY, {[]{return Sticks || CanUse(RG_DINS_FIRE);}}),
LocationAccess(RC_BOTTOM_OF_THE_WELL_LENS_OF_TRUTH_CHEST, {[]{return CanPlay(ZeldasLullaby) && (KokiriSword || (Sticks && randoCtx->GetTrickOption(RT_BOTW_CHILD_DEADHAND)));}}), LocationAccess(RC_BOTTOM_OF_THE_WELL_LENS_OF_TRUTH_CHEST, {[]{return CanUse(RG_ZELDAS_LULLABY) && (KokiriSword || (Sticks && randoCtx->GetTrickOption(RT_BOTW_CHILD_DEADHAND)));}}),
LocationAccess(RC_BOTTOM_OF_THE_WELL_INVISIBLE_CHEST, {[]{return CanPlay(ZeldasLullaby) && (randoCtx->GetTrickOption(RT_LENS_BOTW) || CanUse(RG_LENS_OF_TRUTH));}}), LocationAccess(RC_BOTTOM_OF_THE_WELL_INVISIBLE_CHEST, {[]{return CanUse(RG_ZELDAS_LULLABY) && (randoCtx->GetTrickOption(RT_LENS_BOTW) || CanUse(RG_LENS_OF_TRUTH));}}),
LocationAccess(RC_BOTTOM_OF_THE_WELL_UNDERWATER_FRONT_CHEST, {[]{return CanPlay(ZeldasLullaby);}}), LocationAccess(RC_BOTTOM_OF_THE_WELL_UNDERWATER_FRONT_CHEST, {[]{return CanUse(RG_ZELDAS_LULLABY);}}),
LocationAccess(RC_BOTTOM_OF_THE_WELL_UNDERWATER_LEFT_CHEST, {[]{return CanPlay(ZeldasLullaby);}}), LocationAccess(RC_BOTTOM_OF_THE_WELL_UNDERWATER_LEFT_CHEST, {[]{return CanUse(RG_ZELDAS_LULLABY);}}),
LocationAccess(RC_BOTTOM_OF_THE_WELL_MAP_CHEST, {[]{return HasExplosives || (((SmallKeys(RR_BOTTOM_OF_THE_WELL, 3) && (randoCtx->GetTrickOption(RT_LENS_BOTW) || CanUse(RG_LENS_OF_TRUTH))) || CanUse(RG_DINS_FIRE) || (Sticks && randoCtx->GetTrickOption(RT_BOTW_BASEMENT))) && GoronBracelet);}}), LocationAccess(RC_BOTTOM_OF_THE_WELL_MAP_CHEST, {[]{return HasExplosives || (((SmallKeys(RR_BOTTOM_OF_THE_WELL, 3) && (randoCtx->GetTrickOption(RT_LENS_BOTW) || CanUse(RG_LENS_OF_TRUTH))) || CanUse(RG_DINS_FIRE) || (Sticks && randoCtx->GetTrickOption(RT_BOTW_BASEMENT))) && GoronBracelet);}}),
LocationAccess(RC_BOTTOM_OF_THE_WELL_FIRE_KEESE_CHEST, {[]{return SmallKeys(RR_BOTTOM_OF_THE_WELL, 3) && (randoCtx->GetTrickOption(RT_LENS_BOTW) || CanUse(RG_LENS_OF_TRUTH));}}), LocationAccess(RC_BOTTOM_OF_THE_WELL_FIRE_KEESE_CHEST, {[]{return SmallKeys(RR_BOTTOM_OF_THE_WELL, 3) && (randoCtx->GetTrickOption(RT_LENS_BOTW) || CanUse(RG_LENS_OF_TRUTH));}}),
LocationAccess(RC_BOTTOM_OF_THE_WELL_LIKE_LIKE_CHEST, {[]{return SmallKeys(RR_BOTTOM_OF_THE_WELL, 3) && (randoCtx->GetTrickOption(RT_LENS_BOTW) || CanUse(RG_LENS_OF_TRUTH));}}), LocationAccess(RC_BOTTOM_OF_THE_WELL_LIKE_LIKE_CHEST, {[]{return SmallKeys(RR_BOTTOM_OF_THE_WELL, 3) && (randoCtx->GetTrickOption(RT_LENS_BOTW) || CanUse(RG_LENS_OF_TRUTH));}}),
@ -67,8 +67,8 @@ void AreaTable_Init_BottomOfTheWell() {
}, { }, {
//Exits //Exits
Entrance(RR_BOTTOM_OF_THE_WELL_ENTRYWAY, {[]{return true;}}), Entrance(RR_BOTTOM_OF_THE_WELL_ENTRYWAY, {[]{return true;}}),
Entrance(RR_BOTTOM_OF_THE_WELL_MQ_MIDDLE, {[]{return CanPlay(ZeldasLullaby) || (randoCtx->GetTrickOption(RT_BOTW_MQ_PITS) && HasExplosives);}}), Entrance(RR_BOTTOM_OF_THE_WELL_MQ_MIDDLE, {[]{return CanUse(RG_ZELDAS_LULLABY) || (randoCtx->GetTrickOption(RT_BOTW_MQ_PITS) && HasExplosives);}}),
//Trick: CanPlay(ZeldasLullaby) || (LogicBotWMQPits && HasExplosives) //Trick: CanUse(RG_ZELDAS_LULLABY) || (LogicBotWMQPits && HasExplosives)
}); });
areaTable[RR_BOTTOM_OF_THE_WELL_MQ_MIDDLE] = Area("Bottom of the Well MQ Middle", "Bottom of the Well", RA_BOTTOM_OF_THE_WELL, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_BOTTOM_OF_THE_WELL_MQ_MIDDLE] = Area("Bottom of the Well MQ Middle", "Bottom of the Well", RA_BOTTOM_OF_THE_WELL, NO_DAY_NIGHT_CYCLE, {}, {

View File

@ -58,7 +58,7 @@ void AreaTable_Init_CastleTown() {
}, { }, {
//Exits //Exits
Entrance(RR_TOT_ENTRANCE, {[]{return true;}}), Entrance(RR_TOT_ENTRANCE, {[]{return true;}}),
Entrance(RR_TOT_BEYOND_DOOR_OF_TIME, {[]{return randoCtx->GetOption(RSK_DOOR_OF_TIME).Is(RO_DOOROFTIME_OPEN) || (CanPlay(SongOfTime) && (randoCtx->GetOption(RSK_DOOR_OF_TIME).Is(RO_DOOROFTIME_SONGONLY) || (HasAllStones && OcarinaOfTime)));}}), Entrance(RR_TOT_BEYOND_DOOR_OF_TIME, {[]{return randoCtx->GetOption(RSK_DOOR_OF_TIME).Is(RO_DOOROFTIME_OPEN) || (CanUse(RG_SONG_OF_TIME) && (randoCtx->GetOption(RSK_DOOR_OF_TIME).Is(RO_DOOROFTIME_SONGONLY) || (HasAllStones && OcarinaOfTime)));}}),
}); });
areaTable[RR_TOT_BEYOND_DOOR_OF_TIME] = Area("Beyond Door of Time", "Beyond Door of Time", RA_TEMPLE_OF_TIME, NO_DAY_NIGHT_CYCLE, { areaTable[RR_TOT_BEYOND_DOOR_OF_TIME] = Area("Beyond Door of Time", "Beyond Door of Time", RA_TEMPLE_OF_TIME, NO_DAY_NIGHT_CYCLE, {
@ -112,7 +112,7 @@ void AreaTable_Init_CastleTown() {
areaTable[RR_HC_GREAT_FAIRY_FOUNTAIN] = Area("HC Great Fairy Fountain", "HC Great Fairy Fountain", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_HC_GREAT_FAIRY_FOUNTAIN] = Area("HC Great Fairy Fountain", "HC Great Fairy Fountain", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, {
//Locations //Locations
LocationAccess(RC_HC_GREAT_FAIRY_REWARD, {[]{return CanPlay(ZeldasLullaby);}}), LocationAccess(RC_HC_GREAT_FAIRY_REWARD, {[]{return CanUse(RG_ZELDAS_LULLABY);}}),
}, { }, {
//Exits //Exits
Entrance(RR_CASTLE_GROUNDS, {[]{return true;}}), Entrance(RR_CASTLE_GROUNDS, {[]{return true;}}),
@ -147,7 +147,7 @@ void AreaTable_Init_CastleTown() {
areaTable[RR_OGC_GREAT_FAIRY_FOUNTAIN] = Area("OGC Great Fairy Fountain", "OGC Great Fairy Fountain", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_OGC_GREAT_FAIRY_FOUNTAIN] = Area("OGC Great Fairy Fountain", "OGC Great Fairy Fountain", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, {
//Locations //Locations
LocationAccess(RC_OGC_GREAT_FAIRY_REWARD, {[]{return CanPlay(ZeldasLullaby);}}), LocationAccess(RC_OGC_GREAT_FAIRY_REWARD, {[]{return CanUse(RG_ZELDAS_LULLABY);}}),
}, { }, {
//Exits //Exits
Entrance(RR_CASTLE_GROUNDS, {[]{return true;}}), Entrance(RR_CASTLE_GROUNDS, {[]{return true;}}),
@ -193,7 +193,7 @@ void AreaTable_Init_CastleTown() {
areaTable[RR_MARKET_MASK_SHOP] = Area("Market Mask Shop", "Market Mask Shop", RA_NONE, NO_DAY_NIGHT_CYCLE, { areaTable[RR_MARKET_MASK_SHOP] = Area("Market Mask Shop", "Market Mask Shop", RA_NONE, NO_DAY_NIGHT_CYCLE, {
//Events //Events
EventAccess(&SkullMask, {[]{return SkullMask || (ZeldasLetter && (randoCtx->GetOption(RSK_COMPLETE_MASK_QUEST) || ChildCanAccess(RR_KAKARIKO_VILLAGE)));}}), EventAccess(&SkullMask, {[]{return SkullMask || (ZeldasLetter && (randoCtx->GetOption(RSK_COMPLETE_MASK_QUEST) || ChildCanAccess(RR_KAKARIKO_VILLAGE)));}}),
EventAccess(&MaskOfTruth, {[]{return MaskOfTruth || (SkullMask && (randoCtx->GetOption(RSK_COMPLETE_MASK_QUEST) || (ChildCanAccess(RR_THE_LOST_WOODS) && CanPlay(SariasSong) && AreaTable(RR_THE_GRAVEYARD)->childDay && ChildCanAccess(RR_HYRULE_FIELD) && HasAllStones)));}}), EventAccess(&MaskOfTruth, {[]{return MaskOfTruth || (SkullMask && (randoCtx->GetOption(RSK_COMPLETE_MASK_QUEST) || (ChildCanAccess(RR_THE_LOST_WOODS) && CanUse(RG_SARIAS_SONG) && AreaTable(RR_THE_GRAVEYARD)->childDay && ChildCanAccess(RR_HYRULE_FIELD) && HasAllStones)));}}),
}, {}, { }, {}, {
//Exits //Exits
Entrance(RR_THE_MARKET, {[]{return true;}}), Entrance(RR_THE_MARKET, {[]{return true;}}),

View File

@ -9,7 +9,7 @@ void AreaTable_Init_DeathMountain() {
auto ctx = Rando::Context::GetInstance(); auto ctx = Rando::Context::GetInstance();
areaTable[RR_DEATH_MOUNTAIN_TRAIL] = Area("Death Mountain", "Death Mountain", RA_DEATH_MOUNTAIN_TRAIL, DAY_NIGHT_CYCLE, { areaTable[RR_DEATH_MOUNTAIN_TRAIL] = Area("Death Mountain", "Death Mountain", RA_DEATH_MOUNTAIN_TRAIL, DAY_NIGHT_CYCLE, {
//Events //Events
EventAccess(&BeanPlantFairy, {[]{return BeanPlantFairy || (CanPlantBean(RR_DEATH_MOUNTAIN_TRAIL) && CanPlay(SongOfStorms) && (HasExplosives || GoronBracelet));}}), EventAccess(&BeanPlantFairy, {[]{return BeanPlantFairy || (CanPlantBean(RR_DEATH_MOUNTAIN_TRAIL) && CanUse(RG_SONG_OF_STORMS) && (HasExplosives || GoronBracelet));}}),
}, { }, {
//Locations //Locations
LocationAccess(RC_DMT_CHEST, {[]{return CanBlastOrSmash || (randoCtx->GetTrickOption(RT_DMT_BOMBABLE) && IsChild && GoronBracelet);}}), LocationAccess(RC_DMT_CHEST, {[]{return CanBlastOrSmash || (randoCtx->GetTrickOption(RT_DMT_BOMBABLE) && IsChild && GoronBracelet);}}),
@ -54,7 +54,7 @@ void AreaTable_Init_DeathMountain() {
areaTable[RR_DMT_COW_GROTTO] = Area("DMT Cow Grotto", "DMT Cow Grotto", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_DMT_COW_GROTTO] = Area("DMT Cow Grotto", "DMT Cow Grotto", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, {
//Locations //Locations
LocationAccess(RC_DMT_COW_GROTTO_COW, {[]{return CanPlay(EponasSong);}}), LocationAccess(RC_DMT_COW_GROTTO_COW, {[]{return CanUse(RG_EPONAS_SONG);}}),
}, { }, {
//Exits //Exits
Entrance(RR_DEATH_MOUNTAIN_SUMMIT, {[]{return true;}}), Entrance(RR_DEATH_MOUNTAIN_SUMMIT, {[]{return true;}}),
@ -72,7 +72,7 @@ void AreaTable_Init_DeathMountain() {
areaTable[RR_DMT_GREAT_FAIRY_FOUNTAIN] = Area("DMT Great Fairy Fountain", "DMT Great Fairy Fountain", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_DMT_GREAT_FAIRY_FOUNTAIN] = Area("DMT Great Fairy Fountain", "DMT Great Fairy Fountain", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, {
//Locations //Locations
LocationAccess(RC_DMT_GREAT_FAIRY_REWARD, {[]{return CanPlay(ZeldasLullaby);}}), LocationAccess(RC_DMT_GREAT_FAIRY_REWARD, {[]{return CanUse(RG_ZELDAS_LULLABY);}}),
}, { }, {
//Exits //Exits
Entrance(RR_DEATH_MOUNTAIN_SUMMIT, {[]{return true;}}), Entrance(RR_DEATH_MOUNTAIN_SUMMIT, {[]{return true;}}),
@ -85,7 +85,7 @@ void AreaTable_Init_DeathMountain() {
EventAccess(&BugRock, {[]{return BugRock || (CanBlastOrSmash || CanUse(RG_SILVER_GAUNTLETS));}}), EventAccess(&BugRock, {[]{return BugRock || (CanBlastOrSmash || CanUse(RG_SILVER_GAUNTLETS));}}),
EventAccess(&GoronCityChildFire, {[]{return GoronCityChildFire || (IsChild && CanUse(RG_DINS_FIRE));}}), EventAccess(&GoronCityChildFire, {[]{return GoronCityChildFire || (IsChild && CanUse(RG_DINS_FIRE));}}),
EventAccess(&GCWoodsWarpOpen, {[]{return GCWoodsWarpOpen || (CanBlastOrSmash || CanUse(RG_DINS_FIRE) || CanUse(RG_FAIRY_BOW) || GoronBracelet || GoronCityChildFire);}}), EventAccess(&GCWoodsWarpOpen, {[]{return GCWoodsWarpOpen || (CanBlastOrSmash || CanUse(RG_DINS_FIRE) || CanUse(RG_FAIRY_BOW) || GoronBracelet || GoronCityChildFire);}}),
EventAccess(&GCDaruniasDoorOpenChild, {[]{return GCDaruniasDoorOpenChild || (IsChild && CanPlay(ZeldasLullaby));}}), EventAccess(&GCDaruniasDoorOpenChild, {[]{return GCDaruniasDoorOpenChild || (IsChild && CanUse(RG_ZELDAS_LULLABY));}}),
EventAccess(&StopGCRollingGoronAsAdult, {[]{return StopGCRollingGoronAsAdult || (IsAdult && (GoronBracelet || HasExplosives || Bow || (randoCtx->GetTrickOption(RT_GC_LINK_GORON_DINS) && CanUse(RG_DINS_FIRE))));}}), EventAccess(&StopGCRollingGoronAsAdult, {[]{return StopGCRollingGoronAsAdult || (IsAdult && (GoronBracelet || HasExplosives || Bow || (randoCtx->GetTrickOption(RT_GC_LINK_GORON_DINS) && CanUse(RG_DINS_FIRE))));}}),
}, { }, {
//Locations //Locations
@ -106,9 +106,8 @@ void AreaTable_Init_DeathMountain() {
Entrance(RR_GC_WOODS_WARP, {[]{return GCWoodsWarpOpen;}}), Entrance(RR_GC_WOODS_WARP, {[]{return GCWoodsWarpOpen;}}),
Entrance(RR_GC_SHOP, {[]{return (IsAdult && StopGCRollingGoronAsAdult) || (IsChild && (CanBlastOrSmash || GoronBracelet || GoronCityChildFire || CanUse(RG_FAIRY_BOW)));}}), Entrance(RR_GC_SHOP, {[]{return (IsAdult && StopGCRollingGoronAsAdult) || (IsChild && (CanBlastOrSmash || GoronBracelet || GoronCityChildFire || CanUse(RG_FAIRY_BOW)));}}),
Entrance(RR_GC_DARUNIAS_CHAMBER, {[]{return (IsAdult && StopGCRollingGoronAsAdult) || (IsChild && GCDaruniasDoorOpenChild);}}), Entrance(RR_GC_DARUNIAS_CHAMBER, {[]{return (IsAdult && StopGCRollingGoronAsAdult) || (IsChild && GCDaruniasDoorOpenChild);}}),
Entrance(RR_GC_GROTTO_PLATFORM, {[]{return IsAdult && ((CanPlay(SongOfTime) && ((EffectiveHealth > 2) || CanUse(RG_GORON_TUNIC) || CanUse(RG_LONGSHOT) || CanUse(RG_NAYRUS_LOVE))) || (EffectiveHealth > 1 && CanUse(RG_GORON_TUNIC) && CanUse(RG_HOOKSHOT)) || (CanUse(RG_NAYRUS_LOVE) && CanUse(RG_HOOKSHOT)) || (EffectiveHealth > 2 && CanUse(RG_HOOKSHOT) && randoCtx->GetTrickOption(RT_GC_GROTTO)));}}), Entrance(RR_GC_GROTTO_PLATFORM, {[]{return IsAdult && ((CanUse(RG_SONG_OF_TIME) && ((EffectiveHealth > 2) || CanUse(RG_GORON_TUNIC) || CanUse(RG_LONGSHOT) || CanUse(RG_NAYRUS_LOVE))) || (EffectiveHealth > 1 && CanUse(RG_GORON_TUNIC) && CanUse(RG_HOOKSHOT)) || (CanUse(RG_NAYRUS_LOVE) && CanUse(RG_HOOKSHOT)) || (EffectiveHealth > 2 && CanUse(RG_HOOKSHOT) && randoCtx->GetTrickOption(RT_GC_GROTTO)));}}),
}); });
areaTable[RR_GC_WOODS_WARP] = Area("GC Woods Warp", "Goron City", RA_GORON_CITY, NO_DAY_NIGHT_CYCLE, { areaTable[RR_GC_WOODS_WARP] = Area("GC Woods Warp", "Goron City", RA_GORON_CITY, NO_DAY_NIGHT_CYCLE, {
//Events //Events
EventAccess(&GCWoodsWarpOpen, {[]{return GCWoodsWarpOpen || (CanBlastOrSmash || CanUse(RG_DINS_FIRE));}}), EventAccess(&GCWoodsWarpOpen, {[]{return GCWoodsWarpOpen || (CanBlastOrSmash || CanUse(RG_DINS_FIRE));}}),
@ -123,7 +122,7 @@ void AreaTable_Init_DeathMountain() {
EventAccess(&GoronCityChildFire, {[]{return GoronCityChildFire || (IsChild && CanUse(RG_STICKS));}}), EventAccess(&GoronCityChildFire, {[]{return GoronCityChildFire || (IsChild && CanUse(RG_STICKS));}}),
}, { }, {
//Locations //Locations
LocationAccess(RC_GC_DARUNIAS_JOY, {[]{return IsChild && CanPlay(SariasSong);}}), LocationAccess(RC_GC_DARUNIAS_JOY, {[]{return IsChild && CanUse(RG_SARIAS_SONG);}}),
}, { }, {
//Exits //Exits
Entrance(RR_GORON_CITY, {[]{return true;}}), Entrance(RR_GORON_CITY, {[]{return true;}}),
@ -133,7 +132,7 @@ void AreaTable_Init_DeathMountain() {
areaTable[RR_GC_GROTTO_PLATFORM] = Area("GC Grotto Platform", "Goron City", RA_GORON_CITY, NO_DAY_NIGHT_CYCLE, {}, {}, { areaTable[RR_GC_GROTTO_PLATFORM] = Area("GC Grotto Platform", "Goron City", RA_GORON_CITY, NO_DAY_NIGHT_CYCLE, {}, {}, {
//Exits //Exits
Entrance(RR_GC_GROTTO, {[]{return true;}}), Entrance(RR_GC_GROTTO, {[]{return true;}}),
Entrance(RR_GORON_CITY, {[]{return EffectiveHealth > 2 || CanUse(RG_GORON_TUNIC) || CanUse(RG_NAYRUS_LOVE) || ((IsChild || CanPlay(SongOfTime)) && CanUse(RG_LONGSHOT));}}), Entrance(RR_GORON_CITY, {[]{return EffectiveHealth > 2 || CanUse(RG_GORON_TUNIC) || CanUse(RG_NAYRUS_LOVE) || ((IsChild || CanUse(RG_SONG_OF_TIME)) && CanUse(RG_LONGSHOT));}}),
}); });
areaTable[RR_GC_SHOP] = Area("GC Shop", "GC Shop", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_GC_SHOP] = Area("GC Shop", "GC Shop", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, {
@ -220,7 +219,7 @@ void AreaTable_Init_DeathMountain() {
areaTable[RR_DMC_CENTRAL_LOCAL] = Area("DMC Central Local", "Death Mountain Crater", RA_DEATH_MOUNTAIN_CRATER, NO_DAY_NIGHT_CYCLE, { areaTable[RR_DMC_CENTRAL_LOCAL] = Area("DMC Central Local", "Death Mountain Crater", RA_DEATH_MOUNTAIN_CRATER, NO_DAY_NIGHT_CYCLE, {
//Events //Events
EventAccess(&BeanPlantFairy, {[]{return BeanPlantFairy || (CanPlantBean(RR_DMC_CENTRAL_LOCAL) && CanPlay(SongOfStorms));}}), EventAccess(&BeanPlantFairy, {[]{return BeanPlantFairy || (CanPlantBean(RR_DMC_CENTRAL_LOCAL) && CanUse(RG_SONG_OF_STORMS));}}),
}, { }, {
//Locations //Locations
LocationAccess(RC_DMC_GS_BEAN_PATCH, {[]{return (FireTimer >= 8 || Hearts >= 3) && CanPlantBugs && CanChildAttack;}}), LocationAccess(RC_DMC_GS_BEAN_PATCH, {[]{return (FireTimer >= 8 || Hearts >= 3) && CanPlantBugs && CanChildAttack;}}),
@ -234,7 +233,7 @@ void AreaTable_Init_DeathMountain() {
areaTable[RR_DMC_GREAT_FAIRY_FOUNTAIN] = Area("DMC Great Fairy Fountain", "DMC Great Fairy Fountain", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_DMC_GREAT_FAIRY_FOUNTAIN] = Area("DMC Great Fairy Fountain", "DMC Great Fairy Fountain", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, {
//Locations //Locations
LocationAccess(RC_DMC_GREAT_FAIRY_REWARD, {[]{return CanPlay(ZeldasLullaby);}}), LocationAccess(RC_DMC_GREAT_FAIRY_REWARD, {[]{return CanUse(RG_ZELDAS_LULLABY);}}),
}, { }, {
//Exits //Exits
Entrance(RR_DMC_LOWER_LOCAL, {[]{return true;}}), Entrance(RR_DMC_LOWER_LOCAL, {[]{return true;}}),

View File

@ -177,8 +177,8 @@ void AreaTable_Init_DekuTree() {
LocationAccess(RC_DEKU_TREE_MQ_COMPASS_CHEST, {[]{return true;}}), LocationAccess(RC_DEKU_TREE_MQ_COMPASS_CHEST, {[]{return true;}}),
LocationAccess(RC_DEKU_TREE_MQ_GS_COMPASS_ROOM, {[]{return HookshotOrBoomerang && LocationAccess(RC_DEKU_TREE_MQ_GS_COMPASS_ROOM, {[]{return HookshotOrBoomerang &&
Here(RR_DEKU_TREE_MQ_COMPASS_ROOM, []{return HasBombchus || Here(RR_DEKU_TREE_MQ_COMPASS_ROOM, []{return HasBombchus ||
(Bombs && (CanPlay(SongOfTime) || IsAdult)) || (Bombs && (CanUse(RG_SONG_OF_TIME) || IsAdult)) ||
(IsAdult && CanUse(RG_MEGATON_HAMMER) && (CanPlay(SongOfTime) || randoCtx->GetTrickOption(RT_DEKU_MQ_COMPASS_GS)));});}}), (IsAdult && CanUse(RG_MEGATON_HAMMER) && (CanUse(RG_SONG_OF_TIME) || randoCtx->GetTrickOption(RT_DEKU_MQ_COMPASS_GS)));});}}),
}, { }, {
//Exits //Exits
Entrance(RR_DEKU_TREE_MQ_LOBBY, {[]{return true;}}), Entrance(RR_DEKU_TREE_MQ_LOBBY, {[]{return true;}}),
@ -196,7 +196,7 @@ void AreaTable_Init_DekuTree() {
areaTable[RR_DEKU_TREE_MQ_BASEMENT_WATER_ROOM_BACK] = Area("Deku Tree MQ Basement Water Room Front", "Deku Tree", RA_DEKU_TREE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_DEKU_TREE_MQ_BASEMENT_WATER_ROOM_BACK] = Area("Deku Tree MQ Basement Water Room Front", "Deku Tree", RA_DEKU_TREE, NO_DAY_NIGHT_CYCLE, {}, {
//Locations //Locations
LocationAccess(RC_DEKU_TREE_MQ_AFTER_SPINNING_LOG_CHEST, {[]{return CanPlay(SongOfTime);}}), LocationAccess(RC_DEKU_TREE_MQ_AFTER_SPINNING_LOG_CHEST, {[]{return CanUse(RG_SONG_OF_TIME);}}),
}, { }, {
//Exits //Exits
Entrance(RR_DEKU_TREE_MQ_BASEMENT_BACK_ROOM, {[]{return Here(RR_DEKU_TREE_MQ_BASEMENT_WATER_ROOM_BACK, []{return (IsChild && CanUse(RG_STICKS)) || CanUse(RG_DINS_FIRE) || Entrance(RR_DEKU_TREE_MQ_BASEMENT_BACK_ROOM, {[]{return Here(RR_DEKU_TREE_MQ_BASEMENT_WATER_ROOM_BACK, []{return (IsChild && CanUse(RG_STICKS)) || CanUse(RG_DINS_FIRE) ||
@ -208,7 +208,7 @@ void AreaTable_Init_DekuTree() {
areaTable[RR_DEKU_TREE_MQ_BASEMENT_BACK_ROOM] = Area("Deku Tree MQ Basement Back Room", "Deku Tree", RA_DEKU_TREE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_DEKU_TREE_MQ_BASEMENT_BACK_ROOM] = Area("Deku Tree MQ Basement Back Room", "Deku Tree", RA_DEKU_TREE, NO_DAY_NIGHT_CYCLE, {}, {
//Locations //Locations
LocationAccess(RC_DEKU_TREE_MQ_GS_BASEMENT_GRAVES_ROOM, {[]{return (IsAdult && CanUse(RG_LONGSHOT)) || (CanPlay(SongOfTime) && HookshotOrBoomerang);}}), LocationAccess(RC_DEKU_TREE_MQ_GS_BASEMENT_GRAVES_ROOM, {[]{return (IsAdult && CanUse(RG_LONGSHOT)) || (CanUse(RG_SONG_OF_TIME) && HookshotOrBoomerang);}}),
LocationAccess(RC_DEKU_TREE_MQ_GS_BASEMENT_BACK_ROOM, {[]{return HasFireSourceWithTorch && HookshotOrBoomerang;}}), LocationAccess(RC_DEKU_TREE_MQ_GS_BASEMENT_BACK_ROOM, {[]{return HasFireSourceWithTorch && HookshotOrBoomerang;}}),
}, { }, {
//Exits //Exits

View File

@ -228,7 +228,7 @@ void AreaTable_Init_DodongosCavern() {
LocationAccess(RC_DODONGOS_CAVERN_MQ_COMPASS_CHEST, {[]{return CanAdultAttack || CanChildAttack || Nuts;}}), LocationAccess(RC_DODONGOS_CAVERN_MQ_COMPASS_CHEST, {[]{return CanAdultAttack || CanChildAttack || Nuts;}}),
LocationAccess(RC_DODONGOS_CAVERN_MQ_LARVAE_ROOM_CHEST, {[]{return (IsChild && CanUse(RG_STICKS)) || HasFireSource;}}), LocationAccess(RC_DODONGOS_CAVERN_MQ_LARVAE_ROOM_CHEST, {[]{return (IsChild && CanUse(RG_STICKS)) || HasFireSource;}}),
LocationAccess(RC_DODONGOS_CAVERN_MQ_TORCH_PUZZLE_ROOM_CHEST, {[]{return CanBlastOrSmash || (IsChild && CanUse(RG_STICKS)) || CanUse(RG_DINS_FIRE) || (IsAdult && (randoCtx->GetTrickOption(RT_DC_JUMP) || HoverBoots || Hookshot));}}), LocationAccess(RC_DODONGOS_CAVERN_MQ_TORCH_PUZZLE_ROOM_CHEST, {[]{return CanBlastOrSmash || (IsChild && CanUse(RG_STICKS)) || CanUse(RG_DINS_FIRE) || (IsAdult && (randoCtx->GetTrickOption(RT_DC_JUMP) || HoverBoots || Hookshot));}}),
LocationAccess(RC_DODONGOS_CAVERN_MQ_GS_SONG_OF_TIME_BLOCK_ROOM, {[]{return CanPlay(SongOfTime) && (CanChildAttack || CanAdultAttack);}}), LocationAccess(RC_DODONGOS_CAVERN_MQ_GS_SONG_OF_TIME_BLOCK_ROOM, {[]{return CanUse(RG_SONG_OF_TIME) && (CanChildAttack || CanAdultAttack);}}),
LocationAccess(RC_DODONGOS_CAVERN_MQ_GS_LARVAE_ROOM, {[]{return (IsChild && CanUse(RG_STICKS)) || HasFireSource;}}), LocationAccess(RC_DODONGOS_CAVERN_MQ_GS_LARVAE_ROOM, {[]{return (IsChild && CanUse(RG_STICKS)) || HasFireSource;}}),
LocationAccess(RC_DODONGOS_CAVERN_MQ_GS_LIZALFOS_ROOM, {[]{return CanBlastOrSmash;}}), LocationAccess(RC_DODONGOS_CAVERN_MQ_GS_LIZALFOS_ROOM, {[]{return CanBlastOrSmash;}}),
LocationAccess(RC_DODONGOS_CAVERN_MQ_DEKU_SCRUB_LOBBY_REAR, {[]{return CanStunDeku;}}), LocationAccess(RC_DODONGOS_CAVERN_MQ_DEKU_SCRUB_LOBBY_REAR, {[]{return CanStunDeku;}}),

View File

@ -96,7 +96,7 @@ void AreaTable_Init_FireTemple() {
//Exits //Exits
Entrance(RR_FIRE_TEMPLE_FIRST_ROOM, {[]{return SmallKeys(RR_FIRE_TEMPLE, 2);}}), Entrance(RR_FIRE_TEMPLE_FIRST_ROOM, {[]{return SmallKeys(RR_FIRE_TEMPLE, 2);}}),
Entrance(RR_FIRE_TEMPLE_BIG_LAVA_ROOM_NORTH_GORON, {[]{return true;}}), Entrance(RR_FIRE_TEMPLE_BIG_LAVA_ROOM_NORTH_GORON, {[]{return true;}}),
Entrance(RR_FIRE_TEMPLE_BIG_LAVA_ROOM_NORTH_TILES, {[]{return IsAdult && (CanPlay(SongOfTime) || randoCtx->GetTrickOption(RT_FIRE_SOT));}}), Entrance(RR_FIRE_TEMPLE_BIG_LAVA_ROOM_NORTH_TILES, {[]{return IsAdult && (CanUse(RG_SONG_OF_TIME) || randoCtx->GetTrickOption(RT_FIRE_SOT));}}),
Entrance(RR_FIRE_TEMPLE_BIG_LAVA_ROOM_SOUTH_GORON, {[]{return IsAdult && HasExplosives;}}), Entrance(RR_FIRE_TEMPLE_BIG_LAVA_ROOM_SOUTH_GORON, {[]{return IsAdult && HasExplosives;}}),
Entrance(RR_FIRE_TEMPLE_FIRE_PILLAR_ROOM, {[]{return SmallKeys(RR_FIRE_TEMPLE, 3);}}), Entrance(RR_FIRE_TEMPLE_FIRE_PILLAR_ROOM, {[]{return SmallKeys(RR_FIRE_TEMPLE, 3);}}),
}); });
@ -253,11 +253,11 @@ void AreaTable_Init_FireTemple() {
areaTable[RR_FIRE_TEMPLE_WEST_CENTRAL_LOWER] = Area("Fire Temple West Central Lower", "Fire Temple", RA_FIRE_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_FIRE_TEMPLE_WEST_CENTRAL_LOWER] = Area("Fire Temple West Central Lower", "Fire Temple", RA_FIRE_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, {
//Locations //Locations
LocationAccess(RC_FIRE_TEMPLE_HIGHEST_GORON_CHEST, {[]{return Here(RR_FIRE_TEMPLE_WEST_CENTRAL_UPPER, []{return (CanPlay(SongOfTime) || randoCtx->GetTrickOption(RT_RUSTED_SWITCHES)) && CanUse(RG_MEGATON_HAMMER);});}}), LocationAccess(RC_FIRE_TEMPLE_HIGHEST_GORON_CHEST, {[]{return Here(RR_FIRE_TEMPLE_WEST_CENTRAL_UPPER, []{return (CanUse(RG_SONG_OF_TIME) || randoCtx->GetTrickOption(RT_RUSTED_SWITCHES)) && CanUse(RG_MEGATON_HAMMER);});}}),
}, { }, {
//Exits //Exits
Entrance(RR_FIRE_TEMPLE_FIRE_MAZE_ROOM, {[]{return SmallKeys(RR_FIRE_TEMPLE, 8);}}), Entrance(RR_FIRE_TEMPLE_FIRE_MAZE_ROOM, {[]{return SmallKeys(RR_FIRE_TEMPLE, 8);}}),
Entrance(RR_FIRE_TEMPLE_WEST_CENTRAL_UPPER, {[]{return IsAdult && CanPlay(SongOfTime);}}), Entrance(RR_FIRE_TEMPLE_WEST_CENTRAL_UPPER, {[]{return IsAdult && CanUse(RG_SONG_OF_TIME);}}),
Entrance(RR_FIRE_TEMPLE_LATE_FIRE_MAZE, {[]{return true;}}), Entrance(RR_FIRE_TEMPLE_LATE_FIRE_MAZE, {[]{return true;}}),
}); });
@ -367,13 +367,13 @@ void AreaTable_Init_FireTemple() {
areaTable[RR_FIRE_TEMPLE_MQ_UPPER_MAZE] = Area("Fire Temple MQ Upper Maze", "Fire Temple", RA_FIRE_TEMPLE, NO_DAY_NIGHT_CYCLE, { areaTable[RR_FIRE_TEMPLE_MQ_UPPER_MAZE] = Area("Fire Temple MQ Upper Maze", "Fire Temple", RA_FIRE_TEMPLE, NO_DAY_NIGHT_CYCLE, {
//Events //Events
//EventAccess(&WallFairy, {[]{return WallFairy || (IsAdult && (((CanPlay(SongOfTime) && CanUse(RG_HOOKSHOT) && HasExplosives) || CanUse(RG_LONGSHOT))));}}), //EventAccess(&WallFairy, {[]{return WallFairy || (IsAdult && (((CanUse(RG_SONG_OF_TIME) && CanUse(RG_HOOKSHOT) && HasExplosives) || CanUse(RG_LONGSHOT))));}}),
EventAccess(&FairyPot, {[]{return SmallKeys(RR_FIRE_TEMPLE, 3);}}), EventAccess(&FairyPot, {[]{return SmallKeys(RR_FIRE_TEMPLE, 3);}}),
}, { }, {
//Locations //Locations
LocationAccess(RC_FIRE_TEMPLE_MQ_LIZALFOS_MAZE_UPPER_CHEST, {[]{return true;}}), LocationAccess(RC_FIRE_TEMPLE_MQ_LIZALFOS_MAZE_UPPER_CHEST, {[]{return true;}}),
LocationAccess(RC_FIRE_TEMPLE_MQ_COMPASS_CHEST, {[]{return HasExplosives;}}), LocationAccess(RC_FIRE_TEMPLE_MQ_COMPASS_CHEST, {[]{return HasExplosives;}}),
LocationAccess(RC_FIRE_TEMPLE_MQ_GS_SKULL_ON_FIRE, {[]{return IsAdult && ((CanPlay(SongOfTime) && CanUse(RG_HOOKSHOT) && HasExplosives) || CanUse(RG_LONGSHOT));}}), LocationAccess(RC_FIRE_TEMPLE_MQ_GS_SKULL_ON_FIRE, {[]{return IsAdult && ((CanUse(RG_SONG_OF_TIME) && CanUse(RG_HOOKSHOT) && HasExplosives) || CanUse(RG_LONGSHOT));}}),
}, { }, {
//Exits //Exits
Entrance(RR_FIRE_TEMPLE_MQ_UPPER, {[]{return SmallKeys(RR_FIRE_TEMPLE, 3) && IsAdult && ((CanUse(RG_FAIRY_BOW) && CanUse(RG_HOOKSHOT)) || CanUse(RG_FIRE_ARROWS));}}), Entrance(RR_FIRE_TEMPLE_MQ_UPPER, {[]{return SmallKeys(RR_FIRE_TEMPLE, 3) && IsAdult && ((CanUse(RG_FAIRY_BOW) && CanUse(RG_HOOKSHOT)) || CanUse(RG_FIRE_ARROWS));}}),
@ -385,8 +385,8 @@ void AreaTable_Init_FireTemple() {
//Trick: (IsAdult && CanUse(RG_HOOKSHOT)) || LogicFireMQFlameMaze //Trick: (IsAdult && CanUse(RG_HOOKSHOT)) || LogicFireMQFlameMaze
LocationAccess(RC_FIRE_TEMPLE_MQ_CHEST_ON_FIRE, {[]{return ((IsAdult && CanUse(RG_HOOKSHOT)) || randoCtx->GetTrickOption(RT_FIRE_MQ_FLAME_MAZE)) && SmallKeys(RR_FIRE_TEMPLE, 4);}}), LocationAccess(RC_FIRE_TEMPLE_MQ_CHEST_ON_FIRE, {[]{return ((IsAdult && CanUse(RG_HOOKSHOT)) || randoCtx->GetTrickOption(RT_FIRE_MQ_FLAME_MAZE)) && SmallKeys(RR_FIRE_TEMPLE, 4);}}),
//Trick: ((IsAdult && CanUse(RG_HOOKSHOT)) || LogicFireMQFlameMaze) && SmallKeys(RR_FIRE_TEMPLE, 4) //Trick: ((IsAdult && CanUse(RG_HOOKSHOT)) || LogicFireMQFlameMaze) && SmallKeys(RR_FIRE_TEMPLE, 4)
LocationAccess(RC_FIRE_TEMPLE_MQ_GS_FIRE_WALL_MAZE_SIDE_ROOM, {[]{return CanPlay(SongOfTime) || HoverBoots || randoCtx->GetTrickOption(RT_FIRE_MQ_FLAME_MAZE);}}), LocationAccess(RC_FIRE_TEMPLE_MQ_GS_FIRE_WALL_MAZE_SIDE_ROOM, {[]{return CanUse(RG_SONG_OF_TIME) || HoverBoots || randoCtx->GetTrickOption(RT_FIRE_MQ_FLAME_MAZE);}}),
//Trick: CanPlay(SongOfTime) || HoverBoots || LogicFireMQFlameMaze //Trick: CanUse(RG_SONG_OF_TIME) || HoverBoots || LogicFireMQFlameMaze
LocationAccess(RC_FIRE_TEMPLE_MQ_GS_FIRE_WALL_MAZE_CENTER, {[]{return HasExplosives;}}), LocationAccess(RC_FIRE_TEMPLE_MQ_GS_FIRE_WALL_MAZE_CENTER, {[]{return HasExplosives;}}),
LocationAccess(RC_FIRE_TEMPLE_MQ_GS_ABOVE_FIRE_WALL_MAZE, {[]{return (IsAdult && CanUse(RG_HOOKSHOT) && SmallKeys(RR_FIRE_TEMPLE, 5)) || (randoCtx->GetTrickOption(RT_FIRE_MQ_ABOVE_MAZE_GS) && IsAdult && CanUse(RG_LONGSHOT));}}), LocationAccess(RC_FIRE_TEMPLE_MQ_GS_ABOVE_FIRE_WALL_MAZE, {[]{return (IsAdult && CanUse(RG_HOOKSHOT) && SmallKeys(RR_FIRE_TEMPLE, 5)) || (randoCtx->GetTrickOption(RT_FIRE_MQ_ABOVE_MAZE_GS) && IsAdult && CanUse(RG_LONGSHOT));}}),
//Trick: (IsAdult && CanUse(RG_HOOKSHOT) && SmallKeys(RR_FIRE_TEMPLE, 5)) || (LogicFireMQAboveMazeGS && IsAdult && CanUse(RG_LONGSHOT)) //Trick: (IsAdult && CanUse(RG_HOOKSHOT) && SmallKeys(RR_FIRE_TEMPLE, 5)) || (LogicFireMQAboveMazeGS && IsAdult && CanUse(RG_LONGSHOT))

View File

@ -47,7 +47,7 @@ void AreaTable_Init_ForestTemple() {
//Exits //Exits
Entrance(RR_FOREST_TEMPLE_SOUTH_CORRIDOR, {[]{return true;}}), Entrance(RR_FOREST_TEMPLE_SOUTH_CORRIDOR, {[]{return true;}}),
Entrance(RR_FOREST_TEMPLE_NORTH_CORRIDOR, {[]{return true;}}), Entrance(RR_FOREST_TEMPLE_NORTH_CORRIDOR, {[]{return true;}}),
Entrance(RR_FOREST_TEMPLE_NW_OUTDOORS_LOWER, {[]{return CanPlay(SongOfTime) || IsChild;}}), Entrance(RR_FOREST_TEMPLE_NW_OUTDOORS_LOWER, {[]{return CanUse(RG_SONG_OF_TIME) || IsChild;}}),
Entrance(RR_FOREST_TEMPLE_NE_OUTDOORS_LOWER, {[]{return CanUse(RG_FAIRY_BOW) || CanUse(RG_FAIRY_SLINGSHOT);}}), Entrance(RR_FOREST_TEMPLE_NE_OUTDOORS_LOWER, {[]{return CanUse(RG_FAIRY_BOW) || CanUse(RG_FAIRY_SLINGSHOT);}}),
Entrance(RR_FOREST_TEMPLE_WEST_CORRIDOR, {[]{return SmallKeys(RR_FOREST_TEMPLE, 1, 5);}}), Entrance(RR_FOREST_TEMPLE_WEST_CORRIDOR, {[]{return SmallKeys(RR_FOREST_TEMPLE, 1, 5);}}),
Entrance(RR_FOREST_TEMPLE_EAST_CORRIDOR, {[]{return false;}}), Entrance(RR_FOREST_TEMPLE_EAST_CORRIDOR, {[]{return false;}}),
@ -81,7 +81,7 @@ void AreaTable_Init_ForestTemple() {
LocationAccess(RC_FOREST_TEMPLE_GS_LEVEL_ISLAND_COURTYARD, {[]{return CanUse(RG_LONGSHOT) || Here(RR_FOREST_TEMPLE_NW_OUTDOORS_UPPER, []{return HookshotOrBoomerang;});}}), LocationAccess(RC_FOREST_TEMPLE_GS_LEVEL_ISLAND_COURTYARD, {[]{return CanUse(RG_LONGSHOT) || Here(RR_FOREST_TEMPLE_NW_OUTDOORS_UPPER, []{return HookshotOrBoomerang;});}}),
}, { }, {
//Exits //Exits
Entrance(RR_FOREST_TEMPLE_LOBBY, {[]{return CanPlay(SongOfTime);}}), Entrance(RR_FOREST_TEMPLE_LOBBY, {[]{return CanUse(RG_SONG_OF_TIME);}}),
Entrance(RR_FOREST_TEMPLE_NW_OUTDOORS_UPPER, {[]{return false;}}), Entrance(RR_FOREST_TEMPLE_NW_OUTDOORS_UPPER, {[]{return false;}}),
Entrance(RR_FOREST_TEMPLE_MAP_ROOM, {[]{return true;}}), Entrance(RR_FOREST_TEMPLE_MAP_ROOM, {[]{return true;}}),
Entrance(RR_FOREST_TEMPLE_SEWER, {[]{return GoldScale || CanUse(RG_IRON_BOOTS) || HasAccessTo(RR_FOREST_TEMPLE_NE_OUTDOORS_UPPER);}}), Entrance(RR_FOREST_TEMPLE_SEWER, {[]{return GoldScale || CanUse(RG_IRON_BOOTS) || HasAccessTo(RR_FOREST_TEMPLE_NE_OUTDOORS_UPPER);}}),
@ -295,7 +295,7 @@ void AreaTable_Init_ForestTemple() {
EventAccess(&FairyPot, {[]{return true;}}), EventAccess(&FairyPot, {[]{return true;}}),
}, { }, {
//Locations //Locations
LocationAccess(RC_FOREST_TEMPLE_MQ_WOLFOS_CHEST, {[]{return (CanPlay(SongOfTime) || IsChild) && (CanJumpslash || CanUse(RG_DINS_FIRE) || CanUse(RG_STICKS) || CanUse(RG_FAIRY_SLINGSHOT) || KokiriSword);}}), LocationAccess(RC_FOREST_TEMPLE_MQ_WOLFOS_CHEST, {[]{return (CanUse(RG_SONG_OF_TIME) || IsChild) && (CanJumpslash || CanUse(RG_DINS_FIRE) || CanUse(RG_STICKS) || CanUse(RG_FAIRY_SLINGSHOT) || KokiriSword);}}),
LocationAccess(RC_FOREST_TEMPLE_MQ_GS_BLOCK_PUSH_ROOM, {[]{return CanUse(RG_KOKIRI_SWORD) || CanUse(RG_MASTER_SWORD) || CanUse(RG_BIGGORON_SWORD) || CanUse(RG_MEGATON_HAMMER);}}), LocationAccess(RC_FOREST_TEMPLE_MQ_GS_BLOCK_PUSH_ROOM, {[]{return CanUse(RG_KOKIRI_SWORD) || CanUse(RG_MASTER_SWORD) || CanUse(RG_BIGGORON_SWORD) || CanUse(RG_MEGATON_HAMMER);}}),
}, { }, {
//Exits //Exits
@ -344,11 +344,11 @@ void AreaTable_Init_ForestTemple() {
}, { }, {
//Locations //Locations
LocationAccess(RC_FOREST_TEMPLE_MQ_WELL_CHEST, {[]{return (IsAdult && CanUse(RG_FAIRY_BOW)) || (IsChild && CanUse(RG_FAIRY_SLINGSHOT));}}), LocationAccess(RC_FOREST_TEMPLE_MQ_WELL_CHEST, {[]{return (IsAdult && CanUse(RG_FAIRY_BOW)) || (IsChild && CanUse(RG_FAIRY_SLINGSHOT));}}),
LocationAccess(RC_FOREST_TEMPLE_MQ_GS_RAISED_ISLAND_COURTYARD, {[]{return HookshotOrBoomerang || (IsAdult && CanUse(RG_FIRE_ARROWS) && (CanPlay(SongOfTime) || (CanUse(RG_HOVER_BOOTS) && randoCtx->GetTrickOption(RT_FOREST_DOORFRAME))));}}), LocationAccess(RC_FOREST_TEMPLE_MQ_GS_RAISED_ISLAND_COURTYARD, {[]{return HookshotOrBoomerang || (IsAdult && CanUse(RG_FIRE_ARROWS) && (CanUse(RG_SONG_OF_TIME) || (CanUse(RG_HOVER_BOOTS) && randoCtx->GetTrickOption(RT_FOREST_DOORFRAME))));}}),
LocationAccess(RC_FOREST_TEMPLE_MQ_GS_WELL, {[]{return (IsAdult && ((CanUse(RG_IRON_BOOTS) && CanUse(RG_HOOKSHOT)) || CanUse(RG_FAIRY_BOW))) || (IsChild && CanUse(RG_FAIRY_SLINGSHOT));}}), LocationAccess(RC_FOREST_TEMPLE_MQ_GS_WELL, {[]{return (IsAdult && ((CanUse(RG_IRON_BOOTS) && CanUse(RG_HOOKSHOT)) || CanUse(RG_FAIRY_BOW))) || (IsChild && CanUse(RG_FAIRY_SLINGSHOT));}}),
}, { }, {
//Exits //Exits
Entrance(RR_FOREST_TEMPLE_MQ_OUTDOORS_TOP_LEDGES, {[]{return IsAdult && CanUse(RG_HOOKSHOT) && (CanUse(RG_LONGSHOT) || CanUse(RG_HOVER_BOOTS) || CanPlay(SongOfTime));}}), Entrance(RR_FOREST_TEMPLE_MQ_OUTDOORS_TOP_LEDGES, {[]{return IsAdult && CanUse(RG_HOOKSHOT) && (CanUse(RG_LONGSHOT) || CanUse(RG_HOVER_BOOTS) || CanUse(RG_SONG_OF_TIME));}}),
Entrance(RR_FOREST_TEMPLE_MQ_NE_OUTDOORS_LEDGE, {[]{return IsAdult && CanUse(RG_LONGSHOT);}}), Entrance(RR_FOREST_TEMPLE_MQ_NE_OUTDOORS_LEDGE, {[]{return IsAdult && CanUse(RG_LONGSHOT);}}),
}); });
@ -368,7 +368,7 @@ void AreaTable_Init_ForestTemple() {
}, { }, {
//Exits //Exits
Entrance(RR_FOREST_TEMPLE_MQ_NE_OUTDOORS, {[]{return true;}}), Entrance(RR_FOREST_TEMPLE_MQ_NE_OUTDOORS, {[]{return true;}}),
Entrance(RR_FOREST_TEMPLE_MQ_FALLING_ROOM, {[]{return CanPlay(SongOfTime);}}), Entrance(RR_FOREST_TEMPLE_MQ_FALLING_ROOM, {[]{return CanUse(RG_SONG_OF_TIME);}}),
}); });
areaTable[RR_FOREST_TEMPLE_MQ_BOW_REGION] = Area("Forest Temple MQ Bow Region", "Forest Temple", RA_FOREST_TEMPLE, NO_DAY_NIGHT_CYCLE, { areaTable[RR_FOREST_TEMPLE_MQ_BOW_REGION] = Area("Forest Temple MQ Bow Region", "Forest Temple", RA_FOREST_TEMPLE, NO_DAY_NIGHT_CYCLE, {

View File

@ -89,7 +89,7 @@ void AreaTable_Init_GanonsCastle() {
EventAccess(&ShadowTrialClear, {[]{return CanUse(RG_LIGHT_ARROWS) && CanUse(RG_MEGATON_HAMMER) && ((FireArrows && (randoCtx->GetTrickOption(RT_LENS_GANON) || CanUse(RG_LENS_OF_TRUTH))) || (CanUse(RG_LONGSHOT) && (CanUse(RG_HOVER_BOOTS) || (DinsFire && (randoCtx->GetTrickOption(RT_LENS_GANON) || CanUse(RG_LENS_OF_TRUTH))))));}}), EventAccess(&ShadowTrialClear, {[]{return CanUse(RG_LIGHT_ARROWS) && CanUse(RG_MEGATON_HAMMER) && ((FireArrows && (randoCtx->GetTrickOption(RT_LENS_GANON) || CanUse(RG_LENS_OF_TRUTH))) || (CanUse(RG_LONGSHOT) && (CanUse(RG_HOVER_BOOTS) || (DinsFire && (randoCtx->GetTrickOption(RT_LENS_GANON) || CanUse(RG_LENS_OF_TRUTH))))));}}),
}, { }, {
//Locations //Locations
LocationAccess(RC_GANONS_CASTLE_SHADOW_TRIAL_FRONT_CHEST, {[]{return CanUse(RG_FIRE_ARROWS) || CanUse(RG_HOOKSHOT) || CanUse(RG_HOVER_BOOTS) || CanPlay(SongOfTime) || IsChild;}}), LocationAccess(RC_GANONS_CASTLE_SHADOW_TRIAL_FRONT_CHEST, {[]{return CanUse(RG_FIRE_ARROWS) || CanUse(RG_HOOKSHOT) || CanUse(RG_HOVER_BOOTS) || CanUse(RG_SONG_OF_TIME) || IsChild;}}),
LocationAccess(RC_GANONS_CASTLE_SHADOW_TRIAL_GOLDEN_GAUNTLETS_CHEST, {[]{return CanUse(RG_FIRE_ARROWS) || (CanUse(RG_LONGSHOT) && (CanUse(RG_HOVER_BOOTS) || CanUse(RG_DINS_FIRE)));}}), LocationAccess(RC_GANONS_CASTLE_SHADOW_TRIAL_GOLDEN_GAUNTLETS_CHEST, {[]{return CanUse(RG_FIRE_ARROWS) || (CanUse(RG_LONGSHOT) && (CanUse(RG_HOVER_BOOTS) || CanUse(RG_DINS_FIRE)));}}),
}, {}); }, {});
@ -115,7 +115,7 @@ void AreaTable_Init_GanonsCastle() {
LocationAccess(RC_GANONS_CASTLE_LIGHT_TRIAL_SECOND_RIGHT_CHEST, {[]{return true;}}), LocationAccess(RC_GANONS_CASTLE_LIGHT_TRIAL_SECOND_RIGHT_CHEST, {[]{return true;}}),
LocationAccess(RC_GANONS_CASTLE_LIGHT_TRIAL_THIRD_RIGHT_CHEST, {[]{return true;}}), LocationAccess(RC_GANONS_CASTLE_LIGHT_TRIAL_THIRD_RIGHT_CHEST, {[]{return true;}}),
LocationAccess(RC_GANONS_CASTLE_LIGHT_TRIAL_INVISIBLE_ENEMIES_CHEST, {[]{return randoCtx->GetTrickOption(RT_LENS_GANON) || CanUse(RG_LENS_OF_TRUTH);}}), LocationAccess(RC_GANONS_CASTLE_LIGHT_TRIAL_INVISIBLE_ENEMIES_CHEST, {[]{return randoCtx->GetTrickOption(RT_LENS_GANON) || CanUse(RG_LENS_OF_TRUTH);}}),
LocationAccess(RC_GANONS_CASTLE_LIGHT_TRIAL_LULLABY_CHEST, {[]{return CanPlay(ZeldasLullaby) && SmallKeys(RR_GANONS_CASTLE, 1);}}), LocationAccess(RC_GANONS_CASTLE_LIGHT_TRIAL_LULLABY_CHEST, {[]{return CanUse(RG_ZELDAS_LULLABY) && SmallKeys(RR_GANONS_CASTLE, 1);}}),
}, {}); }, {});
} }
@ -171,7 +171,7 @@ void AreaTable_Init_GanonsCastle() {
areaTable[RR_GANONS_CASTLE_MQ_FOREST_TRIAL] = Area("Ganon's Castle MQ Forest Trial", "Ganons Castle", RA_GANONS_CASTLE, NO_DAY_NIGHT_CYCLE, { areaTable[RR_GANONS_CASTLE_MQ_FOREST_TRIAL] = Area("Ganon's Castle MQ Forest Trial", "Ganons Castle", RA_GANONS_CASTLE, NO_DAY_NIGHT_CYCLE, {
//Events //Events
EventAccess(&ForestTrialClear, {[]{return IsAdult && CanUse(RG_LIGHT_ARROWS) && (CanUse(RG_KOKIRI_SWORD) || CanUse(RG_MASTER_SWORD) || CanUse(RG_BIGGORON_SWORD)) && CanPlay(SongOfTime);}}), EventAccess(&ForestTrialClear, {[]{return IsAdult && CanUse(RG_LIGHT_ARROWS) && (CanUse(RG_KOKIRI_SWORD) || CanUse(RG_MASTER_SWORD) || CanUse(RG_BIGGORON_SWORD)) && CanUse(RG_SONG_OF_TIME);}}),
}, { }, {
//Locations //Locations
LocationAccess(RC_GANONS_CASTLE_MQ_FOREST_TRIAL_EYE_SWITCH_CHEST, {[]{return (CanUse(RG_KOKIRI_SWORD) || CanUse(RG_MASTER_SWORD) || CanUse(RG_BIGGORON_SWORD)) && (CanUse(RG_FAIRY_BOW) || CanUse(RG_FAIRY_SLINGSHOT));}}), LocationAccess(RC_GANONS_CASTLE_MQ_FOREST_TRIAL_EYE_SWITCH_CHEST, {[]{return (CanUse(RG_KOKIRI_SWORD) || CanUse(RG_MASTER_SWORD) || CanUse(RG_BIGGORON_SWORD)) && (CanUse(RG_FAIRY_BOW) || CanUse(RG_FAIRY_SLINGSHOT));}}),
@ -225,7 +225,7 @@ void AreaTable_Init_GanonsCastle() {
//Trick: IsAdult && CanUse(RG_LIGHT_ARROWS) && SmallKeys(RR_GANONS_CASTLE, 3) && (LogicLensCastleMQ || CanUse(RG_LENS_OF_TRUTH)) && (Hookshot || LogicLightTrialMQ) //Trick: IsAdult && CanUse(RG_LIGHT_ARROWS) && SmallKeys(RR_GANONS_CASTLE, 3) && (LogicLensCastleMQ || CanUse(RG_LENS_OF_TRUTH)) && (Hookshot || LogicLightTrialMQ)
}, { }, {
//Locations //Locations
LocationAccess(RC_GANONS_CASTLE_MQ_LIGHT_TRIAL_LULLABY_CHEST, {[]{return (CanUse(RG_MASTER_SWORD) || CanUse(RG_KOKIRI_SWORD) || CanUse(RG_BIGGORON_SWORD)) && CanPlay(ZeldasLullaby);}}), LocationAccess(RC_GANONS_CASTLE_MQ_LIGHT_TRIAL_LULLABY_CHEST, {[]{return (CanUse(RG_MASTER_SWORD) || CanUse(RG_KOKIRI_SWORD) || CanUse(RG_BIGGORON_SWORD)) && CanUse(RG_ZELDAS_LULLABY);}}),
}, {}); }, {});
} }
} }

View File

@ -60,10 +60,10 @@ void AreaTable_Init_GerudoTrainingGrounds() {
areaTable[RR_GERUDO_TRAINING_GROUNDS_LAVA_ROOM] = Area("Gerudo Training Grounds Lava Room", "Gerudo Training Grounds", RA_GERUDO_TRAINING_GROUND, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_GERUDO_TRAINING_GROUNDS_LAVA_ROOM] = Area("Gerudo Training Grounds Lava Room", "Gerudo Training Grounds", RA_GERUDO_TRAINING_GROUND, NO_DAY_NIGHT_CYCLE, {}, {
//Locations //Locations
LocationAccess(RC_GERUDO_TRAINING_GROUND_UNDERWATER_SILVER_RUPEE_CHEST, {[]{return CanUse(RG_HOOKSHOT) && CanPlay(SongOfTime) && IronBoots && WaterTimer >= 24;}}), LocationAccess(RC_GERUDO_TRAINING_GROUND_UNDERWATER_SILVER_RUPEE_CHEST, {[]{return CanUse(RG_HOOKSHOT) && CanUse(RG_SONG_OF_TIME) && IronBoots && WaterTimer >= 24;}}),
}, { }, {
//Exits //Exits
Entrance(RR_GERUDO_TRAINING_GROUNDS_CENTRAL_MAZE_RIGHT, {[]{return CanPlay(SongOfTime) || IsChild;}}), Entrance(RR_GERUDO_TRAINING_GROUNDS_CENTRAL_MAZE_RIGHT, {[]{return CanUse(RG_SONG_OF_TIME) || IsChild;}}),
Entrance(RR_GERUDO_TRAINING_GROUNDS_HAMMER_ROOM, {[]{return CanUse(RG_LONGSHOT) || (CanUse(RG_HOVER_BOOTS) && CanUse(RG_HOOKSHOT));}}), Entrance(RR_GERUDO_TRAINING_GROUNDS_HAMMER_ROOM, {[]{return CanUse(RG_LONGSHOT) || (CanUse(RG_HOVER_BOOTS) && CanUse(RG_HOOKSHOT));}}),
}); });
@ -164,8 +164,8 @@ void AreaTable_Init_GerudoTrainingGrounds() {
LocationAccess(RC_GERUDO_TRAINING_GROUND_MQ_HEAVY_BLOCK_CHEST, {[]{return CanUse(RG_SILVER_GAUNTLETS) && (CanUse(RG_MASTER_SWORD) || CanUse(RG_BIGGORON_SWORD));}}), LocationAccess(RC_GERUDO_TRAINING_GROUND_MQ_HEAVY_BLOCK_CHEST, {[]{return CanUse(RG_SILVER_GAUNTLETS) && (CanUse(RG_MASTER_SWORD) || CanUse(RG_BIGGORON_SWORD));}}),
}, { }, {
//Exits //Exits
Entrance(RR_GERUDO_TRAINING_GROUNDS_MQ_BACK_AREAS, {[]{return IsAdult && (CanUse(RG_MASTER_SWORD) || CanUse(RG_BIGGORON_SWORD)) && (randoCtx->GetTrickOption(RT_LENS_GTG_MQ) || CanUse(RG_LENS_OF_TRUTH)) && BlueFire && (CanPlay(SongOfTime) || (randoCtx->GetTrickOption(RT_GTG_FAKE_WALL) && IsAdult && CanUse(RG_HOVER_BOOTS)));}}), Entrance(RR_GERUDO_TRAINING_GROUNDS_MQ_BACK_AREAS, {[]{return IsAdult && (CanUse(RG_MASTER_SWORD) || CanUse(RG_BIGGORON_SWORD)) && (randoCtx->GetTrickOption(RT_LENS_GTG_MQ) || CanUse(RG_LENS_OF_TRUTH)) && BlueFire && (CanUse(RG_SONG_OF_TIME) || (randoCtx->GetTrickOption(RT_GTG_FAKE_WALL) && IsAdult && CanUse(RG_HOVER_BOOTS)));}}),
//Trick: IsAdult && (LogicLensGtgMQ || CanUse(RG_LENS_OF_TRUTH)) && BlueFire && (CanPlay(SongOfTime) || (LogicGtgFakeWall && IsAdult && CanUse(RG_HOVER_BOOTS))) //Trick: IsAdult && (LogicLensGtgMQ || CanUse(RG_LENS_OF_TRUTH)) && BlueFire && (CanUse(RG_SONG_OF_TIME) || (LogicGtgFakeWall && IsAdult && CanUse(RG_HOVER_BOOTS)))
}); });
areaTable[RR_GERUDO_TRAINING_GROUNDS_MQ_BACK_AREAS] = Area("Gerudo Training Grounds MQ Back Areas", "Gerudo Training Grounds", RA_GERUDO_TRAINING_GROUND, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_GERUDO_TRAINING_GROUNDS_MQ_BACK_AREAS] = Area("Gerudo Training Grounds MQ Back Areas", "Gerudo Training Grounds", RA_GERUDO_TRAINING_GROUND, NO_DAY_NIGHT_CYCLE, {}, {

View File

@ -24,12 +24,12 @@ void AreaTable_Init_GerudoValley() {
areaTable[RR_GV_UPPER_STREAM] = Area("GV Upper Stream", "Gerudo Valley", RA_GERUDO_VALLEY, DAY_NIGHT_CYCLE, { areaTable[RR_GV_UPPER_STREAM] = Area("GV Upper Stream", "Gerudo Valley", RA_GERUDO_VALLEY, DAY_NIGHT_CYCLE, {
//Events //Events
EventAccess(&GossipStoneFairy, {[]{return GossipStoneFairy || CanSummonGossipFairy;}}), EventAccess(&GossipStoneFairy, {[]{return GossipStoneFairy || CanSummonGossipFairy;}}),
EventAccess(&BeanPlantFairy, {[]{return BeanPlantFairy || (CanPlantBean(RR_GV_UPPER_STREAM) && CanPlay(SongOfStorms));}}), EventAccess(&BeanPlantFairy, {[]{return BeanPlantFairy || (CanPlantBean(RR_GV_UPPER_STREAM) && CanUse(RG_SONG_OF_STORMS));}}),
}, { }, {
//Locations //Locations
LocationAccess(RC_GV_WATERFALL_FREESTANDING_POH, {[]{return true;}}), LocationAccess(RC_GV_WATERFALL_FREESTANDING_POH, {[]{return true;}}),
LocationAccess(RC_GV_GS_BEAN_PATCH, {[]{return CanPlantBugs && CanChildAttack;}}), LocationAccess(RC_GV_GS_BEAN_PATCH, {[]{return CanPlantBugs && CanChildAttack;}}),
LocationAccess(RC_GV_COW, {[]{return IsChild && CanPlay(EponasSong);}}), LocationAccess(RC_GV_COW, {[]{return IsChild && CanUse(RG_EPONAS_SONG);}}),
LocationAccess(RC_GV_GOSSIP_STONE, {[]{return true;}}), LocationAccess(RC_GV_GOSSIP_STONE, {[]{return true;}}),
}, { }, {
//Exits //Exits
@ -165,7 +165,7 @@ void AreaTable_Init_GerudoValley() {
areaTable[RR_DESERT_COLOSSUS] = Area("Desert Colossus", "Desert Colossus", RA_DESERT_COLOSSUS, DAY_NIGHT_CYCLE, { areaTable[RR_DESERT_COLOSSUS] = Area("Desert Colossus", "Desert Colossus", RA_DESERT_COLOSSUS, DAY_NIGHT_CYCLE, {
//Events //Events
EventAccess(&FairyPond, {[]{return FairyPond || CanPlay(SongOfStorms);}}), EventAccess(&FairyPond, {[]{return FairyPond || CanUse(RG_SONG_OF_STORMS);}}),
EventAccess(&BugRock, {[]{return true;}}), EventAccess(&BugRock, {[]{return true;}}),
}, { }, {
//Locations //Locations
@ -192,7 +192,7 @@ void AreaTable_Init_GerudoValley() {
areaTable[RR_COLOSSUS_GREAT_FAIRY_FOUNTAIN] = Area("Colossus Great Fairy Fountain", "Colossus Great Fairy Fountain", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_COLOSSUS_GREAT_FAIRY_FOUNTAIN] = Area("Colossus Great Fairy Fountain", "Colossus Great Fairy Fountain", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, {
//Locations //Locations
LocationAccess(RC_COLOSSUS_GREAT_FAIRY_REWARD, {[]{return CanPlay(ZeldasLullaby);}}), LocationAccess(RC_COLOSSUS_GREAT_FAIRY_REWARD, {[]{return CanUse(RG_ZELDAS_LULLABY);}}),
}, { }, {
//Exits //Exits
Entrance(RR_DESERT_COLOSSUS, {[]{return true;}}), Entrance(RR_DESERT_COLOSSUS, {[]{return true;}}),

View File

@ -61,7 +61,7 @@ void AreaTable_Init_HyruleField() {
areaTable[RR_HF_COW_GROTTO] = Area("HF Cow Grotto", "HF Cow Grotto", RA_NONE, NO_DAY_NIGHT_CYCLE, grottoEvents, { areaTable[RR_HF_COW_GROTTO] = Area("HF Cow Grotto", "HF Cow Grotto", RA_NONE, NO_DAY_NIGHT_CYCLE, grottoEvents, {
//Locations //Locations
LocationAccess(RC_HF_GS_COW_GROTTO, {[]{return HasFireSource && HookshotOrBoomerang;}}), LocationAccess(RC_HF_GS_COW_GROTTO, {[]{return HasFireSource && HookshotOrBoomerang;}}),
LocationAccess(RC_HF_COW_GROTTO_COW, {[]{return HasFireSource && CanPlay(EponasSong);}}), LocationAccess(RC_HF_COW_GROTTO_COW, {[]{return HasFireSource && CanUse(RG_EPONAS_SONG);}}),
LocationAccess(RC_HF_COW_GROTTO_GOSSIP_STONE, {[]{return HasFireSource;}}), LocationAccess(RC_HF_COW_GROTTO_GOSSIP_STONE, {[]{return HasFireSource;}}),
}, { }, {
//Exits //Exits
@ -104,11 +104,11 @@ void AreaTable_Init_HyruleField() {
areaTable[RR_LAKE_HYLIA] = Area("Lake Hylia", "Lake Hylia", RA_LAKE_HYLIA, DAY_NIGHT_CYCLE, { areaTable[RR_LAKE_HYLIA] = Area("Lake Hylia", "Lake Hylia", RA_LAKE_HYLIA, DAY_NIGHT_CYCLE, {
//Events //Events
EventAccess(&GossipStoneFairy, {[]{return GossipStoneFairy || CanSummonGossipFairy;}}), EventAccess(&GossipStoneFairy, {[]{return GossipStoneFairy || CanSummonGossipFairy;}}),
EventAccess(&BeanPlantFairy, {[]{return BeanPlantFairy || (CanPlantBean(RR_LAKE_HYLIA) && CanPlay(SongOfStorms));}}), EventAccess(&BeanPlantFairy, {[]{return BeanPlantFairy || (CanPlantBean(RR_LAKE_HYLIA) && CanUse(RG_SONG_OF_STORMS));}}),
EventAccess(&ButterflyFairy, {[]{return ButterflyFairy || CanUse(RG_STICKS);}}), EventAccess(&ButterflyFairy, {[]{return ButterflyFairy || CanUse(RG_STICKS);}}),
EventAccess(&BugShrub, {[]{return BugShrub || (IsChild && CanCutShrubs);}}), EventAccess(&BugShrub, {[]{return BugShrub || (IsChild && CanCutShrubs);}}),
EventAccess(&ChildScarecrow, {[]{return ChildScarecrow || (IsChild && Ocarina);}}), EventAccess(&ChildScarecrow, {[]{return ChildScarecrow || (IsChild && Ocarina && OcarinaButtons >= 2);}}),
EventAccess(&AdultScarecrow, {[]{return AdultScarecrow || (IsAdult && Ocarina);}}), EventAccess(&AdultScarecrow, {[]{return AdultScarecrow || (IsAdult && Ocarina && OcarinaButtons >= 2);}}),
}, { }, {
//Locations //Locations
LocationAccess(RC_LH_UNDERWATER_ITEM, {[]{return IsChild && CanDive;}}), LocationAccess(RC_LH_UNDERWATER_ITEM, {[]{return IsChild && CanDive;}}),
@ -177,8 +177,8 @@ void AreaTable_Init_HyruleField() {
areaTable[RR_LON_LON_RANCH] = Area("Lon Lon Ranch", "Lon Lon Ranch", RA_LON_LON_RANCH, NO_DAY_NIGHT_CYCLE, { areaTable[RR_LON_LON_RANCH] = Area("Lon Lon Ranch", "Lon Lon Ranch", RA_LON_LON_RANCH, NO_DAY_NIGHT_CYCLE, {
//Events //Events
EventAccess(&Epona, {[]{return Epona || (CanPlay(EponasSong) && IsAdult && AtDay);}}), EventAccess(&Epona, {[]{return Epona || (CanUse(RG_EPONAS_SONG) && IsAdult && AtDay);}}),
EventAccess(&LinksCow, {[]{return LinksCow || (CanPlay(EponasSong) && IsAdult && AtDay);}}), EventAccess(&LinksCow, {[]{return LinksCow || (CanUse(RG_EPONAS_SONG) && IsAdult && AtDay);}}),
}, { }, {
//Locations //Locations
LocationAccess(RC_SONG_FROM_MALON, {[]{return IsChild && ZeldasLetter && Ocarina && AtDay;}}), LocationAccess(RC_SONG_FROM_MALON, {[]{return IsChild && ZeldasLetter && Ocarina && AtDay;}}),
@ -205,8 +205,8 @@ void AreaTable_Init_HyruleField() {
areaTable[RR_LLR_STABLES] = Area("LLR Stables", "LLR Stables", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_LLR_STABLES] = Area("LLR Stables", "LLR Stables", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, {
//Locations //Locations
LocationAccess(RC_LLR_STABLES_LEFT_COW, {[]{return CanPlay(EponasSong);}}), LocationAccess(RC_LLR_STABLES_LEFT_COW, {[]{return CanUse(RG_EPONAS_SONG);}}),
LocationAccess(RC_LLR_STABLES_RIGHT_COW, {[]{return CanPlay(EponasSong);}}), LocationAccess(RC_LLR_STABLES_RIGHT_COW, {[]{return CanUse(RG_EPONAS_SONG);}}),
}, { }, {
//Exits //Exits
Entrance(RR_LON_LON_RANCH, {[]{return true;}}), Entrance(RR_LON_LON_RANCH, {[]{return true;}}),
@ -215,8 +215,8 @@ void AreaTable_Init_HyruleField() {
areaTable[RR_LLR_TOWER] = Area("LLR Tower", "LLR Tower", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_LLR_TOWER] = Area("LLR Tower", "LLR Tower", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, {
//Locations //Locations
LocationAccess(RC_LLR_FREESTANDING_POH, {[]{return IsChild;}}), LocationAccess(RC_LLR_FREESTANDING_POH, {[]{return IsChild;}}),
LocationAccess(RC_LLR_TOWER_LEFT_COW, {[]{return CanPlay(EponasSong);}}), LocationAccess(RC_LLR_TOWER_LEFT_COW, {[]{return CanUse(RG_EPONAS_SONG);}}),
LocationAccess(RC_LLR_TOWER_RIGHT_COW, {[]{return CanPlay(EponasSong);}}), LocationAccess(RC_LLR_TOWER_RIGHT_COW, {[]{return CanUse(RG_EPONAS_SONG);}}),
}, { }, {
//Exits //Exits
Entrance(RR_LON_LON_RANCH, {[]{return true;}}), Entrance(RR_LON_LON_RANCH, {[]{return true;}}),

View File

@ -79,8 +79,8 @@ void AreaTable_Init_IceCavern() {
//Locations //Locations
LocationAccess(RC_ICE_CAVERN_MQ_COMPASS_CHEST, {[]{return true;}}), LocationAccess(RC_ICE_CAVERN_MQ_COMPASS_CHEST, {[]{return true;}}),
LocationAccess(RC_ICE_CAVERN_MQ_FREESTANDING_POH, {[]{return HasExplosives;}}), LocationAccess(RC_ICE_CAVERN_MQ_FREESTANDING_POH, {[]{return HasExplosives;}}),
LocationAccess(RC_ICE_CAVERN_MQ_GS_RED_ICE, {[]{return CanPlay(SongOfTime) || randoCtx->GetTrickOption(RT_ICE_MQ_RED_ICE_GS);}}), LocationAccess(RC_ICE_CAVERN_MQ_GS_RED_ICE, {[]{return CanUse(RG_SONG_OF_TIME) || randoCtx->GetTrickOption(RT_ICE_MQ_RED_ICE_GS);}}),
//Trick: CanPlay(SongOfTime) || LogicIceMQRedIceGS //Trick: CanUse(RG_SONG_OF_TIME) || LogicIceMQRedIceGS
}, {}); }, {});
} }
} }

View File

@ -184,8 +184,8 @@ void AreaTable_Init_JabuJabusBelly() {
LocationAccess(RC_JABU_JABUS_BELLY_MQ_BASEMENT_NEAR_SWITCHES_CHEST, {[]{return true;}}), LocationAccess(RC_JABU_JABUS_BELLY_MQ_BASEMENT_NEAR_SWITCHES_CHEST, {[]{return true;}}),
LocationAccess(RC_JABU_JABUS_BELLY_MQ_BOOMERANG_ROOM_SMALL_CHEST, {[]{return true;}}), LocationAccess(RC_JABU_JABUS_BELLY_MQ_BOOMERANG_ROOM_SMALL_CHEST, {[]{return true;}}),
LocationAccess(RC_JABU_JABUS_BELLY_MQ_BOOMERANG_CHEST, {[]{return true;}}), LocationAccess(RC_JABU_JABUS_BELLY_MQ_BOOMERANG_CHEST, {[]{return true;}}),
LocationAccess(RC_JABU_JABUS_BELLY_MQ_GS_BOOMERANG_CHEST_ROOM, {[]{return CanPlay(SongOfTime) || (randoCtx->GetTrickOption(RT_JABU_MQ_SOT_GS) && IsChild && CanUse(RG_BOOMERANG));}}), LocationAccess(RC_JABU_JABUS_BELLY_MQ_GS_BOOMERANG_CHEST_ROOM, {[]{return CanUse(RG_SONG_OF_TIME) || (randoCtx->GetTrickOption(RT_JABU_MQ_SOT_GS) && IsChild && CanUse(RG_BOOMERANG));}}),
//Trick: CanPlay(SongOfTime) || (LogicJabuMQSoTGS && IsChild && CanUse(RG_BOOMERANG)) //Trick: CanUse(RG_SONG_OF_TIME) || (LogicJabuMQSoTGS && IsChild && CanUse(RG_BOOMERANG))
}, { }, {
//Exits //Exits
Entrance(RR_JABU_JABUS_BELLY_MQ_BEGINNING, {[]{return true;}}), Entrance(RR_JABU_JABUS_BELLY_MQ_BEGINNING, {[]{return true;}}),
@ -208,7 +208,7 @@ void AreaTable_Init_JabuJabusBelly() {
EventAccess(&FairyPot, {[]{return true;}}), EventAccess(&FairyPot, {[]{return true;}}),
}, { }, {
//Locations //Locations
LocationAccess(RC_JABU_JABUS_BELLY_MQ_COW, {[]{return CanPlay(EponasSong);}}), LocationAccess(RC_JABU_JABUS_BELLY_MQ_COW, {[]{return CanUse(RG_EPONAS_SONG);}}),
LocationAccess(RC_JABU_JABUS_BELLY_MQ_NEAR_BOSS_CHEST, {[]{return true;}}), LocationAccess(RC_JABU_JABUS_BELLY_MQ_NEAR_BOSS_CHEST, {[]{return true;}}),
LocationAccess(RC_JABU_JABUS_BELLY_MQ_GS_NEAR_BOSS, {[]{return true;}}), LocationAccess(RC_JABU_JABUS_BELLY_MQ_GS_NEAR_BOSS, {[]{return true;}}),
}, { }, {

View File

@ -110,12 +110,12 @@ void AreaTable_Init_Kakariko() {
areaTable[RR_KAK_IMPAS_HOUSE_NEAR_COW] = Area("Kak Impas House Near Cow", "Kak Impas House", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_KAK_IMPAS_HOUSE_NEAR_COW] = Area("Kak Impas House Near Cow", "Kak Impas House", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, {
//Locations //Locations
LocationAccess(RC_KAK_IMPAS_HOUSE_COW, {[]{return CanPlay(EponasSong);}}), LocationAccess(RC_KAK_IMPAS_HOUSE_COW, {[]{return CanUse(RG_EPONAS_SONG);}}),
}, {}); }, {});
areaTable[RR_KAK_WINDMILL] = Area("Kak Windmill", "Windmill and Dampes Grave", RA_NONE, NO_DAY_NIGHT_CYCLE, { areaTable[RR_KAK_WINDMILL] = Area("Kak Windmill", "Windmill and Dampes Grave", RA_NONE, NO_DAY_NIGHT_CYCLE, {
//Events //Events
EventAccess(&DrainWell, {[]{return DrainWell || (IsChild && CanPlay(SongOfStorms));}}), EventAccess(&DrainWell, {[]{return DrainWell || (IsChild && CanUse(RG_SONG_OF_STORMS));}}),
}, { }, {
//Locations //Locations
LocationAccess(RC_KAK_WINDMILL_FREESTANDING_POH, {[]{return CanUse(RG_BOOMERANG) || DampesWindmillAccess || (IsAdult && randoCtx->GetTrickOption(RT_KAK_ADULT_WINDMILL_POH)) || (IsChild && CanJumpslash && randoCtx->GetTrickOption(RT_KAK_CHILD_WINDMILL_POH));}}), LocationAccess(RC_KAK_WINDMILL_FREESTANDING_POH, {[]{return CanUse(RG_BOOMERANG) || DampesWindmillAccess || (IsAdult && randoCtx->GetTrickOption(RT_KAK_ADULT_WINDMILL_POH)) || (IsChild && CanJumpslash && randoCtx->GetTrickOption(RT_KAK_CHILD_WINDMILL_POH));}}),
@ -208,7 +208,7 @@ void AreaTable_Init_Kakariko() {
areaTable[RR_THE_GRAVEYARD] = Area("The Graveyard", "The Graveyard", RA_THE_GRAVEYARD, NO_DAY_NIGHT_CYCLE, { areaTable[RR_THE_GRAVEYARD] = Area("The Graveyard", "The Graveyard", RA_THE_GRAVEYARD, NO_DAY_NIGHT_CYCLE, {
//Events //Events
EventAccess(&ButterflyFairy, {[]{return ButterflyFairy || (CanUse(RG_STICKS) && AtDay);}}), EventAccess(&ButterflyFairy, {[]{return ButterflyFairy || (CanUse(RG_STICKS) && AtDay);}}),
EventAccess(&BeanPlantFairy, {[]{return BeanPlantFairy || (CanPlantBean(RR_THE_GRAVEYARD) && CanPlay(SongOfStorms));}}), EventAccess(&BeanPlantFairy, {[]{return BeanPlantFairy || (CanPlantBean(RR_THE_GRAVEYARD) && CanUse(RG_SONG_OF_STORMS));}}),
EventAccess(&BugRock, {[]{return true;}}), EventAccess(&BugRock, {[]{return true;}}),
}, { }, {
//Locations //Locations
@ -219,7 +219,7 @@ void AreaTable_Init_Kakariko() {
}, { }, {
//Exits //Exits
Entrance(RR_GRAVEYARD_SHIELD_GRAVE, {[]{return IsAdult || AtNight;}}), Entrance(RR_GRAVEYARD_SHIELD_GRAVE, {[]{return IsAdult || AtNight;}}),
Entrance(RR_GRAVEYARD_COMPOSERS_GRAVE, {[]{return CanPlay(ZeldasLullaby);}}), Entrance(RR_GRAVEYARD_COMPOSERS_GRAVE, {[]{return CanUse(RG_ZELDAS_LULLABY);}}),
Entrance(RR_GRAVEYARD_HEART_PIECE_GRAVE, {[]{return IsAdult || AtNight;}}), Entrance(RR_GRAVEYARD_HEART_PIECE_GRAVE, {[]{return IsAdult || AtNight;}}),
Entrance(RR_GRAVEYARD_DAMPES_GRAVE, {[]{return IsAdult;}}), Entrance(RR_GRAVEYARD_DAMPES_GRAVE, {[]{return IsAdult;}}),
Entrance(RR_GRAVEYARD_DAMPES_HOUSE, {[]{return IsAdult || AtDampeTime;}}), //TODO: This needs to be handled Entrance(RR_GRAVEYARD_DAMPES_HOUSE, {[]{return IsAdult || AtDampeTime;}}), //TODO: This needs to be handled
@ -238,7 +238,7 @@ void AreaTable_Init_Kakariko() {
areaTable[RR_GRAVEYARD_HEART_PIECE_GRAVE] = Area("Graveyard Heart Piece Grave", "Graveyard Heart Piece Grave", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_GRAVEYARD_HEART_PIECE_GRAVE] = Area("Graveyard Heart Piece Grave", "Graveyard Heart Piece Grave", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, {
//Locations //Locations
LocationAccess(RC_GRAVEYARD_HEART_PIECE_GRAVE_CHEST, {[]{return CanPlay(SunsSong);}}), LocationAccess(RC_GRAVEYARD_HEART_PIECE_GRAVE_CHEST, {[]{return CanUse(RG_SUNS_SONG);}}),
}, { }, {
//Exits //Exits
Entrance(RR_THE_GRAVEYARD, {[]{return true;}}), Entrance(RR_THE_GRAVEYARD, {[]{return true;}}),
@ -256,7 +256,7 @@ void AreaTable_Init_Kakariko() {
areaTable[RR_GRAVEYARD_DAMPES_GRAVE] = Area("Graveyard Dampes Grave", "Windmill and Dampes Grave", RA_NONE, NO_DAY_NIGHT_CYCLE, { areaTable[RR_GRAVEYARD_DAMPES_GRAVE] = Area("Graveyard Dampes Grave", "Windmill and Dampes Grave", RA_NONE, NO_DAY_NIGHT_CYCLE, {
//Events //Events
EventAccess(&NutPot, {[]{return true;}}), EventAccess(&NutPot, {[]{return true;}}),
EventAccess(&DampesWindmillAccess, {[]{return DampesWindmillAccess || (IsAdult && CanPlay(SongOfTime));}}), EventAccess(&DampesWindmillAccess, {[]{return DampesWindmillAccess || (IsAdult && CanUse(RG_SONG_OF_TIME));}}),
}, { }, {
//Locations //Locations
LocationAccess(RC_GRAVEYARD_HOOKSHOT_CHEST, {[]{return true;}}), LocationAccess(RC_GRAVEYARD_HOOKSHOT_CHEST, {[]{return true;}}),
@ -264,7 +264,7 @@ void AreaTable_Init_Kakariko() {
}, { }, {
//Exits //Exits
Entrance(RR_THE_GRAVEYARD, {[]{return true;}}), Entrance(RR_THE_GRAVEYARD, {[]{return true;}}),
Entrance(RR_KAK_WINDMILL, {[]{return IsAdult && CanPlay(SongOfTime);}}), Entrance(RR_KAK_WINDMILL, {[]{return IsAdult && CanUse(RG_SONG_OF_TIME);}}),
}); });
areaTable[RR_GRAVEYARD_DAMPES_HOUSE] = Area("Graveyard Dampes House", "Graveyard Dampes House", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_GRAVEYARD_DAMPES_HOUSE] = Area("Graveyard Dampes House", "Graveyard Dampes House", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, {

View File

@ -8,13 +8,13 @@ using namespace Rando;
void AreaTable_Init_LostWoods() { void AreaTable_Init_LostWoods() {
areaTable[RR_KOKIRI_FOREST] = Area("Kokiri Forest", "Kokiri Forest", RA_KOKIRI_FOREST, NO_DAY_NIGHT_CYCLE, { areaTable[RR_KOKIRI_FOREST] = Area("Kokiri Forest", "Kokiri Forest", RA_KOKIRI_FOREST, NO_DAY_NIGHT_CYCLE, {
//Events //Events
EventAccess(&BeanPlantFairy, {[]{return BeanPlantFairy || (CanPlantBean(RR_KOKIRI_FOREST) && CanPlay(SongOfStorms));}}), EventAccess(&BeanPlantFairy, {[]{return BeanPlantFairy || (CanPlantBean(RR_KOKIRI_FOREST) && CanUse(RG_SONG_OF_STORMS));}}),
EventAccess(&GossipStoneFairy, {[]{return GossipStoneFairy || CanSummonGossipFairyWithoutSuns;}}), EventAccess(&GossipStoneFairy, {[]{return GossipStoneFairy || CanSummonGossipFairyWithoutSuns;}}),
EventAccess(&ShowedMidoSwordAndShield, {[]{return ShowedMidoSwordAndShield || (IsChild && KokiriSword && DekuShield);}}), EventAccess(&ShowedMidoSwordAndShield, {[]{return ShowedMidoSwordAndShield || (IsChild && KokiriSword && DekuShield);}}),
}, { }, {
//Locations //Locations
LocationAccess(RC_KF_KOKIRI_SWORD_CHEST, {[]{return IsChild;}}), LocationAccess(RC_KF_KOKIRI_SWORD_CHEST, {[]{return IsChild;}}),
LocationAccess(RC_KF_GS_KNOW_IT_ALL_HOUSE, {[]{return IsChild && CanChildAttack && AtNight && (/*TODO: HasNightStart ||*/ CanLeaveForest || CanPlay(SunsSong)) && CanGetNightTimeGS;}}), LocationAccess(RC_KF_GS_KNOW_IT_ALL_HOUSE, {[]{return IsChild && CanChildAttack && AtNight && (/*TODO: HasNightStart ||*/ CanLeaveForest || CanUse(RG_SUNS_SONG)) && CanGetNightTimeGS;}}),
LocationAccess(RC_KF_GS_BEAN_PATCH, {[]{return CanPlantBugs && CanChildAttack;}}), LocationAccess(RC_KF_GS_BEAN_PATCH, {[]{return CanPlantBugs && CanChildAttack;}}),
LocationAccess(RC_KF_GS_HOUSE_OF_TWINS, {[]{return IsAdult && AtNight && (HookshotOrBoomerang || (randoCtx->GetTrickOption(RT_KF_ADULT_GS) && CanUse(RG_HOVER_BOOTS))) && CanGetNightTimeGS;}}), LocationAccess(RC_KF_GS_HOUSE_OF_TWINS, {[]{return IsAdult && AtNight && (HookshotOrBoomerang || (randoCtx->GetTrickOption(RT_KF_ADULT_GS) && CanUse(RG_HOVER_BOOTS))) && CanGetNightTimeGS;}}),
LocationAccess(RC_KF_GOSSIP_STONE, {[]{return true;}}), LocationAccess(RC_KF_GOSSIP_STONE, {[]{return true;}}),
@ -49,7 +49,7 @@ void AreaTable_Init_LostWoods() {
areaTable[RR_KF_LINKS_HOUSE] = Area("KF Link's House", "KF Link's House", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_KF_LINKS_HOUSE] = Area("KF Link's House", "KF Link's House", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, {
//Locations //Locations
LocationAccess(RC_KF_LINKS_HOUSE_COW, {[]{return IsAdult && CanPlay(EponasSong) && LinksCow;}}), LocationAccess(RC_KF_LINKS_HOUSE_COW, {[]{return IsAdult && CanUse(RG_EPONAS_SONG) && LinksCow;}}),
}, { }, {
//Exits //Exits
Entrance(RR_KOKIRI_FOREST, {[]{return true;}}) Entrance(RR_KOKIRI_FOREST, {[]{return true;}})
@ -115,14 +115,22 @@ void AreaTable_Init_LostWoods() {
EventAccess(&OddMushroomAccess, {[]{return OddMushroomAccess || (IsAdult && (CojiroAccess || Cojiro));}}), EventAccess(&OddMushroomAccess, {[]{return OddMushroomAccess || (IsAdult && (CojiroAccess || Cojiro));}}),
EventAccess(&PoachersSawAccess, {[]{return PoachersSawAccess || (IsAdult && OddPoulticeAccess);}}), EventAccess(&PoachersSawAccess, {[]{return PoachersSawAccess || (IsAdult && OddPoulticeAccess);}}),
EventAccess(&GossipStoneFairy, {[]{return GossipStoneFairy || CanSummonGossipFairyWithoutSuns;}}), EventAccess(&GossipStoneFairy, {[]{return GossipStoneFairy || CanSummonGossipFairyWithoutSuns;}}),
EventAccess(&BeanPlantFairy, {[]{return BeanPlantFairy || CanPlay(SongOfStorms);}}), EventAccess(&BeanPlantFairy, {[]{return BeanPlantFairy || CanUse(RG_SONG_OF_STORMS);}}),
EventAccess(&BugShrub, {[]{return IsChild && CanCutShrubs;}}), EventAccess(&BugShrub, {[]{return IsChild && CanCutShrubs;}}),
}, { }, {
//Locations //Locations
LocationAccess(RC_LW_SKULL_KID, {[]{return IsChild && CanPlay(SariasSong);}}), LocationAccess(RC_LW_SKULL_KID, {[]{return IsChild && CanUse(RG_SARIAS_SONG);}}),
LocationAccess(RC_LW_TRADE_COJIRO, {[]{return IsAdult && Cojiro;}}), LocationAccess(RC_LW_TRADE_COJIRO, {[]{return IsAdult && Cojiro;}}),
LocationAccess(RC_LW_TRADE_ODD_POTION, {[]{return IsAdult && OddPoultice && Cojiro;}}), LocationAccess(RC_LW_TRADE_ODD_POTION, {[]{return IsAdult && OddPoultice && Cojiro;}}),
LocationAccess(RC_LW_OCARINA_MEMORY_GAME, {[]{return IsChild && Ocarina;}}), //all 5 buttons are logically required for memory game
//because the chances of being able to beat it
//every time you attempt it are as follows:
//0 or 1 button(s) => 0%
//2 buttons => 0.15625%
//3 buttons => 3.75%
//4 buttons => 25.3125%
//5 buttons => 100%
LocationAccess(RC_LW_OCARINA_MEMORY_GAME, {[]{return IsChild && Ocarina && OcarinaButtons >= 5;}}),
LocationAccess(RC_LW_TARGET_IN_WOODS, {[]{return IsChild && CanUse(RG_FAIRY_SLINGSHOT);}}), LocationAccess(RC_LW_TARGET_IN_WOODS, {[]{return IsChild && CanUse(RG_FAIRY_SLINGSHOT);}}),
LocationAccess(RC_LW_DEKU_SCRUB_NEAR_BRIDGE, {[]{return IsChild && CanStunDeku;}}), LocationAccess(RC_LW_DEKU_SCRUB_NEAR_BRIDGE, {[]{return IsChild && CanStunDeku;}}),
LocationAccess(RC_LW_GS_BEAN_PATCH_NEAR_BRIDGE, {[]{return CanPlantBugs && CanChildAttack;}}), LocationAccess(RC_LW_GS_BEAN_PATCH_NEAR_BRIDGE, {[]{return CanPlantBugs && CanChildAttack;}}),
@ -133,7 +141,7 @@ void AreaTable_Init_LostWoods() {
Entrance(RR_GC_WOODS_WARP, {[]{return true;}}), Entrance(RR_GC_WOODS_WARP, {[]{return true;}}),
Entrance(RR_LW_BRIDGE, {[]{return CanLeaveForest && ((IsAdult && (CanPlantBean(RR_THE_LOST_WOODS) || randoCtx->GetTrickOption(RT_LW_BRIDGE))) || CanUse(RG_HOVER_BOOTS) || CanUse(RG_LONGSHOT));}}), Entrance(RR_LW_BRIDGE, {[]{return CanLeaveForest && ((IsAdult && (CanPlantBean(RR_THE_LOST_WOODS) || randoCtx->GetTrickOption(RT_LW_BRIDGE))) || CanUse(RG_HOVER_BOOTS) || CanUse(RG_LONGSHOT));}}),
Entrance(RR_ZORAS_RIVER, {[]{return CanLeaveForest && (CanDive || CanUse(RG_IRON_BOOTS));}}), Entrance(RR_ZORAS_RIVER, {[]{return CanLeaveForest && (CanDive || CanUse(RG_IRON_BOOTS));}}),
Entrance(RR_LW_BEYOND_MIDO, {[]{return IsChild || CanPlay(SariasSong) || randoCtx->GetTrickOption(RT_LW_MIDO_BACKFLIP);}}), Entrance(RR_LW_BEYOND_MIDO, {[]{return IsChild || CanUse(RG_SARIAS_SONG) || randoCtx->GetTrickOption(RT_LW_MIDO_BACKFLIP);}}),
Entrance(RR_LW_NEAR_SHORTCUTS_GROTTO, {[]{return Here(RR_THE_LOST_WOODS, []{return CanBlastOrSmash;});}}), Entrance(RR_LW_NEAR_SHORTCUTS_GROTTO, {[]{return Here(RR_THE_LOST_WOODS, []{return CanBlastOrSmash;});}}),
}); });
@ -149,7 +157,7 @@ void AreaTable_Init_LostWoods() {
}, { }, {
//Exits //Exits
Entrance(RR_LW_FOREST_EXIT, {[]{return true;}}), Entrance(RR_LW_FOREST_EXIT, {[]{return true;}}),
Entrance(RR_THE_LOST_WOODS, {[]{return IsChild || CanPlay(SariasSong);}}), Entrance(RR_THE_LOST_WOODS, {[]{return IsChild || CanUse(RG_SARIAS_SONG);}}),
Entrance(RR_SFM_ENTRYWAY, {[]{return true;}}), Entrance(RR_SFM_ENTRYWAY, {[]{return true;}}),
Entrance(RR_DEKU_THEATER, {[]{return true;}}), Entrance(RR_DEKU_THEATER, {[]{return true;}}),
Entrance(RR_LW_SCRUBS_GROTTO, {[]{return Here(RR_LW_BEYOND_MIDO, []{return CanBlastOrSmash;});}}), Entrance(RR_LW_SCRUBS_GROTTO, {[]{return Here(RR_LW_BEYOND_MIDO, []{return CanBlastOrSmash;});}}),

View File

@ -73,7 +73,7 @@ void AreaTable_Init_ShadowTemple() {
LocationAccess(RC_SHADOW_TEMPLE_GS_NEAR_SHIP, {[]{return CanUse(RG_LONGSHOT) && SmallKeys(RR_SHADOW_TEMPLE, 4, 5);}}), LocationAccess(RC_SHADOW_TEMPLE_GS_NEAR_SHIP, {[]{return CanUse(RG_LONGSHOT) && SmallKeys(RR_SHADOW_TEMPLE, 4, 5);}}),
}, { }, {
//Exits //Exits
Entrance(RR_SHADOW_TEMPLE_BEYOND_BOAT, {[]{return CanJumpslash && CanPlay(ZeldasLullaby) && SmallKeys(RR_SHADOW_TEMPLE, 4, 5);}}), Entrance(RR_SHADOW_TEMPLE_BEYOND_BOAT, {[]{return CanJumpslash && CanUse(RG_ZELDAS_LULLABY) && SmallKeys(RR_SHADOW_TEMPLE, 4, 5);}}),
}); });
areaTable[RR_SHADOW_TEMPLE_BEYOND_BOAT] = Area("Shadow Temple Beyond Boat", "Shadow Temple", RA_SHADOW_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_SHADOW_TEMPLE_BEYOND_BOAT] = Area("Shadow Temple Beyond Boat", "Shadow Temple", RA_SHADOW_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, {
@ -103,7 +103,7 @@ void AreaTable_Init_ShadowTemple() {
areaTable[RR_SHADOW_TEMPLE_MQ_DEAD_HAND_AREA] = Area("Shadow Temple MQ Dead Hand Area", "Shadow Temple", RA_SHADOW_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_SHADOW_TEMPLE_MQ_DEAD_HAND_AREA] = Area("Shadow Temple MQ Dead Hand Area", "Shadow Temple", RA_SHADOW_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, {
//Locations //Locations
LocationAccess(RC_SHADOW_TEMPLE_MQ_COMPASS_CHEST, {[]{return CanJumpslash;}}), LocationAccess(RC_SHADOW_TEMPLE_MQ_COMPASS_CHEST, {[]{return CanJumpslash;}}),
LocationAccess(RC_SHADOW_TEMPLE_MQ_HOVER_BOOTS_CHEST, {[]{return CanJumpslash && CanPlay(SongOfTime) && IsAdult && CanUse(RG_FAIRY_BOW);}}), LocationAccess(RC_SHADOW_TEMPLE_MQ_HOVER_BOOTS_CHEST, {[]{return CanJumpslash && CanUse(RG_SONG_OF_TIME) && IsAdult && CanUse(RG_FAIRY_BOW);}}),
}, {}); }, {});
areaTable[RR_SHADOW_TEMPLE_MQ_FIRST_BEAMOS] = Area("Shadow Temple MQ First Beamos", "Shadow Temple", RA_SHADOW_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_SHADOW_TEMPLE_MQ_FIRST_BEAMOS] = Area("Shadow Temple MQ First Beamos", "Shadow Temple", RA_SHADOW_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, {
@ -118,10 +118,10 @@ void AreaTable_Init_ShadowTemple() {
areaTable[RR_SHADOW_TEMPLE_MQ_UPPER_HUGE_PIT] = Area("Shadow Temple MQ Upper Huge Pit", "Shadow Temple", RA_SHADOW_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_SHADOW_TEMPLE_MQ_UPPER_HUGE_PIT] = Area("Shadow Temple MQ Upper Huge Pit", "Shadow Temple", RA_SHADOW_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, {
//Locations //Locations
LocationAccess(RC_SHADOW_TEMPLE_MQ_INVISIBLE_BLADES_VISIBLE_CHEST, {[]{return CanPlay(SongOfTime) || (randoCtx->GetTrickOption(RT_SHADOW_MQ_INVISIBLE_BLADES) && randoCtx->GetOption(RSK_DAMAGE_MULTIPLIER).IsNot(RO_DAMAGE_MULTIPLIER_OHKO));}}), LocationAccess(RC_SHADOW_TEMPLE_MQ_INVISIBLE_BLADES_VISIBLE_CHEST, {[]{return CanUse(RG_SONG_OF_TIME) || (randoCtx->GetTrickOption(RT_SHADOW_MQ_INVISIBLE_BLADES) && randoCtx->GetOption(RSK_DAMAGE_MULTIPLIER).IsNot(RO_DAMAGE_MULTIPLIER_OHKO));}}),
//Trick: CanPlay(SongOfTime) || (LogicShadowMQInvisibleBlades && DamageMultiplier.IsNot(DAMAGEMULTIPLIER_OHKO)) //Trick: CanUse(RG_SONG_OF_TIME) || (LogicShadowMQInvisibleBlades && DamageMultiplier.IsNot(DAMAGEMULTIPLIER_OHKO))
LocationAccess(RC_SHADOW_TEMPLE_MQ_INVISIBLE_BLADES_INVISIBLE_CHEST, {[]{return CanPlay(SongOfTime) || (randoCtx->GetTrickOption(RT_SHADOW_MQ_INVISIBLE_BLADES) && randoCtx->GetOption(RSK_DAMAGE_MULTIPLIER).IsNot(RO_DAMAGE_MULTIPLIER_OHKO));}}), LocationAccess(RC_SHADOW_TEMPLE_MQ_INVISIBLE_BLADES_INVISIBLE_CHEST, {[]{return CanUse(RG_SONG_OF_TIME) || (randoCtx->GetTrickOption(RT_SHADOW_MQ_INVISIBLE_BLADES) && randoCtx->GetOption(RSK_DAMAGE_MULTIPLIER).IsNot(RO_DAMAGE_MULTIPLIER_OHKO));}}),
//Trick: CanPlay(SongOfTime) || (LogicShadowMQInvisibleBlades && DamageMultiplier.IsNot(DAMAGEMULTIPLIER_OHKO)) //Trick: CanUse(RG_SONG_OF_TIME) || (LogicShadowMQInvisibleBlades && DamageMultiplier.IsNot(DAMAGEMULTIPLIER_OHKO))
}, { }, {
//Exits //Exits
Entrance(RR_SHADOW_TEMPLE_MQ_LOWER_HUGE_PIT, {[]{return HasFireSource || randoCtx->GetTrickOption(RT_SHADOW_MQ_HUGE_PIT);}}), Entrance(RR_SHADOW_TEMPLE_MQ_LOWER_HUGE_PIT, {[]{return HasFireSource || randoCtx->GetTrickOption(RT_SHADOW_MQ_HUGE_PIT);}}),
@ -155,7 +155,7 @@ void AreaTable_Init_ShadowTemple() {
LocationAccess(RC_SHADOW_TEMPLE_MQ_GS_AFTER_WIND, {[]{return true;}}), LocationAccess(RC_SHADOW_TEMPLE_MQ_GS_AFTER_WIND, {[]{return true;}}),
}, { }, {
//Exits //Exits
Entrance(RR_SHADOW_TEMPLE_MQ_BEYOND_BOAT, {[]{return CanPlay(ZeldasLullaby) && SmallKeys(RR_SHADOW_TEMPLE, 5);}}), Entrance(RR_SHADOW_TEMPLE_MQ_BEYOND_BOAT, {[]{return CanUse(RG_ZELDAS_LULLABY) && SmallKeys(RR_SHADOW_TEMPLE, 5);}}),
}); });
areaTable[RR_SHADOW_TEMPLE_MQ_BEYOND_BOAT] = Area("Shadow Temple MQ Beyond Boat", "Shadow Temple", RA_SHADOW_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_SHADOW_TEMPLE_MQ_BEYOND_BOAT] = Area("Shadow Temple MQ Beyond Boat", "Shadow Temple", RA_SHADOW_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, {
@ -164,7 +164,7 @@ void AreaTable_Init_ShadowTemple() {
LocationAccess(RC_SHADOW_TEMPLE_MQ_GS_NEAR_BOSS, {[]{return Bow || (randoCtx->GetTrickOption(RT_SHADOW_STATUE) && HasBombchus);}}), LocationAccess(RC_SHADOW_TEMPLE_MQ_GS_NEAR_BOSS, {[]{return Bow || (randoCtx->GetTrickOption(RT_SHADOW_STATUE) && HasBombchus);}}),
}, { }, {
//Exits //Exits
Entrance(RR_SHADOW_TEMPLE_MQ_INVISIBLE_MAZE, {[]{return Bow && CanPlay(SongOfTime) && IsAdult && CanUse(RG_LONGSHOT);}}), Entrance(RR_SHADOW_TEMPLE_MQ_INVISIBLE_MAZE, {[]{return Bow && CanUse(RG_SONG_OF_TIME) && IsAdult && CanUse(RG_LONGSHOT);}}),
Entrance(RR_SHADOW_TEMPLE_BOSS_ENTRYWAY, {[]{return (CanUse(RG_FAIRY_BOW) || (randoCtx->GetTrickOption(RT_SHADOW_STATUE) && HasBombchus)) && CanUse(RG_HOVER_BOOTS) && BossKeyShadowTemple;}}), Entrance(RR_SHADOW_TEMPLE_BOSS_ENTRYWAY, {[]{return (CanUse(RG_FAIRY_BOW) || (randoCtx->GetTrickOption(RT_SHADOW_STATUE) && HasBombchus)) && CanUse(RG_HOVER_BOOTS) && BossKeyShadowTemple;}}),
}); });

View File

@ -56,11 +56,11 @@ void AreaTable_Init_SpiritTemple() {
areaTable[RR_SPIRIT_TEMPLE_EARLY_ADULT] = Area("Early Adult Spirit Temple", "Spirit Temple", RA_SPIRIT_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_SPIRIT_TEMPLE_EARLY_ADULT] = Area("Early Adult Spirit Temple", "Spirit Temple", RA_SPIRIT_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, {
//Locations //Locations
LocationAccess(RC_SPIRIT_TEMPLE_COMPASS_CHEST, {[]{return CanUse(RG_HOOKSHOT) && CanPlay(ZeldasLullaby);}}), LocationAccess(RC_SPIRIT_TEMPLE_COMPASS_CHEST, {[]{return CanUse(RG_HOOKSHOT) && CanUse(RG_ZELDAS_LULLABY);}}),
LocationAccess(RC_SPIRIT_TEMPLE_EARLY_ADULT_RIGHT_CHEST, {[]{return (CanUse(RG_FAIRY_BOW) || CanUse(RG_HOOKSHOT) || CanUse(RG_FAIRY_SLINGSHOT) || CanUse(RG_BOOMERANG) || HasBombchus || (Bombs && IsAdult && randoCtx->GetTrickOption(RT_SPIRIT_LOWER_ADULT_SWITCH))) && (CanUse(RG_HOVER_BOOTS) || CanJumpslash);}}), LocationAccess(RC_SPIRIT_TEMPLE_EARLY_ADULT_RIGHT_CHEST, {[]{return (CanUse(RG_FAIRY_BOW) || CanUse(RG_HOOKSHOT) || CanUse(RG_FAIRY_SLINGSHOT) || CanUse(RG_BOOMERANG) || HasBombchus || (Bombs && IsAdult && randoCtx->GetTrickOption(RT_SPIRIT_LOWER_ADULT_SWITCH))) && (CanUse(RG_HOVER_BOOTS) || CanJumpslash);}}),
LocationAccess(RC_SPIRIT_TEMPLE_FIRST_MIRROR_LEFT_CHEST, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 3);}}), LocationAccess(RC_SPIRIT_TEMPLE_FIRST_MIRROR_LEFT_CHEST, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 3);}}),
LocationAccess(RC_SPIRIT_TEMPLE_FIRST_MIRROR_RIGHT_CHEST, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 3);}}), LocationAccess(RC_SPIRIT_TEMPLE_FIRST_MIRROR_RIGHT_CHEST, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 3);}}),
LocationAccess(RC_SPIRIT_TEMPLE_GS_BOULDER_ROOM, {[]{return CanPlay(SongOfTime) && (Bow || Hookshot || HasBombchus || (Bombs && randoCtx->GetTrickOption(RT_SPIRIT_LOWER_ADULT_SWITCH)));}}), LocationAccess(RC_SPIRIT_TEMPLE_GS_BOULDER_ROOM, {[]{return CanUse(RG_SONG_OF_TIME) && (Bow || Hookshot || HasBombchus || (Bombs && randoCtx->GetTrickOption(RT_SPIRIT_LOWER_ADULT_SWITCH)));}}),
}, { }, {
//Exits //Exits
Entrance(RR_SPIRIT_TEMPLE_CENTRAL_CHAMBER, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 1);}}), Entrance(RR_SPIRIT_TEMPLE_CENTRAL_CHAMBER, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 1);}}),
@ -85,8 +85,8 @@ void AreaTable_Init_SpiritTemple() {
(SmallKeys(RR_SPIRIT_TEMPLE, 3) && (SmallKeys(RR_SPIRIT_TEMPLE, 3) &&
(CanUse(RG_FIRE_ARROWS) || (randoCtx->GetTrickOption(RT_SPIRIT_SUN_CHEST) && Bow)) && (CanUse(RG_FIRE_ARROWS) || (randoCtx->GetTrickOption(RT_SPIRIT_SUN_CHEST) && Bow)) &&
CanUse(RG_SILVER_GAUNTLETS));}}), CanUse(RG_SILVER_GAUNTLETS));}}),
LocationAccess(RC_SPIRIT_TEMPLE_STATUE_ROOM_HAND_CHEST, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 3) && CanUse(RG_SILVER_GAUNTLETS) && CanPlay(ZeldasLullaby);}}), LocationAccess(RC_SPIRIT_TEMPLE_STATUE_ROOM_HAND_CHEST, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 3) && CanUse(RG_SILVER_GAUNTLETS) && CanUse(RG_ZELDAS_LULLABY);}}),
LocationAccess(RC_SPIRIT_TEMPLE_STATUE_ROOM_NORTHEAST_CHEST, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 3) && CanUse(RG_SILVER_GAUNTLETS) && CanPlay(ZeldasLullaby) && (Hookshot || HoverBoots || randoCtx->GetTrickOption(RT_SPIRIT_LOBBY_JUMP));}}), LocationAccess(RC_SPIRIT_TEMPLE_STATUE_ROOM_NORTHEAST_CHEST, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 3) && CanUse(RG_SILVER_GAUNTLETS) && CanUse(RG_ZELDAS_LULLABY) && (Hookshot || HoverBoots || randoCtx->GetTrickOption(RT_SPIRIT_LOBBY_JUMP));}}),
LocationAccess(RC_SPIRIT_TEMPLE_GS_HALL_AFTER_SUN_BLOCK_ROOM, {[]{return (HasExplosives && Boomerang && Hookshot) || LocationAccess(RC_SPIRIT_TEMPLE_GS_HALL_AFTER_SUN_BLOCK_ROOM, {[]{return (HasExplosives && Boomerang && Hookshot) ||
(CanUse(RG_BOOMERANG) && SmallKeys(RR_SPIRIT_TEMPLE, 5) && HasExplosives) || (CanUse(RG_BOOMERANG) && SmallKeys(RR_SPIRIT_TEMPLE, 5) && HasExplosives) ||
(Hookshot && CanUse(RG_SILVER_GAUNTLETS) && (Hookshot && CanUse(RG_SILVER_GAUNTLETS) &&
@ -124,7 +124,7 @@ void AreaTable_Init_SpiritTemple() {
areaTable[RR_SPIRIT_TEMPLE_BEYOND_FINAL_LOCKED_DOOR] = Area("Spirit Temple Beyond Final Locked Door", "Spirit Temple", RA_SPIRIT_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_SPIRIT_TEMPLE_BEYOND_FINAL_LOCKED_DOOR] = Area("Spirit Temple Beyond Final Locked Door", "Spirit Temple", RA_SPIRIT_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, {
//Locations //Locations
LocationAccess(RC_SPIRIT_TEMPLE_BOSS_KEY_CHEST, {[]{return CanPlay(ZeldasLullaby) && ((CanTakeDamage && randoCtx->GetTrickOption(RT_FLAMING_CHESTS)) || (Bow && Hookshot));}}), LocationAccess(RC_SPIRIT_TEMPLE_BOSS_KEY_CHEST, {[]{return CanUse(RG_ZELDAS_LULLABY) && ((CanTakeDamage && randoCtx->GetTrickOption(RT_FLAMING_CHESTS)) || (Bow && Hookshot));}}),
LocationAccess(RC_SPIRIT_TEMPLE_TOPMOST_CHEST, {[]{return (MirrorShield && CanAdultAttack) || (randoCtx->GetOption(RSK_SUNLIGHT_ARROWS) && CanUse(RG_LIGHT_ARROWS));}}), LocationAccess(RC_SPIRIT_TEMPLE_TOPMOST_CHEST, {[]{return (MirrorShield && CanAdultAttack) || (randoCtx->GetOption(RSK_SUNLIGHT_ARROWS) && CanUse(RG_LIGHT_ARROWS));}}),
}, { }, {
//Exits //Exits
@ -164,8 +164,8 @@ void AreaTable_Init_SpiritTemple() {
LocationAccess(RC_SPIRIT_TEMPLE_MQ_CHILD_HAMMER_SWITCH_CHEST, {[]{return Here(RR_SPIRIT_TEMPLE_MQ_ADULT, []{return SmallKeys(RR_SPIRIT_TEMPLE, 7) && Hammer;});}}), LocationAccess(RC_SPIRIT_TEMPLE_MQ_CHILD_HAMMER_SWITCH_CHEST, {[]{return Here(RR_SPIRIT_TEMPLE_MQ_ADULT, []{return SmallKeys(RR_SPIRIT_TEMPLE, 7) && Hammer;});}}),
LocationAccess(RC_SPIRIT_TEMPLE_MQ_MAP_ROOM_ENEMY_CHEST, {[]{return KokiriSword && HasBombchus && Slingshot && CanUse(RG_DINS_FIRE);}}), LocationAccess(RC_SPIRIT_TEMPLE_MQ_MAP_ROOM_ENEMY_CHEST, {[]{return KokiriSword && HasBombchus && Slingshot && CanUse(RG_DINS_FIRE);}}),
LocationAccess(RC_SPIRIT_TEMPLE_MQ_MAP_CHEST, {[]{return KokiriSword || Bombs;}}), LocationAccess(RC_SPIRIT_TEMPLE_MQ_MAP_CHEST, {[]{return KokiriSword || Bombs;}}),
LocationAccess(RC_SPIRIT_TEMPLE_MQ_SILVER_BLOCK_HALLWAY_CHEST, {[]{return HasBombchus && SmallKeys(RR_SPIRIT_TEMPLE, 7) && Slingshot && (CanUse(RG_DINS_FIRE) || (Here(RR_SPIRIT_TEMPLE_MQ_ADULT, []{return IsAdult && (CanUse(RG_FIRE_ARROWS) || (randoCtx->GetTrickOption(RT_SPIRIT_MQ_FROZEN_EYE) && CanUse(RG_FAIRY_BOW) && CanPlay(SongOfTime)));})));}}), LocationAccess(RC_SPIRIT_TEMPLE_MQ_SILVER_BLOCK_HALLWAY_CHEST, {[]{return HasBombchus && SmallKeys(RR_SPIRIT_TEMPLE, 7) && Slingshot && (CanUse(RG_DINS_FIRE) || (Here(RR_SPIRIT_TEMPLE_MQ_ADULT, []{return IsAdult && (CanUse(RG_FIRE_ARROWS) || (randoCtx->GetTrickOption(RT_SPIRIT_MQ_FROZEN_EYE) && CanUse(RG_FAIRY_BOW) && CanUse(RG_SONG_OF_TIME)));})));}}),
//Trick: HasBombchus && SmallKeys(RR_SPIRIT_TEMPLE, 7) && Slingshot && (CanUse(RG_DINS_FIRE) || (SPIRIT_TEMPLE_MQ_ADULT.Adult() && IsAdult && (CanUse(RG_FIRE_ARROWS) || (LogicSpiritMQFrozenEye && CanUse(RG_FAIRY_BOW) && CanPlay(SongOfTime))))) //Trick: HasBombchus && SmallKeys(RR_SPIRIT_TEMPLE, 7) && Slingshot && (CanUse(RG_DINS_FIRE) || (SPIRIT_TEMPLE_MQ_ADULT.Adult() && IsAdult && (CanUse(RG_FIRE_ARROWS) || (LogicSpiritMQFrozenEye && CanUse(RG_FAIRY_BOW) && CanUse(RG_SONG_OF_TIME)))))
}, { }, {
//Exits //Exits
Entrance(RR_SPIRIT_TEMPLE_MQ_SHARED, {[]{return HasBombchus && SmallKeys(RR_SPIRIT_TEMPLE, 2);}}), Entrance(RR_SPIRIT_TEMPLE_MQ_SHARED, {[]{return HasBombchus && SmallKeys(RR_SPIRIT_TEMPLE, 2);}}),
@ -174,11 +174,11 @@ void AreaTable_Init_SpiritTemple() {
areaTable[RR_SPIRIT_TEMPLE_MQ_ADULT] = Area("Spirit Temple MQ Adult", "Spirit Temple", RA_SPIRIT_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_SPIRIT_TEMPLE_MQ_ADULT] = Area("Spirit Temple MQ Adult", "Spirit Temple", RA_SPIRIT_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, {
//Locations //Locations
LocationAccess(RC_SPIRIT_TEMPLE_MQ_CHILD_CLIMB_SOUTH_CHEST, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 7);}}), LocationAccess(RC_SPIRIT_TEMPLE_MQ_CHILD_CLIMB_SOUTH_CHEST, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 7);}}),
LocationAccess(RC_SPIRIT_TEMPLE_MQ_STATUE_ROOM_LULLABY_CHEST, {[]{return CanPlay(ZeldasLullaby) && (CanJumpslash || CanUse(RG_HOVER_BOOTS));}}), LocationAccess(RC_SPIRIT_TEMPLE_MQ_STATUE_ROOM_LULLABY_CHEST, {[]{return CanUse(RG_ZELDAS_LULLABY) && (CanJumpslash || CanUse(RG_HOVER_BOOTS));}}),
LocationAccess(RC_SPIRIT_TEMPLE_MQ_STATUE_ROOM_INVISIBLE_CHEST, {[]{return (randoCtx->GetTrickOption(RT_LENS_SPIRIT_MQ) || CanUse(RG_LENS_OF_TRUTH));}}), LocationAccess(RC_SPIRIT_TEMPLE_MQ_STATUE_ROOM_INVISIBLE_CHEST, {[]{return (randoCtx->GetTrickOption(RT_LENS_SPIRIT_MQ) || CanUse(RG_LENS_OF_TRUTH));}}),
LocationAccess(RC_SPIRIT_TEMPLE_MQ_BEAMOS_ROOM_CHEST, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 5);}}), LocationAccess(RC_SPIRIT_TEMPLE_MQ_BEAMOS_ROOM_CHEST, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 5);}}),
LocationAccess(RC_SPIRIT_TEMPLE_MQ_CHEST_SWITCH_CHEST, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 5) && CanPlay(SongOfTime);}}), LocationAccess(RC_SPIRIT_TEMPLE_MQ_CHEST_SWITCH_CHEST, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 5) && CanUse(RG_SONG_OF_TIME);}}),
LocationAccess(RC_SPIRIT_TEMPLE_MQ_BOSS_KEY_CHEST, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 5) && CanPlay(SongOfTime) && (MirrorShield || (randoCtx->GetOption(RSK_SUNLIGHT_ARROWS) && CanUse(RG_LIGHT_ARROWS)));}}), LocationAccess(RC_SPIRIT_TEMPLE_MQ_BOSS_KEY_CHEST, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 5) && CanUse(RG_SONG_OF_TIME) && (MirrorShield || (randoCtx->GetOption(RSK_SUNLIGHT_ARROWS) && CanUse(RG_LIGHT_ARROWS)));}}),
LocationAccess(RC_SPIRIT_TEMPLE_MQ_GS_NINE_THRONES_ROOM_WEST, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 7);}}), LocationAccess(RC_SPIRIT_TEMPLE_MQ_GS_NINE_THRONES_ROOM_WEST, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 7);}}),
LocationAccess(RC_SPIRIT_TEMPLE_MQ_GS_NINE_THRONES_ROOM_NORTH, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 7);}}), LocationAccess(RC_SPIRIT_TEMPLE_MQ_GS_NINE_THRONES_ROOM_NORTH, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 7);}}),
}, { }, {
@ -186,24 +186,24 @@ void AreaTable_Init_SpiritTemple() {
Entrance(RR_SPIRIT_TEMPLE_MQ_LOWER_ADULT, {[]{return MirrorShield && IsAdult && (CanUse(RG_FIRE_ARROWS) || (randoCtx->GetTrickOption(RT_SPIRIT_MQ_LOWER_ADULT) && CanUse(RG_DINS_FIRE) && Bow));}}), Entrance(RR_SPIRIT_TEMPLE_MQ_LOWER_ADULT, {[]{return MirrorShield && IsAdult && (CanUse(RG_FIRE_ARROWS) || (randoCtx->GetTrickOption(RT_SPIRIT_MQ_LOWER_ADULT) && CanUse(RG_DINS_FIRE) && Bow));}}),
//Trick: MirrorShield && IsAdult && (CanUse(RG_FIRE_ARROWS) || (LogicSpiritMQLowerAdult && CanUse(RG_DINS_FIRE) && Bow)) //Trick: MirrorShield && IsAdult && (CanUse(RG_FIRE_ARROWS) || (LogicSpiritMQLowerAdult && CanUse(RG_DINS_FIRE) && Bow))
Entrance(RR_SPIRIT_TEMPLE_MQ_SHARED, {[]{return true;}}), Entrance(RR_SPIRIT_TEMPLE_MQ_SHARED, {[]{return true;}}),
Entrance(RR_SPIRIT_TEMPLE_MQ_BOSS_AREA, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 6) && CanPlay(ZeldasLullaby) && Hammer;}}), Entrance(RR_SPIRIT_TEMPLE_MQ_BOSS_AREA, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 6) && CanUse(RG_ZELDAS_LULLABY) && Hammer;}}),
Entrance(RR_SPIRIT_TEMPLE_MQ_MIRROR_SHIELD_HAND, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 5) && CanPlay(SongOfTime) && CanJumpslash && (randoCtx->GetTrickOption(RT_LENS_SPIRIT_MQ) || CanUse(RG_LENS_OF_TRUTH));}}), Entrance(RR_SPIRIT_TEMPLE_MQ_MIRROR_SHIELD_HAND, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 5) && CanUse(RG_SONG_OF_TIME) && CanJumpslash && (randoCtx->GetTrickOption(RT_LENS_SPIRIT_MQ) || CanUse(RG_LENS_OF_TRUTH));}}),
}); });
areaTable[RR_SPIRIT_TEMPLE_MQ_SHARED] = Area("Spirit Temple MQ Shared", "Spirit Temple", RA_SPIRIT_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_SPIRIT_TEMPLE_MQ_SHARED] = Area("Spirit Temple MQ Shared", "Spirit Temple", RA_SPIRIT_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, {
//Locations //Locations
LocationAccess(RC_SPIRIT_TEMPLE_MQ_CHILD_CLIMB_NORTH_CHEST, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 6);}}), LocationAccess(RC_SPIRIT_TEMPLE_MQ_CHILD_CLIMB_NORTH_CHEST, {[]{return SmallKeys(RR_SPIRIT_TEMPLE, 6);}}),
LocationAccess(RC_SPIRIT_TEMPLE_MQ_COMPASS_CHEST, {[]{return (IsChild && CanUse(RG_FAIRY_SLINGSHOT) && SmallKeys(RR_SPIRIT_TEMPLE, 7)) || (IsAdult && CanUse(RG_FAIRY_BOW)) || (Bow && Slingshot);}}), LocationAccess(RC_SPIRIT_TEMPLE_MQ_COMPASS_CHEST, {[]{return (IsChild && CanUse(RG_FAIRY_SLINGSHOT) && SmallKeys(RR_SPIRIT_TEMPLE, 7)) || (IsAdult && CanUse(RG_FAIRY_BOW)) || (Bow && Slingshot);}}),
LocationAccess(RC_SPIRIT_TEMPLE_MQ_SUN_BLOCK_ROOM_CHEST, {[]{return CanPlay(SongOfTime) || randoCtx->GetTrickOption(RT_SPIRIT_MQ_SUN_BLOCK_SOT) || IsAdult;}}), LocationAccess(RC_SPIRIT_TEMPLE_MQ_SUN_BLOCK_ROOM_CHEST, {[]{return CanUse(RG_SONG_OF_TIME) || randoCtx->GetTrickOption(RT_SPIRIT_MQ_SUN_BLOCK_SOT) || IsAdult;}}),
//Trick: CanPlay(SongOfTime) || LogicSpiritMQSunBlockSoT || IsAdult //Trick: CanUse(RG_SONG_OF_TIME) || LogicSpiritMQSunBlockSoT || IsAdult
LocationAccess(RC_SPIRIT_TEMPLE_MQ_GS_SUN_BLOCK_ROOM, {[]{return (randoCtx->GetTrickOption(RT_SPIRIT_MQ_SUN_BLOCK_GS) && Boomerang && (CanPlay(SongOfTime) || randoCtx->GetTrickOption(RT_SPIRIT_MQ_SUN_BLOCK_SOT))) || IsAdult;}}), LocationAccess(RC_SPIRIT_TEMPLE_MQ_GS_SUN_BLOCK_ROOM, {[]{return (randoCtx->GetTrickOption(RT_SPIRIT_MQ_SUN_BLOCK_GS) && Boomerang && (CanUse(RG_SONG_OF_TIME) || randoCtx->GetTrickOption(RT_SPIRIT_MQ_SUN_BLOCK_SOT))) || IsAdult;}}),
//Trick: (LogicSpiritMQSunBlockGS && Boomerang && (CanPlay(SongOfTime) || LogicSpiritMQSunBlockSoT)) || IsAdult //Trick: (LogicSpiritMQSunBlockGS && Boomerang && (CanUse(RG_SONG_OF_TIME) || LogicSpiritMQSunBlockSoT)) || IsAdult
}, { }, {
//Exits //Exits
Entrance(RR_SPIRIT_TEMPLE_MQ_SILVER_GAUNTLETS_HAND, {[]{return (SmallKeys(RR_SPIRIT_TEMPLE, 7) && (CanPlay(SongOfTime) || randoCtx->GetTrickOption(RT_SPIRIT_MQ_SUN_BLOCK_SOT) || IsAdult)) || (SmallKeys(RR_SPIRIT_TEMPLE, 4) && CanPlay(SongOfTime) && CanJumpslash && (randoCtx->GetTrickOption(RT_LENS_SPIRIT_MQ) || CanUse(RG_LENS_OF_TRUTH)));}}), Entrance(RR_SPIRIT_TEMPLE_MQ_SILVER_GAUNTLETS_HAND, {[]{return (SmallKeys(RR_SPIRIT_TEMPLE, 7) && (CanUse(RG_SONG_OF_TIME) || randoCtx->GetTrickOption(RT_SPIRIT_MQ_SUN_BLOCK_SOT) || IsAdult)) || (SmallKeys(RR_SPIRIT_TEMPLE, 4) && CanUse(RG_SONG_OF_TIME) && CanJumpslash && (randoCtx->GetTrickOption(RT_LENS_SPIRIT_MQ) || CanUse(RG_LENS_OF_TRUTH)));}}),
//Trick: (SmallKeys(RR_SPIRIT_TEMPLE, 7) && (CanPlay(SongOfTime) || LogicSpiritMQSunBlockSoT || IsAdult)) || (SmallKeys(RR_SPIRIT_TEMPLE, 4) && CanPlay(SongOfTime) && (LogicLensSpiritMQ || CanUse(RG_LENS_OF_TRUTH))) //Trick: (SmallKeys(RR_SPIRIT_TEMPLE, 7) && (CanUse(RG_SONG_OF_TIME) || LogicSpiritMQSunBlockSoT || IsAdult)) || (SmallKeys(RR_SPIRIT_TEMPLE, 4) && CanUse(RG_SONG_OF_TIME) && (LogicLensSpiritMQ || CanUse(RG_LENS_OF_TRUTH)))
Entrance(RR_DESERT_COLOSSUS, {[]{return (SmallKeys(RR_SPIRIT_TEMPLE, 7) && (CanPlay(SongOfTime) || randoCtx->GetTrickOption(RT_SPIRIT_MQ_SUN_BLOCK_SOT) || IsAdult)) || (SmallKeys(RR_SPIRIT_TEMPLE, 4) && CanPlay(SongOfTime) && CanJumpslash && (randoCtx->GetTrickOption(RT_LENS_SPIRIT_MQ) || CanUse(RG_LENS_OF_TRUTH)) && IsAdult);}}), Entrance(RR_DESERT_COLOSSUS, {[]{return (SmallKeys(RR_SPIRIT_TEMPLE, 7) && (CanUse(RG_SONG_OF_TIME) || randoCtx->GetTrickOption(RT_SPIRIT_MQ_SUN_BLOCK_SOT) || IsAdult)) || (SmallKeys(RR_SPIRIT_TEMPLE, 4) && CanUse(RG_SONG_OF_TIME) && CanJumpslash && (randoCtx->GetTrickOption(RT_LENS_SPIRIT_MQ) || CanUse(RG_LENS_OF_TRUTH)) && IsAdult);}}),
//Trick: (SmallKeys(RR_SPIRIT_TEMPLE, 7) && (CanPlay(SongOfTime) || LogicSpiritMQSunBlockSoT || IsAdult)) || (SmallKeys(RR_SPIRIT_TEMPLE, 4) && CanPlay(SongOfTime) && (LogicLensSpiritMQ || CanUse(RG_LENS_OF_TRUTH)) && IsAdult) //Trick: (SmallKeys(RR_SPIRIT_TEMPLE, 7) && (CanUse(RG_SONG_OF_TIME) || LogicSpiritMQSunBlockSoT || IsAdult)) || (SmallKeys(RR_SPIRIT_TEMPLE, 4) && CanUse(RG_SONG_OF_TIME) && (LogicLensSpiritMQ || CanUse(RG_LENS_OF_TRUTH)) && IsAdult)
}); });
areaTable[RR_SPIRIT_TEMPLE_MQ_LOWER_ADULT] = Area("Spirit Temple MQ Lower Adult", "Spirit Temple", RA_SPIRIT_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_SPIRIT_TEMPLE_MQ_LOWER_ADULT] = Area("Spirit Temple MQ Lower Adult", "Spirit Temple", RA_SPIRIT_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, {

View File

@ -41,7 +41,7 @@ void AreaTable_Init_WaterTemple() {
areaTable[RR_WATER_TEMPLE_EAST_LOWER] = Area("Water Temple East Lower", "Water Temple", RA_WATER_TEMPLE, NO_DAY_NIGHT_CYCLE, { areaTable[RR_WATER_TEMPLE_EAST_LOWER] = Area("Water Temple East Lower", "Water Temple", RA_WATER_TEMPLE, NO_DAY_NIGHT_CYCLE, {
//Events //Events
EventAccess(&WaterTempleLow, {[]{return WaterTempleLow || CanPlay(ZeldasLullaby);}}), EventAccess(&WaterTempleLow, {[]{return WaterTempleLow || CanUse(RG_ZELDAS_LULLABY);}}),
}, {}, { }, {}, {
//Exits //Exits
Entrance(RR_WATER_TEMPLE_LOBBY, {[]{return WaterTempleLow || ((randoCtx->GetTrickOption(RT_FEWER_TUNIC_REQUIREMENTS) || CanUse(RG_ZORA_TUNIC)) && CanUse(RG_IRON_BOOTS));}}), Entrance(RR_WATER_TEMPLE_LOBBY, {[]{return WaterTempleLow || ((randoCtx->GetTrickOption(RT_FEWER_TUNIC_REQUIREMENTS) || CanUse(RG_ZORA_TUNIC)) && CanUse(RG_IRON_BOOTS));}}),
@ -152,7 +152,7 @@ void AreaTable_Init_WaterTemple() {
areaTable[RR_WATER_TEMPLE_CENTRAL_PILLAR_UPPER] = Area("Water Temple Central Pillar Upper", "Water Temple", RA_WATER_TEMPLE, NO_DAY_NIGHT_CYCLE, { areaTable[RR_WATER_TEMPLE_CENTRAL_PILLAR_UPPER] = Area("Water Temple Central Pillar Upper", "Water Temple", RA_WATER_TEMPLE, NO_DAY_NIGHT_CYCLE, {
//Events //Events
EventAccess(&WaterTempleMiddle, {[]{return WaterTempleMiddle || CanPlay(ZeldasLullaby);}}), EventAccess(&WaterTempleMiddle, {[]{return WaterTempleMiddle || CanUse(RG_ZELDAS_LULLABY);}}),
}, { }, {
//Locations //Locations
LocationAccess(RC_WATER_TEMPLE_GS_CENTRAL_PILLAR, {[]{return CanUse(RG_LONGSHOT) || (((randoCtx->GetTrickOption(RT_WATER_FW_CENTRAL_GS) && CanUse(RG_FARORES_WIND) && (CanUse(RG_FAIRY_BOW) || CanUse(RG_DINS_FIRE) || SmallKeys(RR_WATER_TEMPLE, 5))) || (randoCtx->GetTrickOption(RT_WATER_IRONS_CENTRAL_GS) && CanUse(RG_IRON_BOOTS) && ((CanUse(RG_HOOKSHOT) && CanUse(RG_FAIRY_BOW)) || (CanUse(RG_DINS_FIRE))))) && WaterTempleHigh && HookshotOrBoomerang);}}), LocationAccess(RC_WATER_TEMPLE_GS_CENTRAL_PILLAR, {[]{return CanUse(RG_LONGSHOT) || (((randoCtx->GetTrickOption(RT_WATER_FW_CENTRAL_GS) && CanUse(RG_FARORES_WIND) && (CanUse(RG_FAIRY_BOW) || CanUse(RG_DINS_FIRE) || SmallKeys(RR_WATER_TEMPLE, 5))) || (randoCtx->GetTrickOption(RT_WATER_IRONS_CENTRAL_GS) && CanUse(RG_IRON_BOOTS) && ((CanUse(RG_HOOKSHOT) && CanUse(RG_FAIRY_BOW)) || (CanUse(RG_DINS_FIRE))))) && WaterTempleHigh && HookshotOrBoomerang);}}),
@ -186,7 +186,7 @@ void AreaTable_Init_WaterTemple() {
areaTable[RR_WATER_TEMPLE_HIGH_WATER] = Area("Water Temple High Water", "Water Temple", RA_WATER_TEMPLE, NO_DAY_NIGHT_CYCLE, { areaTable[RR_WATER_TEMPLE_HIGH_WATER] = Area("Water Temple High Water", "Water Temple", RA_WATER_TEMPLE, NO_DAY_NIGHT_CYCLE, {
//Events //Events
EventAccess(&WaterTempleHigh, {[]{return WaterTempleHigh || CanPlay(ZeldasLullaby);}}), EventAccess(&WaterTempleHigh, {[]{return WaterTempleHigh || CanUse(RG_ZELDAS_LULLABY);}}),
}, {}, { }, {}, {
//Exits //Exits
Entrance(RR_WATER_TEMPLE_LOBBY, {[]{return true;}}), Entrance(RR_WATER_TEMPLE_LOBBY, {[]{return true;}}),
@ -227,7 +227,7 @@ void AreaTable_Init_WaterTemple() {
}, { }, {
//Exits //Exits
Entrance(RR_WATER_TEMPLE_DARK_LINK_ROOM, {[]{return true;}}), Entrance(RR_WATER_TEMPLE_DARK_LINK_ROOM, {[]{return true;}}),
Entrance(RR_WATER_TEMPLE_RIVER, {[]{return IsChild || CanPlay(SongOfTime);}}), Entrance(RR_WATER_TEMPLE_RIVER, {[]{return IsChild || CanUse(RG_SONG_OF_TIME);}}),
}); });
areaTable[RR_WATER_TEMPLE_RIVER] = Area("Water Temple River", "Water Temple", RA_WATER_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_WATER_TEMPLE_RIVER] = Area("Water Temple River", "Water Temple", RA_WATER_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, {
@ -264,11 +264,11 @@ void AreaTable_Init_WaterTemple() {
areaTable[RR_WATER_TEMPLE_MQ_DIVE] = Area("Water Temple MQ Dive", "Water Temple", RA_WATER_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_WATER_TEMPLE_MQ_DIVE] = Area("Water Temple MQ Dive", "Water Temple", RA_WATER_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, {
//Locations //Locations
LocationAccess(RC_WATER_TEMPLE_MQ_MAP_CHEST, {[]{return HasFireSource && IsAdult && CanUse(RG_HOOKSHOT);}}), LocationAccess(RC_WATER_TEMPLE_MQ_MAP_CHEST, {[]{return HasFireSource && IsAdult && CanUse(RG_HOOKSHOT);}}),
LocationAccess(RC_WATER_TEMPLE_MQ_CENTRAL_PILLAR_CHEST, {[]{return IsAdult && CanUse(RG_ZORA_TUNIC) && CanUse(RG_HOOKSHOT) && ((randoCtx->GetTrickOption(RT_WATER_MQ_CENTRAL_PILLAR) && CanUse(RG_FIRE_ARROWS)) || (CanUse(RG_DINS_FIRE) && CanPlay(SongOfTime)));}}), LocationAccess(RC_WATER_TEMPLE_MQ_CENTRAL_PILLAR_CHEST, {[]{return IsAdult && CanUse(RG_ZORA_TUNIC) && CanUse(RG_HOOKSHOT) && ((randoCtx->GetTrickOption(RT_WATER_MQ_CENTRAL_PILLAR) && CanUse(RG_FIRE_ARROWS)) || (CanUse(RG_DINS_FIRE) && CanUse(RG_SONG_OF_TIME)));}}),
//Trick: IsAdult && CanUse(RG_ZORA_TUNIC) && CanUse(RG_HOOKSHOT) && ((LogicWaterMQCentralPillar && CanUse(RG_FIRE_ARROWS)) || (CanUse(RG_DINS_FIRE) && CanPlay(SongOfTime))) //Trick: IsAdult && CanUse(RG_ZORA_TUNIC) && CanUse(RG_HOOKSHOT) && ((LogicWaterMQCentralPillar && CanUse(RG_FIRE_ARROWS)) || (CanUse(RG_DINS_FIRE) && CanUse(RG_SONG_OF_TIME)))
}, { }, {
//Exits //Exits
Entrance(RR_WATER_TEMPLE_MQ_LOWERED_WATER_LEVELS, {[]{return CanPlay(ZeldasLullaby);}}), Entrance(RR_WATER_TEMPLE_MQ_LOWERED_WATER_LEVELS, {[]{return CanUse(RG_ZELDAS_LULLABY);}}),
}); });
areaTable[RR_WATER_TEMPLE_MQ_LOWERED_WATER_LEVELS] = Area("Water Temple MQ Lowered Water Levels", "Water Temple", RA_WATER_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_WATER_TEMPLE_MQ_LOWERED_WATER_LEVELS] = Area("Water Temple MQ Lowered Water Levels", "Water Temple", RA_WATER_TEMPLE, NO_DAY_NIGHT_CYCLE, {}, {

View File

@ -18,19 +18,19 @@ void AreaTable_Init_ZorasDomain() {
areaTable[RR_ZORAS_RIVER] = Area("Zora River", "Zora River", RA_ZORAS_RIVER, DAY_NIGHT_CYCLE, { areaTable[RR_ZORAS_RIVER] = Area("Zora River", "Zora River", RA_ZORAS_RIVER, DAY_NIGHT_CYCLE, {
//Events //Events
EventAccess(&GossipStoneFairy, {[]{return GossipStoneFairy || CanSummonGossipFairy;}}), EventAccess(&GossipStoneFairy, {[]{return GossipStoneFairy || CanSummonGossipFairy;}}),
EventAccess(&BeanPlantFairy, {[]{return BeanPlantFairy || (CanPlantBean(RR_ZORAS_RIVER) && CanPlay(SongOfStorms));}}), EventAccess(&BeanPlantFairy, {[]{return BeanPlantFairy || (CanPlantBean(RR_ZORAS_RIVER) && CanUse(RG_SONG_OF_STORMS));}}),
EventAccess(&ButterflyFairy, {[]{return ButterflyFairy || CanUse(RG_STICKS);}}), EventAccess(&ButterflyFairy, {[]{return ButterflyFairy || CanUse(RG_STICKS);}}),
EventAccess(&BugShrub, {[]{return BugShrub || CanCutShrubs;}}), EventAccess(&BugShrub, {[]{return BugShrub || CanCutShrubs;}}),
}, { }, {
//Locations //Locations
LocationAccess(RC_ZR_MAGIC_BEAN_SALESMAN, {[]{return IsChild;}}), LocationAccess(RC_ZR_MAGIC_BEAN_SALESMAN, {[]{return IsChild;}}),
LocationAccess(RC_ZR_FROGS_OCARINA_GAME, {[]{return IsChild && CanPlay(ZeldasLullaby) && CanPlay(SariasSong) && CanPlay(SunsSong) && CanPlay(EponasSong) && CanPlay(SongOfTime) && CanPlay(SongOfStorms);}}), LocationAccess(RC_ZR_FROGS_OCARINA_GAME, {[]{return IsChild && CanUse(RG_ZELDAS_LULLABY) && CanUse(RG_SARIAS_SONG) && CanUse(RG_SUNS_SONG) && CanUse(RG_EPONAS_SONG) && CanUse(RG_SONG_OF_TIME) && CanUse(RG_SONG_OF_STORMS);}}),
LocationAccess(RC_ZR_FROGS_IN_THE_RAIN, {[]{return IsChild && CanPlay(SongOfStorms);}}), LocationAccess(RC_ZR_FROGS_IN_THE_RAIN, {[]{return IsChild && CanUse(RG_SONG_OF_STORMS);}}),
LocationAccess(RC_ZR_FROGS_ZELDAS_LULLABY, {[]{return IsChild && CanPlay(ZeldasLullaby);}}), LocationAccess(RC_ZR_FROGS_ZELDAS_LULLABY, {[]{return IsChild && CanUse(RG_ZELDAS_LULLABY);}}),
LocationAccess(RC_ZR_FROGS_EPONAS_SONG, {[]{return IsChild && CanPlay(EponasSong);}}), LocationAccess(RC_ZR_FROGS_EPONAS_SONG, {[]{return IsChild && CanUse(RG_EPONAS_SONG);}}),
LocationAccess(RC_ZR_FROGS_SARIAS_SONG, {[]{return IsChild && CanPlay(SariasSong);}}), LocationAccess(RC_ZR_FROGS_SARIAS_SONG, {[]{return IsChild && CanUse(RG_SARIAS_SONG);}}),
LocationAccess(RC_ZR_FROGS_SUNS_SONG, {[]{return IsChild && CanPlay(SunsSong);}}), LocationAccess(RC_ZR_FROGS_SUNS_SONG, {[]{return IsChild && CanUse(RG_SUNS_SONG);}}),
LocationAccess(RC_ZR_FROGS_SONG_OF_TIME, {[]{return IsChild && CanPlay(SongOfTime);}}), LocationAccess(RC_ZR_FROGS_SONG_OF_TIME, {[]{return IsChild && CanUse(RG_SONG_OF_TIME);}}),
LocationAccess(RC_ZR_NEAR_OPEN_GROTTO_FREESTANDING_POH, {[]{return IsChild || CanUse(RG_HOVER_BOOTS) || (IsAdult && randoCtx->GetTrickOption(RT_ZR_LOWER));}}), LocationAccess(RC_ZR_NEAR_OPEN_GROTTO_FREESTANDING_POH, {[]{return IsChild || CanUse(RG_HOVER_BOOTS) || (IsAdult && randoCtx->GetTrickOption(RT_ZR_LOWER));}}),
LocationAccess(RC_ZR_NEAR_DOMAIN_FREESTANDING_POH, {[]{return IsChild || CanUse(RG_HOVER_BOOTS) || (IsAdult && randoCtx->GetTrickOption(RT_ZR_UPPER));}}), LocationAccess(RC_ZR_NEAR_DOMAIN_FREESTANDING_POH, {[]{return IsChild || CanUse(RG_HOVER_BOOTS) || (IsAdult && randoCtx->GetTrickOption(RT_ZR_UPPER));}}),
LocationAccess(RC_ZR_GS_LADDER, {[]{return IsChild && AtNight && CanChildAttack && CanGetNightTimeGS;}}), LocationAccess(RC_ZR_GS_LADDER, {[]{return IsChild && AtNight && CanChildAttack && CanGetNightTimeGS;}}),
@ -45,7 +45,7 @@ void AreaTable_Init_ZorasDomain() {
Entrance(RR_ZR_FAIRY_GROTTO, {[]{return Here(RR_ZORAS_RIVER, []{return CanBlastOrSmash;});}}), Entrance(RR_ZR_FAIRY_GROTTO, {[]{return Here(RR_ZORAS_RIVER, []{return CanBlastOrSmash;});}}),
Entrance(RR_THE_LOST_WOODS, {[]{return CanDive || CanUse(RG_IRON_BOOTS);}}), Entrance(RR_THE_LOST_WOODS, {[]{return CanDive || CanUse(RG_IRON_BOOTS);}}),
Entrance(RR_ZR_STORMS_GROTTO, {[]{return CanOpenStormGrotto;}}), Entrance(RR_ZR_STORMS_GROTTO, {[]{return CanOpenStormGrotto;}}),
Entrance(RR_ZR_BEHIND_WATERFALL, {[]{return CanPlay(ZeldasLullaby) || (IsChild && randoCtx->GetTrickOption(RT_ZR_CUCCO)) || (IsAdult && CanUse(RG_HOVER_BOOTS) && randoCtx->GetTrickOption(RT_ZR_HOVERS));}}), Entrance(RR_ZR_BEHIND_WATERFALL, {[]{return CanUse(RG_ZELDAS_LULLABY) || (IsChild && randoCtx->GetTrickOption(RT_ZR_CUCCO)) || (IsAdult && CanUse(RG_HOVER_BOOTS) && randoCtx->GetTrickOption(RT_ZR_HOVERS));}}),
}); });
areaTable[RR_ZR_BEHIND_WATERFALL] = Area("ZR Behind Waterfall", "Zora River", RA_ZORAS_RIVER, DAY_NIGHT_CYCLE, {}, {}, { areaTable[RR_ZR_BEHIND_WATERFALL] = Area("ZR Behind Waterfall", "Zora River", RA_ZORAS_RIVER, DAY_NIGHT_CYCLE, {}, {}, {
@ -158,7 +158,7 @@ void AreaTable_Init_ZorasDomain() {
areaTable[RR_ZF_GREAT_FAIRY_FOUNTAIN] = Area("ZF Great Fairy Fountain", "ZF Great Fairy Fountain", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, { areaTable[RR_ZF_GREAT_FAIRY_FOUNTAIN] = Area("ZF Great Fairy Fountain", "ZF Great Fairy Fountain", RA_NONE, NO_DAY_NIGHT_CYCLE, {}, {
//Locations //Locations
LocationAccess(RC_ZF_GREAT_FAIRY_REWARD, {[]{return CanPlay(ZeldasLullaby);}}), LocationAccess(RC_ZF_GREAT_FAIRY_REWARD, {[]{return CanUse(RG_ZELDAS_LULLABY);}}),
}, { }, {
//Exits //Exits
Entrance(RR_ZORAS_FOUNTAIN, {[]{return true;}}), Entrance(RR_ZORAS_FOUNTAIN, {[]{return true;}}),

View File

@ -241,6 +241,12 @@ namespace Logic {
bool Fairy = false; bool Fairy = false;
bool BottleWithBigPoe = false; bool BottleWithBigPoe = false;
bool OcarinaAButton = false;
bool OcarinaCLeftButton = false;
bool OcarinaCRightButton = false;
bool OcarinaCUpButton = false;
bool OcarinaCDownButton = false;
bool FoundBombchus = false; bool FoundBombchus = false;
bool CanPlayBowling = false; bool CanPlayBowling = false;
bool HasBombchus = false; bool HasBombchus = false;
@ -273,6 +279,7 @@ namespace Logic {
bool HookshotOrBoomerang = false; bool HookshotOrBoomerang = false;
bool CanGetNightTimeGS = false; bool CanGetNightTimeGS = false;
uint8_t OcarinaButtons = 0;
uint8_t BaseHearts = 0; uint8_t BaseHearts = 0;
uint8_t Hearts = 0; uint8_t Hearts = 0;
uint8_t Multiplier = 0; uint8_t Multiplier = 0;
@ -380,10 +387,6 @@ namespace Logic {
bool BuyDekuShieldPast = false; bool BuyDekuShieldPast = false;
bool TimeTravelPast = false; bool TimeTravelPast = false;
bool CanPlay(bool song) {
return Ocarina && song;
}
static bool IsMagicItem(RandomizerGet item) { static bool IsMagicItem(RandomizerGet item) {
return item == RG_DINS_FIRE || return item == RG_DINS_FIRE ||
item == RG_FARORES_WIND || item == RG_FARORES_WIND ||
@ -398,35 +401,51 @@ namespace Logic {
} }
bool HasItem(RandomizerGet itemName) { bool HasItem(RandomizerGet itemName) {
return (itemName == RG_DINS_FIRE && DinsFire) || return (itemName == RG_DINS_FIRE && DinsFire) ||
(itemName == RG_FARORES_WIND && FaroresWind) || (itemName == RG_FARORES_WIND && FaroresWind) ||
(itemName == RG_NAYRUS_LOVE && NayrusLove) || (itemName == RG_NAYRUS_LOVE && NayrusLove) ||
(itemName == RG_LENS_OF_TRUTH && LensOfTruth) || (itemName == RG_LENS_OF_TRUTH && LensOfTruth) ||
(itemName == RG_FAIRY_BOW && Bow) || (itemName == RG_FAIRY_BOW && Bow) ||
(itemName == RG_MEGATON_HAMMER && Hammer) || (itemName == RG_MEGATON_HAMMER && Hammer) ||
(itemName == RG_IRON_BOOTS && IronBoots) || (itemName == RG_IRON_BOOTS && IronBoots) ||
(itemName == RG_HOVER_BOOTS && HoverBoots) || (itemName == RG_HOVER_BOOTS && HoverBoots) ||
(itemName == RG_HOOKSHOT && Hookshot) || (itemName == RG_HOOKSHOT && Hookshot) ||
(itemName == RG_LONGSHOT && Longshot) || (itemName == RG_LONGSHOT && Longshot) ||
(itemName == RG_SILVER_GAUNTLETS && SilverGauntlets) || (itemName == RG_SILVER_GAUNTLETS && SilverGauntlets) ||
(itemName == RG_GOLDEN_GAUNTLETS && GoldenGauntlets) || (itemName == RG_GOLDEN_GAUNTLETS && GoldenGauntlets) ||
(itemName == RG_GORON_TUNIC && GoronTunic) || (itemName == RG_GORON_TUNIC && GoronTunic) ||
(itemName == RG_ZORA_TUNIC && ZoraTunic) || (itemName == RG_ZORA_TUNIC && ZoraTunic) ||
(itemName == RG_SCARECROW && Scarecrow) || (itemName == RG_SCARECROW && Scarecrow) ||
(itemName == RG_DISTANT_SCARECROW && DistantScarecrow)|| (itemName == RG_DISTANT_SCARECROW && DistantScarecrow) ||
(itemName == RG_HYLIAN_SHIELD && HylianShield) || (itemName == RG_HYLIAN_SHIELD && HylianShield) ||
(itemName == RG_MIRROR_SHIELD && MirrorShield) || (itemName == RG_MIRROR_SHIELD && MirrorShield) ||
(itemName == RG_MASTER_SWORD && MasterSword) || (itemName == RG_MASTER_SWORD && MasterSword) ||
(itemName == RG_BIGGORON_SWORD && BiggoronSword) || (itemName == RG_BIGGORON_SWORD && BiggoronSword) ||
(itemName == RG_FAIRY_SLINGSHOT && Slingshot) || (itemName == RG_FAIRY_SLINGSHOT && Slingshot) ||
(itemName == RG_BOOMERANG && Boomerang) || (itemName == RG_BOOMERANG && Boomerang) ||
(itemName == RG_KOKIRI_SWORD && KokiriSword) || (itemName == RG_KOKIRI_SWORD && KokiriSword) ||
(itemName == RG_STICKS && Sticks) || (itemName == RG_STICKS && Sticks) ||
(itemName == RG_DEKU_SHIELD && DekuShield) || (itemName == RG_DEKU_SHIELD && DekuShield) ||
(itemName == RG_FIRE_ARROWS && FireArrows) || (itemName == RG_FIRE_ARROWS && FireArrows) ||
(itemName == RG_ICE_ARROWS && IceArrows) || (itemName == RG_ICE_ARROWS && IceArrows) ||
(itemName == RG_LIGHT_ARROWS && LightArrows); (itemName == RG_LIGHT_ARROWS && LightArrows) ||
(itemName == RG_OCARINA_A_BUTTON && OcarinaAButton) ||
(itemName == RG_OCARINA_C_LEFT_BUTTON && OcarinaCLeftButton) ||
(itemName == RG_OCARINA_C_RIGHT_BUTTON && OcarinaCRightButton) ||
(itemName == RG_OCARINA_C_DOWN_BUTTON && OcarinaCDownButton) ||
(itemName == RG_OCARINA_C_UP_BUTTON && OcarinaCUpButton) ||
(itemName == RG_ZELDAS_LULLABY && ZeldasLullaby) ||
(itemName == RG_EPONAS_SONG && EponasSong) ||
(itemName == RG_SARIAS_SONG && SariasSong) ||
(itemName == RG_SUNS_SONG && SunsSong) ||
(itemName == RG_SONG_OF_TIME && SongOfTime) ||
(itemName == RG_SONG_OF_STORMS && SongOfStorms) ||
(itemName == RG_MINUET_OF_FOREST && MinuetOfForest) ||
(itemName == RG_BOLERO_OF_FIRE && BoleroOfFire) ||
(itemName == RG_SERENADE_OF_WATER && SerenadeOfWater) ||
(itemName == RG_REQUIEM_OF_SPIRIT && RequiemOfSpirit) ||
(itemName == RG_NOCTURNE_OF_SHADOW && NocturneOfShadow) ||
(itemName == RG_PRELUDE_OF_LIGHT && PreludeOfLight);
} }
//Can the passed in item be used? //Can the passed in item be used?
@ -461,6 +480,20 @@ namespace Logic {
case RG_STICKS: return IsChild;// || StickAsAdult; case RG_STICKS: return IsChild;// || StickAsAdult;
case RG_DEKU_SHIELD: return IsChild;// || DekuShieldAsAdult; case RG_DEKU_SHIELD: return IsChild;// || DekuShieldAsAdult;
// Songs
case RG_ZELDAS_LULLABY: return Ocarina && OcarinaCLeftButton && OcarinaCRightButton && OcarinaCUpButton;
case RG_EPONAS_SONG: return Ocarina && OcarinaCLeftButton && OcarinaCRightButton && OcarinaCUpButton;
case RG_SARIAS_SONG: return Ocarina && OcarinaCLeftButton && OcarinaCRightButton && OcarinaCDownButton;
case RG_SUNS_SONG: return Ocarina && OcarinaCRightButton && OcarinaCUpButton && OcarinaCDownButton;
case RG_SONG_OF_TIME: return Ocarina && OcarinaAButton && OcarinaCRightButton && OcarinaCDownButton;
case RG_SONG_OF_STORMS: return Ocarina && OcarinaAButton && OcarinaCUpButton && OcarinaCDownButton;
case RG_MINUET_OF_FOREST: return Ocarina && OcarinaAButton && OcarinaCLeftButton && OcarinaCRightButton && OcarinaCUpButton;
case RG_BOLERO_OF_FIRE: return Ocarina && OcarinaAButton && OcarinaCRightButton && OcarinaCDownButton;
case RG_SERENADE_OF_WATER: return Ocarina && OcarinaAButton && OcarinaCLeftButton && OcarinaCRightButton && OcarinaCDownButton;
case RG_REQUIEM_OF_SPIRIT: return Ocarina && OcarinaAButton && OcarinaCRightButton && OcarinaCDownButton;
case RG_NOCTURNE_OF_SHADOW: return Ocarina && OcarinaAButton && OcarinaCLeftButton && OcarinaCRightButton && OcarinaCDownButton;
case RG_PRELUDE_OF_LIGHT: return Ocarina && OcarinaCLeftButton && OcarinaCRightButton && OcarinaCUpButton;
// Magic items // Magic items
default: return MagicMeter && (IsMagicItem(itemName) || (IsMagicArrow(itemName) && CanUse(RG_FAIRY_BOW))); default: return MagicMeter && (IsMagicItem(itemName) || (IsMagicArrow(itemName) && CanUse(RG_FAIRY_BOW)));
} }
@ -535,6 +568,11 @@ namespace Logic {
//Updates all logic helpers. Should be called whenever a non-helper is changed //Updates all logic helpers. Should be called whenever a non-helper is changed
void UpdateHelpers() { void UpdateHelpers() {
auto ctx = Rando::Context::GetInstance(); auto ctx = Rando::Context::GetInstance();
OcarinaButtons = (OcarinaAButton ? 1 : 0) +
(OcarinaCLeftButton ? 1 : 0) +
(OcarinaCRightButton ? 1 : 0) +
(OcarinaCUpButton ? 1 : 0) +
(OcarinaCDownButton ? 1 : 0);
NumBottles = ((NoBottles) ? 0 : (Bottles + ((DeliverLetter) ? 1 : 0))); NumBottles = ((NoBottles) ? 0 : (Bottles + ((DeliverLetter) ? 1 : 0)));
HasBottle = NumBottles >= 1; HasBottle = NumBottles >= 1;
Slingshot = (ProgressiveBulletBag >= 1) && (BuySeed || AmmoCanDrop); Slingshot = (ProgressiveBulletBag >= 1) && (BuySeed || AmmoCanDrop);
@ -553,9 +591,10 @@ namespace Logic {
AdultsWallet = ProgressiveWallet >= 1; AdultsWallet = ProgressiveWallet >= 1;
BiggoronSword = BiggoronSword || ProgressiveGiantKnife >= 2; BiggoronSword = BiggoronSword || ProgressiveGiantKnife >= 2;
ScarecrowSong = ScarecrowSong || ctx->GetOption(RSK_SKIP_SCARECROWS_SONG) || (ChildScarecrow && AdultScarecrow); //you need at least 2 buttons for scarecrow song
Scarecrow = Hookshot && CanPlay(ScarecrowSong); ScarecrowSong = ScarecrowSong || (ctx->GetOption(RSK_SKIP_SCARECROWS_SONG) && Ocarina && OcarinaButtons >= 2) || (ChildScarecrow && AdultScarecrow);
DistantScarecrow = Longshot && CanPlay(ScarecrowSong); Scarecrow = Hookshot && ScarecrowSong;
DistantScarecrow = Longshot && ScarecrowSong;
//Drop Access //Drop Access
DekuStickDrop = StickPot || DekuBabaSticks; DekuStickDrop = StickPot || DekuBabaSticks;
@ -607,9 +646,9 @@ namespace Logic {
CanDive = ProgressiveScale >= 1; CanDive = ProgressiveScale >= 1;
CanLeaveForest = ctx->GetOption(RSK_FOREST).IsNot(RO_FOREST_CLOSED) || IsAdult || DekuTreeClear || ctx->GetOption(RSK_SHUFFLE_INTERIOR_ENTRANCES) || ctx->GetOption(RSK_SHUFFLE_OVERWORLD_ENTRANCES); CanLeaveForest = ctx->GetOption(RSK_FOREST).IsNot(RO_FOREST_CLOSED) || IsAdult || DekuTreeClear || ctx->GetOption(RSK_SHUFFLE_INTERIOR_ENTRANCES) || ctx->GetOption(RSK_SHUFFLE_OVERWORLD_ENTRANCES);
CanPlantBugs = IsChild && Bugs; CanPlantBugs = IsChild && Bugs;
CanRideEpona = IsAdult && Epona && CanPlay(EponasSong); CanRideEpona = IsAdult && Epona && CanUse(RG_EPONAS_SONG);
CanSummonGossipFairy = Ocarina && (ZeldasLullaby || EponasSong || SongOfTime || SunsSong); CanSummonGossipFairyWithoutSuns = CanUse(RG_ZELDAS_LULLABY) || CanUse(RG_EPONAS_SONG) || CanUse(RG_SONG_OF_TIME);
CanSummonGossipFairyWithoutSuns = Ocarina && (ZeldasLullaby || EponasSong || SongOfTime); CanSummonGossipFairy = CanSummonGossipFairyWithoutSuns || CanUse(RG_SUNS_SONG);
Hearts = BaseHearts + HeartContainer + (PieceOfHeart >> 2); Hearts = BaseHearts + HeartContainer + (PieceOfHeart >> 2);
EffectiveHealth = ((Hearts << (2 + DoubleDefense)) >> Multiplier) + ((Hearts << (2 + DoubleDefense)) % (1 << Multiplier) > 0); //Number of half heart hits to die, ranges from 1 to 160 EffectiveHealth = ((Hearts << (2 + DoubleDefense)) >> Multiplier) + ((Hearts << (2 + DoubleDefense)) % (1 << Multiplier) > 0); //Number of half heart hits to die, ranges from 1 to 160
FireTimer = CanUse(RG_GORON_TUNIC) ? 255 : (ctx->GetTrickOption(RT_FEWER_TUNIC_REQUIREMENTS)) ? (Hearts * 8) : 0; FireTimer = CanUse(RG_GORON_TUNIC) ? 255 : (ctx->GetTrickOption(RT_FEWER_TUNIC_REQUIREMENTS)) ? (Hearts * 8) : 0;
@ -620,9 +659,9 @@ namespace Logic {
CanTakeDamageTwice = (Fairy && NumBottles >= 2) || ((EffectiveHealth == 2) && (CanUse(RG_NAYRUS_LOVE) || Fairy)) || (EffectiveHealth > 2); CanTakeDamageTwice = (Fairy && NumBottles >= 2) || ((EffectiveHealth == 2) && (CanUse(RG_NAYRUS_LOVE) || Fairy)) || (EffectiveHealth > 2);
//CanPlantBean = IsChild && (MagicBean || MagicBeanPack); //CanPlantBean = IsChild && (MagicBean || MagicBeanPack);
CanOpenBombGrotto = CanBlastOrSmash && (ShardOfAgony || ctx->GetTrickOption(RT_GROTTOS_WITHOUT_AGONY)); CanOpenBombGrotto = CanBlastOrSmash && (ShardOfAgony || ctx->GetTrickOption(RT_GROTTOS_WITHOUT_AGONY));
CanOpenStormGrotto = CanPlay(SongOfStorms) && (ShardOfAgony || ctx->GetTrickOption(RT_GROTTOS_WITHOUT_AGONY)); CanOpenStormGrotto = CanUse(RG_SONG_OF_STORMS) && (ShardOfAgony || ctx->GetTrickOption(RT_GROTTOS_WITHOUT_AGONY));
HookshotOrBoomerang = CanUse(RG_HOOKSHOT) || CanUse(RG_BOOMERANG); HookshotOrBoomerang = CanUse(RG_HOOKSHOT) || CanUse(RG_BOOMERANG);
CanGetNightTimeGS = (CanPlay(SunsSong) || !ctx->GetOption(RSK_SKULLS_SUNS_SONG)); CanGetNightTimeGS = (CanUse(RG_SUNS_SONG) || !ctx->GetOption(RSK_SKULLS_SUNS_SONG));
GuaranteeTradePath = ctx->GetOption(RSK_SHUFFLE_INTERIOR_ENTRANCES) || ctx->GetOption(RSK_SHUFFLE_OVERWORLD_ENTRANCES) || ctx->GetTrickOption(RT_DMT_BOLERO_BIGGORON) || CanBlastOrSmash || StopGCRollingGoronAsAdult; GuaranteeTradePath = ctx->GetOption(RSK_SHUFFLE_INTERIOR_ENTRANCES) || ctx->GetOption(RSK_SHUFFLE_OVERWORLD_ENTRANCES) || ctx->GetTrickOption(RT_DMT_BOLERO_BIGGORON) || CanBlastOrSmash || StopGCRollingGoronAsAdult;
//GuaranteeHint = (hints == "Mask" && MaskofTruth) || (hints == "Agony") || (hints != "Mask" && hints != "Agony"); //GuaranteeHint = (hints == "Mask" && MaskofTruth) || (hints == "Agony") || (hints != "Mask" && hints != "Agony");
@ -885,6 +924,13 @@ namespace Logic {
GregInBridgeLogic = false; GregInBridgeLogic = false;
GregInLacsLogic = false; GregInLacsLogic = false;
//Ocarina C Buttons
OcarinaAButton = ctx->GetOption(RSK_SHUFFLE_OCARINA_BUTTONS).Is(true) ? 0 : 1;
OcarinaCLeftButton = ctx->GetOption(RSK_SHUFFLE_OCARINA_BUTTONS).Is(true) ? 0 : 1;
OcarinaCRightButton = ctx->GetOption(RSK_SHUFFLE_OCARINA_BUTTONS).Is(true) ? 0 : 1;
OcarinaCUpButton = ctx->GetOption(RSK_SHUFFLE_OCARINA_BUTTONS).Is(true) ? 0 : 1;
OcarinaCDownButton = ctx->GetOption(RSK_SHUFFLE_OCARINA_BUTTONS).Is(true) ? 0 : 1;
//Progressive Items //Progressive Items
ProgressiveBulletBag = 0; ProgressiveBulletBag = 0;
ProgressiveBombBag = 0; ProgressiveBombBag = 0;

View File

@ -200,6 +200,12 @@ extern uint8_t PieceOfHeart;
extern uint8_t HeartContainer; extern uint8_t HeartContainer;
extern bool DoubleDefense; extern bool DoubleDefense;
extern bool OcarinaAButton;
extern bool OcarinaCLeftButton;
extern bool OcarinaCRightButton;
extern bool OcarinaCUpButton;
extern bool OcarinaCDownButton;
/* --- HELPERS --- */ /* --- HELPERS --- */
/* These are used to simplify reading the logic, but need to be updated /* These are used to simplify reading the logic, but need to be updated
/ every time a base value is updated. */ / every time a base value is updated. */
@ -266,6 +272,7 @@ extern bool HookshotOrBoomerang;
extern bool CanGetNightTimeGS; extern bool CanGetNightTimeGS;
extern bool BigPoeKill; extern bool BigPoeKill;
extern uint8_t OcarinaButtons;
extern uint8_t BaseHearts; extern uint8_t BaseHearts;
extern uint8_t Hearts; extern uint8_t Hearts;
extern uint8_t Multiplier; extern uint8_t Multiplier;
@ -376,7 +383,6 @@ enum class GlitchDifficulty {
}; };
void UpdateHelpers(); void UpdateHelpers();
bool CanPlay(bool song);
bool CanUse(RandomizerGet itemName); bool CanUse(RandomizerGet itemName);
bool HasProjectile(HasProjectileAge age); bool HasProjectile(HasProjectileAge age);
bool HasBossSoul(RandomizerGet itemName); bool HasBossSoul(RandomizerGet itemName);

View File

@ -740,6 +740,29 @@ void InitTrickNames() {
Text{"Ganon's Ghost", "", ""}, Text{"Ganon's Ghost", "", ""},
Text{"Pork", "", ""}}; Text{"Pork", "", ""}};
trickNameTable[RG_OCARINA_A_BUTTON] = {
Text{"Ocarina J Button", "", ""},
Text{"Ocarina Ayy Button", "", ""},
Text{"Ocarina A Trigger", "", ""} };
trickNameTable[RG_OCARINA_C_UP_BUTTON] = {
Text{"Ocarina C North Button", "", ""},
Text{"Ocarina C App Button", "", ""},
Text{"Ocarina Sup Button", "", ""} };
trickNameTable[RG_OCARINA_C_DOWN_BUTTON] = {
Text{"Ocarina C South Button", "", ""},
Text{"Ocarina Z Down Button", "", ""},
Text{"Ocarina See Down Button", "", ""},
Text{"Ocarina C Dawn Button", "", ""} };
trickNameTable[RG_OCARINA_C_LEFT_BUTTON] = {
Text{"Ocarina C West Button", "", ""},
Text{"Ocarina Sea Left Button", "", ""},
Text{"Ocarina C Lift Button", "", ""},
Text{"Ocarina Rewind Button", "", ""} };
trickNameTable[RG_OCARINA_C_RIGHT_BUTTON] = {
Text{"Ocarina C East Button", "", ""},
Text{"Ocarina C Wright Button", "", ""},
Text{"Overworld C Right Button", "", ""} };
/* /*
//Names for individual upgrades, in case progressive names are replaced //Names for individual upgrades, in case progressive names are replaced
trickNameTable[GI_HOOKSHOT] = { trickNameTable[GI_HOOKSHOT] = {

View File

@ -14,6 +14,7 @@
#include "objects/object_toki_objects/object_toki_objects.h" #include "objects/object_toki_objects/object_toki_objects.h"
#include "objects/gameplay_field_keep/gameplay_field_keep.h" #include "objects/gameplay_field_keep/gameplay_field_keep.h"
#include "soh_assets.h" #include "soh_assets.h"
#include "soh/Enhancements/cosmetics/cosmeticsTypes.h"
extern "C" { extern "C" {
extern SaveContext gSaveContext; extern SaveContext gSaveContext;
@ -327,3 +328,66 @@ extern "C" void Randomizer_DrawBossSoul(PlayState* play, GetItemEntry* getItemEn
CLOSE_DISPS(play->state.gfxCtx); CLOSE_DISPS(play->state.gfxCtx);
} }
extern "C" void Randomizer_DrawOcarinaButton(PlayState* play, GetItemEntry* getItemEntry) {
Color_RGB8 aButtonColor = { 80, 150, 255 };
if (CVarGetInteger("gCosmetics.Hud_AButton.Changed", 0)) {
aButtonColor = CVarGetColor24("gCosmetics.Hud_AButton.Value", aButtonColor);
} else if (CVarGetInteger("gCosmetics.DefaultColorScheme", COLORSCHEME_N64) == COLORSCHEME_GAMECUBE) {
aButtonColor = { 80, 255, 150 };
}
Color_RGB8 cButtonsColor = { 255, 255, 50 };
if (CVarGetInteger("gCosmetics.Hud_CButtons.Changed", 0)) {
cButtonsColor = CVarGetColor24("gCosmetics.Hud_CButtons.Value", cButtonsColor);
}
Color_RGB8 cUpButtonColor = cButtonsColor;
if (CVarGetInteger("gCosmetics.Hud_CUpButton.Changed", 0)) {
cUpButtonColor = CVarGetColor24("gCosmetics.Hud_CUpButton.Value", cUpButtonColor);
}
Color_RGB8 cDownButtonColor = cButtonsColor;
if (CVarGetInteger("gCosmetics.Hud_CDownButton.Changed", 0)) {
cDownButtonColor = CVarGetColor24("gCosmetics.Hud_CDownButton.Value", cDownButtonColor);
}
Color_RGB8 cLeftButtonColor = cButtonsColor;
if (CVarGetInteger("gCosmetics.Hud_CLeftButton.Changed", 0)) {
cLeftButtonColor = CVarGetColor24("gCosmetics.Hud_CLeftButton.Value", cLeftButtonColor);
}
Color_RGB8 cRightButtonColor = cButtonsColor;
if (CVarGetInteger("gCosmetics.Hud_CRightButton.Changed", 0)) {
cRightButtonColor = CVarGetColor24("gCosmetics.Hud_CRightButton.Value", cRightButtonColor);
}
s16 slot = getItemEntry->getItemId - RG_OCARINA_A_BUTTON;
Gfx* dLists[] = {
(Gfx*)gOcarinaAButtonDL,
(Gfx*)gOcarinaCUpButtonDL,
(Gfx*)gOcarinaCDownButtonDL,
(Gfx*)gOcarinaCLeftButtonDL,
(Gfx*)gOcarinaCRightButtonDL,
};
Color_RGB8 colors[] = {
aButtonColor,
cUpButtonColor,
cDownButtonColor,
cLeftButtonColor,
cRightButtonColor,
};
OPEN_DISPS(play->state.gfxCtx);
Gfx_SetupDL_25Xlu(play->state.gfxCtx);
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(play->state.gfxCtx, (char*)__FILE__, __LINE__), G_MTX_MODELVIEW | G_MTX_LOAD);
gDPSetGrayscaleColor(POLY_XLU_DISP++, colors[slot].r, colors[slot].g, colors[slot].b, 255);
gSPGrayscale(POLY_XLU_DISP++, true);
gSPDisplayList(POLY_XLU_DISP++, dLists[slot]);
gSPGrayscale(POLY_XLU_DISP++, false);
CLOSE_DISPS(play->state.gfxCtx);
}

View File

@ -17,6 +17,7 @@ void Randomizer_DrawDoubleDefense(PlayState* play, GetItemEntry* getItemEntry);
void Randomizer_DrawMasterSword(PlayState* play, GetItemEntry* getItemEntry); void Randomizer_DrawMasterSword(PlayState* play, GetItemEntry* getItemEntry);
void Randomizer_DrawTriforcePiece(PlayState* play, GetItemEntry getItemEntry); void Randomizer_DrawTriforcePiece(PlayState* play, GetItemEntry getItemEntry);
void Randomizer_DrawTriforcePieceGI(PlayState* play, GetItemEntry getItemEntry); void Randomizer_DrawTriforcePieceGI(PlayState* play, GetItemEntry getItemEntry);
void Randomizer_DrawOcarinaButton(PlayState* play, GetItemEntry* getItemEntry);
#ifdef __cplusplus #ifdef __cplusplus
}; };
#endif #endif

View File

@ -259,6 +259,17 @@ void Rando::StaticData::InitItemTable() {
itemTable[RG_GANON_SOUL] = Item(RG_GANON_SOUL, Text{ "Ganon's Soul", "", "" }, ITEMTYPE_ITEM, 0xE8, true, &Logic::CanSummonGanon, RHT_GANON_SOUL, RG_GANON_SOUL, OBJECT_GI_SUTARU, GID_SKULL_TOKEN, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_MAJOR, MOD_RANDOMIZER); itemTable[RG_GANON_SOUL] = Item(RG_GANON_SOUL, Text{ "Ganon's Soul", "", "" }, ITEMTYPE_ITEM, 0xE8, true, &Logic::CanSummonGanon, RHT_GANON_SOUL, RG_GANON_SOUL, OBJECT_GI_SUTARU, GID_SKULL_TOKEN, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_MAJOR, MOD_RANDOMIZER);
itemTable[RG_GANON_SOUL].SetCustomDrawFunc(Randomizer_DrawBossSoul); itemTable[RG_GANON_SOUL].SetCustomDrawFunc(Randomizer_DrawBossSoul);
itemTable[RG_OCARINA_A_BUTTON] = Item(RG_OCARINA_A_BUTTON, Text{ "Ocarina A Button", "Touche A de l'Ocarina", "Botón A de Ocarina" }, ITEMTYPE_ITEM, GI_MAP, true, &Logic::OcarinaAButton, RHT_OCARINA_A_BUTTON, RG_OCARINA_A_BUTTON, OBJECT_GI_MAP, GID_STONE_OF_AGONY, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_MAJOR, MOD_RANDOMIZER);
itemTable[RG_OCARINA_A_BUTTON].SetCustomDrawFunc(Randomizer_DrawOcarinaButton);
itemTable[RG_OCARINA_C_UP_BUTTON] = Item(RG_OCARINA_C_UP_BUTTON, Text{ "Ocarina C Up Button", "Touche C-Haut de l'Ocarina", "Botón C superior de Ocarina" }, ITEMTYPE_ITEM, GI_MAP, true, &Logic::OcarinaCUpButton, RHT_OCARINA_C_UP_BUTTON, RG_OCARINA_C_UP_BUTTON, OBJECT_GI_MAP, GID_STONE_OF_AGONY, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_MAJOR, MOD_RANDOMIZER);
itemTable[RG_OCARINA_C_UP_BUTTON].SetCustomDrawFunc(Randomizer_DrawOcarinaButton);
itemTable[RG_OCARINA_C_DOWN_BUTTON] = Item(RG_OCARINA_C_DOWN_BUTTON, Text{ "Ocarina C Down Button", "Touche C-Bas de l'Ocarina", "Botón C inferior de Ocarina" }, ITEMTYPE_ITEM, GI_MAP, true, &Logic::OcarinaCDownButton, RHT_OCARINA_C_DOWN_BUTTON, RG_OCARINA_C_DOWN_BUTTON, OBJECT_GI_MAP, GID_STONE_OF_AGONY, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_MAJOR, MOD_RANDOMIZER);
itemTable[RG_OCARINA_C_DOWN_BUTTON].SetCustomDrawFunc(Randomizer_DrawOcarinaButton);
itemTable[RG_OCARINA_C_LEFT_BUTTON] = Item(RG_OCARINA_C_LEFT_BUTTON, Text{ "Ocarina C Left Button", "Touche C-Gauche de l'Ocarina", "Botón C izquierdo de Ocarina" }, ITEMTYPE_ITEM, GI_MAP, true, &Logic::OcarinaCLeftButton, RHT_OCARINA_C_LEFT_BUTTON, RG_OCARINA_C_LEFT_BUTTON, OBJECT_GI_MAP, GID_STONE_OF_AGONY, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_MAJOR, MOD_RANDOMIZER);
itemTable[RG_OCARINA_C_LEFT_BUTTON].SetCustomDrawFunc(Randomizer_DrawOcarinaButton);
itemTable[RG_OCARINA_C_RIGHT_BUTTON] = Item(RG_OCARINA_C_RIGHT_BUTTON, Text{ "Ocarina C Right Button", "Touche C-Droit de l'Ocarina", "Botón C derecho de Ocarina" }, ITEMTYPE_ITEM, GI_MAP, true, &Logic::OcarinaCRightButton, RHT_OCARINA_C_RIGHT_BUTTON, RG_OCARINA_C_RIGHT_BUTTON, OBJECT_GI_MAP, GID_STONE_OF_AGONY, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_MAJOR, MOD_RANDOMIZER);
itemTable[RG_OCARINA_C_RIGHT_BUTTON].SetCustomDrawFunc(Randomizer_DrawOcarinaButton);
itemTable[RG_TRIFORCE] = Item(RG_TRIFORCE, Text{ "Triforce", "Triforce", "Triforce" }, ITEMTYPE_EVENT, RG_TRIFORCE, false, &Logic::noVariable, RHT_NONE); itemTable[RG_TRIFORCE] = Item(RG_TRIFORCE, Text{ "Triforce", "Triforce", "Triforce" }, ITEMTYPE_EVENT, RG_TRIFORCE, false, &Logic::noVariable, RHT_NONE);
itemTable[RG_HINT] = Item(RG_HINT, Text{ "Hint", "Indice", "Hinweis" }, ITEMTYPE_EVENT, RG_HINT, false, &Logic::noVariable, RHT_NONE); itemTable[RG_HINT] = Item(RG_HINT, Text{ "Hint", "Indice", "Hinweis" }, ITEMTYPE_EVENT, RG_HINT, false, &Logic::noVariable, RHT_NONE);
// Individual stages of progressive items (only here for GetItemEntry purposes, not for use in seed gen) // Individual stages of progressive items (only here for GetItemEntry purposes, not for use in seed gen)

View File

@ -215,6 +215,10 @@ void Settings::CreateOptionDescriptions() {
"Enabling this shuffles the Fairy Ocarina and the Ocarina of Time into the item pool.\n" "Enabling this shuffles the Fairy Ocarina and the Ocarina of Time into the item pool.\n"
"\n" "\n"
"This will require finding an Ocarina before being able to play songs."; "This will require finding an Ocarina before being able to play songs.";
mOptionDescriptions[RSK_SHUFFLE_OCARINA_BUTTONS] =
"Enabling this shuffles the Ocarina buttons into the item pool.\n"
"\n"
"This will require finding the buttons before being able to use them in songs.";
mOptionDescriptions[RSK_SHUFFLE_WEIRD_EGG] = "Shuffles the Weird Egg from Malon in to the item pool. Enabling " mOptionDescriptions[RSK_SHUFFLE_WEIRD_EGG] = "Shuffles the Weird Egg from Malon in to the item pool. Enabling "
"\"Skip Child Zelda\" disables this feature.\n" "\"Skip Child Zelda\" disables this feature.\n"
"\n" "\n"
@ -411,7 +415,8 @@ void Settings::CreateOptionDescriptions() {
"Once the happy mask shop is opened, all masks will be available to be borrowed."; "Once the happy mask shop is opened, all masks will be available to be borrowed.";
mOptionDescriptions[RSK_SKIP_SCARECROWS_SONG] = mOptionDescriptions[RSK_SKIP_SCARECROWS_SONG] =
"Start with the ability to summon Pierre the scarecrow. Pulling out an ocarina in the usual locations will " "Start with the ability to summon Pierre the scarecrow. Pulling out an ocarina in the usual locations will "
"automatically summon him."; "automatically summon him.\n"
"With \"Shuffle Ocarina Buttons\" enabled, you'll need at least two ocarina buttons to summon him.";
mOptionDescriptions[RSK_ITEM_POOL] = "Sets how many major items appear in the item pool.\n" mOptionDescriptions[RSK_ITEM_POOL] = "Sets how many major items appear in the item pool.\n"
"\n" "\n"
"Plentiful - Extra major items are added to the pool.\n" "Plentiful - Extra major items are added to the pool.\n"

View File

@ -822,6 +822,18 @@ ItemObtainability Randomizer::GetItemObtainabilityFromRandomizerGet(RandomizerGe
case RG_LIGHT_MEDALLION: case RG_LIGHT_MEDALLION:
return !CHECK_QUEST_ITEM(QUEST_MEDALLION_LIGHT) ? CAN_OBTAIN : CANT_OBTAIN_ALREADY_HAVE; return !CHECK_QUEST_ITEM(QUEST_MEDALLION_LIGHT) ? CAN_OBTAIN : CANT_OBTAIN_ALREADY_HAVE;
// Ocarina Buttons
case RG_OCARINA_A_BUTTON:
return Flags_GetRandomizerInf(RAND_INF_HAS_OCARINA_A) ? CANT_OBTAIN_ALREADY_HAVE : CAN_OBTAIN;
case RG_OCARINA_C_LEFT_BUTTON:
return Flags_GetRandomizerInf(RAND_INF_HAS_OCARINA_C_LEFT) ? CANT_OBTAIN_ALREADY_HAVE : CAN_OBTAIN;
case RG_OCARINA_C_RIGHT_BUTTON:
return Flags_GetRandomizerInf(RAND_INF_HAS_OCARINA_C_RIGHT) ? CANT_OBTAIN_ALREADY_HAVE : CAN_OBTAIN;
case RG_OCARINA_C_UP_BUTTON:
return Flags_GetRandomizerInf(RAND_INF_HAS_OCARINA_C_UP) ? CANT_OBTAIN_ALREADY_HAVE : CAN_OBTAIN;
case RG_OCARINA_C_DOWN_BUTTON:
return Flags_GetRandomizerInf(RAND_INF_HAS_OCARINA_C_DOWN) ? CANT_OBTAIN_ALREADY_HAVE : CAN_OBTAIN;
case RG_RECOVERY_HEART: case RG_RECOVERY_HEART:
case RG_GREEN_RUPEE: case RG_GREEN_RUPEE:
case RG_GREG_RUPEE: case RG_GREG_RUPEE:
@ -1144,6 +1156,19 @@ GetItemID Randomizer::GetItemIdFromRandomizerGet(RandomizerGet randoGet, GetItem
return GI_HEART_PIECE_WIN; return GI_HEART_PIECE_WIN;
case RG_TREASURE_GAME_GREEN_RUPEE: case RG_TREASURE_GAME_GREEN_RUPEE:
return GI_RUPEE_GREEN_LOSE; return GI_RUPEE_GREEN_LOSE;
//Ocarina Buttons
case RG_OCARINA_A_BUTTON:
return (GetItemID)RG_OCARINA_A_BUTTON;
case RG_OCARINA_C_LEFT_BUTTON:
return (GetItemID)RG_OCARINA_C_LEFT_BUTTON;
case RG_OCARINA_C_RIGHT_BUTTON:
return (GetItemID)RG_OCARINA_C_RIGHT_BUTTON;
case RG_OCARINA_C_UP_BUTTON:
return (GetItemID)RG_OCARINA_C_UP_BUTTON;
case RG_OCARINA_C_DOWN_BUTTON:
return (GetItemID)RG_OCARINA_C_DOWN_BUTTON;
default: default:
if (!IsItemVanilla(randoGet)) { if (!IsItemVanilla(randoGet)) {
return (GetItemID)randoGet; return (GetItemID)randoGet;
@ -3043,7 +3068,7 @@ CustomMessage Randomizer::GetGoronMessage(u16 index) {
void Randomizer::CreateCustomMessages() { void Randomizer::CreateCustomMessages() {
// RANDTODO: Translate into french and german and replace GIMESSAGE_UNTRANSLATED // RANDTODO: Translate into french and german and replace GIMESSAGE_UNTRANSLATED
// with GIMESSAGE(getItemID, itemID, english, german, french). // with GIMESSAGE(getItemID, itemID, english, german, french).
const std::array<GetItemMessage, 66> getItemMessages = {{ const std::array<GetItemMessage, 71> getItemMessages = {{
GIMESSAGE(RG_GREG_RUPEE, ITEM_MASK_GORON, GIMESSAGE(RG_GREG_RUPEE, ITEM_MASK_GORON,
"You found %gGreg%w!", "You found %gGreg%w!",
"%gGreg%w! Du hast ihn wirklich gefunden!", "%gGreg%w! Du hast ihn wirklich gefunden!",
@ -3289,6 +3314,26 @@ void Randomizer::CreateCustomMessages() {
GIMESSAGE_UNTRANSLATED(RG_TWINROVA_SOUL, ITEM_BIG_POE, "You found the soul for %yTwinrova%w!"), GIMESSAGE_UNTRANSLATED(RG_TWINROVA_SOUL, ITEM_BIG_POE, "You found the soul for %yTwinrova%w!"),
GIMESSAGE_UNTRANSLATED(RG_GANON_SOUL, ITEM_BIG_POE, "You found the soul for %cGanon%w!"), GIMESSAGE_UNTRANSLATED(RG_GANON_SOUL, ITEM_BIG_POE, "You found the soul for %cGanon%w!"),
GIMESSAGE(RG_OCARINA_A_BUTTON, ITEM_OCARINA_TIME,
"You got the %b\x9f%r button for the&Ocarina%w! You can now use it&while playing songs!",
"Der %b\x9f%r Knopf%w!&Du kannst ihn nun zum Spielen&von Liedern auf der %rOkarina%w&verwenden!",
"Vous trouvez la %rtouche %b\x9f%r de&l'Ocarina%w! Vous pouvez&maintenant l'utiliser lorsque&vous en jouez!"),
GIMESSAGE(RG_OCARINA_C_LEFT_BUTTON, ITEM_OCARINA_TIME,
"You got the %y\xa7%r button for the&Ocarina%w! You can now use it&while playing songs!",
"Der %y\xa7%r Knopf%w!&Du kannst ihn nun zum Spielen&von Liedern auf der %rOkarina%w&verwenden!",
"Vous trouvez la %rtouche %y\xa7%r de&l'Ocarina%w! Vous pouvez&maintenant l'utiliser lorsque&vous en jouez!"),
GIMESSAGE(RG_OCARINA_C_RIGHT_BUTTON, ITEM_OCARINA_TIME,
"You got the %y\xa8%r button for the&Ocarina%w! You can now use it&while playing songs!",
"Der %y\xa8%r Knopf%w!&Du kannst ihn nun zum Spielen&von Liedern auf der %rOkarina%w&verwenden!",
"Vous trouvez la %rtouche %y\xa8%r de&l'Ocarina%w! Vous pouvez&maintenant l'utiliser lorsque&vous en jouez!"),
GIMESSAGE(RG_OCARINA_C_UP_BUTTON, ITEM_OCARINA_TIME,
"You got the %y\xa5%r button for the&Ocarina%w! You can now use it&while playing songs!",
"Der %y\xa5%r Knopf%w!&Du kannst ihn nun zum Spielen&von Liedern auf der %rOkarina%w&verwenden!",
"Vous trouvez la %rtouche %y\xa5%r de&l'Ocarina%w! Vous pouvez&maintenant l'utiliser lorsque&vous en jouez!"),
GIMESSAGE(RG_OCARINA_C_DOWN_BUTTON, ITEM_OCARINA_TIME,
"You got the %y\xa6%r button for the&Ocarina%w! You can now use it&while playing songs!",
"Der %y\xa6%r Knopf%w!&Du kannst ihn nun zum Spielen&von Liedern auf der %rOkarina%w&verwenden!",
"Vous trouvez la %rtouche %y\xa6%r de&l'Ocarina%w! Vous pouvez&maintenant l'utiliser lorsque&vous en jouez!"),
}}; }};
CreateGetItemMessages(&getItemMessages); CreateGetItemMessages(&getItemMessages);
CreateRupeeMessages(); CreateRupeeMessages();

View File

@ -1867,6 +1867,11 @@ typedef enum {
RG_BONGO_BONGO_SOUL, RG_BONGO_BONGO_SOUL,
RG_TWINROVA_SOUL, RG_TWINROVA_SOUL,
RG_GANON_SOUL, RG_GANON_SOUL,
RG_OCARINA_A_BUTTON,
RG_OCARINA_C_UP_BUTTON,
RG_OCARINA_C_DOWN_BUTTON,
RG_OCARINA_C_LEFT_BUTTON,
RG_OCARINA_C_RIGHT_BUTTON,
RG_HINT, RG_HINT,
RG_TYCOON_WALLET, RG_TYCOON_WALLET,
RG_FAIRY_OCARINA, RG_FAIRY_OCARINA,
@ -3080,6 +3085,11 @@ typedef enum {
RHT_BONGO_BONGO_SOUL, RHT_BONGO_BONGO_SOUL,
RHT_TWINROVA_SOUL, RHT_TWINROVA_SOUL,
RHT_GANON_SOUL, RHT_GANON_SOUL,
RHT_OCARINA_A_BUTTON,
RHT_OCARINA_C_UP_BUTTON,
RHT_OCARINA_C_DOWN_BUTTON,
RHT_OCARINA_C_LEFT_BUTTON,
RHT_OCARINA_C_RIGHT_BUTTON,
RHT_EPONA, RHT_EPONA,
// Entrances // Entrances
RHT_DESERT_COLOSSUS_TO_COLOSSUS_GROTTO, RHT_DESERT_COLOSSUS_TO_COLOSSUS_GROTTO,
@ -3382,6 +3392,7 @@ typedef enum {
RSK_TRIAL_COUNT, RSK_TRIAL_COUNT,
RSK_STARTING_OCARINA, RSK_STARTING_OCARINA,
RSK_SHUFFLE_OCARINA, RSK_SHUFFLE_OCARINA,
RSK_SHUFFLE_OCARINA_BUTTONS,
RSK_STARTING_DEKU_SHIELD, RSK_STARTING_DEKU_SHIELD,
RSK_STARTING_KOKIRI_SWORD, RSK_STARTING_KOKIRI_SWORD,
RSK_STARTING_MASTER_SWORD, RSK_STARTING_MASTER_SWORD,

View File

@ -171,6 +171,12 @@ typedef enum {
RAND_INF_TWINROVA_SOUL, RAND_INF_TWINROVA_SOUL,
RAND_INF_GANON_SOUL, RAND_INF_GANON_SOUL,
RAND_INF_HAS_OCARINA_A,
RAND_INF_HAS_OCARINA_C_UP,
RAND_INF_HAS_OCARINA_C_DOWN,
RAND_INF_HAS_OCARINA_C_LEFT,
RAND_INF_HAS_OCARINA_C_RIGHT,
// If you add anything to this list, you need to update the size of randomizerInf in z64save.h to be ceil(RAND_INF_MAX / 16) // If you add anything to this list, you need to update the size of randomizerInf in z64save.h to be ceil(RAND_INF_MAX / 16)
RAND_INF_MAX, RAND_INF_MAX,

View File

@ -98,6 +98,16 @@ std::vector<ItemTrackerItem> bossSoulItems = {
ITEM_TRACKER_ITEM_CUSTOM(RG_GANON_SOUL, ITEM_BIG_POE, ITEM_BOTTLE, 0, DrawItem ), ITEM_TRACKER_ITEM_CUSTOM(RG_GANON_SOUL, ITEM_BIG_POE, ITEM_BOTTLE, 0, DrawItem ),
}; };
std::vector<ItemTrackerItem> ocarinaButtonItems = {
//Hack for right now, just gonna draw ocarina buttons as ocarinas.
//Will replace with other macro once we have a custom texture
ITEM_TRACKER_ITEM_CUSTOM(RG_OCARINA_A_BUTTON, ITEM_OCARINA_TIME, ITEM_OCARINA_TIME, 0, DrawItem ),
ITEM_TRACKER_ITEM_CUSTOM(RG_OCARINA_C_UP_BUTTON, ITEM_OCARINA_TIME, ITEM_OCARINA_TIME, 0, DrawItem ),
ITEM_TRACKER_ITEM_CUSTOM(RG_OCARINA_C_DOWN_BUTTON, ITEM_OCARINA_TIME, ITEM_OCARINA_TIME, 0, DrawItem ),
ITEM_TRACKER_ITEM_CUSTOM(RG_OCARINA_C_LEFT_BUTTON, ITEM_OCARINA_TIME, ITEM_OCARINA_TIME, 0, DrawItem ),
ITEM_TRACKER_ITEM_CUSTOM(RG_OCARINA_C_RIGHT_BUTTON, ITEM_OCARINA_TIME, ITEM_OCARINA_TIME, 0, DrawItem ),
};
std::vector<ItemTrackerDungeon> itemTrackerDungeonsWithMapsHorizontal = { std::vector<ItemTrackerDungeon> itemTrackerDungeonsWithMapsHorizontal = {
{ SCENE_DEKU_TREE, { ITEM_DUNGEON_MAP, ITEM_COMPASS } }, { SCENE_DEKU_TREE, { ITEM_DUNGEON_MAP, ITEM_COMPASS } },
{ SCENE_DODONGOS_CAVERN, { ITEM_DUNGEON_MAP, ITEM_COMPASS } }, { SCENE_DODONGOS_CAVERN, { ITEM_DUNGEON_MAP, ITEM_COMPASS } },
@ -180,6 +190,14 @@ std::map<uint16_t, std::string> itemTrackerBossShortNames = {
{ RG_GANON_SOUL, "GANON"}, { RG_GANON_SOUL, "GANON"},
}; };
std::map<uint16_t, std::string> itemTrackerOcarinaButtonShortNames = {
{ RG_OCARINA_A_BUTTON, "A" },
{ RG_OCARINA_C_UP_BUTTON, "C-U" },
{ RG_OCARINA_C_DOWN_BUTTON, "C-D" },
{ RG_OCARINA_C_LEFT_BUTTON, "C-L"},
{ RG_OCARINA_C_RIGHT_BUTTON, "C-R"},
};
std::vector<ItemTrackerItem> dungeonItems = {}; std::vector<ItemTrackerItem> dungeonItems = {};
std::unordered_map<uint32_t, ItemTrackerItem> actualItemTrackerItemMap = { std::unordered_map<uint32_t, ItemTrackerItem> actualItemTrackerItemMap = {
@ -682,6 +700,32 @@ void DrawItem(ItemTrackerItem item) {
itemName = "Ganon's Soul"; itemName = "Ganon's Soul";
break; break;
case RG_OCARINA_A_BUTTON:
actualItemId = item.id;
hasItem = Flags_GetRandomizerInf(RAND_INF_HAS_OCARINA_A);
itemName = "Ocarina A Button";
break;
case RG_OCARINA_C_UP_BUTTON:
actualItemId = item.id;
hasItem = Flags_GetRandomizerInf(RAND_INF_HAS_OCARINA_C_UP);
itemName = "Ocarina C Up Button";
break;
case RG_OCARINA_C_DOWN_BUTTON:
actualItemId = item.id;
hasItem = Flags_GetRandomizerInf(RAND_INF_HAS_OCARINA_C_DOWN);
itemName = "Ocarina C Down Button";
break;
case RG_OCARINA_C_LEFT_BUTTON:
actualItemId = item.id;
hasItem = Flags_GetRandomizerInf(RAND_INF_HAS_OCARINA_C_LEFT);
itemName = "Ocarina C Left Button";
break;
case RG_OCARINA_C_RIGHT_BUTTON:
actualItemId = item.id;
hasItem = Flags_GetRandomizerInf(RAND_INF_HAS_OCARINA_C_RIGHT);
itemName = "Ocarina C Right Button";
break;
} }
if (GameInteractor::IsSaveLoaded() && (hasItem && item.id != actualItemId && actualItemTrackerItemMap.find(actualItemId) != actualItemTrackerItemMap.end())) { if (GameInteractor::IsSaveLoaded() && (hasItem && item.id != actualItemId && actualItemTrackerItemMap.find(actualItemId) != actualItemTrackerItemMap.end())) {
@ -704,6 +748,15 @@ void DrawItem(ItemTrackerItem item) {
ImGui::PopStyleColor(); ImGui::PopStyleColor();
} }
if (item.id >= RG_OCARINA_A_BUTTON && item.id <= RG_OCARINA_C_RIGHT_BUTTON) {
ImVec2 p = ImGui::GetCursorScreenPos();
std::string ocarinaButtonName = itemTrackerOcarinaButtonShortNames[item.id];
ImGui::SetCursorScreenPos(ImVec2(p.x + (iconSize / 2) - (ImGui::CalcTextSize(ocarinaButtonName.c_str()).x / 2), p.y - (iconSize + 13)));
ImGui::PushStyleColor(ImGuiCol_Text, IM_COL_WHITE);
ImGui::Text("%s", ocarinaButtonName.c_str());
ImGui::PopStyleColor();
}
ImGui::EndGroup(); ImGui::EndGroup();
if (itemName == "") { if (itemName == "") {
@ -1050,6 +1103,17 @@ void UpdateVectors() {
mainWindowItems.insert(mainWindowItems.end(), bossSoulItems.begin(), bossSoulItems.end()); mainWindowItems.insert(mainWindowItems.end(), bossSoulItems.begin(), bossSoulItems.end());
} }
//If we're adding ocarina buttons to the main window...
if (CVarGetInteger("gItemTrackerOcarinaButtonsDisplayType", SECTION_DISPLAY_HIDDEN) == SECTION_DISPLAY_MAIN_WINDOW) {
//...add empty items on the main window to get the buttons on their own row. (Too many to sit with Greg/Triforce pieces/boss souls)
while (mainWindowItems.size() % 6) {
mainWindowItems.push_back(ITEM_TRACKER_ITEM(ITEM_NONE, 0, DrawItem));
}
//Add ocarina buttons
mainWindowItems.insert(mainWindowItems.end(), ocarinaButtonItems.begin(), ocarinaButtonItems.end());
}
shouldUpdateVectors = false; shouldUpdateVectors = false;
} }
@ -1156,6 +1220,12 @@ void ItemTrackerWindow::DrawElement() {
EndFloatingWindows(); EndFloatingWindows();
} }
if (CVarGetInteger("gItemTrackerOcarinaButtonsDisplayType", SECTION_DISPLAY_HIDDEN) == SECTION_DISPLAY_SEPARATE) {
BeginFloatingWindows("Ocarina Button Tracker");
DrawItemsInRows(ocarinaButtonItems);
EndFloatingWindows();
}
if (CVarGetInteger("gItemTrackerNotesDisplayType", SECTION_DISPLAY_HIDDEN) == SECTION_DISPLAY_SEPARATE && CVarGetInteger("gItemTrackerDisplayType", TRACKER_DISPLAY_ALWAYS) == TRACKER_DISPLAY_ALWAYS) { if (CVarGetInteger("gItemTrackerNotesDisplayType", SECTION_DISPLAY_HIDDEN) == SECTION_DISPLAY_SEPARATE && CVarGetInteger("gItemTrackerDisplayType", TRACKER_DISPLAY_ALWAYS) == TRACKER_DISPLAY_ALWAYS) {
ImGui::SetNextWindowSize(ImVec2(400,300), ImGuiCond_FirstUseEver); ImGui::SetNextWindowSize(ImVec2(400,300), ImGuiCond_FirstUseEver);
BeginFloatingWindows("Personal Notes", ImGuiWindowFlags_NoFocusOnAppearing); BeginFloatingWindows("Personal Notes", ImGuiWindowFlags_NoFocusOnAppearing);
@ -1299,6 +1369,10 @@ void ItemTrackerSettingsWindow::DrawElement() {
shouldUpdateVectors = true; shouldUpdateVectors = true;
} }
if (UIWidgets::LabeledRightAlignedEnhancementCombobox("Ocarina Buttons", "gItemTrackerOcarinaButtonsDisplayType", displayTypes, SECTION_DISPLAY_HIDDEN)) {
shouldUpdateVectors = true;
}
if (CVarGetInteger("gItemTrackerDisplayType", TRACKER_DISPLAY_ALWAYS) == TRACKER_DISPLAY_ALWAYS) { if (CVarGetInteger("gItemTrackerDisplayType", TRACKER_DISPLAY_ALWAYS) == TRACKER_DISPLAY_ALWAYS) {
if (UIWidgets::LabeledRightAlignedEnhancementCombobox("Personal notes", "gItemTrackerNotesDisplayType", displayTypes, SECTION_DISPLAY_HIDDEN)) { if (UIWidgets::LabeledRightAlignedEnhancementCombobox("Personal notes", "gItemTrackerNotesDisplayType", displayTypes, SECTION_DISPLAY_HIDDEN)) {
shouldUpdateVectors = true; shouldUpdateVectors = true;

View File

@ -293,6 +293,14 @@ extern "C" void Randomizer_InitSaveFile() {
Flags_SetInfTable(INFTABLE_SPOKE_TO_DARUNIA_IN_FIRE_TEMPLE); // Darunia in Fire Temple Flags_SetInfTable(INFTABLE_SPOKE_TO_DARUNIA_IN_FIRE_TEMPLE); // Darunia in Fire Temple
} }
if (Randomizer_GetSettingValue(RSK_SHUFFLE_OCARINA_BUTTONS) == RO_GENERIC_OFF) {
Flags_SetRandomizerInf(RAND_INF_HAS_OCARINA_A);
Flags_SetRandomizerInf(RAND_INF_HAS_OCARINA_C_LEFT);
Flags_SetRandomizerInf(RAND_INF_HAS_OCARINA_C_RIGHT);
Flags_SetRandomizerInf(RAND_INF_HAS_OCARINA_C_UP);
Flags_SetRandomizerInf(RAND_INF_HAS_OCARINA_C_DOWN);
}
// Give Link's pocket item // Give Link's pocket item
GiveLinksPocketItem(); GiveLinksPocketItem();

View File

@ -103,6 +103,7 @@ void Settings::CreateOptions() {
mOptions[RSK_SHUFFLE_KOKIRI_SWORD] = Option::Bool("Shuffle Kokiri Sword", "gRandomizeShuffleKokiriSword", mOptionDescriptions[RSK_SHUFFLE_KOKIRI_SWORD]); mOptions[RSK_SHUFFLE_KOKIRI_SWORD] = Option::Bool("Shuffle Kokiri Sword", "gRandomizeShuffleKokiriSword", mOptionDescriptions[RSK_SHUFFLE_KOKIRI_SWORD]);
mOptions[RSK_SHUFFLE_MASTER_SWORD] = Option::Bool("Shuffle Master Sword", "gRandomizeShuffleMasterSword", mOptionDescriptions[RSK_SHUFFLE_MASTER_SWORD]); mOptions[RSK_SHUFFLE_MASTER_SWORD] = Option::Bool("Shuffle Master Sword", "gRandomizeShuffleMasterSword", mOptionDescriptions[RSK_SHUFFLE_MASTER_SWORD]);
mOptions[RSK_SHUFFLE_OCARINA] = Option::Bool("Shuffle Ocarinas", "gRandomizeShuffleOcarinas", mOptionDescriptions[RSK_SHUFFLE_OCARINA]); mOptions[RSK_SHUFFLE_OCARINA] = Option::Bool("Shuffle Ocarinas", "gRandomizeShuffleOcarinas", mOptionDescriptions[RSK_SHUFFLE_OCARINA]);
mOptions[RSK_SHUFFLE_OCARINA_BUTTONS] = Option::Bool("Shuffle Ocarina Buttons", "gRandomizeShuffleOcarinaButtons", mOptionDescriptions[RSK_SHUFFLE_OCARINA_BUTTONS]);
mOptions[RSK_SHUFFLE_WEIRD_EGG] = Option::Bool("Shuffle Weird Egg", "gRandomizeShuffleWeirdEgg", mOptionDescriptions[RSK_SHUFFLE_WEIRD_EGG]); mOptions[RSK_SHUFFLE_WEIRD_EGG] = Option::Bool("Shuffle Weird Egg", "gRandomizeShuffleWeirdEgg", mOptionDescriptions[RSK_SHUFFLE_WEIRD_EGG]);
mOptions[RSK_SHUFFLE_GERUDO_MEMBERSHIP_CARD] = Option::Bool("Shuffle Gerudo Membership Card", "gRandomizeShuffleGerudoToken", mOptionDescriptions[RSK_SHUFFLE_GERUDO_MEMBERSHIP_CARD]); mOptions[RSK_SHUFFLE_GERUDO_MEMBERSHIP_CARD] = Option::Bool("Shuffle Gerudo Membership Card", "gRandomizeShuffleGerudoToken", mOptionDescriptions[RSK_SHUFFLE_GERUDO_MEMBERSHIP_CARD]);
mOptions[RSK_SHUFFLE_MAGIC_BEANS] = Option::Bool("Shuffle Magic Beans", "gRandomizeShuffleBeans", mOptionDescriptions[RSK_SHUFFLE_MAGIC_BEANS]); mOptions[RSK_SHUFFLE_MAGIC_BEANS] = Option::Bool("Shuffle Magic Beans", "gRandomizeShuffleBeans", mOptionDescriptions[RSK_SHUFFLE_MAGIC_BEANS]);
@ -613,6 +614,7 @@ void Settings::CreateOptions() {
&mOptions[RSK_SHUFFLE_KOKIRI_SWORD], &mOptions[RSK_SHUFFLE_KOKIRI_SWORD],
&mOptions[RSK_SHUFFLE_MASTER_SWORD], &mOptions[RSK_SHUFFLE_MASTER_SWORD],
&mOptions[RSK_SHUFFLE_OCARINA], &mOptions[RSK_SHUFFLE_OCARINA],
&mOptions[RSK_SHUFFLE_OCARINA_BUTTONS],
&mOptions[RSK_SHUFFLE_WEIRD_EGG], &mOptions[RSK_SHUFFLE_WEIRD_EGG],
&mOptions[RSK_SHUFFLE_GERUDO_MEMBERSHIP_CARD] &mOptions[RSK_SHUFFLE_GERUDO_MEMBERSHIP_CARD]
}, false, WidgetContainerType::COLUMN); }, false, WidgetContainerType::COLUMN);
@ -813,6 +815,7 @@ void Settings::CreateOptions() {
&mOptions[RSK_SHUFFLE_COWS], &mOptions[RSK_SHUFFLE_COWS],
&mOptions[RSK_SHUFFLE_KOKIRI_SWORD], &mOptions[RSK_SHUFFLE_KOKIRI_SWORD],
&mOptions[RSK_SHUFFLE_OCARINA], &mOptions[RSK_SHUFFLE_OCARINA],
&mOptions[RSK_SHUFFLE_OCARINA_BUTTONS],
&mOptions[RSK_SHUFFLE_WEIRD_EGG], &mOptions[RSK_SHUFFLE_WEIRD_EGG],
&mOptions[RSK_SHUFFLE_GERUDO_MEMBERSHIP_CARD], &mOptions[RSK_SHUFFLE_GERUDO_MEMBERSHIP_CARD],
&mOptions[RSK_SHUFFLE_MAGIC_BEANS], &mOptions[RSK_SHUFFLE_MAGIC_BEANS],
@ -1018,6 +1021,7 @@ void Settings::CreateOptions() {
{ "Shuffle Settings:Shuffle Cows", RSK_SHUFFLE_COWS }, { "Shuffle Settings:Shuffle Cows", RSK_SHUFFLE_COWS },
{ "Shuffle Settings:Tokensanity", RSK_SHUFFLE_TOKENS }, { "Shuffle Settings:Tokensanity", RSK_SHUFFLE_TOKENS },
{ "Shuffle Settings:Shuffle Ocarinas", RSK_SHUFFLE_OCARINA }, { "Shuffle Settings:Shuffle Ocarinas", RSK_SHUFFLE_OCARINA },
{ "Shuffle Settings:Shuffle Ocarina Buttons", RSK_SHUFFLE_OCARINA_BUTTONS },
{ "Shuffle Settings:Shuffle Adult Trade", RSK_SHUFFLE_ADULT_TRADE }, { "Shuffle Settings:Shuffle Adult Trade", RSK_SHUFFLE_ADULT_TRADE },
{ "Shuffle Settings:Shuffle Magic Beans", RSK_SHUFFLE_MAGIC_BEANS }, { "Shuffle Settings:Shuffle Magic Beans", RSK_SHUFFLE_MAGIC_BEANS },
{ "Shuffle Settings:Shuffle Kokiri Sword", RSK_SHUFFLE_KOKIRI_SWORD }, { "Shuffle Settings:Shuffle Kokiri Sword", RSK_SHUFFLE_KOKIRI_SWORD },
@ -2106,6 +2110,7 @@ void Settings::ParseJson(nlohmann::json spoilerFileJson) {
case RSK_SHUFFLE_FROG_SONG_RUPEES: case RSK_SHUFFLE_FROG_SONG_RUPEES:
case RSK_SHUFFLE_100_GS_REWARD: case RSK_SHUFFLE_100_GS_REWARD:
case RSK_SHUFFLE_OCARINA: case RSK_SHUFFLE_OCARINA:
case RSK_SHUFFLE_OCARINA_BUTTONS:
case RSK_STARTING_DEKU_SHIELD: case RSK_STARTING_DEKU_SHIELD:
case RSK_STARTING_KOKIRI_SWORD: case RSK_STARTING_KOKIRI_SWORD:
case RSK_STARTING_ZELDAS_LULLABY: case RSK_STARTING_ZELDAS_LULLABY:

View File

@ -1626,23 +1626,23 @@ void func_800ED458(s32 arg0) {
} }
Audio_OcaUpdateBtnMap(customControls, dpad, rStick); Audio_OcaUpdateBtnMap(customControls, dpad, rStick);
if (D_8016BA18 & sOcarinaD4BtnMap) { if (D_8016BA18 & sOcarinaD4BtnMap && (!IS_RANDO || Flags_GetRandomizerInf(RAND_INF_HAS_OCARINA_A))) {
osSyncPrintf("Presss NA_KEY_D4 %08x\n", sOcarinaD4BtnMap); osSyncPrintf("Presss NA_KEY_D4 %08x\n", sOcarinaD4BtnMap);
sCurOcarinaBtnVal = 2; sCurOcarinaBtnVal = 2;
sCurOcarinaBtnIdx = 0; sCurOcarinaBtnIdx = 0;
} else if (D_8016BA18 & sOcarinaF4BtnMap) { } else if (D_8016BA18 & sOcarinaF4BtnMap && (!IS_RANDO || Flags_GetRandomizerInf(RAND_INF_HAS_OCARINA_C_DOWN))) {
osSyncPrintf("Presss NA_KEY_F4 %08x\n", sOcarinaF4BtnMap); osSyncPrintf("Presss NA_KEY_F4 %08x\n", sOcarinaF4BtnMap);
sCurOcarinaBtnVal = 5; sCurOcarinaBtnVal = 5;
sCurOcarinaBtnIdx = 1; sCurOcarinaBtnIdx = 1;
} else if (D_8016BA18 & sOcarinaA4BtnMap) { } else if (D_8016BA18 & sOcarinaA4BtnMap && (!IS_RANDO || Flags_GetRandomizerInf(RAND_INF_HAS_OCARINA_C_RIGHT))) {
osSyncPrintf("Presss NA_KEY_A4 %08x\n", sOcarinaA4BtnMap); osSyncPrintf("Presss NA_KEY_A4 %08x\n", sOcarinaA4BtnMap);
sCurOcarinaBtnVal = 9; sCurOcarinaBtnVal = 9;
sCurOcarinaBtnIdx = 2; sCurOcarinaBtnIdx = 2;
} else if (D_8016BA18 & sOcarinaB4BtnMap) { } else if (D_8016BA18 & sOcarinaB4BtnMap && (!IS_RANDO || Flags_GetRandomizerInf(RAND_INF_HAS_OCARINA_C_LEFT))) {
osSyncPrintf("Presss NA_KEY_B4 %08x\n", sOcarinaA4BtnMap); osSyncPrintf("Presss NA_KEY_B4 %08x\n", sOcarinaA4BtnMap);
sCurOcarinaBtnVal = 0xB; sCurOcarinaBtnVal = 0xB;
sCurOcarinaBtnIdx = 3; sCurOcarinaBtnIdx = 3;
} else if (D_8016BA18 & sOcarinaD5BtnMap) { } else if (D_8016BA18 & sOcarinaD5BtnMap && (!IS_RANDO || Flags_GetRandomizerInf(RAND_INF_HAS_OCARINA_C_UP))) {
osSyncPrintf("Presss NA_KEY_D5 %08x\n", sOcarinaD5BtnMap); osSyncPrintf("Presss NA_KEY_D5 %08x\n", sOcarinaD5BtnMap);
sCurOcarinaBtnVal = 0xE; sCurOcarinaBtnVal = 0xE;
sCurOcarinaBtnIdx = 4; sCurOcarinaBtnIdx = 4;

View File

@ -2664,6 +2664,13 @@ u16 Randomizer_Item_Give(PlayState* play, GetItemEntry giEntry) {
return Return_Item_Entry(giEntry, RG_NONE); return Return_Item_Entry(giEntry, RG_NONE);
} }
if (item >= RG_OCARINA_A_BUTTON && item <= RG_OCARINA_C_RIGHT_BUTTON) {
u8 index = item - RG_OCARINA_A_BUTTON;
Flags_SetRandomizerInf(RAND_INF_HAS_OCARINA_A + index);
return Return_Item_Entry(giEntry, RG_NONE);
}
temp = gSaveContext.inventory.items[slot]; temp = gSaveContext.inventory.items[slot];
osSyncPrintf("Item_Register(%d)=%d %d\n", slot, item, temp); osSyncPrintf("Item_Register(%d)=%d %d\n", slot, item, temp);
INV_CONTENT(item) = item; INV_CONTENT(item) = item;

View File

@ -117,7 +117,16 @@ void func_80A90264(EnKakasi2* this, PlayState* play) {
this->unk_194++; this->unk_194++;
bool skipScarecrow = play->msgCtx.msgMode == MSGMODE_OCARINA_PLAYING && int ocarinaButtonCount = 0;
for (int i = RAND_INF_HAS_OCARINA_A; i <= RAND_INF_HAS_OCARINA_C_DOWN; i++) {
if (Flags_GetRandomizerInf(i)) {
ocarinaButtonCount++;
}
}
bool hasTwoOcarinaButtons = !IS_RANDO || ocarinaButtonCount >= 2;
bool skipScarecrow = hasTwoOcarinaButtons && play->msgCtx.msgMode == MSGMODE_OCARINA_PLAYING &&
((CVarGetInteger("gSkipScarecrow", 0) && gSaveContext.scarecrowSpawnSongSet) || ((CVarGetInteger("gSkipScarecrow", 0) && gSaveContext.scarecrowSpawnSongSet) ||
(IS_RANDO && Randomizer_GetSettingValue(RSK_SKIP_SCARECROWS_SONG))); (IS_RANDO && Randomizer_GetSettingValue(RSK_SKIP_SCARECROWS_SONG)));

View File

@ -12,6 +12,9 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
} else if (CVarGetInteger("gCosmetics.DefaultColorScheme", COLORSCHEME_N64) == COLORSCHEME_GAMECUBE) { } else if (CVarGetInteger("gCosmetics.DefaultColorScheme", COLORSCHEME_N64) == COLORSCHEME_GAMECUBE) {
aButtonColor = (Color_RGB8){ 80, 255, 150 }; aButtonColor = (Color_RGB8){ 80, 255, 150 };
} }
if (IS_RANDO && !Flags_GetRandomizerInf(RAND_INF_HAS_OCARINA_A)) {
aButtonColor = (Color_RGB8){ 191, 191, 191 };
}
Color_RGB8 cButtonsColor = {255, 255, 50}; Color_RGB8 cButtonsColor = {255, 255, 50};
if (CVarGetInteger("gCosmetics.Hud_CButtons.Changed", 0)) { if (CVarGetInteger("gCosmetics.Hud_CButtons.Changed", 0)) {
@ -21,18 +24,33 @@ void KaleidoScope_DrawQuestStatus(PlayState* play, GraphicsContext* gfxCtx) {
if (CVarGetInteger("gCosmetics.Hud_CUpButton.Changed", 0)) { if (CVarGetInteger("gCosmetics.Hud_CUpButton.Changed", 0)) {
cUpButtonColor = CVarGetColor24("gCosmetics.Hud_CUpButton.Value", cUpButtonColor); cUpButtonColor = CVarGetColor24("gCosmetics.Hud_CUpButton.Value", cUpButtonColor);
} }
if (IS_RANDO && !Flags_GetRandomizerInf(RAND_INF_HAS_OCARINA_C_UP)) {
cUpButtonColor = (Color_RGB8){ 191, 191, 191 };
}
Color_RGB8 cDownButtonColor = cButtonsColor; Color_RGB8 cDownButtonColor = cButtonsColor;
if (CVarGetInteger("gCosmetics.Hud_CDownButton.Changed", 0)) { if (CVarGetInteger("gCosmetics.Hud_CDownButton.Changed", 0)) {
cDownButtonColor = CVarGetColor24("gCosmetics.Hud_CDownButton.Value", cDownButtonColor); cDownButtonColor = CVarGetColor24("gCosmetics.Hud_CDownButton.Value", cDownButtonColor);
} }
if (IS_RANDO && !Flags_GetRandomizerInf(RAND_INF_HAS_OCARINA_C_DOWN)) {
cDownButtonColor = (Color_RGB8){ 191, 191, 191 };
}
Color_RGB8 cLeftButtonColor = cButtonsColor; Color_RGB8 cLeftButtonColor = cButtonsColor;
if (CVarGetInteger("gCosmetics.Hud_CLeftButton.Changed", 0)) { if (CVarGetInteger("gCosmetics.Hud_CLeftButton.Changed", 0)) {
cLeftButtonColor = CVarGetColor24("gCosmetics.Hud_CLeftButton.Value", cLeftButtonColor); cLeftButtonColor = CVarGetColor24("gCosmetics.Hud_CLeftButton.Value", cLeftButtonColor);
} }
if (IS_RANDO && !Flags_GetRandomizerInf(RAND_INF_HAS_OCARINA_C_LEFT)) {
cLeftButtonColor = (Color_RGB8){ 191, 191, 191 };
}
Color_RGB8 cRightButtonColor = cButtonsColor; Color_RGB8 cRightButtonColor = cButtonsColor;
if (CVarGetInteger("gCosmetics.Hud_CRightButton.Changed", 0)) { if (CVarGetInteger("gCosmetics.Hud_CRightButton.Changed", 0)) {
cRightButtonColor = CVarGetColor24("gCosmetics.Hud_CRightButton.Value", cRightButtonColor); cRightButtonColor = CVarGetColor24("gCosmetics.Hud_CRightButton.Value", cRightButtonColor);
} }
if (IS_RANDO && !Flags_GetRandomizerInf(RAND_INF_HAS_OCARINA_C_RIGHT)) {
cRightButtonColor = (Color_RGB8){ 191, 191, 191 };
}
static s16 D_8082A070[][4] = { static s16 D_8082A070[][4] = {
{ 255, 0, 0, 255 }, { 255, 0, 0, 255 },