/******************************************************************************
	enstatus.h
******************************************************************************/

#ifndef ENSTATUS_H
#define ENSTATUS_H

/******************************************************************************
	define constants
******************************************************************************/
#define DIF_TIME_FARME	40
#define PASS_MSG_MAX	3

#define SCORE_MSG_MAX		4
#define SCORE_MSG_TIME		1
#define SCORE_MSG_ACTION	2
#define SCORE_MSG_RING		3

/******************************************************************************
 	structures
******************************************************************************/
typedef struct {
	int	fg;
	int	sc;
	int	ct;
	int	px, py;
	int	vy;
	int	oy;
} Scoremsg;

/******************************************************************************
	external variables
******************************************************************************/
extern int	fdrawmap;

extern int	cstart_signal;
extern int	cextend_msg;
extern int	fbest_lap_msg;
extern int	frank_zoom;
extern int	clast_lap_flash;
extern int	fstatus_move;
extern int	fvs_result_draw;	/* 1: 1P-win, 2: 2P-win, 3: draw */

extern int	en_flash_r1, en_flash_g1, en_flash_b1;	/* K-R-Y-R-K */
extern int	en_flash_r2, en_flash_g2, en_flash_b2;	/* k-G-Y-G-K */
extern int	en_flash_r3, en_flash_g3, en_flash_b3;	/* Pi-Pu-R-Pi-Pu */
extern int	en_flash_r4, en_flash_g4, en_flash_b4;	/* G-W-G */

extern Scoremsg	scoremsg[SCORE_MSG_MAX];

/******************************************************************************
	external functions
******************************************************************************/
extern void InitGameStatus(void);
extern void DoGameStatus(void);
extern void DrawGameStatus(Gfx **ppgfx);
extern void DrawMiniMap(Gfx **ppgfx);
extern void MakeMiniMap(void);
extern void DoIndicator(void);
extern void DoTachometer(void);
extern void DoStartSignal(void);
extern void DrawStartSignal(Gfx **ppgfx);
extern void DoPowerMsg(void);
extern void DoCrsOutMsg(void);
extern void DoRankFace(void);
extern void SetScoreMsg(int fg, int sc, int op);
extern void DoEnemyMark(void);

#endif
