31 #define KEY_DESCRIPTION_OFFSET 193
34 #define GP_FIRST_SCREEN 0 // keep up to date
36 #define GP_HELP_BASIC_KEYS 0
37 #define GP_HELP_MOVEMENT_KEYS 1
38 #define GP_HELP_COMMON_TARGET_KEYS 2
39 #define GP_HELP_ADVANCED_TARGET_KEYS 3
40 #define GP_HELP_MESSAGING 4
41 #define GP_HELP_WEAPON_KEYS 5
42 #define GP_HELP_THROTTLE_AND_ETS_KEYS 6
43 #define GP_HELP_VIEW_KEYS 7
44 #define GP_HELP_MISC_KEYS 8
45 #define GP_HELP_MULTI_KEYS 9
47 #define GP_LAST_SCREEN_SINGLE 8 // keep up to date
48 #define GP_LAST_SCREEN_MULTI 9 // keep up to date
54 #define PREVIOUS_PAGE_BUTTON 0
55 #define NEXT_PAGE_BUTTON 1
56 #define CONTINUE_BUTTON 2
84 #define GAME_HELP_NUM_TEXT 2
107 static int Background_bitmap;
108 static int Gameplay_help_inited = 0;
110 static int Current_help_page;
117 int has_key=0, has_joy=0;
129 strcat(buf,
XSTR(
", ", 129));
135 if ( !has_key && !has_joy ) {
136 strcpy(buf,
XSTR(
"no binding", 130));
139 strcat(buf,
XSTR(
" - ", 131));
140 strcat(buf, ci->
text);
147 int has_key=0, has_joy=0;
168 if ( !has_key && !has_joy ) {
204 if ( Gameplay_help_inited ) {
243 Gameplay_help_inited = 1;
331 int x_offset, y_offset, separation;
335 switch ( Current_help_page ) {
342 y_offset += separation;
345 y_offset += separation;
348 y_offset += separation;
351 y_offset += separation;
354 y_offset += separation;
357 y_offset += separation;
360 y_offset += separation;
363 y_offset += separation;
364 y_offset += separation;
370 y_offset += separation;
371 y_offset += separation;
375 y_offset += separation;
378 y_offset += separation;
381 y_offset += separation;
384 y_offset += separation;
387 y_offset += separation;
399 y_offset += separation;
402 y_offset += separation;
405 y_offset += separation;
408 y_offset += separation;
411 y_offset += separation;
414 y_offset += separation;
417 y_offset += separation;
420 y_offset += separation;
423 y_offset += separation;
426 y_offset += separation;
429 y_offset += separation;
432 y_offset += separation;
435 y_offset += separation;
438 y_offset += separation;
441 y_offset += separation;
452 y_offset += separation;
455 y_offset += separation;
458 y_offset += separation;
461 y_offset += separation;
464 y_offset += separation;
467 y_offset += separation;
470 y_offset += separation;
473 y_offset += separation;
476 y_offset += separation;
479 y_offset += separation;
482 y_offset += separation;
485 y_offset += separation;
496 y_offset += separation;
499 y_offset += separation;
502 y_offset += separation;
505 y_offset += separation;
508 y_offset += separation;
511 y_offset += separation;
514 y_offset += separation;
517 y_offset += separation;
520 y_offset += separation;
523 y_offset += separation;
526 y_offset += separation;
529 y_offset += separation;
532 y_offset += separation;
535 y_offset += separation;
538 y_offset += separation;
541 y_offset += separation;
544 y_offset += separation;
556 y_offset += separation;
559 y_offset += separation;
562 y_offset += separation;
565 y_offset += separation;
568 y_offset += separation;
571 y_offset += separation;
574 y_offset += separation;
577 y_offset += separation;
580 y_offset += separation;
583 y_offset += separation;
586 y_offset += separation;
589 y_offset += separation;
600 y_offset += separation;
603 y_offset += separation;
606 y_offset += separation;
609 y_offset += separation;
612 y_offset += separation;
615 y_offset += separation;
626 y_offset += separation;
629 y_offset += separation;
632 y_offset += separation;
635 y_offset += separation;
638 y_offset += separation;
641 y_offset += separation;
644 y_offset += separation;
647 y_offset += separation;
650 y_offset += separation;
653 y_offset += separation;
656 y_offset += separation;
674 y_offset += separation;
677 y_offset += separation;
682 y_offset += separation;
685 y_offset += separation;
690 y_offset += separation;
695 y_offset += separation;
698 y_offset += separation;
702 y_offset += separation;
705 y_offset += separation;
717 y_offset += separation;
720 y_offset += separation;
723 y_offset += separation;
726 y_offset += separation;
729 y_offset += separation;
732 y_offset += separation;
735 y_offset += separation;
738 y_offset += separation;
741 y_offset += separation;
744 y_offset += separation;
747 y_offset += separation;
758 gr_printf_menu(0x8000,y_offset,
XSTR(
"Ingame messaging keys (tap for text, hold for voice)", 168));
761 y_offset += separation;
763 y_offset += separation;
766 y_offset += separation;
769 y_offset += separation;
772 y_offset += separation;
786 if (!Gameplay_help_inited) {
805 if (Background_bitmap >= 0) {
820 if ( Gameplay_help_inited ) {
821 if (Background_bitmap >= 0) {
830 Gameplay_help_inited = 0;
target your target's target
void set_highlight_action(void(*_user_function)(void))
#define PREVIOUS_PAGE_BUTTON
void add_XSTR(char *string, int _xstr_id, int _x, int _y, UI_GADGET *_assoc, int _color_type, int _font_id=-1)
toggle the squadmate messaging menu
increase energy to engines
GLfloat GLfloat GLfloat GLfloat h
short key_id
actual key bound to action
TARGET_LAST_TRANMISSION_SENDER.
VIEW_EXTERNAL_TOGGLE_CAMERA_LOCK.
decrease shield recharge rate
#define KEY_DESCRIPTION_OFFSET
#define GP_HELP_WEAPON_KEYS
wingman message: attack current target
#define GR_NUM_RESOLUTIONS
__inline void gr_string(int x, int y, const char *string, int resize_mode=GR_RESIZE_FULL)
target the closest ship attacking current target
char * gameplay_help_control_text(int id, char *buf)
toggle auto-match target speed
void gameplay_help_blit_control_line(int x, int y, int id)
#define CONTROL_CONFIG_XSTR
#define GR_MAYBE_CLEAR_RES(bmap)
void gr_set_color_fast(color *dst)
target closest ship that is attacking player
void gr_set_bitmap(int bitmap_num, int alphablend_mode, int bitblt_mode, float alpha)
char * textify_scancode(int code)
GLenum GLuint GLenum GLsizei const GLchar * buf
int bm_release(int handle, int clear_render_targets)
Frees both a bitmap's data and it's associated slot.
short joy_id
joystick button bound to action
#define GP_HELP_MULTI_KEYS
config_item Control_config[]
Stores the keyboard configuration.
transfer shield energy to right
stop targeting subsystems on ship
void common_set_interface_palette(char *filename)
#define GP_HELP_VIEW_KEYS
void set_mask_bmap(char *fname)
int set_bmaps(char *ani_filename, int nframes=3, int start_frame=1)
void common_free_interface_palette()
void weapon_pause_sounds()
#define GP_HELP_THROTTLE_AND_ETS_KEYS
#define GAME_HELP_NUM_TEXT
message targeted ship (if player)
wingman message: cover me
increase shield recharge rate
Switching to a new screen, but not commit.
void gameplay_help_set_title(const char *title)
sprintf(buf,"(%f,%f,%f)", v3->xyz.x, v3->xyz.y, v3->xyz.z)
decrease energy to engines
#define GP_HELP_MISC_KEYS
wingman message: disarm current target
void gameplay_help_button_pressed(int n)
void gameplay_help_goto_prev_screen()
wingman message: form on my wing
target next subsystem on current target
cycle number of missiles fired from secondary bank
cycle to previous primary weapon
target ship closest to center of reticle
target the closest friendly ship
void gameplay_help_process_key(int k)
GLint GLint GLint GLint GLint x
cycle to next secondary weapon
const char * XSTR(const char *str, int index)
target the closest repair ship
wingman message: engage enemy
void gameplay_help_leave()
#define GP_HELP_COMMON_TARGET_KEYS
void set_hotkey(int keycode)
GLuint const GLchar * name
void weapon_unpause_sounds()
int bm_load(const char *real_filename)
Loads a bitmap so we can draw with it later.
GLboolean GLboolean GLboolean b
wingman message: protect current target
equalize shield energy to all quadrants
void link_hotspot(int num)
void create(UI_WINDOW *wnd, char *_text, int _x, int _y, int _w, int _h, int do_repeat=0, int ignore_focus=0)
void gameplay_help_init()
target ships subsystem in reticle
#define GP_HELP_MESSAGING
void create(int _x, int _y, int _w, int _h, int _flags, int _f_id=-1)
void audiostream_unpause_all(bool via_sexp_or_script=false)
#define GP_LAST_SCREEN_MULTI
cycle to next primary weapon
char * text
describes the action in the config screen
void common_play_highlight_sound()
decrease weapon recharge rate
void gameplay_help_blit_control_line_raw(int x, int y, const char *control_text, const char *control_description)
MINUS_5_PERCENT_THROTTLE.
void gameplay_help_do_frame(float frametime)
transfer shield energy to left
target the next friendly ship
wingman message: capture current target
target the previous closest hostile
#define GP_HELP_BASIC_KEYS
TARGET_PREV_UNINSPECTED_CARGO.
wingman message: disable current target
void gr_bitmap(int _x, int _y, int resize_mode)
#define UI_XSTR_COLOR_GREEN
wingman message: warp out
void gameplay_help_goto_next_screen()
cycle to next radar range
#define GP_LAST_SCREEN_SINGLE
void gameplay_help_close()
void gamesnd_play_iface(int n)
void audiostream_pause_all(bool via_sexp_or_script=false)
int process(int key_in=-1, int process_mouse=1)
increase weapon recharge rate
#define GP_HELP_ADVANCED_TARGET_KEYS
void _cdecl gr_printf_menu(int x, int y, const char *format,...)
void gameseq_post_event(int event)
TARGET_NEXT_UNINSPECTED_CARGO.
transfer shield energy to rear
void gameplay_help_draw_text()
target the next hostile target
#define GP_HELP_MOVEMENT_KEYS
transfer shield energy to front