From 83c3030494913d86e6d5f9614bba77fe663b2301 Mon Sep 17 00:00:00 2001
From: h-v-smacker <hans-von-smacker+github@gmail.com>
Date: Thu, 30 Nov 2017 11:48:51 +0300
Subject: Explicitly report the color of incoming port for items in tubes

---
 lua_tube.lua | 9 +++++++++
 1 file changed, 9 insertions(+)

(limited to 'lua_tube.lua')

diff --git a/lua_tube.lua b/lua_tube.lua
index 51665ae..8cc4468 100644
--- a/lua_tube.lua
+++ b/lua_tube.lua
@@ -731,8 +731,17 @@ for white  = 0, 1 do
 			connect_sides = {front = 1, back = 1, left = 1, right = 1, top = 1, bottom = 1},
 			priority = 50,
 			can_go = function(pos, node, velocity, stack)
+				local src = {name = nil}
+				-- add color of the incoming tube explicitly; referring to rules, in case they change later
+				for color, rule in pairs(rules) do
+					if (-velocity.x == rule.x and -velocity.y == rule.y and -velocity.z == rule.z) then
+						src.name = rule.name
+						break
+					end
+				end
 				local succ, msg = run(pos, {
 					type = "item",
+					pin = src,
 					itemstring = stack:to_string(),
 					item = stack:to_table(),
 					velocity = velocity,
-- 
cgit v1.2.3