Плейсхолдеры: различия между версиями
Quasari (обсуждение | вклад) |
Quasari (обсуждение | вклад) |
||
(не показано 8 промежуточных версий этого же участника) | |||
Строка 3: | Строка 3: | ||
Присутствует 2 типа использования плейсхолдеров: | Присутствует 2 типа использования плейсхолдеров: | ||
*'''Интегрированный''' - буквально вшитый в блоки-функции. Чтобы выбрать игрока для действий или проверки условий, необходимо нажать по табличке блока-функции '''ШИФТ + ПКМ'''. | *'''Интегрированный''' - буквально вшитый в блоки-функции. Чтобы выбрать игрока для действий или проверки условий, необходимо нажать по табличке блока-функции '''ШИФТ + ПКМ'''. | ||
− | *'''Внешний''' - используется в названии динамических переменных или в текстовых значениях, вставляя значения подобные | + | *'''Внешний''' - используется в названии динамических переменных или в текстовых значениях, вставляя значения подобные '''%player%''' или '''%selected%''' |
== Список внешних плейсхолдеров == | == Список внешних плейсхолдеров == | ||
− | + | === <big>'''%player%''' - игрок по умолчанию</big> === | |
− | + | Плейсхолдер %player% выбирает в событии игрока по умолчанию. Поддерживает только имена игроков. | |
− | + | ===<big>'''%damager%''' - атакующая сущность</big>=== | |
− | + | Плейсхолдер %damager% выбирает в событиях нанесения урона сущность, которая нанёсла урон. Поддерживает имена всех типов сущностей. | |
− | + | ===='''Примечание №1''' - Не работает в событии получения урона==== | |
− | + | Плейсхолдер %damager% не выбирает атакующую сущность в событиях получения урона. | |
− | + | ===='''Примечание №2''' - Событие получения урона снарядом==== | |
− | + | Плейсхолдер %damager% выбирает имя снаряда в событиях получения урона снарядом. | |
− | + | ===<big>'''%victim%''' - сущность-жертва</big>=== | |
− | + | Плейсхолдер %victim% выбирает в событиях нанесения и получения урона сущность, которая получила урон. Поддерживает имена всех типов сущностей. | |
− | + | ===<big>'''%killer%''' - сущность-убийца</big>=== | |
− | + | Плейсхолдер %killer% выбирает в событиях убийства сущность, которая убила другую. Поддерживает имена игроков и мобов. | |
− | == Примеры использования == | + | ===<big>'''%selected%''' - сущность, выбранный выборкой</big>=== |
+ | Плейсхолдер %selected% выбирает сущности, которые были выбраны блоком-функцией "Выбрать объект" или интегрированной выборкой. Поддерживает имена всех типов сущостей. | ||
+ | ===<big>'''%selection%''' - все сущности одновременно, выбранные выборкой</big>=== | ||
+ | Плейсхолдер %selection% выбирает все сущности одновременно, которые были выбраны блоком-функцией "Выбрать объект" или интегрированной выборкой. Поддерживает имена всех типов сущостей и может использоваться только в названии динамической переменной. | ||
+ | ===<big>'''%shooter%''' - сущность-стрелок</big>=== | ||
+ | Плейсхолдер %shooter% выбирает сущность, которая в событиях нанесения и получения урона снарядом или запускает его. Поддерживает имена игроков и мобов. | ||
+ | ===<big>'''%default%''' - сущность по умолчанию</big>=== | ||
+ | Плейсхолдер %default% выбирает в событии сущность по умолчанию. Поддерживает имена всех типов сущностей. | ||
+ | ===='''Примечание №1''' - Отличие от %player%==== | ||
+ | В событиях игрока %player% и %damager% одинаковы, но в событиях сущностей, плейсхолдер %default% может выбирать имена сущностей. | ||
+ | ===<big>'''%entity%''' - энтити по умолчанию</big> === | ||
+ | Плейсхолдер %entity% выбирает в событии энтити по умолчанию. Поддерживает только имена энтити. | ||
+ | ===<big>'''%random%''' - случайный игрок</big>=== | ||
+ | Плейсхолдер %random% выбирает случайного игрока в мире. Поддерживает только имена игроков. | ||
+ | ==Примеры использования== | ||
Поскольку плейсхолдеры содержат в себе никнеймы выбранных игроков, они широко используются в названии динамических переменных, обновлении средств коммуникации через цикл, а также разного рода сообщениях. | Поскольку плейсхолдеры содержат в себе никнеймы выбранных игроков, они широко используются в названии динамических переменных, обновлении средств коммуникации через цикл, а также разного рода сообщениях. | ||
− | === Динамическая переменная === | + | ===Динамическая переменная=== |
У динамической переменной есть два типа: | У динамической переменной есть два типа: | ||
*'''Глобальная''' - содержит в названии плейсхолдер. | *'''Глобальная''' - содержит в названии плейсхолдер. | ||
*'''Локальная''' - не содержит в названии плейсхолдер. | *'''Локальная''' - не содержит в названии плейсхолдер. | ||
− | + | Глобальная переменная существует одна на весь мир, с одним значением. Локальная же хранит в своём названии плейсхолдер, то есть, никнейм выбранного игрока, что означает уникальность каждой созданной | |
− | Глобальная переменная существует одна на весь мир, с одним значением. Локальная же хранит в своём названии плейсхолдер, то есть, никнейм выбранного игрока, что | ||
динамической переменной. | динамической переменной. | ||
Локальная динамическая переменная может хранить личные данные игрока, типа баланса или статистики, а глобальная некие игровые данные, типа времени в таймере, количество сделанных действий всеми игроками или количество игроков. | Локальная динамическая переменная может хранить личные данные игрока, типа баланса или статистики, а глобальная некие игровые данные, типа времени в таймере, количество сделанных действий всеми игроками или количество игроков. | ||
− | Если в локальной переменной установить плейсхолдер | + | Если в локальной переменной установить плейсхолдер '''%victim%''' и изменять его при нанесении урона, то будет изменяться локальная переменная сущности-жертвы. |
− | + | ===Скорборд=== | |
− | + | У скорборда есть два типа распространения: | |
− | |||
− | У скорборда есть | ||
*'''Локальный скорборд''' - скорборд, который создаётся для одного игрока, поскольку плейсхолдер в названии создаваемого скорборда делает его уникальным. | *'''Локальный скорборд''' - скорборд, который создаётся для одного игрока, поскольку плейсхолдер в названии создаваемого скорборда делает его уникальным. | ||
*'''Глобальный скорборд''' - скорборд, в названии которого отсутствует какой-либо плейсхолдер, что делает его одним на всю игру и одинаковым для отображения всем игрокам. | *'''Глобальный скорборд''' - скорборд, в названии которого отсутствует какой-либо плейсхолдер, что делает его одним на всю игру и одинаковым для отображения всем игрокам. | ||
И два типа обновления: | И два типа обновления: | ||
− | *'''Обновление циклом''' - цикл регулярно обновляет скорборд. В цикле по умолчанию выбраны | + | *'''Обновление циклом''' - цикл регулярно обновляет скорборд. В цикле по умолчанию выбраны все игроки, поэтому, стоит использовать плейсхолдер '''%selected%''' в названии скорборда, если обновляются локальные скорборды. |
− | *'''Обновление функцией''' - после изменения каких-либо данных, содержащихся в скорборде, вызывается функция, которая обновляет скорборд. Поскольку вызываемая функция не содержит в себе выборку всех игроков, | + | *'''Обновление функцией''' - после изменения каких-либо данных, содержащихся в скорборде, вызывается функция, которая обновляет скорборд. Поскольку вызываемая функция не содержит в себе выборку всех игроков, рекомендуется использовать в обновлении плейсхолдер '''%selected''', поскольку таким образом, перед вызовом функции можно установить "'''Выбрать объект'''", чтобы указать игрока, скорборд которого следует обновить. |
− | |||
− | |||
− | |||
− | |||
− |
Текущая версия на 03:30, 3 мая 2022
Плейсхолдеры - часть названия динамической переменной или текстового значения, которая содержит имя выбранного игрока. Плейсхолдер используется для изменения типа динамической переменной, а также для указания никнеймов в текстовом значении на месте плейсхолдера.
Присутствует 2 типа использования плейсхолдеров:
- Интегрированный - буквально вшитый в блоки-функции. Чтобы выбрать игрока для действий или проверки условий, необходимо нажать по табличке блока-функции ШИФТ + ПКМ.
- Внешний - используется в названии динамических переменных или в текстовых значениях, вставляя значения подобные %player% или %selected%
Список внешних плейсхолдеров
%player% - игрок по умолчанию
Плейсхолдер %player% выбирает в событии игрока по умолчанию. Поддерживает только имена игроков.
%damager% - атакующая сущность
Плейсхолдер %damager% выбирает в событиях нанесения урона сущность, которая нанёсла урон. Поддерживает имена всех типов сущностей.
Примечание №1 - Не работает в событии получения урона
Плейсхолдер %damager% не выбирает атакующую сущность в событиях получения урона.
Примечание №2 - Событие получения урона снарядом
Плейсхолдер %damager% выбирает имя снаряда в событиях получения урона снарядом.
%victim% - сущность-жертва
Плейсхолдер %victim% выбирает в событиях нанесения и получения урона сущность, которая получила урон. Поддерживает имена всех типов сущностей.
%killer% - сущность-убийца
Плейсхолдер %killer% выбирает в событиях убийства сущность, которая убила другую. Поддерживает имена игроков и мобов.
%selected% - сущность, выбранный выборкой
Плейсхолдер %selected% выбирает сущности, которые были выбраны блоком-функцией "Выбрать объект" или интегрированной выборкой. Поддерживает имена всех типов сущостей.
%selection% - все сущности одновременно, выбранные выборкой
Плейсхолдер %selection% выбирает все сущности одновременно, которые были выбраны блоком-функцией "Выбрать объект" или интегрированной выборкой. Поддерживает имена всех типов сущостей и может использоваться только в названии динамической переменной.
%shooter% - сущность-стрелок
Плейсхолдер %shooter% выбирает сущность, которая в событиях нанесения и получения урона снарядом или запускает его. Поддерживает имена игроков и мобов.
%default% - сущность по умолчанию
Плейсхолдер %default% выбирает в событии сущность по умолчанию. Поддерживает имена всех типов сущностей.
Примечание №1 - Отличие от %player%
В событиях игрока %player% и %damager% одинаковы, но в событиях сущностей, плейсхолдер %default% может выбирать имена сущностей.
%entity% - энтити по умолчанию
Плейсхолдер %entity% выбирает в событии энтити по умолчанию. Поддерживает только имена энтити.
%random% - случайный игрок
Плейсхолдер %random% выбирает случайного игрока в мире. Поддерживает только имена игроков.
Примеры использования
Поскольку плейсхолдеры содержат в себе никнеймы выбранных игроков, они широко используются в названии динамических переменных, обновлении средств коммуникации через цикл, а также разного рода сообщениях.
Динамическая переменная
У динамической переменной есть два типа:
- Глобальная - содержит в названии плейсхолдер.
- Локальная - не содержит в названии плейсхолдер.
Глобальная переменная существует одна на весь мир, с одним значением. Локальная же хранит в своём названии плейсхолдер, то есть, никнейм выбранного игрока, что означает уникальность каждой созданной динамической переменной.
Локальная динамическая переменная может хранить личные данные игрока, типа баланса или статистики, а глобальная некие игровые данные, типа времени в таймере, количество сделанных действий всеми игроками или количество игроков.
Если в локальной переменной установить плейсхолдер %victim% и изменять его при нанесении урона, то будет изменяться локальная переменная сущности-жертвы.
Скорборд
У скорборда есть два типа распространения:
- Локальный скорборд - скорборд, который создаётся для одного игрока, поскольку плейсхолдер в названии создаваемого скорборда делает его уникальным.
- Глобальный скорборд - скорборд, в названии которого отсутствует какой-либо плейсхолдер, что делает его одним на всю игру и одинаковым для отображения всем игрокам.
И два типа обновления:
- Обновление циклом - цикл регулярно обновляет скорборд. В цикле по умолчанию выбраны все игроки, поэтому, стоит использовать плейсхолдер %selected% в названии скорборда, если обновляются локальные скорборды.
- Обновление функцией - после изменения каких-либо данных, содержащихся в скорборде, вызывается функция, которая обновляет скорборд. Поскольку вызываемая функция не содержит в себе выборку всех игроков, рекомендуется использовать в обновлении плейсхолдер %selected, поскольку таким образом, перед вызовом функции можно установить "Выбрать объект", чтобы указать игрока, скорборд которого следует обновить.