Здравствуйте.
Прошу помощи у знаю людей. Сам в программировании не ало (только начальные знания из уроков 1ridav).
Решил я написать красивую, мульти-пульти, программу для управления редстоуном. Для реализации интерфейса я решил воспользоваться библbотекой GUI от ESC, но из документации я мало что понял, поэтому собирал интерфейс по кускам из того что находил. Я сделал "основу" для интерфейса и у меня возникла потребность в свитчах (Вкл/выкл определенную сторону от красного контроллера), вот нарисовал я этот свитч, а вот с крепежом к нему функции вкл/выкл возникла проблема
А проблема собственно вот в чём:
Я нажимаю на свитч, он переходит в состояние true и сигнал включается, потом нажимаю еще раз, он переходит в состояние false, сигнал выключается. Казалось бы, работает, но не тут то было. Если нажимать на свитч последующие разы, то происходит ровным счётом ничего. Поработало 2 раза и всё.
local GUI = require("GUI")
local component = require("component")
local sides = require("sides")
local rs = component.redstone
------------------------------------------------------------------------------------------
local mainContainer = GUI.fullScreenContainer()
mainContainer:addChild(GUI.panel(1, 1, mainContainer.width, mainContainer.height, 0x2D2D2D))
local menu = mainContainer:addChild(GUI.menu(1, 1, mainContainer.width, 0xEEEEEE, 0x666666, 0x3366CC, 0xFFFFFF, nil))
menu:addItem("test", 0x0)
local function RemoteRedstone()
rs.setOutput(sides.top, 15)
end
local function RedstoneOff()
rs.setOutput(sides.top, 0)
end
local switch2 = mainContainer:addChild(GUI.switch(3, 12, 8, 0x66DB80, 0x1D1D1D, 0xEEEEEE, false))
switch2.onStateChanged = function(state)
RedstoneOff()
switch2.onStateChanged = function(state)
RemoteRedstone()
end
end
----------------------------------------
mainContainer:drawOnScreen(true)
mainContainer:startEventHandling()
Я из своих жалких знаний о программировании могу предположить, что нужно сделать то ли цикл, то ли еще что то, но я не имею представления как.
Здравствуйте.
Прошу помощи у знаю людей. Сам в программировании не ало (только начальные знания из уроков 1ridav).
Решил я написать красивую, мульти-пульти, программу для управления редстоуном. Для реализации интерфейса я решил воспользоваться библbотекой GUI от ESC, но из документации я мало что понял, поэтому собирал интерфейс по кускам из того что находил. Я сделал "основу" для интерфейса и у меня возникла потребность в свитчах (Вкл/выкл определенную сторону от красного контроллера), вот нарисовал я этот свитч, а вот с крепежом к нему функции вкл/выкл возникла проблема
А проблема собственно вот в чём:
Я нажимаю на свитч, он переходит в состояние true и сигнал включается, потом нажимаю еще раз, он переходит в состояние false, сигнал выключается. Казалось бы, работает, но не тут то было. Если нажимать на свитч последующие разы, то происходит ровным счётом ничего. Поработало 2 раза и всё.
local GUI = require("GUI") local component = require("component") local sides = require("sides") local rs = component.redstone ------------------------------------------------------------------------------------------ local mainContainer = GUI.fullScreenContainer() mainContainer:addChild(GUI.panel(1, 1, mainContainer.width, mainContainer.height, 0x2D2D2D)) local menu = mainContainer:addChild(GUI.menu(1, 1, mainContainer.width, 0xEEEEEE, 0x666666, 0x3366CC, 0xFFFFFF, nil)) menu:addItem("test", 0x0) local function RemoteRedstone() rs.setOutput(sides.top, 15) end local function RedstoneOff() rs.setOutput(sides.top, 0) end local switch2 = mainContainer:addChild(GUI.switch(3, 12, 8, 0x66DB80, 0x1D1D1D, 0xEEEEEE, false)) switch2.onStateChanged = function(state) RedstoneOff() switch2.onStateChanged = function(state) RemoteRedstone() end end ---------------------------------------- mainContainer:drawOnScreen(true) mainContainer:startEventHandling()
Я из своих жалких знаний о программировании могу предположить, что нужно сделать то ли цикл, то ли еще что то, но я не имею представления как.
Вообщем заранее спасибо.
Поделиться сообщением
Ссылка на сообщение
Поделиться на других сайтах