sm64

A Super Mario 64 decompilation
Log | Files | Refs | README | LICENSE

model.inc.c (33852B)


      1 // Haunted Cage
      2 
      3 // 0x0500C258
      4 static const Lights1 haunted_cage_seg5_lights_0500C258 = gdSPDefLights1(
      5     0x39, 0x0c, 0x0e,
      6     0x90, 0x1e, 0x25, 0x28, 0x28, 0x28
      7 );
      8 
      9 // 0x0500C270
     10 static const Lights1 haunted_cage_seg5_lights_0500C270 = gdSPDefLights1(
     11     0x47, 0x47, 0x47,
     12     0xb2, 0xb2, 0xb2, 0x28, 0x28, 0x28
     13 );
     14 
     15 // 0x0500C288
     16 ALIGNED8 static const Texture haunted_cage_seg5_texture_0500C288[] = {
     17 #include "actors/haunted_cage/bbh_cage_floor.rgba16.inc.c"
     18 };
     19 
     20 // 0x0500CA88
     21 ALIGNED8 static const Texture haunted_cage_seg5_texture_0500CA88[] = {
     22 #include "actors/haunted_cage/bbh_cage_double_ornament.rgba16.inc.c"
     23 };
     24 
     25 // 0x0500D288
     26 ALIGNED8 static const Texture haunted_cage_seg5_texture_0500D288[] = {
     27 #include "actors/haunted_cage/bbh_cage_ornament.rgba16.inc.c"
     28 };
     29 
     30 // 0x0500D688
     31 ALIGNED8 static const Texture haunted_cage_seg5_texture_0500D688[] = {
     32 #include "actors/haunted_cage/bbh_cage_wooden_base.rgba16.inc.c"
     33 };
     34 
     35 // 0x0500DA88
     36 ALIGNED8 static const Texture haunted_cage_seg5_texture_0500DA88[] = {
     37 #include "actors/haunted_cage/bbh_cage_bars.rgba16.inc.c"
     38 };
     39 
     40 // possibly garbage. does not at all appear to be a texture and is unreferenced
     41 // also could be some sort of shader mask from much earlier in development, considering
     42 // Big Boo's Haunt was a very very early level.
     43 // 0x0500E288
     44 ALIGNED8 static const Texture haunted_cage_seg5_texture_0500E288[] = {
     45 #include "actors/haunted_cage/bbh_cage_garbage.rgba16.inc.c"
     46 };
     47 
     48 // 0x0500EA88
     49 static const Vtx haunted_cage_seg5_vertex_0500EA88[] = {
     50     {{{    47,     81,      0}, 0, {  6100,   2042}, {0x31, 0x73, 0xf1, 0xff}}},
     51     {{{    40,     81,    -22}, 0, {  7122,   2042}, {0x31, 0x73, 0xf1, 0xff}}},
     52     {{{     0,    101,      0}, 0, {  6612,     66}, {0x31, 0x73, 0xf1, 0xff}}},
     53     {{{    40,     81,     23}, 0, {  5078,   2042}, {0x31, 0x74, 0x0f, 0xff}}},
     54     {{{    47,     81,      0}, 0, {  6100,   2042}, {0x31, 0x74, 0x0f, 0xff}}},
     55     {{{     0,    101,      0}, 0, {  5590,     66}, {0x31, 0x74, 0x0f, 0xff}}},
     56     {{{    40,     81,    -22}, 0, {  7122,   2042}, {0x25, 0x73, 0xdb, 0xff}}},
     57     {{{    23,     81,    -39}, 0, {  8144,   2042}, {0x25, 0x73, 0xdb, 0xff}}},
     58     {{{     0,    101,      0}, 0, {  7634,     66}, {0x25, 0x73, 0xdb, 0xff}}},
     59     {{{    23,     81,    -39}, 0, {  8144,   2042}, {0x0f, 0x73, 0xce, 0xff}}},
     60     {{{     0,     81,    -46}, 0, {  9166,   2042}, {0x0f, 0x73, 0xce, 0xff}}},
     61     {{{     0,    101,      0}, 0, {  8656,     66}, {0x0f, 0x73, 0xce, 0xff}}},
     62     {{{     0,     81,    -46}, 0, {  9166,   2042}, {0xf1, 0x73, 0xce, 0xff}}},
     63     {{{   -22,     81,    -39}, 0, { 10188,   2042}, {0xf1, 0x73, 0xce, 0xff}}},
     64     {{{     0,    101,      0}, 0, {  9678,     66}, {0xf1, 0x73, 0xce, 0xff}}},
     65 };
     66 
     67 // 0x0500EB78
     68 static const Vtx haunted_cage_seg5_vertex_0500EB78[] = {
     69     {{{   -22,     81,    -39}, 0, { 10188,   2042}, {0xdb, 0x73, 0xdb, 0xff}}},
     70     {{{   -39,     81,    -22}, 0, { 11210,   2042}, {0xdb, 0x73, 0xdb, 0xff}}},
     71     {{{     0,    101,      0}, 0, { 10698,     66}, {0xdb, 0x73, 0xdb, 0xff}}},
     72     {{{   -39,     81,    -22}, 0, { 11210,   2042}, {0xce, 0x73, 0xf1, 0xff}}},
     73     {{{   -46,     81,      0}, 0, { 12232,   2042}, {0xce, 0x73, 0xf1, 0xff}}},
     74     {{{     0,    101,      0}, 0, { 11722,     66}, {0xce, 0x73, 0xf1, 0xff}}},
     75     {{{   -46,     81,      0}, 0, {     0,   2042}, {0xce, 0x73, 0x0f, 0xff}}},
     76     {{{   -39,     81,     23}, 0, {   990,   2042}, {0xce, 0x73, 0x0f, 0xff}}},
     77     {{{     0,    101,      0}, 0, {   478,     66}, {0xce, 0x73, 0x0f, 0xff}}},
     78     {{{   -39,     81,     23}, 0, {   990,   2042}, {0xdb, 0x73, 0x25, 0xff}}},
     79     {{{   -22,     81,     40}, 0, {  2012,   2042}, {0xdb, 0x73, 0x25, 0xff}}},
     80     {{{     0,    101,      0}, 0, {  1502,     66}, {0xdb, 0x73, 0x25, 0xff}}},
     81     {{{   -22,     81,     40}, 0, {  2012,   2042}, {0xf1, 0x73, 0x31, 0xff}}},
     82     {{{     0,     81,     47}, 0, {  3034,   2042}, {0xf1, 0x73, 0x31, 0xff}}},
     83     {{{     0,    101,      0}, 0, {  2524,     66}, {0xf1, 0x73, 0x31, 0xff}}},
     84 };
     85 
     86 // 0x0500EC68
     87 static const Vtx haunted_cage_seg5_vertex_0500EC68[] = {
     88     {{{     0,     81,     47}, 0, {  3034,   2042}, {0x0f, 0x74, 0x31, 0xff}}},
     89     {{{    23,     81,     40}, 0, {  4056,   2042}, {0x0f, 0x74, 0x31, 0xff}}},
     90     {{{     0,    101,      0}, 0, {  3546,     66}, {0x0f, 0x74, 0x31, 0xff}}},
     91     {{{    23,     81,     40}, 0, {  4056,   2042}, {0x24, 0x73, 0x24, 0xff}}},
     92     {{{    40,     81,     23}, 0, {  5078,   2042}, {0x24, 0x73, 0x24, 0xff}}},
     93     {{{     0,    101,      0}, 0, {  4568,     66}, {0x24, 0x73, 0x24, 0xff}}},
     94 };
     95 
     96 // 0x0500ECC8
     97 static const Vtx haunted_cage_seg5_vertex_0500ECC8[] = {
     98     {{{   -43,      0,    -25}, 0, { 11210,    479}, {0xa7, 0x00, 0xa7, 0xff}}},
     99     {{{   -25,     10,    -43}, 0, { 10188,      0}, {0xa7, 0x00, 0xa7, 0xff}}},
    100     {{{   -25,      0,    -43}, 0, { 10188,    479}, {0xa7, 0x00, 0xa7, 0xff}}},
    101     {{{    44,      0,    -25}, 0, {  7122,    479}, {0x7a, 0x00, 0xde, 0xff}}},
    102     {{{    51,     10,      0}, 0, {  6100,      0}, {0x7a, 0x00, 0xde, 0xff}}},
    103     {{{    51,      0,      0}, 0, {  6100,    479}, {0x7a, 0x00, 0xde, 0xff}}},
    104     {{{    26,      0,    -43}, 0, {  8144,    479}, {0x59, 0x00, 0xa7, 0xff}}},
    105     {{{    44,     10,    -25}, 0, {  7122,      0}, {0x59, 0x00, 0xa7, 0xff}}},
    106     {{{    44,      0,    -25}, 0, {  7122,    479}, {0x59, 0x00, 0xa7, 0xff}}},
    107     {{{    44,     10,    -25}, 0, {  7122,      0}, {0x7a, 0x00, 0xde, 0xff}}},
    108     {{{    26,     10,    -43}, 0, {  8144,      0}, {0x59, 0x00, 0xa7, 0xff}}},
    109     {{{    51,      0,      0}, 0, {  6100,    479}, {0x7a, 0x00, 0x21, 0xff}}},
    110     {{{    51,     10,      0}, 0, {  6100,      0}, {0x7a, 0x00, 0x21, 0xff}}},
    111     {{{    44,     10,     26}, 0, {  5078,      0}, {0x7a, 0x00, 0x21, 0xff}}},
    112     {{{    44,      0,     26}, 0, {  5078,    479}, {0x7a, 0x00, 0x21, 0xff}}},
    113 };
    114 
    115 // 0x0500EDB8
    116 static const Vtx haunted_cage_seg5_vertex_0500EDB8[] = {
    117     {{{     0,      0,    -50}, 0, {  9166,    479}, {0x21, 0x00, 0x86, 0xff}}},
    118     {{{    26,     10,    -43}, 0, {  8144,      0}, {0x21, 0x00, 0x86, 0xff}}},
    119     {{{    26,      0,    -43}, 0, {  8144,    479}, {0x21, 0x00, 0x86, 0xff}}},
    120     {{{     0,     10,    -50}, 0, {  9166,      0}, {0x21, 0x00, 0x86, 0xff}}},
    121     {{{   -25,      0,    -43}, 0, { 10188,    479}, {0xde, 0x00, 0x86, 0xff}}},
    122     {{{     0,     10,    -50}, 0, {  9166,      0}, {0xde, 0x00, 0x86, 0xff}}},
    123     {{{     0,      0,    -50}, 0, {  9166,    479}, {0xde, 0x00, 0x86, 0xff}}},
    124     {{{   -25,     10,    -43}, 0, { 10188,      0}, {0xde, 0x00, 0x86, 0xff}}},
    125     {{{     0,      0,     51}, 0, {  3034,    479}, {0xde, 0x00, 0x7a, 0xff}}},
    126     {{{     0,     10,     51}, 0, {  3034,      0}, {0xde, 0x00, 0x7a, 0xff}}},
    127     {{{   -25,     10,     44}, 0, {  2012,      0}, {0xde, 0x00, 0x7a, 0xff}}},
    128     {{{   -43,      0,    -25}, 0, { 11210,    479}, {0xa7, 0x00, 0xa7, 0xff}}},
    129     {{{   -43,     10,    -25}, 0, { 11210,      0}, {0xa7, 0x00, 0xa7, 0xff}}},
    130     {{{   -25,     10,    -43}, 0, { 10188,      0}, {0xa7, 0x00, 0xa7, 0xff}}},
    131 };
    132 
    133 // 0x0500EE98
    134 static const Vtx haunted_cage_seg5_vertex_0500EE98[] = {
    135     {{{   -50,      0,      0}, 0, { 12232,    479}, {0x86, 0x00, 0xde, 0xff}}},
    136     {{{   -43,     10,    -25}, 0, { 11210,      0}, {0x86, 0x00, 0xde, 0xff}}},
    137     {{{   -43,      0,    -25}, 0, { 11210,    479}, {0x86, 0x00, 0xde, 0xff}}},
    138     {{{   -50,     10,      0}, 0, { 12232,      0}, {0x86, 0x00, 0xde, 0xff}}},
    139     {{{   -43,      0,     26}, 0, {   990,    479}, {0x86, 0x00, 0x21, 0xff}}},
    140     {{{   -43,     10,     26}, 0, {   990,      0}, {0x86, 0x00, 0x21, 0xff}}},
    141     {{{   -50,     10,      0}, 0, {     0,      0}, {0x86, 0x00, 0x21, 0xff}}},
    142     {{{   -50,      0,      0}, 0, {     0,    479}, {0x86, 0x00, 0x21, 0xff}}},
    143     {{{   -25,      0,     44}, 0, {  2012,    479}, {0xa7, 0x00, 0x59, 0xff}}},
    144     {{{   -43,     10,     26}, 0, {   990,      0}, {0xa7, 0x00, 0x59, 0xff}}},
    145     {{{   -43,      0,     26}, 0, {   990,    479}, {0xa7, 0x00, 0x59, 0xff}}},
    146     {{{   -25,     10,     44}, 0, {  2012,      0}, {0xa7, 0x00, 0x59, 0xff}}},
    147     {{{     0,      0,     51}, 0, {  3034,    479}, {0xde, 0x00, 0x7a, 0xff}}},
    148     {{{   -25,     10,     44}, 0, {  2012,      0}, {0xde, 0x00, 0x7a, 0xff}}},
    149     {{{   -25,      0,     44}, 0, {  2012,    479}, {0xde, 0x00, 0x7a, 0xff}}},
    150 };
    151 
    152 // 0x0500EF88
    153 static const Vtx haunted_cage_seg5_vertex_0500EF88[] = {
    154     {{{    26,      0,     44}, 0, {  4056,    479}, {0x21, 0x00, 0x7a, 0xff}}},
    155     {{{     0,     10,     51}, 0, {  3034,      0}, {0x21, 0x00, 0x7a, 0xff}}},
    156     {{{     0,      0,     51}, 0, {  3034,    479}, {0x21, 0x00, 0x7a, 0xff}}},
    157     {{{    26,     10,     44}, 0, {  4056,      0}, {0x21, 0x00, 0x7a, 0xff}}},
    158     {{{    44,      0,     26}, 0, {  5078,    479}, {0x59, 0x00, 0x59, 0xff}}},
    159     {{{    26,     10,     44}, 0, {  4056,      0}, {0x59, 0x00, 0x59, 0xff}}},
    160     {{{    26,      0,     44}, 0, {  4056,    479}, {0x59, 0x00, 0x59, 0xff}}},
    161     {{{    44,     10,     26}, 0, {  5078,      0}, {0x59, 0x00, 0x59, 0xff}}},
    162 };
    163 
    164 // 0x0500F008
    165 static const Vtx haunted_cage_seg5_vertex_0500F008[] = {
    166     {{{    44,     64,    -25}, 0, {  7122,    990}, {0x74, 0x21, 0xdb, 0xff}}},
    167     {{{    40,     81,    -22}, 0, {  7122,    -72}, {0x74, 0x21, 0xdb, 0xff}}},
    168     {{{    47,     81,      0}, 0, {  6100,    -72}, {0x74, 0x21, 0xdb, 0xff}}},
    169     {{{    26,     64,    -43}, 0, {  8144,    990}, {0x56, 0x23, 0xaa, 0xff}}},
    170     {{{    40,     81,    -22}, 0, {  7122,    -72}, {0x56, 0x23, 0xaa, 0xff}}},
    171     {{{    44,     64,    -25}, 0, {  7122,    990}, {0x56, 0x23, 0xaa, 0xff}}},
    172     {{{    44,     64,    -25}, 0, {  7122,    990}, {0x77, 0x1c, 0xdf, 0xff}}},
    173     {{{    47,     81,      0}, 0, {  6100,    -72}, {0x77, 0x1c, 0xdf, 0xff}}},
    174     {{{    51,     64,      0}, 0, {  6100,    990}, {0x77, 0x1c, 0xdf, 0xff}}},
    175     {{{    23,     81,    -39}, 0, {  8144,    -72}, {0x56, 0x23, 0xaa, 0xff}}},
    176     {{{    51,     64,      0}, 0, {  6100,    990}, {0x76, 0x1b, 0x24, 0xff}}},
    177     {{{    47,     81,      0}, 0, {  6100,    -72}, {0x76, 0x1b, 0x24, 0xff}}},
    178     {{{    40,     81,     23}, 0, {  5078,    -72}, {0x76, 0x1b, 0x24, 0xff}}},
    179     {{{    51,     64,      0}, 0, {  6100,    990}, {0x76, 0x21, 0x1f, 0xff}}},
    180     {{{    40,     81,     23}, 0, {  5078,    -72}, {0x76, 0x21, 0x1f, 0xff}}},
    181     {{{    44,     64,     26}, 0, {  5078,    990}, {0x76, 0x21, 0x1f, 0xff}}},
    182 };
    183 
    184 // 0x0500F108
    185 static const Vtx haunted_cage_seg5_vertex_0500F108[] = {
    186     {{{     0,     81,    -46}, 0, {  9166,    -72}, {0x23, 0x21, 0x8b, 0xff}}},
    187     {{{    23,     81,    -39}, 0, {  8144,    -72}, {0x23, 0x21, 0x8b, 0xff}}},
    188     {{{    26,     64,    -43}, 0, {  8144,    990}, {0x23, 0x21, 0x8b, 0xff}}},
    189     {{{     0,     64,    -50}, 0, {  9166,    990}, {0x20, 0x1c, 0x89, 0xff}}},
    190     {{{     0,     81,    -46}, 0, {  9166,    -72}, {0x20, 0x1c, 0x89, 0xff}}},
    191     {{{    26,     64,    -43}, 0, {  8144,    990}, {0x20, 0x1c, 0x89, 0xff}}},
    192     {{{   -25,     64,    -43}, 0, { 10188,    990}, {0xdf, 0x1c, 0x89, 0xff}}},
    193     {{{     0,     81,    -46}, 0, {  9166,    -72}, {0xdf, 0x1c, 0x89, 0xff}}},
    194     {{{     0,     64,    -50}, 0, {  9166,    990}, {0xdf, 0x1c, 0x89, 0xff}}},
    195     {{{   -25,     64,    -43}, 0, { 10188,    990}, {0xdb, 0x21, 0x8c, 0xff}}},
    196     {{{   -22,     81,    -39}, 0, { 10188,    -72}, {0xdb, 0x21, 0x8c, 0xff}}},
    197     {{{     0,     81,    -46}, 0, {  9166,    -72}, {0xdb, 0x21, 0x8c, 0xff}}},
    198     {{{   -43,     64,    -25}, 0, { 11210,    990}, {0xaa, 0x23, 0xaa, 0xff}}},
    199     {{{   -39,     81,    -22}, 0, { 11210,    -72}, {0xaa, 0x23, 0xaa, 0xff}}},
    200     {{{   -25,     64,    -43}, 0, { 10188,    990}, {0xaa, 0x23, 0xaa, 0xff}}},
    201     {{{   -22,     81,    -39}, 0, { 10188,    -72}, {0xaa, 0x23, 0xaa, 0xff}}},
    202 };
    203 
    204 // 0x0500F208
    205 static const Vtx haunted_cage_seg5_vertex_0500F208[] = {
    206     {{{   -50,     64,      0}, 0, { 12232,    990}, {0x8b, 0x21, 0xdf, 0xff}}},
    207     {{{   -39,     81,    -22}, 0, { 11210,    -72}, {0x8b, 0x21, 0xdf, 0xff}}},
    208     {{{   -43,     64,    -25}, 0, { 11210,    990}, {0x8b, 0x21, 0xdf, 0xff}}},
    209     {{{   -50,     64,      0}, 0, { 12232,    990}, {0x8a, 0x1b, 0xdb, 0xff}}},
    210     {{{   -46,     81,      0}, 0, { 12232,    -72}, {0x8a, 0x1b, 0xdb, 0xff}}},
    211     {{{   -39,     81,    -22}, 0, { 11210,    -72}, {0x8a, 0x1b, 0xdb, 0xff}}},
    212     {{{   -25,     64,     44}, 0, {  2012,    990}, {0xaa, 0x23, 0x56, 0xff}}},
    213     {{{   -39,     81,     23}, 0, {   990,    -72}, {0xaa, 0x23, 0x56, 0xff}}},
    214     {{{   -43,     64,     26}, 0, {   990,    990}, {0xaa, 0x23, 0x56, 0xff}}},
    215     {{{   -43,     64,     26}, 0, {   990,    990}, {0x8b, 0x21, 0x23, 0xff}}},
    216     {{{   -39,     81,     23}, 0, {   990,    -72}, {0x8b, 0x21, 0x23, 0xff}}},
    217     {{{   -46,     81,      0}, 0, {     0,    -72}, {0x8b, 0x21, 0x23, 0xff}}},
    218     {{{   -43,     64,     26}, 0, {   990,    990}, {0x89, 0x1c, 0x20, 0xff}}},
    219     {{{   -46,     81,      0}, 0, {     0,    -72}, {0x89, 0x1c, 0x20, 0xff}}},
    220     {{{   -50,     64,      0}, 0, {     0,    990}, {0x89, 0x1c, 0x20, 0xff}}},
    221     {{{   -22,     81,     40}, 0, {  2012,    -72}, {0xaa, 0x23, 0x56, 0xff}}},
    222 };
    223 
    224 // 0x0500F308
    225 static const Vtx haunted_cage_seg5_vertex_0500F308[] = {
    226     {{{     0,     64,     51}, 0, {  3034,    990}, {0xdf, 0x1c, 0x77, 0xff}}},
    227     {{{     0,     81,     47}, 0, {  3034,    -72}, {0xdf, 0x1c, 0x77, 0xff}}},
    228     {{{   -25,     64,     44}, 0, {  2012,    990}, {0xdf, 0x1c, 0x77, 0xff}}},
    229     {{{     0,     81,     47}, 0, {  3034,    -72}, {0xdb, 0x21, 0x74, 0xff}}},
    230     {{{   -22,     81,     40}, 0, {  2012,    -72}, {0xdb, 0x21, 0x74, 0xff}}},
    231     {{{   -25,     64,     44}, 0, {  2012,    990}, {0xdb, 0x21, 0x74, 0xff}}},
    232     {{{    26,     64,     44}, 0, {  4056,    990}, {0x23, 0x21, 0x75, 0xff}}},
    233     {{{    23,     81,     40}, 0, {  4056,    -72}, {0x23, 0x21, 0x75, 0xff}}},
    234     {{{     0,     81,     47}, 0, {  3034,    -72}, {0x23, 0x21, 0x75, 0xff}}},
    235     {{{    26,     64,     44}, 0, {  4056,    990}, {0x20, 0x1c, 0x77, 0xff}}},
    236     {{{     0,     81,     47}, 0, {  3034,    -72}, {0x20, 0x1c, 0x77, 0xff}}},
    237     {{{     0,     64,     51}, 0, {  3034,    990}, {0x20, 0x1c, 0x77, 0xff}}},
    238     {{{    40,     81,     23}, 0, {  5078,    -72}, {0x56, 0x23, 0x56, 0xff}}},
    239     {{{    23,     81,     40}, 0, {  4056,    -72}, {0x56, 0x23, 0x56, 0xff}}},
    240     {{{    26,     64,     44}, 0, {  4056,    990}, {0x56, 0x23, 0x56, 0xff}}},
    241     {{{    44,     64,     26}, 0, {  5078,    990}, {0x56, 0x23, 0x56, 0xff}}},
    242 };
    243 
    244 // 0x0500F408
    245 static const Vtx haunted_cage_seg5_vertex_0500F408[] = {
    246     {{{   -43,      0,    -25}, 0, {  5204,  -2624}, {0x00, 0x7f, 0x00, 0xff}}},
    247     {{{     0,      0,     51}, 0, { -1052,  -8882}, {0x00, 0x7f, 0x00, 0xff}}},
    248     {{{    26,      0,     44}, 0, { -3342,  -7560}, {0x00, 0x7f, 0x00, 0xff}}},
    249     {{{   -25,      0,     44}, 0, {  1592,  -8882}, {0x00, 0x7f, 0x00, 0xff}}},
    250     {{{   -50,      0,      0}, 0, {  5204,  -5268}, {0x00, 0x7f, 0x00, 0xff}}},
    251     {{{   -43,      0,     26}, 0, {  3882,  -7560}, {0x00, 0x7f, 0x00, 0xff}}},
    252     {{{    26,      0,    -43}, 0, { -1052,    990}, {0x00, 0x7f, 0x00, 0xff}}},
    253     {{{     0,      0,    -50}, 0, {  1592,    990}, {0x00, 0x7f, 0x00, 0xff}}},
    254     {{{    44,      0,    -25}, 0, { -3342,   -332}, {0x00, 0x7f, 0x00, 0xff}}},
    255     {{{   -25,      0,    -43}, 0, {  3882,   -332}, {0x00, 0x7f, 0x00, 0xff}}},
    256     {{{    51,      0,      0}, 0, { -4666,  -2624}, {0x00, 0x7f, 0x00, 0xff}}},
    257     {{{    44,      0,     26}, 0, { -4666,  -5268}, {0x00, 0x7f, 0x00, 0xff}}},
    258 };
    259 
    260 // 0x0500F4C8 - 0x0500F660
    261 const Gfx haunted_cage_seg5_dl_0500F4C8[] = {
    262     gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, haunted_cage_seg5_texture_0500D288),
    263     gsDPLoadSync(),
    264     gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 16 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
    265     gsSPLight(&haunted_cage_seg5_lights_0500C258.l, 1),
    266     gsSPLight(&haunted_cage_seg5_lights_0500C258.a, 2),
    267     gsSPVertex(haunted_cage_seg5_vertex_0500EA88, 15, 0),
    268     gsSP2Triangles( 0,  1,  2, 0x0,  3,  4,  5, 0x0),
    269     gsSP2Triangles( 6,  7,  8, 0x0,  9, 10, 11, 0x0),
    270     gsSP1Triangle(12, 13, 14, 0x0),
    271     gsSPVertex(haunted_cage_seg5_vertex_0500EB78, 15, 0),
    272     gsSP2Triangles( 0,  1,  2, 0x0,  3,  4,  5, 0x0),
    273     gsSP2Triangles( 6,  7,  8, 0x0,  9, 10, 11, 0x0),
    274     gsSP1Triangle(12, 13, 14, 0x0),
    275     gsSPVertex(haunted_cage_seg5_vertex_0500EC68, 6, 0),
    276     gsSP2Triangles( 0,  1,  2, 0x0,  3,  4,  5, 0x0),
    277     gsSPLight(&haunted_cage_seg5_lights_0500C270.l, 1),
    278     gsSPLight(&haunted_cage_seg5_lights_0500C270.a, 2),
    279     gsSPVertex(haunted_cage_seg5_vertex_0500ECC8, 15, 0),
    280     gsSP2Triangles( 0,  1,  2, 0x0,  3,  4,  5, 0x0),
    281     gsSP2Triangles( 6,  7,  8, 0x0,  3,  9,  4, 0x0),
    282     gsSP2Triangles( 6, 10,  7, 0x0, 11, 12, 13, 0x0),
    283     gsSP1Triangle(11, 13, 14, 0x0),
    284     gsSPVertex(haunted_cage_seg5_vertex_0500EDB8, 14, 0),
    285     gsSP2Triangles( 0,  1,  2, 0x0,  0,  3,  1, 0x0),
    286     gsSP2Triangles( 4,  5,  6, 0x0,  4,  7,  5, 0x0),
    287     gsSP2Triangles( 8,  9, 10, 0x0, 11, 12, 13, 0x0),
    288     gsSPVertex(haunted_cage_seg5_vertex_0500EE98, 15, 0),
    289     gsSP2Triangles( 0,  1,  2, 0x0,  0,  3,  1, 0x0),
    290     gsSP2Triangles( 4,  5,  6, 0x0,  4,  6,  7, 0x0),
    291     gsSP2Triangles( 8,  9, 10, 0x0,  8, 11,  9, 0x0),
    292     gsSP1Triangle(12, 13, 14, 0x0),
    293     gsSPVertex(haunted_cage_seg5_vertex_0500EF88, 8, 0),
    294     gsSP2Triangles( 0,  1,  2, 0x0,  0,  3,  1, 0x0),
    295     gsSP2Triangles( 4,  5,  6, 0x0,  4,  7,  5, 0x0),
    296     gsSPEndDisplayList(),
    297 };
    298 
    299 // 0x0500F660 - 0x0500F760
    300 const Gfx haunted_cage_seg5_dl_0500F660[] = {
    301     gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, haunted_cage_seg5_texture_0500CA88),
    302     gsDPLoadSync(),
    303     gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
    304     gsSPVertex(haunted_cage_seg5_vertex_0500F008, 16, 0),
    305     gsSP2Triangles( 0,  1,  2, 0x0,  3,  4,  5, 0x0),
    306     gsSP2Triangles( 6,  7,  8, 0x0,  3,  9,  4, 0x0),
    307     gsSP2Triangles(10, 11, 12, 0x0, 13, 14, 15, 0x0),
    308     gsSPVertex(haunted_cage_seg5_vertex_0500F108, 16, 0),
    309     gsSP2Triangles( 0,  1,  2, 0x0,  3,  4,  5, 0x0),
    310     gsSP2Triangles( 6,  7,  8, 0x0,  9, 10, 11, 0x0),
    311     gsSP2Triangles(12, 13, 14, 0x0, 13, 15, 14, 0x0),
    312     gsSPVertex(haunted_cage_seg5_vertex_0500F208, 16, 0),
    313     gsSP2Triangles( 0,  1,  2, 0x0,  3,  4,  5, 0x0),
    314     gsSP2Triangles( 6,  7,  8, 0x0,  9, 10, 11, 0x0),
    315     gsSP2Triangles(12, 13, 14, 0x0,  6, 15,  7, 0x0),
    316     gsSPVertex(haunted_cage_seg5_vertex_0500F308, 16, 0),
    317     gsSP2Triangles( 0,  1,  2, 0x0,  3,  4,  5, 0x0),
    318     gsSP2Triangles( 6,  7,  8, 0x0,  9, 10, 11, 0x0),
    319     gsSP2Triangles(12, 13, 14, 0x0, 15, 12, 14, 0x0),
    320     gsSPEndDisplayList(),
    321 };
    322 
    323 // 0x0500F760 - 0x0500F7D8
    324 const Gfx haunted_cage_seg5_dl_0500F760[] = {
    325     gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, haunted_cage_seg5_texture_0500C288),
    326     gsDPLoadSync(),
    327     gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
    328     gsSPVertex(haunted_cage_seg5_vertex_0500F408, 12, 0),
    329     gsSP2Triangles( 0,  1,  2, 0x0,  0,  3,  1, 0x0),
    330     gsSP2Triangles( 0,  4,  5, 0x0,  0,  5,  3, 0x0),
    331     gsSP2Triangles( 0,  6,  7, 0x0,  0,  8,  6, 0x0),
    332     gsSP2Triangles( 0,  7,  9, 0x0,  0, 10,  8, 0x0),
    333     gsSP2Triangles( 0, 11, 10, 0x0,  0,  2, 11, 0x0),
    334     gsSPEndDisplayList(),
    335 };
    336 
    337 // 0x0500F7D8 - 0x0500F888
    338 const Gfx haunted_cage_seg5_dl_0500F7D8[] = {
    339     gsDPPipeSync(),
    340     gsDPSetCombineMode(G_CC_MODULATERGB, G_CC_MODULATERGB),
    341     gsSPClearGeometryMode(G_CULL_BACK | G_SHADING_SMOOTH),
    342     gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD),
    343     gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
    344     gsDPTileSync(),
    345     gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 4, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD),
    346     gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (16 - 1) << G_TEXTURE_IMAGE_FRAC),
    347     gsSPDisplayList(haunted_cage_seg5_dl_0500F4C8),
    348     gsDPTileSync(),
    349     gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_CLAMP, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD),
    350     gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
    351     gsSPDisplayList(haunted_cage_seg5_dl_0500F660),
    352     gsDPTileSync(),
    353     gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD),
    354     gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
    355     gsSPDisplayList(haunted_cage_seg5_dl_0500F760),
    356     gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
    357     gsDPPipeSync(),
    358     gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
    359     gsSPSetGeometryMode(G_CULL_BACK | G_SHADING_SMOOTH),
    360     gsSPEndDisplayList(),
    361 };
    362 
    363 // 0x0500F888
    364 static const Lights1 haunted_cage_seg5_lights_0500F888 = gdSPDefLights1(
    365     0x66, 0x66, 0x66,
    366     0xff, 0xff, 0xff, 0x28, 0x28, 0x28
    367 );
    368 
    369 // 0x0500F8A0
    370 static const Vtx haunted_cage_seg5_vertex_0500F8A0[] = {
    371     {{{   -19,      0,     10}, 0, {  3034,    479}, {0x81, 0x00, 0x00, 0xff}}},
    372     {{{   -19,     28,    -19}, 0, {     0,  -2350}, {0x81, 0x00, 0x00, 0xff}}},
    373     {{{   -19,      0,    -19}, 0, {     0,    479}, {0x81, 0x00, 0x00, 0xff}}},
    374     {{{    20,      0,     10}, 0, {  4056,    479}, {0x00, 0x00, 0x7f, 0xff}}},
    375     {{{   -19,     28,     10}, 0, {     0,  -2350}, {0x00, 0x00, 0x7f, 0xff}}},
    376     {{{   -19,      0,     10}, 0, {     0,    479}, {0x00, 0x00, 0x7f, 0xff}}},
    377     {{{    20,     28,     10}, 0, {  4056,  -2350}, {0x00, 0x00, 0x7f, 0xff}}},
    378     {{{   -19,      0,    -19}, 0, {  4056,    479}, {0x00, 0x00, 0x81, 0xff}}},
    379     {{{    20,     28,    -19}, 0, {     0,  -2350}, {0x00, 0x00, 0x81, 0xff}}},
    380     {{{    20,      0,    -19}, 0, {     0,    479}, {0x00, 0x00, 0x81, 0xff}}},
    381     {{{   -19,     28,    -19}, 0, {  4056,  -2350}, {0x00, 0x00, 0x81, 0xff}}},
    382     {{{    20,     28,    -19}, 0, {  4056,  -2587}, {0x00, 0x7f, 0x00, 0xff}}},
    383     {{{   -19,     28,    -19}, 0, {     0,  -2587}, {0x00, 0x7f, 0x00, 0xff}}},
    384     {{{   -19,     28,     10}, 0, {     0,    479}, {0x00, 0x7f, 0x00, 0xff}}},
    385     {{{    20,     28,     10}, 0, {  4056,    479}, {0x00, 0x7f, 0x00, 0xff}}},
    386 };
    387 
    388 // 0x0500F990
    389 static const Vtx haunted_cage_seg5_vertex_0500F990[] = {
    390     {{{   -30,      0,     39}, 0, {   990,    479}, {0x81, 0x00, 0x00, 0xff}}},
    391     {{{   -30,     10,     39}, 0, {   990,   -543}, {0x81, 0x00, 0x00, 0xff}}},
    392     {{{   -30,     10,     29}, 0, {     0,   -543}, {0x81, 0x00, 0x00, 0xff}}},
    393     {{{   -19,      0,     10}, 0, {  3034,    479}, {0x81, 0x00, 0x00, 0xff}}},
    394     {{{   -19,     28,     10}, 0, {  3034,  -2350}, {0x81, 0x00, 0x00, 0xff}}},
    395     {{{   -19,     28,    -19}, 0, {     0,  -2350}, {0x81, 0x00, 0x00, 0xff}}},
    396     {{{    20,      0,    -19}, 0, {  3034,    479}, {0x7f, 0x00, 0x00, 0xff}}},
    397     {{{    20,     28,     10}, 0, {     0,  -2350}, {0x7f, 0x00, 0x00, 0xff}}},
    398     {{{    20,      0,     10}, 0, {     0,    479}, {0x7f, 0x00, 0x00, 0xff}}},
    399     {{{    20,     28,    -19}, 0, {  3034,  -2350}, {0x7f, 0x00, 0x00, 0xff}}},
    400     {{{   -19,      0,     39}, 0, {   990,    479}, {0x00, 0x00, 0x7f, 0xff}}},
    401     {{{   -30,     10,     39}, 0, {     0,   -543}, {0x00, 0x00, 0x7f, 0xff}}},
    402     {{{   -30,      0,     39}, 0, {     0,    479}, {0x00, 0x00, 0x7f, 0xff}}},
    403     {{{   -19,     10,     39}, 0, {   990,   -543}, {0x00, 0x00, 0x7f, 0xff}}},
    404     {{{   -30,      0,     29}, 0, {     0,    479}, {0x81, 0x00, 0x00, 0xff}}},
    405 };
    406 
    407 // 0x0500FA80
    408 static const Vtx haunted_cage_seg5_vertex_0500FA80[] = {
    409     {{{   -30,      0,     29}, 0, {   990,    479}, {0x00, 0x00, 0x81, 0xff}}},
    410     {{{   -30,     10,     29}, 0, {   990,   -543}, {0x00, 0x00, 0x81, 0xff}}},
    411     {{{   -19,     10,     29}, 0, {     0,   -543}, {0x00, 0x00, 0x81, 0xff}}},
    412     {{{   -19,      0,     29}, 0, {     0,    479}, {0x00, 0x00, 0x81, 0xff}}},
    413     {{{   -19,      0,     29}, 0, {   990,    479}, {0x7f, 0x00, 0x00, 0xff}}},
    414     {{{   -19,     10,     39}, 0, {    38,   -616}, {0x7f, 0x00, 0x00, 0xff}}},
    415     {{{   -19,      0,     39}, 0, {     0,    408}, {0x7f, 0x00, 0x00, 0xff}}},
    416     {{{   -19,     10,     29}, 0, {  1062,   -545}, {0x7f, 0x00, 0x00, 0xff}}},
    417     {{{   -19,     10,     39}, 0, {   990,    479}, {0x00, 0x7f, 0x00, 0xff}}},
    418     {{{   -30,     10,     29}, 0, {     0,   -543}, {0x00, 0x7f, 0x00, 0xff}}},
    419     {{{   -30,     10,     39}, 0, {     0,    479}, {0x00, 0x7f, 0x00, 0xff}}},
    420     {{{   -19,     10,     29}, 0, {   990,   -543}, {0x00, 0x7f, 0x00, 0xff}}},
    421 };
    422 
    423 // 0x0500FB40 - 0x0500FC28
    424 const Gfx haunted_cage_seg5_dl_0500FB40[] = {
    425     gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, haunted_cage_seg5_texture_0500D688),
    426     gsDPLoadSync(),
    427     gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 16 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
    428     gsSPLight(&haunted_cage_seg5_lights_0500F888.l, 1),
    429     gsSPLight(&haunted_cage_seg5_lights_0500F888.a, 2),
    430     gsSPVertex(haunted_cage_seg5_vertex_0500F8A0, 15, 0),
    431     gsSP2Triangles( 0,  1,  2, 0x0,  3,  4,  5, 0x0),
    432     gsSP2Triangles( 3,  6,  4, 0x0,  7,  8,  9, 0x0),
    433     gsSP2Triangles( 7, 10,  8, 0x0, 11, 12, 13, 0x0),
    434     gsSP1Triangle(11, 13, 14, 0x0),
    435     gsSPVertex(haunted_cage_seg5_vertex_0500F990, 15, 0),
    436     gsSP2Triangles( 0,  1,  2, 0x0,  3,  4,  5, 0x0),
    437     gsSP2Triangles( 6,  7,  8, 0x0,  6,  9,  7, 0x0),
    438     gsSP2Triangles(10, 11, 12, 0x0, 10, 13, 11, 0x0),
    439     gsSP1Triangle( 0,  2, 14, 0x0),
    440     gsSPVertex(haunted_cage_seg5_vertex_0500FA80, 12, 0),
    441     gsSP2Triangles( 0,  1,  2, 0x0,  0,  2,  3, 0x0),
    442     gsSP2Triangles( 4,  5,  6, 0x0,  4,  7,  5, 0x0),
    443     gsSP2Triangles( 8,  9, 10, 0x0,  8, 11,  9, 0x0),
    444     gsSPEndDisplayList(),
    445 };
    446 
    447 // 0x0500FC28 - 0x0500FC98
    448 const Gfx haunted_cage_seg5_dl_0500FC28[] = {
    449     gsDPPipeSync(),
    450     gsDPSetCombineMode(G_CC_MODULATERGB, G_CC_MODULATERGB),
    451     gsSPClearGeometryMode(G_SHADING_SMOOTH),
    452     gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD),
    453     gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
    454     gsDPTileSync(),
    455     gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 4, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD),
    456     gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (16 - 1) << G_TEXTURE_IMAGE_FRAC),
    457     gsSPDisplayList(haunted_cage_seg5_dl_0500FB40),
    458     gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
    459     gsDPPipeSync(),
    460     gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
    461     gsSPSetGeometryMode(G_SHADING_SMOOTH),
    462     gsSPEndDisplayList(),
    463 };
    464 
    465 // 0x0500FC98
    466 static const Lights1 haunted_cage_seg5_lights_0500FC98 = gdSPDefLights1(
    467     0x2c, 0x2c, 0x2c,
    468     0xb2, 0xb2, 0xb2, 0x28, 0x28, 0x28
    469 );
    470 
    471 // 0x0500FCB0
    472 static const Vtx haunted_cage_seg5_vertex_0500FCB0[] = {
    473     {{{   -43,     10,     26}, 0, {  8484,    990}, {0x86, 0x00, 0x21, 0xff}}},
    474     {{{   -43,     64,     26}, 0, {  8484,   6370}, {0x86, 0x00, 0x21, 0xff}}},
    475     {{{   -50,     64,      0}, 0, { 10188,   6370}, {0x86, 0x00, 0x21, 0xff}}},
    476     {{{    51,     10,      0}, 0, {     0,    990}, {0x7a, 0x00, 0x21, 0xff}}},
    477     {{{    51,     64,      0}, 0, {     0,   6370}, {0x7a, 0x00, 0x21, 0xff}}},
    478     {{{    44,     64,     26}, 0, {  1672,   6370}, {0x7a, 0x00, 0x21, 0xff}}},
    479     {{{    44,     10,     26}, 0, {  1672,    990}, {0x7a, 0x00, 0x21, 0xff}}},
    480     {{{    44,     10,     26}, 0, {  1672,    990}, {0x59, 0x00, 0x59, 0xff}}},
    481     {{{    44,     64,     26}, 0, {  1672,   6370}, {0x59, 0x00, 0x59, 0xff}}},
    482     {{{    26,     64,     44}, 0, {  3374,   6370}, {0x59, 0x00, 0x59, 0xff}}},
    483     {{{    26,     10,     44}, 0, {  3374,    990}, {0x59, 0x00, 0x59, 0xff}}},
    484     {{{    26,     10,     44}, 0, {  3374,    990}, {0x21, 0x00, 0x7a, 0xff}}},
    485     {{{    26,     64,     44}, 0, {  3374,   6370}, {0x21, 0x00, 0x7a, 0xff}}},
    486     {{{     0,     64,     51}, 0, {  5078,   6370}, {0x21, 0x00, 0x7a, 0xff}}},
    487     {{{     0,     10,     51}, 0, {  5078,    990}, {0x21, 0x00, 0x7a, 0xff}}},
    488 };
    489 
    490 // 0x0500FDA0
    491 static const Vtx haunted_cage_seg5_vertex_0500FDA0[] = {
    492     {{{     0,     10,     51}, 0, {  5078,    990}, {0xde, 0x00, 0x7a, 0xff}}},
    493     {{{     0,     64,     51}, 0, {  5078,   6370}, {0xde, 0x00, 0x7a, 0xff}}},
    494     {{{   -25,     64,     44}, 0, {  6782,   6370}, {0xde, 0x00, 0x7a, 0xff}}},
    495     {{{   -25,     10,     44}, 0, {  6782,    990}, {0xde, 0x00, 0x7a, 0xff}}},
    496     {{{   -25,     10,     44}, 0, {  6782,    990}, {0xa7, 0x00, 0x59, 0xff}}},
    497     {{{   -25,     64,     44}, 0, {  6782,   6370}, {0xa7, 0x00, 0x59, 0xff}}},
    498     {{{   -43,     64,     26}, 0, {  8484,   6370}, {0xa7, 0x00, 0x59, 0xff}}},
    499     {{{   -43,     10,     26}, 0, {  8484,    990}, {0xa7, 0x00, 0x59, 0xff}}},
    500     {{{    26,     10,    -43}, 0, { 17002,    990}, {0x59, 0x00, 0xa7, 0xff}}},
    501     {{{    44,     64,    -25}, 0, { 18704,   6370}, {0x59, 0x00, 0xa7, 0xff}}},
    502     {{{    44,     10,    -25}, 0, { 18704,    990}, {0x59, 0x00, 0xa7, 0xff}}},
    503     {{{   -43,     10,     26}, 0, {  8484,    990}, {0x86, 0x00, 0x21, 0xff}}},
    504     {{{   -50,     64,      0}, 0, { 10188,   6370}, {0x86, 0x00, 0x21, 0xff}}},
    505     {{{   -50,     10,      0}, 0, { 10188,    990}, {0x86, 0x00, 0x21, 0xff}}},
    506 };
    507 
    508 // 0x0500FE80
    509 static const Vtx haunted_cage_seg5_vertex_0500FE80[] = {
    510     {{{   -50,     10,      0}, 0, { 10188,    990}, {0x86, 0x00, 0xde, 0xff}}},
    511     {{{   -50,     64,      0}, 0, { 10188,   6370}, {0x86, 0x00, 0xde, 0xff}}},
    512     {{{   -43,     64,    -25}, 0, { 11892,   6370}, {0x86, 0x00, 0xde, 0xff}}},
    513     {{{   -43,     10,    -25}, 0, { 11892,    990}, {0x86, 0x00, 0xde, 0xff}}},
    514     {{{   -43,     10,    -25}, 0, { 11892,    990}, {0xa7, 0x00, 0xa7, 0xff}}},
    515     {{{   -43,     64,    -25}, 0, { 11892,   6370}, {0xa7, 0x00, 0xa7, 0xff}}},
    516     {{{   -25,     64,    -43}, 0, { 13594,   6370}, {0xa7, 0x00, 0xa7, 0xff}}},
    517     {{{   -25,     10,    -43}, 0, { 13594,    990}, {0xa7, 0x00, 0xa7, 0xff}}},
    518     {{{   -25,     10,    -43}, 0, { 13594,    990}, {0xde, 0x00, 0x86, 0xff}}},
    519     {{{   -25,     64,    -43}, 0, { 13594,   6370}, {0xde, 0x00, 0x86, 0xff}}},
    520     {{{     0,     64,    -50}, 0, { 15298,   6370}, {0xde, 0x00, 0x86, 0xff}}},
    521     {{{     0,     10,    -50}, 0, { 15298,    990}, {0xde, 0x00, 0x86, 0xff}}},
    522     {{{     0,     10,    -50}, 0, { 15298,    990}, {0x21, 0x00, 0x86, 0xff}}},
    523     {{{     0,     64,    -50}, 0, { 15298,   6370}, {0x21, 0x00, 0x86, 0xff}}},
    524     {{{    26,     64,    -43}, 0, { 17002,   6370}, {0x21, 0x00, 0x86, 0xff}}},
    525     {{{    26,     10,    -43}, 0, { 17002,    990}, {0x21, 0x00, 0x86, 0xff}}},
    526 };
    527 
    528 // 0x0500FF80
    529 static const Vtx haunted_cage_seg5_vertex_0500FF80[] = {
    530     {{{    26,     10,    -43}, 0, { 17002,    990}, {0x59, 0x00, 0xa7, 0xff}}},
    531     {{{    26,     64,    -43}, 0, { 17002,   6370}, {0x59, 0x00, 0xa7, 0xff}}},
    532     {{{    44,     64,    -25}, 0, { 18704,   6370}, {0x59, 0x00, 0xa7, 0xff}}},
    533     {{{    44,     10,    -25}, 0, { 18704,    990}, {0x7a, 0x00, 0xde, 0xff}}},
    534     {{{    44,     64,    -25}, 0, { 18704,   6370}, {0x7a, 0x00, 0xde, 0xff}}},
    535     {{{    51,     64,      0}, 0, { 20408,   6370}, {0x7a, 0x00, 0xde, 0xff}}},
    536     {{{    51,     10,      0}, 0, { 20408,    990}, {0x7a, 0x00, 0xde, 0xff}}},
    537 };
    538 
    539 // 0x0500FFF0 - 0x05010100
    540 const Gfx haunted_cage_seg5_dl_0500FFF0[] = {
    541     gsDPSetTextureImage(G_IM_FMT_RGBA, G_IM_SIZ_16b, 1, haunted_cage_seg5_texture_0500DA88),
    542     gsDPLoadSync(),
    543     gsDPLoadBlock(G_TX_LOADTILE, 0, 0, 32 * 32 - 1, CALC_DXT(32, G_IM_SIZ_16b_BYTES)),
    544     gsSPLight(&haunted_cage_seg5_lights_0500FC98.l, 1),
    545     gsSPLight(&haunted_cage_seg5_lights_0500FC98.a, 2),
    546     gsSPVertex(haunted_cage_seg5_vertex_0500FCB0, 15, 0),
    547     gsSP2Triangles( 0,  1,  2, 0x0,  3,  4,  5, 0x0),
    548     gsSP2Triangles( 3,  5,  6, 0x0,  7,  8,  9, 0x0),
    549     gsSP2Triangles( 7,  9, 10, 0x0, 11, 12, 13, 0x0),
    550     gsSP1Triangle(11, 13, 14, 0x0),
    551     gsSPVertex(haunted_cage_seg5_vertex_0500FDA0, 14, 0),
    552     gsSP2Triangles( 0,  1,  2, 0x0,  0,  2,  3, 0x0),
    553     gsSP2Triangles( 4,  5,  6, 0x0,  4,  6,  7, 0x0),
    554     gsSP2Triangles( 8,  9, 10, 0x0, 11, 12, 13, 0x0),
    555     gsSPVertex(haunted_cage_seg5_vertex_0500FE80, 16, 0),
    556     gsSP2Triangles( 0,  1,  2, 0x0,  0,  2,  3, 0x0),
    557     gsSP2Triangles( 4,  5,  6, 0x0,  4,  6,  7, 0x0),
    558     gsSP2Triangles( 8,  9, 10, 0x0,  8, 10, 11, 0x0),
    559     gsSP2Triangles(12, 13, 14, 0x0, 12, 14, 15, 0x0),
    560     gsSPVertex(haunted_cage_seg5_vertex_0500FF80, 7, 0),
    561     gsSP2Triangles( 0,  1,  2, 0x0,  3,  4,  5, 0x0),
    562     gsSP1Triangle( 3,  5,  6, 0x0),
    563     gsSPEndDisplayList(),
    564 };
    565 
    566 // 0x05010100 - 0x05010170
    567 const Gfx haunted_cage_seg5_dl_05010100[] = {
    568     gsDPPipeSync(),
    569     gsDPSetCombineMode(G_CC_MODULATERGBA, G_CC_MODULATERGBA),
    570     gsSPClearGeometryMode(G_CULL_BACK | G_SHADING_SMOOTH),
    571     gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, G_TX_LOADTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, G_TX_NOMASK, G_TX_NOLOD),
    572     gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_ON),
    573     gsDPTileSync(),
    574     gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 8, 0, G_TX_RENDERTILE, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP | G_TX_NOMIRROR, 5, G_TX_NOLOD),
    575     gsDPSetTileSize(0, 0, 0, (32 - 1) << G_TEXTURE_IMAGE_FRAC, (32 - 1) << G_TEXTURE_IMAGE_FRAC),
    576     gsSPDisplayList(haunted_cage_seg5_dl_0500FFF0),
    577     gsSPTexture(0xFFFF, 0xFFFF, 0, G_TX_RENDERTILE, G_OFF),
    578     gsDPPipeSync(),
    579     gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
    580     gsSPSetGeometryMode(G_CULL_BACK | G_SHADING_SMOOTH),
    581     gsSPEndDisplayList(),
    582 };