Set Flag
Общая память всей карты: не число и не объект, а просто «да» под именем
setflag "тревога" trueНижний процессор через две секунды поднимает флаг, верхний его видит и печатает предупреждение. Никакой связи между ними нет — только общее имя флага.
| Поле | Что в нём |
|---|---|
| первое | имя флага: строка, а не переменная |
| второе | значение: true или false |
Флаг — это только «да» или «нет»
Заголовок раздела «Флаг — это только «да» или «нет»»Значение у флага одно из двух. Положить в него число, предмет или юнита нельзя:
любое значение приводится к «истине» по тем же правилам, что в jump — ноль и пустота
ложны, всё остальное истинно.
setflag "волнаИдёт" 1 # истинаsetflag "волнаИдёт" 0 # ложьЧем флаг отличается от ячейки
Заголовок раздела «Чем флаг отличается от ячейки»| Флаг | Ячейка памяти | |
|---|---|---|
| что хранит | «да» или «нет» | любые числа и объекты |
| сколько | сколько угодно имён | 64 или 512 мест |
| кто видит | любой процессор карты | только те, кто с ней связан |
| где живёт | в игре | в блоке на карте |
| кто ещё читает | цели карты | никто |
Последняя строка и есть главное. Флаги — общий язык мирового процессора и целей карты: в редакторе есть условие «поднят такой-то флаг», и выполняется оно ровно по этому набору.
Поэтому сценарий обычно устроен так: процессор следит за происходящим и поднимает флаг, а цель карты видит его и отмечает задание выполненным.
Неофициальный проект, с Anuke не связан. Спрайты, шрифты и переводы Mindustry © Anuke, используются по GPL-3.0; Fira Code — по OFL-1.1. Код сайта — GPL-3.0.