From ce73643b107bb9cd7390f42457634d311b70c761 Mon Sep 17 00:00:00 2001 From: orwell96 Date: Tue, 14 Nov 2017 23:16:08 +0100 Subject: Do not punch signs For some reason, a sign text gets removed by a train when it drives by. This should fix it. --- advtrains/trainlogic.lua | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/advtrains/trainlogic.lua b/advtrains/trainlogic.lua index 0f71ad6..c158ebe 100644 --- a/advtrains/trainlogic.lua +++ b/advtrains/trainlogic.lua @@ -598,7 +598,8 @@ function advtrains.train_step_b(id, train, dtime) --- 8c damage other objects --- local objs = minetest.get_objects_inside_radius(rcollpos, 2) for _,obj in ipairs(objs) do - if not obj:is_player() and obj:get_armor_groups().fleshy and obj:get_armor_groups().fleshy > 0 then + if not obj:is_player() and obj:get_armor_groups().fleshy and obj:get_armor_groups().fleshy > 0 + and obj:get_luaentity() and obj:get_luaentity().name~="signs:text" then obj:punch(obj, 1, { full_punch_interval = 1.0, damage_groups = {fleshy = 1000}, }, nil) end end -- cgit v1.2.3