SRB2/src/st_stuff.h

129 lines
2.8 KiB
C
Raw Normal View History

2014-03-15 16:59:03 +00:00
// SONIC ROBO BLAST 2
//-----------------------------------------------------------------------------
// Copyright (C) 1993-1996 by id Software, Inc.
// Copyright (C) 1998-2000 by DooM Legacy Team.
2018-11-25 12:35:38 +00:00
// Copyright (C) 1999-2018 by Sonic Team Junior.
2014-03-15 16:59:03 +00:00
//
// This program is free software distributed under the
// terms of the GNU General Public License, version 2.
// See the 'LICENSE' file for more details.
//-----------------------------------------------------------------------------
/// \file st_stuff.h
/// \brief Status bar header
#ifndef __STSTUFF_H__
#define __STSTUFF_H__
#include "doomtype.h"
#include "d_event.h"
#include "d_player.h"
#include "r_defs.h"
//
// STATUS BAR
//
// Called by main loop.
2019-11-18 14:39:54 +00:00
void ST_Ticker(boolean run);
2014-03-15 16:59:03 +00:00
// Called by main loop.
void ST_Drawer(void);
2014-03-15 16:59:03 +00:00
// Called when the console player is spawned on each level.
void ST_Start(void);
// Called by startup code.
void ST_Init(void);
// Called by G_Responder() when pressing F12 while viewing a demo.
void ST_changeDemoView(void);
void ST_UnloadGraphics(void);
void ST_LoadGraphics(void);
// face load graphics, called when skin changes
void ST_LoadFaceGraphics(INT32 playernum);
2014-03-15 16:59:03 +00:00
void ST_ReloadSkinFaceGraphics(void);
void ST_doPaletteStuff(void);
2019-11-18 14:39:54 +00:00
// title card
void ST_startTitleCard(void);
void ST_preDrawTitleCard(void);
void ST_runTitleCard(void);
void ST_drawTitleCard(void);
void ST_preLevelTitleCardLoop(tic_t ticker, boolean update);
void ST_runPreLevelTitleCard(tic_t ticker);
void ST_drawWipeTitleCard(void);
extern tic_t lt_ticker, lt_lasttic;
extern tic_t lt_exitticker, lt_endtime;
2014-03-15 16:59:03 +00:00
// return if player a is in the same team as player b
boolean ST_SameTeam(player_t *a, player_t *b);
//--------------------
// status bar overlay
//--------------------
extern boolean st_overlay; // sb overlay on or off when fullscreen
extern INT32 st_palette; // 0 is default, any others are special palettes.
2019-11-18 14:39:54 +00:00
extern INT32 st_translucency;
2014-03-15 16:59:03 +00:00
extern lumpnum_t st_borderpatchnum;
// patches, also used in intermission
extern patch_t *tallnum[10];
extern patch_t *sboscore;
extern patch_t *sbotime;
extern patch_t *sbocolon;
2014-03-25 02:17:59 +00:00
extern patch_t *sboperiod;
2014-03-15 16:59:03 +00:00
extern patch_t *faceprefix[MAXSKINS]; // face status patches
extern patch_t *superprefix[MAXSKINS]; // super face status patches
extern patch_t *livesback;
extern patch_t *stlivex;
2014-03-15 16:59:03 +00:00
extern patch_t *ngradeletters[7];
/** HUD location information (don't move this comment)
*/
typedef struct
{
INT32 x, y, f;
2014-03-15 16:59:03 +00:00
} hudinfo_t;
typedef enum
{
HUD_LIVES,
2014-03-21 18:42:55 +00:00
2014-03-15 16:59:03 +00:00
HUD_RINGS,
HUD_RINGSNUM,
HUD_RINGSNUMTICS,
2014-03-21 18:42:55 +00:00
2014-03-15 16:59:03 +00:00
HUD_SCORE,
HUD_SCORENUM,
2014-03-21 18:42:55 +00:00
HUD_TIME,
HUD_MINUTES,
HUD_TIMECOLON,
2014-03-15 16:59:03 +00:00
HUD_SECONDS,
HUD_TIMETICCOLON,
2014-03-21 18:42:55 +00:00
HUD_TICS,
2014-03-15 16:59:03 +00:00
HUD_SS_TOTALRINGS,
2014-03-21 18:42:55 +00:00
2014-03-15 16:59:03 +00:00
HUD_GETRINGS,
HUD_GETRINGSNUM,
HUD_TIMELEFT,
HUD_TIMELEFTNUM,
HUD_TIMEUP,
HUD_HUNTPICS,
HUD_POWERUPS,
2014-03-15 16:59:03 +00:00
NUMHUDITEMS
} hudnum_t;
extern hudinfo_t hudinfo[NUMHUDITEMS];
extern UINT16 objectsdrawn;
#endif