Let node 'place' and 'dug' sounds be heard by other players

This commit is contained in:
sfan5 2020-01-25 21:49:27 +01:00 committed by Nils Dagsson Moskopp
parent 9c47c36741
commit 6e956c9c07
Signed by: erlehmann
GPG Key ID: A3BC671C35191080
1 changed files with 20 additions and 4 deletions

View File

@ -305,9 +305,6 @@ function core.item_place_node(itemstack, placer, pointed_thing, param2,
return itemstack, nil return itemstack, nil
end end
log("action", playername .. " places node "
.. def.name .. " at " .. core.pos_to_string(place_to))
local oldnode = core.get_node(place_to) local oldnode = core.get_node(place_to)
local newnode = {name = def.name, param1 = 0, param2 = param2 or 0} local newnode = {name = def.name, param1 = 0, param2 = param2 or 0}
@ -333,7 +330,7 @@ function core.item_place_node(itemstack, placer, pointed_thing, param2,
z = above.z - placer_pos.z z = above.z - placer_pos.z
} }
newnode.param2 = core.dir_to_facedir(dir) newnode.param2 = core.dir_to_facedir(dir)
log("action", "facedir: " .. newnode.param2) log("info", "facedir: " .. newnode.param2)
end end
end end
@ -364,9 +361,20 @@ function core.item_place_node(itemstack, placer, pointed_thing, param2,
return itemstack, nil return itemstack, nil
end end
log("action", playername .. " places node "
.. def.name .. " at " .. core.pos_to_string(place_to))
-- Add node and update -- Add node and update
core.add_node(place_to, newnode) core.add_node(place_to, newnode)
-- Play sound if it was done by a player
if playername ~= "" and def.sounds and def.sounds.place then
core.sound_play(def.sounds.place, {
pos = place_to,
exclude_player = playername,
}, true)
end
local take_item = true local take_item = true
-- Run callback -- Run callback
@ -606,6 +614,14 @@ function core.node_dig(pos, node, digger)
-- Remove node and update -- Remove node and update
core.remove_node(pos) core.remove_node(pos)
-- Play sound if it was done by a player
if diggername ~= "" and def.sounds and def.sounds.dug then
core.sound_play(def.sounds.dug, {
pos = pos,
exclude_player = diggername,
}, true)
end
-- Run callback -- Run callback
if def and def.after_dig_node then if def and def.after_dig_node then
-- Copy pos and node because callback can modify them -- Copy pos and node because callback can modify them