Skip to content

Instantly share code, notes, and snippets.

@triphion
Created September 27, 2017 11:02
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save triphion/4af874e79e118bb4d3ae3cc83bbbe64a to your computer and use it in GitHub Desktop.
Save triphion/4af874e79e118bb4d3ae3cc83bbbe64a to your computer and use it in GitHub Desktop.
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