1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
|
--- a/net/minecraft/stats/StatsCounter.java
+++ b/net/minecraft/stats/StatsCounter.java
@@ -6,15 +6,23 @@
import net.minecraft.world.entity.player.Player;
public class StatsCounter {
- protected final Object2IntMap<Stat<?>> stats = Object2IntMaps.synchronize(new Object2IntOpenHashMap<>());
+ protected final Object2IntMap<Stat<?>> stats = Object2IntMaps.synchronize(new Object2IntOpenHashMap());
+
public StatsCounter() {
this.stats.defaultReturnValue(0);
}
public void increment(Player player, Stat<?> stat, int amount) {
- int i = (int)Math.min((long)this.getValue(stat) + (long)amount, 2147483647L);
- this.setValue(player, stat, i);
+ int j = (int) Math.min((long) this.getValue(stat) + (long) amount, 2147483647L);
+
+ // CraftBukkit start - fire Statistic events
+ org.bukkit.event.Cancellable cancellable = org.bukkit.craftbukkit.event.CraftEventFactory.handleStatisticsIncrease(player, stat, this.getValue(stat), j);
+ if (cancellable != null && cancellable.isCancelled()) {
+ return;
+ }
+ // CraftBukkit end
+ this.setValue(player, stat, j);
}
public void setValue(Player player, Stat<?> stat, int value) {
|