aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--builtin/client/cheats/init.lua1
-rw-r--r--builtin/settingtypes.txt2
-rw-r--r--src/client/localplayer.cpp2
-rw-r--r--src/defaultsettings.cpp1
4 files changed, 5 insertions, 1 deletions
diff --git a/builtin/client/cheats/init.lua b/builtin/client/cheats/init.lua
index b8facae9d..4f4d33d86 100644
--- a/builtin/client/cheats/init.lua
+++ b/builtin/client/cheats/init.lua
@@ -24,6 +24,7 @@ core.cheats = {
["JumpOverride"] = "override_jump",
["GravityOverride"] = "override_gravity",
["JetPack"] = "jetpack",
+ ["AntiSlip"] = "antislip",
},
["Render"] = {
["Xray"] = "xray",
diff --git a/builtin/settingtypes.txt b/builtin/settingtypes.txt
index 477b059c8..498e3f035 100644
--- a/builtin/settingtypes.txt
+++ b/builtin/settingtypes.txt
@@ -2371,3 +2371,5 @@ override_gravity_factor (GravityOverride) float 0.8
jetpack (JetPack) bool false
autohit (AutoHit) bool false
+
+antislip (AntiSlip) bool false
diff --git a/src/client/localplayer.cpp b/src/client/localplayer.cpp
index 0da76845a..3b52b18e1 100644
--- a/src/client/localplayer.cpp
+++ b/src/client/localplayer.cpp
@@ -1102,7 +1102,7 @@ float LocalPlayer::getSlipFactor(Environment *env, const v3f &speedH)
Map *map = &env->getMap();
const ContentFeatures &f = nodemgr->get(map->getNode(getStandingNodePos()));
int slippery = 0;
- if (f.walkable)
+ if (f.walkable && ! g_settings->getBool("antislip"))
slippery = itemgroup_get(f.groups, "slippery");
if (slippery >= 1) {
diff --git a/src/defaultsettings.cpp b/src/defaultsettings.cpp
index 8addb72eb..ec1b915ca 100644
--- a/src/defaultsettings.cpp
+++ b/src/defaultsettings.cpp
@@ -144,6 +144,7 @@ void set_default_settings(Settings *settings)
settings->setDefault("override_gravity_factor", "0.9");
settings->setDefault("jetpack", "false");
settings->setDefault("autohit", "false");
+ settings->setDefault("antislip", "false");
// Keymap
settings->setDefault("remote_port", "30000");