фафуа

This commit is contained in:
Igor 2016-02-23 05:42:33 +03:00
parent 28bf2b64e1
commit eb4baab479
2 changed files with 55 additions and 3 deletions

View File

@ -8,6 +8,8 @@ local keyWord = "ECSGrief"
local modem
local redstone = component.redstone
local redstoneState = false
local toolUsingMode = false
local toolUsingSide = 1
if component.isAvailable("modem") then
modem = component.modem
@ -26,6 +28,8 @@ local commands = {
turnLeft = robot.turnLeft,
up = robot.up,
down = robot.down,
swing = robot.swing,
drop = robot.drop
}
local function redstoneControl()
@ -50,6 +54,8 @@ local function receive()
local eventData = { event.pull() }
if eventData[1] == "modem_message" and eventData[4] == port and eventData[6] == keyWord then
local message = eventData[7]
local message2 = eventData[8]
if commands[message] then
commands[message]()
else
@ -62,13 +68,43 @@ local function receive()
require("term").clear()
require("computer").shutdown()
elseif message == "use" then
robot.use()
robot.useUp()
robot.useDown()
if toolUsingMode then
if toolUsingSide == 1 then
print("Использую экипированный предмет в режиме правого клика перед роботом")
robot.use()
elseif toolUsingSide == 0 then
print("Использую экипированный предмет в режиме правого клика под роботом")
robot.useDown()
elseif toolUsingSide == 2 then
print("Использую экипированный предмет в режиме правого клика над роботом")
robot.useUp()
end
else
if toolUsingSide == 1 then
print("Использую экипированный предмет в режиме левого клика перед роботом")
robot.swing()
elseif toolUsingSide == 0 then
print("Использую экипированный предмет в режиме левого клика под роботом")
robot.swingDown()
elseif toolUsingSide == 2 then
print("Использую экипированный предмет в режиме левого клика над роботом")
robot.swingUp()
end
end
elseif message == "exit" then
return
elseif message == "redstone" then
redstoneControl()
elseif message == "changeToolUsingMode" then
toolUsingMode = not toolUsingMode
elseif message == "increaseToolUsingSide" then
print("Изменяю режим использования вещи")
toolUsingSide = toolUsingSide + 1
if toolUsingSide > 2 then toolUsingSide = 2 end
elseif message == "decreaseToolUsingSide" then
print("Изменяю режим использования вещи")
toolUsingSide = toolUsingSide - 1
if toolUsingSide < 0 then toolUsingSide = 0 end
end
end
end

View File

@ -56,6 +56,14 @@ local commands = {
messageToRobot = "redstone",
screenText = "Приказываю роботу включить/выключить редстоун вокруг себя",
},
[16] = {
messageToRobot = "drop",
screenText = "Приказываю роботу выкинуть предмет из выбранного слота",
},
[33] = {
messageToRobot = "changeToolUsingMode",
screenText = "Приказываю роботу изменить режим использования предмета, а именно swing() или use()",
},
}
local function send()
@ -69,6 +77,14 @@ local function send()
return
end
end
elseif eventData[1] == "scroll" then
if eventData[5] == 1 then
print("Приказываю роботу увеличить режим использования предметов, т.е. useDown() изменится на use(), а use() на useUp()")
modem.broadcast(port, keyWord, "increaseToolUsingSide")
else
print("Приказываю роботу уменьшить режим использования предметов, т.е. useUp() изменится на use(), а use() на useDown()")
modem.broadcast(port, keyWord, "decreaseToolUsingSide")
end
end
end
end