aboutsummaryrefslogtreecommitdiffhomepage
path: root/patch-remap/mache-vineflower/net/minecraft/stats/StatsCounter.java.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patch-remap/mache-vineflower/net/minecraft/stats/StatsCounter.java.patch')
-rw-r--r--patch-remap/mache-vineflower/net/minecraft/stats/StatsCounter.java.patch29
1 files changed, 29 insertions, 0 deletions
diff --git a/patch-remap/mache-vineflower/net/minecraft/stats/StatsCounter.java.patch b/patch-remap/mache-vineflower/net/minecraft/stats/StatsCounter.java.patch
new file mode 100644
index 0000000000..f7e16d4bb6
--- /dev/null
+++ b/patch-remap/mache-vineflower/net/minecraft/stats/StatsCounter.java.patch
@@ -0,0 +1,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) {