MCPcopy Create free account
hub / github.com/DescentDevelopers/Descent3 / AddLineToHUDMessages

Function AddLineToHUDMessages

Descent3/hudmessage.cpp:419–463  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

417// Returns true if message added, or false if message not (because the previous message was the same)
418static bool AddLineToHUDMessages(char *temp_message, ddgr_color color = -1);
419bool AddLineToHUDMessages(char *temp_message, ddgr_color color) {
420 if (Num_hud_messages > 0 && !strcmp(temp_message, HUD_messages[Num_hud_messages - 1]))
421 return 0; // this is the same message as before, don't print it twice!
422
423 if (Dedicated_server) {
424 PrintDedicatedMessage("*%s\n", temp_message);
425 return 1;
426 }
427
428 AddMessageToRollback(temp_message);
429
430 if (color == -1)
431 color = GR_RGB(0, 255, 0);
432
433 if (Num_hud_messages == MAX_HUD_MESSAGES) {
434 // Get rid of top message
435
436 for (int i = 1; i < MAX_HUD_MESSAGES; i++) {
437 strcpy(HUD_messages[i - 1], HUD_messages[i]);
438 HUD_message_type[i - 1] = HUD_message_type[i];
439 HUD_message_color[i - 1] = HUD_message_color[i];
440 }
441
442 Num_hud_messages--;
443
444 Hud_scroll_offset = 0;
445
446 if (!Hud_messages_paused)
447 Hud_timer = Gametime;
448 }
449
450 if (Num_hud_messages == 0 && !Hud_messages_paused)
451 Hud_timer = Gametime;
452
453 CorrectHudMessage(temp_message);
454
455 strcpy(HUD_messages[Num_hud_messages], temp_message);
456 HUD_message_type[Num_hud_messages] = HUD_MESSAGE_NORMAL;
457
458 HUD_message_color[Num_hud_messages] = color;
459
460 Num_hud_messages++;
461
462 return 1;
463}
464
465// Adds line, splitting if too long
466// Returns true if line added

Callers 5

AddColoredHUDMessageFunction · 0.85
AddFilteredHUDMessageFunction · 0.85
AddHUDMessageFunction · 0.85

Calls 4

PrintDedicatedMessageFunction · 0.85
AddMessageToRollbackFunction · 0.85
CorrectHudMessageFunction · 0.85
GR_RGBFunction · 0.50

Tested by

no test coverage detected