Compare commits

...

6 Commits

Author SHA1 Message Date
bri cassa 5a04858fc0 Merge remote-tracking branch 'upstream/master' 2023-11-22 23:27:58 +01:00
tenplus1 ad3a575257
Add support for Pova mod (#5) 2023-07-28 21:01:55 +02:00
David Leal 7aad47076e
Remove `default` as a dependency (#4)
"default" is no longer directly used by this mod.
2023-07-26 21:48:48 +02:00
Sys Quatre e89aae8092 Merge branch 'master' of yunohost.local:minetest-mods/cozy into nalc-1.2-dev 2019-12-22 11:48:15 +01:00
Sys Quatre 0a725be9a6 Ajoute message de chargement du mod dans le journal action 2019-12-22 11:47:41 +01:00
David Leal b51cd0326c Use mod.conf for dependencies, and description (#3) 2019-10-17 21:13:46 +02:00
4 changed files with 19 additions and 11 deletions

View File

@ -1,2 +0,0 @@
default
player_monoids?

View File

@ -1 +0,0 @@
Adds sitting down, and lying down player animations.

View File

@ -1,4 +1,5 @@
local has_monoids = minetest.global_exists("player_monoids")
local has_pova = minetest.global_exists("pova")
local function freeze(player)
local player_name = player:get_player_name()
@ -6,10 +7,13 @@ local function freeze(player)
player_monoids.speed:add_change(player, 0, "cozy:speed")
player_monoids.jump:add_change(player, 0, "cozy:jump")
player_monoids.gravity:add_change(player, 0, "cozy:gravity")
elseif has_pova then
pova.add_override(player_name, "force", {speed = 0, jump = 0, gravity = 0})
pova.do_override(player)
else
player:set_physics_override({speed = 0, jump = 0, gravity = 0})
end
default.player_attached[player_name] = true
player_api.player_attached[player_name] = true
end
local function unfreeze(player)
@ -18,11 +22,14 @@ local function unfreeze(player)
player_monoids.speed:del_change(player, "cozy:speed")
player_monoids.jump:del_change(player, "cozy:jump")
player_monoids.gravity:del_change(player, "cozy:gravity")
elseif has_pova then
pova.del_override(player_name, "force")
pova.do_override(player)
else
player:set_physics_override({speed = 1, jump = 1, gravity = 1})
end
default.player_attached[player_name] = nil
default.player_set_animation(player, "stand", 30)
player_api.player_attached[player_name] = nil
player_api.set_animation(player, "stand", 30)
player:set_eye_offset({x=0, y=0, z=0}, {x=0, y=0, z=0})
end
@ -32,7 +39,7 @@ minetest.register_globalstep(function(dtime)
local player = players[i]
local name = player:get_player_name()
local control = player:get_player_control()
if default.player_attached[name] and not player:get_attach() and (
if player_api.player_attached[name] and not player:get_attach() and (
control.up == true or
control.down == true or
control.left == true or
@ -48,11 +55,11 @@ minetest.register_chatcommand("sit", {
description = "Sit down",
func = function(name)
local player = minetest.get_player_by_name(name)
if default.player_attached[name] then
if player_api.player_attached[name] then
unfreeze(player)
else
freeze(player)
default.player_set_animation(player, "sit", 30)
player_api.set_animation(player, "sit", 30)
player:set_eye_offset({x=0, y=-7, z=2}, {x=0, y=0, z=0})
end
end
@ -62,13 +69,14 @@ minetest.register_chatcommand("lay", {
description = "Lay down",
func = function(name)
local player = minetest.get_player_by_name(name)
if default.player_attached[name] then
if player_api.player_attached[name] then
unfreeze(player)
else
freeze(player)
default.player_set_animation(player, "lay", 0)
player_api.set_animation(player, "lay", 0)
player:set_eye_offset({x=0, y=-13, z=0}, {x=0, y=0, z=0})
end
end
})
minetest.log("action", "[cozy] loaded.")

View File

@ -1 +1,4 @@
name = cozy
depends = player_api
optional_depends = player_monoids, pova
description = Adds sitting down, and lying down player animations.