Details | Last modification | View Log | RSS feed
Rev | Author | Line No. | Line |
---|---|---|---|
1 | pmbaty | 1 | /* |
2 | * This file is part of the DXX-Rebirth project <https://www.dxx-rebirth.com/>. |
||
3 | * It is copyright by its individual contributors, as recorded in the |
||
4 | * project's Git history. See COPYING.txt at the top level for license |
||
5 | * terms and a link to the Git history. |
||
6 | */ |
||
7 | #ifndef _HUD_MSG_H |
||
8 | #define _HUD_MSG_H |
||
9 | |||
10 | #include <stdarg.h> |
||
11 | #include "dxxsconf.h" |
||
12 | #include "dsx-ns.h" |
||
13 | #include "fmtcheck.h" |
||
14 | #include "fwd-gr.h" |
||
15 | |||
16 | #ifdef __cplusplus |
||
17 | |||
18 | #define HUD_MAX_NUM_DISP 4 |
||
19 | #define HUD_MAX_NUM_STOR 20 |
||
20 | |||
21 | // classes - expanded whenever needed |
||
22 | #define HM_DEFAULT 1 // just some normal message |
||
23 | #define HM_MULTI 2 // a message related to multiplayer (game and player messages) |
||
24 | #define HM_REDUNDANT 4 // "you already have..."-type messages. stuff a player is able to supress |
||
25 | #define HM_MAYDUPL 8 // messages that might appear once per frame. for these we want to check all messages we have in queue and supress it if so |
||
26 | |||
27 | extern int HUD_toolong; |
||
28 | extern void HUD_clear_messages(); |
||
29 | #ifdef dsx |
||
30 | namespace dsx { |
||
31 | void HUD_render_message_frame(grs_canvas &); |
||
32 | } |
||
33 | #endif |
||
34 | int HUD_init_message(int class_flag, const char * format, ... ) __attribute_format_printf(2, 3); |
||
35 | #define HUD_init_message(A1,F,...) dxx_call_printf_checked(HUD_init_message,HUD_init_message_literal,(A1),(F),##__VA_ARGS__) |
||
36 | int HUD_init_message_va(int class_flag, const char * format, va_list args) __attribute_format_printf(2, 0); |
||
37 | int HUD_init_message_literal(int class_flag, const char *str); |
||
38 | |||
39 | #endif |
||
40 | |||
41 | #endif |