From 4330e88e1da3d2ab05cd78bbfd4ca457a883ce6c Mon Sep 17 00:00:00 2001 From: Milan Ihl <milanihl@gmail.com> Date: Wed, 2 Dec 2015 10:43:05 +0100 Subject: [PATCH] tnt works only with grantet priv - removed mesecons temporally --- mods/tnt/init.lua | 33 ++++++++++++++++++++------------- 1 file changed, 20 insertions(+), 13 deletions(-) diff --git a/mods/tnt/init.lua b/mods/tnt/init.lua index 532e698c..e769c412 100644 --- a/mods/tnt/init.lua +++ b/mods/tnt/init.lua @@ -1,11 +1,14 @@ +-- TNT will need privilege! +core.register_privilege("trusted_player", "special grantings, used for tnt for example") +---We want to use it on server, so this is commented -- Default to enabled in singleplayer and disabled in multiplayer ---local singleplayer = minetest.is_singleplayer() ---local setting = minetest.setting_getbool("enable_tnt") ---if (not singleplayer and setting ~= true) or --- (singleplayer and setting == false) then --- return ---end +-- local singleplayer = minetest.is_singleplayer() +-- local setting = minetest.setting_getbool("enable_tnt") +-- if (not singleplayer and setting ~= true) or +-- (singleplayer and setting == false) then +-- return +-- end -- loss probabilities array (one in X will be lost) local loss_prob = {} @@ -216,19 +219,21 @@ minetest.register_node("tnt:tnt", { description = "TNT", tiles = {"tnt_top.png", "tnt_bottom.png", "tnt_side.png"}, is_ground_content = false, - groups = {dig_immediate=2, mesecon=2}, + groups = {dig_immediate=2}, sounds = default.node_sound_wood_defaults(), on_punch = function(pos, node, puncher) if puncher:get_wielded_item():get_name() == "default:torch" then - minetest.sound_play("tnt_ignite", {pos=pos}) - minetest.set_node(pos, {name="tnt:tnt_burning"}) - minetest.get_node_timer(pos):start(4) + if(minetest.check_player_privs(puncher:get_player_name(), {trusted_player=true})) then + minetest.sound_play("tnt_ignite", {pos=pos}) + minetest.set_node(pos, {name="tnt:tnt_burning"}) + minetest.get_node_timer(pos):start(4) + end end end, on_blast = function(pos, intensity) burn(pos) end, - mesecons = {effector = {action_on = boom}}, + --mesecons = {effector = {action_on = boom}}, }) minetest.register_node("tnt:tnt_burning", { @@ -283,9 +288,11 @@ minetest.register_node("tnt:gunpowder", { sounds = default.node_sound_leaves_defaults(), on_punch = function(pos, node, puncher) - if puncher:get_wielded_item():get_name() == "default:torch" then - burn(pos) + if puncher:get_wielded_item():get_name() == "default:torch" then + if(minetest.check_player_privs(puncher:get_player_name(), {trusted_player=true})) then + burn(pos) end + end end, on_blast = function(pos, intensity) burn(pos) -- GitLab