Created
September 27, 2017 11:02
-
-
Save triphion/4af874e79e118bb4d3ae3cc83bbbe64a to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package com.triphion.ancient.client.model; | |
import com.triphion.ancient.entity.EntityHarog; | |
import net.minecraft.client.model.ModelBiped; | |
import net.minecraft.entity.Entity; | |
import net.minecraft.entity.monster.EntityZombie; | |
import net.minecraft.util.math.MathHelper; | |
import net.minecraftforge.fml.relauncher.Side; | |
import net.minecraftforge.fml.relauncher.SideOnly; | |
@SideOnly(Side.CLIENT) | |
public class ModelHarog extends ModelBiped | |
{ | |
public ModelHarog() | |
{ | |
this(0.0F, false); | |
} | |
public ModelHarog(float modelSize, boolean p_i1168_2_) | |
{ | |
super(modelSize, 0.0F, 64, p_i1168_2_ ? 32 : 64); | |
} | |
/** | |
* Sets the model's various rotation angles. For bipeds, par1 and par2 are used for animating the movement of arms | |
* and legs, where par1 represents the time(so that arms and legs swing back and forth) and par2 represents how | |
* "far" arms and legs can swing at most. | |
*/ | |
public void setRotationAngles(float limbSwing, float limbSwingAmount, float ageInTicks, float netHeadYaw, float headPitch, float scaleFactor, Entity entityIn) | |
{ | |
super.setRotationAngles(limbSwing, limbSwingAmount, ageInTicks, netHeadYaw, headPitch, scaleFactor, entityIn); | |
boolean flag = entityIn instanceof EntityHarog && ((EntityHarog)entityIn).isArmsRaised(); | |
float f = MathHelper.sin(this.swingProgress * (float)Math.PI); | |
float f1 = MathHelper.sin((1.0F - (1.0F - this.swingProgress) * (1.0F - this.swingProgress)) * (float)Math.PI); | |
this.bipedRightArm.rotateAngleZ = 0.0F; | |
this.bipedLeftArm.rotateAngleZ = 0.0F; | |
this.bipedRightArm.rotateAngleY = -(0.1F - f * 0.6F); | |
this.bipedLeftArm.rotateAngleY = 0.1F - f * 0.6F; | |
float f2 = -(float)Math.PI / (flag ? 1.5F : 2.25F); | |
this.bipedRightArm.rotateAngleX = f2; | |
this.bipedLeftArm.rotateAngleX = f2; | |
this.bipedRightArm.rotateAngleX += f * 1.2F - f1 * 0.4F; | |
this.bipedLeftArm.rotateAngleX += f * 1.2F - f1 * 0.4F; | |
this.bipedRightArm.rotateAngleZ += MathHelper.cos(ageInTicks * 0.09F) * 0.05F + 0.05F; | |
this.bipedLeftArm.rotateAngleZ -= MathHelper.cos(ageInTicks * 0.09F) * 0.05F + 0.05F; | |
this.bipedRightArm.rotateAngleX += MathHelper.sin(ageInTicks * 0.067F) * 0.05F; | |
this.bipedLeftArm.rotateAngleX -= MathHelper.sin(ageInTicks * 0.067F) * 0.05F; | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment