aboutsummaryrefslogtreecommitdiffhomepage
path: root/patch-remap/mache-vineflower/net/minecraft/stats/StatsCounter.java.patch
blob: f7e16d4bb66286616747d18638cd867ac377a871 (plain)
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) {