sm64/shape/enemy1_a/dosun/dosun.shape
2022-12-04 22:27:02 -05:00

366 lines
13 KiB
Plaintext

/*################################################################################################*/
#ifdef HMS_SHAPE
/*################################################################################################*/
/********************************************************************************
RCP_HmsDosun
[ Oct 23, 1995 ]
*********************************************************************************/
extern Gfx gfx_dossun[];
/********************************************************************************/
/* Hierarchy map data of Dosun. */
/********************************************************************************/
Hierarchy RCP_HmsDosun[] = {
hmsShadow(300,180,11)
hmsBegin()
hmsGfx(RM_SURF, gfx_dossun)
hmsEnd()
hmsExit()
};
/*################################################################################################*/
#else
/*################################################################################################*/
/***************************************************************************************************
Convert from NINGEN (dossun)
****************************************************************************************************/
#define dossun_AMB_SCALE 0.3
#define ShapeColor_dossun(R,G,B) {{R*dossun_AMB_SCALE ,G*dossun_AMB_SCALE ,B*dossun_AMB_SCALE ,0 ,R*dossun_AMB_SCALE ,G*dossun_AMB_SCALE ,B*dossun_AMB_SCALE ,0 },{ R, G, B, 0, R, G, B, 0, LIGHT_X, LIGHT_Y, LIGHT_Z, 0} }
static Lights1 light_dossun[] = {
ShapeColor_dossun(255,255,255),
};
#include "dossun_texture.h" /*====== dossun texture ======*/
static Vtx vtx_dossun_0[] = {
{ -97, 52, -141, 0, 3308, 418, -50, -53, -103, 255},
{ -141, 52, -72, 0, 2910, 418, -109, -54, -33, 255},
{ -156, 252, -78, 0, 2904, 1584, -119, 26, -34, 255},
{ -105, 252, -156, 0, 3316, 1584, -48, 70, -93, 255},
{ 106, 252, -156, 0, 4286, 1584, 41, 57, -105, 255},
{ 98, 52, -141, 0, 4292, 418, 69, -48, -94, 255},
{ 157, 252, -78, 0, 4698, 1584, 115, 34, -41, 255},
{ 142, 52, -72, 0, 4692, 418, 112, -55, -22, 255},
{ 0, 302, -101, 0, 460, -56, 0, 112, -58, 255},
{ 93, 330, 0, 0, 1000, 540, 44, 118, 0, 255},
{ 106, 252, -156, 0, 1080, -374, 41, 57, -105, 255},
{ -92, 330, 0, 0, -80, 540, -44, 118, 0, 255},
{ 0, 302, 102, 0, 460, 1134, 0, 112, 58, 255},
{ 106, 252, 157, 0, 1080, 1452, 48, 70, 93, 255},
{ -105, 252, -156, 0, -160, -374, -48, 70, -93, 255},
{ -156, 252, 79, 0, -452, 1000, -115, 34, 41, 255},
{ -105, 252, 157, 0, -160, 1452, -41, 57, 105, 255},
{ -92, 330, 0, 0, -80, 540, -44, 118, 0, 255},
{ -156, 252, -78, 0, -452, 78, -119, 26, -34, 255},
{ -105, 252, -156, 0, -160, -374, -48, 70, -93, 255},
{ 0, 302, 102, 0, 460, 1134, 0, 112, 58, 255},
{ 106, 252, 157, 0, 1080, 1452, 48, 70, 93, 255},
{ -97, 52, -141, 0, -188, 1444, -50, -53, -103, 255},
{ 83, 0, -82, 0, 1042, 1040, 30, -116, -41, 255},
{ -82, 0, -82, 0, -82, 1040, -55, -110, -30, 255},
{ 98, 52, -141, 0, 1148, 1444, 69, -48, -94, 255},
{ 83, 0, 83, 0, 1042, -84, 55, -110, 30, 255},
{ -82, 0, 83, 0, -82, -84, -30, -116, 41, 255},
{ 142, 52, -72, 0, 1446, 976, 112, -55, -22, 255},
{ 98, 52, 142, 0, 1148, -488, 50, -53, 103, 255},
{ -97, 52, 142, 0, -188, -488, -69, -48, 94, 255},
{ -82, 0, -82, 0, -82, 1040, -55, -110, -30, 255},
{ -82, 0, 83, 0, -82, -84, -30, -116, 41, 255},
{ -141, 52, 73, 0, -486, -18, -112, -55, 22, 255},
{ -97, 52, 142, 0, -188, -488, -69, -48, 94, 255},
{ -97, 52, -141, 0, -188, 1444, -50, -53, -103, 255},
{ -141, 52, -72, 0, -486, 976, -109, -54, -33, 255},
{ 83, 0, 83, 0, 1042, -84, 55, -110, 30, 255},
{ 142, 52, -72, 0, 1446, 976, 112, -55, -22, 255},
{ 142, 52, 73, 0, 1446, -18, 109, -54, 33, 255},
{ 98, 52, 142, 0, 1148, -488, 50, -53, 103, 255},
{ 142, 52, -72, 0, 4692, 418, 112, -55, -22, 255},
{ 157, 252, -78, 0, 4698, 1584, 115, 34, -41, 255},
{ 157, 252, 79, 0, 5458, 1584, 119, 26, 34, 255},
{ 142, 52, 73, 0, 5464, 418, 109, -54, 33, 255},
{ 106, 252, 157, 0, 760, 1584, 48, 70, 93, 255},
{ 98, 52, 142, 0, 754, 418, 50, -53, 103, 255},
{ 157, 252, 79, 0, 348, 1584, 119, 26, 34, 255},
{ -97, 52, 142, 0, 1738, 418, -69, -48, 94, 255},
{ -156, 252, 79, 0, 2142, 1584, -115, 34, 41, 255},
{ -141, 52, 73, 0, 2136, 418, -112, -55, 22, 255},
{ -156, 252, -78, 0, 2904, 1584, -119, 26, -34, 255},
{ -141, 52, -72, 0, 2910, 418, -109, -54, -33, 255},
{ -105, 252, 157, 0, 1730, 1584, -41, 57, 105, 255},
{ 106, 252, -156, 0, -24, 628, 41, 57, -105, 255},
{ -105, 252, -156, 0, 984, 628, -48, 70, -93, 255},
{ 0, 302, -101, 0, 480, 370, 0, 112, -58, 255},
{ 157, 252, 79, 0, 1374, 1000, 119, 26, 34, 255},
{ 93, 330, 0, 0, 1000, 540, 44, 118, 0, 255},
{ 106, 252, 157, 0, 1080, 1452, 48, 70, 93, 255},
{ 157, 252, -78, 0, 1374, 78, 115, 34, -41, 255},
{ 98, 52, 142, 0, 754, 418, 50, -53, 103, 255},
{ 142, 52, 73, 0, 354, 418, 109, -54, 33, 255},
{ 157, 252, 79, 0, 348, 1584, 119, 26, 34, 255},
{ 106, 252, -156, 0, 1414, 324, 41, 57, -105, 255},
{ 93, 330, 0, 0, 472, -20, 44, 118, 0, 255},
{ 157, 252, -78, 0, 946, 494, 115, 34, -41, 255},
};
static Vtx vtx_dossun_1[] = {
{ 98, 52, 142, 0, 968, 1976, 50, -53, 103, 255},
{ 106, 252, 157, 0, 1010, 0, 48, 70, 93, 255},
{ -105, 252, 157, 0, -54, -12, -41, 57, 105, 255},
{ -97, 52, 142, 0, -16, 1964, -69, -48, 94, 255},
};
static Gfx gfx_dossun_0[] = {
gs_Tani_LoadTextureImage2(dossun_skin_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 32, 0, 7),
gsSPLight((&light_dossun[0].l[0]),1 ),
gsSPLight((&light_dossun[0].a ),2 ),
gsSPVertex(&vtx_dossun_0[0], 15, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 3, 0, 2, 0),
gsSP1Triangle( 0, 3, 4, 0),
gsSP1Triangle( 0, 4, 5, 0),
gsSP1Triangle( 5, 4, 6, 0),
gsSP1Triangle( 5, 6, 7, 0),
gsSP1Triangle( 8, 9,10, 0),
gsSP1Triangle( 8,11, 9, 0),
gsSP1Triangle(12,13, 9, 0),
gsSP1Triangle( 9,11,12, 0),
gsSP1Triangle( 8,14,11, 0),
gsSPVertex(&vtx_dossun_0[15], 16, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 3, 2, 4, 0),
gsSP1Triangle( 0, 2, 3, 0),
gsSP1Triangle( 2, 1, 5, 0),
gsSP1Triangle( 1, 6, 5, 0),
gsSP1Triangle( 7, 8, 9, 0),
gsSP1Triangle( 7,10, 8, 0),
gsSP1Triangle( 8,11,12, 0),
gsSP1Triangle( 8,12, 9, 0),
gsSP1Triangle(11, 8,13, 0),
gsSP1Triangle(13, 8,10, 0),
gsSP1Triangle(14,12,11, 0),
gsSP1Triangle(14,15,12, 0),
gsSPVertex(&vtx_dossun_0[31], 14, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 2, 1, 3, 0),
gsSP1Triangle( 4, 0, 5, 0),
gsSP1Triangle( 0, 2, 5, 0),
gsSP1Triangle( 6, 7, 8, 0),
gsSP1Triangle( 9, 6, 8, 0),
gsSP1Triangle(10,11,12, 0),
gsSP1Triangle(10,12,13, 0),
gsSPVertex(&vtx_dossun_0[45], 16, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 3, 4, 5, 0),
gsSP1Triangle( 5, 4, 6, 0),
gsSP1Triangle( 5, 6, 7, 0),
gsSP1Triangle( 3, 8, 4, 0),
gsSP1Triangle( 9,10,11, 0),
gsSP1Triangle(12,13,14, 0),
gsSP1Triangle(15,13,12, 0),
gsSPVertex(&vtx_dossun_0[61], 6, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 3, 4, 5, 0),
gsSPEndDisplayList()
};
static Gfx gfx_dossun_1[] = {
gs_Tani_LoadTextureImage2(dossun_face_txt, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 64, 0, 7),
gsSPVertex(&vtx_dossun_1[0], 4, 0),
gsSP1Triangle( 0, 1, 2, 0),
gsSP1Triangle( 0, 2, 3, 0),
gsSPEndDisplayList()
};
Gfx gfx_dossun[] = {
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_WRAP|G_TX_NOMIRROR, 5, G_TX_NOLOD, G_TX_WRAP|G_TX_NOMIRROR, 5, G_TX_NOLOD),
gsSPDisplayList(gfx_dossun_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_dossun_1),
gsSPTexture(0xffff, 0xffff, 0, 0, G_OFF),
gsDPPipeSync(),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
gsSPEndDisplayList()
};
/*================================================================================================*/
/* FLK *
/*================================================================================================*/
/***************************************************************************************************
Funlike Data for Ultra64 Mario
(dosun.n2u)
****************************************************************************************************/
extern short dosun_info2[] = {
/*------------------VertexData ---------------------------*/
BGCHECKCODE_POINT, 20,
-156, 3, 73,
98, 3, 157,
-97, 3, 157,
157, 3, 73,
106, 252, 157,
-105, 252, 157,
157, 252, 79,
0, 302, 102,
93, 330, 0,
-156, 252, 79,
-92, 330, 0,
-156, 3, -72,
-97, 3, -156,
98, 3, -156,
-105, 252, -156,
106, 252, -156,
-156, 252, -78,
0, 302, -101,
157, 3, -72,
157, 252, -78,
/*--------------------- BG Face Data ---------------------------*/
BGCHECKCODE_CAM_NOCHECK, 36,
0, 1, 2,
0, 3, 1,
1, 4, 5,
1, 5, 2,
1, 3, 6,
4, 1, 6,
7, 4, 8,
6, 8, 4,
5, 4, 7,
9, 5, 10,
2, 5, 9,
10, 5, 7,
2, 9, 0,
0, 11, 12,
0, 12, 13,
8, 10, 7,
12, 14, 15,
12, 15, 13,
17, 14, 10,
16, 10, 14,
14, 12, 16,
15, 14, 17,
17, 8, 15,
15, 8, 19,
13, 15, 19,
0, 13, 18,
13, 19, 18,
19, 8, 6,
17, 10, 8,
9, 10, 16,
18, 19, 6,
0, 9, 16,
0, 18, 3,
18, 6, 3,
0, 16, 11,
12, 11, 16,
BGCHECKCODE_PLANEEND,
BGCHECKCODE_ALLEND,
};
extern short dosun_info[] = {
/*------------------VertexData ---------------------------*/
BGCHECKCODE_POINT, 20,
-156, 3, 73,
98, 3, 157,
-97, 3, 157,
157, 3, 73,
106, 252, 157,
-105, 252, 157,
157, 252, 79,
0, 302, 102,
93, 330, 0,
-156, 252, 79,
-92, 330, 0,
-156, 3, -72,
-97, 3, -156,
98, 3, -156,
-105, 252, -156,
106, 252, -156,
-156, 252, -78,
0, 302, -101,
157, 3, -72,
157, 252, -78,
/*--------------------- BG Face Data ---------------------------*/
BGCHECKCODE_CAM_NOCHECK, 36,
0, 1, 2,
0, 3, 1,
1, 4, 5,
1, 5, 2,
1, 3, 6,
4, 1, 6,
7, 4, 8,
6, 8, 4,
5, 4, 7,
9, 5, 10,
2, 5, 9,
10, 5, 7,
2, 9, 0,
0, 11, 12,
0, 12, 13,
8, 10, 7,
12, 14, 15,
12, 15, 13,
17, 14, 10,
16, 10, 14,
14, 12, 16,
15, 14, 17,
17, 8, 15,
15, 8, 19,
13, 15, 19,
0, 13, 18,
13, 19, 18,
19, 8, 6,
17, 10, 8,
9, 10, 16,
18, 19, 6,
0, 9, 16,
0, 18, 3,
18, 6, 3,
0, 16, 11,
12, 11, 16,
BGCHECKCODE_PLANEEND,
BGCHECKCODE_ALLEND,
};
/*################################################################################################*/
#endif
/*################################################################################################*/