Начал писать радиоуправляемого робота, всё как обычно начиналось хорошо, но произошла такая хрень!
Не хочет обрабатывать вот это событие:
local a1, a2, a3, a4, a5, ev = event.pull("modem_message", _, serverAddr, 666)
если делаю вот так:
local a1, a2, a3, a4, a5, ev = event.pull("modem_message")
всё работает, вот так опять нет:
local a1, a2, a3, a4, a5, ev = event.pull("modem_message", _, _, 666)
в общем перебрал все варианты, не могу понять где ошибка. Не обращайте внимание на лишние принты и переменные, это я уже не знал куда смотреть).
Вот код:
Клиент:
local r = require("robot")
local com = require("component")
local event = require("event")
local modem = com.modem
local doit = {}
doit.up = r.up
doit.down = r.down
doit.left = r.turnLeft
doit.right = r.turnRight
doit.around = r.turnAround
doit.forward = r.forward
doit.back = r.back
doit.swing = r.swing
doit.swingUp = r.swingUp
doit.swingDown = r.swingDown
doit.use = r.use
doit.useUp = r.useUp
doit.useDown = r.useDown
doit.place = r.place
doit.placeUp = r.placeUp
doit.placeDown = r.placeDown
modem.close()
modem.open(666)
modem.setStrength(500)
local _, clientAddr, serverAddr, _, _, _ = event.pull("modem_message", _, _, 666, _, "gogo")
modem.send(serverAddr, 666, clientAddr)
print(serverAddr.."||")
print(clientAddr)
print("приступаю к циклу")
while true do
print("цикл")
local a1, a2, a3, a4, a5, ev = event.pull("modem_message", _, serverAddr, 666) --------- FUCK!!!!!!!!!!
print("считал сообщение")
doit[ev]()
print(a1,a2,a3,a4,a5,ev)
end
и сервер:
local com = require("component")
local event = require("event")
local modem = com.modem
modem.close()
modem.open(666)
modem.setStrength(500)
modem.broadcast(666, "gogo")
local _, _, _, _, _, clientAddr = event.pull("modem_message", _, _, 666)
print(clientAddr)
while true do
local msg = io.read()
modem.send(clientAddr, 666, msg)
print("--"..msg)
end
Начал писать радиоуправляемого робота, всё как обычно начиналось хорошо, но произошла такая хрень!
Не хочет обрабатывать вот это событие:
local a1, a2, a3, a4, a5, ev = event.pull("modem_message", _, serverAddr, 666)если делаю вот так:
local a1, a2, a3, a4, a5, ev = event.pull("modem_message")всё работает, вот так опять нет:
local a1, a2, a3, a4, a5, ev = event.pull("modem_message", _, _, 666)в общем перебрал все варианты, не могу понять где ошибка. Не обращайте внимание на лишние принты и переменные, это я уже не знал куда смотреть).
Вот код:
Клиент:
local r = require("robot") local com = require("component") local event = require("event") local modem = com.modem local doit = {} doit.up = r.up doit.down = r.down doit.left = r.turnLeft doit.right = r.turnRight doit.around = r.turnAround doit.forward = r.forward doit.back = r.back doit.swing = r.swing doit.swingUp = r.swingUp doit.swingDown = r.swingDown doit.use = r.use doit.useUp = r.useUp doit.useDown = r.useDown doit.place = r.place doit.placeUp = r.placeUp doit.placeDown = r.placeDown modem.close() modem.open(666) modem.setStrength(500) local _, clientAddr, serverAddr, _, _, _ = event.pull("modem_message", _, _, 666, _, "gogo") modem.send(serverAddr, 666, clientAddr) print(serverAddr.."||") print(clientAddr) print("приступаю к циклу") while true do print("цикл") local a1, a2, a3, a4, a5, ev = event.pull("modem_message", _, serverAddr, 666) --------- FUCK!!!!!!!!!! print("считал сообщение") doit[ev]() print(a1,a2,a3,a4,a5,ev) endи сервер:
local com = require("component") local event = require("event") local modem = com.modem modem.close() modem.open(666) modem.setStrength(500) modem.broadcast(666, "gogo") local _, _, _, _, _, clientAddr = event.pull("modem_message", _, _, 666) print(clientAddr) while true do local msg = io.read() modem.send(clientAddr, 666, msg) print("--"..msg) endзаранее спасибо тем, кто откликнется.
Изменено пользователем cloudПоделиться сообщением
Ссылка на сообщение
Поделиться на других сайтах