[Гайд] Автоматическое управление светом с помощью возможностей Minecraft 1.9
Версия для многопользовательской игры
Недавно я публиковал небольшой гайд о новых возможностях командных блоков. Как я в нём упоминал, ничего особенно нового введено не было, но зато разработка механизмов теперь выполняется намного проще и быстрей. Пообещав рассмотреть примеры, я, в общем-то, не соврал. Сегодня мы посмотрим на разобранный мной пример системы автоматического управления светом, которая понадобилась мне при создании одного из моих проектов. Знакома ли Вам система освещения в современных подъездах? Когда свет включается только при чьём-либо движении, после некоторое время остаётся включённым, а при прекращении движения через определённое количество времени отключается. Полагаю, да. Именно этот механизм мы и попытаемся создать с помощью новых возможностей Minecraft 1.9.
Для начала стоит задуматься о том, какие статистики нам потребуются для реализации предложенной задачи. Напомню, что нам придётся отслеживать (а) движение игрока и (б) то время, через которое перестанет работать освещение. Посмотрим, как можно лаконично создать соответствующие ранее обозначенные статистики:
Отлично! Теперь нам нужно задуматься: всегда ли мы должны ориентироваться лишь на движение игрока? Разумеется, нет. Нам необходимо также знать, находится ли игрок на той территории, где его будет обнаруживать «камера движения». Для этого, на два блока ниже нужного нам пространства установим лазуритовые блоки. Они будут для нас ориентиром. Также стоит отметить, что виртуальное освещение будет включаться путём установки в определённое место блока из красного камня (его координаты определим условно как 1 2 3).
Приступим к детальному изучению механизма. Командные блоки следует располагать: (а) в предложенном порядке, чтобы стрелка каждого предыдущего командного блока направлялась в следующий; (б) предложенного типа; (в) с предложенными вариациями модификаторов. Если соблюдать предложенные условия, подготовить место (установив на необходимой глубине лазуритовые блоки), а также создать необходимые статистики, то всё будет прекрасно работать.
№
Тип (картинка)
Модификаторы
Команда
Объяснение
Условность
Активность
1
Безусловная (Unconditional)
«Всегда активен» (Always Active)
minecraft:lapis_block 0 /scoreboard players tag @p add AL
Добавляем тег «AL» тем игрокам, у которых в статистике перемещений «AutoLight» есть как минимум одно очко (т. е. тем, кто двигался) и под которыми на два блока ниже есть лазуритовый блок (т. е. тем, кто оказался в зоне видимости нашей «камеры движения»).
2
Условная (Conditional)
«Всегда активен» (Always Active)
Устанавливаем блок из красного камня (т. е. включаем освещение). Так как данный командный блок в режиме цепочки имеет условную вариацию модификатора, он будет срабатывать только тогда, когда сработает предыдущий командный блок в режиме цепочки (т. е. тогда, когда мы найдём нужных нам игроков).
3
Безусловная (Unconditional)
«Всегда активен» (Always Active)
Добавляем одно очко в статистику таймера «AutoLightTimer» тем игрокам, у которых есть тег «AL». Так как данный командный блок в режиме цепочки имеет безусловную вариацию модификатора, каждый игровой такт игрокам с соответствующим тегом будет добавляться одно очко в наш таймер.
4
Безусловная (Unconditional)
«Всегда активен» (Always Active)
Забираем тег «AL» у тех игроков, у которых в статистике таймера «AutoLightTimer» набралась как минимум сотня очков (т. е. тогда, когда прошло сто игровых тактов, мы забираем у отслеживаемых игроков тег). Так как данный командный блок в режиме цепочки имеет безусловную вариацию модификатора, проверка будет производиться каждый игровой такт.
5
Безусловная (Unconditional)
«Всегда активен» (Always Active)
Данный командный блок обнуляет таймер у тех игроков, у которых в статистике таймера «AutoLightTimer» есть как минимум сотня очков (т. е. у тех игроков, которые выждали сто игровых тактов). Так как данный командный блок в режиме цепочки имеет безусловную вариацию модификатора, проверка будет производиться каждый игровой такт.
6
Условная (Conditional)
«Всегда активен» (Always Active)
Убираем блок из красного камня (ставим воздух; отключаем освещение). Так как данный командный блок в режиме цепочки имеет условную вариацию модификатора, он сработает только тогда, когда игроки выждут сто игровых тактов.
7
Безусловная (Unconditional)
«Всегда активен» (Always Active)
Сбрасываем статистику перемещений «AutoLight» у всех игроков, у которых в ней есть как минимум одно очко. Так как данный командный блок в режиме цепочки имеет безусловную вариацию модификатора, это действие будет производиться каждый игровой такт.
Модификатор активности отдельно не комментировался. С ним всё совершенно очевидно.
Если попытаться разобраться, всё окажется очень и очень просто. Потому, я публикую карту с данным механизмом, где Вы сможете опробовать его лично, а также изучить команды без моих комментариев.
Теперь о некоторых дополнительных моментах. Во-первых, если игрок в зоне видимости нашей «камеры движения» продолжит двигаться по истечению таймера в сто игровых тактов, может быть заметно мерцание блока, так как в один игровой такт блок из красного камня убирают, в другой — ставят. Для того, чтобы избавиться от этой проблемы, на месте выхода сигнала из блока из красного камня я рекомендую поставить повторитель с максимальной задержкой. Такой повторитель не будет успевать гаснуть во время быстрых замен, потому мерцания нашего освещения не будет. Во-вторых, в данном механизме отслеживается только перемещение на обычной скорости (из-за использования в статистике перемещений «AutoLight» критерия «stat.walkOneCm»). Это сделано для упрощения схемы. Также, механизм работает в многопользовательской версии игры.
В принципе, это всё. Надеюсь, что эта схема будет кому-то полезна.
Свет (англ. Light) в Minecraft влияет на видимость, спаун мобов и выращивание растений. Есть два типа света: небесный свет, который обеспечивается солнцем, и блочный свет.
Существует 16 уровней освещенности, которые задаются целым числом от 0 (минимум) до 15 (максимум). В игре используется уровень освещенности блока для вычисления яркости данного блока. Свет полностью монохроматичен и не может быть по-настоящему цветным.
Яркость блока зависит как от уровня освещенности других блоков, так и от уровня небесного света. Обратите внимание, что «небесный свет» здесь не уменьшается ночью, вместо этого сама кривая яркости изменяется в зависимости от времени. При этом он соответствует значению освещения неба на экране отладки.
В общем, освещение из-за блоков приводит к более высокой яркости, которая уравновешивается тем фактом, что свет из-за блоков эффективно начинается с 14 (сплошные блоки источника света излучают уровень 15, но это для самого блока источника света), в то время как яркость небесного света 15. Свет из-за блоков также имеет тенденцию к оранжевому в средних диапазонах, в то время как свет неба в дневное время верхнего мира белый.
В верхнем мире с настройкой яркости «Тёмный» полный дневной свет достигает яркости 98 %. Полная темнота составляет около 5 % яркости.
В Аду, освещение неба не играет роли, поскольку нет источника неба (хотя, если бы он был, он достиг бы яркости около 99 %. Полная темнота с настройкой яркости «Тёмный» составляет около 25 % яркости, немного темнее, чем уровень блочного освещения, равный 7. Затенена в сторону оранжевого цвета.
В Крае, небесное освещение не сыграло бы никакой роли, даже если бы был источник небесного света; это также видно, если в энде вызывается молния, вспышки яркости нет, как в других измерениях. Полная темнота в энде с настройкой яркости «Тёмный» составляет около 28 % яркости и затенена в сторону голубовато-зеленого.
Распространение
T
13
12
11
10
9
8
9
10
11
12
13
T
13
12
11
10
9
8
9
8
9
10
11
12
13
12
11
10
9
8
9
10
9
8
9
10
11
12
11
10
9
8
9
10
11
10
9
8
9
10
11
10
9
8
9
10
11
12
11
10
9
8
9
10
9
8
9
10
11
12
13
12
11
10
9
8
9
8
9
10
11
12
13
T
13
12
11
10
9
8
Источники света
Сравнение различных уровней света, которые излучают блоки.
Блоки
Следующие значения являются яркостью самого блока:
Изображение
Блок
Уровень света
Маяк
15
Котёл [ только для Bedrock Edition ]
15
Блок врат Края
15
Блок портала Края
15
Огонь
15
Текучая лава
15
Светокамень
15
Светильник Джека
15
Лава
15
Лампа, когда горит
15
Морской фонарь
15
Четыре морских огурца, когда в воде
15
Морской проводник
15
Костёр, когда горит
15
Грибосвет
15
Фонарь
15
Факел
14
Стержень Края
14
Разноцветные факелы [ только для Bedrock и Education изданий ]
14
Подводный факел [ только для Bedrock и Education изданий ]
14
Печь, когда горит
13
Плавильная печь, когда горит
13
Коптильня, когда горит
13
Стол зачаровывания [ только для Bedrock Edition ]
12
Светящийся обсидиан [ только для Bedrock Edition ]
12
Три морских огурца, когда в воде
12
Блок портала Нижнего мира
11
Фонарь душ
10
Факел душ
10
Красная руда, когда активирована
9
Два морских огурца, когда в воде
9
Сундук Края
7
Красный факел, когда активирован
7
Морской огурец, когда в воде
6
Синий лёд [ только для Bedrock и Education изданий ]
4
Спаунер мобов [ только для Bedrock Edition ]
3
Магмовый блок
3
Варочная стойка
1
Коричневый гриб
1
Яйцо дракона
1
Рамка портала Края
1
Блоки света
Другое
Изображение
Источник
Уровень света
Свет солнца
15
Свет солнца, в течение дождя или снегопада
12
Свет солнца, в течение грозы
10 или 5
Свет луны
4
Светофильтрующие блоки
Листья и паутина не оказывают никакого дополнительного эффекта на блочный свет, но они рассеивают свет неба. Это означает, что под этими блоками уровень небесного света уменьшается на 1 для каждого блока расстояния вниз, начиная с препятствия. В Java Edition вода имеет тот же эффект. Этот эффект можно ясно увидеть, создав непрозрачную трубу 1 × 1 с листьями или паутиной у её отверстия сверху.
Следующие значения — это величина, на которую каждый блок уменьшает значение освещенности. Испускаемый свет уменьшается на единицу для каждого блока расстояния от источника света, больше в зависимости от блока, через который он проходит.
Майкл Китон вновь сыграет Бэтмена в фильме о Бэтгерл
Стоящая в темноте: Появился новый кадр загадочного хоррора Abandoned для PlayStation 5 с женским персонажем
FromSoftware поблагодарила поклонников за интерес к ролевой игре Elden Ring
Счастливого Нового года! Игровые разработчики представили душевные праздничные открытки
Dr Disrespect о Halo Infinite для Xbox Series X|S: Хорошая игра, но ей очень нужен режим королевской битвы
С Новым Годом! [Happy New Year]
Абсолютно все про Resident Evil
Фонари в Minecraft, как и во многих других играх, используются для освещения и украшения местности. В игре их насчитывается несколько разных видов, у каждого из которых есть своё назначение и свой рецепт для крафта. Например, морской фонарь поможет осветить пространство под водой, а фонарь души отпугнёт некоторых врагов.
Как сделать обычный фонарь в Minecraft
Как создать Фонарь души в Майнкрафте
Чтобы создать Фонарь души, понадобится Факел души, ингредиенты для которого следует искать в биоме Долины песка душ, что в Нижнем мире. Там необходимо набрать Почву души, а затем, как и в случае обычных фонарей, соединить её на верстаке с палкой и углём. Уголь также можно заменить на древесный. В результате получатся четыре факела души. Следующим шагом для создания фонаря будет объединение факела души с восемью железными кусками (как на скриншоте выше).
Как сделать Морской фонарь в Майнкрафт
Для создания Морского фонаря потребуется четыре призмариновых осколка и пять призмариновых кристалла. Добыть эти компоненты можно победив Стражей и Древних стражей. Затем ингредиенты следует правильно расположить в ячейках верстака. Выглядит это следующим образом:
Как сделать Светильник Джека в Minecraft
Светильник Джека является отличным украшением своего дома в Майнкрафт во время празднования Хэллоуина. Создаётся он довольно просто. Для начала с помощью ножниц следует вырезать из тыквы характерную рожицу, а затем объединить её на верстаке с факелом. Также этот светильник используется при создании железных и снежных големов.
Подписывайтесь на наш Telegram канал, там мы публикуем то, что не попадает в новостную ленту, и следите за нами в сети: