sm64/shape/keep/meter.shape

106 lines
4.0 KiB
Plaintext

/*################################################################################################*/
#ifdef GFX_SHAPE
/*################################################################################################*/
/********************************************************************************
Ultra 64 MARIO Brothers
damege gauge data module
Copyright 1995 Nintendo co., ltd. All rights reserved
********************************************************************************/
static long long meter_dmmy = 0;
#include "Meter/power_meter.h"
/********************************************************************************/
/* Alphabet Pointer for dprintf */
/********************************************************************************/
unsigned short *MeterDataPtr[] = {
pow_meter08_txt,pow_meter07_txt,pow_meter06_txt,pow_meter05_txt,pow_meter04_txt,
pow_meter03_txt,pow_meter02_txt,pow_meter01_txt,
};
/******************************************************************************************
Damege Meter
******************************************************************************************/
static Vtx vtx_damegemeter[] = {
{ -32 , -32 , 0, 0 , 0 , ( 63 << 5), 255,255,255,255},
{ 0 , -32 , 0, 0 , (31 << 5), ( 63 << 5), 255,255,255,255},
{ 0 , 32 , 0, 0 , (31 << 5), 0, 255,255,255,255},
{ -32 , 32 , 0, 0 , 0, 0, 255,255,255,255},
{ 0 , -32 , 0, 0 , 1 , ( 63 << 5), 255,255,255,255},
{ 32 , -32 , 0, 0 , (32 << 5), ( 63 << 5), 255,255,255,255},
{ 32 , 32 , 0, 0 , (32 << 5), 0, 255,255,255,255},
{ 0 , 32 , 0, 0 , 1 , 0, 255,255,255,255},
};
extern Gfx RCP_damegemeter_base[] = {
gsDPPipeSync(),
gsSPClearGeometryMode(G_LIGHTING),
gsDPSetCombineMode(G_CC_DECALRGBA, G_CC_DECALRGBA),
gsDPSetRenderMode(G_RM_TEX_EDGE,G_RM_TEX_EDGE2),
gsDPSetTextureFilter(G_TF_POINT),
gsSPTexture(0xffff, 0xffff, 0, G_TX_RENDERTILE, G_ON),
gsSPVertex(&vtx_damegemeter[0], 8, 0),
gsDPSetTile(G_IM_FMT_RGBA,G_IM_SIZ_16b, 0, 0, 7, 0, 0,0,0, 0,0,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),
gs_Tani_LoadTextureImage2(pow_meter_txt_00, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 64, 0, 7),
gsSP1Triangle(0, 1, 2, 0),
gsSP1Triangle(0, 2, 3, 0),
gs_Tani_LoadTextureImage2(pow_meter_txt_01, G_IM_FMT_RGBA, G_IM_SIZ_16b, 32, 64, 0, 7),
gsSP1Triangle(4, 5, 6, 0),
gsSP1Triangle(4, 6, 7, 0),
gsSPEndDisplayList()
};
#if CHINA
static Vtx vtx_damegemeter_pow[] = {
{ -16 , -20 , 0, 0 , 0, ( 31 << 5), 255,255,255,255},
{ 15 , -20 , 0, 0 , (31 << 5), ( 31 << 5), 255,255,255,255},
{ 15 , 12 , 0, 0 , (31 << 5), 0, 255,255,255,255},
{ -16 , 12 , 0, 0 , 0, 0, 255,255,255,255},
};
#else
static Vtx vtx_damegemeter_pow[] = {
{ -16 , -16 , 0, 0 , 0, ( 31 << 5), 255,255,255,255},
{ 15 , -16 , 0, 0 , (31 << 5), ( 31 << 5), 255,255,255,255},
{ 15 , 16 , 0, 0 , (31 << 5), 0, 255,255,255,255},
{ -16 , 16 , 0, 0 , 0, 0, 255,255,255,255},
};
#endif
extern Gfx RCP_damegemeter_pow_on[] = {
gsDPPipeSync(),
gsSPVertex(&vtx_damegemeter_pow[0], 4, 0),
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),
gsSPEndDisplayList()
};
extern Gfx RCP_damegemeter_pow_off[] = {
gsDPPipeSync(),
gsSPTexture(0xffff, 0xffff, 0, G_TX_RENDERTILE, G_OFF),
gsSPSetGeometryMode(G_LIGHTING),
gsDPSetRenderMode(G_RM_OPA_SURF,G_RM_OPA_SURF2),
gsDPSetCombineMode(G_CC_SHADE, G_CC_SHADE),
gsDPSetTextureFilter(G_TF_BILERP),
gsSPEndDisplayList()
};
/*################################################################################################*/
#endif
/*################################################################################################*/