mirror of
https://github.com/coop-deluxe/sm64coopdx.git
synced 2024-11-25 21:45:12 +00:00
173 lines
7.4 KiB
C
173 lines
7.4 KiB
C
Lights1 koth_active_f3d_material_lights = gdSPDefLights1(
|
|
0x7F, 0x7F, 0x7F,
|
|
0xFE, 0xFE, 0xFE, 0x28, 0x28, 0x28);
|
|
|
|
Gfx koth_active_koth_active_ia8_aligner[] = {gsSPEndDisplayList()};
|
|
u8 koth_active_koth_active_ia8[] = {
|
|
0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
|
|
0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf,
|
|
0x30, 0xaf, 0xaf, 0xaf, 0xaf, 0xaf, 0xaf, 0xaf,
|
|
0xaf, 0xaf, 0xaf, 0xaf, 0xaf, 0xaf, 0xaf, 0xaf,
|
|
0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
|
|
0x30, 0x30, 0xaf, 0xaf, 0xaf, 0xaf, 0xaf, 0xaf,
|
|
0x30, 0x30, 0x30, 0x30, 0x30, 0x9f, 0x9f, 0x9f,
|
|
0x9f, 0x9f, 0x9f, 0x9f, 0x9f, 0x9f, 0x9f, 0x9f,
|
|
0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
|
|
0x30, 0x30, 0x30, 0x30, 0xaf, 0xaf, 0xaf, 0xaf,
|
|
0x30, 0x30, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf,
|
|
0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf,
|
|
0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
|
|
0x30, 0xaf, 0xaf, 0xaf, 0xaf, 0xaf, 0xaf, 0xaf,
|
|
0xaf, 0xaf, 0xaf, 0xaf, 0xaf, 0xaf, 0xaf, 0xaf,
|
|
0xaf, 0xaf, 0xaf, 0xaf, 0xaf, 0xaf, 0xaf, 0xaf,
|
|
0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0xbf,
|
|
0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf,
|
|
0x30, 0x30, 0x30, 0x30, 0xcf, 0xcf, 0xcf, 0xcf,
|
|
0xcf, 0xcf, 0xcf, 0xcf, 0xcf, 0xcf, 0xcf, 0xcf,
|
|
0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
|
|
0x30, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf,
|
|
0x30, 0x30, 0x30, 0xcf, 0xcf, 0xcf, 0xcf, 0xcf,
|
|
0xcf, 0xcf, 0xcf, 0xcf, 0xcf, 0xcf, 0xcf, 0xcf,
|
|
0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
|
|
0x30, 0x30, 0x30, 0x30, 0xdf, 0xdf, 0xdf, 0xdf,
|
|
0x30, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf,
|
|
0xdf, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf,
|
|
0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
|
|
0x30, 0xcf, 0xcf, 0xcf, 0xcf, 0xcf, 0xcf, 0xcf,
|
|
0xaf, 0xaf, 0xaf, 0xaf, 0xaf, 0xaf, 0xaf, 0xaf,
|
|
0xaf, 0xaf, 0xaf, 0xaf, 0xaf, 0xaf, 0xaf, 0xaf,
|
|
0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
|
|
0x30, 0x30, 0x30, 0x30, 0x30, 0xdf, 0xdf, 0xdf,
|
|
0x30, 0x30, 0x30, 0x30, 0xef, 0xef, 0xef, 0xef,
|
|
0xef, 0xef, 0xef, 0xef, 0xef, 0xef, 0xef, 0xef,
|
|
0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
|
|
0x30, 0x30, 0x30, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf,
|
|
0x30, 0x30, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf,
|
|
0xdf, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf,
|
|
0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
|
|
0xef, 0xef, 0xef, 0xef, 0xef, 0xef, 0xef, 0xef,
|
|
0x30, 0x30, 0x30, 0x30, 0x30, 0xff, 0xff, 0xff,
|
|
0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,
|
|
0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
|
|
0x30, 0x30, 0xef, 0xef, 0xef, 0xef, 0xef, 0xef,
|
|
0x30, 0x30, 0x30, 0x30, 0xdf, 0xdf, 0xdf, 0xdf,
|
|
0xdf, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf,
|
|
0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
|
|
0x30, 0x30, 0x30, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf,
|
|
0x30, 0x30, 0x30, 0xef, 0xef, 0xef, 0xef, 0xef,
|
|
0xef, 0xef, 0xef, 0xef, 0xef, 0xef, 0xef, 0xef,
|
|
0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
|
|
0x30, 0x30, 0x30, 0x30, 0x30, 0xdf, 0xdf, 0xdf,
|
|
0x30, 0x30, 0x30, 0x30, 0xbf, 0xbf, 0xbf, 0xbf,
|
|
0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf, 0xbf,
|
|
0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
|
|
0x30, 0x30, 0xcf, 0xcf, 0xcf, 0xcf, 0xcf, 0xcf,
|
|
0x30, 0x30, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf,
|
|
0xdf, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf,
|
|
0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30, 0x30,
|
|
0xdf, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf, 0xdf,
|
|
0xcf, 0xcf, 0xcf, 0xcf, 0xcf, 0xcf, 0xcf, 0xcf,
|
|
0xcf, 0xcf, 0xcf, 0xcf, 0xcf, 0xcf, 0xcf, 0xcf,
|
|
|
|
};
|
|
|
|
Vtx koth_active_Cylinder_mesh_layer_4_vtx_0[32] = {
|
|
{{{0, -3, -400},0, {470, 112},{0x30, 0x0, 0x8A, 0xFF}}},
|
|
{{{0, 60, -400},0, {10, 112},{0x30, 0x0, 0x8A, 0xFF}}},
|
|
{{{283, 60, -283},0, {10, 1392},{0x30, 0x0, 0x8A, 0xFF}}},
|
|
{{{283, -3, -283},0, {470, 1392},{0x30, 0x0, 0x8A, 0xFF}}},
|
|
{{{283, -3, -283},0, {470, -144},{0x76, 0x0, 0xD0, 0xFF}}},
|
|
{{{283, 60, -283},0, {10, -144},{0x76, 0x0, 0xD0, 0xFF}}},
|
|
{{{400, 60, 0},0, {10, 1136},{0x76, 0x0, 0xD0, 0xFF}}},
|
|
{{{400, -3, 0},0, {470, 1136},{0x76, 0x0, 0xD0, 0xFF}}},
|
|
{{{400, -3, 0},0, {470, -400},{0x76, 0x0, 0x30, 0xFF}}},
|
|
{{{400, 60, 0},0, {10, -400},{0x76, 0x0, 0x30, 0xFF}}},
|
|
{{{283, 60, 283},0, {10, 880},{0x76, 0x0, 0x30, 0xFF}}},
|
|
{{{283, -3, 283},0, {470, 880},{0x76, 0x0, 0x30, 0xFF}}},
|
|
{{{283, -3, 283},0, {470, -656},{0x30, 0x0, 0x76, 0xFF}}},
|
|
{{{283, 60, 283},0, {10, -656},{0x30, 0x0, 0x76, 0xFF}}},
|
|
{{{0, 60, 400},0, {10, 624},{0x30, 0x0, 0x76, 0xFF}}},
|
|
{{{0, -3, 400},0, {470, 624},{0x30, 0x0, 0x76, 0xFF}}},
|
|
{{{0, -3, 400},0, {470, 112},{0xD0, 0x0, 0x76, 0xFF}}},
|
|
{{{0, 60, 400},0, {10, 112},{0xD0, 0x0, 0x76, 0xFF}}},
|
|
{{{-283, 60, 283},0, {10, 1392},{0xD0, 0x0, 0x76, 0xFF}}},
|
|
{{{-283, -3, 283},0, {470, 1392},{0xD0, 0x0, 0x76, 0xFF}}},
|
|
{{{-283, -3, 283},0, {470, -144},{0x8A, 0x0, 0x30, 0xFF}}},
|
|
{{{-283, 60, 283},0, {10, -144},{0x8A, 0x0, 0x30, 0xFF}}},
|
|
{{{-400, 60, 0},0, {10, 1136},{0x8A, 0x0, 0x30, 0xFF}}},
|
|
{{{-400, -3, 0},0, {470, 1136},{0x8A, 0x0, 0x30, 0xFF}}},
|
|
{{{-400, -3, 0},0, {470, -400},{0x8A, 0x0, 0xD0, 0xFF}}},
|
|
{{{-400, 60, 0},0, {10, -400},{0x8A, 0x0, 0xD0, 0xFF}}},
|
|
{{{-283, 60, -283},0, {10, 880},{0x8A, 0x0, 0xD0, 0xFF}}},
|
|
{{{-283, -3, -283},0, {470, 880},{0x8A, 0x0, 0xD0, 0xFF}}},
|
|
{{{-283, -3, -283},0, {470, -656},{0xD0, 0x0, 0x8A, 0xFF}}},
|
|
{{{-283, 60, -283},0, {10, -656},{0xD0, 0x0, 0x8A, 0xFF}}},
|
|
{{{0, 60, -400},0, {10, 624},{0xD0, 0x0, 0x8A, 0xFF}}},
|
|
{{{0, -3, -400},0, {470, 624},{0xD0, 0x0, 0x8A, 0xFF}}},
|
|
};
|
|
|
|
Gfx koth_active_Cylinder_mesh_layer_4_tri_0[] = {
|
|
gsSPVertex(koth_active_Cylinder_mesh_layer_4_vtx_0 + 0, 16, 0),
|
|
gsSP1Triangle(0, 1, 2, 0),
|
|
gsSP1Triangle(0, 2, 3, 0),
|
|
gsSP1Triangle(4, 5, 6, 0),
|
|
gsSP1Triangle(4, 6, 7, 0),
|
|
gsSP1Triangle(8, 9, 10, 0),
|
|
gsSP1Triangle(8, 10, 11, 0),
|
|
gsSP1Triangle(12, 13, 14, 0),
|
|
gsSP1Triangle(12, 14, 15, 0),
|
|
gsSPVertex(koth_active_Cylinder_mesh_layer_4_vtx_0 + 16, 16, 0),
|
|
gsSP1Triangle(0, 1, 2, 0),
|
|
gsSP1Triangle(0, 2, 3, 0),
|
|
gsSP1Triangle(4, 5, 6, 0),
|
|
gsSP1Triangle(4, 6, 7, 0),
|
|
gsSP1Triangle(8, 9, 10, 0),
|
|
gsSP1Triangle(8, 10, 11, 0),
|
|
gsSP1Triangle(12, 13, 14, 0),
|
|
gsSP1Triangle(12, 14, 15, 0),
|
|
gsSPEndDisplayList(),
|
|
};
|
|
|
|
|
|
Gfx mat_koth_active_f3d_material[] = {
|
|
gsDPPipeSync(),
|
|
gsDPSetCombineLERP(TEXEL0, 0, SHADE, 0, TEXEL0, 0, ENVIRONMENT, 0, TEXEL0, 0, SHADE, 0, TEXEL0, 0, ENVIRONMENT, 0),
|
|
gsSPClearGeometryMode(G_CULL_BACK),
|
|
gsSPTexture(65535, 65535, 0, 0, 1),
|
|
gsDPTileSync(),
|
|
gsDPSetTextureImage(G_IM_FMT_IA, G_IM_SIZ_8b_LOAD_BLOCK, 1, koth_active_koth_active_ia8),
|
|
gsDPSetTile(G_IM_FMT_IA, G_IM_SIZ_8b_LOAD_BLOCK, 0, 0, 7, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, 0, G_TX_WRAP | G_TX_NOMIRROR, 4, 0),
|
|
gsDPLoadSync(),
|
|
gsDPLoadBlock(7, 0, 0, 255, 1024),
|
|
gsDPPipeSync(),
|
|
gsDPSetTile(G_IM_FMT_IA, G_IM_SIZ_8b, 2, 0, 0, 0, G_TX_WRAP | G_TX_NOMIRROR, 5, 0, G_TX_WRAP | G_TX_NOMIRROR, 4, 0),
|
|
gsDPSetTileSize(0, 0, 0, 60, 124),
|
|
gsSPCopyLightEXT(1, 5),
|
|
gsSPCopyLightEXT(2, 6),
|
|
gsSPEndDisplayList(),
|
|
};
|
|
|
|
Gfx mat_revert_koth_active_f3d_material[] = {
|
|
gsDPPipeSync(),
|
|
gsSPSetGeometryMode(G_CULL_BACK),
|
|
gsSPEndDisplayList(),
|
|
};
|
|
|
|
Gfx koth_active_Cylinder_mesh_layer_4[] = {
|
|
gsSPDisplayList(mat_koth_active_f3d_material),
|
|
gsSPDisplayList(koth_active_Cylinder_mesh_layer_4_tri_0),
|
|
gsSPDisplayList(mat_revert_koth_active_f3d_material),
|
|
gsSPEndDisplayList(),
|
|
};
|
|
|
|
Gfx koth_active_material_revert_render_settings[] = {
|
|
gsDPPipeSync(),
|
|
gsSPSetGeometryMode(G_LIGHTING),
|
|
gsSPClearGeometryMode(G_TEXTURE_GEN),
|
|
gsDPSetCombineLERP(0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT, 0, 0, 0, SHADE, 0, 0, 0, ENVIRONMENT),
|
|
gsSPTexture(65535, 65535, 0, 0, 0),
|
|
gsDPSetEnvColor(255, 255, 255, 255),
|
|
gsDPSetAlphaCompare(G_AC_NONE),
|
|
gsSPEndDisplayList(),
|
|
};
|
|
|