2021-06-14 21:17:47 +02:00
|
|
|
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
|
|
From: Jake Potrebic <jake.m.potrebic@gmail.com>
|
|
|
|
Date: Mon, 23 Nov 2020 12:58:51 -0800
|
|
|
|
Subject: [PATCH] Added PlayerLecternPageChangeEvent
|
|
|
|
|
|
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/inventory/LecternMenu.java b/src/main/java/net/minecraft/world/inventory/LecternMenu.java
|
2022-06-08 09:30:41 +02:00
|
|
|
index 9b80f533e94c47ebc0d46429698e084216b632ab..52471ef87994ac91b4b0017159b61ff50774848a 100644
|
2021-06-14 21:17:47 +02:00
|
|
|
--- a/src/main/java/net/minecraft/world/inventory/LecternMenu.java
|
|
|
|
+++ b/src/main/java/net/minecraft/world/inventory/LecternMenu.java
|
|
|
|
@@ -64,6 +64,7 @@ public class LecternMenu extends AbstractContainerMenu {
|
|
|
|
@Override
|
|
|
|
public boolean clickMenuButton(net.minecraft.world.entity.player.Player player, int id) {
|
|
|
|
int j;
|
|
|
|
+ io.papermc.paper.event.player.PlayerLecternPageChangeEvent playerLecternPageChangeEvent; CraftInventoryLectern bukkitView; // Paper
|
|
|
|
|
|
|
|
if (id >= 100) {
|
|
|
|
j = id - 100;
|
|
|
|
@@ -73,11 +74,25 @@ public class LecternMenu extends AbstractContainerMenu {
|
|
|
|
switch (id) {
|
|
|
|
case 1:
|
|
|
|
j = this.lecternData.get(0);
|
|
|
|
- this.setData(0, j - 1);
|
|
|
|
+ // Paper start
|
|
|
|
+ bukkitView = (CraftInventoryLectern) getBukkitView().getTopInventory();
|
|
|
|
+ playerLecternPageChangeEvent = new io.papermc.paper.event.player.PlayerLecternPageChangeEvent((org.bukkit.entity.Player) player.getBukkitEntity(), bukkitView.getHolder(), bukkitView.getBook(), io.papermc.paper.event.player.PlayerLecternPageChangeEvent.PageChangeDirection.LEFT, j, j - 1);
|
|
|
|
+ if (!playerLecternPageChangeEvent.callEvent()) {
|
|
|
|
+ return false;
|
|
|
|
+ }
|
|
|
|
+ this.setData(0, playerLecternPageChangeEvent.getNewPage());
|
|
|
|
+ // Paper end
|
|
|
|
return true;
|
|
|
|
case 2:
|
|
|
|
j = this.lecternData.get(0);
|
|
|
|
- this.setData(0, j + 1);
|
|
|
|
+ // Paper start
|
|
|
|
+ bukkitView = (CraftInventoryLectern) getBukkitView().getTopInventory();
|
|
|
|
+ playerLecternPageChangeEvent = new io.papermc.paper.event.player.PlayerLecternPageChangeEvent((org.bukkit.entity.Player) player.getBukkitEntity(), bukkitView.getHolder(), bukkitView.getBook(), io.papermc.paper.event.player.PlayerLecternPageChangeEvent.PageChangeDirection.RIGHT, j, j + 1);
|
|
|
|
+ if (!playerLecternPageChangeEvent.callEvent()) {
|
|
|
|
+ return false;
|
|
|
|
+ }
|
|
|
|
+ this.setData(0, playerLecternPageChangeEvent.getNewPage());
|
|
|
|
+ // Paper end
|
|
|
|
return true;
|
|
|
|
case 3:
|
|
|
|
if (!player.mayBuild()) {
|