diff options
Diffstat (limited to 'apps/plugins/sdl/progs/wolf3d/wl_menu.h')
-rw-r--r-- | apps/plugins/sdl/progs/wolf3d/wl_menu.h | 237 |
1 files changed, 237 insertions, 0 deletions
diff --git a/apps/plugins/sdl/progs/wolf3d/wl_menu.h b/apps/plugins/sdl/progs/wolf3d/wl_menu.h new file mode 100644 index 0000000000..c56fd7f576 --- /dev/null +++ b/apps/plugins/sdl/progs/wolf3d/wl_menu.h | |||
@@ -0,0 +1,237 @@ | |||
1 | // | ||
2 | // WL_MENU.H | ||
3 | // | ||
4 | #ifdef SPEAR | ||
5 | |||
6 | #define BORDCOLOR 0x99 | ||
7 | #define BORD2COLOR 0x93 | ||
8 | #define DEACTIVE 0x9b | ||
9 | #define BKGDCOLOR 0x9d | ||
10 | //#define STRIPE 0x9c | ||
11 | |||
12 | #define MenuFadeOut() VL_FadeOut(0,255,0,0,51,10) | ||
13 | |||
14 | #else | ||
15 | |||
16 | #define BORDCOLOR 0x29 | ||
17 | #define BORD2COLOR 0x23 | ||
18 | #define DEACTIVE 0x2b | ||
19 | #define BKGDCOLOR 0x2d | ||
20 | #define STRIPE 0x2c | ||
21 | |||
22 | #define MenuFadeOut() VL_FadeOut(0,255,43,0,0,10) | ||
23 | |||
24 | #endif | ||
25 | |||
26 | #define READCOLOR 0x4a | ||
27 | #define READHCOLOR 0x47 | ||
28 | #define VIEWCOLOR 0x7f | ||
29 | #define TEXTCOLOR 0x17 | ||
30 | #define HIGHLIGHT 0x13 | ||
31 | #define MenuFadeIn() VL_FadeIn(0,255,gamepal,10) | ||
32 | |||
33 | |||
34 | #define MENUSONG WONDERIN_MUS | ||
35 | |||
36 | #ifndef SPEAR | ||
37 | #define INTROSONG NAZI_NOR_MUS | ||
38 | #else | ||
39 | #define INTROSONG XTOWER2_MUS | ||
40 | #endif | ||
41 | |||
42 | #define SENSITIVE 60 | ||
43 | #define CENTERX ((int) screenWidth / 2) | ||
44 | #define CENTERY ((int) screenHeight / 2) | ||
45 | |||
46 | #define MENU_X 76 | ||
47 | #define MENU_Y 55 | ||
48 | #define MENU_W 178 | ||
49 | #ifndef SPEAR | ||
50 | #ifndef GOODTIMES | ||
51 | #define MENU_H 13*10+6 | ||
52 | #else | ||
53 | #define MENU_H 13*9+6 | ||
54 | #endif | ||
55 | #else | ||
56 | #define MENU_H 13*9+6 | ||
57 | #endif | ||
58 | |||
59 | #define SM_X 48 | ||
60 | #define SM_W 250 | ||
61 | |||
62 | #define SM_Y1 20 | ||
63 | #define SM_H1 4*13-7 | ||
64 | #define SM_Y2 SM_Y1+5*13 | ||
65 | #define SM_H2 4*13-7 | ||
66 | #define SM_Y3 SM_Y2+5*13 | ||
67 | #define SM_H3 3*13-7 | ||
68 | |||
69 | #define CTL_X 24 | ||
70 | #define CTL_Y 86 | ||
71 | #define CTL_W 284 | ||
72 | #define CTL_H 60 | ||
73 | |||
74 | #define LSM_X 85 | ||
75 | #define LSM_Y 55 | ||
76 | #define LSM_W 175 | ||
77 | #define LSM_H 10*13+10 | ||
78 | |||
79 | #define NM_X 50 | ||
80 | #define NM_Y 100 | ||
81 | #define NM_W 225 | ||
82 | #define NM_H 13*4+15 | ||
83 | |||
84 | #define NE_X 10 | ||
85 | #define NE_Y 23 | ||
86 | #define NE_W 320-NE_X*2 | ||
87 | #define NE_H 200-NE_Y*2 | ||
88 | |||
89 | #define CST_X 20 | ||
90 | #define CST_Y 48 | ||
91 | #define CST_START 60 | ||
92 | #define CST_SPC 60 | ||
93 | |||
94 | |||
95 | // | ||
96 | // TYPEDEFS | ||
97 | // | ||
98 | typedef struct { | ||
99 | short x,y,amount,curpos,indent; | ||
100 | } CP_iteminfo; | ||
101 | |||
102 | typedef struct { | ||
103 | short active; | ||
104 | char string[36]; | ||
105 | int (* routine)(int temp1); | ||
106 | } CP_itemtype; | ||
107 | |||
108 | typedef struct { | ||
109 | short allowed[4]; | ||
110 | } CustomCtrls; | ||
111 | |||
112 | extern CP_itemtype MainMenu[]; | ||
113 | extern CP_iteminfo MainItems; | ||
114 | |||
115 | // | ||
116 | // FUNCTION PROTOTYPES | ||
117 | // | ||
118 | |||
119 | void US_ControlPanel(ScanCode); | ||
120 | |||
121 | void EnableEndGameMenuItem(); | ||
122 | |||
123 | void SetupControlPanel(void); | ||
124 | void SetupSaveGames(); | ||
125 | void CleanupControlPanel(void); | ||
126 | |||
127 | void DrawMenu(CP_iteminfo *item_i,CP_itemtype *items); | ||
128 | int HandleMenu(CP_iteminfo *item_i, | ||
129 | CP_itemtype *items, | ||
130 | void (*routine)(int w)); | ||
131 | void ClearMScreen(void); | ||
132 | void DrawWindow(int x,int y,int w,int h,int wcolor); | ||
133 | void DrawOutline(int x,int y,int w,int h,int color1,int color2); | ||
134 | void WaitKeyUp(void); | ||
135 | void ReadAnyControl(ControlInfo *ci); | ||
136 | void TicDelay(int count); | ||
137 | void CacheLump(int lumpstart,int lumpend); | ||
138 | void UnCacheLump(int lumpstart,int lumpend); | ||
139 | int StartCPMusic(int song); | ||
140 | int Confirm(const char *string); | ||
141 | void Message(const char *string); | ||
142 | void CheckPause(void); | ||
143 | void ShootSnd(void); | ||
144 | void CheckSecretMissions(void); | ||
145 | void BossKey(void); | ||
146 | |||
147 | void DrawGun(CP_iteminfo *item_i,CP_itemtype *items,int x,int *y,int which,int basey,void (*routine)(int w)); | ||
148 | void DrawHalfStep(int x,int y); | ||
149 | void EraseGun(CP_iteminfo *item_i,CP_itemtype *items,int x,int y,int which); | ||
150 | void SetTextColor(CP_itemtype *items,int hlight); | ||
151 | void DrawMenuGun(CP_iteminfo *iteminfo); | ||
152 | void DrawStripes(int y); | ||
153 | |||
154 | void DefineMouseBtns(void); | ||
155 | void DefineJoyBtns(void); | ||
156 | void DefineKeyBtns(void); | ||
157 | void DefineKeyMove(void); | ||
158 | void EnterCtrlData(int index,CustomCtrls *cust,void (*DrawRtn)(int),void (*PrintRtn)(int),int type); | ||
159 | |||
160 | void DrawMainMenu(void); | ||
161 | void DrawSoundMenu(void); | ||
162 | void DrawLoadSaveScreen(int loadsave); | ||
163 | void DrawNewEpisode(void); | ||
164 | void DrawNewGame(void); | ||
165 | void DrawChangeView(int view); | ||
166 | void DrawMouseSens(void); | ||
167 | void DrawCtlScreen(void); | ||
168 | void DrawCustomScreen(void); | ||
169 | void DrawLSAction(int which); | ||
170 | void DrawCustMouse(int hilight); | ||
171 | void DrawCustJoy(int hilight); | ||
172 | void DrawCustKeybd(int hilight); | ||
173 | void DrawCustKeys(int hilight); | ||
174 | void PrintCustMouse(int i); | ||
175 | void PrintCustJoy(int i); | ||
176 | void PrintCustKeybd(int i); | ||
177 | void PrintCustKeys(int i); | ||
178 | |||
179 | void PrintLSEntry(int w,int color); | ||
180 | void TrackWhichGame(int w); | ||
181 | void DrawNewGameDiff(int w); | ||
182 | void FixupCustom(int w); | ||
183 | |||
184 | int CP_NewGame(int); | ||
185 | int CP_Sound(int); | ||
186 | int CP_LoadGame(int quick); | ||
187 | int CP_SaveGame(int quick); | ||
188 | int CP_Control(int); | ||
189 | int CP_ChangeView(int); | ||
190 | int CP_ExitOptions(int); | ||
191 | int CP_Quit(int); | ||
192 | int CP_ViewScores(int); | ||
193 | int CP_EndGame(int); | ||
194 | int CP_CheckQuick(ScanCode scancode); | ||
195 | int CustomControls(int); | ||
196 | int MouseSensitivity(int); | ||
197 | |||
198 | void CheckForEpisodes(void); | ||
199 | |||
200 | void FreeMusic(void); | ||
201 | |||
202 | |||
203 | enum {MOUSE,JOYSTICK,KEYBOARDBTNS,KEYBOARDMOVE}; // FOR INPUT TYPES | ||
204 | |||
205 | enum menuitems | ||
206 | { | ||
207 | newgame, | ||
208 | soundmenu, | ||
209 | control, | ||
210 | loadgame, | ||
211 | savegame, | ||
212 | changeview, | ||
213 | |||
214 | #ifndef GOODTIMES | ||
215 | #ifndef SPEAR | ||
216 | readthis, | ||
217 | #endif | ||
218 | #endif | ||
219 | |||
220 | viewscores, | ||
221 | backtodemo, | ||
222 | quit | ||
223 | }; | ||
224 | |||
225 | // | ||
226 | // WL_INTER | ||
227 | // | ||
228 | typedef struct { | ||
229 | int kill,secret,treasure; | ||
230 | int32_t time; | ||
231 | } LRstruct; | ||
232 | |||
233 | extern LRstruct LevelRatios[]; | ||
234 | |||
235 | void Write (int x,int y,const char *string); | ||
236 | void NonShareware(void); | ||
237 | int GetYorN(int x,int y,int pic); | ||