diff options
| -rw-r--r-- | init.lua | 1 | ||||
| -rw-r--r-- | snow.lua | 27 | 
2 files changed, 28 insertions, 0 deletions
| @@ -532,5 +532,6 @@ dofile(path.."/doors.lua")  dofile(path.."/fire.lua")  dofile(path.."/chatcommands.lua")  dofile(path.."/screwdriver.lua") +dofile(path.."/snow.lua")  end ) diff --git a/snow.lua b/snow.lua new file mode 100644 index 0000000..7f21548 --- /dev/null +++ b/snow.lua @@ -0,0 +1,27 @@ +--[[ +Snow mod rewrite to make it secure for use on landrush +This is a quick workaround before we can upload +an working fix which restores original functionality +]] +if minetest.get_modpath( 'snow' ) then +	local entity_prototype = minetest.registered_entities['snow:snowball_entity'] +	if not entity_prototype then +		print( 'COuld not detect snowball prototype...') +		return +	end +	entity_prototype.on_step = function(self, dtime) +		self.timer=self.timer+dtime +		local pos = self.object:getpos() +		local node = minetest.get_node(pos) + +		if self.lastpos.x~=nil then +			if node.name ~= "air" then +				if landrush.can_interact( ' ', pos ) then +					snow.place(pos) +				end +				self.object:remove() +			end +		end +		self.lastpos={x=pos.x, y=pos.y, z=pos.z} -- Set lastpos-->Node will be added at last pos outside the node +	end +end | 
