Files

64 lines
2.4 KiB
Java

package net.paladrill.paladrillmod.item;
import net.paladrill.paladrillmod.creativetab.TabPalaDrillMod;
import net.paladrill.paladrillmod.ElementsPaladrillmodMod;
import net.minecraftforge.fml.relauncher.SideOnly;
import net.minecraftforge.fml.relauncher.Side;
import net.minecraftforge.fml.common.registry.GameRegistry;
import net.minecraftforge.common.util.EnumHelper;
import net.minecraftforge.client.model.ModelLoader;
import net.minecraftforge.client.event.ModelRegistryEvent;
import net.minecraft.item.ItemSword;
import net.minecraft.item.ItemStack;
import net.minecraft.item.Item;
import net.minecraft.inventory.EntityEquipmentSlot;
import net.minecraft.entity.ai.attributes.AttributeModifier;
import net.minecraft.entity.SharedMonsterAttributes;
import net.minecraft.client.renderer.block.model.ModelResourceLocation;
import java.util.Set;
import java.util.HashMap;
import com.google.common.collect.Multimap;
@ElementsPaladrillmodMod.ModElement.Tag
public class ItemAmethystSword extends ElementsPaladrillmodMod.ModElement {
@GameRegistry.ObjectHolder("paladrillmod:amethystsword")
public static final Item block = null;
public ItemAmethystSword(ElementsPaladrillmodMod instance) {
super(instance, 5);
}
@Override
public void initElements() {
elements.items.add(() -> new ItemSword(EnumHelper.addToolMaterial("AMETHYSTSWORD", 2, 1999, 6f, 2f, 12)) {
@Override
public Multimap<String, AttributeModifier> getItemAttributeModifiers(EntityEquipmentSlot slot) {
Multimap<String, AttributeModifier> multimap = super.getItemAttributeModifiers(slot);
if (slot == EntityEquipmentSlot.MAINHAND) {
multimap.put(SharedMonsterAttributes.ATTACK_DAMAGE.getName(),
new AttributeModifier(ATTACK_DAMAGE_MODIFIER, "Weapon modifier", (double) this.getAttackDamage(), 0));
multimap.put(SharedMonsterAttributes.ATTACK_SPEED.getName(),
new AttributeModifier(ATTACK_SPEED_MODIFIER, "Weapon modifier", -2.4, 0));
}
return multimap;
}
public Set<String> getToolClasses(ItemStack stack) {
HashMap<String, Integer> ret = new HashMap<String, Integer>();
ret.put("sword", 2);
return ret.keySet();
}
}.setUnlocalizedName("amethystsword").setRegistryName("amethystsword").setCreativeTab(TabPalaDrillMod.tab));
}
@SideOnly(Side.CLIENT)
@Override
public void registerModels(ModelRegistryEvent event) {
ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("paladrillmod:amethystsword", "inventory"));
}
}