- Баллы
- 76
- Имя в Minecraft
- Rbiter
Не изменяется значение переменной... Что делать?
Значение переменной MsgPayForKill "&bЗа убийство %Entity% вы получили %amount% %vault%"
Дабы не засорять конфиг и чтоб в любой момент можно было изменить сообщения просто через конфиг сделал три переменные %Entity% %amount% %vault%
Из них %vault% имеет постоянное значение. А %Entity% %amount% должны меняться в зависимости от убиваемого существа.
Вот участок кода:
после убийства крипера выходит сообщение: За убийство крипера вы получили 1 руб
Вроде все норм но если следом убью корову то выводит то же самое сообщение: За убийство крипера вы получили 1 руб.
Однако если перезагрузить плагин и сперва убить корову будет выводить: За убийство коровы вы получили 1 руб
Но если следом крипера то будет выводить: За убийство коровы вы получили 1 руб
Что делать?
Значение переменной MsgPayForKill "&bЗа убийство %Entity% вы получили %amount% %vault%"
Дабы не засорять конфиг и чтоб в любой момент можно было изменить сообщения просто через конфиг сделал три переменные %Entity% %amount% %vault%
Из них %vault% имеет постоянное значение. А %Entity% %amount% должны меняться в зависимости от убиваемого существа.
Вот участок кода:
JavaScript:
public void onEntityDeath(EntityDeathEvent ev) {
if (ev.getEntity().getKiller() instanceof Player) {
Boolean temp = Boolean.valueOf(this.getConfig().getBoolean("worlds." + ev.getEntity().getKiller().getWorld().getName()));
if (!temp.booleanValue()) {
Player p = ev.getEntity().getKiller();
LivingEntity e = ev.getEntity();
EconomyResponse r = null;
String amount = null;
this.MsgPayForKill = this.MsgPayForKill.replaceAll("%vault%", this.VaultSimvol);
if (e instanceof Cow) {
this.MsgPayForKill = this.MsgPayForKill.replaceAll("%amount%", amount = amount.valueOf(cow));
this.MsgPayForKill = this.MsgPayForKill.replaceAll("%Entity%", "коровы");
r = econ.depositPlayer(p.getName(), this.cow);
p.sendMessage(ChatColor.translateAlternateColorCodes('&', this.Prefix + " " + this.MsgPayForKill));
} else if (e instanceof Creeper) {
this.MsgPayForKill = this.MsgPayForKill.replaceAll("%amount%", amount = amount.valueOf(creeper));
this.MsgPayForKill = this.MsgPayForKill.replaceAll("%Entity%", "крипера");
r = econ.depositPlayer(p.getName(), this.creeper);
p.sendMessage(ChatColor.translateAlternateColorCodes('&', this.Prefix + " " + this.MsgPayForKill));
}
Вроде все норм но если следом убью корову то выводит то же самое сообщение: За убийство крипера вы получили 1 руб.
Однако если перезагрузить плагин и сперва убить корову будет выводить: За убийство коровы вы получили 1 руб
Но если следом крипера то будет выводить: За убийство коровы вы получили 1 руб
Что делать?

Проблема решена)