4d40e87b33
Had to drop some hunks modifying getEntities, as those methods were rewritten by Mojang in 1.17
28 lines
1.7 KiB
Diff
28 lines
1.7 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Jake Potrebic <jake.m.potrebic@gmail.com>
|
|
Date: Wed, 24 Jun 2020 15:14:51 -0600
|
|
Subject: [PATCH] Added firing of PlayerChangeBeaconEffectEvent
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/inventory/BeaconMenu.java b/src/main/java/net/minecraft/world/inventory/BeaconMenu.java
|
|
index 4c76ef8ac18c538f97fd33cf5de47441c17b9181..91118c5d7d1414cacb80aad753c44c90f5812cf2 100644
|
|
--- a/src/main/java/net/minecraft/world/inventory/BeaconMenu.java
|
|
+++ b/src/main/java/net/minecraft/world/inventory/BeaconMenu.java
|
|
@@ -160,9 +160,15 @@ public class BeaconMenu extends AbstractContainerMenu {
|
|
|
|
public void updateEffects(int primaryEffectId, int secondaryEffectId) {
|
|
if (this.paymentSlot.hasItem()) {
|
|
- this.beaconData.set(1, primaryEffectId);
|
|
- this.beaconData.set(2, secondaryEffectId);
|
|
+ // Paper start
|
|
+ io.papermc.paper.event.player.PlayerChangeBeaconEffectEvent event = new io.papermc.paper.event.player.PlayerChangeBeaconEffectEvent((org.bukkit.entity.Player) this.player.player.getBukkitEntity(), org.bukkit.potion.PotionEffectType.getById(primaryEffectId), org.bukkit.potion.PotionEffectType.getById(secondaryEffectId), this.access.getLocation().getBlock());
|
|
+ if (event.callEvent()) {
|
|
+ this.beaconData.set(1, event.getPrimary() == null ? 0 : event.getPrimary().getId());
|
|
+ this.beaconData.set(2, event.getSecondary() == null ? 0 : event.getSecondary().getId());
|
|
+ if (!event.willConsumeItem()) return;
|
|
this.paymentSlot.remove(1);
|
|
+ }
|
|
+ // Paper end
|
|
}
|
|
|
|
}
|