Compare commits

..

No commits in common. "bdd507885e780831d2d7e90e0e321f7922ff99c4" and "219bf0e00a9c95a4ef3d42d787656474d1582c92" have entirely different histories.

4 changed files with 9 additions and 12 deletions

View file

@ -13,7 +13,7 @@ apply plugin: 'net.minecraftforge.gradle'
apply plugin: 'eclipse' apply plugin: 'eclipse'
apply plugin: 'maven-publish' apply plugin: 'maven-publish'
version = '1.10.5' version = '1.10.4'
group = 'de.ellpeck.prettypipes' // http://maven.apache.org/guides/mini/guide-naming-conventions.html group = 'de.ellpeck.prettypipes' // http://maven.apache.org/guides/mini/guide-naming-conventions.html
archivesBaseName = 'PrettyPipes' archivesBaseName = 'PrettyPipes'

View file

@ -172,7 +172,7 @@ public class ItemTerminalBlockEntity extends BlockEntity implements IPipeConnect
return stack.getCount() - ret.getRight().getCount(); return stack.getCount() - ret.getRight().getCount();
} }
public Player[] getLookingPlayers() { protected Player[] getLookingPlayers() {
return this.level.players().stream().filter(p -> p.containerMenu instanceof ItemTerminalContainer container && container.tile == this).toArray(Player[]::new); return this.level.players().stream().filter(p -> p.containerMenu instanceof ItemTerminalContainer container && container.tile == this).toArray(Player[]::new);
} }

View file

@ -32,8 +32,7 @@ public class CraftingTerminalContainer extends ItemTerminalContainer {
this.craftResult = new ResultContainer() { this.craftResult = new ResultContainer() {
@Override @Override
public void setChanged() { public void setChanged() {
for (var player : CraftingTerminalContainer.this.getTile().getLookingPlayers()) CraftingTerminalContainer.this.slotsChanged(this);
player.containerMenu.slotsChanged(this);
} }
}; };
this.addSlot(new ResultSlot(player, this.craftInventory, this.craftResult, 0, 25, 77)); this.addSlot(new ResultSlot(player, this.craftInventory, this.craftResult, 0, 25, 77));

View file

@ -1,6 +1,7 @@
package de.ellpeck.prettypipes.terminal.containers; package de.ellpeck.prettypipes.terminal.containers;
import net.minecraft.world.entity.player.StackedContents; import net.minecraft.world.entity.player.StackedContents;
import net.minecraft.world.inventory.AbstractContainerMenu;
import net.minecraft.world.inventory.CraftingContainer; import net.minecraft.world.inventory.CraftingContainer;
import net.minecraft.world.item.ItemStack; import net.minecraft.world.item.ItemStack;
import net.minecraftforge.items.ItemStackHandler; import net.minecraftforge.items.ItemStackHandler;
@ -8,9 +9,9 @@ import net.minecraftforge.items.ItemStackHandler;
public class WrappedCraftingInventory extends CraftingContainer { public class WrappedCraftingInventory extends CraftingContainer {
private final ItemStackHandler items; private final ItemStackHandler items;
private final CraftingTerminalContainer eventHandler; private final AbstractContainerMenu eventHandler;
public WrappedCraftingInventory(ItemStackHandler items, CraftingTerminalContainer eventHandlerIn, int width, int height) { public WrappedCraftingInventory(ItemStackHandler items, AbstractContainerMenu eventHandlerIn, int width, int height) {
super(eventHandlerIn, width, height); super(eventHandlerIn, width, height);
this.eventHandler = eventHandlerIn; this.eventHandler = eventHandlerIn;
this.items = items; this.items = items;
@ -46,18 +47,15 @@ public class WrappedCraftingInventory extends CraftingContainer {
public ItemStack removeItem(int index, int count) { public ItemStack removeItem(int index, int count) {
var slotStack = this.items.getStackInSlot(index); var slotStack = this.items.getStackInSlot(index);
var ret = !slotStack.isEmpty() && count > 0 ? slotStack.split(count) : ItemStack.EMPTY; var ret = !slotStack.isEmpty() && count > 0 ? slotStack.split(count) : ItemStack.EMPTY;
if (!ret.isEmpty()) { if (!ret.isEmpty())
for (var player : this.eventHandler.getTile().getLookingPlayers()) this.eventHandler.slotsChanged(this);
player.containerMenu.slotsChanged(this);
}
return ret; return ret;
} }
@Override @Override
public void setItem(int index, ItemStack stack) { public void setItem(int index, ItemStack stack) {
this.items.setStackInSlot(index, stack); this.items.setStackInSlot(index, stack);
for (var player : this.eventHandler.getTile().getLookingPlayers()) this.eventHandler.slotsChanged(this);
player.containerMenu.slotsChanged(this);
} }
@Override @Override