Add Interdimension Upgrade

This commit is contained in:
Raoul Van den Berge
2016-08-01 00:43:29 +02:00
parent 384d79c998
commit 8f7b1603bc
11 changed files with 48 additions and 22 deletions

View File

@@ -77,12 +77,13 @@ public final class RefinedStorage {
public boolean controllerUsesEnergy;
public int wirelessTransmitterBaseRange;
public int wirelessTransmitterRangePerUpgrade;
public int rangeUpgradeUsage;
public int speedUpgradeUsage;
public int craftingUpgradeUsage;
public int stackUpgradeUsage;
public int wirelessTransmitterRangePerUpgrade;
public int interdimensionUpgradeUsage;
@EventHandler
public void preInit(FMLPreInitializationEvent e) {
@@ -126,6 +127,7 @@ public final class RefinedStorage {
speedUpgradeUsage = config.getInt("speed", "upgrades", 2, 0, Integer.MAX_VALUE, "The additional energy used per Speed Upgrade");
craftingUpgradeUsage = config.getInt("crafting", "upgrades", 5, 0, Integer.MAX_VALUE, "The additional energy used per Crafting Upgrade");
stackUpgradeUsage = config.getInt("stack", "upgrades", 12, 0, Integer.MAX_VALUE, "The additional energy used per Stack Upgrade");
interdimensionUpgradeUsage = config.getInt("interdimension", "upgrades", 1000, 0, Integer.MAX_VALUE, "The energy used by the Interdimension Upgrade");
config.save();
}

View File

@@ -1,7 +1,5 @@
package refinedstorage.apiimpl.solderer;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import refinedstorage.RefinedStorageItems;
import refinedstorage.api.solderer.ISoldererRecipe;
@@ -12,25 +10,11 @@ public class SoldererRecipeUpgrade implements ISoldererRecipe {
private ItemStack result;
public SoldererRecipeUpgrade(int type) {
ItemStack requirement = null;
switch (type) {
case ItemUpgrade.TYPE_RANGE:
requirement = new ItemStack(Items.ENDER_PEARL);
break;
case ItemUpgrade.TYPE_SPEED:
requirement = new ItemStack(Items.SUGAR);
break;
case ItemUpgrade.TYPE_CRAFTING:
requirement = new ItemStack(Blocks.CRAFTING_TABLE);
break;
}
this.result = new ItemStack(RefinedStorageItems.UPGRADE, 1, type);
this.rows = new ItemStack[]{
requirement,
ItemUpgrade.getRequirement(type),
new ItemStack(RefinedStorageItems.UPGRADE, 1, 0),
requirement
ItemUpgrade.getRequirement(type)
};
}

View File

@@ -11,6 +11,7 @@ public class ContainerNetworkTransmitter extends ContainerBase {
super(player);
addSlotToContainer(new SlotItemHandler(networkTransmitter.getNetworkCard(), 0, 8, 20));
addSlotToContainer(new SlotItemHandler(networkTransmitter.getUpgrades(), 0, 187, 6));
addPlayerInventory(8, 55);
}

View File

@@ -8,7 +8,7 @@ public class GuiNetworkTransmitter extends GuiBase {
private TileNetworkTransmitter networkTransmitter;
public GuiNetworkTransmitter(ContainerNetworkTransmitter container, TileNetworkTransmitter networkTransmitter) {
super(container, 176, 137);
super(container, 210, 137);
this.networkTransmitter = networkTransmitter;
}

View File

@@ -1,6 +1,8 @@
package refinedstorage.item;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.init.Blocks;
import net.minecraft.init.Items;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import refinedstorage.RefinedStorage;
@@ -12,6 +14,7 @@ public class ItemUpgrade extends ItemBase {
public static final int TYPE_SPEED = 2;
public static final int TYPE_CRAFTING = 3;
public static final int TYPE_STACK = 4;
public static final int TYPE_INTERDIMENSION = 5;
public ItemUpgrade() {
super("upgrade");
@@ -23,7 +26,7 @@ public class ItemUpgrade extends ItemBase {
@Override
public void getSubItems(Item item, CreativeTabs tab, List list) {
for (int i = 0; i <= 4; ++i) {
for (int i = 0; i <= 5; ++i) {
list.add(new ItemStack(item, 1, i));
}
}
@@ -38,8 +41,25 @@ public class ItemUpgrade extends ItemBase {
return RefinedStorage.INSTANCE.craftingUpgradeUsage;
case TYPE_STACK:
return RefinedStorage.INSTANCE.stackUpgradeUsage;
case TYPE_INTERDIMENSION:
return RefinedStorage.INSTANCE.interdimensionUpgradeUsage;
default:
return 0;
}
}
public static ItemStack getRequirement(int type) {
switch (type) {
case ItemUpgrade.TYPE_RANGE:
return new ItemStack(Items.ENDER_PEARL);
case ItemUpgrade.TYPE_SPEED:
return new ItemStack(Items.SUGAR);
case ItemUpgrade.TYPE_CRAFTING:
return new ItemStack(Blocks.CRAFTING_TABLE);
case ItemUpgrade.TYPE_INTERDIMENSION:
return new ItemStack(Items.NETHER_STAR);
default:
return null;
}
}
}

View File

@@ -61,7 +61,8 @@ public class ClientProxy extends CommonProxy {
new ResourceLocation("refinedstorage:upgrade"),
new ResourceLocation("refinedstorage:range_upgrade"),
new ResourceLocation("refinedstorage:speed_upgrade"),
new ResourceLocation("refinedstorage:stack_upgrade")
new ResourceLocation("refinedstorage:stack_upgrade"),
new ResourceLocation("refinedstorage:interdimension_upgrade")
);
// Items
@@ -102,6 +103,7 @@ public class ClientProxy extends CommonProxy {
ModelLoader.setCustomModelResourceLocation(RefinedStorageItems.UPGRADE, ItemUpgrade.TYPE_SPEED, new ModelResourceLocation("refinedstorage:speed_upgrade", "inventory"));
ModelLoader.setCustomModelResourceLocation(RefinedStorageItems.UPGRADE, ItemUpgrade.TYPE_CRAFTING, new ModelResourceLocation("refinedstorage:crafting_upgrade", "inventory"));
ModelLoader.setCustomModelResourceLocation(RefinedStorageItems.UPGRADE, ItemUpgrade.TYPE_STACK, new ModelResourceLocation("refinedstorage:stack_upgrade", "inventory"));
ModelLoader.setCustomModelResourceLocation(RefinedStorageItems.UPGRADE, ItemUpgrade.TYPE_INTERDIMENSION, new ModelResourceLocation("refinedstorage:interdimension_upgrade", "inventory"));
// Blocks
ModelLoader.setCustomStateMapper(RefinedStorageBlocks.GRID, (new StateMap.Builder())

View File

@@ -438,6 +438,7 @@ public class CommonProxy {
RefinedStorageAPI.SOLDERER_REGISTRY.addRecipe(new SoldererRecipeUpgrade(ItemUpgrade.TYPE_RANGE));
RefinedStorageAPI.SOLDERER_REGISTRY.addRecipe(new SoldererRecipeUpgrade(ItemUpgrade.TYPE_SPEED));
RefinedStorageAPI.SOLDERER_REGISTRY.addRecipe(new SoldererRecipeUpgrade(ItemUpgrade.TYPE_CRAFTING));
RefinedStorageAPI.SOLDERER_REGISTRY.addRecipe(new SoldererRecipeUpgrade(ItemUpgrade.TYPE_INTERDIMENSION));
GameRegistry.addShapedRecipe(new ItemStack(RefinedStorageItems.UPGRADE, 1, ItemUpgrade.TYPE_STACK),
"USU",

View File

@@ -9,10 +9,13 @@ import refinedstorage.RefinedStorage;
import refinedstorage.RefinedStorageItems;
import refinedstorage.container.ContainerNetworkTransmitter;
import refinedstorage.inventory.ItemHandlerBasic;
import refinedstorage.inventory.ItemHandlerUpgrade;
import refinedstorage.inventory.ItemValidatorBasic;
import refinedstorage.item.ItemNetworkCard;
import refinedstorage.item.ItemUpgrade;
public class TileNetworkTransmitter extends TileNode {
private ItemHandlerUpgrade upgrades = new ItemHandlerUpgrade(1, this, ItemUpgrade.TYPE_INTERDIMENSION);
private ItemHandlerBasic networkCard = new ItemHandlerBasic(1, this, new ItemValidatorBasic(RefinedStorageItems.NETWORK_CARD)) {
@Override
protected void onContentsChanged(int slot) {
@@ -57,6 +60,7 @@ public class TileNetworkTransmitter extends TileNode {
super.write(tag);
writeItems(networkCard, 0, tag);
writeItems(upgrades, 1, tag);
return tag;
}
@@ -66,6 +70,7 @@ public class TileNetworkTransmitter extends TileNode {
super.read(tag);
readItems(networkCard, 0, tag);
readItems(upgrades, 1, tag);
}
@Override
@@ -98,6 +103,10 @@ public class TileNetworkTransmitter extends TileNode {
return networkCard;
}
public ItemHandlerUpgrade getUpgrades() {
return upgrades;
}
public BlockPos getReceiver() {
return receiver;
}

View File

@@ -152,6 +152,7 @@ item.refinedstorage:upgrade.1.name=Range Upgrade
item.refinedstorage:upgrade.2.name=Speed Upgrade
item.refinedstorage:upgrade.3.name=Crafting Upgrade
item.refinedstorage:upgrade.4.name=Stack Upgrade
item.refinedstorage:upgrade.5.name=Interdimension Upgrade
item.refinedstorage:storage_housing.name=Storage Housing
item.refinedstorage:grid_filter.name=Grid Filter
item.refinedstorage:network_card.name=Network Card

View File

@@ -0,0 +1,6 @@
{
"parent": "item/generated",
"textures": {
"layer0": "refinedstorage:items/interdimension_upgrade"
}
}

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB