Как изменить плейсхолдер майнкрафт

Всем привет! Интересует такая вещь. Можно ли изменить слово, которое выводится плейхолдером? Допустим, есть плейсхолдер %player_gamemode% и он выводит...
  1. Всем привет!

    Интересует такая вещь. Можно ли изменить слово, которое выводится плейхолдером? Допустим, есть плейсхолдер %player_gamemode% и он выводит «SURVIVAL». Можно ли это слово заменить на «Выживание»?

    При этом, без какого-либо программирование или самописов. Можно ли так сделать? Видел плейсхолдер %javascript ..% может через него это как-то осуществляется?

  2. Быстрая раскрутка сервера Minecraft


  3. HauserGrim

    HauserGrim
    Активный участник
    Пользователь

    Баллы:
    96
    Имя в Minecraft:
    Artarious

    В плагине TAB видел нечто похожее, но это распространяется только на него. Самопис (расширение), либо попробовать через расширение JavaScript, но во втором я не уверен, но гайдики почитать стоит.

  4. Понятно. Сижу гуглю, пока особо ничего не нашёл


  5. Saharo4ek

    Saharo4ek
    Активный участник
    Пользователь

    Баллы:
    96
    Имя в Minecraft:
    tin

    А зачем париться с его заменой, вот смысл? Ставишь на вьюв рекьюмент этот плейс и выводишь в лор это свое «Выживание» при соблюдении условия.

  6. Ну это само собой, один из самых простых способов, однако, если нужно выводить плейсхолдер не только в меню, а ещё, допустим, на голограмме или ещё где-то, то не подойдёт


  7. Хорошо погуглив, решил проблему. Может кому-то пригодится, что нужно сделать:

    • Устанавливаем расширение «Javascript» для PlaceholderAPI: /papi ecloud download Javascript, /papi reload
    • В папке PlaceholderAPI появляется файл javascript_placeholders.yml. В нём подключаем файл с нашим будущим скриптом изменения плейсхолдера:

    check_item:
    
      file: check_item.js


    • Переходим в папку javascripts (Находится в PlaceholderAPI/javascripts) и теперь создаём файл check_item.js (Название должно отвечать тому, что в javascript_placeholders.yml)

    • Теперь нужен скрипт. Для примера я решил изменить плейсхолдер %checkitem_mat:EMERALD% который проверяет, есть ли в инвентаре игрока изумруд. Если да, он выводит «

    yes«, если нет «no«. Я хочу эти два значения изменить на «Есть» и «Нет«. Для этого используем этот скрипт:

    var ItemData = args[0];
    var placeholder = "checkitem_mat:" + ItemData;
    var hasItem = PlaceholderAPI.static.setPlaceholders(BukkitPlayer, "%" + placeholder + "%");
    
    function itemCheck(){
      if(hasItem == "yes"){
          return "&eЕсть";
      }
      else {
          return "&cНет";
      }
    }
    
    itemCheck();


    • Сохраняем файл, перезагружаем PAPI: /papi reload
    • Готово. Теперь где нам нужно устанавливаем плейсхолдер %javascript_check_item_ВЕЩЬ% (Например, %javascript_check_item_EMERALD%) и получаем на выходе либо «Есть«, либо «Нет«

    P.s. Если нужно изменить, к примеру тот же плейсхолдер %player_gamemode%, то тут скрипт проще:

    var placeholder = "%player_gamemode%";
    
    function gamemodeCheck(){
      if(placeholder == "CREATIVE"){
          return "Креатив";
      }
      else if (placeholder == "SURVIVAL"){
          return "Выживание";
      }
      else {
          return "Наблюдатель";
      }
    }
    
    gamemodeCheck();

    Инфу брал отсюда: https://github.com/PlaceholderAPI/Javascript-Expansion/wiki/Advanced-Scripts

    Последнее редактирование: 27 ноя 2020
  8. PlaceholderAPI юзать не? Зачем тебе эти костыли с js?


  9. Saharo4ek

    Saharo4ek
    Активный участник
    Пользователь

    Баллы:
    96
    Имя в Minecraft:
    tin

    Это один из модулей PlaceholderAPI…

  10. Их легко писать, и без костылей с js.


  11. Saharo4ek

    Saharo4ek
    Активный участник
    Пользователь

    Баллы:
    96
    Имя в Minecraft:
    tin

    Какие костыли? Данная возможность предусмотрена как раз для таких случаев.


  12. Arizonafraps

    Arizonafraps
    Ньюби
    Пользователь

    Баллы:
    1
    Имя в Minecraft:
    Johirok

    А можешь сказать более подробней про TAB, там возможно сделать?

    Последнее редактирование: 4 ноя 2022

  13. Nextler

    Nextler
    Активный участник
    Пользователь

    Баллы:
    76
    Имя в Minecraft:
    NEXXTLER

    При помощи Rocket Placeholder можно такое сделать

Поделиться этой страницей

Русское сообщество Bukkit

Bukkit по-русски - свой сервер Minecraft

Как установить:

  • Скачайте файл(кнопка внизу страницы)
  • Перенесите файл в папку
  • Откройте и запустите установку
  • Все нужные файлы и зависимости появятся в папке
  • После установки запускайте ещё раз и готово
  • Может потребоваться отключить антивирус, чтобы запустить!
  • В комменты пишите если что помогу

Смотреть видео обзор:

Описание:

? Приватное ванильное выживание → onenilla.joinserver.xyz (1.16.5)
? Группа проекта OneNilla →
————————————————————————————————————————
⚡ Салют! Сегодня вас ожидает достаточно необычный туториал, но как показывает практика, с теми вещами, о которых мы сегодня будем говорить сталкиваются многие при создании своей сборки. Сегодня мы научимся изменять вывод значения плейсхолдера. В каких случаях это полезно — вы узнаете в видео! Приятного просмотра ?

➖ Скрипт из видео →
➖ Плагин PlaceholderAPI →
➖ Список плейсхолдеров →

? IP сервера Джейкоба (1.16.5) → jc-world.ru
❗ Сайт сервера Джейкоба →

? Понравилось видео? Подпишись на канал →
? Группа канала ВК →
? Поддержать канал →
? По поводу рекламы →

✅ Приветствую, меня зовут Джейкоб и я снимаю видеоролики по Майнкрафту и не только. У меня есть ряд рубрик, которые я стараюсь периодически выкладывать. Советую посетить канал, уверен, что ты найдёшь для себя что-то интересное. Спасибо ?

#placeholderapi #javascript #майнкрафт #minecraft #плейсхолдер #созданиесборки #сборка #маинкрафт #майн #настройка #как #изменить #плейсхолдер #placholder #туториал #обучение #джейкоб

Если произошла ошибка:

  • Попробуйте запустить файл от администратора
  • Так же антивирус может блокировать запуск
  • Напишите комментарий и вам могут помочь

Читайте также:

  • Майнкрафт скачать Плагин Vault для Сервера
  • Скачать плагин TrapLeave — лив из трапки в кт
  • Майнкрафт плагин WCSafe Защита спавна от донатеров
  • Скачать приватный чит Celestial Client для Майнкрафт 1.12.2
  • Что делать если не запускается сборка сервера? Файл .bat закрывается
  • Готовый сервер майнкрафт BungeeCord 1.8-1.14 Донат кейсы, Гаджеты, Питомцы
  • Скачать Готовую сборку BungeeCord сервера Minecraft / Слив DexLand
  • Другие видео обзоры майнкрафт

Обновлено: 09.02.2023

PlaceholderAPI — плагин/библиотека для Майнкрафт , которая позволяет серверам использовать переменные из широкого спектра ваших любимых плагинов в совокупности. Essentials, Factions, LuckPerms, Vault, AutoSell, GriefPrevention и т. д. Вы можете отображать информацию из ваших любимых плагинов в любом плагине, который поддерживает PlaceholderAPI. Полный список поддерживаемых плагинов смотрите ниже. Благодаря использованию облака расширения, PAPI эффективно позволяет выбрать, какие переменные вы хотите установить. Облако расширения позволяет получать новые переменные, обновления существующих расширений переменных и многое другое непосредственно с вашего сервера без обновления фактического плагина. С более чем 100 000 скачиваний PlaceholderAPI является обязательным для сервера любого типа или масштаба.

Основные команды плагина PlaceholderAPI:

/papi — Полный список команд.
/papi info «Название переменной» — Посмотреть информацию о переменной.
/papi parse — Синтаксический анализ строки переменной.
/papi reload- Перезагрузить плагин.

Основные права плагина PlaceholderAPI:

— placeholderapi.admin — возможность использования команд администратора.
— placeholderapi.list — возможность использования команды list.
— placeholderapi.reload — Использовать команду перезагрузки конфигурации плагина.
— placeholderapi.parse — возможность использования команды parse.
— placeholderapi.register — возможность регистрации или отмены регистрации переменных.
— placeholderapi.ecloud — позволяет использовать ecloud команды.
— placeholderapi.updatenotify — уведомляет о наличии обновления плагина.
— placeholderapi.*- Все возможности плагина.

nekaboy

Я скачал плагин PlaceHolderAPI и titlemanager.

Я хочу чтобы показывался режим игры, сделал.

Пишет: Режим: CREATIVE мне интересно как можно изменить название CRATIVE на КРЕОТИВ ? Я смог только изменить true и false в настройках и сделал ВКЛ и ВЫКЛ.
Заранее спасибо за помощь.

Переменные для плагина PlaceholderAPI:

Переменные сервера:

Команда загрузки расширений — /papi ecloud

Внимание: %server_ram_total% и %server_ram_max% сделайте одинаковыми

Звуки для игрока:

Воспроизведение звука игроку.
Команда для загрузки /papi ecloud download Sound

Глобальные переменные звуков:

Переменные пингования серверов:

Переменные для серверов BungeeCord:

Команда для загрузки /papi ecloud download RedisBungee

Переменные обращения к игроку:

Переменные к списку игроков:
Команда загрузки расширений: /papi ecloud download ListPlayers

Команда загрузки расширений: /papi ecloud download Player

Переменные к обращению к другому игроку:

Переменные статистики:

Команда загрузки расширений: /papi ecloud download Statistic

TrueFalse переменные:

Команда загрузки расширений: /papi ecloud download TrueFalse

Переменные плагинов:

Команда загрузки расширений: /papi ecloud download Plugin

Переменных очень много, поэтому я их спрятал под спойлер. Откройте спойлер чтобы посмотреть весь список переменных.
Нажмите клавиши Ctrl+F и введите в поиск название для Вашего плагина, так вам будет проще найти переменные если они есть

Список переменных плагинов:

AcidIsland

Команда загрузки расширений: /papi ecloud download AcidIsland

AdvancedCustomMenu+

AdvancedFly

AnimatedMenu

ASkyBlock

Команда загрузки расширений: /papi ecloud download ASkyBlock

AutoRank

Команда загрузки расширений: /papi ecloud download AutoRank

AutoSell

Команда загрузки расширений: /papi ecloud download AutoSell

BlockQuest

ChatColor+

ChatReaction

Команда загрузки расширений: /papi ecloud download ChatReaction

CheckNameHistory

Команда загрузки расширений: /papi ecloud download CheckNameHistory

CombatLogX

Compassance

CraftConomy

Команда загрузки расширений:/papi ecloud download CraftConomy

%craftconomy_% will return a double of the player’s balance in the specified currency
%craftconomy_@10% will return 10 times the players balance in the specified currency
%craftconomy_@int% will return an integer of the player’s balance in the specified currency (use this for DeluxeMenus)

DeluxeTags

Команда загрузки расширений: /papi ecloud download DeluxeTags

DonateParty

EnjinMinecraftPlugin

Команда загрузки расширений: /papi ecloud download Enjin

Envoys

Essentials

Команда загрузки расширений: /papi ecloud download Essentials

EZBlocks

Команда загрузки расширений:/papi ecloud download EZBlocks

EZPrestige

Команда загрузки расширений:/papi ecloud download EZPrestige

EZRanksPro

Команда загрузки расширений: /papi ecloud download EZRanksPro

Factions MCore

Команда загрузки расширений: /papi ecloud download Factions

FactionsUUID 1.6.9.5

Factions relation placeholders

ПРИМЕЧАНИЕ. Эти переменные работают с FUUID и MCore, все, что вам нужно, это загрузить расширение плагина, который вы используете. если вы используете эти заполнители в DeluxeChat, вам нужно включить эту опцию «relationship_placeholders_enabled: true», вы можете найти это в конфиге.

GAListener

Команда загрузки расширений: /papi ecloud download GAListener

GangsPlus

Команда загрузки расширений: /papi ecloud download GangsPlus

GemsEconomy

Команда загрузки расширений: /papi ecloud download GemsEconomy

Guilds

Команда загрузки расширений: /papi ecloud download Guilds

Heroes

Команда загрузки расширений: /papi ecloud download Heroes

IslandWorld

Jobs Reborn

Команда загрузки расширений: /papi ecloud download Jobs

killStats

Команда загрузки расширений: /papi ecloud download KillStats

LeaderHeads

Команда загрузки расширений: /papi ecloud download LeaderHeads

LegendQuest

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

Marriage (reloaded)

Команда загрузки расширений: /papi ecloud download Marriage

MarriageMaster

Команда загрузки расширений: /papi ecloud download MarriageMaster

McInfected

McInfected-Ranks

McMMO

Команда загрузки расширений: /papi ecloud download McMMO

MineCrates

Команда загрузки расширений: /papi ecloud download MineCrates

MobHunting

%mobhunting_rank% (Only updated when leaderboards is updated)
%mobhunting_total_kills% (No. of killed mobs (for the player))
%mobhunting_total_cash% (The amount of money dropped on ground)
%mobhunting_dropped_rewards% (No. of rewards left on ground)
%mobhunting_dropped_money% (Amount of money left on the ground)
%mobhunting_balance% (The amount of money in BagOfGold, in the player inventory)

MySQLTokens

Nicky

Команда загрузки расширений: /papi ecloud download Nicky

Nicknamer

Команда загрузки расширений: /papi ecloud download NickNamer

OnTime

Команда загрузки расширений: /papi ecloud download OnTime

PlayTime

Команда загрузки расширений: /papi ecloud download PlayTime

PlayerPoints

Команда загрузки расширений: /papi ecloud download PlayerPoints

PlotSquared

Команда загрузки расширений: /papi ecloud download PlotSquared

PointsAPI

PremiumVanish

PrisonMines

Команда загрузки расширений: /papi ecloud download PrisonMines

ProQuests

Команда загрузки расширений: /papi ecloud download ProQuests

pvpstats

QuickSell

Команда загрузки расширений: /papi ecloud download QuickSell

RedProtect

RoyalCommands

ReferralSystem

SellAll

SimpleClans

Команда загрузки расширений: /papi ecloud download SimpleClans

SimpleKillTracker

SkywarsReloaded

SimpleCoinsAPI

SimplePrefix

Команда загрузки расширений: /papi ecloud download SimplePrefix

Simple Suffix

Команда загрузки расширений:

SkillAPI

Команда загрузки расширений: /papi ecloud download SkillAPI

SQLPerms

SQLTokens

SuperbVote

Команда загрузки расширений: /papi ecloud download SuperbVote

SuperCredits

TokenEnchant

Команда загрузки расширений: /papi ecloud download TokenEnchant

TokenManager

Команда загрузки расширений: /papi ecloud download TokenManager

Towny

Команда загрузки расширений: /papi ecloud download Towny

USkyblock

Команда загрузки расширений: /papi ecloud download uSkyBlock

UltimateChat

UltimateVotes

Команда загрузки расширений: /papi ecloud download UltimateVotes

UnityGen

Команда загрузки расширений: /papi ecloud download UnityGen

Vault Economy

Команда загрузки расширений: /papi ecloud download Vault

Vault Permissions

Команда загрузки расширений: /papi ecloud download Vault

VoteParty

Команда загрузки расширений: /papi ecloud download VoteParty

VoteRoulette

Команда загрузки расширений: /papi ecloud download VoteRoulette

AdvancedAbilities

ASkyBlock/AcidIsland Island Border

BattleLevels

BeautyQuests

★★★ CARL THE CREEPER ★★★ THE BEST DELIVERY MAN PLUGIN

ChatColor+ Premium

Clans | Clan System | Full GUI + Commands

DeliveryMan

%deliveryman_prizes_all%
%deliveryman_prizes_from:[menu id]%
%deliveryman_has_prize:[menu id]:[prize id]%

DeluxePM

Команда загрузки расширений: /papi ecloud download DeluxePM

Denizen

%denizen_% (EG, %denizen_% )

DiscordSRV

DreamFish

%dreamfish_player_fishing : level%
%dreamfish_player_fishing : exp%
%dreamfish_player_fishing : exp_to_up%
%dreamfish_player_fishing : total_unlocked_bait%
%dreamfish_player_fishing : total_unlocked_fish%
%dreamfish_player_fishing_mode : fish%
%dreamfish_player_fishing_mode : fish_power%
%dreamfish_player_fishing_mode : tension%
%dreamfish_player_bait : mark_bait%
%dreamfish_player_bait : hook_bait%
%dreamfish_fish : : as_bait%
%dreamfish_fish : : type%
%dreamfish_fish : : price%
%dreamfish_fish : : resistance%
%dreamfish_fish : : power%
%dreamfish_fish : : max_power%
%dreamfish_fish : : max_speed%
%dreamfish_fish : : max_dive%
%dreamfish_fish : : average_length%
%dreamfish_fish : : average_weight%
%dreamfish_fish : : requirement : level%
%dreamfish_fish : : requirement : permission%
%dreamfish_fish : : in_region : %
%dreamfish_fish : : in_biome : %
%dreamfish_bait : : buyable%
%dreamfish_bait : : price%
%dreamfish_bait : : requirement : level%
%dreamfish_bait : : requirement : permission%
%dreamfish_bait : : fishing : total_possibility%
%dreamfish_bait : : fishing : chance : %
%dreamfish_bait : : fishing : possiblity : %

EpicFriends

EssCore

FunnyGuilds

HoloBlock

IslandRate | ASkyBlock Addon

IslandRate | AcidIsland Addon

Kingdoms+

LuckPerms

Команда загрузки расширений: /papi ecloud download LuckPerms

%luckperms_group_name%
%luckperms_context_%
%luckperms_groups%
%luckperms_has_permission_%
%luckperms_in_group_%
%luckperms_inherits_group_%
%luckperms_gon_track_ %
%luckperms_has_groups_on_track_ %
%luckperms_highest_group_by_weight%
%luckperms_lowest_group_by_weight%
%luckperms_first_group_on_tracks_%
%luckperms_last_group_on_tracks_%
%luckperms_expiry_time_%
%luckperms_group_expiry_time_%
%luckperms_prefix%
%luckperms_suffix%
%luckperms_meta_%

Minecord

Multiverse-Core

Команда загрузки расширений: /papi ecloud download Multiverse

MyCommand

MyPet & MyPet-Premium

MyPrefixSystem

NickReloaded

Outpost

PvPLevels

Parkour

Команда загрузки расширений: /papi ecloud download parkour

Parties

PixelVip

Skript

Команда загрузки расширений: /papi ecloud download Skript

SkyWars

SkyWars X

stTitles

Statz

Команда загрузки расширений: /papi ecloud download Statz

SuperVanish

TheTime

Thirst

Команда загрузки расширений: /papi ecloud download Thirst

%treasuresrecentfind_find_number_% (number 1 for most recent, 2 for second most recent etc..)
%treasuresrecentfind_from_first_% (number 1 for first reward, 2 for second reward etc..)

Treasures

%treasures_keys_%
%treasures_canbuy_treasure_-% (Example: %treasures_canbuy_treasure1-defaultopener.yml%)
%treasures_treasure_price_-%

Trey’s Double Jump

VotingPlugin

WickedSkyWars

WorldGuard

Команда загрузки расширений: /papi ecloud download WorldGuard

BedWars1058

%bw1058_stats_firstplay% — get first play date using the player’s language date-format
%bw1058_stats_lastplay% — get last play date using the player’s language date-format
%bw1058_stats_kills% — get a player’s total kills count
%bw1058_stats_wins% — get a player’s total wins count
%bw1058_stats_finalkills% — get a player’s total final kills count
%bw1058_stats_deaths% — get a player’s total deaths count
%bw1058_stats_looses% — get a player’s total looses count
%bw1058_stats_finaldeaths% — get a player’s total final deaths count
%bw1058_stats_bedsdestroyed% — get a player’s total beds destroyed count
%bw1058_stats_gamesplayed% — get a player’s total games played count
%bw1058_current_playing% — get current players (playing) count
%bw1058_current_arenas% — get total arenas count

TNTRun_reloaded

Команда загрузки расширений: /papi ecloud download TNTRun

Решено Не работает placeholder из плагина Coins

jouse

kan3yda

Я писал /papi ecloud download coins еще

Raidark

Попробуй скачать другую версию PlaceHolderAPI

Прочитайте перед использованием форума:
Правила
FAQ

YNAZA

Заходи в конфиг PlaceholderAPI и включай плейсхолдеры. Могу ошибаться так как не особо понял вопрос.

Raidark

В кратце плэйсхолдер просто не работает

Как установить?

1. Скачайте плагин.
2. Из архива возьмите скачанный файл и перенесите в папку plugins вашего сервера.
3. Перезапустите сервер.
4. Готово.

Основные команды плагина PlaceholderAPI:

/papi — Полный список команд.
/papi info «Название переменной» — Посмотреть информацию о переменной.
/papi parse — Синтаксический анализ строки переменной.
/papi reload- Перезагрузить плагин.

Читайте также:

      

  • Кто такой нюкер в доте 2
  •   

  • Достигнут недельный лимит сокровищ genshin impact что делать
  •   

  • Как делать перфокарту на 12 игл для вязальной машины silver reed sk155
  •   

  • Планшет без сим карты как подключить интернет
  •   

  • Где взять значок интерпола hitman

Content

  • About
  • Internal placeholders

    • Universal
    • Bukkit only
    • BungeeCord only
  • PlaceholderAPI
  • Relational placeholders

    • About
    • Usage
  • Refreshing

    • Refresh intervals
    • Sync refreshing
  • Placeholder is not working

    • Internal placeholder is not working
    • PlaceholderAPI placeholder is not working
  • API

    • Server placeholders
    • Player placeholders
    • Relational placeholders

About

TAB offers various placeholders to display the most common information. It also supports PlaceholderAPI placeholders.

Internal placeholders

Basic placeholders provided by the plugin. Most of these placeholders were added because they were requested by people who don’t want to install another plugin just to show username. Some of them have configurable output in config.yml in Placeholders section. Unused placeholders do not affect performance in any way.

Placeholders must be refreshed. All internal placeholders have manually defined refresh interval, which I found the most optimal and cannot be changed. Time is in milliseconds. -1 is used for placeholders which are in fact constants (such as %player%), or fire an event each time they change, which can be listened to (such as %world%) and value updated. Refresh interval for conditions is set to be equal to fastest refreshing placeholder used inside each condition.

Warning: Trying to use a bukkit-only placeholder on bungeecord because you decided to copypaste config to bungee installation will result in those placeholders to not work! Use their PlaceholderAPI alternatives with PlaceholderAPI support on bungeecord.

Universal

Identifier Refresh interval Description
%online% 1000 total online player count (excluding vanished players)
%world% -1 name of world where player is
%worldonline% 1000 amount of players in the same world (excluding vanished players)
%ping% 500 Player’s ping to the server where TAB is installed.
Note: This value is measured by the server and TAB is only retrieving that value. If it’s wrong, it’s not a TAB issue.
%player% -1 player’s real name, result of .getName(), cannot be fooled by plugins that change player name
%time% 500 current real time, output configurable in config.yml
%date% 60000 current date, output configurable in config.yml
%staffonline% 2000 amount of online players with tab.staff permission
%nonstaffonline% 2000 amount of online players without tab.staff permission ( online — staffonline )
%memory-used% 200 used RAM of server in MB
%memory-max% -1 total RAM of server in MB
%memory-used-gb% 200 used RAM of server in GB
%memory-max-gb% -1 total RAM of server in GB
%player-version% -1 version of player, such as «1.14.4»
%player-version-id% -1 network ID of player’s version
%luckperms-prefix% 1000 prefix from LuckPerms from the same instance when TAB is installed
%luckperms-suffix% 1000 suffix from LuckPerms from the same instance when TAB is installed
%displayname% 500 display name set by permission plugin, typically prefix + name + suffix
%group% 1000 Returns player’s primary group name. Used for internal functionality, but can be used as a display placeholder as well.
%vanished% 1000 Returns true/false based on player’s vanish status. Used for internal functionality, but can be used as a display placeholder as well.
%% -1 Returns the % symbol. Useful to display % symbol without breaking all placeholders after it

Bukkit only

Identifier Refresh interval Description
%health% 100 Player’s health, rounded up to match Minecraft’s heart display.
%tps% 1000 TPS of server from the last minute (measured by server)
%vault-prefix% 1000 prefix of player detected by Vault
%vault-suffix% 1000 suffix of player detected by Vault
%afk% 500 afk status of player, detected by Essentials / Purpur
%mspt% 1000 server’s current milliseconds per tick (requires paper core)
%essentialsnick% -1 Nickname from Essentials, otherwise player’s name

BungeeCord only

Identifier Refresh interval Description
%server% -1 name of server where player is
%serveronline% 1000 amount of online players on server where the player is (excluding vanished players)
%online_<servername>% 1000 amount of online players on specified server (excluding vanished players)

PlaceholderAPI

PlaceholderAPI is supported and relational placeholders are supported too. When parsing relational placeholders, TAB puts viewer as the first player argument and target player as second argument.

You can find most of placeholders that PlaceholderAPI offers on PlaceholderAPI wiki. Some plugins are not listed there, for those you’ll need to check their own wiki for placeholders.

TAB also offers its own placeholders into PlaceholderAPI. To enable the expansion, set

placeholders:
  register-tab-expansion: true

in config.yml.

Full list of placeholders:

Identifier Description
%tab_tabprefix% Current tabprefix with replaced placeholders
%tab_tabsuffix% Current tabsuffix with replaced placeholders
%tab_tagprefix% Current tagprefix with replaced placeholders
%tab_tagsuffix% Current tagsuffix with replaced placeholders
%tab_customtabname% Current customtabname with replaced placeholders
%tab_customtagname% Current customtagname with replaced placeholders
%tab_belowname% Current belowname with replaced placeholders
%tab_abovename% Current abovename with replaced placeholders
%tab_tabprefix_raw% Raw tabprefix containing unparsed placeholders
%tab_tabsuffix_raw% Raw tabsuffix containing unparsed placeholders
%tab_tagprefix_raw% Raw tagprefix containing unparsed placeholders
%tab_tagsuffix_raw% Raw tagsuffix containing unparsed placeholders
%tab_customtabname_raw% Raw customtabname containing unparsed placeholders
%tab_customtagname_raw% Raw customtagname containing unparsed placeholders
%tab_belowname_raw% Raw belowname containing unparsed placeholders
%tab_abovename_raw% Raw abovename containing unparsed placeholders
%tab_scoreboard_name% Returns name of player’s currently displayed scoreboard or empty string if none is displayed due to no display condition being met
%tab_scoreboard_visible% «Enabled» if visible, «Disabled» if not
%tab_bossbar_visible% «Enabled» if visible, «Disabled» if not
%tab_nametag_preview% «Enabled» if previewing armor stands using /tab nametag preview, «Disabled» if not
%tab_nametag_visibility% «Enabled» if player can see nametags, «Disabled» if disabled using /tab nametag toggle
%tab_replace_<placeholder>% Applies Placeholder output replacements to a PlaceholderAPI placeholder (for example %tab_replace_essentials_vanished%)
%tab_placeholder_<placeholder>% returns value of tab’s internal placeholder (such as %tab_placeholder_animation:name% for %animation:name%)

Relational placeholders

About

Unlike classic placeholders which take either 0 (placeholders with same output for all players) or 1 (per-player placeholders) players, relational placeholders take in 2 players. The first usage was to display relation between two players, specifically enemies / allies (red / green) for factions, allowing players to see faction names of other players colored based on relation.

Usage

TAB does not offer any internal relational placeholders. However, it has full support for PlaceholderAPI placeholders. You can also register your own relational placeholders using the API. In PlaceholderAPI, all relational placeholder identifiers must start with %rel_. Same rule is used for placeholders registered with the API as well.
When passing players into the function, first player is the player viewing the text, second player is the one text is being displayed on.

When trying to use placeholders from other plugins, you will need to check their documentation and search for relational placeholders. If your plugin does not appear to offer any, you ran out of luck and TAB cannot do anything about it.

Refreshing

Refresh intervals

TAB is refreshing placeholders in intervals. For internal placeholders it’s using values I found the most optimal and set directly in the plugin. Refresh intervals for PlaceholderAPI placeholders can be configured.

Sync refreshing

By default, all placeholders are refreshed asynchronously so they don’t slow down the server, since reading should be a thread-safe operation. Some placeholders, however, require to be refreshed in the main thread, causing problems or throwing errors when refreshed asynchronously. For these, replace them with %sync:<original placeholder>% and they will be refreshed in the main thread, for example %sync:server_total_entities%.
Keep in mind that now you should configure reasonable refresh interval for these placeholders to not cause TPS drops (with async placeholders it doesn’t really matter). Configured refresh intervals and CPU usage of placeholders can be checked using /tab cpu.

Placeholder is not working

When using a placeholder, you should know if it’s a TAB’s internal placeholder or a PlaceholderAPI placeholder. If you don’t, that’s the problem.

Note: Don’t forget that using % symbol will mess up placeholder starts and ends, breaking all placeholders after it. To make the symbol display correctly without messing up placeholders, use %% to display the symbol.
Example: Sale 100% OFF! -> Sale 100%% OFF!.

Internal placeholder is not working

All TAB’s internal placeholders are listed above. Some of them are bukkit only (meaning they won’t work on bungeecord) and some are bungee only. Trying to use a bukkit-only placeholder on bungeecord as a result of copypasting the config from bukkit version thinking it’s identical will not work for you and those placeholders will not work.
If you want to use those, set up PlaceholderAPI support on bungeecord and find their PlaceholderAPI equivalent. Large portion of those are included on PlaceholderAPI’s wiki.
For example you can use %vault_prefix% instead of %vault-prefix%, %essentials_afk% instead of %afk% and so on.

PlaceholderAPI placeholder is not working

If you have TAB installed on bungeecord, make sure you set up PlaceholderAPI support on bungeecord as there is no other way to retrieve data from technically a different server.

If you have TAB on bukkit or the previous step did not work, make sure it works when using /papi parse me <placeholder>. If it does not work, the issue is not on TAB’s end. Most of the time it’s just a missing expansion (/papi ecloud download <name> and /papi reload).

API

To get started with the API, see Developer API page.

For working with placeholders, you will need the PlaceholderManager. Get it using TabAPI.getInstance().getPlaceholderManager().

Placeholders have two attributes:

  • An identifier, which is used to uniquely identify the placeholder. This is also what’s usually used for replacement. For example, in %uptime%, the identifier is %uptime%.
  • A refresh rate in milliseconds, which is how often the placeholder’s refresh function will be called, to get a new value to display.

Server placeholders

Server placeholders are global to the entire plugin. Their values are not dependent on player.
Examples of server placeholders would be uptime and TPS placeholders.

To register a new server placeholder, use PlaceholderManager#registerServerPlaceholder(String, int, Supplier<Object>). The first two parameters are explained above, and the last parameter is a function that will be called to refresh the value of the placeholder. Example:

TabAPI.getInstance().getPlaceholderManager().registerServerPlaceholder("%system-time%", 50, () -> System.currentTimeMillis());

This placeholder will show current system time and update every 50 milliseconds.

Player placeholders

Player placeholders are calculated on a per-player basis. These depend on the player that we want to get the value for.
Examples of player placeholders would be nickname and prefix.

To register a new player placeholder, use PlaceholderManager#registerPlayerPlaceholder(String, int, Function<TabPlayer, Object>). The first two parameters are explained above, and the last parameter is a function that will be called to refresh the value of the placeholder. Example:

TabAPI.getInstance().getPlaceholderManager().registerPlayerPlaceholder("%player-uuid%", -1, player -> player.getUniqueId());

This placeholder will show player’s UUID and never refreshes, since UUID doesn’t change at runtime.

Relational placeholders

Relational placeholders are calculated using a pair of players, instead of a single one. These depend on the player pair that we want to get the value for. Their identifier must start with rel_.

To register a new relational placeholder, use PlaceholderManager#registerRelationalPlaceholder(String, int, BiFunction<TabPlayer, TabPlayer, Object>). The first two parameters are explained above, and the last parameter is a function that will be called to refresh the value of the placeholder. Example:

TabAPI.getInstance().getPlaceholderManager().registerRelationalPlaceholder("%rel_staff_version%", 1000, (viewer, target) -> {
    if (viewer.hasPermission("tab.staff")) {
        return target.getVersion().getFriendlyName();
    } else {
        return "";
    }
});

This placeholder will show version of players, but only to those, who have tab.staff permission. First player in the method is viewer, second player is target. Same order is applied when hooking into PlaceholderAPI as well.

lxnv boy


  • #1

Сегодня мы создадим собственный Placeholder по средствам PlaceholderAPI. Наш заполнитель будет работать так: если есть определенное право, то он выведет «Есть доступ», если нет — «Нет доступа». Проверять работу будем в DeluxeMenus.

Больше примеров можно посмотреть в документации, но думаю пару статей я ещё посвящу этой теме.

Начнем с того, что нам нужно скачать для papi расширение, вводим /papi ecloud download javascript. После перезагрузки у нас появится папка javascripts в PlaceholderAPI, в ней есть example.js (он будет пустым). Если ниже спуститься по документации, то можно увидеть пример для has permission, возьмем его за основу. По комментариям автора попытаюсь рассказать, где и за что отвечают различные функции:

var haspermission = «%player_has_permission_permission.test%»; — собственно сам заполнитель от которого он отталкивается

function permission() { — создать функцию с именем, которое вы хотите

if (haspermission === «yes») { — если переменная haspermission, которую мы создали перед возвратом выведет yes (значение true)

return «&aYou have the Test permission!»; — выведет то, что мы установили в return

else { return «&cYou don’t have the Test permission!»; — если переменная haspermission неверна, она вернет то, что мы установили

permission(); — этим мы вызываем функцию для запуска

Вот мой пример:

Создаем собственный Placeholder, изображение №1

Что дальше? Нам нужно проверить работает ли наш placeholder — выдаем право, которое указали после player_has_permission_<ваше_право>.
В папке PlaceholderAPI есть файл javascript_placeholders.yml в нем можно изменить ключ-название для вашего скрипта. Помимо этого всего не всегда работает правильно кодировка в js-файле, поэтому я сделал сообщения в формате UTF-16, это сделать можно на специальном сайте. (Может быть у вас будет все в порядке, проверьте перед данной процедурой)

Теперь строчки выглядят так

Теперь строчки выглядят так
Перейдем в любое меню из DeluxeMenus, я хочу указать данный заполнитель в название иконки, вводим «%javascript_ключ из placeholderapi%» у меня получилось вот так:

Создаем собственный Placeholder, изображение №3

Вот что в игре:

Создаем собственный Placeholder, изображение №4

Если нет прав:

Создаем собственный Placeholder, изображение №5

Евгений Плотун


  • #2

Не плохо, но эти команды не покажут весь потенциал всех возможностей

krepixx


  • #3

Я делаю топ 5 игроков по деньгам, прыжкам и т д. Первое место, естественно показываюсь я, а остальные 4 места — пустые. Как сделать так, чтобы за место пустого места показывалось например «Место еще никто не занял»

Плейсхолдеры

Материал из ML WIKI

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

Присутствует 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, поскольку таким образом, перед вызовом функции можно установить «Выбрать объект«, чтобы указать игрока, скорборд которого следует обновить.

Понравилась статья? Поделить с друзьями:

Читайте также:

  • Как изменить плейлист яндекс музыка
  • Как изменить пин код на карте тинькофф джуниор
  • Как изменить пин код на карте тинькофф блэк
  • Как изменить пин код на карте тинькофф бизнес
  • Как изменить пин код на карте тахографа скзи

  • 0 0 голоса
    Рейтинг статьи
    Подписаться
    Уведомить о
    guest

    0 комментариев
    Старые
    Новые Популярные
    Межтекстовые Отзывы
    Посмотреть все комментарии