Added dust and refined dust smelting recipes
This commit is contained in:
parent
2e36f323e6
commit
5ad8643350
7 changed files with 30 additions and 24 deletions
|
@ -1,4 +1,4 @@
|
||||||
package resonantinduction.archaic.blocks;
|
package resonantinduction.core.prefab.block;
|
||||||
|
|
||||||
import java.util.Random;
|
import java.util.Random;
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
package resonantinduction.archaic.blocks;
|
package resonantinduction.core.prefab.block;
|
||||||
|
|
||||||
public class BlockColorGlowGlass extends BlockColorGlass
|
public class BlockColorGlowGlass extends BlockColorGlass
|
||||||
{
|
{
|
|
@ -1,4 +1,4 @@
|
||||||
package resonantinduction.archaic.blocks;
|
package resonantinduction.core.prefab.block;
|
||||||
|
|
||||||
import java.util.Random;
|
import java.util.Random;
|
||||||
|
|
|
@ -1,4 +1,4 @@
|
||||||
package resonantinduction.archaic.blocks;
|
package resonantinduction.core.prefab.block;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
|
@ -3,9 +3,9 @@ package resonantinduction.core.resource;
|
||||||
import java.awt.Color;
|
import java.awt.Color;
|
||||||
import java.awt.image.BufferedImage;
|
import java.awt.image.BufferedImage;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
|
import java.util.ArrayList;
|
||||||
import java.util.HashMap;
|
import java.util.HashMap;
|
||||||
import java.util.HashSet;
|
import java.util.List;
|
||||||
import java.util.Set;
|
|
||||||
|
|
||||||
import javax.imageio.ImageIO;
|
import javax.imageio.ImageIO;
|
||||||
|
|
||||||
|
@ -35,7 +35,7 @@ import cpw.mods.fml.relauncher.SideOnly;
|
||||||
public class ResourceGenerator
|
public class ResourceGenerator
|
||||||
{
|
{
|
||||||
public static final ResourceGenerator INSTANCE = new ResourceGenerator();
|
public static final ResourceGenerator INSTANCE = new ResourceGenerator();
|
||||||
public static final Set<String> materialNames = new HashSet<String>();
|
public static final List<String> materialNames = new ArrayList<String>();
|
||||||
public static final HashMap<String, Integer> materialColors = new HashMap<String, Integer>();
|
public static final HashMap<String, Integer> materialColors = new HashMap<String, Integer>();
|
||||||
public static final HashMap<Item, Integer> itemColorMap = new HashMap<Item, Integer>();
|
public static final HashMap<Item, Integer> itemColorMap = new HashMap<Item, Integer>();
|
||||||
|
|
||||||
|
@ -44,12 +44,13 @@ public class ResourceGenerator
|
||||||
{
|
{
|
||||||
if (evt.Name.startsWith("ingot"))
|
if (evt.Name.startsWith("ingot"))
|
||||||
{
|
{
|
||||||
String ingotName = evt.Name.replace("ingot", "");
|
String materialName = evt.Name.replace("ingot", "");
|
||||||
|
|
||||||
if (OreDetectionBlackList.isIngotBlackListed("ingot" + ingotName) || OreDetectionBlackList.isOreBlackListed("ore" + ingotName))
|
if (OreDetectionBlackList.isIngotBlackListed("ingot" + materialName) || OreDetectionBlackList.isOreBlackListed("ore" + materialName))
|
||||||
return;
|
return;
|
||||||
|
|
||||||
ResourceGenerator.materialNames.add(ingotName.toLowerCase());
|
if (!materialNames.contains(materialName.toLowerCase()))
|
||||||
|
materialNames.add(materialName.toLowerCase());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -64,15 +65,16 @@ public class ResourceGenerator
|
||||||
|
|
||||||
for (String materialName : materialNames)
|
for (String materialName : materialNames)
|
||||||
{
|
{
|
||||||
|
// Caps version of the name
|
||||||
String name = materialName.substring(0, 1).toUpperCase() + materialName.substring(1);
|
String name = materialName.substring(0, 1).toUpperCase() + materialName.substring(1);
|
||||||
|
|
||||||
if (OreDictionary.getOres("ore" + name).size() > 0)
|
if (OreDictionary.getOres("ore" + name).size() > 0)
|
||||||
{
|
{
|
||||||
// if (OreDictionary.getOres("dust" + name).size() == 0)
|
if (OreDictionary.getOres("dust" + name).size() == 0)
|
||||||
{
|
{
|
||||||
OreDictionary.registerOre("rubble" + name, ResonantInduction.itemRubble.getStackFromDust(materialName));
|
OreDictionary.registerOre("rubble" + name, ResonantInduction.itemRubble.getStackFromMaterial(materialName));
|
||||||
OreDictionary.registerOre("dust" + name, ResonantInduction.itemDust.getStackFromDust(materialName));
|
OreDictionary.registerOre("dust" + name, ResonantInduction.itemDust.getStackFromMaterial(materialName));
|
||||||
OreDictionary.registerOre("dustRefined" + name, ResonantInduction.itemRefinedDust.getStackFromDust(materialName));
|
OreDictionary.registerOre("dustRefined" + name, ResonantInduction.itemRefinedDust.getStackFromMaterial(materialName));
|
||||||
}
|
}
|
||||||
|
|
||||||
MachineRecipes.INSTANCE.addRecipe(RecipeType.CRUSHER, "ore" + name, "rubble" + name);
|
MachineRecipes.INSTANCE.addRecipe(RecipeType.CRUSHER, "ore" + name, "rubble" + name);
|
||||||
|
@ -80,10 +82,12 @@ public class ResourceGenerator
|
||||||
MachineRecipes.INSTANCE.addRecipe(RecipeType.MIXER, "dust" + name, "dustRefined" + name);
|
MachineRecipes.INSTANCE.addRecipe(RecipeType.MIXER, "dust" + name, "dustRefined" + name);
|
||||||
MachineRecipes.INSTANCE.addRecipe(RecipeType.SMELTER, "dustRefined" + name, "ingot" + name);
|
MachineRecipes.INSTANCE.addRecipe(RecipeType.SMELTER, "dustRefined" + name, "ingot" + name);
|
||||||
|
|
||||||
ItemStack dust = OreDictionary.getOres("dust" + name).get(0);
|
ItemStack dust = ResonantInduction.itemDust.getStackFromMaterial(materialName);
|
||||||
FurnaceRecipes.smelting().addSmelting(dust.itemID, dust.getItemDamage(), OreDictionary.getOres("ingot" + name).get(0), 0.7f);
|
FurnaceRecipes.smelting().addSmelting(dust.itemID, dust.getItemDamage(), OreDictionary.getOres("ingot" + name).get(0).copy(), 0.7f);
|
||||||
ItemStack refinedDust = OreDictionary.getOres("dustRefined" + name).get(0);
|
ItemStack refinedDust = ResonantInduction.itemRefinedDust.getStackFromMaterial(materialName);
|
||||||
FurnaceRecipes.smelting().addSmelting(refinedDust.itemID, refinedDust.getItemDamage(), OreDictionary.getOres("ingot" + name).get(0), 0.7f);
|
ItemStack smeltResult = OreDictionary.getOres("ingot" + name).get(0).copy();
|
||||||
|
smeltResult.stackSize = 2;
|
||||||
|
FurnaceRecipes.smelting().addSmelting(refinedDust.itemID, refinedDust.getItemDamage(), smeltResult, 0.7f);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -124,7 +128,7 @@ public class ResourceGenerator
|
||||||
* Gets the average color of this item.
|
* Gets the average color of this item.
|
||||||
*
|
*
|
||||||
* @param itemStack
|
* @param itemStack
|
||||||
* @return
|
* @return The RGB hexadecimal color code.
|
||||||
*/
|
*/
|
||||||
@SideOnly(Side.CLIENT)
|
@SideOnly(Side.CLIENT)
|
||||||
public static int getAverageColor(ItemStack itemStack)
|
public static int getAverageColor(ItemStack itemStack)
|
||||||
|
|
|
@ -39,7 +39,7 @@ public class ItemOreResource extends ItemRI
|
||||||
@Override
|
@Override
|
||||||
public String getItemDisplayName(ItemStack is)
|
public String getItemDisplayName(ItemStack is)
|
||||||
{
|
{
|
||||||
String dustName = getDustFromStack(is);
|
String dustName = getMaterialFromStack(is);
|
||||||
List<ItemStack> list = OreDictionary.getOres("ingot" + dustName.substring(0, 1).toUpperCase() + dustName.substring(1));
|
List<ItemStack> list = OreDictionary.getOres("ingot" + dustName.substring(0, 1).toUpperCase() + dustName.substring(1));
|
||||||
|
|
||||||
if (list.size() > 0)
|
if (list.size() > 0)
|
||||||
|
@ -94,15 +94,16 @@ public class ItemOreResource extends ItemRI
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public ItemStack getStackFromDust(String name)
|
public ItemStack getStackFromMaterial(String name)
|
||||||
{
|
{
|
||||||
ItemStack itemStack = new ItemStack(this);
|
ItemStack itemStack = new ItemStack(this);
|
||||||
NBTTagCompound nbt = NBTUtility.getNBTTagCompound(itemStack);
|
NBTTagCompound nbt = NBTUtility.getNBTTagCompound(itemStack);
|
||||||
nbt.setString("name", name);
|
nbt.setString("name", name);
|
||||||
|
itemStack.setItemDamage(ResourceGenerator.materialNames.indexOf(name));
|
||||||
return itemStack;
|
return itemStack;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static String getDustFromStack(ItemStack itemStack)
|
public static String getMaterialFromStack(ItemStack itemStack)
|
||||||
{
|
{
|
||||||
NBTTagCompound nbt = NBTUtility.getNBTTagCompound(itemStack);
|
NBTTagCompound nbt = NBTUtility.getNBTTagCompound(itemStack);
|
||||||
|
|
||||||
|
@ -119,7 +120,7 @@ public class ItemOreResource extends ItemRI
|
||||||
{
|
{
|
||||||
for (String materialName : ResourceGenerator.materialNames)
|
for (String materialName : ResourceGenerator.materialNames)
|
||||||
{
|
{
|
||||||
par3List.add(getStackFromDust(materialName));
|
par3List.add(getStackFromMaterial(materialName));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -130,7 +131,7 @@ public class ItemOreResource extends ItemRI
|
||||||
/**
|
/**
|
||||||
* Auto-color based on the texture of the ingot.
|
* Auto-color based on the texture of the ingot.
|
||||||
*/
|
*/
|
||||||
String name = ItemOreResource.getDustFromStack(itemStack);
|
String name = ItemOreResource.getMaterialFromStack(itemStack);
|
||||||
|
|
||||||
if (ResourceGenerator.materialColors.containsKey(name))
|
if (ResourceGenerator.materialColors.containsKey(name))
|
||||||
{
|
{
|
||||||
|
|
|
@ -36,6 +36,7 @@ item.resonantinduction\:imprint.name=Imprint
|
||||||
item.resonantinduction\:hammer.name=Hammer
|
item.resonantinduction\:hammer.name=Hammer
|
||||||
|
|
||||||
## Machines
|
## Machines
|
||||||
|
tile.resonantinduction\:millstone.name=Millstone
|
||||||
tile.resonantinduction\:imprinter.name=Imprinter
|
tile.resonantinduction\:imprinter.name=Imprinter
|
||||||
tile.resonantinduction\:engineeringTable.name=Engineering Table
|
tile.resonantinduction\:engineeringTable.name=Engineering Table
|
||||||
tile.resonantinduction\:firebox.name=Firebox
|
tile.resonantinduction\:firebox.name=Firebox
|
||||||
|
|
Loading…
Reference in a new issue