mirror of
https://github.com/dje4321/TerrafirmaPunk-Tweaks.git
synced 2024-09-28 14:50:52 +00:00
Added Wolframite Ore
This commit is contained in:
parent
cea198eec0
commit
90544b74e7
1
.gitignore
vendored
1
.gitignore
vendored
@ -17,3 +17,4 @@
|
||||
/.project
|
||||
/bin
|
||||
/libs
|
||||
To Do.txt
|
@ -1,6 +1,6 @@
|
||||
minecraft_version=1.7.10
|
||||
forge_version=10.13.4.1566-1.7.10
|
||||
tfc_version=0.79.27
|
||||
mod_version=1.17
|
||||
mod_version=1.18
|
||||
mod_id=TerraFirmaPunkTweaks
|
||||
group_name=com.JAWolfe.TerraFirmaPunkTweaks
|
BIN
builds/TerraFirmaPunkTweaks-1.7.10-1.18.jar
Normal file
BIN
builds/TerraFirmaPunkTweaks-1.7.10-1.18.jar
Normal file
Binary file not shown.
@ -1,5 +1,11 @@
|
||||
Changelog
|
||||
=================================================
|
||||
-------------------------------------------------
|
||||
TFP Tweaks 1.18
|
||||
-------------------------------------------------
|
||||
New Features
|
||||
+Added Wolframite Ore world generation
|
||||
|
||||
-------------------------------------------------
|
||||
TFP Tweaks 1.17
|
||||
-------------------------------------------------
|
||||
|
@ -55,6 +55,8 @@ public class TerraFirmaPunkTweaks
|
||||
|
||||
proxy.registerRenderInformation();
|
||||
|
||||
proxy.registerOreGen();
|
||||
|
||||
proxy.registerWAILA();
|
||||
}
|
||||
|
||||
|
@ -6,7 +6,6 @@ import net.minecraft.client.renderer.texture.IIconRegister;
|
||||
import net.minecraft.init.Blocks;
|
||||
import net.minecraft.world.World;
|
||||
import steamcraft.common.blocks.machines.BlockLightningRod;
|
||||
import steamcraft.common.init.InitBlocks;
|
||||
|
||||
public class BlockTFPLigntningRod extends BlockLightningRod
|
||||
{
|
||||
|
@ -0,0 +1,142 @@
|
||||
package com.JAWolfe.terrafirmapunktweaks.blocks;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.Random;
|
||||
|
||||
import com.JAWolfe.terrafirmapunktweaks.items.TFPItems;
|
||||
import com.JAWolfe.terrafirmapunktweaks.reference.Globals;
|
||||
import com.JAWolfe.terrafirmapunktweaks.reference.References;
|
||||
import com.bioxx.tfc.Blocks.Terrain.BlockOre;
|
||||
import com.bioxx.tfc.Core.TFC_Core;
|
||||
import com.bioxx.tfc.TileEntities.TEOre;
|
||||
import com.bioxx.tfc.api.TFCItems;
|
||||
|
||||
import net.minecraft.block.material.Material;
|
||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
||||
import net.minecraft.entity.player.EntityPlayer;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.stats.StatList;
|
||||
import net.minecraft.util.IIcon;
|
||||
import net.minecraft.world.Explosion;
|
||||
import net.minecraft.world.World;
|
||||
import net.minecraftforge.oredict.OreDictionary;
|
||||
|
||||
public class BlockWolframite extends BlockOre
|
||||
{
|
||||
public String[] blockNames = Globals.ORE_METAL;
|
||||
|
||||
public BlockWolframite(Material mat)
|
||||
{
|
||||
super(mat);
|
||||
icons = new IIcon[blockNames.length];
|
||||
}
|
||||
|
||||
@Override
|
||||
public int damageDropped(int dmg)
|
||||
{
|
||||
return dmg;
|
||||
}
|
||||
|
||||
@Override
|
||||
public int quantityDropped(int meta, int fortune, Random random)
|
||||
{
|
||||
return 1;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void registerBlockIcons(IIconRegister iconRegisterer)
|
||||
{
|
||||
for(int i = 0; i < blockNames.length; i++)
|
||||
icons[i] = iconRegisterer.registerIcon(References.ModID + ":" + "ores/"+ blockNames[i] + " Ore");
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean removedByPlayer(World world, EntityPlayer player, int x, int y, int z)
|
||||
{
|
||||
if(!world.isRemote)
|
||||
{
|
||||
boolean dropOres = false;
|
||||
boolean hasHammer = false;
|
||||
int meta = world.getBlockMetadata(x, y, z);
|
||||
ItemStack itemstack = null;
|
||||
if(player != null)
|
||||
{
|
||||
TFC_Core.addPlayerExhaustion(player, 0.001f);
|
||||
player.addStat(StatList.mineBlockStatArray[getIdFromBlock(this)], 1);
|
||||
dropOres = player.canHarvestBlock(this);
|
||||
ItemStack heldItem = player.getCurrentEquippedItem();
|
||||
if (heldItem != null)
|
||||
{
|
||||
int[] itemIDs = OreDictionary.getOreIDs(heldItem);
|
||||
for (int id : itemIDs)
|
||||
{
|
||||
String name = OreDictionary.getOreName(id);
|
||||
if (name.startsWith("itemHammer"))
|
||||
{
|
||||
hasHammer = true;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
if (player == null || dropOres)
|
||||
{
|
||||
TEOre te = (TEOre) world.getTileEntity(x, y, z);
|
||||
int ore = getOreGrade(te, meta);
|
||||
itemstack = new ItemStack(TFPItems.oreChunk, 1, damageDropped(ore));
|
||||
}
|
||||
else if (hasHammer)
|
||||
itemstack = new ItemStack(TFCItems.smallOreChunk, 1, meta);
|
||||
|
||||
if (itemstack != null)
|
||||
dropBlockAsItem(world, x, y, z, itemstack);
|
||||
}
|
||||
return world.setBlockToAir(x, y, z);
|
||||
}
|
||||
|
||||
@Override
|
||||
public ArrayList<ItemStack> getDrops(World world, int x, int y, int z, int metadata, int fortune)
|
||||
{
|
||||
ArrayList<ItemStack> ret = new ArrayList<ItemStack>();
|
||||
TEOre te = (TEOre) world.getTileEntity(x, y, z);
|
||||
int ore = getOreGrade(te, metadata);
|
||||
|
||||
int count = quantityDropped(metadata, fortune, world.rand);
|
||||
for (int i = 0; i < count; i++)
|
||||
{
|
||||
ItemStack itemstack = new ItemStack(TFPItems.oreChunk, 1, damageDropped(ore));
|
||||
ret.add(itemstack);
|
||||
}
|
||||
return ret;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onBlockExploded(World world, int x, int y, int z, Explosion exp)
|
||||
{
|
||||
if (!world.isRemote)
|
||||
{
|
||||
TEOre te = (TEOre)world.getTileEntity(x, y, z);
|
||||
ItemStack itemstack;
|
||||
int meta = world.getBlockMetadata(x, y, z);
|
||||
int ore = getOreGrade(te, meta);
|
||||
itemstack = new ItemStack(TFPItems.oreChunk, 1, ore);
|
||||
dropBlockAsItem(world, x, y, z, itemstack);
|
||||
onBlockDestroyedByExplosion(world, x, y, z, exp);
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getOreGrade(TEOre te, int ore)
|
||||
{
|
||||
if(te != null)
|
||||
{
|
||||
int grade = te.extraData & 7;
|
||||
if (grade == 1)
|
||||
ore = 1;
|
||||
else if (grade == 2)
|
||||
ore = 2;
|
||||
}
|
||||
return ore;
|
||||
}
|
||||
}
|
@ -24,6 +24,7 @@ public class TFPBlocks
|
||||
public static Block tfpAltar;
|
||||
public static Block tfpAltarBlock;
|
||||
public static Block tfpLightningRod;
|
||||
public static Block blockWolframite;
|
||||
|
||||
public static int brickOvenRenderID;
|
||||
|
||||
@ -41,6 +42,9 @@ public class TFPBlocks
|
||||
oliveOil = new BlockOliveOil(TFCFluids.OLIVEOIL).setHardness(100.0F).setLightOpacity(3).setBlockName("OliveOil");
|
||||
GameRegistry.registerBlock(oliveOil,"OliveOil");
|
||||
|
||||
blockWolframite = new BlockWolframite(Material.rock).setHardness(10F).setResistance(10F).setBlockName("Wolframite");
|
||||
GameRegistry.registerBlock(blockWolframite, "OreWolferamite");
|
||||
|
||||
if(Loader.isModLoaded("Steamcraft"))
|
||||
{
|
||||
tweakedboiler = new TweakedBoiler(false).setBlockName(SteamcraftBlocks.boiler.getUnlocalizedName().substring(5)).setHardness(5.0F).setResistance(10.0F);
|
||||
|
@ -0,0 +1,70 @@
|
||||
package com.JAWolfe.terrafirmapunktweaks.items;
|
||||
|
||||
import com.JAWolfe.terrafirmapunktweaks.reference.Globals;
|
||||
import com.JAWolfe.terrafirmapunktweaks.reference.References;
|
||||
import com.bioxx.tfc.Items.ItemOre;
|
||||
import com.bioxx.tfc.api.Metal;
|
||||
import com.bioxx.tfc.api.TFCOptions;
|
||||
|
||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.IIcon;
|
||||
|
||||
public class ItemTFPOre extends ItemOre
|
||||
{
|
||||
public ItemTFPOre()
|
||||
{
|
||||
super();
|
||||
metaNames = new String[] {"Wolframite", "Rich Wolframite", "Poor Wolframite"};
|
||||
}
|
||||
|
||||
@Override
|
||||
public void registerIcons(IIconRegister registerer)
|
||||
{
|
||||
metaIcons = new IIcon[metaNames.length];
|
||||
for(int i = 0; i < metaNames.length; i++)
|
||||
metaIcons[i] = registerer.registerIcon(References.ModID + ":" + textureFolder + metaNames[i] + " Ore");
|
||||
}
|
||||
|
||||
@Override
|
||||
public Metal getMetalType(ItemStack is)
|
||||
{
|
||||
switch(is.getItemDamage())
|
||||
{
|
||||
case 0: case 1: case 2: return Globals.TUNGSTEN;
|
||||
default: return null;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public short getMetalReturnAmount(ItemStack is)
|
||||
{
|
||||
switch (is.getItemDamage())
|
||||
{
|
||||
case 0: return (short) TFCOptions.normalOreUnits;
|
||||
case 1: return (short) TFCOptions.richOreUnits;
|
||||
case 2: return (short) TFCOptions.poorOreUnits;
|
||||
default: return 0;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isSmeltable(ItemStack is)
|
||||
{
|
||||
switch (is.getItemDamage())
|
||||
{
|
||||
case 0: case 1: case 2: return true;
|
||||
default: return false;
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
public EnumTier getSmeltTier(ItemStack is)
|
||||
{
|
||||
switch (is.getItemDamage())
|
||||
{
|
||||
case 0: case 1: case 2: return EnumTier.TierI;
|
||||
default: return EnumTier.TierX;
|
||||
}
|
||||
}
|
||||
}
|
@ -0,0 +1,48 @@
|
||||
package com.JAWolfe.terrafirmapunktweaks.items;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.JAWolfe.terrafirmapunktweaks.reference.References;
|
||||
import com.bioxx.tfc.api.TFCOptions;
|
||||
import com.bioxx.tfc.api.Enums.EnumSize;
|
||||
import com.bioxx.tfc.api.Enums.EnumWeight;
|
||||
|
||||
import net.minecraft.client.renderer.texture.IIconRegister;
|
||||
import net.minecraft.creativetab.CreativeTabs;
|
||||
import net.minecraft.item.Item;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraft.util.IIcon;
|
||||
|
||||
public class ItemTFPOreSmall extends ItemTFPOre
|
||||
{
|
||||
public ItemTFPOreSmall()
|
||||
{
|
||||
super();
|
||||
setWeight(EnumWeight.HEAVY);
|
||||
setSize(EnumSize.TINY);
|
||||
}
|
||||
|
||||
@SuppressWarnings({ "unchecked", "rawtypes" })
|
||||
@Override
|
||||
public void getSubItems(Item item, CreativeTabs tabs, List list)
|
||||
{
|
||||
list.add(new ItemStack(this, 1, 0));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void registerIcons(IIconRegister registerer)
|
||||
{
|
||||
metaIcons = new IIcon[1];
|
||||
metaIcons[0] = registerer.registerIcon(References.ModID + ":" + textureFolder + metaNames[0] + " Small Ore");
|
||||
}
|
||||
|
||||
@Override
|
||||
public short getMetalReturnAmount(ItemStack is)
|
||||
{
|
||||
switch (is.getItemDamage())
|
||||
{
|
||||
case 0: return (short) TFCOptions.smallOreUnits;
|
||||
default: return 0;
|
||||
}
|
||||
}
|
||||
}
|
@ -1,5 +1,8 @@
|
||||
package com.JAWolfe.terrafirmapunktweaks.items;
|
||||
|
||||
import com.JAWolfe.terrafirmapunktweaks.reference.Globals;
|
||||
import com.bioxx.tfc.api.Metal;
|
||||
|
||||
import cpw.mods.fml.common.Loader;
|
||||
import cpw.mods.fml.common.registry.GameRegistry;
|
||||
import net.minecraft.item.Item;
|
||||
@ -24,11 +27,22 @@ public class TFPItems
|
||||
public static Item HopperMold;
|
||||
public static Item TFPNecronomicon;
|
||||
|
||||
public static Item tungstenIngot;
|
||||
public static Item tungstenIngot2x;
|
||||
public static Item tungstenUnshaped;
|
||||
|
||||
public static Item oreChunk;
|
||||
|
||||
public static void initialise()
|
||||
{
|
||||
CustomBucketOliveOil = new TFPCustomBucket().setUnlocalizedName("Wooden Bucket Olive Oil");
|
||||
GameRegistry.registerItem(CustomBucketOliveOil, CustomBucketOliveOil.getUnlocalizedName());
|
||||
|
||||
Globals.TUNGSTEN = new Metal("Tungsten", tungstenUnshaped, tungstenIngot);
|
||||
|
||||
oreChunk = new ItemTFPOre().setFolder("ore/").setUnlocalizedName("Ore");
|
||||
GameRegistry.registerItem(oreChunk, oreChunk.getUnlocalizedName());
|
||||
|
||||
if(Loader.isModLoaded("BuildCraft|Core"))
|
||||
{
|
||||
CustomBucketOil = new TFPCustomBucket().setUnlocalizedName("Wooden Bucket Oil");
|
||||
|
@ -1,13 +1,20 @@
|
||||
package com.JAWolfe.terrafirmapunktweaks.proxy;
|
||||
|
||||
import static com.bioxx.tfc.WorldGen.Generators.WorldGenOre.oreList;
|
||||
|
||||
import com.JAWolfe.terrafirmapunktweaks.TFPFluids;
|
||||
import com.JAWolfe.terrafirmapunktweaks.items.TFPItems;
|
||||
import com.JAWolfe.terrafirmapunktweaks.reference.References;
|
||||
import com.JAWolfe.terrafirmapunktweaks.tiles.TEAltar;
|
||||
import com.JAWolfe.terrafirmapunktweaks.tiles.TEBoiler;
|
||||
import com.JAWolfe.terrafirmapunktweaks.tiles.TEBrickOven;
|
||||
import com.JAWolfe.terrafirmapunktweaks.tiles.TEFlashBoiler;
|
||||
import com.bioxx.tfc.Core.Config.TFC_ConfigFiles;
|
||||
import com.bioxx.tfc.WorldGen.Generators.OreSpawnData;
|
||||
import com.bioxx.tfc.api.TFCFluids;
|
||||
import com.bioxx.tfc.api.TFCItems;
|
||||
import com.bioxx.tfc.api.Constant.Global;
|
||||
import com.google.common.collect.ObjectArrays;
|
||||
import com.sirolf2009.necromancy.item.ItemGeneric;
|
||||
|
||||
import buildcraft.BuildCraftEnergy;
|
||||
@ -15,12 +22,15 @@ import cpw.mods.fml.common.Loader;
|
||||
import cpw.mods.fml.common.event.FMLInterModComms;
|
||||
import cpw.mods.fml.common.registry.GameRegistry;
|
||||
import net.minecraft.item.ItemStack;
|
||||
import net.minecraftforge.common.config.Configuration;
|
||||
import net.minecraftforge.fluids.FluidContainerRegistry;
|
||||
import net.minecraftforge.fluids.FluidRegistry;
|
||||
import net.minecraftforge.fluids.FluidStack;
|
||||
|
||||
public class CommonProxy
|
||||
{
|
||||
private static Configuration oresConfig;
|
||||
|
||||
public void registerTileEntities()
|
||||
{
|
||||
GameRegistry.registerTileEntity(TEBrickOven.class, "TEBrickOven");
|
||||
@ -68,6 +78,41 @@ public class CommonProxy
|
||||
//Not server-sided
|
||||
}
|
||||
|
||||
public void registerOreGen()
|
||||
{
|
||||
oreList.put("Wolframite", getOreData("Wolframite", "default", "medium", References.ModID + ":OreWolferamite", 0, 120, new String[] {"granite", "quartzite"}, 5, 128, 80, 60));
|
||||
|
||||
for (String s : oresConfig.getCategoryNames()) {
|
||||
// If this is a new entry, otherwise it has already been added by the previous bit of code.
|
||||
if (!oreList.containsKey(s))
|
||||
oreList.put(s, getOreData(s, "default", "small", "Ore", 0, 100, new String[] { "granite", "basalt", "sedimentary" }, 5, 128, 50, 50));
|
||||
}
|
||||
|
||||
if (oresConfig.hasChanged())
|
||||
oresConfig.save();
|
||||
}
|
||||
|
||||
private static OreSpawnData getOreData(String category, String type, String size, String blockName, int meta, int rarity, String[] rocks, int min, int max, int v, int h)
|
||||
{
|
||||
oresConfig = TFC_ConfigFiles.getOresConfig();
|
||||
String[] ALLOWED_TYPES = new String[] { "default", "veins" };
|
||||
String[] ALLOWED_SIZES = new String[] { "small", "medium", "large" };
|
||||
String[] ALLOWED_BASE_ROCKS = ObjectArrays.concat(Global.STONE_ALL, new String[] { "igneous intrusive", "igneous extrusive", "sedimentary", "metamorphic" }, String.class);
|
||||
|
||||
return new OreSpawnData(
|
||||
oresConfig.get(category, "type", type).setValidValues(ALLOWED_TYPES).getString(),
|
||||
oresConfig.get(category, "size", size).setValidValues(ALLOWED_SIZES).getString(),
|
||||
oresConfig.get(category, "oreName", blockName).getString(),
|
||||
oresConfig.get(category, "oreMeta", meta).getInt(),
|
||||
oresConfig.get(category, "rarity", rarity).getInt(),
|
||||
oresConfig.get(category, "baseRocks", rocks).setValidValues(ALLOWED_BASE_ROCKS).getStringList(),
|
||||
oresConfig.get(category, "Minimum Height", min).getInt(),
|
||||
oresConfig.get(category, "Maximum Height", max).getInt(),
|
||||
oresConfig.get(category, "Vertical Density", v).getInt(),
|
||||
oresConfig.get(category, "Horizontal Density", h).getInt()
|
||||
);
|
||||
}
|
||||
|
||||
public void registerWAILA()
|
||||
{
|
||||
FMLInterModComms.sendMessage("Waila", "register", "com.JAWolfe.terrafirmapunktweaks.WAILAInfo.callbackRegister");
|
||||
|
@ -0,0 +1,10 @@
|
||||
package com.JAWolfe.terrafirmapunktweaks.reference;
|
||||
|
||||
import com.bioxx.tfc.api.Metal;
|
||||
|
||||
public class Globals
|
||||
{
|
||||
public static final String[] ORE_METAL = {"Wolframite"};
|
||||
|
||||
public static Metal TUNGSTEN;
|
||||
}
|
@ -77,3 +77,15 @@ tile.tfpLightningRod.name=Lightning Rod
|
||||
#==========
|
||||
fluid.tfpBlood=Blood
|
||||
fluid.tfpWhaleOil=Whale Oil
|
||||
|
||||
#=======
|
||||
#= Ore =
|
||||
#=======
|
||||
#== Ore Items ==
|
||||
item.Ore.Wolframite.name=Wolframite
|
||||
item.Ore.Rich Wolframite.name=Rich Wolframite
|
||||
item.Ore.Poor Wolframite.name=Poor Wolframite
|
||||
item.Small Ore.Wolframite.name=Small Wolframite
|
||||
|
||||
#== Ore Blocks ==
|
||||
tile.Wolframite.name=Wolframite
|
Binary file not shown.
After Width: | Height: | Size: 331 B |
Binary file not shown.
After Width: | Height: | Size: 280 B |
Binary file not shown.
After Width: | Height: | Size: 356 B |
Binary file not shown.
After Width: | Height: | Size: 331 B |
Loading…
Reference in New Issue
Block a user