forked from mtcontrib/pipeworks
		
	Support setting teleport tube can_receive by digilines (#68)
				
					
				
			* allow setting can_receive flag by digilines basically also allows sending tables to change both or either the tp-channel and receive toggle * apply suggestions Co-authored-by: OgelGames <olliverdc28@gmail.com> --------- Co-authored-by: OgelGames <olliverdc28@gmail.com>
This commit is contained in:
		
				
					committed by
					
						
						OgelGames
					
				
			
			
				
	
			
			
			
						parent
						
							2c880a3843
						
					
				
				
					commit
					9395013cde
				
			@@ -270,14 +270,29 @@ local function repair_tube(pos, node)
 | 
			
		||||
	update_meta(meta)
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
local function digiline_action(pos, _, channel, msg)
 | 
			
		||||
local function digiline_action(pos, _, digiline_channel, msg)
 | 
			
		||||
	local meta = minetest.get_meta(pos)
 | 
			
		||||
	if channel ~= meta:get_string("digiline_channel") or type(msg) ~= "string" then
 | 
			
		||||
	if digiline_channel ~= meta:get_string("digiline_channel") then
 | 
			
		||||
		return
 | 
			
		||||
	end
 | 
			
		||||
	local name = meta:get_string("owner")
 | 
			
		||||
	local cr = meta:get_int("can_receive")
 | 
			
		||||
	update_tube(pos, msg, cr, name)
 | 
			
		||||
	local channel = meta:get_string("channel")
 | 
			
		||||
	local can_receive = meta:get_int("can_receive")
 | 
			
		||||
	if type(msg) == "string" then
 | 
			
		||||
		channel = msg
 | 
			
		||||
	elseif type(msg) == "table" then
 | 
			
		||||
		if type(msg.channel) == "string" then
 | 
			
		||||
			channel = msg.channel
 | 
			
		||||
		end
 | 
			
		||||
		if msg.can_receive == 1 or msg.can_receive == true then
 | 
			
		||||
			can_receive = 1
 | 
			
		||||
		elseif msg.can_receive == 0 or msg.can_receive == false then
 | 
			
		||||
			can_receive = 0
 | 
			
		||||
		end
 | 
			
		||||
	else
 | 
			
		||||
		return
 | 
			
		||||
	end
 | 
			
		||||
	local player_name = meta:get_string("owner")
 | 
			
		||||
	update_tube(pos, channel, can_receive, player_name)
 | 
			
		||||
	update_meta(meta)
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user