mirror of
https://github.com/HarbourMasters/Shipwright.git
synced 2024-12-23 16:48:52 -05:00
Merge pull request #3300 from stratomaster64/soulcalibur
Rando: Boss Soul Shuffle
This commit is contained in:
commit
21caecab84
2
.gitmodules
vendored
2
.gitmodules
vendored
@ -6,4 +6,4 @@
|
|||||||
url = https://github.com/harbourmasters/ZAPDTR
|
url = https://github.com/harbourmasters/ZAPDTR
|
||||||
[submodule "OTRExporter"]
|
[submodule "OTRExporter"]
|
||||||
path = OTRExporter
|
path = OTRExporter
|
||||||
url = https://github.com/harbourmasters/OTRExporter
|
url = https://github.com/harbourmasters/OTRExporter/
|
||||||
|
@ -0,0 +1,19 @@
|
|||||||
|
<DisplayList Version="0">
|
||||||
|
<CallDisplayList Path="objects/object_boss_soul/mat_gGIBossSoulSkullDL_skull_surface"/>
|
||||||
|
<CallDisplayList Path="objects/object_boss_soul/gGIBossSoulSkullDL_tri_0"/>
|
||||||
|
<CallDisplayList Path="objects/object_boss_soul/mat_gGIBossSoulSkullDL_skull_black"/>
|
||||||
|
<CallDisplayList Path="objects/object_boss_soul/gGIBossSoulSkullDL_tri_1"/>
|
||||||
|
<CallDisplayList Path="objects/object_boss_soul/mat_gGIBossSoulSkullDL_skull_eyes"/>
|
||||||
|
<CallDisplayList Path="objects/object_boss_soul/gGIBossSoulSkullDL_tri_2"/>
|
||||||
|
<CallDisplayList Path="objects/object_boss_soul/mat_gGIBossSoulSkullDL_skull_horns"/>
|
||||||
|
<CallDisplayList Path="objects/object_boss_soul/gGIBossSoulSkullDL_tri_3"/>
|
||||||
|
<CallDisplayList Path="objects/object_boss_soul/mat_gGIBossSoulSkullDL_Gem_eyes"/>
|
||||||
|
<CallDisplayList Path="objects/object_boss_soul/gGIBossSoulSkullDL_tri_4"/>
|
||||||
|
<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>
|
||||||
|
|
@ -0,0 +1,163 @@
|
|||||||
|
<DisplayList Version="0">
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_0" VertexBufferIndex="0" VertexOffset="0" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="0" V01="2" V02="3"/>
|
||||||
|
<Triangle1 V00="3" V01="2" V02="4"/>
|
||||||
|
<Triangle1 V00="2" V01="5" V02="4"/>
|
||||||
|
<Triangle1 V00="2" V01="6" V02="5"/>
|
||||||
|
<Triangle1 V00="7" V01="6" V02="2"/>
|
||||||
|
<Triangle1 V00="2" V01="8" V02="7"/>
|
||||||
|
<Triangle1 V00="2" V01="9" V02="8"/>
|
||||||
|
<Triangle1 V00="8" V01="9" V02="10"/>
|
||||||
|
<Triangle1 V00="8" V01="10" V02="11"/>
|
||||||
|
<Triangle1 V00="12" V01="11" V02="10"/>
|
||||||
|
<Triangle1 V00="10" V01="13" V02="12"/>
|
||||||
|
<Triangle1 V00="10" V01="14" V02="13"/>
|
||||||
|
<Triangle1 V00="12" V01="13" V02="15"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_0" VertexBufferIndex="0" VertexOffset="16" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="0" V01="3" V02="1"/>
|
||||||
|
<Triangle1 V00="4" V01="2" V02="1"/>
|
||||||
|
<Triangle1 V00="2" V01="4" V02="5"/>
|
||||||
|
<Triangle1 V00="6" V01="5" V02="4"/>
|
||||||
|
<Triangle1 V00="4" V01="7" V02="6"/>
|
||||||
|
<Triangle1 V00="4" V01="8" V02="7"/>
|
||||||
|
<Triangle1 V00="1" V01="8" V02="4"/>
|
||||||
|
<Triangle1 V00="1" V01="9" V02="8"/>
|
||||||
|
<Triangle1 V00="9" V01="10" V02="8"/>
|
||||||
|
<Triangle1 V00="7" V01="8" V02="10"/>
|
||||||
|
<Triangle1 V00="7" V01="10" V02="11"/>
|
||||||
|
<Triangle1 V00="11" V01="10" V02="12"/>
|
||||||
|
<Triangle1 V00="11" V01="12" V02="13"/>
|
||||||
|
<Triangle1 V00="13" V01="12" V02="14"/>
|
||||||
|
<Triangle1 V00="15" V01="14" V02="12"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_0" VertexBufferIndex="0" VertexOffset="32" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="2" V01="3" V02="0"/>
|
||||||
|
<Triangle1 V00="4" V01="3" V02="2"/>
|
||||||
|
<Triangle1 V00="4" V01="5" V02="3"/>
|
||||||
|
<Triangle1 V00="4" V01="6" V02="5"/>
|
||||||
|
<Triangle1 V00="4" V01="7" V02="6"/>
|
||||||
|
<Triangle1 V00="6" V01="7" V02="8"/>
|
||||||
|
<Triangle1 V00="6" V01="8" V02="9"/>
|
||||||
|
<Triangle1 V00="10" V01="9" V02="8"/>
|
||||||
|
<Triangle1 V00="10" V01="8" V02="11"/>
|
||||||
|
<Triangle1 V00="8" V01="12" V02="11"/>
|
||||||
|
<Triangle1 V00="13" V01="12" V02="8"/>
|
||||||
|
<Triangle1 V00="14" V01="13" V02="8"/>
|
||||||
|
<Triangle1 V00="14" V01="8" V02="15"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_0" VertexBufferIndex="0" VertexOffset="48" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="3" V01="0" V02="2"/>
|
||||||
|
<Triangle1 V00="2" V01="4" V02="3"/>
|
||||||
|
<Triangle1 V00="2" V01="5" V02="4"/>
|
||||||
|
<Triangle1 V00="2" V01="6" V02="5"/>
|
||||||
|
<Triangle1 V00="6" V01="7" V02="5"/>
|
||||||
|
<Triangle1 V00="7" V01="6" V02="8"/>
|
||||||
|
<Triangle1 V00="7" V01="8" V02="9"/>
|
||||||
|
<Triangle1 V00="5" V01="7" V02="10"/>
|
||||||
|
<Triangle1 V00="5" V01="10" V02="11"/>
|
||||||
|
<Triangle1 V00="11" V01="12" V02="5"/>
|
||||||
|
<Triangle1 V00="13" V01="12" V02="11"/>
|
||||||
|
<Triangle1 V00="13" V01="11" V02="14"/>
|
||||||
|
<Triangle1 V00="15" V01="13" V02="14"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_0" VertexBufferIndex="0" VertexOffset="64" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="2" V01="3" V02="0"/>
|
||||||
|
<Triangle1 V00="4" V01="0" V02="3"/>
|
||||||
|
<Triangle1 V00="0" V01="4" V02="5"/>
|
||||||
|
<Triangle1 V00="4" V01="6" V02="5"/>
|
||||||
|
<Triangle1 V00="6" V01="4" V02="7"/>
|
||||||
|
<Triangle1 V00="4" V01="8" V02="7"/>
|
||||||
|
<Triangle1 V00="4" V01="9" V02="8"/>
|
||||||
|
<Triangle1 V00="10" V01="9" V02="4"/>
|
||||||
|
<Triangle1 V00="4" V01="11" V02="10"/>
|
||||||
|
<Triangle1 V00="11" V01="12" V02="10"/>
|
||||||
|
<Triangle1 V00="11" V01="13" V02="12"/>
|
||||||
|
<Triangle1 V00="12" V01="13" V02="14"/>
|
||||||
|
<Triangle1 V00="12" V01="14" V02="15"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_0" VertexBufferIndex="0" VertexOffset="80" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="0" V01="2" V02="3"/>
|
||||||
|
<Triangle1 V00="4" V01="0" V02="3"/>
|
||||||
|
<Triangle1 V00="4" V01="3" V02="5"/>
|
||||||
|
<Triangle1 V00="6" V01="5" V02="3"/>
|
||||||
|
<Triangle1 V00="6" V01="3" V02="7"/>
|
||||||
|
<Triangle1 V00="6" V01="7" V02="8"/>
|
||||||
|
<Triangle1 V00="6" V01="8" V02="9"/>
|
||||||
|
<Triangle1 V00="9" V01="10" V02="6"/>
|
||||||
|
<Triangle1 V00="9" V01="11" V02="10"/>
|
||||||
|
<Triangle1 V00="11" V01="12" V02="10"/>
|
||||||
|
<Triangle1 V00="12" V01="11" V02="13"/>
|
||||||
|
<Triangle1 V00="14" V01="12" V02="13"/>
|
||||||
|
<Triangle1 V00="14" V01="15" V02="12"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_0" VertexBufferIndex="0" VertexOffset="96" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="0" V01="2" V02="3"/>
|
||||||
|
<Triangle1 V00="0" V01="3" V02="4"/>
|
||||||
|
<Triangle1 V00="0" V01="4" V02="5"/>
|
||||||
|
<Triangle1 V00="4" V01="6" V02="5"/>
|
||||||
|
<Triangle1 V00="6" V01="7" V02="5"/>
|
||||||
|
<Triangle1 V00="7" V01="8" V02="5"/>
|
||||||
|
<Triangle1 V00="8" V01="7" V02="9"/>
|
||||||
|
<Triangle1 V00="8" V01="9" V02="10"/>
|
||||||
|
<Triangle1 V00="11" V01="5" V02="8"/>
|
||||||
|
<Triangle1 V00="12" V01="5" V02="11"/>
|
||||||
|
<Triangle1 V00="13" V01="12" V02="11"/>
|
||||||
|
<Triangle1 V00="13" V01="11" V02="14"/>
|
||||||
|
<Triangle1 V00="15" V01="14" V02="11"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_0" VertexBufferIndex="0" VertexOffset="112" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="1" V01="3" V02="2"/>
|
||||||
|
<Triangle1 V00="0" V01="4" V02="5"/>
|
||||||
|
<Triangle1 V00="0" V01="6" V02="4"/>
|
||||||
|
<Triangle1 V00="4" V01="7" V02="5"/>
|
||||||
|
<Triangle1 V00="4" V01="8" V02="7"/>
|
||||||
|
<Triangle1 V00="9" V01="7" V02="8"/>
|
||||||
|
<Triangle1 V00="8" V01="10" V02="9"/>
|
||||||
|
<Triangle1 V00="8" V01="11" V02="10"/>
|
||||||
|
<Triangle1 V00="11" V01="12" V02="10"/>
|
||||||
|
<Triangle1 V00="11" V01="13" V02="12"/>
|
||||||
|
<Triangle1 V00="14" V01="12" V02="13"/>
|
||||||
|
<Triangle1 V00="14" V01="15" V02="12"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_0" VertexBufferIndex="0" VertexOffset="128" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="0" V01="2" V02="3"/>
|
||||||
|
<Triangle1 V00="3" V01="4" V02="0"/>
|
||||||
|
<Triangle1 V00="0" V01="5" V02="1"/>
|
||||||
|
<Triangle1 V00="0" V01="6" V02="5"/>
|
||||||
|
<Triangle1 V00="6" V01="7" V02="5"/>
|
||||||
|
<Triangle1 V00="6" V01="8" V02="7"/>
|
||||||
|
<Triangle1 V00="5" V01="7" V02="9"/>
|
||||||
|
<Triangle1 V00="10" V01="9" V02="7"/>
|
||||||
|
<Triangle1 V00="11" V01="10" V02="7"/>
|
||||||
|
<Triangle1 V00="12" V01="9" V02="10"/>
|
||||||
|
<Triangle1 V00="13" V01="9" V02="12"/>
|
||||||
|
<Triangle1 V00="14" V01="13" V02="12"/>
|
||||||
|
<Triangle1 V00="14" V01="12" V02="15"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_0" VertexBufferIndex="0" VertexOffset="144" Count="14"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="3" V01="0" V02="2"/>
|
||||||
|
<Triangle1 V00="3" V01="2" V02="4"/>
|
||||||
|
<Triangle1 V00="2" V01="5" V02="4"/>
|
||||||
|
<Triangle1 V00="6" V01="0" V02="3"/>
|
||||||
|
<Triangle1 V00="7" V01="0" V02="6"/>
|
||||||
|
<Triangle1 V00="8" V01="7" V02="6"/>
|
||||||
|
<Triangle1 V00="8" V01="6" V02="9"/>
|
||||||
|
<Triangle1 V00="7" V01="1" V02="0"/>
|
||||||
|
<Triangle1 V00="10" V01="11" V02="12"/>
|
||||||
|
<Triangle1 V00="10" V01="12" V02="13"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_0" VertexBufferIndex="0" VertexOffset="158" Count="13"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="0" V01="3" V02="1"/>
|
||||||
|
<Triangle1 V00="4" V01="5" V02="6"/>
|
||||||
|
<Triangle1 V00="4" V01="7" V02="5"/>
|
||||||
|
<Triangle1 V00="7" V01="8" V02="5"/>
|
||||||
|
<Triangle1 V00="7" V01="9" V02="8"/>
|
||||||
|
<Triangle1 V00="10" V01="8" V02="9"/>
|
||||||
|
<Triangle1 V00="10" V01="11" V02="8"/>
|
||||||
|
<Triangle1 V00="11" V01="12" V02="8"/>
|
||||||
|
<Triangle1 V00="5" V01="8" V02="12"/>
|
||||||
|
<EndDisplayList/>
|
||||||
|
</DisplayList>
|
||||||
|
|
@ -0,0 +1,26 @@
|
|||||||
|
<DisplayList Version="0">
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_1" VertexBufferIndex="0" VertexOffset="0" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="0" V01="2" V02="3"/>
|
||||||
|
<Triangle1 V00="2" V01="4" V02="3"/>
|
||||||
|
<Triangle1 V00="3" V01="5" V02="0"/>
|
||||||
|
<Triangle1 V00="3" V01="6" V02="5"/>
|
||||||
|
<Triangle1 V00="5" V01="7" V02="0"/>
|
||||||
|
<Triangle1 V00="8" V01="9" V02="10"/>
|
||||||
|
<Triangle1 V00="8" V01="10" V02="11"/>
|
||||||
|
<Triangle1 V00="10" V01="12" V02="11"/>
|
||||||
|
<Triangle1 V00="11" V01="13" V02="8"/>
|
||||||
|
<Triangle1 V00="11" V01="14" V02="13"/>
|
||||||
|
<Triangle1 V00="13" V01="15" V02="8"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_1" VertexBufferIndex="0" VertexOffset="16" Count="8"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="3" V01="2" V02="1"/>
|
||||||
|
<Triangle1 V00="3" V01="4" V02="2"/>
|
||||||
|
<Triangle1 V00="5" V01="4" V02="3"/>
|
||||||
|
<Triangle1 V00="5" V01="6" V02="4"/>
|
||||||
|
<Triangle1 V00="5" V01="7" V02="6"/>
|
||||||
|
<Triangle1 V00="5" V01="0" V02="7"/>
|
||||||
|
<Triangle1 V00="0" V01="2" V02="7"/>
|
||||||
|
<EndDisplayList/>
|
||||||
|
</DisplayList>
|
||||||
|
|
@ -0,0 +1,7 @@
|
|||||||
|
<DisplayList Version="0">
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_2" VertexBufferIndex="0" VertexOffset="0" Count="4"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="3" V01="2" V02="1"/>
|
||||||
|
<EndDisplayList/>
|
||||||
|
</DisplayList>
|
||||||
|
|
@ -0,0 +1,48 @@
|
|||||||
|
<DisplayList Version="0">
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_3" VertexBufferIndex="0" VertexOffset="0" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="0" V01="2" V02="3"/>
|
||||||
|
<Triangle1 V00="3" V01="2" V02="4"/>
|
||||||
|
<Triangle1 V00="3" V01="4" V02="5"/>
|
||||||
|
<Triangle1 V00="5" V01="4" V02="6"/>
|
||||||
|
<Triangle1 V00="7" V01="8" V02="9"/>
|
||||||
|
<Triangle1 V00="7" V01="9" V02="10"/>
|
||||||
|
<Triangle1 V00="10" V01="9" V02="11"/>
|
||||||
|
<Triangle1 V00="10" V01="11" V02="12"/>
|
||||||
|
<Triangle1 V00="12" V01="11" V02="13"/>
|
||||||
|
<Triangle1 V00="14" V01="10" V02="12"/>
|
||||||
|
<Triangle1 V00="15" V01="10" V02="14"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_3" VertexBufferIndex="0" VertexOffset="16" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="0" V01="2" V02="3"/>
|
||||||
|
<Triangle1 V00="3" V01="2" V02="4"/>
|
||||||
|
<Triangle1 V00="2" V01="5" V02="4"/>
|
||||||
|
<Triangle1 V00="4" V01="5" V02="6"/>
|
||||||
|
<Triangle1 V00="3" V01="4" V02="7"/>
|
||||||
|
<Triangle1 V00="7" V01="4" V02="8"/>
|
||||||
|
<Triangle1 V00="1" V01="9" V02="10"/>
|
||||||
|
<Triangle1 V00="11" V01="12" V02="13"/>
|
||||||
|
<Triangle1 V00="11" V01="14" V02="12"/>
|
||||||
|
<Triangle1 V00="14" V01="15" V02="12"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_3" VertexBufferIndex="0" VertexOffset="32" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="1" V01="3" V02="2"/>
|
||||||
|
<Triangle1 V00="4" V01="5" V02="6"/>
|
||||||
|
<Triangle1 V00="4" V01="7" V02="5"/>
|
||||||
|
<Triangle1 V00="8" V01="7" V02="4"/>
|
||||||
|
<Triangle1 V00="8" V01="9" V02="7"/>
|
||||||
|
<Triangle1 V00="10" V01="9" V02="8"/>
|
||||||
|
<Triangle1 V00="10" V01="11" V02="9"/>
|
||||||
|
<Triangle1 V00="11" V01="12" V02="9"/>
|
||||||
|
<Triangle1 V00="11" V01="13" V02="12"/>
|
||||||
|
<Triangle1 V00="13" V01="14" V02="12"/>
|
||||||
|
<Triangle1 V00="9" V01="12" V02="15"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_3" VertexBufferIndex="0" VertexOffset="48" Count="8"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="3" V01="2" V02="4"/>
|
||||||
|
<Triangle1 V00="4" V01="2" V02="5"/>
|
||||||
|
<Triangle1 V00="2" V01="6" V02="5"/>
|
||||||
|
<Triangle1 V00="4" V01="5" V02="7"/>
|
||||||
|
<EndDisplayList/>
|
||||||
|
</DisplayList>
|
||||||
|
|
@ -0,0 +1,245 @@
|
|||||||
|
<DisplayList Version="0">
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_4" VertexBufferIndex="0" VertexOffset="0" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="0" V01="3" V02="1"/>
|
||||||
|
<Triangle1 V00="4" V01="3" V02="0"/>
|
||||||
|
<Triangle1 V00="5" V01="4" V02="0"/>
|
||||||
|
<Triangle1 V00="0" V01="6" V02="5"/>
|
||||||
|
<Triangle1 V00="6" V01="7" V02="5"/>
|
||||||
|
<Triangle1 V00="6" V01="8" V02="7"/>
|
||||||
|
<Triangle1 V00="6" V01="9" V02="8"/>
|
||||||
|
<Triangle1 V00="8" V01="9" V02="10"/>
|
||||||
|
<Triangle1 V00="11" V01="10" V02="9"/>
|
||||||
|
<Triangle1 V00="2" V01="11" V02="9"/>
|
||||||
|
<Triangle1 V00="2" V01="12" V02="11"/>
|
||||||
|
<Triangle1 V00="12" V01="2" V02="13"/>
|
||||||
|
<Triangle1 V00="12" V01="13" V02="14"/>
|
||||||
|
<Triangle1 V00="15" V01="14" V02="13"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_4" VertexBufferIndex="0" VertexOffset="16" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="2" V01="3" V02="0"/>
|
||||||
|
<Triangle1 V00="3" V01="4" V02="0"/>
|
||||||
|
<Triangle1 V00="4" V01="3" V02="5"/>
|
||||||
|
<Triangle1 V00="5" V01="3" V02="6"/>
|
||||||
|
<Triangle1 V00="3" V01="7" V02="6"/>
|
||||||
|
<Triangle1 V00="3" V01="8" V02="7"/>
|
||||||
|
<Triangle1 V00="7" V01="8" V02="9"/>
|
||||||
|
<Triangle1 V00="10" V01="9" V02="8"/>
|
||||||
|
<Triangle1 V00="10" V01="11" V02="9"/>
|
||||||
|
<Triangle1 V00="12" V01="11" V02="10"/>
|
||||||
|
<Triangle1 V00="12" V01="13" V02="11"/>
|
||||||
|
<Triangle1 V00="12" V01="14" V02="13"/>
|
||||||
|
<Triangle1 V00="15" V01="14" V02="12"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_4" VertexBufferIndex="0" VertexOffset="32" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="3" V01="1" V02="0"/>
|
||||||
|
<Triangle1 V00="3" V01="0" V02="4"/>
|
||||||
|
<Triangle1 V00="5" V01="3" V02="4"/>
|
||||||
|
<Triangle1 V00="5" V01="6" V02="3"/>
|
||||||
|
<Triangle1 V00="5" V01="7" V02="6"/>
|
||||||
|
<Triangle1 V00="7" V01="8" V02="6"/>
|
||||||
|
<Triangle1 V00="7" V01="9" V02="8"/>
|
||||||
|
<Triangle1 V00="10" V01="9" V02="7"/>
|
||||||
|
<Triangle1 V00="11" V01="10" V02="7"/>
|
||||||
|
<Triangle1 V00="11" V01="12" V02="10"/>
|
||||||
|
<Triangle1 V00="11" V01="13" V02="12"/>
|
||||||
|
<Triangle1 V00="14" V01="12" V02="13"/>
|
||||||
|
<Triangle1 V00="14" V01="15" V02="12"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_4" VertexBufferIndex="0" VertexOffset="48" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="0" V01="3" V02="1"/>
|
||||||
|
<Triangle1 V00="0" V01="4" V02="3"/>
|
||||||
|
<Triangle1 V00="5" V01="4" V02="0"/>
|
||||||
|
<Triangle1 V00="6" V01="5" V02="0"/>
|
||||||
|
<Triangle1 V00="7" V01="5" V02="6"/>
|
||||||
|
<Triangle1 V00="7" V01="6" V02="8"/>
|
||||||
|
<Triangle1 V00="9" V01="7" V02="8"/>
|
||||||
|
<Triangle1 V00="9" V01="10" V02="7"/>
|
||||||
|
<Triangle1 V00="9" V01="11" V02="10"/>
|
||||||
|
<Triangle1 V00="9" V01="12" V02="11"/>
|
||||||
|
<Triangle1 V00="13" V01="11" V02="12"/>
|
||||||
|
<Triangle1 V00="13" V01="14" V02="11"/>
|
||||||
|
<Triangle1 V00="13" V01="15" V02="14"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_4" VertexBufferIndex="0" VertexOffset="64" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="3" V01="0" V02="2"/>
|
||||||
|
<Triangle1 V00="3" V01="2" V02="4"/>
|
||||||
|
<Triangle1 V00="0" V01="5" V02="1"/>
|
||||||
|
<Triangle1 V00="1" V01="5" V02="6"/>
|
||||||
|
<Triangle1 V00="5" V01="7" V02="6"/>
|
||||||
|
<Triangle1 V00="5" V01="8" V02="7"/>
|
||||||
|
<Triangle1 V00="8" V01="9" V02="7"/>
|
||||||
|
<Triangle1 V00="8" V01="10" V02="9"/>
|
||||||
|
<Triangle1 V00="9" V01="10" V02="11"/>
|
||||||
|
<Triangle1 V00="9" V01="11" V02="12"/>
|
||||||
|
<Triangle1 V00="12" V01="11" V02="13"/>
|
||||||
|
<Triangle1 V00="12" V01="13" V02="14"/>
|
||||||
|
<Triangle1 V00="15" V01="14" V02="13"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_4" VertexBufferIndex="0" VertexOffset="80" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="0" V01="3" V02="4"/>
|
||||||
|
<Triangle1 V00="3" V01="5" V02="4"/>
|
||||||
|
<Triangle1 V00="3" V01="6" V02="5"/>
|
||||||
|
<Triangle1 V00="7" V01="4" V02="5"/>
|
||||||
|
<Triangle1 V00="7" V01="8" V02="4"/>
|
||||||
|
<Triangle1 V00="9" V01="8" V02="7"/>
|
||||||
|
<Triangle1 V00="10" V01="9" V02="7"/>
|
||||||
|
<Triangle1 V00="11" V01="10" V02="7"/>
|
||||||
|
<Triangle1 V00="11" V01="7" V02="5"/>
|
||||||
|
<Triangle1 V00="12" V01="10" V02="11"/>
|
||||||
|
<Triangle1 V00="12" V01="13" V02="10"/>
|
||||||
|
<Triangle1 V00="13" V01="14" V02="10"/>
|
||||||
|
<Triangle1 V00="13" V01="15" V02="14"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_4" VertexBufferIndex="0" VertexOffset="96" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="0" V01="2" V02="3"/>
|
||||||
|
<Triangle1 V00="3" V01="2" V02="4"/>
|
||||||
|
<Triangle1 V00="3" V01="4" V02="5"/>
|
||||||
|
<Triangle1 V00="6" V01="5" V02="4"/>
|
||||||
|
<Triangle1 V00="6" V01="4" V02="7"/>
|
||||||
|
<Triangle1 V00="6" V01="8" V02="5"/>
|
||||||
|
<Triangle1 V00="8" V01="9" V02="5"/>
|
||||||
|
<Triangle1 V00="8" V01="10" V02="9"/>
|
||||||
|
<Triangle1 V00="11" V01="9" V02="10"/>
|
||||||
|
<Triangle1 V00="11" V01="12" V02="9"/>
|
||||||
|
<Triangle1 V00="13" V01="12" V02="11"/>
|
||||||
|
<Triangle1 V00="12" V01="14" V02="9"/>
|
||||||
|
<Triangle1 V00="12" V01="15" V02="14"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_4" VertexBufferIndex="0" VertexOffset="112" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="0" V01="3" V02="1"/>
|
||||||
|
<Triangle1 V00="1" V01="3" V02="4"/>
|
||||||
|
<Triangle1 V00="1" V01="5" V02="2"/>
|
||||||
|
<Triangle1 V00="1" V01="6" V02="5"/>
|
||||||
|
<Triangle1 V00="7" V01="6" V02="1"/>
|
||||||
|
<Triangle1 V00="2" V01="5" V02="8"/>
|
||||||
|
<Triangle1 V00="2" V01="8" V02="9"/>
|
||||||
|
<Triangle1 V00="10" V01="11" V02="12"/>
|
||||||
|
<Triangle1 V00="10" V01="13" V02="11"/>
|
||||||
|
<Triangle1 V00="13" V01="14" V02="11"/>
|
||||||
|
<Triangle1 V00="13" V01="15" V02="14"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_4" VertexBufferIndex="0" VertexOffset="128" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="3" V01="4" V02="5"/>
|
||||||
|
<Triangle1 V00="3" V01="5" V02="6"/>
|
||||||
|
<Triangle1 V00="6" V01="5" V02="7"/>
|
||||||
|
<Triangle1 V00="8" V01="7" V02="5"/>
|
||||||
|
<Triangle1 V00="9" V01="8" V02="5"/>
|
||||||
|
<Triangle1 V00="9" V01="10" V02="8"/>
|
||||||
|
<Triangle1 V00="11" V01="10" V02="9"/>
|
||||||
|
<Triangle1 V00="12" V01="11" V02="9"/>
|
||||||
|
<Triangle1 V00="13" V01="12" V02="9"/>
|
||||||
|
<Triangle1 V00="14" V01="13" V02="9"/>
|
||||||
|
<Triangle1 V00="13" V01="14" V02="15"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_4" VertexBufferIndex="0" VertexOffset="144" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="3" V01="2" V02="1"/>
|
||||||
|
<Triangle1 V00="3" V01="1" V02="4"/>
|
||||||
|
<Triangle1 V00="4" V01="5" V02="3"/>
|
||||||
|
<Triangle1 V00="4" V01="6" V02="5"/>
|
||||||
|
<Triangle1 V00="5" V01="6" V02="7"/>
|
||||||
|
<Triangle1 V00="8" V01="7" V02="6"/>
|
||||||
|
<Triangle1 V00="9" V01="8" V02="6"/>
|
||||||
|
<Triangle1 V00="9" V01="10" V02="8"/>
|
||||||
|
<Triangle1 V00="11" V01="10" V02="9"/>
|
||||||
|
<Triangle1 V00="12" V01="11" V02="9"/>
|
||||||
|
<Triangle1 V00="11" V01="12" V02="13"/>
|
||||||
|
<Triangle1 V00="13" V01="12" V02="14"/>
|
||||||
|
<Triangle1 V00="13" V01="14" V02="15"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_4" VertexBufferIndex="0" VertexOffset="160" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="3" V01="2" V02="1"/>
|
||||||
|
<Triangle1 V00="3" V01="1" V02="4"/>
|
||||||
|
<Triangle1 V00="4" V01="1" V02="5"/>
|
||||||
|
<Triangle1 V00="6" V01="5" V02="1"/>
|
||||||
|
<Triangle1 V00="6" V01="7" V02="5"/>
|
||||||
|
<Triangle1 V00="6" V01="8" V02="7"/>
|
||||||
|
<Triangle1 V00="9" V01="7" V02="8"/>
|
||||||
|
<Triangle1 V00="9" V01="10" V02="7"/>
|
||||||
|
<Triangle1 V00="9" V01="11" V02="10"/>
|
||||||
|
<Triangle1 V00="9" V01="12" V02="11"/>
|
||||||
|
<Triangle1 V00="11" V01="12" V02="13"/>
|
||||||
|
<Triangle1 V00="11" V01="13" V02="14"/>
|
||||||
|
<Triangle1 V00="13" V01="15" V02="14"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_4" VertexBufferIndex="0" VertexOffset="176" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="1" V01="3" V02="2"/>
|
||||||
|
<Triangle1 V00="1" V01="4" V02="3"/>
|
||||||
|
<Triangle1 V00="1" V01="5" V02="4"/>
|
||||||
|
<Triangle1 V00="5" V01="6" V02="4"/>
|
||||||
|
<Triangle1 V00="5" V01="7" V02="6"/>
|
||||||
|
<Triangle1 V00="8" V01="6" V02="7"/>
|
||||||
|
<Triangle1 V00="8" V01="9" V02="6"/>
|
||||||
|
<Triangle1 V00="8" V01="10" V02="9"/>
|
||||||
|
<Triangle1 V00="9" V01="10" V02="11"/>
|
||||||
|
<Triangle1 V00="10" V01="12" V02="11"/>
|
||||||
|
<Triangle1 V00="10" V01="13" V02="12"/>
|
||||||
|
<Triangle1 V00="14" V01="13" V02="10"/>
|
||||||
|
<Triangle1 V00="14" V01="15" V02="13"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_4" VertexBufferIndex="0" VertexOffset="192" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="2" V01="1" V02="3"/>
|
||||||
|
<Triangle1 V00="2" V01="3" V02="4"/>
|
||||||
|
<Triangle1 V00="3" V01="5" V02="4"/>
|
||||||
|
<Triangle1 V00="4" V01="5" V02="6"/>
|
||||||
|
<Triangle1 V00="5" V01="7" V02="6"/>
|
||||||
|
<Triangle1 V00="5" V01="8" V02="7"/>
|
||||||
|
<Triangle1 V00="4" V01="6" V02="9"/>
|
||||||
|
<Triangle1 V00="4" V01="9" V02="10"/>
|
||||||
|
<Triangle1 V00="11" V01="10" V02="9"/>
|
||||||
|
<Triangle1 V00="11" V01="9" V02="12"/>
|
||||||
|
<Triangle1 V00="13" V01="11" V02="12"/>
|
||||||
|
<Triangle1 V00="13" V01="12" V02="14"/>
|
||||||
|
<Triangle1 V00="15" V01="13" V02="14"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_4" VertexBufferIndex="0" VertexOffset="208" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="3" V01="1" V02="0"/>
|
||||||
|
<Triangle1 V00="3" V01="4" V02="1"/>
|
||||||
|
<Triangle1 V00="5" V01="4" V02="3"/>
|
||||||
|
<Triangle1 V00="6" V01="5" V02="3"/>
|
||||||
|
<Triangle1 V00="5" V01="7" V02="4"/>
|
||||||
|
<Triangle1 V00="7" V01="8" V02="4"/>
|
||||||
|
<Triangle1 V00="7" V01="9" V02="8"/>
|
||||||
|
<Triangle1 V00="10" V01="8" V02="9"/>
|
||||||
|
<Triangle1 V00="10" V01="11" V02="8"/>
|
||||||
|
<Triangle1 V00="12" V01="11" V02="10"/>
|
||||||
|
<Triangle1 V00="12" V01="13" V02="11"/>
|
||||||
|
<Triangle1 V00="12" V01="14" V02="13"/>
|
||||||
|
<Triangle1 V00="15" V01="11" V02="13"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_4" VertexBufferIndex="0" VertexOffset="224" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="3" V01="0" V02="2"/>
|
||||||
|
<Triangle1 V00="3" V01="2" V02="4"/>
|
||||||
|
<Triangle1 V00="4" V01="2" V02="5"/>
|
||||||
|
<Triangle1 V00="2" V01="6" V02="5"/>
|
||||||
|
<Triangle1 V00="4" V01="5" V02="7"/>
|
||||||
|
<Triangle1 V00="8" V01="4" V02="7"/>
|
||||||
|
<Triangle1 V00="8" V01="9" V02="4"/>
|
||||||
|
<Triangle1 V00="10" V01="9" V02="8"/>
|
||||||
|
<Triangle1 V00="10" V01="11" V02="9"/>
|
||||||
|
<Triangle1 V00="12" V01="11" V02="10"/>
|
||||||
|
<Triangle1 V00="13" V01="12" V02="10"/>
|
||||||
|
<Triangle1 V00="13" V01="14" V02="12"/>
|
||||||
|
<Triangle1 V00="15" V01="14" V02="13"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_4" VertexBufferIndex="0" VertexOffset="240" Count="16"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="3" V01="4" V02="5"/>
|
||||||
|
<Triangle1 V00="3" V01="6" V02="4"/>
|
||||||
|
<Triangle1 V00="4" V01="6" V02="7"/>
|
||||||
|
<Triangle1 V00="8" V01="7" V02="6"/>
|
||||||
|
<Triangle1 V00="8" V01="6" V02="9"/>
|
||||||
|
<Triangle1 V00="10" V01="7" V02="8"/>
|
||||||
|
<Triangle1 V00="11" V01="12" V02="13"/>
|
||||||
|
<Triangle1 V00="14" V01="12" V02="11"/>
|
||||||
|
<Triangle1 V00="14" V01="11" V02="15"/>
|
||||||
|
<LoadVertices Path="objects/object_boss_soul/gGIBossSoulSkullDL_vtx_4" VertexBufferIndex="0" VertexOffset="256" Count="9"/>
|
||||||
|
<Triangle1 V00="0" V01="1" V02="2"/>
|
||||||
|
<Triangle1 V00="0" V01="2" V02="3"/>
|
||||||
|
<Triangle1 V00="2" V01="4" V02="3"/>
|
||||||
|
<Triangle1 V00="2" V01="5" V02="4"/>
|
||||||
|
<Triangle1 V00="6" V01="5" V02="2"/>
|
||||||
|
<Triangle1 V00="6" V01="2" V02="7"/>
|
||||||
|
<Triangle1 V00="5" V01="8" V02="4"/>
|
||||||
|
<EndDisplayList/>
|
||||||
|
</DisplayList>
|
||||||
|
|
@ -0,0 +1,173 @@
|
|||||||
|
<Vertex Version="0">
|
||||||
|
<Vtx X="18" Y="17" Z="0" S="147" T="-17" R="87" G="69" B="194" A="255"/>
|
||||||
|
<Vtx X="16" Y="14" Z="-8" S="239" T="-17" R="55" G="65" B="161" A="255"/>
|
||||||
|
<Vtx X="9" Y="17" Z="-8" S="239" T="-81" R="16" G="78" B="157" A="255"/>
|
||||||
|
<Vtx X="9" Y="22" Z="1" S="147" T="-81" R="12" G="111" B="196" A="255"/>
|
||||||
|
<Vtx X="0" Y="18" Z="-7" S="239" T="-145" R="249" G="91" B="167" A="255"/>
|
||||||
|
<Vtx X="0" Y="11" Z="-9" S="111" T="-145" R="246" G="32" B="133" A="255"/>
|
||||||
|
<Vtx X="4" Y="11" Z="-9" S="111" T="-113" R="1" G="23" B="131" A="255"/>
|
||||||
|
<Vtx X="9" Y="6" Z="-10" S="15" T="-17" R="9" G="11" B="130" A="255"/>
|
||||||
|
<Vtx X="18" Y="8" Z="-8" S="47" T="111" R="74" G="18" B="154" A="255"/>
|
||||||
|
<Vtx X="16" Y="14" Z="-8" S="111" T="111" R="55" G="65" B="161" A="255"/>
|
||||||
|
<Vtx X="18" Y="17" Z="0" S="111" T="19" R="87" G="69" B="194" A="255"/>
|
||||||
|
<Vtx X="22" Y="10" Z="0" S="47" T="19" R="122" G="20" B="225" A="255"/>
|
||||||
|
<Vtx X="22" Y="10" Z="7" S="47" T="-17" R="35" G="4" B="122" A="255"/>
|
||||||
|
<Vtx X="19" Y="17" Z="7" S="111" T="-17" R="41" G="18" B="119" A="255"/>
|
||||||
|
<Vtx X="19" Y="17" Z="6" S="111" T="-11" R="103" G="230" B="69" A="255"/>
|
||||||
|
<Vtx X="10" Y="22" Z="8" S="111" T="-81" R="18" G="37" B="120" A="255"/>
|
||||||
|
<Vtx X="19" Y="17" Z="7" S="111" T="-17" R="41" G="18" B="119" A="255"/>
|
||||||
|
<Vtx X="10" Y="22" Z="7" S="117" T="-81" R="210" G="73" B="94" A="255"/>
|
||||||
|
<Vtx X="10" Y="22" Z="8" S="111" T="-81" R="18" G="37" B="120" A="255"/>
|
||||||
|
<Vtx X="19" Y="17" Z="6" S="117" T="-17" R="103" G="230" B="69" A="255"/>
|
||||||
|
<Vtx X="1" Y="23" Z="9" S="111" T="-145" R="10" G="32" B="123" A="255"/>
|
||||||
|
<Vtx X="-7" Y="22" Z="9" S="111" T="-81" R="3" G="37" B="122" A="255"/>
|
||||||
|
<Vtx X="-7" Y="22" Z="8" S="117" T="-81" R="62" G="73" B="84" A="255"/>
|
||||||
|
<Vtx X="-8" Y="22" Z="3" S="147" T="-81" R="234" G="112" B="200" A="255"/>
|
||||||
|
<Vtx X="1" Y="23" Z="2" S="147" T="-145" R="253" G="121" B="217" A="255"/>
|
||||||
|
<Vtx X="9" Y="22" Z="1" S="147" T="-81" R="12" G="111" B="196" A="255"/>
|
||||||
|
<Vtx X="0" Y="18" Z="-7" S="239" T="-145" R="249" G="91" B="167" A="255"/>
|
||||||
|
<Vtx X="-9" Y="17" Z="-6" S="239" T="-81" R="222" G="78" B="161" A="255"/>
|
||||||
|
<Vtx X="0" Y="11" Z="-9" S="111" T="-145" R="246" G="32" B="133" A="255"/>
|
||||||
|
<Vtx X="-5" Y="11" Z="-8" S="111" T="-113" R="233" G="23" B="133" A="255"/>
|
||||||
|
<Vtx X="0" Y="3" Z="-10" S="-17" T="-145" R="245" G="0" B="129" A="255"/>
|
||||||
|
<Vtx X="4" Y="11" Z="-9" S="111" T="-113" R="1" G="23" B="131" A="255"/>
|
||||||
|
<Vtx X="0" Y="3" Z="-10" S="-17" T="-145" R="245" G="0" B="129" A="255"/>
|
||||||
|
<Vtx X="4" Y="11" Z="-9" S="111" T="-113" R="1" G="23" B="131" A="255"/>
|
||||||
|
<Vtx X="9" Y="6" Z="-10" S="15" T="-17" R="9" G="11" B="130" A="255"/>
|
||||||
|
<Vtx X="9" Y="2" Z="-10" S="-17" T="-17" R="13" G="249" B="130" A="255"/>
|
||||||
|
<Vtx X="18" Y="8" Z="-8" S="47" T="111" R="74" G="18" B="154" A="255"/>
|
||||||
|
<Vtx X="18" Y="0" Z="-8" S="-17" T="111" R="86" G="227" B="167" A="255"/>
|
||||||
|
<Vtx X="21" Y="0" Z="0" S="-17" T="19" R="118" G="218" B="229" A="255"/>
|
||||||
|
<Vtx X="22" Y="10" Z="0" S="47" T="19" R="122" G="20" B="225" A="255"/>
|
||||||
|
<Vtx X="22" Y="10" Z="7" S="47" T="-17" R="35" G="4" B="122" A="255"/>
|
||||||
|
<Vtx X="22" Y="0" Z="7" S="-17" T="-17" R="50" G="244" B="116" A="255"/>
|
||||||
|
<Vtx X="16" Y="-9" Z="7" S="-81" T="-17" R="48" G="250" B="118" A="255"/>
|
||||||
|
<Vtx X="12" Y="4" Z="8" S="-4" T="-71" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="13" Y="7" Z="7" S="23" T="-65" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="12" Y="11" Z="8" S="45" T="-73" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="8" Y="12" Z="8" S="49" T="-96" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="10" Y="22" Z="8" S="111" T="-81" R="18" G="37" B="120" A="255"/>
|
||||||
|
<Vtx X="5" Y="11" Z="8" S="35" T="-119" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="8" Y="12" Z="8" S="49" T="-96" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="10" Y="22" Z="8" S="111" T="-81" R="18" G="37" B="120" A="255"/>
|
||||||
|
<Vtx X="-2" Y="11" Z="9" S="35" T="-119" R="10" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-6" Y="12" Z="9" S="49" T="-96" R="10" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-19" Y="10" Z="10" S="47" T="-17" R="243" G="4" B="126" A="255"/>
|
||||||
|
<Vtx X="-7" Y="22" Z="9" S="111" T="-81" R="3" G="37" B="122" A="255"/>
|
||||||
|
<Vtx X="-16" Y="17" Z="10" S="111" T="-17" R="236" G="18" B="124" A="255"/>
|
||||||
|
<Vtx X="-7" Y="22" Z="8" S="117" T="-81" R="62" G="73" B="84" A="255"/>
|
||||||
|
<Vtx X="-16" Y="17" Z="9" S="117" T="-17" R="166" G="230" B="86" A="255"/>
|
||||||
|
<Vtx X="-16" Y="17" Z="9" S="111" T="-11" R="166" G="230" B="86" A="255"/>
|
||||||
|
<Vtx X="-17" Y="17" Z="3" S="111" T="19" R="159" G="69" B="210" A="255"/>
|
||||||
|
<Vtx X="-20" Y="10" Z="4" S="47" T="19" R="131" G="20" B="247" A="255"/>
|
||||||
|
<Vtx X="-18" Y="8" Z="-5" S="47" T="111" R="166" G="18" B="168" A="255"/>
|
||||||
|
<Vtx X="-16" Y="14" Z="-5" S="111" T="111" R="185" G="65" B="172" A="255"/>
|
||||||
|
<Vtx X="-9" Y="6" Z="-8" S="15" T="-17" R="225" G="11" B="133" A="255"/>
|
||||||
|
<Vtx X="-9" Y="6" Z="-8" S="15" T="-17" R="225" G="11" B="133" A="255"/>
|
||||||
|
<Vtx X="-16" Y="14" Z="-5" S="111" T="111" R="185" G="65" B="172" A="255"/>
|
||||||
|
<Vtx X="-9" Y="17" Z="-6" S="239" T="-81" R="222" G="78" B="161" A="255"/>
|
||||||
|
<Vtx X="-5" Y="11" Z="-8" S="111" T="-113" R="233" G="23" B="133" A="255"/>
|
||||||
|
<Vtx X="0" Y="3" Z="-10" S="-17" T="-145" R="245" G="0" B="129" A="255"/>
|
||||||
|
<Vtx X="-9" Y="2" Z="-8" S="-17" T="-17" R="222" G="249" B="134" A="255"/>
|
||||||
|
<Vtx X="-7" Y="-1" Z="-8" S="-49" T="-17" R="231" G="238" B="133" A="255"/>
|
||||||
|
<Vtx X="-5" Y="-1" Z="-8" S="-145" T="-113" R="225" G="236" B="134" A="255"/>
|
||||||
|
<Vtx X="0" Y="-8" Z="-9" S="-145" T="-145" R="245" G="237" B="131" A="255"/>
|
||||||
|
<Vtx X="4" Y="-1" Z="-9" S="-145" T="-113" R="9" G="236" B="131" A="255"/>
|
||||||
|
<Vtx X="7" Y="-1" Z="-9" S="-49" T="-17" R="3" G="238" B="130" A="255"/>
|
||||||
|
<Vtx X="9" Y="2" Z="-10" S="-17" T="-17" R="13" G="249" B="130" A="255"/>
|
||||||
|
<Vtx X="14" Y="-6" Z="-8" S="-81" T="111" R="92" G="232" B="171" A="255"/>
|
||||||
|
<Vtx X="18" Y="0" Z="-8" S="-17" T="111" R="86" G="227" B="167" A="255"/>
|
||||||
|
<Vtx X="21" Y="0" Z="0" S="-17" T="19" R="118" G="218" B="229" A="255"/>
|
||||||
|
<Vtx X="16" Y="-9" Z="1" S="-81" T="19" R="124" G="236" B="235" A="255"/>
|
||||||
|
<Vtx X="16" Y="-9" Z="1" S="-81" T="19" R="124" G="236" B="235" A="255"/>
|
||||||
|
<Vtx X="21" Y="0" Z="0" S="-17" T="19" R="118" G="218" B="229" A="255"/>
|
||||||
|
<Vtx X="22" Y="0" Z="7" S="-17" T="-17" R="50" G="244" B="116" A="255"/>
|
||||||
|
<Vtx X="16" Y="-9" Z="7" S="-81" T="-17" R="48" G="250" B="118" A="255"/>
|
||||||
|
<Vtx X="18" Y="-17" Z="0" S="-145" T="19" R="7" G="134" B="221" A="255"/>
|
||||||
|
<Vtx X="19" Y="-17" Z="7" S="-145" T="-17" R="12" G="242" B="126" A="255"/>
|
||||||
|
<Vtx X="10" Y="-9" Z="8" S="-145" T="-81" R="30" G="219" B="118" A="255"/>
|
||||||
|
<Vtx X="12" Y="4" Z="8" S="-4" T="-71" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="8" Y="2" Z="8" S="-21" T="-99" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="5" Y="4" Z="8" S="-8" T="-121" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="4" Y="-5" Z="8" S="-59" T="-133" R="8" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="4" Y="7" Z="8" S="13" T="-127" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="1" Y="2" Z="9" S="-26" T="-145" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="5" Y="11" Z="8" S="35" T="-119" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-2" Y="11" Z="9" S="35" T="-119" R="10" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-1" Y="7" Z="9" S="13" T="-127" R="10" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-2" Y="-5" Z="9" S="-59" T="-133" R="14" G="0" B="126" A="255"/>
|
||||||
|
<Vtx X="1" Y="2" Z="9" S="-26" T="-145" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-1" Y="7" Z="9" S="13" T="-127" R="10" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-2" Y="4" Z="9" S="-8" T="-121" R="10" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-6" Y="2" Z="9" S="-21" T="-99" R="10" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-19" Y="0" Z="10" S="-17" T="-17" R="227" G="244" B="123" A="255"/>
|
||||||
|
<Vtx X="-10" Y="4" Z="9" S="-4" T="-71" R="10" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-11" Y="7" Z="10" S="23" T="-65" R="10" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-19" Y="10" Z="10" S="47" T="-17" R="243" G="4" B="126" A="255"/>
|
||||||
|
<Vtx X="-9" Y="11" Z="9" S="45" T="-73" R="10" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-6" Y="12" Z="9" S="49" T="-96" R="10" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-19" Y="0" Z="4" S="-17" T="19" R="135" G="218" B="250" A="255"/>
|
||||||
|
<Vtx X="-14" Y="-9" Z="3" S="-81" T="19" R="131" G="236" B="0" A="255"/>
|
||||||
|
<Vtx X="-14" Y="-6" Z="-6" S="-81" T="111" R="151" G="232" B="189" A="255"/>
|
||||||
|
<Vtx X="-18" Y="0" Z="-5" S="-17" T="111" R="156" G="227" B="183" A="255"/>
|
||||||
|
<Vtx X="-18" Y="8" Z="-5" S="47" T="111" R="166" G="18" B="168" A="255"/>
|
||||||
|
<Vtx X="-18" Y="8" Z="-5" S="47" T="111" R="166" G="18" B="168" A="255"/>
|
||||||
|
<Vtx X="-19" Y="0" Z="4" S="-17" T="19" R="135" G="218" B="250" A="255"/>
|
||||||
|
<Vtx X="-20" Y="10" Z="4" S="47" T="19" R="131" G="20" B="247" A="255"/>
|
||||||
|
<Vtx X="-19" Y="10" Z="10" S="47" T="-17" R="243" G="4" B="126" A="255"/>
|
||||||
|
<Vtx X="-9" Y="2" Z="-8" S="-17" T="-17" R="222" G="249" B="134" A="255"/>
|
||||||
|
<Vtx X="-18" Y="0" Z="-5" S="-17" T="111" R="156" G="227" B="183" A="255"/>
|
||||||
|
<Vtx X="-9" Y="6" Z="-8" S="15" T="-17" R="225" G="11" B="133" A="255"/>
|
||||||
|
<Vtx X="-14" Y="-6" Z="-6" S="-81" T="111" R="151" G="232" B="189" A="255"/>
|
||||||
|
<Vtx X="-7" Y="-1" Z="-8" S="-49" T="-17" R="231" G="238" B="133" A="255"/>
|
||||||
|
<Vtx X="-16" Y="-13" Z="-5" S="-273" T="-17" R="241" G="173" B="161" A="255"/>
|
||||||
|
<Vtx X="-9" Y="-7" Z="-6" S="-273" T="-81" R="205" G="176" B="171" A="255"/>
|
||||||
|
<Vtx X="-5" Y="-1" Z="-8" S="-145" T="-113" R="225" G="236" B="134" A="255"/>
|
||||||
|
<Vtx X="0" Y="-20" Z="-7" S="-273" T="-145" R="248" G="179" B="155" A="255"/>
|
||||||
|
<Vtx X="0" Y="-8" Z="-9" S="-145" T="-145" R="245" G="237" B="131" A="255"/>
|
||||||
|
<Vtx X="4" Y="-1" Z="-9" S="-145" T="-113" R="9" G="236" B="131" A="255"/>
|
||||||
|
<Vtx X="9" Y="-7" Z="-8" S="-273" T="-81" R="35" G="176" B="164" A="255"/>
|
||||||
|
<Vtx X="16" Y="-13" Z="-8" S="-273" T="-17" R="255" G="173" B="160" A="255"/>
|
||||||
|
<Vtx X="9" Y="-7" Z="-8" S="-273" T="-81" R="35" G="176" B="164" A="255"/>
|
||||||
|
<Vtx X="4" Y="-1" Z="-9" S="-145" T="-113" R="9" G="236" B="131" A="255"/>
|
||||||
|
<Vtx X="7" Y="-1" Z="-9" S="-49" T="-17" R="3" G="238" B="130" A="255"/>
|
||||||
|
<Vtx X="14" Y="-6" Z="-8" S="-81" T="111" R="92" G="232" B="171" A="255"/>
|
||||||
|
<Vtx X="9" Y="-9" Z="1" S="-180" T="-81" R="53" G="144" B="226" A="255"/>
|
||||||
|
<Vtx X="18" Y="-17" Z="0" S="-180" T="-17" R="7" G="134" B="221" A="255"/>
|
||||||
|
<Vtx X="10" Y="-9" Z="8" S="-145" T="-81" R="30" G="219" B="118" A="255"/>
|
||||||
|
<Vtx X="19" Y="-17" Z="7" S="-145" T="-17" R="12" G="242" B="126" A="255"/>
|
||||||
|
<Vtx X="1" Y="-27" Z="9" S="-145" T="-145" R="11" G="237" B="125" A="255"/>
|
||||||
|
<Vtx X="1" Y="-4" Z="9" S="-59" T="-145" R="11" G="1" B="127" A="255"/>
|
||||||
|
<Vtx X="4" Y="-5" Z="8" S="-59" T="-133" R="8" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-7" Y="-9" Z="9" S="-145" T="-81" R="247" G="219" B="121" A="255"/>
|
||||||
|
<Vtx X="-8" Y="-9" Z="3" S="-180" T="-81" R="199" G="144" B="235" A="255"/>
|
||||||
|
<Vtx X="-17" Y="-17" Z="3" S="-180" T="-17" R="243" G="134" B="223" A="255"/>
|
||||||
|
<Vtx X="-16" Y="-17" Z="10" S="-145" T="-17" R="9" G="242" B="126" A="255"/>
|
||||||
|
<Vtx X="-14" Y="-9" Z="10" S="-81" T="-17" R="229" G="250" B="124" A="255"/>
|
||||||
|
<Vtx X="-16" Y="-17" Z="10" S="-145" T="-17" R="9" G="242" B="126" A="255"/>
|
||||||
|
<Vtx X="-7" Y="-9" Z="9" S="-145" T="-81" R="247" G="219" B="121" A="255"/>
|
||||||
|
<Vtx X="-19" Y="0" Z="10" S="-17" T="-17" R="227" G="244" B="123" A="255"/>
|
||||||
|
<Vtx X="-2" Y="-5" Z="9" S="-59" T="-133" R="14" G="0" B="126" A="255"/>
|
||||||
|
<Vtx X="1" Y="-4" Z="9" S="-59" T="-145" R="11" G="1" B="127" A="255"/>
|
||||||
|
<Vtx X="-14" Y="-9" Z="3" S="-81" T="19" R="131" G="236" B="0" A="255"/>
|
||||||
|
<Vtx X="-17" Y="-17" Z="3" S="-145" T="19" R="243" G="134" B="223" A="255"/>
|
||||||
|
<Vtx X="-16" Y="-13" Z="-5" S="-145" T="111" R="241" G="173" B="161" A="255"/>
|
||||||
|
<Vtx X="-14" Y="-6" Z="-6" S="-81" T="111" R="151" G="232" B="189" A="255"/>
|
||||||
|
<Vtx X="16" Y="-13" Z="-8" S="-145" T="111" R="255" G="173" B="160" A="255"/>
|
||||||
|
<Vtx X="14" Y="-6" Z="-8" S="-81" T="111" R="92" G="232" B="171" A="255"/>
|
||||||
|
<Vtx X="16" Y="-9" Z="1" S="-81" T="19" R="124" G="236" B="235" A="255"/>
|
||||||
|
<Vtx X="18" Y="-17" Z="0" S="-145" T="19" R="7" G="134" B="221" A="255"/>
|
||||||
|
<Vtx X="-17" Y="17" Z="3" S="147" T="-17" R="159" G="69" B="210" A="255"/>
|
||||||
|
<Vtx X="-9" Y="17" Z="-6" S="239" T="-81" R="222" G="78" B="161" A="255"/>
|
||||||
|
<Vtx X="-16" Y="14" Z="-5" S="239" T="-17" R="185" G="65" B="172" A="255"/>
|
||||||
|
<Vtx X="-8" Y="22" Z="3" S="147" T="-81" R="234" G="112" B="200" A="255"/>
|
||||||
|
<Vtx X="-16" Y="-13" Z="-5" S="-273" T="-17" R="241" G="173" B="161" A="255"/>
|
||||||
|
<Vtx X="-8" Y="-9" Z="3" S="-180" T="-81" R="199" G="144" B="235" A="255"/>
|
||||||
|
<Vtx X="-17" Y="-17" Z="3" S="-180" T="-17" R="243" G="134" B="223" A="255"/>
|
||||||
|
<Vtx X="-9" Y="-7" Z="-6" S="-273" T="-81" R="205" G="176" B="171" A="255"/>
|
||||||
|
<Vtx X="1" Y="-27" Z="2" S="-180" T="-145" R="254" G="133" B="223" A="255"/>
|
||||||
|
<Vtx X="0" Y="-20" Z="-7" S="-273" T="-145" R="248" G="179" B="155" A="255"/>
|
||||||
|
<Vtx X="9" Y="-7" Z="-8" S="-273" T="-81" R="35" G="176" B="164" A="255"/>
|
||||||
|
<Vtx X="9" Y="-9" Z="1" S="-180" T="-81" R="53" G="144" B="226" A="255"/>
|
||||||
|
<Vtx X="1" Y="-27" Z="9" S="-145" T="-145" R="11" G="237" B="125" A="255"/>
|
||||||
|
</Vertex>
|
@ -0,0 +1,26 @@
|
|||||||
|
<Vertex Version="0">
|
||||||
|
<Vtx X="13" Y="7" Z="7" S="23" T="-65" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="12" Y="11" Z="8" S="45" T="-73" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="8" Y="12" Z="8" S="49" T="-96" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="4" Y="7" Z="8" S="13" T="-127" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="5" Y="11" Z="8" S="35" T="-119" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="8" Y="2" Z="8" S="-21" T="-99" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="5" Y="4" Z="8" S="-8" T="-121" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="12" Y="4" Z="8" S="-4" T="-71" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-6" Y="12" Z="9" S="49" T="-96" R="10" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-9" Y="11" Z="9" S="45" T="-73" R="10" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-11" Y="7" Z="10" S="23" T="-65" R="10" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-6" Y="2" Z="9" S="-21" T="-99" R="10" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-10" Y="4" Z="9" S="-4" T="-71" R="10" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-1" Y="7" Z="9" S="13" T="-127" R="10" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-2" Y="4" Z="9" S="-8" T="-121" R="10" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-2" Y="11" Z="9" S="35" T="-119" R="10" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="4" Y="-5" Z="8" S="-59" T="-133" R="8" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="1" Y="2" Z="9" S="-26" T="-145" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="1" Y="1" Z="7" S="-26" T="-145" R="225" G="243" B="123" A="255"/>
|
||||||
|
<Vtx X="-2" Y="-5" Z="9" S="-59" T="-133" R="14" G="0" B="126" A="255"/>
|
||||||
|
<Vtx X="-1" Y="-5" Z="7" S="-59" T="-133" R="74" G="57" B="86" A="255"/>
|
||||||
|
<Vtx X="1" Y="-4" Z="9" S="-59" T="-145" R="11" G="1" B="127" A="255"/>
|
||||||
|
<Vtx X="1" Y="-4" Z="7" S="-59" T="-145" R="10" G="44" B="119" A="255"/>
|
||||||
|
<Vtx X="4" Y="-5" Z="7" S="-59" T="-133" R="198" G="57" B="98" A="255"/>
|
||||||
|
</Vertex>
|
@ -0,0 +1,6 @@
|
|||||||
|
<Vertex Version="0">
|
||||||
|
<Vtx X="4" Y="-5" Z="7" S="1008" T="1008" R="198" G="57" B="98" A="255"/>
|
||||||
|
<Vtx X="1" Y="1" Z="7" S="1008" T="582" R="225" G="243" B="123" A="255"/>
|
||||||
|
<Vtx X="1" Y="-4" Z="7" S="883" T="967" R="10" G="44" B="119" A="255"/>
|
||||||
|
<Vtx X="-1" Y="-5" Z="7" S="1008" T="1008" R="74" G="57" B="86" A="255"/>
|
||||||
|
</Vertex>
|
@ -0,0 +1,58 @@
|
|||||||
|
<Vertex Version="0">
|
||||||
|
<Vtx X="19" Y="17" Z="6" S="111" T="-11" R="103" G="230" B="69" A="255"/>
|
||||||
|
<Vtx X="18" Y="17" Z="0" S="111" T="19" R="87" G="69" B="194" A="255"/>
|
||||||
|
<Vtx X="21" Y="23" Z="4" S="111" T="19" R="100" G="245" B="178" A="255"/>
|
||||||
|
<Vtx X="21" Y="23" Z="10" S="111" T="-11" R="73" G="199" B="87" A="255"/>
|
||||||
|
<Vtx X="22" Y="27" Z="4" S="111" T="19" R="72" G="242" B="152" A="255"/>
|
||||||
|
<Vtx X="22" Y="25" Z="9" S="111" T="-11" R="93" G="225" B="81" A="255"/>
|
||||||
|
<Vtx X="27" Y="35" Z="9" S="111" T="-11" R="106" G="67" B="20" A="255"/>
|
||||||
|
<Vtx X="10" Y="22" Z="7" S="117" T="-81" R="210" G="73" B="94" A="255"/>
|
||||||
|
<Vtx X="19" Y="17" Z="6" S="117" T="-17" R="103" G="230" B="69" A="255"/>
|
||||||
|
<Vtx X="21" Y="23" Z="10" S="117" T="-17" R="73" G="199" B="87" A="255"/>
|
||||||
|
<Vtx X="13" Y="27" Z="11" S="117" T="-81" R="178" G="10" B="100" A="255"/>
|
||||||
|
<Vtx X="22" Y="25" Z="9" S="117" T="-17" R="93" G="225" B="81" A="255"/>
|
||||||
|
<Vtx X="16" Y="33" Z="11" S="117" T="-81" R="209" G="73" B="93" A="255"/>
|
||||||
|
<Vtx X="27" Y="35" Z="9" S="117" T="-81" R="106" G="67" B="20" A="255"/>
|
||||||
|
<Vtx X="12" Y="27" Z="5" S="147" T="-81" R="171" G="69" B="191" A="255"/>
|
||||||
|
<Vtx X="9" Y="22" Z="1" S="147" T="-81" R="12" G="111" B="196" A="255"/>
|
||||||
|
<Vtx X="18" Y="17" Z="0" S="147" T="-17" R="87" G="69" B="194" A="255"/>
|
||||||
|
<Vtx X="9" Y="22" Z="1" S="147" T="-81" R="12" G="111" B="196" A="255"/>
|
||||||
|
<Vtx X="12" Y="27" Z="5" S="147" T="-81" R="171" G="69" B="191" A="255"/>
|
||||||
|
<Vtx X="21" Y="23" Z="4" S="147" T="-17" R="100" G="245" B="178" A="255"/>
|
||||||
|
<Vtx X="17" Y="34" Z="5" S="147" T="-81" R="209" G="96" B="187" A="255"/>
|
||||||
|
<Vtx X="16" Y="33" Z="11" S="117" T="-81" R="209" G="73" B="93" A="255"/>
|
||||||
|
<Vtx X="27" Y="35" Z="9" S="147" T="-81" R="106" G="67" B="20" A="255"/>
|
||||||
|
<Vtx X="22" Y="27" Z="4" S="147" T="-17" R="72" G="242" B="152" A="255"/>
|
||||||
|
<Vtx X="27" Y="35" Z="9" S="147" T="-17" R="106" G="67" B="20" A="255"/>
|
||||||
|
<Vtx X="10" Y="22" Z="7" S="117" T="-81" R="210" G="73" B="94" A="255"/>
|
||||||
|
<Vtx X="13" Y="27" Z="11" S="117" T="-81" R="178" G="10" B="100" A="255"/>
|
||||||
|
<Vtx X="-16" Y="17" Z="9" S="111" T="-11" R="166" G="230" B="86" A="255"/>
|
||||||
|
<Vtx X="-19" Y="23" Z="8" S="111" T="19" R="144" G="245" B="197" A="255"/>
|
||||||
|
<Vtx X="-17" Y="17" Z="3" S="111" T="19" R="159" G="69" B="210" A="255"/>
|
||||||
|
<Vtx X="-18" Y="23" Z="13" S="111" T="-11" R="199" G="199" B="98" A="255"/>
|
||||||
|
<Vtx X="-20" Y="27" Z="8" S="111" T="19" R="167" G="242" B="166" A="255"/>
|
||||||
|
<Vtx X="-18" Y="23" Z="13" S="111" T="-11" R="199" G="199" B="98" A="255"/>
|
||||||
|
<Vtx X="-19" Y="25" Z="13" S="111" T="-11" R="179" G="225" B="96" A="255"/>
|
||||||
|
<Vtx X="-20" Y="27" Z="8" S="111" T="19" R="167" G="242" B="166" A="255"/>
|
||||||
|
<Vtx X="-24" Y="35" Z="13" S="111" T="-11" R="155" G="67" B="38" A="255"/>
|
||||||
|
<Vtx X="-7" Y="22" Z="8" S="117" T="-81" R="62" G="73" B="84" A="255"/>
|
||||||
|
<Vtx X="-18" Y="23" Z="13" S="117" T="-17" R="199" G="199" B="98" A="255"/>
|
||||||
|
<Vtx X="-16" Y="17" Z="9" S="117" T="-17" R="166" G="230" B="86" A="255"/>
|
||||||
|
<Vtx X="-9" Y="27" Z="13" S="117" T="-81" R="94" G="10" B="85" A="255"/>
|
||||||
|
<Vtx X="-8" Y="22" Z="3" S="147" T="-81" R="234" G="112" B="200" A="255"/>
|
||||||
|
<Vtx X="-10" Y="27" Z="7" S="147" T="-81" R="72" G="69" B="177" A="255"/>
|
||||||
|
<Vtx X="-17" Y="17" Z="3" S="147" T="-17" R="159" G="69" B="210" A="255"/>
|
||||||
|
<Vtx X="-19" Y="23" Z="8" S="147" T="-17" R="144" G="245" B="197" A="255"/>
|
||||||
|
<Vtx X="-14" Y="34" Z="8" S="147" T="-81" R="34" G="96" B="180" A="255"/>
|
||||||
|
<Vtx X="-20" Y="27" Z="8" S="147" T="-17" R="167" G="242" B="166" A="255"/>
|
||||||
|
<Vtx X="-24" Y="35" Z="13" S="147" T="-17" R="155" G="67" B="38" A="255"/>
|
||||||
|
<Vtx X="-13" Y="33" Z="13" S="117" T="-81" R="62" G="73" B="83" A="255"/>
|
||||||
|
<Vtx X="-14" Y="34" Z="8" S="147" T="-81" R="34" G="96" B="180" A="255"/>
|
||||||
|
<Vtx X="-24" Y="35" Z="13" S="147" T="-81" R="155" G="67" B="38" A="255"/>
|
||||||
|
<Vtx X="-13" Y="33" Z="13" S="117" T="-81" R="62" G="73" B="83" A="255"/>
|
||||||
|
<Vtx X="-10" Y="27" Z="7" S="147" T="-81" R="72" G="69" B="177" A="255"/>
|
||||||
|
<Vtx X="-9" Y="27" Z="13" S="117" T="-81" R="94" G="10" B="85" A="255"/>
|
||||||
|
<Vtx X="-19" Y="25" Z="13" S="117" T="-17" R="179" G="225" B="96" A="255"/>
|
||||||
|
<Vtx X="-24" Y="35" Z="13" S="117" T="-81" R="155" G="67" B="38" A="255"/>
|
||||||
|
<Vtx X="-18" Y="23" Z="13" S="117" T="-17" R="199" G="199" B="98" A="255"/>
|
||||||
|
</Vertex>
|
@ -0,0 +1,267 @@
|
|||||||
|
<Vertex Version="0">
|
||||||
|
<Vtx X="5" Y="5" Z="8" S="422" T="14" R="139" G="208" B="12" A="255"/>
|
||||||
|
<Vtx X="5" Y="9" Z="8" S="422" T="14" R="137" G="44" B="8" A="255"/>
|
||||||
|
<Vtx X="8" Y="7" Z="4" S="206" T="14" R="13" G="192" B="147" A="255"/>
|
||||||
|
<Vtx X="5" Y="7" Z="8" S="422" T="-50" R="129" G="0" B="6" A="255"/>
|
||||||
|
<Vtx X="6" Y="5" Z="9" S="462" T="14" R="196" G="229" B="109" A="255"/>
|
||||||
|
<Vtx X="6" Y="4" Z="8" S="422" T="78" R="166" G="166" B="2" A="255"/>
|
||||||
|
<Vtx X="8" Y="7" Z="4" S="206" T="142" R="13" G="192" B="147" A="255"/>
|
||||||
|
<Vtx X="7" Y="3" Z="8" S="422" T="142" R="206" G="139" B="8" A="255"/>
|
||||||
|
<Vtx X="9" Y="3" Z="8" S="422" T="206" R="0" G="129" B="255" A="255"/>
|
||||||
|
<Vtx X="11" Y="3" Z="8" S="422" T="142" R="54" G="141" B="251" A="255"/>
|
||||||
|
<Vtx X="10" Y="4" Z="9" S="462" T="142" R="36" G="188" B="101" A="255"/>
|
||||||
|
<Vtx X="11" Y="4" Z="8" S="422" T="78" R="90" G="167" B="245" A="255"/>
|
||||||
|
<Vtx X="12" Y="5" Z="7" S="422" T="14" R="119" G="212" B="244" A="255"/>
|
||||||
|
<Vtx X="12" Y="9" Z="7" S="422" T="14" R="117" G="48" B="248" A="255"/>
|
||||||
|
<Vtx X="12" Y="7" Z="7" S="422" T="-50" R="126" G="0" B="241" A="255"/>
|
||||||
|
<Vtx X="12" Y="9" Z="8" S="462" T="14" R="78" G="27" B="97" A="255"/>
|
||||||
|
<Vtx X="11" Y="10" Z="8" S="422" T="78" R="89" G="90" B="243" A="255"/>
|
||||||
|
<Vtx X="12" Y="9" Z="8" S="462" T="14" R="78" G="27" B="97" A="255"/>
|
||||||
|
<Vtx X="12" Y="9" Z="7" S="422" T="14" R="117" G="48" B="248" A="255"/>
|
||||||
|
<Vtx X="8" Y="7" Z="4" S="206" T="142" R="13" G="192" B="147" A="255"/>
|
||||||
|
<Vtx X="11" Y="11" Z="8" S="422" T="142" R="52" G="116" B="255" A="255"/>
|
||||||
|
<Vtx X="9" Y="11" Z="8" S="422" T="206" R="255" G="127" B="255" A="255"/>
|
||||||
|
<Vtx X="7" Y="11" Z="8" S="422" T="142" R="180" G="102" B="5" A="255"/>
|
||||||
|
<Vtx X="6" Y="10" Z="8" S="422" T="78" R="165" G="89" B="3" A="255"/>
|
||||||
|
<Vtx X="5" Y="9" Z="8" S="422" T="14" R="137" G="44" B="8" A="255"/>
|
||||||
|
<Vtx X="6" Y="9" Z="9" S="462" T="14" R="196" G="27" B="109" A="255"/>
|
||||||
|
<Vtx X="5" Y="7" Z="8" S="422" T="-50" R="129" G="0" B="6" A="255"/>
|
||||||
|
<Vtx X="6" Y="7" Z="9" S="462" T="-50" R="189" G="0" B="108" A="255"/>
|
||||||
|
<Vtx X="6" Y="5" Z="9" S="462" T="14" R="196" G="229" B="109" A="255"/>
|
||||||
|
<Vtx X="7" Y="7" Z="9" S="462" T="-50" R="236" G="0" B="125" A="255"/>
|
||||||
|
<Vtx X="7" Y="6" Z="9" S="462" T="14" R="232" G="243" B="124" A="255"/>
|
||||||
|
<Vtx X="6" Y="5" Z="9" S="462" T="78" R="210" G="200" B="104" A="255"/>
|
||||||
|
<Vtx X="6" Y="4" Z="8" S="422" T="78" R="166" G="166" B="2" A="255"/>
|
||||||
|
<Vtx X="6" Y="5" Z="9" S="462" T="78" R="210" G="200" B="104" A="255"/>
|
||||||
|
<Vtx X="6" Y="5" Z="9" S="462" T="14" R="196" G="229" B="109" A="255"/>
|
||||||
|
<Vtx X="7" Y="4" Z="9" S="462" T="142" R="238" G="188" B="106" A="255"/>
|
||||||
|
<Vtx X="7" Y="3" Z="8" S="422" T="142" R="206" G="139" B="8" A="255"/>
|
||||||
|
<Vtx X="9" Y="3" Z="8" S="422" T="206" R="0" G="129" B="255" A="255"/>
|
||||||
|
<Vtx X="9" Y="4" Z="9" S="462" T="206" R="9" G="183" B="104" A="255"/>
|
||||||
|
<Vtx X="10" Y="4" Z="9" S="462" T="142" R="36" G="188" B="101" A="255"/>
|
||||||
|
<Vtx X="9" Y="5" Z="9" S="462" T="206" R="10" G="225" B="123" A="255"/>
|
||||||
|
<Vtx X="10" Y="5" Z="9" S="462" T="142" R="23" G="221" B="120" A="255"/>
|
||||||
|
<Vtx X="11" Y="5" Z="9" S="462" T="78" R="64" G="200" B="95" A="255"/>
|
||||||
|
<Vtx X="11" Y="4" Z="8" S="422" T="78" R="90" G="167" B="245" A="255"/>
|
||||||
|
<Vtx X="12" Y="5" Z="8" S="462" T="14" R="78" G="229" B="97" A="255"/>
|
||||||
|
<Vtx X="12" Y="5" Z="7" S="422" T="14" R="119" G="212" B="244" A="255"/>
|
||||||
|
<Vtx X="12" Y="7" Z="7" S="422" T="-50" R="126" G="0" B="241" A="255"/>
|
||||||
|
<Vtx X="12" Y="7" Z="8" S="462" T="-50" R="85" G="0" B="95" A="255"/>
|
||||||
|
<Vtx X="12" Y="9" Z="8" S="462" T="14" R="78" G="27" B="97" A="255"/>
|
||||||
|
<Vtx X="12" Y="7" Z="8" S="462" T="-50" R="85" G="0" B="95" A="255"/>
|
||||||
|
<Vtx X="12" Y="7" Z="7" S="422" T="-50" R="126" G="0" B="241" A="255"/>
|
||||||
|
<Vtx X="11" Y="7" Z="9" S="462" T="-50" R="42" G="0" B="120" A="255"/>
|
||||||
|
<Vtx X="11" Y="9" Z="9" S="462" T="14" R="45" G="13" B="118" A="255"/>
|
||||||
|
<Vtx X="11" Y="10" Z="9" S="462" T="78" R="64" G="56" B="95" A="255"/>
|
||||||
|
<Vtx X="11" Y="10" Z="8" S="422" T="78" R="89" G="90" B="243" A="255"/>
|
||||||
|
<Vtx X="10" Y="10" Z="9" S="462" T="142" R="36" G="68" B="101" A="255"/>
|
||||||
|
<Vtx X="11" Y="11" Z="8" S="422" T="142" R="52" G="116" B="255" A="255"/>
|
||||||
|
<Vtx X="9" Y="11" Z="8" S="422" T="206" R="255" G="127" B="255" A="255"/>
|
||||||
|
<Vtx X="9" Y="10" Z="9" S="462" T="206" R="9" G="73" B="104" A="255"/>
|
||||||
|
<Vtx X="7" Y="10" Z="9" S="462" T="142" R="238" G="68" B="106" A="255"/>
|
||||||
|
<Vtx X="7" Y="11" Z="8" S="422" T="142" R="180" G="102" B="5" A="255"/>
|
||||||
|
<Vtx X="6" Y="10" Z="8" S="422" T="78" R="165" G="89" B="3" A="255"/>
|
||||||
|
<Vtx X="6" Y="10" Z="9" S="462" T="78" R="210" G="56" B="104" A="255"/>
|
||||||
|
<Vtx X="6" Y="9" Z="9" S="462" T="14" R="196" G="27" B="109" A="255"/>
|
||||||
|
<Vtx X="7" Y="9" Z="9" S="462" T="14" R="232" G="13" B="124" A="255"/>
|
||||||
|
<Vtx X="6" Y="10" Z="9" S="462" T="78" R="210" G="56" B="104" A="255"/>
|
||||||
|
<Vtx X="6" Y="9" Z="9" S="462" T="14" R="196" G="27" B="109" A="255"/>
|
||||||
|
<Vtx X="7" Y="7" Z="9" S="462" T="-50" R="236" G="0" B="125" A="255"/>
|
||||||
|
<Vtx X="6" Y="7" Z="9" S="462" T="-50" R="189" G="0" B="108" A="255"/>
|
||||||
|
<Vtx X="7" Y="9" Z="9" S="462" T="78" R="238" G="29" B="122" A="255"/>
|
||||||
|
<Vtx X="7" Y="9" Z="9" S="462" T="142" R="255" G="35" B="122" A="255"/>
|
||||||
|
<Vtx X="7" Y="9" Z="9" S="526" T="142" R="253" G="14" B="126" A="255"/>
|
||||||
|
<Vtx X="7" Y="9" Z="9" S="526" T="78" R="232" G="13" B="124" A="255"/>
|
||||||
|
<Vtx X="7" Y="7" Z="9" S="590" T="142" R="254" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="7" Y="7" Z="9" S="590" T="78" R="236" G="0" B="125" A="255"/>
|
||||||
|
<Vtx X="7" Y="6" Z="9" S="526" T="78" R="232" G="243" B="124" A="255"/>
|
||||||
|
<Vtx X="7" Y="6" Z="9" S="526" T="142" R="253" G="242" B="126" A="255"/>
|
||||||
|
<Vtx X="7" Y="5" Z="9" S="462" T="78" R="238" G="227" B="122" A="255"/>
|
||||||
|
<Vtx X="7" Y="5" Z="9" S="462" T="142" R="255" G="221" B="122" A="255"/>
|
||||||
|
<Vtx X="6" Y="5" Z="9" S="462" T="78" R="210" G="200" B="104" A="255"/>
|
||||||
|
<Vtx X="6" Y="5" Z="9" S="462" T="78" R="210" G="200" B="104" A="255"/>
|
||||||
|
<Vtx X="7" Y="5" Z="9" S="462" T="78" R="238" G="227" B="122" A="255"/>
|
||||||
|
<Vtx X="7" Y="6" Z="9" S="462" T="14" R="232" G="243" B="124" A="255"/>
|
||||||
|
<Vtx X="7" Y="4" Z="9" S="462" T="142" R="238" G="188" B="106" A="255"/>
|
||||||
|
<Vtx X="7" Y="5" Z="9" S="462" T="142" R="255" G="221" B="122" A="255"/>
|
||||||
|
<Vtx X="9" Y="5" Z="9" S="462" T="206" R="10" G="225" B="123" A="255"/>
|
||||||
|
<Vtx X="9" Y="4" Z="9" S="462" T="206" R="9" G="183" B="104" A="255"/>
|
||||||
|
<Vtx X="9" Y="6" Z="9" S="526" T="206" R="11" G="243" B="126" A="255"/>
|
||||||
|
<Vtx X="7" Y="6" Z="9" S="526" T="142" R="253" G="242" B="126" A="255"/>
|
||||||
|
<Vtx X="9" Y="7" Z="9" S="590" T="206" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="10" Y="6" Z="9" S="526" T="142" R="25" G="242" B="124" A="255"/>
|
||||||
|
<Vtx X="10" Y="5" Z="9" S="462" T="142" R="23" G="221" B="120" A="255"/>
|
||||||
|
<Vtx X="10" Y="5" Z="9" S="462" T="78" R="39" G="227" B="117" A="255"/>
|
||||||
|
<Vtx X="11" Y="6" Z="9" S="526" T="78" R="45" G="243" B="118" A="255"/>
|
||||||
|
<Vtx X="10" Y="7" Z="9" S="590" T="142" R="24" G="0" B="125" A="255"/>
|
||||||
|
<Vtx X="11" Y="7" Z="9" S="590" T="78" R="42" G="0" B="120" A="255"/>
|
||||||
|
<Vtx X="10" Y="7" Z="9" S="590" T="142" R="24" G="0" B="125" A="255"/>
|
||||||
|
<Vtx X="11" Y="7" Z="9" S="590" T="78" R="42" G="0" B="120" A="255"/>
|
||||||
|
<Vtx X="11" Y="9" Z="9" S="526" T="78" R="45" G="13" B="118" A="255"/>
|
||||||
|
<Vtx X="10" Y="9" Z="9" S="526" T="142" R="25" G="14" B="124" A="255"/>
|
||||||
|
<Vtx X="10" Y="9" Z="9" S="462" T="78" R="39" G="29" B="117" A="255"/>
|
||||||
|
<Vtx X="10" Y="9" Z="9" S="462" T="142" R="23" G="35" B="120" A="255"/>
|
||||||
|
<Vtx X="11" Y="10" Z="9" S="462" T="78" R="64" G="56" B="95" A="255"/>
|
||||||
|
<Vtx X="11" Y="9" Z="9" S="462" T="14" R="45" G="13" B="118" A="255"/>
|
||||||
|
<Vtx X="10" Y="10" Z="9" S="462" T="142" R="36" G="68" B="101" A="255"/>
|
||||||
|
<Vtx X="9" Y="9" Z="9" S="462" T="206" R="10" G="31" B="123" A="255"/>
|
||||||
|
<Vtx X="9" Y="10" Z="9" S="462" T="206" R="9" G="73" B="104" A="255"/>
|
||||||
|
<Vtx X="7" Y="10" Z="9" S="462" T="142" R="238" G="68" B="106" A="255"/>
|
||||||
|
<Vtx X="7" Y="9" Z="9" S="462" T="142" R="255" G="35" B="122" A="255"/>
|
||||||
|
<Vtx X="6" Y="10" Z="9" S="462" T="78" R="210" G="56" B="104" A="255"/>
|
||||||
|
<Vtx X="9" Y="9" Z="9" S="526" T="206" R="11" G="13" B="126" A="255"/>
|
||||||
|
<Vtx X="7" Y="9" Z="9" S="526" T="142" R="253" G="14" B="126" A="255"/>
|
||||||
|
<Vtx X="7" Y="9" Z="9" S="526" T="142" R="253" G="14" B="126" A="255"/>
|
||||||
|
<Vtx X="9" Y="7" Z="9" S="590" T="206" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="9" Y="9" Z="9" S="526" T="206" R="11" G="13" B="126" A="255"/>
|
||||||
|
<Vtx X="7" Y="7" Z="9" S="590" T="142" R="254" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="7" Y="6" Z="9" S="526" T="142" R="253" G="242" B="126" A="255"/>
|
||||||
|
<Vtx X="10" Y="9" Z="9" S="526" T="142" R="25" G="14" B="124" A="255"/>
|
||||||
|
<Vtx X="10" Y="7" Z="9" S="590" T="142" R="24" G="0" B="125" A="255"/>
|
||||||
|
<Vtx X="10" Y="6" Z="9" S="526" T="142" R="25" G="242" B="124" A="255"/>
|
||||||
|
<Vtx X="10" Y="9" Z="9" S="462" T="142" R="23" G="35" B="120" A="255"/>
|
||||||
|
<Vtx X="9" Y="9" Z="9" S="462" T="206" R="10" G="31" B="123" A="255"/>
|
||||||
|
<Vtx X="11" Y="7" Z="9" S="462" T="-50" R="42" G="0" B="120" A="255"/>
|
||||||
|
<Vtx X="12" Y="5" Z="8" S="462" T="14" R="78" G="229" B="97" A="255"/>
|
||||||
|
<Vtx X="12" Y="7" Z="8" S="462" T="-50" R="85" G="0" B="95" A="255"/>
|
||||||
|
<Vtx X="11" Y="6" Z="9" S="462" T="14" R="45" G="243" B="118" A="255"/>
|
||||||
|
<Vtx X="11" Y="5" Z="9" S="462" T="78" R="64" G="200" B="95" A="255"/>
|
||||||
|
<Vtx X="10" Y="5" Z="9" S="462" T="78" R="39" G="227" B="117" A="255"/>
|
||||||
|
<Vtx X="11" Y="5" Z="9" S="462" T="78" R="64" G="200" B="95" A="255"/>
|
||||||
|
<Vtx X="10" Y="5" Z="9" S="462" T="78" R="39" G="227" B="117" A="255"/>
|
||||||
|
<Vtx X="10" Y="5" Z="9" S="462" T="142" R="23" G="221" B="120" A="255"/>
|
||||||
|
<Vtx X="-2" Y="5" Z="9" S="422" T="14" R="117" G="208" B="248" A="255"/>
|
||||||
|
<Vtx X="-6" Y="7" Z="5" S="206" T="14" R="224" G="192" B="151" A="255"/>
|
||||||
|
<Vtx X="-2" Y="9" Z="9" S="422" T="14" R="119" G="44" B="244" A="255"/>
|
||||||
|
<Vtx X="-2" Y="7" Z="9" S="422" T="-50" R="126" G="0" B="241" A="255"/>
|
||||||
|
<Vtx X="-3" Y="9" Z="10" S="462" T="14" R="78" G="27" B="97" A="255"/>
|
||||||
|
<Vtx X="-3" Y="10" Z="9" S="422" T="78" R="89" G="90" B="244" A="255"/>
|
||||||
|
<Vtx X="-6" Y="7" Z="5" S="206" T="142" R="224" G="192" B="151" A="255"/>
|
||||||
|
<Vtx X="-4" Y="11" Z="9" S="422" T="142" R="76" G="102" B="252" A="255"/>
|
||||||
|
<Vtx X="-6" Y="11" Z="9" S="422" T="206" R="1" G="127" B="254" A="255"/>
|
||||||
|
<Vtx X="-8" Y="11" Z="9" S="422" T="142" R="204" G="116" B="7" A="255"/>
|
||||||
|
<Vtx X="-9" Y="10" Z="9" S="422" T="78" R="166" G="90" B="3" A="255"/>
|
||||||
|
<Vtx X="-10" Y="9" Z="9" S="422" T="14" R="139" G="48" B="12" A="255"/>
|
||||||
|
<Vtx X="-9" Y="9" Z="10" S="462" T="14" R="196" G="27" B="109" A="255"/>
|
||||||
|
<Vtx X="-9" Y="9" Z="10" S="462" T="14" R="196" G="27" B="109" A="255"/>
|
||||||
|
<Vtx X="-10" Y="9" Z="9" S="422" T="14" R="139" G="48" B="12" A="255"/>
|
||||||
|
<Vtx X="-10" Y="7" Z="9" S="422" T="-50" R="129" G="0" B="6" A="255"/>
|
||||||
|
<Vtx X="-10" Y="5" Z="9" S="422" T="14" R="137" G="212" B="8" A="255"/>
|
||||||
|
<Vtx X="-6" Y="7" Z="5" S="206" T="14" R="224" G="192" B="151" A="255"/>
|
||||||
|
<Vtx X="-9" Y="4" Z="9" S="422" T="78" R="166" G="166" B="3" A="255"/>
|
||||||
|
<Vtx X="-8" Y="3" Z="9" S="422" T="142" R="202" G="141" B="4" A="255"/>
|
||||||
|
<Vtx X="-8" Y="4" Z="10" S="462" T="142" R="238" G="188" B="106" A="255"/>
|
||||||
|
<Vtx X="-6" Y="3" Z="9" S="422" T="206" R="0" G="129" B="254" A="255"/>
|
||||||
|
<Vtx X="-6" Y="7" Z="5" S="206" T="142" R="224" G="192" B="151" A="255"/>
|
||||||
|
<Vtx X="-4" Y="3" Z="9" S="422" T="142" R="52" G="140" B="255" A="255"/>
|
||||||
|
<Vtx X="-3" Y="4" Z="9" S="422" T="78" R="89" G="167" B="244" A="255"/>
|
||||||
|
<Vtx X="-2" Y="5" Z="9" S="422" T="14" R="117" G="208" B="248" A="255"/>
|
||||||
|
<Vtx X="-3" Y="5" Z="10" S="462" T="14" R="78" G="229" B="97" A="255"/>
|
||||||
|
<Vtx X="-2" Y="7" Z="9" S="422" T="-50" R="126" G="0" B="241" A="255"/>
|
||||||
|
<Vtx X="-3" Y="7" Z="10" S="462" T="-50" R="85" G="0" B="95" A="255"/>
|
||||||
|
<Vtx X="-2" Y="7" Z="9" S="422" T="-50" R="126" G="0" B="241" A="255"/>
|
||||||
|
<Vtx X="-3" Y="9" Z="10" S="462" T="14" R="78" G="27" B="97" A="255"/>
|
||||||
|
<Vtx X="-3" Y="7" Z="10" S="462" T="-50" R="85" G="0" B="95" A="255"/>
|
||||||
|
<Vtx X="-4" Y="7" Z="10" S="462" T="-50" R="42" G="0" B="120" A="255"/>
|
||||||
|
<Vtx X="-4" Y="9" Z="10" S="462" T="14" R="45" G="13" B="118" A="255"/>
|
||||||
|
<Vtx X="-4" Y="10" Z="10" S="462" T="78" R="64" G="56" B="95" A="255"/>
|
||||||
|
<Vtx X="-3" Y="10" Z="9" S="422" T="78" R="89" G="90" B="244" A="255"/>
|
||||||
|
<Vtx X="-4" Y="10" Z="10" S="462" T="142" R="36" G="68" B="101" A="255"/>
|
||||||
|
<Vtx X="-4" Y="11" Z="9" S="422" T="142" R="76" G="102" B="252" A="255"/>
|
||||||
|
<Vtx X="-6" Y="11" Z="9" S="422" T="206" R="1" G="127" B="254" A="255"/>
|
||||||
|
<Vtx X="-6" Y="10" Z="10" S="462" T="206" R="9" G="73" B="104" A="255"/>
|
||||||
|
<Vtx X="-8" Y="10" Z="10" S="462" T="142" R="238" G="68" B="106" A="255"/>
|
||||||
|
<Vtx X="-8" Y="11" Z="9" S="422" T="142" R="204" G="116" B="7" A="255"/>
|
||||||
|
<Vtx X="-9" Y="10" Z="9" S="422" T="78" R="166" G="90" B="3" A="255"/>
|
||||||
|
<Vtx X="-8" Y="10" Z="10" S="462" T="78" R="210" G="56" B="104" A="255"/>
|
||||||
|
<Vtx X="-9" Y="9" Z="10" S="462" T="14" R="196" G="27" B="109" A="255"/>
|
||||||
|
<Vtx X="-8" Y="10" Z="10" S="462" T="78" R="210" G="56" B="104" A="255"/>
|
||||||
|
<Vtx X="-9" Y="9" Z="10" S="462" T="14" R="196" G="27" B="109" A="255"/>
|
||||||
|
<Vtx X="-8" Y="9" Z="10" S="462" T="14" R="232" G="13" B="124" A="255"/>
|
||||||
|
<Vtx X="-8" Y="7" Z="10" S="462" T="-50" R="236" G="0" B="125" A="255"/>
|
||||||
|
<Vtx X="-9" Y="7" Z="10" S="462" T="-50" R="189" G="0" B="108" A="255"/>
|
||||||
|
<Vtx X="-10" Y="7" Z="9" S="422" T="-50" R="129" G="0" B="6" A="255"/>
|
||||||
|
<Vtx X="-9" Y="5" Z="10" S="462" T="14" R="196" G="229" B="109" A="255"/>
|
||||||
|
<Vtx X="-10" Y="5" Z="9" S="422" T="14" R="137" G="212" B="8" A="255"/>
|
||||||
|
<Vtx X="-9" Y="4" Z="9" S="422" T="78" R="166" G="166" B="3" A="255"/>
|
||||||
|
<Vtx X="-8" Y="5" Z="10" S="462" T="78" R="210" G="200" B="104" A="255"/>
|
||||||
|
<Vtx X="-8" Y="4" Z="10" S="462" T="142" R="238" G="188" B="106" A="255"/>
|
||||||
|
<Vtx X="-7" Y="5" Z="10" S="462" T="142" R="255" G="221" B="122" A="255"/>
|
||||||
|
<Vtx X="-6" Y="5" Z="10" S="462" T="206" R="10" G="225" B="123" A="255"/>
|
||||||
|
<Vtx X="-6" Y="4" Z="10" S="462" T="206" R="9" G="183" B="104" A="255"/>
|
||||||
|
<Vtx X="-6" Y="3" Z="9" S="422" T="206" R="0" G="129" B="254" A="255"/>
|
||||||
|
<Vtx X="-4" Y="4" Z="10" S="462" T="142" R="36" G="188" B="101" A="255"/>
|
||||||
|
<Vtx X="-6" Y="3" Z="9" S="422" T="206" R="0" G="129" B="254" A="255"/>
|
||||||
|
<Vtx X="-4" Y="3" Z="9" S="422" T="142" R="52" G="140" B="255" A="255"/>
|
||||||
|
<Vtx X="-4" Y="4" Z="10" S="462" T="142" R="36" G="188" B="101" A="255"/>
|
||||||
|
<Vtx X="-3" Y="4" Z="9" S="422" T="78" R="89" G="167" B="244" A="255"/>
|
||||||
|
<Vtx X="-4" Y="5" Z="10" S="462" T="78" R="64" G="200" B="95" A="255"/>
|
||||||
|
<Vtx X="-3" Y="5" Z="10" S="462" T="14" R="78" G="229" B="97" A="255"/>
|
||||||
|
<Vtx X="-4" Y="6" Z="10" S="462" T="14" R="45" G="243" B="118" A="255"/>
|
||||||
|
<Vtx X="-4" Y="7" Z="10" S="462" T="-50" R="42" G="0" B="120" A="255"/>
|
||||||
|
<Vtx X="-3" Y="7" Z="10" S="462" T="-50" R="85" G="0" B="95" A="255"/>
|
||||||
|
<Vtx X="-4" Y="5" Z="10" S="462" T="78" R="39" G="227" B="117" A="255"/>
|
||||||
|
<Vtx X="-4" Y="5" Z="10" S="462" T="142" R="23" G="221" B="120" A="255"/>
|
||||||
|
<Vtx X="-4" Y="6" Z="10" S="526" T="142" R="25" G="242" B="124" A="255"/>
|
||||||
|
<Vtx X="-4" Y="6" Z="10" S="526" T="78" R="45" G="243" B="118" A="255"/>
|
||||||
|
<Vtx X="-4" Y="7" Z="10" S="590" T="142" R="24" G="0" B="125" A="255"/>
|
||||||
|
<Vtx X="-4" Y="7" Z="10" S="590" T="78" R="42" G="0" B="120" A="255"/>
|
||||||
|
<Vtx X="-4" Y="9" Z="10" S="526" T="78" R="45" G="13" B="118" A="255"/>
|
||||||
|
<Vtx X="-4" Y="9" Z="10" S="526" T="78" R="45" G="13" B="118" A="255"/>
|
||||||
|
<Vtx X="-4" Y="9" Z="10" S="526" T="142" R="25" G="14" B="124" A="255"/>
|
||||||
|
<Vtx X="-4" Y="7" Z="10" S="590" T="142" R="24" G="0" B="125" A="255"/>
|
||||||
|
<Vtx X="-4" Y="9" Z="10" S="462" T="78" R="39" G="29" B="117" A="255"/>
|
||||||
|
<Vtx X="-4" Y="9" Z="10" S="462" T="142" R="23" G="35" B="120" A="255"/>
|
||||||
|
<Vtx X="-4" Y="10" Z="10" S="462" T="78" R="64" G="56" B="95" A="255"/>
|
||||||
|
<Vtx X="-4" Y="9" Z="10" S="462" T="14" R="45" G="13" B="118" A="255"/>
|
||||||
|
<Vtx X="-4" Y="10" Z="10" S="462" T="142" R="36" G="68" B="101" A="255"/>
|
||||||
|
<Vtx X="-6" Y="9" Z="10" S="462" T="206" R="10" G="31" B="123" A="255"/>
|
||||||
|
<Vtx X="-6" Y="10" Z="10" S="462" T="206" R="9" G="73" B="104" A="255"/>
|
||||||
|
<Vtx X="-8" Y="10" Z="10" S="462" T="142" R="238" G="68" B="106" A="255"/>
|
||||||
|
<Vtx X="-7" Y="9" Z="10" S="462" T="142" R="255" G="35" B="122" A="255"/>
|
||||||
|
<Vtx X="-8" Y="10" Z="10" S="462" T="78" R="210" G="56" B="104" A="255"/>
|
||||||
|
<Vtx X="-8" Y="9" Z="10" S="462" T="78" R="238" G="29" B="122" A="255"/>
|
||||||
|
<Vtx X="-8" Y="9" Z="10" S="462" T="14" R="232" G="13" B="124" A="255"/>
|
||||||
|
<Vtx X="-7" Y="9" Z="11" S="526" T="142" R="253" G="14" B="126" A="255"/>
|
||||||
|
<Vtx X="-6" Y="9" Z="10" S="526" T="206" R="11" G="13" B="126" A="255"/>
|
||||||
|
<Vtx X="-7" Y="9" Z="10" S="462" T="142" R="255" G="35" B="122" A="255"/>
|
||||||
|
<Vtx X="-7" Y="9" Z="11" S="526" T="142" R="253" G="14" B="126" A="255"/>
|
||||||
|
<Vtx X="-6" Y="7" Z="10" S="590" T="206" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-7" Y="7" Z="11" S="590" T="142" R="254" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-8" Y="9" Z="10" S="526" T="78" R="232" G="13" B="124" A="255"/>
|
||||||
|
<Vtx X="-8" Y="9" Z="10" S="462" T="78" R="238" G="29" B="122" A="255"/>
|
||||||
|
<Vtx X="-8" Y="7" Z="10" S="590" T="78" R="236" G="0" B="125" A="255"/>
|
||||||
|
<Vtx X="-8" Y="6" Z="10" S="526" T="78" R="232" G="243" B="124" A="255"/>
|
||||||
|
<Vtx X="-7" Y="6" Z="11" S="526" T="142" R="253" G="242" B="126" A="255"/>
|
||||||
|
<Vtx X="-8" Y="5" Z="10" S="462" T="78" R="238" G="227" B="122" A="255"/>
|
||||||
|
<Vtx X="-7" Y="5" Z="10" S="462" T="142" R="255" G="221" B="122" A="255"/>
|
||||||
|
<Vtx X="-8" Y="5" Z="10" S="462" T="78" R="210" G="200" B="104" A="255"/>
|
||||||
|
<Vtx X="-8" Y="6" Z="10" S="462" T="14" R="232" G="243" B="124" A="255"/>
|
||||||
|
<Vtx X="-9" Y="5" Z="10" S="462" T="14" R="196" G="229" B="109" A="255"/>
|
||||||
|
<Vtx X="-8" Y="7" Z="10" S="462" T="-50" R="236" G="0" B="125" A="255"/>
|
||||||
|
<Vtx X="-8" Y="7" Z="10" S="462" T="-50" R="236" G="0" B="125" A="255"/>
|
||||||
|
<Vtx X="-9" Y="7" Z="10" S="462" T="-50" R="189" G="0" B="108" A="255"/>
|
||||||
|
<Vtx X="-9" Y="5" Z="10" S="462" T="14" R="196" G="229" B="109" A="255"/>
|
||||||
|
<Vtx X="-7" Y="5" Z="10" S="462" T="142" R="255" G="221" B="122" A="255"/>
|
||||||
|
<Vtx X="-6" Y="6" Z="10" S="526" T="206" R="11" G="243" B="126" A="255"/>
|
||||||
|
<Vtx X="-7" Y="6" Z="11" S="526" T="142" R="253" G="242" B="126" A="255"/>
|
||||||
|
<Vtx X="-6" Y="5" Z="10" S="462" T="206" R="10" G="225" B="123" A="255"/>
|
||||||
|
<Vtx X="-4" Y="5" Z="10" S="462" T="142" R="23" G="221" B="120" A="255"/>
|
||||||
|
<Vtx X="-4" Y="4" Z="10" S="462" T="142" R="36" G="188" B="101" A="255"/>
|
||||||
|
<Vtx X="-6" Y="4" Z="10" S="462" T="206" R="9" G="183" B="104" A="255"/>
|
||||||
|
<Vtx X="-4" Y="5" Z="10" S="462" T="78" R="64" G="200" B="95" A="255"/>
|
||||||
|
<Vtx X="-6" Y="9" Z="10" S="526" T="206" R="11" G="13" B="126" A="255"/>
|
||||||
|
<Vtx X="-6" Y="9" Z="10" S="462" T="206" R="10" G="31" B="123" A="255"/>
|
||||||
|
<Vtx X="-7" Y="9" Z="10" S="462" T="142" R="255" G="35" B="122" A="255"/>
|
||||||
|
<Vtx X="-4" Y="9" Z="10" S="462" T="142" R="23" G="35" B="120" A="255"/>
|
||||||
|
<Vtx X="-4" Y="9" Z="10" S="526" T="142" R="25" G="14" B="124" A="255"/>
|
||||||
|
<Vtx X="-4" Y="9" Z="10" S="526" T="142" R="25" G="14" B="124" A="255"/>
|
||||||
|
<Vtx X="-6" Y="9" Z="10" S="526" T="206" R="11" G="13" B="126" A="255"/>
|
||||||
|
<Vtx X="-6" Y="7" Z="10" S="590" T="206" R="11" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-4" Y="7" Z="10" S="590" T="142" R="24" G="0" B="125" A="255"/>
|
||||||
|
<Vtx X="-4" Y="6" Z="10" S="526" T="142" R="25" G="242" B="124" A="255"/>
|
||||||
|
<Vtx X="-6" Y="6" Z="10" S="526" T="206" R="11" G="243" B="126" A="255"/>
|
||||||
|
<Vtx X="-7" Y="6" Z="11" S="526" T="142" R="253" G="242" B="126" A="255"/>
|
||||||
|
<Vtx X="-7" Y="7" Z="11" S="590" T="142" R="254" G="0" B="127" A="255"/>
|
||||||
|
<Vtx X="-4" Y="5" Z="10" S="462" T="142" R="23" G="221" B="120" A="255"/>
|
||||||
|
</Vertex>
|
@ -0,0 +1,21 @@
|
|||||||
|
<DisplayList Version="0">
|
||||||
|
<PipeSync/>
|
||||||
|
<SetCombineLERP A0="G_CCMUX_TEXEL0" B0="G_CCMUX_0" C0="G_CCMUX_TEXEL0" D0="G_CCMUX_TEXEL0" 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" />
|
||||||
|
<ClearGeometryMode G_CULL_FRONT="1" G_TEXTURE_GEN_LINEAR="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="5898" T="5898" Level="0" Tile="0" On="1"/>
|
||||||
|
<SetTextureLUT Mode="G_TT_NONE"/>
|
||||||
|
<TileSync/>
|
||||||
|
<SetTextureImage Path="objects/object_boss_soul/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="223" G="62" B="53" A="255"/>
|
||||||
|
<EndDisplayList/>
|
||||||
|
</DisplayList>
|
||||||
|
|
@ -0,0 +1,21 @@
|
|||||||
|
<DisplayList Version="0">
|
||||||
|
<PipeSync/>
|
||||||
|
<SetCombineLERP A0="G_CCMUX_TEXEL0" B0="G_CCMUX_0" C0="G_CCMUX_TEXEL0" D0="G_CCMUX_TEXEL0" 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" />
|
||||||
|
<ClearGeometryMode G_CULL_FRONT="1" G_TEXTURE_GEN_LINEAR="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_boss_soul/noise_tex_copy" Format="G_IM_FMT_RGBA" Size="G_IM_SIZ_16b_LOAD_BLOCK" Width="1"/>
|
||||||
|
<SetTile Format="G_IM_FMT_RGBA" Size="G_IM_SIZ_16b_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="1023" Dxt="256"/>
|
||||||
|
<PipeSync/>
|
||||||
|
<SetTile Format="G_IM_FMT_RGBA" Size="G_IM_SIZ_16b" Line="8" 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="49" G="49" B="49" A="255"/>
|
||||||
|
<EndDisplayList/>
|
||||||
|
</DisplayList>
|
||||||
|
|
@ -0,0 +1,21 @@
|
|||||||
|
<DisplayList Version="0">
|
||||||
|
<PipeSync/>
|
||||||
|
<SetCombineLERP A0="G_CCMUX_0" B0="G_CCMUX_0" C0="G_CCMUX_0" D0="G_CCMUX_TEXEL0" 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_SHADING_SMOOTH="1" />
|
||||||
|
<ClearGeometryMode G_CULL_FRONT="1" G_TEXTURE_GEN="1" G_TEXTURE_GEN_LINEAR="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="65535" T="65535" Level="0" Tile="0" On="1"/>
|
||||||
|
<SetTextureLUT Mode="G_TT_NONE"/>
|
||||||
|
<TileSync/>
|
||||||
|
<SetTextureImage Path="objects/object_boss_soul/noise_tex_copy" Format="G_IM_FMT_RGBA" Size="G_IM_SIZ_16b_LOAD_BLOCK" Width="1"/>
|
||||||
|
<SetTile Format="G_IM_FMT_RGBA" Size="G_IM_SIZ_16b_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="1023" Dxt="256"/>
|
||||||
|
<PipeSync/>
|
||||||
|
<SetTile Format="G_IM_FMT_RGBA" Size="G_IM_SIZ_16b" Line="8" 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="14" B="12" A="255"/>
|
||||||
|
<EndDisplayList/>
|
||||||
|
</DisplayList>
|
||||||
|
|
@ -0,0 +1,21 @@
|
|||||||
|
<DisplayList Version="0">
|
||||||
|
<PipeSync/>
|
||||||
|
<SetCombineLERP A0="G_CCMUX_TEXEL0" B0="G_CCMUX_0" C0="G_CCMUX_TEXEL0" D0="G_CCMUX_TEXEL0" 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" />
|
||||||
|
<ClearGeometryMode G_CULL_FRONT="1" G_TEXTURE_GEN_LINEAR="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_boss_soul/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="241" B="124" A="255"/>
|
||||||
|
<EndDisplayList/>
|
||||||
|
</DisplayList>
|
||||||
|
|
@ -0,0 +1,21 @@
|
|||||||
|
<DisplayList Version="0">
|
||||||
|
<PipeSync/>
|
||||||
|
<SetCombineLERP A0="G_CCMUX_TEXEL0" B0="G_CCMUX_0" C0="G_CCMUX_TEXEL0" D0="G_CCMUX_TEXEL0" 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" />
|
||||||
|
<ClearGeometryMode G_CULL_FRONT="1" G_TEXTURE_GEN_LINEAR="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_boss_soul/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="255" B="255" A="255"/> -->
|
||||||
|
<EndDisplayList/>
|
||||||
|
</DisplayList>
|
||||||
|
|
BIN
soh/assets/custom/objects/object_boss_soul/noise_tex
Normal file
BIN
soh/assets/custom/objects/object_boss_soul/noise_tex
Normal file
Binary file not shown.
BIN
soh/assets/custom/objects/object_boss_soul/noise_tex_copy
Normal file
BIN
soh/assets/custom/objects/object_boss_soul/noise_tex_copy
Normal file
Binary file not shown.
@ -56,6 +56,9 @@ static const ALIGN_ASSET(2) char gTriforcePiece2DL[] = dgTriforcePiece2DL;
|
|||||||
#define dgTriforcePieceCompletedDL "__OTR__objects/object_triforce_completed/gTriforcePieceCompletedDL"
|
#define dgTriforcePieceCompletedDL "__OTR__objects/object_triforce_completed/gTriforcePieceCompletedDL"
|
||||||
static const ALIGN_ASSET(2) char gTriforcePieceCompletedDL[] = dgTriforcePieceCompletedDL;
|
static const ALIGN_ASSET(2) char gTriforcePieceCompletedDL[] = dgTriforcePieceCompletedDL;
|
||||||
|
|
||||||
|
#define dgBossSoulSkullDL "__OTR__objects/object_boss_soul/gGIBossSoulSkullDL"
|
||||||
|
static const ALIGN_ASSET(2) char gBossSoulSkullDL[] = dgBossSoulSkullDL;
|
||||||
|
|
||||||
// overlays
|
// overlays
|
||||||
#define dgOptionsDividerChangeLangVtx "__OTR__overlays/ovl_file_choose/gOptionsDividerChangeLangVtx"
|
#define dgOptionsDividerChangeLangVtx "__OTR__overlays/ovl_file_choose/gOptionsDividerChangeLangVtx"
|
||||||
static const ALIGN_ASSET(2) char gOptionsDividerChangeLangVtx[] = dgOptionsDividerChangeLangVtx;
|
static const ALIGN_ASSET(2) char gOptionsDividerChangeLangVtx[] = dgOptionsDividerChangeLangVtx;
|
||||||
|
@ -505,6 +505,16 @@ const std::vector<FlagTable> flagTables = {
|
|||||||
{ RAND_INF_CHILD_FISHING, "RAND_INF_CHILD_FISHING" },
|
{ RAND_INF_CHILD_FISHING, "RAND_INF_CHILD_FISHING" },
|
||||||
{ RAND_INF_ADULT_FISHING, "RAND_INF_ADULT_FISHING" },
|
{ RAND_INF_ADULT_FISHING, "RAND_INF_ADULT_FISHING" },
|
||||||
{ RAND_INF_10_BIG_POES, "RAND_INF_10_BIG_POES" },
|
{ RAND_INF_10_BIG_POES, "RAND_INF_10_BIG_POES" },
|
||||||
|
|
||||||
|
{ RAND_INF_GOHMA_SOUL, "RAND_INF_GOHMA_SOUL" },
|
||||||
|
{ RAND_INF_KING_DODONGO_SOUL, "RAND_INF_KING_DODONGO_SOUL" },
|
||||||
|
{ RAND_INF_BARINADE_SOUL, "RAND_INF_BARINADE_SOUL" },
|
||||||
|
{ RAND_INF_PHANTOM_GANON_SOUL, "RAND_INF_PHANTOM_GANON_SOUL" },
|
||||||
|
{ RAND_INF_VOLVAGIA_SOUL, "RAND_INF_VOLVAGIA_SOUL" },
|
||||||
|
{ RAND_INF_MORPHA_SOUL, "RAND_INF_MORPHA_SOUL" },
|
||||||
|
{ RAND_INF_BONGO_BONGO_SOUL, "RAND_INF_BONGO_BONGO_SOUL" },
|
||||||
|
{ RAND_INF_TWINROVA_SOUL, "RAND_INF_TWINROVA_SOUL" },
|
||||||
|
{ RAND_INF_GANON_SOUL, "RAND_INF_GANON_SOUL" },
|
||||||
} },
|
} },
|
||||||
};
|
};
|
||||||
|
|
||||||
|
@ -1039,6 +1039,64 @@ void RegisterRandomizerSheikSpawn() {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//Boss souls require an additional item (represented by a RAND_INF) to spawn a boss in a particular lair
|
||||||
|
void RegisterBossSouls() {
|
||||||
|
GameInteractor::Instance->RegisterGameHook<GameInteractor::OnActorInit>([](void* actor) {
|
||||||
|
if (!gPlayState) return;
|
||||||
|
if (!IS_RANDO || !(OTRGlobals::Instance->gRandomizer->GetRandoSettingValue(RSK_SHUFFLE_BOSS_SOULS))) return;
|
||||||
|
RandomizerInf rand_inf = RAND_INF_MAX;
|
||||||
|
Actor* actual = (Actor*)actor;
|
||||||
|
switch (gPlayState->sceneNum){
|
||||||
|
case SCENE_DEKU_TREE_BOSS:
|
||||||
|
rand_inf = RAND_INF_GOHMA_SOUL;
|
||||||
|
break;
|
||||||
|
case SCENE_DODONGOS_CAVERN_BOSS:
|
||||||
|
rand_inf = RAND_INF_KING_DODONGO_SOUL;
|
||||||
|
break;
|
||||||
|
case SCENE_JABU_JABU_BOSS:
|
||||||
|
rand_inf = RAND_INF_BARINADE_SOUL;
|
||||||
|
break;
|
||||||
|
case SCENE_FOREST_TEMPLE_BOSS:
|
||||||
|
rand_inf = RAND_INF_PHANTOM_GANON_SOUL;
|
||||||
|
break;
|
||||||
|
case SCENE_FIRE_TEMPLE_BOSS:
|
||||||
|
rand_inf = RAND_INF_VOLVAGIA_SOUL;
|
||||||
|
break;
|
||||||
|
case SCENE_WATER_TEMPLE_BOSS:
|
||||||
|
rand_inf = RAND_INF_MORPHA_SOUL;
|
||||||
|
break;
|
||||||
|
case SCENE_SHADOW_TEMPLE_BOSS:
|
||||||
|
rand_inf = RAND_INF_BONGO_BONGO_SOUL;
|
||||||
|
break;
|
||||||
|
case SCENE_SPIRIT_TEMPLE_BOSS:
|
||||||
|
rand_inf = RAND_INF_TWINROVA_SOUL;
|
||||||
|
break;
|
||||||
|
case SCENE_GANONDORF_BOSS:
|
||||||
|
case SCENE_GANON_BOSS:
|
||||||
|
if (OTRGlobals::Instance->gRandomizer->GetRandoSettingValue(RSK_SHUFFLE_BOSS_SOULS) == RO_BOSS_SOULS_ON_PLUS_GANON) {
|
||||||
|
rand_inf = RAND_INF_GANON_SOUL;
|
||||||
|
}
|
||||||
|
break;
|
||||||
|
default: break;
|
||||||
|
}
|
||||||
|
|
||||||
|
//Deletes all actors in the boss category if the soul isn't found.
|
||||||
|
//Some actors, like Dark Link, Arwings, and Zora's Sapphire...?, are in this category despite not being actual bosses,
|
||||||
|
//so ignore any "boss" if `rand_inf` doesn't change from RAND_INF_MAX.
|
||||||
|
if (rand_inf != RAND_INF_MAX) {
|
||||||
|
if (!Flags_GetRandomizerInf(rand_inf) && actual->category == ACTORCAT_BOSS) {
|
||||||
|
Actor_Delete(&gPlayState->actorCtx, actual, gPlayState);
|
||||||
|
}
|
||||||
|
//Special case for Phantom Ganon's horse (and fake), as they're considered "background actors",
|
||||||
|
//but still control the boss fight flow.
|
||||||
|
if (!Flags_GetRandomizerInf(RAND_INF_PHANTOM_GANON_SOUL) && actual->id == ACTOR_EN_FHG) {
|
||||||
|
Actor_Delete(&gPlayState->actorCtx, actual, gPlayState);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
void InitMods() {
|
void InitMods() {
|
||||||
RegisterTTS();
|
RegisterTTS();
|
||||||
RegisterInfiniteMoney();
|
RegisterInfiniteMoney();
|
||||||
@ -1066,5 +1124,6 @@ void InitMods() {
|
|||||||
RegisterEnemyDefeatCounts();
|
RegisterEnemyDefeatCounts();
|
||||||
RegisterAltTrapTypes();
|
RegisterAltTrapTypes();
|
||||||
RegisterRandomizerSheikSpawn();
|
RegisterRandomizerSheikSpawn();
|
||||||
|
RegisterBossSouls();
|
||||||
NameTag_RegisterHooks();
|
NameTag_RegisterHooks();
|
||||||
}
|
}
|
||||||
|
@ -1939,6 +1939,114 @@ void HintTable_Init_Item() {
|
|||||||
Text{"a Piece of the Triforce", /*french*/"un fragment de la Triforce", /*spanish*/"un fragmento de la Trifuerza"}
|
Text{"a Piece of the Triforce", /*french*/"un fragment de la Triforce", /*spanish*/"un fragmento de la Trifuerza"}
|
||||||
);
|
);
|
||||||
|
|
||||||
|
hintTable[RHT_GOHMA_SOUL] = HintText::Item({
|
||||||
|
//obscure text
|
||||||
|
Text{"an invasive soul", "", ""},
|
||||||
|
Text{"some spider essence", "", ""},
|
||||||
|
}, {
|
||||||
|
//ambiguous text
|
||||||
|
Text{"something webbed", "", ""}
|
||||||
|
}, {
|
||||||
|
//clear text
|
||||||
|
Text{"the soul of Gohma", "", ""}}
|
||||||
|
);
|
||||||
|
|
||||||
|
hintTable[RHT_KING_DODONGO_SOUL] = HintText::Item({
|
||||||
|
//obscure text
|
||||||
|
Text{"a royal soul", "", ""},
|
||||||
|
Text{"some reptile essence", "", ""},
|
||||||
|
}, {
|
||||||
|
//ambiguous text
|
||||||
|
Text{"something explosive", "", ""}
|
||||||
|
}, {
|
||||||
|
//clear text
|
||||||
|
Text{"the soul of King Dodongo", "", ""}}
|
||||||
|
);
|
||||||
|
|
||||||
|
hintTable[RHT_BARINADE_SOUL] = HintText::Item({
|
||||||
|
//obscure text
|
||||||
|
Text{"an infectuous soul", "", ""},
|
||||||
|
Text{"some parasitic essence", "", ""},
|
||||||
|
}, {
|
||||||
|
//ambiguous text
|
||||||
|
Text{"something fishy", "", ""}
|
||||||
|
}, {
|
||||||
|
//clear text
|
||||||
|
Text("the soul of Barinade", "", "")}
|
||||||
|
);
|
||||||
|
|
||||||
|
hintTable[RHT_PHANTOM_GANON_SOUL] = HintText::Item({
|
||||||
|
//obscure text
|
||||||
|
Text{"a duplicate soul", "", ""},
|
||||||
|
Text{"some illusionary essence", "", ""},
|
||||||
|
}, {
|
||||||
|
//ambiguous text
|
||||||
|
Text{"something spectral", "", ""}
|
||||||
|
}, {
|
||||||
|
//clear text
|
||||||
|
Text{"the soul of Phantom Ganon", "", ""}}
|
||||||
|
);
|
||||||
|
|
||||||
|
hintTable[RHT_VOLVAGIA_SOUL] = HintText::Item({
|
||||||
|
//obscure text
|
||||||
|
Text{"a draconic soul", "", ""},
|
||||||
|
Text{"some magmatic essence", "", ""},
|
||||||
|
}, {
|
||||||
|
//ambiguous text
|
||||||
|
Text{"something hot", "", ""}
|
||||||
|
}, {
|
||||||
|
//clear text
|
||||||
|
Text{"the soul of Volvagia", "", ""}}
|
||||||
|
);
|
||||||
|
|
||||||
|
hintTable[RHT_MORPHA_SOUL] = HintText::Item({
|
||||||
|
//obscure text
|
||||||
|
Text{"an aquatic soul", "", ""},
|
||||||
|
Text{"some liquid essence", "", ""},
|
||||||
|
}, {
|
||||||
|
//ambiguous text
|
||||||
|
Text{"something wet", "", ""}
|
||||||
|
}, {
|
||||||
|
//clear text
|
||||||
|
Text{"the soul of Barinade", "", ""}}
|
||||||
|
);
|
||||||
|
|
||||||
|
hintTable[RHT_BONGO_BONGO_SOUL] = HintText::Item({
|
||||||
|
//obscure text
|
||||||
|
Text{"a shadowy soul", "", ""},
|
||||||
|
Text{"some handy essence", "", ""},
|
||||||
|
}, {
|
||||||
|
//ambiguous text
|
||||||
|
Text{"something dark", "", ""}
|
||||||
|
}, {
|
||||||
|
//clear text
|
||||||
|
Text{"the soul of Bongo Bongo", "", ""}}
|
||||||
|
);
|
||||||
|
|
||||||
|
hintTable[RHT_TWINROVA_SOUL] = HintText::Item({
|
||||||
|
//obscure text
|
||||||
|
Text{"old souls", "", ""},
|
||||||
|
Text{"twin essences", "", ""},
|
||||||
|
}, {
|
||||||
|
//ambiguous text
|
||||||
|
Text{"something spiritual", "", ""}
|
||||||
|
}, {
|
||||||
|
//clear text
|
||||||
|
Text{"the soul of Twinrova", "", ""}}
|
||||||
|
);
|
||||||
|
|
||||||
|
hintTable[RHT_GANON_SOUL] = HintText::Item({
|
||||||
|
//obscure text
|
||||||
|
Text{"an evil soul", "", ""},
|
||||||
|
Text{"some powerful essence", "", ""},
|
||||||
|
}, {
|
||||||
|
//ambiguous text
|
||||||
|
Text{"something strong", "", ""}
|
||||||
|
}, {
|
||||||
|
//clear text
|
||||||
|
Text{"the soul of Ganon", "", ""}}
|
||||||
|
);
|
||||||
|
|
||||||
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"},
|
||||||
|
@ -829,6 +829,30 @@ void GenerateItemPool() {
|
|||||||
ctx->PlaceItemInLocation(RC_KAK_100_GOLD_SKULLTULA_REWARD, RG_HUGE_RUPEE, false, true);
|
ctx->PlaceItemInLocation(RC_KAK_100_GOLD_SKULLTULA_REWARD, RG_HUGE_RUPEE, false, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (ctx->GetOption(RSK_SHUFFLE_BOSS_SOULS)) {
|
||||||
|
AddItemToMainPool(RG_GOHMA_SOUL);
|
||||||
|
AddItemToMainPool(RG_KING_DODONGO_SOUL);
|
||||||
|
AddItemToMainPool(RG_BARINADE_SOUL);
|
||||||
|
AddItemToMainPool(RG_PHANTOM_GANON_SOUL);
|
||||||
|
AddItemToMainPool(RG_VOLVAGIA_SOUL);
|
||||||
|
AddItemToMainPool(RG_MORPHA_SOUL);
|
||||||
|
AddItemToMainPool(RG_BONGO_BONGO_SOUL);
|
||||||
|
AddItemToMainPool(RG_TWINROVA_SOUL);
|
||||||
|
|
||||||
|
ctx->possibleIceTrapModels.push_back(RG_GOHMA_SOUL);
|
||||||
|
ctx->possibleIceTrapModels.push_back(RG_KING_DODONGO_SOUL);
|
||||||
|
ctx->possibleIceTrapModels.push_back(RG_BARINADE_SOUL);
|
||||||
|
ctx->possibleIceTrapModels.push_back(RG_PHANTOM_GANON_SOUL);
|
||||||
|
ctx->possibleIceTrapModels.push_back(RG_VOLVAGIA_SOUL);
|
||||||
|
ctx->possibleIceTrapModels.push_back(RG_MORPHA_SOUL);
|
||||||
|
ctx->possibleIceTrapModels.push_back(RG_BONGO_BONGO_SOUL);
|
||||||
|
ctx->possibleIceTrapModels.push_back(RG_TWINROVA_SOUL);
|
||||||
|
if (ctx->GetOption(RSK_SHUFFLE_BOSS_SOULS).Is(RO_BOSS_SOULS_ON_PLUS_GANON)) {
|
||||||
|
AddItemToMainPool(RG_GANON_SOUL);
|
||||||
|
ctx->possibleIceTrapModels.push_back(RG_GANON_SOUL);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
if (ctx->GetOption(RSK_BOMBCHUS_IN_LOGIC)) {
|
if (ctx->GetOption(RSK_BOMBCHUS_IN_LOGIC)) {
|
||||||
AddItemToMainPool(RG_PROGRESSIVE_BOMBCHUS, 5);
|
AddItemToMainPool(RG_PROGRESSIVE_BOMBCHUS, 5);
|
||||||
} else {
|
} else {
|
||||||
|
0
soh/soh/Enhancements/randomizer/3drando/keys.hpp
Normal file
0
soh/soh/Enhancements/randomizer/3drando/keys.hpp
Normal file
@ -254,9 +254,9 @@ void AreaTable_Init_DekuTree() {
|
|||||||
{
|
{
|
||||||
// Events
|
// Events
|
||||||
EventAccess(&DekuTreeClear, { [] {
|
EventAccess(&DekuTreeClear, { [] {
|
||||||
return DekuTreeClear ||
|
return DekuTreeClear || (HasBossSoul(RG_GOHMA_SOUL) &&
|
||||||
(CanJumpslash && (Nuts || CanUse(RG_FAIRY_SLINGSHOT) || CanUse(RG_FAIRY_BOW) ||
|
(CanJumpslash && (Nuts || CanUse(RG_FAIRY_SLINGSHOT) || CanUse(RG_FAIRY_BOW) ||
|
||||||
HookshotOrBoomerang));
|
HookshotOrBoomerang)));
|
||||||
}}),
|
}}),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -294,10 +294,10 @@ void AreaTable_Init_DodongosCavern() {
|
|||||||
// Events
|
// Events
|
||||||
EventAccess(&DodongosCavernClear,
|
EventAccess(&DodongosCavernClear,
|
||||||
{ [] {
|
{ [] {
|
||||||
return DodongosCavernClear ||
|
return DodongosCavernClear || (HasBossSoul(RG_KING_DODONGO_SOUL) &&
|
||||||
(Here(RR_DODONGOS_CAVERN_BOSS_ROOM,
|
(Here(RR_DODONGOS_CAVERN_BOSS_ROOM,
|
||||||
[] { return HasExplosives || (CanUse(RG_MEGATON_HAMMER) && randoCtx->GetTrickOption(RT_DC_HAMMER_FLOOR)); }) &&
|
[] { return HasExplosives || (CanUse(RG_MEGATON_HAMMER) && randoCtx->GetTrickOption(RT_DC_HAMMER_FLOOR)); }) &&
|
||||||
(Bombs || GoronBracelet) && CanJumpslash); /*todo add chu kill to tricks*/
|
(Bombs || GoronBracelet) && CanJumpslash)); /*todo add chu kill to tricks*/
|
||||||
}}),
|
}}),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -410,7 +410,7 @@ void AreaTable_Init_FireTemple() {
|
|||||||
{
|
{
|
||||||
// Events
|
// Events
|
||||||
EventAccess(&FireTempleClear,
|
EventAccess(&FireTempleClear,
|
||||||
{ [] { return FireTempleClear || (FireTimer >= 64 && CanUse(RG_MEGATON_HAMMER)); }}),
|
{ [] { return FireTempleClear || (HasBossSoul(RG_VOLVAGIA_SOUL) && (FireTimer >= 64 && CanUse(RG_MEGATON_HAMMER))); }}),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
// Locations
|
// Locations
|
||||||
|
@ -421,8 +421,8 @@ void AreaTable_Init_ForestTemple() {
|
|||||||
{
|
{
|
||||||
// Events
|
// Events
|
||||||
EventAccess(&ForestTempleClear, { [] {
|
EventAccess(&ForestTempleClear, { [] {
|
||||||
return ForestTempleClear || ((CanUse(RG_KOKIRI_SWORD) || CanUse(RG_MASTER_SWORD) || CanUse(RG_BIGGORON_SWORD)) &&
|
return ForestTempleClear || (HasBossSoul(RG_PHANTOM_GANON_SOUL) && ((CanUse(RG_KOKIRI_SWORD) || CanUse(RG_MASTER_SWORD) || CanUse(RG_BIGGORON_SWORD)) &&
|
||||||
(CanUse(RG_HOOKSHOT) || CanUse(RG_FAIRY_BOW) || CanUse(RG_FAIRY_SLINGSHOT)));
|
(CanUse(RG_HOOKSHOT) || CanUse(RG_FAIRY_BOW) || CanUse(RG_FAIRY_SLINGSHOT))));
|
||||||
} }),
|
} }),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -117,7 +117,7 @@ void AreaTable_Init_GanonsCastle() {
|
|||||||
//Locations
|
//Locations
|
||||||
LocationAccess(RC_GANONS_TOWER_BOSS_KEY_CHEST, {[]{return CanUse(RG_KOKIRI_SWORD) || CanUse(RG_MASTER_SWORD) || CanUse(RG_BIGGORON_SWORD);}}),
|
LocationAccess(RC_GANONS_TOWER_BOSS_KEY_CHEST, {[]{return CanUse(RG_KOKIRI_SWORD) || CanUse(RG_MASTER_SWORD) || CanUse(RG_BIGGORON_SWORD);}}),
|
||||||
LocationAccess(RC_GANONDORF_HINT, {[]{return BossKeyGanonsCastle && (CanUse(RG_KOKIRI_SWORD) || CanUse(RG_MASTER_SWORD) || CanUse(RG_BIGGORON_SWORD));}}),
|
LocationAccess(RC_GANONDORF_HINT, {[]{return BossKeyGanonsCastle && (CanUse(RG_KOKIRI_SWORD) || CanUse(RG_MASTER_SWORD) || CanUse(RG_BIGGORON_SWORD));}}),
|
||||||
LocationAccess(RC_GANON, {[]{return BossKeyGanonsCastle && CanUse(RG_LIGHT_ARROWS) && CanUse(RG_MASTER_SWORD);}}),
|
LocationAccess(RC_GANON, {[]{return HasBossSoul(RG_GANON_SOUL) && BossKeyGanonsCastle && CanUse(RG_LIGHT_ARROWS) && CanUse(RG_MASTER_SWORD);}}),
|
||||||
}, {});
|
}, {});
|
||||||
|
|
||||||
/*---------------------------
|
/*---------------------------
|
||||||
|
@ -235,7 +235,7 @@ void AreaTable_Init_JabuJabusBelly() {
|
|||||||
{
|
{
|
||||||
// Events //todo: add pot kill trick
|
// Events //todo: add pot kill trick
|
||||||
EventAccess(&JabuJabusBellyClear,
|
EventAccess(&JabuJabusBellyClear,
|
||||||
{ [] { return JabuJabusBellyClear || (CanUse(RG_BOOMERANG) && CanJumpslash); } }),
|
{ [] { return JabuJabusBellyClear || (HasBossSoul(RG_BARINADE_SOUL) && (CanUse(RG_BOOMERANG) && CanJumpslash)); } }),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
// Locations
|
// Locations
|
||||||
|
@ -195,10 +195,10 @@ void AreaTable_Init_ShadowTemple() {
|
|||||||
{
|
{
|
||||||
// Events
|
// Events
|
||||||
EventAccess(&ShadowTempleClear, { [] {
|
EventAccess(&ShadowTempleClear, { [] {
|
||||||
return ShadowTempleClear ||
|
return ShadowTempleClear || (HasBossSoul(RG_BONGO_BONGO_SOUL) &&
|
||||||
((CanUse(RG_LENS_OF_TRUTH) || randoCtx->GetTrickOption(RT_LENS_BONGO)) &&
|
((CanUse(RG_LENS_OF_TRUTH) || randoCtx->GetTrickOption(RT_LENS_BONGO)) &&
|
||||||
(CanUse(RG_KOKIRI_SWORD) || CanUse(RG_MASTER_SWORD) || CanUse(RG_BIGGORON_SWORD)) &&
|
(CanUse(RG_KOKIRI_SWORD) || CanUse(RG_MASTER_SWORD) || CanUse(RG_BIGGORON_SWORD)) &&
|
||||||
(CanUse(RG_HOOKSHOT) || CanUse(RG_FAIRY_BOW) || CanUse(RG_FAIRY_SLINGSHOT) || randoCtx->GetTrickOption(RT_SHADOW_BONGO)));
|
(CanUse(RG_HOOKSHOT) || CanUse(RG_FAIRY_BOW) || CanUse(RG_FAIRY_SLINGSHOT) || randoCtx->GetTrickOption(RT_SHADOW_BONGO))));
|
||||||
} }),
|
} }),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -259,8 +259,8 @@ void AreaTable_Init_SpiritTemple() {
|
|||||||
{
|
{
|
||||||
// Events
|
// Events
|
||||||
EventAccess(&SpiritTempleClear, { [] {
|
EventAccess(&SpiritTempleClear, { [] {
|
||||||
return SpiritTempleClear || (CanUse(RG_MIRROR_SHIELD) &&
|
return SpiritTempleClear || (HasBossSoul(RG_TWINROVA_SOUL) && (CanUse(RG_MIRROR_SHIELD) &&
|
||||||
(CanUse(RG_KOKIRI_SWORD) || CanUse(RG_MASTER_SWORD) || CanUse(RG_BIGGORON_SWORD)));
|
(CanUse(RG_KOKIRI_SWORD) || CanUse(RG_MASTER_SWORD) || CanUse(RG_BIGGORON_SWORD))));
|
||||||
} }),
|
} }),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -319,8 +319,8 @@ void AreaTable_Init_WaterTemple() {
|
|||||||
{
|
{
|
||||||
// Events
|
// Events
|
||||||
EventAccess(&WaterTempleClear, { [] {
|
EventAccess(&WaterTempleClear, { [] {
|
||||||
return WaterTempleClear ||
|
return WaterTempleClear || (HasBossSoul(RG_MORPHA_SOUL) &&
|
||||||
(CanUse(RG_HOOKSHOT) && (CanUse(RG_KOKIRI_SWORD) || CanUse(RG_MASTER_SWORD) || CanUse(RG_BIGGORON_SWORD)));
|
(CanUse(RG_HOOKSHOT) && (CanUse(RG_KOKIRI_SWORD) || CanUse(RG_MASTER_SWORD) || CanUse(RG_BIGGORON_SWORD))));
|
||||||
} }),
|
} }),
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
|
@ -315,6 +315,16 @@ namespace Logic {
|
|||||||
uint8_t Age = 0;
|
uint8_t Age = 0;
|
||||||
bool CanCompleteTriforce = false;
|
bool CanCompleteTriforce = false;
|
||||||
|
|
||||||
|
bool CanSummonGohma = false;
|
||||||
|
bool CanSummonKingDodongo = false;
|
||||||
|
bool CanSummonBarinade = false;
|
||||||
|
bool CanSummonPhantomGanon = false;
|
||||||
|
bool CanSummonVolvagia = false;
|
||||||
|
bool CanSummonMorpha = false;
|
||||||
|
bool CanSummonBongoBongo = false;
|
||||||
|
bool CanSummonTwinrova = false;
|
||||||
|
bool CanSummonGanon = false;
|
||||||
|
|
||||||
//Events
|
//Events
|
||||||
bool ShowedMidoSwordAndShield = false;
|
bool ShowedMidoSwordAndShield = false;
|
||||||
bool CarpenterRescue = false;
|
bool CarpenterRescue = false;
|
||||||
@ -466,6 +476,35 @@ namespace Logic {
|
|||||||
(age == HasProjectileAge::Either && (Slingshot || Boomerang || Hookshot || Bow));
|
(age == HasProjectileAge::Either && (Slingshot || Boomerang || Hookshot || Bow));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
bool HasBossSoul(RandomizerGet itemName) {
|
||||||
|
auto ctx = Rando::Context::GetInstance();
|
||||||
|
if (!ctx->GetOption(RSK_SHUFFLE_BOSS_SOULS)) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
switch(itemName) {
|
||||||
|
case RG_GOHMA_SOUL:
|
||||||
|
return CanSummonGohma; break;
|
||||||
|
case RG_KING_DODONGO_SOUL:
|
||||||
|
return CanSummonKingDodongo; break;
|
||||||
|
case RG_BARINADE_SOUL:
|
||||||
|
return CanSummonBarinade; break;
|
||||||
|
case RG_PHANTOM_GANON_SOUL:
|
||||||
|
return CanSummonPhantomGanon; break;
|
||||||
|
case RG_VOLVAGIA_SOUL:
|
||||||
|
return CanSummonVolvagia; break;
|
||||||
|
case RG_MORPHA_SOUL:
|
||||||
|
return CanSummonMorpha; break;
|
||||||
|
case RG_BONGO_BONGO_SOUL:
|
||||||
|
return CanSummonBongoBongo; break;
|
||||||
|
case RG_TWINROVA_SOUL:
|
||||||
|
return CanSummonTwinrova; break;
|
||||||
|
case RG_GANON_SOUL:
|
||||||
|
return ctx->GetOption(RSK_SHUFFLE_BOSS_SOULS).Is(RO_BOSS_SOULS_ON_PLUS_GANON) ? CanSummonGanon : true;
|
||||||
|
break;
|
||||||
|
default: break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
uint8_t GetDifficultyValueFromString(Rando::Option& glitchOption) {
|
uint8_t GetDifficultyValueFromString(Rando::Option& glitchOption) {
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
@ -892,6 +931,17 @@ namespace Logic {
|
|||||||
//Triforce Pieces
|
//Triforce Pieces
|
||||||
TriforcePieces = 0;
|
TriforcePieces = 0;
|
||||||
|
|
||||||
|
//Boss Souls
|
||||||
|
CanSummonGohma = false;
|
||||||
|
CanSummonKingDodongo = false;
|
||||||
|
CanSummonBarinade = false;
|
||||||
|
CanSummonPhantomGanon = false;
|
||||||
|
CanSummonVolvagia = false;
|
||||||
|
CanSummonMorpha = false;
|
||||||
|
CanSummonBongoBongo = false;
|
||||||
|
CanSummonTwinrova = false;
|
||||||
|
CanSummonGanon = false;
|
||||||
|
|
||||||
//Drops and Bottle Contents Access
|
//Drops and Bottle Contents Access
|
||||||
DekuNutDrop = false;
|
DekuNutDrop = false;
|
||||||
NutPot = false;
|
NutPot = false;
|
||||||
|
@ -307,6 +307,16 @@ extern bool LinksCow;
|
|||||||
extern uint8_t Age;
|
extern uint8_t Age;
|
||||||
extern bool CanCompleteTriforce;
|
extern bool CanCompleteTriforce;
|
||||||
|
|
||||||
|
extern bool CanSummonGohma;
|
||||||
|
extern bool CanSummonKingDodongo;
|
||||||
|
extern bool CanSummonBarinade;
|
||||||
|
extern bool CanSummonPhantomGanon;
|
||||||
|
extern bool CanSummonVolvagia;
|
||||||
|
extern bool CanSummonMorpha;
|
||||||
|
extern bool CanSummonBongoBongo;
|
||||||
|
extern bool CanSummonTwinrova;
|
||||||
|
extern bool CanSummonGanon;
|
||||||
|
|
||||||
// Events
|
// Events
|
||||||
extern bool ShowedMidoSwordAndShield;
|
extern bool ShowedMidoSwordAndShield;
|
||||||
extern bool CarpenterRescue;
|
extern bool CarpenterRescue;
|
||||||
@ -371,6 +381,7 @@ void UpdateHelpers();
|
|||||||
bool CanPlay(bool song);
|
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 SmallKeys(RandomizerRegion dungeon, uint8_t requiredAmount);
|
bool SmallKeys(RandomizerRegion dungeon, uint8_t requiredAmount);
|
||||||
bool SmallKeys(RandomizerRegion dungeon, uint8_t requiredAmountGlitchless, uint8_t requiredAmountGlitched);
|
bool SmallKeys(RandomizerRegion dungeon, uint8_t requiredAmountGlitchless, uint8_t requiredAmountGlitched);
|
||||||
bool CanDoGlitch(GlitchType glitch);
|
bool CanDoGlitch(GlitchType glitch);
|
||||||
|
@ -10,7 +10,7 @@
|
|||||||
|
|
||||||
std::vector<ItemAndPrice> NonShopItems = {};
|
std::vector<ItemAndPrice> NonShopItems = {};
|
||||||
|
|
||||||
static std::array<std::vector<Text>, 0xE1> trickNameTable; // Table of trick names for ice traps
|
static std::array<std::vector<Text>, 0xF0> trickNameTable; // Table of trick names for ice traps
|
||||||
bool initTrickNames = false; //Indicates if trick ice trap names have been initialized yet
|
bool initTrickNames = false; //Indicates if trick ice trap names have been initialized yet
|
||||||
|
|
||||||
//Set vanilla shop item locations before potentially shuffling
|
//Set vanilla shop item locations before potentially shuffling
|
||||||
@ -703,6 +703,42 @@ void InitTrickNames() {
|
|||||||
Text{"Piece of Cheese", "Morceau de Fromage", "Piece of Cheese"},
|
Text{"Piece of Cheese", "Morceau de Fromage", "Piece of Cheese"},
|
||||||
Text{"Triforce Shard", "Éclat de Triforce", "Triforce Shard"},
|
Text{"Triforce Shard", "Éclat de Triforce", "Triforce Shard"},
|
||||||
Text{"Shiny Rock", "Caiiloux Brillant", "Shiny Rock"}};
|
Text{"Shiny Rock", "Caiiloux Brillant", "Shiny Rock"}};
|
||||||
|
trickNameTable[RG_GOHMA_SOUL] = {
|
||||||
|
Text{"Spider Sense", "", ""},
|
||||||
|
Text{"Deku Spirit", "", ""},
|
||||||
|
Text("Ghost of Ghoma", "", "")};
|
||||||
|
trickNameTable[RG_KING_DODONGO_SOUL] = {
|
||||||
|
Text{"Lizard Soul", "", ""},
|
||||||
|
Text{"Regal Remains", "", ""},
|
||||||
|
Text{"Dodongo's Core", "", ""}};
|
||||||
|
trickNameTable[RG_BARINADE_SOUL] = {
|
||||||
|
Text{"Parasitic Poltergeist", "", ""},
|
||||||
|
Text{"Jabu Insides", "", ""},
|
||||||
|
Text{"Barinade Bacteria", "", ""}};
|
||||||
|
trickNameTable[RG_PHANTOM_GANON_SOUL] = {
|
||||||
|
Text{"Bigger Poe", "", ""},
|
||||||
|
Text{"Sacred Forest Pine Tree", "", ""},
|
||||||
|
Text{"Ganon's Phantom", "", ""}};
|
||||||
|
trickNameTable[RG_VOLVAGIA_SOUL] = {
|
||||||
|
Text{"Dragon Roast", "", ""},
|
||||||
|
Text{"Hot n' Ready", "", ""},
|
||||||
|
Text{"Volvagia's Vitality", "", ""}};
|
||||||
|
trickNameTable[RG_MORPHA_SOUL] = {
|
||||||
|
Text{"Dihydrogen Monoxide", "", ""},
|
||||||
|
Text{"Morpha Molecules", "", ""},
|
||||||
|
Text{"Wet Stuff", "", ""}};
|
||||||
|
trickNameTable[RG_BONGO_BONGO_SOUL] = {
|
||||||
|
Text{"Shadow Soul", "", ""},
|
||||||
|
Text{"Dark Essence", "", ""},
|
||||||
|
Text{"Bongo Bongo's Bongo", "", ""}};
|
||||||
|
trickNameTable[RG_TWINROVA_SOUL] = {
|
||||||
|
Text{"Sandy Ashes", "", ""},
|
||||||
|
Text{"Spiritual Spirit", "", ""},
|
||||||
|
Text{"Twin Rovers", "", ""}};
|
||||||
|
trickNameTable[RG_GANON_SOUL] = {
|
||||||
|
Text{"Pure Evil", "", ""},
|
||||||
|
Text{"Ganon's Ghost", "", ""},
|
||||||
|
Text{"Pork", "", ""}};
|
||||||
|
|
||||||
/*
|
/*
|
||||||
//Names for individual upgrades, in case progressive names are replaced
|
//Names for individual upgrades, in case progressive names are replaced
|
||||||
|
@ -10,6 +10,7 @@
|
|||||||
#include "objects/object_gi_key/object_gi_key.h"
|
#include "objects/object_gi_key/object_gi_key.h"
|
||||||
#include "objects/object_gi_bosskey/object_gi_bosskey.h"
|
#include "objects/object_gi_bosskey/object_gi_bosskey.h"
|
||||||
#include "objects/object_gi_hearts/object_gi_hearts.h"
|
#include "objects/object_gi_hearts/object_gi_hearts.h"
|
||||||
|
#include "objects/object_gi_fire/object_gi_fire.h"
|
||||||
#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"
|
||||||
@ -277,3 +278,52 @@ extern "C" void Randomizer_DrawTriforcePieceGI(PlayState* play, GetItemEntry get
|
|||||||
}
|
}
|
||||||
CLOSE_DISPS(play->state.gfxCtx);
|
CLOSE_DISPS(play->state.gfxCtx);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
extern "C" void Randomizer_DrawBossSoul(PlayState* play, GetItemEntry* getItemEntry) {
|
||||||
|
s16 slot = getItemEntry->getItemId - RG_GOHMA_SOUL;
|
||||||
|
s16 flameColors[9][3] = {
|
||||||
|
{ 0, 255, 0 }, // Gohma
|
||||||
|
{ 255, 0, 100 }, // King Dodongo
|
||||||
|
{ 50, 255, 255}, // Barinade
|
||||||
|
{ 4, 195, 46 }, // Phantom Ganon
|
||||||
|
{ 237, 95, 95 }, // Volvagia
|
||||||
|
{ 85, 180, 223 }, // Morpha
|
||||||
|
{ 126, 16, 177 }, // Bongo Bongo
|
||||||
|
{ 222, 158, 47 }, // Twinrova
|
||||||
|
{ 80, 80, 80 }, // Ganon/Dorf
|
||||||
|
};
|
||||||
|
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);
|
||||||
|
if (slot == 8) { // For Ganon only...
|
||||||
|
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 0, 0, 0, 255);
|
||||||
|
} else {
|
||||||
|
gDPSetPrimColor(POLY_XLU_DISP++, 0, 0, 255, 255, 255, 255);
|
||||||
|
}
|
||||||
|
gSPDisplayList(POLY_XLU_DISP++, (Gfx*)gBossSoulSkullDL);
|
||||||
|
|
||||||
|
if (slot >= 0) {
|
||||||
|
Gfx_SetupDL_25Xlu(play->state.gfxCtx);
|
||||||
|
gSPSegment(POLY_XLU_DISP++, 8, (uintptr_t)Gfx_TwoTexScroll(
|
||||||
|
play->state.gfxCtx, 0, 0 * (play->state.frames * 0),
|
||||||
|
0 * (play->state.frames * 0), 16, 32, 1, 1 * (play->state.frames * 1),
|
||||||
|
-1 * (play->state.frames * 8), 16, 32
|
||||||
|
));
|
||||||
|
Matrix_Push();
|
||||||
|
Matrix_Translate(0.0f, -70.0f, 0.0f, MTXMODE_APPLY);
|
||||||
|
Matrix_Scale(5.0f, 5.0f, 5.0f, MTXMODE_APPLY);
|
||||||
|
Matrix_ReplaceRotation(&play->billboardMtxF);
|
||||||
|
gSPMatrix(POLY_XLU_DISP++, Matrix_NewMtx(play->state.gfxCtx, (char*)__FILE__, __LINE__),
|
||||||
|
G_MTX_MODELVIEW | G_MTX_LOAD);
|
||||||
|
gDPSetGrayscaleColor(POLY_XLU_DISP++, flameColors[slot][0], flameColors[slot][1], flameColors[slot][2], 255);
|
||||||
|
gSPGrayscale(POLY_XLU_DISP++, true);
|
||||||
|
gSPDisplayList(POLY_XLU_DISP++, (Gfx*)gGiBlueFireFlameDL);
|
||||||
|
gSPGrayscale(POLY_XLU_DISP++, false);
|
||||||
|
Matrix_Pop();
|
||||||
|
}
|
||||||
|
|
||||||
|
CLOSE_DISPS(play->state.gfxCtx);
|
||||||
|
|
||||||
|
}
|
||||||
|
@ -12,6 +12,7 @@ extern "C" {
|
|||||||
void Randomizer_DrawSmallKey(PlayState* play, GetItemEntry* getItemEntry);
|
void Randomizer_DrawSmallKey(PlayState* play, GetItemEntry* getItemEntry);
|
||||||
void Randomizer_DrawKeyRing(PlayState* play, GetItemEntry* getItemEntry);
|
void Randomizer_DrawKeyRing(PlayState* play, GetItemEntry* getItemEntry);
|
||||||
void Randomizer_DrawBossKey(PlayState* play, GetItemEntry* getItemEntry);
|
void Randomizer_DrawBossKey(PlayState* play, GetItemEntry* getItemEntry);
|
||||||
|
void Randomizer_DrawBossSoul(PlayState* play, GetItemEntry* getItemEntry);
|
||||||
void Randomizer_DrawDoubleDefense(PlayState* play, GetItemEntry* getItemEntry);
|
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);
|
||||||
|
@ -94,26 +94,26 @@ void Rando::StaticData::InitItemTable() {
|
|||||||
itemTable[RG_REQUIEM_OF_SPIRIT] = Item(RG_REQUIEM_OF_SPIRIT, Text{ "Requiem of Spirit", "Requiem des Esprits", "Requiem des Geistes" }, ITEMTYPE_SONG, 0xBE, true, &Logic::RequiemOfSpirit, RHT_REQUIEM_OF_SPIRIT, ITEM_SONG_REQUIEM, OBJECT_GI_MELODY, GID_SONG_REQUIEM, 0x76, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_MAJOR, MOD_NONE);
|
itemTable[RG_REQUIEM_OF_SPIRIT] = Item(RG_REQUIEM_OF_SPIRIT, Text{ "Requiem of Spirit", "Requiem des Esprits", "Requiem des Geistes" }, ITEMTYPE_SONG, 0xBE, true, &Logic::RequiemOfSpirit, RHT_REQUIEM_OF_SPIRIT, ITEM_SONG_REQUIEM, OBJECT_GI_MELODY, GID_SONG_REQUIEM, 0x76, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_MAJOR, MOD_NONE);
|
||||||
itemTable[RG_PRELUDE_OF_LIGHT] = Item(RG_PRELUDE_OF_LIGHT, Text{ "Prelude of Light", "Prélude de la Lumière", "Präludium des Lichts" }, ITEMTYPE_SONG, 0xC0, true, &Logic::PreludeOfLight, RHT_PRELUDE_OF_LIGHT, ITEM_SONG_PRELUDE, OBJECT_GI_MELODY, GID_SONG_PRELUDE, 0x78, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_MAJOR, MOD_NONE);
|
itemTable[RG_PRELUDE_OF_LIGHT] = Item(RG_PRELUDE_OF_LIGHT, Text{ "Prelude of Light", "Prélude de la Lumière", "Präludium des Lichts" }, ITEMTYPE_SONG, 0xC0, true, &Logic::PreludeOfLight, RHT_PRELUDE_OF_LIGHT, ITEM_SONG_PRELUDE, OBJECT_GI_MELODY, GID_SONG_PRELUDE, 0x78, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_MAJOR, MOD_NONE);
|
||||||
// Maps and Compasses
|
// Maps and Compasses
|
||||||
itemTable[RG_DEKU_TREE_MAP] = Item(RG_DEKU_TREE_MAP, Text{ "Great Deku Tree Map", "Carte de l'Arbre Mojo", "Karte des Deku-Baums" }, ITEMTYPE_MAP, 0xA5, false, &Logic::noVariable, RHT_DEKU_TREE_MAP, RG_DEKU_TREE_MAP, OBJECT_GI_MAP, GID_DUNGEON_MAP, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
itemTable[RG_DEKU_TREE_MAP] = Item(RG_DEKU_TREE_MAP, Text{ "Great Deku Tree Map", "Carte de l'Arbre Mojo", "Karte des Deku-Baums" }, ITEMTYPE_MAP, 0xA5, false, &Logic::noVariable, RHT_DEKU_TREE_MAP, RG_DEKU_TREE_MAP, OBJECT_GI_MAP, GID_DUNGEON_MAP, TEXT_ITEM_DUNGEON_MAP, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
||||||
itemTable[RG_DODONGOS_CAVERN_MAP] = Item(RG_DODONGOS_CAVERN_MAP, Text{ "Dodongo's Cavern Map", "Carte de la Caverne Dodongo", "Karte der Dodongo-Höhle" }, ITEMTYPE_MAP, 0xA6, false, &Logic::noVariable, RHT_DODONGOS_CAVERN_MAP, RG_DODONGOS_CAVERN_MAP, OBJECT_GI_MAP, GID_DUNGEON_MAP, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
itemTable[RG_DODONGOS_CAVERN_MAP] = Item(RG_DODONGOS_CAVERN_MAP, Text{ "Dodongo's Cavern Map", "Carte de la Caverne Dodongo", "Karte der Dodongo-Höhle" }, ITEMTYPE_MAP, 0xA6, false, &Logic::noVariable, RHT_DODONGOS_CAVERN_MAP, RG_DODONGOS_CAVERN_MAP, OBJECT_GI_MAP, GID_DUNGEON_MAP, TEXT_ITEM_DUNGEON_MAP, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
||||||
itemTable[RG_JABU_JABUS_BELLY_MAP] = Item(RG_JABU_JABUS_BELLY_MAP, Text{ "Jabu-Jabu's Belly Map", "Carte du Ventre de Jabu-Jabu", "Karte des Jabu-Jabu-Bauchs" }, ITEMTYPE_MAP, 0xA7, false, &Logic::noVariable, RHT_JABU_JABUS_BELLY_MAP, RG_JABU_JABUS_BELLY_MAP, OBJECT_GI_MAP, GID_DUNGEON_MAP, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
itemTable[RG_JABU_JABUS_BELLY_MAP] = Item(RG_JABU_JABUS_BELLY_MAP, Text{ "Jabu-Jabu's Belly Map", "Carte du Ventre de Jabu-Jabu", "Karte des Jabu-Jabu-Bauchs" }, ITEMTYPE_MAP, 0xA7, false, &Logic::noVariable, RHT_JABU_JABUS_BELLY_MAP, RG_JABU_JABUS_BELLY_MAP, OBJECT_GI_MAP, GID_DUNGEON_MAP, TEXT_ITEM_DUNGEON_MAP, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
||||||
itemTable[RG_FOREST_TEMPLE_MAP] = Item(RG_FOREST_TEMPLE_MAP, Text{ "Forest Temple Map", "Carte du Temple de la Forêt", "Waldtempel Karte" }, ITEMTYPE_MAP, 0xA8, false, &Logic::noVariable, RHT_FOREST_TEMPLE_MAP, RG_FOREST_TEMPLE_MAP, OBJECT_GI_MAP, GID_DUNGEON_MAP, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
itemTable[RG_FOREST_TEMPLE_MAP] = Item(RG_FOREST_TEMPLE_MAP, Text{ "Forest Temple Map", "Carte du Temple de la Forêt", "Waldtempel Karte" }, ITEMTYPE_MAP, 0xA8, false, &Logic::noVariable, RHT_FOREST_TEMPLE_MAP, RG_FOREST_TEMPLE_MAP, OBJECT_GI_MAP, GID_DUNGEON_MAP, TEXT_ITEM_DUNGEON_MAP, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
||||||
itemTable[RG_FIRE_TEMPLE_MAP] = Item(RG_FIRE_TEMPLE_MAP, Text{ "Fire Temple Map", "Carte due Temple de Feu", "Feuertempel Karte" }, ITEMTYPE_MAP, 0xA9, false, &Logic::noVariable, RHT_FIRE_TEMPLE_MAP, RG_FIRE_TEMPLE_MAP, OBJECT_GI_MAP, GID_DUNGEON_MAP, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
itemTable[RG_FIRE_TEMPLE_MAP] = Item(RG_FIRE_TEMPLE_MAP, Text{ "Fire Temple Map", "Carte due Temple de Feu", "Feuertempel Karte" }, ITEMTYPE_MAP, 0xA9, false, &Logic::noVariable, RHT_FIRE_TEMPLE_MAP, RG_FIRE_TEMPLE_MAP, OBJECT_GI_MAP, GID_DUNGEON_MAP, TEXT_ITEM_DUNGEON_MAP, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
||||||
itemTable[RG_WATER_TEMPLE_MAP] = Item(RG_WATER_TEMPLE_MAP, Text{ "Water Temple Map", "Carte du Temple de l'Eau", "Wassertempel-Karte" }, ITEMTYPE_MAP, 0xAA, false, &Logic::noVariable, RHT_WATER_TEMPLE_MAP, RG_WATER_TEMPLE_MAP, OBJECT_GI_MAP, GID_DUNGEON_MAP, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
itemTable[RG_WATER_TEMPLE_MAP] = Item(RG_WATER_TEMPLE_MAP, Text{ "Water Temple Map", "Carte du Temple de l'Eau", "Wassertempel-Karte" }, ITEMTYPE_MAP, 0xAA, false, &Logic::noVariable, RHT_WATER_TEMPLE_MAP, RG_WATER_TEMPLE_MAP, OBJECT_GI_MAP, GID_DUNGEON_MAP, TEXT_ITEM_DUNGEON_MAP, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
||||||
itemTable[RG_SPIRIT_TEMPLE_MAP] = Item(RG_SPIRIT_TEMPLE_MAP, Text{ "Spirit Temple Map", "Carte due Temple de l'Esprit", "Geistertempel Karte" }, ITEMTYPE_MAP, 0xAB, false, &Logic::noVariable, RHT_SPIRIT_TEMPLE_MAP, RG_SPIRIT_TEMPLE_MAP, OBJECT_GI_MAP, GID_DUNGEON_MAP, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
itemTable[RG_SPIRIT_TEMPLE_MAP] = Item(RG_SPIRIT_TEMPLE_MAP, Text{ "Spirit Temple Map", "Carte due Temple de l'Esprit", "Geistertempel Karte" }, ITEMTYPE_MAP, 0xAB, false, &Logic::noVariable, RHT_SPIRIT_TEMPLE_MAP, RG_SPIRIT_TEMPLE_MAP, OBJECT_GI_MAP, GID_DUNGEON_MAP, TEXT_ITEM_DUNGEON_MAP, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
||||||
itemTable[RG_SHADOW_TEMPLE_MAP] = Item(RG_SHADOW_TEMPLE_MAP, Text{ "Shadow Temple Map", "Carte du Temple de l'Ombre", "Karte des Schattentempels" }, ITEMTYPE_MAP, 0xAC, false, &Logic::noVariable, RHT_SHADOW_TEMPLE_MAP, RG_SHADOW_TEMPLE_MAP, OBJECT_GI_MAP, GID_DUNGEON_MAP, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
itemTable[RG_SHADOW_TEMPLE_MAP] = Item(RG_SHADOW_TEMPLE_MAP, Text{ "Shadow Temple Map", "Carte du Temple de l'Ombre", "Karte des Schattentempels" }, ITEMTYPE_MAP, 0xAC, false, &Logic::noVariable, RHT_SHADOW_TEMPLE_MAP, RG_SHADOW_TEMPLE_MAP, OBJECT_GI_MAP, GID_DUNGEON_MAP, TEXT_ITEM_DUNGEON_MAP, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
||||||
itemTable[RG_BOTTOM_OF_THE_WELL_MAP] = Item(RG_BOTTOM_OF_THE_WELL_MAP, Text{ "Bottom of the Well Map", "Carte du Puits", "Boden des Brunnens Karte" }, ITEMTYPE_MAP, 0xAD, false, &Logic::noVariable, RHT_BOTTOM_OF_THE_WELL_MAP, RG_BOTTOM_OF_THE_WELL_MAP, OBJECT_GI_MAP, GID_DUNGEON_MAP, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
itemTable[RG_BOTTOM_OF_THE_WELL_MAP] = Item(RG_BOTTOM_OF_THE_WELL_MAP, Text{ "Bottom of the Well Map", "Carte du Puits", "Boden des Brunnens Karte" }, ITEMTYPE_MAP, 0xAD, false, &Logic::noVariable, RHT_BOTTOM_OF_THE_WELL_MAP, RG_BOTTOM_OF_THE_WELL_MAP, OBJECT_GI_MAP, GID_DUNGEON_MAP, TEXT_ITEM_DUNGEON_MAP, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
||||||
itemTable[RG_ICE_CAVERN_MAP] = Item(RG_ICE_CAVERN_MAP, Text{ "Ice Cavern Map", "Carte de la Caverne Polaire", "Eishöhle Karte" }, ITEMTYPE_MAP, 0xAE, false, &Logic::noVariable, RHT_ICE_CAVERN_MAP, RG_ICE_CAVERN_MAP, OBJECT_GI_MAP, GID_DUNGEON_MAP, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
itemTable[RG_ICE_CAVERN_MAP] = Item(RG_ICE_CAVERN_MAP, Text{ "Ice Cavern Map", "Carte de la Caverne Polaire", "Eishöhle Karte" }, ITEMTYPE_MAP, 0xAE, false, &Logic::noVariable, RHT_ICE_CAVERN_MAP, RG_ICE_CAVERN_MAP, OBJECT_GI_MAP, GID_DUNGEON_MAP, TEXT_ITEM_DUNGEON_MAP, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
||||||
itemTable[RG_DEKU_TREE_COMPASS] = Item(RG_DEKU_TREE_COMPASS, Text{ "Great Deku Tree Compass", "Boussole de l'Arbre Mojo", "Kompass des Deku-Baums" }, ITEMTYPE_COMPASS, 0x9B, false, &Logic::noVariable, RHT_DEKU_TREE_COMPASS, RG_DEKU_TREE_COMPASS, OBJECT_GI_COMPASS, GID_COMPASS, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
itemTable[RG_DEKU_TREE_COMPASS] = Item(RG_DEKU_TREE_COMPASS, Text{ "Great Deku Tree Compass", "Boussole de l'Arbre Mojo", "Kompass des Deku-Baums" }, ITEMTYPE_COMPASS, 0x9B, false, &Logic::noVariable, RHT_DEKU_TREE_COMPASS, RG_DEKU_TREE_COMPASS, OBJECT_GI_COMPASS, GID_COMPASS, TEXT_ITEM_DUNGEON_MAP, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
||||||
itemTable[RG_DODONGOS_CAVERN_COMPASS] = Item(RG_DODONGOS_CAVERN_COMPASS, Text{ "Dodongo's Cavern Compass", "Boussole de la Caverne Dodongo", "Kompass der Dodongo-Höhle" }, ITEMTYPE_COMPASS, 0x9C, false, &Logic::noVariable, RHT_DODONGOS_CAVERN_COMPASS,RG_DODONGOS_CAVERN_COMPASS, OBJECT_GI_COMPASS, GID_COMPASS, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
itemTable[RG_DODONGOS_CAVERN_COMPASS] = Item(RG_DODONGOS_CAVERN_COMPASS, Text{ "Dodongo's Cavern Compass", "Boussole de la Caverne Dodongo", "Kompass der Dodongo-Höhle" }, ITEMTYPE_COMPASS, 0x9C, false, &Logic::noVariable, RHT_DODONGOS_CAVERN_COMPASS,RG_DODONGOS_CAVERN_COMPASS, OBJECT_GI_COMPASS, GID_COMPASS, TEXT_ITEM_COMPASS, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
||||||
itemTable[RG_JABU_JABUS_BELLY_COMPASS] = Item(RG_JABU_JABUS_BELLY_COMPASS, Text{ "Jabu-Jabu's Belly Compass", "Boussole du Ventre de Jabu-Jabu", "Kompass des Jabu-Jabu-Bauchs" }, ITEMTYPE_COMPASS, 0x9D, false, &Logic::noVariable, RHT_JABU_JABUS_BELLY_COMPASS,RG_JABU_JABUS_BELLY_COMPASS, OBJECT_GI_COMPASS, GID_COMPASS, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
itemTable[RG_JABU_JABUS_BELLY_COMPASS] = Item(RG_JABU_JABUS_BELLY_COMPASS, Text{ "Jabu-Jabu's Belly Compass", "Boussole du Ventre de Jabu-Jabu", "Kompass des Jabu-Jabu-Bauchs" }, ITEMTYPE_COMPASS, 0x9D, false, &Logic::noVariable, RHT_JABU_JABUS_BELLY_COMPASS,RG_JABU_JABUS_BELLY_COMPASS, OBJECT_GI_COMPASS, GID_COMPASS, TEXT_ITEM_COMPASS, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
||||||
itemTable[RG_FOREST_TEMPLE_COMPASS] = Item(RG_FOREST_TEMPLE_COMPASS, Text{ "Forest Temple Compass", "Boussole du Temple de la Forêt", "Waldtempel-Kompass" }, ITEMTYPE_COMPASS, 0x9E, false, &Logic::noVariable, RHT_FOREST_TEMPLE_COMPASS, RG_FOREST_TEMPLE_COMPASS, OBJECT_GI_COMPASS, GID_COMPASS, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
itemTable[RG_FOREST_TEMPLE_COMPASS] = Item(RG_FOREST_TEMPLE_COMPASS, Text{ "Forest Temple Compass", "Boussole du Temple de la Forêt", "Waldtempel-Kompass" }, ITEMTYPE_COMPASS, 0x9E, false, &Logic::noVariable, RHT_FOREST_TEMPLE_COMPASS, RG_FOREST_TEMPLE_COMPASS, OBJECT_GI_COMPASS, GID_COMPASS, TEXT_ITEM_COMPASS, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
||||||
itemTable[RG_FIRE_TEMPLE_COMPASS] = Item(RG_FIRE_TEMPLE_COMPASS, Text{ "Fire Temple Compass", "Boussole du Temple du Feu", "Feuertempel-Kompass" }, ITEMTYPE_COMPASS, 0x9F, false, &Logic::noVariable, RHT_FIRE_TEMPLE_COMPASS, RG_FIRE_TEMPLE_COMPASS, OBJECT_GI_COMPASS, GID_COMPASS, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
itemTable[RG_FIRE_TEMPLE_COMPASS] = Item(RG_FIRE_TEMPLE_COMPASS, Text{ "Fire Temple Compass", "Boussole du Temple du Feu", "Feuertempel-Kompass" }, ITEMTYPE_COMPASS, 0x9F, false, &Logic::noVariable, RHT_FIRE_TEMPLE_COMPASS, RG_FIRE_TEMPLE_COMPASS, OBJECT_GI_COMPASS, GID_COMPASS, TEXT_ITEM_COMPASS, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
||||||
itemTable[RG_WATER_TEMPLE_COMPASS] = Item(RG_WATER_TEMPLE_COMPASS, Text{ "Water Temple Compass", "Boussole du Temple de l'Eau", "Wassertempel-Kompass" }, ITEMTYPE_COMPASS, 0xA0, false, &Logic::noVariable, RHT_WATER_TEMPLE_COMPASS, RG_WATER_TEMPLE_COMPASS, OBJECT_GI_COMPASS, GID_COMPASS, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
itemTable[RG_WATER_TEMPLE_COMPASS] = Item(RG_WATER_TEMPLE_COMPASS, Text{ "Water Temple Compass", "Boussole du Temple de l'Eau", "Wassertempel-Kompass" }, ITEMTYPE_COMPASS, 0xA0, false, &Logic::noVariable, RHT_WATER_TEMPLE_COMPASS, RG_WATER_TEMPLE_COMPASS, OBJECT_GI_COMPASS, GID_COMPASS, TEXT_ITEM_COMPASS, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
||||||
itemTable[RG_SPIRIT_TEMPLE_COMPASS] = Item(RG_SPIRIT_TEMPLE_COMPASS, Text{ "Spirit Temple Compass", "Boussole due Temple de l'Esprit", "Geistiger Tempelkompass" }, ITEMTYPE_COMPASS, 0xA1, false, &Logic::noVariable, RHT_SPIRIT_TEMPLE_COMPASS, RG_SPIRIT_TEMPLE_COMPASS, OBJECT_GI_COMPASS, GID_COMPASS, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
itemTable[RG_SPIRIT_TEMPLE_COMPASS] = Item(RG_SPIRIT_TEMPLE_COMPASS, Text{ "Spirit Temple Compass", "Boussole due Temple de l'Esprit", "Geistiger Tempelkompass" }, ITEMTYPE_COMPASS, 0xA1, false, &Logic::noVariable, RHT_SPIRIT_TEMPLE_COMPASS, RG_SPIRIT_TEMPLE_COMPASS, OBJECT_GI_COMPASS, GID_COMPASS, TEXT_ITEM_COMPASS, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
||||||
itemTable[RG_SHADOW_TEMPLE_COMPASS] = Item(RG_SHADOW_TEMPLE_COMPASS, Text{ "Shadow Temple Compass", "Boussole du Temple de l'Ombre", "Kompass des Schattentempels" }, ITEMTYPE_COMPASS, 0xA2, false, &Logic::noVariable, RHT_SHADOW_TEMPLE_COMPASS, RG_SHADOW_TEMPLE_COMPASS, OBJECT_GI_COMPASS, GID_COMPASS, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
itemTable[RG_SHADOW_TEMPLE_COMPASS] = Item(RG_SHADOW_TEMPLE_COMPASS, Text{ "Shadow Temple Compass", "Boussole du Temple de l'Ombre", "Kompass des Schattentempels" }, ITEMTYPE_COMPASS, 0xA2, false, &Logic::noVariable, RHT_SHADOW_TEMPLE_COMPASS, RG_SHADOW_TEMPLE_COMPASS, OBJECT_GI_COMPASS, GID_COMPASS, TEXT_ITEM_COMPASS, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
||||||
itemTable[RG_BOTTOM_OF_THE_WELL_COMPASS] = Item(RG_BOTTOM_OF_THE_WELL_COMPASS, Text{ "Bottom of the Well Compass", "Boussole du Puits", "Boden des Brunnenkompasses" }, ITEMTYPE_COMPASS, 0xA3, false, &Logic::noVariable, RHT_BOTTOM_OF_THE_WELL_COMPASS,RG_BOTTOM_OF_THE_WELL_COMPASS,OBJECT_GI_COMPASS, GID_COMPASS, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
itemTable[RG_BOTTOM_OF_THE_WELL_COMPASS] = Item(RG_BOTTOM_OF_THE_WELL_COMPASS, Text{ "Bottom of the Well Compass", "Boussole du Puits", "Boden des Brunnenkompasses" }, ITEMTYPE_COMPASS, 0xA3, false, &Logic::noVariable, RHT_BOTTOM_OF_THE_WELL_COMPASS,RG_BOTTOM_OF_THE_WELL_COMPASS,OBJECT_GI_COMPASS, GID_COMPASS, TEXT_ITEM_COMPASS, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
||||||
itemTable[RG_ICE_CAVERN_COMPASS] = Item(RG_ICE_CAVERN_COMPASS, Text{ "Ice Cavern Compass", "Boussole de la Caverne Polaire", "Eishöhlenkompass" }, ITEMTYPE_COMPASS, 0xA4, false, &Logic::noVariable, RHT_ICE_CAVERN_COMPASS, RG_ICE_CAVERN_COMPASS, OBJECT_GI_COMPASS, GID_COMPASS, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
itemTable[RG_ICE_CAVERN_COMPASS] = Item(RG_ICE_CAVERN_COMPASS, Text{ "Ice Cavern Compass", "Boussole de la Caverne Polaire", "Eishöhlenkompass" }, ITEMTYPE_COMPASS, 0xA4, false, &Logic::noVariable, RHT_ICE_CAVERN_COMPASS, RG_ICE_CAVERN_COMPASS, OBJECT_GI_COMPASS, GID_COMPASS, TEXT_ITEM_COMPASS, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_LESSER, MOD_RANDOMIZER);
|
||||||
// Boss Keys
|
// Boss Keys
|
||||||
itemTable[RG_FOREST_TEMPLE_BOSS_KEY] = Item(RG_FOREST_TEMPLE_BOSS_KEY, Text{ "Forest Temple Boss Key", "Clé d'Or du Temple de la Forêt", "Waldtempel-Boss-Schlüssel" }, ITEMTYPE_BOSSKEY, 0x95, true, &Logic::BossKeyForestTemple, RHT_FOREST_TEMPLE_BOSS_KEY, RG_FOREST_TEMPLE_BOSS_KEY, OBJECT_GI_BOSSKEY, GID_KEY_BOSS, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_BOSS_KEY,MOD_RANDOMIZER);
|
itemTable[RG_FOREST_TEMPLE_BOSS_KEY] = Item(RG_FOREST_TEMPLE_BOSS_KEY, Text{ "Forest Temple Boss Key", "Clé d'Or du Temple de la Forêt", "Waldtempel-Boss-Schlüssel" }, ITEMTYPE_BOSSKEY, 0x95, true, &Logic::BossKeyForestTemple, RHT_FOREST_TEMPLE_BOSS_KEY, RG_FOREST_TEMPLE_BOSS_KEY, OBJECT_GI_BOSSKEY, GID_KEY_BOSS, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_BOSS_KEY,MOD_RANDOMIZER);
|
||||||
itemTable[RG_FOREST_TEMPLE_BOSS_KEY].SetCustomDrawFunc(Randomizer_DrawBossKey);
|
itemTable[RG_FOREST_TEMPLE_BOSS_KEY].SetCustomDrawFunc(Randomizer_DrawBossKey);
|
||||||
@ -240,6 +240,25 @@ void Rando::StaticData::InitItemTable() {
|
|||||||
itemTable[RG_BUY_RED_POTION_40] = Item(RG_BUY_RED_POTION_40, Text{ "Buy Red Potion [40]", "Acheter: Potion Rouge [40]", "Rotes Elixier kaufen [40]" }, ITEMTYPE_SHOP, GI_POTION_RED, false, &Logic::noVariable, RHT_BOTTLE_WITH_RED_POTION, ITEM_POTION_RED, OBJECT_GI_LIQUID, GID_POTION_RED, 0x43, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_JUNK, MOD_NONE, false, 40);
|
itemTable[RG_BUY_RED_POTION_40] = Item(RG_BUY_RED_POTION_40, Text{ "Buy Red Potion [40]", "Acheter: Potion Rouge [40]", "Rotes Elixier kaufen [40]" }, ITEMTYPE_SHOP, GI_POTION_RED, false, &Logic::noVariable, RHT_BOTTLE_WITH_RED_POTION, ITEM_POTION_RED, OBJECT_GI_LIQUID, GID_POTION_RED, 0x43, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_JUNK, MOD_NONE, false, 40);
|
||||||
itemTable[RG_BUY_RED_POTION_50] = Item(RG_BUY_RED_POTION_50, Text{ "Buy Red Potion [50]", "Acheter: Potion Rouge [50]", "Rotes Elixier kaufen [50]" }, ITEMTYPE_SHOP, GI_POTION_RED, false, &Logic::noVariable, RHT_BOTTLE_WITH_RED_POTION, ITEM_POTION_RED, OBJECT_GI_LIQUID, GID_POTION_RED, 0x43, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_JUNK, MOD_NONE, false, 50);
|
itemTable[RG_BUY_RED_POTION_50] = Item(RG_BUY_RED_POTION_50, Text{ "Buy Red Potion [50]", "Acheter: Potion Rouge [50]", "Rotes Elixier kaufen [50]" }, ITEMTYPE_SHOP, GI_POTION_RED, false, &Logic::noVariable, RHT_BOTTLE_WITH_RED_POTION, ITEM_POTION_RED, OBJECT_GI_LIQUID, GID_POTION_RED, 0x43, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_JUNK, MOD_NONE, false, 50);
|
||||||
// Misc.
|
// Misc.
|
||||||
|
itemTable[RG_GOHMA_SOUL] = Item(RG_GOHMA_SOUL, Text{ "Gohma's Soul", "", "" }, ITEMTYPE_ITEM, 0xE0, true, &Logic::CanSummonGohma, RHT_GOHMA_SOUL, RG_GOHMA_SOUL, OBJECT_GI_SUTARU, GID_SKULL_TOKEN, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_MAJOR, MOD_RANDOMIZER);
|
||||||
|
itemTable[RG_GOHMA_SOUL].SetCustomDrawFunc(Randomizer_DrawBossSoul);
|
||||||
|
itemTable[RG_KING_DODONGO_SOUL] = Item(RG_KING_DODONGO_SOUL, Text{ "King Dodongo's Soul", "", "" }, ITEMTYPE_ITEM, 0xE1, true, &Logic::CanSummonKingDodongo,RHT_KING_DODONGO_SOUL, RG_KING_DODONGO_SOUL, OBJECT_GI_SUTARU, GID_SKULL_TOKEN, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_MAJOR, MOD_RANDOMIZER);
|
||||||
|
itemTable[RG_KING_DODONGO_SOUL].SetCustomDrawFunc(Randomizer_DrawBossSoul);
|
||||||
|
itemTable[RG_BARINADE_SOUL] = Item(RG_BARINADE_SOUL, Text{ "Barinade's Soul", "", "" }, ITEMTYPE_ITEM, 0xE2, true, &Logic::CanSummonBarinade, RHT_BARINADE_SOUL, RG_BARINADE_SOUL, OBJECT_GI_SUTARU, GID_SKULL_TOKEN, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_MAJOR, MOD_RANDOMIZER);
|
||||||
|
itemTable[RG_BARINADE_SOUL].SetCustomDrawFunc(Randomizer_DrawBossSoul);
|
||||||
|
itemTable[RG_PHANTOM_GANON_SOUL] = Item(RG_PHANTOM_GANON_SOUL, Text{ "Phantom Ganon's Soul", "", "" }, ITEMTYPE_ITEM, 0xE3, true, &Logic::CanSummonPhantomGanon,RHT_PHANTOM_GANON_SOUL, RG_PHANTOM_GANON_SOUL, OBJECT_GI_SUTARU, GID_SKULL_TOKEN, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_MAJOR, MOD_RANDOMIZER);
|
||||||
|
itemTable[RG_PHANTOM_GANON_SOUL].SetCustomDrawFunc(Randomizer_DrawBossSoul);
|
||||||
|
itemTable[RG_VOLVAGIA_SOUL] = Item(RG_VOLVAGIA_SOUL, Text{ "Volvagia's Soul", "", "" }, ITEMTYPE_ITEM, 0xE4, true, &Logic::CanSummonVolvagia, RHT_VOLVAGIA_SOUL, RG_VOLVAGIA_SOUL, OBJECT_GI_SUTARU, GID_SKULL_TOKEN, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_MAJOR, MOD_RANDOMIZER);
|
||||||
|
itemTable[RG_VOLVAGIA_SOUL].SetCustomDrawFunc(Randomizer_DrawBossSoul);
|
||||||
|
itemTable[RG_MORPHA_SOUL] = Item(RG_MORPHA_SOUL, Text{ "Morpha's Soul", "", "" }, ITEMTYPE_ITEM, 0xE5, true, &Logic::CanSummonMorpha, RHT_MORPHA_SOUL, RG_MORPHA_SOUL, OBJECT_GI_SUTARU, GID_SKULL_TOKEN, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_MAJOR, MOD_RANDOMIZER);
|
||||||
|
itemTable[RG_MORPHA_SOUL].SetCustomDrawFunc(Randomizer_DrawBossSoul);
|
||||||
|
itemTable[RG_BONGO_BONGO_SOUL] = Item(RG_BONGO_BONGO_SOUL, Text{ "Bongo Bongo's Soul", "", "" }, ITEMTYPE_ITEM, 0xE6, true, &Logic::CanSummonBongoBongo, RHT_BONGO_BONGO_SOUL, RG_BONGO_BONGO_SOUL, OBJECT_GI_SUTARU, GID_SKULL_TOKEN, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_MAJOR, MOD_RANDOMIZER);
|
||||||
|
itemTable[RG_BONGO_BONGO_SOUL].SetCustomDrawFunc(Randomizer_DrawBossSoul);
|
||||||
|
itemTable[RG_TWINROVA_SOUL] = Item(RG_TWINROVA_SOUL, Text{ "Twinrova's Soul", "", "" }, ITEMTYPE_ITEM, 0xE7, true, &Logic::CanSummonTwinrova, RHT_TWINROVA_SOUL, RG_TWINROVA_SOUL, OBJECT_GI_SUTARU, GID_SKULL_TOKEN, TEXT_RANDOMIZER_CUSTOM_ITEM, 0x80, CHEST_ANIM_LONG, ITEM_CATEGORY_MAJOR, MOD_RANDOMIZER);
|
||||||
|
itemTable[RG_TWINROVA_SOUL].SetCustomDrawFunc(Randomizer_DrawBossSoul);
|
||||||
|
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_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)
|
||||||
|
@ -1695,6 +1695,7 @@ void GenerateRandomizerImgui(std::string seed = "") {
|
|||||||
cvarSettings[RSK_SHUFFLE_MAGIC_BEANS] = CVarGetInteger("gRandomizeShuffleBeans", 0);
|
cvarSettings[RSK_SHUFFLE_MAGIC_BEANS] = CVarGetInteger("gRandomizeShuffleBeans", 0);
|
||||||
cvarSettings[RSK_SHUFFLE_MERCHANTS] = CVarGetInteger("gRandomizeShuffleMerchants", RO_SHUFFLE_MERCHANTS_OFF);
|
cvarSettings[RSK_SHUFFLE_MERCHANTS] = CVarGetInteger("gRandomizeShuffleMerchants", RO_SHUFFLE_MERCHANTS_OFF);
|
||||||
cvarSettings[RSK_SHUFFLE_100_GS_REWARD] = CVarGetInteger("gRandomizeShuffle100GSReward", RO_GENERIC_OFF);
|
cvarSettings[RSK_SHUFFLE_100_GS_REWARD] = CVarGetInteger("gRandomizeShuffle100GSReward", RO_GENERIC_OFF);
|
||||||
|
cvarSettings[RSK_SHUFFLE_BOSS_SOULS] = CVarGetInteger("gRandomizeShuffleBossSouls", RO_BOSS_SOULS_OFF);
|
||||||
cvarSettings[RSK_ENABLE_BOMBCHU_DROPS] = CVarGetInteger("gRandomizeEnableBombchuDrops", 0);
|
cvarSettings[RSK_ENABLE_BOMBCHU_DROPS] = CVarGetInteger("gRandomizeEnableBombchuDrops", 0);
|
||||||
cvarSettings[RSK_BOMBCHUS_IN_LOGIC] = CVarGetInteger("gRandomizeBombchusInLogic", 0);
|
cvarSettings[RSK_BOMBCHUS_IN_LOGIC] = CVarGetInteger("gRandomizeBombchusInLogic", 0);
|
||||||
cvarSettings[RSK_SKIP_CHILD_ZELDA] = CVarGetInteger("gRandomizeSkipChildZelda", 0);
|
cvarSettings[RSK_SKIP_CHILD_ZELDA] = CVarGetInteger("gRandomizeSkipChildZelda", 0);
|
||||||
@ -1926,6 +1927,7 @@ void RandomizerSettingsWindow::DrawElement() {
|
|||||||
static const char* randoTokensanity[4] = { "Off", "Dungeons", "Overworld", "All Tokens" };
|
static const char* randoTokensanity[4] = { "Off", "Dungeons", "Overworld", "All Tokens" };
|
||||||
static const char* randoShuffleScrubs[4] = { "Off", "Affordable", "Expensive", "Random Prices" };
|
static const char* randoShuffleScrubs[4] = { "Off", "Affordable", "Expensive", "Random Prices" };
|
||||||
static const char* randoShuffleMerchants[3] = { "Off", "On (no hints)", "On (with hints)" };
|
static const char* randoShuffleMerchants[3] = { "Off", "On (no hints)", "On (with hints)" };
|
||||||
|
static const char* randoShuffleBossSouls[3] = { "Off", "On", "On + Ganon"};
|
||||||
|
|
||||||
// Shuffle Dungeon Items Settings
|
// Shuffle Dungeon Items Settings
|
||||||
static const char* randoShuffleMapsAndCompasses[6] = { "Start With", "Vanilla", "Own Dungeon",
|
static const char* randoShuffleMapsAndCompasses[6] = { "Start With", "Vanilla", "Own Dungeon",
|
||||||
@ -2844,6 +2846,15 @@ void RandomizerSettingsWindow::DrawElement() {
|
|||||||
|
|
||||||
UIWidgets::PaddedSeparator();
|
UIWidgets::PaddedSeparator();
|
||||||
|
|
||||||
|
// Shuffle Boss Souls
|
||||||
|
// Forces players to find a boss's soul before defeating them in their lair.
|
||||||
|
ImGui::Text("%s", ctx->GetOption(RSK_SHUFFLE_BOSS_SOULS).GetName().c_str());
|
||||||
|
UIWidgets::InsertHelpHoverText("Shuffles 8 boss souls (one for each blue warp dungeon). A boss will not appear until you collect its respective soul."
|
||||||
|
"\n\"On + Ganon\" will also hide Ganon and Ganondorf behind a boss soul.");
|
||||||
|
UIWidgets::EnhancementCombobox("gRandomizeShuffleBossSouls", randoShuffleBossSouls, RO_BOSS_SOULS_OFF);
|
||||||
|
|
||||||
|
UIWidgets::PaddedSeparator();
|
||||||
|
|
||||||
ImGui::PopItemWidth();
|
ImGui::PopItemWidth();
|
||||||
ImGui::EndChild();
|
ImGui::EndChild();
|
||||||
|
|
||||||
@ -4725,7 +4736,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, 57> getItemMessages = {{
|
const std::array<GetItemMessage, 66> 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!",
|
||||||
@ -4959,7 +4970,18 @@ void Randomizer::CreateCustomMessages() {
|
|||||||
GIMESSAGE(RG_TYCOON_WALLET, ITEM_WALLET_GIANT,
|
GIMESSAGE(RG_TYCOON_WALLET, ITEM_WALLET_GIANT,
|
||||||
"You got a %rTycoon's Wallet%w!&It's gigantic! Now you can carry&up to %y999 rupees%w!",
|
"You got a %rTycoon's Wallet%w!&It's gigantic! Now you can carry&up to %y999 rupees%w!",
|
||||||
"Du erhältst die %rGoldene&Geldbörse%w! Die größte aller&Geldbörsen! Jetzt kannst Du bis&zu %y999 Rubine%w mit dir führen!",
|
"Du erhältst die %rGoldene&Geldbörse%w! Die größte aller&Geldbörsen! Jetzt kannst Du bis&zu %y999 Rubine%w mit dir führen!",
|
||||||
"Vous obtenez la %rBourse de Magnat%w!&Elle peut contenir jusqu'à %y999 rubis%w!&C'est gigantesque!")
|
"Vous obtenez la %rBourse de Magnat%w!&Elle peut contenir jusqu'à %y999 rubis%w!&C'est gigantesque!"),
|
||||||
|
|
||||||
|
GIMESSAGE_UNTRANSLATED(RG_GOHMA_SOUL, ITEM_BIG_POE, "You found the soul for %gGohma%w!"),
|
||||||
|
GIMESSAGE_UNTRANSLATED(RG_KING_DODONGO_SOUL, ITEM_BIG_POE, "You found the soul for %rKing&Dodongo%w!"),
|
||||||
|
GIMESSAGE_UNTRANSLATED(RG_BARINADE_SOUL, ITEM_BIG_POE, "You found the soul for %bBarinade%w!"),
|
||||||
|
GIMESSAGE_UNTRANSLATED(RG_PHANTOM_GANON_SOUL, ITEM_BIG_POE, "You found the soul for %gPhantom&Ganon%w!"),
|
||||||
|
GIMESSAGE_UNTRANSLATED(RG_VOLVAGIA_SOUL, ITEM_BIG_POE, "You found the soul for %rVolvagia%w!"),
|
||||||
|
GIMESSAGE_UNTRANSLATED(RG_MORPHA_SOUL, ITEM_BIG_POE, "You found the soul for %bMorpha%w!"),
|
||||||
|
GIMESSAGE_UNTRANSLATED(RG_BONGO_BONGO_SOUL, ITEM_BIG_POE, "You found the soul for %pBongo&Bongo%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!"),
|
||||||
|
|
||||||
}};
|
}};
|
||||||
CreateGetItemMessages(&getItemMessages);
|
CreateGetItemMessages(&getItemMessages);
|
||||||
CreateRupeeMessages();
|
CreateRupeeMessages();
|
||||||
|
@ -1814,6 +1814,15 @@ typedef enum {
|
|||||||
RG_BUY_RED_POTION_50,
|
RG_BUY_RED_POTION_50,
|
||||||
RG_TRIFORCE,
|
RG_TRIFORCE,
|
||||||
RG_TRIFORCE_PIECE,
|
RG_TRIFORCE_PIECE,
|
||||||
|
RG_GOHMA_SOUL,
|
||||||
|
RG_KING_DODONGO_SOUL,
|
||||||
|
RG_BARINADE_SOUL,
|
||||||
|
RG_PHANTOM_GANON_SOUL,
|
||||||
|
RG_VOLVAGIA_SOUL,
|
||||||
|
RG_MORPHA_SOUL,
|
||||||
|
RG_BONGO_BONGO_SOUL,
|
||||||
|
RG_TWINROVA_SOUL,
|
||||||
|
RG_GANON_SOUL,
|
||||||
RG_HINT,
|
RG_HINT,
|
||||||
RG_TYCOON_WALLET,
|
RG_TYCOON_WALLET,
|
||||||
RG_FAIRY_OCARINA,
|
RG_FAIRY_OCARINA,
|
||||||
@ -3018,6 +3027,15 @@ typedef enum {
|
|||||||
RHT_DEKU_STICK_CAPACITY_20,
|
RHT_DEKU_STICK_CAPACITY_20,
|
||||||
RHT_DEKU_STICK_CAPACITY_30,
|
RHT_DEKU_STICK_CAPACITY_30,
|
||||||
RHT_TRIFORCE_PIECE,
|
RHT_TRIFORCE_PIECE,
|
||||||
|
RHT_GOHMA_SOUL,
|
||||||
|
RHT_KING_DODONGO_SOUL,
|
||||||
|
RHT_BARINADE_SOUL,
|
||||||
|
RHT_PHANTOM_GANON_SOUL,
|
||||||
|
RHT_VOLVAGIA_SOUL,
|
||||||
|
RHT_MORPHA_SOUL,
|
||||||
|
RHT_BONGO_BONGO_SOUL,
|
||||||
|
RHT_TWINROVA_SOUL,
|
||||||
|
RHT_GANON_SOUL,
|
||||||
RHT_EPONA,
|
RHT_EPONA,
|
||||||
// Entrances
|
// Entrances
|
||||||
RHT_DESERT_COLOSSUS_TO_COLOSSUS_GROTTO,
|
RHT_DESERT_COLOSSUS_TO_COLOSSUS_GROTTO,
|
||||||
@ -3427,6 +3445,7 @@ typedef enum {
|
|||||||
RSK_TRIFORCE_HUNT,
|
RSK_TRIFORCE_HUNT,
|
||||||
RSK_TRIFORCE_HUNT_PIECES_TOTAL,
|
RSK_TRIFORCE_HUNT_PIECES_TOTAL,
|
||||||
RSK_TRIFORCE_HUNT_PIECES_REQUIRED,
|
RSK_TRIFORCE_HUNT_PIECES_REQUIRED,
|
||||||
|
RSK_SHUFFLE_BOSS_SOULS,
|
||||||
RSK_MAX
|
RSK_MAX
|
||||||
} RandomizerSettingKey;
|
} RandomizerSettingKey;
|
||||||
|
|
||||||
@ -3551,6 +3570,12 @@ typedef enum {
|
|||||||
RO_AMMO_DROPS_OFF,
|
RO_AMMO_DROPS_OFF,
|
||||||
} RandoOptionAmmoDrops;
|
} RandoOptionAmmoDrops;
|
||||||
|
|
||||||
|
typedef enum {
|
||||||
|
RO_BOSS_SOULS_OFF,
|
||||||
|
RO_BOSS_SOULS_ON,
|
||||||
|
RO_BOSS_SOULS_ON_PLUS_GANON,
|
||||||
|
} RandoOptionBossSouls;
|
||||||
|
|
||||||
//Any Dungeon Item (start with, vanilla, own dungeon, any dungeon,
|
//Any Dungeon Item (start with, vanilla, own dungeon, any dungeon,
|
||||||
//overworld, anywhere)
|
//overworld, anywhere)
|
||||||
typedef enum {
|
typedef enum {
|
||||||
|
@ -160,6 +160,16 @@ typedef enum {
|
|||||||
RAND_INF_ADULT_FISHING,
|
RAND_INF_ADULT_FISHING,
|
||||||
RAND_INF_10_BIG_POES,
|
RAND_INF_10_BIG_POES,
|
||||||
|
|
||||||
|
RAND_INF_GOHMA_SOUL,
|
||||||
|
RAND_INF_KING_DODONGO_SOUL,
|
||||||
|
RAND_INF_BARINADE_SOUL,
|
||||||
|
RAND_INF_PHANTOM_GANON_SOUL,
|
||||||
|
RAND_INF_VOLVAGIA_SOUL,
|
||||||
|
RAND_INF_MORPHA_SOUL,
|
||||||
|
RAND_INF_BONGO_BONGO_SOUL,
|
||||||
|
RAND_INF_TWINROVA_SOUL,
|
||||||
|
RAND_INF_GANON_SOUL,
|
||||||
|
|
||||||
// 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,
|
||||||
|
@ -84,6 +84,20 @@ std::vector<ItemTrackerItem> triforcePieces = {
|
|||||||
ITEM_TRACKER_ITEM(RG_TRIFORCE_PIECE, 0, DrawItem),
|
ITEM_TRACKER_ITEM(RG_TRIFORCE_PIECE, 0, DrawItem),
|
||||||
};
|
};
|
||||||
|
|
||||||
|
std::vector<ItemTrackerItem> bossSoulItems = {
|
||||||
|
//Hack for right now, just gonna draw souls as bottles/big poes.
|
||||||
|
//Will replace with other macro once we have a custom texture
|
||||||
|
ITEM_TRACKER_ITEM_CUSTOM(RG_GOHMA_SOUL, ITEM_BIG_POE, ITEM_BOTTLE, 0, DrawItem ),
|
||||||
|
ITEM_TRACKER_ITEM_CUSTOM(RG_KING_DODONGO_SOUL, ITEM_BIG_POE, ITEM_BOTTLE, 0, DrawItem ),
|
||||||
|
ITEM_TRACKER_ITEM_CUSTOM(RG_BARINADE_SOUL, ITEM_BIG_POE, ITEM_BOTTLE, 0, DrawItem ),
|
||||||
|
ITEM_TRACKER_ITEM_CUSTOM(RG_PHANTOM_GANON_SOUL, ITEM_BIG_POE, ITEM_BOTTLE, 0, DrawItem ),
|
||||||
|
ITEM_TRACKER_ITEM_CUSTOM(RG_VOLVAGIA_SOUL, ITEM_BIG_POE, ITEM_BOTTLE, 0, DrawItem ),
|
||||||
|
ITEM_TRACKER_ITEM_CUSTOM(RG_MORPHA_SOUL, ITEM_BIG_POE, ITEM_BOTTLE, 0, DrawItem ),
|
||||||
|
ITEM_TRACKER_ITEM_CUSTOM(RG_BONGO_BONGO_SOUL, ITEM_BIG_POE, ITEM_BOTTLE, 0, DrawItem ),
|
||||||
|
ITEM_TRACKER_ITEM_CUSTOM(RG_TWINROVA_SOUL, ITEM_BIG_POE, ITEM_BOTTLE, 0, DrawItem ),
|
||||||
|
ITEM_TRACKER_ITEM_CUSTOM(RG_GANON_SOUL, ITEM_BIG_POE, ITEM_BOTTLE, 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 } },
|
||||||
@ -154,6 +168,18 @@ std::map<uint16_t, std::string> itemTrackerDungeonShortNames = {
|
|||||||
{ SCENE_THIEVES_HIDEOUT, "HIDE" },
|
{ SCENE_THIEVES_HIDEOUT, "HIDE" },
|
||||||
};
|
};
|
||||||
|
|
||||||
|
std::map<uint16_t, std::string> itemTrackerBossShortNames = {
|
||||||
|
{ RG_GOHMA_SOUL, "GOHMA" },
|
||||||
|
{ RG_KING_DODONGO_SOUL, "KD" },
|
||||||
|
{ RG_BARINADE_SOUL, "BARI" },
|
||||||
|
{ RG_PHANTOM_GANON_SOUL, "PG"},
|
||||||
|
{ RG_VOLVAGIA_SOUL, "VOLV"},
|
||||||
|
{ RG_MORPHA_SOUL, "MORPH"},
|
||||||
|
{ RG_BONGO_BONGO_SOUL, "BONGO"},
|
||||||
|
{ RG_TWINROVA_SOUL, "TWIN"},
|
||||||
|
{ RG_GANON_SOUL, "GANON"},
|
||||||
|
};
|
||||||
|
|
||||||
std::vector<ItemTrackerItem> dungeonItems = {};
|
std::vector<ItemTrackerItem> dungeonItems = {};
|
||||||
|
|
||||||
std::unordered_map<uint32_t, ItemTrackerItem> actualItemTrackerItemMap = {
|
std::unordered_map<uint32_t, ItemTrackerItem> actualItemTrackerItemMap = {
|
||||||
@ -609,6 +635,53 @@ void DrawItem(ItemTrackerItem item) {
|
|||||||
hasItem = IS_RANDO && OTRGlobals::Instance->gRandomizer->GetRandoSettingValue(RSK_TRIFORCE_HUNT);
|
hasItem = IS_RANDO && OTRGlobals::Instance->gRandomizer->GetRandoSettingValue(RSK_TRIFORCE_HUNT);
|
||||||
itemName = "Triforce Piece";
|
itemName = "Triforce Piece";
|
||||||
break;
|
break;
|
||||||
|
case RG_GOHMA_SOUL:
|
||||||
|
actualItemId = item.id;
|
||||||
|
hasItem = Flags_GetRandomizerInf(RAND_INF_GOHMA_SOUL);
|
||||||
|
itemName = "Gohma's Soul";
|
||||||
|
break;
|
||||||
|
case RG_KING_DODONGO_SOUL:
|
||||||
|
actualItemId = item.id;
|
||||||
|
hasItem = Flags_GetRandomizerInf(RAND_INF_KING_DODONGO_SOUL);
|
||||||
|
itemName = "King Dodongo's Soul";
|
||||||
|
break;
|
||||||
|
case RG_BARINADE_SOUL:
|
||||||
|
actualItemId = item.id;
|
||||||
|
hasItem = Flags_GetRandomizerInf(RAND_INF_BARINADE_SOUL);
|
||||||
|
itemName = "Barinade's Soul";
|
||||||
|
break;
|
||||||
|
case RG_PHANTOM_GANON_SOUL:
|
||||||
|
actualItemId = item.id;
|
||||||
|
hasItem = Flags_GetRandomizerInf(RAND_INF_PHANTOM_GANON_SOUL);
|
||||||
|
itemName = "Phantom Ganon's Soul";
|
||||||
|
break;
|
||||||
|
case RG_VOLVAGIA_SOUL:
|
||||||
|
actualItemId = item.id;
|
||||||
|
hasItem = Flags_GetRandomizerInf(RAND_INF_VOLVAGIA_SOUL);
|
||||||
|
itemName = "Volvagia's Soul";
|
||||||
|
break;
|
||||||
|
case RG_MORPHA_SOUL:
|
||||||
|
actualItemId = item.id;
|
||||||
|
hasItem = Flags_GetRandomizerInf(RAND_INF_MORPHA_SOUL);
|
||||||
|
itemName = "Morpha's Soul";
|
||||||
|
break;
|
||||||
|
case RG_BONGO_BONGO_SOUL:
|
||||||
|
actualItemId = item.id;
|
||||||
|
hasItem = Flags_GetRandomizerInf(RAND_INF_BONGO_BONGO_SOUL);
|
||||||
|
itemName = "Bongo Bongo's Soul";
|
||||||
|
break;
|
||||||
|
case RG_TWINROVA_SOUL:
|
||||||
|
actualItemId = item.id;
|
||||||
|
hasItem = Flags_GetRandomizerInf(RAND_INF_TWINROVA_SOUL);
|
||||||
|
itemName = "Twinrova's Soul";
|
||||||
|
break;
|
||||||
|
case RG_GANON_SOUL:
|
||||||
|
actualItemId = item.id;
|
||||||
|
hasItem = OTRGlobals::Instance->gRandomizer->GetRandoSettingValue(RSK_SHUFFLE_BOSS_SOULS) == RO_BOSS_SOULS_ON_PLUS_GANON ?
|
||||||
|
Flags_GetRandomizerInf(RAND_INF_GANON_SOUL) : true;
|
||||||
|
|
||||||
|
itemName = "Ganon's Soul";
|
||||||
|
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())) {
|
||||||
@ -621,6 +694,16 @@ void DrawItem(ItemTrackerItem item) {
|
|||||||
ImVec2(iconSize, iconSize), ImVec2(0, 0), ImVec2(1, 1));
|
ImVec2(iconSize, iconSize), ImVec2(0, 0), ImVec2(1, 1));
|
||||||
|
|
||||||
DrawItemCount(item);
|
DrawItemCount(item);
|
||||||
|
|
||||||
|
if (item.id >= RG_GOHMA_SOUL && item.id <= RG_GANON_SOUL) {
|
||||||
|
ImVec2 p = ImGui::GetCursorScreenPos();
|
||||||
|
std::string bossName = itemTrackerBossShortNames[item.id];
|
||||||
|
ImGui::SetCursorScreenPos(ImVec2(p.x + (iconSize / 2) - (ImGui::CalcTextSize(bossName.c_str()).x / 2), p.y - (iconSize + 13)));
|
||||||
|
ImGui::PushStyleColor(ImGuiCol_Text, IM_COL_WHITE);
|
||||||
|
ImGui::Text("%s", bossName.c_str());
|
||||||
|
ImGui::PopStyleColor();
|
||||||
|
}
|
||||||
|
|
||||||
ImGui::EndGroup();
|
ImGui::EndGroup();
|
||||||
|
|
||||||
if (itemName == "") {
|
if (itemName == "") {
|
||||||
@ -956,6 +1039,17 @@ void UpdateVectors() {
|
|||||||
mainWindowItems.insert(mainWindowItems.end(), triforcePieces.begin(), triforcePieces.end());
|
mainWindowItems.insert(mainWindowItems.end(), triforcePieces.begin(), triforcePieces.end());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//If we're adding boss souls to the main window...
|
||||||
|
if (CVarGetInteger("gItemTrackerBossSoulsDisplayType", SECTION_DISPLAY_HIDDEN) == SECTION_DISPLAY_MAIN_WINDOW) {
|
||||||
|
//...add empty items on the main window to get the souls on their own row. (Too many to sit with Greg/Triforce pieces)
|
||||||
|
while (mainWindowItems.size() % 6) {
|
||||||
|
mainWindowItems.push_back(ITEM_TRACKER_ITEM(ITEM_NONE, 0, DrawItem));
|
||||||
|
}
|
||||||
|
|
||||||
|
//Add boss souls
|
||||||
|
mainWindowItems.insert(mainWindowItems.end(), bossSoulItems.begin(), bossSoulItems.end());
|
||||||
|
}
|
||||||
|
|
||||||
shouldUpdateVectors = false;
|
shouldUpdateVectors = false;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -1056,6 +1150,12 @@ void ItemTrackerWindow::DrawElement() {
|
|||||||
EndFloatingWindows();
|
EndFloatingWindows();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (CVarGetInteger("gItemTrackerBossSoulsDisplayType", SECTION_DISPLAY_HIDDEN) == SECTION_DISPLAY_SEPARATE) {
|
||||||
|
BeginFloatingWindows("Boss Soul Tracker");
|
||||||
|
DrawItemsInRows(bossSoulItems);
|
||||||
|
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);
|
||||||
@ -1195,6 +1295,10 @@ void ItemTrackerSettingsWindow::DrawElement() {
|
|||||||
shouldUpdateVectors = true;
|
shouldUpdateVectors = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (UIWidgets::LabeledRightAlignedEnhancementCombobox("Boss Souls", "gItemTrackerBossSoulsDisplayType", 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;
|
||||||
|
@ -24,6 +24,11 @@ bool HasEquipment(ItemTrackerItem);
|
|||||||
id, #id, #id "_Faded", data, drawFunc \
|
id, #id, #id "_Faded", data, drawFunc \
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#define ITEM_TRACKER_ITEM_CUSTOM(id, name, nameFaded, data, drawFunc)\
|
||||||
|
{ \
|
||||||
|
id, #name, #nameFaded "_Faded", data, drawFunc \
|
||||||
|
}
|
||||||
|
|
||||||
typedef struct ItemTrackerDungeon {
|
typedef struct ItemTrackerDungeon {
|
||||||
uint32_t id;
|
uint32_t id;
|
||||||
std::vector<uint32_t> items;
|
std::vector<uint32_t> items;
|
||||||
|
@ -106,6 +106,7 @@ void Settings::CreateOptions() {
|
|||||||
mOptions[RSK_SHUFFLE_ADULT_TRADE] = Option::Bool("Shuffle Adult Trade");
|
mOptions[RSK_SHUFFLE_ADULT_TRADE] = Option::Bool("Shuffle Adult Trade");
|
||||||
mOptions[RSK_SHUFFLE_CHEST_MINIGAME] = Option::U8("Shuffle Chest Minigame", {"Off", "On (Separate)", "On (Pack)"});
|
mOptions[RSK_SHUFFLE_CHEST_MINIGAME] = Option::U8("Shuffle Chest Minigame", {"Off", "On (Separate)", "On (Pack)"});
|
||||||
mOptions[RSK_SHUFFLE_100_GS_REWARD] = Option::Bool("Shuffle 100 GS Reward");
|
mOptions[RSK_SHUFFLE_100_GS_REWARD] = Option::Bool("Shuffle 100 GS Reward");
|
||||||
|
mOptions[RSK_SHUFFLE_BOSS_SOULS] = Option::U8("Shuffle Boss Souls", {"Off", "On", "On + Ganon"});
|
||||||
mOptions[RSK_SHUFFLE_MAPANDCOMPASS] = Option::U8("Maps/Compasses", {"Start With", "Vanilla", "Own Dungeon", "Any Dungeon", "Overworld", "Anywhere"}, OptionCategory::Setting, RO_DUNGEON_ITEM_LOC_OWN_DUNGEON);
|
mOptions[RSK_SHUFFLE_MAPANDCOMPASS] = Option::U8("Maps/Compasses", {"Start With", "Vanilla", "Own Dungeon", "Any Dungeon", "Overworld", "Anywhere"}, OptionCategory::Setting, RO_DUNGEON_ITEM_LOC_OWN_DUNGEON);
|
||||||
mOptions[RSK_KEYSANITY] = Option::U8("Small Keys", {"Start With", "Vanilla", "Own Dungeon", "Any Dungeon", "Overworld", "Anywhere"}, OptionCategory::Setting, RO_DUNGEON_ITEM_LOC_OWN_DUNGEON);
|
mOptions[RSK_KEYSANITY] = Option::U8("Small Keys", {"Start With", "Vanilla", "Own Dungeon", "Any Dungeon", "Overworld", "Anywhere"}, OptionCategory::Setting, RO_DUNGEON_ITEM_LOC_OWN_DUNGEON);
|
||||||
mOptions[RSK_GERUDO_KEYS] = Option::U8("Gerudo Fortress Keys", {"Vanilla", "Any Dungeon", "Overworld", "Anywhere"});
|
mOptions[RSK_GERUDO_KEYS] = Option::U8("Gerudo Fortress Keys", {"Vanilla", "Any Dungeon", "Overworld", "Anywhere"});
|
||||||
@ -616,6 +617,7 @@ void Settings::CreateOptions() {
|
|||||||
&mOptions[RSK_SHUFFLE_ADULT_TRADE],
|
&mOptions[RSK_SHUFFLE_ADULT_TRADE],
|
||||||
&mOptions[RSK_SHUFFLE_CHEST_MINIGAME],
|
&mOptions[RSK_SHUFFLE_CHEST_MINIGAME],
|
||||||
&mOptions[RSK_SHUFFLE_100_GS_REWARD],
|
&mOptions[RSK_SHUFFLE_100_GS_REWARD],
|
||||||
|
&mOptions[RSK_SHUFFLE_BOSS_SOULS],
|
||||||
});
|
});
|
||||||
mOptionGroups[RSG_SHUFFLE_DUNGEON_ITEMS] = OptionGroup("Shuffle Dungeon Items", {
|
mOptionGroups[RSG_SHUFFLE_DUNGEON_ITEMS] = OptionGroup("Shuffle Dungeon Items", {
|
||||||
&mOptions[RSK_SHUFFLE_MAPANDCOMPASS],
|
&mOptions[RSK_SHUFFLE_MAPANDCOMPASS],
|
||||||
@ -821,6 +823,7 @@ void Settings::CreateOptions() {
|
|||||||
{ "Shuffle Settings:Shuffle Frog Song Rupees", RSK_SHUFFLE_FROG_SONG_RUPEES },
|
{ "Shuffle Settings:Shuffle Frog Song Rupees", RSK_SHUFFLE_FROG_SONG_RUPEES },
|
||||||
{ "Shuffle Settings:Shuffle Merchants", RSK_SHUFFLE_MERCHANTS },
|
{ "Shuffle Settings:Shuffle Merchants", RSK_SHUFFLE_MERCHANTS },
|
||||||
{ "Shuffle Settings:Shuffle 100 GS Reward", RSK_SHUFFLE_100_GS_REWARD },
|
{ "Shuffle Settings:Shuffle 100 GS Reward", RSK_SHUFFLE_100_GS_REWARD },
|
||||||
|
{ "Shuffle Settings:Shuffle Boss Souls", RSK_SHUFFLE_BOSS_SOULS },
|
||||||
{ "Start with Deku Shield", RSK_STARTING_DEKU_SHIELD },
|
{ "Start with Deku Shield", RSK_STARTING_DEKU_SHIELD },
|
||||||
{ "Start with Kokiri Sword", RSK_STARTING_KOKIRI_SWORD },
|
{ "Start with Kokiri Sword", RSK_STARTING_KOKIRI_SWORD },
|
||||||
{ "Start with Fairy Ocarina", RSK_STARTING_OCARINA },
|
{ "Start with Fairy Ocarina", RSK_STARTING_OCARINA },
|
||||||
@ -1520,6 +1523,14 @@ void Settings::ParseJson(nlohmann::json spoilerFileJson) {
|
|||||||
mOptions[index].SetSelectedIndex(RO_AMMO_DROPS_OFF);
|
mOptions[index].SetSelectedIndex(RO_AMMO_DROPS_OFF);
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
case RSK_SHUFFLE_BOSS_SOULS:
|
||||||
|
if (it.value() == "Off") {
|
||||||
|
mOptions[index].SetSelectedIndex(RO_BOSS_SOULS_OFF);
|
||||||
|
} else if (it.value() == "On") {
|
||||||
|
mOptions[index].SetSelectedIndex(RO_BOSS_SOULS_ON);
|
||||||
|
} else if (it.value() == "On + Ganon") {
|
||||||
|
mOptions[index].SetSelectedIndex(RO_BOSS_SOULS_ON_PLUS_GANON);
|
||||||
|
}
|
||||||
case RSK_STARTING_OCARINA:
|
case RSK_STARTING_OCARINA:
|
||||||
if (it.value() == "Off") {
|
if (it.value() == "Off") {
|
||||||
mOptions[index].SetSelectedIndex(RO_STARTING_OCARINA_OFF);
|
mOptions[index].SetSelectedIndex(RO_STARTING_OCARINA_OFF);
|
||||||
|
@ -2611,6 +2611,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_GOHMA_SOUL && item <= RG_GANON_SOUL) {
|
||||||
|
u8 index = item - RG_GOHMA_SOUL;
|
||||||
|
Flags_SetRandomizerInf(RAND_INF_GOHMA_SOUL + index);
|
||||||
|
|
||||||
|
return Return_Item_Entry(giEntry, RG_NONE);
|
||||||
|
}
|
||||||
|
|
||||||
if (item == RG_PROGRESSIVE_BOMBCHUS) {
|
if (item == RG_PROGRESSIVE_BOMBCHUS) {
|
||||||
if (INV_CONTENT(ITEM_BOMBCHU) == ITEM_NONE) {
|
if (INV_CONTENT(ITEM_BOMBCHU) == ITEM_NONE) {
|
||||||
INV_CONTENT(ITEM_BOMBCHU) = ITEM_BOMBCHU;
|
INV_CONTENT(ITEM_BOMBCHU) = ITEM_BOMBCHU;
|
||||||
|
@ -652,6 +652,9 @@ void BossVa_Init(Actor* thisx, PlayState* play2) {
|
|||||||
this->actor.colChkInfo.damageTable = sDamageTable;
|
this->actor.colChkInfo.damageTable = sDamageTable;
|
||||||
sPhase2Timer = 0xFFFF;
|
sPhase2Timer = 0xFFFF;
|
||||||
if (Flags_GetEventChkInf(EVENTCHKINF_BEGAN_BARINA_BATTLE)) {
|
if (Flags_GetEventChkInf(EVENTCHKINF_BEGAN_BARINA_BATTLE)) {
|
||||||
|
if (Randomizer_GetSettingValue(RSK_SHUFFLE_BOSS_SOULS) && !Flags_GetRandomizerInf(RAND_INF_BARINADE_SOUL)) {
|
||||||
|
sCsState = BOSSVA_BATTLE;
|
||||||
|
} else {
|
||||||
sCsState = INTRO_CALL_BARI;
|
sCsState = INTRO_CALL_BARI;
|
||||||
sDoorState = 100;
|
sDoorState = 100;
|
||||||
func_8002DF54(play, &this->actor, 1);
|
func_8002DF54(play, &this->actor, 1);
|
||||||
@ -682,6 +685,7 @@ void BossVa_Init(Actor* thisx, PlayState* play2) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
sCameraAtMaxVel = sCameraEyeMaxVel = sZeroVec;
|
sCameraAtMaxVel = sCameraEyeMaxVel = sZeroVec;
|
||||||
|
}
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
sCsState = INTRO_START;
|
sCsState = INTRO_START;
|
||||||
|
@ -495,7 +495,7 @@ void DemoEffect_Init(Actor* thisx, PlayState* play2) {
|
|||||||
this->jewel.type = DEMO_EFFECT_JEWEL_ZORA;
|
this->jewel.type = DEMO_EFFECT_JEWEL_ZORA;
|
||||||
this->jewel.isPositionInit = 0;
|
this->jewel.isPositionInit = 0;
|
||||||
DemoEffect_InitJewel(play, this);
|
DemoEffect_InitJewel(play, this);
|
||||||
Actor_ChangeCategory(play, &play->actorCtx, &this->actor, ACTOR_EN_DOOR);
|
Actor_ChangeCategory(play, &play->actorCtx, &this->actor, ACTORCAT_BOSS);
|
||||||
if ((play->sceneNum == SCENE_JABU_JABU) && (Flags_GetInfTable(INFTABLE_145))) {
|
if ((play->sceneNum == SCENE_JABU_JABU) && (Flags_GetInfTable(INFTABLE_145))) {
|
||||||
Actor_Kill(&this->actor);
|
Actor_Kill(&this->actor);
|
||||||
return;
|
return;
|
||||||
|
Loading…
Reference in New Issue
Block a user