sm64/shape/enemy1_g/ping/ping_head_shape.sou
2022-12-04 22:27:02 -05:00

210 lines
8.9 KiB
Plaintext

/***************************************************************************************************
Convert from NINGEN (ping_head)
****************************************************************************************************/
#define ping_head_AMB_SCALE 0.4
#define ShapeColor_ping_head(R,G,B) {{R*ping_head_AMB_SCALE ,G*ping_head_AMB_SCALE ,B*ping_head_AMB_SCALE ,0 ,R*ping_head_AMB_SCALE ,G*ping_head_AMB_SCALE ,B*ping_head_AMB_SCALE ,0 },{ R, G, B, 0, R, G, B, 0, LIGHT_X, LIGHT_Y, LIGHT_Z, 0} }
static Lights1 light_ping_head[] = {
ShapeColor_ping_head( 11, 38,164),
ShapeColor_ping_head(255,255,255),
ShapeColor_ping_head(242,213, 28),
};
static Vtx vtx_ping_head_0[] = {
{ 27, 97, 36, 0, 484, 1164, -84, 74, 58, 255},
{ 79, 90, 42, 0, 696, -154, 50, 100, 59, 255},
{ 57, 105, 0, 0, -440, 404, 49, 117, 0, 255},
{ 41, 76, 60, 0, 1270, 804, -52, 37, 109, 255},
{ 41, 76, -59, 0, 1262, 804, -52, 37, -109, 255},
{ 27, 97, -35, 0, 476, 1164, -68, 80, -70, 255},
{ 79, 90, -41, 0, 688, -154, 50, 100, -59, 255},
{ 57, 105, 0, 0, -448, 404, 49, 117, 0, 255},
};
static Vtx vtx_ping_head_1[] = {
{ 26, 154, 0, 0, -468, 1134, 44, 119, -1, 255},
{ 27, 97, 36, 0, 1974, 1130, -84, 74, 58, 255},
{ 57, 105, 0, 0, 1030, -328, 49, 117, 0, 255},
{ 27, 97, -35, 0, 1974, 1130, -68, 80, -70, 255},
};
static Vtx vtx_ping_head_2[] = {
{ 93, 17, 53, 0, 0, 0, 90, -22, 86, 255},
{ 110, 55, 26, 0, 0, 0, 118, 32, 31, 255},
{ 92, 64, 53, 0, 0, 0, 61, 30, 106, 255},
{ 79, 90, 42, 0, 0, 0, 50, 100, 59, 255},
{ 110, 55, -25, 0, 0, 0, 118, 32, -31, 255},
{ 105, -5, 0, 0, 0, 0, 123, -27, 0, 255},
{ 82, 99, 0, 0, 0, 0, 78, 99, 0, 255},
{ 92, 64, -52, 0, 0, 0, 61, 30, -106, 255},
{ 79, 90, -41, 0, 0, 0, 50, 100, -59, 255},
{ 93, 17, -52, 0, 0, 0, 90, -21, -86, 255},
{ 57, 105, 0, 0, 0, 0, 49, 117, 0, 255},
{ 41, 76, -59, 0, 0, 0, -52, 37, -109, 255},
{ 41, 76, 60, 0, 0, 0, -52, 37, 109, 255},
{ 43, 4, -61, 0, 0, 0, -16, -29, -122, 255},
{ 18, 10, 37, 0, 0, 0, -119, -7, 41, 255},
{ 43, 4, 62, 0, 0, 0, -16, -29, 122, 255},
{ 18, 10, -36, 0, 0, 0, -116, -7, -49, 255},
{ 28, -96, 0, 0, 0, 0, -64, -109, 0, 255},
{ 18, 10, 37, 0, 0, 0, -119, -7, 41, 255},
{ 16, 58, -19, 0, 0, 0, -124, 13, -22, 255},
{ 43, 4, 62, 0, 0, 0, -16, -29, 122, 255},
{ 41, 76, 60, 0, 0, 0, -52, 37, 109, 255},
{ 16, 58, 20, 0, 0, 0, -121, 12, 33, 255},
{ 27, 97, 36, 0, 0, 0, -84, 74, 58, 255},
{ 27, 97, -35, 0, 0, 0, -68, 80, -70, 255},
{ 41, 76, -59, 0, 0, 0, -52, 37, -109, 255},
{ 92, 64, 53, 0, 0, 0, 61, 30, 106, 255},
{ 43, 4, -61, 0, 0, 0, -16, -29, -122, 255},
{ 91, -35, -28, 0, 0, 0, 88, -67, -60, 255},
{ 92, 64, -52, 0, 0, 0, 61, 30, -106, 255},
{ 93, 17, -52, 0, 0, 0, 90, -21, -86, 255},
{ 105, -5, 0, 0, 0, 0, 123, -27, 0, 255},
{ 28, -96, 0, 0, 0, 0, -64, -109, 0, 255},
{ 91, -35, -28, 0, 0, 0, 88, -67, -60, 255},
{ 91, -35, 29, 0, 0, 0, 88, -68, 59, 255},
{ 105, -5, 0, 0, 0, 0, 123, -27, 0, 255},
{ 43, 4, 62, 0, 0, 0, -16, -29, 122, 255},
{ 93, 17, 53, 0, 0, 0, 90, -22, 86, 255},
{ 92, 64, 53, 0, 0, 0, 61, 30, 106, 255},
{ 27, 97, 36, 0, 0, 0, -84, 74, 58, 255},
{ 26, 154, 0, 0, 0, 0, 44, 119, -1, 255},
{ 27, 97, -35, 0, 0, 0, -68, 80, -70, 255},
};
static Gfx gfx_ping_head_0[] = {
gsSPLight((&light_ping_head[0].l[0]),1 ),
gsSPLight((&light_ping_head[0].a ),2 ),
gsSPVertex(&vtx_ping_head_0[0], 8, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 1, 0, 3, 0),
gsSP1Triangle( 4, 5, 6, 0),
gsSP1Triangle( 7, 6, 5, 0),
gsSPEndDisplayList()
};
static Gfx gfx_ping_head_1[] = {
gsSPLight((&light_ping_head[1].l[0]),1 ),
gsSPLight((&light_ping_head[1].a ),2 ),
gsSPVertex(&vtx_ping_head_1[0], 4, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 3, 0, 2, 0),
gsSPEndDisplayList()
};
static Gfx gfx_ping_head_2[] = {
gsSPLight((&light_ping_head[0].l[0]),1 ),
gsSPLight((&light_ping_head[0].a ),2 ),
gsSPVertex(&vtx_ping_head_2[0], 16, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 1, 3, 2, 0),
gsSP1Triangle( 4, 1, 5, 0),
gsSP1Triangle( 1, 4, 6, 0),
gsSP1Triangle( 6, 3, 1, 0),
gsSP1Triangle( 0, 5, 1, 0),
gsSP1Triangle( 7, 8, 4, 0),
gsSP1Triangle( 4, 5, 9, 0),
gsSP1Triangle( 4, 8, 6, 0),
gsSP1Triangle( 9, 7, 4, 0),
gsSP1Triangle( 6, 8,10, 0),
gsSP1Triangle(10, 3, 6, 0),
gsSP1Triangle(11, 8, 7, 0),
gsSP1Triangle(12, 2, 3, 0),
gsSP1Triangle(13,11, 7, 0),
gsSP1Triangle(12,14,15, 0),
gsSPVertex(&vtx_ping_head_2[16], 16, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 0, 2, 3, 0),
gsSP1Triangle( 1, 4, 2, 0),
gsSP1Triangle( 5, 6, 2, 0),
gsSP1Triangle( 2, 6, 3, 0),
gsSP1Triangle( 5, 7, 6, 0),
gsSP1Triangle( 3, 6, 7, 0),
gsSP1Triangle( 8, 9, 3, 0),
gsSP1Triangle( 7, 8, 3, 0),
gsSP1Triangle( 0, 3, 9, 0),
gsSP1Triangle( 5, 4,10, 0),
gsSP1Triangle(11, 0, 9, 0),
gsSP1Triangle(11, 1, 0, 0),
gsSP1Triangle(12, 1,11, 0),
gsSP1Triangle(11,13,14, 0),
gsSP1Triangle(11,14,12, 0),
gsSP1Triangle(15,12,14, 0),
gsSPVertex(&vtx_ping_head_2[32], 7, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 1, 3, 2, 0),
gsSP1Triangle( 4, 0, 2, 0),
gsSP1Triangle( 5, 2, 3, 0),
gsSP1Triangle( 2, 5, 4, 0),
gsSP1Triangle( 4, 5, 6, 0),
gsSPLight((&light_ping_head[2].l[0]),1 ),
gsSPLight((&light_ping_head[2].a ),2 ),
gsSPVertex(&vtx_ping_head_2[39], 3, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSPEndDisplayList()
};
static Gfx gfx_ping_head_init[] = {
gsDPPipeSync(),
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_CLAMP|G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP|G_TX_NOMIRROR, 5, G_TX_NOLOD),
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_BLENDRGBA, G_CC_BLENDRGBA),
gsSPEndDisplayList()
};
static Gfx gfx_ping_head_reset[] = {
gsSPDisplayList(gfx_ping_head_0),
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_MODULATERGB, G_CC_MODULATERGB),
gs_Tani_LoadTextureImage2(ping_mouth_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, 7),
gsSPDisplayList(gfx_ping_head_1),
gsSPTexture(0xffff, 0xffff, 0, 0, G_OFF),
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
gsSPDisplayList(gfx_ping_head_2),
gsSPEndDisplayList()
};
/* -------------------------------------------------------------------------------------------- */
/* -------------------------------------------------------------------------------------------- */
Gfx RCP_ping_head_eye1[] = {
gsSPDisplayList(gfx_ping_head_init),
gs_Tani_LoadTextureImage2(ping_eye1_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, 7),
gsSPDisplayList(gfx_ping_head_reset),
gsSPEndDisplayList()
};
Gfx RCP_ping_head_eye2[] = {
gsSPDisplayList(gfx_ping_head_init),
gs_Tani_LoadTextureImage2(ping_eye2_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, 7),
gsSPDisplayList(gfx_ping_head_reset),
gsSPEndDisplayList()
};
Gfx RCP_ping_head_eye3[] = {
gsSPDisplayList(gfx_ping_head_init),
gs_Tani_LoadTextureImage2(ping_eye3_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, 7),
gsSPDisplayList(gfx_ping_head_reset),
gsSPEndDisplayList()
};
Gfx RCP_ping_head_eye4[] = {
gsSPDisplayList(gfx_ping_head_init),
gs_Tani_LoadTextureImage2(ping_eye4_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, 7),
gsSPDisplayList(gfx_ping_head_reset),
gsSPEndDisplayList()
};
Gfx RCP_ping_head_eye5[] = {
gsSPDisplayList(gfx_ping_head_init),
gs_Tani_LoadTextureImage2(ping_eye5_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, 7),
gsSPDisplayList(gfx_ping_head_reset),
gsSPEndDisplayList()
};