This commit is contained in:
Raoul Van den Berge
2016-05-05 13:51:16 +02:00
parent 0c43fc1533
commit 84bef30003
2 changed files with 11 additions and 15 deletions

View File

@@ -11,9 +11,11 @@ import net.minecraft.util.EnumFacing;
import net.minecraft.util.text.ITextComponent; import net.minecraft.util.text.ITextComponent;
import refinedstorage.container.ContainerSolderer; import refinedstorage.container.ContainerSolderer;
import refinedstorage.inventory.InventorySimple; import refinedstorage.inventory.InventorySimple;
import refinedstorage.item.ItemUpgrade;
import refinedstorage.tile.solderer.ISoldererRecipe; import refinedstorage.tile.solderer.ISoldererRecipe;
import refinedstorage.tile.solderer.SoldererRegistry; import refinedstorage.tile.solderer.SoldererRegistry;
import refinedstorage.util.InventoryUtils; import refinedstorage.util.InventoryUtils;
import refinedstorage.util.UpgradeUtils;
public class TileSolderer extends TileMachine implements IInventory, ISidedInventory { public class TileSolderer extends TileMachine implements IInventory, ISidedInventory {
public static final String NBT_WORKING = "Working"; public static final String NBT_WORKING = "Working";
@@ -57,7 +59,7 @@ public class TileSolderer extends TileMachine implements IInventory, ISidedInven
markDirty(); markDirty();
} }
} else if (working) { } else if (working) {
progress += getSpeed(); progress += 1 + UpgradeUtils.getUpgradeCount(upgradesInventory, ItemUpgrade.TYPE_SPEED);
if (progress >= recipe.getDuration()) { if (progress >= recipe.getDuration()) {
if (inventory.getStackInSlot(3) != null) { if (inventory.getStackInSlot(3) != null) {
@@ -77,18 +79,6 @@ public class TileSolderer extends TileMachine implements IInventory, ISidedInven
} }
} }
public int getSpeed() {
int speed = 1;
for (int i = 0; i < upgradesInventory.getSizeInventory(); ++i) {
if (upgradesInventory.getStackInSlot(i) != null) {
speed += 1;
}
}
return speed;
}
@Override @Override
public void onDisconnected() { public void onDisconnected() {
super.onDisconnected(); super.onDisconnected();

View File

@@ -19,12 +19,18 @@ public class UpgradeUtils {
} }
public static boolean hasUpgrade(InventorySimple inventory, int type) { public static boolean hasUpgrade(InventorySimple inventory, int type) {
return getUpgradeCount(inventory, type) > 0;
}
public static int getUpgradeCount(InventorySimple inventory, int type) {
int upgrades = 0;
for (int i = 0; i < inventory.getSizeInventory(); ++i) { for (int i = 0; i < inventory.getSizeInventory(); ++i) {
if (inventory.getStackInSlot(i) != null && inventory.getStackInSlot(i).getMetadata() == type) { if (inventory.getStackInSlot(i) != null && inventory.getStackInSlot(i).getMetadata() == type) {
return true; upgrades++;
} }
} }
return false; return upgrades;
} }
} }