--- a/net/minecraft/server/StatisticManager.java +++ b/net/minecraft/server/StatisticManager.java @@ -19,6 +19,12 @@ public void b(EntityHuman entityhuman, Statistic statistic, int i) { if (!statistic.d() || this.b((Achievement) statistic)) { + // CraftBukkit start - fire Statistic events + org.bukkit.event.Cancellable cancellable = org.bukkit.craftbukkit.event.CraftEventFactory.handleStatisticsIncrease(entityhuman, statistic, this.getStatisticValue(statistic), i); + if (cancellable != null && cancellable.isCancelled()) { + return; + } + // CraftBukkit end this.setStatistic(entityhuman, statistic, this.getStatisticValue(statistic) + i); } } @@ -43,7 +49,7 @@ public <T extends IJsonStatistic> T b(Statistic statistic) { StatisticWrapper statisticwrapper = (StatisticWrapper) this.a.get(statistic); - return statisticwrapper != null ? statisticwrapper.b() : null; + return statisticwrapper != null ? (T) statisticwrapper.b() : null; // CraftBukkit - fix decompile error } public <T extends IJsonStatistic> T a(Statistic statistic, T t0) {