Функция bool_symb() в выражениях
bool_symb()
- строковая функция позволяет вам создавать сообщения с динамически изменяющимся содержимым. Выбор содержимого зависит от Условия.
Способ подачи информации в данном пособии предполагает что вы уже ознакомились с указанными по ссылкам документами и в целом понимаете принципы работы описываемого функционала.
❖ Необходимый функционал
Дополнительные переменные.
Для подключения перейдите в вашем боте:☞ 🔐Админ | 🧩Расширения | 📂Переменные
Макросы и выражения кнопок.
Для подключения перейдите в вашем боте:☞ 🔐Админ | 🧩Расширения | 📂Кнопки
Условия.
Для подключения перейдите в вашем боте:☞ 🔐Админ | 🧩Расширения | 📂Кнопки
Пакет дополнительных "Токенов Функций".
Для подключения перейдите в вашем боте:☞ 🔐Админ | 🧩Расширения | 📂Action-ы
ВАЖНО: Приобретение функционала для бота доступно только Создателю (хозяину) бота. Админы покупать функционал - НЕ МОГУТ!
Как показать разные emoji в зависимости от временники суток.
Ваша служба поддержки не может работать круглосуточно и вы хотите показать юзерам что сейчас у вас ночь и им нужно подождать ответа дольше чем обычно - до наступления утра и рабочего дня.
ЗАДАЧА: Показать в сообщении значок 🌞 днем и значок 🌒 ночью. Допустим, день начинается в 8 часов утра, а ночь в 23:59 ночи.
Воспользуемся одной из функций работы с Датой и Временем dt_left()
и макросом Даты %date%
:dt_left("%date% 08:00:00") == 0
➨ 8 утра уже наступило (до него не осталось времени)dt_left("%date% 23:59:00") > 0
➨ 12 ночи еще НЕ наступило (до него осталось время)
Окончательное Выражение будет выглядеть вот так:
{bool_symb(((dt_left("%date% 08:00:00") == 0) and (dt_left("%date% 23:59:00") > 0)),"🌞 Сейчас День" ,"🌒 Сейчас Ночь")}
Как показать разные emoji - Утром, Днём и Вечером.
ЗАДАЧА: Назвать в сообщении текущий период суток с учётом часового пояса бота.
Утро - с 00:00 до 12:00{bool_symb(dt_diff("%date% 12:00:00", dt_now_tz()) > 0, "Доброе утро", "")}
День - с 12:00 до 20:00{bool_symb((dt_diff("%date% 12:00:00", dt_now_tz()) <= 0) and (dt_diff("%date% 20:00:00", dt_now_tz()) > 0), "Добрый день", "")}
Вечер - с 20:00 до 00:00{bool_symb(dt_diff("%date% 20:00:00", dt_now_tz()) <= 0, "Добрый вечер", "")}
Если поместить эти три выражения в одно сообщение, то в единицу времени показано будет только одно из них.
Как показать количество чего-либо при помощи emoji.
В вашей игре юзер может получать награды и вы бы хотели графически показать количество наград персонажа при помощи emoji 🎖.
ЗАДАЧА: Показать в сообщении значки 🎖 в количестве равном числу в переменной %reward%
, а в случае отсутствия наград показать соответствующее сообщение. Допустим количество наград и значение в переменной %reward%
равно 3, максимальное количество наград 5.
Воспользуемся функцией int_symb()
из руководства по выражениям.
Окончательное выражение будет выглядеть вот так:
{bool_symb(%reward%, int_symb(%reward%, "🎖", 5), "У вас нет наград...")}
Результат: 🎖🎖🎖
Как показать текущее и оставшееся до максимума количество чего-либо при помощи emoji.
В вашей игре персонаж имеет очки здоровья и вы бы хотели графически показать количество здоровья персонажа при помощи emoji, а также текущее количество повреждений персонажа.
ЗАДАЧА: Показать в сообщении значки 💚 в количестве равном числу в переменной %hp%
, а так же значки 💔 в количестве не достающем до максимума в случае наличия повреждений и соответствующее сообщение если очков здоровья не осталось совсем. Допустим текущее количество очков здоровья и значение в переменной %hp%
равно 7, максимальное количество очков здоровья 10.
Окончательное выражение будет выглядеть вот так:
{bool_symb(%hp%, int_symb(%hp%, "💚", 10), "Персонаж без сознания...\n")}{bool_symb((%hp% <= 10), int_symb((10 - %hp%), "💔", 10), "")}
Значок: \n
- это символ перевода строки.
Результат (если здоровье равно 7):
💚💚💚💚💚💚💚💔💔💔
Результат (если здоровье равно 0 (ноль)):
Персонаж без сознания...
💔💔💔💔💔💔💔💔💔💔