// ShadFont.h

#ifndef _SHADFONT_H_
#define _SHADFONT_H_


void ShadFont_Clip( const s32 width, const s32 height );
void *ShadFont_Load( char *filename );
void ShadFont_Free( void *font );
void ShadFont_Set( void *font );
void ShadFont_Color( const u8 r, const u8 b, const u8 g );
Gfx *ShadFont_Draw( Gfx *gp, char *text, s32 x, s32 y );

int GetShadFontLength(char * text);	// Based on currently selected Shadow Font
int GetShadFontHeight(void);	// of current ShadowFont
int GetShadFontBlankWidth(void);	// of current ShadowFont

Gfx *ShadFont_DrawCentered( Gfx *gp, char *text, s32 x, s32 y );	// both X,Y centered
Gfx *ShadFont_DrawRightYCentered( Gfx *gp, char *text, s32 x, s32 y );		// y is centered
Gfx *ShadFont_DrawLowY( Gfx *gp, char *text, s32 x, s32 y );			// Y is lower part
Gfx *ShadFont_DrawRight( Gfx *gp, char *text, s32 x, s32 y);
Gfx *ShadFont_DrawCenteredX( Gfx *gp, char *text, s32 x, s32 y ); // X centered, Y top




Gfx * DrawPlyrShadowName   (Gfx * gp,
							PlyrRomData_T *     pcl__P,
							SI                  x,
							SI                  y,
							SI                  maxwidth);

Gfx * DrawPlyrShadowNameCentered   (Gfx * gp,
							PlyrRomData_T *     pcl__P,
							SI                  x,
							SI                  y,
							SI                  maxwidth);



Gfx * DrawPlyrShadow2NamesCentered   (Gfx * gp,
							char * firstname,
							char * lastname,
							SI                  x,
							SI                  y,
							SI                  maxwidth);

extern void *SideShadFont;
extern void *MenuShadFont;
extern void *LargeShadFont;
extern void *SmallShadFont;
extern void *TinyShadFont;

extern int SF_R,SF_G,SF_B;	// for real time modification during debugging

#define SHADFNT_RGB_YELLOW			0xA0,0x80,0x50	
//#define SHADFNT_RGB_BRIGHT_YELLOW	0xf0,0xf0,0x00	really bright
//#define SHADFNT_RGB_BRIGHT_YELLOW	0xd0,0xd0,0x20	still a bit bright
#define SHADFNT_RGB_BRIGHT_YELLOW	0xc0,0xc0,0x20

#define SHADFNT_RGB_PURPLE			228,28,228
#define SHADFNT_RGB_WHITE			228,228,228
#define SHADFNT_RGB_GRAY			0xb0,0xb0,0xb0
#define SHADFNT_RGB_DARK_GRAY		0x80,0x80,0x80
#define SHADFNT_RGB_BLUE			0x40,0x40,0xb0
#define SHADFNT_RGB_DEBUG			SF_R,SF_G,SF_B
#define SHADFNT_RGB_BLACK			0x10,0x10,0x10	


#endif
