12 #ifndef __MISSIONBRIEFCOMMON_H__
13 #define __MISSIONBRIEFCOMMON_H__
20 #define MAX_TEXT_STREAMS 2 // how many concurrent streams of text can be displayed
26 #define MIN_BRIEF_ICONS 35 // keep up to date
28 #define ICON_FIGHTER 0
29 #define ICON_FIGHTER_WING 1
31 #define ICON_CARGO_WING 3
32 #define ICON_LARGESHIP 4
33 #define ICON_LARGESHIP_WING 5
34 #define ICON_CAPITAL 6
36 #define ICON_ASTEROID_FIELD 8
37 #define ICON_WAYPOINT 9
38 #define ICON_SUPPORT_SHIP 10
39 #define ICON_FREIGHTER_NO_CARGO 11
40 #define ICON_FREIGHTER_WITH_CARGO 12
41 #define ICON_FREIGHTER_WING_NO_CARGO 13
42 #define ICON_FREIGHTER_WING_WITH_CARGO 14
43 #define ICON_INSTALLATION 15
44 #define ICON_BOMBER 16
45 #define ICON_BOMBER_WING 17
46 #define ICON_CRUISER 18
47 #define ICON_CRUISER_WING 19
48 #define ICON_UNKNOWN 20
49 #define ICON_UNKNOWN_WING 21
50 #define ICON_FIGHTER_PLAYER 22
51 #define ICON_FIGHTERW_PLAYER 23
52 #define ICON_BOMBER_PLAYER 24
53 #define ICON_BOMBERW_PLAYER 25
54 #define ICON_KNOSSOS_DEVICE 26
55 #define ICON_TRANSPORT_WING 27
56 #define ICON_CORVETTE 28
57 #define ICON_GAS_MINER 29
59 #define ICON_SUPERCAP 31
60 #define ICON_SENTRYGUN 32
61 #define ICON_JUMP_NODE 33
62 #define ICON_TRANSPORT 34
84 #define MAX_BRIEF_LINES 70
85 #define MAX_BRIEF_LINE_LEN 256 // max number of chars in a briefing line
86 #define MAX_BRIEF_LINE_W_640 375 // max width of line in pixels in 640x480 mode
87 #define MAX_BRIEF_LINE_W_1024 600 // max width of line in pixels in 1024x768 mode
89 #define MAX_DEBRIEF_LINES 60
90 #define MAX_DEBRIEF_LINE_LEN 256 // max number of chars in a debriefing line
91 #define MAX_DEBRIEF_LINE_W 500 // max width of line in pixels
93 #define MAX_ICON_TEXT_LEN 1024 // max number of chars for icon info
94 #define MAX_ICON_TEXT_LINES 30
95 #define MAX_ICON_TEXT_LINE_LEN 256 // max number of chars in icon info line
96 #define MAX_ICON_TEXT_LINE_W 170 // max width of line in pixels
98 #define MAX_STAGE_ICONS 20
99 #define MAX_BRIEF_STAGES 15
100 #define MAX_DEBRIEF_STAGES 40
101 #define MAX_LABEL_LEN 64
103 #define BI_HIGHLIGHT (1<<0)
104 #define BI_SHOWHIGHLIGHT (1<<1)
105 #define BI_FADEIN (1<<2)
106 #define BI_MIRROR_ICON (1<<3) // mirror the briefing icon so it points the other way - phreak
107 #define BI_USE_WING_ICON (1<<4) // use wing variant of briefing icon
108 #define BI_USE_CARGO_ICON (1<<5) // use cargo variant of briefing icon
130 #define MAX_BRIEF_STAGE_LINES 20
137 #define BS_FORWARD_CUT (1<<0)
138 #define BS_BACKWARD_CUT (1<<1)
156 : text( ), camera_time( 0 ), flags( 0 ), formula( -1 ),
157 num_icons( 0 ), icons( NULL ), num_lines( 0 ), lines( NULL )
174 : formula( -1 ), text( ),
175 recommendation_text( )
236 #define BRIEF_GRID3_X1 42
237 #define BRIEF_GRID3_Y1 122
238 #define BRIEF_GRID0_X2 585
239 #define BRIEF_GRID0_Y2 371
240 #define BRIEF_GRID_W (BRIEF_GRID0_X2-BRIEF_GRID3_X1+1)
241 #define BRIEF_GRID_H (BRIEF_GRID0_Y2-BRIEF_GRID3_Y1+1)
295 void brief_render_icon(
int stage_num,
int icon_num,
float frametime,
int selected = 0,
float w_scale_factor = 1.0
f,
float h_scale_factor = 1.0
f);
318 int brief_render_text(
int line_offset,
int x,
int y,
int h,
float frametime,
int instance = 0,
int line_spacing = 0);
void brief_common_get_icon_dimensions(int *w, int *h, brief_icon *bi)
void brief_reset_icons(int stage_num)
char weapon_select_background[GR_NUM_RESOLUTIONS][MAX_FILENAME_LEN]
GLfloat GLfloat GLfloat GLfloat h
SCP_string recommendation_text
char * Brief_static_name[GR_NUM_RESOLUTIONS]
int Brief_static_coords[GR_NUM_RESOLUTIONS][2]
#define GR_NUM_RESOLUTIONS
void brief_voice_pause(int stage_num)
int brief_render_text(int line_offset, int x, int y, int h, float frametime, int instance=0, int line_spacing=0)
char background[GR_NUM_RESOLUTIONS][MAX_FILENAME_LEN]
int brief_time_to_advance(int stage_num)
std::basic_string< char, std::char_traits< char >, std::allocator< char > > SCP_string
int Brief_bmap_coords[GR_NUM_RESOLUTIONS][2]
void brief_voice_load_all()
int Brief_grid_coords[GR_NUM_RESOLUTIONS][4]
void brief_render_icon(int stage_num, int icon_num, float frametime, int selected=0, float w_scale_factor=1.0f, float h_scale_factor=1.0f)
void brief_voice_stop(int stage_num)
const float BRIEF_TEXT_WIPE_TIME
struct briefing_icon_info briefing_icon_type
char ship_select_background[GR_NUM_RESOLUTIONS][MAX_FILENAME_LEN]
void brief_camera_move(float frametime, int stage_num)
char voice[MAX_FILENAME_LEN]
float Brief_text_wipe_time_elapsed
int Brief_text_coords[GR_NUM_RESOLUTIONS][4]
struct brief_icon brief_icon
void mission_brief_common_init()
void brief_reset_last_new_stage()
briefing Briefings[MAX_TVT_TEAMS]
int Briefing_voice_enabled
void brief_voice_unpause(int stage_num)
int brief_color_text_init(const char *src, int w, const char default_color= '\0', int instance=0, int max_lines=MAX_BRIEF_LINES, const bool append=false)
char voice[MAX_FILENAME_LEN]
void mission_brief_common_reset()
GLint GLint GLint GLint GLint x
debriefing Debriefings[MAX_TVT_TEAMS]
void brief_render_icon_line(int stage_num, int line_num)
char background[GR_NUM_RESOLUTIONS][MAX_FILENAME_LEN]
void brief_voice_unload_all()
void brief_blit_stage_num(int stage_num, int stage_max)
GLubyte GLubyte GLubyte GLubyte w
SCP_vector< briefing_icon_info > Briefing_icon_info
int Brief_text_max_lines[GR_NUM_RESOLUTIONS]
struct brief_screen brief_sceen
struct brief_line brief_line
briefing_icon_info * brief_get_icon_info(brief_icon *bi)
void brief_set_new_stage(vec3d *pos, matrix *orient, int time, int stage_num)
void brief_common_close()
int Num_brief_text_lines[MAX_TEXT_STREAMS]
void mission_debrief_common_reset()
void brief_restart_text_wipe()
char closeup_label[MAX_LABEL_LEN]
char label[MAX_LABEL_LEN]
void brief_init_screen(int multiplayer_flag)
void brief_render_map(int stage_num, float frametime)
matrix vmd_identity_matrix
void brief_parse_icon_tbl()
void brief_voice_play(int stage_num)
#define MAX_DEBRIEF_STAGES