mirror of
https://github.com/IgorTimofeev/MineOS.git
synced 2025-12-23 04:22:50 +01:00
115 lines
4.2 KiB
Lua
115 lines
4.2 KiB
Lua
|
||
local component = require("component")
|
||
local event = require("event")
|
||
local port = 512
|
||
local keyWord = "ECSGrief"
|
||
local modem
|
||
|
||
if component.isAvailable("modem") then
|
||
modem = component.modem
|
||
else
|
||
error("Этой программе требуется беспроводной модем для работы!")
|
||
end
|
||
|
||
modem.open(port)
|
||
|
||
-------------------------------------------------------------------------------------
|
||
|
||
local commands = {
|
||
[17] = {
|
||
messageToRobot = "forward",
|
||
screenText = "Приказываю роботу двигаться вперед",
|
||
},
|
||
[31] = {
|
||
messageToRobot = "back",
|
||
screenText = "Приказываю роботу двигаться назад",
|
||
},
|
||
[30] = {
|
||
messageToRobot = "turnLeft",
|
||
screenText = "Приказываю роботу повернуться налево",
|
||
},
|
||
[32] = {
|
||
messageToRobot = "turnRight",
|
||
screenText = "Приказываю роботу повернуться направо",
|
||
},
|
||
[57] = {
|
||
messageToRobot = "up",
|
||
screenText = "Приказываю роботу двигаться вверх",
|
||
},
|
||
[42] = {
|
||
messageToRobot = "down",
|
||
screenText = "Приказываю роботу двигаться вниз",
|
||
},
|
||
[18] = {
|
||
messageToRobot = "use",
|
||
screenText = "Приказываю роботу использовать предмет в руках",
|
||
},
|
||
[14] = {
|
||
messageToRobot = "exit",
|
||
screenText = "Приказываю роботу завершить программу принятия сообщений",
|
||
},
|
||
[59] = {
|
||
messageToRobot = "selfDestroy",
|
||
screenText = "Приказываю роботу уничтожить всю информацию на диске. Ему было приятно работать с тобой, повелитель!",
|
||
},
|
||
[19] = {
|
||
messageToRobot = "redstone",
|
||
screenText = "Приказываю роботу включить/выключить редстоун вокруг себя",
|
||
},
|
||
[16] = {
|
||
messageToRobot = "drop",
|
||
screenText = "Приказываю роботу выкинуть предмет из выбранного слота",
|
||
},
|
||
[33] = {
|
||
messageToRobot = "changeToolUsingMode",
|
||
screenText = "Приказываю роботу изменить режим использования предмета, а именно swing() или use()",
|
||
},
|
||
}
|
||
|
||
local function send()
|
||
while true do
|
||
local eventData = { event.pull() }
|
||
if eventData[1] == "key_down" then
|
||
if commands[eventData[4]] then
|
||
print(commands[eventData[4]].screenText)
|
||
modem.broadcast(port, keyWord, commands[eventData[4]].messageToRobot)
|
||
if commands[eventData[4]].messageToRobot == "exit" then
|
||
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
|
||
|
||
local function main()
|
||
print(" ")
|
||
print("Добро пожаловать в программу ECSGrief Sender v1.0 alpha early access!")
|
||
print(" ")
|
||
print("Используйте WASD, а также SPACE и SHIFT для перемещения. Нажатие клавиши E заставит робота использовать предмет, находящийся у него в руках. Также вы можете использовать клавишу F1 для экстренного удаления всех данных с робота и BACKSPACE для простого выхода из программы. Удачной охоты за ресами!")
|
||
print(" ")
|
||
send()
|
||
print(" ")
|
||
print("Программа доминации над роботом завершена!")
|
||
end
|
||
|
||
-------------------------------------------------------------------------------------
|
||
|
||
main()
|
||
|
||
-------------------------------------------------------------------------------------
|
||
|
||
|
||
|
||
|
||
|
||
|
||
|