Войти или зарегистрироваться
  • Вы находитесь в сообществе Rubukkit. Мы - администраторы серверов Minecraft, разрабатываем собственные плагины и переводим на различные языки плагины наших коллег из других стран.

Помогите Создание в плагине плейсхолдера

Статус
Закрыто для дальнейших ответов.

Evdokimov

Активный участник
Пользователь
Баллы
76
Имя в Minecraft
evdokimov27
Доброго, никак не получается добавить плейсхолдер в плагин, вроде делаю все правильно но не работает
 
Ну а какой ответ ты хочешь услышать? Хотя бы код покажи и расскажи, что происходит при попытке использовать плейсхолдер
 
Ошибка:
Caused by: java.lang.NumberFormatException: For input string: "%health_block%"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:67) ~[?:?]
at java.lang.Integer.parseInt(Integer.java:654) ~[?:?]
at java.lang.Integer.parseInt(Integer.java:784) ~[?:?]
at no.spillere.blowable.listeners.Listener.onPlayerInteract(Listener.java:120) ~[?:?]
at jdk.internal.reflect.DirectMethodHandleAccessor.invoke(DirectMethodHandleAccessor.java:104) ~[?:?]
at java.lang.reflect.Method.invoke(Method.java:577) ~[?:?]
at org.bukkit.plugin.java.JavaPluginLoader$1.execute(JavaPluginLoader.java:306) ~[spigot-api-1.19.3-R0.1-SNAPSHOT.jar:?]
... 22 more
 
вроде натыкал что-то но он просто выводит мне числа, как мне сделать их плейсхолдером?
p.sendMessage(PlaceholderAPI.setPlaceholders(p, String.valueOf(health)));
 
Я вроде понятно написал, что столкнулся с проблемой, если есть люди знающие, почему бы не попросить помощи, я пытаюсь разобраться, не получается
 
Я вроде понятно написал, что столкнулся с проблемой, если есть люди знающие, почему бы не попросить помощи, я пытаюсь разобраться, не получается
Так, ну если гугл переводчик не работает, давай помогу
Там есть блок, который называется "Full Example". Создаёшь свой класс и копируешь код оттуда.
Прямо под ним есть ещё один блок "Register the Expansion". Код оттуда вставляешь в onEnable.
Результаты сообщи.
 
вроде натыкал что-то но он просто выводит мне числа, как мне сделать их плейсхолдером?
p.sendMessage(PlaceholderAPI.setPlaceholders(p, String.valueOf(health)));
тогда может сразу скажешь, что я делаю не так?
 
я не могу получить значение при вводе %bo_health_block%
которое я пытаюсь получить таким образом
String str = PlaceholderAPI.setPlaceholders(p,"%bo_health_block% " +String.valueOf(health));
пробовал по разному, никак не выходит, как мне в bo_health_block передать health?
 
я не могу получить значение при вводе %bo_health_block%
которое я пытаюсь получить таким образом
String str = PlaceholderAPI.setPlaceholders(p,"%bo_health_block% " +String.valueOf(health));
пробовал по разному, никак не выходит, как мне в bo_health_block передать health?
Так, давай ещё раз.
На той странице есть два куска кода, тебе их надо вставить к себе в плагин.
В классе, который наследует PlaceholderExpansion в методе getIdentifier тебе надо вернуть "bo".
В метод onRequest тебе надо вставить этот код
Код:
if (params.equals("health_block") {
  return String.valueOf(health);
}
, где health - твоё значение, я не знаю, откуда ты его получаешь
 
String.valueOf(health) находится в другом классе
 
никак не получается передать значение, можете подсказать, как это можно сделать нормально, не перенося все в 1 класс?
 
никак не получается передать значение, можете подсказать, как это можно сделать нормально, не перенося все в 1 класс?
1) Это вопрос по джаве, учи джаву
2) Передаёшь в класс с плейсхолдером объект слушателя, получаешь из него значение
 
Статус
Закрыто для дальнейших ответов.

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

Назад
Верх