Перейти к публикации

В ближайшее время постараюсь разобраться с картой сервера/ЛК/бб кодами

Внимание, с 14 февраля до 20 февраля могут проходить работы на сервере, где также находится лаунчсервер. В связи с этим авторизация в лаунчере может не работать

Рекомендованные сообщения

Всем привет!

Эту тему я создал для того, что бы Алекс снял с меня "медаль" :smile113:

ВОТ КОД:

--[[

Случайный гивальщик айтемов из инвентаря

For computercraft.ru

By Asummonster

]]--

computer=require("computer")
robot=require("robot")
while true do
robot.suck()
name, _, _, _, _ = computer.pullSignal(0)
if name=="inventory_changed" then
robot.select(math.random(1, 16))
robot.drop(1)
end
end

Изменено пользователем Asummonster

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

 

computer=require("computer")

robot=require("robot")
while true do
robot.suck()
name, _, _, _, _ = computer.pullSignal(0)
if name=="inventory_changed" then
robot.select(1, 16)
robot.drop(1)
end
end

 

Как оно  работает? Откуда робот берет предметы? И куда выпихивает? И что означает запись robot.select(1, 16)

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Исправил!Забыл написать math.random(1, 16)=)

Берёт предметы из своего инвентаря

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Исправил!Забыл написать math.random(1, 16)=)

Берёт предметы из своего инвентаря

 

А где код, который ты сразу первым выложил. Мы с Димой Тоторо чуть не сдохли. Ты там вызывал функцию рекурсивно саму себя бесконечно.)

 

И откуда берет робот предметы? Из сундука? Он же в привате стоит на спавне, например? Кто кладет предметы в сундук, воронка? Почему по одному кидает, слоты же нужны новые всегда. Обмен идет слот на слот, а сколько там, это уже лотерея.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Первый код был неверный=)Просто если инвентарь будет пустой, то он пойдёт дальше по инвентарю(встроенному)искать предметы=)

Берёт он предметы из встроенного инвентаря(Апгрейд-инвентарь), в сундук ничего не кладёт.Придумал это-Крутой,как гивалка игрокам.К примеру простой игрок кинул железко,другой кинул яблочко,третий кинул кусочек золота и т.д.(В начале я забиваю инвентарь чем-то), а потом игрокам что-то рандомное(из того,что кинули они,или другие игроки) им выпадает.Это не игровой автомат=)Это просто обмен ресурсами через робота. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

"Первый игрок кинул булыгу, второй - землю, третий - песок" - так правдивее :D

 

А как же sleeptime? пару секунд сна не помешают между циклами

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах
"Первый игрок кинул булыгу, второй - землю, третий - песок" - так правдивее :D

 

А как же sleeptime? пару секунд сна не помешают между циклами

Была большая версия,с защитой от не интересных предметов,но Алекс её удалил...

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Была большая версия,с защитой от не интересных предметов,но Алекс её удалил...

А ты сделай такую же, но маленькую и оптимизированную=)  Сейчас цикл, который ты гоняешь без конца, не имеет смысла практически. Нужно переделать.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Можно перед роботом нажимную плиту деревянную поставить, а в робота вставить красную плату. Тогда можно не гонять прогу в бесконечном цикле, а ожидать сигнал реда - плита ведь предметами активируется, а для защиты от наступания игроком достаточно поставить блок над нажимной плитой.

Поделиться сообщением


Ссылка на сообщение
Поделиться на других сайтах

Создайте аккаунт или войдите в него для комментирования

Вы должны быть пользователем, чтобы оставить комментарий

Создать аккаунт

Зарегистрируйтесь для получения аккаунта. Это просто!

Зарегистрировать аккаунт

Войти

Уже зарегистрированы? Войдите здесь.

Войти сейчас

×