From 49bcda43fa155d1ad705aef9ee37969aaf322e1c Mon Sep 17 00:00:00 2001 From: Ellpeck Date: Sun, 18 Dec 2016 14:27:10 +0100 Subject: [PATCH] improve hopping item interface performance --- .../mod/tile/TileEntityItemViewerHopping.java | 39 ++++++++++--------- 1 file changed, 20 insertions(+), 19 deletions(-) diff --git a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityItemViewerHopping.java b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityItemViewerHopping.java index 444774c9b..d176de964 100644 --- a/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityItemViewerHopping.java +++ b/src/main/java/de/ellpeck/actuallyadditions/mod/tile/TileEntityItemViewerHopping.java @@ -50,6 +50,26 @@ public class TileEntityItemViewerHopping extends TileEntityItemViewer{ } } } + else{ + if(this.world.getTotalWorldTime()%20 == 0){ + List items = this.world.getEntitiesWithinAABB(EntityItem.class, new AxisAlignedBB(this.pos.getX(), this.pos.getY()+0.5, this.pos.getZ(), this.pos.getX()+1, this.pos.getY()+2, this.pos.getZ()+1)); + if(items != null && !items.isEmpty()){ + for(EntityItem item : items){ + if(item != null && !item.isDead){ + for(int i = 0; i < this.itemHandler.getSlots(); i++){ + ItemStack left = this.itemHandler.insertItem(i, item.getEntityItem(), false); + item.setEntityItemStack(left); + + if(!StackUtil.isValid(left)){ + item.setDead(); + break; + } + } + } + } + } + } + } if(this.handlerToPushTo != null){ outer : for(int i = 0; i < this.itemHandler.getSlots(); i++){ @@ -62,25 +82,6 @@ public class TileEntityItemViewerHopping extends TileEntityItemViewer{ } } } - - if(this.world.getTotalWorldTime()%20 == 0){ - List items = this.world.getEntitiesWithinAABB(EntityItem.class, new AxisAlignedBB(this.pos.getX(), this.pos.getY()+0.5, this.pos.getZ(), this.pos.getX()+1, this.pos.getY()+2, this.pos.getZ()+1)); - if(items != null && !items.isEmpty()){ - for(EntityItem item : items){ - if(item != null && !item.isDead){ - for(int i = 0; i < this.itemHandler.getSlots(); i++){ - ItemStack left = this.itemHandler.insertItem(i, item.getEntityItem(), false); - item.setEntityItemStack(left); - - if(!StackUtil.isValid(left)){ - item.setDead(); - break; - } - } - } - } - } - } } }