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

Text Placeholder API Expressions

Добавляет математические, условные выражения и выражения для работы со строками в Text Placeholder API.

Fabric
Загрузчики
Fabric
Скачиваний на Modrinth
2,1 тыс.
Подписчиков на Modrinth
6
версии
3
Обновлён
19 февраля 202619 февр.
Опубликован
в 2024
Это библиотека — она нужна другим модам и сама ничего не добавляет в игру

Коротко о моде

Библиотека — нужна другим модам
Работает на Fabric
Для Minecraft 1.21, 1.21.11
Ставится только на сервер; игрокам ставить не нужно
Последняя версия — 1.1.0 от 19 февраля 2026
Нужен Text Placeholder API
Где нужен
В игрене нуженНа сервереобязателен

Ставится только на сервер; игрокам ставить не нужно

Версии игры1.21, 1.21.11
Описание переведено автоматическиПоказать оригинал (EN)

Text Placeholder API Expressions

Добавляет в Text Placeholder API выражения для математики, условий и работы со строками.
Этот проект использует Keval для разбора математических выражений, и без него всё было бы в разы сложнее. Поддержите автора — поставьте звезду его репозиторию!

Использование плейсхолдеров в выражениях

Это расширение использует синтаксис ${category:placeholder}, позволяя подставлять плейсхолдеры, которые возвращают числа, как компоненты.
Например, чтобы показать здоровье игрока в процентах (скажем, в списке игроков), можно использовать следующее:
%expr:math ${player:health} * 100 / ${player:max_health}%%

Математический плейсхолдер

Основная часть добавлений (каламбур не задумывался) в этом расширении доступна через плейсхолдер expr:math.

Можно считать, что этот плейсхолдер обрабатывает три разных «типа»:

  • Компоненты — числа, функции, константы и плейсхолдеры, возвращающие числа.
  • Бинарные операторы — например, сложение или вычитание, которые ставятся между двумя компонентами.
  • Унарные операторы — например, отрицание и факториал, которые применяются к одному компоненту.

Компоненты и операторы, предоставляемые этим расширением

Бинарные операторы применяются между двумя компонентами.

Бинарный операторФункцияПримерРезультат
+Сложение%expr:math 2 + 2%4
-Вычитание%expr:math 4 - 1%3
*Умножение%expr:math 3 * 3%9
/Деление%expr:math 9 / 4%2.25
^Степень%expr:math 3 ^ 3%27

Унарные операторы применяются к одному компоненту.

Унарный операторФункцияПримерРезультат
-Отрицание%expr:math 1 + -1%0
+Тождество%expr:math ??%Что это вообще делает
!Факториал%expr:math 5!%120

Функции — это компоненты, принимающие выражения в качестве аргументов.

ФункцияАргументыОписаниеПримерРезультат
mod2Модуль / остаток%expr:math mod(7, 2)%1
neg1Отрицание / инверсия (как унарный -)%expr:math neg(10)%-10
abs1Абсолютное значение%expr:math abs(-10)%10
sqrt1Квадратный корень%expr:math sqrt(34)%5.8309
cbrt1Кубический корень%expr:math cbrt(30)%3.1072
exp1Экспонента%expr:math exp(4)%54.5981
ln1Натуральный логарифм%expr:math ln(4)%1.3862
log101Логарифм по основанию 10%expr:math log10(4)%0.6020
log21Логарифм по основанию 2%expr:math log2(4)%2
rad1Градусы в радианы%expr:math rad(30)%0.5235
sin1Синус%expr:math sin(rad(30))%0.4999
cos1Косинус%expr:math cos(rad(30))%0.8660
tan1Тангенс%expr:math tan(rad(30))%0.5773
asin1Арксинус%expr:math asin(rad(30))%0.5510
acos1Арккосинус%expr:math acos(rad(30))%1.0197
atan1Арктангенс%expr:math atan(rad(30))%0.4823
ceil1Округление вверх%expr:math ceil(0.4)%1
floor1Округление вниз%expr:math floor(0.6)%0
round1Округление%expr:math round(0.5)%1
min2+Наименьший аргумент%expr:math min(1, 0.3, 7)%0.3
max2+Наибольший аргумент%expr:math max(1, 0.3, 7)%7
avg2+Среднее арифметическое аргументов%expr:math avg(1, 0.3, 7)%2.7666

Константы — это компоненты, которые вычисляются в постоянное значение.

КонстантаОписание
PIπ
eчисло Эйлера

Условные плейсхолдеры

Аргументы этих плейсхолдеров должны разделяться точками с запятой (;), а не пробелами.

%expr:ifeq%

Проверяет, равны ли a и b, и возвращает c или d в зависимости от результата.

%expr:ifeq aIsMath a bIsMath b cIsMath c dIsMath d%

АргументОписание
aIsMathСчитать ли a математическим выражением. Либо true, либо false.
aМатематическое выражение или текст для сравнения с b. Если считается текстом, пробелы в начале и конце строки удаляются.
bIsMathСчитать ли b математическим выражением. Либо true, либо false.
bМатематическое выражение или текст для сравнения с a. Если считается текстом, пробелы в начале и конце строки удаляются.
cIsMathСчитать ли c математическим выражением. Либо true, либо false.
cМатематическое выражение или текст, используемый, если a и b равны.
dIsMathСчитать ли d математическим выражением. Либо true, либо false.
dМатематическое выражение или текст, используемый, если a и b не равны.
Пример

Player %expr:ifeq false; ${player:equipment_slot mainhand}; false; Diamond Sword; false; is; false; is not% holding a Diamond Sword.

УсловиеРезультат
%player:equipment_slot mainhand% == "Diamond Sword"Player is holding a Diamond Sword.
%player:equipment_slot mainhand% != "Diamond Sword"Player is not holding a Diamond Sword.

%expr:iflt%

Проверяет, меньше ли a, чем b, и возвращает c или d в зависимости от результата.

%expr:iflt a b cIsMath c dIsMath d%

АргументОписание
aМатематическое выражение для сравнения с b.
bМатематическое выражение для сравнения с a.
cIsMathСчитать ли c математическим выражением. Либо true, либо false.
cМатематическое выражение или текст, используемый, если a меньше b.
dIsMathСчитать ли d математическим выражением. Либо true, либо false.
dМатематическое выражение или текст, используемый, если a не меньше b.
Пример

Player is in %expr:iflt ${player:health}; 14; false; poor; false; good% health

УсловиеРезультат
%player:health% < 14Player is in poor health
%player:health% >= 14Player is in good health

%expr:ifgt%

Проверяет, больше ли a, чем b, и возвращает c или d в зависимости от результата.

%expr:ifgt a b cIsMath c dIsMath d%

АргументОписание
aМатематическое выражение для сравнения с b.
bМатематическое выражение для сравнения с a.
cIsMathСчитать ли c математическим выражением. Либо true, либо false.
cМатематическое выражение или текст, используемый, если a больше b.
dIsMathСчитать ли d математическим выражением. Либо true, либо false.
dМатематическое выражение или текст, используемый, если a не больше b.
Пример

Health: %expr:ifgt ${player:health}; 4; true; ${player:health} * 100 / ${player:max_health}%; false; Nearly dead!%

УсловиеРезультат
%player:health% == 15Health: 75
%player:health% == 14Health: 70
%player:health% <= 4Health: Nearly dead!

Строковые плейсхолдеры

Аргументы этих плейсхолдеров должны разделяться точками с запятой (;), а не пробелами.

%expr:pad%, %expr:padleft% и %expr:padright%

Дополняет одну или обе стороны str символом c, пока длина строки не достигнет length.

%expr:pad length; str; c% %expr:padleft length; str; c% %expr:padright length; str; c%

АргументОписание
lengthМатематическое выражение, целевая длина дополненной строки.
strИсходная строка для дополнения. Пробелы в начале или конце строки удаляются.
cСимвол для дополнения.
Пример

%expr:padleft 2 ${server:online} 0% / %server:max_players%

УсловиеРезультат
%server:online% == 1212 / 40
%server:online% == 404 / 40

%expr:padmatch%, %expr:padmatchleft% и %expr:padmatchright%

Дополняет одну или обе стороны str символом c, пока длина строки не совпадёт с длиной match.

%expr:padmatch match; str; c% %expr:padmatchleft match; str; c% %expr:padmatchright match; str; c%

АргументОписание
matchСтрока, длине которой нужно соответствовать. Пробелы в начале или конце строки удаляются.
strИсходная строка для дополнения. Пробелы в начале или конце строки удаляются.
cСимвол для дополнения.
Пример

%expr:padmatchleft ${server:max_players} ${server:online} 0% / %server:max_players%

УсловиеРезультат
%server:max_players% == 40, %server:online% == 404 / 40
%server:max_players% == 100, %server:online% == 4004 / 100

Частые вопросы

Как установить Text Placeholder API Expressions?

Установите Fabric под свою версию Minecraft, скачайте Text Placeholder API Expressions под ту же версию и загрузчик, положите файл в папку mods и запустите игру с профилем загрузчика.

Для каких версий Minecraft есть Text Placeholder API Expressions?

У Text Placeholder API Expressions есть сборки для Minecraft 1.21, 1.21.11.

Нужен ли Text Placeholder API Expressions на сервере?

Ставится только на сервер; игрокам ставить не нужно

Лицензия и источник
GNU General Public License v3.0 onlyможно использовать и распространять; изменённые версии — под той же лицензией и с исходным кодом
Оригинал — Modrinth↗Файлы — без изменений, проверены по SHA-512Это ваш мод? Правообладателям

Сайт использует cookie: необходимые — для входа и темы, а также счётчики посещений Яндекс Метрика и LiveInternet — по ним мы видим, как пользуются сайтом. Рекламных cookie у нас нет. Подробнее