Guest User

OmArmorMaterial

a guest
Oct 14th, 2020
252
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.94 KB | None | 0 0
  1. package com.mirakapz.obsidianmod.armor;
  2.  
  3. import com.mirakapz.obsidianmod.ObsidianMod;
  4. import com.mirakapz.obsidianmod.util.RegistryHandler;
  5. import net.minecraft.client.audio.Sound;
  6. import net.minecraft.entity.player.PlayerEntity;
  7. import net.minecraft.inventory.EquipmentSlotType;
  8. import net.minecraft.item.IArmorMaterial;
  9. import net.minecraft.item.ItemStack;
  10. import net.minecraft.item.crafting.Ingredient;
  11. import net.minecraft.util.SoundEvent;
  12. import net.minecraft.util.SoundEvents;
  13. import net.minecraft.world.World;
  14. import net.minecraftforge.api.distmarker.Dist;
  15. import net.minecraftforge.api.distmarker.OnlyIn;
  16.  
  17. import java.rmi.registry.Registry;
  18. import java.util.function.Supplier;
  19.  
  20. public enum OmArmorMaterial implements IArmorMaterial {
  21.  
  22. OBDEF(ObsidianMod.MOD_ID + ":obingot", 45, new int[] { 6, 9, 10, 6 }, 18,
  23. SoundEvents.ITEM_ARMOR_EQUIP_GENERIC, 4.0F, () ->
  24. { return Ingredient.fromItems(RegistryHandler.OBINGOT.get()); }, 5);
  25.  
  26. //H, L, C, B.
  27. private static final int[] MAX_DAMAGE_ARRAY = new int[]{ 11, 16, 15, 13};
  28. private final String name;
  29. private final int maxDamageFactor;
  30. private final int[] damageReductionAmountArray;
  31. private final int enchantability;
  32. private final SoundEvent soundEvent;
  33. private final float toughness;
  34. private final Supplier<Ingredient> repairMaterial;
  35. private final float knockbackResistance;
  36.  
  37. OmArmorMaterial(String name, int maxDamageFactor, int[] damageReductionAmountArray, int enchantability,
  38. SoundEvent soundEvent, float toughness, Supplier<Ingredient> repairMaterial, float knockbackResistance) {
  39. this.name = name;
  40. this.maxDamageFactor = maxDamageFactor;
  41. this.damageReductionAmountArray = damageReductionAmountArray;
  42. this.enchantability = enchantability;
  43. this.soundEvent = soundEvent;
  44. this.toughness = toughness;
  45. this.repairMaterial = repairMaterial;
  46. this.knockbackResistance = knockbackResistance;
  47.  
  48. }
  49.  
  50. @Override
  51. public int getDurability(EquipmentSlotType slotIn) {
  52. return MAX_DAMAGE_ARRAY[slotIn.getIndex()] * this.maxDamageFactor;
  53. }
  54.  
  55. @Override
  56. public int getDamageReductionAmount(EquipmentSlotType slotIn) {
  57. return this.damageReductionAmountArray[slotIn.getIndex()];
  58. }
  59.  
  60. @Override
  61. public int getEnchantability() {
  62. return this.enchantability;
  63. }
  64.  
  65. @Override
  66. public SoundEvent getSoundEvent() {
  67. return this.soundEvent;
  68. }
  69.  
  70. @Override
  71. public Ingredient getRepairMaterial() {
  72. return this.repairMaterial.get();
  73. }
  74.  
  75. @Override
  76. public String getName() {
  77. return this.name;
  78. }
  79.  
  80. @Override
  81. public float getToughness() {
  82. return this.toughness;
  83. }
  84.  
  85. @Override
  86. public float func_230304_f_() {
  87. return this.knockbackResistance;
  88. }
  89. }
Advertisement
Add Comment
Please, Sign In to add comment