mirror of
https://github.com/PaperMC/Paper.git
synced 2024-12-30 16:19:03 +01:00
062733b903
Doesn't compile yet. CraftBukkit Changes: 90d6905b Repackage NMS 69cf961d Repackage patches Spigot Changes: 79d53c28 Repackage NMS
63 lines
3.2 KiB
Diff
63 lines
3.2 KiB
Diff
From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
|
|
From: Jake Potrebic <jake.m.potrebic@gmail.com>
|
|
Date: Wed, 25 Nov 2020 16:33:27 -0800
|
|
Subject: [PATCH] Added PlayerLoomPatternSelectEvent
|
|
|
|
|
|
diff --git a/src/main/java/net/minecraft/world/inventory/ContainerLoom.java b/src/main/java/net/minecraft/world/inventory/ContainerLoom.java
|
|
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
|
|
--- a/src/main/java/net/minecraft/world/inventory/ContainerLoom.java
|
|
+++ b/src/main/java/net/minecraft/world/inventory/ContainerLoom.java
|
|
@@ -0,0 +0,0 @@ import org.bukkit.craftbukkit.inventory.CraftInventoryLoom;
|
|
import org.bukkit.craftbukkit.inventory.CraftInventoryView;
|
|
import org.bukkit.entity.Player;
|
|
// CraftBukkit end
|
|
+import io.papermc.paper.event.player.PlayerLoomPatternSelectEvent; // Paper
|
|
|
|
public class ContainerLoom extends Container {
|
|
|
|
@@ -0,0 +0,0 @@ public class ContainerLoom extends Container {
|
|
}
|
|
// CraftBukkit end
|
|
private final ContainerAccess containerAccess;
|
|
- private final ContainerProperty d;
|
|
+ private final ContainerProperty d; public final ContainerProperty getSelectedBannerPattern() { return this.d; }; // Paper - OBFHELPER
|
|
private Runnable e;
|
|
private final Slot f;
|
|
private final Slot g;
|
|
@@ -0,0 +0,0 @@ public class ContainerLoom extends Container {
|
|
@Override
|
|
public boolean a(EntityHuman entityhuman, int i) {
|
|
if (i > 0 && i <= EnumBannerPatternType.R) {
|
|
- this.d.set(i);
|
|
+ // Paper start
|
|
+ int enumBannerPatternTypeOrdinal = i;
|
|
+ PlayerLoomPatternSelectEvent event = new PlayerLoomPatternSelectEvent((Player) entityhuman.getBukkitEntity(), ((CraftInventoryLoom) getBukkitView().getTopInventory()), org.bukkit.block.banner.PatternType.getByIdentifier(EnumBannerPatternType.values()[i].getIdentifier()));
|
|
+ if (!event.callEvent()) {
|
|
+ ((Player) entityhuman.getBukkitEntity()).updateInventory();
|
|
+ return false;
|
|
+ }
|
|
+ for (EnumBannerPatternType nms : EnumBannerPatternType.values()) {
|
|
+ if (event.getPatternType().getIdentifier().equals(nms.getIdentifier())) {
|
|
+ enumBannerPatternTypeOrdinal = nms.ordinal();
|
|
+ break;
|
|
+ }
|
|
+ }
|
|
+ ((Player) entityhuman.getBukkitEntity()).updateInventory();
|
|
+ this.getSelectedBannerPattern().set(enumBannerPatternTypeOrdinal);
|
|
+ // Paper end
|
|
this.j();
|
|
return true;
|
|
} else {
|
|
diff --git a/src/main/java/net/minecraft/world/level/block/entity/EnumBannerPatternType.java b/src/main/java/net/minecraft/world/level/block/entity/EnumBannerPatternType.java
|
|
index 0000000000000000000000000000000000000000..0000000000000000000000000000000000000000 100644
|
|
--- a/src/main/java/net/minecraft/world/level/block/entity/EnumBannerPatternType.java
|
|
+++ b/src/main/java/net/minecraft/world/level/block/entity/EnumBannerPatternType.java
|
|
@@ -0,0 +0,0 @@ public enum EnumBannerPatternType {
|
|
this.T = flag;
|
|
}
|
|
|
|
+ public String getIdentifier() { return this.b(); } // Paper - OBFHELPER
|
|
public String b() {
|
|
return this.V;
|
|
}
|