Skip to content

Commit

Permalink
Bones: Search for nearby 'air' for fallback bones placement
Browse files Browse the repository at this point in the history
When a player dies on ladders or rope then a space can not be found at or
above player, so this change looks around player for a space to place bones.
  • Loading branch information
tenplus1 authored and paramat committed Sep 10, 2016
1 parent 54235f3 commit 0cbb516
Showing 1 changed file with 7 additions and 7 deletions.
14 changes: 7 additions & 7 deletions mods/bones/init.lua
Expand Up @@ -180,14 +180,14 @@ minetest.register_on_dieplayer(function(player)
local pos = vector.round(player:getpos())
local player_name = player:get_player_name()

-- check if it's possible to place bones, if not go 1 higher
-- check if it's possible to place bones, if not find space near player
if bones_mode == "bones" and not may_replace(pos, player) then
pos.y = pos.y + 1
end

-- still cannot place bones? change mode to 'drop'
if bones_mode == "bones" and not may_replace(pos, player) then
bones_mode = "drop"
local air = minetest.find_node_near(pos, 1, {"air"})
if air and not minetest.is_protected(air, player_name) then
pos = air
else
bones_mode = "drop"
end
end

if bones_mode == "drop" then
Expand Down

0 comments on commit 0cbb516

Please sign in to comment.