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

Проблема в работе eeprom

Вопрос

Хотел впихнуть прогу для ломания блоков перед роботом в eeprom. В начале написал:

r=component.proxy(component.list("robot")())

А дальше юзал r.swing() в цикле.
При запуске робота пишет attemp to call a nil value ("component"), типа нет команды component.proxy()

Делал всё точно по грёбаной инструкции.

Что я сделал не так????

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


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

7 ответов на этот вопрос

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

  • 0
7 часов назад, kaka888 сказал:

А дальше юзал r.swing() в цикле.

Библиотека robot и компонент robot несколько отличаются.

При использовании компонента в вызове robot.swing(3) следует указывать сторону, как в коде @Doob

  • Like 2

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


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

Может опечатка? Вот рабочий код:

local robot = component.proxy(component.list('robot')())

while true do
  computer.beep(20, 0.5)
  if robot.detect(3) then
    robot.swing(3)
  end
end

 

Изменено пользователем Doob
  • Like 3

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


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

Т.е. robot.swing() работал без аргументов только из-за того, что в опенос есть библиотека для robot API?

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


Ссылка на сообщение
Поделиться на других сайтах
  • 0
12 минут назад, kaka888 сказал:

Т.е. robot.swing() работал без аргументов только из-за того, что в опенос есть библиотека для robot API?

Именно так. robot.swing() в библиотеке копает только вперёд, а для копки вверх и вниз имеются robot.swingUp() и robot.swingDown(). Компонент же располагает единственной функцией, направление задаётся аргументом.

  • Like 1

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


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

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

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

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


Ссылка на сообщение
Поделиться на других сайтах
  • 0
51 минуту назад, kaka888 сказал:

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

Без доработки мода вряд ли возможно. Впервые узнав о  стороне, задаваемой аргументом, я сразу попробовал копнуть во всех направлениях и получил ошибку везде кроме сторон 0, 1, 3.

  • Like 1

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


Ссылка на сообщение
Поделиться на других сайтах
  • 0
20.02.2019 в 11:03, eu_tomat сказал:

Без доработки мода вряд ли возможно. Впервые узнав о  стороне, задаваемой аргументом, я сразу попробовал копнуть во всех направлениях и получил ошибку везде кроме сторон 0, 1, 3.

Спасибо

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


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

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

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

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

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

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

Войти

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

Войти сейчас

×