mirror of
https://github.com/HbmMods/Hbm-s-Nuclear-Tech-GIT.git
synced 2026-01-25 10:32:49 +00:00
fixed drones not placing themselves back properly
This commit is contained in:
parent
f868048b1e
commit
205b537318
@ -160,23 +160,34 @@ public class EntityRequestDrone extends EntityDroneBase {
|
||||
TileEntityDroneDock dock = (TileEntityDroneDock) tile;
|
||||
ItemStack drone = new ItemStack(ModItems.drone, 1, EnumDroneType.REQUEST.ordinal());
|
||||
for (int i = 0; i < dock.slots.length; i++) {
|
||||
if (dock.slots[i] == null || (dock.slots[i].isItemEqual(drone) && dock.slots[i].stackSize < 64)) {
|
||||
if (dock.slots[i] == null) {
|
||||
this.setDead();
|
||||
if(heldItem != null){
|
||||
if(i != 9 && dock.slots[i + 1] != null){
|
||||
if(i != 9 && dock.slots[i + 1] == null){
|
||||
dock.slots[i + 1] = heldItem.copy();
|
||||
}
|
||||
}
|
||||
dock.slots[i] = drone.copy();
|
||||
this.worldObj.playSoundEffect(dock.xCoord + 0.5, dock.yCoord + 0.5, dock.zCoord + 0.5, "hbm:block.storageClose", 2.0F, 1.0F);
|
||||
break;
|
||||
} else if (dock.slots[i].isItemEqual(drone) && dock.slots[i].stackSize < 64){
|
||||
this.setDead();
|
||||
if(heldItem != null){
|
||||
if(i != 9 && dock.slots[i + 1] == null){
|
||||
dock.slots[i + 1] = heldItem.copy();
|
||||
}
|
||||
}
|
||||
dock.slots[i].stackSize++;
|
||||
this.worldObj.playSoundEffect(dock.xCoord + 0.5, dock.yCoord + 0.5, dock.zCoord + 0.5, "hbm:block.storageClose", 2.0F, 1.0F);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
if (!this.isDead) {
|
||||
this.setDead();
|
||||
this.entityDropItem(heldItem, 1F);
|
||||
if(heldItem != null)
|
||||
this.entityDropItem(heldItem, 1F);
|
||||
this.entityDropItem(new ItemStack(ModItems.drone, 1, EnumDroneType.REQUEST.ordinal()), 1F);
|
||||
}
|
||||
|
||||
|
||||
@ -108,6 +108,7 @@ public class RequestNetwork {
|
||||
/** Node created by requesters, lists requested AStacks */
|
||||
public static class RequestNode extends PathNode {
|
||||
public List<AStack> request;
|
||||
public int droneCount;
|
||||
public RequestNode(BlockPos pos, HashedSet<PathNode> reachableNodes, List<AStack> request) {
|
||||
super(pos, reachableNodes);
|
||||
this.request = request;
|
||||
|
||||
@ -43,7 +43,7 @@ public class TileEntityDroneDock extends TileEntityRequestNetworkContainer imple
|
||||
public void updateEntity() {
|
||||
super.updateEntity();
|
||||
|
||||
if(!worldObj.isRemote && worldObj.getTotalWorldTime() % 100 == 0 && this.hasDrone()) {
|
||||
if(!worldObj.isRemote && worldObj.getTotalWorldTime() % 20 == 0 && this.hasDrone()) {
|
||||
|
||||
// grab all nodes in a 5 chunk radius
|
||||
HashedSet<PathNode> localNodes = this.getAllLocalNodes(worldObj, xCoord, zCoord, 5);
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user