Блоки-функции: различия между версиями

Материал из ML WIKI
м (Quasari переименовал страницу Участник:Quasari/Блоки-функции в Блоки-функции: Готова к тому, чтобы быть в основном пространстве.)
 
(не показаны 2 промежуточные версии этого же участника)
Строка 4: Строка 4:
 
Событием является те блоки-функции, с которых начинается последующий код. Большим отличием от других категорий является то, что блоки-функции из этой категории ставятся только на голубое стекло, то есть в начало строчки.
 
Событием является те блоки-функции, с которых начинается последующий код. Большим отличием от других категорий является то, что блоки-функции из этой категории ставятся только на голубое стекло, то есть в начало строчки.
 
=== Действие ===
 
=== Действие ===
Действия являются неотъемлемой частью любого кода, поскольку только блоки-функции этой категории способны совершать какие-либо действия над игроками
+
Действия являются неотъемлемой частью любого кода, поскольку только блоки-функции этой категории способны совершать какие-либо действия над игроками и игрой.
 
=== Условие ===
 
=== Условие ===
Условием является требование, только при выполнении которого продолжится работа кода. Также используется условием для выбора объекта специальным действием.
+
Условием является требование, только при выполнении которого продолжится работа кода. Также используется условием для выбора объекта специальным действием.
 
== Синтаксис ==
 
== Синтаксис ==
 
Синтаксисом является правильная установка блоков-функций для работоспособного кода.
 
Синтаксисом является правильная установка блоков-функций для работоспособного кода.
 
 
#Блоки-функции с категорией "Событие" всегда ставятся только вначале (на голубое стекло);
 
#Блоки-функции с категорией "Событие" всегда ставятся только вначале (на голубое стекло);
 
#Блоки-функции с категорией "Условие" и "Действие" ставятся только на светло-серое стекло;
 
#Блоки-функции с категорией "Условие" и "Действие" ставятся только на светло-серое стекло;
Строка 17: Строка 16:
 
#Блок-функция Иначе ставится только после поршня Условия и не может быть установлена после себя.
 
#Блок-функция Иначе ставится только после поршня Условия и не может быть установлена после себя.
 
== Список событий ==
 
== Список событий ==
=== Событие игрока ===
+
=== <big>Событие игрока</big> ===
 
Используется для активации кода в строчке в момент выполнения события.
 
Используется для активации кода в строчке в момент выполнения события.
==== Примеры использования ====
+
[[Файл:Событие игрока.png|безрамки|219x219px|альт=|справа]]
 +
====Примеры использования====
 
*Игрок зашёл в игру;
 
*Игрок зашёл в игру;
 
*Моб заспавнился;
 
*Моб заспавнился;
 
*Игрок передвинулся.
 
*Игрок передвинулся.
=== Функция ===
+
===<big>Функция</big>===
Используется для вызова длинной строчки, которая часто повторяется в коде или для того, чтобы продлить строчку. Чтобы переименовать функцию, необходимо установить текстовой переменной нужное название и кликнуть ПКМ ею по табличке функции.  
+
Используется для вызова заранее заготовленного кода, который часто повторяется в коде или для того, чтобы продлить строчку. Чтобы переименовать функцию, необходимо установить текстовой переменной нужное название и кликнуть ПКМ ею по табличке функции.
==== Примеры использования ====
+
[[Файл:Функция.png|справа|безрамки|219x219пкс]]
 +
====Примеры использования====
 
*Оптимизация места в строчках и времени;
 
*Оптимизация места в строчках и времени;
*Создание самоповторяющихся функций;
+
*Создание рекурсивной функции;
 
*Продолжение закончившейся строчки.
 
*Продолжение закончившейся строчки.
=== Цикл ===
+
===<big>Цикл</big>===
 
Используется для множественного повторения одного и того же действия с указанным промежутком. Чтобы установить промежуток, необходимо взять в руки числовую переменную и установить ей нужный временной промежуток в тиках.
 
Используется для множественного повторения одного и того же действия с указанным промежутком. Чтобы установить промежуток, необходимо взять в руки числовую переменную и установить ей нужный временной промежуток в тиках.
==== Примеры использования ====
+
[[Файл:Цикл.png|справа|безрамки|219x219пкс]]
 +
==== Примеры использования====
 
*Таймер, по истечению которого происходят определённые действия;
 
*Таймер, по истечению которого происходят определённые действия;
 
*Регулярное обновления разных способов коммуникации типа скорборда;
 
*Регулярное обновления разных способов коммуникации типа скорборда;
 
*Выполнение однотипных игровых проверок.
 
*Выполнение однотипных игровых проверок.
== Список действий ==
+
==Список действий==
=== Действие игрока ===
+
===<big>Действие игрока</big>===
Используется для манипуляций с игроком. Поддерживает интегрированную выборку.
+
Используется для манипуляций над игроком. Поддерживает интегрированную выборку.
==== Примеры использования ====
+
[[Файл:Действие игрока.png|справа|безрамки|219x219px|альт=]]
 +
==== Примеры использования====
 
*Отправить сообщение;
 
*Отправить сообщение;
 
*Изменить режим игры;
 
*Изменить режим игры;
 
*Кикнуть из игры.
 
*Кикнуть из игры.
=== Игровое действие ===
+
===<big>Игровое действие</big> ===
 
Используется для изменения настроек мира, спавна сущностей и т.д.
 
Используется для изменения настроек мира, спавна сущностей и т.д.
==== Примеры использования ====
+
[[Файл:Игровое действие.png|справа|безрамки|219x219пкс]]
 +
====Примеры использования ====
 
*Действия со скорбордами;
 
*Действия со скорбордами;
 
*Изменение времени и погоды в мире;
 
*Изменение времени и погоды в мире;
 
*Спавн различных сущностей и NPC.
 
*Спавн различных сущностей и NPC.
=== Установить переменную ===
+
===<big>Присвоить переменную</big>===
 
Используется для установки значения динамической переменной.
 
Используется для установки значения динамической переменной.
==== Примеры использования ====
+
[[Файл:Присв. переменную.png|справа|безрамки|219x219px|альт=]]
*Прямо установить значение переменной;
+
====Примеры использования====
 +
*Установить значение переменной;
 
*Сгенерировать случайное число между двумя числами;
 
*Сгенерировать случайное число между двумя числами;
 
*Изменить координату.
 
*Изменить координату.
=== Выбрать объект ===
+
===<big>Выбрать объект</big>===
 
Используется для выбора объекта, с которым будет работать последующий код.
 
Используется для выбора объекта, с которым будет работать последующий код.
==== Примеры использования ====
+
[[Файл:Выбрать объект.png|справа|безрамки|219x219пкс]]
 +
====Примеры использования====
 
*Выбрать всех игроков/мобов/сущностей;
 
*Выбрать всех игроков/мобов/сущностей;
 
*Выбрать игрока/моба/сущность по условию;
 
*Выбрать игрока/моба/сущность по условию;
 
*Выбрать последнего заспавненного моба.
 
*Выбрать последнего заспавненного моба.
=== Вызвать функцию ===
+
===<big>Вызвать функцию</big>===
 
Используется для вызова заранее созданной функции.
 
Используется для вызова заранее созданной функции.
==== Примеры использования ====
+
[[Файл:Вызвать функцию.gif|справа|безрамки|219x219пкс]]
 +
====Примеры использования====
 
*Продление строчки кода;
 
*Продление строчки кода;
*Возможно синхронного или асинхронного запуска функции;
+
*Синхронный или асинхронный запуск функции;
*Оптимизация места кода.
+
*Создание рекурсивнй функции.
== Список условий ==
+
==Список условий==
=== Если игрок ===
+
===<big>Если игрок</big>===
 
Используется для установки условия игрока, при выполнении которого продолжается исполнение кода.
 
Используется для установки условия игрока, при выполнении которого продолжается исполнение кода.
==== Примеры использования ====
+
[[Файл:Если игрок.png|безрамки|275x275px|альт=|справа]]
*Проверяет, приседает ли игрок;
+
====Примеры использования====
*Проверяет, равно ли сообщение игрока другому значению;
+
* Проверяет, приседает ли игрок;
 +
* Проверяет, равно ли сообщение игрока другому значению;
 
*Проверяет, ломает ли игрок проверяемый блок.
 
*Проверяет, ломает ли игрок проверяемый блок.
=== Если переменная ===
+
===<big>Если переменная</big>===
 
Используется для сравнения различных значений.
 
Используется для сравнения различных значений.
==== Примеры использования ====
+
[[Файл:Если переменная.png|справа|безрамки|275x275px|альт=]]
 +
====Примеры использования====
 
*Проверяет, больше ли одно число другого;
 
*Проверяет, больше ли одно число другого;
 
*Проверяет, содержит ли один текст другой;
 
*Проверяет, содержит ли один текст другой;
 
*Проверяет, существует ли переменная.
 
*Проверяет, существует ли переменная.
=== Иначе ===
+
=== <big>Иначе</big>===
Используется в том случае, если проверка перед "Иначе" не соответствует заданным сравнениям. В таком случае, работает тот код, который указан в скобках "Иначе".
+
Активирует код в скобках "Иначе", если предыдущее условие не соответствует заданным значениям.
==== Примеры использования ====
+
[[Файл:Иначе.png|справа|безрамки|275x275px|альт=]]
 +
====Примеры использования====
 
*Проверка одного значения в случае несоответствия другого.
 
*Проверка одного значения в случае несоответствия другого.
=== Если существо ===
+
===<big>Если существо</big>===
 
Используется подобно условию "Если игрок", но распространяется уже только на сущности.
 
Используется подобно условию "Если игрок", но распространяется уже только на сущности.
==== Примеры использования ====
+
[[Файл:Если существо.png|справа|безрамки|250x250пкс]]
 +
====Примеры использования====
 
*Проверяет, равняется ли сущность указанному типу;
 
*Проверяет, равняется ли сущность указанному типу;
 
*Проверяет, является ли сущность мобом/NPC/снарядом;
 
*Проверяет, является ли сущность мобом/NPC/снарядом;
 
*Проверяет, равно ли имя сущности заданному значению.
 
*Проверяет, равно ли имя сущности заданному значению.
=== Если игра ===
+
===<big>Если игра</big>===
 
Используется для проверки игровых значений.
 
Используется для проверки игровых значений.
==== Примеры использования ====
+
[[Файл:Если игра.png|справа|безрамки|275x275px|альт=]]
 +
====Примеры использования====
 
*Проверяет, стоит ли указанный блок на указанном месте;
 
*Проверяет, стоит ли указанный блок на указанном месте;
 
*Проверяет, содержит ли сундук указанный предмет;
 
*Проверяет, содержит ли сундук указанный предмет;
 
*Проверяет, содержит ли табличка указанный текст.
 
*Проверяет, содержит ли табличка указанный текст.

Текущая версия на 01:52, 19 апреля 2022

Блоки-функции - основной инструмент работы каждого разработчика, из которого состоит весь код игры.

Категории

Событие

Событием является те блоки-функции, с которых начинается последующий код. Большим отличием от других категорий является то, что блоки-функции из этой категории ставятся только на голубое стекло, то есть в начало строчки.

Действие

Действия являются неотъемлемой частью любого кода, поскольку только блоки-функции этой категории способны совершать какие-либо действия над игроками и игрой.

Условие

Условием является требование, только при выполнении которого продолжится работа кода. Также используется условием для выбора объекта специальным действием.

Синтаксис

Синтаксисом является правильная установка блоков-функций для работоспособного кода.

  1. Блоки-функции с категорией "Событие" всегда ставятся только вначале (на голубое стекло);
  2. Блоки-функции с категорией "Условие" и "Действие" ставятся только на светло-серое стекло;
  3. Поршни - пределы условия. Если Действие нужно выполнять только при достижении определённого условия, то Действие нужно поставить между поршнями условия;
  4. Одновременных Условий может быть много, главное, чтобы при установки Условия в Условии, количество конечных скобок соответствовало количеству условий
  5. Код, который идёт после "Выбрать объект", будет выполняться над выбранным объектом;
  6. Блок-функция Иначе ставится только после поршня Условия и не может быть установлена после себя.

Список событий

Событие игрока

Используется для активации кода в строчке в момент выполнения события.

Примеры использования

  • Игрок зашёл в игру;
  • Моб заспавнился;
  • Игрок передвинулся.

Функция

Используется для вызова заранее заготовленного кода, который часто повторяется в коде или для того, чтобы продлить строчку. Чтобы переименовать функцию, необходимо установить текстовой переменной нужное название и кликнуть ПКМ ею по табличке функции.

Функция.png

Примеры использования

  • Оптимизация места в строчках и времени;
  • Создание рекурсивной функции;
  • Продолжение закончившейся строчки.

Цикл

Используется для множественного повторения одного и того же действия с указанным промежутком. Чтобы установить промежуток, необходимо взять в руки числовую переменную и установить ей нужный временной промежуток в тиках.

Цикл.png

Примеры использования

  • Таймер, по истечению которого происходят определённые действия;
  • Регулярное обновления разных способов коммуникации типа скорборда;
  • Выполнение однотипных игровых проверок.

Список действий

Действие игрока

Используется для манипуляций над игроком. Поддерживает интегрированную выборку.

Примеры использования

  • Отправить сообщение;
  • Изменить режим игры;
  • Кикнуть из игры.

Игровое действие

Используется для изменения настроек мира, спавна сущностей и т.д.

Игровое действие.png

Примеры использования

  • Действия со скорбордами;
  • Изменение времени и погоды в мире;
  • Спавн различных сущностей и NPC.

Присвоить переменную

Используется для установки значения динамической переменной.

Примеры использования

  • Установить значение переменной;
  • Сгенерировать случайное число между двумя числами;
  • Изменить координату.

Выбрать объект

Используется для выбора объекта, с которым будет работать последующий код.

Выбрать объект.png

Примеры использования

  • Выбрать всех игроков/мобов/сущностей;
  • Выбрать игрока/моба/сущность по условию;
  • Выбрать последнего заспавненного моба.

Вызвать функцию

Используется для вызова заранее созданной функции.

Вызвать функцию.gif

Примеры использования

  • Продление строчки кода;
  • Синхронный или асинхронный запуск функции;
  • Создание рекурсивнй функции.

Список условий

Если игрок

Используется для установки условия игрока, при выполнении которого продолжается исполнение кода.

Примеры использования

  • Проверяет, приседает ли игрок;
  • Проверяет, равно ли сообщение игрока другому значению;
  • Проверяет, ломает ли игрок проверяемый блок.

Если переменная

Используется для сравнения различных значений.

Примеры использования

  • Проверяет, больше ли одно число другого;
  • Проверяет, содержит ли один текст другой;
  • Проверяет, существует ли переменная.

Иначе

Активирует код в скобках "Иначе", если предыдущее условие не соответствует заданным значениям.

Примеры использования

  • Проверка одного значения в случае несоответствия другого.

Если существо

Используется подобно условию "Если игрок", но распространяется уже только на сущности.

Если существо.png

Примеры использования

  • Проверяет, равняется ли сущность указанному типу;
  • Проверяет, является ли сущность мобом/NPC/снарядом;
  • Проверяет, равно ли имя сущности заданному значению.

Если игра

Используется для проверки игровых значений.

Примеры использования

  • Проверяет, стоит ли указанный блок на указанном месте;
  • Проверяет, содержит ли сундук указанный предмет;
  • Проверяет, содержит ли табличка указанный текст.