Standalone Cable items
This commit is contained in:
parent
188cee7b3b
commit
7a5c7df9c2
5 changed files with 128 additions and 26 deletions
|
@ -13,6 +13,7 @@ import techreborn.compat.recipes.RecipesBuildcraft;
|
|||
import techreborn.compat.recipes.RecipesThaumcraft;
|
||||
import techreborn.compat.waila.CompatModuleWaila;
|
||||
import techreborn.config.ConfigTechReborn;
|
||||
import techreborn.parts.StandalonePartCompact;
|
||||
import techreborn.parts.TechRebornParts;
|
||||
|
||||
public class CompatManager {
|
||||
|
@ -45,6 +46,7 @@ public class CompatManager {
|
|||
registerCompact(RecipesThaumcraft.class, "Thaumcraft");
|
||||
registerCompact(TechRebornParts.class, "mcmultipart");
|
||||
registerCompact(ClientPartLoader.class, "mcmultipart", "@client");
|
||||
registerCompact(StandalonePartCompact.class, "!mcmultipart");
|
||||
}
|
||||
|
||||
public void registerCompact(Class<? extends ICompatModule> moduleClass, Object... objs) {
|
||||
|
|
|
@ -46,7 +46,7 @@ import techreborn.items.ItemIngots;
|
|||
import techreborn.items.ItemNuggets;
|
||||
import techreborn.items.ItemParts;
|
||||
import techreborn.items.ItemPlates;
|
||||
import techreborn.parts.ItemCables;
|
||||
import techreborn.parts.ItemStandaloneCables;
|
||||
import techreborn.utils.RecipeUtils;
|
||||
|
||||
public class ModRecipes {
|
||||
|
@ -81,26 +81,26 @@ public class ModRecipes {
|
|||
}
|
||||
|
||||
static void addWireRecipes() {
|
||||
CraftingHelper.addShapedOreRecipe(ItemCables.getCableByName("copper", 6),
|
||||
CraftingHelper.addShapedOreRecipe(ItemStandaloneCables.getCableByName("copper", 6),
|
||||
"XXX","CCC", "XXX",
|
||||
'C', "ingotCopper");
|
||||
CraftingHelper.addShapedOreRecipe(ItemCables.getCableByName("tin", 9),
|
||||
CraftingHelper.addShapedOreRecipe(ItemStandaloneCables.getCableByName("tin", 9),
|
||||
"XXX","CCC", "XXX",
|
||||
'C', "ingotTin");
|
||||
CraftingHelper.addShapedOreRecipe(ItemCables.getCableByName("gold", 12),
|
||||
CraftingHelper.addShapedOreRecipe(ItemStandaloneCables.getCableByName("gold", 12),
|
||||
"XXX","CCC", "XXX",
|
||||
'C', "ingotGold");
|
||||
CraftingHelper.addShapedOreRecipe(ItemCables.getCableByName("hv", 8),
|
||||
CraftingHelper.addShapedOreRecipe(ItemStandaloneCables.getCableByName("hv", 8),
|
||||
"XXX","CCC", "XXX",
|
||||
'C', ItemIngots.getIngotByName("refinediron"));
|
||||
CraftingHelper.addShapedOreRecipe(ItemCables.getCableByName("glassfiber", 6),
|
||||
CraftingHelper.addShapedOreRecipe(ItemStandaloneCables.getCableByName("glassfiber", 6),
|
||||
"GGG",
|
||||
"SDS",
|
||||
"GGG",
|
||||
'G', "blockGlass",
|
||||
'S', "ingotSilver",
|
||||
'D', Items.diamond);
|
||||
CraftingHelper.addShapedOreRecipe(ItemCables.getCableByName("glassfiber", 4),
|
||||
CraftingHelper.addShapedOreRecipe(ItemStandaloneCables.getCableByName("glassfiber", 4),
|
||||
"GGG",
|
||||
"RDR",
|
||||
"GGG",
|
||||
|
@ -108,9 +108,9 @@ public class ModRecipes {
|
|||
'R', Items.redstone,
|
||||
'D', Items.diamond);
|
||||
|
||||
CraftingHelper.addShapelessOreRecipe(ItemCables.getCableByName("insulatedcopper"), ItemParts.getPartByName("rubber"), ItemCables.getCableByName("copper"));
|
||||
CraftingHelper.addShapelessOreRecipe(ItemCables.getCableByName("insulatedgold"), ItemParts.getPartByName("rubber"), ItemCables.getCableByName("gold"));
|
||||
CraftingHelper.addShapelessOreRecipe(ItemCables.getCableByName("insulatedhv"), ItemParts.getPartByName("rubber"), ItemCables.getCableByName("hv"));
|
||||
CraftingHelper.addShapelessOreRecipe(ItemStandaloneCables.getCableByName("insulatedcopper"), ItemParts.getPartByName("rubber"), ItemStandaloneCables.getCableByName("copper"));
|
||||
CraftingHelper.addShapelessOreRecipe(ItemStandaloneCables.getCableByName("insulatedgold"), ItemParts.getPartByName("rubber"), ItemStandaloneCables.getCableByName("gold"));
|
||||
CraftingHelper.addShapelessOreRecipe(ItemStandaloneCables.getCableByName("insulatedhv"), ItemParts.getPartByName("rubber"), ItemStandaloneCables.getCableByName("hv"));
|
||||
}
|
||||
|
||||
private static void addCompressorRecipes() {
|
||||
|
@ -202,7 +202,7 @@ public class ModRecipes {
|
|||
"WWW", "SRS", "WWW",
|
||||
'R', ItemIngots.getIngotByName("refinediron"),
|
||||
'S', Items.redstone,
|
||||
'W', ItemCables.getCableByName("insulatedcopper"));
|
||||
'W', ItemStandaloneCables.getCableByName("insulatedcopper"));
|
||||
|
||||
CraftingHelper.addShapedOreRecipe(new ItemStack(ModItems.wrench),
|
||||
"BAB", "BBB", "ABA",
|
||||
|
|
|
@ -14,8 +14,6 @@ import net.minecraft.util.Vec3;
|
|||
import net.minecraft.world.World;
|
||||
import reborncore.RebornCore;
|
||||
import techreborn.client.TechRebornCreativeTab;
|
||||
import techreborn.init.ModItems;
|
||||
import techreborn.items.ItemTextureBase;
|
||||
import techreborn.lib.ModInfo;
|
||||
|
||||
import java.security.InvalidParameterException;
|
||||
|
@ -25,19 +23,6 @@ import java.util.List;
|
|||
* Created by Mark on 27/02/2016.
|
||||
*/
|
||||
public class ItemCables extends ItemMultiPart implements ITexturedItem {
|
||||
|
||||
public static ItemStack getCableByName(String name, int count) {
|
||||
for (int i = 0; i < EnumCableType.values().length; i++) {
|
||||
if (EnumCableType.values()[i].getName().equalsIgnoreCase(name)) {
|
||||
return new ItemStack(TechRebornParts.cables, count, i);
|
||||
}
|
||||
}
|
||||
throw new InvalidParameterException("The cable " + name + " could not be found.");
|
||||
}
|
||||
|
||||
public static ItemStack getCableByName(String name) {
|
||||
return getCableByName(name, 1);
|
||||
}
|
||||
|
||||
public ItemCables() {
|
||||
setCreativeTab(TechRebornCreativeTab.instance);
|
||||
|
@ -45,6 +30,7 @@ public class ItemCables extends ItemMultiPart implements ITexturedItem {
|
|||
setUnlocalizedName("techreborn.cable");
|
||||
setNoRepair();
|
||||
RebornCore.jsonDestroyer.registerObject(this);
|
||||
ItemStandaloneCables.mcPartCable = this;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
|
77
src/main/java/techreborn/parts/ItemStandaloneCables.java
Normal file
77
src/main/java/techreborn/parts/ItemStandaloneCables.java
Normal file
|
@ -0,0 +1,77 @@
|
|||
package techreborn.parts;
|
||||
|
||||
import net.minecraft.client.resources.model.ModelResourceLocation;
|
||||
import net.minecraft.creativetab.CreativeTabs;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import reborncore.RebornCore;
|
||||
import techreborn.client.TechRebornCreativeTab;
|
||||
import techreborn.items.ItemTR;
|
||||
import techreborn.items.ItemTextureBase;
|
||||
import techreborn.lib.ModInfo;
|
||||
|
||||
import java.security.InvalidParameterException;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* Created by Mark on 06/03/2016.
|
||||
*/
|
||||
public class ItemStandaloneCables extends ItemTextureBase {
|
||||
|
||||
public static Item mcPartCable;
|
||||
|
||||
public static ItemStack getCableByName(String name, int count) {
|
||||
for (int i = 0; i < EnumCableType.values().length; i++) {
|
||||
if (EnumCableType.values()[i].getName().equalsIgnoreCase(name)) {
|
||||
return new ItemStack(mcPartCable != null? mcPartCable : StandalonePartCompact.itemStandaloneCable, count, i);
|
||||
}
|
||||
}
|
||||
throw new InvalidParameterException("The cable " + name + " could not be found.");
|
||||
}
|
||||
|
||||
public static ItemStack getCableByName(String name) {
|
||||
return getCableByName(name, 1);
|
||||
}
|
||||
|
||||
public ItemStandaloneCables() {
|
||||
setCreativeTab(TechRebornCreativeTab.instance);
|
||||
setHasSubtypes(true);
|
||||
setUnlocalizedName("techreborn.cable");
|
||||
setNoRepair();
|
||||
RebornCore.jsonDestroyer.registerObject(this);
|
||||
}
|
||||
|
||||
@Override
|
||||
// gets Unlocalized Name depending on meta data
|
||||
public String getUnlocalizedName(ItemStack itemStack) {
|
||||
int meta = itemStack.getItemDamage();
|
||||
if (meta < 0 || meta >= EnumCableType.values().length) {
|
||||
meta = 0;
|
||||
}
|
||||
|
||||
return super.getUnlocalizedName() + "." + EnumCableType.values()[meta];
|
||||
}
|
||||
|
||||
// Adds Dusts SubItems To Creative Tab
|
||||
public void getSubItems(Item item, CreativeTabs creativeTabs, List list) {
|
||||
for (int meta = 0; meta < EnumCableType.values().length; ++meta) {
|
||||
list.add(new ItemStack(item, 1, meta));
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public String getTextureName(int damage) {
|
||||
return ModInfo.MOD_ID + ":items/cables/" + EnumCableType.values()[damage];
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMaxMeta() {
|
||||
return EnumCableType.values().length;
|
||||
}
|
||||
|
||||
@Override
|
||||
public ModelResourceLocation getModel(ItemStack stack, EntityPlayer player, int useRemaining) {
|
||||
return new ModelResourceLocation(ModInfo.MOD_ID + ":" + getUnlocalizedName(stack).substring(5), "inventory");
|
||||
}
|
||||
}
|
37
src/main/java/techreborn/parts/StandalonePartCompact.java
Normal file
37
src/main/java/techreborn/parts/StandalonePartCompact.java
Normal file
|
@ -0,0 +1,37 @@
|
|||
package techreborn.parts;
|
||||
|
||||
import net.minecraftforge.fml.common.event.FMLInitializationEvent;
|
||||
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent;
|
||||
import net.minecraftforge.fml.common.event.FMLPreInitializationEvent;
|
||||
import net.minecraftforge.fml.common.event.FMLServerStartingEvent;
|
||||
import net.minecraftforge.fml.common.registry.GameRegistry;
|
||||
import techreborn.compat.ICompatModule;
|
||||
|
||||
/**
|
||||
* Created by Mark on 06/03/2016.
|
||||
*/
|
||||
public class StandalonePartCompact implements ICompatModule {
|
||||
|
||||
public static ItemStandaloneCables itemStandaloneCable;
|
||||
|
||||
@Override
|
||||
public void preInit(FMLPreInitializationEvent event) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void init(FMLInitializationEvent event) {
|
||||
itemStandaloneCable = new ItemStandaloneCables();
|
||||
GameRegistry.registerItem(itemStandaloneCable, "cables");
|
||||
}
|
||||
|
||||
@Override
|
||||
public void postInit(FMLPostInitializationEvent event) {
|
||||
|
||||
}
|
||||
|
||||
@Override
|
||||
public void serverStarting(FMLServerStartingEvent event) {
|
||||
|
||||
}
|
||||
}
|
Loading…
Add table
Reference in a new issue