Stop autoforward on BACKWARD key-press (#7417)
authortukkek <tukkek@gmail.com>
Wed, 6 Jun 2018 12:31:34 +0000 (09:31 -0300)
committerSmallJoker <SmallJoker@users.noreply.github.com>
Wed, 6 Jun 2018 12:31:34 +0000 (14:31 +0200)
builtin/settingtypes.txt
src/game.cpp

index 51797f7deb9b0dbcc2688975b75e429081b86981..8e42fe29a98e0d72ba8666e5f2cab8ddf0373e09 100644 (file)
@@ -115,7 +115,8 @@ safe_dig_and_place (Safe digging and placing) bool false
 #    Enable random user input (only used for testing).
 random_input (Random input) bool false
 
-#    Continuous forward movement, toggled by autoforward key.
+#    Continuous forward movement, toggled by autoforward key. 
+#    Press the autoforward key again or the backwards movement to disable.
 continuous_forward (Continuous forward) bool false
 
 #    The length in pixels it takes for touch screen interaction to start.
@@ -147,6 +148,7 @@ joystick_frustum_sensitivity (Joystick frustum sensitivity) float 170
 keymap_forward (Forward key) key KEY_KEY_W
 
 #    Key for moving the player backward.
+#    Will also disable autoforward, when active.
 #    See http://irrlicht.sourceforge.net/docu/namespaceirr.html#a54da2a0e231901735e3da1b0edf72eb3
 keymap_backward (Backward key) key KEY_KEY_S
 
index 648c71774be68c653538420ac29cafcea2e55d5b..0da8e166175b642a384b1ad15fbc8e3632de041e 100644 (file)
@@ -1861,6 +1861,9 @@ void Game::processKeyInput()
                dropSelectedItem(isKeyDown(KeyType::SNEAK));
        } else if (wasKeyDown(KeyType::AUTOFORWARD)) {
                toggleAutoforward();
+       } else if (wasKeyDown(KeyType::BACKWARD)) {
+               if (g_settings->getBool("continuous_forward"))
+                       toggleAutoforward();
        } else if (wasKeyDown(KeyType::INVENTORY)) {
                openInventory();
        } else if (input->cancelPressed()) {