Перейти к содержимому
  • 0
Sloyner

Использование нескольких Redstone I/O

Вопрос

Здраствуйте, можно ли к одному ПК подключить 2 Redstone I/O и ими управлять по отдельности, если да то как?

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


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

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

component.get() нужен, дабы из сокращенного адреса получить полный

Вот есть у меня, например, кассетный стример, и я помню первые три символа в адресе, например "205"

И тогда component.get("205") вернет полный адрес, т.е. "2059288d-a4df-4acb-a033-2476ac7e2817"

 

А рулить двумя редстоун картами (или блоками, не принципиально, ибо идентифицируются как один и тот же компонент) можно, например, загнав их прокси в таблицу с помощью итератора.

local component = require("component")
local all = component.list("redstone")

local redstone = {}

for redcard in all do
  table.insert(redstone, component.proxy(redcard))
end

redstone[1].setOutput(...)

redstone[2].setOutput(...)

Но если вы знаете их адреса, можно вообще обойтись без него.

local component = require('component')

local firstRed = component.proxy(ID)
local secondRed = component.proxy(ID2)

firstRed.setOutput(...)

secondRed.setOutput(...)

 

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

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


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

Имеешь ввиду эту штучку?Redstone Cardblocks:redstone_io.png?w=128&tok=a6f632

Вообще да, у компа может быть много компонентов одного типа и все они будут видны. При помощи component.list("redstone") можно получить список адресов всех компонентов с этим именем

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


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

@hohserg Да именно их. Как мне выполнить setOutput к определённому Redstone I/O? При выполнение команды component.get(ID).setOutput(sides.top, 15) выдаёт ошибку.

 

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


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

Для начала разберись, как работать с одним компонентом.

local all = component.list("redstone") --its a table with iterator
local fisrtAddress = all() --use as iterator
local first = component.proxy(fisrtAddress)

first.setOutput(...)

Подробнее:

https://minecraft-ru.gamepedia.com/OpenComputers/Component_API

https://ocdoc.cil.li/api:component

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

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


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

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить на вопрос...

×   Вы вставили отформатированное содержимое.   Удалить форматирование

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отобразить как ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.


×
×
  • Создать...