#define SCROLL_UP_BUTTON 4 #define SCROLL_DOWN_BUTTON 5 #define PLAY_BUTTON 6 #define EXIT_BUTTON 7 static SCP_vector<int> Cutscene_list; //static int Stats_scroll_offset; // not used - taylor static int Selected_line = 0; // line that is currently selected for binding static int Scroll_offset; static int Background_bitmap; static UI_BUTTON List_region; static UI_WINDOW Ui_window; static ui_button_info Buttons[GR_NUM_RESOLUTIONS][NUM_BUTTONS] = { { // GR_640 ui_button_info("TDB_00", 7, 3, 37, 7, 0), // tech database 1 ui_button_info("TDB_01", 7, 18, 37, 23, 1), // tech database 2 ui_button_info("TDB_02", 7, 34, 37, 38, 2), // tech database 3 ui_button_info("TDB_03", 7, 49, 37, 54, 3), // tech database 4 ui_button_info("VFB_04", 6, 318, -1, -1, 4), // scroll up ui_button_info("VFB_05", 36, 318, -1, -1, 5), // scroll down ui_button_info("VFB_06", 578, 319, 587, 366, 6), // play ui_button_info("VFB_07", 574, 431, 587, 413, 7), // exit }, { // GR_1024 ui_button_info("2_TDB_00", 12, 5, 59, 12, 0), // tech database 1 ui_button_info("2_TDB_01", 12, 31, 59, 37, 1), // tech database 2 ui_button_info("2_TDB_02", 12, 56, 59, 62, 2), // tech database 3 ui_button_info("2_TDB_03", 12, 81, 59, 88, 3), // tech database 4
{ 386, 734, 480 } // GR_1024 x, y, w }; static coord2dw Medals_label_coords[GR_NUM_RESOLUTIONS]; // coords for the player callsign static int Default_medals_callsign_coords[GR_NUM_RESOLUTIONS][2] = { { -1, 54 }, // we'll use -1 as a convention to center it { -1, 89 } }; static coord2d Medals_callsign_coords[GR_NUM_RESOLUTIONS]; #define MEDALS_NUM_BUTTONS 1 #define MEDALS_EXIT 0 ui_button_info Medals_buttons[GR_NUM_RESOLUTIONS][MEDALS_NUM_BUTTONS] = { { // GR_640 ui_button_info("MEB_18", 574, 432, -1, -1, 18), }, { // GR_1024 ui_button_info("2_MEB_18", 919, 691, -1, -1, 18), } }; static int Exit_button_hotspot_override = -1; #define MEDALS_NUM_TEXT 1 UI_XSTR Medals_text[GR_NUM_RESOLUTIONS][MEDALS_NUM_TEXT] = { { // GR_640 {"Exit", 1466, 587, 416, UI_XSTR_COLOR_PINK, -1, &Medals_buttons[GR_640][MEDALS_EXIT].button }, }, { // GR_1024 {"Exit", 1466, 943, 673, UI_XSTR_COLOR_PINK, -1, &Medals_buttons[GR_1024][MEDALS_EXIT].button }, },
// button controls #define CHATBOX_NUM_BUTTONS 3 #define CHATBOX_SCROLL_UP 0 #define CHATBOX_SCROLL_DOWN 1 #define CHATBOX_TOGGLE_SIZE 2 // used for both big and small // coordinate indicies #define CHATBOX_X_COORD 0 #define CHATBOX_Y_COORD 1 #define CHATBOX_W_COORD 2 #define CHATBOX_H_COORD 3 // chatbox buttons ui_button_info Chatbox_buttons[GR_NUM_RESOLUTIONS][CHATBOX_NUM_BUTTONS+1] = { { // GR_640 ui_button_info("CHB_00", 613, 3, -1, -1, 0), ui_button_info("CHB_01", 613, 41, -1, -1, 1), ui_button_info("CHB_02a", 607, 74, -1, -1, 2), ui_button_info("CHB_02b", 607, 74, -1, -1, 2), }, { // GR_1024 ui_button_info("2_CHB_00", 981, 5, -1, -1, 0), ui_button_info("2_CHB_01", 981, 67, -1, -1, 1), ui_button_info("2_CHB_02a", 971, 119, -1, -1, 2), ui_button_info("2_CHB_02b", 971, 119, -1, -1, 2), } }; int Chatbox_mode_flags = 0; int Chatbox_bitmap = -1;
}; #define NUM_FVW_BUTTONS 3 #define FVW_BUTTON_ACCEPT 0 #define FVW_BUTTON_SCROLL_UP 1 #define FVW_BUTTON_SCROLL_DOWN 2 // the xt and yt fields aren't normally used for width and height, // but the fields would go unused here and this is more // convenient for initialization ui_button_info Fiction_viewer_buttons[NUM_FVW_SETTINGS][GR_NUM_RESOLUTIONS][NUM_FVW_BUTTONS] = { // standard FS2-style interface { { // GR_640 ui_button_info("fvw_accept_", 571, 425, 69, 55, FVW_BUTTON_ACCEPT), ui_button_info("fvw_up_", 614, 14, 25, 31, FVW_BUTTON_SCROLL_UP), ui_button_info("fvw_down_", 614, 370, 25, 31, FVW_BUTTON_SCROLL_DOWN), // Filename x y width height }, { // GR_1024 ui_button_info("2_fvw_accept_", 918, 688, 99, 77, FVW_BUTTON_ACCEPT), ui_button_info("2_fvw_up_", 981, 16, 40, 50, FVW_BUTTON_SCROLL_UP), ui_button_info("2_fvw_down_", 981, 606, 40, 50, FVW_BUTTON_SCROLL_DOWN), } }, // WCS-style interface { { // GR_640 ui_button_info("fvw_accept_", 105, 444, 37, 26, FVW_BUTTON_ACCEPT), ui_button_info("fvw_up_", 576, 51, 37, 33, FVW_BUTTON_SCROLL_UP),
61, 108 // GR_640 }, { 61, 108 // GR_1024 } }; */ #define NUM_BUTTONS 2 #define RA_REPLAY_MISSION 0 #define RA_CONTINUE 1 static ui_button_info Buttons[GR_NUM_RESOLUTIONS][NUM_BUTTONS] = { { // GR_640 ui_button_info("RAB_00", 2, 445, -1, -1, 0), ui_button_info("RAB_01", 575, 432, -1, -1, 1), }, { // GR_1024 ui_button_info("2_RAB_00", 4, 712, -1, -1, 0), ui_button_info("2_RAB_01", 920, 691, -1, -1, 1), } }; #define RED_ALERT_NUM_TEXT 3 UI_XSTR Red_alert_text[GR_NUM_RESOLUTIONS][RED_ALERT_NUM_TEXT] = { { // GR_640 { "Replay", 1405, 46, 451, UI_XSTR_COLOR_PINK, -1, &Buttons[0][RA_REPLAY_MISSION].button }, { "Previous Mission", 1452, 46, 462, UI_XSTR_COLOR_PINK, -1, &Buttons[0][RA_REPLAY_MISSION].button }, { "Continue", 1069, 564, 413, UI_XSTR_COLOR_PINK, -1, &Buttons[0][RA_CONTINUE].button }, },
}; // pilot bitmaps typedef struct np_bitmap { int bitmap; // bitmap id char filename[MAX_FILENAME_LEN]; // filename } np_bitmap; np_bitmap Mp_pilot; // pilot pic np_bitmap Mp_squad; // squad logo UI_WINDOW Multi_pinfo_window; // the window object for the join screen UI_BUTTON Multi_pinfo_select_button; // for selecting list items int Multi_pinfo_bitmap; // the background bitmap ui_button_info Multi_pinfo_buttons[GR_NUM_RESOLUTIONS][MULTI_PINFO_NUM_BUTTONS] = { { // GR_640 ui_button_info("PIB_00", 617, 256, -1, -1, 0), ui_button_info("PIB_01", 617, 298, -1, -1, 1), ui_button_info("PIB_02", 172, 322, -1, -1, 2), ui_button_info("PIB_03", 219, 332, 217, 318, 3) }, { // GR_1024 ui_button_info("2_PIB_00", 988, 410, -1, -1, 0), ui_button_info("2_PIB_01", 988, 477, -1, -1, 1), ui_button_info("2_PIB_02", 276, 516, -1, -1, 2), ui_button_info("2_PIB_03", 350, 532, 348, 510, 3) } }; #define MULTI_PINFO_NUM_TEXT 1 UI_XSTR Multi_pinfo_text[GR_NUM_RESOLUTIONS][MULTI_PINFO_NUM_TEXT] = { { // GR_640
char *Loop_brief_fname[GR_NUM_RESOLUTIONS] = { "LoopBrief", // GR_640 "2_LoopBrief", // GR_1024 }; char *Loop_brief_mask[GR_NUM_RESOLUTIONS] = { "LoopBrief-m", // GR_640 "2_Loopbrief-m", // GR_1024 }; #define NUM_LOOP_BRIEF_BUTTONS 2 #define LOOP_BRIEF_DECLINE 0 #define LOOP_BRIEF_ACCEPT 1 ui_button_info Loop_buttons[GR_NUM_RESOLUTIONS][NUM_LOOP_BRIEF_BUTTONS] = { { // GR_640 ui_button_info("LBB_00", 529, 437, -1, -1, 0), ui_button_info("LBB_01", 575, 433, -1, -1, 1), }, { // GR_1024 ui_button_info("2_LBB_00", 846, 699, -1, -1, 0), ui_button_info("2_LBB_01", 920, 693, -1, -1, 1), } }; #define NUM_LOOP_TEXT 2 UI_XSTR Loop_text[GR_NUM_RESOLUTIONS][NUM_LOOP_TEXT] = { { // GR_640 { "Decline", 1467, 514, 413, UI_XSTR_COLOR_PINK, -1, &Loop_buttons[0][LOOP_BRIEF_DECLINE].button }, { "Accept", 1035, 573, 413, UI_XSTR_COLOR_PINK, -1, &Loop_buttons[0][LOOP_BRIEF_ACCEPT].button }, }, { // GR_1024
}; // button defs #define MHT_READY_ROOM 0 #define MHT_CAMPAIGN_ROOM 1 #define MHT_OPTIONS 2 #define MHT_TECH_ROOM 3 #define MHT_BARRACKS 4 #define MHT_EXIT 5 UI_WINDOW Mht_window; // the window object for the join screen int Mht_bitmap; // the background bitmap ui_button_info Mht_buttons[GR_NUM_RESOLUTIONS][MHT_NUM_BUTTONS] = { { // GR_640 ui_button_info( "MHT_00", 15, 194, -1, -1, 2 ), // ready room ui_button_info( "MHT_01", 15, 222, -1, -1, 5 ), // campaigns ui_button_info( "MHT_02", 14, 251, -1, -1, 4 ), // options ui_button_info( "MHT_03", 14, 280, -1, -1, 3 ), // tech room ui_button_info( "MHT_04", 14, 309, -1, -1, 1 ), // barracks ui_button_info( "MHT_05", 16, 339, -1, -1, 0 ), // exit }, { // GR_1024 ui_button_info( "2_MHT_00", 25, 312, -1, -1, 2 ), // ready room ui_button_info( "2_MHT_01", 25, 357, -1, -1, 5 ), // campaigns ui_button_info( "2_MHT_02", 24, 403, -1, -1, 4 ), // options ui_button_info( "2_MHT_03", 24, 450, -1, -1, 3 ), // tech room ui_button_info( "2_MHT_04", 25, 497, -1, -1, 1 ), // barracks ui_button_info( "2_MHT_05", 27, 544, -1, -1, 0 ), // exit } };
"2_MPPause-m" }; // where to place the pauser's callsign int Mp_callsign_coords[GR_NUM_RESOLUTIONS][2] = { { // GR_640 110, 132 }, { // GR_1024 171, 218 } }; ui_button_info Multi_paused_buttons[GR_NUM_RESOLUTIONS][MULTI_PAUSED_NUM_BUTTONS] = { { // GR_640 ui_button_info("PB00", 519, 212, -1, -1, 0), ui_button_info("PB01", 519, 252, -1, -1, 1), ui_button_info("PB02", 488, 321, -1, -1, 2), }, { // GR_1024 ui_button_info("2_PB00", 831, 339, -1, -1, 0), ui_button_info("2_PB01", 831, 403, -1, -1, 1), ui_button_info("2_PB02", 781, 514, -1, -1, 2), } }; // text #define MULTI_PAUSED_NUM_TEXT 3 UI_XSTR Multi_paused_text[GR_NUM_RESOLUTIONS][MULTI_PAUSED_NUM_BUTTONS] = { { // GR_640 { "Exit", 1059, 493, 297, UI_XSTR_COLOR_PINK, -1, &Multi_paused_buttons[0][MP_EXIT_MISSION].button },
// ---------------------------------------------------------------------------------------------------- // MULTI DOGFIGHT DEFINES/VARS // // interface stuff UI_WINDOW Multi_df_window; #define NUM_MULTI_DF_BUTTONS 1 #define ACCEPT_BUTTON 0 ui_button_info Multi_df_buttons[GR_NUM_RESOLUTIONS][NUM_MULTI_DF_BUTTONS] = { { // GR_640 // accept ui_button_info("CB_05a", 571, 425, 578, 413, 5), }, { // GR_1024 // accept ui_button_info("2_CB_05a", 914, 681, 914, 660, 5), } }; int Multi_df_background_bitmap = -1; const char *Multi_df_background_fname[GR_NUM_RESOLUTIONS] = { "KillMatrix", "2_KillMatrix" }; const char *Multi_df_mask_fname[GR_NUM_RESOLUTIONS] = { "KillMatrix-m", "2_KillMatrix-m"
// button controls #define CHATBOX_NUM_BUTTONS 3 #define CHATBOX_SCROLL_UP 0 #define CHATBOX_SCROLL_DOWN 1 #define CHATBOX_TOGGLE_SIZE 2 // used for both big and small // coordinate indicies #define CHATBOX_X_COORD 0 #define CHATBOX_Y_COORD 1 #define CHATBOX_W_COORD 2 #define CHATBOX_H_COORD 3 // chatbox buttons ui_button_info Chatbox_buttons[GR_NUM_RESOLUTIONS][CHATBOX_NUM_BUTTONS+1] = { { // GR_640 ui_button_info("CHB_00", 565, 5, -1, -1, 0), ui_button_info("CHB_01", 565, 30, -1, -1, 1), ui_button_info("CHB_02a", 565, 70, -1, -1, 2), ui_button_info("CHB_02b", 565, 70, -1, -1, 2), }, { // GR_1024 ui_button_info("2_CHB_00", 981, 5, -1, -1, 0), ui_button_info("2_CHB_01", 981, 67, -1, -1, 1), ui_button_info("2_CHB_02a", 971, 119, -1, -1, 2), ui_button_info("2_CHB_02b", 971, 119, -1, -1, 2), } }; int Chatbox_mode_flags = 0; int Chatbox_bitmap = -1;
#define CMD_BRIEF_BUTTON_FIRST_STAGE 0 #define CMD_BRIEF_BUTTON_PREV_STAGE 1 #define CMD_BRIEF_BUTTON_PAUSE 2 #define CMD_BRIEF_BUTTON_NEXT_STAGE 3 #define CMD_BRIEF_BUTTON_LAST_STAGE 4 #define CMD_BRIEF_BUTTON_HELP 5 #define CMD_BRIEF_BUTTON_OPTIONS 6 #define CMD_BRIEF_BUTTON_ACCEPT 7 #define CMD_BRIEF_BUTTON_SCROLL_UP 8 #define CMD_BRIEF_BUTTON_SCROLL_DOWN 9 // buttons ui_button_info Cmd_brief_buttons[GR_NUM_RESOLUTIONS][MAX_CMD_BRIEF_BUTTONS] = { { // GR_640 ui_button_info("CBB_00", 504, 221, -1, -1, 0), ui_button_info("CBB_01", 527, 221, -1, -1, 1), ui_button_info("CBB_02", 555, 221, -1, -1, 2), ui_button_info("CBB_03", 583, 221, -1, -1, 3), ui_button_info("CBB_04", 607, 221, -1, -1, 4), ui_button_info("CBB_05", 539, 431, -1, -1, 5), ui_button_info("CBB_06", 538, 455, -1, -1, 6), ui_button_info("CBB_07", 575, 432, -1, -1, 7), ui_button_info("CBB_08", 615, 144, -1, -1, 8), ui_button_info("CBB_09", 615, 186, -1, -1, 9), }, { // GR_1024 ui_button_info("2_CBB_00", 806, 354, -1, -1, 0), ui_button_info("2_CBB_01", 844, 354, -1, -1, 1), ui_button_info("2_CBB_02", 888, 354, -1, -1, 2), ui_button_info("2_CBB_03", 933, 354, -1, -1, 3),