]> git.lizzy.rs Git - physics_override.git/commitdiff
Initial Commit
authorElias Fleckenstein <eliasfleckenstein@web.de>
Fri, 11 Dec 2020 16:56:03 +0000 (17:56 +0100)
committerElias Fleckenstein <eliasfleckenstein@web.de>
Fri, 11 Dec 2020 16:56:03 +0000 (17:56 +0100)
README [new file with mode: 0644]
init.lua [new file with mode: 0644]
mod.conf [new file with mode: 0644]
settingtypes.txt [new file with mode: 0644]

diff --git a/README b/README
new file mode 100644 (file)
index 0000000..739964d
--- /dev/null
+++ b/README
@@ -0,0 +1,2 @@
+# physics_override 
+A dragonfire CSM to change your speed, gravity and jump speed using multipliers
diff --git a/init.lua b/init.lua
new file mode 100644 (file)
index 0000000..8d2d324
--- /dev/null
+++ b/init.lua
@@ -0,0 +1,23 @@
+local legit_override
+
+local function get_override_factor(name)
+       if minetest.settings:get_bool("override_" .. name) then
+               return tonumber(minetest.settings:get("override_" .. name .. "_factor")) or 1
+       else
+               return 1.0
+       end
+end
+
+minetest.register_globalstep(function()
+       if not legit_override then return end
+       local override = table.copy(legit_override)
+       override.speed = override.speed * get_override_factor("speed")
+       override.jump = override.jump * get_override_factor("jump")
+       override.gravity = override.gravity * get_override_factor("gravity")
+       minetest.localplayer:set_physics_override(override)
+end)
+
+minetest.register_on_recieve_physics_override(function(override)
+       legit_override = override
+    return true
+end) 
diff --git a/mod.conf b/mod.conf
new file mode 100644 (file)
index 0000000..740760d
--- /dev/null
+++ b/mod.conf
@@ -0,0 +1,3 @@
+name = physics_override
+author = Fleckenstein
+description = A dragonfire CSM to change your speed, gravity and jump speed using multipliers
diff --git a/settingtypes.txt b/settingtypes.txt
new file mode 100644 (file)
index 0000000..801289b
--- /dev/null
@@ -0,0 +1,6 @@
+override_speed (SpeedOverride) bool false
+override_jump (JumpOverride) bool false
+override_gravity (GravityOverride) bool false
+override_speed_factor (SpeedOverride Factor) float 1.2
+override_jump_factor (JumpOverride Factor) float 2.0
+override_gravity_factor (GravityOverride) float 0.8