Fix not opening trader menu. (#32)

This commit is contained in:
IzzelAliz 2020-08-12 16:18:48 +08:00
parent 8486d39e1d
commit cf404d6d85
7 changed files with 8 additions and 14 deletions

View File

@ -131,8 +131,8 @@ public abstract class ContainerMixin implements ContainerBridge {
InventoryView destination = ((ContainerBridge) other).bridge$getBukkitView(); InventoryView destination = ((ContainerBridge) other).bridge$getBukkitView();
((IInventoryBridge) ((CraftInventory) source.getTopInventory()).getInventory()).onClose(player); ((IInventoryBridge) ((CraftInventory) source.getTopInventory()).getInventory()).onClose(player);
((IInventoryBridge) ((CraftInventory) source.getBottomInventory()).getInventory()).onClose(player); ((IInventoryBridge) ((CraftInventory) source.getBottomInventory()).getInventory()).onClose(player);
((IInventoryBridge) ((CraftInventory) destination.getTopInventory()).getInventory()).onClose(player); ((IInventoryBridge) ((CraftInventory) destination.getTopInventory()).getInventory()).onOpen(player);
((IInventoryBridge) ((CraftInventory) destination.getBottomInventory()).getInventory()).onClose(player); ((IInventoryBridge) ((CraftInventory) destination.getBottomInventory()).getInventory()).onOpen(player);
} }
private ITextComponent title; private ITextComponent title;

View File

@ -8,7 +8,6 @@ import net.minecraft.inventory.IInventory;
import net.minecraft.inventory.container.Container; import net.minecraft.inventory.container.Container;
import net.minecraft.inventory.container.HorseInventoryContainer; import net.minecraft.inventory.container.HorseInventoryContainer;
import org.bukkit.craftbukkit.v.inventory.CraftInventoryView; import org.bukkit.craftbukkit.v.inventory.CraftInventoryView;
import org.bukkit.inventory.InventoryView;
import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Final;
import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.Shadow;
@ -32,7 +31,7 @@ public abstract class HorseInventoryContainerMixin extends ContainerMixin {
} }
@Override @Override
public InventoryView getBukkitView() { public CraftInventoryView getBukkitView() {
if (bukkitEntity != null) { if (bukkitEntity != null) {
return bukkitEntity; return bukkitEntity;
} }

View File

@ -10,7 +10,6 @@ import net.minecraft.inventory.container.LoomContainer;
import net.minecraft.util.IWorldPosCallable; import net.minecraft.util.IWorldPosCallable;
import org.bukkit.craftbukkit.v.inventory.CraftInventoryLoom; import org.bukkit.craftbukkit.v.inventory.CraftInventoryLoom;
import org.bukkit.craftbukkit.v.inventory.CraftInventoryView; import org.bukkit.craftbukkit.v.inventory.CraftInventoryView;
import org.bukkit.inventory.InventoryView;
import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Final;
import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.Shadow;
@ -44,7 +43,7 @@ public abstract class LoomContainerMixin extends ContainerMixin implements LoomC
} }
@Override @Override
public InventoryView getBukkitView() { public CraftInventoryView getBukkitView() {
if (bukkitEntity != null) { if (bukkitEntity != null) {
return bukkitEntity; return bukkitEntity;
} }

View File

@ -9,7 +9,6 @@ import net.minecraft.inventory.container.Container;
import net.minecraft.inventory.container.MerchantContainer; import net.minecraft.inventory.container.MerchantContainer;
import org.bukkit.craftbukkit.v.inventory.CraftInventoryMerchant; import org.bukkit.craftbukkit.v.inventory.CraftInventoryMerchant;
import org.bukkit.craftbukkit.v.inventory.CraftInventoryView; import org.bukkit.craftbukkit.v.inventory.CraftInventoryView;
import org.bukkit.inventory.InventoryView;
import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Final;
import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.Shadow;
@ -41,7 +40,7 @@ public abstract class MerchantContainerMixin extends ContainerMixin {
} }
@Override @Override
public InventoryView getBukkitView() { public CraftInventoryView getBukkitView() {
if (bukkitEntity == null) { if (bukkitEntity == null) {
bukkitEntity = new CraftInventoryView(((PlayerEntityBridge) this.playerInventory.player).bridge$getBukkitEntity(), new CraftInventoryMerchant(this.merchant, this.merchantInventory), (Container) (Object) this); bukkitEntity = new CraftInventoryView(((PlayerEntityBridge) this.playerInventory.player).bridge$getBukkitEntity(), new CraftInventoryMerchant(this.merchant, this.merchantInventory), (Container) (Object) this);
} }

View File

@ -13,7 +13,6 @@ import net.minecraft.inventory.container.PlayerContainer;
import net.minecraft.util.text.TranslationTextComponent; import net.minecraft.util.text.TranslationTextComponent;
import org.bukkit.craftbukkit.v.inventory.CraftInventoryCrafting; import org.bukkit.craftbukkit.v.inventory.CraftInventoryCrafting;
import org.bukkit.craftbukkit.v.inventory.CraftInventoryView; import org.bukkit.craftbukkit.v.inventory.CraftInventoryView;
import org.bukkit.inventory.InventoryView;
import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Final;
import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.Shadow;
@ -46,7 +45,7 @@ public abstract class PlayerContainerMixin extends ContainerMixin {
} }
@Override @Override
public InventoryView getBukkitView() { public CraftInventoryView getBukkitView() {
if (bukkitEntity != null) { if (bukkitEntity != null) {
return bukkitEntity; return bukkitEntity;
} }

View File

@ -7,7 +7,6 @@ import net.minecraft.inventory.container.Container;
import net.minecraft.inventory.container.ShulkerBoxContainer; import net.minecraft.inventory.container.ShulkerBoxContainer;
import org.bukkit.craftbukkit.v.inventory.CraftInventory; import org.bukkit.craftbukkit.v.inventory.CraftInventory;
import org.bukkit.craftbukkit.v.inventory.CraftInventoryView; import org.bukkit.craftbukkit.v.inventory.CraftInventoryView;
import org.bukkit.inventory.InventoryView;
import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Final;
import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.Shadow;
@ -31,7 +30,7 @@ public abstract class ShulkerBoxContainerMixin extends ContainerMixin {
} }
@Override @Override
public InventoryView getBukkitView() { public CraftInventoryView getBukkitView() {
if (bukkitEntity != null) { if (bukkitEntity != null) {
return bukkitEntity; return bukkitEntity;
} }

View File

@ -9,7 +9,6 @@ import net.minecraft.inventory.container.StonecutterContainer;
import net.minecraft.util.IWorldPosCallable; import net.minecraft.util.IWorldPosCallable;
import org.bukkit.craftbukkit.v.inventory.CraftInventoryStonecutter; import org.bukkit.craftbukkit.v.inventory.CraftInventoryStonecutter;
import org.bukkit.craftbukkit.v.inventory.CraftInventoryView; import org.bukkit.craftbukkit.v.inventory.CraftInventoryView;
import org.bukkit.inventory.InventoryView;
import org.spongepowered.asm.mixin.Final; import org.spongepowered.asm.mixin.Final;
import org.spongepowered.asm.mixin.Mixin; import org.spongepowered.asm.mixin.Mixin;
import org.spongepowered.asm.mixin.Shadow; import org.spongepowered.asm.mixin.Shadow;
@ -34,7 +33,7 @@ public abstract class StonecutterContainerMixin extends ContainerMixin {
} }
@Override @Override
public InventoryView getBukkitView() { public CraftInventoryView getBukkitView() {
if (bukkitEntity != null) { if (bukkitEntity != null) {
return bukkitEntity; return bukkitEntity;
} }