Fixed plot chat using meta instead of attributes

Pass message into setFormat and setMessage correctly
this avoids % symbols in player messages causing exceptions

Fixed #571
This commit is contained in:
confuser 2015-08-23 12:00:52 +01:00
parent b5fbc6629f
commit 316a4e0484

View File

@ -610,10 +610,17 @@ public class PlayerEvents extends com.plotsquared.listener.PlotListener implemen
return;
}
final PlotWorld plotworld = PS.get().getPlotWorld(world);
final PlotPlayer plr = BukkitUtil.getPlayer(player);
if (!plotworld.PLOT_CHAT && (plr.getMeta("chat") == null || !(Boolean) plr.getMeta("chat"))) {
if (!plotworld.PLOT_CHAT) {
return;
}
final PlotPlayer plr = BukkitUtil.getPlayer(player);
if (!plr.getAttribute("chat")) {
return;
}
final Location loc = BukkitUtil.getLocation(player);
final Plot plot = MainUtil.getPlot(loc);
if (plot == null) {
@ -631,9 +638,10 @@ public class PlayerEvents extends com.plotsquared.listener.PlotListener implemen
recipients.add(p);
}
}
format = format.replaceAll("%plot_id%", id.x + ";" + id.y).replaceAll("%sender%", sender).replaceAll("%msg%", message);
format = format.replaceAll("%plot_id%", id.x + ";" + id.y).replaceAll("%sender%", "%s").replaceAll("%msg%", "%s");
format = ChatColor.translateAlternateColorCodes('&', format);
event.setFormat(format);
event.setMessage(message);
}
@EventHandler(priority = EventPriority.HIGHEST)