local com = require('component')
local comp = require('computer')
local radar = com.isAvailable("radar") and com.radar or error("нет радара")
local gpu = com.gpu
local term = require('term')
gpu.setForeground(0xD3D3D3)
gpu.set(9,13,'заряженная руда истинного кварца')
end
while true do
local rad = radar.getPlayers()
local radDist = rad.distance
term.clear()
Board()
Ore()
gpu.setForeground(0xFFFF00)
gpu.set(10,3,'Добро пожаловать на ---------')
gpu.setForeground(0xFF4500)
gpu.set(40,3,'Робот Удача 5 функционирует')
gpu.setForeground(0x808000)
gpu.set(10,16,'Возникли проблемы с удачей V?')
gpu.setForeground(0xFFFF00)
gpu.set(10,17,'Напишите мне в дискорд ----------')
gpu.set(10,18,'или оставьте обращение ------------------------------')
for i = 1, #rad do
print(rad.distance)
if #rad >= 2 and rad.distance <= 7 then
gpu.setForeground(0xFF0000)
gpu.set(11,5,'В комнате кроме вас ещё кто-то есть!')
comp.beep(1000,0.1)
os.sleep(1)
comp.beep(1000,0.1)
gpu.setForeground(0x0000FF)
gpu.set(11,5,'В комнате кроме вас ещё кто-то есть!')
os.sleep(1)
else
gpu.setForeground(0x00FF00)
gpu.set(11,5,'Вы одни в комнате')
end
end
end
Сделал программу для своего варпа
Её задача сканировать область и выводить сколько людей в определённом радиусе
Я всё сделал, но не получается написать правильно логику
Скрытый текст
if #rad >= 2 and rad.distance <= 7 then
gpu.setForeground(0xFF0000)
gpu.set(11,5,'В комнате кроме вас ещё кто-то есть!')
comp.beep(1000,0.1)
os.sleep(1)
comp.beep(1000,0.1)
gpu.setForeground(0x0000FF)
gpu.set(11,5,'В комнате кроме вас ещё кто-то есть!')
os.sleep(1)
else
gpu.setForeground(0x00FF00)
gpu.set(11,5,'Вы одни в комнате')
end
Она должна выводить 'В комнате кроме вас ещё кто-то есть!' если 2 или больше человек в радиусе 7 блоков
но все равно она сканирует свой дефолтный радиус 25 блоков, и не берёт во внимание то что я прописал if #rad >= 2 and rad.distance <= 7, 'В комнате кроме вас ещё кто-то есть!', только когда 2+ человек в радиусе 7 блоков
что я не так делаю?
local com = require('component')
local comp = require('computer')
local radar = com.isAvailable("radar") and com.radar or error("нет радара")
local gpu = com.gpu
local term = require('term')
function Board()
gpu.setForeground(0xFFFFFF)
print("||============================================================================||")
print("|| ||")
print("|| ||")
print("|| ||")
print("|| ||")
print("|| ||")
print("|| ||")
print("|| ||")
print("|| ||")
print("|| ||")
print("|| ||")
print("|| ||")
print("|| ||")
print("|| ||")
print("|| ||")
print("|| ||")
print("|| ||")
print("|| ||")
print("|| ||")
print("||==(Класть руду)=========================================(Забирать ресурсы)==||")
end
gpu.setResolution(80,21)
function Ore()
gpu.setForeground(0xFFFFFF)
gpu.set(12,8,'Руды для робота Удача V:')
gpu.setForeground(0x1E90FF)
gpu.set(9,9,'Лазуритовая руда ')
gpu.setForeground(0x4169E1)
gpu.set(27,9,'алмазная руда ')
gpu.setForeground(0x4B0082)
gpu.set(42,9,'дракониевая руда')
gpu.setForeground(0x7B68EE)
gpu.set(9,10,'кремниевая руда ')
gpu.setForeground(0x00BFFF)
gpu.set(26,10,'апатитовая руда ')
gpu.setForeground(0x7FFF00)
gpu.set(43,10,'изумрудная руда')
gpu.setForeground(0x2F4F4F)
gpu.set(9,11,'урановая руда galaxy ')
gpu.setForeground(0x696969)
gpu.set(31,11,'угольная руда ')
gpu.setForeground(0xF5DEB3)
gpu.set(46,11,'кварцевая руда')
gpu.setForeground(0xBC8F8F)
gpu.set(9,12,'красная руда ')
gpu.setForeground(0x2E8B57)
gpu.set(23,12,'перидотовая руда ')
gpu.setForeground(0xDCDCDC)
gpu.set(41,12,'руда истинного кварца')
gpu.setForeground(0xD3D3D3)
gpu.set(9,13,'заряженная руда истинного кварца')
end
while true do
local rad = radar.getPlayers()
local radDist = rad.distance
term.clear()
Board()
Ore()
gpu.setForeground(0xFFFF00)
gpu.set(10,3,'Добро пожаловать на ---------')
gpu.setForeground(0xFF4500)
gpu.set(40,3,'Робот Удача 5 функционирует')
gpu.setForeground(0x808000)
gpu.set(10,16,'Возникли проблемы с удачей V?')
gpu.setForeground(0xFFFF00)
gpu.set(10,17,'Напишите мне в дискорд ----------')
gpu.set(10,18,'или оставьте обращение ------------------------------')
for i = 1, #rad do
print(rad.distance)
if #rad >= 2 and rad.distance <= 7 then
gpu.setForeground(0xFF0000)
gpu.set(11,5,'В комнате кроме вас ещё кто-то есть!')
comp.beep(1000,0.1)
os.sleep(1)
comp.beep(1000,0.1)
gpu.setForeground(0x0000FF)
gpu.set(11,5,'В комнате кроме вас ещё кто-то есть!')
os.sleep(1)
else
gpu.setForeground(0x00FF00)
gpu.set(11,5,'Вы одни в комнате')
end
end
end
Сделал программу для своего варпа
Её задача сканировать область и выводить сколько людей в определённом радиусе
Я всё сделал, но не получается написать правильно логику
if #rad >= 2 and rad.distance <= 7 then
gpu.setForeground(0xFF0000)
gpu.set(11,5,'В комнате кроме вас ещё кто-то есть!')
comp.beep(1000,0.1)
os.sleep(1)
comp.beep(1000,0.1)
gpu.setForeground(0x0000FF)
gpu.set(11,5,'В комнате кроме вас ещё кто-то есть!')
os.sleep(1)
else
gpu.setForeground(0x00FF00)
gpu.set(11,5,'Вы одни в комнате')
end
Она должна выводить 'В комнате кроме вас ещё кто-то есть!' если 2 или больше человек в радиусе 7 блоков
но все равно она сканирует свой дефолтный радиус 25 блоков, и не берёт во внимание то что я прописал if #rad >= 2 and rad.distance <= 7, 'В комнате кроме вас ещё кто-то есть!', только когда 2+ человек в радиусе 7 блоков
что я не так делаю?
Поделиться сообщением
Ссылка на сообщение
Поделиться на других сайтах