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

Включить и выключить

Единственная команда, которая работает с любым блоком: выключить и включить обратно

простоНужно знать: Связи и getlink, Свойства зданий

Выключенный блок не работает: бур не бурит, фабрика не производит, конвейер не везёт. Логика пользуется этим постоянно — это её главный способ вмешаться в базу.

тик 0
Информация0
=
у
Операция1
=
Контроль2
установить у
в
Информация3
=
у
@counter0number
медьnullnull
малоnullnull
работаетnullnull

Программа смотрит на склад и держит бур включённым, пока меди меньше сотни. Нажмите «пуск» и подождите: как только медь дойдёт до 100, работает станет нулём, и бур встанет.

Строка читается как «включить блок по условию»

Заголовок раздела «Строка читается как «включить блок по условию»»
control enabled drill1 мало

Третье поле — не «включить» и не «выключить», а число: ноль выключает, любое другое значение включает. Поэтому туда обычно кладут прямо результат сравнения:

op lessThan мало медь 100
control enabled drill1 мало
sensor работает drill1 @enabled

Свойство @enabled читается у любого блока и отвечает единицей или нулём. Это удобно для отладки: если блок не работает, а программа уверена в обратном — вопрос снимается одной строкой.

тик 0
Чтение0
=
Контроль1
установить у
в
Контроль2
установить у
в
Информация3
=
у
Информация4
=
у
@counter0number
чужойnullnull
свойРаботаетnullnull
чужойРаботаетnullnull

На карте два бура. Первый связан с нашим процессором, второй — с соседним; наш достаёт его по имени связи соседа и командует обоим одинаково.

Нажмите «пуск»: свойРаботает станет нулём, а чужойРаботает останется единицей. Здание настоящее — sensor его прекрасно читает, — но команда до него не доходит.

Неофициальный проект, с Anuke не связан. Спрайты, шрифты и переводы Mindustry © Anuke, используются по GPL-3.0; Fira Code — по OFL-1.1. Код сайта — GPL-3.0.