1 // 2 // Copyright(C) 1993-1996 Id Software, Inc. 3 // Copyright(C) 2005-2014 Simon Howard 4 // 5 // This program is free software; you can redistribute it and/or 6 // modify it under the terms of the GNU General Public License 7 // as published by the Free Software Foundation; either version 2 8 // of the License, or (at your option) any later version. 9 // 10 // This program is distributed in the hope that it will be useful, 11 // but WITHOUT ANY WARRANTY; without even the implied warranty of 12 // MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 // GNU General Public License for more details. 14 // 15 // DESCRIPTION: 16 // Status bar code. 17 // Does the face/direction indicator animatin. 18 // Does palette indicators as well (red pain/berserk, bright pickup) 19 // 20 21 #ifndef __STSTUFF_H__ 22 #define __STSTUFF_H__ 23 24 #include "doomtype.h" 25 #include "d_event.h" 26 #include "m_cheat.h" 27 28 // Size of statusbar. 29 // Now sensitive for scaling. 30 #define ST_HEIGHT 32 31 #define ST_WIDTH ORIGWIDTH 32 #define ST_Y (ORIGHEIGHT - ST_HEIGHT) 33 34 #define CRISPY_HUD 12 35 36 // [crispy] Demo Timer widget 37 extern void ST_DrawDemoTimer (const int time); 38 extern int defdemotics, deftotaldemotics; 39 40 // 41 // STATUS BAR 42 // 43 44 // Called by main loop. 45 boolean ST_Responder (event_t* ev); 46 47 // Called by main loop. 48 void ST_Ticker (void); 49 50 // Called by main loop. 51 void ST_Drawer (boolean fullscreen, boolean refresh); 52 53 // Called when the console player is spawned on each level. 54 void ST_Start (void); 55 56 // Called by startup code. 57 void ST_Init (void); 58 59 // [crispy] forcefully initialize the status bar backing screen 60 extern void ST_refreshBackground(boolean force); 61 62 63 // States for status bar code. 64 typedef enum 65 { 66 AutomapState, 67 FirstPersonState 68 69 } st_stateenum_t; 70 71 72 // States for the chat code. 73 typedef enum 74 { 75 StartChatState, 76 WaitDestState, 77 GetChatState 78 79 } st_chatstateenum_t; 80 81 82 83 extern pixel_t *st_backing_screen; 84 extern cheatseq_t cheat_mus; 85 extern cheatseq_t cheat_god; 86 extern cheatseq_t cheat_ammo; 87 extern cheatseq_t cheat_ammonokey; 88 extern cheatseq_t cheat_noclip; 89 extern cheatseq_t cheat_commercial_noclip; 90 extern cheatseq_t cheat_powerup[8]; // [crispy] idbehold0 91 extern cheatseq_t cheat_choppers; 92 extern cheatseq_t cheat_clev; 93 extern cheatseq_t cheat_mypos; 94 95 96 #endif 97