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 __GAMESCREEN_H 20 #define __GAMESCREEN_H 21 22 /* 23 * $Source: n:/project/cit/src/inc/RCS/screen.h $ 24 * $Revision: 1.20 $ 25 * $Author: dc $ 26 * $Date: 1994/05/11 21:42:04 $ 27 * 28 * 29 */ 30 31 #define GADGET_GAMESCREEN 32 33 // C Library Includes 34 35 // System Library Includes 36 #include "frtypesx.h" 37 38 // Master Game Includes 39 40 // Game Library Includes 41 42 // Game Object Includes 43 44 // Defines 45 #define SCREEN_VIEW_X 28 46 #define SCREEN_VIEW_Y 24 47 #define SCREEN_VIEW_HEIGHT 108 48 #define SCREEN_VIEW_WIDTH 268 49 50 // Prototypes 51 52 // Initialize the main game screen. This should only be called once, at 53 // the major initialization stage of the program. 54 errtype screen_init(void); 55 56 // Bring the main game screen to the monitor, doing appropriate cool 57 // looking tricks (palette fading, etc.) as necessary 58 void screen_start(void); 59 60 // Do appropriate stuff to indicate that we have left the game screen 61 void screen_exit(void); 62 63 // Force a draw of the whole durned screen 64 errtype screen_draw(void); 65 66 // Stop doing graphics things 67 errtype screen_shutdown(void); 68 69 // Handle keyboard input anywhere on the main screen 70 uchar main_kb_callback(uiEvent *h, LGRegion *r, intptr_t udata); 71 72 // rct NULL means fullscreen, slb NULL is no slabinit, key and maus are callbacks, NULL is no install 73 void generic_reg_init(uchar create_reg, LGRegion *reg, LGRect *rct, uiSlab *slb, uiHandlerProc key_h, uiHandlerProc maus_h); 74 75 // Globals 76 #ifdef __SCREEN_SRC 77 uchar *default_font_buf; 78 LGRegion *root_region, *mainview_region, *status_region, *inventory_region_game; 79 LGRegion *pagebutton_region_game; 80 LGCursor globcursor, wait_cursor, fire_cursor; 81 frc *normal_game_fr_context; 82 #else 83 extern uchar *default_font_buf; 84 extern LGRegion *root_region, *mainview_region, *inventory_region_game, *status_region; 85 extern LGRegion *pagebutton_region_game; 86 extern LGCursor globcursor, wait_cursor, fire_cursor; 87 extern frc *normal_game_fr_context; 88 #endif 89 90 #endif // __GAMESCREEN_H 91