Computercraft绑定电缆程序无响应。

经过多次修改,我的 Lua 程序仍然拒绝做任何事情。

--Let's Go!
--Program Infos
--Mappings
--Pink: Gate 1
--Red: East Tower 2
--Orange: West Tower 3
--Lime: Armoury 4
--Blue: Master Bedroom 5
--Grey: Guest Bedroom 6
--Cyan: Power Generation 7

--任意变量
-- c 是用于添加和减去的变量。跟踪当前活动的内容。
--起始值

--开始监听参数
local args = {...}
arg1=args[1]
arg2=args[2]

--我们的输出在哪里?
local towere = colors.red
local towerw = colors.orange
local gate = colors.pink
local armoury = colors.lime
local mstr = colors.blue
local guest = colors.grey
local power = colors.cyan
--捆绑输出
local output = "right"

-- 添加和减去函数,使生活变得更容易。
-- @Kingdaro 在 Computercraft 论坛上的原始链接:http://www.computercraft.info/forums2/index.php?/topic/7641-redpower-bundled-cable/
--以下是实际项目中经过适应的版本。

--如何关闭门
function close(door)
local input = rs.getBundledOutput("right")
rs.setBundledOutput("right", colors.combine(input, door))
end

function open(door)
local input = rs.getBundledOutput("right")
rs.setBundledOutput("right", colors.subtract(input, door))
end

--良好的基础,用于关闭/打开事物
--基本上,是很多函数的集合。

--门控制
function gateclose()
rs.setOutput(top, true)
wait(1)
rs.setOutput(top, false)
close(colors.pink)
end
function gateopen()
open(colors.pink)
end

--程序的核心
--开始时,所有门都是打开状态。

if args[1] == gate and args[2] == open then --如果命令是打开大门
gateopen()
elseif args[1] == gate and args[2] == close then --如果命令是关闭大门
gateclose()
end

我已经尝试了很多次,但仍然没有回应。我的物理设置是正确的(捆绑电缆在右边),没有错误消息,但在使用“关闭大门”参数运行时,线路没有任何响应。

有什么建议吗?谢谢!

点赞
用户1190388
用户1190388

最可能的情况是你想要比较字符串:

if args[1] == "gate" and args[2] == "open" then --如果命令是打开门
    gateopen()
elseif args[1] == "gate" and args[2] == "close" then --如果命令是关闭门
    gateclose()
end
2015-10-19 13:58:24