See changelog

Omnitools, removed capes and textures
This commit is contained in:
Tombenpotter committed 2014-09-30 22:36:49 +02:00
1 parent 104ecb66bb
commit 954ab73fa9
13 files changed
+144 -41

No files matched your search

@@ -4,7 +4,7 @@ public class ModInformation {
public static final String name = "Electro-Magic Tools";
public static final String modid = "EMT";
public static final String version = "2.0.0Alpha3";
public static final String version = "2.0.0Alpha4";
public static final String texturePath = "electromagictools";
public static final String guiFactory = "tombenpotter.emt.client.gui.config.EMTGuiFactory";
public static final String clientProxy = "tombenpotter.emt.proxies.ClientProxy";
@@ -4,18 +4,25 @@ import cpw.mods.fml.relauncher.Side;
import cpw.mods.fml.relauncher.SideOnly;
import net.minecraft.block.Block;
import net.minecraft.client.renderer.texture.IIconRegister;
import net.minecraft.entity.Entity;
import net.minecraft.enchantment.Enchantment;
import net.minecraft.enchantment.EnchantmentHelper;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.item.EntityItem;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Items;
import net.minecraft.item.ItemPickaxe;
import net.minecraft.item.ItemStack;
import net.minecraft.util.DamageSource;
import net.minecraft.stats.StatList;
import net.minecraft.world.World;
import net.minecraftforge.common.IShearable;
import tombenpotter.emt.ElectroMagicTools;
import tombenpotter.emt.ModInformation;
import tombenpotter.emt.common.util.ConfigHandler;
import tombenpotter.emt.common.util.RandomHelper;
import java.util.ArrayList;
import java.util.Random;
public class ItemBaseOmnitool extends ItemPickaxe {
public String textureName;
@@ -36,13 +43,8 @@ public class ItemBaseOmnitool extends ItemPickaxe {
}
@Override
public void onUpdate(ItemStack stack, World world, Entity entity, int slot, boolean currentItem) {
if (stack.getItemDamage() < 1) stack.setItemDamage(1);
}
@Override
public boolean onBlockDestroyed(ItemStack stack, World world, Block block, int par4, int par5, int par6, EntityLivingBase entityLiving) {
if (stack.getItemDamage() > 1) stack.damageItem(1, entityLiving);
public boolean onBlockDestroyed(ItemStack stack, World world, Block block, int x, int y, int z, EntityLivingBase entityLiving) {
if ((double) block.getBlockHardness(world, x, y, z) != 0.0D) stack.damageItem(1, entityLiving);
return true;
}
@@ -53,16 +55,19 @@ public class ItemBaseOmnitool extends ItemPickaxe {
@Override
public float getDigSpeed(ItemStack stack, Block block, int meta) {
if (stack.getItemDamage() <= 1) return 1.0F;
else return super.getDigSpeed(stack, block, meta);
if (block.getHarvestTool(meta) == null) {
return efficiencyOnProperMaterial;
} else {
if (canHarvestBlock(block, stack) && (block.getHarvestTool(meta).equals("pickaxe") || block.getHarvestTool(meta).equals("shovel")) || block.getHarvestTool(meta).equals("axe") || Items.shears.canHarvestBlock(block, stack)) {
return efficiencyOnProperMaterial;
}
}
return super.getDigSpeed(stack, block, meta);
}
@Override
public boolean hitEntity(ItemStack stack, EntityLivingBase entityliving, EntityLivingBase attacker) {
if (stack.getItemDamage() <= 1) {
entityliving.attackEntityFrom(DamageSource.causePlayerDamage((EntityPlayer) attacker), 8F);
stack.damageItem(1, attacker);
}
stack.damageItem(1, attacker);
return true;
}
@@ -86,4 +91,32 @@ public class ItemBaseOmnitool extends ItemPickaxe {
public boolean isBookEnchantable(ItemStack itemstack1, ItemStack itemstack2) {
return ConfigHandler.enchanting;
}
@Override
public boolean onBlockStartBreak(ItemStack stack, int x, int y, int z, EntityPlayer player) {
if (player.worldObj.isRemote) {
return false;
}
Block block = player.worldObj.getBlock(x, y, z);
if (block instanceof IShearable) {
IShearable target = (IShearable) block;
if (target.isShearable(stack, player.worldObj, x, y, z)) {
ArrayList<ItemStack> drops = target.onSheared(stack, player.worldObj, x, y, z,
EnchantmentHelper.getEnchantmentLevel(Enchantment.fortune.effectId, stack));
Random rand = new Random();
for (ItemStack drop : drops) {
float f = 0.7F;
double d = (double) (rand.nextFloat() * f) + (double) (1.0F - f) * 0.5D;
double d1 = (double) (rand.nextFloat() * f) + (double) (1.0F - f) * 0.5D;
double d2 = (double) (rand.nextFloat() * f) + (double) (1.0F - f) * 0.5D;
EntityItem entityitem = new EntityItem(player.worldObj, (double) x + d, (double) y + d1, (double) z + d2, drop);
entityitem.delayBeforeCanPickup = 10;
player.worldObj.spawnEntityInWorld(entityitem);
}
stack.damageItem(1, player);
player.addStat(StatList.mineBlockStatArray[Block.getIdFromBlock(block)], 1);
}
}
return false;
}
}
@@ -7,6 +7,7 @@ import net.minecraft.item.Item;
import tombenpotter.emt.ModInformation;
import tombenpotter.emt.common.module.vanilla.items.tools.ItemVanillaChainsaw;
import tombenpotter.emt.common.module.vanilla.items.tools.ItemVanillaDrill;
import tombenpotter.emt.common.module.vanilla.items.tools.ItemVanillaOmnitool;
public class VanillaItemsRegistry {
@@ -20,28 +21,38 @@ public class VanillaItemsRegistry {
public static Item ironChainsaw;
public static Item goldenChainsaw;
public static Item diamondChainsaw;
public static Item ironOmnitool;
public static Item goldenOmnitool;
public static Item diamondOmnitool;
public static void registerItems() {
woodenDrill = new ItemVanillaDrill(Item.ToolMaterial.WOOD, 75, "woodendrill", Item.getItemFromBlock(Blocks.planks)).setUnlocalizedName(ModInformation.modid + "woodenDrill");
woodenDrill = new ItemVanillaDrill(Item.ToolMaterial.WOOD, 75, ":woodendrill", Item.getItemFromBlock(Blocks.planks)).setUnlocalizedName(ModInformation.modid + ".woodenDrill");
GameRegistry.registerItem(woodenDrill, "woodenDrill");
stoneDrill = new ItemVanillaDrill(Item.ToolMaterial.STONE, 165, "stonedrill", Item.getItemFromBlock(Blocks.cobblestone)).setUnlocalizedName(ModInformation.modid + "stoneDrill");
stoneDrill = new ItemVanillaDrill(Item.ToolMaterial.STONE, 165, ":stonedrill", Item.getItemFromBlock(Blocks.cobblestone)).setUnlocalizedName(ModInformation.modid + ".stoneDrill");
GameRegistry.registerItem(stoneDrill, "stoneDrill");
ironDrill = new ItemVanillaDrill(Item.ToolMaterial.IRON, 315, "irondrill", Items.iron_ingot).setUnlocalizedName(ModInformation.modid + "ironDrill");
ironDrill = new ItemVanillaDrill(Item.ToolMaterial.IRON, 315, ":irondrill", Items.iron_ingot).setUnlocalizedName(ModInformation.modid + ".ironDrill");
GameRegistry.registerItem(ironDrill, "ironDrill");
goldenDrill = new ItemVanillaDrill(Item.ToolMaterial.GOLD, 55, "goldendrill", Items.gold_ingot).setUnlocalizedName(ModInformation.modid + "goldenDrill");
goldenDrill = new ItemVanillaDrill(Item.ToolMaterial.GOLD, 55, ":goldendrill", Items.gold_ingot).setUnlocalizedName(ModInformation.modid + ".goldenDrill");
GameRegistry.registerItem(goldenDrill, "goldenDrill");
diamondDrill = new ItemVanillaDrill(Item.ToolMaterial.EMERALD, 2015, "diamondDrill", Items.diamond).setUnlocalizedName(ModInformation.modid + "diamondDrill");
diamondDrill = new ItemVanillaDrill(Item.ToolMaterial.EMERALD, 2015, ":diamonddrill", Items.diamond).setUnlocalizedName(ModInformation.modid + ".diamondDrill");
GameRegistry.registerItem(diamondDrill, "diamondDrill");
woodenChainsaw = new ItemVanillaChainsaw(Item.ToolMaterial.WOOD, 75, "woodenchainsaw", Item.getItemFromBlock(Blocks.planks)).setUnlocalizedName(ModInformation.modid + "woodenChainsaw");
woodenChainsaw = new ItemVanillaChainsaw(Item.ToolMaterial.WOOD, 75, ":woodenchainsaw", Item.getItemFromBlock(Blocks.planks)).setUnlocalizedName(ModInformation.modid + ".woodenChainsaw");
GameRegistry.registerItem(woodenChainsaw, "woodenChainsaw");
stoneChainsaw = new ItemVanillaChainsaw(Item.ToolMaterial.STONE, 165, "stonechainsaw", Item.getItemFromBlock(Blocks.cobblestone)).setUnlocalizedName(ModInformation.modid + "stoneChainsaw");
stoneChainsaw = new ItemVanillaChainsaw(Item.ToolMaterial.STONE, 165, ":stonechainsaw", Item.getItemFromBlock(Blocks.cobblestone)).setUnlocalizedName(ModInformation.modid + ".stoneChainsaw");
GameRegistry.registerItem(stoneChainsaw, "stoneChainsaw");
ironChainsaw = new ItemVanillaChainsaw(Item.ToolMaterial.IRON, 315, "ironchainsaw", Items.iron_ingot, 3F).setUnlocalizedName(ModInformation.modid + "ironChainsaw");
ironChainsaw = new ItemVanillaChainsaw(Item.ToolMaterial.IRON, 315, ":ironchainsaw", Items.iron_ingot, 3F).setUnlocalizedName(ModInformation.modid + ".ironChainsaw");
GameRegistry.registerItem(ironChainsaw, "ironChainsaw");
goldenChainsaw = new ItemVanillaChainsaw(Item.ToolMaterial.GOLD, 55, "goldenchainsaw", Items.gold_ingot).setUnlocalizedName(ModInformation.modid + "goldenChainsaw");
goldenChainsaw = new ItemVanillaChainsaw(Item.ToolMaterial.GOLD, 55, ":goldenchainsaw", Items.gold_ingot).setUnlocalizedName(ModInformation.modid + ".goldenChainsaw");
GameRegistry.registerItem(goldenChainsaw, "goldenChainsaw");
diamondChainsaw = new ItemVanillaChainsaw(Item.ToolMaterial.EMERALD, 2015, "diamondchainsaw", Items.diamond, 5F).setUnlocalizedName(ModInformation.modid + "diamondChainsaw");
diamondChainsaw = new ItemVanillaChainsaw(Item.ToolMaterial.EMERALD, 2015, ":diamondchainsaw", Items.diamond, 6F).setUnlocalizedName(ModInformation.modid + ".diamondChainsaw");
GameRegistry.registerItem(diamondChainsaw, "diamondChainsaw");
ironOmnitool = new ItemVanillaOmnitool(Item.ToolMaterial.IRON, 500, ":ironomnitool", Items.iron_ingot).setUnlocalizedName(ModInformation.modid + ".ironOmnitool");
GameRegistry.registerItem(ironOmnitool, "ironOmnitool");
goldenOmnitool = new ItemVanillaOmnitool(Item.ToolMaterial.GOLD, 100, ":goldenomnitool", Items.gold_ingot).setUnlocalizedName(ModInformation.modid + ".goldenOmnitool");
GameRegistry.registerItem(goldenOmnitool, "goldenOmnitool");
diamondOmnitool = new ItemVanillaOmnitool(Item.ToolMaterial.EMERALD, 3900, ":diamondomnitool", Items.diamond).setUnlocalizedName(ModInformation.modid + ".diamondOmnitool");
GameRegistry.registerItem(diamondOmnitool, "diamondOmnitool");
}
}
@@ -6,8 +6,9 @@ import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.DamageSource;
import tombenpotter.emt.common.module.base.items.tools.ItemBaseChainsaw;
import tombenpotter.emt.common.util.IRefillable;
public class ItemVanillaChainsaw extends ItemBaseChainsaw {
public class ItemVanillaChainsaw extends ItemBaseChainsaw implements IRefillable {
public Item repairMaterial;
public int repairMeta;
@@ -0,0 +1,65 @@
package tombenpotter.emt.common.module.vanilla.items.tools;
import net.minecraft.block.Block;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
import net.minecraft.util.DamageSource;
import tombenpotter.emt.common.module.base.items.tools.ItemBaseOmnitool;
public class ItemVanillaOmnitool extends ItemBaseOmnitool {
public Item repairMaterial;
public int repairMeta;
public float damageAdded;
public ItemVanillaOmnitool(Item.ToolMaterial material, int maxDamage, String textureName, Item repairMaterial) {
super(material, maxDamage, textureName);
this.repairMaterial = repairMaterial;
this.repairMeta = 0;
damageAdded = 4;
}
public ItemVanillaOmnitool(Item.ToolMaterial material, int maxDamage, String textureName, Item repairMaterial, float damageAdded) {
super(material, maxDamage, textureName);
this.repairMaterial = repairMaterial;
this.repairMeta = 0;
this.damageAdded = damageAdded;
}
public ItemVanillaOmnitool(Item.ToolMaterial material, int maxDamage, String textureName, Item repairMaterial, int repairMeta) {
super(material, maxDamage, textureName);
this.repairMaterial = repairMaterial;
this.repairMeta = repairMeta;
damageAdded = 4;
}
public ItemVanillaOmnitool(Item.ToolMaterial material, int maxDamage, String textureName, Item repairMaterial, int repairMeta, float damageAdded) {
super(material, maxDamage, textureName);
this.repairMaterial = repairMaterial;
this.repairMeta = repairMeta;
this.damageAdded = damageAdded;
}
@Override
public boolean canHarvestBlock(Block block, ItemStack stack) {
return (block.getHarvestLevel(new ItemStack(Item.getItemFromBlock(block)).getItemDamage()) <= this.toolMaterial.getHarvestLevel());
}
@Override
public boolean getIsRepairable(ItemStack stack1, ItemStack stack2) {
return (stack2.getItem() == repairMaterial && stack2.getItemDamage() == repairMeta) ? true : super.getIsRepairable(stack1, stack2);
}
@Override
public boolean isRepairable() {
return true;
}
@Override
public boolean hitEntity(ItemStack stack, EntityLivingBase entityliving, EntityLivingBase attacker) {
stack.damageItem(1, attacker);
entityliving.attackEntityFrom(DamageSource.generic, damageAdded);
return true;
}
}