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

Set Flag

Общая память всей карты: не число и не объект, а просто «да» под именем

тик 0
Получить флаг0
результатфлаг
Прыжок -> 41
если
Печать2
Вывод печати3
Операция4
=
Конец5
@counter0number
тревогаnullnull
проверокnullnull
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.