sm64/shape/enemy1_e/hagetaka/tori_head_shape.sou
2022-12-04 22:27:02 -05:00

135 lines
5.4 KiB
Plaintext

/***************************************************************************************************
Convert from NINGEN (tori_head)
****************************************************************************************************/
#define SCALE 0.25
#define ShapeColor_tori_head(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_tori_head[] = {
ShapeColor_tori_head(255,255,255),
ShapeColor_tori_head(255,117, 33),
};
static Vtx vtx_tori_head_0[] = {
{ 14, -62, 52, 0, 1058, -314, 14, -64, 108, 255},
{ 65, -69, 0, 0, 80, -454, 86, -93, 0, 255},
{ 76, -43, 0, 0, -36, 532, 91, -87, 0, 255},
{ 26, -6, 56, 0, 942, 1784, 14, 6, 126, 255},
{ 14, -62, -51, 0, 1058, -314, 14, -64, -108, 255},
{ 26, -6, -55, 0, 942, 1784, 14, 6, -126, 255},
};
static Vtx vtx_tori_head_1[] = {
{ 134, -7, 32, 0, 496, 1112, 27, 89, 85, 255},
{ 134, -7, -31, 0, 224, 1048, 26, 89, -85, 255},
{ 0, 16, 0, 0, 454, -308, -11, 126, 0, 255},
{ 0, 16, 0, 0, 480, -328, -11, 126, 0, 255},
{ 134, -7, -31, 0, 684, 1248, 26, 89, -85, 255},
{ 26, -6, -55, 0, 836, 324, 14, 6, -126, 255},
{ 26, -6, 56, 0, 836, 324, 14, 6, 126, 255},
{ 134, -7, 32, 0, 684, 1248, 27, 89, 85, 255},
{ 183, 18, 0, 0, -34, 1968, 114, 53, -1, 255},
{ 134, -7, 32, 0, 550, 1664, 27, 89, 85, 255},
{ 158, -40, 0, 0, -34, 1564, 54, -114, 0, 255},
{ 26, -6, 56, 0, 982, 280, 14, 6, 126, 255},
{ 76, -43, 0, 0, -34, 256, 91, -87, 0, 255},
{ 26, -6, -55, 0, 982, 280, 14, 6, -126, 255},
{ 134, -7, -31, 0, 550, 1664, 26, 89, -85, 255},
{ 134, -7, -31, 0, 558, 1256, 26, 89, -85, 255},
{ 134, -7, 32, 0, 318, 1032, 27, 89, 85, 255},
{ 183, 18, 0, 0, 326, 1572, 114, 53, -1, 255},
};
static Vtx vtx_tori_head_2[] = {
{ 14, -62, -51, 0, 0, 0, 14, -64, -108, 255},
{ 65, -69, 0, 0, 0, 0, 86, -93, 0, 255},
{ 21, -88, 0, 0, 0, 0, -8, -126, 0, 255},
{ 14, -62, 52, 0, 0, 0, 14, -64, 108, 255},
{ -42, -8, 32, 0, 0, 0, -88, 47, 77, 255},
{ -32, -61, 23, 0, 0, 0, -97, -72, 37, 255},
{ 26, -6, 56, 0, 0, 0, 14, 6, 126, 255},
{ -32, -61, -22, 0, 0, 0, -84, -82, -46, 255},
{ -42, -8, -31, 0, 0, 0, -103, 33, -65, 255},
{ 26, -6, -55, 0, 0, 0, 14, 6, -126, 255},
{ 0, 16, 0, 0, 0, 0, -11, 126, 0, 255},
};
static Gfx gfx_tori_head_0[] = {
gs_Tani_LoadTextureImage2(omeme2_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, 7),
gsSPLight((&light_tori_head[0].l[0]),1 ),
gsSPLight((&light_tori_head[0].a ),2 ),
gsSPVertex(&vtx_tori_head_0[0], 6, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 2, 3, 0, 0),
gsSP1Triangle( 2, 1, 4, 0),
gsSP1Triangle( 4, 5, 2, 0),
gsSPEndDisplayList()
};
static Gfx gfx_tori_head_1[] = {
gs_Tani_LoadTextureImage2(kuchibashi2_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 64, 0, 7),
gsSPVertex(&vtx_tori_head_1[0], 15, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 3, 4, 5, 0),
gsSP1Triangle( 6, 7, 3, 0),
gsSP1Triangle( 8, 9,10, 0),
gsSP1Triangle(10, 9,11, 0),
gsSP1Triangle(11,12,10, 0),
gsSP1Triangle(13,14,10, 0),
gsSP1Triangle(10,12,13, 0),
gsSP1Triangle(10,14, 8, 0),
gsSPVertex(&vtx_tori_head_1[15], 3, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSPEndDisplayList()
};
static Gfx gfx_tori_head_2[] = {
gsSPLight((&light_tori_head[1].l[0]),1 ),
gsSPLight((&light_tori_head[1].a ),2 ),
gsSPVertex(&vtx_tori_head_2[0], 11, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 1, 3, 2, 0),
gsSP1Triangle( 4, 5, 3, 0),
gsSP1Triangle( 3, 6, 4, 0),
gsSP1Triangle( 3, 5, 2, 0),
gsSP1Triangle( 2, 5, 7, 0),
gsSP1Triangle( 7, 0, 2, 0),
gsSP1Triangle( 0, 7, 8, 0),
gsSP1Triangle( 8, 9, 0, 0),
gsSP1Triangle( 8, 7, 5, 0),
gsSP1Triangle(10, 8, 4, 0),
gsSP1Triangle( 4, 8, 5, 0),
gsSP1Triangle(10, 9, 8, 0),
gsSP1Triangle(10, 4, 6, 0),
gsSPEndDisplayList()
};
Gfx gfx_tori_head[] = {
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_MODULATERGB, G_CC_MODULATERGB),
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),
gsSPDisplayList(gfx_tori_head_0),
gs_Tani_SetUpTileDescrip(G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 64, 0, 0, G_TX_CLAMP|G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP|G_TX_NOMIRROR, 6, G_TX_NOLOD),
gsSPDisplayList(gfx_tori_head_1),
gsSPTexture(0xffff, 0xffff, 0, 0, G_OFF),
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
gsSPDisplayList(gfx_tori_head_2),
gsSPEndDisplayList()
};