Bunch of item work, 96

This commit is contained in:
modmuss50 2019-02-22 15:02:41 +00:00
parent 91994e5a01
commit fd0fa8c66e
27 changed files with 123 additions and 191 deletions

View file

@ -29,15 +29,14 @@ import net.minecraft.block.state.IBlockState;
import net.minecraft.enchantment.EnchantmentHelper;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.init.Enchantments;
import net.minecraft.item.IItemPropertyGetter;
import net.minecraft.item.ItemAxe;
import net.minecraft.item.ItemStack;
import net.minecraft.item.*;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.ResourceLocation;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;
import net.minecraftforge.common.ToolType;
import net.minecraftforge.common.capabilities.ICapabilityProvider;
import reborncore.api.power.IEnergyItemInfo;
import reborncore.common.powerSystem.ExternalPowerSystems;
@ -58,16 +57,15 @@ public class ItemChainsaw extends ItemAxe implements IEnergyItemInfo {
public int transferLimit = 100;
public boolean isBreaking = false;
public ItemChainsaw(ToolMaterial material, int energyCapacity, float unpoweredSpeed) {
super(material);
setMaxStackSize(1);
public ItemChainsaw(ItemTier material, int energyCapacity, float unpoweredSpeed) {
super(material, (int) material.getAttackDamage(), unpoweredSpeed, new Item.Properties().maxStackSize(1));
this.maxCharge = energyCapacity;
this.efficiency = unpoweredSpeed;
this.addPropertyOverride(new ResourceLocation("techreborn", "animated"), new IItemPropertyGetter() {
@Override
@OnlyIn(Dist.CLIENT)
public float apply(ItemStack stack, @Nullable World worldIn, @Nullable EntityLivingBase entityIn) {
public float call(ItemStack stack, @Nullable World worldIn, @Nullable EntityLivingBase entityIn) {
if (!stack.isEmpty() && new ForgePowerItemManager(stack).getEnergyStored() >= cost
&& entityIn != null && entityIn.getHeldItemMainhand().equals(stack)) {
return 1.0F;
@ -81,7 +79,7 @@ public class ItemChainsaw extends ItemAxe implements IEnergyItemInfo {
@Override
public float getDestroySpeed(ItemStack stack, IBlockState state) {
if (new ForgePowerItemManager(stack).getEnergyStored() >= cost
&& (state.getBlock().isToolEffective("axe", state) || state.getMaterial() == Material.WOOD)) {
&& (state.getBlock().isToolEffective(state, ToolType.AXE) || state.getMaterial() == Material.WOOD)) {
return this.poweredSpeed;
} else {
return super.getDestroySpeed(stack, state);

View file

@ -29,6 +29,8 @@ import net.minecraft.enchantment.EnchantmentHelper;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.init.Enchantments;
import net.minecraft.init.Items;
import net.minecraft.item.IItemTier;
import net.minecraft.item.Item;
import net.minecraft.item.ItemPickaxe;
import net.minecraft.item.ItemStack;
import net.minecraft.nbt.NBTTagCompound;
@ -52,10 +54,9 @@ public class ItemDrill extends ItemPickaxe implements IEnergyItemInfo {
public float unpoweredSpeed = 2.0F;
public int transferLimit = 100;
public ItemDrill(ToolMaterial material, int energyCapacity, float unpoweredSpeed, float efficiencyOnProperMaterial) {
super(material);
public ItemDrill(IItemTier material, int energyCapacity, float unpoweredSpeed, float efficiencyOnProperMaterial) {
super(material, (int) material.getAttackDamage(), unpoweredSpeed, new Item.Properties().maxStackSize(1));
this.efficiency = efficiencyOnProperMaterial;
setMaxStackSize(1);
this.maxCharge = energyCapacity;
this.unpoweredSpeed = unpoweredSpeed;
}

View file

@ -30,8 +30,10 @@ import net.minecraft.enchantment.EnchantmentHelper;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.init.Blocks;
import net.minecraft.init.Enchantments;
import net.minecraft.item.Item;
import net.minecraft.item.ItemPickaxe;
import net.minecraft.item.ItemStack;
import net.minecraft.item.ItemTier;
import net.minecraft.nbt.NBTTagCompound;
import net.minecraft.util.math.BlockPos;
import net.minecraft.world.World;
@ -53,11 +55,9 @@ public class ItemJackhammer extends ItemPickaxe implements IEnergyItemInfo {
public int cost = 250;
public int transferLimit = 100;
public ItemJackhammer(ToolMaterial material, int energyCapacity) {
super(material);
public ItemJackhammer(ItemTier material, int energyCapacity) {
super(material, (int) material.getAttackDamage(), 1f, new Item.Properties().maxStackSize(1));
efficiency = 20F;
setMaxStackSize(1);
setMaxDamage(240);
this.maxCharge = energyCapacity;
}
@ -92,7 +92,7 @@ public class ItemJackhammer extends ItemPickaxe implements IEnergyItemInfo {
// Item
@Override
public boolean canHarvestBlock(final IBlockState state, final ItemStack stack) {
public boolean canHarvestBlock( final ItemStack stack, final IBlockState state) {
return TagUtils.isOre(state, "stone")
|| state.getMaterial() == Material.ROCK && new ForgePowerItemManager(stack).getEnergyStored() >= cost;
}

View file

@ -25,8 +25,8 @@
package techreborn.items.tool.advanced;
import net.minecraft.block.state.IBlockState;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.init.Items;
import net.minecraft.item.ItemGroup;
import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraftforge.api.distmarker.Dist;
@ -47,8 +47,8 @@ public class ItemAdvancedChainsaw extends ItemChainsaw {
@OnlyIn(Dist.CLIENT)
@Override
public void getSubItems(CreativeTabs par2CreativeTabs, NonNullList<ItemStack> itemList) {
if (!isInCreativeTab(par2CreativeTabs)) {
public void fillItemGroup(ItemGroup par2ItemGroup, NonNullList<ItemStack> itemList) {
if (!isInGroup(par2ItemGroup)) {
return;
}
ItemStack stack = new ItemStack(TRContent.ADVANCED_CHAINSAW);

View file

@ -25,7 +25,7 @@
package techreborn.items.tool.advanced;
import net.minecraft.block.state.IBlockState;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemGroup;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
@ -47,8 +47,8 @@ public class ItemAdvancedDrill extends ItemDrill {
@OnlyIn(Dist.CLIENT)
@Override
public void getSubItems(CreativeTabs par2CreativeTabs, NonNullList<ItemStack> itemList) {
if (!isInCreativeTab(par2CreativeTabs)) {
public void fillItemGroup(ItemGroup par2ItemGroup, NonNullList<ItemStack> itemList) {
if (!isInGroup(par2ItemGroup)) {
return;
}
ItemStack stack = new ItemStack(TRContent.ADVANCED_DRILL);

View file

@ -24,7 +24,7 @@
package techreborn.items.tool.advanced;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemGroup;
import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraftforge.api.distmarker.Dist;
@ -46,8 +46,8 @@ public class ItemAdvancedJackhammer extends ItemJackhammer {
@OnlyIn(Dist.CLIENT)
@Override
public void getSubItems(CreativeTabs par2CreativeTabs, NonNullList<ItemStack> itemList) {
if (!isInCreativeTab(par2CreativeTabs)) {
public void fillItemGroup(ItemGroup par2ItemGroup, NonNullList<ItemStack> itemList) {
if (!isInGroup(par2ItemGroup)) {
return;
}
ItemStack stack = new ItemStack(TRContent.ADVANCED_JACKHAMMER);

View file

@ -25,7 +25,7 @@
package techreborn.items.tool.advanced;
import net.minecraft.block.state.IBlockState;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemGroup;
import net.minecraft.enchantment.EnchantmentHelper;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
@ -145,8 +145,8 @@ public class ItemRockCutter extends ItemPickaxe implements IEnergyItemInfo {
@OnlyIn(Dist.CLIENT)
@Override
public void getSubItems(CreativeTabs par2CreativeTabs, NonNullList<ItemStack> itemList) {
if (!isInCreativeTab(par2CreativeTabs)) {
public void fillItemGroup(ItemGroup par2ItemGroup, NonNullList<ItemStack> itemList) {
if (!isInGroup(par2ItemGroup)) {
return;
}
ItemStack uncharged = new ItemStack(this);

View file

@ -25,7 +25,7 @@
package techreborn.items.tool.basic;
import net.minecraft.block.state.IBlockState;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemGroup;
import net.minecraft.init.Items;
import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
@ -45,9 +45,8 @@ public class ItemBasicChainsaw extends ItemChainsaw {
@OnlyIn(Dist.CLIENT)
@Override
public void getSubItems(
CreativeTabs par2CreativeTabs, NonNullList<ItemStack> itemList) {
if (!isInCreativeTab(par2CreativeTabs)) {
public void fillItemGroup(ItemGroup par2ItemGroup, NonNullList<ItemStack> itemList) {
if (!isInGroup(par2ItemGroup)) {
return;
}
ItemStack stack = new ItemStack(TRContent.BASIC_CHAINSAW);

View file

@ -25,12 +25,14 @@
package techreborn.items.tool.basic;
import net.minecraft.block.state.IBlockState;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.init.Items;
import net.minecraft.item.ItemGroup;
import net.minecraft.item.ItemStack;
import net.minecraft.item.ItemTier;
import net.minecraft.util.NonNullList;
import net.minecraftforge.api.distmarker.Dist;
import net.minecraftforge.api.distmarker.OnlyIn;
import net.minecraftforge.common.ToolType;
import reborncore.common.powerSystem.forge.ForgePowerItemManager;
import techreborn.config.ConfigTechReborn;
import techreborn.init.TRContent;
@ -39,15 +41,14 @@ import techreborn.items.tool.ItemDrill;
public class ItemBasicDrill extends ItemDrill {
public ItemBasicDrill() {
super(ToolMaterial.IRON, ConfigTechReborn.BasicDrillCharge, 0.5F, 10F);
super(ItemTier.IRON, ConfigTechReborn.BasicDrillCharge, 0.5F, 10F);
this.cost = 50;
}
@OnlyIn(Dist.CLIENT)
@Override
public void getSubItems(
CreativeTabs par2CreativeTabs, NonNullList<ItemStack> itemList) {
if (!isInCreativeTab(par2CreativeTabs)) {
public void fillItemGroup(ItemGroup par2ItemGroup, NonNullList<ItemStack> itemList) {
if (!isInGroup(par2ItemGroup)) {
return;
}
ItemStack stack = new ItemStack(TRContent.BASIC_DRILL);

View file

@ -24,7 +24,7 @@
package techreborn.items.tool.basic;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemGroup;
import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraftforge.api.distmarker.Dist;
@ -44,8 +44,8 @@ public class ItemBasicJackhammer extends ItemJackhammer {
@OnlyIn(Dist.CLIENT)
@Override
public void getSubItems(CreativeTabs par2CreativeTabs, NonNullList<ItemStack> itemList) {
if (!isInCreativeTab(par2CreativeTabs)) {
public void fillItemGroup(ItemGroup par2ItemGroup, NonNullList<ItemStack> itemList) {
if (!isInGroup(par2ItemGroup)) {
return;
}
ItemStack stack = new ItemStack(TRContent.BASIC_JACKHAMMER);

View file

@ -25,7 +25,7 @@
package techreborn.items.tool.basic;
import net.minecraft.block.state.IBlockState;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemGroup;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.item.Item;
import net.minecraft.item.ItemStack;
@ -101,8 +101,8 @@ public class ItemElectricTreetap extends Item implements IEnergyItemInfo {
@OnlyIn(Dist.CLIENT)
@Override
public void getSubItems(CreativeTabs par2CreativeTabs, NonNullList<ItemStack> itemList) {
if (!isInCreativeTab(par2CreativeTabs)) {
public void fillItemGroup(ItemGroup par2ItemGroup, NonNullList<ItemStack> itemList) {
if (!isInGroup(par2ItemGroup)) {
return;
}
ItemStack uncharged = new ItemStack(TRContent.ELECTRIC_TREE_TAP);

View file

@ -25,10 +25,11 @@
package techreborn.items.tool.industrial;
import net.minecraft.block.state.IBlockState;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemGroup;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Items;
import net.minecraft.item.ItemGroup;
import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraft.util.math.BlockPos;
@ -52,8 +53,8 @@ public class ItemIndustrialChainsaw extends ItemChainsaw {
@OnlyIn(Dist.CLIENT)
@Override
public void getSubItems(CreativeTabs par2CreativeTabs, NonNullList<ItemStack> itemList) {
if (!isInCreativeTab(par2CreativeTabs)) {
public void fillItemGroup(ItemGroup par2ItemGroup, NonNullList<ItemStack> itemList) {
if (!isInGroup(par2ItemGroup)) {
return;
}
ItemStack stack = new ItemStack(TRContent.ADVANCED_CHAINSAW);

View file

@ -26,7 +26,7 @@ package techreborn.items.tool.industrial;
import net.minecraft.block.material.Material;
import net.minecraft.block.state.IBlockState;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemGroup;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Items;
@ -157,8 +157,8 @@ public class ItemIndustrialDrill extends ItemDrill {
// Item
@OnlyIn(Dist.CLIENT)
@Override
public void getSubItems(CreativeTabs par2CreativeTabs, NonNullList<ItemStack> itemList) {
if (!isInCreativeTab(par2CreativeTabs)) {
public void fillItemGroup(ItemGroup par2ItemGroup, NonNullList<ItemStack> itemList) {
if (!isInGroup(par2ItemGroup)) {
return;
}
ItemStack stack = new ItemStack(TRContent.ADVANCED_DRILL);

View file

@ -24,7 +24,7 @@
package techreborn.items.tool.industrial;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemGroup;
import net.minecraft.item.ItemStack;
import net.minecraft.util.NonNullList;
import net.minecraftforge.api.distmarker.Dist;
@ -46,9 +46,9 @@ public class ItemIndustrialJackhammer extends ItemJackhammer {
@OnlyIn(Dist.CLIENT)
@Override
public void getSubItems(
CreativeTabs par2CreativeTabs, NonNullList<ItemStack> itemList) {
if (!isInCreativeTab(par2CreativeTabs)) {
public void fillItemGroup(
ItemGroup par2ItemGroup, NonNullList<ItemStack> itemList) {
if (!isInGroup(par2ItemGroup)) {
return;
}
ItemStack stack = new ItemStack(TRContent.ADVANCED_JACKHAMMER);

View file

@ -28,7 +28,7 @@ import com.google.common.collect.HashMultimap;
import com.google.common.collect.Multimap;
import net.minecraft.client.resources.I18n;
import net.minecraft.client.util.ITooltipFlag;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemGroup;
import net.minecraft.entity.Entity;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.SharedMonsterAttributes;
@ -203,9 +203,9 @@ public class ItemNanosaber extends ItemSword implements IEnergyItemInfo {
@OnlyIn(Dist.CLIENT)
@Override
public void getSubItems(
CreativeTabs par2CreativeTabs, NonNullList<ItemStack> itemList) {
if (!isInCreativeTab(par2CreativeTabs)) {
public void fillItemGroup(
ItemGroup par2ItemGroup, NonNullList<ItemStack> itemList) {
if (!isInGroup(par2ItemGroup)) {
return;
}
ItemStack inactiveUncharged = new ItemStack(this);

View file

@ -26,7 +26,7 @@ package techreborn.items.tool.industrial;
import net.minecraft.block.state.IBlockState;
import net.minecraft.client.util.ITooltipFlag;
import net.minecraft.creativetab.CreativeTabs;
import net.minecraft.item.ItemGroup;
import net.minecraft.entity.EntityLivingBase;
import net.minecraft.entity.player.EntityPlayer;
import net.minecraft.init.Items;
@ -164,9 +164,9 @@ public class ItemOmniTool extends ItemPickaxe implements IEnergyItemInfo {
@OnlyIn(Dist.CLIENT)
@Override
public void getSubItems(
CreativeTabs par2CreativeTabs, NonNullList<ItemStack> itemList) {
if (!isInCreativeTab(par2CreativeTabs)) {
public void fillItemGroup(
ItemGroup par2ItemGroup, NonNullList<ItemStack> itemList) {
if (!isInGroup(par2ItemGroup)) {
return;
}
ItemStack uncharged = new ItemStack(TRContent.OMNI_TOOL);