diff --git a/src/g_input.c b/src/g_input.c index 5883cc36d..ecda7b3db 100644 --- a/src/g_input.c +++ b/src/g_input.c @@ -750,7 +750,8 @@ static const char *gamecontrolname[num_gamecontrols] = "teamtalk", "rankings", "screenshot", - "recordgif", + "startmovie", + "startlossless", }; #define NUMKEYNAMES (sizeof (keynames)/sizeof (keyname_t)) @@ -889,20 +890,23 @@ void G_DefineDefaultControls(void) { // These defaults are less bad than they used to be. // Keyboard controls - gamecontroldefault[gc_up ][0] = KEY_UPARROW; - gamecontroldefault[gc_down ][0] = KEY_DOWNARROW; - gamecontroldefault[gc_left ][0] = KEY_LEFTARROW; - gamecontroldefault[gc_right ][0] = KEY_RIGHTARROW; - gamecontroldefault[gc_a ][0] = 'f'; - gamecontroldefault[gc_b ][0] = 'a'; - gamecontroldefault[gc_c ][0] = 'v'; - gamecontroldefault[gc_x ][0] = 's'; - gamecontroldefault[gc_y ][0] = 'x'; - gamecontroldefault[gc_z ][0] = 'c'; - gamecontroldefault[gc_l ][0] = KEY_SPACE; - gamecontroldefault[gc_r ][0] = 'd'; - gamecontroldefault[gc_start ][0] = KEY_ESCAPE; - gamecontroldefault[gc_rankings][0] = KEY_TAB; + gamecontroldefault[gc_up ][0] = KEY_UPARROW; + gamecontroldefault[gc_down ][0] = KEY_DOWNARROW; + gamecontroldefault[gc_left ][0] = KEY_LEFTARROW; + gamecontroldefault[gc_right ][0] = KEY_RIGHTARROW; + gamecontroldefault[gc_a ][0] = 'f'; + gamecontroldefault[gc_b ][0] = 'a'; + gamecontroldefault[gc_c ][0] = 'v'; + gamecontroldefault[gc_x ][0] = 's'; + gamecontroldefault[gc_y ][0] = 'x'; + gamecontroldefault[gc_z ][0] = 'c'; + gamecontroldefault[gc_l ][0] = KEY_SPACE; + gamecontroldefault[gc_r ][0] = 'd'; + gamecontroldefault[gc_start ][0] = KEY_ESCAPE; + gamecontroldefault[gc_rankings ][0] = KEY_TAB; + gamecontroldefault[gc_screenshot ][0] = KEY_F8; + gamecontroldefault[gc_startmovie ][0] = KEY_F9; + gamecontroldefault[gc_startlossless][0] = KEY_F10; // Gamepad controls gamecontroldefault[gc_up ][1] = KEY_HAT1+0; // D-Pad Up diff --git a/src/g_input.h b/src/g_input.h index bd52d6ca4..9441a7ef1 100644 --- a/src/g_input.h +++ b/src/g_input.h @@ -84,7 +84,8 @@ typedef enum gc_teamtalk, gc_rankings, gc_screenshot, - gc_recordgif, + gc_startmovie, + gc_startlossless, num_gamecontrols, diff --git a/src/k_profiles.c b/src/k_profiles.c index d43253dfa..8f089b919 100644 --- a/src/k_profiles.c +++ b/src/k_profiles.c @@ -425,7 +425,9 @@ void PR_LoadProfiles(void) { #ifdef DEVELOP // Profile update 1-->2: Add gc_rankings. - if (j == gc_rankings && version < 2) + // Profile update 2-->3: Add gc_startlossless. + if ((j == gc_rankings && version < 2) || + (j == gc_startlossless && version < 3)) { for (k = 0; k < MAXINPUTMAPPING; k++) { diff --git a/src/menus/options-profiles-edit-controls.c b/src/menus/options-profiles-edit-controls.c index f3dd23871..5c1b24548 100644 --- a/src/menus/options-profiles-edit-controls.c +++ b/src/menus/options-profiles-edit-controls.c @@ -53,11 +53,14 @@ menuitem_t OPTIONS_ProfileControls[] = { {IT_HEADER, "OPTIONAL CONTROLS", "Take a screenshot, chat...", NULL, {NULL}, 0, 0}, - {IT_CONTROL, "SCREENSHOT", "Also usable with F8 on Keyboard.", + {IT_CONTROL, "SCREENSHOT", "Take a high resolution screenshot.", NULL, {.routine = M_ProfileSetControl}, gc_screenshot, 0}, - {IT_CONTROL, "GIF CAPTURE", "Also usable with F9 on Keyboard.", - NULL, {.routine = M_ProfileSetControl}, gc_recordgif, 0}, + {IT_CONTROL, "RECORD VIDEO", "Record a video with sound.", + NULL, {.routine = M_ProfileSetControl}, gc_startmovie, 0}, + + {IT_CONTROL, "RECORD LOSSLESS", "Record a pixel perfect GIF.", + NULL, {.routine = M_ProfileSetControl}, gc_startlossless, 0}, {IT_CONTROL, "OPEN CHAT", "Opens chatbox in online games.", NULL, {.routine = M_ProfileSetControl}, gc_talk, 0},