1 /* $Id: menu.h,v 1.7 2003-10-10 09:36:35 btb Exp $ */
3 THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
4 SOFTWARE CORPORATION ("PARALLAX"). PARALLAX, IN DISTRIBUTING THE CODE TO
5 END-USERS, AND SUBJECT TO ALL OF THE TERMS AND CONDITIONS HEREIN, GRANTS A
6 ROYALTY-FREE, PERPETUAL LICENSE TO SUCH END-USERS FOR USE BY SUCH END-USERS
7 IN USING, DISPLAYING, AND CREATING DERIVATIVE WORKS THEREOF, SO LONG AS
8 SUCH USE, DISPLAY OR CREATION IS FOR NON-COMMERCIAL, ROYALTY OR REVENUE
9 FREE PURPOSES. IN NO EVENT SHALL THE END-USER USE THE COMPUTER CODE
10 CONTAINED HEREIN FOR REVENUE-BEARING PURPOSES. THE END-USER UNDERSTANDS
11 AND AGREES TO THE TERMS HEREIN AND ACCEPTS THE SAME BY USE OF THIS FILE.
12 COPYRIGHT 1993-1999 PARALLAX SOFTWARE CORPORATION. ALL RIGHTS RESERVED.
17 * Menu prototypes and variables
20 * Revision 1.1 1995/05/16 15:59:14 allender
23 * Revision 2.1 1995/03/06 16:47:41 mike
26 * Revision 2.0 1995/02/27 11:29:47 john
27 * New version 2.0, which has no anonymous unions, builds with
28 * Watcom 10.0, and doesn't require parsing BITMAPS.TBL.
30 * Revision 1.34 1994/12/12 00:16:16 john
31 * Added auto-leveling flag.
33 * Revision 1.33 1994/12/07 20:04:26 mike
34 * set Max_debris_objects.
36 * Revision 1.32 1994/11/14 17:23:19 rob
37 * ADded extern for default difficulty settings.
39 * Revision 1.31 1994/11/10 11:08:29 mike
42 * Revision 1.30 1994/11/05 14:05:53 john
43 * Fixed fade transitions between all screens by making gr_palette_fade_in and out keep
44 * track of whether the palette is faded in or not. Then, wherever the code needs to fade out,
45 * it just calls gr_palette_fade_out and it will fade out if it isn't already. The same with fade_in.
46 * This eliminates the need for all the flags like Menu_fade_out, game_fade_in palette, etc.
48 * Revision 1.29 1994/11/02 11:59:44 john
49 * Moved menu out of game into inferno main loop.
51 * Revision 1.28 1994/10/17 20:30:59 john
52 * Made the text for the difficulty labels global so that
53 * the high score screen can print "rookie" or whatever.
55 * Revision 1.27 1994/10/04 10:47:09 matt
56 * Made main menu remember selected item
58 * Revision 1.26 1994/08/10 19:55:19 john
59 * Changed font stuff; Took out old menu; messed up lots of
60 * other stuff like game sequencing messages, etc.
62 * Revision 1.25 1994/06/23 18:54:09 matt
63 * Cleaned up game start/menu interaction, and improved main menu a little
65 * Revision 1.24 1994/06/21 12:11:50 yuan
66 * Fixed up menus and added HUDisplay messages.
68 * Revision 1.23 1994/06/20 23:15:16 yuan
69 * Color switching capability for the menus.
71 * Revision 1.22 1994/06/20 22:02:25 yuan
72 * Made menu GREEN by POPULAR DEMAND!!
74 * Revision 1.21 1994/06/20 21:05:48 yuan
77 * Revision 1.20 1994/06/20 19:19:29 yuan
78 * Tidied up the menu and the "message blocks" between levels, etc.
80 * Revision 1.19 1994/06/17 18:01:10 john
81 * A bunch of new stuff by John
83 * Revision 1.18 1994/05/16 09:37:22 matt
84 * Got rid of global continue_flag
86 * Revision 1.17 1994/05/14 17:14:51 matt
87 * Got rid of externs in source (non-header) files
89 * Revision 1.16 1994/05/10 12:14:26 yuan
90 * Game save/load... Demo levels 1-5 added...
91 * High scores fixed...
93 * Revision 1.15 1994/05/05 09:21:21 yuan
94 * *** empty log message ***
96 * Revision 1.14 1994/04/29 14:55:40 mike
97 * Change some menu colors.
99 * Revision 1.13 1994/04/28 18:04:36 yuan
101 * Trigger problem fixed (seg pointer is replaced by index now.)
103 * Revision 1.12 1994/02/18 11:55:01 yuan
104 * Fixed menu to be called from game.
106 * Revision 1.11 1994/02/10 17:45:39 yuan
107 * Integrated some hacks which still need to be fixed.
109 * Revision 1.10 1994/02/01 22:50:23 yuan
110 * Final menu version for demo
112 * Revision 1.9 1994/02/01 11:50:17 yuan
113 * Moved quit message down just a tiny bit
115 * Revision 1.8 1994/01/31 17:30:16 yuan
116 * Fixed quit not disappearing problem
118 * Revision 1.7 1994/01/31 12:25:20 yuan
121 * Revision 1.6 1994/01/26 13:14:04 john
122 * *** empty log message ***
124 * Revision 1.5 1993/12/29 16:44:44 yuan
125 * Added some function definitions
127 * Revision 1.4 1993/12/13 18:53:12 yuan
128 * Fixed dependency problem
130 * Revision 1.3 1993/12/12 13:53:51 yuan
131 * Added menu and -g flag
133 * Revision 1.2 1993/12/10 16:07:17 yuan
134 * Working on menu system. Updated the title screen.
136 * Revision 1.1 1993/12/10 12:45:27 yuan
145 // returns number of item chosen
147 extern void do_options_menu();
148 extern void d2x_options_menu();
150 extern int MenuHires;
152 #ifdef RELEASE // read only from hog file
153 #define MENU_PCX_MAC_SHARE ("\x01menub.pcx")
154 #define MENU_PCX_SHAREWARE ("\x01menud.pcx")
155 #define MENU_PCX_OEM (MenuHires?"\x01menuob.pcx":"\x01menuo.pcx")
156 #define MENU_PCX_FULL (MenuHires?"\x01menub.pcx":"\x01menu.pcx")
158 #define MENU_PCX_MAC_SHARE ("menub.pcx")
159 #define MENU_PCX_SHAREWARE ("menud.pcx")
160 #define MENU_PCX_OEM (MenuHires?"menuob.pcx":"menuo.pcx")
161 #define MENU_PCX_FULL (MenuHires?"menub.pcx":"menu.pcx")
164 // name of background bitmap
165 #define Menu_pcx_name (cfexist(MENU_PCX_FULL)?MENU_PCX_FULL:(cfexist(MENU_PCX_OEM)?MENU_PCX_OEM:cfexist(MENU_PCX_SHAREWARE)?MENU_PCX_SHAREWARE:MENU_PCX_MAC_SHARE))
167 extern void set_detail_level_parameters(int detail_level);
169 extern char *menu_difficulty_text[];
170 extern int Player_default_difficulty;
171 extern int Max_debris_objects;
172 extern int Auto_leveling_on;
173 extern int Missile_view_enabled;
174 extern int Escort_view_enabled;
175 extern int Cockpit_rear_view;