You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

33 lines
1.6 KiB
Java

package azurelmao.examplemod;
import azurelmao.examplemod.mixin.helper.RenderPlayerInterface;
import net.minecraft.src.helper.DamageType;
import net.minecraft.src.material.ArmorMaterial;
import org.apache.commons.lang3.ArrayUtils;
public class ArmorHelper {
/**
* @param textureName name of the armor texture file.
* @param durability durability of your armor. Will be different than in-game due to how it gets allocated between armor pieces.
* @param combat combat damage reduction in percent. Can be more than 100.
* @param blast blast damage reduction in percent.
* @param fire fire damage reduction in percent.
* @param fall fall damage reduction in percent.
* @return the new ArmorMaterial.
*/
public static ArmorMaterial createArmorMaterial(String textureName, int durability, float combat, float blast, float fire, float fall) {
String[] armorFilenamePrefix = RenderPlayerInterface.getArmorFilenamePrefix();
armorFilenamePrefix = ArrayUtils.add(armorFilenamePrefix, textureName);
RenderPlayerInterface.setArmorFilenamePrefix(armorFilenamePrefix);
ArmorMaterial armorMaterial = new ArmorMaterial(textureName, armorFilenamePrefix.length - 1, durability);
ArmorMaterial.setProtectionValuePercent(armorMaterial, DamageType.COMBAT, combat);
ArmorMaterial.setProtectionValuePercent(armorMaterial, DamageType.BLAST, blast);
ArmorMaterial.setProtectionValuePercent(armorMaterial, DamageType.FIRE, fire);
ArmorMaterial.setProtectionValuePercent(armorMaterial, DamageType.FALL, fall);
return armorMaterial;
}
}