sm64/map/select/selectShape/button2.sou
2022-12-04 22:27:02 -05:00

161 lines
5.9 KiB
Plaintext

/***************************************************************************************************
Button Shape Data for File Select (A,B,C,D) (sel_bo_a)
programed by Iwamoto Daiki junuary 17 1996
****************************************************************************************************/
#define SCALE 0.25
#define ShapeColor_sel_bo(R,G,B) {{R*SCALE ,G*SCALE ,B*SCALE ,0 ,R*SCALE ,G*SCALE ,B*SCALE ,0 },{ R, G, B, 0, R, G, B, 0, LIGHT_X, LIGHT_Y, LIGHT_Z, 0} }
static Lights1 light_sel_bo[] = {
ShapeColor_sel_bo(255,255,255),
};
#include "button2_txt.h"
static Vtx vtx_sel_bo_a_0[] = {
{ -163, -122, 0, 0, 0, 990, 0, -74, 102, 255},
{ 163, -122, 0, 0, 990, 990, 0, -74, 102, 255},
{ -122, -81, 30, 0, 96, 820, 0, -74, 102, 255},
{ 122, -81, 30, 0, 862, 820, 0, -74, 102, 255},
{ -163, -122, 0, 0, 0, 990, -74, 0, 102, 255},
{ -122, -81, 30, 0, 96, 820, -74, 0, 102, 255},
{ -163, 122, 0, 0, 0, 0, -74, 0, 102, 255},
{ -122, 81, 30, 0, 96, 138, -74, 0, 102, 255},
{ -122, 81, 30, 0, 96, 138, 0, 74, 102, 255},
{ 122, 81, 30, 0, 862, 138, 0, 74, 102, 255},
{ 163, 122, 0, 0, 990, 0, 0, 74, 102, 255},
{ -163, 122, 0, 0, 0, 0, 0, 74, 102, 255},
{ 122, 81, 30, 0, 862, 138, 74, 0, 102, 255},
{ 122, -81, 30, 0, 862, 820, 74, 0, 102, 255},
{ 163, -122, 0, 0, 990, 990, 74, 0, 102, 255},
{ 163, 122, 0, 0, 990, 0, 74, 0, 102, 255},
};
static Vtx vtx_sel_bo_a_1[] = {
{ 122, 81, 30, 0, 2012, 0, 0, 0, 127, 255},
{ -122, 81, 30, 0, 0, 0, 0, 0, 127, 255},
{ 122, -81, 30, 0, 2012, 990, 0, 0, 127, 255},
{ -122, -81, 30, 0, 0, 990, 0, 0, 127, 255},
};
Gfx gfx_sel_a1[] = {
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_MODULATERGB, G_CC_MODULATERGB),
gsSPClearGeometryMode(G_SHADING_SMOOTH),
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, 7, 0, 0,0,0, 0,0,0),
gsSPTexture(0xffff,0xffff, 0, 0, G_ON),
gs_Tani_SetUpTileDescrip(G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, 0, G_TX_WRAP|G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP|G_TX_NOMIRROR, 5, G_TX_NOLOD),
gsSPEndDisplayList()
};
Gfx gfx_sel_a2[] = {
gsSPLight((&light_sel_bo[0].l[0]),1 ),
gsSPLight((&light_sel_bo[0].a ),2 ),
gsSPVertex(&vtx_sel_bo_a_0[0], 16, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 1, 3, 2, 0),
gsSP1Triangle( 4, 5, 6, 0),
gsSP1Triangle( 5, 7, 6, 0),
gsSP1Triangle( 8, 9,10, 0),
gsSP1Triangle(11, 8,10, 0),
gsSP1Triangle(12,13,14, 0),
gsSP1Triangle(15,12,14, 0),
gs_Tani_SetUpTileDescrip(G_IM_FMT_RGBA, G_IM_SIZ_16b, 64, 32, 0, 0, G_TX_WRAP|G_TX_NOMIRROR, 6, G_TX_NOLOD, G_TX_WRAP|G_TX_NOMIRROR, 5, G_TX_NOLOD),
gsSPEndDisplayList()
};
Gfx gfx_sel_a3[] = {
gsSPVertex(&vtx_sel_bo_a_1[0], 4, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 1, 3, 2, 0),
gsSPTexture(0xffff, 0xffff, 0, 0, G_OFF),
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
gsSPSetGeometryMode(G_SHADING_SMOOTH),
gsSPEndDisplayList()
};
/*--------------------------------*/
static Vtx vtx_sel_bo_b_0[] = {
{ 163, -122, 0, 0, 0, 990, 0, 0, -127, 255},
{ -163, -122, 0, 0, 990, 990, 0, 0, -127, 255},
{ 163, 122, 0, 0, 0, 0, 0, 0, -127, 255},
{ -163, 122, 0, 0, 990, 0, 0, 0, -127, 255},
};
Gfx gfx_sel_b1[] = {
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_MODULATERGB, G_CC_MODULATERGB),
gsSPClearGeometryMode(G_SHADING_SMOOTH),
gsDPSetTile(G_IM_FMT_RGBA, G_IM_SIZ_16b, 0, 0, 7, 0, 0,0,0, 0,0,0),
gsSPTexture(0xffff,0xffff, 0, 0, G_ON),
gs_Tani_SetUpTileDescrip(G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, 0, G_TX_WRAP|G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP|G_TX_NOMIRROR, 5, G_TX_NOLOD),
gsSPEndDisplayList()
};
Gfx gfx_sel_b2[] = {
gsSPLight((&light_sel_bo[0].l[0]),1 ),
gsSPLight((&light_sel_bo[0].a ),2 ),
gsSPVertex(&vtx_sel_bo_b_0[0], 4, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 1, 3, 2, 0),
gsSPTexture(0xffff, 0xffff, 0, 0, G_OFF),
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
gsSPSetGeometryMode(G_SHADING_SMOOTH),
gsSPEndDisplayList()
};
/**************************************************************************************************
Gfx Display List
***************************************************************************************************/
Gfx gfx_Sel1_mario_button[] = {
gsSPDisplayList(gfx_sel_a1),
gs_Tani_LoadTextureImage2(base_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, 7),
gsSPDisplayList(gfx_sel_a2),
gs_Tani_LoadTextureImage2(mario02_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 64, 32, 0, 7),
gsSPDisplayList(gfx_sel_a3),
gsSPEndDisplayList()
};
Gfx gfx_Sel1_new_button[] = {
gsSPDisplayList(gfx_sel_a1),
gs_Tani_LoadTextureImage2(base_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, 7),
gsSPDisplayList(gfx_sel_a2),
gs_Tani_LoadTextureImage2(new02_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 64, 32, 0, 7),
gsSPDisplayList(gfx_sel_a3),
gsSPEndDisplayList()
};
Gfx gfx_Sel2_tex_button[] = {
gsSPDisplayList(gfx_sel_b1),
gs_Tani_LoadTextureImage2(base1_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, 7),
gsSPDisplayList(gfx_sel_b2),
gsSPEndDisplayList()
};
Gfx gfx_Sel2_poly_button[] = {
gsDPPipeSync(),
gsSPClearGeometryMode(G_SHADING_SMOOTH),
gsSPLight((&light_sel_bo[0].l[0]),1 ),
gsSPLight((&light_sel_bo[0].a ),2 ),
gsSPVertex(&vtx_sel_bo_b_0[0], 4, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 1, 3, 2, 0),
gsDPPipeSync(),
gsSPSetGeometryMode(G_SHADING_SMOOTH),
gsSPEndDisplayList()
};