Add holiday menu and various examples

This commit is contained in:
Garrett Cox 2024-11-01 09:09:13 -05:00
parent 0425539fee
commit 563061beda
36 changed files with 3356 additions and 126 deletions

View File

@ -0,0 +1,12 @@
<DisplayList Version="0">
<PipeSync/>
<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_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"/>
<SetPrimColor M="0" L="0" R="255" G="251" B="44" A="255"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,21 @@
<DisplayList Version="0">
<PipeSync/>
<SetCombineLERP A0="G_CCMUX_TEXEL0" B0="G_CCMUX_0" C0="G_CCMUX_SHADE" D0="G_CCMUX_0" Aa0="G_ACMUX_0" Ab0="G_ACMUX_0" Ac0="G_ACMUX_0" Ad0="G_ACMUX_TEXEL0" 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_FOG="1" G_LIGHTING="1" G_SHADING_SMOOTH="1" />
<ClearGeometryMode G_CULL_FRONT="1" G_CULL_BACK="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_TEX_EDGE2="1" />
<Texture S="65535" T="65535" Level="0" Tile="0" On="1"/>
<SetTextureLUT Mode="G_TT_NONE"/>
<TileSync/>
<SetTextureImage Path="objects/object_penguin/ping_eye" 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="6" ShiftS="0" MaskT="6" ShiftT="0"/>
<LoadSync/>
<LoadBlock Tile="7" Uls="0" Ult="0" Lrs="4095" Dxt="128"/>
<PipeSync/>
<SetTile Format="G_IM_FMT_RGBA" Size="G_IM_SIZ_16b" Line="16" TMem="0" Tile="0" Palette="0" Cms0="G_TX_WRAP" Cms1="G_TX_NOMIRROR" Cmt0="G_TX_WRAP" Cmt1="G_TX_NOMIRROR" MaskS="6" ShiftS="0" MaskT="6" ShiftT="0"/>
<SetTileSize T="0" Uls="0" Ult="0" Lrs="252" Lrt="252"/>
<SetPrimColor M="0" L="0" R="255" G="255" B="255" A="255"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,21 @@
<DisplayList Version="0">
<PipeSync/>
<SetCombineLERP A0="G_CCMUX_TEXEL0" B0="G_CCMUX_0" C0="G_CCMUX_SHADE" D0="G_CCMUX_0" Aa0="G_ACMUX_0" Ab0="G_ACMUX_0" Ac0="G_ACMUX_0" Ad0="G_ACMUX_1" A1="G_CCMUX_COMBINED" B1="G_CCMUX_0" C1="G_CCMUX_PRIMITIVE" D1="G_CCMUX_0" Aa1="G_ACMUX_0" Ab1="G_ACMUX_0" Ac1="G_ACMUX_0" Ad1="G_ACMUX_COMBINED"/>
<SetGeometryMode G_ZBUFFER="1" G_SHADE="1" G_CULL_BACK="1" G_FOG="1" G_LIGHTING="1" G_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_penguin/ping_tex" 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="6" ShiftS="0" MaskT="6" ShiftT="0"/>
<LoadSync/>
<LoadBlock Tile="7" Uls="0" Ult="0" Lrs="4095" Dxt="128"/>
<PipeSync/>
<SetTile Format="G_IM_FMT_RGBA" Size="G_IM_SIZ_16b" Line="16" TMem="0" Tile="0" Palette="0" Cms0="G_TX_WRAP" Cms1="G_TX_NOMIRROR" Cmt0="G_TX_WRAP" Cmt1="G_TX_NOMIRROR" MaskS="6" ShiftS="0" MaskT="6" ShiftT="0"/>
<SetTileSize T="0" Uls="0" Ult="0" Lrs="252" Lrt="252"/>
<SetPrimColor M="0" L="0" R="255" G="255" B="255" A="255"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,15 @@
<DisplayList Version="0">
<CallDisplayList Path="objects/object_penguin/mat_object_penguin_DL_skin"/>
<CallDisplayList Path="objects/object_penguin/object_penguin_DL_tri_0"/>
<CallDisplayList Path="objects/object_penguin/mat_object_penguin_DL_beak"/>
<CallDisplayList Path="objects/object_penguin/object_penguin_DL_tri_1"/>
<CallDisplayList Path="objects/object_penguin/mat_object_penguin_DL_eye"/>
<CallDisplayList Path="objects/object_penguin/object_penguin_DL_tri_2"/>
<PipeSync/>
<SetGeometryMode G_LIGHTING="1" />
<ClearGeometryMode G_TEXTURE_GEN="1" />
<SetCombineLERP A0="G_CCMUX_0" B0="G_CCMUX_0" C0="G_CCMUX_0" D0="G_CCMUX_SHADE" Aa0="G_ACMUX_0" Ab0="G_ACMUX_0" Ac0="G_ACMUX_0" Ad0="G_ACMUX_ENVIRONMENT" A1="G_CCMUX_0" B1="G_CCMUX_0" C1="G_CCMUX_0" D1="G_CCMUX_SHADE" Aa1="G_ACMUX_0" Ab1="G_ACMUX_0" Ac1="G_ACMUX_0" Ad1="G_ACMUX_ENVIRONMENT"/>
<Texture S="65535" T="65535" Level="0" Tile="0" On="0"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,862 @@
<DisplayList Version="0">
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" 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="4" V01="5" V02="3"/>
<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="9" V01="10" V02="8"/>
<Triangle1 V00="9" V01="11" V02="10"/>
<Triangle1 V00="11" V01="12" V02="10"/>
<Triangle1 V00="11" V01="13" V02="12"/>
<Triangle1 V00="14" V01="13" V02="11"/>
<Triangle1 V00="14" V01="11" V02="15"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="16" Count="16"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="0" V01="2" V02="3"/>
<Triangle1 V00="4" V01="1" V02="0"/>
<Triangle1 V00="4" V01="5" V02="1"/>
<Triangle1 V00="4" V01="6" V02="5"/>
<Triangle1 V00="4" V01="7" V02="6"/>
<Triangle1 V00="7" V01="8" V02="6"/>
<Triangle1 V00="7" V01="9" V02="8"/>
<Triangle1 V00="6" V01="8" V02="10"/>
<Triangle1 V00="6" 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_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="32" 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="4" V01="5" V02="3"/>
<Triangle1 V00="6" V01="5" V02="4"/>
<Triangle1 V00="6" V01="7" V02="5"/>
<Triangle1 V00="7" V01="8" V02="5"/>
<Triangle1 V00="7" V01="9" V02="8"/>
<Triangle1 V00="5" V01="8" V02="10"/>
<Triangle1 V00="5" V01="10" V02="3"/>
<Triangle1 V00="3" V01="10" V02="11"/>
<Triangle1 V00="3" V01="11" V02="1"/>
<Triangle1 V00="1" V01="11" V02="12"/>
<Triangle1 V00="1" V01="12" V02="13"/>
<Triangle1 V00="13" V01="12" V02="14"/>
<Triangle1 V00="13" V01="14" V02="15"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="48" Count="16"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="0" V01="2" V02="3"/>
<Triangle1 V00="4" V01="3" V02="2"/>
<Triangle1 V00="4" V01="2" V02="5"/>
<Triangle1 V00="6" V01="4" V02="5"/>
<Triangle1 V00="6" V01="5" V02="7"/>
<Triangle1 V00="8" V01="6" V02="7"/>
<Triangle1 V00="8" V01="7" V02="9"/>
<Triangle1 V00="10" V01="8" V02="9"/>
<Triangle1 V00="10" V01="9" V02="11"/>
<Triangle1 V00="12" V01="10" V02="11"/>
<Triangle1 V00="12" V01="11" V02="13"/>
<Triangle1 V00="14" V01="3" V02="4"/>
<Triangle1 V00="14" V01="15" V02="3"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="64" Count="14"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="0" V01="2" V02="3"/>
<Triangle1 V00="0" V01="4" V02="1"/>
<Triangle1 V00="0" V01="5" V02="4"/>
<Triangle1 V00="4" V01="6" V02="1"/>
<Triangle1 V00="4" V01="7" V02="6"/>
<Triangle1 V00="8" V01="9" V02="10"/>
<Triangle1 V00="8" V01="11" V02="9"/>
<Triangle1 V00="8" V01="12" V02="11"/>
<Triangle1 V00="8" V01="13" V02="12"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="78" 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="2" V01="5" V02="4"/>
<Triangle1 V00="6" V01="7" V02="8"/>
<Triangle1 V00="6" V01="8" V02="9"/>
<Triangle1 V00="10" V01="6" V02="9"/>
<Triangle1 V00="10" V01="9" V02="11"/>
<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_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="94" Count="16"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="0" V01="3" V02="1"/>
<Triangle1 V00="3" V01="0" V02="4"/>
<Triangle1 V00="3" V01="4" V02="5"/>
<Triangle1 V00="5" V01="4" V02="6"/>
<Triangle1 V00="5" V01="6" V02="7"/>
<Triangle1 V00="8" V01="9" V02="10"/>
<Triangle1 V00="8" V01="10" V02="11"/>
<Triangle1 V00="11" V01="10" V02="12"/>
<Triangle1 V00="11" V01="12" V02="13"/>
<Triangle1 V00="14" V01="13" V02="12"/>
<Triangle1 V00="14" V01="12" V02="15"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="110" 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="3" 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="10" V01="9" V02="8"/>
<Triangle1 V00="10" V01="11" V02="9"/>
<Triangle1 V00="11" V01="10" V02="12"/>
<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_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="126" 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="0" V02="4"/>
<Triangle1 V00="6" V01="7" V02="0"/>
<Triangle1 V00="7" V01="1" V02="0"/>
<Triangle1 V00="7" V01="8" V02="1"/>
<Triangle1 V00="9" V01="1" V02="8"/>
<Triangle1 V00="10" V01="9" V02="8"/>
<Triangle1 V00="8" V01="11" V02="10"/>
<Triangle1 V00="8" V01="12" V02="11"/>
<Triangle1 V00="12" V01="13" V02="11"/>
<Triangle1 V00="12" V01="14" V02="13"/>
<Triangle1 V00="11" V01="13" V02="15"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="142" 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="4" V01="3" V02="5"/>
<Triangle1 V00="4" V01="5" V02="6"/>
<Triangle1 V00="7" V01="4" V02="6"/>
<Triangle1 V00="7" V01="6" V02="8"/>
<Triangle1 V00="9" V01="4" V02="7"/>
<Triangle1 V00="9" V01="2" V02="4"/>
<Triangle1 V00="10" V01="2" V02="9"/>
<Triangle1 V00="9" V01="11" V02="10"/>
<Triangle1 V00="9" V01="12" V02="11"/>
<Triangle1 V00="9" V01="13" V02="12"/>
<Triangle1 V00="9" V01="14" V02="13"/>
<Triangle1 V00="15" V01="13" V02="14"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="158" Count="16"/>
<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="2" V02="4"/>
<Triangle1 V00="5" V01="6" V02="2"/>
<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="11" V01="9" V02="10"/>
<Triangle1 V00="11" V01="12" V02="9"/>
<Triangle1 V00="13" V01="12" V02="11"/>
<Triangle1 V00="13" V01="14" V02="12"/>
<Triangle1 V00="13" V01="15" V02="14"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="174" Count="16"/>
<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="2" V02="4"/>
<Triangle1 V00="5" V01="6" V02="2"/>
<Triangle1 V00="7" V01="2" V02="6"/>
<Triangle1 V00="7" V01="8" V02="2"/>
<Triangle1 V00="7" V01="9" V02="8"/>
<Triangle1 V00="7" V01="10" V02="9"/>
<Triangle1 V00="10" V01="7" V02="11"/>
<Triangle1 V00="7" V01="12" V02="11"/>
<Triangle1 V00="7" V01="13" V02="12"/>
<Triangle1 V00="13" V01="14" V02="12"/>
<Triangle1 V00="13" V01="15" V02="14"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="190" 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="4" V02="5"/>
<Triangle1 V00="6" V01="5" V02="7"/>
<Triangle1 V00="8" V01="6" V02="7"/>
<Triangle1 V00="8" V01="7" V02="9"/>
<Triangle1 V00="10" V01="6" V02="8"/>
<Triangle1 V00="10" V01="11" V02="6"/>
<Triangle1 V00="11" V01="10" V02="12"/>
<Triangle1 V00="12" V01="10" V02="13"/>
<Triangle1 V00="14" V01="13" V02="10"/>
<Triangle1 V00="14" V01="15" V02="13"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="206" Count="16"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="0" V01="3" V02="1"/>
<Triangle1 V00="4" V01="5" V02="6"/>
<Triangle1 V00="7" V01="4" V02="6"/>
<Triangle1 V00="7" V01="6" V02="8"/>
<Triangle1 V00="8" V01="9" V02="7"/>
<Triangle1 V00="8" V01="10" V02="9"/>
<Triangle1 V00="10" V01="11" V02="9"/>
<Triangle1 V00="10" V01="12" V02="11"/>
<Triangle1 V00="13" V01="11" V02="12"/>
<Triangle1 V00="13" V01="14" V02="11"/>
<Triangle1 V00="15" V01="14" V02="13"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="222" Count="16"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="1" V01="0" V02="3"/>
<Triangle1 V00="1" V01="3" V02="4"/>
<Triangle1 V00="4" V01="3" V02="5"/>
<Triangle1 V00="6" V01="1" V02="4"/>
<Triangle1 V00="6" V01="7" V02="1"/>
<Triangle1 V00="8" V01="7" V02="6"/>
<Triangle1 V00="8" V01="9" V02="7"/>
<Triangle1 V00="9" V01="8" V02="10"/>
<Triangle1 V00="9" V01="10" V02="11"/>
<Triangle1 V00="11" V01="12" V02="9"/>
<Triangle1 V00="11" V01="13" V02="12"/>
<Triangle1 V00="13" V01="14" V02="12"/>
<Triangle1 V00="13" V01="15" V02="14"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="238" 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="4" V01="5" V02="3"/>
<Triangle1 V00="5" V01="4" V02="6"/>
<Triangle1 V00="5" V01="6" V02="7"/>
<Triangle1 V00="7" V01="8" V02="5"/>
<Triangle1 V00="7" V01="9" V02="8"/>
<Triangle1 V00="9" V01="10" V02="8"/>
<Triangle1 V00="9" V01="11" V02="10"/>
<Triangle1 V00="12" V01="11" V02="9"/>
<Triangle1 V00="8" V01="10" V02="13"/>
<Triangle1 V00="8" V01="13" V02="14"/>
<Triangle1 V00="14" V01="13" V02="15"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="254" 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="5" V01="3" V02="4"/>
<Triangle1 V00="5" V01="4" V02="6"/>
<Triangle1 V00="7" V01="3" V02="5"/>
<Triangle1 V00="7" V01="8" V02="3"/>
<Triangle1 V00="8" V01="2" V02="3"/>
<Triangle1 V00="8" V01="9" V02="2"/>
<Triangle1 V00="10" V01="2" V02="9"/>
<Triangle1 V00="10" V01="0" V02="2"/>
<Triangle1 V00="11" V01="0" V02="10"/>
<Triangle1 V00="11" V01="12" V02="0"/>
<Triangle1 V00="13" V01="14" V02="15"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="270" Count="16"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="0" V01="3" V02="4"/>
<Triangle1 V00="5" V01="6" V02="7"/>
<Triangle1 V00="5" V01="7" V02="8"/>
<Triangle1 V00="8" V01="7" V02="9"/>
<Triangle1 V00="7" V01="10" V02="9"/>
<Triangle1 V00="7" V01="11" V02="10"/>
<Triangle1 V00="9" V01="10" V02="12"/>
<Triangle1 V00="10" V01="13" V02="12"/>
<Triangle1 V00="10" V01="14" V02="13"/>
<Triangle1 V00="14" V01="15" V02="13"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="286" 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="4" V01="5" V02="3"/>
<Triangle1 V00="4" V01="6" V02="5"/>
<Triangle1 V00="6" V01="7" V02="5"/>
<Triangle1 V00="6" V01="8" V02="7"/>
<Triangle1 V00="9" V01="8" V02="6"/>
<Triangle1 V00="9" V01="10" V02="8"/>
<Triangle1 V00="11" V01="10" V02="9"/>
<Triangle1 V00="11" V01="12" V02="10"/>
<Triangle1 V00="11" V01="13" V02="12"/>
<Triangle1 V00="11" V01="14" V02="13"/>
<Triangle1 V00="15" V01="13" V02="14"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="302" Count="16"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="3" V01="2" V02="1"/>
<Triangle1 V00="3" V01="4" V02="2"/>
<Triangle1 V00="4" V01="3" V02="5"/>
<Triangle1 V00="4" V01="5" V02="6"/>
<Triangle1 V00="6" V01="5" V02="7"/>
<Triangle1 V00="5" V01="8" V02="7"/>
<Triangle1 V00="7" V01="8" V02="9"/>
<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="13" V01="14" V02="12"/>
<Triangle1 V00="13" V01="15" V02="14"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="318" Count="16"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="0" V01="3" V02="1"/>
<Triangle1 V00="3" V01="4" V02="1"/>
<Triangle1 V00="3" V01="5" V02="4"/>
<Triangle1 V00="5" V01="6" V02="4"/>
<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="10" V01="11" V02="9"/>
<Triangle1 V00="12" V01="11" V02="10"/>
<Triangle1 V00="11" V01="13" V02="9"/>
<Triangle1 V00="9" V01="13" V02="14"/>
<Triangle1 V00="13" V01="15" V02="14"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="334" 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="4" V01="5" V02="3"/>
<Triangle1 V00="4" V01="6" V02="5"/>
<Triangle1 V00="6" V01="7" V02="5"/>
<Triangle1 V00="6" V01="8" V02="7"/>
<Triangle1 V00="8" V01="9" V02="7"/>
<Triangle1 V00="8" V01="10" V02="9"/>
<Triangle1 V00="10" V01="11" V02="9"/>
<Triangle1 V00="10" V01="12" V02="11"/>
<Triangle1 V00="12" V01="13" V02="11"/>
<Triangle1 V00="12" V01="14" V02="13"/>
<Triangle1 V00="14" V01="15" V02="13"/>
<Triangle1 V00="14" V01="0" V02="15"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="350" Count="16"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="1" V01="3" V02="4"/>
<Triangle1 V00="4" V01="3" V02="5"/>
<Triangle1 V00="3" V01="6" V02="5"/>
<Triangle1 V00="3" V01="7" V02="6"/>
<Triangle1 V00="7" V01="8" V02="6"/>
<Triangle1 V00="7" V01="9" V02="8"/>
<Triangle1 V00="9" V01="10" V02="8"/>
<Triangle1 V00="9" V01="11" V02="10"/>
<Triangle1 V00="11" V01="12" V02="10"/>
<Triangle1 V00="11" V01="13" V02="12"/>
<Triangle1 V00="13" V01="14" V02="12"/>
<Triangle1 V00="13" V01="15" V02="14"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="366" Count="16"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="0" V01="3" V02="1"/>
<Triangle1 V00="3" V01="4" V02="1"/>
<Triangle1 V00="3" V01="5" V02="4"/>
<Triangle1 V00="5" V01="6" V02="4"/>
<Triangle1 V00="7" V01="4" V02="6"/>
<Triangle1 V00="7" V01="6" V02="8"/>
<Triangle1 V00="9" V01="8" V02="6"/>
<Triangle1 V00="9" V01="10" V02="8"/>
<Triangle1 V00="11" V01="10" V02="9"/>
<Triangle1 V00="11" V01="12" V02="10"/>
<Triangle1 V00="12" V01="13" V02="10"/>
<Triangle1 V00="12" V01="14" V02="13"/>
<Triangle1 V00="14" V01="7" V02="13"/>
<Triangle1 V00="14" V01="2" V02="7"/>
<Triangle1 V00="2" V01="4" V02="7"/>
<Triangle1 V00="2" V01="1" V02="4"/>
<Triangle1 V00="13" V01="7" V02="8"/>
<Triangle1 V00="13" V01="8" V02="15"/>
<Triangle1 V00="10" V01="15" V02="8"/>
<Triangle1 V00="10" V01="13" V02="15"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="382" Count="16"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="0" V01="2" V02="3"/>
<Triangle1 V00="4" V01="5" V02="6"/>
<Triangle1 V00="4" V01="6" V02="7"/>
<Triangle1 V00="7" V01="6" V02="8"/>
<Triangle1 V00="7" V01="8" V02="9"/>
<Triangle1 V00="10" V01="7" V02="9"/>
<Triangle1 V00="10" V01="9" V02="11"/>
<Triangle1 V00="10" V01="11" V02="12"/>
<Triangle1 V00="10" V01="12" V02="13"/>
<Triangle1 V00="13" V01="12" V02="14"/>
<Triangle1 V00="13" V01="14" V02="15"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="398" Count="16"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="0" V01="2" V02="3"/>
<Triangle1 V00="4" V01="1" V02="0"/>
<Triangle1 V00="4" V01="5" V02="1"/>
<Triangle1 V00="4" V01="6" V02="5"/>
<Triangle1 V00="4" V01="7" V02="6"/>
<Triangle1 V00="8" V01="9" V02="10"/>
<Triangle1 V00="8" 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="13" V01="14" V02="15"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="414" 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="4" V01="5" V02="6"/>
<Triangle1 V00="4" V01="6" V02="7"/>
<Triangle1 V00="7" V01="6" V02="8"/>
<Triangle1 V00="7" V01="8" V02="9"/>
<Triangle1 V00="10" V01="7" V02="9"/>
<Triangle1 V00="10" V01="9" V02="11"/>
<Triangle1 V00="12" V01="10" V02="11"/>
<Triangle1 V00="12" V01="11" V02="13"/>
<Triangle1 V00="14" V01="12" V02="13"/>
<Triangle1 V00="14" V01="13" V02="15"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="430" 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="0" V01="5" V02="4"/>
<Triangle1 V00="3" V01="4" V02="6"/>
<Triangle1 V00="3" V01="6" V02="7"/>
<Triangle1 V00="7" V01="6" V02="8"/>
<Triangle1 V00="7" V01="8" V02="9"/>
<Triangle1 V00="7" V01="9" V02="10"/>
<Triangle1 V00="7" V01="10" V02="11"/>
<Triangle1 V00="3" V01="7" V02="11"/>
<Triangle1 V00="3" V01="11" V02="1"/>
<Triangle1 V00="12" V01="13" V02="14"/>
<Triangle1 V00="12" V01="15" V02="13"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="446" 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="4" V01="5" V02="3"/>
<Triangle1 V00="6" V01="5" V02="4"/>
<Triangle1 V00="6" V01="7" V02="5"/>
<Triangle1 V00="7" V01="8" V02="5"/>
<Triangle1 V00="7" V01="9" V02="8"/>
<Triangle1 V00="9" V01="10" V02="8"/>
<Triangle1 V00="9" V01="11" V02="10"/>
<Triangle1 V00="11" V01="12" V02="10"/>
<Triangle1 V00="11" V01="13" V02="12"/>
<Triangle1 V00="13" V01="14" V02="12"/>
<Triangle1 V00="13" V01="15" V02="14"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="462" 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="0" V01="5" V02="4"/>
<Triangle1 V00="6" V01="4" V02="5"/>
<Triangle1 V00="6" V01="7" V02="4"/>
<Triangle1 V00="8" V01="7" V02="6"/>
<Triangle1 V00="8" V01="9" V02="7"/>
<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="14" V01="13" V02="12"/>
<Triangle1 V00="14" V01="15" V02="13"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="478" Count="16"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="0" V01="3" V02="1"/>
<Triangle1 V00="3" V01="4" V02="1"/>
<Triangle1 V00="3" V01="5" V02="4"/>
<Triangle1 V00="5" V01="6" V02="4"/>
<Triangle1 V00="5" V01="7" V02="6"/>
<Triangle1 V00="4" V01="6" V02="8"/>
<Triangle1 V00="4" V01="8" V02="9"/>
<Triangle1 V00="9" V01="8" V02="10"/>
<Triangle1 V00="9" V01="10" V02="11"/>
<Triangle1 V00="11" V01="10" V02="12"/>
<Triangle1 V00="11" V01="12" V02="13"/>
<Triangle1 V00="12" V01="14" V02="13"/>
<Triangle1 V00="12" V01="15" V02="14"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="494" 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="0" V01="5" V02="4"/>
<Triangle1 V00="6" V01="4" V02="5"/>
<Triangle1 V00="6" V01="7" V02="4"/>
<Triangle1 V00="8" V01="7" V02="6"/>
<Triangle1 V00="8" V01="6" V02="9"/>
<Triangle1 V00="10" V01="8" V02="9"/>
<Triangle1 V00="10" V01="9" V02="11"/>
<Triangle1 V00="12" V01="10" V02="11"/>
<Triangle1 V00="12" V01="11" V02="13"/>
<Triangle1 V00="14" V01="10" V02="12"/>
<Triangle1 V00="14" V01="15" V02="10"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="510" Count="16"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="0" V01="3" V02="1"/>
<Triangle1 V00="3" V01="4" V02="1"/>
<Triangle1 V00="3" V01="5" V02="4"/>
<Triangle1 V00="5" V01="6" V02="4"/>
<Triangle1 V00="5" 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="12" V01="11" V02="8"/>
<Triangle1 V00="12" V01="8" V02="13"/>
<Triangle1 V00="12" V01="13" V02="14"/>
<Triangle1 V00="12" V01="14" V02="15"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="526" Count="16"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="0" V01="2" V02="3"/>
<Triangle1 V00="4" V01="3" V02="2"/>
<Triangle1 V00="4" V01="2" V02="5"/>
<Triangle1 V00="6" V01="4" V02="5"/>
<Triangle1 V00="6" V01="7" V02="4"/>
<Triangle1 V00="8" V01="7" V02="6"/>
<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="9" V01="12" V02="14"/>
<Triangle1 V00="9" V01="14" V02="7"/>
<Triangle1 V00="7" V01="14" V02="15"/>
<Triangle1 V00="7" V01="15" V02="4"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="542" Count="16"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="0" V01="2" V02="3"/>
<Triangle1 V00="4" V01="3" V02="2"/>
<Triangle1 V00="4" V01="2" V02="5"/>
<Triangle1 V00="6" V01="5" V02="2"/>
<Triangle1 V00="6" V01="2" V02="7"/>
<Triangle1 V00="8" V01="7" V02="2"/>
<Triangle1 V00="8" V01="2" V02="9"/>
<Triangle1 V00="10" V01="9" V02="2"/>
<Triangle1 V00="10" V01="2" V02="11"/>
<Triangle1 V00="10" V01="11" V02="12"/>
<Triangle1 V00="10" V01="12" V02="9"/>
<Triangle1 V00="8" V01="9" V02="12"/>
<Triangle1 V00="8" V01="12" V02="7"/>
<Triangle1 V00="6" V01="7" V02="12"/>
<Triangle1 V00="6" V01="12" V02="13"/>
<Triangle1 V00="14" V01="13" V02="12"/>
<Triangle1 V00="14" V01="12" V02="15"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="558" 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="4" V02="5"/>
<Triangle1 V00="6" V01="5" V02="7"/>
<Triangle1 V00="8" V01="9" V02="10"/>
<Triangle1 V00="8" V01="11" V02="9"/>
<Triangle1 V00="12" V01="11" V02="8"/>
<Triangle1 V00="12" V01="13" V02="11"/>
<Triangle1 V00="14" V01="13" V02="12"/>
<Triangle1 V00="14" V01="15" V02="13"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="574" 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="0" V01="5" V02="4"/>
<Triangle1 V00="5" V01="6" V02="4"/>
<Triangle1 V00="5" V01="7" V02="6"/>
<Triangle1 V00="7" V01="8" V02="6"/>
<Triangle1 V00="7" V01="9" V02="8"/>
<Triangle1 V00="9" V01="10" V02="8"/>
<Triangle1 V00="9" V01="11" V02="10"/>
<Triangle1 V00="8" V01="10" V02="12"/>
<Triangle1 V00="8" V01="12" V02="13"/>
<Triangle1 V00="13" V01="12" V02="14"/>
<Triangle1 V00="15" V01="14" V02="12"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="590" 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="4" V01="5" V02="1"/>
<Triangle1 V00="4" V01="6" V02="5"/>
<Triangle1 V00="7" V01="5" V02="6"/>
<Triangle1 V00="8" V01="7" V02="6"/>
<Triangle1 V00="8" V01="6" V02="9"/>
<Triangle1 V00="9" V01="6" V02="10"/>
<Triangle1 V00="11" V01="10" V02="6"/>
<Triangle1 V00="11" V01="12" V02="10"/>
<Triangle1 V00="13" V01="12" V02="11"/>
<Triangle1 V00="13" V01="14" V02="12"/>
<Triangle1 V00="14" V01="15" V02="12"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="606" Count="15"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="3" V01="2" V02="1"/>
<Triangle1 V00="4" V01="3" V02="1"/>
<Triangle1 V00="4" V01="1" V02="5"/>
<Triangle1 V00="6" V01="3" V02="4"/>
<Triangle1 V00="6" V01="7" V02="3"/>
<Triangle1 V00="8" V01="7" V02="6"/>
<Triangle1 V00="8" V01="9" V02="7"/>
<Triangle1 V00="10" V01="9" V02="8"/>
<Triangle1 V00="7" V01="9" V02="11"/>
<Triangle1 V00="9" V01="12" V02="11"/>
<Triangle1 V00="11" V01="12" V02="13"/>
<Triangle1 V00="14" V01="13" V02="12"/>
<Triangle1 V00="14" V01="2" V02="13"/>
<Triangle1 V00="11" V01="13" V02="2"/>
<Triangle1 V00="3" V01="11" V02="2"/>
<Triangle1 V00="7" V01="11" V02="3"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="621" 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="4" V02="5"/>
<Triangle1 V00="6" V01="7" V02="8"/>
<Triangle1 V00="7" V01="9" V02="8"/>
<Triangle1 V00="7" V01="10" V02="9"/>
<Triangle1 V00="10" V01="11" V02="9"/>
<Triangle1 V00="10" V01="12" V02="11"/>
<Triangle1 V00="9" V01="11" V02="13"/>
<Triangle1 V00="11" V01="14" V02="13"/>
<Triangle1 V00="13" V01="14" V02="15"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="637" Count="16"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="0" V01="3" V02="1"/>
<Triangle1 V00="4" V01="1" V02="3"/>
<Triangle1 V00="5" V01="4" V02="3"/>
<Triangle1 V00="6" V01="4" V02="5"/>
<Triangle1 V00="7" V01="8" V02="9"/>
<Triangle1 V00="7" V01="10" V02="8"/>
<Triangle1 V00="11" V01="10" V02="7"/>
<Triangle1 V00="11" V01="12" V02="10"/>
<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_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="653" 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="6" V01="7" V02="5"/>
<Triangle1 V00="6" V01="8" V02="7"/>
<Triangle1 V00="9" V01="10" V02="11"/>
<Triangle1 V00="9" V01="12" V02="10"/>
<Triangle1 V00="13" V01="12" V02="9"/>
<Triangle1 V00="9" V01="14" V02="13"/>
<Triangle1 V00="9" V01="15" V02="14"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="669" Count="16"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="0" V01="3" V02="1"/>
<Triangle1 V00="4" V01="1" V02="3"/>
<Triangle1 V00="4" V01="5" V02="1"/>
<Triangle1 V00="4" V01="6" V02="5"/>
<Triangle1 V00="4" V01="7" V02="6"/>
<Triangle1 V00="7" V01="8" V02="6"/>
<Triangle1 V00="7" V01="9" V02="8"/>
<Triangle1 V00="9" V01="10" V02="8"/>
<Triangle1 V00="9" V01="11" V02="10"/>
<Triangle1 V00="12" V01="11" V02="9"/>
<Triangle1 V00="12" V01="13" V02="11"/>
<Triangle1 V00="14" V01="13" V02="12"/>
<Triangle1 V00="14" V01="15" V02="13"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="685" 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="4" V01="5" V02="3"/>
<Triangle1 V00="6" V01="5" V02="4"/>
<Triangle1 V00="7" V01="6" V02="4"/>
<Triangle1 V00="7" V01="4" V02="8"/>
<Triangle1 V00="9" V01="6" V02="7"/>
<Triangle1 V00="9" V01="10" V02="6"/>
<Triangle1 V00="11" V01="10" V02="9"/>
<Triangle1 V00="12" V01="11" V02="9"/>
<Triangle1 V00="11" V01="13" V02="10"/>
<Triangle1 V00="13" V01="14" V02="10"/>
<Triangle1 V00="13" V01="15" V02="14"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="701" 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="4" V01="5" V02="3"/>
<Triangle1 V00="6" V01="5" V02="4"/>
<Triangle1 V00="6" V01="7" V02="5"/>
<Triangle1 V00="8" V01="7" V02="6"/>
<Triangle1 V00="8" V01="9" V02="7"/>
<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="14" V01="13" V02="12"/>
<Triangle1 V00="15" V01="14" V02="12"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="717" Count="16"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="0" V01="3" V02="1"/>
<Triangle1 V00="3" V01="4" V02="1"/>
<Triangle1 V00="3" V01="5" V02="4"/>
<Triangle1 V00="5" V01="6" V02="4"/>
<Triangle1 V00="5" V01="7" V02="6"/>
<Triangle1 V00="8" V01="7" V02="5"/>
<Triangle1 V00="8" V01="9" V02="7"/>
<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="14" V01="13" V02="12"/>
<Triangle1 V00="14" V01="15" V02="13"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="733" 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="4" V01="5" V02="3"/>
<Triangle1 V00="6" V01="5" V02="4"/>
<Triangle1 V00="7" V01="6" V02="4"/>
<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="10" V02="8"/>
<Triangle1 V00="11" V01="12" V02="10"/>
<Triangle1 V00="13" V01="12" V02="11"/>
<Triangle1 V00="13" V01="14" V02="12"/>
<Triangle1 V00="15" V01="14" V02="13"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="749" 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="5" V01="6" V02="4"/>
<Triangle1 V00="7" V01="6" V02="5"/>
<Triangle1 V00="7" V01="8" V02="6"/>
<Triangle1 V00="9" V01="8" V02="7"/>
<Triangle1 V00="9" V01="10" V02="8"/>
<Triangle1 V00="8" V01="10" V02="11"/>
<Triangle1 V00="12" V01="11" V02="10"/>
<Triangle1 V00="12" V01="10" V02="13"/>
<Triangle1 V00="2" V01="12" V02="13"/>
<Triangle1 V00="2" V01="13" V02="14"/>
<Triangle1 V00="1" V01="12" V02="2"/>
<Triangle1 V00="1" V01="15" V02="12"/>
<Triangle1 V00="4" V01="15" V02="1"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="765" 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="4" V01="5" V02="1"/>
<Triangle1 V00="1" V01="5" V02="6"/>
<Triangle1 V00="2" V01="6" V02="5"/>
<Triangle1 V00="2" V01="5" V02="7"/>
<Triangle1 V00="1" V01="6" V02="2"/>
<Triangle1 V00="8" V01="9" V02="10"/>
<Triangle1 V00="8" V01="10" V02="11"/>
<Triangle1 V00="12" V01="13" V02="14"/>
<Triangle1 V00="15" V01="14" V02="13"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="781" Count="16"/>
<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="2" V02="4"/>
<Triangle1 V00="6" V01="7" V02="8"/>
<Triangle1 V00="6" V01="9" V02="7"/>
<Triangle1 V00="6" V01="10" V02="9"/>
<Triangle1 V00="6" 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_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="797" Count="16"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="0" V01="2" V02="3"/>
<Triangle1 V00="4" V01="3" V02="2"/>
<Triangle1 V00="4" V01="2" V02="5"/>
<Triangle1 V00="4" V01="5" V02="6"/>
<Triangle1 V00="4" V01="6" V02="7"/>
<Triangle1 V00="7" V01="6" V02="8"/>
<Triangle1 V00="7" V01="8" V02="9"/>
<Triangle1 V00="10" V01="7" V02="9"/>
<Triangle1 V00="10" V01="9" V02="11"/>
<Triangle1 V00="12" V01="10" V02="11"/>
<Triangle1 V00="12" V01="11" V02="13"/>
<Triangle1 V00="12" V01="13" V02="14"/>
<Triangle1 V00="12" V01="14" V02="15"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="813" 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="3" V02="5"/>
<Triangle1 V00="6" V01="5" V02="7"/>
<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="10" V01="11" V02="12"/>
<Triangle1 V00="10" V01="12" V02="13"/>
<Triangle1 V00="14" V01="10" V02="13"/>
<Triangle1 V00="14" V01="15" V02="10"/>
<Triangle1 V00="15" V01="9" V02="10"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="829" 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="3" V01="5" V02="4"/>
<Triangle1 V00="3" 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="5" V01="9" V02="10"/>
<Triangle1 V00="10" V01="9" V02="11"/>
<Triangle1 V00="10" V01="11" V02="12"/>
<Triangle1 V00="13" V01="10" V02="12"/>
<Triangle1 V00="13" V01="12" V02="14"/>
<Triangle1 V00="13" V01="14" V02="15"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="845" 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="5" V01="2" V02="4"/>
<Triangle1 V00="5" V01="4" V02="6"/>
<Triangle1 V00="7" V01="2" V02="5"/>
<Triangle1 V00="7" V01="0" V02="2"/>
<Triangle1 V00="7" V01="8" V02="0"/>
<Triangle1 V00="7" V01="9" V02="8"/>
<Triangle1 V00="10" V01="11" V02="12"/>
<Triangle1 V00="13" V01="12" V02="11"/>
<Triangle1 V00="13" V01="14" V02="12"/>
<Triangle1 V00="13" V01="15" V02="14"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="861" Count="16"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="3" V01="2" V02="1"/>
<Triangle1 V00="3" V01="4" V02="2"/>
<Triangle1 V00="3" V01="5" V02="4"/>
<Triangle1 V00="3" V01="6" V02="5"/>
<Triangle1 V00="7" V01="5" V02="6"/>
<Triangle1 V00="7" V01="8" V02="5"/>
<Triangle1 V00="7" V01="9" V02="8"/>
<Triangle1 V00="7" V01="10" V02="9"/>
<Triangle1 V00="11" V01="9" V02="10"/>
<Triangle1 V00="11" V01="12" V02="9"/>
<Triangle1 V00="11" V01="13" V02="12"/>
<Triangle1 V00="11" V01="14" V02="13"/>
<Triangle1 V00="15" V01="13" V02="14"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="877" 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="3" V02="4"/>
<Triangle1 V00="5" V01="6" V02="3"/>
<Triangle1 V00="5" V01="7" V02="6"/>
<Triangle1 V00="5" 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="13" V01="11" V02="12"/>
<Triangle1 V00="13" V01="14" V02="11"/>
<Triangle1 V00="13" V01="15" V02="14"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="893" 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="0" V01="5" V02="6"/>
<Triangle1 V00="0" V01="6" V02="7"/>
<Triangle1 V00="0" V01="7" V02="8"/>
<Triangle1 V00="0" V01="8" V02="9"/>
<Triangle1 V00="0" V01="9" V02="10"/>
<Triangle1 V00="0" V01="10" V02="11"/>
<Triangle1 V00="0" V01="11" V02="12"/>
<Triangle1 V00="0" V01="12" V02="13"/>
<Triangle1 V00="0" V01="13" V02="14"/>
<Triangle1 V00="0" V01="14" V02="15"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_0" VertexBufferIndex="0" VertexOffset="909" Count="11"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="0" V01="2" V02="3"/>
<Triangle1 V00="4" V01="5" V02="6"/>
<Triangle1 V00="7" V01="6" V02="5"/>
<Triangle1 V00="7" V01="8" V02="6"/>
<Triangle1 V00="9" V01="6" V02="8"/>
<Triangle1 V00="9" V01="10" V02="6"/>
<Triangle1 V00="4" V01="6" V02="10"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,210 @@
<DisplayList Version="0">
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_1" 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="5" V01="6" V02="7"/>
<Triangle1 V00="7" V01="6" V02="8"/>
<Triangle1 V00="7" V01="8" V02="9"/>
<Triangle1 V00="9" V01="8" V02="10"/>
<Triangle1 V00="8" V01="11" V02="10"/>
<Triangle1 V00="8" V01="12" V02="11"/>
<Triangle1 V00="13" V01="11" V02="12"/>
<Triangle1 V00="13" V01="14" V02="11"/>
<Triangle1 V00="15" V01="11" V02="14"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_1" VertexBufferIndex="0" VertexOffset="16" Count="16"/>
<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="3" V02="6"/>
<Triangle1 V00="6" V01="3" V02="7"/>
<Triangle1 V00="6" V01="7" V02="8"/>
<Triangle1 V00="8" V01="7" V02="9"/>
<Triangle1 V00="8" V01="9" V02="10"/>
<Triangle1 V00="11" V01="8" V02="10"/>
<Triangle1 V00="11" V01="10" V02="12"/>
<Triangle1 V00="13" V01="8" V02="11"/>
<Triangle1 V00="13" V01="6" V02="8"/>
<Triangle1 V00="14" V01="6" V02="13"/>
<Triangle1 V00="13" V01="15" V02="14"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_1" VertexBufferIndex="0" VertexOffset="32" Count="16"/>
<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="2" V02="4"/>
<Triangle1 V00="5" V01="6" V02="2"/>
<Triangle1 V00="7" V01="2" V02="6"/>
<Triangle1 V00="7" V01="8" V02="2"/>
<Triangle1 V00="7" V01="9" V02="8"/>
<Triangle1 V00="7" V01="10" V02="9"/>
<Triangle1 V00="11" V01="10" V02="7"/>
<Triangle1 V00="11" V01="12" V02="10"/>
<Triangle1 V00="13" V01="12" V02="11"/>
<Triangle1 V00="13" V01="14" V02="12"/>
<Triangle1 V00="15" V01="14" V02="13"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_1" VertexBufferIndex="0" VertexOffset="48" 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="6" V02="7"/>
<Triangle1 V00="7" V01="6" V02="8"/>
<Triangle1 V00="8" V01="6" V02="9"/>
<Triangle1 V00="8" V01="9" V02="10"/>
<Triangle1 V00="11" V01="10" V02="9"/>
<Triangle1 V00="11" V01="9" V02="12"/>
<Triangle1 V00="13" V01="12" V02="9"/>
<Triangle1 V00="13" V01="9" V02="14"/>
<Triangle1 V00="15" V01="13" V02="14"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_1" 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="4" V01="2" V02="5"/>
<Triangle1 V00="3" V01="4" V02="6"/>
<Triangle1 V00="3" V01="6" V02="7"/>
<Triangle1 V00="8" V01="7" V02="6"/>
<Triangle1 V00="8" V01="6" V02="9"/>
<Triangle1 V00="10" V01="9" V02="6"/>
<Triangle1 V00="10" V01="6" V02="11"/>
<Triangle1 V00="11" V01="12" V02="10"/>
<Triangle1 V00="11" V01="13" V02="12"/>
<Triangle1 V00="13" V01="14" V02="12"/>
<Triangle1 V00="12" V01="14" V02="15"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_1" VertexBufferIndex="0" VertexOffset="80" Count="14"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="2" V01="1" V02="3"/>
<Triangle1 V00="2" V01="3" V02="4"/>
<Triangle1 V00="4" V01="3" V02="5"/>
<Triangle1 V00="4" V01="5" V02="6"/>
<Triangle1 V00="6" V01="5" V02="7"/>
<Triangle1 V00="6" V01="7" V02="8"/>
<Triangle1 V00="9" V01="6" V02="8"/>
<Triangle1 V00="9" V01="8" V02="10"/>
<Triangle1 V00="11" V01="6" V02="9"/>
<Triangle1 V00="11" V01="4" V02="6"/>
<Triangle1 V00="12" V01="4" V02="11"/>
<Triangle1 V00="12" V01="2" V02="4"/>
<Triangle1 V00="13" V01="2" V02="12"/>
<Triangle1 V00="13" V01="0" V02="2"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_1" VertexBufferIndex="0" VertexOffset="94" 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="4" V01="5" V02="3"/>
<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="9" V01="10" V02="8"/>
<Triangle1 V00="9" V01="11" V02="10"/>
<Triangle1 V00="11" V01="12" V02="10"/>
<Triangle1 V00="11" V01="13" V02="12"/>
<Triangle1 V00="11" V01="14" V02="13"/>
<Triangle1 V00="11" V01="15" V02="14"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_1" VertexBufferIndex="0" VertexOffset="110" Count="16"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="0" V01="3" V02="1"/>
<Triangle1 V00="4" V01="1" V02="3"/>
<Triangle1 V00="4" V01="5" V02="1"/>
<Triangle1 V00="6" V01="1" V02="5"/>
<Triangle1 V00="6" V01="7" V02="1"/>
<Triangle1 V00="7" V01="6" V02="8"/>
<Triangle1 V00="6" V01="9" V02="8"/>
<Triangle1 V00="6" V01="10" V02="9"/>
<Triangle1 V00="10" V01="11" V02="9"/>
<Triangle1 V00="10" V01="12" V02="11"/>
<Triangle1 V00="9" V01="11" V02="13"/>
<Triangle1 V00="9" V01="13" V02="14"/>
<Triangle1 V00="8" V01="9" V02="14"/>
<Triangle1 V00="8" V01="14" V02="15"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_1" VertexBufferIndex="0" VertexOffset="126" 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="2" V01="5" V02="4"/>
<Triangle1 V00="6" V01="4" V02="5"/>
<Triangle1 V00="6" V01="7" V02="4"/>
<Triangle1 V00="8" V01="4" V02="7"/>
<Triangle1 V00="8" V01="9" V02="4"/>
<Triangle1 V00="10" V01="4" V02="9"/>
<Triangle1 V00="10" V01="11" V02="4"/>
<Triangle1 V00="12" V01="11" V02="10"/>
<Triangle1 V00="13" V01="12" V02="10"/>
<Triangle1 V00="13" V01="10" V02="14"/>
<Triangle1 V00="15" V01="13" V02="14"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_1" VertexBufferIndex="0" VertexOffset="142" 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="5" V01="6" V02="7"/>
<Triangle1 V00="6" V01="8" V02="7"/>
<Triangle1 V00="6" V01="9" V02="8"/>
<Triangle1 V00="10" V01="9" V02="6"/>
<Triangle1 V00="10" V01="11" V02="9"/>
<Triangle1 V00="11" V01="10" V02="12"/>
<Triangle1 V00="11" V01="12" V02="13"/>
<Triangle1 V00="14" V01="13" V02="12"/>
<Triangle1 V00="14" V01="12" V02="15"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_1" VertexBufferIndex="0" VertexOffset="158" 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="3" V01="5" V02="4"/>
<Triangle1 V00="0" V01="4" V02="6"/>
<Triangle1 V00="6" V01="4" V02="7"/>
<Triangle1 V00="6" V01="7" V02="8"/>
<Triangle1 V00="8" V01="7" V02="9"/>
<Triangle1 V00="8" V01="9" V02="10"/>
<Triangle1 V00="11" V01="10" V02="9"/>
<Triangle1 V00="11" V01="9" V02="12"/>
<Triangle1 V00="13" V01="12" V02="9"/>
<Triangle1 V00="13" V01="9" V02="14"/>
<Triangle1 V00="15" V01="12" V02="13"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_1" VertexBufferIndex="0" VertexOffset="174" Count="14"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="3" V01="1" V02="0"/>
<Triangle1 V00="3" V01="4" V02="1"/>
<Triangle1 V00="4" V01="5" V02="1"/>
<Triangle1 V00="4" V01="6" V02="5"/>
<Triangle1 V00="6" V01="7" V02="5"/>
<Triangle1 V00="6" V01="8" V02="7"/>
<Triangle1 V00="8" V01="9" V02="7"/>
<Triangle1 V00="8" V01="10" V02="9"/>
<Triangle1 V00="7" V01="9" V02="11"/>
<Triangle1 V00="7" V01="11" V02="12"/>
<Triangle1 V00="5" V01="7" V02="12"/>
<Triangle1 V00="5" V01="12" V02="13"/>
<Triangle1 V00="1" V01="5" V02="13"/>
<Triangle1 V00="1" V01="13" V02="2"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_1" VertexBufferIndex="0" VertexOffset="188" Count="16"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="3" V01="2" V02="1"/>
<Triangle1 V00="3" V01="4" V02="2"/>
<Triangle1 V00="3" V01="5" V02="4"/>
<Triangle1 V00="3" V01="6" V02="5"/>
<Triangle1 V00="7" V01="5" V02="6"/>
<Triangle1 V00="7" V01="8" V02="5"/>
<Triangle1 V00="7" V01="9" V02="8"/>
<Triangle1 V00="7" V01="10" V02="9"/>
<Triangle1 V00="11" V01="9" V02="10"/>
<Triangle1 V00="11" V01="12" V02="9"/>
<Triangle1 V00="11" V01="13" V02="12"/>
<Triangle1 V00="11" V01="14" V02="13"/>
<Triangle1 V00="0" V01="13" V02="14"/>
<Triangle1 V00="0" V01="15" V02="13"/>
<Triangle1 V00="0" V01="2" V02="15"/>
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_1" VertexBufferIndex="0" VertexOffset="204" Count="9"/>
<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="0" V01="5" V02="6"/>
<Triangle1 V00="0" V01="6" V02="7"/>
<Triangle1 V00="0" V01="7" V02="8"/>
<Triangle1 V00="0" V01="8" V02="1"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,9 @@
<DisplayList Version="0">
<LoadVertices Path="objects/object_penguin/object_penguin_DL_vtx_2" VertexBufferIndex="0" VertexOffset="0" Count="8"/>
<Triangle1 V00="0" V01="1" V02="2"/>
<Triangle1 V00="0" V01="2" V02="3"/>
<Triangle1 V00="4" V01="5" V02="6"/>
<Triangle1 V00="4" V01="6" V02="7"/>
<EndDisplayList/>
</DisplayList>

View File

@ -0,0 +1,922 @@
<Vertex Version="0">
<Vtx X="-316" Y="1343" Z="361" S="207" T="744" R="153" G="2" B="74" A="255"/>
<Vtx X="-189" Y="1489" Z="552" S="349" T="646" R="198" G="215" B="105" A="255"/>
<Vtx X="-337" Y="1493" Z="413" S="231" T="682" R="157" G="218" B="70" A="255"/>
<Vtx X="-177" Y="1336" Z="494" S="343" T="711" R="192" G="250" B="110" A="255"/>
<Vtx X="-356" Y="1241" Z="365" S="183" T="805" R="173" G="71" B="66" A="255"/>
<Vtx X="-199" Y="1229" Z="510" S="336" T="774" R="203" G="64" B="96" A="255"/>
<Vtx X="0" Y="1332" Z="549" S="479" T="683" R="0" G="246" B="127" A="255"/>
<Vtx X="0" Y="1223" Z="572" S="489" T="744" R="0" G="64" B="110" A="255"/>
<Vtx X="177" Y="1336" Z="494" S="618" T="666" R="64" G="250" B="110" A="255"/>
<Vtx X="199" Y="1229" Z="510" S="645" T="725" R="53" G="64" B="96" A="255"/>
<Vtx X="315" Y="1343" Z="361" S="752" T="653" R="104" G="5" B="73" A="255"/>
<Vtx X="356" Y="1241" Z="365" S="800" T="707" R="83" G="71" B="65" A="255"/>
<Vtx X="390" Y="1349" Z="189" S="869" T="641" R="120" G="21" B="35" A="255"/>
<Vtx X="442" Y="1252" Z="185" S="900" T="705" R="93" G="79" B="34" A="255"/>
<Vtx X="575" Y="1134" Z="227" S="946" T="803" R="85" G="87" B="37" A="255"/>
<Vtx X="465" Y="1108" Z="451" S="837" T="839" R="73" G="82" B="65" A="255"/>
<Vtx X="748" Y="899" Z="274" S="999" T="917" R="102" G="61" B="44" A="255"/>
<Vtx X="575" Y="1134" Z="227" S="946" T="803" R="85" G="87" B="37" A="255"/>
<Vtx X="465" Y="1108" Z="451" S="837" T="839" R="73" G="82" B="65" A="255"/>
<Vtx X="616" Y="865" Z="534" S="874" T="972" R="87" G="55" B="74" A="255"/>
<Vtx X="819" Y="914" Z="-1" S="1123" T="863" R="110" G="64" B="0" A="255"/>
<Vtx X="631" Y="1140" Z="-1" S="1053" T="764" R="91" G="89" B="0" A="255"/>
<Vtx X="575" Y="1132" Z="-230" S="946" T="803" R="85" G="86" B="218" A="255"/>
<Vtx X="748" Y="896" Z="-277" S="999" T="917" R="102" G="60" B="211" A="255"/>
<Vtx X="465" Y="1103" Z="-455" S="837" T="839" R="73" G="81" B="190" A="255"/>
<Vtx X="616" Y="856" Z="-533" S="874" T="972" R="87" G="54" B="181" A="255"/>
<Vtx X="356" Y="1239" Z="-368" S="800" T="707" R="83" G="71" B="190" A="255"/>
<Vtx X="442" Y="1252" Z="-187" S="900" T="705" R="93" G="79" B="221" A="255"/>
<Vtx X="390" Y="1349" Z="-190" S="869" T="641" R="120" G="21" B="221" A="255"/>
<Vtx X="315" Y="1342" Z="-363" S="752" T="653" R="104" G="5" B="183" A="255"/>
<Vtx X="199" Y="1226" Z="-513" S="645" T="725" R="53" G="64" B="160" A="255"/>
<Vtx X="177" Y="1334" Z="-496" S="618" T="666" R="64" G="251" B="146" A="255"/>
<Vtx X="0" Y="1219" Z="-575" S="489" T="744" R="0" G="63" B="146" A="255"/>
<Vtx X="177" Y="1334" Z="-496" S="618" T="666" R="64" G="251" B="146" A="255"/>
<Vtx X="199" Y="1226" Z="-513" S="645" T="725" R="53" G="64" B="160" A="255"/>
<Vtx X="0" Y="1330" Z="-551" S="479" T="683" R="0" G="247" B="129" A="255"/>
<Vtx X="-199" Y="1226" Z="-513" S="336" T="774" R="203" G="64" B="160" A="255"/>
<Vtx X="-177" Y="1333" Z="-496" S="343" T="711" R="192" G="250" B="146" A="255"/>
<Vtx X="-356" Y="1239" Z="-368" S="183" T="805" R="173" G="71" B="190" A="255"/>
<Vtx X="-316" Y="1341" Z="-363" S="207" T="744" R="153" G="3" B="182" A="255"/>
<Vtx X="-189" Y="1488" Z="-553" S="349" T="646" R="197" G="215" B="151" A="255"/>
<Vtx X="-337" Y="1492" Z="-414" S="231" T="682" R="157" G="218" B="186" A="255"/>
<Vtx X="0" Y="1486" Z="-607" S="466" T="610" R="0" G="215" B="136" A="255"/>
<Vtx X="188" Y="1488" Z="-554" S="594" T="605" R="59" G="216" B="151" A="255"/>
<Vtx X="332" Y="1494" Z="-415" S="721" T="600" R="102" G="221" B="189" A="255"/>
<Vtx X="315" Y="1342" Z="-363" S="752" T="653" R="104" G="5" B="183" A="255"/>
<Vtx X="402" Y="1492" Z="-225" S="846" T="593" R="121" G="232" B="226" A="255"/>
<Vtx X="390" Y="1349" Z="-190" S="869" T="641" R="120" G="21" B="221" A="255"/>
<Vtx X="390" Y="1349" Z="-190" S="869" T="641" R="120" G="21" B="221" A="255"/>
<Vtx X="402" Y="1492" Z="-225" S="846" T="593" R="121" G="232" B="226" A="255"/>
<Vtx X="421" Y="1454" Z="-1" S="970" T="585" R="126" G="240" B="0" A="255"/>
<Vtx X="425" Y="1347" Z="-1" S="977" T="625" R="123" G="32" B="0" A="255"/>
<Vtx X="390" Y="1349" Z="189" S="869" T="641" R="120" G="21" B="35" A="255"/>
<Vtx X="402" Y="1492" Z="224" S="846" T="593" R="121" G="231" B="30" A="255"/>
<Vtx X="315" Y="1343" Z="361" S="752" T="653" R="104" G="5" B="73" A="255"/>
<Vtx X="332" Y="1495" Z="414" S="721" T="600" R="102" G="221" B="68" A="255"/>
<Vtx X="177" Y="1336" Z="494" S="618" T="666" R="64" G="250" B="110" A="255"/>
<Vtx X="188" Y="1489" Z="552" S="594" T="605" R="59" G="215" B="105" A="255"/>
<Vtx X="0" Y="1332" Z="549" S="479" T="683" R="0" G="246" B="127" A="255"/>
<Vtx X="0" Y="1488" Z="606" S="466" T="610" R="0" G="214" B="120" A="255"/>
<Vtx X="-177" Y="1336" Z="494" S="343" T="711" R="192" G="250" B="110" A="255"/>
<Vtx X="-189" Y="1489" Z="552" S="349" T="646" R="198" G="215" B="105" A="255"/>
<Vtx X="442" Y="1252" Z="185" S="900" T="705" R="93" G="79" B="34" A="255"/>
<Vtx X="485" Y="1255" Z="-1" S="983" T="665" R="95" G="85" B="0" A="255"/>
<Vtx X="631" Y="1140" Z="-1" S="1053" T="764" R="91" G="89" B="0" A="255"/>
<Vtx X="485" Y="1255" Z="-1" S="983" T="665" R="95" G="85" B="0" A="255"/>
<Vtx X="442" Y="1252" Z="185" S="900" T="705" R="93" G="79" B="34" A="255"/>
<Vtx X="575" Y="1134" Z="227" S="946" T="803" R="85" G="87" B="37" A="255"/>
<Vtx X="442" Y="1252" Z="-187" S="900" T="705" R="93" G="79" B="221" A="255"/>
<Vtx X="575" Y="1132" Z="-230" S="946" T="803" R="85" G="86" B="218" A="255"/>
<Vtx X="425" Y="1347" Z="-1" S="977" T="625" R="123" G="32" B="0" A="255"/>
<Vtx X="390" Y="1349" Z="-190" S="869" T="641" R="120" G="21" B="221" A="255"/>
<Vtx X="0" Y="-1296" Z="0" S="645" T="328" R="0" G="129" B="0" A="255"/>
<Vtx X="460" Y="-1174" Z="224" S="935" T="253" R="89" G="165" B="1" A="255"/>
<Vtx X="225" Y="-1455" Z="247" S="684" T="286" R="100" G="185" B="221" A="255"/>
<Vtx X="405" Y="-1192" Z="0" S="935" T="307" R="75" G="153" B="0" A="255"/>
<Vtx X="460" Y="-1174" Z="-224" S="935" T="253" R="89" G="165" B="255" A="255"/>
<Vtx X="225" Y="-1455" Z="-247" S="684" T="286" R="100" G="185" B="35" A="255"/>
<Vtx X="225" Y="-1455" Z="247" S="684" T="848" R="100" G="185" B="221" A="255"/>
<Vtx X="460" Y="-1174" Z="224" S="935" T="815" R="89" G="165" B="1" A="255"/>
<Vtx X="425" Y="-1144" Z="444" S="925" T="740" R="92" G="184" B="51" A="255"/>
<Vtx X="285" Y="-1339" Z="398" S="724" T="807" R="103" G="191" B="37" A="255"/>
<Vtx X="169" Y="-1451" Z="527" S="680" T="670" R="94" G="207" B="71" A="255"/>
<Vtx X="252" Y="-1148" Z="652" S="887" T="624" R="68" G="199" B="91" A="255"/>
<Vtx X="535" Y="437" Z="758" S="1397" T="719" R="80" G="19" B="96" A="255"/>
<Vtx X="375" Y="816" Z="772" S="1473" T="557" R="64" G="54" B="95" A="255"/>
<Vtx X="0" Y="732" Z="1007" S="1437" T="542" R="0" G="69" B="107" A="255"/>
<Vtx X="319" Y="382" Z="968" S="1361" T="652" R="88" G="32" B="86" A="255"/>
<Vtx X="592" Y="35" Z="730" S="1315" T="838" R="78" G="251" B="100" A="255"/>
<Vtx X="393" Y="67" Z="870" S="1284" T="763" R="83" G="233" B="94" A="255"/>
<Vtx X="421" Y="-387" Z="794" S="1206" T="875" R="58" G="240" B="112" A="255"/>
<Vtx X="262" Y="-111" Z="882" S="1238" T="711" R="35" G="242" B="121" A="255"/>
<Vtx X="0" Y="-157" Z="924" S="1191" T="660" R="1" G="243" B="126" A="255"/>
<Vtx X="0" Y="-461" Z="894" S="1115" T="750" R="0" G="242" B="126" A="255"/>
<Vtx X="0" Y="-862" Z="875" S="1038" T="841" R="0" G="225" B="123" A="255"/>
<Vtx X="421" Y="-387" Z="794" S="1206" T="875" R="58" G="240" B="112" A="255"/>
<Vtx X="0" Y="-461" Z="894" S="1115" T="750" R="0" G="242" B="126" A="255"/>
<Vtx X="339" Y="-857" Z="768" S="1069" T="965" R="59" G="219" B="106" A="255"/>
<Vtx X="0" Y="-1161" Z="751" S="838" T="886" R="0" G="203" B="116" A="255"/>
<Vtx X="252" Y="-1148" Z="652" S="887" T="1021" R="68" G="199" B="91" A="255"/>
<Vtx X="0" Y="-1528" Z="618" S="637" T="931" R="0" G="206" B="117" A="255"/>
<Vtx X="169" Y="-1451" Z="527" S="680" T="1067" R="94" G="207" B="71" A="255"/>
<Vtx X="465" Y="1108" Z="451" S="543" T="1015" R="73" G="82" B="65" A="255"/>
<Vtx X="356" Y="1241" Z="365" S="597" T="1054" R="83" G="71" B="65" A="255"/>
<Vtx X="199" Y="1229" Z="510" S="641" T="1019" R="53" G="64" B="96" A="255"/>
<Vtx X="263" Y="1078" Z="640" S="603" T="972" R="47" G="80" B="87" A="255"/>
<Vtx X="0" Y="1223" Z="572" S="686" T="983" R="0" G="64" B="110" A="255"/>
<Vtx X="0" Y="1061" Z="731" S="664" T="936" R="0" G="82" B="97" A="255"/>
<Vtx X="-263" Y="1077" Z="640" S="728" T="918" R="209" G="80" B="87" A="255"/>
<Vtx X="-199" Y="1229" Z="510" S="739" T="973" R="203" G="64" B="96" A="255"/>
<Vtx X="-465" Y="1108" Z="451" S="788" T="913" R="183" G="82" B="65" A="255"/>
<Vtx X="-263" Y="1077" Z="640" S="728" T="918" R="209" G="80" B="87" A="255"/>
<Vtx X="-199" Y="1229" Z="510" S="739" T="973" R="203" G="64" B="96" A="255"/>
<Vtx X="-356" Y="1241" Z="365" S="792" T="964" R="173" G="71" B="66" A="255"/>
<Vtx X="-575" Y="1134" Z="227" S="842" T="919" R="171" G="87" B="37" A="255"/>
<Vtx X="-442" Y="1252" Z="185" S="829" T="975" R="162" G="78" B="35" A="255"/>
<Vtx X="-631" Y="1140" Z="-1" S="894" T="931" R="165" G="89" B="0" A="255"/>
<Vtx X="-485" Y="1255" Z="-1" S="866" T="985" R="160" G="83" B="0" A="255"/>
<Vtx X="-442" Y="1252" Z="-187" S="829" T="975" R="162" G="78" B="220" A="255"/>
<Vtx X="-575" Y="1132" Z="-230" S="842" T="919" R="171" G="86" B="218" A="255"/>
<Vtx X="-356" Y="1239" Z="-368" S="792" T="964" R="173" G="71" B="190" A="255"/>
<Vtx X="-465" Y="1104" Z="-455" S="788" T="913" R="183" G="81" B="190" A="255"/>
<Vtx X="-199" Y="1226" Z="-513" S="739" T="973" R="203" G="64" B="160" A="255"/>
<Vtx X="-263" Y="1071" Z="-644" S="728" T="918" R="209" G="79" B="168" A="255"/>
<Vtx X="0" Y="1219" Z="-575" S="686" T="983" R="0" G="63" B="146" A="255"/>
<Vtx X="0" Y="1052" Z="-735" S="664" T="936" R="0" G="81" B="158" A="255"/>
<Vtx X="263" Y="1070" Z="-644" S="603" T="972" R="47" G="78" B="168" A="255"/>
<Vtx X="0" Y="1052" Z="-735" S="664" T="936" R="0" G="81" B="158" A="255"/>
<Vtx X="0" Y="1219" Z="-575" S="686" T="983" R="0" G="63" B="146" A="255"/>
<Vtx X="199" Y="1226" Z="-513" S="641" T="1019" R="53" G="64" B="160" A="255"/>
<Vtx X="465" Y="1103" Z="-455" S="543" T="1015" R="73" G="81" B="190" A="255"/>
<Vtx X="356" Y="1239" Z="-368" S="597" T="1054" R="83" G="71" B="190" A="255"/>
<Vtx X="616" Y="856" Z="-533" S="489" T="977" R="87" G="54" B="181" A="255"/>
<Vtx X="375" Y="803" Z="-767" S="565" T="923" R="65" G="54" B="161" A="255"/>
<Vtx X="0" Y="718" Z="-1006" S="641" T="868" R="0" G="69" B="149" A="255"/>
<Vtx X="-375" Y="804" Z="-769" S="722" T="849" R="191" G="54" B="161" A="255"/>
<Vtx X="-319" Y="370" Z="-982" S="675" T="767" R="168" G="33" B="171" A="255"/>
<Vtx X="-239" Y="225" Z="-1193" S="644" T="761" R="156" G="49" B="195" A="255"/>
<Vtx X="0" Y="333" Z="-1349" S="627" T="814" R="0" G="88" B="164" A="255"/>
<Vtx X="-229" Y="-16" Z="-1453" S="625" T="747" R="154" G="49" B="198" A="255"/>
<Vtx X="0" Y="49" Z="-1637" S="612" T="759" R="0" G="81" B="158" A="255"/>
<Vtx X="-333" Y="-144" Z="-1184" S="638" T="735" R="131" G="244" B="18" A="255"/>
<Vtx X="-239" Y="225" Z="-1193" S="644" T="761" R="156" G="49" B="195" A="255"/>
<Vtx X="-333" Y="-144" Z="-1184" S="638" T="735" R="131" G="244" B="18" A="255"/>
<Vtx X="-341" Y="48" Z="-996" S="650" T="725" R="135" G="217" B="4" A="255"/>
<Vtx X="-229" Y="-259" Z="-1106" S="624" T="741" R="202" G="195" B="98" A="255"/>
<Vtx X="-228" Y="-33" Z="-973" S="633" T="722" R="225" G="181" B="98" A="255"/>
<Vtx X="0" Y="-305" Z="-1122" S="609" T="747" R="0" G="193" B="110" A="255"/>
<Vtx X="0" Y="-48" Z="-1004" S="606" T="734" R="2" G="199" B="114" A="255"/>
<Vtx X="-214" Y="59" Z="-919" S="645" T="700" R="229" G="138" B="216" A="255"/>
<Vtx X="0" Y="74" Z="-948" S="603" T="722" R="253" G="129" B="252" A="255"/>
<Vtx X="-393" Y="55" Z="-880" S="686" T="679" R="173" G="232" B="162" A="255"/>
<Vtx X="-319" Y="370" Z="-982" S="675" T="767" R="168" G="33" B="171" A="255"/>
<Vtx X="-535" Y="416" Z="-758" S="727" T="762" R="174" G="19" B="161" A="255"/>
<Vtx X="-592" Y="27" Z="-735" S="715" T="677" R="177" G="251" B="156" A="255"/>
<Vtx X="-421" Y="-391" Z="-796" S="661" T="611" R="198" G="239" B="144" A="255"/>
<Vtx X="-262" Y="-119" Z="-888" S="639" T="680" R="221" G="241" B="135" A="255"/>
<Vtx X="0" Y="-165" Z="-928" S="593" T="681" R="255" G="241" B="130" A="255"/>
<Vtx X="0" Y="-165" Z="-928" S="593" T="681" R="255" G="241" B="130" A="255"/>
<Vtx X="0" Y="-464" Z="-896" S="579" T="618" R="0" G="242" B="130" A="255"/>
<Vtx X="-421" Y="-391" Z="-796" S="661" T="611" R="198" G="239" B="144" A="255"/>
<Vtx X="0" Y="-862" Z="-875" S="565" T="554" R="0" G="225" B="133" A="255"/>
<Vtx X="-339" Y="-857" Z="-768" S="624" T="522" R="197" G="219" B="150" A="255"/>
<Vtx X="-592" Y="-874" Z="-528" S="682" T="489" R="165" G="202" B="186" A="255"/>
<Vtx X="-736" Y="-464" Z="-556" S="730" T="570" R="162" G="230" B="175" A="255"/>
<Vtx X="-896" Y="-485" Z="-280" S="788" T="534" R="143" G="221" B="209" A="255"/>
<Vtx X="-711" Y="-893" Z="-264" S="725" T="441" R="154" G="187" B="224" A="255"/>
<Vtx X="-978" Y="-487" Z="1" S="845" T="498" R="135" G="218" B="0" A="255"/>
<Vtx X="-750" Y="-909" Z="0" S="769" T="392" R="154" G="180" B="0" A="255"/>
<Vtx X="-711" Y="-893" Z="264" S="725" T="441" R="154" G="187" B="32" A="255"/>
<Vtx X="-896" Y="-485" Z="281" S="788" T="534" R="143" G="221" B="47" A="255"/>
<Vtx X="-592" Y="-874" Z="528" S="682" T="489" R="165" G="202" B="70" A="255"/>
<Vtx X="-736" Y="-463" Z="556" S="730" T="570" R="162" G="230" B="81" A="255"/>
<Vtx X="-421" Y="-389" Z="797" S="661" T="611" R="198" G="239" B="112" A="255"/>
<Vtx X="-592" Y="-874" Z="528" S="682" T="489" R="165" G="202" B="70" A="255"/>
<Vtx X="-339" Y="-857" Z="768" S="624" T="522" R="197" G="219" B="106" A="255"/>
<Vtx X="-421" Y="-389" Z="797" S="661" T="611" R="198" G="239" B="112" A="255"/>
<Vtx X="0" Y="-862" Z="875" S="565" T="554" R="0" G="225" B="123" A="255"/>
<Vtx X="0" Y="-461" Z="894" S="579" T="618" R="0" G="242" B="126" A="255"/>
<Vtx X="0" Y="-157" Z="924" S="593" T="681" R="1" G="243" B="126" A="255"/>
<Vtx X="-262" Y="-113" Z="890" S="639" T="680" R="223" G="240" B="122" A="255"/>
<Vtx X="-393" Y="62" Z="884" S="686" T="679" R="173" G="232" B="93" A="255"/>
<Vtx X="-592" Y="31" Z="739" S="715" T="677" R="177" G="251" B="100" A="255"/>
<Vtx X="-535" Y="425" Z="761" S="727" T="762" R="174" G="20" B="95" A="255"/>
<Vtx X="-319" Y="383" Z="985" S="675" T="767" R="168" G="33" B="85" A="255"/>
<Vtx X="-341" Y="53" Z="1000" S="650" T="725" R="135" G="217" B="252" A="255"/>
<Vtx X="-228" Y="-29" Z="977" S="633" T="722" R="225" G="179" B="160" A="255"/>
<Vtx X="-214" Y="64" Z="921" S="645" T="700" R="230" G="138" B="39" A="255"/>
<Vtx X="0" Y="-44" Z="1005" S="606" T="734" R="255" G="194" B="145" A="255"/>
<Vtx X="0" Y="77" Z="944" S="603" T="722" R="0" G="129" B="5" A="255"/>
<Vtx X="-228" Y="-29" Z="977" S="633" T="722" R="225" G="179" B="160" A="255"/>
<Vtx X="0" Y="-44" Z="1005" S="606" T="734" R="255" G="194" B="145" A="255"/>
<Vtx X="0" Y="-296" Z="1132" S="609" T="747" R="0" G="191" B="147" A="255"/>
<Vtx X="-229" Y="-251" Z="1114" S="624" T="741" R="202" G="194" B="159" A="255"/>
<Vtx X="-341" Y="53" Z="1000" S="650" T="725" R="135" G="217" B="252" A="255"/>
<Vtx X="-333" Y="-138" Z="1191" S="638" T="735" R="131" G="243" B="239" A="255"/>
<Vtx X="-239" Y="232" Z="1195" S="644" T="761" R="156" G="49" B="61" A="255"/>
<Vtx X="-229" Y="-6" Z="1458" S="625" T="747" R="154" G="50" B="57" A="255"/>
<Vtx X="0" Y="342" Z="1349" S="627" T="814" R="0" G="88" B="92" A="255"/>
<Vtx X="0" Y="62" Z="1641" S="612" T="759" R="0" G="82" B="97" A="255"/>
<Vtx X="0" Y="732" Z="1007" S="641" T="868" R="0" G="69" B="107" A="255"/>
<Vtx X="-319" Y="383" Z="985" S="675" T="767" R="168" G="33" B="85" A="255"/>
<Vtx X="-375" Y="814" Z="768" S="722" T="849" R="191" G="55" B="95" A="255"/>
<Vtx X="0" Y="1061" Z="731" S="664" T="936" R="0" G="82" B="97" A="255"/>
<Vtx X="375" Y="816" Z="772" S="565" T="923" R="64" G="54" B="95" A="255"/>
<Vtx X="263" Y="1078" Z="640" S="603" T="972" R="47" G="80" B="87" A="255"/>
<Vtx X="616" Y="865" Z="534" S="489" T="977" R="87" G="55" B="74" A="255"/>
<Vtx X="263" Y="1078" Z="640" S="603" T="972" R="47" G="80" B="87" A="255"/>
<Vtx X="375" Y="816" Z="772" S="565" T="923" R="64" G="54" B="95" A="255"/>
<Vtx X="465" Y="1108" Z="451" S="543" T="1015" R="73" G="82" B="65" A="255"/>
<Vtx X="-375" Y="814" Z="768" S="722" T="849" R="191" G="55" B="95" A="255"/>
<Vtx X="0" Y="1061" Z="731" S="664" T="936" R="0" G="82" B="97" A="255"/>
<Vtx X="-263" Y="1077" Z="640" S="728" T="918" R="209" G="80" B="87" A="255"/>
<Vtx X="-616" Y="863" Z="530" S="789" T="843" R="168" G="54" B="74" A="255"/>
<Vtx X="-465" Y="1108" Z="451" S="788" T="913" R="183" G="82" B="65" A="255"/>
<Vtx X="-748" Y="899" Z="274" S="852" T="847" R="154" G="61" B="45" A="255"/>
<Vtx X="-575" Y="1134" Z="227" S="842" T="919" R="171" G="87" B="37" A="255"/>
<Vtx X="-819" Y="914" Z="-1" S="922" T="877" R="146" G="64" B="0" A="255"/>
<Vtx X="-631" Y="1140" Z="-1" S="894" T="931" R="165" G="89" B="0" A="255"/>
<Vtx X="-575" Y="1132" Z="-230" S="842" T="919" R="171" G="86" B="218" A="255"/>
<Vtx X="-748" Y="896" Z="-277" S="852" T="847" R="154" G="60" B="211" A="255"/>
<Vtx X="-465" Y="1104" Z="-455" S="788" T="913" R="183" G="81" B="190" A="255"/>
<Vtx X="-465" Y="1104" Z="-455" S="788" T="913" R="183" G="81" B="190" A="255"/>
<Vtx X="-616" Y="857" Z="-532" S="789" T="843" R="169" G="54" B="181" A="255"/>
<Vtx X="-748" Y="896" Z="-277" S="852" T="847" R="154" G="60" B="211" A="255"/>
<Vtx X="-263" Y="1071" Z="-644" S="728" T="918" R="209" G="79" B="168" A="255"/>
<Vtx X="-375" Y="804" Z="-769" S="722" T="849" R="191" G="54" B="161" A="255"/>
<Vtx X="0" Y="1052" Z="-735" S="664" T="936" R="0" G="81" B="158" A="255"/>
<Vtx X="-535" Y="416" Z="-758" S="727" T="762" R="174" G="19" B="161" A="255"/>
<Vtx X="-763" Y="466" Z="-536" S="789" T="752" R="159" G="24" B="178" A="255"/>
<Vtx X="-592" Y="27" Z="-735" S="715" T="677" R="177" G="251" B="156" A="255"/>
<Vtx X="-822" Y="15" Z="-531" S="773" T="656" R="158" G="255" B="176" A="255"/>
<Vtx X="-421" Y="-391" Z="-796" S="661" T="611" R="198" G="239" B="144" A="255"/>
<Vtx X="-736" Y="-464" Z="-556" S="730" T="570" R="162" G="230" B="175" A="255"/>
<Vtx X="-971" Y="7" Z="-284" S="837" T="634" R="140" G="255" B="205" A="255"/>
<Vtx X="-896" Y="-485" Z="-280" S="788" T="534" R="143" G="221" B="209" A="255"/>
<Vtx X="-1060" Y="11" Z="1" S="922" T="604" R="129" G="0" B="0" A="255"/>
<Vtx X="-978" Y="-487" Z="1" S="845" T="498" R="135" G="218" B="0" A="255"/>
<Vtx X="-896" Y="-485" Z="281" S="788" T="534" R="143" G="221" B="47" A="255"/>
<Vtx X="-1060" Y="11" Z="1" S="922" T="604" R="129" G="0" B="0" A="255"/>
<Vtx X="-978" Y="-487" Z="1" S="845" T="498" R="135" G="218" B="0" A="255"/>
<Vtx X="-971" Y="8" Z="287" S="837" T="634" R="140" G="255" B="51" A="255"/>
<Vtx X="-736" Y="-463" Z="556" S="730" T="570" R="162" G="230" B="81" A="255"/>
<Vtx X="-822" Y="16" Z="533" S="773" T="656" R="158" G="255" B="80" A="255"/>
<Vtx X="-421" Y="-389" Z="797" S="661" T="611" R="198" G="239" B="112" A="255"/>
<Vtx X="-592" Y="31" Z="739" S="715" T="677" R="177" G="251" B="100" A="255"/>
<Vtx X="-763" Y="472" Z="538" S="789" T="752" R="158" G="24" B="78" A="255"/>
<Vtx X="-535" Y="425" Z="761" S="727" T="762" R="174" G="20" B="95" A="255"/>
<Vtx X="-616" Y="863" Z="530" S="789" T="843" R="168" G="54" B="74" A="255"/>
<Vtx X="-375" Y="814" Z="768" S="722" T="849" R="191" G="55" B="95" A="255"/>
<Vtx X="-319" Y="383" Z="985" S="675" T="767" R="168" G="33" B="85" A="255"/>
<Vtx X="-748" Y="899" Z="274" S="852" T="847" R="154" G="61" B="45" A="255"/>
<Vtx X="-904" Y="503" Z="282" S="854" T="745" R="143" G="30" B="49" A="255"/>
<Vtx X="-819" Y="914" Z="-1" S="922" T="877" R="146" G="64" B="0" A="255"/>
<Vtx X="-904" Y="503" Z="282" S="854" T="745" R="143" G="30" B="49" A="255"/>
<Vtx X="-819" Y="914" Z="-1" S="922" T="877" R="146" G="64" B="0" A="255"/>
<Vtx X="-987" Y="513" Z="0" S="922" T="741" R="133" G="33" B="0" A="255"/>
<Vtx X="-904" Y="502" Z="-281" S="854" T="745" R="143" G="30" B="207" A="255"/>
<Vtx X="-748" Y="896" Z="-277" S="852" T="847" R="154" G="60" B="211" A="255"/>
<Vtx X="-763" Y="466" Z="-536" S="789" T="752" R="159" G="24" B="178" A="255"/>
<Vtx X="-616" Y="857" Z="-532" S="789" T="843" R="169" G="54" B="181" A="255"/>
<Vtx X="-822" Y="15" Z="-531" S="773" T="656" R="158" G="255" B="176" A="255"/>
<Vtx X="-971" Y="7" Z="-284" S="837" T="634" R="140" G="255" B="205" A="255"/>
<Vtx X="-1060" Y="11" Z="1" S="922" T="604" R="129" G="0" B="0" A="255"/>
<Vtx X="-971" Y="8" Z="287" S="837" T="634" R="140" G="255" B="51" A="255"/>
<Vtx X="-822" Y="16" Z="533" S="773" T="656" R="158" G="255" B="80" A="255"/>
<Vtx X="-763" Y="472" Z="538" S="789" T="752" R="158" G="24" B="78" A="255"/>
<Vtx X="-319" Y="383" Z="985" S="675" T="767" R="168" G="33" B="85" A="255"/>
<Vtx X="-341" Y="53" Z="1000" S="650" T="725" R="135" G="217" B="252" A="255"/>
<Vtx X="-239" Y="232" Z="1195" S="644" T="761" R="156" G="49" B="61" A="255"/>
<Vtx X="-319" Y="370" Z="-982" S="675" T="767" R="168" G="33" B="171" A="255"/>
<Vtx X="-535" Y="416" Z="-758" S="727" T="762" R="174" G="19" B="161" A="255"/>
<Vtx X="-375" Y="804" Z="-769" S="722" T="849" R="191" G="54" B="161" A="255"/>
<Vtx X="-239" Y="225" Z="-1193" S="644" T="761" R="156" G="49" B="195" A="255"/>
<Vtx X="-341" Y="48" Z="-996" S="650" T="725" R="135" G="217" B="4" A="255"/>
<Vtx X="393" Y="67" Z="870" S="2374" T="3321" R="83" G="233" B="94" A="255"/>
<Vtx X="319" Y="382" Z="968" S="2567" T="3528" R="88" G="32" B="86" A="255"/>
<Vtx X="239" Y="229" Z="1192" S="2604" T="3474" R="101" G="49" B="59" A="255"/>
<Vtx X="341" Y="55" Z="995" S="2538" T="3390" R="121" G="219" B="252" A="255"/>
<Vtx X="229" Y="-6" Z="1459" S="2630" T="3429" R="102" G="50" B="57" A="255"/>
<Vtx X="0" Y="62" Z="1641" S="2678" T="3425" R="0" G="82" B="97" A="255"/>
<Vtx X="0" Y="342" Z="1349" S="2719" T="3579" R="0" G="88" B="92" A="255"/>
<Vtx X="0" Y="-320" Z="1907" S="2675" T="3412" R="0" G="56" B="114" A="255"/>
<Vtx X="-225" Y="-346" Z="1716" S="2695" T="3400" R="152" G="33" B="66" A="255"/>
<Vtx X="-229" Y="-6" Z="1458" S="2715" T="3390" R="154" G="50" B="57" A="255"/>
<Vtx X="-328" Y="-441" Z="1418" S="2704" T="3390" R="130" G="244" B="246" A="255"/>
<Vtx X="-229" Y="-6" Z="1458" S="2715" T="3390" R="154" G="50" B="57" A="255"/>
<Vtx X="-333" Y="-138" Z="1191" S="2751" T="3356" R="131" G="243" B="239" A="255"/>
<Vtx X="-328" Y="-441" Z="1418" S="2704" T="3390" R="130" G="244" B="246" A="255"/>
<Vtx X="-225" Y="-548" Z="1308" S="2692" T="3391" R="190" G="197" B="164" A="255"/>
<Vtx X="-229" Y="-251" Z="1114" S="2710" T="3373" R="202" G="194" B="159" A="255"/>
<Vtx X="0" Y="-602" Z="1307" S="2671" T="3398" R="0" G="191" B="147" A="255"/>
<Vtx X="0" Y="-296" Z="1132" S="2669" T="3390" R="0" G="191" B="147" A="255"/>
<Vtx X="225" Y="-548" Z="1308" S="2649" T="3402" R="66" G="197" B="165" A="255"/>
<Vtx X="229" Y="-253" Z="1111" S="2619" T="3387" R="54" G="193" B="160" A="255"/>
<Vtx X="0" Y="-44" Z="1005" S="2660" T="3355" R="255" G="194" B="145" A="255"/>
<Vtx X="228" Y="-31" Z="970" S="2577" T="3360" R="31" G="179" B="160" A="255"/>
<Vtx X="0" Y="77" Z="944" S="2651" T="3320" R="0" G="129" B="5" A="255"/>
<Vtx X="214" Y="64" Z="913" S="2541" T="3319" R="30" G="139" B="40" A="255"/>
<Vtx X="165" Y="21" Z="909" S="2553" T="3281" R="18" G="237" B="124" A="255"/>
<Vtx X="0" Y="27" Z="929" S="2637" T="3261" R="2" G="235" B="125" A="255"/>
<Vtx X="0" Y="-157" Z="924" S="2623" T="3203" R="1" G="243" B="126" A="255"/>
<Vtx X="0" Y="-157" Z="924" S="2623" T="3203" R="1" G="243" B="126" A="255"/>
<Vtx X="262" Y="-111" Z="882" S="2498" T="3262" R="35" G="242" B="121" A="255"/>
<Vtx X="165" Y="21" Z="909" S="2553" T="3281" R="18" G="237" B="124" A="255"/>
<Vtx X="393" Y="67" Z="870" S="2374" T="3321" R="83" G="233" B="94" A="255"/>
<Vtx X="214" Y="64" Z="913" S="2541" T="3319" R="30" G="139" B="40" A="255"/>
<Vtx X="341" Y="55" Z="995" S="2538" T="3390" R="121" G="219" B="252" A="255"/>
<Vtx X="228" Y="-31" Z="970" S="2577" T="3360" R="31" G="179" B="160" A="255"/>
<Vtx X="333" Y="-139" Z="1188" S="2600" T="3402" R="125" G="243" B="239" A="255"/>
<Vtx X="229" Y="-6" Z="1459" S="2630" T="3429" R="102" G="50" B="57" A="255"/>
<Vtx X="225" Y="-346" Z="1716" S="2652" T="3413" R="104" G="33" B="66" A="255"/>
<Vtx X="0" Y="-320" Z="1907" S="2675" T="3412" R="0" G="56" B="114" A="255"/>
<Vtx X="0" Y="-739" Z="2048" S="2675" T="3411" R="0" G="31" B="123" A="255"/>
<Vtx X="-198" Y="-756" Z="1880" S="2682" T="3408" R="151" G="13" B="70" A="255"/>
<Vtx X="-225" Y="-346" Z="1716" S="2695" T="3400" R="152" G="33" B="66" A="255"/>
<Vtx X="-288" Y="-814" Z="1616" S="2684" T="3404" R="131" G="232" B="250" A="255"/>
<Vtx X="-328" Y="-441" Z="1418" S="2704" T="3390" R="130" G="244" B="246" A="255"/>
<Vtx X="-328" Y="-441" Z="1418" S="2704" T="3390" R="130" G="244" B="246" A="255"/>
<Vtx X="-198" Y="-911" Z="1513" S="2681" T="3405" R="188" G="191" B="171" A="255"/>
<Vtx X="-288" Y="-814" Z="1616" S="2684" T="3404" R="131" G="232" B="250" A="255"/>
<Vtx X="-225" Y="-548" Z="1308" S="2692" T="3391" R="190" G="197" B="164" A="255"/>
<Vtx X="0" Y="-966" Z="1513" S="2674" T="3407" R="0" G="182" B="153" A="255"/>
<Vtx X="0" Y="-602" Z="1307" S="2671" T="3398" R="0" G="191" B="147" A="255"/>
<Vtx X="198" Y="-911" Z="1514" S="2666" T="3408" R="68" G="191" B="171" A="255"/>
<Vtx X="225" Y="-548" Z="1308" S="2649" T="3402" R="66" G="197" B="165" A="255"/>
<Vtx X="288" Y="-814" Z="1616" S="2663" T="3410" R="125" G="232" B="250" A="255"/>
<Vtx X="328" Y="-441" Z="1418" S="2640" T="3406" R="126" G="244" B="246" A="255"/>
<Vtx X="229" Y="-253" Z="1111" S="2619" T="3387" R="54" G="193" B="160" A="255"/>
<Vtx X="333" Y="-139" Z="1188" S="2600" T="3402" R="125" G="243" B="239" A="255"/>
<Vtx X="228" Y="-31" Z="970" S="2577" T="3360" R="31" G="179" B="160" A="255"/>
<Vtx X="225" Y="-346" Z="1716" S="2652" T="3413" R="104" G="33" B="66" A="255"/>
<Vtx X="198" Y="-756" Z="1880" S="2667" T="3412" R="105" G="13" B="70" A="255"/>
<Vtx X="0" Y="-739" Z="2048" S="2675" T="3411" R="0" G="31" B="123" A="255"/>
<Vtx X="198" Y="-756" Z="1880" S="2667" T="3412" R="105" G="13" B="70" A="255"/>
<Vtx X="0" Y="-739" Z="2048" S="2675" T="3411" R="0" G="31" B="123" A="255"/>
<Vtx X="0" Y="-1140" Z="2120" S="2675" T="3412" R="0" G="16" B="126" A="255"/>
<Vtx X="-135" Y="-1142" Z="2007" S="2676" T="3411" R="151" G="1" B="72" A="255"/>
<Vtx X="-198" Y="-756" Z="1880" S="2682" T="3408" R="151" G="13" B="70" A="255"/>
<Vtx X="-198" Y="-1165" Z="1826" S="2677" T="3410" R="135" G="218" B="0" A="255"/>
<Vtx X="-288" Y="-814" Z="1616" S="2684" T="3404" R="131" G="232" B="250" A="255"/>
<Vtx X="-135" Y="-1232" Z="1770" S="2676" T="3410" R="188" G="176" B="184" A="255"/>
<Vtx X="-198" Y="-911" Z="1513" S="2681" T="3405" R="188" G="191" B="171" A="255"/>
<Vtx X="0" Y="-1271" Z="1775" S="2675" T="3411" R="0" G="167" B="165" A="255"/>
<Vtx X="0" Y="-966" Z="1513" S="2674" T="3407" R="0" G="182" B="153" A="255"/>
<Vtx X="135" Y="-1232" Z="1770" S="2673" T="3411" R="68" G="176" B="184" A="255"/>
<Vtx X="198" Y="-911" Z="1514" S="2666" T="3408" R="68" G="191" B="171" A="255"/>
<Vtx X="198" Y="-1165" Z="1826" S="2673" T="3411" R="121" G="218" B="0" A="255"/>
<Vtx X="288" Y="-814" Z="1616" S="2663" T="3410" R="125" G="232" B="250" A="255"/>
<Vtx X="135" Y="-1142" Z="2007" S="2673" T="3412" R="105" G="1" B="72" A="255"/>
<Vtx X="328" Y="-441" Z="1418" S="2640" T="3406" R="126" G="244" B="246" A="255"/>
<Vtx X="198" Y="-756" Z="1880" S="2667" T="3412" R="105" G="13" B="70" A="255"/>
<Vtx X="288" Y="-814" Z="1616" S="2663" T="3410" R="125" G="232" B="250" A="255"/>
<Vtx X="0" Y="-1140" Z="2120" S="2675" T="3412" R="0" G="16" B="126" A="255"/>
<Vtx X="135" Y="-1142" Z="2007" S="2673" T="3412" R="105" G="1" B="72" A="255"/>
<Vtx X="0" Y="-1443" Z="2147" S="2675" T="3412" R="0" G="4" B="127" A="255"/>
<Vtx X="-69" Y="-1425" Z="2087" S="2675" T="3412" R="147" G="238" B="63" A="255"/>
<Vtx X="-135" Y="-1142" Z="2007" S="2676" T="3411" R="151" G="1" B="72" A="255"/>
<Vtx X="-117" Y="-1375" Z="1977" S="2675" T="3412" R="137" G="211" B="4" A="255"/>
<Vtx X="-198" Y="-1165" Z="1826" S="2677" T="3410" R="135" G="218" B="0" A="255"/>
<Vtx X="-69" Y="-1451" Z="1994" S="2675" T="3412" R="172" G="172" B="211" A="255"/>
<Vtx X="-135" Y="-1232" Z="1770" S="2676" T="3410" R="188" G="176" B="184" A="255"/>
<Vtx X="0" Y="-1481" Z="2005" S="2675" T="3412" R="0" G="158" B="175" A="255"/>
<Vtx X="0" Y="-1271" Z="1775" S="2675" T="3411" R="0" G="167" B="165" A="255"/>
<Vtx X="69" Y="-1451" Z="1994" S="2675" T="3412" R="84" G="172" B="211" A="255"/>
<Vtx X="135" Y="-1232" Z="1770" S="2673" T="3411" R="68" G="176" B="184" A="255"/>
<Vtx X="135" Y="-1232" Z="1770" S="2673" T="3411" R="68" G="176" B="184" A="255"/>
<Vtx X="117" Y="-1375" Z="1977" S="2674" T="3412" R="119" G="211" B="4" A="255"/>
<Vtx X="69" Y="-1451" Z="1994" S="2675" T="3412" R="84" G="172" B="211" A="255"/>
<Vtx X="198" Y="-1165" Z="1826" S="2673" T="3411" R="121" G="218" B="0" A="255"/>
<Vtx X="69" Y="-1425" Z="2087" S="2675" T="3412" R="109" G="238" B="63" A="255"/>
<Vtx X="135" Y="-1142" Z="2007" S="2673" T="3412" R="105" G="1" B="72" A="255"/>
<Vtx X="0" Y="-1443" Z="2147" S="2675" T="3412" R="0" G="4" B="127" A="255"/>
<Vtx X="28" Y="-1556" Z="2118" S="2675" T="3412" R="106" G="187" B="12" A="255"/>
<Vtx X="0" Y="-1580" Z="2154" S="2675" T="3412" R="0" G="157" B="80" A="255"/>
<Vtx X="-69" Y="-1425" Z="2087" S="2675" T="3412" R="147" G="238" B="63" A="255"/>
<Vtx X="-28" Y="-1556" Z="2118" S="2675" T="3412" R="150" G="187" B="12" A="255"/>
<Vtx X="-117" Y="-1375" Z="1977" S="2675" T="3412" R="137" G="211" B="4" A="255"/>
<Vtx X="-69" Y="-1451" Z="1994" S="2675" T="3412" R="172" G="172" B="211" A="255"/>
<Vtx X="0" Y="-1583" Z="2124" S="2675" T="3412" R="0" G="133" B="223" A="255"/>
<Vtx X="0" Y="-1481" Z="2005" S="2675" T="3412" R="0" G="158" B="175" A="255"/>
<Vtx X="0" Y="-1600" Z="2151" S="2675" T="3412" R="0" G="129" B="9" A="255"/>
<Vtx X="319" Y="382" Z="968" S="185" T="308" R="88" G="32" B="86" A="255"/>
<Vtx X="0" Y="732" Z="1007" S="378" T="515" R="0" G="69" B="107" A="255"/>
<Vtx X="0" Y="342" Z="1349" S="338" T="360" R="0" G="88" B="92" A="255"/>
<Vtx X="239" Y="229" Z="1192" S="223" T="255" R="101" G="49" B="59" A="255"/>
<Vtx X="-442" Y="1252" Z="185" S="413" T="230" R="162" G="78" B="35" A="255"/>
<Vtx X="-356" Y="1241" Z="365" S="450" T="228" R="173" G="71" B="66" A="255"/>
<Vtx X="-316" Y="1343" Z="361" S="459" T="205" R="153" G="2" B="74" A="255"/>
<Vtx X="-392" Y="1350" Z="189" S="417" T="211" R="136" G="13" B="39" A="255"/>
<Vtx X="-337" Y="1493" Z="413" S="468" T="182" R="157" G="218" B="70" A="255"/>
<Vtx X="-418" Y="1497" Z="221" S="420" T="191" R="138" G="223" B="35" A="255"/>
<Vtx X="-430" Y="1352" Z="-1" S="375" T="216" R="130" G="18" B="0" A="255"/>
<Vtx X="-459" Y="1499" Z="0" S="373" T="200" R="133" G="224" B="0" A="255"/>
<Vtx X="-418" Y="1497" Z="-222" S="420" T="191" R="138" G="223" B="221" A="255"/>
<Vtx X="-392" Y="1349" Z="-190" S="417" T="211" R="136" G="13" B="217" A="255"/>
<Vtx X="-337" Y="1492" Z="-414" S="468" T="182" R="157" G="218" B="186" A="255"/>
<Vtx X="-316" Y="1341" Z="-363" S="459" T="205" R="153" G="3" B="182" A="255"/>
<Vtx X="-442" Y="1252" Z="-187" S="413" T="230" R="162" G="78" B="220" A="255"/>
<Vtx X="-392" Y="1349" Z="-190" S="417" T="211" R="136" G="13" B="217" A="255"/>
<Vtx X="-316" Y="1341" Z="-363" S="459" T="205" R="153" G="3" B="182" A="255"/>
<Vtx X="-356" Y="1239" Z="-368" S="450" T="228" R="173" G="71" B="190" A="255"/>
<Vtx X="-485" Y="1255" Z="-1" S="377" T="232" R="160" G="83" B="0" A="255"/>
<Vtx X="-430" Y="1352" Z="-1" S="375" T="216" R="130" G="18" B="0" A="255"/>
<Vtx X="-392" Y="1350" Z="189" S="417" T="211" R="136" G="13" B="39" A="255"/>
<Vtx X="-442" Y="1252" Z="185" S="413" T="230" R="162" G="78" B="35" A="255"/>
<Vtx X="-418" Y="1497" Z="221" S="479" T="681" R="138" G="223" B="35" A="255"/>
<Vtx X="-337" Y="1493" Z="413" S="642" T="627" R="157" G="218" B="70" A="255"/>
<Vtx X="-393" Y="1740" Z="479" S="600" T="1075" R="155" G="231" B="73" A="255"/>
<Vtx X="-487" Y="1742" Z="256" S="410" T="1118" R="136" G="233" B="35" A="255"/>
<Vtx X="-405" Y="2064" Z="517" S="559" T="1522" R="153" G="9" B="74" A="255"/>
<Vtx X="-502" Y="2064" Z="283" S="340" T="1555" R="134" G="14" B="34" A="255"/>
<Vtx X="-313" Y="2422" Z="493" S="583" T="1220" R="157" G="45" B="66" A="255"/>
<Vtx X="-388" Y="2422" Z="273" S="375" T="1226" R="142" G="50" B="27" A="255"/>
<Vtx X="-388" Y="2422" Z="273" S="375" T="1226" R="142" G="50" B="27" A="255"/>
<Vtx X="-313" Y="2422" Z="493" S="583" T="1220" R="157" G="45" B="66" A="255"/>
<Vtx X="-183" Y="2714" Z="402" S="606" T="918" R="165" G="74" B="49" A="255"/>
<Vtx X="-228" Y="2713" Z="228" S="410" T="898" R="154" G="74" B="19" A="255"/>
<Vtx X="-425" Y="2423" Z="0" S="168" T="1233" R="140" G="52" B="0" A="255"/>
<Vtx X="-243" Y="2717" Z="0" S="214" T="878" R="153" G="74" B="0" A="255"/>
<Vtx X="-228" Y="2713" Z="-228" S="410" T="898" R="154" G="74" B="237" A="255"/>
<Vtx X="-388" Y="2422" Z="-273" S="375" T="1226" R="142" G="50" B="229" A="255"/>
<Vtx X="-183" Y="2714" Z="-402" S="606" T="918" R="165" G="74" B="207" A="255"/>
<Vtx X="-313" Y="2422" Z="-493" S="583" T="1220" R="157" G="45" B="190" A="255"/>
<Vtx X="-502" Y="2064" Z="-283" S="340" T="1555" R="134" G="14" B="222" A="255"/>
<Vtx X="-405" Y="2064" Z="-517" S="559" T="1522" R="153" G="9" B="182" A="255"/>
<Vtx X="-487" Y="1742" Z="-256" S="410" T="1118" R="136" G="233" B="221" A="255"/>
<Vtx X="-393" Y="1739" Z="-479" S="600" T="1075" R="155" G="231" B="183" A="255"/>
<Vtx X="-418" Y="1497" Z="-222" S="479" T="681" R="138" G="223" B="221" A="255"/>
<Vtx X="-337" Y="1492" Z="-414" S="642" T="627" R="157" G="218" B="186" A="255"/>
<Vtx X="-459" Y="1499" Z="0" S="317" T="735" R="133" G="224" B="0" A="255"/>
<Vtx X="-487" Y="1742" Z="-256" S="410" T="1118" R="136" G="233" B="221" A="255"/>
<Vtx X="-418" Y="1497" Z="-222" S="479" T="681" R="138" G="223" B="221" A="255"/>
<Vtx X="-535" Y="1742" Z="0" S="219" T="1161" R="131" G="234" B="0" A="255"/>
<Vtx X="-487" Y="1742" Z="256" S="410" T="1118" R="136" G="233" B="35" A="255"/>
<Vtx X="-418" Y="1497" Z="221" S="479" T="681" R="138" G="223" B="35" A="255"/>
<Vtx X="-502" Y="2064" Z="283" S="340" T="1555" R="134" G="14" B="34" A="255"/>
<Vtx X="-551" Y="2064" Z="0" S="122" T="1588" R="130" G="16" B="0" A="255"/>
<Vtx X="-388" Y="2422" Z="273" S="375" T="1226" R="142" G="50" B="27" A="255"/>
<Vtx X="-425" Y="2423" Z="0" S="168" T="1233" R="140" G="52" B="0" A="255"/>
<Vtx X="-388" Y="2422" Z="-273" S="375" T="1226" R="142" G="50" B="229" A="255"/>
<Vtx X="-502" Y="2064" Z="-283" S="340" T="1555" R="134" G="14" B="222" A="255"/>
<Vtx X="-313" Y="2422" Z="493" S="1094" T="929" R="157" G="45" B="66" A="255"/>
<Vtx X="-103" Y="2713" Z="502" S="1163" T="832" R="208" G="77" B="89" A="255"/>
<Vtx X="-183" Y="2714" Z="402" S="1139" T="827" R="165" G="74" B="49" A="255"/>
<Vtx X="-175" Y="2422" Z="620" S="1135" T="938" R="201" G="39" B="108" A="255"/>
<Vtx X="-405" Y="2064" Z="517" S="1049" T="1031" R="153" G="9" B="74" A="255"/>
<Vtx X="-175" Y="2422" Z="620" S="1135" T="938" R="201" G="39" B="108" A="255"/>
<Vtx X="-313" Y="2422" Z="493" S="1094" T="929" R="157" G="45" B="66" A="255"/>
<Vtx X="-227" Y="2064" Z="664" S="1108" T="1044" R="199" G="4" B="114" A="255"/>
<Vtx X="-393" Y="1740" Z="479" S="1118" T="880" R="155" G="231" B="73" A="255"/>
<Vtx X="-220" Y="1737" Z="628" S="1176" T="890" R="199" G="230" B="111" A="255"/>
<Vtx X="-337" Y="1493" Z="413" S="1186" T="730" R="157" G="218" B="70" A="255"/>
<Vtx X="-189" Y="1489" Z="552" S="1244" T="735" R="198" G="215" B="105" A="255"/>
<Vtx X="0" Y="1736" Z="682" S="1234" T="900" R="0" G="230" B="124" A="255"/>
<Vtx X="0" Y="1488" Z="606" S="1302" T="741" R="0" G="214" B="120" A="255"/>
<Vtx X="218" Y="1738" Z="629" S="1294" T="913" R="58" G="230" B="110" A="255"/>
<Vtx X="188" Y="1489" Z="552" S="1356" T="759" R="59" G="215" B="105" A="255"/>
<Vtx X="380" Y="1743" Z="485" S="1353" T="929" R="102" G="230" B="71" A="255"/>
<Vtx X="332" Y="1495" Z="414" S="1410" T="776" R="102" G="221" B="68" A="255"/>
<Vtx X="460" Y="1747" Z="263" S="1411" T="963" R="112" G="219" B="47" A="255"/>
<Vtx X="402" Y="1492" Z="224" S="1481" T="727" R="121" G="231" B="30" A="255"/>
<Vtx X="421" Y="1454" Z="-1" S="1553" T="678" R="126" G="240" B="0" A="255"/>
<Vtx X="460" Y="1747" Z="263" S="1411" T="963" R="112" G="219" B="47" A="255"/>
<Vtx X="402" Y="1492" Z="224" S="1481" T="727" R="121" G="231" B="30" A="255"/>
<Vtx X="449" Y="1596" Z="0" S="1479" T="935" R="119" G="212" B="0" A="255"/>
<Vtx X="460" Y="1746" Z="-263" S="1411" T="963" R="112" G="219" B="209" A="255"/>
<Vtx X="402" Y="1492" Z="-225" S="1481" T="727" R="121" G="232" B="226" A="255"/>
<Vtx X="332" Y="1494" Z="-415" S="1410" T="776" R="102" G="221" B="189" A="255"/>
<Vtx X="380" Y="1743" Z="-485" S="1353" T="929" R="103" G="231" B="185" A="255"/>
<Vtx X="188" Y="1488" Z="-554" S="1356" T="759" R="59" G="216" B="151" A="255"/>
<Vtx X="218" Y="1737" Z="-629" S="1294" T="913" R="58" G="230" B="146" A="255"/>
<Vtx X="0" Y="1486" Z="-607" S="1302" T="741" R="0" G="215" B="136" A="255"/>
<Vtx X="0" Y="1736" Z="-683" S="1234" T="900" R="0" G="231" B="131" A="255"/>
<Vtx X="-189" Y="1488" Z="-553" S="1244" T="735" R="197" G="215" B="151" A="255"/>
<Vtx X="-220" Y="1737" Z="-629" S="1176" T="890" R="198" G="230" B="146" A="255"/>
<Vtx X="-337" Y="1492" Z="-414" S="1186" T="730" R="157" G="218" B="186" A="255"/>
<Vtx X="-393" Y="1739" Z="-479" S="1118" T="880" R="155" G="231" B="183" A="255"/>
<Vtx X="-393" Y="1739" Z="-479" S="1118" T="880" R="155" G="231" B="183" A="255"/>
<Vtx X="-227" Y="2064" Z="-664" S="1108" T="1044" R="199" G="4" B="142" A="255"/>
<Vtx X="-220" Y="1737" Z="-629" S="1176" T="890" R="198" G="230" B="146" A="255"/>
<Vtx X="-405" Y="2064" Z="-517" S="1049" T="1031" R="153" G="9" B="182" A="255"/>
<Vtx X="-175" Y="2422" Z="-620" S="1135" T="938" R="201" G="39" B="148" A="255"/>
<Vtx X="-313" Y="2422" Z="-493" S="1094" T="929" R="157" G="45" B="190" A="255"/>
<Vtx X="-103" Y="2713" Z="-502" S="1163" T="832" R="208" G="77" B="167" A="255"/>
<Vtx X="-183" Y="2714" Z="-402" S="1139" T="827" R="165" G="74" B="207" A="255"/>
<Vtx X="0" Y="2714" Z="-522" S="1187" T="837" R="0" G="77" B="155" A="255"/>
<Vtx X="0" Y="2422" Z="-658" S="1177" T="946" R="0" G="36" B="134" A="255"/>
<Vtx X="103" Y="2712" Z="-501" S="1211" T="837" R="51" G="76" B="168" A="255"/>
<Vtx X="175" Y="2421" Z="-618" S="1223" T="951" R="58" G="39" B="150" A="255"/>
<Vtx X="183" Y="2710" Z="-394" S="1236" T="836" R="95" G="71" B="210" A="255"/>
<Vtx X="311" Y="2414" Z="-478" S="1281" T="953" R="102" G="45" B="194" A="255"/>
<Vtx X="406" Y="2396" Z="-196" S="1376" T="948" R="107" G="60" B="221" A="255"/>
<Vtx X="223" Y="2717" Z="-210" S="1306" T="808" R="102" G="72" B="234" A="255"/>
<Vtx X="203" Y="2784" Z="0" S="1377" T="779" R="99" G="79" B="0" A="255"/>
<Vtx X="406" Y="2396" Z="-196" S="1376" T="948" R="107" G="60" B="221" A="255"/>
<Vtx X="223" Y="2717" Z="-210" S="1306" T="808" R="102" G="72" B="234" A="255"/>
<Vtx X="312" Y="2634" Z="0" S="1403" T="846" R="109" G="66" B="0" A="255"/>
<Vtx X="406" Y="2396" Z="196" S="1376" T="948" R="107" G="60" B="35" A="255"/>
<Vtx X="223" Y="2717" Z="210" S="1306" T="808" R="102" G="72" B="22" A="255"/>
<Vtx X="183" Y="2710" Z="394" S="1236" T="836" R="95" G="71" B="46" A="255"/>
<Vtx X="311" Y="2414" Z="478" S="1281" T="953" R="102" G="45" B="62" A="255"/>
<Vtx X="175" Y="2421" Z="618" S="1223" T="951" R="58" G="39" B="106" A="255"/>
<Vtx X="103" Y="2712" Z="501" S="1211" T="837" R="51" G="76" B="88" A="255"/>
<Vtx X="0" Y="2422" Z="658" S="1177" T="946" R="0" G="36" B="122" A="255"/>
<Vtx X="0" Y="2714" Z="522" S="1187" T="837" R="0" G="77" B="101" A="255"/>
<Vtx X="-175" Y="2422" Z="620" S="1135" T="938" R="201" G="39" B="108" A="255"/>
<Vtx X="-103" Y="2713" Z="502" S="1163" T="832" R="208" G="77" B="89" A="255"/>
<Vtx X="-227" Y="2064" Z="664" S="1108" T="1044" R="199" G="4" B="114" A="255"/>
<Vtx X="0" Y="2064" Z="713" S="1166" T="1057" R="0" G="3" B="127" A="255"/>
<Vtx X="-220" Y="1737" Z="628" S="1176" T="890" R="199" G="230" B="111" A="255"/>
<Vtx X="0" Y="2064" Z="713" S="1166" T="1057" R="0" G="3" B="127" A="255"/>
<Vtx X="-227" Y="2064" Z="664" S="1108" T="1044" R="199" G="4" B="114" A="255"/>
<Vtx X="0" Y="1736" Z="682" S="1234" T="900" R="0" G="230" B="124" A="255"/>
<Vtx X="225" Y="2064" Z="665" S="1231" T="1067" R="58" G="5" B="113" A="255"/>
<Vtx X="218" Y="1738" Z="629" S="1294" T="913" R="58" G="230" B="110" A="255"/>
<Vtx X="392" Y="2064" Z="527" S="1297" T="1076" R="104" G="9" B="73" A="255"/>
<Vtx X="380" Y="1743" Z="485" S="1353" T="929" R="102" G="230" B="71" A="255"/>
<Vtx X="460" Y="1747" Z="263" S="1411" T="963" R="112" G="219" B="47" A="255"/>
<Vtx X="479" Y="2061" Z="341" S="1344" T="1084" R="109" G="12" B="64" A="255"/>
<Vtx X="596" Y="2054" Z="219" S="1390" T="1092" R="78" G="9" B="100" A="255"/>
<Vtx X="580" Y="1883" Z="161" S="1398" T="1142" R="80" G="198" B="80" A="255"/>
<Vtx X="585" Y="1755" Z="0" S="1405" T="1192" R="93" G="169" B="0" A="255"/>
<Vtx X="449" Y="1596" Z="0" S="1479" T="935" R="119" G="212" B="0" A="255"/>
<Vtx X="460" Y="1746" Z="-263" S="1411" T="963" R="112" G="219" B="209" A="255"/>
<Vtx X="580" Y="1883" Z="-161" S="1398" T="1142" R="80" G="198" B="176" A="255"/>
<Vtx X="596" Y="2054" Z="-219" S="1390" T="1092" R="78" G="9" B="156" A="255"/>
<Vtx X="580" Y="1883" Z="-161" S="1398" T="1142" R="80" G="198" B="176" A="255"/>
<Vtx X="460" Y="1746" Z="-263" S="1411" T="963" R="112" G="219" B="209" A="255"/>
<Vtx X="479" Y="2061" Z="-341" S="1344" T="1084" R="109" G="12" B="192" A="255"/>
<Vtx X="392" Y="2064" Z="-527" S="1297" T="1076" R="104" G="9" B="183" A="255"/>
<Vtx X="380" Y="1743" Z="-485" S="1353" T="929" R="103" G="231" B="185" A="255"/>
<Vtx X="218" Y="1737" Z="-629" S="1294" T="913" R="58" G="230" B="146" A="255"/>
<Vtx X="225" Y="2064" Z="-665" S="1231" T="1067" R="58" G="5" B="143" A="255"/>
<Vtx X="0" Y="1736" Z="-683" S="1234" T="900" R="0" G="231" B="131" A="255"/>
<Vtx X="0" Y="2064" Z="-713" S="1166" T="1057" R="0" G="3" B="129" A="255"/>
<Vtx X="-220" Y="1737" Z="-629" S="1176" T="890" R="198" G="230" B="146" A="255"/>
<Vtx X="-227" Y="2064" Z="-664" S="1108" T="1044" R="199" G="4" B="142" A="255"/>
<Vtx X="0" Y="2422" Z="-658" S="1177" T="946" R="0" G="36" B="134" A="255"/>
<Vtx X="-175" Y="2422" Z="-620" S="1135" T="938" R="201" G="39" B="148" A="255"/>
<Vtx X="175" Y="2421" Z="-618" S="1223" T="951" R="58" G="39" B="150" A="255"/>
<Vtx X="311" Y="2414" Z="-478" S="1281" T="953" R="102" G="45" B="194" A="255"/>
<Vtx X="392" Y="2064" Z="-527" S="1297" T="1076" R="104" G="9" B="183" A="255"/>
<Vtx X="311" Y="2414" Z="-478" S="1281" T="953" R="102" G="45" B="194" A="255"/>
<Vtx X="406" Y="2396" Z="-196" S="1376" T="948" R="107" G="60" B="221" A="255"/>
<Vtx X="479" Y="2061" Z="-341" S="1344" T="1084" R="109" G="12" B="192" A="255"/>
<Vtx X="596" Y="2054" Z="-219" S="1390" T="1092" R="78" G="9" B="156" A="255"/>
<Vtx X="572" Y="2204" Z="-146" S="1425" T="1042" R="74" G="80" B="191" A="255"/>
<Vtx X="605" Y="2242" Z="0" S="1459" T="992" R="66" G="109" B="0" A="255"/>
<Vtx X="491" Y="2297" Z="0" S="1449" T="970" R="99" G="79" B="0" A="255"/>
<Vtx X="478" Y="2338" Z="0" S="1440" T="948" R="120" G="42" B="0" A="255"/>
<Vtx X="459" Y="2390" Z="0" S="1435" T="930" R="116" G="53" B="0" A="255"/>
<Vtx X="405" Y="2483" Z="0" S="1430" T="913" R="109" G="65" B="0" A="255"/>
<Vtx X="312" Y="2634" Z="0" S="1403" T="846" R="109" G="66" B="0" A="255"/>
<Vtx X="406" Y="2396" Z="196" S="1376" T="948" R="107" G="60" B="35" A="255"/>
<Vtx X="572" Y="2204" Z="146" S="1425" T="1042" R="74" G="80" B="65" A="255"/>
<Vtx X="596" Y="2054" Z="219" S="1390" T="1092" R="78" G="9" B="100" A="255"/>
<Vtx X="479" Y="2061" Z="341" S="1344" T="1084" R="109" G="12" B="64" A="255"/>
<Vtx X="392" Y="2064" Z="527" S="1297" T="1076" R="104" G="9" B="73" A="255"/>
<Vtx X="479" Y="2061" Z="341" S="1344" T="1084" R="109" G="12" B="64" A="255"/>
<Vtx X="406" Y="2396" Z="196" S="1376" T="948" R="107" G="60" B="35" A="255"/>
<Vtx X="311" Y="2414" Z="478" S="1281" T="953" R="102" G="45" B="62" A="255"/>
<Vtx X="225" Y="2064" Z="665" S="1231" T="1067" R="58" G="5" B="113" A="255"/>
<Vtx X="175" Y="2421" Z="618" S="1223" T="951" R="58" G="39" B="106" A="255"/>
<Vtx X="0" Y="2064" Z="713" S="1166" T="1057" R="0" G="3" B="127" A="255"/>
<Vtx X="0" Y="2422" Z="658" S="1177" T="946" R="0" G="36" B="122" A="255"/>
<Vtx X="-339" Y="-857" Z="768" S="2710" T="2753" R="197" G="219" B="106" A="255"/>
<Vtx X="0" Y="-1161" Z="751" S="2526" T="2760" R="0" G="203" B="116" A="255"/>
<Vtx X="0" Y="-862" Z="875" S="2544" T="2845" R="0" G="225" B="123" A="255"/>
<Vtx X="-252" Y="-1148" Z="652" S="2656" T="2659" R="188" G="199" B="91" A="255"/>
<Vtx X="-592" Y="-874" Z="528" S="2875" T="2661" R="165" G="202" B="70" A="255"/>
<Vtx X="-425" Y="-1144" Z="444" S="2757" T="2555" R="164" G="184" B="51" A="255"/>
<Vtx X="-711" Y="-893" Z="264" S="2998" T="2524" R="154" G="187" B="32" A="255"/>
<Vtx X="-460" Y="-1174" Z="224" S="2803" T="2435" R="167" G="165" B="1" A="255"/>
<Vtx X="-750" Y="-909" Z="0" S="3120" T="2387" R="154" G="180" B="0" A="255"/>
<Vtx X="-460" Y="-1174" Z="224" S="2803" T="2435" R="167" G="165" B="1" A="255"/>
<Vtx X="-711" Y="-893" Z="264" S="2998" T="2524" R="154" G="187" B="32" A="255"/>
<Vtx X="-405" Y="-1192" Z="0" S="2811" T="2299" R="181" G="153" B="0" A="255"/>
<Vtx X="-460" Y="-1174" Z="-224" S="2803" T="2435" R="167" G="165" B="255" A="255"/>
<Vtx X="-711" Y="-893" Z="-264" S="2998" T="2524" R="154" G="187" B="224" A="255"/>
<Vtx X="-425" Y="-1144" Z="-444" S="2757" T="2555" R="164" G="184" B="205" A="255"/>
<Vtx X="-592" Y="-874" Z="-528" S="2875" T="2661" R="165" G="202" B="186" A="255"/>
<Vtx X="-252" Y="-1148" Z="-652" S="2656" T="2659" R="188" G="199" B="165" A="255"/>
<Vtx X="-339" Y="-857" Z="-768" S="2710" T="2753" R="197" G="219" B="150" A="255"/>
<Vtx X="0" Y="-1161" Z="-751" S="2526" T="2760" R="0" G="203" B="140" A="255"/>
<Vtx X="0" Y="-862" Z="-875" S="2544" T="2845" R="0" G="225" B="133" A="255"/>
<Vtx X="0" Y="-1528" Z="-618" S="2507" T="2676" R="0" G="206" B="139" A="255"/>
<Vtx X="-169" Y="-1451" Z="-527" S="2604" T="2572" R="162" G="207" B="185" A="255"/>
<Vtx X="0" Y="-1981" Z="-487" S="2494" T="2547" R="0" G="150" B="186" A="255"/>
<Vtx X="169" Y="-1451" Z="-527" S="2380" T="2625" R="94" G="207" B="185" A="255"/>
<Vtx X="169" Y="-1451" Z="-527" S="2380" T="2625" R="94" G="207" B="185" A="255"/>
<Vtx X="92" Y="-1843" Z="-396" S="2435" T="2508" R="115" G="202" B="254" A="255"/>
<Vtx X="0" Y="-1981" Z="-487" S="2494" T="2547" R="0" G="150" B="186" A="255"/>
<Vtx X="285" Y="-1339" Z="-398" S="2252" T="2575" R="103" G="191" B="219" A="255"/>
<Vtx X="225" Y="-1455" Z="-247" S="2377" T="2394" R="100" G="185" B="35" A="255"/>
<Vtx X="0" Y="-1977" Z="-320" S="2494" T="2440" R="0" G="150" B="70" A="255"/>
<Vtx X="0" Y="-1296" Z="0" S="2502" T="2212" R="0" G="129" B="0" A="255"/>
<Vtx X="-225" Y="-1455" Z="-247" S="2641" T="2406" R="156" G="185" B="35" A="255"/>
<Vtx X="-405" Y="-1192" Z="0" S="2811" T="2299" R="181" G="153" B="0" A="255"/>
<Vtx X="-225" Y="-1455" Z="247" S="2641" T="2406" R="156" G="185" B="221" A="255"/>
<Vtx X="0" Y="-1977" Z="320" S="2494" T="2440" R="0" G="150" B="186" A="255"/>
<Vtx X="225" Y="-1455" Z="247" S="2377" T="2394" R="100" G="185" B="221" A="255"/>
<Vtx X="92" Y="-1843" Z="396" S="2435" T="2508" R="115" G="202" B="2" A="255"/>
<Vtx X="285" Y="-1339" Z="398" S="2252" T="2575" R="103" G="191" B="37" A="255"/>
<Vtx X="169" Y="-1451" Z="527" S="2380" T="2625" R="94" G="207" B="71" A="255"/>
<Vtx X="0" Y="-1981" Z="487" S="2494" T="2547" R="0" G="150" B="70" A="255"/>
<Vtx X="169" Y="-1451" Z="527" S="2380" T="2625" R="94" G="207" B="71" A="255"/>
<Vtx X="0" Y="-1528" Z="618" S="2507" T="2676" R="0" G="206" B="117" A="255"/>
<Vtx X="0" Y="-1981" Z="487" S="2494" T="2547" R="0" G="150" B="70" A="255"/>
<Vtx X="-169" Y="-1451" Z="527" S="2604" T="2572" R="162" G="207" B="71" A="255"/>
<Vtx X="-252" Y="-1148" Z="652" S="2656" T="2659" R="188" G="199" B="91" A="255"/>
<Vtx X="0" Y="-1161" Z="751" S="2526" T="2760" R="0" G="203" B="116" A="255"/>
<Vtx X="-425" Y="-1144" Z="444" S="2757" T="2555" R="164" G="184" B="51" A="255"/>
<Vtx X="-285" Y="-1339" Z="398" S="2672" T="2503" R="153" G="191" B="37" A="255"/>
<Vtx X="-460" Y="-1174" Z="224" S="2803" T="2435" R="167" G="165" B="1" A="255"/>
<Vtx X="-225" Y="-1455" Z="247" S="2641" T="2406" R="156" G="185" B="221" A="255"/>
<Vtx X="-405" Y="-1192" Z="0" S="2811" T="2299" R="181" G="153" B="0" A="255"/>
<Vtx X="-92" Y="-1843" Z="396" S="2553" T="2485" R="141" G="202" B="2" A="255"/>
<Vtx X="0" Y="-1977" Z="320" S="2494" T="2440" R="0" G="150" B="186" A="255"/>
<Vtx X="0" Y="-2039" Z="414" S="2493" T="2496" R="0" G="129" B="253" A="255"/>
<Vtx X="92" Y="-1843" Z="396" S="2435" T="2508" R="115" G="202" B="2" A="255"/>
<Vtx X="225" Y="-1455" Z="-247" S="684" T="848" R="100" G="185" B="35" A="255"/>
<Vtx X="425" Y="-1144" Z="-444" S="925" T="740" R="92" G="184" B="205" A="255"/>
<Vtx X="460" Y="-1174" Z="-224" S="935" T="815" R="89" G="165" B="255" A="255"/>
<Vtx X="285" Y="-1339" Z="-398" S="724" T="807" R="103" G="191" B="219" A="255"/>
<Vtx X="169" Y="-1451" Z="-527" S="680" T="670" R="94" G="207" B="185" A="255"/>
<Vtx X="252" Y="-1148" Z="-652" S="887" T="624" R="68" G="199" B="165" A="255"/>
<Vtx X="-405" Y="-1192" Z="0" S="2811" T="2299" R="181" G="153" B="0" A="255"/>
<Vtx X="-460" Y="-1174" Z="-224" S="2803" T="2435" R="167" G="165" B="255" A="255"/>
<Vtx X="-225" Y="-1455" Z="-247" S="2641" T="2406" R="156" G="185" B="35" A="255"/>
<Vtx X="-285" Y="-1339" Z="-398" S="2672" T="2503" R="153" G="191" B="219" A="255"/>
<Vtx X="-425" Y="-1144" Z="-444" S="2757" T="2555" R="164" G="184" B="205" A="255"/>
<Vtx X="-169" Y="-1451" Z="-527" S="2604" T="2572" R="162" G="207" B="185" A="255"/>
<Vtx X="-252" Y="-1148" Z="-652" S="2656" T="2659" R="188" G="199" B="165" A="255"/>
<Vtx X="-92" Y="-1843" Z="-396" S="2553" T="2485" R="141" G="202" B="254" A="255"/>
<Vtx X="0" Y="-1981" Z="-487" S="2494" T="2547" R="0" G="150" B="186" A="255"/>
<Vtx X="0" Y="-2039" Z="-414" S="2493" T="2496" R="0" G="129" B="3" A="255"/>
<Vtx X="92" Y="-1843" Z="-396" S="2435" T="2508" R="115" G="202" B="254" A="255"/>
<Vtx X="0" Y="-2039" Z="-414" S="2493" T="2496" R="0" G="129" B="3" A="255"/>
<Vtx X="0" Y="-1981" Z="-487" S="2494" T="2547" R="0" G="150" B="186" A="255"/>
<Vtx X="0" Y="-1977" Z="-320" S="2494" T="2440" R="0" G="150" B="70" A="255"/>
<Vtx X="-92" Y="-1843" Z="-396" S="2553" T="2485" R="141" G="202" B="254" A="255"/>
<Vtx X="-225" Y="-1455" Z="-247" S="2641" T="2406" R="156" G="185" B="35" A="255"/>
<Vtx X="-285" Y="-1339" Z="-398" S="2672" T="2503" R="153" G="191" B="219" A="255"/>
<Vtx X="535" Y="418" Z="-758" S="1397" T="719" R="82" G="20" B="161" A="255"/>
<Vtx X="0" Y="718" Z="-1006" S="1437" T="542" R="0" G="69" B="149" A="255"/>
<Vtx X="375" Y="803" Z="-767" S="1473" T="557" R="65" G="54" B="161" A="255"/>
<Vtx X="319" Y="371" Z="-983" S="1361" T="652" R="88" G="34" B="171" A="255"/>
<Vtx X="592" Y="24" Z="-736" S="1315" T="838" R="79" G="251" B="156" A="255"/>
<Vtx X="393" Y="53" Z="-888" S="1284" T="763" R="83" G="232" B="163" A="255"/>
<Vtx X="421" Y="-392" Z="-798" S="1206" T="875" R="58" G="238" B="144" A="255"/>
<Vtx X="262" Y="-121" Z="-894" S="1238" T="711" R="35" G="237" B="135" A="255"/>
<Vtx X="0" Y="-165" Z="-928" S="1191" T="660" R="255" G="241" B="130" A="255"/>
<Vtx X="0" Y="-165" Z="-928" S="1191" T="660" R="255" G="241" B="130" A="255"/>
<Vtx X="421" Y="-392" Z="-798" S="1206" T="875" R="58" G="238" B="144" A="255"/>
<Vtx X="0" Y="-464" Z="-896" S="1115" T="750" R="0" G="242" B="130" A="255"/>
<Vtx X="0" Y="-862" Z="-875" S="1038" T="841" R="0" G="225" B="133" A="255"/>
<Vtx X="339" Y="-857" Z="-768" S="1069" T="965" R="59" G="219" B="150" A="255"/>
<Vtx X="0" Y="-1161" Z="-751" S="838" T="886" R="0" G="203" B="140" A="255"/>
<Vtx X="252" Y="-1148" Z="-652" S="887" T="1021" R="68" G="199" B="165" A="255"/>
<Vtx X="0" Y="-1528" Z="-618" S="637" T="931" R="0" G="206" B="139" A="255"/>
<Vtx X="169" Y="-1451" Z="-527" S="680" T="1067" R="94" G="207" B="185" A="255"/>
<Vtx X="393" Y="53" Z="-888" S="2374" T="3321" R="83" G="232" B="163" A="255"/>
<Vtx X="239" Y="227" Z="-1195" S="2604" T="3474" R="100" G="49" B="195" A="255"/>
<Vtx X="319" Y="371" Z="-983" S="2567" T="3528" R="88" G="34" B="171" A="255"/>
<Vtx X="341" Y="54" Z="-1004" S="2538" T="3390" R="122" G="220" B="1" A="255"/>
<Vtx X="214" Y="56" Z="-943" S="2541" T="3319" R="29" G="135" B="229" A="255"/>
<Vtx X="165" Y="12" Z="-928" S="2553" T="3281" R="12" G="231" B="132" A="255"/>
<Vtx X="262" Y="-121" Z="-894" S="2498" T="3262" R="35" G="237" B="135" A="255"/>
<Vtx X="0" Y="-165" Z="-928" S="2623" T="3203" R="255" G="241" B="130" A="255"/>
<Vtx X="165" Y="12" Z="-928" S="2553" T="3281" R="12" G="231" B="132" A="255"/>
<Vtx X="262" Y="-121" Z="-894" S="2498" T="3262" R="35" G="237" B="135" A="255"/>
<Vtx X="0" Y="21" Z="-934" S="2637" T="3261" R="252" G="234" B="131" A="255"/>
<Vtx X="0" Y="74" Z="-948" S="2651" T="3320" R="253" G="129" B="252" A="255"/>
<Vtx X="214" Y="56" Z="-943" S="2541" T="3319" R="29" G="135" B="229" A="255"/>
<Vtx X="228" Y="-33" Z="-978" S="2577" T="3360" R="34" G="184" B="99" A="255"/>
<Vtx X="0" Y="-48" Z="-1004" S="2660" T="3355" R="2" G="199" B="114" A="255"/>
<Vtx X="229" Y="-257" Z="-1109" S="2619" T="3387" R="55" G="196" B="98" A="255"/>
<Vtx X="0" Y="-305" Z="-1122" S="2669" T="3390" R="0" G="193" B="110" A="255"/>
<Vtx X="225" Y="-573" Z="-1308" S="2649" T="3402" R="66" G="198" B="92" A="255"/>
<Vtx X="0" Y="-616" Z="-1303" S="2671" T="3398" R="0" G="192" B="110" A="255"/>
<Vtx X="-229" Y="-259" Z="-1106" S="2710" T="3373" R="202" G="195" B="98" A="255"/>
<Vtx X="-225" Y="-572" Z="-1308" S="2692" T="3391" R="190" G="198" B="92" A="255"/>
<Vtx X="-333" Y="-144" Z="-1184" S="2751" T="3356" R="131" G="244" B="18" A="255"/>
<Vtx X="-328" Y="-453" Z="-1409" S="2704" T="3390" R="130" G="243" B="10" A="255"/>
<Vtx X="-229" Y="-16" Z="-1453" S="2715" T="3390" R="154" G="49" B="198" A="255"/>
<Vtx X="-328" Y="-453" Z="-1409" S="2704" T="3390" R="130" G="243" B="10" A="255"/>
<Vtx X="-333" Y="-144" Z="-1184" S="2751" T="3356" R="131" G="244" B="18" A="255"/>
<Vtx X="-225" Y="-357" Z="-1709" S="2695" T="3400" R="152" G="32" B="190" A="255"/>
<Vtx X="0" Y="49" Z="-1637" S="2678" T="3425" R="0" G="81" B="158" A="255"/>
<Vtx X="0" Y="-333" Z="-1901" S="2675" T="3412" R="0" G="55" B="141" A="255"/>
<Vtx X="229" Y="-15" Z="-1454" S="2630" T="3429" R="102" G="49" B="198" A="255"/>
<Vtx X="239" Y="227" Z="-1195" S="2604" T="3474" R="100" G="49" B="195" A="255"/>
<Vtx X="0" Y="333" Z="-1349" S="2719" T="3579" R="0" G="88" B="164" A="255"/>
<Vtx X="341" Y="54" Z="-1004" S="2538" T="3390" R="122" G="220" B="1" A="255"/>
<Vtx X="333" Y="-143" Z="-1187" S="2600" T="3402" R="125" G="244" B="18" A="255"/>
<Vtx X="228" Y="-33" Z="-978" S="2577" T="3360" R="34" G="184" B="99" A="255"/>
<Vtx X="214" Y="56" Z="-943" S="2541" T="3319" R="29" G="135" B="229" A="255"/>
<Vtx X="229" Y="-257" Z="-1109" S="2619" T="3387" R="55" G="196" B="98" A="255"/>
<Vtx X="328" Y="-452" Z="-1409" S="2640" T="3406" R="126" G="243" B="10" A="255"/>
<Vtx X="225" Y="-573" Z="-1308" S="2649" T="3402" R="66" G="198" B="92" A="255"/>
<Vtx X="225" Y="-573" Z="-1308" S="2649" T="3402" R="66" G="198" B="92" A="255"/>
<Vtx X="288" Y="-823" Z="-1604" S="2663" T="3410" R="125" G="232" B="7" A="255"/>
<Vtx X="328" Y="-452" Z="-1409" S="2640" T="3406" R="126" G="243" B="10" A="255"/>
<Vtx X="198" Y="-919" Z="-1503" S="2666" T="3408" R="68" G="192" B="86" A="255"/>
<Vtx X="0" Y="-616" Z="-1303" S="2671" T="3398" R="0" G="192" B="110" A="255"/>
<Vtx X="0" Y="-973" Z="-1499" S="2674" T="3407" R="0" G="184" B="104" A="255"/>
<Vtx X="-225" Y="-572" Z="-1308" S="2692" T="3391" R="190" G="198" B="92" A="255"/>
<Vtx X="-198" Y="-919" Z="-1503" S="2681" T="3405" R="188" G="192" B="86" A="255"/>
<Vtx X="-328" Y="-453" Z="-1409" S="2704" T="3390" R="130" G="243" B="10" A="255"/>
<Vtx X="-288" Y="-823" Z="-1603" S="2684" T="3404" R="131" G="232" B="7" A="255"/>
<Vtx X="-225" Y="-357" Z="-1709" S="2695" T="3400" R="152" G="32" B="190" A="255"/>
<Vtx X="-198" Y="-769" Z="-1867" S="2682" T="3408" R="151" G="12" B="186" A="255"/>
<Vtx X="0" Y="-333" Z="-1901" S="2675" T="3412" R="0" G="55" B="141" A="255"/>
<Vtx X="0" Y="-755" Z="-2035" S="2675" T="3411" R="0" G="29" B="132" A="255"/>
<Vtx X="225" Y="-357" Z="-1709" S="2652" T="3413" R="104" G="32" B="190" A="255"/>
<Vtx X="229" Y="-15" Z="-1454" S="2630" T="3429" R="102" G="49" B="198" A="255"/>
<Vtx X="333" Y="-143" Z="-1187" S="2600" T="3402" R="125" G="244" B="18" A="255"/>
<Vtx X="225" Y="-357" Z="-1709" S="2652" T="3413" R="104" G="32" B="190" A="255"/>
<Vtx X="229" Y="-15" Z="-1454" S="2630" T="3429" R="102" G="49" B="198" A="255"/>
<Vtx X="328" Y="-452" Z="-1409" S="2640" T="3406" R="126" G="243" B="10" A="255"/>
<Vtx X="198" Y="-769" Z="-1867" S="2667" T="3412" R="105" G="12" B="186" A="255"/>
<Vtx X="288" Y="-823" Z="-1604" S="2663" T="3410" R="125" G="232" B="7" A="255"/>
<Vtx X="135" Y="-1157" Z="-1987" S="2673" T="3412" R="105" G="0" B="184" A="255"/>
<Vtx X="198" Y="-1177" Z="-1807" S="2673" T="3411" R="121" G="218" B="1" A="255"/>
<Vtx X="198" Y="-919" Z="-1503" S="2666" T="3408" R="68" G="192" B="86" A="255"/>
<Vtx X="135" Y="-1243" Z="-1749" S="2673" T="3411" R="68" G="177" B="73" A="255"/>
<Vtx X="0" Y="-973" Z="-1499" S="2674" T="3407" R="0" G="184" B="104" A="255"/>
<Vtx X="0" Y="-1282" Z="-1754" S="2675" T="3411" R="0" G="168" B="92" A="255"/>
<Vtx X="-198" Y="-919" Z="-1503" S="2681" T="3405" R="188" G="192" B="86" A="255"/>
<Vtx X="-135" Y="-1243" Z="-1749" S="2676" T="3410" R="188" G="177" B="73" A="255"/>
<Vtx X="-288" Y="-823" Z="-1603" S="2684" T="3404" R="131" G="232" B="7" A="255"/>
<Vtx X="-198" Y="-1177" Z="-1807" S="2677" T="3410" R="135" G="218" B="1" A="255"/>
<Vtx X="-198" Y="-769" Z="-1867" S="2682" T="3408" R="151" G="12" B="186" A="255"/>
<Vtx X="-198" Y="-1177" Z="-1807" S="2677" T="3410" R="135" G="218" B="1" A="255"/>
<Vtx X="-288" Y="-823" Z="-1603" S="2684" T="3404" R="131" G="232" B="7" A="255"/>
<Vtx X="-135" Y="-1157" Z="-1987" S="2676" T="3411" R="151" G="0" B="184" A="255"/>
<Vtx X="0" Y="-755" Z="-2035" S="2675" T="3411" R="0" G="29" B="132" A="255"/>
<Vtx X="0" Y="-1157" Z="-2101" S="2675" T="3412" R="0" G="14" B="130" A="255"/>
<Vtx X="198" Y="-769" Z="-1867" S="2667" T="3412" R="105" G="12" B="186" A="255"/>
<Vtx X="225" Y="-357" Z="-1709" S="2652" T="3413" R="104" G="32" B="190" A="255"/>
<Vtx X="135" Y="-1157" Z="-1987" S="2673" T="3412" R="105" G="0" B="184" A="255"/>
<Vtx X="0" Y="-1460" Z="-2123" S="2675" T="3412" R="0" G="2" B="129" A="255"/>
<Vtx X="69" Y="-1441" Z="-2063" S="2675" T="3412" R="109" G="237" B="194" A="255"/>
<Vtx X="198" Y="-1177" Z="-1807" S="2673" T="3411" R="121" G="218" B="1" A="255"/>
<Vtx X="117" Y="-1389" Z="-1954" S="2674" T="3412" R="119" G="211" B="253" A="255"/>
<Vtx X="135" Y="-1243" Z="-1749" S="2673" T="3411" R="68" G="177" B="73" A="255"/>
<Vtx X="69" Y="-1465" Z="-1970" S="2675" T="3412" R="84" G="172" B="47" A="255"/>
<Vtx X="0" Y="-1282" Z="-1754" S="2675" T="3411" R="0" G="168" B="92" A="255"/>
<Vtx X="0" Y="-1282" Z="-1754" S="2675" T="3411" R="0" G="168" B="92" A="255"/>
<Vtx X="0" Y="-1496" Z="-1981" S="2675" T="3412" R="0" G="159" B="82" A="255"/>
<Vtx X="69" Y="-1465" Z="-1970" S="2675" T="3412" R="84" G="172" B="47" A="255"/>
<Vtx X="-135" Y="-1243" Z="-1749" S="2676" T="3410" R="188" G="177" B="73" A="255"/>
<Vtx X="-69" Y="-1465" Z="-1970" S="2675" T="3412" R="172" G="172" B="47" A="255"/>
<Vtx X="-198" Y="-1177" Z="-1807" S="2677" T="3410" R="135" G="218" B="1" A="255"/>
<Vtx X="-117" Y="-1389" Z="-1954" S="2675" T="3412" R="137" G="211" B="253" A="255"/>
<Vtx X="-135" Y="-1157" Z="-1987" S="2676" T="3411" R="151" G="0" B="184" A="255"/>
<Vtx X="-69" Y="-1441" Z="-2063" S="2675" T="3412" R="147" G="237" B="194" A="255"/>
<Vtx X="0" Y="-1157" Z="-2101" S="2675" T="3412" R="0" G="14" B="130" A="255"/>
<Vtx X="0" Y="-1460" Z="-2123" S="2675" T="3412" R="0" G="2" B="129" A="255"/>
<Vtx X="0" Y="-1598" Z="-2128" S="2675" T="3412" R="0" G="156" B="178" A="255"/>
<Vtx X="28" Y="-1573" Z="-2093" S="2675" T="3412" R="106" G="187" B="245" A="255"/>
<Vtx X="69" Y="-1441" Z="-2063" S="2675" T="3412" R="109" G="237" B="194" A="255"/>
<Vtx X="117" Y="-1389" Z="-1954" S="2674" T="3412" R="119" G="211" B="253" A="255"/>
<Vtx X="0" Y="-1599" Z="-2098" S="2675" T="3412" R="0" G="134" B="35" A="255"/>
<Vtx X="-69" Y="-1465" Z="-1970" S="2675" T="3412" R="172" G="172" B="47" A="255"/>
<Vtx X="-28" Y="-1573" Z="-2093" S="2675" T="3412" R="150" G="187" B="245" A="255"/>
<Vtx X="0" Y="-1599" Z="-2098" S="2675" T="3412" R="0" G="134" B="35" A="255"/>
<Vtx X="-117" Y="-1389" Z="-1954" S="2675" T="3412" R="137" G="211" B="253" A="255"/>
<Vtx X="-69" Y="-1441" Z="-2063" S="2675" T="3412" R="147" G="237" B="194" A="255"/>
<Vtx X="0" Y="-1598" Z="-2128" S="2675" T="3412" R="0" G="156" B="178" A="255"/>
<Vtx X="0" Y="-1617" Z="-2125" S="2675" T="3412" R="0" G="129" B="249" A="255"/>
<Vtx X="28" Y="-1573" Z="-2093" S="2675" T="3412" R="106" G="187" B="245" A="255"/>
<Vtx X="319" Y="371" Z="-983" S="185" T="308" R="88" G="34" B="171" A="255"/>
<Vtx X="239" Y="227" Z="-1195" S="223" T="255" R="100" G="49" B="195" A="255"/>
<Vtx X="0" Y="333" Z="-1349" S="338" T="360" R="0" G="88" B="164" A="255"/>
<Vtx X="0" Y="718" Z="-1006" S="378" T="515" R="0" G="69" B="149" A="255"/>
<Vtx X="0" Y="-157" Z="924" S="606" T="1490" R="1" G="243" B="126" A="255"/>
<Vtx X="0" Y="27" Z="929" S="599" T="1447" R="2" G="235" B="125" A="255"/>
<Vtx X="-165" Y="20" Z="915" S="536" T="1458" R="242" G="237" B="125" A="255"/>
<Vtx X="0" Y="77" Z="944" S="592" T="1403" R="0" G="129" B="5" A="255"/>
<Vtx X="0" Y="77" Z="944" S="592" T="1403" R="0" G="129" B="5" A="255"/>
<Vtx X="-214" Y="64" Z="921" S="501" T="1442" R="230" G="138" B="39" A="255"/>
<Vtx X="-165" Y="20" Z="915" S="536" T="1458" R="242" G="237" B="125" A="255"/>
<Vtx X="-393" Y="62" Z="884" S="409" T="1480" R="173" G="232" B="93" A="255"/>
<Vtx X="-262" Y="-113" Z="890" S="508" T="1485" R="223" G="240" B="122" A="255"/>
<Vtx X="0" Y="-157" Z="924" S="606" T="1490" R="1" G="243" B="126" A="255"/>
<Vtx X="405" Y="-1192" Z="0" S="754" T="1309" R="75" G="153" B="0" A="255"/>
<Vtx X="711" Y="-893" Z="264" S="930" T="1374" R="102" G="187" B="33" A="255"/>
<Vtx X="460" Y="-1174" Z="224" S="753" T="1265" R="89" G="165" B="1" A="255"/>
<Vtx X="750" Y="-909" Z="0" S="991" T="1430" R="102" G="180" B="0" A="255"/>
<Vtx X="711" Y="-893" Z="-264" S="930" T="1374" R="102" G="187" B="224" A="255"/>
<Vtx X="460" Y="-1174" Z="-224" S="753" T="1265" R="89" G="165" B="255" A="255"/>
<Vtx X="592" Y="-874" Z="-528" S="901" T="1165" R="91" G="202" B="186" A="255"/>
<Vtx X="425" Y="-1144" Z="-444" S="745" T="1204" R="92" G="184" B="205" A="255"/>
<Vtx X="252" Y="-1148" Z="-652" S="714" T="1109" R="68" G="199" B="165" A="255"/>
<Vtx X="339" Y="-857" Z="-768" S="863" T="1063" R="59" G="219" B="150" A="255"/>
<Vtx X="592" Y="-874" Z="-528" S="901" T="1165" R="91" G="202" B="186" A="255"/>
<Vtx X="339" Y="-857" Z="-768" S="863" T="1063" R="59" G="219" B="150" A="255"/>
<Vtx X="421" Y="-392" Z="-798" S="974" T="990" R="58" G="238" B="144" A="255"/>
<Vtx X="736" Y="-466" Z="-558" S="1013" T="1117" R="95" G="230" B="175" A="255"/>
<Vtx X="822" Y="12" Z="-531" S="1095" T="1046" R="99" G="255" B="176" A="255"/>
<Vtx X="592" Y="24" Z="-736" S="1063" T="960" R="79" G="251" B="156" A="255"/>
<Vtx X="535" Y="418" Z="-758" S="1130" T="862" R="82" G="20" B="161" A="255"/>
<Vtx X="763" Y="466" Z="-536" S="1162" T="917" R="97" G="24" B="178" A="255"/>
<Vtx X="375" Y="803" Z="-767" S="1192" T="730" R="65" G="54" B="161" A="255"/>
<Vtx X="616" Y="856" Z="-533" S="1221" T="742" R="87" G="54" B="181" A="255"/>
<Vtx X="904" Y="501" Z="-281" S="1195" T="1105" R="113" G="30" B="207" A="255"/>
<Vtx X="748" Y="896" Z="-277" S="1257" T="784" R="102" G="60" B="211" A="255"/>
<Vtx X="987" Y="513" Z="1" S="1230" T="1156" R="123" G="33" B="0" A="255"/>
<Vtx X="819" Y="914" Z="-1" S="1293" T="826" R="110" G="64" B="0" A="255"/>
<Vtx X="748" Y="899" Z="274" S="1257" T="784" R="102" G="61" B="44" A="255"/>
<Vtx X="904" Y="511" Z="284" S="1195" T="1105" R="113" G="30" B="49" A="255"/>
<Vtx X="904" Y="511" Z="284" S="1195" T="1105" R="113" G="30" B="49" A="255"/>
<Vtx X="748" Y="899" Z="274" S="1257" T="784" R="102" G="61" B="44" A="255"/>
<Vtx X="616" Y="865" Z="534" S="1221" T="742" R="87" G="55" B="74" A="255"/>
<Vtx X="763" Y="482" Z="539" S="1162" T="917" R="98" G="24" B="78" A="255"/>
<Vtx X="375" Y="816" Z="772" S="1192" T="730" R="64" G="54" B="95" A="255"/>
<Vtx X="535" Y="437" Z="758" S="1130" T="862" R="80" G="19" B="96" A="255"/>
<Vtx X="822" Y="21" Z="529" S="1095" T="1046" R="98" G="254" B="81" A="255"/>
<Vtx X="592" Y="35" Z="730" S="1063" T="960" R="78" G="251" B="100" A="255"/>
<Vtx X="421" Y="-387" Z="794" S="974" T="990" R="58" G="240" B="112" A="255"/>
<Vtx X="736" Y="-459" Z="550" S="1013" T="1117" R="94" G="231" B="81" A="255"/>
<Vtx X="592" Y="-874" Z="528" S="901" T="1165" R="91" G="203" B="71" A="255"/>
<Vtx X="339" Y="-857" Z="768" S="863" T="1063" R="59" G="219" B="106" A="255"/>
<Vtx X="252" Y="-1148" Z="652" S="714" T="1109" R="68" G="199" B="91" A="255"/>
<Vtx X="425" Y="-1144" Z="444" S="745" T="1204" R="92" G="184" B="51" A="255"/>
<Vtx X="460" Y="-1174" Z="224" S="753" T="1265" R="89" G="165" B="1" A="255"/>
<Vtx X="711" Y="-893" Z="264" S="930" T="1374" R="102" G="187" B="33" A="255"/>
<Vtx X="711" Y="-893" Z="264" S="930" T="1374" R="102" G="187" B="33" A="255"/>
<Vtx X="896" Y="-485" Z="282" S="1046" T="1332" R="113" G="222" B="47" A="255"/>
<Vtx X="736" Y="-459" Z="550" S="1013" T="1117" R="94" G="231" B="81" A="255"/>
<Vtx X="750" Y="-909" Z="0" S="991" T="1430" R="102" G="180" B="0" A="255"/>
<Vtx X="978" Y="-487" Z="1" S="1079" T="1388" R="121" G="218" B="0" A="255"/>
<Vtx X="896" Y="-485" Z="-280" S="1046" T="1332" R="113" G="221" B="210" A="255"/>
<Vtx X="711" Y="-893" Z="-264" S="930" T="1374" R="102" G="187" B="224" A="255"/>
<Vtx X="736" Y="-466" Z="-558" S="1013" T="1117" R="95" G="230" B="175" A="255"/>
<Vtx X="592" Y="-874" Z="-528" S="901" T="1165" R="91" G="202" B="186" A="255"/>
<Vtx X="822" Y="12" Z="-531" S="1095" T="1046" R="99" G="255" B="176" A="255"/>
<Vtx X="971" Y="7" Z="-284" S="1128" T="1253" R="116" G="255" B="205" A="255"/>
<Vtx X="763" Y="466" Z="-536" S="1162" T="917" R="97" G="24" B="178" A="255"/>
<Vtx X="904" Y="501" Z="-281" S="1195" T="1105" R="113" G="30" B="207" A="255"/>
<Vtx X="1060" Y="11" Z="2" S="1167" T="1347" R="127" G="255" B="0" A="255"/>
<Vtx X="987" Y="513" Z="1" S="1230" T="1156" R="123" G="33" B="0" A="255"/>
<Vtx X="904" Y="511" Z="284" S="1195" T="1105" R="113" G="30" B="49" A="255"/>
<Vtx X="1060" Y="11" Z="2" S="1167" T="1347" R="127" G="255" B="0" A="255"/>
<Vtx X="904" Y="511" Z="284" S="1195" T="1105" R="113" G="30" B="49" A="255"/>
<Vtx X="971" Y="15" Z="283" S="1128" T="1253" R="116" G="255" B="51" A="255"/>
<Vtx X="763" Y="482" Z="539" S="1162" T="917" R="98" G="24" B="78" A="255"/>
<Vtx X="822" Y="21" Z="529" S="1095" T="1046" R="98" G="254" B="81" A="255"/>
<Vtx X="896" Y="-485" Z="282" S="1046" T="1332" R="113" G="222" B="47" A="255"/>
<Vtx X="736" Y="-459" Z="550" S="1013" T="1117" R="94" G="231" B="81" A="255"/>
<Vtx X="978" Y="-487" Z="1" S="1079" T="1388" R="121" G="218" B="0" A="255"/>
<Vtx X="971" Y="7" Z="-284" S="1128" T="1253" R="116" G="255" B="205" A="255"/>
<Vtx X="896" Y="-485" Z="-280" S="1046" T="1332" R="113" G="221" B="210" A="255"/>
<Vtx X="-243" Y="2717" Z="0" S="360" T="1361" R="153" G="74" B="0" A="255"/>
<Vtx X="-228" Y="2713" Z="228" S="464" T="1406" R="154" G="74" B="19" A="255"/>
<Vtx X="-130" Y="2842" Z="166" S="450" T="1356" R="180" G="101" B="10" A="255"/>
<Vtx X="-183" Y="2714" Z="402" S="568" T="1451" R="165" G="74" B="49" A="255"/>
<Vtx X="-89" Y="2856" Z="254" S="495" T="1360" R="202" G="113" B="24" A="255"/>
<Vtx X="-59" Y="2841" Z="362" S="538" T="1376" R="219" G="107" B="57" A="255"/>
<Vtx X="-183" Y="2714" Z="402" S="568" T="1451" R="165" G="74" B="49" A="255"/>
<Vtx X="-103" Y="2713" Z="502" S="593" T="1433" R="208" G="77" B="89" A="255"/>
<Vtx X="-59" Y="2841" Z="362" S="538" T="1376" R="219" G="107" B="57" A="255"/>
<Vtx X="0" Y="2714" Z="522" S="617" T="1414" R="0" G="77" B="101" A="255"/>
<Vtx X="0" Y="2856" Z="329" S="538" T="1348" R="0" G="121" B="40" A="255"/>
<Vtx X="60" Y="2841" Z="362" S="566" T="1343" R="39" G="107" B="56" A="255"/>
<Vtx X="103" Y="2712" Z="501" S="632" T="1386" R="51" G="76" B="88" A="255"/>
<Vtx X="183" Y="2710" Z="394" S="647" T="1359" R="95" G="71" B="46" A="255"/>
<Vtx X="89" Y="2855" Z="253" S="542" T="1303" R="56" G="112" B="24" A="255"/>
<Vtx X="129" Y="2843" Z="163" S="529" T="1259" R="74" G="102" B="14" A="255"/>
<Vtx X="223" Y="2717" Z="210" S="581" T="1263" R="102" G="72" B="22" A="255"/>
<Vtx X="203" Y="2784" Z="0" S="515" T="1168" R="99" G="79" B="0" A="255"/>
<Vtx X="99" Y="2873" Z="0" S="469" T="1210" R="64" G="110" B="0" A="255"/>
<Vtx X="129" Y="2843" Z="-163" S="529" T="1259" R="74" G="102" B="242" A="255"/>
<Vtx X="223" Y="2717" Z="-210" S="581" T="1263" R="102" G="72" B="234" A="255"/>
<Vtx X="183" Y="2710" Z="-394" S="647" T="1359" R="95" G="71" B="210" A="255"/>
<Vtx X="183" Y="2710" Z="-394" S="647" T="1359" R="95" G="71" B="210" A="255"/>
<Vtx X="89" Y="2855" Z="-253" S="542" T="1303" R="56" G="112" B="232" A="255"/>
<Vtx X="129" Y="2843" Z="-163" S="529" T="1259" R="74" G="102" B="242" A="255"/>
<Vtx X="60" Y="2841" Z="-362" S="566" T="1343" R="39" G="107" B="200" A="255"/>
<Vtx X="103" Y="2712" Z="-501" S="632" T="1386" R="51" G="76" B="168" A="255"/>
<Vtx X="0" Y="2714" Z="-522" S="617" T="1414" R="0" G="77" B="155" A="255"/>
<Vtx X="0" Y="2856" Z="-329" S="538" T="1348" R="0" G="121" B="216" A="255"/>
<Vtx X="-59" Y="2841" Z="-362" S="538" T="1376" R="219" G="107" B="199" A="255"/>
<Vtx X="-103" Y="2713" Z="-502" S="593" T="1433" R="208" G="77" B="167" A="255"/>
<Vtx X="-183" Y="2714" Z="-402" S="568" T="1451" R="165" G="74" B="207" A="255"/>
<Vtx X="-89" Y="2856" Z="-254" S="495" T="1360" R="202" G="113" B="232" A="255"/>
<Vtx X="-130" Y="2842" Z="-166" S="450" T="1356" R="180" G="101" B="246" A="255"/>
<Vtx X="-228" Y="2713" Z="-228" S="464" T="1406" R="154" G="74" B="237" A="255"/>
<Vtx X="-243" Y="2717" Z="0" S="360" T="1361" R="153" G="74" B="0" A="255"/>
<Vtx X="-104" Y="2865" Z="0" S="391" T="1307" R="187" G="107" B="0" A="255"/>
<Vtx X="-130" Y="2842" Z="166" S="450" T="1356" R="180" G="101" B="10" A="255"/>
<Vtx X="0" Y="2900" Z="0" S="423" T="1253" R="255" G="127" B="0" A="255"/>
<Vtx X="-104" Y="2865" Z="0" S="391" T="1307" R="187" G="107" B="0" A="255"/>
<Vtx X="-130" Y="2842" Z="166" S="450" T="1356" R="180" G="101" B="10" A="255"/>
<Vtx X="-89" Y="2856" Z="254" S="495" T="1360" R="202" G="113" B="24" A="255"/>
<Vtx X="-59" Y="2841" Z="362" S="538" T="1376" R="219" G="107" B="57" A="255"/>
<Vtx X="0" Y="2856" Z="329" S="538" T="1348" R="0" G="121" B="40" A="255"/>
<Vtx X="60" Y="2841" Z="362" S="566" T="1343" R="39" G="107" B="56" A="255"/>
<Vtx X="89" Y="2855" Z="253" S="542" T="1303" R="56" G="112" B="24" A="255"/>
<Vtx X="129" Y="2843" Z="163" S="529" T="1259" R="74" G="102" B="14" A="255"/>
<Vtx X="99" Y="2873" Z="0" S="469" T="1210" R="64" G="110" B="0" A="255"/>
<Vtx X="129" Y="2843" Z="-163" S="529" T="1259" R="74" G="102" B="242" A="255"/>
<Vtx X="89" Y="2855" Z="-253" S="542" T="1303" R="56" G="112" B="232" A="255"/>
<Vtx X="60" Y="2841" Z="-362" S="566" T="1343" R="39" G="107" B="200" A="255"/>
<Vtx X="0" Y="2856" Z="-329" S="538" T="1348" R="0" G="121" B="216" A="255"/>
<Vtx X="-59" Y="2841" Z="-362" S="538" T="1376" R="219" G="107" B="199" A="255"/>
<Vtx X="-89" Y="2856" Z="-254" S="495" T="1360" R="202" G="113" B="232" A="255"/>
<Vtx X="0" Y="2900" Z="0" S="423" T="1253" R="255" G="127" B="0" A="255"/>
<Vtx X="-89" Y="2856" Z="-254" S="495" T="1360" R="202" G="113" B="232" A="255"/>
<Vtx X="-130" Y="2842" Z="-166" S="450" T="1356" R="180" G="101" B="246" A="255"/>
<Vtx X="-104" Y="2865" Z="0" S="391" T="1307" R="187" G="107" B="0" A="255"/>
<Vtx X="0" Y="-165" Z="-928" S="606" T="1490" R="255" G="241" B="130" A="255"/>
<Vtx X="-262" Y="-119" Z="-888" S="508" T="1485" R="221" G="241" B="135" A="255"/>
<Vtx X="-165" Y="15" Z="-914" S="536" T="1458" R="239" G="238" B="131" A="255"/>
<Vtx X="-393" Y="55" Z="-880" S="409" T="1480" R="173" G="232" B="162" A="255"/>
<Vtx X="-214" Y="59" Z="-919" S="501" T="1442" R="229" G="138" B="216" A="255"/>
<Vtx X="0" Y="74" Z="-948" S="592" T="1403" R="253" G="129" B="252" A="255"/>
<Vtx X="0" Y="21" Z="-934" S="599" T="1447" R="252" G="234" B="131" A="255"/>
</Vertex>

View File

@ -0,0 +1,215 @@
<Vertex Version="0">
<Vtx X="46" Y="-2001" Z="581" S="496" T="1008" R="179" G="0" B="101" A="255"/>
<Vtx X="124" Y="-1944" Z="548" S="624" T="1008" R="230" G="112" B="55" A="255"/>
<Vtx X="59" Y="-1931" Z="397" S="624" T="880" R="218" G="121" B="0" A="255"/>
<Vtx X="-101" Y="-2001" Z="397" S="496" T="880" R="129" G="0" B="0" A="255"/>
<Vtx X="124" Y="-1944" Z="246" S="624" T="752" R="230" G="112" B="201" A="255"/>
<Vtx X="46" Y="-2001" Z="213" S="496" T="752" R="179" G="0" B="155" A="255"/>
<Vtx X="427" Y="-1931" Z="199" S="624" T="624" R="249" G="111" B="194" A="255"/>
<Vtx X="422" Y="-2001" Z="134" S="496" T="627" R="242" G="0" B="130" A="255"/>
<Vtx X="643" Y="-1944" Z="171" S="624" T="496" R="47" G="108" B="209" A="255"/>
<Vtx X="705" Y="-2001" Z="137" S="496" T="521" R="103" G="0" B="182" A="255"/>
<Vtx X="634" Y="-1931" Z="235" S="602" T="441" R="72" G="98" B="36" A="255"/>
<Vtx X="498" Y="-1900" Z="397" S="693" T="368" R="7" G="127" B="0" A="255"/>
<Vtx X="427" Y="-1931" Z="199" S="752" T="496" R="249" G="111" B="194" A="255"/>
<Vtx X="124" Y="-1944" Z="246" S="880" T="496" R="230" G="112" B="201" A="255"/>
<Vtx X="59" Y="-1931" Z="397" S="880" T="368" R="218" G="121" B="0" A="255"/>
<Vtx X="124" Y="-1944" Z="548" S="880" T="240" R="230" G="112" B="55" A="255"/>
<Vtx X="124" Y="-1944" Z="548" S="880" T="240" R="230" G="112" B="55" A="255"/>
<Vtx X="427" Y="-1931" Z="595" S="752" T="240" R="249" G="111" B="62" A="255"/>
<Vtx X="498" Y="-1900" Z="397" S="693" T="368" R="7" G="127" B="0" A="255"/>
<Vtx X="643" Y="-1944" Z="623" S="624" T="240" R="47" G="108" B="47" A="255"/>
<Vtx X="634" Y="-1931" Z="559" S="602" T="295" R="72" G="98" B="220" A="255"/>
<Vtx X="679" Y="-2001" Z="604" S="496" T="275" R="117" G="0" B="206" A="255"/>
<Vtx X="705" Y="-2001" Z="657" S="496" T="215" R="103" G="0" B="74" A="255"/>
<Vtx X="427" Y="-1931" Z="595" S="624" T="112" R="249" G="111" B="62" A="255"/>
<Vtx X="422" Y="-2001" Z="660" S="496" T="109" R="242" G="0" B="126" A="255"/>
<Vtx X="124" Y="-1944" Z="548" S="624" T="-16" R="230" G="112" B="55" A="255"/>
<Vtx X="46" Y="-2001" Z="581" S="496" T="-16" R="179" G="0" B="101" A="255"/>
<Vtx X="427" Y="-2071" Z="595" S="368" T="112" R="249" G="145" B="62" A="255"/>
<Vtx X="124" Y="-2058" Z="548" S="368" T="-16" R="230" G="144" B="55" A="255"/>
<Vtx X="643" Y="-2058" Z="623" S="368" T="240" R="47" G="148" B="47" A="255"/>
<Vtx X="634" Y="-2071" Z="559" S="390" T="295" R="72" G="158" B="220" A="255"/>
<Vtx X="498" Y="-2102" Z="397" S="299" T="368" R="7" G="129" B="0" A="255"/>
<Vtx X="643" Y="-2058" Z="623" S="368" T="240" R="47" G="148" B="47" A="255"/>
<Vtx X="427" Y="-2071" Z="595" S="240" T="240" R="249" G="145" B="62" A="255"/>
<Vtx X="498" Y="-2102" Z="397" S="299" T="368" R="7" G="129" B="0" A="255"/>
<Vtx X="124" Y="-2058" Z="548" S="112" T="240" R="230" G="144" B="55" A="255"/>
<Vtx X="59" Y="-2071" Z="397" S="112" T="368" R="218" G="135" B="0" A="255"/>
<Vtx X="124" Y="-2058" Z="246" S="112" T="496" R="230" G="144" B="201" A="255"/>
<Vtx X="427" Y="-2071" Z="199" S="240" T="496" R="249" G="145" B="194" A="255"/>
<Vtx X="643" Y="-2058" Z="171" S="368" T="496" R="47" G="148" B="209" A="255"/>
<Vtx X="634" Y="-2071" Z="235" S="390" T="441" R="72" G="158" B="36" A="255"/>
<Vtx X="679" Y="-2001" Z="190" S="496" T="461" R="117" G="0" B="50" A="255"/>
<Vtx X="705" Y="-2001" Z="137" S="496" T="521" R="103" G="0" B="182" A="255"/>
<Vtx X="427" Y="-2071" Z="199" S="368" T="624" R="249" G="145" B="194" A="255"/>
<Vtx X="422" Y="-2001" Z="134" S="496" T="627" R="242" G="0" B="130" A="255"/>
<Vtx X="124" Y="-2058" Z="246" S="368" T="752" R="230" G="144" B="201" A="255"/>
<Vtx X="46" Y="-2001" Z="213" S="496" T="752" R="179" G="0" B="155" A="255"/>
<Vtx X="59" Y="-2071" Z="397" S="368" T="880" R="218" G="135" B="0" A="255"/>
<Vtx X="59" Y="-2071" Z="397" S="368" T="880" R="218" G="135" B="0" A="255"/>
<Vtx X="-101" Y="-2001" Z="397" S="496" T="880" R="129" G="0" B="0" A="255"/>
<Vtx X="46" Y="-2001" Z="213" S="496" T="752" R="179" G="0" B="155" A="255"/>
<Vtx X="124" Y="-2058" Z="548" S="368" T="1008" R="230" G="144" B="55" A="255"/>
<Vtx X="46" Y="-2001" Z="581" S="496" T="1008" R="179" G="0" B="101" A="255"/>
<Vtx X="705" Y="-2001" Z="137" S="496" T="521" R="103" G="0" B="182" A="255"/>
<Vtx X="634" Y="-1931" Z="235" S="602" T="441" R="72" G="98" B="36" A="255"/>
<Vtx X="679" Y="-2001" Z="190" S="496" T="461" R="117" G="0" B="50" A="255"/>
<Vtx X="608" Y="-1944" Z="271" S="572" T="421" R="106" G="70" B="247" A="255"/>
<Vtx X="498" Y="-1900" Z="397" S="693" T="368" R="7" G="127" B="0" A="255"/>
<Vtx X="651" Y="-1931" Z="341" S="593" T="392" R="57" G="104" B="211" A="255"/>
<Vtx X="733" Y="-1944" Z="397" S="572" T="368" R="76" G="102" B="0" A="255"/>
<Vtx X="651" Y="-1931" Z="453" S="593" T="344" R="57" G="104" B="45" A="255"/>
<Vtx X="608" Y="-1944" Z="522" S="572" T="315" R="106" G="70" B="9" A="255"/>
<Vtx X="634" Y="-1931" Z="559" S="602" T="295" R="72" G="98" B="220" A="255"/>
<Vtx X="593" Y="-2001" Z="540" S="496" T="307" R="126" G="0" B="237" A="255"/>
<Vtx X="593" Y="-2001" Z="540" S="496" T="307" R="126" G="0" B="237" A="255"/>
<Vtx X="634" Y="-1931" Z="559" S="602" T="295" R="72" G="98" B="220" A="255"/>
<Vtx X="679" Y="-2001" Z="604" S="496" T="275" R="117" G="0" B="206" A="255"/>
<Vtx X="608" Y="-2058" Z="522" S="420" T="315" R="106" G="186" B="9" A="255"/>
<Vtx X="634" Y="-2071" Z="559" S="390" T="295" R="72" G="158" B="220" A="255"/>
<Vtx X="705" Y="-2001" Z="657" S="496" T="215" R="103" G="0" B="74" A="255"/>
<Vtx X="498" Y="-2102" Z="397" S="299" T="368" R="7" G="129" B="0" A="255"/>
<Vtx X="651" Y="-2071" Z="453" S="399" T="344" R="57" G="152" B="45" A="255"/>
<Vtx X="733" Y="-2058" Z="397" S="420" T="368" R="76" G="154" B="0" A="255"/>
<Vtx X="651" Y="-2071" Z="341" S="399" T="392" R="57" G="152" B="211" A="255"/>
<Vtx X="608" Y="-2058" Z="271" S="420" T="421" R="106" G="186" B="247" A="255"/>
<Vtx X="634" Y="-2071" Z="235" S="390" T="441" R="72" G="158" B="36" A="255"/>
<Vtx X="593" Y="-2001" Z="254" S="496" T="429" R="126" G="0" B="19" A="255"/>
<Vtx X="679" Y="-2001" Z="190" S="496" T="461" R="117" G="0" B="50" A="255"/>
<Vtx X="608" Y="-1944" Z="271" S="572" T="421" R="106" G="70" B="247" A="255"/>
<Vtx X="651" Y="-1931" Z="341" S="593" T="392" R="57" G="104" B="211" A="255"/>
<Vtx X="593" Y="-2001" Z="254" S="496" T="429" R="126" G="0" B="19" A="255"/>
<Vtx X="651" Y="-1931" Z="341" S="593" T="392" R="57" G="104" B="211" A="255"/>
<Vtx X="691" Y="-2001" Z="327" S="496" T="398" R="81" G="0" B="158" A="255"/>
<Vtx X="733" Y="-1944" Z="397" S="572" T="368" R="76" G="102" B="0" A="255"/>
<Vtx X="796" Y="-2001" Z="397" S="496" T="368" R="127" G="0" B="0" A="255"/>
<Vtx X="651" Y="-1931" Z="453" S="593" T="344" R="57" G="104" B="45" A="255"/>
<Vtx X="691" Y="-2001" Z="467" S="496" T="338" R="81" G="0" B="98" A="255"/>
<Vtx X="608" Y="-1944" Z="522" S="572" T="315" R="106" G="70" B="9" A="255"/>
<Vtx X="593" Y="-2001" Z="540" S="496" T="307" R="126" G="0" B="237" A="255"/>
<Vtx X="651" Y="-2071" Z="453" S="399" T="344" R="57" G="152" B="45" A="255"/>
<Vtx X="608" Y="-2058" Z="522" S="420" T="315" R="106" G="186" B="9" A="255"/>
<Vtx X="733" Y="-2058" Z="397" S="420" T="368" R="76" G="154" B="0" A="255"/>
<Vtx X="651" Y="-2071" Z="341" S="399" T="392" R="57" G="152" B="211" A="255"/>
<Vtx X="608" Y="-2058" Z="271" S="420" T="421" R="106" G="186" B="247" A="255"/>
<Vtx X="46" Y="-2001" Z="-581" S="496" T="1008" R="179" G="0" B="155" A="255"/>
<Vtx X="59" Y="-1931" Z="-397" S="624" T="880" R="218" G="121" B="0" A="255"/>
<Vtx X="124" Y="-1944" Z="-548" S="624" T="1008" R="230" G="112" B="201" A="255"/>
<Vtx X="-101" Y="-2001" Z="-397" S="496" T="880" R="129" G="0" B="0" A="255"/>
<Vtx X="124" Y="-2058" Z="-548" S="368" T="1008" R="230" G="144" B="201" A="255"/>
<Vtx X="59" Y="-2071" Z="-397" S="368" T="880" R="218" G="135" B="0" A="255"/>
<Vtx X="46" Y="-2001" Z="-213" S="496" T="752" R="179" G="0" B="101" A="255"/>
<Vtx X="124" Y="-2058" Z="-246" S="368" T="752" R="230" G="144" B="55" A="255"/>
<Vtx X="422" Y="-2001" Z="-134" S="496" T="627" R="242" G="0" B="126" A="255"/>
<Vtx X="427" Y="-2071" Z="-199" S="368" T="624" R="249" G="145" B="62" A="255"/>
<Vtx X="705" Y="-2001" Z="-137" S="496" T="521" R="103" G="0" B="74" A="255"/>
<Vtx X="643" Y="-2058" Z="-171" S="368" T="496" R="47" G="148" B="47" A="255"/>
<Vtx X="679" Y="-2001" Z="-190" S="496" T="461" R="117" G="0" B="206" A="255"/>
<Vtx X="634" Y="-2071" Z="-235" S="390" T="441" R="72" G="158" B="220" A="255"/>
<Vtx X="498" Y="-2102" Z="-397" S="299" T="368" R="7" G="129" B="0" A="255"/>
<Vtx X="427" Y="-2071" Z="-199" S="240" T="496" R="249" G="145" B="62" A="255"/>
<Vtx X="124" Y="-2058" Z="-246" S="112" T="496" R="230" G="144" B="55" A="255"/>
<Vtx X="498" Y="-2102" Z="-397" S="299" T="368" R="7" G="129" B="0" A="255"/>
<Vtx X="427" Y="-2071" Z="-199" S="240" T="496" R="249" G="145" B="62" A="255"/>
<Vtx X="59" Y="-2071" Z="-397" S="112" T="368" R="218" G="135" B="0" A="255"/>
<Vtx X="124" Y="-2058" Z="-548" S="112" T="240" R="230" G="144" B="201" A="255"/>
<Vtx X="427" Y="-2071" Z="-595" S="240" T="240" R="249" G="145" B="194" A="255"/>
<Vtx X="643" Y="-2058" Z="-623" S="368" T="240" R="47" G="148" B="209" A="255"/>
<Vtx X="634" Y="-2071" Z="-559" S="390" T="295" R="72" G="158" B="36" A="255"/>
<Vtx X="705" Y="-2001" Z="-657" S="496" T="215" R="103" G="0" B="182" A="255"/>
<Vtx X="422" Y="-2001" Z="-660" S="496" T="109" R="242" G="0" B="130" A="255"/>
<Vtx X="427" Y="-2071" Z="-595" S="368" T="112" R="249" G="145" B="194" A="255"/>
<Vtx X="46" Y="-2001" Z="-581" S="496" T="-16" R="179" G="0" B="155" A="255"/>
<Vtx X="124" Y="-2058" Z="-548" S="368" T="-16" R="230" G="144" B="201" A="255"/>
<Vtx X="124" Y="-1944" Z="-548" S="624" T="-16" R="230" G="112" B="201" A="255"/>
<Vtx X="427" Y="-1931" Z="-595" S="624" T="112" R="249" G="111" B="194" A="255"/>
<Vtx X="643" Y="-1944" Z="-623" S="624" T="240" R="47" G="108" B="209" A="255"/>
<Vtx X="679" Y="-2001" Z="-604" S="496" T="275" R="117" G="0" B="50" A="255"/>
<Vtx X="705" Y="-2001" Z="-657" S="496" T="215" R="103" G="0" B="182" A="255"/>
<Vtx X="643" Y="-1944" Z="-623" S="624" T="240" R="47" G="108" B="209" A="255"/>
<Vtx X="634" Y="-1931" Z="-559" S="602" T="295" R="72" G="98" B="36" A="255"/>
<Vtx X="498" Y="-1900" Z="-397" S="693" T="368" R="7" G="127" B="0" A="255"/>
<Vtx X="427" Y="-1931" Z="-595" S="752" T="240" R="249" G="111" B="194" A="255"/>
<Vtx X="124" Y="-1944" Z="-548" S="880" T="240" R="230" G="112" B="201" A="255"/>
<Vtx X="59" Y="-1931" Z="-397" S="880" T="368" R="218" G="121" B="0" A="255"/>
<Vtx X="124" Y="-1944" Z="-246" S="880" T="496" R="230" G="112" B="55" A="255"/>
<Vtx X="427" Y="-1931" Z="-199" S="752" T="496" R="249" G="111" B="62" A="255"/>
<Vtx X="643" Y="-1944" Z="-171" S="624" T="496" R="47" G="108" B="47" A="255"/>
<Vtx X="634" Y="-1931" Z="-235" S="602" T="441" R="72" G="98" B="220" A="255"/>
<Vtx X="705" Y="-2001" Z="-137" S="496" T="521" R="103" G="0" B="74" A="255"/>
<Vtx X="422" Y="-2001" Z="-134" S="496" T="627" R="242" G="0" B="126" A="255"/>
<Vtx X="427" Y="-1931" Z="-199" S="624" T="624" R="249" G="111" B="62" A="255"/>
<Vtx X="46" Y="-2001" Z="-213" S="496" T="752" R="179" G="0" B="101" A="255"/>
<Vtx X="46" Y="-2001" Z="-213" S="496" T="752" R="179" G="0" B="101" A="255"/>
<Vtx X="427" Y="-1931" Z="-199" S="624" T="624" R="249" G="111" B="62" A="255"/>
<Vtx X="124" Y="-1944" Z="-246" S="624" T="752" R="230" G="112" B="55" A="255"/>
<Vtx X="-101" Y="-2001" Z="-397" S="496" T="880" R="129" G="0" B="0" A="255"/>
<Vtx X="59" Y="-1931" Z="-397" S="624" T="880" R="218" G="121" B="0" A="255"/>
<Vtx X="705" Y="-2001" Z="-137" S="496" T="521" R="103" G="0" B="74" A="255"/>
<Vtx X="679" Y="-2001" Z="-190" S="496" T="461" R="117" G="0" B="206" A="255"/>
<Vtx X="634" Y="-1931" Z="-235" S="602" T="441" R="72" G="98" B="220" A="255"/>
<Vtx X="608" Y="-1944" Z="-271" S="572" T="421" R="106" G="70" B="9" A="255"/>
<Vtx X="593" Y="-2001" Z="-254" S="496" T="429" R="126" G="0" B="237" A="255"/>
<Vtx X="634" Y="-2071" Z="-235" S="390" T="441" R="72" G="158" B="220" A="255"/>
<Vtx X="608" Y="-2058" Z="-271" S="420" T="421" R="106" G="186" B="9" A="255"/>
<Vtx X="498" Y="-2102" Z="-397" S="299" T="368" R="7" G="129" B="0" A="255"/>
<Vtx X="651" Y="-2071" Z="-341" S="399" T="392" R="57" G="152" B="45" A="255"/>
<Vtx X="733" Y="-2058" Z="-397" S="420" T="368" R="76" G="154" B="0" A="255"/>
<Vtx X="651" Y="-2071" Z="-453" S="399" T="344" R="57" G="152" B="211" A="255"/>
<Vtx X="608" Y="-2058" Z="-522" S="420" T="315" R="106" G="186" B="247" A="255"/>
<Vtx X="651" Y="-2071" Z="-453" S="399" T="344" R="57" G="152" B="211" A="255"/>
<Vtx X="498" Y="-2102" Z="-397" S="299" T="368" R="7" G="129" B="0" A="255"/>
<Vtx X="634" Y="-2071" Z="-559" S="390" T="295" R="72" G="158" B="36" A="255"/>
<Vtx X="679" Y="-2001" Z="-604" S="496" T="275" R="117" G="0" B="50" A="255"/>
<Vtx X="705" Y="-2001" Z="-657" S="496" T="215" R="103" G="0" B="182" A="255"/>
<Vtx X="593" Y="-2001" Z="-540" S="496" T="307" R="126" G="0" B="19" A="255"/>
<Vtx X="634" Y="-1931" Z="-559" S="602" T="295" R="72" G="98" B="36" A="255"/>
<Vtx X="608" Y="-1944" Z="-522" S="572" T="315" R="106" G="70" B="247" A="255"/>
<Vtx X="498" Y="-1900" Z="-397" S="693" T="368" R="7" G="127" B="0" A="255"/>
<Vtx X="651" Y="-1931" Z="-453" S="593" T="344" R="57" G="104" B="211" A="255"/>
<Vtx X="733" Y="-1944" Z="-397" S="572" T="368" R="76" G="102" B="0" A="255"/>
<Vtx X="651" Y="-1931" Z="-341" S="593" T="392" R="57" G="104" B="45" A="255"/>
<Vtx X="608" Y="-1944" Z="-271" S="572" T="421" R="106" G="70" B="9" A="255"/>
<Vtx X="634" Y="-1931" Z="-235" S="602" T="441" R="72" G="98" B="220" A="255"/>
<Vtx X="593" Y="-2001" Z="-254" S="496" T="429" R="126" G="0" B="237" A="255"/>
<Vtx X="593" Y="-2001" Z="-254" S="496" T="429" R="126" G="0" B="237" A="255"/>
<Vtx X="691" Y="-2001" Z="-327" S="496" T="398" R="81" G="0" B="98" A="255"/>
<Vtx X="651" Y="-1931" Z="-341" S="593" T="392" R="57" G="104" B="45" A="255"/>
<Vtx X="608" Y="-2058" Z="-271" S="420" T="421" R="106" G="186" B="9" A="255"/>
<Vtx X="651" Y="-2071" Z="-341" S="399" T="392" R="57" G="152" B="45" A="255"/>
<Vtx X="796" Y="-2001" Z="-397" S="496" T="368" R="127" G="0" B="0" A="255"/>
<Vtx X="733" Y="-2058" Z="-397" S="420" T="368" R="76" G="154" B="0" A="255"/>
<Vtx X="691" Y="-2001" Z="-467" S="496" T="338" R="81" G="0" B="158" A="255"/>
<Vtx X="651" Y="-2071" Z="-453" S="399" T="344" R="57" G="152" B="211" A="255"/>
<Vtx X="593" Y="-2001" Z="-540" S="496" T="307" R="126" G="0" B="19" A="255"/>
<Vtx X="608" Y="-2058" Z="-522" S="420" T="315" R="106" G="186" B="247" A="255"/>
<Vtx X="608" Y="-1944" Z="-522" S="572" T="315" R="106" G="70" B="247" A="255"/>
<Vtx X="651" Y="-1931" Z="-453" S="593" T="344" R="57" G="104" B="211" A="255"/>
<Vtx X="733" Y="-1944" Z="-397" S="572" T="368" R="76" G="102" B="0" A="255"/>
<Vtx X="596" Y="2054" Z="219" S="909" T="660" R="78" G="9" B="100" A="255"/>
<Vtx X="580" Y="1883" Z="161" S="942" T="749" R="80" G="198" B="80" A="255"/>
<Vtx X="757" Y="1955" Z="101" S="1049" T="712" R="54" G="192" B="95" A="255"/>
<Vtx X="585" Y="1755" Z="0" S="976" T="838" R="93" G="169" B="0" A="255"/>
<Vtx X="862" Y="1909" Z="0" S="1124" T="737" R="79" G="156" B="0" A="255"/>
<Vtx X="757" Y="1955" Z="-101" S="1049" T="712" R="54" G="192" B="161" A="255"/>
<Vtx X="580" Y="1883" Z="-161" S="942" T="749" R="80" G="198" B="176" A="255"/>
<Vtx X="596" Y="2054" Z="-219" S="909" T="660" R="78" G="9" B="156" A="255"/>
<Vtx X="810" Y="2051" Z="-119" S="1065" T="652" R="61" G="6" B="145" A="255"/>
<Vtx X="758" Y="2136" Z="-99" S="1042" T="599" R="49" G="83" B="173" A="255"/>
<Vtx X="572" Y="2204" Z="-146" S="932" T="581" R="74" G="80" B="191" A="255"/>
<Vtx X="605" Y="2242" Z="0" S="954" T="501" R="66" G="109" B="0" A="255"/>
<Vtx X="868" Y="2159" Z="0" S="1113" T="568" R="69" G="107" B="0" A="255"/>
<Vtx X="758" Y="2136" Z="99" S="1042" T="599" R="49" G="83" B="83" A="255"/>
<Vtx X="572" Y="2204" Z="146" S="932" T="581" R="74" G="80" B="65" A="255"/>
<Vtx X="810" Y="2051" Z="119" S="1065" T="652" R="61" G="6" B="111" A="255"/>
<Vtx X="1027" Y="2047" Z="0" S="1273" T="636" R="127" G="2" B="0" A="255"/>
<Vtx X="810" Y="2051" Z="119" S="1065" T="652" R="61" G="6" B="111" A="255"/>
<Vtx X="757" Y="1955" Z="101" S="1049" T="712" R="54" G="192" B="95" A="255"/>
<Vtx X="862" Y="1909" Z="0" S="1124" T="737" R="79" G="156" B="0" A="255"/>
<Vtx X="757" Y="1955" Z="-101" S="1049" T="712" R="54" G="192" B="161" A="255"/>
<Vtx X="810" Y="2051" Z="-119" S="1065" T="652" R="61" G="6" B="145" A="255"/>
<Vtx X="758" Y="2136" Z="-99" S="1042" T="599" R="49" G="83" B="173" A="255"/>
<Vtx X="868" Y="2159" Z="0" S="1113" T="568" R="69" G="107" B="0" A="255"/>
<Vtx X="758" Y="2136" Z="99" S="1042" T="599" R="49" G="83" B="83" A="255"/>
</Vertex>

View File

@ -0,0 +1,10 @@
<Vertex Version="0">
<Vtx X="139" Y="2608" Z="675" S="-16" T="-16" R="108" G="48" B="48" A="255"/>
<Vtx X="360" Y="2113" Z="675" S="2032" T="-16" R="108" G="48" B="48" A="255"/>
<Vtx X="546" Y="2195" Z="172" S="2032" T="2032" R="108" G="48" B="48" A="255"/>
<Vtx X="325" Y="2691" Z="172" S="-16" T="2032" R="108" G="48" B="48" A="255"/>
<Vtx X="139" Y="2608" Z="-675" S="-16" T="-16" R="108" G="48" B="208" A="255"/>
<Vtx X="325" Y="2691" Z="-172" S="-16" T="2032" R="108" G="48" B="208" A="255"/>
<Vtx X="546" Y="2195" Z="-172" S="2032" T="2032" R="108" G="48" B="208" A="255"/>
<Vtx X="360" Y="2113" Z="-675" S="2032" T="-16" R="108" G="48" B="208" A="255"/>
</Vertex>

Binary file not shown.

Binary file not shown.

View File

@ -137,6 +137,9 @@ static const ALIGN_ASSET(2) char gXmasDecor100DL[] = dgXmasDecor100DL;
#define dgXmasStarDL "__OTR__objects/object_xmas_tree/gXmasStarDL"
static const ALIGN_ASSET(2) char gXmasStarDL[] = dgXmasStarDL;
#define dgPenguinDL "__OTR__objects/object_penguin/object_penguin_DL"
static const ALIGN_ASSET(2) char gPenguinDL[] = dgPenguinDL;
#define dgKakarikoDecorDL "__OTR__objects/object_kakariko_decor/gKakarikoDecorDL"
static const ALIGN_ASSET(2) char gKakarikoDecorDL[] = dgKakarikoDecorDL;

View File

@ -0,0 +1,81 @@
#include "Holiday.hpp"
#include "soh/Enhancements/randomizer/3drando/random.hpp"
#include "soh/frame_interpolation.h"
#include "soh_assets.h"
#include "overlays/actors/ovl_En_Gs/z_en_gs.h"
#include "overlays/actors/ovl_En_Clear_Tag/z_en_clear_tag.h"
extern "C" {
#include "macros.h"
#include "functions.h"
#include "variables.h"
extern PlayState* gPlayState;
}
#define AUTHOR "AGreenSpoon"
#define CVAR(v) "gHoliday." AUTHOR "." v
void EnGs_Evil(EnGs* enGs, PlayState* play) {
Player* player = GET_PLAYER(gPlayState);
if (!(player->stateFlags1 & PLAYER_STATE1_TALKING)) {
Math_ApproachS(&enGs->actor.shape.rot.y, enGs->actor.yawTowardsPlayer, 5, 0xBB8);
if (enGs->unk_200 <= 0) {
float offsetDistance = 10.0f;
float offsetX = sinf(enGs->actor.shape.rot.y * (M_PI / 0x8000)) * offsetDistance;
float offsetZ = cosf(enGs->actor.shape.rot.y * (M_PI / 0x8000)) * offsetDistance;
float dx = player->actor.world.pos.x - (enGs->actor.world.pos.x + offsetX);
float dy = player->actor.world.pos.y - 10.0f - enGs->actor.world.pos.y;
float dz = player->actor.world.pos.z - (enGs->actor.world.pos.z + offsetZ);
s16 rotX = atan2f(dy, sqrtf(dx * dx + dz * dz)) * (0x8000 / M_PI);
s16 rotY = enGs->actor.shape.rot.y;
s16 rotZ = atan2f(dx, dz) * (0x8000 / M_PI);
Actor* actor = Actor_Spawn(&play->actorCtx, play, ACTOR_EN_CLEAR_TAG,
enGs->actor.world.pos.x + offsetX,
enGs->actor.world.pos.y + 40.0f,
enGs->actor.world.pos.z + offsetZ,
rotX, rotY, rotZ,
100, false);
EnClearTag* clearTag = (EnClearTag*)actor;
enGs->unk_200 = 5;
}
enGs->unk_200--;
}
}
static void OnConfigurationChanged() {
COND_ID_HOOK(OnOpenText, 0x2053, CVarGetInteger(CVAR("EvilGossipStone"), 0), [](u16 * textId, bool* loadFromMessageTable) {
Actor* actor = Actor_FindNearby(gPlayState, &GET_PLAYER(gPlayState)->actor, ACTOR_EN_GS, ACTORCAT_PROP, 100.0f);
if (actor == NULL) {
return;
}
EnGs* gs = (EnGs*)actor;
gs->actionFunc = EnGs_Evil;
});
}
static void DrawMenu() {
ImGui::SeparatorText(AUTHOR);
if (UIWidgets::EnhancementCheckbox("Evil Gossip Stone", CVAR("EvilGossipStone"))) {
OnConfigurationChanged();
}
}
static void RegisterMod() {
// #region Leave this alone unless you know what you are doing
OnConfigurationChanged();
// #endregion
// TODO: Anything you want to run once on startup
}
// TODO: Uncomment this line to enable the mod
static Holiday holiday(DrawMenu, RegisterMod);

View File

@ -0,0 +1,45 @@
#include "Holiday.hpp"
extern "C" {
#include "macros.h"
#include "functions.h"
#include "variables.h"
extern PlayState* gPlayState;
// TODO: Include anything you need here from C land
}
// TODO: Change this to YourName
#define AUTHOR "Example"
#define CVAR(v) "gHoliday." AUTHOR "." v
static void OnConfigurationChanged() {
// TODO: Register any hooks or things that need to run on startup and when the main CVar is toggled
// Note: Hooks should be registered/unregistered depending on the CVar state (Use COND_HOOK or COND_ID_HOOK)
// COND_HOOK(OnSceneSpawnActors, CVarGetInteger(CVAR("Enabled"), 0), []() {
// // Spawn your own actors?
// });
// COND_ID_HOOK(OnActorInit, ACTOR_OBJ_TSUBO, CVarGetInteger(CVAR("DoSomethingWithPots"), 0), [](void* actorRef) {
// // Do something with pots?
// });
}
static void DrawMenu() {
ImGui::SeparatorText(AUTHOR);
if (UIWidgets::EnhancementCheckbox("DoSomethingWithPots", CVAR("DoSomethingWithPots"))) {
OnConfigurationChanged();
}
}
static void RegisterMod() {
// #region Leave this alone unless you know what you are doing
OnConfigurationChanged();
// #endregion
// TODO: Anything you want to run once on startup
}
// TODO: Uncomment this line to enable the mod
// static Holiday holiday(DrawMenu, RegisterMod);

View File

@ -0,0 +1,155 @@
#include "Holiday.hpp"
#include <libultraship/libultraship.h>
#include "soh/UIWidgets.hpp"
#include "soh/Enhancements/game-interactor/GameInteractor.h"
#include "objects/object_dog/object_dog.h"
#include "soh/frame_interpolation.h"
#include "soh/Enhancements/randomizer/3drando/random.hpp"
#include "soh/Enhancements/randomizer/3drando/location_access.hpp"
#include "soh/Enhancements/randomizer/entrance.h"
#include "objects/gameplay_field_keep/gameplay_field_keep.h"
#include "objects/object_md/object_md.h"
#include "src/overlays/actors/ovl_Door_Ana/z_door_ana.h"
extern "C" {
#include "macros.h"
#include "functions.h"
#include "variables.h"
extern PlayState* gPlayState;
void DoorAna_SetupAction(DoorAna* doorAna, DoorAnaActionFunc actionFunc);
void DoorAna_GrabPlayer(DoorAna* doorAna, PlayState* play);
}
#define AUTHOR "Fredomato"
#define CVAR(v) "gHoliday." AUTHOR "." v
static CollisionPoly snowballPoly;
static f32 raycastResult;
const s16 entrances[] = {
0x0000, 0x0209, 0x0004, 0x0242, 0x0028, 0x0221, 0x0169, 0x0215, 0x0165, 0x024A, 0x0010, 0x021D, 0x0082, 0x01E1, 0x0037, 0x0205,
0x0098, 0x02A6, 0x0088, 0x03D4, 0x0008, 0x03A8, 0x0467, 0x023D, 0x0433, 0x0443, 0x0437, 0x0447, 0x009C, 0x033C, 0x00C9, 0x026A,
0x00C1, 0x0266, 0x0043, 0x03CC, 0x045F, 0x0309, 0x03A0, 0x03D0, 0x007E, 0x026E, 0x0530, 0x01D1, 0x0507, 0x03BC, 0x0388, 0x02A2,
0x0063, 0x01D5, 0x0528, 0x03C0, 0x043B, 0x0067, 0x02FD, 0x0349, 0x0550, 0x04EE, 0x039C, 0x0345, 0x05C8, 0x05DC, 0x0072, 0x034D,
0x030D, 0x0355, 0x037C, 0x03FC, 0x0380, 0x03C4, 0x004F, 0x0378, 0x02F9, 0x042F, 0x05D0, 0x05D4, 0x052C, 0x03B8, 0x016D, 0x01CD,
0x00B7, 0x0201, 0x003B, 0x0463, 0x0588, 0x057C, 0x0578, 0x0340, 0x04C2, 0x03E8, 0x04BE, 0x0482, 0x0315, 0x045B, 0x0371, 0x0394,
0x0272, 0x0211, 0x0053, 0x0472, 0x0453, 0x0351, 0x0384, 0x044B, 0x03EC, 0x04FF, 0x0700, 0x0800, 0x0701, 0x0801, 0x0702, 0x0802,
0x0703, 0x0803, 0x0704, 0x0804, 0x0705, 0x0805, 0x0706, 0x0806, 0x0707, 0x0807, 0x0708, 0x0808, 0x0709, 0x0809, 0x070A, 0x080A,
0x070B, 0x080B, 0x070C, 0x080C, 0x070D, 0x080D, 0x070E, 0x080E, 0x070F, 0x080F, 0x0710, 0x0711, 0x0811, 0x0712, 0x0812,
0x0713, 0x0813, 0x0714, 0x0814, 0x0715, 0x0815, 0x0716, 0x0816, 0x0717, 0x0817, 0x0718, 0x0818, 0x0719, 0x0819, 0x081A,
0x071B, 0x081B, 0x071C, 0x081C, 0x071D, 0x081D, 0x071E, 0x081E, 0x071F, 0x081F, 0x0720, 0x0820, 0x004B, 0x035D, 0x031C, 0x0361,
0x002D, 0x050B, 0x044F, 0x0359, 0x05E0, 0x020D, 0x011E, 0x0286, 0x04E2, 0x04D6, 0x01DD, 0x04DA, 0x00FC, 0x01A9, 0x0185, 0x04DE,
0x0102, 0x0189, 0x0117, 0x018D, 0x0276, 0x01FD, 0x00DB, 0x017D, 0x00EA, 0x0181, 0x0157, 0x01F9, 0x0328, 0x0560, 0x0129, 0x022D,
0x0130, 0x03AC, 0x0123, 0x0365, 0x00B1, 0x0033, 0x0138, 0x025A, 0x0171, 0x025E, 0x00E4, 0x0195, 0x013D, 0x0191, 0x014D, 0x01B9,
0x0246, 0x01C1, 0x0147, 0x01BD, 0x0108, 0x019D, 0x0225, 0x01A1, 0x0219, 0x027E, 0x0554, 0x00BB, 0x0282, 0x0600, 0x04F6, 0x0604,
0x01F1, 0x0568, 0x05F4, 0x040F, 0x0252, 0x040B, 0x00C5, 0x0301, 0x0407, 0x000C, 0x024E, 0x0305, 0x0175, 0x0417, 0x0423, 0x008D,
0x02F5, 0x0413, 0x02B2, 0x0457, 0x047A, 0x010E, 0x0608, 0x0564, 0x060C, 0x0610, 0x0580
};
static bool midoGrottoInit = false;
static SkelAnime midoSkelAnime;
static Vec3s midoJointTable[17];
static Vec3s midoMorphTable[17];
static void RandomGrotto_WaitOpen(DoorAna* doorAna, PlayState* play) {
if (!midoGrottoInit) {
midoGrottoInit = true;
SkelAnime_InitFlex(play, &midoSkelAnime, (FlexSkeletonHeader*)&gMidoSkel, (AnimationHeader*)&gMidoWalkingAnim, midoJointTable, midoMorphTable, 17);
}
SkelAnime_Update(&midoSkelAnime);
Actor* actor = &doorAna->actor;
Player* player = GET_PLAYER(play);
Math_SmoothStepToF(&actor->world.pos.x, player->actor.world.pos.x, 0.1f, 10.0f, 0.0f);
Math_SmoothStepToF(&actor->world.pos.z, player->actor.world.pos.z, 0.1f, 10.0f, 0.0f);
Math_SmoothStepToF(&actor->world.pos.y, player->actor.world.pos.y, 0.1f, 10.0f, 0.0f);
Math_ApproachS(&doorAna->actor.shape.rot.y, doorAna->actor.yawTowardsPlayer, 5, 0xBB8);
if (Math_StepToF(&actor->scale.x, 0.01f, 0.001f)) {
if ((actor->targetMode != 0) && (play->transitionTrigger == TRANS_TRIGGER_OFF) && (player->stateFlags1 & PLAYER_STATE1_FLOOR_DISABLED) && (player->av1.actionVar1 == 0)) {
play->nextEntranceIndex = RandomElement(entrances);
DoorAna_SetupAction((DoorAna*)actor, DoorAna_GrabPlayer);
} else {
if (!Player_InCsMode(play) && !(player->stateFlags1 & (PLAYER_STATE1_ON_HORSE | PLAYER_STATE1_IN_WATER)) &&
actor->xzDistToPlayer <= 15.0f && -50.0f <= actor->yDistToPlayer &&
actor->yDistToPlayer <= 15.0f) {
player->stateFlags1 |= PLAYER_STATE1_FLOOR_DISABLED;
actor->targetMode = 1;
} else {
actor->targetMode = 0;
}
}
}
Actor_SetScale(actor, actor->scale.x);
}
static void RandomGrotto_Draw(Actor* actor, PlayState* play) {
if (!midoGrottoInit) {
return;
}
OPEN_DISPS(play->state.gfxCtx);
Gfx_SetupDL_25Xlu(play->state.gfxCtx);
gSPMatrix(POLY_XLU_DISP++, MATRIX_NEWMTX(play->state.gfxCtx),
G_MTX_NOPUSH | G_MTX_LOAD | G_MTX_MODELVIEW);
gSPDisplayList(POLY_XLU_DISP++, (Gfx*)gGrottoDL);
Matrix_Translate(0.0f, -2700.0f, 0.0f, MTXMODE_APPLY);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(play->state.gfxCtx, (char*)__FILE__, __LINE__), G_MTX_MODELVIEW | G_MTX_LOAD);
gSPSegment(POLY_OPA_DISP++, 0x08, (uintptr_t)gMidoEyeOpenTex);
func_80034BA0(play, &midoSkelAnime, NULL, NULL, actor, 255);
CLOSE_DISPS(play->state.gfxCtx);
}
static void SpawnRandomGrotto() {
Vec3f pos;
pos.y = 9999.0f;
int spawnAttempts = 0;
while (spawnAttempts < 50) {
if (GET_PLAYER(gPlayState) != nullptr) {
pos.x = GET_PLAYER(gPlayState)->actor.world.pos.x;
pos.z = GET_PLAYER(gPlayState)->actor.world.pos.z;
} else {
pos.x = 0;
pos.z = 0;
}
// X/Z anywhere from -1000.0 to +1000.0 from player
pos.x += (float)(Random(0, 2000)) - 1000.0f;
pos.z += (float)(Random(0, 2000)) - 1000.0f;
raycastResult = BgCheck_AnyRaycastFloor1(&gPlayState->colCtx, &snowballPoly, &pos);
if (raycastResult > BGCHECK_Y_MIN) {
Actor* grotto = Actor_Spawn(&gPlayState->actorCtx, gPlayState, ACTOR_DOOR_ANA, pos.x, raycastResult, pos.z, 0, 0, 0, 0, false);
midoGrottoInit = false;
DoorAna_SetupAction((DoorAna*)grotto, RandomGrotto_WaitOpen);
grotto->draw = RandomGrotto_Draw;
break;
}
spawnAttempts++;
}
}
static void ConfigurationChanged() {
COND_HOOK(OnSceneSpawnActors, CVarGetInteger(CVAR("KrampusHole"), 0), SpawnRandomGrotto);
}
static void DrawMenu() {
ImGui::SeparatorText(AUTHOR);
if (UIWidgets::EnhancementCheckbox("The Krampus Hole", CVAR("KrampusHole"))) {
ConfigurationChanged();
}
}
static void RegisterMod() {
// #region Leave this alone unless you know what you are doing
ConfigurationChanged();
// #endregion
}
static Holiday holiday(DrawMenu, RegisterMod);

View File

@ -0,0 +1,208 @@
#include "Holiday.hpp"
#include "soh/Enhancements/randomizer/3drando/random.hpp"
#include "soh/frame_interpolation.h"
#include "soh_assets.h"
#include "overlays/actors/ovl_En_Nutsball/z_en_nutsball.h"
extern "C" {
#include "macros.h"
#include "functions.h"
#include "variables.h"
#include "objects/gameplay_field_keep/gameplay_field_keep.h"
extern PlayState* gPlayState;
void func_80ABBBA8(EnNutsball* nut, PlayState* play);
void EnNutsball_Draw(Actor* nut, PlayState* play);
}
#define AUTHOR "Grimey"
#define CVAR(v) "gHoliday." AUTHOR "." v
static bool spawningPenguins = false;
typedef enum {
PENGUIN_STATE_IDLE,
PENGUIN_STATE_WALK,
} PenguinState;
struct Penguin {
PenguinState state;
s16 timer;
s16 targetRot;
};
std::unordered_map<Actor*, Penguin> penguins;
void Penguin_Init(Actor* actor, PlayState* play) {
Penguin penguin;
penguin.state = PENGUIN_STATE_IDLE;
penguin.timer = 0;
actor->world.rot.y = penguin.targetRot = rand() % 0x10000;
penguins[actor] = penguin;
actor->gravity = -1.0f;
actor->flags &= ~ACTOR_FLAG_TARGETABLE;
}
void Penguin_Update(Actor* actor, PlayState* play) {
Penguin* penguin = &penguins[actor];
if (penguin->timer <= 0) {
if (penguin->state == PENGUIN_STATE_IDLE) {
penguin->state = (PenguinState)(rand() % 3);
penguin->timer = rand() % (20 * 10) + (20 * 3);
} else {
penguin->state = PENGUIN_STATE_IDLE;
penguin->timer = rand() % (20 * 10) + (20 * 3);
}
} else {
penguin->timer--;
}
if (rand() % 100 == 0) {
penguin->targetRot = rand() % 0x10000;
}
switch (penguin->state) {
case PENGUIN_STATE_IDLE:
break;
case PENGUIN_STATE_WALK:
actor->speedXZ = 0.5f;
break;
}
Math_SmoothStepToS(&actor->world.rot.y, penguin->targetRot, 1, 200, 0);
actor->shape.rot.y = actor->world.rot.y;
if (actor->speedXZ < 0.0f) {
actor->speedXZ = 0.0f;
}
Actor_MoveForward(actor);
Actor_UpdateBgCheckInfo(play, actor, 10.0f, 10.0f, 0.0f, 0xFF);
}
void Penguin_Draw(Actor* actor, PlayState* play) {
OPEN_DISPS(play->state.gfxCtx);
Gfx_SetupDL_25Opa(play->state.gfxCtx);
Matrix_Scale(0.8f, 0.8f, 0.8f, MTXMODE_APPLY);
Matrix_Translate(0, 2000.0f, 0, MTXMODE_APPLY);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(play->state.gfxCtx, (char*)__FILE__, __LINE__), G_MTX_MODELVIEW | G_MTX_LOAD);
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 255, 255, 255, 255);
gSPDisplayList(POLY_OPA_DISP++, (Gfx*)gPenguinDL);
CLOSE_DISPS(play->state.gfxCtx);
}
void Penguin_Destroy(Actor* actor, PlayState* play) {
penguins.erase(actor);
}
static void OnConfigurationChanged() {
COND_HOOK(OnPlayerUpdate, CVarGetInteger(CVAR("Hailstorm"), 0), []() {
// Every frame has a 1/300 chance of spawning hail
if (rand() % 300 == 0) {
int spawned = 0;
while (spawned < 1) {
Vec3f pos = GET_PLAYER(gPlayState)->actor.world.pos;
pos.x += (float)Random(0, 100) - 50.0f;
pos.z += (float)Random(0, 100) - 50.0f;
pos.y += 200.0f;
Actor* actor = Actor_Spawn(&gPlayState->actorCtx, gPlayState, ACTOR_EN_NUTSBALL, pos.x, pos.y, pos.z, 0, 0, 0, 0, false);
EnNutsball* nut = (EnNutsball*)actor;
nut->actor.draw = EnNutsball_Draw;
nut->actor.shape.rot.y = 0;
nut->timer = 0;
nut->actionFunc = func_80ABBBA8;
nut->actor.speedXZ = 0.0f;
nut->actor.gravity = -2.0f;
spawned++;
}
}
});
COND_HOOK(OnSceneSpawnActors, CVarGetInteger(CVAR("Penguins"), 0), []() {
penguins.clear();
if (gPlayState->sceneNum != SCENE_HYRULE_FIELD) {
return;
}
static Vec3f huddlePos;
static Vec3f spawnPos;
static f32 raycastResult;
static CollisionPoly poly;
spawningPenguins = true;
int huddlesSpawned = 0;
while (huddlesSpawned < 10) {
huddlePos.x = (float)(Random(
(gPlayState->sceneNum == SCENE_HYRULE_FIELD ? -10000 : -2700) + 10000,
(gPlayState->sceneNum == SCENE_HYRULE_FIELD ? 5000 : 2000) + 10000
) - (float)10000.0f);
huddlePos.y = 5000;
huddlePos.z = (float)(Random(
(gPlayState->sceneNum == SCENE_HYRULE_FIELD ? -1000 : -2000) + 10000,
(gPlayState->sceneNum == SCENE_HYRULE_FIELD ? 15000 : 2000) + 10000
) - (float)10000.0f);
if (BgCheck_AnyRaycastFloor1(&gPlayState->colCtx, &poly, &huddlePos) <= BGCHECK_Y_MIN) {
continue;
}
// 5-10
int huddleSize = rand() % 6 + 5;
int penguinsSpawned = 0;
while (penguinsSpawned < huddleSize) {
spawnPos.x = huddlePos.x + rand() % 100 - 50;
spawnPos.y = huddlePos.y;
spawnPos.z = huddlePos.z + rand() % 100 - 50;
raycastResult = BgCheck_AnyRaycastFloor1(&gPlayState->colCtx, &poly, &spawnPos);
if (raycastResult > BGCHECK_Y_MIN) {
Actor_Spawn(&gPlayState->actorCtx, gPlayState, ACTOR_EN_OE2, spawnPos.x, raycastResult, spawnPos.z, 0, 0, 0, 0, false);
penguinsSpawned++;
}
}
huddlesSpawned++;
}
spawningPenguins = false;
});
COND_ID_HOOK(ShouldActorInit, ACTOR_EN_OE2, CVarGetInteger(CVAR("Penguins"), 0), [](void* actorRef, bool* should) {
Actor* actor = (Actor*)actorRef;
if (spawningPenguins) {
actor->init = Penguin_Init;
actor->update = Penguin_Update;
actor->draw = Penguin_Draw;
actor->destroy = Penguin_Destroy;
}
});
}
static void DrawMenu() {
ImGui::SeparatorText(AUTHOR);
if (UIWidgets::EnhancementCheckbox("Penguins", CVAR("Penguins"))) {
OnConfigurationChanged();
}
if (UIWidgets::EnhancementCheckbox("Hailstorm", CVAR("Hailstorm"))) {
OnConfigurationChanged();
}
}
static void RegisterMod() {
// #region Leave this alone unless you know what you are doing
OnConfigurationChanged();
// #endregion
// TODO: Anything you want to run once on startup
}
// TODO: Uncomment this line to enable the mod
static Holiday holiday(DrawMenu, RegisterMod);

View File

@ -0,0 +1,38 @@
#ifndef HOLIDAY_HPP
#define HOLIDAY_HPP
#include <vector>
#include <functional>
#include <libultraship/libultraship.h>
#include "soh/UIWidgets.hpp"
#include "soh/Enhancements/game-interactor/GameInteractor.h"
#include "soh/Enhancements/cosmetics/CosmeticsEditor.h"
inline std::vector<std::function<void()>> holidayDrawFuncs = {};
inline std::vector<std::function<void()>> holidayRegisterFuncs = {};
inline void DrawHolidayMenu() {
if (ImGui::BeginMenu("Holiday")) {
for (auto& drawFunc : holidayDrawFuncs) {
ImGui::PushID(&drawFunc);
drawFunc();
ImGui::PopID();
}
ImGui::EndMenu();
}
}
inline void RegisterHoliday() {
for (auto& regFunc : holidayRegisterFuncs) {
regFunc();
}
}
struct Holiday {
Holiday(std::function<void()> drawFunc, std::function<void()> registerFunc) {
holidayDrawFuncs.push_back(drawFunc);
holidayRegisterFuncs.push_back(registerFunc);
}
};
#endif //HOLIDAY_HPP

View File

@ -0,0 +1,150 @@
#include "Holiday.hpp"
#include "soh_assets.h"
#include "soh/Enhancements/randomizer/3drando/random.hpp"
#include "soh/frame_interpolation.h"
#include "soh/Notification/Notification.h"
#include "objects/gameplay_field_keep/gameplay_field_keep.h"
#include "soh/Enhancements/custom-message/CustomMessageManager.h"
#include "soh/util.h"
#include "soh/Enhancements/randomizer/randomizer.h"
extern "C" {
#include "macros.h"
#include "functions.h"
#include "variables.h"
extern PlayState* gPlayState;
}
extern GetItemEntry vanillaQueuedItemEntry;
#define AUTHOR "ItsHeckinPat"
#define CVAR(v) "gHoliday." AUTHOR "." v
bool spawningPresents = false;
int collectedPresent = 0;
struct Present {
};
std::unordered_map<Actor*, Present> presents;
void Present_Init(Actor* actor, PlayState* play) {
Present present;
presents[actor] = present;
actor->gravity = -1;
Actor_MoveForward(actor);
actor->shape.rot.y = Random(0, 0xFFFF);
Actor_UpdateBgCheckInfo(play, actor, 10.0f, 10.0f, 0.0f, 0xFF);
}
void Present_Update(Actor* actor, PlayState* play) {
Present* present = &presents[actor];
if (actor->xzDistToPlayer < 50.0f && actor->yDistToPlayer < 50.0f) {
collectedPresent++;
Notification::Emit({
.itemIcon = "RG_TRIFORCE_PIECE",
.message = "You collected a present!",
.messageColor = ImVec4(1.0f, 1.0f, 1.0f, 1.0f),
});
Actor_Kill(actor);
}
}
void Present_Draw(Actor* actor, PlayState* play) {
OPEN_DISPS(play->state.gfxCtx);
Gfx_SetupDL_25Opa(play->state.gfxCtx);
Matrix_Scale(30.0f, 30.0f, 30.0f, MTXMODE_APPLY);
Matrix_Translate(49.20f, 0.0f, -106.60f, MTXMODE_APPLY);
gSPMatrix(POLY_OPA_DISP++, Matrix_NewMtx(play->state.gfxCtx, (char*)__FILE__, __LINE__), G_MTX_MODELVIEW | G_MTX_LOAD);
gDPSetPrimColor(POLY_OPA_DISP++, 0, 0, 255, 255, 255, 255);
gSPDisplayList(POLY_OPA_DISP++, (Gfx*)gXmasDecor100DL);
CLOSE_DISPS(play->state.gfxCtx);
}
void Present_Destroy(Actor* actor, PlayState* play) {
presents.erase(actor);
}
static CollisionPoly presentPoly;
static f32 raycastResult;
static void OnConfigurationChanged() {
COND_HOOK(OnSceneSpawnActors, CVarGetInteger(CVAR("GiftsForNPCs"), 0), []() {
presents.clear();
Vec3f pos;
pos.y = 9999.0f;
int spawnAttempts = 0;
while (spawnAttempts < 50) {
if (GET_PLAYER(gPlayState) != nullptr) {
pos.x = GET_PLAYER(gPlayState)->actor.world.pos.x;
pos.z = GET_PLAYER(gPlayState)->actor.world.pos.z;
} else {
pos.x = 0;
pos.z = 0;
}
// X/Z anywhere from -1000.0 to +1000.0 from player
pos.x += (float)(Random(0, 2000)) - 1000.0f;
pos.z += (float)(Random(0, 2000)) - 1000.0f;
raycastResult = BgCheck_AnyRaycastFloor1(&gPlayState->colCtx, &presentPoly, &pos);
if (raycastResult > BGCHECK_Y_MIN) {
spawningPresents = true;
Actor* actor = Actor_Spawn(&gPlayState->actorCtx, gPlayState, ACTOR_EN_OE2, pos.x, raycastResult, pos.z, 0, 0, 0, 0, false);
spawningPresents = false;
// break;
}
spawnAttempts++;
}
});
COND_ID_HOOK(ShouldActorInit, ACTOR_EN_OE2, CVarGetInteger(CVAR("GiftsForNPCs"), 0), [](void* actorRef, bool* should) {
Actor* actor = (Actor*)actorRef;
if (spawningPresents) {
actor->init = Present_Init;
actor->update = Present_Update;
actor->draw = Present_Draw;
actor->destroy = Present_Destroy;
}
});
COND_ID_HOOK(OnOpenText, 0x1019, CVarGetInteger(CVAR("GiftsForNPCs"), 0), [](u16 * textId, bool* loadFromMessageTable) {
if (collectedPresent <= 0) {
return;
}
auto messageEntry = CustomMessage("A present??? FOR ME???");
messageEntry.Format();
messageEntry.LoadIntoFont();
*loadFromMessageTable = false;
vanillaQueuedItemEntry = Rando::StaticData::RetrieveItem(RG_PIECE_OF_HEART).GetGIEntry_Copy();
collectedPresent--;
});
}
static void DrawMenu() {
ImGui::SeparatorText(AUTHOR);
if (UIWidgets::EnhancementCheckbox("Gifts for NPCs", CVAR("GiftsForNPCs"))) {
OnConfigurationChanged();
}
}
static void RegisterMod() {
// #region Leave this alone unless you know what you are doing
OnConfigurationChanged();
// #endregion
// TODO: Anything you want to run once on startup
}
// TODO: Uncomment this line to enable the mod
static Holiday holiday(DrawMenu, RegisterMod);

View File

@ -0,0 +1,231 @@
#include "Holiday.hpp"
#include <libultraship/libultraship.h>
#include "soh/UIWidgets.hpp"
#include "soh/Enhancements/game-interactor/GameInteractor.h"
#include "objects/object_dog/object_dog.h"
#include "soh/frame_interpolation.h"
#include "soh/Enhancements/randomizer/3drando/random.hpp"
#include "soh/Enhancements/randomizer/3drando/location_access.hpp"
#include "soh/Enhancements/randomizer/entrance.h"
#include "objects/gameplay_field_keep/gameplay_field_keep.h"
#include "objects/object_md/object_md.h"
#include "src/overlays/actors/ovl_Door_Ana/z_door_ana.h"
extern "C" {
#include "macros.h"
#include "functions.h"
#include "variables.h"
extern PlayState* gPlayState;
extern "C" s16 gEnSnowballId;
void DoorAna_SetupAction(DoorAna* doorAna, DoorAnaActionFunc actionFunc);
void DoorAna_GrabPlayer(DoorAna* doorAna, PlayState* play);
}
#define AUTHOR "ProxySaw"
#define CVAR(v) "gHoliday." AUTHOR "." v
static CollisionPoly snowballPoly;
static Vec3f snowballPos;
static f32 raycastResult;
static u32 iceBlockParams[] = {
0x214,
0x1,
0x11,
0x10,
0x20,
};
static void SpawnSnowballs() {
if (gPlayState->sceneNum != SCENE_HYRULE_FIELD && gPlayState->sceneNum != SCENE_KAKARIKO_VILLAGE) {
return;
}
int actorsSpawned = 0;
while (actorsSpawned < 30) {
snowballPos.x = (float)(Random(
(gPlayState->sceneNum == SCENE_HYRULE_FIELD ? -10000 : -2700) + 10000,
(gPlayState->sceneNum == SCENE_HYRULE_FIELD ? 5000 : 2000) + 10000
) - (float)10000.0f);
snowballPos.y = 5000;
snowballPos.z = (float)(Random(
(gPlayState->sceneNum == SCENE_HYRULE_FIELD ? -1000 : -2000) + 10000,
(gPlayState->sceneNum == SCENE_HYRULE_FIELD ? 15000 : 2000) + 10000
) - (float)10000.0f);
raycastResult = BgCheck_AnyRaycastFloor1(&gPlayState->colCtx, &snowballPoly, &snowballPos);
if (raycastResult > BGCHECK_Y_MIN) {
Actor_Spawn(&gPlayState->actorCtx, gPlayState, gEnSnowballId, snowballPos.x, raycastResult,
snowballPos.z, 0, 0, 0, gPlayState->sceneNum == SCENE_HYRULE_FIELD, 0);
actorsSpawned++;
}
}
}
static void SpawnIcebergs() {
if (gPlayState->sceneNum != SCENE_LAKE_HYLIA) {
return;
}
int actorsSpawned = 0;
Vec3f spawnedIceBlockPos[15];
while (actorsSpawned < 15) {
Vec3f iceBlockPos;
iceBlockPos.x = (float)(Random(
(-4200) + 10000,
(3000) + 10000
) - (float)10000.0f);
iceBlockPos.y = -1713.0f;
iceBlockPos.z = (float)(Random(
(2600) + 10000,
(9000) + 10000
) - (float)10000.0f);
raycastResult = BgCheck_AnyRaycastFloor1(&gPlayState->colCtx, &snowballPoly, &iceBlockPos);
if (raycastResult > BGCHECK_Y_MIN) {
bool overlaps = false;
for (int i = 0; i < actorsSpawned; i++) {
if (Math_Vec3f_DistXZ(&spawnedIceBlockPos[i], &iceBlockPos) < 500.0f) {
overlaps = true;
break;
}
}
if (overlaps) {
continue;
}
if (LINK_IS_ADULT && !Flags_GetEventChkInf(EVENTCHKINF_RAISED_LAKE_HYLIA_WATER)) {
iceBlockPos.y = raycastResult;
} else {
iceBlockPos.y = -1310.0f;
}
Actor_Spawn(&gPlayState->actorCtx, gPlayState, ACTOR_BG_SPOT08_ICEBLOCK, iceBlockPos.x, iceBlockPos.y,
iceBlockPos.z, 0, (s16)Random(0, 0xFFFF), 0, RandomElement(iceBlockParams), 0);
spawnedIceBlockPos[actorsSpawned] = iceBlockPos;
actorsSpawned++;
}
}
}
const s16 entrances[] = {
0x0000, 0x0209, 0x0004, 0x0242, 0x0028, 0x0221, 0x0169, 0x0215, 0x0165, 0x024A, 0x0010, 0x021D, 0x0082, 0x01E1, 0x0037, 0x0205,
0x0098, 0x02A6, 0x0088, 0x03D4, 0x0008, 0x03A8, 0x0467, 0x023D, 0x0433, 0x0443, 0x0437, 0x0447, 0x009C, 0x033C, 0x00C9, 0x026A,
0x00C1, 0x0266, 0x0043, 0x03CC, 0x045F, 0x0309, 0x03A0, 0x03D0, 0x007E, 0x026E, 0x0530, 0x01D1, 0x0507, 0x03BC, 0x0388, 0x02A2,
0x0063, 0x01D5, 0x0528, 0x03C0, 0x043B, 0x0067, 0x02FD, 0x0349, 0x0550, 0x04EE, 0x039C, 0x0345, 0x05C8, 0x05DC, 0x0072, 0x034D,
0x030D, 0x0355, 0x037C, 0x03FC, 0x0380, 0x03C4, 0x004F, 0x0378, 0x02F9, 0x042F, 0x05D0, 0x05D4, 0x052C, 0x03B8, 0x016D, 0x01CD,
0x00B7, 0x0201, 0x003B, 0x0463, 0x0588, 0x057C, 0x0578, 0x0340, 0x04C2, 0x03E8, 0x04BE, 0x0482, 0x0315, 0x045B, 0x0371, 0x0394,
0x0272, 0x0211, 0x0053, 0x0472, 0x0453, 0x0351, 0x0384, 0x044B, 0x03EC, 0x04FF, 0x0700, 0x0800, 0x0701, 0x0801, 0x0702, 0x0802,
0x0703, 0x0803, 0x0704, 0x0804, 0x0705, 0x0805, 0x0706, 0x0806, 0x0707, 0x0807, 0x0708, 0x0808, 0x0709, 0x0809, 0x070A, 0x080A,
0x070B, 0x080B, 0x070C, 0x080C, 0x070D, 0x080D, 0x070E, 0x080E, 0x070F, 0x080F, 0x0710, 0x0711, 0x0811, 0x0712, 0x0812,
0x0713, 0x0813, 0x0714, 0x0814, 0x0715, 0x0815, 0x0716, 0x0816, 0x0717, 0x0817, 0x0718, 0x0818, 0x0719, 0x0819, 0x081A,
0x071B, 0x081B, 0x071C, 0x081C, 0x071D, 0x081D, 0x071E, 0x081E, 0x071F, 0x081F, 0x0720, 0x0820, 0x004B, 0x035D, 0x031C, 0x0361,
0x002D, 0x050B, 0x044F, 0x0359, 0x05E0, 0x020D, 0x011E, 0x0286, 0x04E2, 0x04D6, 0x01DD, 0x04DA, 0x00FC, 0x01A9, 0x0185, 0x04DE,
0x0102, 0x0189, 0x0117, 0x018D, 0x0276, 0x01FD, 0x00DB, 0x017D, 0x00EA, 0x0181, 0x0157, 0x01F9, 0x0328, 0x0560, 0x0129, 0x022D,
0x0130, 0x03AC, 0x0123, 0x0365, 0x00B1, 0x0033, 0x0138, 0x025A, 0x0171, 0x025E, 0x00E4, 0x0195, 0x013D, 0x0191, 0x014D, 0x01B9,
0x0246, 0x01C1, 0x0147, 0x01BD, 0x0108, 0x019D, 0x0225, 0x01A1, 0x0219, 0x027E, 0x0554, 0x00BB, 0x0282, 0x0600, 0x04F6, 0x0604,
0x01F1, 0x0568, 0x05F4, 0x040F, 0x0252, 0x040B, 0x00C5, 0x0301, 0x0407, 0x000C, 0x024E, 0x0305, 0x0175, 0x0417, 0x0423, 0x008D,
0x02F5, 0x0413, 0x02B2, 0x0457, 0x047A, 0x010E, 0x0608, 0x0564, 0x060C, 0x0610, 0x0580
};
static void RandomGrotto_WaitOpen(DoorAna* doorAna, PlayState* play) {
Actor* actor = &doorAna->actor;
Player* player = GET_PLAYER(play);
if (Math_StepToF(&actor->scale.x, 0.01f, 0.001f)) {
if ((actor->targetMode != 0) && (play->transitionTrigger == TRANS_TRIGGER_OFF) && (player->stateFlags1 & PLAYER_STATE1_FLOOR_DISABLED) && (player->av1.actionVar1 == 0)) {
play->nextEntranceIndex = RandomElement(entrances);
DoorAna_SetupAction((DoorAna*)actor, DoorAna_GrabPlayer);
} else {
if (!Player_InCsMode(play) && !(player->stateFlags1 & (PLAYER_STATE1_ON_HORSE | PLAYER_STATE1_IN_WATER)) &&
actor->xzDistToPlayer <= 15.0f && -50.0f <= actor->yDistToPlayer &&
actor->yDistToPlayer <= 15.0f) {
player->stateFlags1 |= PLAYER_STATE1_FLOOR_DISABLED;
actor->targetMode = 1;
} else {
actor->targetMode = 0;
}
}
}
Actor_SetScale(actor, actor->scale.x);
}
static void SpawnRandomGrotto() {
Vec3f pos;
pos.y = 9999.0f;
int spawnAttempts = 0;
while (spawnAttempts < 50) {
if (GET_PLAYER(gPlayState) != nullptr) {
pos.x = GET_PLAYER(gPlayState)->actor.world.pos.x;
pos.z = GET_PLAYER(gPlayState)->actor.world.pos.z;
} else {
pos.x = 0;
pos.z = 0;
}
// X/Z anywhere from -1000.0 to +1000.0 from player
pos.x += (float)(Random(0, 2000)) - 1000.0f;
pos.z += (float)(Random(0, 2000)) - 1000.0f;
raycastResult = BgCheck_AnyRaycastFloor1(&gPlayState->colCtx, &snowballPoly, &pos);
if (raycastResult > BGCHECK_Y_MIN) {
Actor* grotto = Actor_Spawn(&gPlayState->actorCtx, gPlayState, ACTOR_DOOR_ANA, pos.x, raycastResult, pos.z, 0, 0, 0, 0, false);
DoorAna_SetupAction((DoorAna*)grotto, RandomGrotto_WaitOpen);
break;
}
spawnAttempts++;
}
}
static void ConfigurationChanged() {
COND_HOOK(OnSceneSpawnActors, CVarGetInteger(CVAR("Snowballs"), 0), SpawnSnowballs);
COND_HOOK(OnPlayerUpdate, CVarGetInteger(CVAR("SuperBonk"), 0), []() {
Player* player = GET_PLAYER(gPlayState);
if (player->actor.bgCheckFlags & 0x08 && ABS(player->linearVelocity) > 15.0f) {
player->yaw = ((player->actor.wallYaw - player->yaw) + player->actor.wallYaw) - 0x8000;
Player_PlaySfx(&player->actor, NA_SE_PL_BODY_HIT);
}
});
COND_HOOK(OnPlayerBonk, CVarGetInteger(CVAR("SuperBonk"), 0), []() {
Player* player = GET_PLAYER(gPlayState);
player->linearVelocity = -100.0f;
});
COND_HOOK(OnSceneSpawnActors, CVarGetInteger(CVAR("Icebergs"), 0), SpawnIcebergs);
COND_HOOK(OnSceneSpawnActors, CVarGetInteger(CVAR("DownTheRabbitHole"), 0), SpawnRandomGrotto);
}
static void DrawMenu() {
ImGui::SeparatorText(AUTHOR);
if (UIWidgets::EnhancementCheckbox("Snowballs", CVAR("Snowballs"))) {
ConfigurationChanged();
}
if (UIWidgets::EnhancementCheckbox("Lake Hylia Icebergs", CVAR("Icebergs"))) {
ConfigurationChanged();
}
if (UIWidgets::EnhancementCheckbox("Down the Rabbit Hole", CVAR("DownTheRabbitHole"))) {
ConfigurationChanged();
}
if (UIWidgets::EnhancementCheckbox("Super Bonk", CVAR("SuperBonk"))) {
ConfigurationChanged();
}
}
static void RegisterMod() {
// #region Leave this alone unless you know what you are doing
ConfigurationChanged();
// #endregion
}
static Holiday holiday(DrawMenu, RegisterMod);

View File

@ -7,6 +7,12 @@
#include <spdlog/spdlog.h>
#include <variables.h>
#include "soh/util.h"
extern "C" {
PlayState* gPlayState;
}
using namespace std::literals::string_literals;
static const std::unordered_map<std::string, char> textBoxSpecialCharacters = {
@ -177,6 +183,15 @@ const TextBoxPosition& CustomMessage::GetTextBoxPosition() const {
return position;
}
void CustomMessage::LoadIntoFont() {
MessageContext* msgCtx = &gPlayState->msgCtx;
Font* font = &msgCtx->font;
char* buffer = font->msgBuf;
const int maxBufferSize = sizeof(font->msgBuf);
font->charTexBuf[0] = (type << 4) | position;
msgCtx->msgLength = font->msgLength = SohUtils::CopyStringToCharBuffer(GetEnglish(MF_RAW), buffer, maxBufferSize);
}
CustomMessage CustomMessage::operator+(const CustomMessage& right) const {
std::vector<std::string> newColors = colors;
std::vector<std::string> rColors = right.GetColors();

View File

@ -69,6 +69,9 @@ class CustomMessage {
void SetTextBoxType(TextBoxType boxType);
const TextBoxPosition& GetTextBoxPosition() const;
// To only be used with OnOpenText hook
void LoadIntoFont();
CustomMessage operator+(const CustomMessage& right) const;
CustomMessage operator+(const std::string& right) const;
void operator+=(const std::string& right);

View File

@ -571,6 +571,33 @@ struct HookInfo {
body; \
va_end(args); \
})
#define COND_HOOK(hookType, condition, body) \
{ \
static HOOK_ID hookId = 0; \
GameInteractor::Instance->UnregisterGameHook<GameInteractor::hookType>(hookId); \
hookId = 0; \
if (condition) { \
hookId = GameInteractor::Instance->RegisterGameHook<GameInteractor::hookType>(body); \
} \
}
#define COND_ID_HOOK(hookType, id, condition, body) \
{ \
static HOOK_ID hookId = 0; \
GameInteractor::Instance->UnregisterGameHookForID<GameInteractor::hookType>(hookId); \
hookId = 0; \
if (condition) { \
hookId = GameInteractor::Instance->RegisterGameHookForID<GameInteractor::hookType>(id, body); \
} \
}
#define COND_VB_SHOULD(id, condition, body) \
{ \
static HOOK_ID hookId = 0; \
GameInteractor::Instance->UnregisterGameHookForID<GameInteractor::ShouldVanillaBehavior>(hookId); \
hookId = 0; \
if (condition) { \
hookId = REGISTER_VB_SHOULD(id, body); \
} \
}
class GameInteractor {
public:

View File

@ -20,6 +20,7 @@ DEFINE_HOOK(OnSceneSpawnActors, ());
DEFINE_HOOK(OnPlayerUpdate, ());
DEFINE_HOOK(OnOcarinaSongAction, ());
DEFINE_HOOK(OnShopSlotChange, (uint8_t cursorIndex, int16_t price));
DEFINE_HOOK(ShouldActorInit, (void* actor, bool* result));
DEFINE_HOOK(OnActorInit, (void* actor));
DEFINE_HOOK(OnActorUpdate, (void* actor));
DEFINE_HOOK(OnActorKill, (void* actor));
@ -31,6 +32,7 @@ DEFINE_HOOK(OnPlayerHealthChange, (int16_t amount));
DEFINE_HOOK(OnPlayerBottleUpdate, (int16_t contents));
DEFINE_HOOK(OnPlayDestroy, ());
DEFINE_HOOK(OnPlayDrawEnd, ());
DEFINE_HOOK(OnOpenText, (u16 * textId, bool* loadFromMessageTable));
DEFINE_HOOK(OnVanillaBehavior, (GIVanillaBehavior flag, bool* result, va_list originalArgs));
DEFINE_HOOK(OnSaveFile, (int32_t fileNum));
DEFINE_HOOK(OnLoadFile, (int32_t fileNum));

View File

@ -79,6 +79,15 @@ void GameInteractor_ExecuteOnActorInit(void* actor) {
GameInteractor::Instance->ExecuteHooksForFilter<GameInteractor::OnActorInit>(actor);
}
bool GameInteractor_ShouldActorInit(void* actor) {
bool result = true;
GameInteractor::Instance->ExecuteHooks<GameInteractor::ShouldActorInit>(actor, &result);
GameInteractor::Instance->ExecuteHooksForID<GameInteractor::ShouldActorInit>(((Actor*)actor)->id, actor, &result);
GameInteractor::Instance->ExecuteHooksForPtr<GameInteractor::ShouldActorInit>((uintptr_t)actor, actor, &result);
GameInteractor::Instance->ExecuteHooksForFilter<GameInteractor::ShouldActorInit>(actor, &result);
return result;
}
void GameInteractor_ExecuteOnActorUpdate(void* actor) {
GameInteractor::Instance->ExecuteHooks<GameInteractor::OnActorUpdate>(actor);
GameInteractor::Instance->ExecuteHooksForID<GameInteractor::OnActorUpdate>(((Actor*)actor)->id, actor);
@ -131,6 +140,12 @@ void GameInteractor_ExecuteOnPlayDrawEnd() {
GameInteractor::Instance->ExecuteHooks<GameInteractor::OnPlayDrawEnd>();
}
void GameInteractor_ExecuteOnOpenText(u16* textId, bool* loadFromMessageTable) {
GameInteractor::Instance->ExecuteHooks<GameInteractor::OnOpenText>(textId, loadFromMessageTable);
GameInteractor::Instance->ExecuteHooksForID<GameInteractor::OnOpenText>(*textId, textId, loadFromMessageTable);
GameInteractor::Instance->ExecuteHooksForFilter<GameInteractor::OnOpenText>(textId, loadFromMessageTable);
}
bool GameInteractor_Should(GIVanillaBehavior flag, u32 result, ...) {
// Only the external function can use the Variadic Function syntax
// To pass the va args to the next caller must be done using va_list and reading the args into it

View File

@ -19,6 +19,7 @@ void GameInteractor_ExecuteOnFlagUnset(int16_t flagType, int16_t flag);
void GameInteractor_ExecuteOnSceneSpawnActors();
void GameInteractor_ExecuteOnPlayerUpdate();
void GameInteractor_ExecuteOnOcarinaSongAction();
bool GameInteractor_ShouldActorInit(void* actor);
void GameInteractor_ExecuteOnActorInit(void* actor);
void GameInteractor_ExecuteOnActorUpdate(void* actor);
void GameInteractor_ExecuteOnActorKill(void* actor);
@ -32,6 +33,7 @@ void GameInteractor_ExecuteOnOcarinaSongAction();
void GameInteractor_ExecuteOnShopSlotChangeHooks(uint8_t cursorIndex, int16_t price);
void GameInteractor_ExecuteOnPlayDestroy();
void GameInteractor_ExecuteOnPlayDrawEnd();
void GameInteractor_ExecuteOnOpenText(u16* textId, bool* loadFromMessageTable);
bool GameInteractor_Should(GIVanillaBehavior flag, uint32_t result, ...);
// MARK: - Save Files

View File

@ -13,6 +13,7 @@
#include "soh/Enhancements/TimeSavers/TimeSavers.h"
#include "soh/Enhancements/cheat_hook_handlers.h"
#include "soh/Enhancements/randomizer/hook_handlers.h"
#include "soh/Enhancements/Holiday/Holiday.hpp"
#include "objects/object_gi_compass/object_gi_compass.h"
#include "src/overlays/actors/ovl_En_Bb/z_en_bb.h"
@ -1413,99 +1414,6 @@ void RegisterRandomizerCompasses() {
});
}
static CollisionPoly snowballPoly;
static Vec3f snowballPos;
static f32 raycastResult;
static u32 iceBlockParams[] = {
0x214,
0x1,
0x11,
0x10,
0x20,
};
void RegisterSnowballs() {
GameInteractor::Instance->RegisterGameHook<GameInteractor::OnSceneSpawnActors>([]() {
if (gPlayState->sceneNum != SCENE_HYRULE_FIELD && gPlayState->sceneNum != SCENE_KAKARIKO_VILLAGE) {
return;
}
int actorsSpawned = 0;
while (actorsSpawned < 30) {
snowballPos.x = (float)(Random(
(gPlayState->sceneNum == SCENE_HYRULE_FIELD ? -10000 : -2700) + 10000,
(gPlayState->sceneNum == SCENE_HYRULE_FIELD ? 5000 : 2000) + 10000
) - (float)10000.0f);
snowballPos.y = 5000;
snowballPos.z = (float)(Random(
(gPlayState->sceneNum == SCENE_HYRULE_FIELD ? -1000 : -2000) + 10000,
(gPlayState->sceneNum == SCENE_HYRULE_FIELD ? 15000 : 2000) + 10000
) - (float)10000.0f);
raycastResult = BgCheck_AnyRaycastFloor1(&gPlayState->colCtx, &snowballPoly, &snowballPos);
if (raycastResult > BGCHECK_Y_MIN) {
Actor_Spawn(&gPlayState->actorCtx, gPlayState, gEnSnowballId, snowballPos.x, raycastResult,
snowballPos.z, 0, 0, 0, gPlayState->sceneNum == SCENE_HYRULE_FIELD, 0);
actorsSpawned++;
}
}
});
GameInteractor::Instance->RegisterGameHook<GameInteractor::OnSceneSpawnActors>([]() {
if (gPlayState->sceneNum != SCENE_LAKE_HYLIA) {
return;
}
int actorsSpawned = 0;
Vec3f spawnedIceBlockPos[15];
while (actorsSpawned < 15) {
Vec3f iceBlockPos;
iceBlockPos.x = (float)(Random(
(-4200) + 10000,
(3000) + 10000
) - (float)10000.0f);
iceBlockPos.y = -1713.0f;
iceBlockPos.z = (float)(Random(
(2600) + 10000,
(9000) + 10000
) - (float)10000.0f);
raycastResult = BgCheck_AnyRaycastFloor1(&gPlayState->colCtx, &snowballPoly, &iceBlockPos);
if (raycastResult > BGCHECK_Y_MIN) {
bool overlaps = false;
for (int i = 0; i < actorsSpawned; i++) {
if (Math_Vec3f_DistXZ(&spawnedIceBlockPos[i], &iceBlockPos) < 500.0f) {
overlaps = true;
break;
}
}
if (overlaps) {
continue;
}
if (LINK_IS_ADULT && !Flags_GetEventChkInf(EVENTCHKINF_RAISED_LAKE_HYLIA_WATER)) {
iceBlockPos.y = raycastResult;
} else {
iceBlockPos.y = -1310.0f;
}
Actor_Spawn(&gPlayState->actorCtx, gPlayState, ACTOR_BG_SPOT08_ICEBLOCK, iceBlockPos.x, iceBlockPos.y,
iceBlockPos.z, 0, (s16)Random(0, 0xFFFF), 0, RandomElement(iceBlockParams), 0);
spawnedIceBlockPos[actorsSpawned] = iceBlockPos;
actorsSpawned++;
}
}
});
}
void InitMods() {
BossRush_RegisterHooks();
RandomizerRegisterHooks();
@ -1544,11 +1452,11 @@ void InitMods() {
RegisterOpenAllHours();
RegisterToTMedallions();
RegisterRandomizerCompasses();
RegisterSnowballs();
NameTag_RegisterHooks();
RegisterFloorSwitchesHook();
RegisterPatchHandHandler();
RegisterHurtContainerModeHandler();
RegisterPauseMenuHooks();
RandoKaleido_RegisterHooks();
RegisterHoliday();
}

View File

@ -892,7 +892,7 @@ void TimeSaverOnSceneInitHandler(int16_t sceneNum) {
}
}
static GetItemEntry vanillaQueuedItemEntry = GET_ITEM_NONE;
GetItemEntry vanillaQueuedItemEntry = GET_ITEM_NONE;
void TimeSaverOnFlagSetHandler(int16_t flagType, int16_t flag) {
if (!CVarGetInteger(CVAR_ENHANCEMENT("TimeSavers.SkipCutscene.Story"), IS_RANDO)) return;
@ -1063,11 +1063,11 @@ void TimeSaverRegisterHooks() {
onVanillaBehaviorHook = GameInteractor::Instance->RegisterGameHook<GameInteractor::OnVanillaBehavior>(TimeSaverOnVanillaBehaviorHandler);
onActorInitHook = GameInteractor::Instance->RegisterGameHook<GameInteractor::OnActorInit>(TimeSaverOnActorInitHandler);
onGameFrameUpdate = GameInteractor::Instance->RegisterGameHook<GameInteractor::OnGameFrameUpdate>(TimeSaverOnGameFrameUpdateHandler);
onPlayerUpdateHook = GameInteractor::Instance->RegisterGameHook<GameInteractor::OnPlayerUpdate>(TimeSaverOnPlayerUpdateHandler);
onItemReceiveHook = GameInteractor::Instance->RegisterGameHook<GameInteractor::OnItemReceive>(TimeSaverOnItemReceiveHandler);
if (IS_RANDO) return;
onFlagSetHook = GameInteractor::Instance->RegisterGameHook<GameInteractor::OnFlagSet>(TimeSaverOnFlagSetHandler);
onPlayerUpdateHook = GameInteractor::Instance->RegisterGameHook<GameInteractor::OnPlayerUpdate>(TimeSaverOnPlayerUpdateHandler);
onItemReceiveHook = GameInteractor::Instance->RegisterGameHook<GameInteractor::OnItemReceive>(TimeSaverOnItemReceiveHandler);
});
}

View File

@ -41,6 +41,7 @@
#include "Enhancements/resolution-editor/ResolutionEditor.h"
#include "Enhancements/enemyrandomizer.h"
#include "Enhancements/timesplits/TimeSplits.h"
#include "Enhancements/Holiday/Holiday.hpp"
// FA icons are kind of wonky, if they worked how I expected them to the "+ 2.0f" wouldn't be needed, but
// they don't work how I expect them to so I added that because it looked good when I eyeballed it
@ -2256,6 +2257,10 @@ void SohMenuBar::DrawElement() {
DrawRandomizerMenu();
ImGui::SetCursorPosY(0.0f);
DrawHolidayMenu();
ImGui::PopStyleVar(1);
ImGui::EndMenuBar();
}

View File

@ -391,6 +391,19 @@ size_t SohUtils::CopyStringToCharBuffer(char* buffer, const std::string& source,
return 0;
}
int SohUtils::CopyStringToCharBuffer(const std::string& inputStr, char* buffer, const int maxBufferSize) {
if (!inputStr.empty()) {
// Prevent potential horrible overflow due to implicit conversion of maxBufferSize to an unsigned. Prevents negatives.
memset(buffer, 0, std::max<int>(0, maxBufferSize));
// Gaurentee that this value will be greater than 0, regardless of passed variables.
const int copiedCharLen = std::min<int>(std::max<int>(0, maxBufferSize - 1), inputStr.length());
memcpy(buffer, inputStr.c_str(), copiedCharLen);
return copiedCharLen;
}
return 0;
}
bool SohUtils::IsStringEmpty(std::string str) {
// Remove spaces at the beginning of the string
std::string::size_type start = str.find_first_not_of(' ');

View File

@ -20,6 +20,7 @@ namespace SohUtils {
// Copies a string into a char buffer up to maxBufferSize characters. This does NOT insert a null terminator
// on the end, as this is used for in-game messages which are not null-terminated.
size_t CopyStringToCharBuffer(char* buffer, const std::string& source, size_t maxBufferSize);
int CopyStringToCharBuffer(const std::string& inputStr, char* buffer, const int maxBufferSize);
bool IsStringEmpty(std::string str);
} // namespace SohUtils

View File

@ -1232,14 +1232,19 @@ void Actor_Init(Actor* actor, PlayState* play) {
ActorShape_Init(&actor->shape, 0.0f, NULL, 0.0f);
if (Object_IsLoaded(&play->objectCtx, actor->objBankIndex)) {
Actor_SetObjectDependency(play, actor);
actor->init(actor, play);
actor->init = NULL;
if (GameInteractor_ShouldActorInit(actor)) {
actor->init(actor, play);
actor->init = NULL;
GameInteractor_ExecuteOnActorInit(actor);
GameInteractor_ExecuteOnActorInit(actor);
// For enemy health bar we need to know the max health during init
if (actor->category == ACTORCAT_ENEMY) {
actor->maximumHealth = actor->colChkInfo.health;
// For enemy health bar we need to know the max health during init
if (actor->category == ACTORCAT_ENEMY) {
actor->maximumHealth = actor->colChkInfo.health;
}
} else {
actor->init = NULL;
Actor_Kill(actor);
}
}
}
@ -2577,14 +2582,19 @@ void Actor_UpdateAll(PlayState* play, ActorContext* actorCtx) {
if (Object_IsLoaded(&play->objectCtx, actor->objBankIndex))
{
Actor_SetObjectDependency(play, actor);
actor->init(actor, play);
actor->init = NULL;
if (GameInteractor_ShouldActorInit(actor)) {
actor->init(actor, play);
actor->init = NULL;
GameInteractor_ExecuteOnActorInit(actor);
GameInteractor_ExecuteOnActorInit(actor);
// For enemy health bar we need to know the max health during init
if (actor->category == ACTORCAT_ENEMY) {
actor->maximumHealth = actor->colChkInfo.health;
// For enemy health bar we need to know the max health during init
if (actor->category == ACTORCAT_ENEMY) {
actor->maximumHealth = actor->colChkInfo.health;
}
} else {
actor->init = NULL;
Actor_Kill(actor);
}
}
actor = actor->next;

View File

@ -1594,6 +1594,9 @@ void Message_OpenText(PlayState* play, u16 textId) {
Font* font = &msgCtx->font;
s16 textBoxType;
bool loadFromMessageTable = true;
GameInteractor_ExecuteOnOpenText(&textId, &loadFromMessageTable);
if (msgCtx->msgMode == MSGMODE_NONE) {
gSaveContext.unk_13EE = gSaveContext.unk_13EA;
}
@ -1652,7 +1655,9 @@ void Message_OpenText(PlayState* play, u16 textId) {
}
// RANDOTODO: Use this for ice trap messages
if (CustomMessage_RetrieveIfExists(play)) {
if (!loadFromMessageTable) {
// no-op
} else if (CustomMessage_RetrieveIfExists(play)) {
osSyncPrintf("Found custom message");
} else if (sTextIsCredits) {
Message_FindCreditsMessage(play, textId);

View File

@ -179,7 +179,7 @@ void DoorAna_Update(Actor* thisx, PlayState* play) {
this->actionFunc(this, play);
// Changes the grottos facing angle based on camera angle
if (!CVarGetInteger(CVAR_ENHANCEMENT("DisableGrottoRotation"), 0)) {
if (!CVarGetInteger(CVAR_ENHANCEMENT("DisableGrottoRotation"), 0) && thisx->draw == DoorAna_Draw) {
this->actor.shape.rot.y = Camera_GetCamDirYaw(GET_ACTIVE_CAM(play)) + 0x8000;
}
}

View File

@ -244,15 +244,22 @@ void EnClearTag_Init(Actor* thisx, PlayState* play) {
if (this->actor.params == CLEAR_TAG_LASER) {
this->state = CLEAR_TAG_STATE_LASER;
this->timers[CLEAR_TAG_TIMER_LASER_DEATH] = 70;
this->actor.speedXZ = 35.0f;
func_8002D908(&this->actor);
for (j = 0; j <= 0; j++) {
func_8002D7EC(&this->actor);
if (CVarGetInteger("gHoliday.AGreenSpoon.EvilGossipStone", 0)) {
this->actor.scale.x = 0.4f;
this->actor.scale.y = 0.4f;
this->actor.scale.z = 2.0f;
this->actor.speedXZ = MAX(10.0f, Actor_WorldDistXZToActor(thisx, &GET_PLAYER(gPlayState)->actor) * 0.33f);
} else {
this->actor.speedXZ = 35.0f;
func_8002D908(&this->actor);
for (j = 0; j <= 0; j++) {
func_8002D7EC(&this->actor);
}
this->actor.scale.x = 0.4f;
this->actor.scale.y = 0.4f;
this->actor.scale.z = 2.0f;
this->actor.speedXZ = 70.0f;
}
this->actor.scale.x = 0.4f;
this->actor.scale.y = 0.4f;
this->actor.scale.z = 2.0f;
this->actor.speedXZ = 70.0f;
this->actor.shape.rot.x = -this->actor.shape.rot.x;
func_8002D908(&this->actor);
@ -570,12 +577,21 @@ void EnClearTag_Update(Actor* thisx, PlayState* play2) {
}
// Set laser collider properties.
this->collider.dim.radius = 23;
this->collider.dim.height = 25;
this->collider.dim.yShift = -10;
Collider_UpdateCylinder(&this->actor, &this->collider);
CollisionCheck_SetAT(play, &play->colChkCtx, &this->collider.base);
Actor_UpdateBgCheckInfo(play, &this->actor, 50.0f, 80.0f, 100.0f, 5);
if (CVarGetInteger("gHoliday.AGreenSpoon.EvilGossipStone", 0)) {
this->collider.dim.radius = 10;
this->collider.dim.height = 25;
this->collider.dim.yShift = -10;
Collider_UpdateCylinder(&this->actor, &this->collider);
CollisionCheck_SetAT(play, &play->colChkCtx, &this->collider.base);
Actor_UpdateBgCheckInfo(play, &this->actor, 10.0f, 10.0f, 10.0f, 5);
} else {
this->collider.dim.radius = 23;
this->collider.dim.height = 25;
this->collider.dim.yShift = -10;
Collider_UpdateCylinder(&this->actor, &this->collider);
CollisionCheck_SetAT(play, &play->colChkCtx, &this->collider.base);
Actor_UpdateBgCheckInfo(play, &this->actor, 50.0f, 80.0f, 100.0f, 5);
}
// Check if the laser has hit a target, timed out, or hit the ground.
if (this->actor.bgCheckFlags & 9 || hasAtHit || this->timers[CLEAR_TAG_TIMER_LASER_DEATH] == 0) {

View File

@ -78,7 +78,7 @@ void EnNutsball_Init(Actor* thisx, PlayState* play) {
ActorShape_Init(&this->actor.shape, 400.0f, ActorShadow_DrawCircle, 13.0f);
Collider_InitCylinder(play, &this->collider);
Collider_SetCylinder(play, &this->collider, &this->actor, &sCylinderInit);
if (CVarGetInteger(CVAR_ENHANCEMENT("RandomizedEnemies"), 0)) {
if (CVarGetInteger(CVAR_ENHANCEMENT("RandomizedEnemies"), 0) || CVarGetInteger("gLetItSnow", 0)) {
this->objBankIndex = 0;
} else {
this->objBankIndex = Object_GetIndex(&play->objectCtx, sObjectIDs[this->actor.params]);