1 /* 2 3 Copyright (C) 2015-2018 Night Dive Studios, LLC. 4 5 This program is free software: you can redistribute it and/or modify 6 it under the terms of the GNU General Public License as published by 7 the Free Software Foundation, either version 3 of the License, or 8 (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 You should have received a copy of the GNU General Public License 16 along with this program. If not, see <http://www.gnu.org/licenses/>. 17 18 */ 19 #ifndef __HUD_H 20 #define __HUD_H 21 22 /* 23 * $Source: r:/prj/cit/src/inc/RCS/hud.h $ 24 * $Revision: 1.23 $ 25 * $Author: mahk $ 26 * $Date: 1994/08/11 18:31:34 $ 27 * 28 * 29 */ 30 31 // Includes 32 #include "frtypesx.h" 33 34 // C Library Includes 35 36 // System Library Includes 37 38 // Master Game Includes 39 40 // Game Library Includes 41 42 // Game Object Includes 43 44 // Defines 45 #define HUD_RADIATION 0x00000001u // Are we in radiation 46 #define HUD_BIOHAZARD 0x00000002u // Are we in a bio area 47 #define HUD_RANGE 0x00000004u // Range to target 48 #define HUD_FATIGUE 0x00000008u // High fatigue levels 49 #define HUD_TARGRECT 0x00000010u // Rectangle around target 50 #define HUD_GRENADE 0x00000020u // Time to detonate grenade 51 #define HUD_INFRARED 0x00000040u // Infrared active 52 #define HUD_SHIELD 0x00000080u // Show shield absorption 53 #define HUD_SHODOMETER 0x00000100u // Changes in shodometer 54 #define HUD_DETECT_EXP 0x00000200u // Explosion detection 55 #define HUD_COMPASS 0x00000400u // Compass 56 #define HUD_ZEROGRAV 0x00000800u // abnormal gravity conditions 57 #define HUD_FAKEID 0x00001000u // fakeid software in use 58 #define HUD_DECOY 0x00002000u // decoy software in use 59 #define HUD_TURBO 0x00004000u // turbo software in use 60 #define HUD_CYBERTIME 0x00008000u // time remaining until SHODAN sends his avatar against you 61 #define HUD_CYBERDANGER 0x00010000u // imminent peril of being ejected from cspace 62 #define HUD_RADPOISON 0x00100000u // taking radiation damage 63 #define HUD_BIOPOISON 0x00200000u // taking bio damage 64 #define HUD_BEAMHOT 0x00400000u // weapon about to overheat 65 #define HUD_MSGLINE 0x00800000u // message line. 66 #define HUD_GAMETIME 0x01000000u // time remaining in game 67 #define HUD_ENERGYUSE 0x02000000u // energy usage notification 68 #define HUD_ENVIROUSE 0x04000000u // enviro suit drain/absorb 69 #define HUD_MESSAGE 0x80000000u // general hud bit for hud_message (NIY) 70 71 #define HUD_ALL 0xFFFFFFFFu 72 73 #define HUD_COLOR_BANKS 3 74 #define HUD_COLORS_PER_BANK 5 75 76 // Prototypes 77 78 // Update the HUD. If redraw_whole is TRUE, better draw the 79 // whole durned thing. 80 errtype hud_update(uchar redraw_whole, frc *context); 81 errtype cyber_hud_update(uchar redraw_whole); 82 83 // Set the data being displayed by the HUD. 84 errtype hud_set(ulong hud_modes); 85 errtype hud_unset(ulong hud_modes); 86 errtype hud_set_time(ulong hud_modes, ulong ticks); 87 88 // Globals 89 extern LGRect target_screen_rect; 90 extern ubyte hud_colors[HUD_COLOR_BANKS][HUD_COLORS_PER_BANK]; 91 extern ubyte hud_color_bank; 92 93 #endif // __HUD_H 94