Move upgrade slot logic into class

This commit is contained in:
Raoul Van den Berge
2016-05-05 13:21:47 +02:00
parent d46f8cbf20
commit 3158346843
9 changed files with 36 additions and 52 deletions

View File

@@ -6,6 +6,7 @@ import refinedstorage.RefinedStorageItems;
import refinedstorage.container.slot.IItemValidator;
import refinedstorage.container.slot.SlotFiltered;
import refinedstorage.container.slot.SlotSpecimenItemBlock;
import refinedstorage.container.slot.SlotUpgrade;
import refinedstorage.item.ItemUpgrade;
import refinedstorage.tile.TileConstructor;
@@ -17,12 +18,7 @@ public class ContainerConstructor extends ContainerBase {
addSlotToContainer(new SlotSpecimenItemBlock(constructor.getInventory(), 0, 80, 20));
for (int i = 0; i < 4; ++i) {
addSlotToContainer(new SlotFiltered(constructor.getUpgradesInventory(), i, 187, 6 + (i * 18), new IItemValidator() {
@Override
public boolean isValid(ItemStack stack) {
return stack.getItem() == RefinedStorageItems.UPGRADE && (stack.getMetadata() == ItemUpgrade.TYPE_SPEED || stack.getMetadata() == ItemUpgrade.TYPE_CRAFTING);
}
}));
addSlotToContainer(new SlotFiltered(constructor.getUpgradesInventory(), i, 187, 6 + (i * 18), new SlotUpgrade(ItemUpgrade.TYPE_SPEED, ItemUpgrade.TYPE_CRAFTING)));
}
addPlayerInventory(8, 55);

View File

@@ -6,6 +6,7 @@ import net.minecraft.item.ItemStack;
import refinedstorage.RefinedStorageItems;
import refinedstorage.container.slot.IItemValidator;
import refinedstorage.container.slot.SlotFiltered;
import refinedstorage.container.slot.SlotUpgrade;
import refinedstorage.item.ItemPattern;
import refinedstorage.item.ItemUpgrade;
import refinedstorage.tile.autocrafting.TileCrafter;
@@ -24,12 +25,7 @@ public class ContainerCrafter extends ContainerStorage {
}
for (int i = 0; i < 4; ++i) {
addSlotToContainer(new SlotFiltered(crafter, 6 + i, 187, 6 + (i * 18), new IItemValidator() {
@Override
public boolean isValid(ItemStack stack) {
return stack.getItem() == RefinedStorageItems.UPGRADE && stack.getMetadata() == ItemUpgrade.TYPE_SPEED;
}
}));
addSlotToContainer(new SlotFiltered(crafter, 6 + i, 187, 6 + (i * 18), new SlotUpgrade(ItemUpgrade.TYPE_SPEED)));
}
addPlayerInventory(8, 144);

View File

@@ -6,6 +6,7 @@ import refinedstorage.RefinedStorageItems;
import refinedstorage.container.slot.IItemValidator;
import refinedstorage.container.slot.SlotFiltered;
import refinedstorage.container.slot.SlotSpecimenItemBlock;
import refinedstorage.container.slot.SlotUpgrade;
import refinedstorage.item.ItemUpgrade;
import refinedstorage.tile.TileDestructor;
@@ -18,12 +19,7 @@ public class ContainerDestructor extends ContainerBase {
}
for (int i = 0; i < 4; ++i) {
addSlotToContainer(new SlotFiltered(destructor.getUpgradesInventory(), i, 187, 6 + (i * 18), new IItemValidator() {
@Override
public boolean isValid(ItemStack stack) {
return stack.getItem() == RefinedStorageItems.UPGRADE && stack.getMetadata() == ItemUpgrade.TYPE_SPEED;
}
}));
addSlotToContainer(new SlotFiltered(destructor.getUpgradesInventory(), i, 187, 6 + (i * 18), new SlotUpgrade(ItemUpgrade.TYPE_SPEED)));
}
addPlayerInventory(8, 55);

View File

@@ -6,6 +6,7 @@ import refinedstorage.RefinedStorageItems;
import refinedstorage.container.slot.IItemValidator;
import refinedstorage.container.slot.SlotFiltered;
import refinedstorage.container.slot.SlotSpecimen;
import refinedstorage.container.slot.SlotUpgrade;
import refinedstorage.item.ItemUpgrade;
import refinedstorage.tile.TileExporter;
@@ -18,12 +19,7 @@ public class ContainerExporter extends ContainerBase {
}
for (int i = 0; i < 4; ++i) {
addSlotToContainer(new SlotFiltered(exporter.getUpgradesInventory(), i, 187, 6 + (i * 18), new IItemValidator() {
@Override
public boolean isValid(ItemStack stack) {
return stack.getItem() == RefinedStorageItems.UPGRADE && (stack.getMetadata() == ItemUpgrade.TYPE_SPEED || stack.getMetadata() == ItemUpgrade.TYPE_CRAFTING);
}
}));
addSlotToContainer(new SlotFiltered(exporter.getUpgradesInventory(), i, 187, 6 + (i * 18), new SlotUpgrade(ItemUpgrade.TYPE_SPEED, ItemUpgrade.TYPE_CRAFTING)));
}
addPlayerInventory(8, 55);

View File

@@ -6,6 +6,7 @@ import refinedstorage.RefinedStorageItems;
import refinedstorage.container.slot.IItemValidator;
import refinedstorage.container.slot.SlotFiltered;
import refinedstorage.container.slot.SlotSpecimen;
import refinedstorage.container.slot.SlotUpgrade;
import refinedstorage.item.ItemUpgrade;
import refinedstorage.tile.TileImporter;
@@ -18,12 +19,7 @@ public class ContainerImporter extends ContainerBase {
}
for (int i = 0; i < 4; ++i) {
addSlotToContainer(new SlotFiltered(importer.getUpgradesInventory(), i, 187, 6 + (i * 18), new IItemValidator() {
@Override
public boolean isValid(ItemStack stack) {
return stack.getItem() == RefinedStorageItems.UPGRADE && stack.getMetadata() == ItemUpgrade.TYPE_SPEED;
}
}));
addSlotToContainer(new SlotFiltered(importer.getUpgradesInventory(), i, 187, 6 + (i * 18), new SlotUpgrade(ItemUpgrade.TYPE_SPEED)));
}
addPlayerInventory(8, 55);

View File

@@ -4,10 +4,7 @@ import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.inventory.Slot;
import net.minecraft.item.ItemStack;
import refinedstorage.RefinedStorageItems;
import refinedstorage.container.slot.IItemValidator;
import refinedstorage.container.slot.SlotFiltered;
import refinedstorage.container.slot.SlotOutput;
import refinedstorage.container.slot.SlotSpecimen;
import refinedstorage.container.slot.*;
import refinedstorage.item.ItemPattern;
import refinedstorage.item.ItemUpgrade;
import refinedstorage.tile.TileInterface;
@@ -29,12 +26,7 @@ public class ContainerInterface extends ContainerBase {
}
for (int i = 0; i < 4; ++i) {
addSlotToContainer(new SlotFiltered(tile.getUpgradesInventory(), i, 187, 6 + (i * 18), new IItemValidator() {
@Override
public boolean isValid(ItemStack stack) {
return stack.getItem() == RefinedStorageItems.UPGRADE && (stack.getMetadata() == ItemUpgrade.TYPE_SPEED || stack.getMetadata() == ItemUpgrade.TYPE_CRAFTING);
}
}));
addSlotToContainer(new SlotFiltered(tile.getUpgradesInventory(), i, 187, 6 + (i * 18), new SlotUpgrade(ItemUpgrade.TYPE_SPEED, ItemUpgrade.TYPE_CRAFTING)));
}
addPlayerInventory(8, 134);

View File

@@ -2,11 +2,13 @@ package refinedstorage.container;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.inventory.Slot;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import refinedstorage.RefinedStorageItems;
import refinedstorage.container.slot.IItemValidator;
import refinedstorage.container.slot.SlotFiltered;
import refinedstorage.container.slot.SlotOutput;
import refinedstorage.container.slot.SlotUpgrade;
import refinedstorage.item.ItemUpgrade;
import refinedstorage.tile.TileSolderer;
@@ -26,12 +28,7 @@ public class ContainerSolderer extends ContainerBase {
addSlotToContainer(new SlotOutput(solderer, 3, 134, 38));
for (int i = 0; i < 4; ++i) {
addSlotToContainer(new SlotFiltered(solderer.getUpgradesInventory(), i, 187, 6 + (i * 18), new IItemValidator() {
@Override
public boolean isValid(ItemStack stack) {
return stack.getItem() == RefinedStorageItems.UPGRADE && stack.getMetadata() == ItemUpgrade.TYPE_SPEED;
}
}));
addSlotToContainer(new SlotFiltered(solderer.getUpgradesInventory(), i, 187, 6 + (i * 18), new SlotUpgrade(ItemUpgrade.TYPE_SPEED)));
}
addPlayerInventory(8, 95);

View File

@@ -6,6 +6,7 @@ import net.minecraft.item.ItemStack;
import refinedstorage.RefinedStorageItems;
import refinedstorage.container.slot.IItemValidator;
import refinedstorage.container.slot.SlotFiltered;
import refinedstorage.container.slot.SlotUpgrade;
import refinedstorage.item.ItemUpgrade;
import refinedstorage.tile.TileWirelessTransmitter;
@@ -14,12 +15,7 @@ public class ContainerWirelessTransmitter extends ContainerBase {
super(player);
for (int i = 0; i < 4; ++i) {
addSlotToContainer(new SlotFiltered(wirelessTransmitter, i, 187, 6 + (i * 18), new IItemValidator() {
@Override
public boolean isValid(ItemStack stack) {
return stack.getItem() == RefinedStorageItems.UPGRADE && stack.getMetadata() == ItemUpgrade.TYPE_RANGE;
}
}));
addSlotToContainer(new SlotFiltered(wirelessTransmitter, i, 187, 6 + (i * 18), new SlotUpgrade(ItemUpgrade.TYPE_RANGE)));
}
addPlayerInventory(8, 55);

View File

@@ -0,0 +1,19 @@
package refinedstorage.container.slot;
import net.minecraft.item.ItemStack;
import refinedstorage.RefinedStorageItems;
import java.util.Arrays;
public class SlotUpgrade implements IItemValidator {
private int[] allowedUpgrades;
public SlotUpgrade(int... allowedUpgrades) {
this.allowedUpgrades = allowedUpgrades;
}
@Override
public boolean isValid(ItemStack stack) {
return stack.getItem() == RefinedStorageItems.UPGRADE && Arrays.asList(allowedUpgrades).contains(stack.getMetadata());
}
}