diff --git a/src/main/java/WayofTime/alchemicalWizardry/AlchemicalWizardry.java b/src/main/java/WayofTime/alchemicalWizardry/AlchemicalWizardry.java index 979de5f3..96842a23 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/AlchemicalWizardry.java +++ b/src/main/java/WayofTime/alchemicalWizardry/AlchemicalWizardry.java @@ -113,6 +113,7 @@ import WayofTime.alchemicalWizardry.common.items.armour.OmegaArmour; import WayofTime.alchemicalWizardry.common.items.sigil.SigilOfHolding; import WayofTime.alchemicalWizardry.common.items.thaumcraft.ItemSanguineArmour; import WayofTime.alchemicalWizardry.common.omega.OmegaParadigmEarth; +import WayofTime.alchemicalWizardry.common.omega.OmegaParadigmFire; import WayofTime.alchemicalWizardry.common.omega.OmegaParadigmWater; import WayofTime.alchemicalWizardry.common.omega.OmegaParadigmWind; import WayofTime.alchemicalWizardry.common.omega.OmegaRegistry; @@ -1419,6 +1420,8 @@ public class AlchemicalWizardry OmegaRegistry.registerParadigm(ReagentRegistry.aquasalusReagent, new OmegaParadigmWater((OmegaArmour)ModItems.boundHelmetWater, (OmegaArmour)ModItems.boundPlateWater, (OmegaArmour)ModItems.boundLeggingsWater, (OmegaArmour)ModItems.boundBootsWater)); OmegaRegistry.registerParadigm(ReagentRegistry.terraeReagent, new OmegaParadigmEarth((OmegaArmour)ModItems.boundHelmetEarth, (OmegaArmour)ModItems.boundPlateEarth, (OmegaArmour)ModItems.boundLeggingsEarth, (OmegaArmour)ModItems.boundBootsEarth)); OmegaRegistry.registerParadigm(ReagentRegistry.aetherReagent, new OmegaParadigmWind((OmegaArmour)ModItems.boundHelmetWind, (OmegaArmour)ModItems.boundPlateWind, (OmegaArmour)ModItems.boundLeggingsWind, (OmegaArmour)ModItems.boundBootsWind)); + OmegaRegistry.registerParadigm(ReagentRegistry.incendiumReagent, new OmegaParadigmFire((OmegaArmour)ModItems.boundHelmetFire, (OmegaArmour)ModItems.boundPlateFire, (OmegaArmour)ModItems.boundLeggingsFire, (OmegaArmour)ModItems.boundBootsFire)); + } public static void initDemonPacketRegistiry() diff --git a/src/main/java/WayofTime/alchemicalWizardry/ModItems.java b/src/main/java/WayofTime/alchemicalWizardry/ModItems.java index 7f4a0b19..9f3b3e94 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/ModItems.java +++ b/src/main/java/WayofTime/alchemicalWizardry/ModItems.java @@ -48,6 +48,7 @@ import WayofTime.alchemicalWizardry.common.items.TranscendentBloodOrb; import WayofTime.alchemicalWizardry.common.items.WaterScribeTool; import WayofTime.alchemicalWizardry.common.items.armour.BoundArmour; import WayofTime.alchemicalWizardry.common.items.armour.OmegaArmourEarth; +import WayofTime.alchemicalWizardry.common.items.armour.OmegaArmourFire; import WayofTime.alchemicalWizardry.common.items.armour.OmegaArmourWater; import WayofTime.alchemicalWizardry.common.items.armour.OmegaArmourWind; import WayofTime.alchemicalWizardry.common.items.energy.ItemAttunedCrystal; @@ -228,6 +229,11 @@ public class ModItems public static Item boundLeggingsWind; public static Item boundBootsWind; + public static Item boundHelmetFire; + public static Item boundPlateFire; + public static Item boundLeggingsFire; + public static Item boundBootsFire; + public static Item inputRoutingFocus; public static Item outputRoutingFocus; @@ -351,6 +357,11 @@ public class ModItems boundLeggingsWind = new OmegaArmourWind(2).setUnlocalizedName("boundLeggingsWind"); boundBootsWind = new OmegaArmourWind(3).setUnlocalizedName("boundBootsWind"); + boundHelmetFire = new OmegaArmourFire(0).setUnlocalizedName("boundHelmetFire"); + boundPlateFire = new OmegaArmourFire(1).setUnlocalizedName("boundPlateFire"); + boundLeggingsFire = new OmegaArmourFire(2).setUnlocalizedName("boundLeggingsFire"); + boundBootsFire = new OmegaArmourFire(3).setUnlocalizedName("boundBootsFire"); + inputRoutingFocus = new InputRoutingFocus().setUnlocalizedName("inputRoutingFocus"); outputRoutingFocus = new OutputRoutingFocus().setUnlocalizedName("outputRoutingFocus"); @@ -479,6 +490,11 @@ public class ModItems GameRegistry.registerItem(ModItems.boundLeggingsWind, "boundLeggingsWind"); GameRegistry.registerItem(ModItems.boundBootsWind, "boundBootsWind"); + GameRegistry.registerItem(ModItems.boundHelmetFire, "boundHelmetFire"); + GameRegistry.registerItem(ModItems.boundPlateFire, "boundPlateFire"); + GameRegistry.registerItem(ModItems.boundLeggingsFire, "boundLeggingsFire"); + GameRegistry.registerItem(ModItems.boundBootsFire, "boundBootsFire"); + GameRegistry.registerItem(ModItems.inputRoutingFocus, "inputRoutingFocus"); GameRegistry.registerItem(ModItems.outputRoutingFocus, "outputRoutingFocus"); diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/AlchemicalWizardryEventHooks.java b/src/main/java/WayofTime/alchemicalWizardry/common/AlchemicalWizardryEventHooks.java index 1b308e1d..966c7648 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/AlchemicalWizardryEventHooks.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/AlchemicalWizardryEventHooks.java @@ -127,7 +127,7 @@ public class AlchemicalWizardryEventHooks event.ammount = 0; }else { - event.ammount += hp / ratio; + event.ammount -= hp / ratio; Reagent reagent = APISpellHelper.getPlayerReagentType(player); OmegaParadigm paradigm = OmegaRegistry.getParadigmForReagent(reagent); if(paradigm != null) diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/items/armour/OmegaArmourFire.java b/src/main/java/WayofTime/alchemicalWizardry/common/items/armour/OmegaArmourFire.java new file mode 100644 index 00000000..8ac403d8 --- /dev/null +++ b/src/main/java/WayofTime/alchemicalWizardry/common/items/armour/OmegaArmourFire.java @@ -0,0 +1,77 @@ +package WayofTime.alchemicalWizardry.common.items.armour; + +import java.util.UUID; + +import net.minecraft.client.model.ModelBiped; +import net.minecraft.entity.Entity; +import net.minecraft.entity.SharedMonsterAttributes; +import net.minecraft.entity.ai.attributes.AttributeModifier; +import net.minecraft.item.ItemStack; +import WayofTime.alchemicalWizardry.common.renderer.model.ModelOmegaFire; + +import com.google.common.collect.HashMultimap; +import com.google.common.collect.Multimap; + +import cpw.mods.fml.relauncher.Side; +import cpw.mods.fml.relauncher.SideOnly; + +public class OmegaArmourFire extends OmegaArmour +{ + public OmegaArmourFire(int armorType) + { + super(armorType); + this.storeYLevel = true; + } + + @Override + public String getArmorTexture(ItemStack stack, Entity entity, int slot, String type) + { + return "alchemicalwizardry:models/armor/OmegaFire.png"; + } + + @Override + @SideOnly(Side.CLIENT) + public ModelBiped getChestModel() + { + return new ModelOmegaFire(1.0f, true, true, false, true); + } + + @Override + @SideOnly(Side.CLIENT) + public ModelBiped getLegsModel() + { + return new ModelOmegaFire(0.5f, false, false, true, false); + } + + @Override + public Multimap getAttributeModifiers(ItemStack stack) + { + Multimap map = HashMultimap.create(); + int yLevel = this.getYLevelStored(stack); + + map.put(SharedMonsterAttributes.maxHealth.getAttributeUnlocalizedName(), new AttributeModifier(new UUID(85212 /** Random number **/, armorType), "Armor modifier" + armorType, getDefaultHealthBoost()*getHealthBoostModifierForLevel(yLevel), 0)); + + return map; + } + + public float getDefaultHealthBoost() + { + switch(this.armorType) + { + case 0: + return 2.5f; + case 1: + return 4; + case 2: + return 3.5f; + case 3: + return 2; + } + return 0.25f; + } + + public float getHealthBoostModifierForLevel(int yLevel) + { + return (float)Math.sqrt(((float)yLevel)/64f) * 1.5f - 1; + } +} diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/omega/OmegaParadigmFire.java b/src/main/java/WayofTime/alchemicalWizardry/common/omega/OmegaParadigmFire.java new file mode 100644 index 00000000..097f38b3 --- /dev/null +++ b/src/main/java/WayofTime/alchemicalWizardry/common/omega/OmegaParadigmFire.java @@ -0,0 +1,46 @@ +package WayofTime.alchemicalWizardry.common.omega; + +import net.minecraft.entity.Entity; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.item.ItemStack; +import net.minecraft.world.World; +import WayofTime.alchemicalWizardry.api.alchemy.energy.ReagentRegistry; +import WayofTime.alchemicalWizardry.common.items.armour.OmegaArmour; + +public class OmegaParadigmFire extends OmegaParadigm +{ + public OmegaParadigmFire(OmegaArmour helmet, OmegaArmour chestPiece, OmegaArmour leggings, OmegaArmour boots) + { + super(ReagentRegistry.incendiumReagent, helmet, chestPiece, leggings, boots, new ReagentRegenConfiguration(50, 10, 100)); + } + + @Override + public float getCostPerTickOfUse(EntityPlayer player) + { + if(player.isAirBorne) + { + return 0.5f; + }else + { + return 1; + } + } + + @Override + public void onUpdate(World world, EntityPlayer player, ItemStack stack) + { + + } + + @Override + public boolean getBlockEffectWhileInside(Entity entity, int x, int y, int z) + { + return true; + } + + @Override + public void onOmegaKeyPressed(EntityPlayer player, ItemStack stack) + { + + } +} diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/renderer/model/ModelOmegaFire.java b/src/main/java/WayofTime/alchemicalWizardry/common/renderer/model/ModelOmegaFire.java new file mode 100644 index 00000000..2d8a2c79 --- /dev/null +++ b/src/main/java/WayofTime/alchemicalWizardry/common/renderer/model/ModelOmegaFire.java @@ -0,0 +1,434 @@ +package WayofTime.alchemicalWizardry.common.renderer.model; + +import net.minecraft.client.model.ModelBiped; +import net.minecraft.client.model.ModelRenderer; +import net.minecraft.entity.Entity; + +/** + * OmegaFire - WayofTime + * Created using Tabula 4.1.0 + */ +public class ModelOmegaFire extends ModelBiped +{ + public ModelRenderer facePlate1; + public ModelRenderer facePlate2; + public ModelRenderer facePlate3; + public ModelRenderer facePlate4; + public ModelRenderer facePlate5; + public ModelRenderer facePlate6; + public ModelRenderer facePlate7; + public ModelRenderer topPlate; + public ModelRenderer facePlate8; + public ModelRenderer backPlate; + public ModelRenderer chestMain; + public ModelRenderer bodyPlate1; + public ModelRenderer bodyPlate2; + public ModelRenderer bodyPlate3; + public ModelRenderer bodyPlate5; + public ModelRenderer bodyPlate4; + public ModelRenderer belt; + public ModelRenderer bodyPlate6; + public ModelRenderer omegaPlate; + public ModelRenderer rightSpacer1; + public ModelRenderer leftSpacer1; + public ModelRenderer rightShoulder; + public ModelRenderer rightArm; + public ModelRenderer rightArmPlate7; + public ModelRenderer rightArmPlate1; + public ModelRenderer rightArmPlate2; + public ModelRenderer rightArmPlate3; + public ModelRenderer rightArmPlate4; + public ModelRenderer rightArmPlate5; + public ModelRenderer rightArmPlate6; + public ModelRenderer leftShoulder; + public ModelRenderer leftArm; + public ModelRenderer leftArmPlate1; + public ModelRenderer leftArmPlate2; + public ModelRenderer leftArmPlate3; + public ModelRenderer leftArmPlate5; + public ModelRenderer leftArmPlate4; + public ModelRenderer leftArmPlate6; + public ModelRenderer leftArmPlate7; + public ModelRenderer leftLeg; + public ModelRenderer leftLegPlate1; + public ModelRenderer leftLegPlate2; + public ModelRenderer leftLegPlate3; + public ModelRenderer leftLegPlate4; + public ModelRenderer leftLegPlate5; + public ModelRenderer leftLegPlate6; + public ModelRenderer leftLegPlate7; + public ModelRenderer leftBoot1; + public ModelRenderer leftBoot2; + public ModelRenderer leftBoot3; + public ModelRenderer rightLeg; + public ModelRenderer rightLegPlate1; + public ModelRenderer rightLegPlate1_1; + public ModelRenderer rightLegPlate3; + public ModelRenderer rightLegPlate4; + public ModelRenderer rightLegPlate5; + public ModelRenderer rightLegPlate6; + public ModelRenderer rightLegPlate7; + public ModelRenderer rightBoot1; + public ModelRenderer rightBoot2; + public ModelRenderer rightBoot3; + + public ModelOmegaFire(float f, boolean addHelmet, boolean addChestPiece, boolean addLeggings, boolean addBoots) + { + super(f, 0.0f, 128, 128); + this.textureWidth = 128; + this.textureHeight = 128; + this.bodyPlate5 = new ModelRenderer(this, 29, 33); + this.bodyPlate5.setRotationPoint(0.0F, 3.0F, 0.0F); + this.bodyPlate5.addBox(-0.9F, 1.4F, -3.3F, 5, 2, 1, 0.0F); + this.setRotateAngle(bodyPlate5, -0.3490658503988659F, -0.22689280275926282F, 0.0F); + this.facePlate2 = new ModelRenderer(this, 24, 89); + this.facePlate2.setRotationPoint(0.0F, 0.0F, 0.0F); + this.facePlate2.addBox(-1.0F, -4.5F, -5.0F, 2, 2, 1, 0.0F); + this.leftArmPlate5 = new ModelRenderer(this, 16, 54); + this.leftArmPlate5.setRotationPoint(0.0F, 3.4F, 0.0F); + this.leftArmPlate5.addBox(5.3F, -2.0F, -2.5F, 1, 3, 4, 0.0F); + this.setRotateAngle(leftArmPlate5, 0.0F, 0.22689280275926282F, -0.3490658503988659F); + this.leftArmPlate6 = new ModelRenderer(this, 16, 62); + this.leftArmPlate6.setRotationPoint(0.0F, 3.4F, 0.0F); + this.leftArmPlate6.addBox(5.3F, -2.0F, -1.5F, 1, 3, 4, 0.0F); + this.setRotateAngle(leftArmPlate6, 0.0F, -0.22689280275926282F, -0.3490658503988659F); + this.facePlate8 = new ModelRenderer(this, 27, 104); + this.facePlate8.mirror = true; + this.facePlate8.setRotationPoint(0.0F, 0.0F, 0.0F); + this.facePlate8.addBox(-4.4F, -8.0F, -3.6F, 1, 8, 9, 0.0F); + this.setRotateAngle(facePlate8, 0.0F, -0.10471975511965977F, 0.0F); + this.leftArmPlate7 = new ModelRenderer(this, 29, 73); + this.leftArmPlate7.setRotationPoint(0.0F, 0.0F, 0.0F); + this.leftArmPlate7.addBox(0.0F, -3.5F, -3.5F, 3, 4, 7, 0.0F); + this.leftArm = new ModelRenderer(this, 29, 49); + this.leftArm.setRotationPoint(0.0F, 0.0F, 0.0F); + this.leftArm.addBox(-1.0F, 2.0F, -2.5F, 5, 9, 5, 0.0F); + this.rightShoulder = new ModelRenderer(this, 29, 37); + this.rightShoulder.mirror = true; + this.rightShoulder.setRotationPoint(0.0F, 0.0F, 0.0F); + this.rightShoulder.addBox(-5.0F, -3.0F, -3.0F, 6, 5, 6, 0.0F); + this.rightArmPlate6 = new ModelRenderer(this, 16, 62); + this.rightArmPlate6.setRotationPoint(0.0F, 3.4F, 0.0F); + this.rightArmPlate6.addBox(-6.3F, -2.0F, -1.5F, 1, 3, 4, 0.0F); + this.setRotateAngle(rightArmPlate6, 0.0F, 0.22689280275926282F, 0.3490658503988659F); + this.leftSpacer1 = new ModelRenderer(this, 11, 54); + this.leftSpacer1.setRotationPoint(0.0F, 0.0F, 0.0F); + this.leftSpacer1.addBox(2.5F, 6.3F, -3.0F, 1, 4, 1, 0.0F); + this.omegaPlate = new ModelRenderer(this, 0, 54); + this.omegaPlate.setRotationPoint(0.0F, 0.0F, 0.0F); + this.omegaPlate.addBox(-2.0F, 5.3F, -3.5F, 4, 4, 1, 0.0F); + this.bodyPlate2 = new ModelRenderer(this, 29, 33); + this.bodyPlate2.setRotationPoint(0.0F, 1.5F, 0.0F); + this.bodyPlate2.addBox(-0.9F, 1.4F, -3.5F, 5, 2, 1, 0.0F); + this.setRotateAngle(bodyPlate2, -0.3490658503988659F, -0.22689280275926282F, 0.0F); + this.rightLeg = new ModelRenderer(this, 0, 70); + this.rightLeg.setRotationPoint(0.0F, 0.0F, 0.0F); + this.rightLeg.addBox(-2.5F, 0.0F, -2.5F, 5, 10, 5, 0.0F); + this.leftArmPlate2 = new ModelRenderer(this, 16, 62); + this.leftArmPlate2.setRotationPoint(0.0F, 0.0F, 0.0F); + this.leftArmPlate2.addBox(5.3F, -2.0F, -1.5F, 1, 3, 4, 0.0F); + this.setRotateAngle(leftArmPlate2, 0.0F, -0.22689280275926282F, -0.3490658503988659F); + this.rightLegPlate3 = new ModelRenderer(this, 0, 86); + this.rightLegPlate3.mirror = true; + this.rightLegPlate3.setRotationPoint(0.0F, 4.6F, 0.0F); + this.rightLegPlate3.addBox(-2.4F, 1.6F, -2.7F, 5, 3, 1, 0.0F); + this.setRotateAngle(rightLegPlate3, -0.20943951023931953F, 0.1832595714594046F, 0.0F); + this.leftLegPlate5 = new ModelRenderer(this, 0, 91); + this.leftLegPlate5.setRotationPoint(0.0F, 0.0F, 0.0F); + this.leftLegPlate5.addBox(-2.6F, 1.6F, 1.7F, 5, 3, 1, 0.0F); + this.setRotateAngle(leftLegPlate5, 0.20943951023931953F, 0.1832595714594046F, 0.0F); + this.leftLegPlate2 = new ModelRenderer(this, 0, 86); + this.leftLegPlate2.setRotationPoint(0.0F, 2.3F, 0.0F); + this.leftLegPlate2.addBox(-2.6F, 1.6F, -2.7F, 5, 3, 1, 0.0F); + this.setRotateAngle(leftLegPlate2, -0.20943951023931953F, -0.1832595714594046F, 0.0F); + this.rightSpacer1 = new ModelRenderer(this, 11, 54); + this.rightSpacer1.mirror = true; + this.rightSpacer1.setRotationPoint(0.0F, 0.0F, 0.0F); + this.rightSpacer1.addBox(-3.5F, 6.3F, -3.0F, 1, 4, 1, 0.0F); + this.rightArmPlate2 = new ModelRenderer(this, 16, 62); + this.rightArmPlate2.setRotationPoint(0.0F, 0.0F, 0.0F); + this.rightArmPlate2.addBox(-6.3F, -2.0F, -1.5F, 1, 3, 4, 0.0F); + this.setRotateAngle(rightArmPlate2, 0.0F, 0.22689280275926282F, 0.3490658503988659F); + this.rightArmPlate3 = new ModelRenderer(this, 16, 54); + this.rightArmPlate3.setRotationPoint(0.0F, 1.7F, 0.0F); + this.rightArmPlate3.addBox(-6.3F, -2.0F, -2.5F, 1, 3, 4, 0.0F); + this.setRotateAngle(rightArmPlate3, 0.0F, -0.22689280275926282F, 0.3490658503988659F); + this.topPlate = new ModelRenderer(this, 37, 89); + this.topPlate.setRotationPoint(0.0F, 0.0F, 0.0F); + this.topPlate.addBox(-4.0F, -8.2F, -3.6F, 8, 1, 8, 0.0F); + this.setRotateAngle(topPlate, 0.05235987755982988F, -0.0F, 0.0F); + this.leftBoot1 = new ModelRenderer(this, 0, 99); + this.leftBoot1.setRotationPoint(0.0F, 0.0F, 0.0F); + this.leftBoot1.addBox(-2.0F, 9.5F, -5.0F, 5, 3, 8, 0.0F); + this.leftArmPlate1 = new ModelRenderer(this, 16, 54); + this.leftArmPlate1.setRotationPoint(0.0F, 0.0F, 0.0F); + this.leftArmPlate1.addBox(5.3F, -2.0F, -2.5F, 1, 3, 4, 0.0F); + this.setRotateAngle(leftArmPlate1, 0.0F, 0.22689280275926282F, -0.3490658503988659F); + this.rightLegPlate1_1 = new ModelRenderer(this, 0, 86); + this.rightLegPlate1_1.mirror = true; + this.rightLegPlate1_1.setRotationPoint(0.0F, 2.3F, 0.0F); + this.rightLegPlate1_1.addBox(-2.4F, 1.6F, -2.7F, 5, 3, 1, 0.0F); + this.setRotateAngle(rightLegPlate1_1, -0.20943951023931953F, 0.1832595714594046F, 0.0F); + this.bodyPlate4 = new ModelRenderer(this, 29, 33); + this.bodyPlate4.mirror = true; + this.bodyPlate4.setRotationPoint(0.0F, 1.5F, 0.0F); + this.bodyPlate4.addBox(-4.1F, 1.4F, -3.5F, 5, 2, 1, 0.0F); + this.setRotateAngle(bodyPlate4, -0.3490658503988659F, 0.22689280275926282F, 0.0F); + this.leftLegPlate3 = new ModelRenderer(this, 0, 86); + this.leftLegPlate3.setRotationPoint(0.0F, 4.6F, 0.0F); + this.leftLegPlate3.addBox(-2.6F, 1.6F, -2.7F, 5, 3, 1, 0.0F); + this.setRotateAngle(leftLegPlate3, -0.20943951023931953F, -0.1832595714594046F, 0.0F); + this.chestMain = new ModelRenderer(this, 0, 33); + this.chestMain.setRotationPoint(0.0F, 0.0F, 0.0F); + this.chestMain.addBox(-4.5F, -0.01F, -2.5F, 9, 13, 5, 0.0F); + this.rightArmPlate5 = new ModelRenderer(this, 16, 54); + this.rightArmPlate5.setRotationPoint(0.0F, 3.4F, 0.0F); + this.rightArmPlate5.addBox(-6.3F, -2.0F, -2.5F, 1, 3, 4, 0.0F); + this.setRotateAngle(rightArmPlate5, 0.0F, -0.22689280275926282F, 0.3490658503988659F); + this.rightArm = new ModelRenderer(this, 29, 49); + this.rightArm.mirror = true; + this.rightArm.setRotationPoint(0.0F, 0.0F, 0.0F); + this.rightArm.addBox(-4.0F, 2.0F, -2.5F, 5, 9, 5, 0.0F); + this.bodyPlate1 = new ModelRenderer(this, 29, 33); + this.bodyPlate1.setRotationPoint(0.0F, 0.0F, 0.0F); + this.bodyPlate1.addBox(-0.9F, 1.4F, -3.7F, 5, 2, 1, 0.0F); + this.setRotateAngle(bodyPlate1, -0.3490658503988659F, -0.22689280275926282F, 0.0F); + this.facePlate3 = new ModelRenderer(this, 24, 93); + this.facePlate3.setRotationPoint(0.0F, 0.5F, 0.0F); + this.facePlate3.addBox(-2.0F, -3.5F, -5.5F, 5, 3, 1, 0.0F); + this.setRotateAngle(facePlate3, 0.05235987755982988F, -0.3490658503988659F, 0.0F); + this.facePlate1 = new ModelRenderer(this, 24, 85); + this.facePlate1.setRotationPoint(0.0F, 0.0F, 0.0F); + this.facePlate1.addBox(-4.0F, -4.5F, -4.5F, 8, 2, 1, 0.0F); + this.facePlate6 = new ModelRenderer(this, 24, 98); + this.facePlate6.mirror = true; + this.facePlate6.setRotationPoint(0.0F, 0.5F, 0.0F); + this.facePlate6.addBox(-2.9F, -8.7F, -6.0F, 5, 4, 1, 0.0F); + this.setRotateAngle(facePlate6, -0.05235987755982988F, 0.3490658503988659F, 0.0F); + this.rightLegPlate6 = new ModelRenderer(this, 0, 91); + this.rightLegPlate6.mirror = true; + this.rightLegPlate6.setRotationPoint(0.0F, 2.3F, 0.0F); + this.rightLegPlate6.addBox(-2.4F, 1.6F, 1.7F, 5, 3, 1, 0.0F); + this.setRotateAngle(rightLegPlate6, 0.20943951023931953F, -0.1832595714594046F, 0.0F); + this.leftShoulder = new ModelRenderer(this, 29, 37); + this.leftShoulder.setRotationPoint(0.0F, 0.0F, 0.0F); + this.leftShoulder.addBox(-1.0F, -3.0F, -3.0F, 6, 5, 6, 0.0F); + this.rightBoot1 = new ModelRenderer(this, 0, 99); + this.rightBoot1.mirror = true; + this.rightBoot1.setRotationPoint(0.0F, 0.0F, 0.0F); + this.rightBoot1.addBox(-3.0F, 9.5F, -5.0F, 5, 3, 8, 0.0F); + this.leftLegPlate4 = new ModelRenderer(this, 13, 86); + this.leftLegPlate4.setRotationPoint(0.0F, 0.0F, 0.0F); + this.leftLegPlate4.addBox(2.0F, 1.1F, -2.0F, 1, 8, 4, 0.0F); + this.setRotateAngle(leftLegPlate4, 0.0F, 0.0F, -0.08726646259971647F); + this.rightBoot2 = new ModelRenderer(this, 0, 111); + this.rightBoot2.mirror = true; + this.rightBoot2.setRotationPoint(0.0F, 0.0F, 0.0F); + this.rightBoot2.addBox(-3.0F, 8.5F, -3.0F, 5, 1, 6, 0.0F); + this.leftArmPlate3 = new ModelRenderer(this, 16, 54); + this.leftArmPlate3.setRotationPoint(0.0F, 1.7F, 0.0F); + this.leftArmPlate3.addBox(5.3F, -2.0F, -2.5F, 1, 3, 4, 0.0F); + this.setRotateAngle(leftArmPlate3, 0.0F, 0.22689280275926282F, -0.3490658503988659F); + this.rightLegPlate4 = new ModelRenderer(this, 13, 86); + this.rightLegPlate4.mirror = true; + this.rightLegPlate4.setRotationPoint(0.0F, 0.0F, 0.0F); + this.rightLegPlate4.addBox(-3.0F, 1.1F, -2.0F, 1, 8, 4, 0.0F); + this.setRotateAngle(rightLegPlate4, 0.0F, 0.0F, 0.08726646259971647F); + this.leftLegPlate7 = new ModelRenderer(this, 0, 91); + this.leftLegPlate7.setRotationPoint(0.0F, 4.6F, 0.0F); + this.leftLegPlate7.addBox(-2.6F, 1.6F, 1.7F, 5, 3, 1, 0.0F); + this.setRotateAngle(leftLegPlate7, 0.20943951023931953F, 0.1832595714594046F, 0.0F); + this.bodyPlate6 = new ModelRenderer(this, 29, 33); + this.bodyPlate6.mirror = true; + this.bodyPlate6.setRotationPoint(0.0F, 3.0F, 0.0F); + this.bodyPlate6.addBox(-4.1F, 1.4F, -3.3F, 5, 2, 1, 0.0F); + this.setRotateAngle(bodyPlate6, -0.3490658503988659F, 0.22689280275926282F, 0.0F); + this.facePlate5 = new ModelRenderer(this, 24, 98); + this.facePlate5.setRotationPoint(0.0F, 0.5F, 0.0F); + this.facePlate5.addBox(-2.0F, -8.7F, -6.0F, 5, 4, 1, 0.0F); + this.setRotateAngle(facePlate5, -0.05235987755982988F, -0.3490658503988659F, 0.0F); + this.backPlate = new ModelRenderer(this, 48, 99); + this.backPlate.setRotationPoint(0.0F, 0.0F, 0.0F); + this.backPlate.addBox(-4.0F, -7.8F, 3.6F, 8, 8, 1, 0.0F); + this.setRotateAngle(backPlate, 0.05235987755982988F, -0.0F, 0.0F); + this.rightBoot3 = new ModelRenderer(this, 0, 119); + this.rightBoot3.mirror = true; + this.rightBoot3.setRotationPoint(0.0F, 0.0F, 0.0F); + this.rightBoot3.addBox(-3.0F, 9.0F, -2.5F, 1, 2, 7, 0.0F); + this.setRotateAngle(rightBoot3, 0.0F, 0.0F, 0.08726646259971647F); + this.leftLeg = new ModelRenderer(this, 0, 70); + this.leftLeg.setRotationPoint(0.0F, 0.0F, 0.0F); + this.leftLeg.addBox(-2.5F, 0.0F, -2.5F, 5, 10, 5, 0.0F); + this.bodyPlate3 = new ModelRenderer(this, 29, 33); + this.bodyPlate3.mirror = true; + this.bodyPlate3.setRotationPoint(0.0F, 0.0F, 0.0F); + this.bodyPlate3.addBox(-4.1F, 1.4F, -3.7F, 5, 2, 1, 0.0F); + this.setRotateAngle(bodyPlate3, -0.3490658503988659F, 0.22689280275926282F, 0.0F); + this.facePlate4 = new ModelRenderer(this, 24, 93); + this.facePlate4.mirror = true; + this.facePlate4.setRotationPoint(0.0F, 0.5F, 0.0F); + this.facePlate4.addBox(-3.0F, -3.5F, -5.5F, 5, 3, 1, 0.0F); + this.setRotateAngle(facePlate4, 0.05235987755982988F, 0.3490658503988659F, 0.0F); + this.rightArmPlate4 = new ModelRenderer(this, 16, 62); + this.rightArmPlate4.setRotationPoint(0.0F, 1.7F, 0.0F); + this.rightArmPlate4.addBox(-6.3F, -2.0F, -1.5F, 1, 3, 4, 0.0F); + this.setRotateAngle(rightArmPlate4, 0.0F, 0.22689280275926282F, 0.3490658503988659F); + this.leftLegPlate1 = new ModelRenderer(this, 0, 86); + this.leftLegPlate1.setRotationPoint(0.0F, 0.0F, 0.0F); + this.leftLegPlate1.addBox(-2.6F, 1.6F, -2.7F, 5, 3, 1, 0.0F); + this.setRotateAngle(leftLegPlate1, -0.20943951023931953F, -0.1832595714594046F, 0.0F); + this.rightLegPlate7 = new ModelRenderer(this, 0, 91); + this.rightLegPlate7.mirror = true; + this.rightLegPlate7.setRotationPoint(0.0F, 4.6F, 0.0F); + this.rightLegPlate7.addBox(-2.4F, 1.6F, 1.7F, 5, 3, 1, 0.0F); + this.setRotateAngle(rightLegPlate7, 0.20943951023931953F, -0.1832595714594046F, 0.0F); + this.rightLegPlate1 = new ModelRenderer(this, 0, 86); + this.rightLegPlate1.mirror = true; + this.rightLegPlate1.setRotationPoint(0.0F, 0.0F, 0.0F); + this.rightLegPlate1.addBox(-2.4F, 1.6F, -2.7F, 5, 3, 1, 0.0F); + this.setRotateAngle(rightLegPlate1, -0.20943951023931953F, 0.1832595714594046F, 0.0F); + this.belt = new ModelRenderer(this, 29, 64); + this.belt.setRotationPoint(0.0F, 0.0F, 0.0F); + this.belt.addBox(-5.0F, 11.0F, -3.0F, 10, 2, 6, 0.0F); + this.rightLegPlate5 = new ModelRenderer(this, 0, 91); + this.rightLegPlate5.mirror = true; + this.rightLegPlate5.setRotationPoint(0.0F, 0.0F, 0.0F); + this.rightLegPlate5.addBox(-2.4F, 1.6F, 1.7F, 5, 3, 1, 0.0F); + this.setRotateAngle(rightLegPlate5, 0.20943951023931953F, -0.1832595714594046F, 0.0F); + this.leftBoot3 = new ModelRenderer(this, 0, 119); + this.leftBoot3.setRotationPoint(0.0F, 0.0F, 0.0F); + this.leftBoot3.addBox(2.0F, 9.0F, -2.5F, 1, 2, 7, 0.0F); + this.setRotateAngle(leftBoot3, 0.0F, 0.0F, -0.08726646259971647F); + this.leftBoot2 = new ModelRenderer(this, 0, 111); + this.leftBoot2.setRotationPoint(0.0F, 0.0F, 0.0F); + this.leftBoot2.addBox(-2.0F, 8.5F, -3.0F, 5, 1, 6, 0.0F); + this.leftLegPlate6 = new ModelRenderer(this, 0, 91); + this.leftLegPlate6.setRotationPoint(0.0F, 2.3F, 0.0F); + this.leftLegPlate6.addBox(-2.6F, 1.6F, 1.7F, 5, 3, 1, 0.0F); + this.setRotateAngle(leftLegPlate6, 0.20943951023931953F, 0.1832595714594046F, 0.0F); + this.rightArmPlate7 = new ModelRenderer(this, 29, 73); + this.rightArmPlate7.mirror = true; + this.rightArmPlate7.setRotationPoint(0.0F, 0.0F, 0.0F); + this.rightArmPlate7.addBox(-3.0F, -3.5F, -3.5F, 3, 4, 7, 0.0F); + this.rightArmPlate1 = new ModelRenderer(this, 16, 54); + this.rightArmPlate1.setRotationPoint(0.0F, 0.0F, 0.0F); + this.rightArmPlate1.addBox(-6.3F, -2.0F, -2.5F, 1, 3, 4, 0.0F); + this.setRotateAngle(rightArmPlate1, 0.0F, -0.22689280275926282F, 0.3490658503988659F); + this.leftArmPlate4 = new ModelRenderer(this, 16, 62); + this.leftArmPlate4.setRotationPoint(0.0F, 1.7F, 0.0F); + this.leftArmPlate4.addBox(5.3F, -2.0F, -1.5F, 1, 3, 4, 0.0F); + this.setRotateAngle(leftArmPlate4, 0.0F, -0.22689280275926282F, -0.3490658503988659F); + this.facePlate7 = new ModelRenderer(this, 27, 104); + this.facePlate7.setRotationPoint(0.0F, 0.0F, 0.0F); + this.facePlate7.addBox(3.4F, -8.0F, -3.6F, 1, 8, 9, 0.0F); + this.setRotateAngle(facePlate7, 0.0F, 0.10471975511965977F, 0.0F); + + this.bipedBody.cubeList.clear(); + this.bipedHead.cubeList.clear(); + this.bipedHeadwear.cubeList.clear(); + this.bipedLeftArm.cubeList.clear(); + this.bipedLeftLeg.cubeList.clear(); + this.bipedRightArm.cubeList.clear(); + this.bipedRightLeg.cubeList.clear(); + + if(addChestPiece) + { + this.bipedBody.addChild(this.bodyPlate5); + this.bipedBody.addChild(this.leftSpacer1); + this.bipedBody.addChild(this.bodyPlate2); + this.bipedBody.addChild(this.omegaPlate); + this.bipedLeftArm.addChild(this.leftArmPlate5); + this.bipedLeftArm.addChild(this.leftArmPlate6); + this.bipedLeftArm.addChild(this.leftArmPlate7); + this.bipedLeftArm.addChild(this.leftArm); + this.bipedRightArm.addChild(this.rightShoulder); + this.bipedRightArm.addChild(this.rightArmPlate6); + this.bipedLeftArm.addChild(this.leftArmPlate2); + this.bipedLeftArm.addChild(this.leftArmPlate1); + this.bipedRightArm.addChild(this.rightArmPlate2); + this.bipedRightArm.addChild(this.rightArmPlate3); + this.bipedRightArm.addChild(this.rightArmPlate5); + this.bipedRightArm.addChild(this.rightArm); + this.bipedLeftArm.addChild(this.leftShoulder); + this.bipedLeftArm.addChild(this.leftArmPlate3); + this.bipedRightArm.addChild(this.rightArmPlate5); + this.bipedRightArm.addChild(this.rightArmPlate7); + this.bipedRightArm.addChild(this.rightArmPlate1); + this.bipedLeftArm.addChild(this.leftArmPlate4); + this.bipedRightArm.addChild(this.rightArmPlate4); + this.bipedBody.addChild(this.bodyPlate6); + this.bipedBody.addChild(this.rightSpacer1); + this.bipedBody.addChild(this.bodyPlate1); + this.bipedBody.addChild(this.bodyPlate4); + this.bipedBody.addChild(this.bodyPlate3); + this.bipedBody.addChild(this.chestMain); + } + + if(addLeggings) + { + this.bipedBody.addChild(this.belt); + this.bipedRightLeg.addChild(this.rightLeg); + this.bipedRightLeg.addChild(this.rightLegPlate3); + this.bipedLeftLeg.addChild(this.leftLegPlate5); + this.bipedLeftLeg.addChild(this.leftLegPlate2); + this.bipedRightLeg.addChild(this.rightLegPlate6); + this.bipedLeftLeg.addChild(this.leftLegPlate4); + this.bipedLeftLeg.addChild(this.leftLegPlate7); + this.bipedRightLeg.addChild(this.rightLegPlate4); + this.bipedRightLeg.addChild(this.rightLegPlate1_1); + this.bipedLeftLeg.addChild(this.leftLegPlate6); + this.bipedLeftLeg.addChild(this.leftLegPlate3); + this.bipedLeftLeg.addChild(this.leftLeg); + this.bipedRightLeg.addChild(this.rightLegPlate7); + this.bipedRightLeg.addChild(this.rightLegPlate1); + this.bipedRightLeg.addChild(this.rightLegPlate5); + this.bipedLeftLeg.addChild(this.leftLegPlate1); + } + + if(addBoots) + { + this.bipedLeftLeg.addChild(this.leftBoot1); + this.bipedRightLeg.addChild(this.rightBoot1); + this.bipedRightLeg.addChild(this.rightBoot2); + this.bipedLeftLeg.addChild(this.leftBoot3); + this.bipedLeftLeg.addChild(this.leftBoot2); + this.bipedRightLeg.addChild(this.rightBoot3); + } + + if(addHelmet) + { + this.bipedHead.addChild(this.facePlate3); + this.bipedHead.addChild(this.facePlate1); + this.bipedHead.addChild(this.facePlate6); + this.bipedHead.addChild(this.facePlate2); + this.bipedHead.addChild(this.facePlate8); + this.bipedHead.addChild(this.topPlate); + this.bipedHead.addChild(this.facePlate5); + this.bipedHead.addChild(this.backPlate); + this.bipedHead.addChild(this.facePlate4); + this.bipedHead.addChild(this.facePlate7); + } + } + + @Override + public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) + { + setRotationAngles(f, f1, f2, f3, f4, f5, entity); + this.bipedRightLeg.render(f5); + this.bipedRightArm.render(f5); + this.bipedLeftArm.render(f5); + this.bipedBody.render(f5); + this.bipedHead.render(f5); + this.bipedLeftLeg.render(f5); + } + + /** + * This is a helper function from Tabula to set the rotation of model parts + */ + public void setRotateAngle(ModelRenderer modelRenderer, float x, float y, float z) + { + modelRenderer.rotateAngleX = x; + modelRenderer.rotateAngleY = y; + modelRenderer.rotateAngleZ = z; + } +} diff --git a/src/main/java/WayofTime/alchemicalWizardry/common/spell/simple/SpellWindGust.java b/src/main/java/WayofTime/alchemicalWizardry/common/spell/simple/SpellWindGust.java index 506ffc74..185d16d9 100644 --- a/src/main/java/WayofTime/alchemicalWizardry/common/spell/simple/SpellWindGust.java +++ b/src/main/java/WayofTime/alchemicalWizardry/common/spell/simple/SpellWindGust.java @@ -27,7 +27,7 @@ public class SpellWindGust extends HomSpell @Override public ItemStack onOffensiveRangedRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer) { - if (EnergyItems.checkAndSetItemOwner(par1ItemStack, par3EntityPlayer) || par3EntityPlayer.isSneaking()) + if (!EnergyItems.checkAndSetItemOwner(par1ItemStack, par3EntityPlayer) || par3EntityPlayer.isSneaking()) { return par1ItemStack; } @@ -50,7 +50,7 @@ public class SpellWindGust extends HomSpell @Override public ItemStack onOffensiveMeleeRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer) { - if (EnergyItems.checkAndSetItemOwner(par1ItemStack, par3EntityPlayer) || par3EntityPlayer.isSneaking()) + if (!EnergyItems.checkAndSetItemOwner(par1ItemStack, par3EntityPlayer) || par3EntityPlayer.isSneaking()) { return par1ItemStack; } @@ -97,7 +97,7 @@ public class SpellWindGust extends HomSpell @Override public ItemStack onDefensiveRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer) { - if (EnergyItems.checkAndSetItemOwner(par1ItemStack, par3EntityPlayer) || par3EntityPlayer.isSneaking()) + if (!EnergyItems.checkAndSetItemOwner(par1ItemStack, par3EntityPlayer) || par3EntityPlayer.isSneaking()) { return par1ItemStack; } @@ -106,7 +106,7 @@ public class SpellWindGust extends HomSpell { EnergyItems.syphonAndDamageWhileInContainer(par1ItemStack, par3EntityPlayer, this.getDefensiveEnergy()); } - + int distance = 3; double yaw = par3EntityPlayer.rotationYaw / 180 * Math.PI; double pitch = par3EntityPlayer.rotationPitch / 180 * Math.PI; @@ -136,7 +136,7 @@ public class SpellWindGust extends HomSpell @Override public ItemStack onEnvironmentalRightClick(ItemStack par1ItemStack, World par2World, EntityPlayer par3EntityPlayer) { - if (EnergyItems.checkAndSetItemOwner(par1ItemStack, par3EntityPlayer) || par3EntityPlayer.isSneaking()) + if (!EnergyItems.checkAndSetItemOwner(par1ItemStack, par3EntityPlayer) || par3EntityPlayer.isSneaking()) { return par1ItemStack; } diff --git a/src/main/resources/assets/alchemicalwizardry/models/armor/OmegaFire.png b/src/main/resources/assets/alchemicalwizardry/models/armor/OmegaFire.png new file mode 100644 index 00000000..deb57fec Binary files /dev/null and b/src/main/resources/assets/alchemicalwizardry/models/armor/OmegaFire.png differ