summaryrefslogtreecommitdiff
path: root/apps/plugins/doom/hu_stuff.c
diff options
context:
space:
mode:
Diffstat (limited to 'apps/plugins/doom/hu_stuff.c')
-rw-r--r--apps/plugins/doom/hu_stuff.c245
1 files changed, 46 insertions, 199 deletions
diff --git a/apps/plugins/doom/hu_stuff.c b/apps/plugins/doom/hu_stuff.c
index cc240de8c1..747be18df0 100644
--- a/apps/plugins/doom/hu_stuff.c
+++ b/apps/plugins/doom/hu_stuff.c
@@ -56,10 +56,10 @@ int hud_graph_keys=1; //jff 3/7/98 display HUD keys as graphics
56// 56//
57// Ty 03/28/98 - 57// Ty 03/28/98 -
58// These four shortcuts modifed to reflect char ** of mapnamesx[] 58// These four shortcuts modifed to reflect char ** of mapnamesx[]
59#define HU_TITLE (mapnames[(gameepisode-1)*9+gamemap-1]) 59#define HU_TITLE (*mapnames[(gameepisode-1)*9+gamemap-1])
60#define HU_TITLE2 (mapnames2[gamemap-1]) 60#define HU_TITLE2 (*mapnames2[gamemap-1])
61#define HU_TITLEP (mapnamesp[gamemap-1]) 61#define HU_TITLEP (*mapnamesp[gamemap-1])
62#define HU_TITLET (mapnamest[gamemap-1]) 62#define HU_TITLET (*mapnamest[gamemap-1])
63#define HU_TITLEHEIGHT 1 63#define HU_TITLEHEIGHT 1
64#define HU_TITLEX 0 64#define HU_TITLEX 0
65//jff 2/16/98 change 167 to ST_Y-1 65//jff 2/16/98 change 167 to ST_Y-1
@@ -131,16 +131,16 @@ const char* chat_macros[] =
131 // Ty 03/27/98 - *not* externalized 131 // Ty 03/27/98 - *not* externalized
132 // CPhipps - const char* 132 // CPhipps - const char*
133 { 133 {
134 HUSTR_CHATMACRO0,
135 HUSTR_CHATMACRO1, 134 HUSTR_CHATMACRO1,
136 HUSTR_CHATMACRO2, 135 HUSTR_CHATMACRO1,
137 HUSTR_CHATMACRO3, 136 HUSTR_CHATMACRO1,
138 HUSTR_CHATMACRO4, 137 HUSTR_CHATMACRO1,
139 HUSTR_CHATMACRO5, 138 HUSTR_CHATMACRO1,
140 HUSTR_CHATMACRO6, 139 HUSTR_CHATMACRO1,
141 HUSTR_CHATMACRO7, 140 HUSTR_CHATMACRO1,
142 HUSTR_CHATMACRO8, 141 HUSTR_CHATMACRO1,
143 HUSTR_CHATMACRO9 142 HUSTR_CHATMACRO1,
143 HUSTR_CHATMACRO1
144 }; 144 };
145 145
146const char* player_names[] = 146const char* player_names[] =
@@ -206,16 +206,16 @@ int hudcolor_list; // list of messages color
206int hud_list_bgon; // enable for solid window background for message list 206int hud_list_bgon; // enable for solid window background for message list
207 207
208//jff 2/16/98 initialization strings for ammo, health, armor widgets 208//jff 2/16/98 initialization strings for ammo, health, armor widgets
209static char hud_coordstrx[32]; 209static char *hud_coordstrx;
210static char hud_coordstry[32]; 210static char *hud_coordstry;
211static char hud_coordstrz[32]; 211static char *hud_coordstrz;
212static char hud_ammostr[80]; 212static char *hud_ammostr;
213static char hud_healthstr[80]; 213static char *hud_healthstr;
214static char hud_armorstr[80]; 214static char *hud_armorstr;
215static char hud_weapstr[80]; 215static char *hud_weapstr;
216static char hud_keysstr[80]; 216static char *hud_keysstr;
217static char hud_gkeysstr[80]; //jff 3/7/98 add support for graphic key display 217static char *hud_gkeysstr; //jff 3/7/98 add support for graphic key display
218static char hud_monsecstr[80]; 218static char *hud_monsecstr;
219 219
220//jff 2/16/98 declaration of color switch points 220//jff 2/16/98 declaration of color switch points
221extern int ammo_red; 221extern int ammo_red;
@@ -234,175 +234,10 @@ extern int armor_green;
234// Ty 03/27/98 - externalized map name arrays - now in d_deh.c 234// Ty 03/27/98 - externalized map name arrays - now in d_deh.c
235// and converted to arrays of pointers to char * 235// and converted to arrays of pointers to char *
236// See modified HUTITLEx macros 236// See modified HUTITLEx macros
237char* mapnames[] = // DOOM shareware/registered/retail (Ultimate) names. 237extern char **mapnames[];
238 { 238extern char **mapnames2[];
239 239extern char **mapnamesp[];
240 HUSTR_E1M1, 240extern char **mapnamest[];
241 HUSTR_E1M2,
242 HUSTR_E1M3,
243 HUSTR_E1M4,
244 HUSTR_E1M5,
245 HUSTR_E1M6,
246 HUSTR_E1M7,
247 HUSTR_E1M8,
248 HUSTR_E1M9,
249
250 HUSTR_E2M1,
251 HUSTR_E2M2,
252 HUSTR_E2M3,
253 HUSTR_E2M4,
254 HUSTR_E2M5,
255 HUSTR_E2M6,
256 HUSTR_E2M7,
257 HUSTR_E2M8,
258 HUSTR_E2M9,
259
260 HUSTR_E3M1,
261 HUSTR_E3M2,
262 HUSTR_E3M3,
263 HUSTR_E3M4,
264 HUSTR_E3M5,
265 HUSTR_E3M6,
266 HUSTR_E3M7,
267 HUSTR_E3M8,
268 HUSTR_E3M9,
269
270 HUSTR_E4M1,
271 HUSTR_E4M2,
272 HUSTR_E4M3,
273 HUSTR_E4M4,
274 HUSTR_E4M5,
275 HUSTR_E4M6,
276 HUSTR_E4M7,
277 HUSTR_E4M8,
278 HUSTR_E4M9,
279
280 "NEWLEVEL",
281 "NEWLEVEL",
282 "NEWLEVEL",
283 "NEWLEVEL",
284 "NEWLEVEL",
285 "NEWLEVEL",
286 "NEWLEVEL",
287 "NEWLEVEL",
288 "NEWLEVEL"
289 };
290
291char* mapnames2[] = // DOOM 2 map names.
292 {
293 HUSTR_1,
294 HUSTR_2,
295 HUSTR_3,
296 HUSTR_4,
297 HUSTR_5,
298 HUSTR_6,
299 HUSTR_7,
300 HUSTR_8,
301 HUSTR_9,
302 HUSTR_10,
303 HUSTR_11,
304
305 HUSTR_12,
306 HUSTR_13,
307 HUSTR_14,
308 HUSTR_15,
309 HUSTR_16,
310 HUSTR_17,
311 HUSTR_18,
312 HUSTR_19,
313 HUSTR_20,
314
315 HUSTR_21,
316 HUSTR_22,
317 HUSTR_23,
318 HUSTR_24,
319 HUSTR_25,
320 HUSTR_26,
321 HUSTR_27,
322 HUSTR_28,
323 HUSTR_29,
324 HUSTR_30,
325 HUSTR_31,
326 HUSTR_32
327 };
328
329
330char* mapnamesp[] = // Plutonia WAD map names.
331 {
332 PHUSTR_1,
333 PHUSTR_2,
334 PHUSTR_3,
335 PHUSTR_4,
336 PHUSTR_5,
337 PHUSTR_6,
338 PHUSTR_7,
339 PHUSTR_8,
340 PHUSTR_9,
341 PHUSTR_10,
342 PHUSTR_11,
343
344 PHUSTR_12,
345 PHUSTR_13,
346 PHUSTR_14,
347 PHUSTR_15,
348 PHUSTR_16,
349 PHUSTR_17,
350 PHUSTR_18,
351 PHUSTR_19,
352 PHUSTR_20,
353
354 PHUSTR_21,
355 PHUSTR_22,
356 PHUSTR_23,
357 PHUSTR_24,
358 PHUSTR_25,
359 PHUSTR_26,
360 PHUSTR_27,
361 PHUSTR_28,
362 PHUSTR_29,
363 PHUSTR_30,
364 PHUSTR_31,
365 PHUSTR_32
366 };
367
368
369char *mapnamest[] = // TNT WAD map names.
370 {
371 THUSTR_1,
372 THUSTR_2,
373 THUSTR_3,
374 THUSTR_4,
375 THUSTR_5,
376 THUSTR_6,
377 THUSTR_7,
378 THUSTR_8,
379 THUSTR_9,
380 THUSTR_10,
381 THUSTR_11,
382
383 THUSTR_12,
384 THUSTR_13,
385 THUSTR_14,
386 THUSTR_15,
387 THUSTR_16,
388 THUSTR_17,
389 THUSTR_18,
390 THUSTR_19,
391 THUSTR_20,
392
393 THUSTR_21,
394 THUSTR_22,
395 THUSTR_23,
396 THUSTR_24,
397 THUSTR_25,
398 THUSTR_26,
399 THUSTR_27,
400 THUSTR_28,
401 THUSTR_29,
402 THUSTR_30,
403 THUSTR_31,
404 THUSTR_32
405 };
406 241
407// key tables 242// key tables
408// jff 5/10/98 french support removed, 243// jff 5/10/98 french support removed,
@@ -466,6 +301,18 @@ void HU_Init(void)
466 301
467 shiftxform = english_shiftxform; 302 shiftxform = english_shiftxform;
468 303
304 // malloc all the strings, trying to get size down
305 hud_ammostr=malloc(80*sizeof(char));
306 hud_healthstr=malloc(80*sizeof(char));
307 hud_armorstr=malloc(80*sizeof(char));
308 hud_weapstr=malloc(80*sizeof(char));
309 hud_keysstr=malloc(80*sizeof(char));
310 hud_gkeysstr=malloc(80*sizeof(char));
311 hud_monsecstr=malloc(80*sizeof(char));
312 hud_coordstrx=malloc(32*sizeof(char));
313 hud_coordstry=malloc(32*sizeof(char));
314 hud_coordstrz=malloc(32*sizeof(char));
315
469 // load the heads-up font 316 // load the heads-up font
470 j = HU_FONTSTART; 317 j = HU_FONTSTART;
471 for (i=0;i<HU_FONTSIZE;i++,j++) 318 for (i=0;i<HU_FONTSIZE;i++,j++)
@@ -768,15 +615,15 @@ void HU_Start(void)
768 615
769 // initialize the automaps coordinate widget 616 // initialize the automaps coordinate widget
770 //jff 3/3/98 split coordstr widget into 3 parts 617 //jff 3/3/98 split coordstr widget into 3 parts
771 snprintf(hud_coordstrx,sizeof(hud_coordstrx),"X: %d",0); //jff 2/22/98 added z 618 snprintf(hud_coordstrx,32*sizeof(char),"X: %d",0); //jff 2/22/98 added z
772 s = hud_coordstrx; 619 s = hud_coordstrx;
773 while (*s) 620 while (*s)
774 HUlib_addCharToTextLine(&w_coordx, *(s++)); 621 HUlib_addCharToTextLine(&w_coordx, *(s++));
775 snprintf(hud_coordstry,sizeof(hud_coordstry),"Y: %d",0); //jff 3/3/98 split x,y,z 622 snprintf(hud_coordstry,32*sizeof(char),"Y: %d",0); //jff 3/3/98 split x,y,z
776 s = hud_coordstry; 623 s = hud_coordstry;
777 while (*s) 624 while (*s)
778 HUlib_addCharToTextLine(&w_coordy, *(s++)); 625 HUlib_addCharToTextLine(&w_coordy, *(s++));
779 snprintf(hud_coordstrz,sizeof(hud_coordstrz),"Z: %d",0); //jff 3/3/98 split x,y,z 626 snprintf(hud_coordstrz,32*sizeof(char),"Z: %d",0); //jff 3/3/98 split x,y,z
780 s = hud_coordstrz; 627 s = hud_coordstrz;
781 while (*s) 628 while (*s)
782 HUlib_addCharToTextLine(&w_coordz, *(s++)); 629 HUlib_addCharToTextLine(&w_coordz, *(s++));
@@ -915,7 +762,7 @@ void HU_Drawer(void)
915 762
916 //jff 2/16/98 output new coord display 763 //jff 2/16/98 output new coord display
917 // x-coord 764 // x-coord
918 snprintf(hud_coordstrx,sizeof(hud_coordstrx),"X: %d", (plr->mo->x)>>FRACBITS); 765 snprintf(hud_coordstrx,32*sizeof(char),"X: %d", (plr->mo->x)>>FRACBITS);
919 HUlib_clearTextLine(&w_coordx); 766 HUlib_clearTextLine(&w_coordx);
920 s = hud_coordstrx; 767 s = hud_coordstrx;
921 while (*s) 768 while (*s)
@@ -924,7 +771,7 @@ void HU_Drawer(void)
924 771
925 //jff 3/3/98 split coord display into x,y,z lines 772 //jff 3/3/98 split coord display into x,y,z lines
926 // y-coord 773 // y-coord
927 snprintf(hud_coordstry,sizeof(hud_coordstry),"Y: %d", (plr->mo->y)>>FRACBITS); 774 snprintf(hud_coordstry,32*sizeof(char),"Y: %d", (plr->mo->y)>>FRACBITS);
928 HUlib_clearTextLine(&w_coordy); 775 HUlib_clearTextLine(&w_coordy);
929 s = hud_coordstry; 776 s = hud_coordstry;
930 while (*s) 777 while (*s)
@@ -934,7 +781,7 @@ void HU_Drawer(void)
934 //jff 3/3/98 split coord display into x,y,z lines 781 //jff 3/3/98 split coord display into x,y,z lines
935 //jff 2/22/98 added z 782 //jff 2/22/98 added z
936 // z-coord 783 // z-coord
937 snprintf(hud_coordstrz,sizeof(hud_coordstrz),"Z: %d", (plr->mo->z)>>FRACBITS); 784 snprintf(hud_coordstrz,32*sizeof(char),"Z: %d", (plr->mo->z)>>FRACBITS);
938 HUlib_clearTextLine(&w_coordz); 785 HUlib_clearTextLine(&w_coordz);
939 s = hud_coordstrz; 786 s = hud_coordstrz;
940 while (*s) 787 while (*s)
@@ -1399,7 +1246,7 @@ void HU_Drawer(void)
1399 // build the init string with fixed colors 1246 // build the init string with fixed colors
1400 snprintf 1247 snprintf
1401 ( 1248 (
1402 hud_monsecstr,sizeof(hud_monsecstr), 1249 hud_monsecstr,80*sizeof(char),
1403 "STS \x1b\x36K \x1b\x33%d \x1b\x36M \x1b\x33%d \x1b\x37I \x1b\x33%d/%d \x1b\x35S \x1b\x33%d/%d", 1250 "STS \x1b\x36K \x1b\x33%d \x1b\x36M \x1b\x33%d \x1b\x37I \x1b\x33%d/%d \x1b\x35S \x1b\x33%d/%d",
1404 plr->killcount,totallive, 1251 plr->killcount,totallive,
1405 plr->itemcount,totalitems, 1252 plr->itemcount,totalitems,