/***************************************************************************************************
		Convert from NINGEN		(piano_body) 																
****************************************************************************************************/
#define piano_body_AMB_SCALE 0.3
#define ShapeColor_piano_body(R,G,B) {{R*piano_body_AMB_SCALE ,G*piano_body_AMB_SCALE ,B*piano_body_AMB_SCALE ,0 ,R*piano_body_AMB_SCALE ,G*piano_body_AMB_SCALE ,B*piano_body_AMB_SCALE ,0 },{ R, G, B, 0, R, G, B, 0, LIGHT_X, LIGHT_Y, LIGHT_Z, 0} }

static Lights1 light_piano_body[] = {
	ShapeColor_piano_body(204,204,204),
	ShapeColor_piano_body(255,255,255),
	ShapeColor_piano_body(127,127,127),
	ShapeColor_piano_body(  0,  0,  0),
};

static Vtx vtx_piano_body_0[] = {
	{    454,    592,     18,     0,   262,   962,    45,  116,   23,  255}, 
	{    -14,    586,    220,     0,   485,   588,    -2,    9,  126,  255}, 
	{    454,    592,    220,     0,   485,   962,  -110,    0,   61,  255}, 
	{    454,    592,     18,     0,   411,  -102,    45,  116,   23,  255}, 
	{    454,    592,    220,     0,   160,   118,  -110,    0,   61,  255}, 
	{    467,   -543,    220,     0,   160,  1024,   112,   -2,   58,  255}, 
	{    467,   -543,     18,     0,   411,   804,    35, -101,   67,  255}, 
	{   -199,    336,    -92,     0,   138,   418,   -38,   95,  -74,  255}, 
	{   -674,    277,    220,     0,   485,    36,    -5,    8,  126,  255}, 
	{   -199,    336,    220,     0,   485,   418,    -1,   11,  126,  255}, 
	{   -674,    277,    -92,     0,   138,    36,   -55,   88,  -72,  255}, 
	{    -14,    586,    -92,     0,   138,   588,   -50,   98,  -61,  255}, 
	{    454,    592,    -92,     0,   138,   962,     0,   56, -113,  255}, 
	{    393,    432,   -372,     0,   -64,   714,     0,    0, -126,  255}, 
	{    444,    347,    -92,     0,   456,   672,    61, -102,  -42,  255}, 
	{    294,    431,    -92,     0,   428,   926,  -119,   -1,  -42,  255}, 
	{   -598,   -135,   -372,     0,   -21,   860,    -1,    0, -126,  255}, 
	{   -549,    -48,    -92,     0,   446,   702,    58,  104,  -42,  255}, 
	{   -547,   -221,    -92,     0,   456,   934,    60, -102,  -42,  255}, 
	{   -598,   -135,   -372,     0,   -37,   724,    -1,    0, -126,  255}, 
	{   -547,   -221,    -92,     0,   417,   570,    60, -102,  -42,  255}, 
	{   -697,   -136,    -92,     0,   425,   938,  -119,   -1,  -42,  255}, 
	{   -598,   -135,   -372,     0,     0,   736,    -1,    0, -126,  255}, 
	{   -697,   -136,    -92,     0,   428,   620,  -119,   -1,  -42,  255}, 
	{   -549,    -48,    -92,     0,   422,   816,    58,  104,  -42,  255}, 
	{    393,    432,   -372,     0,   -42,   728,     0,    0, -126,  255}, 
	{    442,    519,    -92,     0,   498,   594,    58,  104,  -42,  255}, 
	{    444,    347,    -92,     0,   493,   952,    61, -102,  -42,  255}, 
	{   -884,   -357,    -92,     0,     0,    50,  -100,  -64,  -42,  255}, 
	{   -665,   -556,    220,     0,   488,   286,     5,  -19,  125,  255}, 
	{   -884,   -357,    220,     0,   488,    50,   -11,   -3,  126,  255}, 
	{    393,    432,   -372,     0,    82,   738,     0,    0, -126,  255}, 
	{    294,    431,    -92,     0,   472,   582,  -119,   -1,  -42,  255}, 
	{    442,    519,    -92,     0,   462,   838,    58,  104,  -42,  255}, 
	{    403,   -384,   -372,     0,   -36,   732,     0,    0, -126,  255}, 
	{    451,   -297,    -92,     0,   450,   628,    58,  104,  -42,  255}, 
	{    453,   -470,    -92,     0,   441,   938,    60, -103,  -42,  255}, 
	{    403,   -384,   -372,     0,   -58,   714,     0,    0, -126,  255}, 
	{    453,   -470,    -92,     0,   495,   672,    60, -103,  -42,  255}, 
	{    303,   -385,    -92,     0,   505,   990,  -119,   -1,  -42,  255}, 
	{    403,   -384,   -372,     0,   -47,   688,     0,    0, -126,  255}, 
	{    303,   -385,    -92,     0,   448,   628,  -119,   -1,  -42,  255}, 
	{    451,   -297,    -92,     0,   480,   948,    58,  104,  -42,  255}, 
	{   -674,    277,    -92,     0,   138,    36,   -55,   88,  -72,  255}, 
	{   -889,     67,    220,     0,   485,  -156,   -11,    2,  126,  255}, 
	{   -674,    277,    220,     0,   485,    36,    -5,    8,  126,  255}, 
	{   -884,   -357,    -92,     0,     0,    50,  -100,  -64,  -42,  255}, 
	{   -665,   -556,    -92,     0,     0,   286,   -11,  -66, -107,  255}, 
	{   -665,   -556,    220,     0,   488,   286,     5,  -19,  125,  255}, 
	{   -889,     67,    -92,     0,   -60,   754,   -99,   25,  -74,  255}, 
	{   -884,   -357,    220,     0,   477,   972,   -11,   -3,  126,  255}, 
	{   -889,     67,    220,     0,   459,   754,   -11,    2,  126,  255}, 
	{   -884,   -357,    -92,     0,   -42,   972,  -100,  -64,  -42,  255}, 
	{   -665,   -556,    -92,     0,    32,   596,   -11,  -66, -107,  255}, 
	{    467,   -543,    220,     0,   422,   990,   112,   -2,   58,  255}, 
	{   -665,   -556,    220,     0,   422,   596,     5,  -19,  125,  255}, 
	{    467,   -543,     18,     0,   171,   990,    35, -101,   67,  255}, 
	{    467,   -543,    -92,     0,    32,   990,     1, -105,  -70,  255}, 
	{   -889,     67,    -92,     0,   138,  -156,   -99,   25,  -74,  255}, 
};

static Vtx vtx_piano_body_1[] = {
	{   -889,     67,    220,     0,  -124,    16,   -11,    2,  126,  255}, 
	{   -855,     64,     46,     0,     0,   936,    90,  -22,   86,  255}, 
	{   -655,    253,     38,     0,   884,   936,    51,  -80,   83,  255}, 
	{    -14,    586,    220,     0,   -53,    10,    -2,    9,  126,  255}, 
	{    -10,    556,     46,     0,   -33,   950,    55,  -75,   85,  255}, 
	{    422,    560,     46,     0,  1395,   942,   -45,  -93,   72,  255}, 
	{    454,    592,    220,     0,  1493,    -2,  -110,    0,   61,  255}, 
	{   -199,    336,    220,     0,     3,   -12,    -1,   11,  126,  255}, 
	{    -10,    556,     46,     0,   917,   952,    55,  -75,   85,  255}, 
	{    -14,    586,    220,     0,   976,     6,    -2,    9,  126,  255}, 
	{   -186,    307,     38,     0,   -34,   982,    34,  -87,   84,  255}, 
	{   -674,    277,    220,     0,   -87,   -28,    -5,    8,  126,  255}, 
	{   -655,    253,     38,     0,     0,   990,    51,  -80,   83,  255}, 
	{   -186,    307,     38,     0,  1537,   990,    34,  -87,   84,  255}, 
	{   -199,    336,    220,     0,  1506,   -30,    -1,   11,  126,  255}, 
	{    467,   -543,    220,     0,  -137,     6,   112,   -2,   58,  255}, 
	{   -666,   -525,     46,     0,  3633,   936,    28,  108,   59,  255}, 
	{   -665,   -556,    220,     0,  3631,     6,     5,  -19,  125,  255}, 
	{   -889,     67,    220,     0,  -124,    16,   -11,    2,  126,  255}, 
	{   -655,    253,     38,     0,   884,   936,    51,  -80,   83,  255}, 
	{   -674,    277,    220,     0,   876,     0,    -5,    8,  126,  255}, 
	{   -884,   -357,    220,     0,   -99,     4,   -11,   -3,  126,  255}, 
	{   -855,     64,     46,     0,  1302,   936,    90,  -22,   86,  255}, 
	{   -889,     67,    220,     0,  1313,     4,   -11,    2,  126,  255}, 
	{   -850,   -336,     46,     0,     0,   936,    79,   48,   85,  255}, 
	{   -665,   -556,    220,     0,   -90,    14,     5,  -19,  125,  255}, 
	{   -850,   -336,     46,     0,   626,   936,    79,   48,   85,  255}, 
	{   -884,   -357,    220,     0,   648,     4,   -11,   -3,  126,  255}, 
	{   -666,   -525,     46,     0,     0,   936,    28,  108,   59,  255}, 
	{    435,   -512,     46,     0,     0,   936,   -36,   18,  120,  255}, 
	{    454,    592,    220,     0,  -204,     6,  -110,    0,   61,  255}, 
	{    435,   -512,     46,     0,  5439,  1010,   -36,   18,  120,  255}, 
	{    467,   -543,    220,     0,  5605,    44,   112,   -2,   58,  255}, 
	{    422,    560,     46,     0,   -44,   978,   -45,  -93,   72,  255}, 
	{    435,   -512,     46,     0,    67,   870,   -36,   18,  120,  255}, 
	{   -655,    253,     38,     0,   340,   166,    51,  -80,   83,  255}, 
	{   -855,     64,     46,     0,   406,   246,    90,  -22,   86,  255}, 
	{   -186,    307,     38,     0,   204,   224,    34,  -87,   84,  255}, 
	{   -850,   -336,     46,     0,   425,   502,    79,   48,   85,  255}, 
	{   -666,   -525,     46,     0,   382,   658,    28,  108,   59,  255}, 
	{    422,    560,     46,     0,    18,   184,   -45,  -93,   72,  255}, 
	{    -10,    556,     46,     0,   141,   100,    55,  -75,   85,  255}, 
};

static Vtx vtx_piano_body_2[] = {
	{    678,   -541,    -92,     0,     0,   479,    85,  -41,  -84,  255}, 
	{    665,    594,     18,     0,  4504,   -77,    84,   43,   84,  255}, 
	{    678,   -541,     18,     0,     0,   -77,    52, -103,   51,  255}, 
	{    665,    594,    -92,     0,  4504,   479,    50,  104,  -51,  255}, 
};

static Vtx vtx_piano_body_3[] = {
	{    467,   -543,     18,     0,   -40,  -224,    35, -101,   67,  255}, 
	{    665,    594,     18,     0,  4504,   436,    84,   43,   84,  255}, 
	{    454,    592,     18,     0,  4494,  -268,    45,  116,   23,  255}, 
	{    678,   -541,     18,     0,     0,   479,    52, -103,   51,  255}, 
};

static Vtx vtx_piano_body_4[] = {
	{    454,    592,     18,     0,   972,   -27,    45,  116,   23,  255}, 
	{    665,    594,     18,     0,     0,   -27,    84,   43,   84,  255}, 
	{    665,    594,    -92,     0,     0,   479,    50,  104,  -51,  255}, 
	{    454,    592,    -92,     0,   972,   479,     0,   56, -113,  255}, 
	{    467,   -543,    -92,     0,   942,   479,     1, -105,  -70,  255}, 
	{    678,   -541,     18,     0,     0,   -27,    52, -103,   51,  255}, 
	{    467,   -543,     18,     0,   942,   -27,    35, -101,   67,  255}, 
	{    678,   -541,    -92,     0,     0,   479,    85,  -41,  -84,  255}, 
};

static Vtx vtx_piano_body_5[] = {
	{   -665,   -556,    -92,     0,     0,     0,   -11,  -66, -107,  255}, 
	{    -14,    586,    -92,     0,     0,     0,   -50,   98,  -61,  255}, 
	{    454,    592,    -92,     0,     0,     0,     0,   56, -113,  255}, 
	{    467,   -543,    -92,     0,     0,     0,     1, -105,  -70,  255}, 
	{    678,   -541,    -92,     0,     0,     0,    85,  -41,  -84,  255}, 
	{    665,    594,    -92,     0,     0,     0,    50,  104,  -51,  255}, 
	{   -199,    336,    -92,     0,     0,     0,   -38,   95,  -74,  255}, 
	{   -674,    277,    -92,     0,     0,     0,   -55,   88,  -72,  255}, 
	{   -889,     67,    -92,     0,     0,     0,   -99,   25,  -74,  255}, 
	{   -884,   -357,    -92,     0,     0,     0,  -100,  -64,  -42,  255}, 
};

static Gfx gfx_piano_body_0[] = {
	gs_Tani_LoadTextureImage2(piano_surface_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 32, 0, 7),

	gsSPLight((&light_piano_body[0].l[0]),1 ),
	gsSPLight((&light_piano_body[0].a   ),2 ),

	gsSPVertex(&vtx_piano_body_0[0], 13, 0), 
	gsSP1Triangle( 0, 1, 2, 0),
	gsSP1Triangle( 3, 4, 5, 0),
	gsSP1Triangle( 3, 5, 6, 0),
	gsSP1Triangle( 7, 8, 9, 0),
	gsSP1Triangle( 7,10, 8, 0),
	gsSP1Triangle(11, 7, 9, 0),
	gsSP1Triangle(11, 9, 1, 0),
	gsSP1Triangle( 0,12,11, 0),
	gsSP1Triangle( 0,11, 1, 0),

	gsSPLight((&light_piano_body[1].l[0]),1 ),
	gsSPLight((&light_piano_body[1].a   ),2 ),

	gsSPVertex(&vtx_piano_body_0[13], 15, 0), 
	gsSP1Triangle( 0, 1, 2, 0),
	gsSP1Triangle( 3, 4, 5, 0),
	gsSP1Triangle( 6, 7, 8, 0),
	gsSP1Triangle( 9,10,11, 0),
	gsSP1Triangle(12,13,14, 0),
	gsSPVertex(&vtx_piano_body_0[28], 15, 0), 
	gsSP1Triangle( 0, 1, 2, 0),
	gsSP1Triangle( 3, 4, 5, 0),
	gsSP1Triangle( 6, 7, 8, 0),
	gsSP1Triangle( 9,10,11, 0),
	gsSP1Triangle(12,13,14, 0),
	gsSPVertex(&vtx_piano_body_0[43], 16, 0), 
	gsSP1Triangle( 0, 1, 2, 0),
	gsSP1Triangle( 3, 4, 5, 0),
	gsSP1Triangle( 6, 7, 8, 0),
	gsSP1Triangle( 6, 9, 7, 0),
	gsSP1Triangle(10,11,12, 0),
	gsSP1Triangle(10,13,11, 0),
	gsSP1Triangle(10,14,13, 0),
	gsSP1Triangle( 0,15, 1, 0),
	gsSPEndDisplayList() 
};

static Gfx gfx_piano_body_1[] = {
	gs_Tani_LoadTextureImage2(piano_surfaceB_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 32, 0, 7),
	gsSPVertex(&vtx_piano_body_1[0], 15, 0), 
	gsSP1Triangle( 0, 1, 2, 0),
	gsSP1Triangle( 3, 4, 5, 0),
	gsSP1Triangle( 3, 5, 6, 0),
	gsSP1Triangle( 7, 8, 9, 0),
	gsSP1Triangle( 7,10, 8, 0),
	gsSP1Triangle(11,12,13, 0),
	gsSP1Triangle(11,13,14, 0),
	gsSPVertex(&vtx_piano_body_1[15], 15, 0), 
	gsSP1Triangle( 0, 1, 2, 0),
	gsSP1Triangle( 3, 4, 5, 0),
	gsSP1Triangle( 6, 7, 8, 0),
	gsSP1Triangle( 6, 9, 7, 0),
	gsSP1Triangle(10,11,12, 0),
	gsSP1Triangle(10,13,11, 0),
	gsSP1Triangle( 0,14, 1, 0),
	gsSPVertex(&vtx_piano_body_1[30], 12, 0), 
	gsSP1Triangle( 0, 1, 2, 0),
	gsSP1Triangle( 0, 3, 1, 0),
	gsSP1Triangle( 4, 5, 6, 0),
	gsSP1Triangle( 4, 7, 5, 0),
	gsSP1Triangle( 4, 6, 8, 0),
	gsSP1Triangle( 4, 8, 9, 0),
	gsSP1Triangle( 4,10,11, 0),
	gsSP1Triangle( 4,11, 7, 0),
	gsSPEndDisplayList() 
};

static Gfx gfx_piano_body_2[] = {
	gs_Tani_LoadTextureImage2(piano_keyB_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 16, 0, 7),

	gsSPLight((&light_piano_body[2].l[0]),1 ),
	gsSPLight((&light_piano_body[2].a   ),2 ),

	gsSPVertex(&vtx_piano_body_2[0],  4, 0), 
	gsSP1Triangle( 0, 1, 2, 0),
	gsSP1Triangle( 0, 3, 1, 0),
	gsSPEndDisplayList() 
};

static Gfx gfx_piano_body_3[] = {
	gs_Tani_LoadTextureImage2(piano_keyA_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 16, 0, 7),

	gsSPLight((&light_piano_body[0].l[0]),1 ),
	gsSPLight((&light_piano_body[0].a   ),2 ),

	gsSPVertex(&vtx_piano_body_3[0],  4, 0), 
	gsSP1Triangle( 0, 1, 2, 0),
	gsSP1Triangle( 0, 3, 1, 0),
	gsSPEndDisplayList() 
};

static Gfx gfx_piano_body_4[] = {
	gs_Tani_LoadTextureImage2(piano_keyC_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 16, 0, 7),
	gsSPVertex(&vtx_piano_body_4[0],  8, 0), 
	gsSP1Triangle( 0, 1, 2, 0),
	gsSP1Triangle( 0, 2, 3, 0),
	gsSP1Triangle( 4, 5, 6, 0),
	gsSP1Triangle( 4, 7, 5, 0),
	gsSPEndDisplayList() 
};

static Gfx gfx_piano_body_5[] = {

	gsSPLight((&light_piano_body[3].l[0]),1 ),
	gsSPLight((&light_piano_body[3].a   ),2 ),

	gsSPVertex(&vtx_piano_body_5[0], 10, 0), 
	gsSP1Triangle( 0, 1, 2, 0),
	gsSP1Triangle( 0, 2, 3, 0),
	gsSP1Triangle( 2, 4, 3, 0),
	gsSP1Triangle( 2, 5, 4, 0),
	gsSP1Triangle( 0, 6, 1, 0),
	gsSP1Triangle( 0, 7, 6, 0),
	gsSP1Triangle( 0, 8, 7, 0),
	gsSP1Triangle( 0, 9, 8, 0),
	gsSPEndDisplayList() 
};

Gfx gfx_piano_body[] = {
	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, 16, 32,  0, 0, G_TX_WRAP|G_TX_NOMIRROR, 4, G_TX_NOLOD, G_TX_WRAP|G_TX_NOMIRROR, 5, G_TX_NOLOD),

		gsSPDisplayList(gfx_piano_body_0),

	gs_Tani_SetUpTileDescrip(G_IM_FMT_RGBA, G_IM_SIZ_16b, 16, 32,  0, 0, G_TX_WRAP|G_TX_NOMIRROR, 4, G_TX_NOLOD, G_TX_CLAMP|G_TX_NOMIRROR, 5, G_TX_NOLOD),

		gsSPDisplayList(gfx_piano_body_1),

	gs_Tani_SetUpTileDescrip(G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 16,  0, 0, G_TX_WRAP|G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP|G_TX_NOMIRROR, 4, G_TX_NOLOD),

		gsSPDisplayList(gfx_piano_body_2),
		gsSPDisplayList(gfx_piano_body_3),

	gs_Tani_SetUpTileDescrip(G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 16,  0, 0, G_TX_CLAMP|G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_CLAMP|G_TX_NOMIRROR, 4, G_TX_NOLOD),

		gsSPDisplayList(gfx_piano_body_4),

	gsSPTexture(0xffff, 0xffff, 0, 0, G_OFF),

	gsDPPipeSync(),
	gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),

		gsSPDisplayList(gfx_piano_body_5),

	gsSPEndDisplayList() 
};

