diff --git a/src/main/java/net/lepidodendron/EntityRegistries.java b/src/main/java/net/lepidodendron/EntityRegistries.java index a89d1bbf9b..5fec8f9ddc 100644 --- a/src/main/java/net/lepidodendron/EntityRegistries.java +++ b/src/main/java/net/lepidodendron/EntityRegistries.java @@ -1445,20 +1445,20 @@ public static void registerEntities() { // registerEntity("prehistoric_flora_thryptodus", EntityPrehistoricFloraThryptodus.class, LepidodendronMod.ENTITY_THRYPTODUS, 48,-11354642,-15131876); -// registerEntity("prehistoric_flora_tarjadia", EntityPrehistoricFloraTarjadia.class, LepidodendronMod.ENTITY_TARJADIA, 64,-11354642,-15131876); -// registerEntity("prehistoric_flora_parringtonia", EntityPrehistoricFloraParringtonia.class, LepidodendronMod.ENTITY_PARRINGTONIA, 48,-11354642,-15131876); -// registerEntity("prehistoric_flora_dyoplax", EntityPrehistoricFloraDyoplax.class, LepidodendronMod.ENTITY_DYOPLAX, 48,-11354642,-15131876); -// registerEntity("prehistoric_flora_erpetosuchus", EntityPrehistoricFloraErpetosuchus.class, LepidodendronMod.ENTITY_ERPETOSUCHUS, 48,-11354642,-15131876); + registerEntity("prehistoric_flora_tarjadia", EntityPrehistoricFloraTarjadia.class, LepidodendronMod.ENTITY_TARJADIA, 64,-5398375,-13163237); + registerEntity("prehistoric_flora_parringtonia", EntityPrehistoricFloraParringtonia.class, LepidodendronMod.ENTITY_PARRINGTONIA, 48,-13357787,-2238520); + registerEntity("prehistoric_flora_dyoplax", EntityPrehistoricFloraDyoplax.class, LepidodendronMod.ENTITY_DYOPLAX, 48,-3835059,-12699338); + registerEntity("prehistoric_flora_erpetosuchus", EntityPrehistoricFloraErpetosuchus.class, LepidodendronMod.ENTITY_ERPETOSUCHUS, 48,-5534362,-8636120); // registerEntity("prehistoric_flora_yonghesuchus", EntityPrehistoricFloraYonghesuchus.class, LepidodendronMod.ENTITY_YONGHESUCHUS, 48,-11354642,-15131876); // registerEntity("prehistoric_flora_parvosuchus", EntityPrehistoricFloraParvosuchus.class, LepidodendronMod.ENTITY_PARVOSUCHUS, 48,-11354642,-15131876); // registerEntity("prehistoric_flora_gracilisuchus", EntityPrehistoricFloraGracilisuchus.class, LepidodendronMod.ENTITY_GRACILISUCHUS, 48,-11354642,-15131876); // registerEntity("prehistoric_flora_turfanosuchus", EntityPrehistoricFloraTurfanosuchus.class, LepidodendronMod.ENTITY_TURFANOSUCHUS, 48,-11354642,-15131876); -// registerEntity("prehistoric_flora_protosuchus", EntityPrehistoricFloraProtosuchus.class, LepidodendronMod.ENTITY_PROTOSUCHUS, 48,-11354642,-15131876); -// registerEntity("prehistoric_flora_ticinosuchus", EntityPrehistoricFloraTicinosuchus.class, LepidodendronMod.ENTITY_TICINOSUCHUS, 64,-11354642,-15131876); -// registerEntity("prehistoric_flora_colossosuchus", EntityPrehistoricFloraColossosuchus.class, LepidodendronMod.ENTITY_COLOSSOSUCHUS, 84,-11354642,-15131876); -// registerEntity("prehistoric_flora_riojasuchus", EntityPrehistoricFloraRiojasuchus.class, LepidodendronMod.ENTITY_RIOJASUCHUS, 48,-11354642,-15131876); -// registerEntity("prehistoric_flora_nundasuchus", EntityPrehistoricFloraNundasuchus.class, LepidodendronMod.ENTITY_NUNDASUCHUS, 64,-11354642,-15131876); -// registerEntity("prehistoric_flora_diandongosuchus", EntityPrehistoricFloraDiandongosuchus.class, LepidodendronMod.ENTITY_DIANDONGOSUCHUS, 48,-11354642,-15131876); + registerEntity("prehistoric_flora_protosuchus", EntityPrehistoricFloraProtosuchus.class, LepidodendronMod.ENTITY_PROTOSUCHUS, 48,-6460629,-10662591); + registerEntity("prehistoric_flora_ticinosuchus", EntityPrehistoricFloraTicinosuchus.class, LepidodendronMod.ENTITY_TICINOSUCHUS, 64,-11320016,-15462389); + registerEntity("prehistoric_flora_colossosuchus", EntityPrehistoricFloraColossosuchus.class, LepidodendronMod.ENTITY_COLOSSOSUCHUS, 84,-8033959,-4149106); + registerEntity("prehistoric_flora_riojasuchus", EntityPrehistoricFloraRiojasuchus.class, LepidodendronMod.ENTITY_RIOJASUCHUS, 48,-395279,-10270676); + registerEntity("prehistoric_flora_nundasuchus", EntityPrehistoricFloraNundasuchus.class, LepidodendronMod.ENTITY_NUNDASUCHUS, 64,-5541295,-1250350); + registerEntity("prehistoric_flora_diandongosuchus", EntityPrehistoricFloraDiandongosuchus.class, LepidodendronMod.ENTITY_DIANDONGOSUCHUS, 64,-1382183,-5199475); registerEntity("prehistoric_flora_barrydalaspis", EntityPrehistoricFloraBarrydalaspis.class, LepidodendronMod.ENTITY_BARRYDALASPIS, 48,-11251881,-658186); registerEntity("prehistoric_flora_pucapampella", EntityPrehistoricFloraPucapampella.class, LepidodendronMod.ENTITY_PUCAPAMPELLA, 48,-13089185,-2038807); registerEntity("prehistoric_flora_ramirosuarezia", EntityPrehistoricFloraRamirosuarezia.class, LepidodendronMod.ENTITY_RAMIROSUAREZIA, 48,-11114384,-7299678); diff --git a/src/main/java/net/lepidodendron/LepidodendronMod.java b/src/main/java/net/lepidodendron/LepidodendronMod.java index 70639e7277..d5659965c0 100644 --- a/src/main/java/net/lepidodendron/LepidodendronMod.java +++ b/src/main/java/net/lepidodendron/LepidodendronMod.java @@ -1979,7 +1979,7 @@ public class LepidodendronMod { public static final ResourceLocation TUOJIANGOSAURUS_LOOT = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/tuojiangosaurus")); public static final ResourceLocation TUOJIANGOSAURUS_LOOT_YOUNG = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/tuojiangosaurus_young")); public static final int ENTITY_DIANDONGOSUCHUS = 788; - //public static final ResourceLocation DIANDONGOSUCHUS_LOOT = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/diandongosuchus")); + public static final ResourceLocation DIANDONGOSUCHUS_LOOT = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/diandongosuchus")); //public static final ResourceLocation DIANDONGOSUCHUS_LOOT_YOUNG = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/diandongosuchus_young")); public static final int ENTITY_YUXISAURUS = 789; public static final ResourceLocation YUXISAURUS_LOOT = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/yuxisaurus")); @@ -3584,23 +3584,40 @@ public class LepidodendronMod { public static final ResourceLocation GAIASIA_LOOT = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/gaiasia")); static final int ENTITY_XINJIANGTITAN = 1477; static final int ENTITY_TARJADIA = 1478; + public static final ResourceLocation TARJADIA_LOOT = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/tarjadia")); static final int ENTITY_PARRINGTONIA = 1479; + public static final ResourceLocation PARRINGTONIA_LOOT = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/parringtonia")); static final int ENTITY_DYOPLAX = 1480; + public static final ResourceLocation DYOPLAX_LOOT = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/dyoplax")); static final int ENTITY_ERPETOSUCHUS = 1481; + public static final ResourceLocation ERPETOSUCHUS_LOOT = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/erpetosuchus")); static final int ENTITY_YONGHESUCHUS = 1482; + public static final ResourceLocation YONGHESUCHUS_LOOT = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/yonghesuchus")); static final int ENTITY_PARVOSUCHUS = 1483; + public static final ResourceLocation PARVOSUCHUS_LOOT = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/parvosuchus")); static final int ENTITY_GRACILISUCHUS = 1484; + public static final ResourceLocation GRACILISUCHUS_LOOT = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/gracilisuchus")); static final int ENTITY_TURFANOSUCHUS = 1485; + public static final ResourceLocation TURFANOSUCHUS_LOOT = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/turfanosuchus")); static final int ENTITY_PROTOSUCHUS = 1486; + public static final ResourceLocation PROTOSUCHUS_LOOT = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/protosuchus")); static final int ENTITY_TICINOSUCHUS = 1487; + public static final ResourceLocation TICINOSUCHUS_LOOT = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/ticinosuchus")); + public static final ResourceLocation TICINOSUCHUS_LOOT_YOUNG = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/ticinosuchus_young")); static final int ENTITY_COLOSSOSUCHUS = 1488; + public static final ResourceLocation COLOSSOSUCHUS_LOOT = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/colossosuchus")); + public static final ResourceLocation COLOSSOSUCHUS_LOOT_YOUNG = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/colossosuchus_young")); static final int ENTITY_RIOJASUCHUS = 1489; + public static final ResourceLocation RIOJASUCHUS_LOOT = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/riojasuchus")); static final int ENTITY_PROTEROCHAMPSA = 1490; public static final ResourceLocation PROTEROCHAMPSA_LOOT = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/proterochampsa")); public static final ResourceLocation PROTEROCHAMPSA_LOOT_YOUNG = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/proterochampsa_young")); static final int ENTITY_NUNDASUCHUS = 1491; + public static final ResourceLocation NUNDASUCHUS_LOOT = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/nundasuchus")); static final int ENTITY_LITOROSUCHUS = 1492; + public static final ResourceLocation LITOROSUCHUS_LOOT = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/litorosuchus")); static final int ENTITY_LANGOBARDISAURUS = 1493; + public static final ResourceLocation LANGOBARDISAURUS_LOOT = LootTableList.register(new ResourceLocation(LepidodendronMod.MODID, "entity/langobardisaurus")); static final int ENTITY_SCUTELLOSAURUS = 1494; static final int ENTITY_AFROVENATOR = 1495; static final int ENTITY_EOSINOPTERYX = 1496; diff --git a/src/main/java/net/lepidodendron/LepidodendronSorter.java b/src/main/java/net/lepidodendron/LepidodendronSorter.java index 2eb36f4644..799f8ae5ca 100644 --- a/src/main/java/net/lepidodendron/LepidodendronSorter.java +++ b/src/main/java/net/lepidodendron/LepidodendronSorter.java @@ -6358,7 +6358,64 @@ public class LepidodendronSorter { public static final int attenborosaurus_raw = 5900; public static final int hescheleria_raw = 5901; public static final int marshosaurus_raw = 5902; - public static final int eggs_marshosaurus = 5903; + public static final int eggs_ticinosuchus = 5903; + public static final int eggs_nundasuchus = 5904; + public static final int eggs_colossosuchus = 5905; + public static final int eggs_riojasuchus = 5906; + public static final int eggs_protosuchus = 5907; + public static final int eggs_turfanosuchus = 5908; + public static final int eggs_gracilisuchus = 5909; + public static final int eggs_parvosuchus = 5910; + public static final int eggs_yonghesuchus = 5911; + public static final int eggs_erpetosuchus = 5912; + public static final int eggs_dyoplax = 5913; + public static final int eggs_parringtonia = 5914; + public static final int eggs_tarjadia = 5915; + public static final int eggs_litorosuchus = 5916; + public static final int eggs_langobardisaurus = 5917; + public static final int eggs_eusaurosphargis = 5918; + public static final int eggs_phuwiangvenator = 5919; + public static final int eggs_neovenator = 5920; + public static final int eggs_varanosuchus = 5921; + public static final int eggs_susisuchus = 5922; + public static final int eggs_bernissartia = 5923; + public static final int eggs_montsecosuchus = 5924; + public static final int eggs_isisfordia = 5925; + public static final int eggs_pholidosaurus = 5926; + public static final int eggs_spinolestes = 5927; + public static final int eggs_hamadasuchus = 5928; + public static final int eggs_laganosuchus = 5929; + public static final int eggs_kostensuchus = 5930; + public static final int eggs_marshosaurus = 5931; + public static final int ticinosuchus_raw = 5932; + public static final int nundasuchus_raw = 5933; + public static final int colossosuchus_raw = 5934; + public static final int riojasuchus_raw = 5935; + public static final int protosuchus_raw = 5936; + public static final int turfanosuchus_raw = 5937; + public static final int gracilisuchus_raw = 5938; + public static final int parvosuchus_raw = 5939; + public static final int yonghesuchus_raw = 5940; + public static final int erpetosuchus_raw = 5941; + public static final int dyoplax_raw = 5942; + public static final int parringtonia_raw = 5943; + public static final int tarjadia_raw = 5944; + public static final int litorosuchus_raw = 5945; + public static final int langobardisaurus_raw = 5946; + public static final int neovenator_raw = 5947; + public static final int phuwiangvenator_raw = 5948; + public static final int varanosuchus_raw = 5949; + public static final int susisuchus_raw = 5950; + public static final int bernissartia_raw = 5951; + public static final int pholidosaurus_raw = 5952; + public static final int montsecosuchus_raw = 5953; + public static final int isisfordia_raw = 5954; + public static final int spinolestes_raw = 5955; + public static final int hamadasuchus_raw = 5956; + public static final int laganosuchus_raw = 5957; + public static final int kostensuchus_raw = 5958; + public static final int epoidesuchus_raw = 5959; + public static final int eggs_epoidesuchus = 5960; public static final int bivalve_toucasia = 6000; public static final int coeloptychium = 6001; diff --git a/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraColossosuchus.java b/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraColossosuchus.java new file mode 100644 index 0000000000..d34b67a9b3 --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraColossosuchus.java @@ -0,0 +1,419 @@ + +package net.lepidodendron.entity; + +import com.google.common.base.Predicate; +import net.ilexiconn.llibrary.client.model.tools.ChainBuffer; +import net.ilexiconn.llibrary.server.animation.Animation; +import net.ilexiconn.llibrary.server.animation.AnimationHandler; +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.block.base.IAdvancementGranter; +import net.lepidodendron.entity.ai.*; +import net.lepidodendron.entity.base.EntityPrehistoricFloraAgeableBase; +import net.lepidodendron.entity.base.EntityPrehistoricFloraFishBase; +import net.lepidodendron.entity.base.EntityPrehistoricFloraSwimmingAmphibianBase; +import net.lepidodendron.entity.render.entity.RenderSmilosuchus; +import net.lepidodendron.entity.render.tile.RenderDisplays; +import net.lepidodendron.entity.util.ITrappableLand; +import net.lepidodendron.entity.util.ITrappableWater; +import net.lepidodendron.util.CustomTrigger; +import net.lepidodendron.util.ModTriggers; +import net.minecraft.client.model.ModelBase; +import net.minecraft.entity.*; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.util.DamageSource; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.math.AxisAlignedBB; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.RayTraceResult; +import net.minecraft.util.math.Vec3d; +import net.minecraft.world.DifficultyInstance; +import net.minecraft.world.World; +import net.minecraftforge.fml.common.FMLCommonHandler; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import org.apache.commons.lang3.ArrayUtils; + +import javax.annotation.Nullable; + +public class EntityPrehistoricFloraColossosuchus extends EntityPrehistoricFloraSwimmingAmphibianBase implements IAdvancementGranter, ITrappableLand, ITrappableWater { + + public BlockPos currentTarget; + @SideOnly(Side.CLIENT) + public ChainBuffer tailBuffer; + public float maxHeightLand; + public Animation STAND_ANIMATION; + private int standCooldown; + + public EntityPrehistoricFloraColossosuchus(World world) { + super(world); + setSize(1.65F, 0.99F); + minWidth = 0.15F; + maxWidth = 1.65F; + maxHeight = 0.785F; + maxHeightLand = 1.3F; + maxHealthAgeable = 63.0D; + STAND_ANIMATION = Animation.create(560); + if (FMLCommonHandler.instance().getSide().isClient()) { + tailBuffer = new ChainBuffer(); + } + } + + @Override + public void onUpdate() { + super.onUpdate(); + if (world.isRemote && !this.isAIDisabled()) { + tailBuffer.calculateChainSwingBuffer(120, 10, 5F, this); + } + } + + + @Override + public int getRoarLength() { + return 40; + } + + @Override + public int getAttackLength() { + return 12; + } + + @Override + public Animation[] getAnimations() { + return new Animation[]{ATTACK_ANIMATION, ROAR_ANIMATION, LAY_ANIMATION, MAKE_NEST_ANIMATION, STAND_ANIMATION}; + } + + @Override + public int getEggType(@Nullable String variantIn) { + return 2; //large + } + + @Override + public void setScaleForAge(boolean child) { + if (this.isInWater()) { + this.setSizer(this.getAgeScale() * this.maxWidth, this.getAgeScale() * this.maxHeight); + } + else { + this.setSizer(this.getAgeScale() * this.maxWidth, this.getAgeScale() * this.maxHeightLand); + } + } + + @Override + public boolean placesNest() { + return true; + } + + @Override + public boolean isNestMound() { + return true; + } + + @Override + public boolean breathesAir() { + return true; + } + + public boolean testLay(World world, BlockPos pos) { + return ( + nestBlockMatch(world, pos) + ); + } + + @Override + public boolean isSmall() { + return this.getAgeScale() < 0.15; + } + + public static String getPeriod() {return "Triassic";} + + //public static String getHabitat() {return "Amphibious";} + + @Override + public boolean dropsEggs() { + return false; + } + + @Override + public boolean laysEggs() { + return true; + } + + protected float getAISpeedSwimmingAmphibian() { + float calcSpeed = 0.2F; + if (this.isReallyInWater()) { + calcSpeed = 0.4f; + } + if (this.getTicks() < 0) { + return 0.0F; //Is laying eggs + } + if (this.getAnimation() == MAKE_NEST_ANIMATION || this.getAnimation() == STAND_ANIMATION) { + return 0.0F; + } + if (this.getIsFast()) { + if (this.isInWater()) { + calcSpeed = calcSpeed * 1.7F; + } + else { + calcSpeed = calcSpeed * 2.0F; + } + } + //System.err.println("Speed " + (Math.min(2F, (this.getAgeScale() * 2F)) * calcSpeed)); + return calcSpeed; + } + + @Override + public boolean isAnimationDirectionLocked(Animation animation) { + return animation == STAND_ANIMATION + || super.isAnimationDirectionLocked(animation); + } + + @Override + public int getAdultAge() { + return 96000; + } + + @Override + public float getEyeHeight() + { + return Math.max(super.getEyeHeight(), this.height * 0.85F); + } + + @Override + public int WaterDist() { + return 0; + } + + @Override + public boolean isNearWater(Entity e, BlockPos pos) { + return true; + } + + public AxisAlignedBB getAttackBoundingBox() { + float size = this.getRenderSizeModifier() * 0.25F; + return this.getEntityBoundingBox().grow(1.0F + size, 1.0F + size, 1.0F + size); + } + + protected void initEntityAI() { + tasks.addTask(0, new EntityMateAIAgeableBase(this, 1.0D)); + tasks.addTask(1, new EntityTemptAI(this, 1, false, true, (float) this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).getAttributeValue() * 0.33F)); + tasks.addTask(2, new AttackAI(this, 1.0D, false, this.getAttackLength())); + tasks.addTask(3, new AmphibianWanderNestInBlockAI(this)); + tasks.addTask(4, new AmphibianWanderNotBound(this, NO_ANIMATION, 0.7, 90)); + tasks.addTask(5, new EntityWatchClosestAI(this, EntityPlayer.class, 6.0F)); + tasks.addTask(5, new EntityWatchClosestAI(this, EntityPrehistoricFloraFishBase.class, 8.0F)); + tasks.addTask(5, new EntityWatchClosestAI(this, EntityPrehistoricFloraAgeableBase.class, 8.0F)); + tasks.addTask(6, new EntityLookIdleAI(this)); + this.targetTasks.addTask(0, new EatItemsEntityPrehistoricFloraAgeableBaseAI(this, 1)); +// this.targetTasks.addTask(0, new EatItemsEntityPrehistoricFloraAgeableBaseAI(this, 1)); + this.targetTasks.addTask(1, new EntityHurtByTargetSmallerThanMeAI(this, false)); + this.targetTasks.addTask(2, new HuntPlayerAlwaysAI(this, EntityPlayer.class, true, (Predicate) entity -> entity instanceof EntityLivingBase)); + this.targetTasks.addTask(3, new HuntForDietEntityPrehistoricFloraAgeableBaseAI(this, EntityLivingBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0.1F, 1.2F, false)); + } + + @Override + public IEntityLivingData onInitialSpawn(DifficultyInstance difficulty, @Nullable IEntityLivingData livingdata) { + livingdata = super.onInitialSpawn(difficulty, livingdata); + this.standCooldown = rand.nextInt(2000); + return livingdata; + } + + public void writeEntityToNBT(NBTTagCompound compound) + { + super.writeEntityToNBT(compound); + compound.setInteger("standCooldown", this.standCooldown); + } + + public void readEntityFromNBT(NBTTagCompound compound) { + super.readEntityFromNBT(compound); + this.standCooldown = compound.getInteger("standCooldown"); + } + + @Override + public String[] getFoodOreDicts() { + return ArrayUtils.addAll(DietString.FISH, DietString.MEAT); + } + + + @Override + public boolean isAIDisabled() { + return false; + } + + @Override + public EnumCreatureAttribute getCreatureAttribute() { + return EnumCreatureAttribute.UNDEFINED; + } + + @Override + protected boolean canDespawn() { + return false; + } + + @Override + protected void applyEntityAttributes() { + super.applyEntityAttributes(); + this.getAttributeMap().registerAttribute(SharedMonsterAttributes.ATTACK_DAMAGE); + this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).setBaseValue(10.0D); + this.getEntityAttribute(SharedMonsterAttributes.MOVEMENT_SPEED).setBaseValue(0.25D); + } + + @Override + protected boolean canTriggerWalking() { + return true; + } + + @Override + public net.minecraft.util.SoundEvent getAmbientSound() { + return (net.minecraft.util.SoundEvent) net.minecraft.util.SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:smilosuchus_idle")); + } + + @Override + public net.minecraft.util.SoundEvent getHurtSound(DamageSource ds) { + return (net.minecraft.util.SoundEvent) net.minecraft.util.SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:smilosuchus_hurt")); + } + + @Override + public net.minecraft.util.SoundEvent getDeathSound() { + return (net.minecraft.util.SoundEvent) net.minecraft.util.SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:smilosuchus_death")); + } + + @Override + protected float getSoundVolume() { + return 1.0F; + } + + @Override + public boolean canBreatheUnderwater() { + return true; + } + + @Override + public boolean getCanSpawnHere() { + return this.posY < (double) this.world.getSeaLevel() && this.isInWater(); + } + + public boolean isNotColliding() { + return this.world.checkNoEntityCollision(this.getEntityBoundingBox(), this); + } + + @Override + public boolean isOnLadder() { + return false; + } + + @Override + public void onLivingUpdate() { + super.onLivingUpdate(); + //this.renderYawOffset = this.rotationYaw; + + if (this.getAnimation() == ATTACK_ANIMATION && this.getAnimationTick() == 5 && this.getAttackTarget() != null) { + launchAttack(); + } + + if (this.standCooldown > 0) { + this.standCooldown -= rand.nextInt(3) + 1; + } + if (this.standCooldown < 0) { + this.standCooldown = 0; + } + + if (this.isInWater()) { + this.setSizer(this.width, this.getAgeScale() * this.maxHeight); + } + else { + this.setSizer(this.width, this.getAgeScale() * this.maxHeightLand); + } + + AnimationHandler.INSTANCE.updateAnimations(this); + + } + + @Override + public boolean attackEntityAsMob(Entity entity) { + if (this.getAnimation() == NO_ANIMATION) { + this.setAnimation(ATTACK_ANIMATION); + //System.err.println("set attack"); + } + return false; + } + + public boolean isDirectPathBetweenPoints(Vec3d vec1, Vec3d vec2) { + RayTraceResult movingobjectposition = this.world.rayTraceBlocks(vec1, new Vec3d(vec2.x, vec2.y, vec2.z), false, true, false); + return movingobjectposition == null || movingobjectposition.typeOfHit != RayTraceResult.Type.BLOCK; + } + + @Override + public void onEntityUpdate() { + super.onEntityUpdate(); + + //Sometimes stand up and look around: + if ((!this.world.isRemote) && this.getEatTarget() == null && this.getAttackTarget() == null && this.getRevengeTarget() == null && this.getAlarmTarget() == null + && !this.getIsMoving() && this.getAnimation() == NO_ANIMATION && standCooldown == 0 && !this.isInWater()) { + this.setAnimation(STAND_ANIMATION); + this.standCooldown = 2000; + } + //forces animation to return to base pose by grabbing the last tick and setting it to that. + if ((!this.world.isRemote) && this.getAnimation() == STAND_ANIMATION + && (this.getAnimationTick() == STAND_ANIMATION.getDuration() - 1) || this.isReallyInWater()) { + this.standCooldown = 2000; + this.setAnimation(NO_ANIMATION); + } + + } + + @Nullable + @Override + public CustomTrigger getModTrigger() { + return ModTriggers.CLICK_COLOSSOSUCHUS; + } + @Nullable + protected ResourceLocation getLootTable() { + if (!this.isPFAdult()) { + return LepidodendronMod.COLOSSOSUCHUS_LOOT_YOUNG; + } + return LepidodendronMod.COLOSSOSUCHUS_LOOT; + } + //Rendering taxidermy: + //-------------------- + public static double offsetWall(@Nullable String variant) { + return -0.45; + } + public static double upperfrontverticallinedepth(@Nullable String variant) { + return 1.2; + } + public static double upperbackverticallinedepth(@Nullable String variant) { + return 0.8; + } + public static double upperfrontlineoffset(@Nullable String variant) { + return -0.055; + } + public static double upperfrontlineoffsetperpendiular(@Nullable String variant) { + return -0.8; + } + public static double upperbacklineoffset(@Nullable String variant) { + return 0.678; + } + public static double upperbacklineoffsetperpendiular(@Nullable String variant) { + return 3.5; + } + public static double lowerfrontverticallinedepth(@Nullable String variant) { + return 0.0; + } + public static double lowerbackverticallinedepth(@Nullable String variant) {return 0.0;} + public static double lowerfrontlineoffset(@Nullable String variant) { + return 0.0; + } + public static double lowerfrontlineoffsetperpendiular(@Nullable String variant) { + return 0.0; + } + public static double lowerbacklineoffset(@Nullable String variant) { + return 0.0; + } + public static double lowerbacklineoffsetperpendiular(@Nullable String variant) { + return 0.0; + } + +} \ No newline at end of file diff --git a/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraDiandongosuchus.java b/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraDiandongosuchus.java index 729e5e6f94..40270e8919 100644 --- a/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraDiandongosuchus.java +++ b/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraDiandongosuchus.java @@ -3,29 +3,36 @@ import com.google.common.base.Predicate; import net.ilexiconn.llibrary.client.model.tools.ChainBuffer; +import net.ilexiconn.llibrary.server.animation.Animation; import net.ilexiconn.llibrary.server.animation.AnimationHandler; -import net.lepidodendron.LepidodendronConfig; +import net.lepidodendron.LepidodendronMod; import net.lepidodendron.block.base.IAdvancementGranter; import net.lepidodendron.entity.ai.*; import net.lepidodendron.entity.base.EntityPrehistoricFloraAgeableBase; import net.lepidodendron.entity.base.EntityPrehistoricFloraFishBase; import net.lepidodendron.entity.base.EntityPrehistoricFloraSwimmingAmphibianBase; +import net.lepidodendron.entity.render.entity.RenderQianosuchus; +import net.lepidodendron.entity.render.tile.RenderDisplays; import net.lepidodendron.entity.util.ITrappableLand; import net.lepidodendron.entity.util.ITrappableWater; import net.lepidodendron.util.CustomTrigger; import net.lepidodendron.util.ModTriggers; -import net.minecraft.entity.Entity; -import net.minecraft.entity.EntityLivingBase; -import net.minecraft.entity.EnumCreatureAttribute; -import net.minecraft.entity.SharedMonsterAttributes; +import net.minecraft.client.model.ModelBase; +import net.minecraft.entity.*; import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.init.SoundEvents; +import net.minecraft.item.ItemFood; +import net.minecraft.item.ItemStack; +import net.minecraft.nbt.NBTTagCompound; import net.minecraft.util.DamageSource; import net.minecraft.util.ResourceLocation; +import net.minecraft.util.SoundCategory; import net.minecraft.util.SoundEvent; import net.minecraft.util.math.AxisAlignedBB; import net.minecraft.util.math.BlockPos; import net.minecraft.util.math.RayTraceResult; import net.minecraft.util.math.Vec3d; +import net.minecraft.world.DifficultyInstance; import net.minecraft.world.World; import net.minecraftforge.fml.common.FMLCommonHandler; import net.minecraftforge.fml.relauncher.Side; @@ -34,29 +41,29 @@ import javax.annotation.Nullable; -public class EntityPrehistoricFloraDiandongosuchus extends EntityPrehistoricFloraSwimmingAmphibianBase implements ITrappableWater, ITrappableLand, IAdvancementGranter { +public class EntityPrehistoricFloraDiandongosuchus extends EntityPrehistoricFloraSwimmingAmphibianBase implements IAdvancementGranter, ITrappableWater, ITrappableLand { public BlockPos currentTarget; @SideOnly(Side.CLIENT) public ChainBuffer tailBuffer; + public Animation EAT_ANIMATION; + public Animation STAND_ANIMATION; + private int standCooldown; public EntityPrehistoricFloraDiandongosuchus(World world) { super(world); - setSize(0.5F, 0.20F); - minWidth = 0.12F; - maxWidth = 0.5F; - maxHeight = 0.20F; - maxHealthAgeable = 18.0D; + setSize(0.6F, 0.4F); + minWidth = 0.1F; + maxWidth = 0.6F; + maxHeight = 0.4F; + maxHealthAgeable = 23.0D; + EAT_ANIMATION = Animation.create(20); + STAND_ANIMATION = Animation.create(400); if (FMLCommonHandler.instance().getSide().isClient()) { tailBuffer = new ChainBuffer(); } } - @Override - public int getEggType(@Nullable String variantIn) { - return 0; //small eggs - } - @Override public void onUpdate() { super.onUpdate(); @@ -65,15 +72,45 @@ public void onUpdate() { } } + @Override + public int getRoarLength() { + return 30; + } + + @Override + public int getAttackLength() { + return 15; + } + + @Override + public Animation[] getAnimations() { + return new Animation[]{ATTACK_ANIMATION, ROAR_ANIMATION, LAY_ANIMATION, EAT_ANIMATION, MAKE_NEST_ANIMATION, STAND_ANIMATION}; + } + @Override public boolean isSmall() { - return this.getAgeScale() < 0.55; + return getAgeScale() < 0.50; } - public static String getPeriod() {return "Carboniferous";} - //public static String getHabitat() {return "Amphibious";} + public static String getPeriod() { + return "Triassic"; + } + + //public static String getHabitat() { + // return "Amphibious Archosauromorph Reptile"; + //} + @Override + public boolean hasNest() { + return true; + } + + @Override + public boolean breathesAir() { + return true; + } + @Override public boolean dropsEggs() { return false; @@ -95,15 +132,39 @@ public boolean isNestMound() { } protected float getAISpeedSwimmingAmphibian() { - //return 0; - float calcSpeed = 0.155F; + float calcSpeed = 0.16F; if (this.isReallyInWater()) { - calcSpeed= 0.185f; + calcSpeed = 0.275f; + } + //Lemon - here is the fast stuff, if we get animations: + if (this.getIsFast()) { + calcSpeed = calcSpeed * 1.7F; } if (this.getTicks() < 0) { return 0.0F; //Is laying eggs } - return Math.min(1F, (this.getAgeScale() * 2F)) * calcSpeed; + if (this.getAnimation() == MAKE_NEST_ANIMATION || this.getAnimation() == STAND_ANIMATION) { + return 0.0F; + } + //System.err.println("Speed " + (Math.min(1F, (this.getAgeScale() * 2F)) * calcSpeed)); + return calcSpeed; + } + + @Override + public void eatItem(ItemStack stack) { + if (stack != null && stack.getItem() != null) { + float itemHealth = 0.5F; //Default minimal nutrition + if (stack.getItem() instanceof ItemFood) { + itemHealth = ((ItemFood) stack.getItem()).getHealAmount(stack); + } + this.setHealth(Math.min(this.getHealth() + itemHealth, (float) this.getEntityAttribute(SharedMonsterAttributes.MAX_HEALTH).getBaseValue())); + stack.shrink(1); + if (this.getAnimation() == NO_ANIMATION && !world.isRemote) { + this.setAnimation(EAT_ANIMATION); + SoundEvent soundevent = SoundEvents.ENTITY_GENERIC_EAT; + this.getEntityWorld().playSound(null, this.getPosition(), soundevent, SoundCategory.BLOCKS, 1.0F, 1.0F); + } + } } @Override @@ -113,45 +174,43 @@ public int getAdultAge() { @Override public int WaterDist() { - int i = (int) LepidodendronConfig.waterClaudiosaurus; - if (i > 16) {i = 16;} - if (i < 1) {i = 1;} - return i; + return 0; + } + + @Override + public boolean isNearWater(Entity e, BlockPos pos) { + return true; } public AxisAlignedBB getAttackBoundingBox() { float size = this.getRenderSizeModifier() * 0.25F; - return this.getEntityBoundingBox().grow(0.0F + size, 0.0F + size, 0.0F + size); + return this.getEntityBoundingBox().grow(1.0F + size, 1.0F + size, 1.0F + size); } protected void initEntityAI() { tasks.addTask(0, new EntityMateAIAgeableBase(this, 1.0D)); - tasks.addTask(1, new EntityTemptAI(this, 1, false, true, 1)); + tasks.addTask(1, new EntityTemptAI(this, 1, false, true, 1F)); tasks.addTask(2, new AttackAI(this, 1.0D, false, this.getAttackLength())); tasks.addTask(3, new AmphibianWanderNestInBlockAI(this)); - tasks.addTask(4, new AmphibianWander(this, NO_ANIMATION, 0.025, 20)); + tasks.addTask(4, new AmphibianWanderNotBound(this, NO_ANIMATION, 0.7, 90)); tasks.addTask(5, new EntityWatchClosestAI(this, EntityPlayer.class, 6.0F)); - tasks.addTask(6, new EntityWatchClosestAI(this, EntityPrehistoricFloraFishBase.class, 8.0F)); - tasks.addTask(7, new EntityWatchClosestAI(this, EntityPrehistoricFloraAgeableBase.class, 8.0F)); - tasks.addTask(8, new EntityLookIdleAI(this)); + tasks.addTask(5, new EntityWatchClosestAI(this, EntityPrehistoricFloraFishBase.class, 8.0F)); + tasks.addTask(5, new EntityWatchClosestAI(this, EntityPrehistoricFloraAgeableBase.class, 8.0F)); + tasks.addTask(6, new EntityLookIdleAI(this)); this.targetTasks.addTask(0, new EatItemsEntityPrehistoricFloraAgeableBaseAI(this, 1)); - //this.targetTasks.addTask(0, new EatItemsEntityPrehistoricFloraAgeableBaseAI(this, 1)); - this.targetTasks.addTask(1, new HuntForDietEntityPrehistoricFloraAgeableBaseAI(this, EntityLivingBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0.1F, 1.2F, false)); - //this.targetTasks.addTask(1, new EntityHurtByTargetSmallerThanMeAI(this, false)); - //this.targetTasks.addTask(2, new HuntAI(this, EntityPlayer.class, true, (Predicate) entity -> entity instanceof EntityLivingBase)); - //this.targetTasks.addTask(2, new HuntAI(this, EntityVillager.class, true, (Predicate) entity -> entity instanceof EntityLivingBase)); - //this.targetTasks.addTask(1, new HuntAI(this, EntityPrehistoricFloraFishBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase)); - //this.targetTasks.addTask(1, new HuntAI(this, EntitySquid. class, true, (Predicate) entity -> entity instanceof EntityLivingBase)); - //this.targetTasks.addTask(1, new HuntAI(this, EntityPrehistoricFloraPalaeodictyopteraNymph.class, true, (Predicate) entity -> entity instanceof EntityLivingBase)); - //this.targetTasks.addTask(1, new HuntAI(this, EntityPrehistoricFloraLandClimbingBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase)); +// this.targetTasks.addTask(0, new EatItemsEntityPrehistoricFloraAgeableBaseAI(this, 1)); + this.targetTasks.addTask(1, new EntityHurtByTargetSmallerThanMeAI(this, false)); + this.targetTasks.addTask(2, new HuntPlayerAlwaysAI(this, EntityPlayer.class, true, (Predicate) entity -> entity instanceof EntityLivingBase)); + this.targetTasks.addTask(3, new HuntForDietEntityPrehistoricFloraAgeableBaseAI(this, EntityLivingBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0.1F, 1.2F, false)); +// this.targetTasks.addTask(3, new HuntAI(this, EntityPrehistoricFloraFishBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase)); +// this.targetTasks.addTask(4, new HuntSmallerThanMeAIAgeable(this, EntityPrehistoricFloraAgeableFishBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0)); } @Override public String[] getFoodOreDicts() { - return ArrayUtils.addAll(DietString.FISH); + return ArrayUtils.addAll(DietString.MEAT, DietString.FISH); } - @Override public boolean isAIDisabled() { return false; @@ -171,7 +230,7 @@ protected boolean canDespawn() { protected void applyEntityAttributes() { super.applyEntityAttributes(); this.getAttributeMap().registerAttribute(SharedMonsterAttributes.ATTACK_DAMAGE); - this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).setBaseValue(3.0D); + this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).setBaseValue(6.0D); this.getEntityAttribute(SharedMonsterAttributes.MOVEMENT_SPEED).setBaseValue(0.25D); } @@ -182,20 +241,20 @@ protected boolean canTriggerWalking() { @Override public SoundEvent getAmbientSound() { - return (SoundEvent) SoundEvent.REGISTRY - .getObject(new ResourceLocation("lepidodendron:diandongosuchus_idle")); + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:smallcroc_idle")); } @Override public SoundEvent getHurtSound(DamageSource ds) { - return (SoundEvent) SoundEvent.REGISTRY - .getObject(new ResourceLocation("lepidodendron:diandongosuchus_hurt")); + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:smallcroc_hurt")); } @Override public SoundEvent getDeathSound() { - return (SoundEvent) SoundEvent.REGISTRY - .getObject(new ResourceLocation("lepidodendron:diandongosuchus_death")); + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:smallcroc_death")); } @Override @@ -209,18 +268,21 @@ public boolean canBreatheUnderwater() { } @Override - public boolean getCanSpawnHere() { - return this.posY < (double) this.world.getSeaLevel() && this.isInWater(); + public IEntityLivingData onInitialSpawn(DifficultyInstance difficulty, @Nullable IEntityLivingData livingdata) { + livingdata = super.onInitialSpawn(difficulty, livingdata); + this.standCooldown = rand.nextInt(2000); + return livingdata; } - public boolean isNotColliding() { - return this.world.checkNoEntityCollision(this.getEntityBoundingBox(), this); + public void writeEntityToNBT(NBTTagCompound compound) + { + super.writeEntityToNBT(compound); + compound.setInteger("standCooldown", this.standCooldown); } - - @Override - public boolean isOnLadder() { - return false; + public void readEntityFromNBT(NBTTagCompound compound) { + super.readEntityFromNBT(compound); + this.standCooldown = compound.getInteger("standCooldown"); } @Override @@ -228,25 +290,57 @@ public void onLivingUpdate() { super.onLivingUpdate(); //this.renderYawOffset = this.rotationYaw; - if (this.getAnimation() == ATTACK_ANIMATION && this.getAnimationTick() == 5 && this.getAttackTarget() != null) { + if (this.getAnimation() == ATTACK_ANIMATION && this.getAnimationTick() == 11 && this.getAttackTarget() != null) { launchAttack(); } + if (this.standCooldown > 0) { + this.standCooldown -= rand.nextInt(3) + 1; + } + if (this.standCooldown < 0) { + this.standCooldown = 0; + } AnimationHandler.INSTANCE.updateAnimations(this); + //System.err.println("Eating: " + this.getEatTarget() + " isFast " + this.getIsFast()); + } @Override public void onEntityUpdate() { super.onEntityUpdate(); + + //Sometimes stand up and look around: + if ((!this.world.isRemote) && this.getEatTarget() == null && this.getAttackTarget() == null && this.getRevengeTarget() == null && this.getAlarmTarget() == null + && !this.getIsMoving() && this.getAnimation() == NO_ANIMATION && standCooldown == 0) { + this.setAnimation(STAND_ANIMATION); + this.standCooldown = 2000; + } + //forces animation to return to base pose by grabbing the last tick and setting it to that. + if ((!this.world.isRemote) && this.getAnimation() == STAND_ANIMATION + && (this.getAnimationTick() == STAND_ANIMATION.getDuration() - 1) || this.isReallyInWater()) { + this.standCooldown = 2000; + this.setAnimation(NO_ANIMATION); + } + } - public boolean testLay(World world, BlockPos pos) { - return ( - nestBlockMatch(world, pos) - ); + @Override + public boolean getCanSpawnHere() { + return this.posY < (double) this.world.getSeaLevel() && this.isInWater(); } + public boolean isNotColliding() { + return this.world.checkNoEntityCollision(this.getEntityBoundingBox(), this); + } + + + @Override + public boolean isOnLadder() { + return false; + } + + @Override public boolean attackEntityAsMob(Entity entity) { if (this.getAnimation() == NO_ANIMATION) { @@ -256,23 +350,39 @@ public boolean attackEntityAsMob(Entity entity) { return false; } + public boolean testLay(World world, BlockPos pos) { + return ( + nestBlockMatch(world, pos) + ); + } + public boolean isDirectPathBetweenPoints(Vec3d vec1, Vec3d vec2) { RayTraceResult movingobjectposition = this.world.rayTraceBlocks(vec1, new Vec3d(vec2.x, vec2.y, vec2.z), false, true, false); return movingobjectposition == null || movingobjectposition.typeOfHit != RayTraceResult.Type.BLOCK; } - @Nullable @Override public CustomTrigger getModTrigger() { return ModTriggers.CLICK_DIANDONGOSUCHUS; } - -// @Nullable -// protected ResourceLocation getLootTable() { -// if (!this.isPFAdult()) { -// return LepidodendronMod.DIANDONGOSUCHUS_LOOT_YOUNG; -// } -// return LepidodendronMod.DIANDONGOSUCHUS_LOOT; -// } + @Nullable + protected ResourceLocation getLootTable() { + return LepidodendronMod.DIANDONGOSUCHUS_LOOT; + } + //Rendering taxidermy: + //-------------------- + public static double offsetWall(@Nullable String variant) {return -0.45;} + public static double upperfrontverticallinedepth(@Nullable String variant) {return 0.7;} + public static double upperbackverticallinedepth(@Nullable String variant) {return 0.5;} + public static double upperfrontlineoffset(@Nullable String variant) {return 0.17;} + public static double upperfrontlineoffsetperpendiular(@Nullable String variant) {return -0.5;} + public static double upperbacklineoffset(@Nullable String variant) {return 0.0;} + public static double upperbacklineoffsetperpendiular(@Nullable String variant) {return 0.5;} + public static double lowerfrontverticallinedepth(@Nullable String variant) {return 0.5;} + public static double lowerbackverticallinedepth(@Nullable String variant) {return 0.5;} + public static double lowerfrontlineoffset(@Nullable String variant) {return 0.0;} + public static double lowerfrontlineoffsetperpendiular(@Nullable String variant) {return 0.5;} + public static double lowerbacklineoffset(@Nullable String variant) {return -0.04;} + public static double lowerbacklineoffsetperpendiular(@Nullable String variant) {return -0.3;} } \ No newline at end of file diff --git a/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraDyoplax.java b/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraDyoplax.java new file mode 100644 index 0000000000..840d9c4543 --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraDyoplax.java @@ -0,0 +1,334 @@ + +package net.lepidodendron.entity; + +import com.google.common.base.Predicate; +import net.ilexiconn.llibrary.client.model.tools.ChainBuffer; +import net.ilexiconn.llibrary.server.animation.Animation; +import net.ilexiconn.llibrary.server.animation.AnimationHandler; +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.block.base.IAdvancementGranter; +import net.lepidodendron.entity.ai.*; +import net.lepidodendron.entity.base.EntityPrehistoricFloraAgeableBase; +import net.lepidodendron.entity.base.EntityPrehistoricFloraLandBase; +import net.lepidodendron.entity.util.ITrappableLand; +import net.lepidodendron.util.CustomTrigger; +import net.lepidodendron.util.ModTriggers; +import net.minecraft.block.BlockDirectional; +import net.minecraft.block.properties.PropertyDirection; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.EnumCreatureAttribute; +import net.minecraft.entity.SharedMonsterAttributes; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.DamageSource; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.SoundEvent; +import net.minecraft.util.math.AxisAlignedBB; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.RayTraceResult; +import net.minecraft.util.math.Vec3d; +import net.minecraft.world.World; +import net.minecraftforge.fml.common.FMLCommonHandler; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; + +import javax.annotation.Nullable; + +public class EntityPrehistoricFloraDyoplax extends EntityPrehistoricFloraLandBase implements ITrappableLand, IAdvancementGranter { + + public BlockPos currentTarget; + @SideOnly(Side.CLIENT) + public ChainBuffer tailBuffer; + public int ambientSoundTime; + public Animation NOISE_ANIMATION; + + public EntityPrehistoricFloraDyoplax(World world) { + super(world); + setSize(0.3F, 0.2F); + minWidth = 0.15F; + maxWidth = 0.3F; + maxHeight = 0.2F; + maxHealthAgeable = 8.0D; + if (FMLCommonHandler.instance().getSide().isClient()) { + tailBuffer = new ChainBuffer(); + } + } + + @Override + public void onUpdate() { + super.onUpdate(); + if (world.isRemote && !this.isAIDisabled()) { + tailBuffer.calculateChainSwingBuffer(120, 10, 5F, this); + } + } + + @Override + public int getDrinkLength() { + return 60; + } + + @Override + public int getEatLength() { + return 20; + } + + @Override + public int getRoarLength() { + return 30; + } + + public static String getPeriod() {return "Triassic";} + + //public static String getHabitat() {return "Terrestrial Archosaur";} + + @Override + public int getEggType(@Nullable String variantIn) { + return 1; //medium + } + + @Override + public boolean hasNest() { + return true; + } + + @Override + public int getAttackLength() { + return 10; + } + + @Override + public String getTexture() { + return this.getTexture(); + } + + @Override + public boolean dropsEggs() { + return false; + } + + @Override + public boolean laysEggs() { + return true; + } + + public float getAISpeedLand() { + float speedBase = 0.2F; + if (this.getTicks() < 0) { + return 0.0F; //Is laying eggs + } + if (this.getAnimation() == DRINK_ANIMATION || this.getAnimation() == MAKE_NEST_ANIMATION) { + return 0.0F; + } + if (this.getIsFast()) { + speedBase = speedBase * 1.55F; + } + return speedBase; + } + + @Override + public int getTalkInterval() { + return 220; + } + + @Override + public int getAdultAge() { + return 64000; + } + + public AxisAlignedBB getAttackBoundingBox() { + float size = this.getRenderSizeModifier() * 0.25F; + return this.getEntityBoundingBox().grow(1.0F + size, 1.0F + size, 1.0F + size); + } + + @Override + public float getEyeHeight() + { + return Math.max(super.getEyeHeight(), this.height * 0.95F); + } + + protected void initEntityAI() { + tasks.addTask(0, new EntityMateAIAgeableBase(this, 1.0D)); + tasks.addTask(1, new EntityTemptAI(this, 1, false, true, (float) this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).getAttributeValue() * 0.33F)); + tasks.addTask(2, new LandEntitySwimmingAI(this, 0.75, false)); + tasks.addTask(3, new AttackAI(this, 1.0D, false, this.getAttackLength())); + //tasks.addTask(4, new PanicAI(this, 1.6D)); + tasks.addTask(5, new LandWanderNestAI(this)); + tasks.addTask(6, new LandWanderFollowParent(this, 1.05D)); + tasks.addTask(7, new LandWanderAvoidWaterAI(this, 1.0D, 40)); + tasks.addTask(8, new EntityWatchClosestAI(this, EntityPlayer.class, 6.0F)); + tasks.addTask(9, new EntityWatchClosestAI(this, EntityPrehistoricFloraAgeableBase.class, 8.0F)); + tasks.addTask(10, new EntityLookIdleAI(this)); + this.targetTasks.addTask(0, new EatItemsEntityPrehistoricFloraAgeableBaseAI(this,1)); + this.targetTasks.addTask(1, new EntityHurtByTargetSmallerThanMeAI(this, false)); + this.targetTasks.addTask(2, new HuntPlayerAlwaysAI(this, EntityPlayer.class, true, (Predicate) entity -> entity instanceof EntityLivingBase)); + this.targetTasks.addTask(3, new HuntForDietEntityPrehistoricFloraAgeableBaseAI(this, EntityLivingBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0.1F, 1.2F, false));// this.targetTasks.addTask(1, new HuntSmallerThanMeAIAgeable(this, EntityPrehistoricFloraAgeableFishBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0)); + //this.targetTasks.addTask(3, new HuntSmallerThanMeAIAgeable(this, EntityLivingBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0.2)); + + } + + @Override + public String[] getFoodOreDicts() { + return DietString.MEAT; + } + + @Override + public EnumCreatureAttribute getCreatureAttribute() { + return EnumCreatureAttribute.UNDEFINED; + } + + @Override + protected boolean canDespawn() { + return false; + } + + @Override + protected void applyEntityAttributes() { + super.applyEntityAttributes(); + this.getAttributeMap().registerAttribute(SharedMonsterAttributes.ATTACK_DAMAGE); + this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).setBaseValue(6.0D); + this.getEntityAttribute(SharedMonsterAttributes.MOVEMENT_SPEED).setBaseValue(0.25D); + } + + @Override + public SoundEvent getAmbientSound() { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:smallcroc_idle")); + } + + @Override + public SoundEvent getHurtSound(DamageSource ds) { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:smallcroc_hurt")); + } + + @Override + public SoundEvent getDeathSound() { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:smallcroc_death")); + } + + @Override + protected float getSoundVolume() { + return 1.0F; + } + + @Override + public boolean getCanSpawnHere() { + return this.posY < (double) this.world.getSeaLevel() && this.isInWater(); + } + + + @Override + public void onLivingUpdate() { + super.onLivingUpdate(); + + if (this.getAnimation() == ATTACK_ANIMATION && this.getAnimationTick() == 8 && this.getAttackTarget() != null) { + launchAttack(); + } + + AnimationHandler.INSTANCE.updateAnimations(this); + + } + + + public static final PropertyDirection FACING = BlockDirectional.FACING; + + public boolean testLay(World world, BlockPos pos) { + //System.err.println("Testing laying conditions"); + BlockPos posNest = pos; + if (isLayableNest(world, posNest)) { + String eggRenderType = new Object() { + public String getValue(BlockPos posNest, String tag) { + TileEntity tileEntity = world.getTileEntity(posNest); + if (tileEntity != null) + return tileEntity.getTileData().getString(tag); + return ""; + } + }.getValue(new BlockPos(posNest), "egg"); + + //System.err.println("eggRenderType " + eggRenderType); + + if (eggRenderType.equals("")) { + return true; + } + } + return false; + } + + @Override + public boolean attackEntityAsMob(Entity entity) { + if (this.getAnimation() == NO_ANIMATION) { + this.setAnimation(ATTACK_ANIMATION); + //System.err.println("set attack"); + } + return false; + } + + public boolean isDirectPathBetweenPoints(Vec3d vec1, Vec3d vec2) { + RayTraceResult movingobjectposition = this.world.rayTraceBlocks(vec1, new Vec3d(vec2.x, vec2.y, vec2.z), false, true, false); + return movingobjectposition == null || movingobjectposition.typeOfHit != RayTraceResult.Type.BLOCK; + } + + @Nullable + protected ResourceLocation getLootTable() { + return LepidodendronMod.DYOPLAX_LOOT; + } + @Nullable + @Override + public CustomTrigger getModTrigger() { + return ModTriggers.CLICK_DYOPLAX; + } + //Rendering taxidermy: + //-------------------- + public static double offsetWall(@Nullable String variant) { + return 0.01; + } + public static double upperfrontverticallinedepth(@Nullable String variant) { + return 1.4; + } + public static double upperbackverticallinedepth(@Nullable String variant) { + return 0.8; + } + public static double upperfrontlineoffset(@Nullable String variant) { + return 0.4; + } + public static double upperfrontlineoffsetperpendiular(@Nullable String variant) { + return -0F; + } + public static double upperbacklineoffset(@Nullable String variant) { + return 0.4; + } + public static double upperbacklineoffsetperpendiular(@Nullable String variant) { + return -0.15F; + } + public static double lowerfrontverticallinedepth(@Nullable String variant) { + return 0; + } + public static double lowerbackverticallinedepth(@Nullable String variant) { + return 0.5; + } + public static double lowerfrontlineoffset(@Nullable String variant) { + return 0.4; + } + public static double lowerfrontlineoffsetperpendiular(@Nullable String variant) { + return -0F; + } + public static double lowerbacklineoffset(@Nullable String variant) { + return 0.04; + } + public static double lowerbacklineoffsetperpendiular(@Nullable String variant) { + return -0.15F; + } +// @SideOnly(Side.CLIENT) +// public static ResourceLocation textureDisplay(@Nullable String variant) { +// return RenderArizonasaurus.TEXTURE; +// } +// @SideOnly(Side.CLIENT) +// public static ModelBase modelDisplay(@Nullable String variant) { +// return RenderDisplays.modelArizonasaurus; +// } +// public static float getScaler(@Nullable String variant) { +// return RenderArizonasaurus.getScaler(); +// } +} \ No newline at end of file diff --git a/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraErpetosuchus.java b/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraErpetosuchus.java new file mode 100644 index 0000000000..1b27a4869a --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraErpetosuchus.java @@ -0,0 +1,334 @@ + +package net.lepidodendron.entity; + +import com.google.common.base.Predicate; +import net.ilexiconn.llibrary.client.model.tools.ChainBuffer; +import net.ilexiconn.llibrary.server.animation.Animation; +import net.ilexiconn.llibrary.server.animation.AnimationHandler; +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.block.base.IAdvancementGranter; +import net.lepidodendron.entity.ai.*; +import net.lepidodendron.entity.base.EntityPrehistoricFloraAgeableBase; +import net.lepidodendron.entity.base.EntityPrehistoricFloraLandBase; +import net.lepidodendron.entity.util.ITrappableLand; +import net.lepidodendron.util.CustomTrigger; +import net.lepidodendron.util.ModTriggers; +import net.minecraft.block.BlockDirectional; +import net.minecraft.block.properties.PropertyDirection; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.EnumCreatureAttribute; +import net.minecraft.entity.SharedMonsterAttributes; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.DamageSource; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.SoundEvent; +import net.minecraft.util.math.AxisAlignedBB; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.RayTraceResult; +import net.minecraft.util.math.Vec3d; +import net.minecraft.world.World; +import net.minecraftforge.fml.common.FMLCommonHandler; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; + +import javax.annotation.Nullable; + +public class EntityPrehistoricFloraErpetosuchus extends EntityPrehistoricFloraLandBase implements ITrappableLand, IAdvancementGranter { + + public BlockPos currentTarget; + @SideOnly(Side.CLIENT) + public ChainBuffer tailBuffer; + public int ambientSoundTime; + public Animation NOISE_ANIMATION; + + public EntityPrehistoricFloraErpetosuchus(World world) { + super(world); + setSize(0.2F, 0.2F); + minWidth = 0.15F; + maxWidth = 0.2F; + maxHeight = 0.2F; + maxHealthAgeable = 6.0D; + if (FMLCommonHandler.instance().getSide().isClient()) { + tailBuffer = new ChainBuffer(); + } + } + + @Override + public void onUpdate() { + super.onUpdate(); + if (world.isRemote && !this.isAIDisabled()) { + tailBuffer.calculateChainSwingBuffer(120, 10, 5F, this); + } + } + + @Override + public int getDrinkLength() { + return 60; + } + + @Override + public int getEatLength() { + return 20; + } + + @Override + public int getRoarLength() { + return 30; + } + + public static String getPeriod() {return "Triassic";} + + //public static String getHabitat() {return "Terrestrial Archosaur";} + + @Override + public int getEggType(@Nullable String variantIn) { + return 1; //medium + } + + @Override + public boolean hasNest() { + return true; + } + + @Override + public int getAttackLength() { + return 10; + } + + @Override + public String getTexture() { + return this.getTexture(); + } + + @Override + public boolean dropsEggs() { + return false; + } + + @Override + public boolean laysEggs() { + return true; + } + + public float getAISpeedLand() { + float speedBase = 0.2F; + if (this.getTicks() < 0) { + return 0.0F; //Is laying eggs + } + if (this.getAnimation() == DRINK_ANIMATION || this.getAnimation() == MAKE_NEST_ANIMATION) { + return 0.0F; + } + if (this.getIsFast()) { + speedBase = speedBase * 1.55F; + } + return speedBase; + } + + @Override + public int getTalkInterval() { + return 220; + } + + @Override + public int getAdultAge() { + return 64000; + } + + public AxisAlignedBB getAttackBoundingBox() { + float size = this.getRenderSizeModifier() * 0.25F; + return this.getEntityBoundingBox().grow(1.0F + size, 1.0F + size, 1.0F + size); + } + + @Override + public float getEyeHeight() + { + return Math.max(super.getEyeHeight(), this.height * 0.95F); + } + + protected void initEntityAI() { + tasks.addTask(0, new EntityMateAIAgeableBase(this, 1.0D)); + tasks.addTask(1, new EntityTemptAI(this, 1, false, true, (float) this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).getAttributeValue() * 0.33F)); + tasks.addTask(2, new LandEntitySwimmingAI(this, 0.75, false)); + tasks.addTask(3, new AttackAI(this, 1.0D, false, this.getAttackLength())); + //tasks.addTask(4, new PanicAI(this, 1.6D)); + tasks.addTask(5, new LandWanderNestAI(this)); + tasks.addTask(6, new LandWanderFollowParent(this, 1.05D)); + tasks.addTask(7, new LandWanderAvoidWaterAI(this, 1.0D, 40)); + tasks.addTask(8, new EntityWatchClosestAI(this, EntityPlayer.class, 6.0F)); + tasks.addTask(9, new EntityWatchClosestAI(this, EntityPrehistoricFloraAgeableBase.class, 8.0F)); + tasks.addTask(10, new EntityLookIdleAI(this)); + this.targetTasks.addTask(0, new EatItemsEntityPrehistoricFloraAgeableBaseAI(this,1)); + this.targetTasks.addTask(1, new EntityHurtByTargetSmallerThanMeAI(this, false)); + this.targetTasks.addTask(2, new HuntPlayerAlwaysAI(this, EntityPlayer.class, true, (Predicate) entity -> entity instanceof EntityLivingBase)); + this.targetTasks.addTask(3, new HuntForDietEntityPrehistoricFloraAgeableBaseAI(this, EntityLivingBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0.1F, 1.2F, false));// this.targetTasks.addTask(1, new HuntSmallerThanMeAIAgeable(this, EntityPrehistoricFloraAgeableFishBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0)); + //this.targetTasks.addTask(3, new HuntSmallerThanMeAIAgeable(this, EntityLivingBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0.2)); + + } + + @Override + public String[] getFoodOreDicts() { + return DietString.MEAT; + } + + @Override + public EnumCreatureAttribute getCreatureAttribute() { + return EnumCreatureAttribute.UNDEFINED; + } + + @Override + protected boolean canDespawn() { + return false; + } + + @Override + protected void applyEntityAttributes() { + super.applyEntityAttributes(); + this.getAttributeMap().registerAttribute(SharedMonsterAttributes.ATTACK_DAMAGE); + this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).setBaseValue(6.0D); + this.getEntityAttribute(SharedMonsterAttributes.MOVEMENT_SPEED).setBaseValue(0.25D); + } + + @Override + public SoundEvent getAmbientSound() { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:smallcroc_idle")); + } + + @Override + public SoundEvent getHurtSound(DamageSource ds) { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:smallcroc_hurt")); + } + + @Override + public SoundEvent getDeathSound() { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:smallcroc_death")); + } + + @Override + protected float getSoundVolume() { + return 1.0F; + } + + @Override + public boolean getCanSpawnHere() { + return this.posY < (double) this.world.getSeaLevel() && this.isInWater(); + } + + + @Override + public void onLivingUpdate() { + super.onLivingUpdate(); + + if (this.getAnimation() == ATTACK_ANIMATION && this.getAnimationTick() == 8 && this.getAttackTarget() != null) { + launchAttack(); + } + + AnimationHandler.INSTANCE.updateAnimations(this); + + } + + + public static final PropertyDirection FACING = BlockDirectional.FACING; + + public boolean testLay(World world, BlockPos pos) { + //System.err.println("Testing laying conditions"); + BlockPos posNest = pos; + if (isLayableNest(world, posNest)) { + String eggRenderType = new Object() { + public String getValue(BlockPos posNest, String tag) { + TileEntity tileEntity = world.getTileEntity(posNest); + if (tileEntity != null) + return tileEntity.getTileData().getString(tag); + return ""; + } + }.getValue(new BlockPos(posNest), "egg"); + + //System.err.println("eggRenderType " + eggRenderType); + + if (eggRenderType.equals("")) { + return true; + } + } + return false; + } + + @Override + public boolean attackEntityAsMob(Entity entity) { + if (this.getAnimation() == NO_ANIMATION) { + this.setAnimation(ATTACK_ANIMATION); + //System.err.println("set attack"); + } + return false; + } + + public boolean isDirectPathBetweenPoints(Vec3d vec1, Vec3d vec2) { + RayTraceResult movingobjectposition = this.world.rayTraceBlocks(vec1, new Vec3d(vec2.x, vec2.y, vec2.z), false, true, false); + return movingobjectposition == null || movingobjectposition.typeOfHit != RayTraceResult.Type.BLOCK; + } + + @Nullable + protected ResourceLocation getLootTable() { + return LepidodendronMod.ERPETOSUCHUS_LOOT; + } + @Nullable + @Override + public CustomTrigger getModTrigger() { + return ModTriggers.CLICK_ERPETOSUCHUS; + } + //Rendering taxidermy: + //-------------------- + public static double offsetWall(@Nullable String variant) { + return 0.01; + } + public static double upperfrontverticallinedepth(@Nullable String variant) { + return 1.4; + } + public static double upperbackverticallinedepth(@Nullable String variant) { + return 0.8; + } + public static double upperfrontlineoffset(@Nullable String variant) { + return 0.4; + } + public static double upperfrontlineoffsetperpendiular(@Nullable String variant) { + return -0F; + } + public static double upperbacklineoffset(@Nullable String variant) { + return 0.4; + } + public static double upperbacklineoffsetperpendiular(@Nullable String variant) { + return -0.15F; + } + public static double lowerfrontverticallinedepth(@Nullable String variant) { + return 0; + } + public static double lowerbackverticallinedepth(@Nullable String variant) { + return 0.5; + } + public static double lowerfrontlineoffset(@Nullable String variant) { + return 0.4; + } + public static double lowerfrontlineoffsetperpendiular(@Nullable String variant) { + return -0F; + } + public static double lowerbacklineoffset(@Nullable String variant) { + return 0.04; + } + public static double lowerbacklineoffsetperpendiular(@Nullable String variant) { + return -0.15F; + } +// @SideOnly(Side.CLIENT) +// public static ResourceLocation textureDisplay(@Nullable String variant) { +// return RenderArizonasaurus.TEXTURE; +// } +// @SideOnly(Side.CLIENT) +// public static ModelBase modelDisplay(@Nullable String variant) { +// return RenderDisplays.modelArizonasaurus; +// } +// public static float getScaler(@Nullable String variant) { +// return RenderArizonasaurus.getScaler(); +// } +} \ No newline at end of file diff --git a/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraIanthasaurus.java b/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraIanthasaurus.java index f1c235c80a..38eaec5d09 100644 --- a/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraIanthasaurus.java +++ b/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraIanthasaurus.java @@ -182,19 +182,19 @@ protected void applyEntityAttributes() { @Override public SoundEvent getAmbientSound() { return (SoundEvent) SoundEvent.REGISTRY - .getObject(new ResourceLocation("lepidodendron:edaphosaurus_idle")); + .getObject(new ResourceLocation("lepidodendron:remigiomontanus_idle")); } @Override public SoundEvent getHurtSound(DamageSource ds) { return (SoundEvent) SoundEvent.REGISTRY - .getObject(new ResourceLocation("lepidodendron:edaphosaurus_hurt")); + .getObject(new ResourceLocation("lepidodendron:remigiomontanus_hurt")); } @Override public SoundEvent getDeathSound() { return (SoundEvent) SoundEvent.REGISTRY - .getObject(new ResourceLocation("lepidodendron:edaphosaurus_death")); + .getObject(new ResourceLocation("lepidodendron:remigiomontanus_death")); } @Override diff --git a/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraNundasuchus.java b/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraNundasuchus.java new file mode 100644 index 0000000000..c34c011c14 --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraNundasuchus.java @@ -0,0 +1,385 @@ + +package net.lepidodendron.entity; + +import com.google.common.base.Predicate; +import net.ilexiconn.llibrary.client.model.tools.ChainBuffer; +import net.ilexiconn.llibrary.server.animation.Animation; +import net.ilexiconn.llibrary.server.animation.AnimationHandler; +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.block.base.IAdvancementGranter; +import net.lepidodendron.entity.ai.*; +import net.lepidodendron.entity.base.EntityPrehistoricFloraAgeableBase; +import net.lepidodendron.entity.base.EntityPrehistoricFloraLandBase; +import net.lepidodendron.entity.util.ITrappableLand; +import net.lepidodendron.util.CustomTrigger; +import net.lepidodendron.util.ModTriggers; +import net.minecraft.block.BlockDirectional; +import net.minecraft.block.properties.PropertyDirection; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.EnumCreatureAttribute; +import net.minecraft.entity.SharedMonsterAttributes; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.DamageSource; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.SoundEvent; +import net.minecraft.util.math.AxisAlignedBB; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.RayTraceResult; +import net.minecraft.util.math.Vec3d; +import net.minecraft.world.World; +import net.minecraftforge.fml.common.FMLCommonHandler; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; + +import javax.annotation.Nullable; + +public class EntityPrehistoricFloraNundasuchus extends EntityPrehistoricFloraLandBase implements ITrappableLand, IAdvancementGranter { + + public BlockPos currentTarget; + @SideOnly(Side.CLIENT) + public ChainBuffer tailBuffer; + public int ambientSoundTime; + public Animation NOISE_ANIMATION; + public Animation STAND_ANIMATION; + private int standCooldown; + + public EntityPrehistoricFloraNundasuchus(World world) { + super(world); + setSize(0.6F, 0.65F); + minWidth = 0.15F; + maxWidth = 0.6F; + maxHeight = 0.65F; + maxHealthAgeable = 28.0D; + if (FMLCommonHandler.instance().getSide().isClient()) { + tailBuffer = new ChainBuffer(); + } + STAND_ANIMATION = Animation.create(180); + } + + @Override + public void onUpdate() { + super.onUpdate(); + if (world.isRemote && !this.isAIDisabled()) { + tailBuffer.calculateChainSwingBuffer(120, 10, 5F, this); + } + } + + @Override + public boolean isAnimationDirectionLocked(Animation animation) { + return animation == STAND_ANIMATION + || super.isAnimationDirectionLocked(animation); + } + + @Override + public int getDrinkLength() { + return 60; + } + + @Override + public int getEatLength() { + return 20; + } + + @Override + public int getRoarLength() { + return 32; + } + + public static String getPeriod() {return "Triassic";} + + //public static String getHabitat() {return "Terrestrial Archosaur";} + + @Override + public int getEggType(@Nullable String variantIn) { + return 1; //medium + } + + @Override + public boolean hasNest() { + return true; + } + + @Override + public int getAttackLength() { + return 15; + } + + @Override + public String getTexture() { + return this.getTexture(); + } + + @Override + public boolean dropsEggs() { + return false; + } + + @Override + public boolean laysEggs() { + return true; + } + + public float getAISpeedLand() { + float speedBase = 0.3F; + if (this.getTicks() < 0) { + return 0.0F; //Is laying eggs + } + if (this.getAnimation() == DRINK_ANIMATION || this.getAnimation() == MAKE_NEST_ANIMATION || this.getAnimation() == STAND_ANIMATION) { + return 0.0F; + } + if (this.getIsFast()) { + speedBase = speedBase * 1.55F; + } + return speedBase; + } + + @Override + public void onEntityUpdate() { + super.onEntityUpdate(); + //random idle animations + if ((!this.world.isRemote) && this.getEatTarget() == null && this.getAttackTarget() == null && this.getRevengeTarget() == null + && !this.getIsMoving() && this.getAnimation() == NO_ANIMATION && standCooldown == 0) { + if (this.getAnimation() == NO_ANIMATION) { + this.setAnimation(STAND_ANIMATION); + } + this.standCooldown = 2000; + } + if ((!this.world.isRemote) && this.getAnimation() == STAND_ANIMATION && this.getAnimationTick() == STAND_ANIMATION.getDuration() - 1) { + this.standCooldown = 2000; + this.setAnimation(NO_ANIMATION); + } + } + + @Override + public Animation[] getAnimations() { + return new Animation[]{ATTACK_ANIMATION, DRINK_ANIMATION, ROAR_ANIMATION, LAY_ANIMATION, EAT_ANIMATION, STAND_ANIMATION}; + } + + public void writeEntityToNBT(NBTTagCompound compound) + { + super.writeEntityToNBT(compound); + compound.setInteger("standCooldown", this.standCooldown); + } + + public void readEntityFromNBT(NBTTagCompound compound) { + super.readEntityFromNBT(compound); + this.standCooldown = compound.getInteger("standCooldown"); + } + + @Override + public int getTalkInterval() { + return 220; + } + + @Override + public int getAdultAge() { + return 64000; + } + + public AxisAlignedBB getAttackBoundingBox() { + float size = this.getRenderSizeModifier() * 0.25F; + return this.getEntityBoundingBox().grow(1.0F + size, 1.0F + size, 1.0F + size); + } + + @Override + public float getEyeHeight() + { + return Math.max(super.getEyeHeight(), this.height * 0.95F); + } + + protected void initEntityAI() { + tasks.addTask(0, new EntityMateAIAgeableBase(this, 1.0D)); + tasks.addTask(1, new EntityTemptAI(this, 1, false, true, (float) this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).getAttributeValue() * 0.33F)); + tasks.addTask(2, new LandEntitySwimmingAI(this, 0.75, false)); + tasks.addTask(3, new AttackAI(this, 1.0D, false, this.getAttackLength())); + //tasks.addTask(4, new PanicAI(this, 1.6D)); + tasks.addTask(5, new LandWanderNestAI(this)); + tasks.addTask(6, new LandWanderFollowParent(this, 1.05D)); + tasks.addTask(7, new LandWanderAvoidWaterAI(this, 1.0D, 40)); + tasks.addTask(8, new EntityWatchClosestAI(this, EntityPlayer.class, 6.0F)); + tasks.addTask(9, new EntityWatchClosestAI(this, EntityPrehistoricFloraAgeableBase.class, 8.0F)); + tasks.addTask(10, new EntityLookIdleAI(this)); + this.targetTasks.addTask(0, new EatItemsEntityPrehistoricFloraAgeableBaseAI(this,1)); + this.targetTasks.addTask(1, new EntityHurtByTargetSmallerThanMeAI(this, false)); + this.targetTasks.addTask(2, new HuntPlayerAlwaysAI(this, EntityPlayer.class, true, (Predicate) entity -> entity instanceof EntityLivingBase)); + this.targetTasks.addTask(3, new HuntForDietEntityPrehistoricFloraAgeableBaseAI(this, EntityLivingBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0.1F, 1.2F, false));// this.targetTasks.addTask(1, new HuntSmallerThanMeAIAgeable(this, EntityPrehistoricFloraAgeableFishBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0)); + //this.targetTasks.addTask(3, new HuntSmallerThanMeAIAgeable(this, EntityLivingBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0.2)); + + } + + @Override + public String[] getFoodOreDicts() { + return DietString.MEAT; + } + + @Override + public EnumCreatureAttribute getCreatureAttribute() { + return EnumCreatureAttribute.UNDEFINED; + } + + @Override + protected boolean canDespawn() { + return false; + } + + @Override + protected void applyEntityAttributes() { + super.applyEntityAttributes(); + this.getAttributeMap().registerAttribute(SharedMonsterAttributes.ATTACK_DAMAGE); + this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).setBaseValue(6.0D); + this.getEntityAttribute(SharedMonsterAttributes.MOVEMENT_SPEED).setBaseValue(0.25D); + } + + @Override + public SoundEvent getAmbientSound() { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:largecroc_idle")); + } + + @Override + public SoundEvent getHurtSound(DamageSource ds) { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:largecroc_hurt")); + } + + @Override + public SoundEvent getDeathSound() { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:largecroc_death")); + } + + @Override + protected float getSoundVolume() { + return 1.0F; + } + + @Override + public boolean getCanSpawnHere() { + return this.posY < (double) this.world.getSeaLevel() && this.isInWater(); + } + + + @Override + public void onLivingUpdate() { + super.onLivingUpdate(); + + if (this.standCooldown > 0) { + this.standCooldown -= rand.nextInt(3) + 1; + } + if (this.standCooldown < 0) { + this.standCooldown = 0; + } + + if (this.getAnimation() == ATTACK_ANIMATION && this.getAnimationTick() == 10 && this.getAttackTarget() != null) { + launchAttack(); + } + + AnimationHandler.INSTANCE.updateAnimations(this); + + } + + + public static final PropertyDirection FACING = BlockDirectional.FACING; + + public boolean testLay(World world, BlockPos pos) { + //System.err.println("Testing laying conditions"); + BlockPos posNest = pos; + if (isLayableNest(world, posNest)) { + String eggRenderType = new Object() { + public String getValue(BlockPos posNest, String tag) { + TileEntity tileEntity = world.getTileEntity(posNest); + if (tileEntity != null) + return tileEntity.getTileData().getString(tag); + return ""; + } + }.getValue(new BlockPos(posNest), "egg"); + + //System.err.println("eggRenderType " + eggRenderType); + + if (eggRenderType.equals("")) { + return true; + } + } + return false; + } + + @Override + public boolean attackEntityAsMob(Entity entity) { + if (this.getAnimation() == NO_ANIMATION) { + this.setAnimation(ATTACK_ANIMATION); + //System.err.println("set attack"); + } + return false; + } + + public boolean isDirectPathBetweenPoints(Vec3d vec1, Vec3d vec2) { + RayTraceResult movingobjectposition = this.world.rayTraceBlocks(vec1, new Vec3d(vec2.x, vec2.y, vec2.z), false, true, false); + return movingobjectposition == null || movingobjectposition.typeOfHit != RayTraceResult.Type.BLOCK; + } + + @Nullable + protected ResourceLocation getLootTable() { + return LepidodendronMod.NUNDASUCHUS_LOOT; + } + + @Nullable + @Override + public CustomTrigger getModTrigger() { + return ModTriggers.CLICK_NUNDASUCHUS; + } + //Rendering taxidermy: + //-------------------- + public static double offsetWall(@Nullable String variant) { + return 0.01; + } + public static double upperfrontverticallinedepth(@Nullable String variant) { + return 1.4; + } + public static double upperbackverticallinedepth(@Nullable String variant) { + return 0.8; + } + public static double upperfrontlineoffset(@Nullable String variant) { + return 0.4; + } + public static double upperfrontlineoffsetperpendiular(@Nullable String variant) { + return -0F; + } + public static double upperbacklineoffset(@Nullable String variant) { + return 0.4; + } + public static double upperbacklineoffsetperpendiular(@Nullable String variant) { + return -0.15F; + } + public static double lowerfrontverticallinedepth(@Nullable String variant) { + return 0; + } + public static double lowerbackverticallinedepth(@Nullable String variant) { + return 0.5; + } + public static double lowerfrontlineoffset(@Nullable String variant) { + return 0.4; + } + public static double lowerfrontlineoffsetperpendiular(@Nullable String variant) { + return -0F; + } + public static double lowerbacklineoffset(@Nullable String variant) { + return 0.04; + } + public static double lowerbacklineoffsetperpendiular(@Nullable String variant) { + return -0.15F; + } +// @SideOnly(Side.CLIENT) +// public static ResourceLocation textureDisplay(@Nullable String variant) { +// return RenderArizonasaurus.TEXTURE; +// } +// @SideOnly(Side.CLIENT) +// public static ModelBase modelDisplay(@Nullable String variant) { +// return RenderDisplays.modelArizonasaurus; +// } +// public static float getScaler(@Nullable String variant) { +// return RenderArizonasaurus.getScaler(); +// } +} \ No newline at end of file diff --git a/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraParringtonia.java b/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraParringtonia.java new file mode 100644 index 0000000000..b241e4c3fb --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraParringtonia.java @@ -0,0 +1,334 @@ + +package net.lepidodendron.entity; + +import com.google.common.base.Predicate; +import net.ilexiconn.llibrary.client.model.tools.ChainBuffer; +import net.ilexiconn.llibrary.server.animation.Animation; +import net.ilexiconn.llibrary.server.animation.AnimationHandler; +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.block.base.IAdvancementGranter; +import net.lepidodendron.entity.ai.*; +import net.lepidodendron.entity.base.EntityPrehistoricFloraAgeableBase; +import net.lepidodendron.entity.base.EntityPrehistoricFloraLandBase; +import net.lepidodendron.entity.util.ITrappableLand; +import net.lepidodendron.util.CustomTrigger; +import net.lepidodendron.util.ModTriggers; +import net.minecraft.block.BlockDirectional; +import net.minecraft.block.properties.PropertyDirection; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.EnumCreatureAttribute; +import net.minecraft.entity.SharedMonsterAttributes; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.DamageSource; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.SoundEvent; +import net.minecraft.util.math.AxisAlignedBB; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.RayTraceResult; +import net.minecraft.util.math.Vec3d; +import net.minecraft.world.World; +import net.minecraftforge.fml.common.FMLCommonHandler; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; + +import javax.annotation.Nullable; + +public class EntityPrehistoricFloraParringtonia extends EntityPrehistoricFloraLandBase implements ITrappableLand, IAdvancementGranter { + + public BlockPos currentTarget; + @SideOnly(Side.CLIENT) + public ChainBuffer tailBuffer; + public int ambientSoundTime; + public Animation NOISE_ANIMATION; + + public EntityPrehistoricFloraParringtonia(World world) { + super(world); + setSize(0.5F, 0.3F); + minWidth = 0.15F; + maxWidth = 0.5F; + maxHeight = 0.3F; + maxHealthAgeable = 21.0D; + if (FMLCommonHandler.instance().getSide().isClient()) { + tailBuffer = new ChainBuffer(); + } + } + + @Override + public void onUpdate() { + super.onUpdate(); + if (world.isRemote && !this.isAIDisabled()) { + tailBuffer.calculateChainSwingBuffer(120, 10, 5F, this); + } + } + + @Override + public int getDrinkLength() { + return 60; + } + + @Override + public int getEatLength() { + return 20; + } + + @Override + public int getRoarLength() { + return 30; + } + + public static String getPeriod() {return "Triassic";} + + //public static String getHabitat() {return "Terrestrial Archosaur";} + + @Override + public int getEggType(@Nullable String variantIn) { + return 1; //medium + } + + @Override + public boolean hasNest() { + return true; + } + + @Override + public int getAttackLength() { + return 20; + } + + @Override + public String getTexture() { + return this.getTexture(); + } + + @Override + public boolean dropsEggs() { + return false; + } + + @Override + public boolean laysEggs() { + return true; + } + + public float getAISpeedLand() { + float speedBase = 0.3F; + if (this.getTicks() < 0) { + return 0.0F; //Is laying eggs + } + if (this.getAnimation() == DRINK_ANIMATION || this.getAnimation() == MAKE_NEST_ANIMATION) { + return 0.0F; + } + if (this.getIsFast()) { + speedBase = speedBase * 1.55F; + } + return speedBase; + } + + @Override + public int getTalkInterval() { + return 220; + } + + @Override + public int getAdultAge() { + return 64000; + } + + public AxisAlignedBB getAttackBoundingBox() { + float size = this.getRenderSizeModifier() * 0.25F; + return this.getEntityBoundingBox().grow(1.0F + size, 1.0F + size, 1.0F + size); + } + + @Override + public float getEyeHeight() + { + return Math.max(super.getEyeHeight(), this.height * 0.95F); + } + + protected void initEntityAI() { + tasks.addTask(0, new EntityMateAIAgeableBase(this, 1.0D)); + tasks.addTask(1, new EntityTemptAI(this, 1, false, true, (float) this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).getAttributeValue() * 0.33F)); + tasks.addTask(2, new LandEntitySwimmingAI(this, 0.75, false)); + tasks.addTask(3, new AttackAI(this, 1.0D, false, this.getAttackLength())); + //tasks.addTask(4, new PanicAI(this, 1.6D)); + tasks.addTask(5, new LandWanderNestAI(this)); + tasks.addTask(6, new LandWanderFollowParent(this, 1.05D)); + tasks.addTask(7, new LandWanderAvoidWaterAI(this, 1.0D, 40)); + tasks.addTask(8, new EntityWatchClosestAI(this, EntityPlayer.class, 6.0F)); + tasks.addTask(9, new EntityWatchClosestAI(this, EntityPrehistoricFloraAgeableBase.class, 8.0F)); + tasks.addTask(10, new EntityLookIdleAI(this)); + this.targetTasks.addTask(0, new EatItemsEntityPrehistoricFloraAgeableBaseAI(this,1)); + this.targetTasks.addTask(1, new EntityHurtByTargetSmallerThanMeAI(this, false)); + this.targetTasks.addTask(2, new HuntPlayerAlwaysAI(this, EntityPlayer.class, true, (Predicate) entity -> entity instanceof EntityLivingBase)); + this.targetTasks.addTask(3, new HuntForDietEntityPrehistoricFloraAgeableBaseAI(this, EntityLivingBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0.1F, 1.2F, false));// this.targetTasks.addTask(1, new HuntSmallerThanMeAIAgeable(this, EntityPrehistoricFloraAgeableFishBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0)); + //this.targetTasks.addTask(3, new HuntSmallerThanMeAIAgeable(this, EntityLivingBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0.2)); + + } + + @Override + public String[] getFoodOreDicts() { + return DietString.MEAT; + } + + @Override + public EnumCreatureAttribute getCreatureAttribute() { + return EnumCreatureAttribute.UNDEFINED; + } + + @Override + protected boolean canDespawn() { + return false; + } + + @Override + protected void applyEntityAttributes() { + super.applyEntityAttributes(); + this.getAttributeMap().registerAttribute(SharedMonsterAttributes.ATTACK_DAMAGE); + this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).setBaseValue(6.0D); + this.getEntityAttribute(SharedMonsterAttributes.MOVEMENT_SPEED).setBaseValue(0.25D); + } + + @Override + public SoundEvent getAmbientSound() { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:smallcroc_idle")); + } + + @Override + public SoundEvent getHurtSound(DamageSource ds) { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:smallcroc_hurt")); + } + + @Override + public SoundEvent getDeathSound() { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:smallcroc_death")); + } + + @Override + protected float getSoundVolume() { + return 1.0F; + } + + @Override + public boolean getCanSpawnHere() { + return this.posY < (double) this.world.getSeaLevel() && this.isInWater(); + } + + + @Override + public void onLivingUpdate() { + super.onLivingUpdate(); + + if (this.getAnimation() == ATTACK_ANIMATION && this.getAnimationTick() == 10 && this.getAttackTarget() != null) { + launchAttack(); + } + + AnimationHandler.INSTANCE.updateAnimations(this); + + } + + + public static final PropertyDirection FACING = BlockDirectional.FACING; + + public boolean testLay(World world, BlockPos pos) { + //System.err.println("Testing laying conditions"); + BlockPos posNest = pos; + if (isLayableNest(world, posNest)) { + String eggRenderType = new Object() { + public String getValue(BlockPos posNest, String tag) { + TileEntity tileEntity = world.getTileEntity(posNest); + if (tileEntity != null) + return tileEntity.getTileData().getString(tag); + return ""; + } + }.getValue(new BlockPos(posNest), "egg"); + + //System.err.println("eggRenderType " + eggRenderType); + + if (eggRenderType.equals("")) { + return true; + } + } + return false; + } + + @Override + public boolean attackEntityAsMob(Entity entity) { + if (this.getAnimation() == NO_ANIMATION) { + this.setAnimation(ATTACK_ANIMATION); + //System.err.println("set attack"); + } + return false; + } + + public boolean isDirectPathBetweenPoints(Vec3d vec1, Vec3d vec2) { + RayTraceResult movingobjectposition = this.world.rayTraceBlocks(vec1, new Vec3d(vec2.x, vec2.y, vec2.z), false, true, false); + return movingobjectposition == null || movingobjectposition.typeOfHit != RayTraceResult.Type.BLOCK; + } + + @Nullable + protected ResourceLocation getLootTable() { + return LepidodendronMod.PARRINGTONIA_LOOT; + } + @Nullable + @Override + public CustomTrigger getModTrigger() { + return ModTriggers.CLICK_PARRINGTONIA; + } + //Rendering taxidermy: + //-------------------- + public static double offsetWall(@Nullable String variant) { + return 0.01; + } + public static double upperfrontverticallinedepth(@Nullable String variant) { + return 1.4; + } + public static double upperbackverticallinedepth(@Nullable String variant) { + return 0.8; + } + public static double upperfrontlineoffset(@Nullable String variant) { + return 0.4; + } + public static double upperfrontlineoffsetperpendiular(@Nullable String variant) { + return -0F; + } + public static double upperbacklineoffset(@Nullable String variant) { + return 0.4; + } + public static double upperbacklineoffsetperpendiular(@Nullable String variant) { + return -0.15F; + } + public static double lowerfrontverticallinedepth(@Nullable String variant) { + return 0; + } + public static double lowerbackverticallinedepth(@Nullable String variant) { + return 0.5; + } + public static double lowerfrontlineoffset(@Nullable String variant) { + return 0.4; + } + public static double lowerfrontlineoffsetperpendiular(@Nullable String variant) { + return -0F; + } + public static double lowerbacklineoffset(@Nullable String variant) { + return 0.04; + } + public static double lowerbacklineoffsetperpendiular(@Nullable String variant) { + return -0.15F; + } +// @SideOnly(Side.CLIENT) +// public static ResourceLocation textureDisplay(@Nullable String variant) { +// return RenderArizonasaurus.TEXTURE; +// } +// @SideOnly(Side.CLIENT) +// public static ModelBase modelDisplay(@Nullable String variant) { +// return RenderDisplays.modelArizonasaurus; +// } +// public static float getScaler(@Nullable String variant) { +// return RenderArizonasaurus.getScaler(); +// } +} \ No newline at end of file diff --git a/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraProtosuchus.java b/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraProtosuchus.java new file mode 100644 index 0000000000..59f5f86153 --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraProtosuchus.java @@ -0,0 +1,334 @@ + +package net.lepidodendron.entity; + +import com.google.common.base.Predicate; +import net.ilexiconn.llibrary.client.model.tools.ChainBuffer; +import net.ilexiconn.llibrary.server.animation.Animation; +import net.ilexiconn.llibrary.server.animation.AnimationHandler; +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.block.base.IAdvancementGranter; +import net.lepidodendron.entity.ai.*; +import net.lepidodendron.entity.base.EntityPrehistoricFloraAgeableBase; +import net.lepidodendron.entity.base.EntityPrehistoricFloraLandBase; +import net.lepidodendron.entity.util.ITrappableLand; +import net.lepidodendron.util.CustomTrigger; +import net.lepidodendron.util.ModTriggers; +import net.minecraft.block.BlockDirectional; +import net.minecraft.block.properties.PropertyDirection; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.EnumCreatureAttribute; +import net.minecraft.entity.SharedMonsterAttributes; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.DamageSource; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.SoundEvent; +import net.minecraft.util.math.AxisAlignedBB; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.RayTraceResult; +import net.minecraft.util.math.Vec3d; +import net.minecraft.world.World; +import net.minecraftforge.fml.common.FMLCommonHandler; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; + +import javax.annotation.Nullable; + +public class EntityPrehistoricFloraProtosuchus extends EntityPrehistoricFloraLandBase implements ITrappableLand, IAdvancementGranter { + + public BlockPos currentTarget; + @SideOnly(Side.CLIENT) + public ChainBuffer tailBuffer; + public int ambientSoundTime; + public Animation NOISE_ANIMATION; + + public EntityPrehistoricFloraProtosuchus(World world) { + super(world); + setSize(0.5F, 0.3F); + minWidth = 0.15F; + maxWidth = 0.5F; + maxHeight = 0.3F; + maxHealthAgeable = 13.0D; + if (FMLCommonHandler.instance().getSide().isClient()) { + tailBuffer = new ChainBuffer(); + } + } + + @Override + public void onUpdate() { + super.onUpdate(); + if (world.isRemote && !this.isAIDisabled()) { + tailBuffer.calculateChainSwingBuffer(120, 10, 5F, this); + } + } + + @Override + public int getDrinkLength() { + return 60; + } + + @Override + public int getEatLength() { + return 20; + } + + @Override + public int getRoarLength() { + return 30; + } + + public static String getPeriod() {return "Jurassic";} + + //public static String getHabitat() {return "Terrestrial Archosaur";} + + @Override + public int getEggType(@Nullable String variantIn) { + return 1; //medium + } + + @Override + public boolean hasNest() { + return true; + } + + @Override + public int getAttackLength() { + return 10; + } + + @Override + public String getTexture() { + return this.getTexture(); + } + + @Override + public boolean dropsEggs() { + return false; + } + + @Override + public boolean laysEggs() { + return true; + } + + public float getAISpeedLand() { + float speedBase = 0.28F; + if (this.getTicks() < 0) { + return 0.0F; //Is laying eggs + } + if (this.getAnimation() == DRINK_ANIMATION || this.getAnimation() == MAKE_NEST_ANIMATION) { + return 0.0F; + } + if (this.getIsFast()) { + speedBase = speedBase * 1.55F; + } + return speedBase; + } + + @Override + public int getTalkInterval() { + return 220; + } + + @Override + public int getAdultAge() { + return 64000; + } + + public AxisAlignedBB getAttackBoundingBox() { + float size = this.getRenderSizeModifier() * 0.25F; + return this.getEntityBoundingBox().grow(1.0F + size, 1.0F + size, 1.0F + size); + } + + @Override + public float getEyeHeight() + { + return Math.max(super.getEyeHeight(), this.height * 0.95F); + } + + protected void initEntityAI() { + tasks.addTask(0, new EntityMateAIAgeableBase(this, 1.0D)); + tasks.addTask(1, new EntityTemptAI(this, 1, false, true, (float) this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).getAttributeValue() * 0.33F)); + tasks.addTask(2, new LandEntitySwimmingAI(this, 0.75, false)); + tasks.addTask(3, new AttackAI(this, 1.0D, false, this.getAttackLength())); + //tasks.addTask(4, new PanicAI(this, 1.6D)); + tasks.addTask(5, new LandWanderNestAI(this)); + tasks.addTask(6, new LandWanderFollowParent(this, 1.05D)); + tasks.addTask(7, new LandWanderAvoidWaterAI(this, 1.0D, 40)); + tasks.addTask(8, new EntityWatchClosestAI(this, EntityPlayer.class, 6.0F)); + tasks.addTask(9, new EntityWatchClosestAI(this, EntityPrehistoricFloraAgeableBase.class, 8.0F)); + tasks.addTask(10, new EntityLookIdleAI(this)); + this.targetTasks.addTask(0, new EatItemsEntityPrehistoricFloraAgeableBaseAI(this,1)); + this.targetTasks.addTask(1, new EntityHurtByTargetSmallerThanMeAI(this, false)); + this.targetTasks.addTask(2, new HuntPlayerAlwaysAI(this, EntityPlayer.class, true, (Predicate) entity -> entity instanceof EntityLivingBase)); + this.targetTasks.addTask(3, new HuntForDietEntityPrehistoricFloraAgeableBaseAI(this, EntityLivingBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0.1F, 1.2F, false));// this.targetTasks.addTask(1, new HuntSmallerThanMeAIAgeable(this, EntityPrehistoricFloraAgeableFishBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0)); + //this.targetTasks.addTask(3, new HuntSmallerThanMeAIAgeable(this, EntityLivingBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0.2)); + + } + + @Override + public String[] getFoodOreDicts() { + return DietString.MEAT; + } + + @Override + public EnumCreatureAttribute getCreatureAttribute() { + return EnumCreatureAttribute.UNDEFINED; + } + + @Override + protected boolean canDespawn() { + return false; + } + + @Override + protected void applyEntityAttributes() { + super.applyEntityAttributes(); + this.getAttributeMap().registerAttribute(SharedMonsterAttributes.ATTACK_DAMAGE); + this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).setBaseValue(6.0D); + this.getEntityAttribute(SharedMonsterAttributes.MOVEMENT_SPEED).setBaseValue(0.25D); + } + + @Override + public SoundEvent getAmbientSound() { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:smallcroc_idle")); + } + + @Override + public SoundEvent getHurtSound(DamageSource ds) { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:smallcroc_hurt")); + } + + @Override + public SoundEvent getDeathSound() { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:smallcroc_death")); + } + + @Override + protected float getSoundVolume() { + return 1.0F; + } + + @Override + public boolean getCanSpawnHere() { + return this.posY < (double) this.world.getSeaLevel() && this.isInWater(); + } + + + @Override + public void onLivingUpdate() { + super.onLivingUpdate(); + + if (this.getAnimation() == ATTACK_ANIMATION && this.getAnimationTick() == 7 && this.getAttackTarget() != null) { + launchAttack(); + } + + AnimationHandler.INSTANCE.updateAnimations(this); + + } + + + public static final PropertyDirection FACING = BlockDirectional.FACING; + + public boolean testLay(World world, BlockPos pos) { + //System.err.println("Testing laying conditions"); + BlockPos posNest = pos; + if (isLayableNest(world, posNest)) { + String eggRenderType = new Object() { + public String getValue(BlockPos posNest, String tag) { + TileEntity tileEntity = world.getTileEntity(posNest); + if (tileEntity != null) + return tileEntity.getTileData().getString(tag); + return ""; + } + }.getValue(new BlockPos(posNest), "egg"); + + //System.err.println("eggRenderType " + eggRenderType); + + if (eggRenderType.equals("")) { + return true; + } + } + return false; + } + + @Override + public boolean attackEntityAsMob(Entity entity) { + if (this.getAnimation() == NO_ANIMATION) { + this.setAnimation(ATTACK_ANIMATION); + //System.err.println("set attack"); + } + return false; + } + + public boolean isDirectPathBetweenPoints(Vec3d vec1, Vec3d vec2) { + RayTraceResult movingobjectposition = this.world.rayTraceBlocks(vec1, new Vec3d(vec2.x, vec2.y, vec2.z), false, true, false); + return movingobjectposition == null || movingobjectposition.typeOfHit != RayTraceResult.Type.BLOCK; + } + + @Nullable + protected ResourceLocation getLootTable() { + return LepidodendronMod.PROTOSUCHUS_LOOT; + } + @Nullable + @Override + public CustomTrigger getModTrigger() { + return ModTriggers.CLICK_PROTOSUCHUS; + } + //Rendering taxidermy: + //-------------------- + public static double offsetWall(@Nullable String variant) { + return 0.01; + } + public static double upperfrontverticallinedepth(@Nullable String variant) { + return 1.4; + } + public static double upperbackverticallinedepth(@Nullable String variant) { + return 0.8; + } + public static double upperfrontlineoffset(@Nullable String variant) { + return 0.4; + } + public static double upperfrontlineoffsetperpendiular(@Nullable String variant) { + return -0F; + } + public static double upperbacklineoffset(@Nullable String variant) { + return 0.4; + } + public static double upperbacklineoffsetperpendiular(@Nullable String variant) { + return -0.15F; + } + public static double lowerfrontverticallinedepth(@Nullable String variant) { + return 0; + } + public static double lowerbackverticallinedepth(@Nullable String variant) { + return 0.5; + } + public static double lowerfrontlineoffset(@Nullable String variant) { + return 0.4; + } + public static double lowerfrontlineoffsetperpendiular(@Nullable String variant) { + return -0F; + } + public static double lowerbacklineoffset(@Nullable String variant) { + return 0.04; + } + public static double lowerbacklineoffsetperpendiular(@Nullable String variant) { + return -0.15F; + } +// @SideOnly(Side.CLIENT) +// public static ResourceLocation textureDisplay(@Nullable String variant) { +// return RenderArizonasaurus.TEXTURE; +// } +// @SideOnly(Side.CLIENT) +// public static ModelBase modelDisplay(@Nullable String variant) { +// return RenderDisplays.modelArizonasaurus; +// } +// public static float getScaler(@Nullable String variant) { +// return RenderArizonasaurus.getScaler(); +// } +} \ No newline at end of file diff --git a/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraRiojasuchus.java b/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraRiojasuchus.java new file mode 100644 index 0000000000..c985708f89 --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraRiojasuchus.java @@ -0,0 +1,334 @@ + +package net.lepidodendron.entity; + +import com.google.common.base.Predicate; +import net.ilexiconn.llibrary.client.model.tools.ChainBuffer; +import net.ilexiconn.llibrary.server.animation.Animation; +import net.ilexiconn.llibrary.server.animation.AnimationHandler; +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.block.base.IAdvancementGranter; +import net.lepidodendron.entity.ai.*; +import net.lepidodendron.entity.base.EntityPrehistoricFloraAgeableBase; +import net.lepidodendron.entity.base.EntityPrehistoricFloraLandBase; +import net.lepidodendron.entity.util.ITrappableLand; +import net.lepidodendron.util.CustomTrigger; +import net.lepidodendron.util.ModTriggers; +import net.minecraft.block.BlockDirectional; +import net.minecraft.block.properties.PropertyDirection; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.EnumCreatureAttribute; +import net.minecraft.entity.SharedMonsterAttributes; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.DamageSource; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.SoundEvent; +import net.minecraft.util.math.AxisAlignedBB; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.RayTraceResult; +import net.minecraft.util.math.Vec3d; +import net.minecraft.world.World; +import net.minecraftforge.fml.common.FMLCommonHandler; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; + +import javax.annotation.Nullable; + +public class EntityPrehistoricFloraRiojasuchus extends EntityPrehistoricFloraLandBase implements ITrappableLand, IAdvancementGranter { + + public BlockPos currentTarget; + @SideOnly(Side.CLIENT) + public ChainBuffer tailBuffer; + public int ambientSoundTime; + public Animation NOISE_ANIMATION; + + public EntityPrehistoricFloraRiojasuchus(World world) { + super(world); + setSize(0.85F, 0.5F); + minWidth = 0.15F; + maxWidth = 0.85F; + maxHeight = 0.5F; + maxHealthAgeable = 23.0D; + if (FMLCommonHandler.instance().getSide().isClient()) { + tailBuffer = new ChainBuffer(); + } + } + + @Override + public void onUpdate() { + super.onUpdate(); + if (world.isRemote && !this.isAIDisabled()) { + tailBuffer.calculateChainSwingBuffer(120, 10, 5F, this); + } + } + + @Override + public int getDrinkLength() { + return 60; + } + + @Override + public int getEatLength() { + return 20; + } + + @Override + public int getRoarLength() { + return 30; + } + + public static String getPeriod() {return "Triassic";} + + //public static String getHabitat() {return "Terrestrial Archosaur";} + + @Override + public int getEggType(@Nullable String variantIn) { + return 1; //medium + } + + @Override + public boolean hasNest() { + return true; + } + + @Override + public int getAttackLength() { + return 15; + } + + @Override + public String getTexture() { + return this.getTexture(); + } + + @Override + public boolean dropsEggs() { + return false; + } + + @Override + public boolean laysEggs() { + return true; + } + + public float getAISpeedLand() { + float speedBase = 0.3F; + if (this.getTicks() < 0) { + return 0.0F; //Is laying eggs + } + if (this.getAnimation() == DRINK_ANIMATION || this.getAnimation() == MAKE_NEST_ANIMATION) { + return 0.0F; + } + if (this.getIsFast()) { + speedBase = speedBase * 1.55F; + } + return speedBase; + } + + @Override + public int getTalkInterval() { + return 220; + } + + @Override + public int getAdultAge() { + return 64000; + } + + public AxisAlignedBB getAttackBoundingBox() { + float size = this.getRenderSizeModifier() * 0.25F; + return this.getEntityBoundingBox().grow(1.0F + size, 1.0F + size, 1.0F + size); + } + + @Override + public float getEyeHeight() + { + return Math.max(super.getEyeHeight(), this.height * 0.95F); + } + + protected void initEntityAI() { + tasks.addTask(0, new EntityMateAIAgeableBase(this, 1.0D)); + tasks.addTask(1, new EntityTemptAI(this, 1, false, true, (float) this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).getAttributeValue() * 0.33F)); + tasks.addTask(2, new LandEntitySwimmingAI(this, 0.75, false)); + tasks.addTask(3, new AttackAI(this, 1.0D, false, this.getAttackLength())); + //tasks.addTask(4, new PanicAI(this, 1.6D)); + tasks.addTask(5, new LandWanderNestAI(this)); + tasks.addTask(6, new LandWanderFollowParent(this, 1.05D)); + tasks.addTask(7, new LandWanderAvoidWaterAI(this, 1.0D, 40)); + tasks.addTask(8, new EntityWatchClosestAI(this, EntityPlayer.class, 6.0F)); + tasks.addTask(9, new EntityWatchClosestAI(this, EntityPrehistoricFloraAgeableBase.class, 8.0F)); + tasks.addTask(10, new EntityLookIdleAI(this)); + this.targetTasks.addTask(0, new EatItemsEntityPrehistoricFloraAgeableBaseAI(this,1)); + this.targetTasks.addTask(1, new EntityHurtByTargetSmallerThanMeAI(this, false)); + this.targetTasks.addTask(2, new HuntPlayerAlwaysAI(this, EntityPlayer.class, true, (Predicate) entity -> entity instanceof EntityLivingBase)); + this.targetTasks.addTask(3, new HuntForDietEntityPrehistoricFloraAgeableBaseAI(this, EntityLivingBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0.1F, 1.2F, false));// this.targetTasks.addTask(1, new HuntSmallerThanMeAIAgeable(this, EntityPrehistoricFloraAgeableFishBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0)); + //this.targetTasks.addTask(3, new HuntSmallerThanMeAIAgeable(this, EntityLivingBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0.2)); + + } + + @Override + public String[] getFoodOreDicts() { + return DietString.MEAT; + } + + @Override + public EnumCreatureAttribute getCreatureAttribute() { + return EnumCreatureAttribute.UNDEFINED; + } + + @Override + protected boolean canDespawn() { + return false; + } + + @Override + protected void applyEntityAttributes() { + super.applyEntityAttributes(); + this.getAttributeMap().registerAttribute(SharedMonsterAttributes.ATTACK_DAMAGE); + this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).setBaseValue(6.0D); + this.getEntityAttribute(SharedMonsterAttributes.MOVEMENT_SPEED).setBaseValue(0.25D); + } + + @Override + public SoundEvent getAmbientSound() { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:smallcroc_idle")); + } + + @Override + public SoundEvent getHurtSound(DamageSource ds) { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:smallcroc_hurt")); + } + + @Override + public SoundEvent getDeathSound() { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:smallcroc_death")); + } + + @Override + protected float getSoundVolume() { + return 1.0F; + } + + @Override + public boolean getCanSpawnHere() { + return this.posY < (double) this.world.getSeaLevel() && this.isInWater(); + } + + + @Override + public void onLivingUpdate() { + super.onLivingUpdate(); + + if (this.getAnimation() == ATTACK_ANIMATION && this.getAnimationTick() == 10 && this.getAttackTarget() != null) { + launchAttack(); + } + + AnimationHandler.INSTANCE.updateAnimations(this); + + } + + + public static final PropertyDirection FACING = BlockDirectional.FACING; + + public boolean testLay(World world, BlockPos pos) { + //System.err.println("Testing laying conditions"); + BlockPos posNest = pos; + if (isLayableNest(world, posNest)) { + String eggRenderType = new Object() { + public String getValue(BlockPos posNest, String tag) { + TileEntity tileEntity = world.getTileEntity(posNest); + if (tileEntity != null) + return tileEntity.getTileData().getString(tag); + return ""; + } + }.getValue(new BlockPos(posNest), "egg"); + + //System.err.println("eggRenderType " + eggRenderType); + + if (eggRenderType.equals("")) { + return true; + } + } + return false; + } + + @Override + public boolean attackEntityAsMob(Entity entity) { + if (this.getAnimation() == NO_ANIMATION) { + this.setAnimation(ATTACK_ANIMATION); + //System.err.println("set attack"); + } + return false; + } + + public boolean isDirectPathBetweenPoints(Vec3d vec1, Vec3d vec2) { + RayTraceResult movingobjectposition = this.world.rayTraceBlocks(vec1, new Vec3d(vec2.x, vec2.y, vec2.z), false, true, false); + return movingobjectposition == null || movingobjectposition.typeOfHit != RayTraceResult.Type.BLOCK; + } + + @Nullable + protected ResourceLocation getLootTable() { + return LepidodendronMod.RIOJASUCHUS_LOOT; + } + @Nullable + @Override + public CustomTrigger getModTrigger() { + return ModTriggers.CLICK_RIOJASUCHUS; + } + //Rendering taxidermy: + //-------------------- + public static double offsetWall(@Nullable String variant) { + return 0.01; + } + public static double upperfrontverticallinedepth(@Nullable String variant) { + return 1.4; + } + public static double upperbackverticallinedepth(@Nullable String variant) { + return 0.8; + } + public static double upperfrontlineoffset(@Nullable String variant) { + return 0.4; + } + public static double upperfrontlineoffsetperpendiular(@Nullable String variant) { + return -0F; + } + public static double upperbacklineoffset(@Nullable String variant) { + return 0.4; + } + public static double upperbacklineoffsetperpendiular(@Nullable String variant) { + return -0.15F; + } + public static double lowerfrontverticallinedepth(@Nullable String variant) { + return 0; + } + public static double lowerbackverticallinedepth(@Nullable String variant) { + return 0.5; + } + public static double lowerfrontlineoffset(@Nullable String variant) { + return 0.4; + } + public static double lowerfrontlineoffsetperpendiular(@Nullable String variant) { + return -0F; + } + public static double lowerbacklineoffset(@Nullable String variant) { + return 0.04; + } + public static double lowerbacklineoffsetperpendiular(@Nullable String variant) { + return -0.15F; + } +// @SideOnly(Side.CLIENT) +// public static ResourceLocation textureDisplay(@Nullable String variant) { +// return RenderArizonasaurus.TEXTURE; +// } +// @SideOnly(Side.CLIENT) +// public static ModelBase modelDisplay(@Nullable String variant) { +// return RenderDisplays.modelArizonasaurus; +// } +// public static float getScaler(@Nullable String variant) { +// return RenderArizonasaurus.getScaler(); +// } +} \ No newline at end of file diff --git a/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraTarjadia.java b/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraTarjadia.java new file mode 100644 index 0000000000..d9d0104842 --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraTarjadia.java @@ -0,0 +1,342 @@ + +package net.lepidodendron.entity; + +import com.google.common.base.Predicate; +import net.ilexiconn.llibrary.client.model.tools.ChainBuffer; +import net.ilexiconn.llibrary.server.animation.Animation; +import net.ilexiconn.llibrary.server.animation.AnimationHandler; +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.block.base.IAdvancementGranter; +import net.lepidodendron.entity.ai.*; +import net.lepidodendron.entity.base.EntityPrehistoricFloraAgeableBase; +import net.lepidodendron.entity.base.EntityPrehistoricFloraLandBase; +import net.lepidodendron.entity.util.ITrappableLand; +import net.lepidodendron.util.CustomTrigger; +import net.lepidodendron.util.ModTriggers; +import net.minecraft.block.BlockDirectional; +import net.minecraft.block.properties.PropertyDirection; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.EnumCreatureAttribute; +import net.minecraft.entity.SharedMonsterAttributes; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.DamageSource; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.SoundEvent; +import net.minecraft.util.math.AxisAlignedBB; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.RayTraceResult; +import net.minecraft.util.math.Vec3d; +import net.minecraft.world.World; +import net.minecraftforge.fml.common.FMLCommonHandler; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; + +import javax.annotation.Nullable; + +public class EntityPrehistoricFloraTarjadia extends EntityPrehistoricFloraLandBase implements ITrappableLand, IAdvancementGranter { + + public BlockPos currentTarget; + @SideOnly(Side.CLIENT) + public ChainBuffer tailBuffer; + public int ambientSoundTime; + public Animation NOISE_ANIMATION; + + public EntityPrehistoricFloraTarjadia(World world) { + super(world); + setSize(0.85F, 0.8F); + minWidth = 0.15F; + maxWidth = 0.85F; + maxHeight = 0.8F; + maxHealthAgeable = 36.0D; + if (FMLCommonHandler.instance().getSide().isClient()) { + tailBuffer = new ChainBuffer(); + } + } + + @Override + public void onUpdate() { + super.onUpdate(); + if (world.isRemote && !this.isAIDisabled()) { + tailBuffer.calculateChainSwingBuffer(120, 10, 5F, this); + } + } + + @Override + public int getDrinkLength() { + return 60; + } + + @Override + public int getEatLength() { + return 20; + } + + @Override + public int getRoarLength() { + return 30; + } + + public static String getPeriod() {return "Triassic";} + + //public static String getHabitat() {return "Terrestrial Archosaur";} + + @Override + public int getEggType(@Nullable String variantIn) { + return 1; //medium + } + + @Override + public boolean hasNest() { + return true; + } + + @Override + public int getAttackLength() { + return 10; + } + + @Override + public String getTexture() { + return this.getTexture(); + } + + @Override + public boolean dropsEggs() { + return false; + } + + @Override + public boolean laysEggs() { + return true; + } + + public float getAISpeedLand() { + float speedBase = 0.322F; + if (this.getTicks() < 0) { + return 0.0F; //Is laying eggs + } + if (this.getAnimation() == DRINK_ANIMATION || this.getAnimation() == MAKE_NEST_ANIMATION) { + return 0.0F; + } + if (this.getIsFast()) { + speedBase = speedBase * 1.55F; + } + return speedBase; + } + + @Override + public int getTalkInterval() { + return 220; + } + + @Override + public int getAdultAge() { + return 64000; + } + + public AxisAlignedBB getAttackBoundingBox() { + float size = this.getRenderSizeModifier() * 0.25F; + return this.getEntityBoundingBox().grow(1.0F + size, 1.0F + size, 1.0F + size); + } + + @Override + public float getEyeHeight() + { + return Math.max(super.getEyeHeight(), this.height * 0.95F); + } + + protected void initEntityAI() { + tasks.addTask(0, new EntityMateAIAgeableBase(this, 1.0D)); + tasks.addTask(1, new EntityTemptAI(this, 1, false, true, (float) this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).getAttributeValue() * 0.33F)); + tasks.addTask(2, new LandEntitySwimmingAI(this, 0.75, false)); + tasks.addTask(3, new AttackAI(this, 1.0D, false, this.getAttackLength())); + //tasks.addTask(4, new PanicAI(this, 1.6D)); + tasks.addTask(5, new LandWanderNestAI(this)); + tasks.addTask(6, new LandWanderFollowParent(this, 1.05D)); + tasks.addTask(7, new LandWanderAvoidWaterAI(this, 1.0D, 40)); + tasks.addTask(8, new EntityWatchClosestAI(this, EntityPlayer.class, 6.0F)); + tasks.addTask(9, new EntityWatchClosestAI(this, EntityPrehistoricFloraAgeableBase.class, 8.0F)); + tasks.addTask(10, new EntityLookIdleAI(this)); + this.targetTasks.addTask(0, new EatItemsEntityPrehistoricFloraAgeableBaseAI(this,1)); + this.targetTasks.addTask(1, new EntityHurtByTargetSmallerThanMeAI(this, false)); + this.targetTasks.addTask(2, new HuntPlayerAlwaysAI(this, EntityPlayer.class, true, (Predicate) entity -> entity instanceof EntityLivingBase)); + this.targetTasks.addTask(3, new HuntForDietEntityPrehistoricFloraAgeableBaseAI(this, EntityLivingBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0.1F, 1.2F, false));// this.targetTasks.addTask(1, new HuntSmallerThanMeAIAgeable(this, EntityPrehistoricFloraAgeableFishBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0)); + //this.targetTasks.addTask(3, new HuntSmallerThanMeAIAgeable(this, EntityLivingBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0.2)); + + } + + @Override + public String[] getFoodOreDicts() { + return DietString.MEAT; + } + + @Override + public EnumCreatureAttribute getCreatureAttribute() { + return EnumCreatureAttribute.UNDEFINED; + } + + @Override + protected boolean canDespawn() { + return false; + } + + @Override + protected void applyEntityAttributes() { + super.applyEntityAttributes(); + this.getAttributeMap().registerAttribute(SharedMonsterAttributes.ATTACK_DAMAGE); + this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).setBaseValue(6.0D); + this.getEntityAttribute(SharedMonsterAttributes.MOVEMENT_SPEED).setBaseValue(0.25D); + } + + @Override + public SoundEvent getAmbientSound() { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:largecroc_idle")); + } + + @Override + public SoundEvent getHurtSound(DamageSource ds) { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:largecroc_hurt")); + } + + @Override + public SoundEvent getDeathSound() { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:largecroc_death")); + } + + @Override + protected float getSoundVolume() { + return 1.0F; + } + + @Override + public boolean getCanSpawnHere() { + return this.posY < (double) this.world.getSeaLevel() && this.isInWater(); + } + + + @Override + public void onLivingUpdate() { + super.onLivingUpdate(); + + if (this.getAnimation() == ATTACK_ANIMATION && this.getAnimationTick() == 7 && this.getAttackTarget() != null) { + launchAttack(); + } + + AnimationHandler.INSTANCE.updateAnimations(this); + + } + + + public static final PropertyDirection FACING = BlockDirectional.FACING; + + public boolean testLay(World world, BlockPos pos) { + //System.err.println("Testing laying conditions"); + BlockPos posNest = pos; + if (isLayableNest(world, posNest)) { + String eggRenderType = new Object() { + public String getValue(BlockPos posNest, String tag) { + TileEntity tileEntity = world.getTileEntity(posNest); + if (tileEntity != null) + return tileEntity.getTileData().getString(tag); + return ""; + } + }.getValue(new BlockPos(posNest), "egg"); + + //System.err.println("eggRenderType " + eggRenderType); + + if (eggRenderType.equals("")) { + return true; + } + } + return false; + } + + @Override + public boolean attackEntityAsMob(Entity entity) { + if (this.getAnimation() == NO_ANIMATION) { + this.setAnimation(ATTACK_ANIMATION); + //System.err.println("set attack"); + } + return false; + } + + @Override + public boolean attackEntityFrom(DamageSource source, float amount) { + if (source != DamageSource.DROWN) { + return super.attackEntityFrom(source, (amount * 0.75F)); + } + return super.attackEntityFrom(source, amount); + } + + public boolean isDirectPathBetweenPoints(Vec3d vec1, Vec3d vec2) { + RayTraceResult movingobjectposition = this.world.rayTraceBlocks(vec1, new Vec3d(vec2.x, vec2.y, vec2.z), false, true, false); + return movingobjectposition == null || movingobjectposition.typeOfHit != RayTraceResult.Type.BLOCK; + } + + @Nullable + protected ResourceLocation getLootTable() { + return LepidodendronMod.TARJADIA_LOOT; + } + @Nullable + @Override + public CustomTrigger getModTrigger() { + return ModTriggers.CLICK_TARJADIA; + } + //Rendering taxidermy: + //-------------------- + public static double offsetWall(@Nullable String variant) { + return 0.01; + } + public static double upperfrontverticallinedepth(@Nullable String variant) { + return 1.4; + } + public static double upperbackverticallinedepth(@Nullable String variant) { + return 0.8; + } + public static double upperfrontlineoffset(@Nullable String variant) { + return 0.4; + } + public static double upperfrontlineoffsetperpendiular(@Nullable String variant) { + return -0F; + } + public static double upperbacklineoffset(@Nullable String variant) { + return 0.4; + } + public static double upperbacklineoffsetperpendiular(@Nullable String variant) { + return -0.15F; + } + public static double lowerfrontverticallinedepth(@Nullable String variant) { + return 0; + } + public static double lowerbackverticallinedepth(@Nullable String variant) { + return 0.5; + } + public static double lowerfrontlineoffset(@Nullable String variant) { + return 0.4; + } + public static double lowerfrontlineoffsetperpendiular(@Nullable String variant) { + return -0F; + } + public static double lowerbacklineoffset(@Nullable String variant) { + return 0.04; + } + public static double lowerbacklineoffsetperpendiular(@Nullable String variant) { + return -0.15F; + } +// @SideOnly(Side.CLIENT) +// public static ResourceLocation textureDisplay(@Nullable String variant) { +// return RenderArizonasaurus.TEXTURE; +// } +// @SideOnly(Side.CLIENT) +// public static ModelBase modelDisplay(@Nullable String variant) { +// return RenderDisplays.modelArizonasaurus; +// } +// public static float getScaler(@Nullable String variant) { +// return RenderArizonasaurus.getScaler(); +// } +} \ No newline at end of file diff --git a/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraTicinosuchus.java b/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraTicinosuchus.java new file mode 100644 index 0000000000..609ac51998 --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/EntityPrehistoricFloraTicinosuchus.java @@ -0,0 +1,388 @@ + +package net.lepidodendron.entity; + +import com.google.common.base.Predicate; +import net.ilexiconn.llibrary.client.model.tools.ChainBuffer; +import net.ilexiconn.llibrary.server.animation.Animation; +import net.ilexiconn.llibrary.server.animation.AnimationHandler; +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.block.base.IAdvancementGranter; +import net.lepidodendron.entity.ai.*; +import net.lepidodendron.entity.base.EntityPrehistoricFloraAgeableBase; +import net.lepidodendron.entity.base.EntityPrehistoricFloraLandBase; +import net.lepidodendron.entity.util.ITrappableLand; +import net.lepidodendron.util.CustomTrigger; +import net.lepidodendron.util.ModTriggers; +import net.minecraft.block.BlockDirectional; +import net.minecraft.block.properties.PropertyDirection; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; +import net.minecraft.entity.EnumCreatureAttribute; +import net.minecraft.entity.SharedMonsterAttributes; +import net.minecraft.entity.player.EntityPlayer; +import net.minecraft.nbt.NBTTagCompound; +import net.minecraft.tileentity.TileEntity; +import net.minecraft.util.DamageSource; +import net.minecraft.util.ResourceLocation; +import net.minecraft.util.SoundEvent; +import net.minecraft.util.math.AxisAlignedBB; +import net.minecraft.util.math.BlockPos; +import net.minecraft.util.math.RayTraceResult; +import net.minecraft.util.math.Vec3d; +import net.minecraft.world.World; +import net.minecraftforge.fml.common.FMLCommonHandler; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; + +import javax.annotation.Nullable; + +public class EntityPrehistoricFloraTicinosuchus extends EntityPrehistoricFloraLandBase implements ITrappableLand, IAdvancementGranter { + + public BlockPos currentTarget; + @SideOnly(Side.CLIENT) + public ChainBuffer tailBuffer; + public int ambientSoundTime; + public Animation NOISE_ANIMATION; + public Animation STAND_ANIMATION; + private int standCooldown; + + public EntityPrehistoricFloraTicinosuchus(World world) { + super(world); + setSize(0.6F, 0.65F); + minWidth = 0.15F; + maxWidth = 0.6F; + maxHeight = 0.65F; + maxHealthAgeable = 28.0D; + if (FMLCommonHandler.instance().getSide().isClient()) { + tailBuffer = new ChainBuffer(); + } + STAND_ANIMATION = Animation.create(180); + } + + @Override + public void onUpdate() { + super.onUpdate(); + if (world.isRemote && !this.isAIDisabled()) { + tailBuffer.calculateChainSwingBuffer(120, 10, 5F, this); + } + } + + @Override + public boolean isAnimationDirectionLocked(Animation animation) { + return animation == STAND_ANIMATION + || super.isAnimationDirectionLocked(animation); + } + + @Override + public int getDrinkLength() { + return 60; + } + + @Override + public int getEatLength() { + return 20; + } + + @Override + public int getRoarLength() { + return 32; + } + + public static String getPeriod() {return "Triassic";} + + //public static String getHabitat() {return "Terrestrial Archosaur";} + + @Override + public int getEggType(@Nullable String variantIn) { + return 1; //medium + } + + @Override + public boolean hasNest() { + return true; + } + + @Override + public int getAttackLength() { + return 15; + } + + @Override + public String getTexture() { + return this.getTexture(); + } + + @Override + public boolean dropsEggs() { + return false; + } + + @Override + public boolean laysEggs() { + return true; + } + + public float getAISpeedLand() { + float speedBase = 0.28F; + if (this.getTicks() < 0) { + return 0.0F; //Is laying eggs + } + if (this.getAnimation() == DRINK_ANIMATION || this.getAnimation() == MAKE_NEST_ANIMATION || this.getAnimation() == STAND_ANIMATION) { + return 0.0F; + } + if (this.getIsFast()) { + speedBase = speedBase * 1.55F; + } + return speedBase; + } + + @Override + public void onEntityUpdate() { + super.onEntityUpdate(); + //random idle animations + if ((!this.world.isRemote) && this.getEatTarget() == null && this.getAttackTarget() == null && this.getRevengeTarget() == null + && !this.getIsMoving() && this.getAnimation() == NO_ANIMATION && standCooldown == 0) { + if (this.getAnimation() == NO_ANIMATION) { + this.setAnimation(STAND_ANIMATION); + } + this.standCooldown = 2000; + } + if ((!this.world.isRemote) && this.getAnimation() == STAND_ANIMATION && this.getAnimationTick() == STAND_ANIMATION.getDuration() - 1) { + this.standCooldown = 2000; + this.setAnimation(NO_ANIMATION); + } + } + + @Override + public Animation[] getAnimations() { + return new Animation[]{ATTACK_ANIMATION, DRINK_ANIMATION, ROAR_ANIMATION, LAY_ANIMATION, EAT_ANIMATION, STAND_ANIMATION}; + } + + public void writeEntityToNBT(NBTTagCompound compound) + { + super.writeEntityToNBT(compound); + compound.setInteger("standCooldown", this.standCooldown); + } + + public void readEntityFromNBT(NBTTagCompound compound) { + super.readEntityFromNBT(compound); + this.standCooldown = compound.getInteger("standCooldown"); + } + + @Override + public int getTalkInterval() { + return 220; + } + + @Override + public int getAdultAge() { + return 64000; + } + + public AxisAlignedBB getAttackBoundingBox() { + float size = this.getRenderSizeModifier() * 0.25F; + return this.getEntityBoundingBox().grow(1.0F + size, 1.0F + size, 1.0F + size); + } + + @Override + public float getEyeHeight() + { + return Math.max(super.getEyeHeight(), this.height * 0.95F); + } + + protected void initEntityAI() { + tasks.addTask(0, new EntityMateAIAgeableBase(this, 1.0D)); + tasks.addTask(1, new EntityTemptAI(this, 1, false, true, (float) this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).getAttributeValue() * 0.33F)); + tasks.addTask(2, new LandEntitySwimmingAI(this, 0.75, false)); + tasks.addTask(3, new AttackAI(this, 1.0D, false, this.getAttackLength())); + //tasks.addTask(4, new PanicAI(this, 1.6D)); + tasks.addTask(5, new LandWanderNestAI(this)); + tasks.addTask(6, new LandWanderFollowParent(this, 1.05D)); + tasks.addTask(7, new LandWanderAvoidWaterAI(this, 1.0D, 40)); + tasks.addTask(8, new EntityWatchClosestAI(this, EntityPlayer.class, 6.0F)); + tasks.addTask(9, new EntityWatchClosestAI(this, EntityPrehistoricFloraAgeableBase.class, 8.0F)); + tasks.addTask(10, new EntityLookIdleAI(this)); + this.targetTasks.addTask(0, new EatItemsEntityPrehistoricFloraAgeableBaseAI(this,1)); + this.targetTasks.addTask(1, new EntityHurtByTargetSmallerThanMeAI(this, false)); + this.targetTasks.addTask(2, new HuntPlayerAlwaysAI(this, EntityPlayer.class, true, (Predicate) entity -> entity instanceof EntityLivingBase)); + this.targetTasks.addTask(3, new HuntForDietEntityPrehistoricFloraAgeableBaseAI(this, EntityLivingBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0.1F, 1.2F, false));// this.targetTasks.addTask(1, new HuntSmallerThanMeAIAgeable(this, EntityPrehistoricFloraAgeableFishBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0)); + //this.targetTasks.addTask(3, new HuntSmallerThanMeAIAgeable(this, EntityLivingBase.class, true, (Predicate) entity -> entity instanceof EntityLivingBase, 0.2)); + + } + + @Override + public String[] getFoodOreDicts() { + return DietString.MEAT; + } + + @Override + public EnumCreatureAttribute getCreatureAttribute() { + return EnumCreatureAttribute.UNDEFINED; + } + + @Override + protected boolean canDespawn() { + return false; + } + + @Override + protected void applyEntityAttributes() { + super.applyEntityAttributes(); + this.getAttributeMap().registerAttribute(SharedMonsterAttributes.ATTACK_DAMAGE); + this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).setBaseValue(6.0D); + this.getEntityAttribute(SharedMonsterAttributes.MOVEMENT_SPEED).setBaseValue(0.25D); + } + + @Override + public SoundEvent getAmbientSound() { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:largecroc_idle")); + } + + @Override + public SoundEvent getHurtSound(DamageSource ds) { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:largecroc_hurt")); + } + + @Override + public SoundEvent getDeathSound() { + return (SoundEvent) SoundEvent.REGISTRY + .getObject(new ResourceLocation("lepidodendron:largecroc_death")); + } + + @Override + protected float getSoundVolume() { + return 1.0F; + } + + @Override + public boolean getCanSpawnHere() { + return this.posY < (double) this.world.getSeaLevel() && this.isInWater(); + } + + + @Override + public void onLivingUpdate() { + super.onLivingUpdate(); + + if (this.standCooldown > 0) { + this.standCooldown -= rand.nextInt(3) + 1; + } + if (this.standCooldown < 0) { + this.standCooldown = 0; + } + + if (this.getAnimation() == ATTACK_ANIMATION && this.getAnimationTick() == 10 && this.getAttackTarget() != null) { + launchAttack(); + } + + AnimationHandler.INSTANCE.updateAnimations(this); + + } + + + public static final PropertyDirection FACING = BlockDirectional.FACING; + + public boolean testLay(World world, BlockPos pos) { + //System.err.println("Testing laying conditions"); + BlockPos posNest = pos; + if (isLayableNest(world, posNest)) { + String eggRenderType = new Object() { + public String getValue(BlockPos posNest, String tag) { + TileEntity tileEntity = world.getTileEntity(posNest); + if (tileEntity != null) + return tileEntity.getTileData().getString(tag); + return ""; + } + }.getValue(new BlockPos(posNest), "egg"); + + //System.err.println("eggRenderType " + eggRenderType); + + if (eggRenderType.equals("")) { + return true; + } + } + return false; + } + + @Override + public boolean attackEntityAsMob(Entity entity) { + if (this.getAnimation() == NO_ANIMATION) { + this.setAnimation(ATTACK_ANIMATION); + //System.err.println("set attack"); + } + return false; + } + + public boolean isDirectPathBetweenPoints(Vec3d vec1, Vec3d vec2) { + RayTraceResult movingobjectposition = this.world.rayTraceBlocks(vec1, new Vec3d(vec2.x, vec2.y, vec2.z), false, true, false); + return movingobjectposition == null || movingobjectposition.typeOfHit != RayTraceResult.Type.BLOCK; + } + + @Nullable + protected ResourceLocation getLootTable() { + if (!this.isPFAdult()) { + return LepidodendronMod.TICINOSUCHUS_LOOT_YOUNG; + } + return LepidodendronMod.TICINOSUCHUS_LOOT; + } + + @Nullable + @Override + public CustomTrigger getModTrigger() { + return ModTriggers.CLICK_TICINOSUCHUS; + } + //Rendering taxidermy: + //-------------------- + public static double offsetWall(@Nullable String variant) { + return 0.01; + } + public static double upperfrontverticallinedepth(@Nullable String variant) { + return 1.4; + } + public static double upperbackverticallinedepth(@Nullable String variant) { + return 0.8; + } + public static double upperfrontlineoffset(@Nullable String variant) { + return 0.4; + } + public static double upperfrontlineoffsetperpendiular(@Nullable String variant) { + return -0F; + } + public static double upperbacklineoffset(@Nullable String variant) { + return 0.4; + } + public static double upperbacklineoffsetperpendiular(@Nullable String variant) { + return -0.15F; + } + public static double lowerfrontverticallinedepth(@Nullable String variant) { + return 0; + } + public static double lowerbackverticallinedepth(@Nullable String variant) { + return 0.5; + } + public static double lowerfrontlineoffset(@Nullable String variant) { + return 0.4; + } + public static double lowerfrontlineoffsetperpendiular(@Nullable String variant) { + return -0F; + } + public static double lowerbacklineoffset(@Nullable String variant) { + return 0.04; + } + public static double lowerbacklineoffsetperpendiular(@Nullable String variant) { + return -0.15F; + } +// @SideOnly(Side.CLIENT) +// public static ResourceLocation textureDisplay(@Nullable String variant) { +// return RenderArizonasaurus.TEXTURE; +// } +// @SideOnly(Side.CLIENT) +// public static ModelBase modelDisplay(@Nullable String variant) { +// return RenderDisplays.modelArizonasaurus; +// } +// public static float getScaler(@Nullable String variant) { +// return RenderArizonasaurus.getScaler(); +// } +} \ No newline at end of file diff --git a/src/main/java/net/lepidodendron/entity/model/entity/ModelColossosuchus.java b/src/main/java/net/lepidodendron/entity/model/entity/ModelColossosuchus.java new file mode 100644 index 0000000000..3d5162d81d --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/model/entity/ModelColossosuchus.java @@ -0,0 +1,3195 @@ +package net.lepidodendron.entity.model.entity; + +import net.ilexiconn.llibrary.client.model.ModelAnimator; +import net.ilexiconn.llibrary.client.model.tools.AdvancedModelRenderer; +import net.ilexiconn.llibrary.server.animation.IAnimatedEntity; +import net.lepidodendron.entity.EntityPrehistoricFloraColossosuchus; +import net.lepidodendron.entity.model.ModelBasePalaeopedia; +import net.minecraft.client.model.ModelBox; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; + +public class ModelColossosuchus extends ModelBasePalaeopedia { + private final AdvancedModelRenderer main; + private final AdvancedModelRenderer body; + private final AdvancedModelRenderer body2; + private final AdvancedModelRenderer body3; + private final AdvancedModelRenderer frontLeftLeg; + private final AdvancedModelRenderer frontLeftLeg2; + private final AdvancedModelRenderer frontLeftLeg3; + private final AdvancedModelRenderer frontRightLeg; + private final AdvancedModelRenderer frontRightLeg2; + private final AdvancedModelRenderer frontRightLeg3; + private final AdvancedModelRenderer neck; + private final AdvancedModelRenderer cube_r1; + private final AdvancedModelRenderer neck2; + private final AdvancedModelRenderer cube_r2; + private final AdvancedModelRenderer cube_r3; + private final AdvancedModelRenderer head; + private final AdvancedModelRenderer cube_r4; + private final AdvancedModelRenderer cube_r5; + private final AdvancedModelRenderer cube_r6; + private final AdvancedModelRenderer cube_r7; + private final AdvancedModelRenderer cube_r8; + private final AdvancedModelRenderer cube_r9; + private final AdvancedModelRenderer cube_r10; + private final AdvancedModelRenderer cube_r11; + private final AdvancedModelRenderer cube_r12; + private final AdvancedModelRenderer cube_r13; + private final AdvancedModelRenderer cube_r14; + private final AdvancedModelRenderer jaw; + private final AdvancedModelRenderer cube_r15; + private final AdvancedModelRenderer cube_r16; + private final AdvancedModelRenderer cube_r17; + private final AdvancedModelRenderer cube_r18; + private final AdvancedModelRenderer cube_r19; + private final AdvancedModelRenderer cube_r20; + private final AdvancedModelRenderer cube_r21; + private final AdvancedModelRenderer cube_r22; + private final AdvancedModelRenderer backLeftLeg; + private final AdvancedModelRenderer backLeftLeg2; + private final AdvancedModelRenderer backLeftLeg3; + private final AdvancedModelRenderer backLeftLeg4; + private final AdvancedModelRenderer backRightLeg; + private final AdvancedModelRenderer backRightLeg2; + private final AdvancedModelRenderer backRightLeg3; + private final AdvancedModelRenderer backRightLeg4; + private final AdvancedModelRenderer tail; + private final AdvancedModelRenderer tail2; + private final AdvancedModelRenderer tail3; + private final AdvancedModelRenderer tail4; + private final AdvancedModelRenderer tail5; + private final AdvancedModelRenderer tail6; + + private ModelAnimator animator; + + public ModelColossosuchus() { + this.textureWidth = 113; + this.textureHeight = 113; + + this.main = new AdvancedModelRenderer(this); + this.main.setRotationPoint(0.0F, 8.25F, 18.75F); + this.main.cubeList.add(new ModelBox(main, 31, 49, -4.5F, -1.75F, -4.75F, 9, 8, 9, 0.0F, false)); + this.main.cubeList.add(new ModelBox(main, 18, 80, -2.0F, -2.75F, -3.75F, 4, 1, 8, 0.0F, false)); + + this.body = new AdvancedModelRenderer(this); + this.body.setRotationPoint(0.0F, 2.25F, -3.75F); + this.main.addChild(body); + this.body.cubeList.add(new ModelBox(body, 64, 0, -5.0F, -4.5F, -6.0F, 10, 9, 6, 0.0F, false)); + this.body.cubeList.add(new ModelBox(body, 0, 87, -2.5F, -5.5F, -6.0F, 5, 1, 6, 0.0F, false)); + + this.body2 = new AdvancedModelRenderer(this); + this.body2.setRotationPoint(0.0F, 0.0F, -7.0F); + this.body.addChild(body2); + this.body2.cubeList.add(new ModelBox(body2, 0, 0, -6.0F, -5.0F, -12.0F, 12, 10, 14, 0.0F, false)); + this.body2.cubeList.add(new ModelBox(body2, 0, 43, -3.0F, -6.0F, -12.0F, 6, 1, 14, 0.0F, false)); + + this.body3 = new AdvancedModelRenderer(this); + this.body3.setRotationPoint(0.0F, 0.0F, -11.0F); + this.body2.addChild(body3); + this.body3.cubeList.add(new ModelBox(body3, 0, 24, -5.0F, -4.5F, -10.0F, 10, 9, 10, 0.0F, false)); + this.body3.cubeList.add(new ModelBox(body3, 56, 70, -2.5F, -5.75F, -10.0F, 5, 2, 10, -0.01F, false)); + + this.frontLeftLeg = new AdvancedModelRenderer(this); + this.frontLeftLeg.setRotationPoint(5.0F, 1.6F, -8.0F); + this.body3.addChild(frontLeftLeg); + this.setRotateAngle(frontLeftLeg, 0.6284F, 0.3272F, -0.4164F); + this.frontLeftLeg.cubeList.add(new ModelBox(frontLeftLeg, 81, 83, -2.5F, -1.5F, -2.0F, 4, 9, 5, 0.0F, false)); + + this.frontLeftLeg2 = new AdvancedModelRenderer(this); + this.frontLeftLeg2.setRotationPoint(0.0F, 6.5F, 0.025F); + this.frontLeftLeg.addChild(frontLeftLeg2); + this.setRotateAngle(frontLeftLeg2, -0.7803F, 0.008F, 0.4902F); + this.frontLeftLeg2.cubeList.add(new ModelBox(frontLeftLeg2, 0, 43, -2.0F, -0.5182F, -1.3821F, 3, 7, 4, 0.0F, false)); + + this.frontLeftLeg3 = new AdvancedModelRenderer(this); + this.frontLeftLeg3.setRotationPoint(0.0F, 6.4818F, 1.1179F); + this.frontLeftLeg2.addChild(frontLeftLeg3); + this.setRotateAngle(frontLeftLeg3, 0.0873F, 0.0F, 0.0F); + this.frontLeftLeg3.cubeList.add(new ModelBox(frontLeftLeg3, 35, 84, -2.5F, -1.0F, -6.5F, 4, 2, 7, 0.0F, false)); + + this.frontRightLeg = new AdvancedModelRenderer(this); + this.frontRightLeg.setRotationPoint(-5.0F, 1.6F, -8.0F); + this.body3.addChild(frontRightLeg); + this.setRotateAngle(frontRightLeg, 0.6284F, -0.3272F, 0.4164F); + this.frontRightLeg.cubeList.add(new ModelBox(frontRightLeg, 81, 83, -1.5F, -1.5F, -2.0F, 4, 9, 5, 0.0F, true)); + + this.frontRightLeg2 = new AdvancedModelRenderer(this); + this.frontRightLeg2.setRotationPoint(0.0F, 6.5F, 0.025F); + this.frontRightLeg.addChild(frontRightLeg2); + this.setRotateAngle(frontRightLeg2, -0.7803F, -0.008F, -0.4902F); + this.frontRightLeg2.cubeList.add(new ModelBox(frontRightLeg2, 0, 43, -1.0F, -0.5182F, -1.3821F, 3, 7, 4, 0.0F, true)); + + this.frontRightLeg3 = new AdvancedModelRenderer(this); + this.frontRightLeg3.setRotationPoint(0.0F, 6.4818F, 1.1179F); + this.frontRightLeg2.addChild(frontRightLeg3); + this.setRotateAngle(frontRightLeg3, 0.0873F, 0.0F, 0.0F); + this.frontRightLeg3.cubeList.add(new ModelBox(frontRightLeg3, 35, 84, -1.5F, -1.0F, -6.5F, 4, 2, 7, 0.0F, true)); + + this.neck = new AdvancedModelRenderer(this); + this.neck.setRotationPoint(0.0F, -0.5F, -9.0F); + this.body3.addChild(neck); + this.neck.cubeList.add(new ModelBox(neck, 77, 52, -3.5F, -3.25F, -6.0F, 7, 7, 6, 0.0F, false)); + + this.cube_r1 = new AdvancedModelRenderer(this); + this.cube_r1.setRotationPoint(0.0F, -3.75F, -3.0F); + this.neck.addChild(cube_r1); + this.setRotateAngle(cube_r1, 0.0873F, 0.0F, 0.0F); + this.cube_r1.cubeList.add(new ModelBox(cube_r1, 90, 71, -2.0F, -1.0F, -3.0F, 4, 2, 6, -0.001F, false)); + + this.neck2 = new AdvancedModelRenderer(this); + this.neck2.setRotationPoint(0.0F, -0.5F, -5.0F); + this.neck.addChild(neck2); + this.neck2.cubeList.add(new ModelBox(neck2, 81, 15, -3.0F, -2.5F, -5.0F, 6, 5, 5, 0.0F, false)); + + this.cube_r2 = new AdvancedModelRenderer(this); + this.cube_r2.setRotationPoint(0.0F, -3.0F, -2.5F); + this.neck2.addChild(cube_r2); + this.setRotateAngle(cube_r2, 0.0873F, 0.0F, 0.0F); + this.cube_r2.cubeList.add(new ModelBox(cube_r2, 52, 91, -1.5F, -0.45F, -2.5F, 3, 2, 5, 0.0F, false)); + + this.cube_r3 = new AdvancedModelRenderer(this); + this.cube_r3.setRotationPoint(0.5F, 2.5F, -2.5F); + this.neck2.addChild(cube_r3); + this.setRotateAngle(cube_r3, -0.2182F, 0.0F, 0.0F); + this.cube_r3.cubeList.add(new ModelBox(cube_r3, 92, 26, -3.0F, -1.425F, -2.45F, 5, 2, 5, 0.0F, false)); + + this.head = new AdvancedModelRenderer(this); + this.head.setRotationPoint(0.2273F, -1.893F, -4.0028F); + this.neck2.addChild(head); + this.head.cubeList.add(new ModelBox(head, 78, 42, -3.7273F, 0.393F, -4.9972F, 7, 2, 5, 0.0F, false)); + this.head.cubeList.add(new ModelBox(head, 17, 89, -3.2273F, -1.107F, -4.9972F, 6, 2, 5, 0.01F, false)); + this.head.cubeList.add(new ModelBox(head, 30, 24, 1.7727F, -1.607F, -4.9972F, 1, 1, 2, 0.0F, false)); + this.head.cubeList.add(new ModelBox(head, 30, 24, -3.2273F, -1.607F, -4.9972F, 1, 1, 2, 0.0F, true)); + this.head.cubeList.add(new ModelBox(head, 92, 33, -2.7273F, 0.393F, -8.9972F, 5, 2, 4, 0.0F, false)); + this.head.cubeList.add(new ModelBox(head, 38, 10, -2.2273F, 1.393F, -10.9972F, 4, 1, 2, 0.0F, false)); + this.head.cubeList.add(new ModelBox(head, 30, 27, -1.2273F, 0.393F, -9.9972F, 2, 1, 1, 0.0F, false)); + this.head.cubeList.add(new ModelBox(head, 76, 72, -1.2273F, 1.393F, -20.9972F, 2, 1, 10, 0.0F, false)); + + this.cube_r4 = new AdvancedModelRenderer(this); + this.cube_r4.setRotationPoint(-0.8273F, 2.7F, -21.0F); + this.head.addChild(cube_r4); + this.setRotateAngle(cube_r4, -0.3491F, 0.0F, 0.0F); + this.cube_r4.cubeList.add(new ModelBox(cube_r4, 15, 101, -1.0F, -1.0F, 0.0F, 3, 2, 0, 0.0F, false)); + + this.cube_r5 = new AdvancedModelRenderer(this); + this.cube_r5.setRotationPoint(2.2F, 2.275F, -7.0F); + this.head.addChild(cube_r5); + this.setRotateAngle(cube_r5, 0.0F, 0.0F, -0.3665F); + this.cube_r5.cubeList.add(new ModelBox(cube_r5, 10, 94, 0.0544F, -0.119F, -2.2305F, 0, 1, 4, 0.0F, false)); + + this.cube_r6 = new AdvancedModelRenderer(this); + this.cube_r6.setRotationPoint(1.7F, 2.175F, -9.9F); + this.head.addChild(cube_r6); + this.setRotateAngle(cube_r6, 0.0F, 0.0F, -0.3142F); + this.cube_r6.cubeList.add(new ModelBox(cube_r6, 13, 95, 0.0567F, -0.1592F, -1.1F, 0, 1, 2, 0.0F, false)); + + this.cube_r7 = new AdvancedModelRenderer(this); + this.cube_r7.setRotationPoint(-0.9545F, 2.0F, -16.15F); + this.head.addChild(cube_r7); + this.setRotateAngle(cube_r7, 0.0F, 0.0F, 0.4712F); + this.cube_r7.cubeList.add(new ModelBox(cube_r7, 0, 86, -0.1F, 0.0F, -4.9F, 0, 1, 10, 0.0F, true)); + + this.cube_r8 = new AdvancedModelRenderer(this); + this.cube_r8.setRotationPoint(-2.1545F, 2.175F, -9.9F); + this.head.addChild(cube_r8); + this.setRotateAngle(cube_r8, 0.0F, 0.0F, 0.3142F); + this.cube_r8.cubeList.add(new ModelBox(cube_r8, 13, 95, -0.0567F, -0.1592F, -1.1F, 0, 1, 2, 0.0F, true)); + + this.cube_r9 = new AdvancedModelRenderer(this); + this.cube_r9.setRotationPoint(-2.6545F, 2.275F, -7.0F); + this.head.addChild(cube_r9); + this.setRotateAngle(cube_r9, 0.0F, 0.0F, 0.3665F); + this.cube_r9.cubeList.add(new ModelBox(cube_r9, 10, 94, -0.0544F, -0.119F, -2.2305F, 0, 1, 4, 0.0F, true)); + + this.cube_r10 = new AdvancedModelRenderer(this); + this.cube_r10.setRotationPoint(0.5F, 2.0F, -16.15F); + this.head.addChild(cube_r10); + this.setRotateAngle(cube_r10, 0.0F, 0.0F, -0.4712F); + this.cube_r10.cubeList.add(new ModelBox(cube_r10, 0, 86, 0.1F, 0.0F, -4.9F, 0, 1, 10, 0.0F, false)); + + this.cube_r11 = new AdvancedModelRenderer(this); + this.cube_r11.setRotationPoint(-0.2273F, 1.393F, -19.9972F); + this.head.addChild(cube_r11); + this.setRotateAngle(cube_r11, -0.5236F, 0.0F, 0.0F); + this.cube_r11.cubeList.add(new ModelBox(cube_r11, 0, 28, -1.5F, 0.0F, -1.0F, 3, 2, 1, 0.0F, false)); + + this.cube_r12 = new AdvancedModelRenderer(this); + this.cube_r12.setRotationPoint(-0.2273F, 1.2232F, -10.6676F); + this.head.addChild(cube_r12); + this.setRotateAngle(cube_r12, 0.432F, 0.0F, 0.0F); + this.cube_r12.cubeList.add(new ModelBox(cube_r12, 0, 24, -1.0F, -0.525F, -1.625F, 2, 1, 3, -0.001F, false)); + + this.cube_r13 = new AdvancedModelRenderer(this); + this.cube_r13.setRotationPoint(0.7727F, 0.293F, -7.6722F); + this.head.addChild(cube_r13); + this.setRotateAngle(cube_r13, 0.1178F, 0.0F, 0.0F); + this.cube_r13.cubeList.add(new ModelBox(cube_r13, 56, 0, -2.5F, -0.4566F, -2.3308F, 3, 2, 3, 0.0F, false)); + + this.cube_r14 = new AdvancedModelRenderer(this); + this.cube_r14.setRotationPoint(0.2727F, -1.107F, -4.9972F); + this.head.addChild(cube_r14); + this.setRotateAngle(cube_r14, 0.3927F, 0.0F, 0.0F); + this.cube_r14.cubeList.add(new ModelBox(cube_r14, 54, 37, -2.5F, 0.0F, -4.0F, 4, 2, 4, 0.0F, false)); + + this.jaw = new AdvancedModelRenderer(this); + this.jaw.setRotationPoint(0.0F, 2.975F, -2.0F); + this.head.addChild(jaw); + this.setRotateAngle(jaw, 0.0175F, 0.0F, 0.0F); + this.jaw.cubeList.add(new ModelBox(jaw, 84, 65, -3.7273F, -0.6F, -3.0F, 7, 1, 5, 0.001F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 14, 73, -2.7273F, -0.6F, -7.0F, 5, 1, 4, 0.0F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 0, 54, -2.2273F, -0.6F, -9.0F, 4, 1, 2, 0.0F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 78, 31, -1.2273F, -0.6F, -19.0F, 2, 1, 10, 0.0F, false)); + + this.cube_r15 = new AdvancedModelRenderer(this); + this.cube_r15.setRotationPoint(2.0F, -0.5F, -5.0F); + this.jaw.addChild(cube_r15); + this.setRotateAngle(cube_r15, 0.0F, 0.0F, 0.6109F); + this.cube_r15.cubeList.add(new ModelBox(cube_r15, 0, 57, 0.1F, -1.1F, -2.0F, 0, 1, 4, 0.0F, false)); + + this.cube_r16 = new AdvancedModelRenderer(this); + this.cube_r16.setRotationPoint(0.0F, -0.2F, -8.0F); + this.jaw.addChild(cube_r16); + this.setRotateAngle(cube_r16, 0.0F, 0.0F, 0.1396F); + this.cube_r16.cubeList.add(new ModelBox(cube_r16, 2, 59, 1.7F, -1.4F, -1.0F, 0, 1, 2, 0.0F, false)); + + this.cube_r17 = new AdvancedModelRenderer(this); + this.cube_r17.setRotationPoint(-1.0545F, 0.0F, -13.0F); + this.jaw.addChild(cube_r17); + this.setRotateAngle(cube_r17, 0.0F, 0.0F, -0.2618F); + this.cube_r17.cubeList.add(new ModelBox(cube_r17, -8, 50, -0.1F, -1.4F, -6.0F, 0, 1, 10, 0.0F, true)); + + this.cube_r18 = new AdvancedModelRenderer(this); + this.cube_r18.setRotationPoint(-0.4545F, -0.2F, -8.0F); + this.jaw.addChild(cube_r18); + this.setRotateAngle(cube_r18, 0.0F, 0.0F, -0.1396F); + this.cube_r18.cubeList.add(new ModelBox(cube_r18, 2, 59, -1.7F, -1.4F, -1.0F, 0, 1, 2, 0.0F, true)); + + this.cube_r19 = new AdvancedModelRenderer(this); + this.cube_r19.setRotationPoint(-2.4545F, -0.5F, -5.0F); + this.jaw.addChild(cube_r19); + this.setRotateAngle(cube_r19, 0.0F, 0.0F, -0.6109F); + this.cube_r19.cubeList.add(new ModelBox(cube_r19, 0, 57, -0.1F, -1.1F, -2.0F, 0, 1, 4, 0.0F, true)); + + this.cube_r20 = new AdvancedModelRenderer(this); + this.cube_r20.setRotationPoint(0.6F, 0.0F, -13.0F); + this.jaw.addChild(cube_r20); + this.setRotateAngle(cube_r20, 0.0F, 0.0F, 0.2618F); + this.cube_r20.cubeList.add(new ModelBox(cube_r20, -8, 50, 0.1F, -1.4F, -6.0F, 0, 1, 10, 0.0F, false)); + + this.cube_r21 = new AdvancedModelRenderer(this); + this.cube_r21.setRotationPoint(-0.2273F, 0.9F, -5.0F); + this.jaw.addChild(cube_r21); + this.setRotateAngle(cube_r21, -0.1745F, 0.0F, 0.0F); + this.cube_r21.cubeList.add(new ModelBox(cube_r21, 35, 93, -2.0F, -1.15F, -2.0F, 4, 1, 4, 0.0F, false)); + + this.cube_r22 = new AdvancedModelRenderer(this); + this.cube_r22.setRotationPoint(-0.2273F, 1.4F, 1.0F); + this.jaw.addChild(cube_r22); + this.setRotateAngle(cube_r22, -0.0436F, 0.0F, 0.0F); + this.cube_r22.cubeList.add(new ModelBox(cube_r22, 90, 0, -2.5F, -1.075F, -4.05F, 5, 1, 5, 0.0F, false)); + + this.backLeftLeg = new AdvancedModelRenderer(this); + this.backLeftLeg.setRotationPoint(3.75F, 1.5F, -0.65F); + this.main.addChild(backLeftLeg); + this.setRotateAngle(backLeftLeg, -0.6353F, -0.5747F, -0.6353F); + this.backLeftLeg.cubeList.add(new ModelBox(backLeftLeg, 63, 82, -2.0F, -0.5F, -2.0F, 4, 9, 5, 0.0F, false)); + + this.backLeftLeg2 = new AdvancedModelRenderer(this); + this.backLeftLeg2.setRotationPoint(0.0F, 8.25F, -1.5F); + this.backLeftLeg.addChild(backLeftLeg2); + this.setRotateAngle(backLeftLeg2, 0.8613F, 0.0201F, 0.7387F); + this.backLeftLeg2.cubeList.add(new ModelBox(backLeftLeg2, 0, 0, -1.5F, -0.254F, -0.4182F, 3, 9, 4, 0.0F, false)); + + this.backLeftLeg3 = new AdvancedModelRenderer(this); + this.backLeftLeg3.setRotationPoint(0.0F, 8.246F, 1.5818F); + this.backLeftLeg2.addChild(backLeftLeg3); + this.setRotateAngle(backLeftLeg3, 0.0F, 0.0F, 0.096F); + this.backLeftLeg3.cubeList.add(new ModelBox(backLeftLeg3, 26, 49, -1.5F, -0.5F, -2.0F, 3, 3, 4, -0.01F, false)); + + this.backLeftLeg4 = new AdvancedModelRenderer(this); + this.backLeftLeg4.setRotationPoint(0.0F, 2.0F, 0.0F); + this.backLeftLeg3.addChild(backLeftLeg4); + this.setRotateAngle(backLeftLeg4, -0.0349F, -0.0008F, -0.0436F); + this.backLeftLeg4.cubeList.add(new ModelBox(backLeftLeg4, 38, 0, -2.5F, -0.5F, -7.0F, 5, 2, 8, 0.0F, false)); + + this.backRightLeg = new AdvancedModelRenderer(this); + this.backRightLeg.setRotationPoint(-3.75F, 1.5F, -0.65F); + this.main.addChild(backRightLeg); + this.setRotateAngle(backRightLeg, -0.6353F, 0.5747F, 0.6353F); + this.backRightLeg.cubeList.add(new ModelBox(backRightLeg, 63, 82, -2.0F, -0.5F, -2.0F, 4, 9, 5, 0.0F, true)); + + this.backRightLeg2 = new AdvancedModelRenderer(this); + this.backRightLeg2.setRotationPoint(0.0F, 8.25F, -1.5F); + this.backRightLeg.addChild(backRightLeg2); + this.setRotateAngle(backRightLeg2, 0.8613F, -0.0201F, -0.7387F); + this.backRightLeg2.cubeList.add(new ModelBox(backRightLeg2, 0, 0, -1.5F, -0.254F, -0.4182F, 3, 9, 4, 0.0F, true)); + + this.backRightLeg3 = new AdvancedModelRenderer(this); + this.backRightLeg3.setRotationPoint(0.0F, 8.246F, 1.5818F); + this.backRightLeg2.addChild(backRightLeg3); + this.setRotateAngle(backRightLeg3, 0.0F, 0.0F, -0.096F); + this.backRightLeg3.cubeList.add(new ModelBox(backRightLeg3, 26, 49, -1.5F, -0.5F, -2.0F, 3, 3, 4, -0.01F, true)); + + this.backRightLeg4 = new AdvancedModelRenderer(this); + this.backRightLeg4.setRotationPoint(0.0F, 2.0F, 0.0F); + this.backRightLeg3.addChild(backRightLeg4); + this.setRotateAngle(backRightLeg4, -0.0349F, 0.0008F, 0.0436F); + this.backRightLeg4.cubeList.add(new ModelBox(backRightLeg4, 38, 0, -2.5F, -0.5F, -7.0F, 5, 2, 8, 0.0F, true)); + + this.tail = new AdvancedModelRenderer(this); + this.tail.setRotationPoint(0.0F, -1.25F, 3.25F); + this.main.addChild(tail); + this.setRotateAngle(tail, -0.2356F, 0.0F, 0.0F); + this.tail.cubeList.add(new ModelBox(tail, 27, 30, -3.5F, 0.0F, 0.0F, 7, 6, 13, 0.0F, false)); + this.tail.cubeList.add(new ModelBox(tail, 20, 66, -1.5F, -1.6F, 0.7F, 3, 2, 12, 0.0F, false)); + + this.tail2 = new AdvancedModelRenderer(this); + this.tail2.setRotationPoint(0.0F, 1.75F, 12.0F); + this.tail.addChild(tail2); + this.setRotateAngle(tail2, -0.2313F, 0.0F, 0.0F); + this.tail2.cubeList.add(new ModelBox(tail2, 39, 11, -3.0F, -1.5F, 0.0F, 6, 5, 13, 0.0F, false)); + this.tail2.cubeList.add(new ModelBox(tail2, 64, 16, -1.0F, -3.2F, 0.0F, 2, 2, 13, 0.0F, false)); + + this.tail3 = new AdvancedModelRenderer(this); + this.tail3.setRotationPoint(0.0F, 0.25F, 12.0F); + this.tail2.addChild(tail3); + this.setRotateAngle(tail3, 0.0436F, 0.0F, 0.0F); + this.tail3.cubeList.add(new ModelBox(tail3, 55, 54, -2.5F, -1.5F, 0.0F, 5, 4, 12, 0.0F, false)); + this.tail3.cubeList.add(new ModelBox(tail3, 0, 73, -0.5F, -3.3F, 0.0F, 1, 2, 12, 0.0F, false)); + + this.tail4 = new AdvancedModelRenderer(this); + this.tail4.setRotationPoint(0.0F, 0.5F, 11.0F); + this.tail3.addChild(tail4); + this.setRotateAngle(tail4, 0.3142F, 0.0F, 0.0F); + this.tail4.cubeList.add(new ModelBox(tail4, 58, 37, -2.0F, -1.5F, 0.0F, 4, 3, 12, 0.0F, false)); + this.tail4.cubeList.add(new ModelBox(tail4, 54, 21, 0.05F, -3.5F, 0.0F, 0, 2, 12, 0.0F, false)); + + this.tail5 = new AdvancedModelRenderer(this); + this.tail5.setRotationPoint(0.0F, 0.25F, 11.0F); + this.tail4.addChild(tail5); + this.setRotateAngle(tail5, 0.0873F, 0.0F, 0.0F); + this.tail5.cubeList.add(new ModelBox(tail5, 38, 70, -1.5F, -1.5F, 0.0F, 3, 2, 12, 0.0F, false)); + this.tail5.cubeList.add(new ModelBox(tail5, 54, 24, 0.0F, -3.5F, 1.0F, 0, 2, 11, 0.0F, false)); + + this.tail6 = new AdvancedModelRenderer(this); + this.tail6.setRotationPoint(0.0F, 0.5F, 11.0F); + this.tail5.addChild(tail6); + this.tail6.cubeList.add(new ModelBox(tail6, 0, 58, -1.0F, -1.5F, 0.0F, 2, 1, 14, 0.0F, false)); + this.tail6.cubeList.add(new ModelBox(tail6, 54, 18, -0.025F, -3.5F, 1.0F, 0, 2, 13, 0.0F, false)); + + + updateDefaultPose(); + animator = ModelAnimator.create(); + } + + @Override + public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { + animate((IAnimatedEntity) entity, f, f1, f2, f3, f4, f5); + this.main.render(f5); + } + + public void renderStaticWall(float f) { + resetToDefaultPose(); + } + public void renderStaticFloor(float f) { + this.main.offsetY = -0.11F; + this.main.render(0.01F); + resetToDefaultPose(); + } + public void renderStaticSuspended(float f) { + this.main.offsetY = -0.11F; + this.main.render(0.01F); + resetToDefaultPose(); + } + + @Override + public void renderStaticBook(float f) { + //Rotations, positions and sizing: + this.main.offsetY = -0.20F; + this.main.offsetX = 0.075F; + this.main.offsetZ = 2.0F; + this.main.rotateAngleY = (float)Math.toRadians(212); + this.main.rotateAngleX = (float)Math.toRadians(22); + this.main.rotateAngleZ = (float)Math.toRadians(-12); + this.main.scaleChildren = true; + float scaler = 0.4F; + this.main.setScale(scaler, scaler, scaler); + //Start of pose: + + //End of pose, now render the model: + this.main.render(f); + //Reset rotations, positions and sizing: + this.main.setScale(1.0F, 1.0F, 1.0F); + this.main.scaleChildren = false; + resetToDefaultPose(); + } + + public void setRotateAngle(AdvancedModelRenderer AdvancedModelRenderer, float x, float y, float z) { + AdvancedModelRenderer.rotateAngleX = x; + AdvancedModelRenderer.rotateAngleY = y; + AdvancedModelRenderer.rotateAngleZ = z; + } + + @Override + public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity e) { + super.setRotationAngles(f, f1, f2, f3, f4, f5, e); + //this.resetToDefaultPose(); + this.main.offsetY = 0.0F; + + EntityPrehistoricFloraColossosuchus proteros = (EntityPrehistoricFloraColossosuchus) e; + + if(proteros.isReallyInWater()){ + this.main.offsetY = 0.5F; + } + this.faceTarget(f3, f4, 10, neck); + this.faceTarget(f3, f4, 10, neck2); + this.faceTarget(f3, f4, 10, head); + + AdvancedModelRenderer[] Tail = {this.tail, this.tail2, this.tail3, this.tail4, this.tail5, this.tail6}; + AdvancedModelRenderer[] Neck = {this.neck, this.neck2, this.head}; + //AdvancedModelRenderer[] ArmL = {this.leftarm, this.leftarm2, this.leftarm3}; + //AdvancedModelRenderer[] ArmR = {this.rightarm, this.rightarm2, this.rightarm3}; + + proteros.tailBuffer.applyChainSwingBuffer(Tail); + + if (proteros.getAnimation() == proteros.LAY_ANIMATION) { + this.chainSwing(Neck, 0.5F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.5F * 2, -0.02F, 0.5F, f2, 0.8F); + } + else { + if (!proteros.isReallyInWater()) { + + if (f3 == 0.0F || !proteros.getIsMoving()) { + this.chainSwing(Neck, 0.05F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.05F * 2, -0.02F, 0.5F, f2, 0.8F); + this.chainWave(Tail, (0.15F * 0.35F), 0.125F * 0.15F, 0.2F, f2, 1F); + this.chainSwing(Tail, (0.15F * 0.35F) * 4F, 0.05F * 0.35F, 0.12F, f2, 1F); + + + return; + } + + } + } + } + + + @Override + public void setLivingAnimations(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + super.setLivingAnimations(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + this.resetToDefaultPose(); + EntityPrehistoricFloraColossosuchus ee = (EntityPrehistoricFloraColossosuchus) entitylivingbaseIn; + + if (!ee.isReallyInWater()) { + if (ee.getIsMoving()) { + animWalking(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + } + } + else { + //Swimming pose: + animSwim(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + } + if (ee.getAnimation() == ee.ATTACK_ANIMATION) { + animAttack(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.LAY_ANIMATION) { + animLay(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.MAKE_NEST_ANIMATION) { + animNest(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.ROAR_ANIMATION) { //The noise anim + animNoise(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.STAND_ANIMATION) { //The noise anim + animIdle(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + + + } + public void animNest(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraColossosuchus entity = (EntityPrehistoricFloraColossosuchus) entitylivingbaseIn; + int animCycle = 50; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (69.66595-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (19.32526-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (-31.13819-(0))); + } + else if (tickAnim >= 20 && tickAnim < 36) { + xx = 69.66595 + (((tickAnim - 20) / 16) * (45.73277-(69.66595))); + yy = 19.32526 + (((tickAnim - 20) / 16) * (10.66953-(19.32526))); + zz = -31.13819 + (((tickAnim - 20) / 16) * (-46.78229-(-31.13819))); + } + else if (tickAnim >= 36 && tickAnim < 50) { + xx = 45.73277 + (((tickAnim - 36) / 14) * (0-(45.73277))); + yy = 10.66953 + (((tickAnim - 36) / 14) * (0-(10.66953))); + zz = -46.78229 + (((tickAnim - 36) / 14) * (0-(-46.78229))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (6.40955-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (-17.78182-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (-16.40795-(0))); + } + else if (tickAnim >= 20 && tickAnim < 36) { + xx = 6.40955 + (((tickAnim - 20) / 16) * (-38.72327-(6.40955))); + yy = -17.78182 + (((tickAnim - 20) / 16) * (-8.39697-(-17.78182))); + zz = -16.40795 + (((tickAnim - 20) / 16) * (-7.7482-(-16.40795))); + } + else if (tickAnim >= 36 && tickAnim < 50) { + xx = -38.72327 + (((tickAnim - 36) / 14) * (0-(-38.72327))); + yy = -8.39697 + (((tickAnim - 36) / 14) * (0-(-8.39697))); + zz = -7.7482 + (((tickAnim - 36) / 14) * (0-(-7.7482))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 36) { + xx = 0 + (((tickAnim - 20) / 16) * (0.775-(0))); + yy = 0 + (((tickAnim - 20) / 16) * (1.525-(0))); + zz = 0 + (((tickAnim - 20) / 16) * (0-(0))); + } + else if (tickAnim >= 36 && tickAnim < 50) { + xx = 0.775 + (((tickAnim - 36) / 14) * (0-(0.775))); + yy = 1.525 + (((tickAnim - 36) / 14) * (0-(1.525))); + zz = 0 + (((tickAnim - 36) / 14) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg2.rotationPointX = this.backLeftLeg2.rotationPointX + (float)(xx); + this.backLeftLeg2.rotationPointY = this.backLeftLeg2.rotationPointY - (float)(yy); + this.backLeftLeg2.rotationPointZ = this.backLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (-19.43-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = -19.43 + (((tickAnim - 10) / 10) * (80.75-(-19.43))); + yy = 0 + (((tickAnim - 10) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 10) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 36) { + xx = 80.75 + (((tickAnim - 20) / 16) * (95.63-(80.75))); + yy = 0 + (((tickAnim - 20) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 16) * (0-(0))); + } + else if (tickAnim >= 36 && tickAnim < 50) { + xx = 95.63 + (((tickAnim - 36) / 14) * (0-(95.63))); + yy = 0 + (((tickAnim - 36) / 14) * (0-(0))); + zz = 0 + (((tickAnim - 36) / 14) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg4, backLeftLeg4.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg4.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg4.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 36) { + xx = 0 + (((tickAnim - 20) / 16) * (0-(0))); + yy = 0 + (((tickAnim - 20) / 16) * (2.2-(0))); + zz = 0 + (((tickAnim - 20) / 16) * (0-(0))); + } + else if (tickAnim >= 36 && tickAnim < 44) { + xx = 0 + (((tickAnim - 36) / 8) * (0-(0))); + yy = 2.2 + (((tickAnim - 36) / 8) * (2.81-(2.2))); + zz = 0 + (((tickAnim - 36) / 8) * (0-(0))); + } + else if (tickAnim >= 44 && tickAnim < 50) { + xx = 0 + (((tickAnim - 44) / 6) * (0-(0))); + yy = 2.81 + (((tickAnim - 44) / 6) * (0-(2.81))); + zz = 0 + (((tickAnim - 44) / 6) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg4.rotationPointX = this.backLeftLeg4.rotationPointX + (float)(xx); + this.backLeftLeg4.rotationPointY = this.backLeftLeg4.rotationPointY - (float)(yy); + this.backLeftLeg4.rotationPointZ = this.backLeftLeg4.rotationPointZ + (float)(zz); + + } + public void animNoise(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraColossosuchus entity = (EntityPrehistoricFloraColossosuchus) entitylivingbaseIn; + int animCycle = 40; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (2.75-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 40) { + xx = 2.75 + (((tickAnim - 20) / 20) * (0-(2.75))); + yy = 0 + (((tickAnim - 20) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-5-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 40) { + xx = -5 + (((tickAnim - 20) / 20) * (0-(-5))); + yy = 0 + (((tickAnim - 20) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (12-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 26) { + xx = 12 + (((tickAnim - 20) / 6) * (14-(12))); + yy = 0 + (((tickAnim - 20) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 6) * (0-(0))); + } + else if (tickAnim >= 26 && tickAnim < 35) { + xx = 14 + (((tickAnim - 26) / 9) * (0-(14))); + yy = 0 + (((tickAnim - 26) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 26) / 9) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animIdle(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraColossosuchus entity = (EntityPrehistoricFloraColossosuchus) entitylivingbaseIn; + int animCycle = 560; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (-6.175-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = 0 + (((tickAnim - 30) / 470) * (0-(0))); + yy = -6.175 + (((tickAnim - 30) / 470) * (-6.175-(-6.175))); + zz = 0 + (((tickAnim - 30) / 470) * (0-(0))); + } + else if (tickAnim >= 500 && tickAnim < 525) { + xx = 0 + (((tickAnim - 500) / 25) * (0-(0))); + yy = -6.175 + (((tickAnim - 500) / 25) * (-3.175-(-6.175))); + zz = 0 + (((tickAnim - 500) / 25) * (0-(0))); + } + else if (tickAnim >= 525 && tickAnim < 560) { + xx = 0 + (((tickAnim - 525) / 35) * (0-(0))); + yy = -3.175 + (((tickAnim - 525) / 35) * (0-(-3.175))); + zz = 0 + (((tickAnim - 525) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.main.rotationPointX = this.main.rotationPointX + (float)(xx); + this.main.rotationPointY = this.main.rotationPointY - (float)(yy); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (-34.64316-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (-8.84133-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (-33.96825-(0))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = -34.64316 + (((tickAnim - 30) / 470) * (-34.64316-(-34.64316))); + yy = -8.84133 + (((tickAnim - 30) / 470) * (-8.84133-(-8.84133))); + zz = -33.96825 + (((tickAnim - 30) / 470) * (-33.96825-(-33.96825))); + } + else if (tickAnim >= 500 && tickAnim < 525) { + xx = -34.64316 + (((tickAnim - 500) / 25) * (3.82909-(-34.64316))); + yy = -8.84133 + (((tickAnim - 500) / 25) * (4.44346-(-8.84133))); + zz = -33.96825 + (((tickAnim - 500) / 25) * (-44.96843-(-33.96825))); + } + else if (tickAnim >= 525 && tickAnim < 542) { + xx = 3.82909 + (((tickAnim - 525) / 17) * (5.8068-(3.82909))); + yy = 4.44346 + (((tickAnim - 525) / 17) * (-9.28377-(4.44346))); + zz = -44.96843 + (((tickAnim - 525) / 17) * (-9.26479-(-44.96843))); + } + else if (tickAnim >= 542 && tickAnim < 560) { + xx = 5.8068 + (((tickAnim - 542) / 18) * (0-(5.8068))); + yy = -9.28377 + (((tickAnim - 542) / 18) * (0-(-9.28377))); + zz = -9.26479 + (((tickAnim - 542) / 18) * (0-(-9.26479))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg, frontLeftLeg.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 22) { + xx = 0 + (((tickAnim - 0) / 22) * (-52.65505-(0))); + yy = 0 + (((tickAnim - 0) / 22) * (-4.3484-(0))); + zz = 0 + (((tickAnim - 0) / 22) * (14.23938-(0))); + } + else if (tickAnim >= 22 && tickAnim < 30) { + xx = -52.65505 + (((tickAnim - 22) / 8) * (-51.20664-(-52.65505))); + yy = -4.3484 + (((tickAnim - 22) / 8) * (-9.0313-(-4.3484))); + zz = 14.23938 + (((tickAnim - 22) / 8) * (29.5741-(14.23938))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = -51.20664 + (((tickAnim - 30) / 470) * (-51.20664-(-51.20664))); + yy = -9.0313 + (((tickAnim - 30) / 470) * (-9.0313-(-9.0313))); + zz = 29.5741 + (((tickAnim - 30) / 470) * (29.5741-(29.5741))); + } + else if (tickAnim >= 500 && tickAnim < 525) { + xx = -51.20664 + (((tickAnim - 500) / 25) * (-49.15981-(-51.20664))); + yy = -9.0313 + (((tickAnim - 500) / 25) * (20.83727-(-9.0313))); + zz = 29.5741 + (((tickAnim - 500) / 25) * (15.59751-(29.5741))); + } + else if (tickAnim >= 525 && tickAnim < 542) { + xx = -49.15981 + (((tickAnim - 525) / 17) * (-15.73816-(-49.15981))); + yy = 20.83727 + (((tickAnim - 525) / 17) * (20.25457-(20.83727))); + zz = 15.59751 + (((tickAnim - 525) / 17) * (8.07254-(15.59751))); + } + else if (tickAnim >= 542 && tickAnim < 560) { + xx = -15.73816 + (((tickAnim - 542) / 18) * (0-(-15.73816))); + yy = 20.25457 + (((tickAnim - 542) / 18) * (0-(20.25457))); + zz = 8.07254 + (((tickAnim - 542) / 18) * (0-(8.07254))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg2, frontLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 22) { + xx = 0 + (((tickAnim - 0) / 22) * (-0.325-(0))); + yy = 0 + (((tickAnim - 0) / 22) * (-0.675-(0))); + zz = 0 + (((tickAnim - 0) / 22) * (1.28-(0))); + } + else if (tickAnim >= 22 && tickAnim < 30) { + xx = -0.325 + (((tickAnim - 22) / 8) * (0-(-0.325))); + yy = -0.675 + (((tickAnim - 22) / 8) * (0-(-0.675))); + zz = 1.28 + (((tickAnim - 22) / 8) * (1.775-(1.28))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = 0 + (((tickAnim - 30) / 470) * (0-(0))); + yy = 0 + (((tickAnim - 30) / 470) * (0-(0))); + zz = 1.775 + (((tickAnim - 30) / 470) * (1.775-(1.775))); + } + else if (tickAnim >= 500 && tickAnim < 525) { + xx = 0 + (((tickAnim - 500) / 25) * (0-(0))); + yy = 0 + (((tickAnim - 500) / 25) * (0-(0))); + zz = 1.775 + (((tickAnim - 500) / 25) * (0-(1.775))); + } + else if (tickAnim >= 525 && tickAnim < 560) { + xx = 0 + (((tickAnim - 525) / 35) * (0-(0))); + yy = 0 + (((tickAnim - 525) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 525) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg2.rotationPointX = this.frontLeftLeg2.rotationPointX + (float)(xx); + this.frontLeftLeg2.rotationPointY = this.frontLeftLeg2.rotationPointY - (float)(yy); + this.frontLeftLeg2.rotationPointZ = this.frontLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 22) { + xx = 0 + (((tickAnim - 0) / 22) * (80.28431-(0))); + yy = 0 + (((tickAnim - 0) / 22) * (-7.97327-(0))); + zz = 0 + (((tickAnim - 0) / 22) * (0.65557-(0))); + } + else if (tickAnim >= 22 && tickAnim < 30) { + xx = 80.28431 + (((tickAnim - 22) / 8) * (83.25-(80.28431))); + yy = -7.97327 + (((tickAnim - 22) / 8) * (0-(-7.97327))); + zz = 0.65557 + (((tickAnim - 22) / 8) * (0-(0.65557))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = 83.25 + (((tickAnim - 30) / 470) * (83.25-(83.25))); + yy = 0 + (((tickAnim - 30) / 470) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 470) * (0-(0))); + } + else if (tickAnim >= 500 && tickAnim < 525) { + xx = 83.25 + (((tickAnim - 500) / 25) * (79.5-(83.25))); + yy = 0 + (((tickAnim - 500) / 25) * (0-(0))); + zz = 0 + (((tickAnim - 500) / 25) * (0-(0))); + } + else if (tickAnim >= 525 && tickAnim < 542) { + xx = 79.5 + (((tickAnim - 525) / 17) * (11.23503-(79.5))); + yy = 0 + (((tickAnim - 525) / 17) * (3.04012-(0))); + zz = 0 + (((tickAnim - 525) / 17) * (-11.10432-(0))); + } + else if (tickAnim >= 542 && tickAnim < 560) { + xx = 11.23503 + (((tickAnim - 542) / 18) * (0-(11.23503))); + yy = 3.04012 + (((tickAnim - 542) / 18) * (0-(3.04012))); + zz = -11.10432 + (((tickAnim - 542) / 18) * (0-(-11.10432))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg3, frontLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (1.775-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (0.425-(0))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = 0 + (((tickAnim - 30) / 470) * (0-(0))); + yy = 1.775 + (((tickAnim - 30) / 470) * (1.775-(1.775))); + zz = 0.425 + (((tickAnim - 30) / 470) * (0.425-(0.425))); + } + else if (tickAnim >= 500 && tickAnim < 525) { + xx = 0 + (((tickAnim - 500) / 25) * (0-(0))); + yy = 1.775 + (((tickAnim - 500) / 25) * (2.55-(1.775))); + zz = 0.425 + (((tickAnim - 500) / 25) * (-1-(0.425))); + } + else if (tickAnim >= 525 && tickAnim < 542) { + xx = 0 + (((tickAnim - 525) / 17) * (0-(0))); + yy = 2.55 + (((tickAnim - 525) / 17) * (0-(2.55))); + zz = -1 + (((tickAnim - 525) / 17) * (0-(-1))); + } + else if (tickAnim >= 542 && tickAnim < 560) { + xx = 0 + (((tickAnim - 542) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 542) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 542) / 18) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg3.rotationPointX = this.frontLeftLeg3.rotationPointX + (float)(xx); + this.frontLeftLeg3.rotationPointY = this.frontLeftLeg3.rotationPointY - (float)(yy); + this.frontLeftLeg3.rotationPointZ = this.frontLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (-34.64316-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (8.84133-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (33.96825-(0))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = -34.64316 + (((tickAnim - 30) / 470) * (-34.64316-(-34.64316))); + yy = 8.84133 + (((tickAnim - 30) / 470) * (8.84133-(8.84133))); + zz = 33.96825 + (((tickAnim - 30) / 470) * (33.96825-(33.96825))); + } + else if (tickAnim >= 500 && tickAnim < 525) { + xx = -34.64316 + (((tickAnim - 500) / 25) * (-34.55204-(-34.64316))); + yy = 8.84133 + (((tickAnim - 500) / 25) * (8.68859-(8.84133))); + zz = 33.96825 + (((tickAnim - 500) / 25) * (29.87868-(33.96825))); + } + else if (tickAnim >= 525 && tickAnim < 543) { + xx = -34.55204 + (((tickAnim - 525) / 18) * (-33.08675-(-34.55204))); + yy = 8.68859 + (((tickAnim - 525) / 18) * (3.95684-(8.68859))); + zz = 29.87868 + (((tickAnim - 525) / 18) * (21.12672-(29.87868))); + } + else if (tickAnim >= 543 && tickAnim < 552) { + xx = -33.08675 + (((tickAnim - 543) / 9) * (-28.8704-(-33.08675))); + yy = 3.95684 + (((tickAnim - 543) / 9) * (-6.44848-(3.95684))); + zz = 21.12672 + (((tickAnim - 543) / 9) * (45.49636-(21.12672))); + } + else if (tickAnim >= 552 && tickAnim < 560) { + xx = -28.8704 + (((tickAnim - 552) / 8) * (0-(-28.8704))); + yy = -6.44848 + (((tickAnim - 552) / 8) * (0-(-6.44848))); + zz = 45.49636 + (((tickAnim - 552) / 8) * (0-(45.49636))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg, frontRightLeg.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (-51.20664-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (9.0313-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (-29.5741-(0))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = -51.20664 + (((tickAnim - 30) / 470) * (-51.20664-(-51.20664))); + yy = 9.0313 + (((tickAnim - 30) / 470) * (9.0313-(9.0313))); + zz = -29.5741 + (((tickAnim - 30) / 470) * (-29.5741-(-29.5741))); + } + else if (tickAnim >= 500 && tickAnim < 525) { + xx = -51.20664 + (((tickAnim - 500) / 25) * (-14.58073-(-51.20664))); + yy = 9.0313 + (((tickAnim - 500) / 25) * (14.22687-(9.0313))); + zz = -29.5741 + (((tickAnim - 500) / 25) * (-33.15475-(-29.5741))); + } + else if (tickAnim >= 525 && tickAnim < 543) { + xx = -14.58073 + (((tickAnim - 525) / 18) * (-3.63663-(-14.58073))); + yy = 14.22687 + (((tickAnim - 525) / 18) * (23.51786-(14.22687))); + zz = -33.15475 + (((tickAnim - 525) / 18) * (-2.54161-(-33.15475))); + } + else if (tickAnim >= 543 && tickAnim < 560) { + xx = -3.63663 + (((tickAnim - 543) / 17) * (0-(-3.63663))); + yy = 23.51786 + (((tickAnim - 543) / 17) * (0-(23.51786))); + zz = -2.54161 + (((tickAnim - 543) / 17) * (0-(-2.54161))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg2, frontRightLeg2.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg2.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (1.775-(0))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = 0 + (((tickAnim - 30) / 470) * (0-(0))); + yy = 0 + (((tickAnim - 30) / 470) * (0-(0))); + zz = 1.775 + (((tickAnim - 30) / 470) * (1.775-(1.775))); + } + else if (tickAnim >= 500 && tickAnim < 525) { + xx = 0 + (((tickAnim - 500) / 25) * (0-(0))); + yy = 0 + (((tickAnim - 500) / 25) * (0-(0))); + zz = 1.775 + (((tickAnim - 500) / 25) * (0-(1.775))); + } + else if (tickAnim >= 525 && tickAnim < 552) { + xx = 0 + (((tickAnim - 525) / 27) * (0-(0))); + yy = 0 + (((tickAnim - 525) / 27) * (1.425-(0))); + zz = 0 + (((tickAnim - 525) / 27) * (1.275-(0))); + } + else if (tickAnim >= 552 && tickAnim < 560) { + xx = 0 + (((tickAnim - 552) / 8) * (0-(0))); + yy = 1.425 + (((tickAnim - 552) / 8) * (0-(1.425))); + zz = 1.275 + (((tickAnim - 552) / 8) * (0-(1.275))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg2.rotationPointX = this.frontRightLeg2.rotationPointX + (float)(xx); + this.frontRightLeg2.rotationPointY = this.frontRightLeg2.rotationPointY - (float)(yy); + this.frontRightLeg2.rotationPointZ = this.frontRightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (83.25-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = 83.25 + (((tickAnim - 30) / 470) * (83.25-(83.25))); + yy = 0 + (((tickAnim - 30) / 470) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 470) * (0-(0))); + } + else if (tickAnim >= 500 && tickAnim < 525) { + xx = 83.25 + (((tickAnim - 500) / 25) * (45.52448-(83.25))); + yy = 0 + (((tickAnim - 500) / 25) * (-5.60833-(0))); + zz = 0 + (((tickAnim - 500) / 25) * (4.60183-(0))); + } + else if (tickAnim >= 525 && tickAnim < 543) { + xx = 45.52448 + (((tickAnim - 525) / 18) * (35.00749-(45.52448))); + yy = -5.60833 + (((tickAnim - 525) / 18) * (8.95665-(-5.60833))); + zz = 4.60183 + (((tickAnim - 525) / 18) * (-15.13162-(4.60183))); + } + else if (tickAnim >= 543 && tickAnim < 552) { + xx = 35.00749 + (((tickAnim - 543) / 9) * (79.75749-(35.00749))); + yy = 8.95665 + (((tickAnim - 543) / 9) * (8.95665-(8.95665))); + zz = -15.13162 + (((tickAnim - 543) / 9) * (-15.13162-(-15.13162))); + } + else if (tickAnim >= 552 && tickAnim < 560) { + xx = 79.75749 + (((tickAnim - 552) / 8) * (0-(79.75749))); + yy = 8.95665 + (((tickAnim - 552) / 8) * (0-(8.95665))); + zz = -15.13162 + (((tickAnim - 552) / 8) * (0-(-15.13162))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg3, frontRightLeg3.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg3.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (1.775-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (0.425-(0))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = 0 + (((tickAnim - 30) / 470) * (0-(0))); + yy = 1.775 + (((tickAnim - 30) / 470) * (1.775-(1.775))); + zz = 0.425 + (((tickAnim - 30) / 470) * (0.425-(0.425))); + } + else if (tickAnim >= 500 && tickAnim < 525) { + xx = 0 + (((tickAnim - 500) / 25) * (0-(0))); + yy = 1.775 + (((tickAnim - 500) / 25) * (0-(1.775))); + zz = 0.425 + (((tickAnim - 500) / 25) * (-1.375-(0.425))); + } + else if (tickAnim >= 525 && tickAnim < 543) { + xx = 0 + (((tickAnim - 525) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 525) / 18) * (0-(0))); + zz = -1.375 + (((tickAnim - 525) / 18) * (0-(-1.375))); + } + else if (tickAnim >= 543 && tickAnim < 552) { + xx = 0 + (((tickAnim - 543) / 9) * (0-(0))); + yy = 0 + (((tickAnim - 543) / 9) * (2.175-(0))); + zz = 0 + (((tickAnim - 543) / 9) * (0-(0))); + } + else if (tickAnim >= 552 && tickAnim < 560) { + xx = 0 + (((tickAnim - 552) / 8) * (0-(0))); + yy = 2.175 + (((tickAnim - 552) / 8) * (0-(2.175))); + zz = 0 + (((tickAnim - 552) / 8) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg3.rotationPointX = this.frontRightLeg3.rotationPointX + (float)(xx); + this.frontRightLeg3.rotationPointY = this.frontRightLeg3.rotationPointY - (float)(yy); + this.frontRightLeg3.rotationPointZ = this.frontRightLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (-11.75-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 89) { + xx = -11.75 + (((tickAnim - 30) / 59) * (-11.75-(-11.75))); + yy = 0 + (((tickAnim - 30) / 59) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 59) * (0-(0))); + } + else if (tickAnim >= 89 && tickAnim < 90) { + xx = -11.75 + (((tickAnim - 89) / 1) * (-14.525+Math.sin((Math.PI/180)*(((double)tickAnim/20)*120+70))*-3-(-11.75))); + yy = 0 + (((tickAnim - 89) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 89) / 1) * (0-(0))); + } + else if (tickAnim >= 90 && tickAnim < 130) { + xx = -14.525+Math.sin((Math.PI/180)*(((double)tickAnim/20)*120+70))*-3 + (((tickAnim - 90) / 40) * (-15.5-(-14.525+Math.sin((Math.PI/180)*(((double)tickAnim/20)*120+70))*-3))); + yy = 0 + (((tickAnim - 90) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 90) / 40) * (0-(0))); + } + else if (tickAnim >= 130 && tickAnim < 500) { + xx = -15.5 + (((tickAnim - 130) / 370) * (-11.75-(-15.5))); + yy = 0 + (((tickAnim - 130) / 370) * (0-(0))); + zz = 0 + (((tickAnim - 130) / 370) * (0-(0))); + } + else if (tickAnim >= 500 && tickAnim < 525) { + xx = -11.75 + (((tickAnim - 500) / 25) * (-15.5-(-11.75))); + yy = 0 + (((tickAnim - 500) / 25) * (0-(0))); + zz = 0 + (((tickAnim - 500) / 25) * (0-(0))); + } + else if (tickAnim >= 525 && tickAnim < 560) { + xx = -15.5 + (((tickAnim - 525) / 35) * (0-(-15.5))); + yy = 0 + (((tickAnim - 525) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 525) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (5.5-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 89) { + xx = 5.5 + (((tickAnim - 30) / 59) * (5.5-(5.5))); + yy = 0 + (((tickAnim - 30) / 59) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 59) * (0-(0))); + } + else if (tickAnim >= 89 && tickAnim < 90) { + xx = 5.5 + (((tickAnim - 89) / 1) * (5.5+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80))*-5-(5.5))); + yy = 0 + (((tickAnim - 89) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 89) / 1) * (0-(0))); + } + else if (tickAnim >= 90 && tickAnim < 130) { + xx = 5.5+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80))*-5 + (((tickAnim - 90) / 40) * (0.75-(5.5+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80))*-5))); + yy = 0 + (((tickAnim - 90) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 90) / 40) * (0-(0))); + } + else if (tickAnim >= 130 && tickAnim < 500) { + xx = 0.75 + (((tickAnim - 130) / 370) * (-8.5-(0.75))); + yy = 0 + (((tickAnim - 130) / 370) * (0-(0))); + zz = 0 + (((tickAnim - 130) / 370) * (0-(0))); + } + else if (tickAnim >= 500 && tickAnim < 540) { + xx = -8.5 + (((tickAnim - 500) / 40) * (14.25-(-8.5))); + yy = 0 + (((tickAnim - 500) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 500) / 40) * (0-(0))); + } + else if (tickAnim >= 540 && tickAnim < 560) { + xx = 14.25 + (((tickAnim - 540) / 20) * (0-(14.25))); + yy = 0 + (((tickAnim - 540) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 540) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 87 && tickAnim < 88) { + xx = 0 + (((tickAnim - 87) / 1) * (3.65+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80))*20-(0))); + yy = 0 + (((tickAnim - 87) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 87) / 1) * (0-(0))); + } + else if (tickAnim >= 88 && tickAnim < 130) { + xx = 3.65+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80))*20 + (((tickAnim - 88) / 42) * (19.5+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50/0.5))*0.2-(3.65+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80))*20))); + yy = 0 + (((tickAnim - 88) / 42) * (0-(0))); + zz = 0 + (((tickAnim - 88) / 42) * (0-(0))); + } + else if (tickAnim >= 130 && tickAnim < 500) { + xx = 19.5+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50/0.5))*0.2 + (((tickAnim - 130) / 370) * (30-(19.5+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50/0.5))*0.2))); + yy = 0 + (((tickAnim - 130) / 370) * (0-(0))); + zz = 0 + (((tickAnim - 130) / 370) * (0-(0))); + } + else if (tickAnim >= 500 && tickAnim < 512) { + xx = 30 + (((tickAnim - 500) / 12) * (0-(30))); + yy = 0 + (((tickAnim - 500) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 500) / 12) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (-37.24582-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (-22.8013-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (10.35442-(0))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = -37.24582 + (((tickAnim - 30) / 470) * (-37.24582-(-37.24582))); + yy = -22.8013 + (((tickAnim - 30) / 470) * (-22.8013-(-22.8013))); + zz = 10.35442 + (((tickAnim - 30) / 470) * (10.35442-(10.35442))); + } + else if (tickAnim >= 500 && tickAnim < 560) { + xx = -37.24582 + (((tickAnim - 500) / 60) * (0-(-37.24582))); + yy = -22.8013 + (((tickAnim - 500) / 60) * (0-(-22.8013))); + zz = 10.35442 + (((tickAnim - 500) / 60) * (0-(10.35442))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (28.36994-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (-6.78195-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (4.74239-(0))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = 28.36994 + (((tickAnim - 30) / 470) * (28.36994-(28.36994))); + yy = -6.78195 + (((tickAnim - 30) / 470) * (-6.78195-(-6.78195))); + zz = 4.74239 + (((tickAnim - 30) / 470) * (4.74239-(4.74239))); + } + else if (tickAnim >= 500 && tickAnim < 560) { + xx = 28.36994 + (((tickAnim - 500) / 60) * (0-(28.36994))); + yy = -6.78195 + (((tickAnim - 500) / 60) * (0-(-6.78195))); + zz = 4.74239 + (((tickAnim - 500) / 60) * (0-(4.74239))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + this.backLeftLeg2.rotationPointX = this.backLeftLeg2.rotationPointX + (float)(0); + this.backLeftLeg2.rotationPointY = this.backLeftLeg2.rotationPointY - (float)(0); + this.backLeftLeg2.rotationPointZ = this.backLeftLeg2.rotationPointZ + (float)(0); + + + this.setRotateAngle(backLeftLeg3, backLeftLeg3.rotateAngleX + (float) Math.toRadians(0), backLeftLeg3.rotateAngleY + (float) Math.toRadians(0), backLeftLeg3.rotateAngleZ + (float) Math.toRadians(0)); + this.backLeftLeg3.rotationPointX = this.backLeftLeg3.rotationPointX + (float)(0); + this.backLeftLeg3.rotationPointY = this.backLeftLeg3.rotationPointY - (float)(0); + this.backLeftLeg3.rotationPointZ = this.backLeftLeg3.rotationPointZ + (float)(0); + + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (7.75-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = 7.75 + (((tickAnim - 30) / 470) * (7.75-(7.75))); + yy = 0 + (((tickAnim - 30) / 470) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 470) * (0-(0))); + } + else if (tickAnim >= 500 && tickAnim < 560) { + xx = 7.75 + (((tickAnim - 500) / 60) * (0-(7.75))); + yy = 0 + (((tickAnim - 500) / 60) * (0-(0))); + zz = 0 + (((tickAnim - 500) / 60) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg4, backLeftLeg4.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg4.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg4.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (0.85-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = 0 + (((tickAnim - 30) / 470) * (0-(0))); + yy = 0.85 + (((tickAnim - 30) / 470) * (0.85-(0.85))); + zz = 0 + (((tickAnim - 30) / 470) * (0-(0))); + } + else if (tickAnim >= 500 && tickAnim < 533) { + xx = 0 + (((tickAnim - 500) / 33) * (0-(0))); + yy = 0.85 + (((tickAnim - 500) / 33) * (0-(0.85))); + zz = 0 + (((tickAnim - 500) / 33) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg4.rotationPointX = this.backLeftLeg4.rotationPointX + (float)(xx); + this.backLeftLeg4.rotationPointY = this.backLeftLeg4.rotationPointY - (float)(yy); + this.backLeftLeg4.rotationPointZ = this.backLeftLeg4.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (-37.24582-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (22.8013-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (-10.35442-(0))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = -37.24582 + (((tickAnim - 30) / 470) * (-37.24582-(-37.24582))); + yy = 22.8013 + (((tickAnim - 30) / 470) * (22.8013-(22.8013))); + zz = -10.35442 + (((tickAnim - 30) / 470) * (-10.35442-(-10.35442))); + } + else if (tickAnim >= 500 && tickAnim < 560) { + xx = -37.24582 + (((tickAnim - 500) / 60) * (0-(-37.24582))); + yy = 22.8013 + (((tickAnim - 500) / 60) * (0-(22.8013))); + zz = -10.35442 + (((tickAnim - 500) / 60) * (0-(-10.35442))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg, backRightLeg.rotateAngleX + (float) Math.toRadians(xx), backRightLeg.rotateAngleY + (float) Math.toRadians(yy), backRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (28.36994-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (6.78195-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (-4.74239-(0))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = 28.36994 + (((tickAnim - 30) / 470) * (28.36994-(28.36994))); + yy = 6.78195 + (((tickAnim - 30) / 470) * (6.78195-(6.78195))); + zz = -4.74239 + (((tickAnim - 30) / 470) * (-4.74239-(-4.74239))); + } + else if (tickAnim >= 500 && tickAnim < 560) { + xx = 28.36994 + (((tickAnim - 500) / 60) * (0-(28.36994))); + yy = 6.78195 + (((tickAnim - 500) / 60) * (0-(6.78195))); + zz = -4.74239 + (((tickAnim - 500) / 60) * (0-(-4.74239))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg2, backRightLeg2.rotateAngleX + (float) Math.toRadians(xx), backRightLeg2.rotateAngleY + (float) Math.toRadians(yy), backRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + this.backRightLeg2.rotationPointX = this.backRightLeg2.rotationPointX + (float)(0); + this.backRightLeg2.rotationPointY = this.backRightLeg2.rotationPointY - (float)(0); + this.backRightLeg2.rotationPointZ = this.backRightLeg2.rotationPointZ + (float)(0); + + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (7.75-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = 7.75 + (((tickAnim - 30) / 470) * (7.75-(7.75))); + yy = 0 + (((tickAnim - 30) / 470) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 470) * (0-(0))); + } + else if (tickAnim >= 500 && tickAnim < 560) { + xx = 7.75 + (((tickAnim - 500) / 60) * (0-(7.75))); + yy = 0 + (((tickAnim - 500) / 60) * (0-(0))); + zz = 0 + (((tickAnim - 500) / 60) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg4, backRightLeg4.rotateAngleX + (float) Math.toRadians(xx), backRightLeg4.rotateAngleY + (float) Math.toRadians(yy), backRightLeg4.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (0.85-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = 0 + (((tickAnim - 30) / 470) * (0-(0))); + yy = 0.85 + (((tickAnim - 30) / 470) * (0.85-(0.85))); + zz = 0 + (((tickAnim - 30) / 470) * (0-(0))); + } + else if (tickAnim >= 500 && tickAnim < 533) { + xx = 0 + (((tickAnim - 500) / 33) * (0-(0))); + yy = 0.85 + (((tickAnim - 500) / 33) * (0-(0.85))); + zz = 0 + (((tickAnim - 500) / 33) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg4.rotationPointX = this.backRightLeg4.rotationPointX + (float)(xx); + this.backRightLeg4.rotationPointY = this.backRightLeg4.rotationPointY - (float)(yy); + this.backRightLeg4.rotationPointZ = this.backRightLeg4.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (17.5-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = 17.5 + (((tickAnim - 30) / 470) * (17.5-(17.5))); + yy = 0 + (((tickAnim - 30) / 470) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 470) * (0-(0))); + } + else if (tickAnim >= 500 && tickAnim < 525) { + xx = 17.5 + (((tickAnim - 500) / 25) * (6.5-(17.5))); + yy = 0 + (((tickAnim - 500) / 25) * (0-(0))); + zz = 0 + (((tickAnim - 500) / 25) * (0-(0))); + } + else if (tickAnim >= 525 && tickAnim < 560) { + xx = 6.5 + (((tickAnim - 525) / 35) * (0-(6.5))); + yy = 0 + (((tickAnim - 525) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 525) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(xx), tail2.rotateAngleY + (float) Math.toRadians(yy), tail2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (-7.5-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = -7.5 + (((tickAnim - 30) / 470) * (-7.5-(-7.5))); + yy = 0 + (((tickAnim - 30) / 470) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 470) * (0-(0))); + } + else if (tickAnim >= 500 && tickAnim < 525) { + xx = -7.5 + (((tickAnim - 500) / 25) * (6.25-(-7.5))); + yy = 0 + (((tickAnim - 500) / 25) * (0-(0))); + zz = 0 + (((tickAnim - 500) / 25) * (0-(0))); + } + else if (tickAnim >= 525 && tickAnim < 560) { + xx = 6.25 + (((tickAnim - 525) / 35) * (0-(6.25))); + yy = 0 + (((tickAnim - 525) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 525) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(xx), tail3.rotateAngleY + (float) Math.toRadians(yy), tail3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (-5.5-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = -5.5 + (((tickAnim - 30) / 470) * (-5.5-(-5.5))); + yy = 0 + (((tickAnim - 30) / 470) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 470) * (0-(0))); + } + else if (tickAnim >= 500 && tickAnim < 560) { + xx = -5.5 + (((tickAnim - 500) / 60) * (0-(-5.5))); + yy = 0 + (((tickAnim - 500) / 60) * (0-(0))); + zz = 0 + (((tickAnim - 500) / 60) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(xx), tail4.rotateAngleY + (float) Math.toRadians(yy), tail4.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (-5-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = -5 + (((tickAnim - 30) / 470) * (-5-(-5))); + yy = 0 + (((tickAnim - 30) / 470) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 470) * (0-(0))); + } + else if (tickAnim >= 500 && tickAnim < 525) { + xx = -5 + (((tickAnim - 500) / 25) * (-7.25-(-5))); + yy = 0 + (((tickAnim - 500) / 25) * (0-(0))); + zz = 0 + (((tickAnim - 500) / 25) * (0-(0))); + } + else if (tickAnim >= 525 && tickAnim < 560) { + xx = -7.25 + (((tickAnim - 525) / 35) * (0-(-7.25))); + yy = 0 + (((tickAnim - 525) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 525) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail5, tail5.rotateAngleX + (float) Math.toRadians(xx), tail5.rotateAngleY + (float) Math.toRadians(yy), tail5.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (-0.5-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 500) { + xx = -0.5 + (((tickAnim - 30) / 470) * (-0.5-(-0.5))); + yy = 0 + (((tickAnim - 30) / 470) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 470) * (0-(0))); + } + else if (tickAnim >= 500 && tickAnim < 525) { + xx = -0.5 + (((tickAnim - 500) / 25) * (-5.5-(-0.5))); + yy = 0 + (((tickAnim - 500) / 25) * (0-(0))); + zz = 0 + (((tickAnim - 500) / 25) * (0-(0))); + } + else if (tickAnim >= 525 && tickAnim < 560) { + xx = -5.5 + (((tickAnim - 525) / 35) * (0-(-5.5))); + yy = 0 + (((tickAnim - 525) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 525) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail6, tail6.rotateAngleX + (float) Math.toRadians(xx), tail6.rotateAngleY + (float) Math.toRadians(yy), tail6.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animLay(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraColossosuchus entity = (EntityPrehistoricFloraColossosuchus) entitylivingbaseIn; + int animCycle = 50; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (-6.825-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 0 + (((tickAnim - 20) / 10) * (0-(0))); + yy = -6.825 + (((tickAnim - 20) / 10) * (-6.825-(-6.825))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 0 + (((tickAnim - 30) / 20) * (0-(0))); + yy = -6.825 + (((tickAnim - 30) / 20) * (0-(-6.825))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.main.rotationPointX = this.main.rotationPointX + (float)(xx); + this.main.rotationPointY = this.main.rotationPointY - (float)(yy); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (-28.75-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 0 + (((tickAnim - 20) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = -28.75 + (((tickAnim - 20) / 10) * (-28.75-(-28.75))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 0 + (((tickAnim - 30) / 20) * (0-(0))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = -28.75 + (((tickAnim - 30) / 20) * (0-(-28.75))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg, frontLeftLeg.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (1.35-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 1.35 + (((tickAnim - 20) / 10) * (1.35-(1.35))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 1.35 + (((tickAnim - 30) / 20) * (0-(1.35))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg2.rotationPointX = this.frontLeftLeg2.rotationPointX + (float)(xx); + this.frontLeftLeg2.rotationPointY = this.frontLeftLeg2.rotationPointY - (float)(yy); + this.frontLeftLeg2.rotationPointZ = this.frontLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-1.67665-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (-8.47676-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (23.78606-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -1.67665 + (((tickAnim - 20) / 10) * (-1.67665-(-1.67665))); + yy = -8.47676 + (((tickAnim - 20) / 10) * (-8.47676-(-8.47676))); + zz = 23.78606 + (((tickAnim - 20) / 10) * (23.78606-(23.78606))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -1.67665 + (((tickAnim - 30) / 20) * (0-(-1.67665))); + yy = -8.47676 + (((tickAnim - 30) / 20) * (0-(-8.47676))); + zz = 23.78606 + (((tickAnim - 30) / 20) * (0-(23.78606))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg3, frontLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (0.525-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (2.55-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (-0.5-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 0.525 + (((tickAnim - 20) / 10) * (0.525-(0.525))); + yy = 2.55 + (((tickAnim - 20) / 10) * (2.55-(2.55))); + zz = -0.5 + (((tickAnim - 20) / 10) * (-0.5-(-0.5))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 0.525 + (((tickAnim - 30) / 20) * (0-(0.525))); + yy = 2.55 + (((tickAnim - 30) / 20) * (0-(2.55))); + zz = -0.5 + (((tickAnim - 30) / 20) * (0-(-0.5))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg3.rotationPointX = this.frontLeftLeg3.rotationPointX + (float)(xx); + this.frontLeftLeg3.rotationPointY = this.frontLeftLeg3.rotationPointY - (float)(yy); + this.frontLeftLeg3.rotationPointZ = this.frontLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (28.75-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 0 + (((tickAnim - 20) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 28.75 + (((tickAnim - 20) / 10) * (28.75-(28.75))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 0 + (((tickAnim - 30) / 20) * (0-(0))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 28.75 + (((tickAnim - 30) / 20) * (0-(28.75))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg, frontRightLeg.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-1.35-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -1.35 + (((tickAnim - 20) / 10) * (-1.35-(-1.35))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -1.35 + (((tickAnim - 30) / 20) * (0-(-1.35))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg2.rotationPointX = this.frontRightLeg2.rotationPointX + (float)(xx); + this.frontRightLeg2.rotationPointY = this.frontRightLeg2.rotationPointY - (float)(yy); + this.frontRightLeg2.rotationPointZ = this.frontRightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-1.67665-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (8.47676-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (-23.78606-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -1.67665 + (((tickAnim - 20) / 10) * (-1.67665-(-1.67665))); + yy = 8.47676 + (((tickAnim - 20) / 10) * (8.47676-(8.47676))); + zz = -23.78606 + (((tickAnim - 20) / 10) * (-23.78606-(-23.78606))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -1.67665 + (((tickAnim - 30) / 20) * (0-(-1.67665))); + yy = 8.47676 + (((tickAnim - 30) / 20) * (0-(8.47676))); + zz = -23.78606 + (((tickAnim - 30) / 20) * (0-(-23.78606))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg3, frontRightLeg3.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg3.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (0.525-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (2.55-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (-0.5-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 0.525 + (((tickAnim - 20) / 10) * (0.525-(0.525))); + yy = 2.55 + (((tickAnim - 20) / 10) * (2.55-(2.55))); + zz = -0.5 + (((tickAnim - 20) / 10) * (-0.5-(-0.5))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 0.525 + (((tickAnim - 30) / 20) * (0-(0.525))); + yy = 2.55 + (((tickAnim - 30) / 20) * (0-(2.55))); + zz = -0.5 + (((tickAnim - 30) / 20) * (0-(-0.5))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg3.rotationPointX = this.frontRightLeg3.rotationPointX + (float)(xx); + this.frontRightLeg3.rotationPointY = this.frontRightLeg3.rotationPointY - (float)(yy); + this.frontRightLeg3.rotationPointZ = this.frontRightLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-13.75-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -13.75 + (((tickAnim - 20) / 10) * (-13.75-(-13.75))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -13.75 + (((tickAnim - 30) / 20) * (0-(-13.75))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (9.25-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 9.25 + (((tickAnim - 20) / 10) * (9.25-(9.25))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 9.25 + (((tickAnim - 30) / 20) * (0-(9.25))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-25.60841-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (-5.36059-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (-6.54547-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -25.60841 + (((tickAnim - 20) / 10) * (-25.60841-(-25.60841))); + yy = -5.36059 + (((tickAnim - 20) / 10) * (-5.36059-(-5.36059))); + zz = -6.54547 + (((tickAnim - 20) / 10) * (-6.54547-(-6.54547))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -25.60841 + (((tickAnim - 30) / 20) * (0-(-25.60841))); + yy = -5.36059 + (((tickAnim - 30) / 20) * (0-(-5.36059))); + zz = -6.54547 + (((tickAnim - 30) / 20) * (0-(-6.54547))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (29.54949-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (-14.10947-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (8.11649-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 29.54949 + (((tickAnim - 20) / 10) * (29.54949-(29.54949))); + yy = -14.10947 + (((tickAnim - 20) / 10) * (-14.10947-(-14.10947))); + zz = 8.11649 + (((tickAnim - 20) / 10) * (8.11649-(8.11649))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 29.54949 + (((tickAnim - 30) / 20) * (0-(29.54949))); + yy = -14.10947 + (((tickAnim - 30) / 20) * (0-(-14.10947))); + zz = 8.11649 + (((tickAnim - 30) / 20) * (0-(8.11649))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-9.05552-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (-1.28004-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (6.73436-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -9.05552 + (((tickAnim - 20) / 10) * (-9.05552-(-9.05552))); + yy = -1.28004 + (((tickAnim - 20) / 10) * (-1.28004-(-1.28004))); + zz = 6.73436 + (((tickAnim - 20) / 10) * (6.73436-(6.73436))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -9.05552 + (((tickAnim - 30) / 20) * (0-(-9.05552))); + yy = -1.28004 + (((tickAnim - 30) / 20) * (0-(-1.28004))); + zz = 6.73436 + (((tickAnim - 30) / 20) * (0-(6.73436))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg4, backLeftLeg4.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg4.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg4.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (2.15-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 0 + (((tickAnim - 20) / 10) * (0-(0))); + yy = 2.15 + (((tickAnim - 20) / 10) * (2.15-(2.15))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 0 + (((tickAnim - 30) / 20) * (0-(0))); + yy = 2.15 + (((tickAnim - 30) / 20) * (0-(2.15))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg4.rotationPointX = this.backLeftLeg4.rotationPointX + (float)(xx); + this.backLeftLeg4.rotationPointY = this.backLeftLeg4.rotationPointY - (float)(yy); + this.backLeftLeg4.rotationPointZ = this.backLeftLeg4.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-25.60841-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (5.36059-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (6.54547-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -25.60841 + (((tickAnim - 20) / 10) * (-25.60841-(-25.60841))); + yy = 5.36059 + (((tickAnim - 20) / 10) * (5.36059-(5.36059))); + zz = 6.54547 + (((tickAnim - 20) / 10) * (6.54547-(6.54547))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -25.60841 + (((tickAnim - 30) / 20) * (0-(-25.60841))); + yy = 5.36059 + (((tickAnim - 30) / 20) * (0-(5.36059))); + zz = 6.54547 + (((tickAnim - 30) / 20) * (0-(6.54547))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg, backRightLeg.rotateAngleX + (float) Math.toRadians(xx), backRightLeg.rotateAngleY + (float) Math.toRadians(yy), backRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (29.54949-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (14.10947-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (-8.11649-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 29.54949 + (((tickAnim - 20) / 10) * (29.54949-(29.54949))); + yy = 14.10947 + (((tickAnim - 20) / 10) * (14.10947-(14.10947))); + zz = -8.11649 + (((tickAnim - 20) / 10) * (-8.11649-(-8.11649))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 29.54949 + (((tickAnim - 30) / 20) * (0-(29.54949))); + yy = 14.10947 + (((tickAnim - 30) / 20) * (0-(14.10947))); + zz = -8.11649 + (((tickAnim - 30) / 20) * (0-(-8.11649))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg2, backRightLeg2.rotateAngleX + (float) Math.toRadians(xx), backRightLeg2.rotateAngleY + (float) Math.toRadians(yy), backRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-9.05552-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (-1.28004-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (6.73436-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -9.05552 + (((tickAnim - 20) / 10) * (-9.05552-(-9.05552))); + yy = -1.28004 + (((tickAnim - 20) / 10) * (-1.28004-(-1.28004))); + zz = 6.73436 + (((tickAnim - 20) / 10) * (6.73436-(6.73436))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -9.05552 + (((tickAnim - 30) / 20) * (0-(-9.05552))); + yy = -1.28004 + (((tickAnim - 30) / 20) * (0-(-1.28004))); + zz = 6.73436 + (((tickAnim - 30) / 20) * (0-(6.73436))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg4, backRightLeg4.rotateAngleX + (float) Math.toRadians(xx), backRightLeg4.rotateAngleY + (float) Math.toRadians(yy), backRightLeg4.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (2.15-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 0 + (((tickAnim - 20) / 10) * (0-(0))); + yy = 2.15 + (((tickAnim - 20) / 10) * (2.15-(2.15))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 0 + (((tickAnim - 30) / 20) * (0-(0))); + yy = 2.15 + (((tickAnim - 30) / 20) * (0-(2.15))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg4.rotationPointX = this.backRightLeg4.rotationPointX + (float)(xx); + this.backRightLeg4.rotationPointY = this.backRightLeg4.rotationPointY - (float)(yy); + this.backRightLeg4.rotationPointZ = this.backRightLeg4.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (4.25-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 4.25 + (((tickAnim - 20) / 10) * (4.25-(4.25))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 4.25 + (((tickAnim - 30) / 20) * (0-(4.25))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(xx), tail2.rotateAngleY + (float) Math.toRadians(yy), tail2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (5.75-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 5.75 + (((tickAnim - 20) / 10) * (5.75-(5.75))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 5.75 + (((tickAnim - 30) / 20) * (0-(5.75))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(xx), tail3.rotateAngleY + (float) Math.toRadians(yy), tail3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-7.5-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -7.5 + (((tickAnim - 20) / 10) * (-7.5-(-7.5))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -7.5 + (((tickAnim - 30) / 20) * (0-(-7.5))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail5, tail5.rotateAngleX + (float) Math.toRadians(xx), tail5.rotateAngleY + (float) Math.toRadians(yy), tail5.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animAttack(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraColossosuchus entity = (EntityPrehistoricFloraColossosuchus) entitylivingbaseIn; + int animCycle = 12; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (1.75-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 8) { + xx = 1.75 + (((tickAnim - 3) / 5) * (-0.5-(1.75))); + yy = 0 + (((tickAnim - 3) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 5) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = -0.5 + (((tickAnim - 8) / 2) * (6.25-(-0.5))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = 6.25 + (((tickAnim - 10) / 3) * (0-(6.25))); + yy = 0 + (((tickAnim - 10) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (-7.75-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 8) { + xx = -7.75 + (((tickAnim - 3) / 5) * (-27.09589-(-7.75))); + yy = 0 + (((tickAnim - 3) / 5) * (-1.5989-(0))); + zz = 0 + (((tickAnim - 3) / 5) * (-5.46242-(0))); + } + else if (tickAnim >= 8 && tickAnim < 13) { + xx = -27.09589 + (((tickAnim - 8) / 5) * (0-(-27.09589))); + yy = -1.5989 + (((tickAnim - 8) / 5) * (0-(-1.5989))); + zz = -5.46242 + (((tickAnim - 8) / 5) * (0-(-5.46242))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (3.25-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 8) { + xx = 3.25 + (((tickAnim - 3) / 5) * (31-(3.25))); + yy = 0 + (((tickAnim - 3) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 5) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 31 + (((tickAnim - 8) / 2) * (0-(31))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animSwim(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraColossosuchus entity = (EntityPrehistoricFloraColossosuchus) entitylivingbaseIn; + int animCycle = 40; + double tickAnim = (entity.ticksExisted + entity.getTickOffset()) - (int) (Math.floor((double) (entity.ticksExisted + entity.getTickOffset()) / (double) animCycle) * (double) animCycle) + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(0), main.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*180-80))*1.5), main.rotateAngleZ + (float) Math.toRadians(0)); + this.main.rotationPointX = this.main.rotationPointX + (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*180-80))*-0.2); + this.main.rotationPointY = this.main.rotationPointY - (float)(0); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(0); + + + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(0), body.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*180-100))*0.5), body.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(0), body2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*180-100))*-0.5), body2.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(body3, body3.rotateAngleX + (float) Math.toRadians(0), body3.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*180-150))*-1), body3.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(frontLeftLeg, frontLeftLeg.rotateAngleX + (float) Math.toRadians(15.5), frontLeftLeg.rotateAngleY + (float) Math.toRadians(0), frontLeftLeg.rotateAngleZ + (float) Math.toRadians(0)); + this.frontLeftLeg.rotationPointX = this.frontLeftLeg.rotationPointX + (float)(-1.1); + this.frontLeftLeg.rotationPointY = this.frontLeftLeg.rotationPointY - (float)(0); + this.frontLeftLeg.rotationPointZ = this.frontLeftLeg.rotationPointZ + (float)(0); + + + this.setRotateAngle(frontLeftLeg2, frontLeftLeg2.rotateAngleX + (float) Math.toRadians(71.33723), frontLeftLeg2.rotateAngleY + (float) Math.toRadians(7.81915), frontLeftLeg2.rotateAngleZ + (float) Math.toRadians(-15.15123)); + this.frontLeftLeg2.rotationPointX = this.frontLeftLeg2.rotationPointX + (float)(0); + this.frontLeftLeg2.rotationPointY = this.frontLeftLeg2.rotationPointY - (float)(0); + this.frontLeftLeg2.rotationPointZ = this.frontLeftLeg2.rotationPointZ + (float)(0); + + + this.setRotateAngle(frontLeftLeg3, frontLeftLeg3.rotateAngleX + (float) Math.toRadians(138.65506), frontLeftLeg3.rotateAngleY + (float) Math.toRadians(-85.1097), frontLeftLeg3.rotateAngleZ + (float) Math.toRadians(-30.41243)); + this.frontLeftLeg3.rotationPointX = this.frontLeftLeg3.rotationPointX + (float)(-0.6); + this.frontLeftLeg3.rotationPointY = this.frontLeftLeg3.rotationPointY - (float)(0); + this.frontLeftLeg3.rotationPointZ = this.frontLeftLeg3.rotationPointZ + (float)(0); + + + this.setRotateAngle(frontRightLeg, frontRightLeg.rotateAngleX + (float) Math.toRadians(15.5), frontRightLeg.rotateAngleY + (float) Math.toRadians(0), frontRightLeg.rotateAngleZ + (float) Math.toRadians(0)); + this.frontRightLeg.rotationPointX = this.frontRightLeg.rotationPointX + (float)(1.1); + this.frontRightLeg.rotationPointY = this.frontRightLeg.rotationPointY - (float)(0); + this.frontRightLeg.rotationPointZ = this.frontRightLeg.rotationPointZ + (float)(0); + + + this.setRotateAngle(frontRightLeg2, frontRightLeg2.rotateAngleX + (float) Math.toRadians(71.33723), frontRightLeg2.rotateAngleY + (float) Math.toRadians(-7.81915), frontRightLeg2.rotateAngleZ + (float) Math.toRadians(15.15123)); + this.frontRightLeg2.rotationPointX = this.frontRightLeg2.rotationPointX + (float)(0); + this.frontRightLeg2.rotationPointY = this.frontRightLeg2.rotationPointY - (float)(0); + this.frontRightLeg2.rotationPointZ = this.frontRightLeg2.rotationPointZ + (float)(0); + + + this.setRotateAngle(frontRightLeg3, frontRightLeg3.rotateAngleX + (float) Math.toRadians(115.2762), frontRightLeg3.rotateAngleY + (float) Math.toRadians(86.64621), frontRightLeg3.rotateAngleZ + (float) Math.toRadians(6.97667)); + this.frontRightLeg3.rotationPointX = this.frontRightLeg3.rotationPointX + (float)(0.6); + this.frontRightLeg3.rotationPointY = this.frontRightLeg3.rotationPointY - (float)(0); + this.frontRightLeg3.rotationPointZ = this.frontRightLeg3.rotationPointZ + (float)(0); + + + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(0), neck.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*180-250))*1), neck.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(0), head.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*180-300))*1), head.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(80.6695+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*180))*-2), backLeftLeg.rotateAngleY + (float) Math.toRadians(13.12067), backLeftLeg.rotateAngleZ + (float) Math.toRadians(-29.82136)); + this.backLeftLeg.rotationPointX = this.backLeftLeg.rotationPointX + (float)(-1.125); + this.backLeftLeg.rotationPointY = this.backLeftLeg.rotationPointY - (float)(0); + this.backLeftLeg.rotationPointZ = this.backLeftLeg.rotationPointZ + (float)(0); + + + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(-15.35996), backLeftLeg2.rotateAngleY + (float) Math.toRadians(9.86686), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(-48.10514)); + + + this.setRotateAngle(backLeftLeg3, backLeftLeg3.rotateAngleX + (float) Math.toRadians(95.75+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*180-50))*-4), backLeftLeg3.rotateAngleY + (float) Math.toRadians(0), backLeftLeg3.rotateAngleZ + (float) Math.toRadians(0)); + this.backLeftLeg3.rotationPointX = this.backLeftLeg3.rotationPointX + (float)(0); + this.backLeftLeg3.rotationPointY = this.backLeftLeg3.rotationPointY - (float)(0); + this.backLeftLeg3.rotationPointZ = this.backLeftLeg3.rotationPointZ + (float)(-0.65); + + + this.setRotateAngle(backLeftLeg4, backLeftLeg4.rotateAngleX + (float) Math.toRadians(17.5+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*180-120))*-4), backLeftLeg4.rotateAngleY + (float) Math.toRadians(0), backLeftLeg4.rotateAngleZ + (float) Math.toRadians(0)); + this.backLeftLeg4.rotationPointX = this.backLeftLeg4.rotationPointX + (float)(0); + this.backLeftLeg4.rotationPointY = this.backLeftLeg4.rotationPointY - (float)(1.725); + this.backLeftLeg4.rotationPointZ = this.backLeftLeg4.rotationPointZ + (float)(0); + + + this.setRotateAngle(backRightLeg, backRightLeg.rotateAngleX + (float) Math.toRadians(78.4195+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*180))*2), backRightLeg.rotateAngleY + (float) Math.toRadians(-13.12067), backRightLeg.rotateAngleZ + (float) Math.toRadians(29.82136)); + this.backRightLeg.rotationPointX = this.backRightLeg.rotationPointX + (float)(1.125); + this.backRightLeg.rotationPointY = this.backRightLeg.rotationPointY - (float)(0); + this.backRightLeg.rotationPointZ = this.backRightLeg.rotationPointZ + (float)(0); + + + this.setRotateAngle(backRightLeg2, backRightLeg2.rotateAngleX + (float) Math.toRadians(-13.85996), backRightLeg2.rotateAngleY + (float) Math.toRadians(-9.86686), backRightLeg2.rotateAngleZ + (float) Math.toRadians(48.10514)); + + + this.setRotateAngle(backRightLeg3, backRightLeg3.rotateAngleX + (float) Math.toRadians(95.75+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*180-50))*4), backRightLeg3.rotateAngleY + (float) Math.toRadians(0), backRightLeg3.rotateAngleZ + (float) Math.toRadians(0)); + this.backRightLeg3.rotationPointX = this.backRightLeg3.rotationPointX + (float)(0); + this.backRightLeg3.rotationPointY = this.backRightLeg3.rotationPointY - (float)(0); + this.backRightLeg3.rotationPointZ = this.backRightLeg3.rotationPointZ + (float)(-0.65); + + + this.setRotateAngle(backRightLeg4, backRightLeg4.rotateAngleX + (float) Math.toRadians(17.5+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*180-120))*-4), backRightLeg4.rotateAngleY + (float) Math.toRadians(0), backRightLeg4.rotateAngleZ + (float) Math.toRadians(0)); + this.backRightLeg4.rotationPointX = this.backRightLeg4.rotationPointX + (float)(0); + this.backRightLeg4.rotationPointY = this.backRightLeg4.rotationPointY - (float)(1.725); + this.backRightLeg4.rotationPointZ = this.backRightLeg4.rotationPointZ + (float)(0); + + + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(7.5), tail.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*180-30))*3), tail.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(7.25), tail2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*180+20))*-5), tail2.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(3.5), tail3.rotateAngleY + (float) Math.toRadians(Math.sin((Math.PI/180)*((((double)tickAnim/20D))*180+50))*-8), tail3.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(-12.75), tail4.rotateAngleY + (float) Math.toRadians(Math.sin((Math.PI/180)*((((double)tickAnim/20D))*180+100))*11), tail4.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail5, tail5.rotateAngleX + (float) Math.toRadians(-4), tail5.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*180+150))*14), tail5.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail6, tail6.rotateAngleX + (float) Math.toRadians(-1.5), tail6.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*180+250))*-17), tail6.rotateAngleZ + (float) Math.toRadians(0)); + + + } + public void animWalking(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraColossosuchus entity = (EntityPrehistoricFloraColossosuchus) entitylivingbaseIn; + int animCycle = 60; + double tickAnim = (entity.ticksExisted + entity.getTickOffset()) - (int) (Math.floor((double) (entity.ticksExisted + entity.getTickOffset()) / (double) animCycle) * (double) animCycle) + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 22.31104 + (((tickAnim - 0) / 8) * (-25.10292-(22.31104))); + yy = -6.39982 + (((tickAnim - 0) / 8) * (-17.10699-(-6.39982))); + zz = 5.81032 + (((tickAnim - 0) / 8) * (-43.67026-(5.81032))); + } + else if (tickAnim >= 8 && tickAnim < 18) { + xx = -25.10292 + (((tickAnim - 8) / 10) * (-54.1014-(-25.10292))); + yy = -17.10699 + (((tickAnim - 8) / 10) * (-10.4132-(-17.10699))); + zz = -43.67026 + (((tickAnim - 8) / 10) * (-7.56205-(-43.67026))); + } + else if (tickAnim >= 18 && tickAnim < 60) { + xx = -54.1014 + (((tickAnim - 18) / 42) * (22.31104-(-54.1014))); + yy = -10.4132 + (((tickAnim - 18) / 42) * (-6.39982-(-10.4132))); + zz = -7.56205 + (((tickAnim - 18) / 42) * (5.81032-(-7.56205))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg, frontLeftLeg.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 13) { + xx = 25.85681 + (((tickAnim - 0) / 13) * (-17.13482-(25.85681))); + yy = 10.05329 + (((tickAnim - 0) / 13) * (-18.16902-(10.05329))); + zz = -11.55761 + (((tickAnim - 0) / 13) * (13.54266-(-11.55761))); + } + else if (tickAnim >= 13 && tickAnim < 18) { + xx = -17.13482 + (((tickAnim - 13) / 5) * (14.27278-(-17.13482))); + yy = -18.16902 + (((tickAnim - 13) / 5) * (-12.21307-(-18.16902))); + zz = 13.54266 + (((tickAnim - 13) / 5) * (-3.99534-(13.54266))); + } + else if (tickAnim >= 18 && tickAnim < 60) { + xx = 14.27278 + (((tickAnim - 18) / 42) * (25.85681-(14.27278))); + yy = -12.21307 + (((tickAnim - 18) / 42) * (10.05329-(-12.21307))); + zz = -3.99534 + (((tickAnim - 18) / 42) * (-11.55761-(-3.99534))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg2, frontLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0.62-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 13) { + xx = 0 + (((tickAnim - 3) / 10) * (0-(0))); + yy = 0.62 + (((tickAnim - 3) / 10) * (0.375-(0.62))); + zz = 0 + (((tickAnim - 3) / 10) * (1.1-(0))); + } + else if (tickAnim >= 13 && tickAnim < 18) { + xx = 0 + (((tickAnim - 13) / 5) * (0-(0))); + yy = 0.375 + (((tickAnim - 13) / 5) * (0-(0.375))); + zz = 1.1 + (((tickAnim - 13) / 5) * (0-(1.1))); + } + else if (tickAnim >= 18 && tickAnim < 38) { + xx = 0 + (((tickAnim - 18) / 20) * (0-(0))); + yy = 0 + (((tickAnim - 18) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 20) * (0-(0))); + } + else if (tickAnim >= 38 && tickAnim < 60) { + xx = 0 + (((tickAnim - 38) / 22) * (0-(0))); + yy = 0 + (((tickAnim - 38) / 22) * (0-(0))); + zz = 0 + (((tickAnim - 38) / 22) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg2.rotationPointX = this.frontLeftLeg2.rotationPointX + (float)(xx); + this.frontLeftLeg2.rotationPointY = this.frontLeftLeg2.rotationPointY - (float)(yy); + this.frontLeftLeg2.rotationPointZ = this.frontLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 56.75 + (((tickAnim - 0) / 3) * (112.78557-(56.75))); + yy = 0 + (((tickAnim - 0) / 3) * (-0.7792-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0.14579-(0))); + } + else if (tickAnim >= 3 && tickAnim < 13) { + xx = 112.78557 + (((tickAnim - 3) / 10) * (95.3209-(112.78557))); + yy = -0.7792 + (((tickAnim - 3) / 10) * (-2.92201-(-0.7792))); + zz = 0.14579 + (((tickAnim - 3) / 10) * (0.54672-(0.14579))); + } + else if (tickAnim >= 13 && tickAnim < 18) { + xx = 95.3209 + (((tickAnim - 13) / 5) * (38.20597-(95.3209))); + yy = -2.92201 + (((tickAnim - 13) / 5) * (-6.42842-(-2.92201))); + zz = 0.54672 + (((tickAnim - 13) / 5) * (1.20278-(0.54672))); + } + else if (tickAnim >= 18 && tickAnim < 38) { + xx = 38.20597 + (((tickAnim - 18) / 20) * (-1.75-(38.20597))); + yy = -6.42842 + (((tickAnim - 18) / 20) * (0-(-6.42842))); + zz = 1.20278 + (((tickAnim - 18) / 20) * (6-(1.20278))); + } + else if (tickAnim >= 38 && tickAnim < 49) { + xx = -1.75 + (((tickAnim - 38) / 11) * (-9.5-(-1.75))); + yy = 0 + (((tickAnim - 38) / 11) * (0-(0))); + zz = 6 + (((tickAnim - 38) / 11) * (3-(6))); + } + else if (tickAnim >= 49 && tickAnim < 60) { + xx = -9.5 + (((tickAnim - 49) / 11) * (56.75-(-9.5))); + yy = 0 + (((tickAnim - 49) / 11) * (0-(0))); + zz = 3 + (((tickAnim - 49) / 11) * (0-(3))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg3, frontLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 2.275 + (((tickAnim - 0) / 3) * (3.39-(2.275))); + zz = 0 + (((tickAnim - 0) / 3) * (-1.225-(0))); + } + else if (tickAnim >= 3 && tickAnim < 13) { + xx = 0 + (((tickAnim - 3) / 10) * (0-(0))); + yy = 3.39 + (((tickAnim - 3) / 10) * (2.87-(3.39))); + zz = -1.225 + (((tickAnim - 3) / 10) * (-0.955-(-1.225))); + } + else if (tickAnim >= 13 && tickAnim < 18) { + xx = 0 + (((tickAnim - 13) / 5) * (0-(0))); + yy = 2.87 + (((tickAnim - 13) / 5) * (0.675-(2.87))); + zz = -0.955 + (((tickAnim - 13) / 5) * (0.7-(-0.955))); + } + else if (tickAnim >= 18 && tickAnim < 28) { + xx = 0 + (((tickAnim - 18) / 10) * (0-(0))); + yy = 0.675 + (((tickAnim - 18) / 10) * (1.305-(0.675))); + zz = 0.7 + (((tickAnim - 18) / 10) * (0.54-(0.7))); + } + else if (tickAnim >= 28 && tickAnim < 38) { + xx = 0 + (((tickAnim - 28) / 10) * (0-(0))); + yy = 1.305 + (((tickAnim - 28) / 10) * (1.01-(1.305))); + zz = 0.54 + (((tickAnim - 28) / 10) * (0.36-(0.54))); + } + else if (tickAnim >= 38 && tickAnim < 49) { + xx = 0 + (((tickAnim - 38) / 11) * (0-(0))); + yy = 1.01 + (((tickAnim - 38) / 11) * (0.215-(1.01))); + zz = 0.36 + (((tickAnim - 38) / 11) * (0.18-(0.36))); + } + else if (tickAnim >= 49 && tickAnim < 60) { + xx = 0 + (((tickAnim - 49) / 11) * (0-(0))); + yy = 0.215 + (((tickAnim - 49) / 11) * (2.275-(0.215))); + zz = 0.18 + (((tickAnim - 49) / 11) * (0-(0.18))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg3.rotationPointX = this.frontLeftLeg3.rotationPointX + (float)(xx); + this.frontLeftLeg3.rotationPointY = this.frontLeftLeg3.rotationPointY - (float)(yy); + this.frontLeftLeg3.rotationPointZ = this.frontLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 27) { + xx = -25.49491 + (((tickAnim - 0) / 27) * (22.31104-(-25.49491))); + yy = 11.05362 + (((tickAnim - 0) / 27) * (6.39982-(11.05362))); + zz = 16.40372 + (((tickAnim - 0) / 27) * (-5.81032-(16.40372))); + } + else if (tickAnim >= 27 && tickAnim < 34) { + xx = 22.31104 + (((tickAnim - 27) / 7) * (-25.10292-(22.31104))); + yy = 6.39982 + (((tickAnim - 27) / 7) * (17.10699-(6.39982))); + zz = -5.81032 + (((tickAnim - 27) / 7) * (43.67026-(-5.81032))); + } + else if (tickAnim >= 34 && tickAnim < 43) { + xx = -25.10292 + (((tickAnim - 34) / 9) * (-54.1014-(-25.10292))); + yy = 17.10699 + (((tickAnim - 34) / 9) * (10.4132-(17.10699))); + zz = 43.67026 + (((tickAnim - 34) / 9) * (7.56205-(43.67026))); + } + else if (tickAnim >= 43 && tickAnim < 60) { + xx = -54.1014 + (((tickAnim - 43) / 17) * (-25.49491-(-54.1014))); + yy = 10.4132 + (((tickAnim - 43) / 17) * (11.05362-(10.4132))); + zz = 7.56205 + (((tickAnim - 43) / 17) * (16.40372-(7.56205))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg, frontRightLeg.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 27) { + xx = 21.09201 + (((tickAnim - 0) / 27) * (25.85681-(21.09201))); + yy = 0.60767 + (((tickAnim - 0) / 27) * (-10.05329-(0.60767))); + zz = -11.1525 + (((tickAnim - 0) / 27) * (11.55761-(-11.1525))); + } + else if (tickAnim >= 27 && tickAnim < 38) { + xx = 25.85681 + (((tickAnim - 27) / 11) * (-17.13482-(25.85681))); + yy = -10.05329 + (((tickAnim - 27) / 11) * (18.16902-(-10.05329))); + zz = 11.55761 + (((tickAnim - 27) / 11) * (-13.54266-(11.55761))); + } + else if (tickAnim >= 38 && tickAnim < 43) { + xx = -17.13482 + (((tickAnim - 38) / 5) * (14.27278-(-17.13482))); + yy = 18.16902 + (((tickAnim - 38) / 5) * (12.21307-(18.16902))); + zz = -13.54266 + (((tickAnim - 38) / 5) * (3.99534-(-13.54266))); + } + else if (tickAnim >= 43 && tickAnim < 60) { + xx = 14.27278 + (((tickAnim - 43) / 17) * (21.09201-(14.27278))); + yy = 12.21307 + (((tickAnim - 43) / 17) * (0.60767-(12.21307))); + zz = 3.99534 + (((tickAnim - 43) / 17) * (-11.1525-(3.99534))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg2, frontRightLeg2.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg2.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 27) { + xx = 0 + (((tickAnim - 0) / 27) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 27) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 27) * (0-(0))); + } + else if (tickAnim >= 27 && tickAnim < 30) { + xx = 0 + (((tickAnim - 27) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 27) / 3) * (0.62-(0))); + zz = 0 + (((tickAnim - 27) / 3) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 38) { + xx = 0 + (((tickAnim - 30) / 8) * (0-(0))); + yy = 0.62 + (((tickAnim - 30) / 8) * (0.375-(0.62))); + zz = 0 + (((tickAnim - 30) / 8) * (1.1-(0))); + } + else if (tickAnim >= 38 && tickAnim < 43) { + xx = 0 + (((tickAnim - 38) / 5) * (0-(0))); + yy = 0.375 + (((tickAnim - 38) / 5) * (0-(0.375))); + zz = 1.1 + (((tickAnim - 38) / 5) * (0-(1.1))); + } + else if (tickAnim >= 43 && tickAnim < 60) { + xx = 0 + (((tickAnim - 43) / 17) * (0-(0))); + yy = 0 + (((tickAnim - 43) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 43) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg2.rotationPointX = this.frontRightLeg2.rotationPointX + (float)(xx); + this.frontRightLeg2.rotationPointY = this.frontRightLeg2.rotationPointY - (float)(yy); + this.frontRightLeg2.rotationPointZ = this.frontRightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 27) { + xx = 6.48466 + (((tickAnim - 0) / 27) * (56.75-(6.48466))); + yy = 0.59784 + (((tickAnim - 0) / 27) * (0-(0.59784))); + zz = -2.93988 + (((tickAnim - 0) / 27) * (0-(-2.93988))); + } + else if (tickAnim >= 27 && tickAnim < 30) { + xx = 56.75 + (((tickAnim - 27) / 3) * (112.78557-(56.75))); + yy = 0 + (((tickAnim - 27) / 3) * (-0.7792-(0))); + zz = 0 + (((tickAnim - 27) / 3) * (0.14579-(0))); + } + else if (tickAnim >= 30 && tickAnim < 38) { + xx = 112.78557 + (((tickAnim - 30) / 8) * (95.3209-(112.78557))); + yy = -0.7792 + (((tickAnim - 30) / 8) * (-2.92201-(-0.7792))); + zz = 0.14579 + (((tickAnim - 30) / 8) * (0.54672-(0.14579))); + } + else if (tickAnim >= 38 && tickAnim < 43) { + xx = 95.3209 + (((tickAnim - 38) / 5) * (38.20597-(95.3209))); + yy = -2.92201 + (((tickAnim - 38) / 5) * (6.42842-(-2.92201))); + zz = 0.54672 + (((tickAnim - 38) / 5) * (-1.20278-(0.54672))); + } + else if (tickAnim >= 43 && tickAnim < 60) { + xx = 38.20597 + (((tickAnim - 43) / 17) * (6.48466-(38.20597))); + yy = 6.42842 + (((tickAnim - 43) / 17) * (0.59784-(6.42842))); + zz = -1.20278 + (((tickAnim - 43) / 17) * (-2.93988-(-1.20278))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg3, frontRightLeg3.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg3.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 27) { + xx = 0 + (((tickAnim - 0) / 27) * (0-(0))); + yy = 0.425 + (((tickAnim - 0) / 27) * (2.275-(0.425))); + zz = 0 + (((tickAnim - 0) / 27) * (0-(0))); + } + else if (tickAnim >= 27 && tickAnim < 30) { + xx = 0 + (((tickAnim - 27) / 3) * (0-(0))); + yy = 2.275 + (((tickAnim - 27) / 3) * (3.39-(2.275))); + zz = 0 + (((tickAnim - 27) / 3) * (-1.225-(0))); + } + else if (tickAnim >= 30 && tickAnim < 38) { + xx = 0 + (((tickAnim - 30) / 8) * (0-(0))); + yy = 3.39 + (((tickAnim - 30) / 8) * (2.87-(3.39))); + zz = -1.225 + (((tickAnim - 30) / 8) * (-0.955-(-1.225))); + } + else if (tickAnim >= 38 && tickAnim < 43) { + xx = 0 + (((tickAnim - 38) / 5) * (0-(0))); + yy = 2.87 + (((tickAnim - 38) / 5) * (0.675-(2.87))); + zz = -0.955 + (((tickAnim - 38) / 5) * (0.7-(-0.955))); + } + else if (tickAnim >= 43 && tickAnim < 52) { + xx = 0 + (((tickAnim - 43) / 9) * (0-(0))); + yy = 0.675 + (((tickAnim - 43) / 9) * (0.9-(0.675))); + zz = 0.7 + (((tickAnim - 43) / 9) * (0.35-(0.7))); + } + else if (tickAnim >= 52 && tickAnim < 60) { + xx = 0 + (((tickAnim - 52) / 8) * (0-(0))); + yy = 0.9 + (((tickAnim - 52) / 8) * (0.425-(0.9))); + zz = 0.35 + (((tickAnim - 52) / 8) * (0-(0.35))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg3.rotationPointX = this.frontRightLeg3.rotationPointX + (float)(xx); + this.frontRightLeg3.rotationPointY = this.frontRightLeg3.rotationPointY - (float)(yy); + this.frontRightLeg3.rotationPointZ = this.frontRightLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 19.68473 + (((tickAnim - 0) / 18) * (57.08588-(19.68473))); + yy = -1.31833 + (((tickAnim - 0) / 18) * (24.86192-(-1.31833))); + zz = -4.85077 + (((tickAnim - 0) / 18) * (-17.63084-(-4.85077))); + } + else if (tickAnim >= 18 && tickAnim < 23) { + xx = 57.08588 + (((tickAnim - 18) / 5) * (33.06573-(57.08588))); + yy = 24.86192 + (((tickAnim - 18) / 5) * (11.28025-(24.86192))); + zz = -17.63084 + (((tickAnim - 18) / 5) * (-6.92547-(-17.63084))); + } + else if (tickAnim >= 23 && tickAnim < 31) { + xx = 33.06573 + (((tickAnim - 23) / 8) * (-2.31419-(33.06573))); + yy = 11.28025 + (((tickAnim - 23) / 8) * (16.92551-(11.28025))); + zz = -6.92547 + (((tickAnim - 23) / 8) * (6.68645-(-6.92547))); + } + else if (tickAnim >= 31 && tickAnim < 35) { + xx = -2.31419 + (((tickAnim - 31) / 4) * (-14.92033-(-2.31419))); + yy = 16.92551 + (((tickAnim - 31) / 4) * (14.97949-(16.92551))); + zz = 6.68645 + (((tickAnim - 31) / 4) * (14.75325-(6.68645))); + } + else if (tickAnim >= 35 && tickAnim < 60) { + xx = -14.92033 + (((tickAnim - 35) / 25) * (19.68473-(-14.92033))); + yy = 14.97949 + (((tickAnim - 35) / 25) * (-1.31833-(14.97949))); + zz = 14.75325 + (((tickAnim - 35) / 25) * (-4.85077-(14.75325))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 4.25449 + (((tickAnim - 0) / 18) * (5.52353-(4.25449))); + yy = 9.71772 + (((tickAnim - 0) / 18) * (-14.20639-(9.71772))); + zz = -7.08804 + (((tickAnim - 0) / 18) * (-33.10734-(-7.08804))); + } + else if (tickAnim >= 18 && tickAnim < 20) { + xx = 5.52353 + (((tickAnim - 18) / 2) * (7.93712-(5.52353))); + yy = -14.20639 + (((tickAnim - 18) / 2) * (-8.63119-(-14.20639))); + zz = -33.10734 + (((tickAnim - 18) / 2) * (-36.30252-(-33.10734))); + } + else if (tickAnim >= 20 && tickAnim < 25) { + xx = 7.93712 + (((tickAnim - 20) / 5) * (-27.69249-(7.93712))); + yy = -8.63119 + (((tickAnim - 20) / 5) * (-0.26839-(-8.63119))); + zz = -36.30252 + (((tickAnim - 20) / 5) * (-41.09531-(-36.30252))); + } + else if (tickAnim >= 25 && tickAnim < 31) { + xx = -27.69249 + (((tickAnim - 25) / 6) * (-35.18956-(-27.69249))); + yy = -0.26839 + (((tickAnim - 25) / 6) * (-1.1643-(-0.26839))); + zz = -41.09531 + (((tickAnim - 25) / 6) * (-25.14227-(-41.09531))); + } + else if (tickAnim >= 31 && tickAnim < 35) { + xx = -35.18956 + (((tickAnim - 31) / 4) * (-11.21109-(-35.18956))); + yy = -1.1643 + (((tickAnim - 31) / 4) * (-12.58685-(-1.1643))); + zz = -25.14227 + (((tickAnim - 31) / 4) * (-25.151-(-25.14227))); + } + else if (tickAnim >= 35 && tickAnim < 60) { + xx = -11.21109 + (((tickAnim - 35) / 25) * (4.25449-(-11.21109))); + yy = -12.58685 + (((tickAnim - 35) / 25) * (9.71772-(-12.58685))); + zz = -25.151 + (((tickAnim - 35) / 25) * (-7.08804-(-25.151))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 25) { + xx = 0 + (((tickAnim - 18) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 18) / 7) * (4.275-(0))); + zz = 0 + (((tickAnim - 18) / 7) * (0-(0))); + } + else if (tickAnim >= 25 && tickAnim < 31) { + xx = 0 + (((tickAnim - 25) / 6) * (0-(0))); + yy = 4.275 + (((tickAnim - 25) / 6) * (1.825-(4.275))); + zz = 0 + (((tickAnim - 25) / 6) * (0-(0))); + } + else if (tickAnim >= 31 && tickAnim < 35) { + xx = 0 + (((tickAnim - 31) / 4) * (0-(0))); + yy = 1.825 + (((tickAnim - 31) / 4) * (0-(1.825))); + zz = 0 + (((tickAnim - 31) / 4) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 60) { + xx = 0 + (((tickAnim - 35) / 25) * (0-(0))); + yy = 0 + (((tickAnim - 35) / 25) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 25) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg2.rotationPointX = this.backLeftLeg2.rotationPointX + (float)(xx); + this.backLeftLeg2.rotationPointY = this.backLeftLeg2.rotationPointY - (float)(yy); + this.backLeftLeg2.rotationPointZ = this.backLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = -17.37658 + (((tickAnim - 0) / 5) * (-28.16804-(-17.37658))); + yy = 13.41594 + (((tickAnim - 0) / 5) * (11.27573-(13.41594))); + zz = 5.05895 + (((tickAnim - 0) / 5) * (6.88612-(5.05895))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = -28.16804 + (((tickAnim - 5) / 5) * (-8.90702-(-28.16804))); + yy = 11.27573 + (((tickAnim - 5) / 5) * (6.3426-(11.27573))); + zz = 6.88612 + (((tickAnim - 5) / 5) * (3.87344-(6.88612))); + } + else if (tickAnim >= 10 && tickAnim < 18) { + xx = -8.90702 + (((tickAnim - 10) / 8) * (61-(-8.90702))); + yy = 6.3426 + (((tickAnim - 10) / 8) * (0-(6.3426))); + zz = 3.87344 + (((tickAnim - 10) / 8) * (0-(3.87344))); + } + else if (tickAnim >= 18 && tickAnim < 20) { + xx = 61 + (((tickAnim - 18) / 2) * (93.15005-(61))); + yy = 0 + (((tickAnim - 18) / 2) * (-1.78172-(0))); + zz = 0 + (((tickAnim - 18) / 2) * (-1.2957-(0))); + } + else if (tickAnim >= 20 && tickAnim < 25) { + xx = 93.15005 + (((tickAnim - 20) / 5) * (90.12513-(93.15005))); + yy = -1.78172 + (((tickAnim - 20) / 5) * (-4.4543-(-1.78172))); + zz = -1.2957 + (((tickAnim - 20) / 5) * (-3.23925-(-1.2957))); + } + else if (tickAnim >= 25 && tickAnim < 31) { + xx = 90.12513 + (((tickAnim - 25) / 6) * (38.25027-(90.12513))); + yy = -4.4543 + (((tickAnim - 25) / 6) * (-8.90859-(-4.4543))); + zz = -3.23925 + (((tickAnim - 25) / 6) * (-6.47851-(-3.23925))); + } + else if (tickAnim >= 31 && tickAnim < 35) { + xx = 38.25027 + (((tickAnim - 31) / 4) * (19.75-(38.25027))); + yy = -8.90859 + (((tickAnim - 31) / 4) * (0-(-8.90859))); + zz = -6.47851 + (((tickAnim - 31) / 4) * (0-(-6.47851))); + } + else if (tickAnim >= 35 && tickAnim < 48) { + xx = 19.75 + (((tickAnim - 35) / 13) * (-3.05084-(19.75))); + yy = 0 + (((tickAnim - 35) / 13) * (7.15517-(0))); + zz = 0 + (((tickAnim - 35) / 13) * (2.69811-(0))); + } + else if (tickAnim >= 48 && tickAnim < 60) { + xx = -3.05084 + (((tickAnim - 48) / 12) * (-17.37658-(-3.05084))); + yy = 7.15517 + (((tickAnim - 48) / 12) * (13.41594-(7.15517))); + zz = 2.69811 + (((tickAnim - 48) / 12) * (5.05895-(2.69811))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg4, backLeftLeg4.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg4.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg4.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (-0.17-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = 0 + (((tickAnim - 5) / 5) * (0-(0))); + yy = -0.17 + (((tickAnim - 5) / 5) * (1.05-(-0.17))); + zz = 0 + (((tickAnim - 5) / 5) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 18) { + xx = 0 + (((tickAnim - 10) / 8) * (0-(0))); + yy = 1.05 + (((tickAnim - 10) / 8) * (1.025-(1.05))); + zz = 0 + (((tickAnim - 10) / 8) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 25) { + xx = 0 + (((tickAnim - 18) / 7) * (0.11-(0))); + yy = 1.025 + (((tickAnim - 18) / 7) * (4.585-(1.025))); + zz = 0 + (((tickAnim - 18) / 7) * (-0.5-(0))); + } + else if (tickAnim >= 25 && tickAnim < 31) { + xx = 0.11 + (((tickAnim - 25) / 6) * (0.225-(0.11))); + yy = 4.585 + (((tickAnim - 25) / 6) * (1.8-(4.585))); + zz = -0.5 + (((tickAnim - 25) / 6) * (0-(-0.5))); + } + else if (tickAnim >= 31 && tickAnim < 35) { + xx = 0.225 + (((tickAnim - 31) / 4) * (0-(0.225))); + yy = 1.8 + (((tickAnim - 31) / 4) * (0.425-(1.8))); + zz = 0 + (((tickAnim - 31) / 4) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 48) { + xx = 0 + (((tickAnim - 35) / 13) * (0-(0))); + yy = 0.425 + (((tickAnim - 35) / 13) * (0.875-(0.425))); + zz = 0 + (((tickAnim - 35) / 13) * (0-(0))); + } + else if (tickAnim >= 48 && tickAnim < 60) { + xx = 0 + (((tickAnim - 48) / 12) * (0-(0))); + yy = 0.875 + (((tickAnim - 48) / 12) * (0-(0.875))); + zz = 0 + (((tickAnim - 48) / 12) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg4.rotationPointX = this.backLeftLeg4.rotationPointX + (float)(xx); + this.backLeftLeg4.rotationPointY = this.backLeftLeg4.rotationPointY - (float)(yy); + this.backLeftLeg4.rotationPointZ = this.backLeftLeg4.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = -35.18956 + (((tickAnim - 0) / 5) * (-11.21109-(-35.18956))); + yy = 1.1643 + (((tickAnim - 0) / 5) * (12.58685-(1.1643))); + zz = 25.14227 + (((tickAnim - 0) / 5) * (25.151-(25.14227))); + } + else if (tickAnim >= 5 && tickAnim < 43) { + xx = -11.21109 + (((tickAnim - 5) / 38) * (5.52353-(-11.21109))); + yy = 12.58685 + (((tickAnim - 5) / 38) * (14.20639-(12.58685))); + zz = 25.151 + (((tickAnim - 5) / 38) * (33.10734-(25.151))); + } + else if (tickAnim >= 43 && tickAnim < 47) { + xx = 5.52353 + (((tickAnim - 43) / 4) * (7.93712-(5.52353))); + yy = 14.20639 + (((tickAnim - 43) / 4) * (8.63119-(14.20639))); + zz = 33.10734 + (((tickAnim - 43) / 4) * (36.30252-(33.10734))); + } + else if (tickAnim >= 47 && tickAnim < 52) { + xx = 7.93712 + (((tickAnim - 47) / 5) * (-27.69249-(7.93712))); + yy = 8.63119 + (((tickAnim - 47) / 5) * (0.26839-(8.63119))); + zz = 36.30252 + (((tickAnim - 47) / 5) * (41.09531-(36.30252))); + } + else if (tickAnim >= 52 && tickAnim < 60) { + xx = -27.69249 + (((tickAnim - 52) / 8) * (-35.18956-(-27.69249))); + yy = 0.26839 + (((tickAnim - 52) / 8) * (1.1643-(0.26839))); + zz = 41.09531 + (((tickAnim - 52) / 8) * (25.14227-(41.09531))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg2, backRightLeg2.rotateAngleX + (float) Math.toRadians(xx), backRightLeg2.rotateAngleY + (float) Math.toRadians(yy), backRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (0-(0))); + yy = 1.825 + (((tickAnim - 0) / 5) * (0-(1.825))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 43) { + xx = 0 + (((tickAnim - 5) / 38) * (0-(0))); + yy = 0 + (((tickAnim - 5) / 38) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 38) * (0-(0))); + } + else if (tickAnim >= 43 && tickAnim < 52) { + xx = 0 + (((tickAnim - 43) / 9) * (0-(0))); + yy = 0 + (((tickAnim - 43) / 9) * (4.275-(0))); + zz = 0 + (((tickAnim - 43) / 9) * (0-(0))); + } + else if (tickAnim >= 52 && tickAnim < 60) { + xx = 0 + (((tickAnim - 52) / 8) * (0-(0))); + yy = 4.275 + (((tickAnim - 52) / 8) * (1.825-(4.275))); + zz = 0 + (((tickAnim - 52) / 8) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg2.rotationPointX = this.backRightLeg2.rotationPointX + (float)(xx); + this.backRightLeg2.rotationPointY = this.backRightLeg2.rotationPointY - (float)(yy); + this.backRightLeg2.rotationPointZ = this.backRightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 38.25027 + (((tickAnim - 0) / 5) * (19.75-(38.25027))); + yy = -8.90859 + (((tickAnim - 0) / 5) * (0-(-8.90859))); + zz = -6.47851 + (((tickAnim - 0) / 5) * (0-(-6.47851))); + } + else if (tickAnim >= 5 && tickAnim < 20) { + xx = 19.75 + (((tickAnim - 5) / 15) * (-10.32538-(19.75))); + yy = 0 + (((tickAnim - 5) / 15) * (-14.11959-(0))); + zz = 0 + (((tickAnim - 5) / 15) * (-7.33806-(0))); + } + else if (tickAnim >= 20 && tickAnim < 32) { + xx = -10.32538 + (((tickAnim - 20) / 12) * (-9.36269-(-10.32538))); + yy = -14.11959 + (((tickAnim - 20) / 12) * (-7.31302-(-14.11959))); + zz = -7.33806 + (((tickAnim - 20) / 12) * (-20.04502-(-7.33806))); + } + else if (tickAnim >= 32 && tickAnim < 43) { + xx = -9.36269 + (((tickAnim - 32) / 11) * (61-(-9.36269))); + yy = -7.31302 + (((tickAnim - 32) / 11) * (0-(-7.31302))); + zz = -20.04502 + (((tickAnim - 32) / 11) * (0-(-20.04502))); + } + else if (tickAnim >= 43 && tickAnim < 47) { + xx = 61 + (((tickAnim - 43) / 4) * (93.15005-(61))); + yy = 0 + (((tickAnim - 43) / 4) * (-1.78172-(0))); + zz = 0 + (((tickAnim - 43) / 4) * (-1.2957-(0))); + } + else if (tickAnim >= 47 && tickAnim < 52) { + xx = 93.15005 + (((tickAnim - 47) / 5) * (90.12513-(93.15005))); + yy = -1.78172 + (((tickAnim - 47) / 5) * (-4.4543-(-1.78172))); + zz = -1.2957 + (((tickAnim - 47) / 5) * (-3.23925-(-1.2957))); + } + else if (tickAnim >= 52 && tickAnim < 57) { + xx = 90.12513 + (((tickAnim - 52) / 5) * (38.00021-(90.12513))); + yy = -4.4543 + (((tickAnim - 52) / 5) * (-7.12687-(-4.4543))); + zz = -3.23925 + (((tickAnim - 52) / 5) * (-5.18281-(-3.23925))); + } + else if (tickAnim >= 57 && tickAnim < 60) { + xx = 38.00021 + (((tickAnim - 57) / 3) * (38.25027-(38.00021))); + yy = -7.12687 + (((tickAnim - 57) / 3) * (-8.90859-(-7.12687))); + zz = -5.18281 + (((tickAnim - 57) / 3) * (-6.47851-(-5.18281))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg4, backRightLeg4.rotateAngleX + (float) Math.toRadians(xx), backRightLeg4.rotateAngleY + (float) Math.toRadians(yy), backRightLeg4.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0.225 + (((tickAnim - 0) / 5) * (0-(0.225))); + yy = 1.8 + (((tickAnim - 0) / 5) * (0.425-(1.8))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 13) { + xx = 0 + (((tickAnim - 5) / 8) * (0-(0))); + yy = 0.425 + (((tickAnim - 5) / 8) * (1.55-(0.425))); + zz = 0 + (((tickAnim - 5) / 8) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 20) { + xx = 0 + (((tickAnim - 13) / 7) * (0-(0))); + yy = 1.55 + (((tickAnim - 13) / 7) * (1.5-(1.55))); + zz = 0 + (((tickAnim - 13) / 7) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 32) { + xx = 0 + (((tickAnim - 20) / 12) * (0-(0))); + yy = 1.5 + (((tickAnim - 20) / 12) * (1.61-(1.5))); + zz = 0 + (((tickAnim - 20) / 12) * (0.475-(0))); + } + else if (tickAnim >= 32 && tickAnim < 38) { + xx = 0 + (((tickAnim - 32) / 6) * (0-(0))); + yy = 1.61 + (((tickAnim - 32) / 6) * (2.405-(1.61))); + zz = 0.475 + (((tickAnim - 32) / 6) * (0.2-(0.475))); + } + else if (tickAnim >= 38 && tickAnim < 43) { + xx = 0 + (((tickAnim - 38) / 5) * (0-(0))); + yy = 2.405 + (((tickAnim - 38) / 5) * (1.025-(2.405))); + zz = 0.2 + (((tickAnim - 38) / 5) * (0-(0.2))); + } + else if (tickAnim >= 43 && tickAnim < 52) { + xx = 0 + (((tickAnim - 43) / 9) * (0.11-(0))); + yy = 1.025 + (((tickAnim - 43) / 9) * (4.585-(1.025))); + zz = 0 + (((tickAnim - 43) / 9) * (-0.5-(0))); + } + else if (tickAnim >= 52 && tickAnim < 57) { + xx = 0.11 + (((tickAnim - 52) / 5) * (0.18-(0.11))); + yy = 4.585 + (((tickAnim - 52) / 5) * (2.22-(4.585))); + zz = -0.5 + (((tickAnim - 52) / 5) * (-0.36-(-0.5))); + } + else if (tickAnim >= 57 && tickAnim < 60) { + xx = 0.18 + (((tickAnim - 57) / 3) * (0.225-(0.18))); + yy = 2.22 + (((tickAnim - 57) / 3) * (1.8-(2.22))); + zz = -0.36 + (((tickAnim - 57) / 3) * (0-(-0.36))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg4.rotationPointX = this.backRightLeg4.rotationPointX + (float)(xx); + this.backRightLeg4.rotationPointY = this.backRightLeg4.rotationPointY - (float)(yy); + this.backRightLeg4.rotationPointZ = this.backRightLeg4.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120/0.5-20))*1.2), main.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120-90))*1.5), main.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120-80))*2)); + this.main.rotationPointX = this.main.rotationPointX + (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120-80))*0.25); + this.main.rotationPointY = this.main.rotationPointY - (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120/0.5-50))*0.3); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120/0.5))*-0.5); + + + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(0), body.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120))*0.5), body.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120-120))*1)); + + + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120/0.5+40))*-0.5), body2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120-80))*-1.5), body2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120-150))*-1)); + + + this.setRotateAngle(body3, body3.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120/0.5-20))*-1.2), body3.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120-120))*-2.5), body3.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120-100))*-2)); + + + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120/0.5-50))*1), neck.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120-120))*2), neck.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(neck2, neck2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120/0.5-100))*1), neck2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120-140))*2), neck2.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120/0.5-100))*-1), head.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120-130))*-3), head.rotateAngleZ + (float) Math.toRadians(0)); + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = -2.31419 + (((tickAnim - 0) / 5) * (-14.92033-(-2.31419))); + yy = -16.92551 + (((tickAnim - 0) / 5) * (-14.97949-(-16.92551))); + zz = -6.68645 + (((tickAnim - 0) / 5) * (-14.75325-(-6.68645))); + } + else if (tickAnim >= 5 && tickAnim < 43) { + xx = -14.92033 + (((tickAnim - 5) / 38) * (57.08588-(-14.92033))); + yy = -14.97949 + (((tickAnim - 5) / 38) * (-24.86192-(-14.97949))); + zz = -14.75325 + (((tickAnim - 5) / 38) * (17.63084-(-14.75325))); + } + else if (tickAnim >= 43 && tickAnim < 52) { + xx = 57.08588 + (((tickAnim - 43) / 9) * (33.06573-(57.08588))); + yy = -24.86192 + (((tickAnim - 43) / 9) * (-11.28025-(-24.86192))); + zz = 17.63084 + (((tickAnim - 43) / 9) * (6.92547-(17.63084))); + } + else if (tickAnim >= 52 && tickAnim < 60) { + xx = 33.06573 + (((tickAnim - 52) / 8) * (-2.31419-(33.06573))); + yy = -11.28025 + (((tickAnim - 52) / 8) * (-16.92551-(-11.28025))); + zz = 6.92547 + (((tickAnim - 52) / 8) * (-6.68645-(6.92547))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg, backRightLeg.rotateAngleX + (float) Math.toRadians(xx), backRightLeg.rotateAngleY + (float) Math.toRadians(yy), backRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120/0.5-30))*-1), tail.rotateAngleY + (float) Math.toRadians(Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120-90))*-1.5), tail.rotateAngleZ + (float) Math.toRadians(Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120-80))*-2)); + + + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(2.5), tail2.rotateAngleY + (float) Math.toRadians(Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120-130))*-1.5), tail2.rotateAngleZ + (float) Math.toRadians(Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120-120))*2)); + + + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(-4), tail3.rotateAngleY + (float) Math.toRadians(Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120-160))*-1), tail3.rotateAngleZ + (float) Math.toRadians(Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120-150))*2)); + + + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(-1), tail4.rotateAngleY + (float) Math.toRadians(Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120-190))*-1), tail4.rotateAngleZ + (float) Math.toRadians(Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120-200))*-3)); + + + this.setRotateAngle(tail5, tail5.rotateAngleX + (float) Math.toRadians(2), tail5.rotateAngleY + (float) Math.toRadians(Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120-230))*-5), tail5.rotateAngleZ + (float) Math.toRadians(Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120-250))*2)); + + + this.setRotateAngle(tail6, tail6.rotateAngleX + (float) Math.toRadians(1+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120/0.5-30))*-1), tail6.rotateAngleY + (float) Math.toRadians(Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120-280))*-5), tail6.rotateAngleZ + (float) Math.toRadians(Math.sin((Math.PI/180)*((((double)tickAnim/20D))*120-300))*2)); + + } + + + + + public void animate(IAnimatedEntity entity, float f, float f1, float f2, float f3, float f4, float f5) { + EntityPrehistoricFloraColossosuchus e = (EntityPrehistoricFloraColossosuchus) entity; + animator.update(entity); + + } +} diff --git a/src/main/java/net/lepidodendron/entity/model/entity/ModelDiandongosuchus.java b/src/main/java/net/lepidodendron/entity/model/entity/ModelDiandongosuchus.java new file mode 100644 index 0000000000..1f487f38b5 --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/model/entity/ModelDiandongosuchus.java @@ -0,0 +1,3654 @@ +package net.lepidodendron.entity.model.entity; + +import net.ilexiconn.llibrary.client.model.ModelAnimator; +import net.ilexiconn.llibrary.client.model.tools.AdvancedModelRenderer; +import net.ilexiconn.llibrary.server.animation.IAnimatedEntity; +import net.lepidodendron.entity.EntityPrehistoricFloraDiandongosuchus; +import net.lepidodendron.entity.model.ModelBasePalaeopedia; +import net.minecraft.client.model.ModelBox; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; + +public class ModelDiandongosuchus extends ModelBasePalaeopedia { + private final AdvancedModelRenderer root; + private final AdvancedModelRenderer leftleg; + private final AdvancedModelRenderer leftleg2; + private final AdvancedModelRenderer leftleg3; + private final AdvancedModelRenderer rightleg; + private final AdvancedModelRenderer rightleg2; + private final AdvancedModelRenderer rightleg3; + private final AdvancedModelRenderer body; + private final AdvancedModelRenderer body2; + private final AdvancedModelRenderer leftArm; + private final AdvancedModelRenderer leftArm2; + private final AdvancedModelRenderer cube_r1; + private final AdvancedModelRenderer leftArm3; + private final AdvancedModelRenderer rightArm; + private final AdvancedModelRenderer rightArm2; + private final AdvancedModelRenderer cube_r2; + private final AdvancedModelRenderer rightArm3; + private final AdvancedModelRenderer neck; + private final AdvancedModelRenderer neck2; + private final AdvancedModelRenderer neck3; + private final AdvancedModelRenderer head; + private final AdvancedModelRenderer cube_r3; + private final AdvancedModelRenderer cube_r4; + private final AdvancedModelRenderer cube_r5; + private final AdvancedModelRenderer cube_r6; + private final AdvancedModelRenderer jaw; + private final AdvancedModelRenderer cube_r7; + private final AdvancedModelRenderer cube_r8; + private final AdvancedModelRenderer eye; + private final AdvancedModelRenderer cube_r9; + private final AdvancedModelRenderer cube_r10; + private final AdvancedModelRenderer tail; + private final AdvancedModelRenderer tail2; + private final AdvancedModelRenderer tail3; + private final AdvancedModelRenderer tail4; + + private ModelAnimator animator; + + public ModelDiandongosuchus() { + this.textureWidth = 55; + this.textureHeight = 50; + + this.root = new AdvancedModelRenderer(this); + this.root.setRotationPoint(0.0F, 17.3F, 3.9F); + this.root.cubeList.add(new ModelBox(root, 15, 16, -2.5F, -0.75F, -2.0F, 5, 3, 5, -0.01F, false)); + this.root.cubeList.add(new ModelBox(root, 13, 24, -2.5F, 1.75F, -2.0F, 5, 1, 5, -0.03F, false)); + + this.leftleg = new AdvancedModelRenderer(this); + this.leftleg.setRotationPoint(1.825F, 1.075F, 0.9F); + this.root.addChild(leftleg); + this.setRotateAngle(leftleg, -0.1613F, 0.4515F, 0.8322F); + this.leftleg.cubeList.add(new ModelBox(leftleg, 12, 37, 0.0F, -1.0F, -1.0F, 4, 2, 2, 0.0F, false)); + + this.leftleg2 = new AdvancedModelRenderer(this); + this.leftleg2.setRotationPoint(3.5F, 0.0F, 0.0F); + this.leftleg.addChild(leftleg2); + this.setRotateAngle(leftleg2, 0.0F, -0.6109F, 0.5672F); + this.leftleg2.cubeList.add(new ModelBox(leftleg2, 39, 7, 0.0F, -1.0F, -1.0F, 3, 2, 2, -0.01F, false)); + + this.leftleg3 = new AdvancedModelRenderer(this); + this.leftleg3.setRotationPoint(2.375F, 0.0F, 0.075F); + this.leftleg2.addChild(leftleg3); + this.setRotateAngle(leftleg3, 0.0F, 0.1745F, 0.1745F); + this.leftleg3.cubeList.add(new ModelBox(leftleg3, 18, 30, 0.0F, -1.5F, -2.5F, 1, 3, 3, 0.0F, false)); + + this.rightleg = new AdvancedModelRenderer(this); + this.rightleg.setRotationPoint(-1.825F, 1.075F, 0.9F); + this.root.addChild(rightleg); + this.setRotateAngle(rightleg, -0.1613F, -0.4515F, -0.8322F); + this.rightleg.cubeList.add(new ModelBox(rightleg, 12, 37, -4.0F, -1.0F, -1.0F, 4, 2, 2, 0.0F, true)); + + this.rightleg2 = new AdvancedModelRenderer(this); + this.rightleg2.setRotationPoint(-3.5F, 0.0F, 0.0F); + this.rightleg.addChild(rightleg2); + this.setRotateAngle(rightleg2, 0.0F, 0.6109F, -0.5672F); + this.rightleg2.cubeList.add(new ModelBox(rightleg2, 39, 7, -3.0F, -1.0F, -1.0F, 3, 2, 2, -0.01F, true)); + + this.rightleg3 = new AdvancedModelRenderer(this); + this.rightleg3.setRotationPoint(-2.375F, 0.0F, 0.075F); + this.rightleg2.addChild(rightleg3); + this.setRotateAngle(rightleg3, 0.0F, -0.1745F, -0.1745F); + this.rightleg3.cubeList.add(new ModelBox(rightleg3, 18, 30, -1.0F, -1.5F, -2.5F, 1, 3, 3, 0.0F, true)); + + this.body = new AdvancedModelRenderer(this); + this.body.setRotationPoint(0.0F, -0.5F, -1.0F); + this.root.addChild(body); + this.body.cubeList.add(new ModelBox(body, 0, 0, -2.5F, -0.35F, -7.5F, 5, 4, 8, 0.0F, false)); + + this.body2 = new AdvancedModelRenderer(this); + this.body2.setRotationPoint(0.0F, 0.0286F, -7.4431F); + this.body.addChild(body2); + this.body2.cubeList.add(new ModelBox(body2, 0, 29, -2.5F, -0.2536F, -3.0569F, 5, 4, 3, 0.01F, false)); + + this.leftArm = new AdvancedModelRenderer(this); + this.leftArm.setRotationPoint(1.95F, 2.2214F, -1.4069F); + this.body2.addChild(leftArm); + this.setRotateAngle(leftArm, 0.7795F, -0.409F, 0.2948F); + this.leftArm.cubeList.add(new ModelBox(leftArm, 0, 36, -0.4223F, -1.0F, -1.3663F, 4, 2, 2, 0.0F, false)); + + this.leftArm2 = new AdvancedModelRenderer(this); + this.leftArm2.setRotationPoint(2.7777F, 0.0F, -0.3663F); + this.leftArm.addChild(leftArm2); + + + this.cube_r1 = new AdvancedModelRenderer(this); + this.cube_r1.setRotationPoint(0.5F, 0.775F, -0.875F); + this.leftArm2.addChild(cube_r1); + this.setRotateAngle(cube_r1, 0.0F, 0.6589F, 1.0603F); + this.cube_r1.cubeList.add(new ModelBox(cube_r1, 38, 0, -1.0F, -1.0F, -1.0F, 3, 2, 2, -0.01F, false)); + + this.leftArm3 = new AdvancedModelRenderer(this); + this.leftArm3.setRotationPoint(1.05F, 2.5F, -1.6F); + this.leftArm2.addChild(leftArm3); + this.setRotateAngle(leftArm3, 0.1225F, 0.8569F, 1.1659F); + this.leftArm3.cubeList.add(new ModelBox(leftArm3, 0, 0, -0.075F, -1.75F, -2.5F, 1, 3, 3, 0.0F, false)); + + this.rightArm = new AdvancedModelRenderer(this); + this.rightArm.setRotationPoint(-1.95F, 2.2214F, -1.4069F); + this.body2.addChild(rightArm); + this.setRotateAngle(rightArm, 0.7795F, 0.409F, -0.2948F); + this.rightArm.cubeList.add(new ModelBox(rightArm, 0, 36, -3.5777F, -1.0F, -1.3663F, 4, 2, 2, 0.0F, true)); + + this.rightArm2 = new AdvancedModelRenderer(this); + this.rightArm2.setRotationPoint(-2.7777F, 0.0F, -0.3663F); + this.rightArm.addChild(rightArm2); + + + this.cube_r2 = new AdvancedModelRenderer(this); + this.cube_r2.setRotationPoint(-0.5F, 0.775F, -0.875F); + this.rightArm2.addChild(cube_r2); + this.setRotateAngle(cube_r2, 0.0F, -0.6589F, -1.0603F); + this.cube_r2.cubeList.add(new ModelBox(cube_r2, 38, 0, -2.0F, -1.0F, -1.0F, 3, 2, 2, -0.01F, true)); + + this.rightArm3 = new AdvancedModelRenderer(this); + this.rightArm3.setRotationPoint(-1.05F, 2.5F, -1.6F); + this.rightArm2.addChild(rightArm3); + this.setRotateAngle(rightArm3, 0.1225F, -0.8569F, -1.1659F); + this.rightArm3.cubeList.add(new ModelBox(rightArm3, 0, 0, -0.925F, -1.75F, -2.5F, 1, 3, 3, 0.0F, true)); + + this.neck = new AdvancedModelRenderer(this); + this.neck.setRotationPoint(0.0F, -0.2036F, -2.0569F); + this.body2.addChild(neck); + this.neck.cubeList.add(new ModelBox(neck, 24, 33, -2.0F, 0.0F, -2.5F, 4, 3, 3, 0.01F, false)); + + this.neck2 = new AdvancedModelRenderer(this); + this.neck2.setRotationPoint(0.0F, 0.4837F, -1.4976F); + this.neck.addChild(neck2); + this.neck2.cubeList.add(new ModelBox(neck2, 35, 36, -2.0F, -0.4837F, -3.0024F, 4, 3, 3, 0.0F, false)); + + this.neck3 = new AdvancedModelRenderer(this); + this.neck3.setRotationPoint(0.0F, 0.5163F, -2.8275F); + this.neck2.addChild(neck3); + this.neck3.cubeList.add(new ModelBox(neck3, 37, 15, -2.0F, -0.975F, -2.15F, 4, 2, 2, -0.01F, false)); + + this.head = new AdvancedModelRenderer(this); + this.head.setRotationPoint(0.1093F, -0.9934F, -1.0118F); + this.neck3.addChild(head); + this.head.cubeList.add(new ModelBox(head, 21, 39, -1.1093F, 0.9934F, -4.0882F, 2, 1, 3, 0.0F, false)); + this.head.cubeList.add(new ModelBox(head, 0, 40, -0.6093F, 0.9934F, -6.3882F, 1, 1, 3, 0.01F, false)); + + this.cube_r3 = new AdvancedModelRenderer(this); + this.cube_r3.setRotationPoint(-0.1093F, 0.9934F, -6.4382F); + this.head.addChild(cube_r3); + this.setRotateAngle(cube_r3, 0.1309F, 0.0F, 0.0F); + this.cube_r3.cubeList.add(new ModelBox(cube_r3, 37, 19, -0.5F, 0.0021F, -0.1477F, 1, 1, 4, 0.0F, false)); + + this.cube_r4 = new AdvancedModelRenderer(this); + this.cube_r4.setRotationPoint(-2.1093F, 1.4934F, -1.0882F); + this.head.addChild(cube_r4); + this.setRotateAngle(cube_r4, 0.0F, -0.2531F, 0.0F); + this.cube_r4.cubeList.add(new ModelBox(cube_r4, 14, 10, 0.14F, -0.3F, -5.175F, 0, 1, 5, 0.0F, true)); + this.cube_r4.cubeList.add(new ModelBox(cube_r4, 31, 8, 0.125F, -0.5F, -5.575F, 1, 1, 6, -0.001F, true)); + + this.cube_r5 = new AdvancedModelRenderer(this); + this.cube_r5.setRotationPoint(1.8907F, 1.4934F, -1.0882F); + this.head.addChild(cube_r5); + this.setRotateAngle(cube_r5, 0.0F, 0.2531F, 0.0F); + this.cube_r5.cubeList.add(new ModelBox(cube_r5, 14, 10, -0.14F, -0.3F, -5.175F, 0, 1, 5, 0.0F, false)); + this.cube_r5.cubeList.add(new ModelBox(cube_r5, 31, 8, -1.125F, -0.5F, -5.575F, 1, 1, 6, -0.001F, false)); + + this.cube_r6 = new AdvancedModelRenderer(this); + this.cube_r6.setRotationPoint(-0.1093F, 0.4934F, -2.5882F); + this.head.addChild(cube_r6); + this.setRotateAngle(cube_r6, 0.2618F, 0.0F, 0.0F); + this.cube_r6.cubeList.add(new ModelBox(cube_r6, 18, 5, -1.0F, -0.1F, -0.475F, 2, 1, 2, -0.001F, false)); + + this.jaw = new AdvancedModelRenderer(this); + this.jaw.setRotationPoint(0.0437F, 2.0073F, 1.0563F); + this.head.addChild(jaw); + this.jaw.cubeList.add(new ModelBox(jaw, 35, 33, -2.153F, -0.0139F, -1.9695F, 4, 1, 2, -0.012F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 39, 25, -1.153F, -0.0139F, -4.9195F, 2, 1, 3, 0.0F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 18, 0, -1.653F, -1.2639F, -2.2945F, 3, 2, 3, -0.01F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 28, 40, -0.653F, -0.0139F, -7.1945F, 1, 1, 3, 0.01F, false)); + + this.cube_r7 = new AdvancedModelRenderer(this); + this.cube_r7.setRotationPoint(-2.153F, -0.5139F, -1.9195F); + this.jaw.addChild(cube_r7); + this.setRotateAngle(cube_r7, 0.0F, -0.2531F, 0.0F); + this.cube_r7.cubeList.add(new ModelBox(cube_r7, 10, 30, 0.125F, 0.5F, -5.575F, 1, 1, 6, -0.001F, true)); + this.cube_r7.cubeList.add(new ModelBox(cube_r7, 14, 9, 0.225F, 0.225F, -5.25F, 0, 1, 5, 0.0F, true)); + + this.cube_r8 = new AdvancedModelRenderer(this); + this.cube_r8.setRotationPoint(1.847F, -0.5139F, -1.9195F); + this.jaw.addChild(cube_r8); + this.setRotateAngle(cube_r8, 0.0F, 0.2531F, 0.0F); + this.cube_r8.cubeList.add(new ModelBox(cube_r8, 10, 30, -1.125F, 0.5F, -5.575F, 1, 1, 6, -0.001F, false)); + this.cube_r8.cubeList.add(new ModelBox(cube_r8, 14, 9, -0.225F, 0.225F, -5.25F, 0, 1, 5, 0.0F, false)); + + this.eye = new AdvancedModelRenderer(this); + this.eye.setRotationPoint(0.0F, 0.5F, -1.0F); + this.head.addChild(eye); + + + this.cube_r9 = new AdvancedModelRenderer(this); + this.cube_r9.setRotationPoint(1.0907F, 0.2407F, -0.5091F); + this.eye.addChild(cube_r9); + this.setRotateAngle(cube_r9, 0.2284F, 0.298F, 0.0681F); + this.cube_r9.cubeList.add(new ModelBox(cube_r9, 0, 6, -0.5F, -0.5F, -0.325F, 1, 1, 1, -0.001F, false)); + + this.cube_r10 = new AdvancedModelRenderer(this); + this.cube_r10.setRotationPoint(-1.3093F, 0.2407F, -0.5091F); + this.eye.addChild(cube_r10); + this.setRotateAngle(cube_r10, 0.2284F, -0.298F, -0.0681F); + this.cube_r10.cubeList.add(new ModelBox(cube_r10, 0, 6, -0.5F, -0.5F, -0.325F, 1, 1, 1, -0.001F, true)); + + this.tail = new AdvancedModelRenderer(this); + this.tail.setRotationPoint(0.0F, -0.75F, 2.0F); + this.root.addChild(tail); + this.setRotateAngle(tail, -0.2487F, 0.0F, 0.0F); + this.tail.cubeList.add(new ModelBox(tail, 0, 12, -2.0F, 0.0F, 0.0F, 4, 3, 6, -0.02F, false)); + + this.tail2 = new AdvancedModelRenderer(this); + this.tail2.setRotationPoint(0.0F, 0.025F, 6.0F); + this.tail.addChild(tail2); + this.setRotateAngle(tail2, -0.2487F, 0.0F, 0.0F); + this.tail2.cubeList.add(new ModelBox(tail2, 28, 25, -1.5F, 0.0F, 0.0F, 3, 3, 5, -0.001F, false)); + + this.tail3 = new AdvancedModelRenderer(this); + this.tail3.setRotationPoint(0.0F, 0.3F, 4.0F); + this.tail2.addChild(tail3); + this.setRotateAngle(tail3, 0.1876F, 0.0F, 0.0F); + this.tail3.cubeList.add(new ModelBox(tail3, 19, 5, -1.0F, 0.0F, 0.0F, 2, 2, 7, -0.01F, false)); + this.tail3.cubeList.add(new ModelBox(tail3, 0, 21, -1.0F, 1.45F, 0.0F, 2, 1, 7, -0.02F, false)); + + this.tail4 = new AdvancedModelRenderer(this); + this.tail4.setRotationPoint(0.0F, 0.35F, 6.6F); + this.tail3.addChild(tail4); + this.setRotateAngle(tail4, 0.288F, 0.0F, 0.0F); + this.tail4.cubeList.add(new ModelBox(tail4, 30, 0, -0.5F, 0.6F, 0.0F, 1, 1, 6, -0.02F, false)); + this.tail4.cubeList.add(new ModelBox(tail4, 29, 18, -0.5F, 0.0F, 0.0F, 1, 1, 6, -0.01F, false)); + + + updateDefaultPose(); + animator = ModelAnimator.create(); + } + + @Override + public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { + animate((IAnimatedEntity) entity, f, f1, f2, f3, f4, f5); + this.root.render(f5); + } + + public void renderStaticWall(float f) { + resetToDefaultPose(); + } + public void renderStaticFloor(float f) { + this.root.offsetY = -0.11F; + this.root.render(0.01F); + resetToDefaultPose(); + } + public void renderStaticSuspended(float f) { + this.root.offsetY = -0.11F; + this.root.render(0.01F); + resetToDefaultPose(); + } + + @Override + public void renderStaticBook(float f) { + //Rotations, positions and sizing: + this.root.offsetY = -0.20F; + this.root.offsetX = 0.075F; + this.root.offsetZ = 2.0F; + this.root.rotateAngleY = (float)Math.toRadians(212); + this.root.rotateAngleX = (float)Math.toRadians(22); + this.root.rotateAngleZ = (float)Math.toRadians(-12); + this.root.scaleChildren = true; + float scaler = 0.4F; + this.root.setScale(scaler, scaler, scaler); + //Start of pose: + + //End of pose, now render the model: + this.root.render(f); + //Reset rotations, positions and sizing: + this.root.setScale(1.0F, 1.0F, 1.0F); + this.root.scaleChildren = false; + resetToDefaultPose(); + } + + public void setRotateAngle(AdvancedModelRenderer AdvancedModelRenderer, float x, float y, float z) { + AdvancedModelRenderer.rotateAngleX = x; + AdvancedModelRenderer.rotateAngleY = y; + AdvancedModelRenderer.rotateAngleZ = z; + } + + @Override + public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity e) { + super.setRotationAngles(f, f1, f2, f3, f4, f5, e); + //this.resetToDefaultPose(); + this.root.offsetY = 0.0F; + + EntityPrehistoricFloraDiandongosuchus proteros = (EntityPrehistoricFloraDiandongosuchus) e; + + this.faceTarget(f3, f4, 10, neck); + this.faceTarget(f3, f4, 10, neck2); + this.faceTarget(f3, f4, 10, head); + + AdvancedModelRenderer[] Tail = {this.tail, this.tail2, this.tail3, this.tail4}; + AdvancedModelRenderer[] Neck = {this.neck, this.neck2, this.head}; + //AdvancedModelRenderer[] ArmL = {this.leftarm, this.leftarm2, this.leftarm3}; + //AdvancedModelRenderer[] ArmR = {this.rightarm, this.rightarm2, this.rightarm3}; + + proteros.tailBuffer.applyChainSwingBuffer(Tail); + + if (proteros.getAnimation() == proteros.LAY_ANIMATION) { + this.chainSwing(Neck, 0.5F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.5F * 2, -0.02F, 0.5F, f2, 0.8F); + } + else { + if (!proteros.isReallyInWater()) { + + if (f3 == 0.0F || !proteros.getIsMoving()) { + if (proteros.getAnimation() != proteros.EAT_ANIMATION) { + this.chainSwing(Neck, 0.05F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.05F * 2, -0.02F, 0.5F, f2, 0.8F); + } + + this.chainWave(Tail, (0.15F * 0.35F), 0.125F * 0.15F, 0.2F, f2, 1F); + this.chainSwing(Tail, (0.15F * 0.35F) * 4F, 0.05F * 0.35F, 0.12F, f2, 1F); + + + return; + } + + } + } + } + + + @Override + public void setLivingAnimations(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + super.setLivingAnimations(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + this.resetToDefaultPose(); + EntityPrehistoricFloraDiandongosuchus ee = (EntityPrehistoricFloraDiandongosuchus) entitylivingbaseIn; + + if (!ee.isReallyInWater()) { + if (ee.getIsMoving()) { + animWalking(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + } + } + else { + //Swimming pose: + if (ee.getIsFast()) { //Running + animSwimFast(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + } else { + animSwim(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + } + + } + if (ee.getAnimation() == ee.ATTACK_ANIMATION) { + animAttack(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.LAY_ANIMATION) { + animLay(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.MAKE_NEST_ANIMATION) { + animNest(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.ROAR_ANIMATION) { //The noise anim + animNoise(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.STAND_ANIMATION) { //The noise anim + animIdle(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.EAT_ANIMATION) { + animEat(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + + + } + public void animNest(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraDiandongosuchus entity = (EntityPrehistoricFloraDiandongosuchus) entitylivingbaseIn; + int animCycle = 50; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (1.60606-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (5.09872-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (-16.53023-(0))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = 1.60606 + (((tickAnim - 8) / 7) * (-1.91992-(1.60606))); + yy = 5.09872 + (((tickAnim - 8) / 7) * (52.82072-(5.09872))); + zz = -16.53023 + (((tickAnim - 8) / 7) * (13.09272-(-16.53023))); + } + else if (tickAnim >= 15 && tickAnim < 25) { + xx = -1.91992 + (((tickAnim - 15) / 10) * (33.27252-(-1.91992))); + yy = 52.82072 + (((tickAnim - 15) / 10) * (-25.30131-(52.82072))); + zz = 13.09272 + (((tickAnim - 15) / 10) * (-17.92134-(13.09272))); + } + else if (tickAnim >= 25 && tickAnim < 34) { + xx = 33.27252 + (((tickAnim - 25) / 9) * (1.60606-(33.27252))); + yy = -25.30131 + (((tickAnim - 25) / 9) * (5.09872-(-25.30131))); + zz = -17.92134 + (((tickAnim - 25) / 9) * (-16.53023-(-17.92134))); + } + else if (tickAnim >= 34 && tickAnim < 41) { + xx = 1.60606 + (((tickAnim - 34) / 7) * (-1.91992-(1.60606))); + yy = 5.09872 + (((tickAnim - 34) / 7) * (52.82072-(5.09872))); + zz = -16.53023 + (((tickAnim - 34) / 7) * (13.09272-(-16.53023))); + } + else if (tickAnim >= 41 && tickAnim < 50) { + xx = -1.91992 + (((tickAnim - 41) / 9) * (0-(-1.91992))); + yy = 52.82072 + (((tickAnim - 41) / 9) * (0-(52.82072))); + zz = 13.09272 + (((tickAnim - 41) / 9) * (0-(13.09272))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm, leftArm.rotateAngleX + (float) Math.toRadians(xx), leftArm.rotateAngleY + (float) Math.toRadians(yy), leftArm.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (-73.85161-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (24.2645-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (16.85472-(0))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = -73.85161 + (((tickAnim - 8) / 7) * (-40.20114-(-73.85161))); + yy = 24.2645 + (((tickAnim - 8) / 7) * (-29.72631-(24.2645))); + zz = 16.85472 + (((tickAnim - 8) / 7) * (25.04312-(16.85472))); + } + else if (tickAnim >= 15 && tickAnim < 25) { + xx = -40.20114 + (((tickAnim - 15) / 10) * (13.5-(-40.20114))); + yy = -29.72631 + (((tickAnim - 15) / 10) * (0-(-29.72631))); + zz = 25.04312 + (((tickAnim - 15) / 10) * (0-(25.04312))); + } + else if (tickAnim >= 25 && tickAnim < 34) { + xx = 13.5 + (((tickAnim - 25) / 9) * (-73.85161-(13.5))); + yy = 0 + (((tickAnim - 25) / 9) * (24.2645-(0))); + zz = 0 + (((tickAnim - 25) / 9) * (16.85472-(0))); + } + else if (tickAnim >= 34 && tickAnim < 41) { + xx = -73.85161 + (((tickAnim - 34) / 7) * (-40.20114-(-73.85161))); + yy = 24.2645 + (((tickAnim - 34) / 7) * (-29.72631-(24.2645))); + zz = 16.85472 + (((tickAnim - 34) / 7) * (25.04312-(16.85472))); + } + else if (tickAnim >= 41 && tickAnim < 50) { + xx = -40.20114 + (((tickAnim - 41) / 9) * (0-(-40.20114))); + yy = -29.72631 + (((tickAnim - 41) / 9) * (0-(-29.72631))); + zz = 25.04312 + (((tickAnim - 41) / 9) * (0-(25.04312))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm2, leftArm2.rotateAngleX + (float) Math.toRadians(xx), leftArm2.rotateAngleY + (float) Math.toRadians(yy), leftArm2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (-126.56-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = 0 + (((tickAnim - 8) / 7) * (0-(0))); + yy = -126.56 + (((tickAnim - 8) / 7) * (-37-(-126.56))); + zz = 0 + (((tickAnim - 8) / 7) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 25) { + xx = 0 + (((tickAnim - 15) / 10) * (0-(0))); + yy = -37 + (((tickAnim - 15) / 10) * (-62.5-(-37))); + zz = 0 + (((tickAnim - 15) / 10) * (0-(0))); + } + else if (tickAnim >= 25 && tickAnim < 34) { + xx = 0 + (((tickAnim - 25) / 9) * (0-(0))); + yy = -62.5 + (((tickAnim - 25) / 9) * (-126.56-(-62.5))); + zz = 0 + (((tickAnim - 25) / 9) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 41) { + xx = 0 + (((tickAnim - 34) / 7) * (0-(0))); + yy = -126.56 + (((tickAnim - 34) / 7) * (-37-(-126.56))); + zz = 0 + (((tickAnim - 34) / 7) * (0-(0))); + } + else if (tickAnim >= 41 && tickAnim < 50) { + xx = 0 + (((tickAnim - 41) / 9) * (0-(0))); + yy = -37 + (((tickAnim - 41) / 9) * (0-(-37))); + zz = 0 + (((tickAnim - 41) / 9) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm3, leftArm3.rotateAngleX + (float) Math.toRadians(xx), leftArm3.rotateAngleY + (float) Math.toRadians(yy), leftArm3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (-0.65-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (-0.6-(0))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = -0.65 + (((tickAnim - 8) / 7) * (0-(-0.65))); + yy = 0 + (((tickAnim - 8) / 7) * (0-(0))); + zz = -0.6 + (((tickAnim - 8) / 7) * (0-(-0.6))); + } + else if (tickAnim >= 15 && tickAnim < 25) { + xx = 0 + (((tickAnim - 15) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 15) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 15) / 10) * (0-(0))); + } + else if (tickAnim >= 25 && tickAnim < 30) { + xx = 0 + (((tickAnim - 25) / 5) * (-0.695-(0))); + yy = 0 + (((tickAnim - 25) / 5) * (1.33-(0))); + zz = 0 + (((tickAnim - 25) / 5) * (-0.26-(0))); + } + else if (tickAnim >= 30 && tickAnim < 34) { + xx = -0.695 + (((tickAnim - 30) / 4) * (-0.4-(-0.695))); + yy = 1.33 + (((tickAnim - 30) / 4) * (1.15-(1.33))); + zz = -0.26 + (((tickAnim - 30) / 4) * (-0.475-(-0.26))); + } + else if (tickAnim >= 34 && tickAnim < 41) { + xx = -0.4 + (((tickAnim - 34) / 7) * (0-(-0.4))); + yy = 1.15 + (((tickAnim - 34) / 7) * (0-(1.15))); + zz = -0.475 + (((tickAnim - 34) / 7) * (0-(-0.475))); + } + else if (tickAnim >= 41 && tickAnim < 50) { + xx = 0 + (((tickAnim - 41) / 9) * (0-(0))); + yy = 0 + (((tickAnim - 41) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 41) / 9) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftArm3.rotationPointX = this.leftArm3.rotationPointX + (float)(xx); + this.leftArm3.rotationPointY = this.leftArm3.rotationPointY - (float)(yy); + this.leftArm3.rotationPointZ = this.leftArm3.rotationPointZ + (float)(zz); + + } + public void animNoise(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraDiandongosuchus entity = (EntityPrehistoricFloraDiandongosuchus) entitylivingbaseIn; + int animCycle = 30; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 15) { + xx = 0 + (((tickAnim - 0) / 15) * (-3.75-(0))); + yy = 0 + (((tickAnim - 0) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 30) { + xx = -3.75 + (((tickAnim - 15) / 15) * (0-(-3.75))); + yy = 0 + (((tickAnim - 15) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 15) / 15) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 16) { + xx = 0 + (((tickAnim - 0) / 16) * (-5-(0))); + yy = 0 + (((tickAnim - 0) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 16) * (0-(0))); + } + else if (tickAnim >= 16 && tickAnim < 30) { + xx = -5 + (((tickAnim - 16) / 14) * (0-(-5))); + yy = 0 + (((tickAnim - 16) / 14) * (0-(0))); + zz = 0 + (((tickAnim - 16) / 14) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck2, neck2.rotateAngleX + (float) Math.toRadians(xx), neck2.rotateAngleY + (float) Math.toRadians(yy), neck2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 16) { + xx = 0 + (((tickAnim - 0) / 16) * (3.5-(0))); + yy = 0 + (((tickAnim - 0) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 16) * (0-(0))); + } + else if (tickAnim >= 16 && tickAnim < 30) { + xx = 3.5 + (((tickAnim - 16) / 14) * (0-(3.5))); + yy = 0 + (((tickAnim - 16) / 14) * (0-(0))); + zz = 0 + (((tickAnim - 16) / 14) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck3, neck3.rotateAngleX + (float) Math.toRadians(xx), neck3.rotateAngleY + (float) Math.toRadians(yy), neck3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(0), head.rotateAngleY + (float) Math.toRadians(0), head.rotateAngleZ + (float) Math.toRadians(0)); + + + + if (tickAnim >= 0 && tickAnim < 16) { + xx = 0 + (((tickAnim - 0) / 16) * (26.75-(0))); + yy = 0 + (((tickAnim - 0) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 16) * (0-(0))); + } + else if (tickAnim >= 16 && tickAnim < 24) { + xx = 26.75 + (((tickAnim - 16) / 8) * (0-(26.75))); + yy = 0 + (((tickAnim - 16) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 16) / 8) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animIdle(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraDiandongosuchus entity = (EntityPrehistoricFloraDiandongosuchus) entitylivingbaseIn; + int animCycle = 400; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (-11.75-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 63) { + xx = -11.75 + (((tickAnim - 35) / 28) * (-1.25-(-11.75))); + yy = 0 + (((tickAnim - 35) / 28) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 28) * (0-(0))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = -1.25 + (((tickAnim - 63) / 277) * (-1.25-(-1.25))); + yy = 0 + (((tickAnim - 63) / 277) * (0-(0))); + zz = 0 + (((tickAnim - 63) / 277) * (0-(0))); + } + else if (tickAnim >= 340 && tickAnim < 370) { + xx = -1.25 + (((tickAnim - 340) / 30) * (-11.75-(-1.25))); + yy = 0 + (((tickAnim - 340) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 340) / 30) * (0-(0))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = -11.75 + (((tickAnim - 370) / 30) * (0-(-11.75))); + yy = 0 + (((tickAnim - 370) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 370) / 30) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(root, root.rotateAngleX + (float) Math.toRadians(xx), root.rotateAngleY + (float) Math.toRadians(yy), root.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (-2.05-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0.7-(0))); + } + else if (tickAnim >= 35 && tickAnim < 63) { + xx = 0 + (((tickAnim - 35) / 28) * (0-(0))); + yy = -2.05 + (((tickAnim - 35) / 28) * (-3.7-(-2.05))); + zz = 0.7 + (((tickAnim - 35) / 28) * (0.7-(0.7))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = 0 + (((tickAnim - 63) / 277) * (0-(0))); + yy = -3.7 + (((tickAnim - 63) / 277) * (-3.7-(-3.7))); + zz = 0.7 + (((tickAnim - 63) / 277) * (0.7-(0.7))); + } + else if (tickAnim >= 340 && tickAnim < 370) { + xx = 0 + (((tickAnim - 340) / 30) * (0-(0))); + yy = -3.7 + (((tickAnim - 340) / 30) * (-2.05-(-3.7))); + zz = 0.7 + (((tickAnim - 340) / 30) * (0.7-(0.7))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = 0 + (((tickAnim - 370) / 30) * (0-(0))); + yy = -2.05 + (((tickAnim - 370) / 30) * (0-(-2.05))); + zz = 0.7 + (((tickAnim - 370) / 30) * (0-(0.7))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.root.rotationPointX = this.root.rotationPointX + (float)(xx); + this.root.rotationPointY = this.root.rotationPointY - (float)(yy); + this.root.rotationPointZ = this.root.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (15.75-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 63) { + xx = 0 + (((tickAnim - 35) / 28) * (-64.69049-(0))); + yy = 15.75 + (((tickAnim - 35) / 28) * (33.1803-(15.75))); + zz = 0 + (((tickAnim - 35) / 28) * (-58.90019-(0))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = -64.69049 + (((tickAnim - 63) / 277) * (-64.69049-(-64.69049))); + yy = 33.1803 + (((tickAnim - 63) / 277) * (33.1803-(33.1803))); + zz = -58.90019 + (((tickAnim - 63) / 277) * (-58.90019-(-58.90019))); + } + else if (tickAnim >= 340 && tickAnim < 370) { + xx = -64.69049 + (((tickAnim - 340) / 30) * (0-(-64.69049))); + yy = 33.1803 + (((tickAnim - 340) / 30) * (15.75-(33.1803))); + zz = -58.90019 + (((tickAnim - 340) / 30) * (0-(-58.90019))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = 0 + (((tickAnim - 370) / 30) * (0-(0))); + yy = 15.75 + (((tickAnim - 370) / 30) * (0-(15.75))); + zz = 0 + (((tickAnim - 370) / 30) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftleg, leftleg.rotateAngleX + (float) Math.toRadians(xx), leftleg.rotateAngleY + (float) Math.toRadians(yy), leftleg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (-20.5-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (-35-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 63) { + xx = -20.5 + (((tickAnim - 35) / 28) * (-165.19559-(-20.5))); + yy = -35 + (((tickAnim - 35) / 28) * (-40.60566-(-35))); + zz = 0 + (((tickAnim - 35) / 28) * (132.60227-(0))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = -165.19559 + (((tickAnim - 63) / 277) * (-165.19559-(-165.19559))); + yy = -40.60566 + (((tickAnim - 63) / 277) * (-40.60566-(-40.60566))); + zz = 132.60227 + (((tickAnim - 63) / 277) * (132.60227-(132.60227))); + } + else if (tickAnim >= 340 && tickAnim < 370) { + xx = -165.19559 + (((tickAnim - 340) / 30) * (-20.5-(-165.19559))); + yy = -40.60566 + (((tickAnim - 340) / 30) * (-35-(-40.60566))); + zz = 132.60227 + (((tickAnim - 340) / 30) * (0-(132.60227))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = -20.5 + (((tickAnim - 370) / 30) * (0-(-20.5))); + yy = -35 + (((tickAnim - 370) / 30) * (0-(-35))); + zz = 0 + (((tickAnim - 370) / 30) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftleg2, leftleg2.rotateAngleX + (float) Math.toRadians(xx), leftleg2.rotateAngleY + (float) Math.toRadians(yy), leftleg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (-0.45-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (-0.825-(0))); + } + else if (tickAnim >= 35 && tickAnim < 370) { + xx = -0.45 + (((tickAnim - 35) / 335) * (-0.45-(-0.45))); + yy = 0 + (((tickAnim - 35) / 335) * (0-(0))); + zz = -0.825 + (((tickAnim - 35) / 335) * (-0.825-(-0.825))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = -0.45 + (((tickAnim - 370) / 30) * (0-(-0.45))); + yy = 0 + (((tickAnim - 370) / 30) * (0-(0))); + zz = -0.825 + (((tickAnim - 370) / 30) * (0-(-0.825))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftleg2.rotationPointX = this.leftleg2.rotationPointX + (float)(xx); + this.leftleg2.rotationPointY = this.leftleg2.rotationPointY - (float)(yy); + this.leftleg2.rotationPointZ = this.leftleg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (1.5-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (10.75-(0))); + } + else if (tickAnim >= 35 && tickAnim < 370) { + xx = 0 + (((tickAnim - 35) / 335) * (0-(0))); + yy = 1.5 + (((tickAnim - 35) / 335) * (1.5-(1.5))); + zz = 10.75 + (((tickAnim - 35) / 335) * (10.75-(10.75))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = 0 + (((tickAnim - 370) / 30) * (0-(0))); + yy = 1.5 + (((tickAnim - 370) / 30) * (0-(1.5))); + zz = 10.75 + (((tickAnim - 370) / 30) * (0-(10.75))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftleg3, leftleg3.rotateAngleX + (float) Math.toRadians(xx), leftleg3.rotateAngleY + (float) Math.toRadians(yy), leftleg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (0.15-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0.325-(0))); + } + else if (tickAnim >= 35 && tickAnim < 370) { + xx = 0.15 + (((tickAnim - 35) / 335) * (0.15-(0.15))); + yy = 0 + (((tickAnim - 35) / 335) * (0-(0))); + zz = 0.325 + (((tickAnim - 35) / 335) * (0.325-(0.325))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = 0.15 + (((tickAnim - 370) / 30) * (0-(0.15))); + yy = 0 + (((tickAnim - 370) / 30) * (0-(0))); + zz = 0.325 + (((tickAnim - 370) / 30) * (0-(0.325))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftleg3.rotationPointX = this.leftleg3.rotationPointX + (float)(xx); + this.leftleg3.rotationPointY = this.leftleg3.rotationPointY - (float)(yy); + this.leftleg3.rotationPointZ = this.leftleg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (-15.75-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 63) { + xx = 0 + (((tickAnim - 35) / 28) * (-64.69049-(0))); + yy = -15.75 + (((tickAnim - 35) / 28) * (-33.1803-(-15.75))); + zz = 0 + (((tickAnim - 35) / 28) * (58.90019-(0))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = -64.69049 + (((tickAnim - 63) / 277) * (-64.69049-(-64.69049))); + yy = -33.1803 + (((tickAnim - 63) / 277) * (-33.1803-(-33.1803))); + zz = 58.90019 + (((tickAnim - 63) / 277) * (58.90019-(58.90019))); + } + else if (tickAnim >= 340 && tickAnim < 370) { + xx = -64.69049 + (((tickAnim - 340) / 30) * (0-(-64.69049))); + yy = -33.1803 + (((tickAnim - 340) / 30) * (-15.75-(-33.1803))); + zz = 58.90019 + (((tickAnim - 340) / 30) * (0-(58.90019))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = 0 + (((tickAnim - 370) / 30) * (0-(0))); + yy = -15.75 + (((tickAnim - 370) / 30) * (0-(-15.75))); + zz = 0 + (((tickAnim - 370) / 30) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightleg, rightleg.rotateAngleX + (float) Math.toRadians(xx), rightleg.rotateAngleY + (float) Math.toRadians(yy), rightleg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (-20.5-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (35-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 63) { + xx = -20.5 + (((tickAnim - 35) / 28) * (-165.19559-(-20.5))); + yy = 35 + (((tickAnim - 35) / 28) * (40.60566-(35))); + zz = 0 + (((tickAnim - 35) / 28) * (-132.60227-(0))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = -165.19559 + (((tickAnim - 63) / 277) * (-165.19559-(-165.19559))); + yy = 40.60566 + (((tickAnim - 63) / 277) * (40.60566-(40.60566))); + zz = -132.60227 + (((tickAnim - 63) / 277) * (-132.60227-(-132.60227))); + } + else if (tickAnim >= 340 && tickAnim < 370) { + xx = -165.19559 + (((tickAnim - 340) / 30) * (-20.5-(-165.19559))); + yy = 40.60566 + (((tickAnim - 340) / 30) * (35-(40.60566))); + zz = -132.60227 + (((tickAnim - 340) / 30) * (0-(-132.60227))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = -20.5 + (((tickAnim - 370) / 30) * (0-(-20.5))); + yy = 35 + (((tickAnim - 370) / 30) * (0-(35))); + zz = 0 + (((tickAnim - 370) / 30) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightleg2, rightleg2.rotateAngleX + (float) Math.toRadians(xx), rightleg2.rotateAngleY + (float) Math.toRadians(yy), rightleg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (0.45-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (-0.825-(0))); + } + else if (tickAnim >= 35 && tickAnim < 370) { + xx = 0.45 + (((tickAnim - 35) / 335) * (0.45-(0.45))); + yy = 0 + (((tickAnim - 35) / 335) * (0-(0))); + zz = -0.825 + (((tickAnim - 35) / 335) * (-0.825-(-0.825))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = 0.45 + (((tickAnim - 370) / 30) * (0-(0.45))); + yy = 0 + (((tickAnim - 370) / 30) * (0-(0))); + zz = -0.825 + (((tickAnim - 370) / 30) * (0-(-0.825))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightleg2.rotationPointX = this.rightleg2.rotationPointX + (float)(xx); + this.rightleg2.rotationPointY = this.rightleg2.rotationPointY - (float)(yy); + this.rightleg2.rotationPointZ = this.rightleg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (-1.5-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (-10.75-(0))); + } + else if (tickAnim >= 35 && tickAnim < 63) { + xx = 0 + (((tickAnim - 35) / 28) * (0-(0))); + yy = -1.5 + (((tickAnim - 35) / 28) * (-1.5-(-1.5))); + zz = -10.75 + (((tickAnim - 35) / 28) * (-10.75-(-10.75))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = 0 + (((tickAnim - 63) / 277) * (0-(0))); + yy = -1.5 + (((tickAnim - 63) / 277) * (-1.5-(-1.5))); + zz = -10.75 + (((tickAnim - 63) / 277) * (-10.75-(-10.75))); + } + else if (tickAnim >= 340 && tickAnim < 370) { + xx = 0 + (((tickAnim - 340) / 30) * (0-(0))); + yy = -1.5 + (((tickAnim - 340) / 30) * (-1.5-(-1.5))); + zz = -10.75 + (((tickAnim - 340) / 30) * (-10.75-(-10.75))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = 0 + (((tickAnim - 370) / 30) * (0-(0))); + yy = -1.5 + (((tickAnim - 370) / 30) * (0-(-1.5))); + zz = -10.75 + (((tickAnim - 370) / 30) * (0-(-10.75))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightleg3, rightleg3.rotateAngleX + (float) Math.toRadians(xx), rightleg3.rotateAngleY + (float) Math.toRadians(yy), rightleg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (0.15-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0.325-(0))); + } + else if (tickAnim >= 35 && tickAnim < 63) { + xx = 0.15 + (((tickAnim - 35) / 28) * (-0.15-(0.15))); + yy = 0 + (((tickAnim - 35) / 28) * (0-(0))); + zz = 0.325 + (((tickAnim - 35) / 28) * (0.325-(0.325))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = -0.15 + (((tickAnim - 63) / 277) * (-0.15-(-0.15))); + yy = 0 + (((tickAnim - 63) / 277) * (0-(0))); + zz = 0.325 + (((tickAnim - 63) / 277) * (0.325-(0.325))); + } + else if (tickAnim >= 340 && tickAnim < 370) { + xx = -0.15 + (((tickAnim - 340) / 30) * (0.15-(-0.15))); + yy = 0 + (((tickAnim - 340) / 30) * (0-(0))); + zz = 0.325 + (((tickAnim - 340) / 30) * (0.325-(0.325))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = 0.15 + (((tickAnim - 370) / 30) * (0-(0.15))); + yy = 0 + (((tickAnim - 370) / 30) * (0-(0))); + zz = 0.325 + (((tickAnim - 370) / 30) * (0-(0.325))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightleg3.rotationPointX = this.rightleg3.rotationPointX + (float)(xx); + this.rightleg3.rotationPointY = this.rightleg3.rotationPointY - (float)(yy); + this.rightleg3.rotationPointZ = this.rightleg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 400) { + xx = 0 + (((tickAnim - 0) / 400) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 400) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 400) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(xx), body.rotateAngleY + (float) Math.toRadians(yy), body.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 63) { + xx = 0 + (((tickAnim - 0) / 63) * (6.5-(0))); + yy = 0 + (((tickAnim - 0) / 63) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 63) * (0-(0))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = 6.5 + (((tickAnim - 63) / 277) * (6.5-(6.5))); + yy = 0 + (((tickAnim - 63) / 277) * (0-(0))); + zz = 0 + (((tickAnim - 63) / 277) * (0-(0))); + } + else if (tickAnim >= 340 && tickAnim < 400) { + xx = 6.5 + (((tickAnim - 340) / 60) * (0-(6.5))); + yy = 0 + (((tickAnim - 340) / 60) * (0-(0))); + zz = 0 + (((tickAnim - 340) / 60) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(xx), body2.rotateAngleY + (float) Math.toRadians(yy), body2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 63) { + xx = 0 + (((tickAnim - 0) / 63) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 63) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 63) * (0.05-(0))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = 0 + (((tickAnim - 63) / 277) * (0-(0))); + yy = 0 + (((tickAnim - 63) / 277) * (0-(0))); + zz = 0.05 + (((tickAnim - 63) / 277) * (0.05-(0.05))); + } + else if (tickAnim >= 340 && tickAnim < 400) { + xx = 0 + (((tickAnim - 340) / 60) * (0-(0))); + yy = 0 + (((tickAnim - 340) / 60) * (0-(0))); + zz = 0.05 + (((tickAnim - 340) / 60) * (0-(0.05))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.body2.rotationPointX = this.body2.rotationPointX + (float)(xx); + this.body2.rotationPointY = this.body2.rotationPointY - (float)(yy); + this.body2.rotationPointZ = this.body2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (-4-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 63) { + xx = 0 + (((tickAnim - 35) / 28) * (15.91038-(0))); + yy = -4 + (((tickAnim - 35) / 28) * (-15.14571-(-4))); + zz = 0 + (((tickAnim - 35) / 28) * (-24.73692-(0))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = 15.91038 + (((tickAnim - 63) / 277) * (15.91038-(15.91038))); + yy = -15.14571 + (((tickAnim - 63) / 277) * (-15.14571-(-15.14571))); + zz = -24.73692 + (((tickAnim - 63) / 277) * (-24.73692-(-24.73692))); + } + else if (tickAnim >= 340 && tickAnim < 370) { + xx = 15.91038 + (((tickAnim - 340) / 30) * (0-(15.91038))); + yy = -15.14571 + (((tickAnim - 340) / 30) * (-4-(-15.14571))); + zz = -24.73692 + (((tickAnim - 340) / 30) * (0-(-24.73692))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = 0 + (((tickAnim - 370) / 30) * (0-(0))); + yy = -4 + (((tickAnim - 370) / 30) * (0-(-4))); + zz = 0 + (((tickAnim - 370) / 30) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm, leftArm.rotateAngleX + (float) Math.toRadians(xx), leftArm.rotateAngleY + (float) Math.toRadians(yy), leftArm.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 63) { + xx = 0 + (((tickAnim - 35) / 28) * (-93.95113-(0))); + yy = 0 + (((tickAnim - 35) / 28) * (47.28978-(0))); + zz = 0 + (((tickAnim - 35) / 28) * (-4.36862-(0))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = -93.95113 + (((tickAnim - 63) / 277) * (-93.95113-(-93.95113))); + yy = 47.28978 + (((tickAnim - 63) / 277) * (47.28978-(47.28978))); + zz = -4.36862 + (((tickAnim - 63) / 277) * (-4.36862-(-4.36862))); + } + else if (tickAnim >= 340 && tickAnim < 370) { + xx = -93.95113 + (((tickAnim - 340) / 30) * (0-(-93.95113))); + yy = 47.28978 + (((tickAnim - 340) / 30) * (0-(47.28978))); + zz = -4.36862 + (((tickAnim - 340) / 30) * (0-(-4.36862))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = 0 + (((tickAnim - 370) / 30) * (0-(0))); + yy = 0 + (((tickAnim - 370) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 370) / 30) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm2, leftArm2.rotateAngleX + (float) Math.toRadians(xx), leftArm2.rotateAngleY + (float) Math.toRadians(yy), leftArm2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 63 && tickAnim < 340) { + xx = 0.275 + (((tickAnim - 63) / 277) * (0.275-(0.275))); + yy = -0.425 + (((tickAnim - 63) / 277) * (-0.425-(-0.425))); + zz = 0.25 + (((tickAnim - 63) / 277) * (0.25-(0.25))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftArm2.rotationPointX = this.leftArm2.rotationPointX + (float)(xx); + this.leftArm2.rotationPointY = this.leftArm2.rotationPointY - (float)(yy); + this.leftArm2.rotationPointZ = this.leftArm2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (-10.5-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 50) { + xx = 0 + (((tickAnim - 35) / 15) * (3.7816-(0))); + yy = -10.5 + (((tickAnim - 35) / 15) * (-51.42398-(-10.5))); + zz = 0 + (((tickAnim - 35) / 15) * (0.84912-(0))); + } + else if (tickAnim >= 50 && tickAnim < 63) { + xx = 3.7816 + (((tickAnim - 50) / 13) * (7.32867-(3.7816))); + yy = -51.42398 + (((tickAnim - 50) / 13) * (-82.74739-(-51.42398))); + zz = 0.84912 + (((tickAnim - 50) / 13) * (-12.84993-(0.84912))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = 7.32867 + (((tickAnim - 63) / 277) * (7.32867-(7.32867))); + yy = -82.74739 + (((tickAnim - 63) / 277) * (-82.74739-(-82.74739))); + zz = -12.84993 + (((tickAnim - 63) / 277) * (-12.84993-(-12.84993))); + } + else if (tickAnim >= 340 && tickAnim < 356) { + xx = 7.32867 + (((tickAnim - 340) / 16) * (3.95589-(7.32867))); + yy = -82.74739 + (((tickAnim - 340) / 16) * (-41.60432-(-82.74739))); + zz = -12.84993 + (((tickAnim - 340) / 16) * (0.89743-(-12.84993))); + } + else if (tickAnim >= 356 && tickAnim < 370) { + xx = 3.95589 + (((tickAnim - 356) / 14) * (0-(3.95589))); + yy = -41.60432 + (((tickAnim - 356) / 14) * (-10.5-(-41.60432))); + zz = 0.89743 + (((tickAnim - 356) / 14) * (0-(0.89743))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = 0 + (((tickAnim - 370) / 30) * (0-(0))); + yy = -10.5 + (((tickAnim - 370) / 30) * (0-(-10.5))); + zz = 0 + (((tickAnim - 370) / 30) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm3, leftArm3.rotateAngleX + (float) Math.toRadians(xx), leftArm3.rotateAngleY + (float) Math.toRadians(yy), leftArm3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (0.2-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0.275-(0))); + } + else if (tickAnim >= 35 && tickAnim < 50) { + xx = 0 + (((tickAnim - 35) / 15) * (-0.375-(0))); + yy = 0.2 + (((tickAnim - 35) / 15) * (0.995-(0.2))); + zz = 0.275 + (((tickAnim - 35) / 15) * (0.28-(0.275))); + } + else if (tickAnim >= 50 && tickAnim < 63) { + xx = -0.375 + (((tickAnim - 50) / 13) * (-0.5-(-0.375))); + yy = 0.995 + (((tickAnim - 50) / 13) * (0.925-(0.995))); + zz = 0.28 + (((tickAnim - 50) / 13) * (0.28-(0.28))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = -0.5 + (((tickAnim - 63) / 277) * (-0.5-(-0.5))); + yy = 0.925 + (((tickAnim - 63) / 277) * (0.925-(0.925))); + zz = 0.28 + (((tickAnim - 63) / 277) * (0.28-(0.28))); + } + else if (tickAnim >= 340 && tickAnim < 356) { + xx = -0.5 + (((tickAnim - 340) / 16) * (0.21-(-0.5))); + yy = 0.925 + (((tickAnim - 340) / 16) * (0.695-(0.925))); + zz = 0.28 + (((tickAnim - 340) / 16) * (0.28-(0.28))); + } + else if (tickAnim >= 356 && tickAnim < 370) { + xx = 0.21 + (((tickAnim - 356) / 14) * (0-(0.21))); + yy = 0.695 + (((tickAnim - 356) / 14) * (0.2-(0.695))); + zz = 0.28 + (((tickAnim - 356) / 14) * (0.275-(0.28))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = 0 + (((tickAnim - 370) / 30) * (0-(0))); + yy = 0.2 + (((tickAnim - 370) / 30) * (0-(0.2))); + zz = 0.275 + (((tickAnim - 370) / 30) * (0-(0.275))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftArm3.rotationPointX = this.leftArm3.rotationPointX + (float)(xx); + this.leftArm3.rotationPointY = this.leftArm3.rotationPointY - (float)(yy); + this.leftArm3.rotationPointZ = this.leftArm3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (3.75-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 50) { + xx = 3.75 + (((tickAnim - 35) / 15) * (9.61-(3.75))); + yy = 0 + (((tickAnim - 35) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 15) * (0-(0))); + } + else if (tickAnim >= 50 && tickAnim < 63) { + xx = 9.61 + (((tickAnim - 50) / 13) * (3.5-(9.61))); + yy = 0 + (((tickAnim - 50) / 13) * (0-(0))); + zz = 0 + (((tickAnim - 50) / 13) * (0-(0))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = 3.5 + (((tickAnim - 63) / 277) * (3.5-(3.5))); + yy = 0 + (((tickAnim - 63) / 277) * (0-(0))); + zz = 0 + (((tickAnim - 63) / 277) * (0-(0))); + } + else if (tickAnim >= 340 && tickAnim < 370) { + xx = 3.5 + (((tickAnim - 340) / 30) * (3.75-(3.5))); + yy = 0 + (((tickAnim - 340) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 340) / 30) * (0-(0))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = 3.75 + (((tickAnim - 370) / 30) * (0-(3.75))); + yy = 0 + (((tickAnim - 370) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 370) / 30) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (6-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 63) { + xx = 6 + (((tickAnim - 35) / 28) * (0-(6))); + yy = 0 + (((tickAnim - 35) / 28) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 28) * (0-(0))); + } + else if (tickAnim >= 63 && tickAnim < 370) { + xx = 0 + (((tickAnim - 63) / 307) * (6-(0))); + yy = 0 + (((tickAnim - 63) / 307) * (0-(0))); + zz = 0 + (((tickAnim - 63) / 307) * (0-(0))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = 6 + (((tickAnim - 370) / 30) * (0-(6))); + yy = 0 + (((tickAnim - 370) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 370) / 30) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck2, neck2.rotateAngleX + (float) Math.toRadians(xx), neck2.rotateAngleY + (float) Math.toRadians(yy), neck2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (0.025-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (-0.425-(0))); + } + else if (tickAnim >= 35 && tickAnim < 370) { + xx = 0 + (((tickAnim - 35) / 335) * (0-(0))); + yy = 0.025 + (((tickAnim - 35) / 335) * (0.025-(0.025))); + zz = -0.425 + (((tickAnim - 35) / 335) * (-0.425-(-0.425))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = 0 + (((tickAnim - 370) / 30) * (0-(0))); + yy = 0.025 + (((tickAnim - 370) / 30) * (0-(0.025))); + zz = -0.425 + (((tickAnim - 370) / 30) * (0-(-0.425))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.neck2.rotationPointX = this.neck2.rotationPointX + (float)(xx); + this.neck2.rotationPointY = this.neck2.rotationPointY - (float)(yy); + this.neck2.rotationPointZ = this.neck2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (5.5-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 46) { + xx = 5.5 + (((tickAnim - 35) / 11) * (14.32-(5.5))); + yy = 0 + (((tickAnim - 35) / 11) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 11) * (0-(0))); + } + else if (tickAnim >= 46 && tickAnim < 50) { + xx = 14.32 + (((tickAnim - 46) / 4) * (2.48-(14.32))); + yy = 0 + (((tickAnim - 46) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 46) / 4) * (0-(0))); + } + else if (tickAnim >= 50 && tickAnim < 63) { + xx = 2.48 + (((tickAnim - 50) / 13) * (-6.5-(2.48))); + yy = 0 + (((tickAnim - 50) / 13) * (0-(0))); + zz = 0 + (((tickAnim - 50) / 13) * (0-(0))); + } + else if (tickAnim >= 63 && tickAnim < 95) { + xx = -6.5 + (((tickAnim - 63) / 32) * (-27-(-6.5))); + yy = 0 + (((tickAnim - 63) / 32) * (0-(0))); + zz = 0 + (((tickAnim - 63) / 32) * (0-(0))); + } + else if (tickAnim >= 95 && tickAnim < 330) { + xx = -27 + (((tickAnim - 95) / 235) * (-32.25-(-27))); + yy = 0 + (((tickAnim - 95) / 235) * (0-(0))); + zz = 0 + (((tickAnim - 95) / 235) * (0-(0))); + } + else if (tickAnim >= 330 && tickAnim < 340) { + xx = -32.25 + (((tickAnim - 330) / 10) * (-32.25-(-32.25))); + yy = 0 + (((tickAnim - 330) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 330) / 10) * (0-(0))); + } + else if (tickAnim >= 340 && tickAnim < 351) { + xx = -32.25 + (((tickAnim - 340) / 11) * (0-(-32.25))); + yy = 0 + (((tickAnim - 340) / 11) * (0-(0))); + zz = 0 + (((tickAnim - 340) / 11) * (0-(0))); + } + else if (tickAnim >= 351 && tickAnim < 360) { + xx = 0 + (((tickAnim - 351) / 9) * (13.63-(0))); + yy = 0 + (((tickAnim - 351) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 351) / 9) * (0-(0))); + } + else if (tickAnim >= 360 && tickAnim < 400) { + xx = 13.63 + (((tickAnim - 360) / 40) * (0-(13.63))); + yy = 0 + (((tickAnim - 360) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 360) / 40) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck3, neck3.rotateAngleX + (float) Math.toRadians(xx), neck3.rotateAngleY + (float) Math.toRadians(yy), neck3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0.05-(0))); + } + else if (tickAnim >= 35 && tickAnim < 46) { + xx = 0 + (((tickAnim - 35) / 11) * (0-(0))); + yy = 0 + (((tickAnim - 35) / 11) * (0-(0))); + zz = 0.05 + (((tickAnim - 35) / 11) * (0.3-(0.05))); + } + else if (tickAnim >= 46 && tickAnim < 63) { + xx = 0 + (((tickAnim - 46) / 17) * (0-(0))); + yy = 0 + (((tickAnim - 46) / 17) * (0-(0))); + zz = 0.3 + (((tickAnim - 46) / 17) * (0.175-(0.3))); + } + else if (tickAnim >= 63 && tickAnim < 95) { + xx = 0 + (((tickAnim - 63) / 32) * (0-(0))); + yy = 0 + (((tickAnim - 63) / 32) * (-0.15-(0))); + zz = 0.175 + (((tickAnim - 63) / 32) * (0.48-(0.175))); + } + else if (tickAnim >= 95 && tickAnim < 330) { + xx = 0 + (((tickAnim - 95) / 235) * (0-(0))); + yy = -0.15 + (((tickAnim - 95) / 235) * (-0.15-(-0.15))); + zz = 0.48 + (((tickAnim - 95) / 235) * (0.48-(0.48))); + } + else if (tickAnim >= 330 && tickAnim < 340) { + xx = 0 + (((tickAnim - 330) / 10) * (0-(0))); + yy = -0.15 + (((tickAnim - 330) / 10) * (-0.15-(-0.15))); + zz = 0.48 + (((tickAnim - 330) / 10) * (0.48-(0.48))); + } + else if (tickAnim >= 340 && tickAnim < 351) { + xx = 0 + (((tickAnim - 340) / 11) * (0-(0))); + yy = -0.15 + (((tickAnim - 340) / 11) * (0-(-0.15))); + zz = 0.48 + (((tickAnim - 340) / 11) * (0-(0.48))); + } + else if (tickAnim >= 351 && tickAnim < 360) { + xx = 0 + (((tickAnim - 351) / 9) * (0-(0))); + yy = 0 + (((tickAnim - 351) / 9) * (0.1-(0))); + zz = 0 + (((tickAnim - 351) / 9) * (0.295-(0))); + } + else if (tickAnim >= 360 && tickAnim < 400) { + xx = 0 + (((tickAnim - 360) / 40) * (0-(0))); + yy = 0.1 + (((tickAnim - 360) / 40) * (0-(0.1))); + zz = 0.295 + (((tickAnim - 360) / 40) * (0-(0.295))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.neck3.rotationPointX = this.neck3.rotationPointX + (float)(xx); + this.neck3.rotationPointY = this.neck3.rotationPointY - (float)(yy); + this.neck3.rotationPointZ = this.neck3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 63 && tickAnim < 95) { + xx = 0 + (((tickAnim - 63) / 32) * (0-(0))); + yy = 0 + (((tickAnim - 63) / 32) * (0-(0))); + zz = 0 + (((tickAnim - 63) / 32) * (0-(0))); + } + else if (tickAnim >= 95 && tickAnim < 330) { + xx = 0 + (((tickAnim - 95) / 235) * (0-(0))); + yy = 0 + (((tickAnim - 95) / 235) * (0-(0))); + zz = 0 + (((tickAnim - 95) / 235) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 63) { + xx = 0 + (((tickAnim - 0) / 63) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 63) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 63) * (0-(0))); + } + else if (tickAnim >= 63 && tickAnim < 95) { + xx = 0 + (((tickAnim - 63) / 32) * (0-(0))); + yy = 0 + (((tickAnim - 63) / 32) * (0-(0))); + zz = 0 + (((tickAnim - 63) / 32) * (0-(0))); + } + else if (tickAnim >= 95 && tickAnim < 330) { + xx = 0 + (((tickAnim - 95) / 235) * (0-(0))); + yy = 0 + (((tickAnim - 95) / 235) * (0-(0))); + zz = 0 + (((tickAnim - 95) / 235) * (0-(0))); + } + else if (tickAnim >= 330 && tickAnim < 400) { + xx = 0 + (((tickAnim - 330) / 70) * (0-(0))); + yy = 0 + (((tickAnim - 330) / 70) * (0-(0))); + zz = 0 + (((tickAnim - 330) / 70) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.head.rotationPointX = this.head.rotationPointX + (float)(xx); + this.head.rotationPointY = this.head.rotationPointY - (float)(yy); + this.head.rotationPointZ = this.head.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 63) { + xx = 0 + (((tickAnim - 0) / 63) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 63) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 63) * (0-(0))); + } + else if (tickAnim >= 63 && tickAnim < 95) { + xx = 0 + (((tickAnim - 63) / 32) * (19.25-(0))); + yy = 0 + (((tickAnim - 63) / 32) * (0-(0))); + zz = 0 + (((tickAnim - 63) / 32) * (0-(0))); + } + else if (tickAnim >= 95 && tickAnim < 330) { + xx = 19.25 + (((tickAnim - 95) / 235) * (19.25-(19.25))); + yy = 0 + (((tickAnim - 95) / 235) * (0-(0))); + zz = 0 + (((tickAnim - 95) / 235) * (0-(0))); + } + else if (tickAnim >= 330 && tickAnim < 340) { + xx = 19.25 + (((tickAnim - 330) / 10) * (19.25-(19.25))); + yy = 0 + (((tickAnim - 330) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 330) / 10) * (0-(0))); + } + else if (tickAnim >= 340 && tickAnim < 350) { + xx = 19.25 + (((tickAnim - 340) / 10) * (0-(19.25))); + yy = 0 + (((tickAnim - 340) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 340) / 10) * (0-(0))); + } + else if (tickAnim >= 350 && tickAnim < 400) { + xx = 0 + (((tickAnim - 350) / 50) * (0-(0))); + yy = 0 + (((tickAnim - 350) / 50) * (0-(0))); + zz = 0 + (((tickAnim - 350) / 50) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 63) { + xx = 1 + (((tickAnim - 0) / 63) * (1-(1))); + yy = 1 + (((tickAnim - 0) / 63) * (1-(1))); + zz = 1 + (((tickAnim - 0) / 63) * (1-(1))); + } + else if (tickAnim >= 63 && tickAnim < 95) { + xx = 1 + (((tickAnim - 63) / 32) * (1-(1))); + yy = 1 + (((tickAnim - 63) / 32) * (0.0375-(1))); + zz = 1 + (((tickAnim - 63) / 32) * (1-(1))); + } + else if (tickAnim >= 95 && tickAnim < 330) { + xx = 1 + (((tickAnim - 95) / 235) * (1-(1))); + yy = 0.0375 + (((tickAnim - 95) / 235) * (0.0375-(0.0375))); + zz = 1 + (((tickAnim - 95) / 235) * (1-(1))); + } + else if (tickAnim >= 330 && tickAnim < 340) { + xx = 1 + (((tickAnim - 330) / 10) * (1-(1))); + yy = 0.0375 + (((tickAnim - 330) / 10) * (1-(0.0375))); + zz = 1 + (((tickAnim - 330) / 10) * (1-(1))); + } + else if (tickAnim >= 340 && tickAnim < 400) { + xx = 1 + (((tickAnim - 340) / 60) * (1-(1))); + yy = 1 + (((tickAnim - 340) / 60) * (1-(1))); + zz = 1 + (((tickAnim - 340) / 60) * (1-(1))); + } + else { + xx = 1; + yy = 1; + zz = 1; + } + this.eye.setScale((float)xx, (float)yy, (float)zz); + + + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (13.75-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 63) { + xx = 13.75 + (((tickAnim - 35) / 28) * (7.25-(13.75))); + yy = 0 + (((tickAnim - 35) / 28) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 28) * (0-(0))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = 7.25 + (((tickAnim - 63) / 277) * (7.25-(7.25))); + yy = 0 + (((tickAnim - 63) / 277) * (0-(0))); + zz = 0 + (((tickAnim - 63) / 277) * (0-(0))); + } + else if (tickAnim >= 340 && tickAnim < 370) { + xx = 7.25 + (((tickAnim - 340) / 30) * (13.75-(7.25))); + yy = 0 + (((tickAnim - 340) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 340) / 30) * (0-(0))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = 13.75 + (((tickAnim - 370) / 30) * (0-(13.75))); + yy = 0 + (((tickAnim - 370) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 370) / 30) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(xx), tail.rotateAngleY + (float) Math.toRadians(yy), tail.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (12.75-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 63) { + xx = 12.75 + (((tickAnim - 35) / 28) * (17.25-(12.75))); + yy = 0 + (((tickAnim - 35) / 28) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 28) * (0-(0))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = 17.25 + (((tickAnim - 63) / 277) * (17.25-(17.25))); + yy = 0 + (((tickAnim - 63) / 277) * (0-(0))); + zz = 0 + (((tickAnim - 63) / 277) * (0-(0))); + } + else if (tickAnim >= 340 && tickAnim < 370) { + xx = 17.25 + (((tickAnim - 340) / 30) * (12.75-(17.25))); + yy = 0 + (((tickAnim - 340) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 340) / 30) * (0-(0))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = 12.75 + (((tickAnim - 370) / 30) * (0-(12.75))); + yy = 0 + (((tickAnim - 370) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 370) / 30) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(xx), tail2.rotateAngleY + (float) Math.toRadians(yy), tail2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 63) { + xx = 0 + (((tickAnim - 35) / 28) * (0-(0))); + yy = 0 + (((tickAnim - 35) / 28) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 28) * (-0.2-(0))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = 0 + (((tickAnim - 63) / 277) * (0-(0))); + yy = 0 + (((tickAnim - 63) / 277) * (0-(0))); + zz = -0.2 + (((tickAnim - 63) / 277) * (-0.2-(-0.2))); + } + else if (tickAnim >= 340 && tickAnim < 370) { + xx = 0 + (((tickAnim - 340) / 30) * (0-(0))); + yy = 0 + (((tickAnim - 340) / 30) * (0-(0))); + zz = -0.2 + (((tickAnim - 340) / 30) * (0-(-0.2))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = 0 + (((tickAnim - 370) / 30) * (0-(0))); + yy = 0 + (((tickAnim - 370) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 370) / 30) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.tail2.rotationPointX = this.tail2.rotationPointX + (float)(xx); + this.tail2.rotationPointY = this.tail2.rotationPointY - (float)(yy); + this.tail2.rotationPointZ = this.tail2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (-2-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 63) { + xx = -2 + (((tickAnim - 35) / 28) * (-6.5-(-2))); + yy = 0 + (((tickAnim - 35) / 28) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 28) * (0-(0))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = -6.5 + (((tickAnim - 63) / 277) * (-6.5-(-6.5))); + yy = 0 + (((tickAnim - 63) / 277) * (0-(0))); + zz = 0 + (((tickAnim - 63) / 277) * (0-(0))); + } + else if (tickAnim >= 340 && tickAnim < 370) { + xx = -6.5 + (((tickAnim - 340) / 30) * (-2-(-6.5))); + yy = 0 + (((tickAnim - 340) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 340) / 30) * (0-(0))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = -2 + (((tickAnim - 370) / 30) * (0-(-2))); + yy = 0 + (((tickAnim - 370) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 370) / 30) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(xx), tail3.rotateAngleY + (float) Math.toRadians(yy), tail3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (-10.75-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 63) { + xx = -10.75 + (((tickAnim - 35) / 28) * (-18.75-(-10.75))); + yy = 0 + (((tickAnim - 35) / 28) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 28) * (0-(0))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = -18.75 + (((tickAnim - 63) / 277) * (-18.75-(-18.75))); + yy = 0 + (((tickAnim - 63) / 277) * (0-(0))); + zz = 0 + (((tickAnim - 63) / 277) * (0-(0))); + } + else if (tickAnim >= 340 && tickAnim < 370) { + xx = -18.75 + (((tickAnim - 340) / 30) * (-10.75-(-18.75))); + yy = 0 + (((tickAnim - 340) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 340) / 30) * (0-(0))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = -10.75 + (((tickAnim - 370) / 30) * (0-(-10.75))); + yy = 0 + (((tickAnim - 370) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 370) / 30) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(xx), tail4.rotateAngleY + (float) Math.toRadians(yy), tail4.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (4-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 63) { + xx = 0 + (((tickAnim - 35) / 28) * (15.91038-(0))); + yy = 4 + (((tickAnim - 35) / 28) * (15.14571-(4))); + zz = 0 + (((tickAnim - 35) / 28) * (24.73692-(0))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = 15.91038 + (((tickAnim - 63) / 277) * (15.91038-(15.91038))); + yy = 15.14571 + (((tickAnim - 63) / 277) * (15.14571-(15.14571))); + zz = 24.73692 + (((tickAnim - 63) / 277) * (24.73692-(24.73692))); + } + else if (tickAnim >= 340 && tickAnim < 370) { + xx = 15.91038 + (((tickAnim - 340) / 30) * (0-(15.91038))); + yy = 15.14571 + (((tickAnim - 340) / 30) * (4-(15.14571))); + zz = 24.73692 + (((tickAnim - 340) / 30) * (0-(24.73692))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = 0 + (((tickAnim - 370) / 30) * (0-(0))); + yy = 4 + (((tickAnim - 370) / 30) * (0-(4))); + zz = 0 + (((tickAnim - 370) / 30) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm, rightArm.rotateAngleX + (float) Math.toRadians(xx), rightArm.rotateAngleY + (float) Math.toRadians(yy), rightArm.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 63) { + xx = 0 + (((tickAnim - 35) / 28) * (-93.95113-(0))); + yy = 0 + (((tickAnim - 35) / 28) * (-47.28978-(0))); + zz = 0 + (((tickAnim - 35) / 28) * (4.36862-(0))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = -93.95113 + (((tickAnim - 63) / 277) * (-93.95113-(-93.95113))); + yy = -47.28978 + (((tickAnim - 63) / 277) * (-47.28978-(-47.28978))); + zz = 4.36862 + (((tickAnim - 63) / 277) * (4.36862-(4.36862))); + } + else if (tickAnim >= 340 && tickAnim < 370) { + xx = -93.95113 + (((tickAnim - 340) / 30) * (0-(-93.95113))); + yy = -47.28978 + (((tickAnim - 340) / 30) * (0-(-47.28978))); + zz = 4.36862 + (((tickAnim - 340) / 30) * (0-(4.36862))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = 0 + (((tickAnim - 370) / 30) * (0-(0))); + yy = 0 + (((tickAnim - 370) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 370) / 30) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm2, rightArm2.rotateAngleX + (float) Math.toRadians(xx), rightArm2.rotateAngleY + (float) Math.toRadians(yy), rightArm2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 63) { + xx = 0 + (((tickAnim - 0) / 63) * (-0.275-(0))); + yy = 0 + (((tickAnim - 0) / 63) * (-0.425-(0))); + zz = 0 + (((tickAnim - 0) / 63) * (0.25-(0))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = -0.275 + (((tickAnim - 63) / 277) * (-0.275-(-0.275))); + yy = -0.425 + (((tickAnim - 63) / 277) * (-0.425-(-0.425))); + zz = 0.25 + (((tickAnim - 63) / 277) * (0.25-(0.25))); + } + else if (tickAnim >= 340 && tickAnim < 400) { + xx = -0.275 + (((tickAnim - 340) / 60) * (0-(-0.275))); + yy = -0.425 + (((tickAnim - 340) / 60) * (0-(-0.425))); + zz = 0.25 + (((tickAnim - 340) / 60) * (0-(0.25))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightArm2.rotationPointX = this.rightArm2.rotationPointX + (float)(xx); + this.rightArm2.rotationPointY = this.rightArm2.rotationPointY - (float)(yy); + this.rightArm2.rotationPointZ = this.rightArm2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (10.5-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 50) { + xx = 0 + (((tickAnim - 35) / 15) * (3.7816-(0))); + yy = 10.5 + (((tickAnim - 35) / 15) * (51.42398-(10.5))); + zz = 0 + (((tickAnim - 35) / 15) * (-0.84912-(0))); + } + else if (tickAnim >= 50 && tickAnim < 63) { + xx = 3.7816 + (((tickAnim - 50) / 13) * (7.32867-(3.7816))); + yy = 51.42398 + (((tickAnim - 50) / 13) * (82.74739-(51.42398))); + zz = -0.84912 + (((tickAnim - 50) / 13) * (12.84993-(-0.84912))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = 7.32867 + (((tickAnim - 63) / 277) * (7.32867-(7.32867))); + yy = 82.74739 + (((tickAnim - 63) / 277) * (82.74739-(82.74739))); + zz = 12.84993 + (((tickAnim - 63) / 277) * (12.84993-(12.84993))); + } + else if (tickAnim >= 340 && tickAnim < 356) { + xx = 7.32867 + (((tickAnim - 340) / 16) * (3.95589-(7.32867))); + yy = 82.74739 + (((tickAnim - 340) / 16) * (41.60432-(82.74739))); + zz = 12.84993 + (((tickAnim - 340) / 16) * (-0.89743-(12.84993))); + } + else if (tickAnim >= 356 && tickAnim < 370) { + xx = 3.95589 + (((tickAnim - 356) / 14) * (0-(3.95589))); + yy = 41.60432 + (((tickAnim - 356) / 14) * (10.5-(41.60432))); + zz = -0.89743 + (((tickAnim - 356) / 14) * (0-(-0.89743))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = 0 + (((tickAnim - 370) / 30) * (0-(0))); + yy = 10.5 + (((tickAnim - 370) / 30) * (0-(10.5))); + zz = 0 + (((tickAnim - 370) / 30) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm3, rightArm3.rotateAngleX + (float) Math.toRadians(xx), rightArm3.rotateAngleY + (float) Math.toRadians(yy), rightArm3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 35) { + xx = 0 + (((tickAnim - 0) / 35) * (-0.05-(0))); + yy = 0 + (((tickAnim - 0) / 35) * (0.15-(0))); + zz = 0 + (((tickAnim - 0) / 35) * (0.275-(0))); + } + else if (tickAnim >= 35 && tickAnim < 50) { + xx = -0.05 + (((tickAnim - 35) / 15) * (0.375-(-0.05))); + yy = 0.15 + (((tickAnim - 35) / 15) * (0.995-(0.15))); + zz = 0.275 + (((tickAnim - 35) / 15) * (0.28-(0.275))); + } + else if (tickAnim >= 50 && tickAnim < 63) { + xx = 0.375 + (((tickAnim - 50) / 13) * (0.5-(0.375))); + yy = 0.995 + (((tickAnim - 50) / 13) * (0.925-(0.995))); + zz = 0.28 + (((tickAnim - 50) / 13) * (0.28-(0.28))); + } + else if (tickAnim >= 63 && tickAnim < 340) { + xx = 0.5 + (((tickAnim - 63) / 277) * (0.5-(0.5))); + yy = 0.925 + (((tickAnim - 63) / 277) * (0.925-(0.925))); + zz = 0.28 + (((tickAnim - 63) / 277) * (0.28-(0.28))); + } + else if (tickAnim >= 340 && tickAnim < 356) { + xx = 0.5 + (((tickAnim - 340) / 16) * (0.21-(0.5))); + yy = 0.925 + (((tickAnim - 340) / 16) * (0.695-(0.925))); + zz = 0.28 + (((tickAnim - 340) / 16) * (0.28-(0.28))); + } + else if (tickAnim >= 356 && tickAnim < 370) { + xx = 0.21 + (((tickAnim - 356) / 14) * (-0.05-(0.21))); + yy = 0.695 + (((tickAnim - 356) / 14) * (0.15-(0.695))); + zz = 0.28 + (((tickAnim - 356) / 14) * (0.275-(0.28))); + } + else if (tickAnim >= 370 && tickAnim < 400) { + xx = -0.05 + (((tickAnim - 370) / 30) * (0-(-0.05))); + yy = 0.15 + (((tickAnim - 370) / 30) * (0-(0.15))); + zz = 0.275 + (((tickAnim - 370) / 30) * (0-(0.275))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightArm3.rotationPointX = this.rightArm3.rotationPointX + (float)(xx); + this.rightArm3.rotationPointY = this.rightArm3.rotationPointY - (float)(yy); + this.rightArm3.rotationPointZ = this.rightArm3.rotationPointZ + (float)(zz); + + } + public void animAttack(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraDiandongosuchus entity = (EntityPrehistoricFloraDiandongosuchus) entitylivingbaseIn; + int animCycle = 15; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (7.25-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = 7.25 + (((tickAnim - 5) / 5) * (-5.25-(7.25))); + yy = 0 + (((tickAnim - 5) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 5) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = -5.25 + (((tickAnim - 10) / 5) * (0-(-5.25))); + yy = 0 + (((tickAnim - 10) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (-6-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 8) { + xx = -6 + (((tickAnim - 5) / 3) * (-8.25-(-6))); + yy = 0 + (((tickAnim - 5) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 3) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = -8.25 + (((tickAnim - 8) / 2) * (0-(-8.25))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = 0 + (((tickAnim - 10) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 10) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck2, neck2.rotateAngleX + (float) Math.toRadians(xx), neck2.rotateAngleY + (float) Math.toRadians(yy), neck2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (-4-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 8) { + xx = -4 + (((tickAnim - 5) / 3) * (-4-(-4))); + yy = 0 + (((tickAnim - 5) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 3) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = -4 + (((tickAnim - 8) / 2) * (5-(-4))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 12) { + xx = 5 + (((tickAnim - 10) / 2) * (0-(5))); + yy = 0 + (((tickAnim - 10) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 2) * (0-(0))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = 0 + (((tickAnim - 12) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 12) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 12) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck3, neck3.rotateAngleX + (float) Math.toRadians(xx), neck3.rotateAngleY + (float) Math.toRadians(yy), neck3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0.025-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0.15-(0))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = 0 + (((tickAnim - 10) / 5) * (0-(0))); + yy = 0.025 + (((tickAnim - 10) / 5) * (0-(0.025))); + zz = 0.15 + (((tickAnim - 10) / 5) * (0-(0.15))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.neck3.rotationPointX = this.neck3.rotationPointX + (float)(xx); + this.neck3.rotationPointY = this.neck3.rotationPointY - (float)(yy); + this.neck3.rotationPointZ = this.neck3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(0), head.rotateAngleY + (float) Math.toRadians(0), head.rotateAngleZ + (float) Math.toRadians(0)); + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (3.5-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = 3.5 + (((tickAnim - 5) / 5) * (28.25-(3.5))); + yy = 0 + (((tickAnim - 5) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 5) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 12) { + xx = 28.25 + (((tickAnim - 10) / 2) * (0-(28.25))); + yy = 0 + (((tickAnim - 10) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animLay(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraDiandongosuchus entity = (EntityPrehistoricFloraDiandongosuchus) entitylivingbaseIn; + int animCycle = 50; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-0.5-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -0.5 + (((tickAnim - 18) / 15) * (-0.5-(-0.5))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -0.5 + (((tickAnim - 33) / 17) * (0-(-0.5))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(root, root.rotateAngleX + (float) Math.toRadians(xx), root.rotateAngleY + (float) Math.toRadians(yy), root.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (-3.45-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (1-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 0 + (((tickAnim - 18) / 15) * (0-(0))); + yy = -3.45 + (((tickAnim - 18) / 15) * (-3.45-(-3.45))); + zz = 1 + (((tickAnim - 18) / 15) * (1-(1))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 0 + (((tickAnim - 33) / 17) * (0-(0))); + yy = -3.45 + (((tickAnim - 33) / 17) * (0-(-3.45))); + zz = 1 + (((tickAnim - 33) / 17) * (0-(1))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.root.rotationPointX = this.root.rotationPointX + (float)(xx); + this.root.rotationPointY = this.root.rotationPointY - (float)(yy); + this.root.rotationPointZ = this.root.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-0.48012-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (33.10838-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (-56.66826-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -0.48012 + (((tickAnim - 18) / 15) * (-0.48012-(-0.48012))); + yy = 33.10838 + (((tickAnim - 18) / 15) * (33.10838-(33.10838))); + zz = -56.66826 + (((tickAnim - 18) / 15) * (-56.66826-(-56.66826))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -0.48012 + (((tickAnim - 33) / 17) * (0-(-0.48012))); + yy = 33.10838 + (((tickAnim - 33) / 17) * (0-(33.10838))); + zz = -56.66826 + (((tickAnim - 33) / 17) * (0-(-56.66826))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftleg, leftleg.rotateAngleX + (float) Math.toRadians(xx), leftleg.rotateAngleY + (float) Math.toRadians(yy), leftleg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-70.13869-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (9.98708-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (92.82222-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -70.13869 + (((tickAnim - 18) / 15) * (-70.13869-(-70.13869))); + yy = 9.98708 + (((tickAnim - 18) / 15) * (9.98708-(9.98708))); + zz = 92.82222 + (((tickAnim - 18) / 15) * (92.82222-(92.82222))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -70.13869 + (((tickAnim - 33) / 17) * (0-(-70.13869))); + yy = 9.98708 + (((tickAnim - 33) / 17) * (0-(9.98708))); + zz = 92.82222 + (((tickAnim - 33) / 17) * (0-(92.82222))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftleg2, leftleg2.rotateAngleX + (float) Math.toRadians(xx), leftleg2.rotateAngleY + (float) Math.toRadians(yy), leftleg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (-2.36714-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (-2.19034-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (-6.38572-(0))); + } + else if (tickAnim >= 8 && tickAnim < 18) { + xx = -2.36714 + (((tickAnim - 8) / 10) * (0-(-2.36714))); + yy = -2.19034 + (((tickAnim - 8) / 10) * (23.5-(-2.19034))); + zz = -6.38572 + (((tickAnim - 8) / 10) * (0-(-6.38572))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 0 + (((tickAnim - 18) / 15) * (0-(0))); + yy = 23.5 + (((tickAnim - 18) / 15) * (23.5-(23.5))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 0 + (((tickAnim - 33) / 17) * (0-(0))); + yy = 23.5 + (((tickAnim - 33) / 17) * (0-(23.5))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftleg3, leftleg3.rotateAngleX + (float) Math.toRadians(xx), leftleg3.rotateAngleY + (float) Math.toRadians(yy), leftleg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-0.48012-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (-33.10838-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (56.66826-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -0.48012 + (((tickAnim - 18) / 15) * (-0.48012-(-0.48012))); + yy = -33.10838 + (((tickAnim - 18) / 15) * (-33.10838-(-33.10838))); + zz = 56.66826 + (((tickAnim - 18) / 15) * (56.66826-(56.66826))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -0.48012 + (((tickAnim - 33) / 17) * (0-(-0.48012))); + yy = -33.10838 + (((tickAnim - 33) / 17) * (0-(-33.10838))); + zz = 56.66826 + (((tickAnim - 33) / 17) * (0-(56.66826))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightleg, rightleg.rotateAngleX + (float) Math.toRadians(xx), rightleg.rotateAngleY + (float) Math.toRadians(yy), rightleg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-70.13869-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (-9.98708-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (-92.82222-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -70.13869 + (((tickAnim - 18) / 15) * (-70.13869-(-70.13869))); + yy = -9.98708 + (((tickAnim - 18) / 15) * (-9.98708-(-9.98708))); + zz = -92.82222 + (((tickAnim - 18) / 15) * (-92.82222-(-92.82222))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -70.13869 + (((tickAnim - 33) / 17) * (0-(-70.13869))); + yy = -9.98708 + (((tickAnim - 33) / 17) * (0-(-9.98708))); + zz = -92.82222 + (((tickAnim - 33) / 17) * (0-(-92.82222))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightleg2, rightleg2.rotateAngleX + (float) Math.toRadians(xx), rightleg2.rotateAngleY + (float) Math.toRadians(yy), rightleg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (-4.78967-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (2.85015-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (12.98019-(0))); + } + else if (tickAnim >= 8 && tickAnim < 18) { + xx = -4.78967 + (((tickAnim - 8) / 10) * (0-(-4.78967))); + yy = 2.85015 + (((tickAnim - 8) / 10) * (-23.5-(2.85015))); + zz = 12.98019 + (((tickAnim - 8) / 10) * (0-(12.98019))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 0 + (((tickAnim - 18) / 15) * (0-(0))); + yy = -23.5 + (((tickAnim - 18) / 15) * (-23.5-(-23.5))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 0 + (((tickAnim - 33) / 17) * (0-(0))); + yy = -23.5 + (((tickAnim - 33) / 17) * (0-(-23.5))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightleg3, rightleg3.rotateAngleX + (float) Math.toRadians(xx), rightleg3.rotateAngleY + (float) Math.toRadians(yy), rightleg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 50) { + xx = 0 + (((tickAnim - 0) / 50) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 50) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 50) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(xx), body.rotateAngleY + (float) Math.toRadians(yy), body.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 50) { + xx = 0 + (((tickAnim - 0) / 50) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 50) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 50) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(xx), body2.rotateAngleY + (float) Math.toRadians(yy), body2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (3.79632-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (1.11317-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (-19.98175-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 3.79632 + (((tickAnim - 18) / 15) * (3.79632-(3.79632))); + yy = 1.11317 + (((tickAnim - 18) / 15) * (1.11317-(1.11317))); + zz = -19.98175 + (((tickAnim - 18) / 15) * (-19.98175-(-19.98175))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 3.79632 + (((tickAnim - 33) / 17) * (0-(3.79632))); + yy = 1.11317 + (((tickAnim - 33) / 17) * (0-(1.11317))); + zz = -19.98175 + (((tickAnim - 33) / 17) * (0-(-19.98175))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm, leftArm.rotateAngleX + (float) Math.toRadians(xx), leftArm.rotateAngleY + (float) Math.toRadians(yy), leftArm.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-76.05262-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (35.49994-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (19.19789-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -76.05262 + (((tickAnim - 18) / 15) * (-76.05262-(-76.05262))); + yy = 35.49994 + (((tickAnim - 18) / 15) * (35.49994-(35.49994))); + zz = 19.19789 + (((tickAnim - 18) / 15) * (19.19789-(19.19789))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -76.05262 + (((tickAnim - 33) / 17) * (0-(-76.05262))); + yy = 35.49994 + (((tickAnim - 33) / 17) * (0-(35.49994))); + zz = 19.19789 + (((tickAnim - 33) / 17) * (0-(19.19789))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm2, leftArm2.rotateAngleX + (float) Math.toRadians(xx), leftArm2.rotateAngleY + (float) Math.toRadians(yy), leftArm2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (-0.3-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0.2-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 0 + (((tickAnim - 18) / 15) * (0-(0))); + yy = -0.3 + (((tickAnim - 18) / 15) * (-0.3-(-0.3))); + zz = 0.2 + (((tickAnim - 18) / 15) * (0.2-(0.2))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 0 + (((tickAnim - 33) / 17) * (0-(0))); + yy = -0.3 + (((tickAnim - 33) / 17) * (0-(-0.3))); + zz = 0.2 + (((tickAnim - 33) / 17) * (0-(0.2))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftArm2.rotationPointX = this.leftArm2.rotationPointX + (float)(xx); + this.leftArm2.rotationPointY = this.leftArm2.rotationPointY - (float)(yy); + this.leftArm2.rotationPointZ = this.leftArm2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-13.79545-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (-79.74852-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (-20.24823-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -13.79545 + (((tickAnim - 18) / 15) * (-13.79545-(-13.79545))); + yy = -79.74852 + (((tickAnim - 18) / 15) * (-79.74852-(-79.74852))); + zz = -20.24823 + (((tickAnim - 18) / 15) * (-20.24823-(-20.24823))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -13.79545 + (((tickAnim - 33) / 17) * (0-(-13.79545))); + yy = -79.74852 + (((tickAnim - 33) / 17) * (0-(-79.74852))); + zz = -20.24823 + (((tickAnim - 33) / 17) * (0-(-20.24823))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm3, leftArm3.rotateAngleX + (float) Math.toRadians(xx), leftArm3.rotateAngleY + (float) Math.toRadians(yy), leftArm3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (-0.34-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0.615-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (-0.17-(0))); + } + else if (tickAnim >= 10 && tickAnim < 18) { + xx = -0.34 + (((tickAnim - 10) / 8) * (-0.25-(-0.34))); + yy = 0.615 + (((tickAnim - 10) / 8) * (0.5-(0.615))); + zz = -0.17 + (((tickAnim - 10) / 8) * (-0.3-(-0.17))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -0.25 + (((tickAnim - 18) / 15) * (-0.25-(-0.25))); + yy = 0.5 + (((tickAnim - 18) / 15) * (0.5-(0.5))); + zz = -0.3 + (((tickAnim - 18) / 15) * (-0.3-(-0.3))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -0.25 + (((tickAnim - 33) / 17) * (0-(-0.25))); + yy = 0.5 + (((tickAnim - 33) / 17) * (0-(0.5))); + zz = -0.3 + (((tickAnim - 33) / 17) * (0-(-0.3))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftArm3.rotationPointX = this.leftArm3.rotationPointX + (float)(xx); + this.leftArm3.rotationPointY = this.leftArm3.rotationPointY - (float)(yy); + this.leftArm3.rotationPointZ = this.leftArm3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 50) { + xx = 0 + (((tickAnim - 0) / 50) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 50) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 50) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(xx), tail.rotateAngleY + (float) Math.toRadians(yy), tail.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (9.5-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 9.5 + (((tickAnim - 18) / 15) * (9.5-(9.5))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 9.5 + (((tickAnim - 33) / 17) * (0-(9.5))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(xx), tail2.rotateAngleY + (float) Math.toRadians(yy), tail2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (0.25-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 18) { + xx = 0.25 + (((tickAnim - 8) / 10) * (5.25-(0.25))); + yy = 0 + (((tickAnim - 8) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 10) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 5.25 + (((tickAnim - 18) / 15) * (5.25-(5.25))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 5.25 + (((tickAnim - 33) / 17) * (0-(5.25))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(xx), tail3.rotateAngleY + (float) Math.toRadians(yy), tail3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-9.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -9.75 + (((tickAnim - 18) / 15) * (-9.75-(-9.75))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -9.75 + (((tickAnim - 33) / 17) * (0-(-9.75))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(xx), tail4.rotateAngleY + (float) Math.toRadians(yy), tail4.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (3.79632-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (-1.11317-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (19.98175-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 3.79632 + (((tickAnim - 18) / 15) * (3.79632-(3.79632))); + yy = -1.11317 + (((tickAnim - 18) / 15) * (-1.11317-(-1.11317))); + zz = 19.98175 + (((tickAnim - 18) / 15) * (19.98175-(19.98175))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 3.79632 + (((tickAnim - 33) / 17) * (0-(3.79632))); + yy = -1.11317 + (((tickAnim - 33) / 17) * (0-(-1.11317))); + zz = 19.98175 + (((tickAnim - 33) / 17) * (0-(19.98175))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm, rightArm.rotateAngleX + (float) Math.toRadians(xx), rightArm.rotateAngleY + (float) Math.toRadians(yy), rightArm.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-76.05262-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (-35.49994-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (-19.19789-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -76.05262 + (((tickAnim - 18) / 15) * (-76.05262-(-76.05262))); + yy = -35.49994 + (((tickAnim - 18) / 15) * (-35.49994-(-35.49994))); + zz = -19.19789 + (((tickAnim - 18) / 15) * (-19.19789-(-19.19789))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -76.05262 + (((tickAnim - 33) / 17) * (0-(-76.05262))); + yy = -35.49994 + (((tickAnim - 33) / 17) * (0-(-35.49994))); + zz = -19.19789 + (((tickAnim - 33) / 17) * (0-(-19.19789))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm2, rightArm2.rotateAngleX + (float) Math.toRadians(xx), rightArm2.rotateAngleY + (float) Math.toRadians(yy), rightArm2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (-0.3-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0.2-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 0 + (((tickAnim - 18) / 15) * (0-(0))); + yy = -0.3 + (((tickAnim - 18) / 15) * (-0.3-(-0.3))); + zz = 0.2 + (((tickAnim - 18) / 15) * (0.2-(0.2))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 0 + (((tickAnim - 33) / 17) * (0-(0))); + yy = -0.3 + (((tickAnim - 33) / 17) * (0-(-0.3))); + zz = 0.2 + (((tickAnim - 33) / 17) * (0-(0.2))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightArm2.rotationPointX = this.rightArm2.rotationPointX + (float)(xx); + this.rightArm2.rotationPointY = this.rightArm2.rotationPointY - (float)(yy); + this.rightArm2.rotationPointZ = this.rightArm2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-13.79545-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (79.74852-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (20.24823-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -13.79545 + (((tickAnim - 18) / 15) * (-13.79545-(-13.79545))); + yy = 79.74852 + (((tickAnim - 18) / 15) * (79.74852-(79.74852))); + zz = 20.24823 + (((tickAnim - 18) / 15) * (20.24823-(20.24823))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -13.79545 + (((tickAnim - 33) / 17) * (0-(-13.79545))); + yy = 79.74852 + (((tickAnim - 33) / 17) * (0-(79.74852))); + zz = 20.24823 + (((tickAnim - 33) / 17) * (0-(20.24823))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm3, rightArm3.rotateAngleX + (float) Math.toRadians(xx), rightArm3.rotateAngleY + (float) Math.toRadians(yy), rightArm3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (0.34-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0.615-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0.17-(0))); + } + else if (tickAnim >= 10 && tickAnim < 18) { + xx = 0.34 + (((tickAnim - 10) / 8) * (-0.25-(0.34))); + yy = 0.615 + (((tickAnim - 10) / 8) * (0.5-(0.615))); + zz = 0.17 + (((tickAnim - 10) / 8) * (-0.3-(0.17))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -0.25 + (((tickAnim - 18) / 15) * (-0.25-(-0.25))); + yy = 0.5 + (((tickAnim - 18) / 15) * (0.5-(0.5))); + zz = -0.3 + (((tickAnim - 18) / 15) * (-0.3-(-0.3))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -0.25 + (((tickAnim - 33) / 17) * (0-(-0.25))); + yy = 0.5 + (((tickAnim - 33) / 17) * (0-(0.5))); + zz = -0.3 + (((tickAnim - 33) / 17) * (0-(-0.3))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightArm3.rotationPointX = this.rightArm3.rotationPointX + (float)(xx); + this.rightArm3.rotationPointY = this.rightArm3.rotationPointY - (float)(yy); + this.rightArm3.rotationPointZ = this.rightArm3.rotationPointZ + (float)(zz); + + + } + public void animEat(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraDiandongosuchus entity = (EntityPrehistoricFloraDiandongosuchus) entitylivingbaseIn; + int animCycle = 20; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (15-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 15 + (((tickAnim - 10) / 10) * (0-(15))); + yy = 0 + (((tickAnim - 10) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + + this.setRotateAngle(neck2, neck2.rotateAngleX + (float) Math.toRadians(0), neck2.rotateAngleY + (float) Math.toRadians(0), neck2.rotateAngleZ + (float) Math.toRadians(0)); + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (19.5-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = 19.5 + (((tickAnim - 5) / 5) * (4-(19.5))); + yy = 0 + (((tickAnim - 5) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 5) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 4 + (((tickAnim - 10) / 10) * (0-(4))); + yy = 0 + (((tickAnim - 10) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck3, neck3.rotateAngleX + (float) Math.toRadians(xx), neck3.rotateAngleY + (float) Math.toRadians(yy), neck3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0.11-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0.435-(0))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = 0 + (((tickAnim - 5) / 5) * (0-(0))); + yy = 0.11 + (((tickAnim - 5) / 5) * (0.025-(0.11))); + zz = 0.435 + (((tickAnim - 5) / 5) * (0.325-(0.435))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 0 + (((tickAnim - 10) / 10) * (0-(0))); + yy = 0.025 + (((tickAnim - 10) / 10) * (0-(0.025))); + zz = 0.325 + (((tickAnim - 10) / 10) * (0-(0.325))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.neck3.rotationPointX = this.neck3.rotationPointX + (float)(xx); + this.neck3.rotationPointY = this.neck3.rotationPointY - (float)(yy); + this.neck3.rotationPointZ = this.neck3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 0 + (((tickAnim - 0) / 7) * (11.5-(0))); + yy = 0 + (((tickAnim - 0) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = 11.5 + (((tickAnim - 7) / 3) * (0-(11.5))); + yy = 0 + (((tickAnim - 7) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animSwim(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraDiandongosuchus entity = (EntityPrehistoricFloraDiandongosuchus) entitylivingbaseIn; + int animCycle = 30; + double tickAnim = (entity.ticksExisted + entity.getTickOffset()) - (int) (Math.floor((double) (entity.ticksExisted + entity.getTickOffset()) / (double) animCycle) * (double) animCycle) + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + this.setRotateAngle(root, root.rotateAngleX + (float) Math.toRadians(0), root.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240))*2), root.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(leftleg, leftleg.rotateAngleX + (float) Math.toRadians(1.30509), leftleg.rotateAngleY + (float) Math.toRadians(-68.3549842412+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-50))*2), leftleg.rotateAngleZ + (float) Math.toRadians(-7.9309)); + + + this.setRotateAngle(leftleg2, leftleg2.rotateAngleX + (float) Math.toRadians(0), leftleg2.rotateAngleY + (float) Math.toRadians(0), leftleg2.rotateAngleZ + (float) Math.toRadians(-23.5)); + + + this.setRotateAngle(leftleg3, leftleg3.rotateAngleX + (float) Math.toRadians(0), leftleg3.rotateAngleY + (float) Math.toRadians(-99.5+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-50))*4), leftleg3.rotateAngleZ + (float) Math.toRadians(0)); + this.leftleg3.rotationPointX = this.leftleg3.rotationPointX + (float)(-0.3); + this.leftleg3.rotationPointY = this.leftleg3.rotationPointY - (float)(0); + this.leftleg3.rotationPointZ = this.leftleg3.rotationPointZ + (float)(-0.425); + + + this.setRotateAngle(rightleg, rightleg.rotateAngleX + (float) Math.toRadians(1.30509), rightleg.rotateAngleY + (float) Math.toRadians(68.3549842412+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-50))*2), rightleg.rotateAngleZ + (float) Math.toRadians(7.9309)); + + + this.setRotateAngle(rightleg2, rightleg2.rotateAngleX + (float) Math.toRadians(0), rightleg2.rotateAngleY + (float) Math.toRadians(0), rightleg2.rotateAngleZ + (float) Math.toRadians(23.5)); + + + this.setRotateAngle(rightleg3, rightleg3.rotateAngleX + (float) Math.toRadians(0), rightleg3.rotateAngleY + (float) Math.toRadians(99.5+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-50))*4), rightleg3.rotateAngleZ + (float) Math.toRadians(0)); + this.rightleg3.rotationPointX = this.rightleg3.rotationPointX + (float)(-0.3); + this.rightleg3.rotationPointY = this.rightleg3.rotationPointY - (float)(0); + this.rightleg3.rotationPointZ = this.rightleg3.rotationPointZ + (float)(-0.425); + + + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(0), body.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-50))*-2), body.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(0), body2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-150))*2), body2.rotateAngleZ + (float) Math.toRadians(0)); + this.body2.rotationPointX = this.body2.rotationPointX + (float)(0); + this.body2.rotationPointY = this.body2.rotationPointY - (float)(0); + this.body2.rotationPointZ = this.body2.rotationPointZ + (float)(0.15); + + + this.setRotateAngle(leftArm, leftArm.rotateAngleX + (float) Math.toRadians(0), leftArm.rotateAngleY + (float) Math.toRadians(-34), leftArm.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(leftArm2, leftArm2.rotateAngleX + (float) Math.toRadians(-0.81087), leftArm2.rotateAngleY + (float) Math.toRadians(-57.06912), leftArm2.rotateAngleZ + (float) Math.toRadians(-27.06684)); + + + this.setRotateAngle(leftArm3, leftArm3.rotateAngleX + (float) Math.toRadians(0), leftArm3.rotateAngleY + (float) Math.toRadians(-136.5+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-50))*-4), leftArm3.rotateAngleZ + (float) Math.toRadians(0)); + this.leftArm3.rotationPointX = this.leftArm3.rotationPointX + (float)(0); + this.leftArm3.rotationPointY = this.leftArm3.rotationPointY - (float)(0.675); + this.leftArm3.rotationPointZ = this.leftArm3.rotationPointZ + (float)(-0.65); + + + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(0), neck.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-200))*2), neck.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(neck2, neck2.rotateAngleX + (float) Math.toRadians(0), neck2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-220))*-2), neck2.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(neck3, neck3.rotateAngleX + (float) Math.toRadians(0), neck3.rotateAngleY + (float) Math.toRadians(0), neck3.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(5.25), tail.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-50))*4), tail.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(7.25), tail2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-100))*13), tail2.rotateAngleZ + (float) Math.toRadians(0)); + this.tail2.rotationPointX = this.tail2.rotationPointX + (float)(0); + this.tail2.rotationPointY = this.tail2.rotationPointY - (float)(0); + this.tail2.rotationPointZ = this.tail2.rotationPointZ + (float)(-0.2); + + + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(-2), tail3.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-150))*16), tail3.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(-5.5), tail4.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-220))*20), tail4.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(rightArm, rightArm.rotateAngleX + (float) Math.toRadians(0), rightArm.rotateAngleY + (float) Math.toRadians(34), rightArm.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(rightArm2, rightArm2.rotateAngleX + (float) Math.toRadians(-0.81087), rightArm2.rotateAngleY + (float) Math.toRadians(57.06912), rightArm2.rotateAngleZ + (float) Math.toRadians(27.06684)); + + + this.setRotateAngle(rightArm3, rightArm3.rotateAngleX + (float) Math.toRadians(0), rightArm3.rotateAngleY + (float) Math.toRadians(136.5+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-50))*-4), rightArm3.rotateAngleZ + (float) Math.toRadians(0)); + this.rightArm3.rotationPointX = this.rightArm3.rotationPointX + (float)(0); + this.rightArm3.rotationPointY = this.rightArm3.rotationPointY - (float)(0.675); + this.rightArm3.rotationPointZ = this.rightArm3.rotationPointZ + (float)(-0.65); + + + } + public void animWalking(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraDiandongosuchus entity = (EntityPrehistoricFloraDiandongosuchus) entitylivingbaseIn; + int animCycle = 30; + double tickAnim = (entity.ticksExisted + entity.getTickOffset()) - (int) (Math.floor((double) (entity.ticksExisted + entity.getTickOffset()) / (double) animCycle) * (double) animCycle) + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + this.setRotateAngle(root, root.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5+20))*-2), root.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240+20))*-2), root.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-90))*-2)); + this.root.rotationPointX = this.root.rotationPointX + (float)(0); + this.root.rotationPointY = this.root.rotationPointY - (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-50))*-0.2); + this.root.rotationPointZ = this.root.rotationPointZ + (float)(0); + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (-15.5-(0))); + yy = -47 + (((tickAnim - 0) / 3) * (-65.5-(-47))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 10) { + xx = -15.5 + (((tickAnim - 3) / 7) * (-11.32537-(-15.5))); + yy = -65.5 + (((tickAnim - 3) / 7) * (-18.85973-(-65.5))); + zz = 0 + (((tickAnim - 3) / 7) * (-41.18277-(0))); + } + else if (tickAnim >= 10 && tickAnim < 16) { + xx = -11.32537 + (((tickAnim - 10) / 6) * (-5.98375-(-11.32537))); + yy = -18.85973 + (((tickAnim - 10) / 6) * (25.58456-(-18.85973))); + zz = -41.18277 + (((tickAnim - 10) / 6) * (8.25008-(-41.18277))); + } + else if (tickAnim >= 16 && tickAnim < 30) { + xx = -5.98375 + (((tickAnim - 16) / 14) * (0-(-5.98375))); + yy = 25.58456 + (((tickAnim - 16) / 14) * (-47-(25.58456))); + zz = 8.25008 + (((tickAnim - 16) / 14) * (0-(8.25008))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftleg, leftleg.rotateAngleX + (float) Math.toRadians(xx), leftleg.rotateAngleY + (float) Math.toRadians(yy), leftleg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (-12.5-(0))); + } + else if (tickAnim >= 3 && tickAnim < 10) { + xx = 0 + (((tickAnim - 3) / 7) * (-19.85622-(0))); + yy = 0 + (((tickAnim - 3) / 7) * (22.31337-(0))); + zz = -12.5 + (((tickAnim - 3) / 7) * (21.57183-(-12.5))); + } + else if (tickAnim >= 10 && tickAnim < 16) { + xx = -19.85622 + (((tickAnim - 10) / 6) * (2.82213-(-19.85622))); + yy = 22.31337 + (((tickAnim - 10) / 6) * (-10.12608-(22.31337))); + zz = 21.57183 + (((tickAnim - 10) / 6) * (-7.12885-(21.57183))); + } + else if (tickAnim >= 16 && tickAnim < 30) { + xx = 2.82213 + (((tickAnim - 16) / 14) * (0-(2.82213))); + yy = -10.12608 + (((tickAnim - 16) / 14) * (0-(-10.12608))); + zz = -7.12885 + (((tickAnim - 16) / 14) * (0-(-7.12885))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftleg2, leftleg2.rotateAngleX + (float) Math.toRadians(xx), leftleg2.rotateAngleY + (float) Math.toRadians(yy), leftleg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = -34.25 + (((tickAnim - 0) / 3) * (-61-(-34.25))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = 0 + (((tickAnim - 3) / 4) * (-147.28855-(0))); + yy = -61 + (((tickAnim - 3) / 4) * (-82.21673-(-61))); + zz = 0 + (((tickAnim - 3) / 4) * (147.2813-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = -147.28855 + (((tickAnim - 7) / 3) * (-46.12015-(-147.28855))); + yy = -82.21673 + (((tickAnim - 7) / 3) * (-89.15742-(-82.21673))); + zz = 147.2813 + (((tickAnim - 7) / 3) * (39.68155-(147.2813))); + } + else if (tickAnim >= 10 && tickAnim < 16) { + xx = -46.12015 + (((tickAnim - 10) / 6) * (-16.3282-(-46.12015))); + yy = -89.15742 + (((tickAnim - 10) / 6) * (-14.91629-(-89.15742))); + zz = 39.68155 + (((tickAnim - 10) / 6) * (-3.79435-(39.68155))); + } + else if (tickAnim >= 16 && tickAnim < 23) { + xx = -16.3282 + (((tickAnim - 16) / 7) * (-8.62257-(-16.3282))); + yy = -14.91629 + (((tickAnim - 16) / 7) * (8.86765-(-14.91629))); + zz = -3.79435 + (((tickAnim - 16) / 7) * (-4.34003-(-3.79435))); + } + else if (tickAnim >= 23 && tickAnim < 30) { + xx = -8.62257 + (((tickAnim - 23) / 7) * (0-(-8.62257))); + yy = 8.86765 + (((tickAnim - 23) / 7) * (-34.25-(8.86765))); + zz = -4.34003 + (((tickAnim - 23) / 7) * (0-(-4.34003))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftleg3, leftleg3.rotateAngleX + (float) Math.toRadians(xx), leftleg3.rotateAngleY + (float) Math.toRadians(yy), leftleg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = -0.05 + (((tickAnim - 0) / 3) * (-0.525-(-0.05))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0.225 + (((tickAnim - 0) / 3) * (0-(0.225))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = -0.525 + (((tickAnim - 3) / 4) * (-0.525-(-0.525))); + yy = 0 + (((tickAnim - 3) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 4) * (-0.435-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = -0.525 + (((tickAnim - 7) / 3) * (-0.425-(-0.525))); + yy = 0 + (((tickAnim - 7) / 3) * (0-(0))); + zz = -0.435 + (((tickAnim - 7) / 3) * (-0.575-(-0.435))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = -0.425 + (((tickAnim - 10) / 3) * (-0.765-(-0.425))); + yy = 0 + (((tickAnim - 10) / 3) * (0-(0))); + zz = -0.575 + (((tickAnim - 10) / 3) * (-0.1-(-0.575))); + } + else if (tickAnim >= 13 && tickAnim < 16) { + xx = -0.765 + (((tickAnim - 13) / 3) * (0.475-(-0.765))); + yy = 0 + (((tickAnim - 13) / 3) * (0-(0))); + zz = -0.1 + (((tickAnim - 13) / 3) * (0-(-0.1))); + } + else if (tickAnim >= 16 && tickAnim < 23) { + xx = 0.475 + (((tickAnim - 16) / 7) * (-0.04-(0.475))); + yy = 0 + (((tickAnim - 16) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 16) / 7) * (0.185-(0))); + } + else if (tickAnim >= 23 && tickAnim < 30) { + xx = -0.04 + (((tickAnim - 23) / 7) * (-0.05-(-0.04))); + yy = 0 + (((tickAnim - 23) / 7) * (0-(0))); + zz = 0.185 + (((tickAnim - 23) / 7) * (0.225-(0.185))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftleg3.rotationPointX = this.leftleg3.rotationPointX + (float)(xx); + this.leftleg3.rotationPointY = this.leftleg3.rotationPointY - (float)(yy); + this.leftleg3.rotationPointZ = this.leftleg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = -5.98375 + (((tickAnim - 0) / 18) * (-15.5-(-5.98375))); + yy = -25.58456 + (((tickAnim - 0) / 18) * (65.5-(-25.58456))); + zz = -8.25008 + (((tickAnim - 0) / 18) * (0-(-8.25008))); + } + else if (tickAnim >= 18 && tickAnim < 24) { + xx = -15.5 + (((tickAnim - 18) / 6) * (-11.32537-(-15.5))); + yy = 65.5 + (((tickAnim - 18) / 6) * (18.85973-(65.5))); + zz = 0 + (((tickAnim - 18) / 6) * (41.18277-(0))); + } + else if (tickAnim >= 24 && tickAnim < 30) { + xx = -11.32537 + (((tickAnim - 24) / 6) * (-5.98375-(-11.32537))); + yy = 18.85973 + (((tickAnim - 24) / 6) * (-25.58456-(18.85973))); + zz = 41.18277 + (((tickAnim - 24) / 6) * (-8.25008-(41.18277))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightleg, rightleg.rotateAngleX + (float) Math.toRadians(xx), rightleg.rotateAngleY + (float) Math.toRadians(yy), rightleg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 2.82213 + (((tickAnim - 0) / 18) * (0-(2.82213))); + yy = 10.12608 + (((tickAnim - 0) / 18) * (0-(10.12608))); + zz = 7.12885 + (((tickAnim - 0) / 18) * (12.5-(7.12885))); + } + else if (tickAnim >= 18 && tickAnim < 24) { + xx = 0 + (((tickAnim - 18) / 6) * (-19.85622-(0))); + yy = 0 + (((tickAnim - 18) / 6) * (-22.31337-(0))); + zz = 12.5 + (((tickAnim - 18) / 6) * (-21.57183-(12.5))); + } + else if (tickAnim >= 24 && tickAnim < 30) { + xx = -19.85622 + (((tickAnim - 24) / 6) * (2.82213-(-19.85622))); + yy = -22.31337 + (((tickAnim - 24) / 6) * (10.12608-(-22.31337))); + zz = -21.57183 + (((tickAnim - 24) / 6) * (7.12885-(-21.57183))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightleg2, rightleg2.rotateAngleX + (float) Math.toRadians(xx), rightleg2.rotateAngleY + (float) Math.toRadians(yy), rightleg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = -0.175 + (((tickAnim - 0) / 18) * (0-(-0.175))); + yy = -0.1 + (((tickAnim - 0) / 18) * (0-(-0.1))); + zz = 0.35 + (((tickAnim - 0) / 18) * (0-(0.35))); + } + else if (tickAnim >= 18 && tickAnim < 30) { + xx = 0 + (((tickAnim - 18) / 12) * (-0.175-(0))); + yy = 0 + (((tickAnim - 18) / 12) * (-0.1-(0))); + zz = 0 + (((tickAnim - 18) / 12) * (0.35-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightleg2.rotationPointX = this.rightleg2.rotationPointX + (float)(xx); + this.rightleg2.rotationPointY = this.rightleg2.rotationPointY - (float)(yy); + this.rightleg2.rotationPointZ = this.rightleg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = -16.3282 + (((tickAnim - 0) / 8) * (4.02967-(-16.3282))); + yy = 14.91629 + (((tickAnim - 0) / 8) * (-14.81489-(14.91629))); + zz = 3.79435 + (((tickAnim - 0) / 8) * (-0.21207-(3.79435))); + } + else if (tickAnim >= 8 && tickAnim < 18) { + xx = 4.02967 + (((tickAnim - 8) / 10) * (0-(4.02967))); + yy = -14.81489 + (((tickAnim - 8) / 10) * (61-(-14.81489))); + zz = -0.21207 + (((tickAnim - 8) / 10) * (0-(-0.21207))); + } + else if (tickAnim >= 18 && tickAnim < 21) { + xx = 0 + (((tickAnim - 18) / 3) * (-147.28855-(0))); + yy = 61 + (((tickAnim - 18) / 3) * (82.21673-(61))); + zz = 0 + (((tickAnim - 18) / 3) * (-147.2813-(0))); + } + else if (tickAnim >= 21 && tickAnim < 24) { + xx = -147.28855 + (((tickAnim - 21) / 3) * (-46.12015-(-147.28855))); + yy = 82.21673 + (((tickAnim - 21) / 3) * (89.15742-(82.21673))); + zz = -147.2813 + (((tickAnim - 21) / 3) * (-39.68155-(-147.2813))); + } + else if (tickAnim >= 24 && tickAnim < 30) { + xx = -46.12015 + (((tickAnim - 24) / 6) * (-16.3282-(-46.12015))); + yy = 89.15742 + (((tickAnim - 24) / 6) * (14.91629-(89.15742))); + zz = -39.68155 + (((tickAnim - 24) / 6) * (3.79435-(-39.68155))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightleg3, rightleg3.rotateAngleX + (float) Math.toRadians(xx), rightleg3.rotateAngleY + (float) Math.toRadians(yy), rightleg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = -0.5 + (((tickAnim - 0) / 8) * (0.325-(-0.5))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0.25-(0))); + } + else if (tickAnim >= 8 && tickAnim < 14) { + xx = 0.325 + (((tickAnim - 8) / 6) * (0.2-(0.325))); + yy = 0 + (((tickAnim - 8) / 6) * (0-(0))); + zz = 0.25 + (((tickAnim - 8) / 6) * (0.45-(0.25))); + } + else if (tickAnim >= 14 && tickAnim < 18) { + xx = 0.2 + (((tickAnim - 14) / 4) * (-0.525-(0.2))); + yy = 0 + (((tickAnim - 14) / 4) * (0-(0))); + zz = 0.45 + (((tickAnim - 14) / 4) * (0-(0.45))); + } + else if (tickAnim >= 18 && tickAnim < 21) { + xx = -0.525 + (((tickAnim - 18) / 3) * (0.525-(-0.525))); + yy = 0 + (((tickAnim - 18) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 3) * (-0.435-(0))); + } + else if (tickAnim >= 21 && tickAnim < 24) { + xx = 0.525 + (((tickAnim - 21) / 3) * (0.425-(0.525))); + yy = 0 + (((tickAnim - 21) / 3) * (0-(0))); + zz = -0.435 + (((tickAnim - 21) / 3) * (-0.225-(-0.435))); + } + else if (tickAnim >= 24 && tickAnim < 28) { + xx = 0.425 + (((tickAnim - 24) / 4) * (0.435-(0.425))); + yy = 0 + (((tickAnim - 24) / 4) * (0-(0))); + zz = -0.225 + (((tickAnim - 24) / 4) * (-0.1-(-0.225))); + } + else if (tickAnim >= 28 && tickAnim < 30) { + xx = 0.435 + (((tickAnim - 28) / 2) * (-0.5-(0.435))); + yy = 0 + (((tickAnim - 28) / 2) * (0-(0))); + zz = -0.1 + (((tickAnim - 28) / 2) * (0-(-0.1))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightleg3.rotationPointX = this.rightleg3.rotationPointX + (float)(xx); + this.rightleg3.rotationPointY = this.rightleg3.rotationPointY - (float)(yy); + this.rightleg3.rotationPointZ = this.rightleg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5))*2), body.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240+20))*2), body.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-150))*-2)); + + + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-50))*-2), body2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240+50))*2), body2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-220))*-2)); + + + + if (tickAnim >= 0 && tickAnim < 15) { + xx = 0 + (((tickAnim - 0) / 15) * (3.10641-(0))); + yy = 59 + (((tickAnim - 0) / 15) * (-34.55564-(59))); + zz = 0 + (((tickAnim - 0) / 15) * (-3.28856-(0))); + } + else if (tickAnim >= 15 && tickAnim < 21) { + xx = 3.10641 + (((tickAnim - 15) / 6) * (6.34348-(3.10641))); + yy = -34.55564 + (((tickAnim - 15) / 6) * (16.13216-(-34.55564))); + zz = -3.28856 + (((tickAnim - 15) / 6) * (-24.39276-(-3.28856))); + } + else if (tickAnim >= 21 && tickAnim < 30) { + xx = 6.34348 + (((tickAnim - 21) / 9) * (0-(6.34348))); + yy = 16.13216 + (((tickAnim - 21) / 9) * (59-(16.13216))); + zz = -24.39276 + (((tickAnim - 21) / 9) * (0-(-24.39276))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm, leftArm.rotateAngleX + (float) Math.toRadians(xx), leftArm.rotateAngleY + (float) Math.toRadians(yy), leftArm.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 15) { + xx = -45.28681 + (((tickAnim - 0) / 15) * (10.75-(-45.28681))); + yy = -27.51442 + (((tickAnim - 0) / 15) * (-5.25-(-27.51442))); + zz = 42.17811 + (((tickAnim - 0) / 15) * (-34.25-(42.17811))); + } + else if (tickAnim >= 15 && tickAnim < 21) { + xx = 10.75 + (((tickAnim - 15) / 6) * (-14.90139-(10.75))); + yy = -5.25 + (((tickAnim - 15) / 6) * (-26.87771-(-5.25))); + zz = -34.25 + (((tickAnim - 15) / 6) * (-4.47404-(-34.25))); + } + else if (tickAnim >= 21 && tickAnim < 26) { + xx = -14.90139 + (((tickAnim - 21) / 5) * (-69.03518-(-14.90139))); + yy = -26.87771 + (((tickAnim - 21) / 5) * (-4.8234-(-26.87771))); + zz = -4.47404 + (((tickAnim - 21) / 5) * (36.03127-(-4.47404))); + } + else if (tickAnim >= 26 && tickAnim < 30) { + xx = -69.03518 + (((tickAnim - 26) / 4) * (-45.28681-(-69.03518))); + yy = -4.8234 + (((tickAnim - 26) / 4) * (-27.51442-(-4.8234))); + zz = 36.03127 + (((tickAnim - 26) / 4) * (42.17811-(36.03127))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm2, leftArm2.rotateAngleX + (float) Math.toRadians(xx), leftArm2.rotateAngleY + (float) Math.toRadians(yy), leftArm2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (0-(0))); + yy = -0.325 + (((tickAnim - 0) / 8) * (-0.385-(-0.325))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = 0 + (((tickAnim - 8) / 7) * (0-(0))); + yy = -0.385 + (((tickAnim - 8) / 7) * (0-(-0.385))); + zz = 0 + (((tickAnim - 8) / 7) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 30) { + xx = 0 + (((tickAnim - 15) / 15) * (0-(0))); + yy = 0 + (((tickAnim - 15) / 15) * (-0.325-(0))); + zz = 0 + (((tickAnim - 15) / 15) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftArm2.rotationPointX = this.leftArm2.rotationPointX + (float)(xx); + this.leftArm2.rotationPointY = this.leftArm2.rotationPointY - (float)(yy); + this.leftArm2.rotationPointZ = this.leftArm2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (9.1338-(0))); + yy = -34 + (((tickAnim - 0) / 8) * (-15.98207-(-34))); + zz = 0 + (((tickAnim - 0) / 8) * (16.05847-(0))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = 9.1338 + (((tickAnim - 8) / 7) * (0-(9.1338))); + yy = -15.98207 + (((tickAnim - 8) / 7) * (-82-(-15.98207))); + zz = 16.05847 + (((tickAnim - 8) / 7) * (0-(16.05847))); + } + else if (tickAnim >= 15 && tickAnim < 21) { + xx = 0 + (((tickAnim - 15) / 6) * (0-(0))); + yy = -82 + (((tickAnim - 15) / 6) * (-113.83-(-82))); + zz = 0 + (((tickAnim - 15) / 6) * (0-(0))); + } + else if (tickAnim >= 21 && tickAnim < 26) { + xx = 0 + (((tickAnim - 21) / 5) * (30.82947-(0))); + yy = -113.83 + (((tickAnim - 21) / 5) * (-122.92002-(-113.83))); + zz = 0 + (((tickAnim - 21) / 5) * (-31.77877-(0))); + } + else if (tickAnim >= 26 && tickAnim < 30) { + xx = 30.82947 + (((tickAnim - 26) / 4) * (0-(30.82947))); + yy = -122.92002 + (((tickAnim - 26) / 4) * (-34-(-122.92002))); + zz = -31.77877 + (((tickAnim - 26) / 4) * (0-(-31.77877))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm3, leftArm3.rotateAngleX + (float) Math.toRadians(xx), leftArm3.rotateAngleY + (float) Math.toRadians(yy), leftArm3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (-0.25-(0))); + yy = 0.1 + (((tickAnim - 0) / 8) * (0.05-(0.1))); + zz = 0 + (((tickAnim - 0) / 8) * (0.135-(0))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = -0.25 + (((tickAnim - 8) / 7) * (-0.5-(-0.25))); + yy = 0.05 + (((tickAnim - 8) / 7) * (1.1-(0.05))); + zz = 0.135 + (((tickAnim - 8) / 7) * (-0.175-(0.135))); + } + else if (tickAnim >= 15 && tickAnim < 21) { + xx = -0.5 + (((tickAnim - 15) / 6) * (-0.22-(-0.5))); + yy = 1.1 + (((tickAnim - 15) / 6) * (1.54-(1.1))); + zz = -0.175 + (((tickAnim - 15) / 6) * (-0.08-(-0.175))); + } + else if (tickAnim >= 21 && tickAnim < 26) { + xx = -0.22 + (((tickAnim - 21) / 5) * (-0.45-(-0.22))); + yy = 1.54 + (((tickAnim - 21) / 5) * (1.3-(1.54))); + zz = -0.08 + (((tickAnim - 21) / 5) * (-0.49-(-0.08))); + } + else if (tickAnim >= 26 && tickAnim < 30) { + xx = -0.45 + (((tickAnim - 26) / 4) * (0-(-0.45))); + yy = 1.3 + (((tickAnim - 26) / 4) * (0.1-(1.3))); + zz = -0.49 + (((tickAnim - 26) / 4) * (0-(-0.49))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftArm3.rotationPointX = this.leftArm3.rotationPointX + (float)(xx); + this.leftArm3.rotationPointY = this.leftArm3.rotationPointY - (float)(yy); + this.leftArm3.rotationPointZ = this.leftArm3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-50))*1), neck.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240+100))*-2), neck.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-320))*-2)); + + + this.setRotateAngle(neck2, neck2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-100))*-1), neck2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240+150))*2), neck2.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(neck3, neck3.rotateAngleX + (float) Math.toRadians(0), neck3.rotateAngleY + (float) Math.toRadians(0), neck3.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5+20))*2), tail.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240+20))*2), tail.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-90))*-2)); + + + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(0), tail2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240+50))*-1), tail2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-90))*-2)); + + + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(0), tail3.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240+100))*3), tail3.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-90))*-2)); + + + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(0), tail4.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240+50))*6), tail4.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-90))*-2)); + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 3.10641 + (((tickAnim - 0) / 8) * (6.34348-(3.10641))); + yy = 34.55564 + (((tickAnim - 0) / 8) * (-16.13216-(34.55564))); + zz = 3.28856 + (((tickAnim - 0) / 8) * (24.39276-(3.28856))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = 6.34348 + (((tickAnim - 8) / 7) * (0-(6.34348))); + yy = -16.13216 + (((tickAnim - 8) / 7) * (-59-(-16.13216))); + zz = 24.39276 + (((tickAnim - 8) / 7) * (0-(24.39276))); + } + else if (tickAnim >= 15 && tickAnim < 30) { + xx = 0 + (((tickAnim - 15) / 15) * (3.10641-(0))); + yy = -59 + (((tickAnim - 15) / 15) * (34.55564-(-59))); + zz = 0 + (((tickAnim - 15) / 15) * (3.28856-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm, rightArm.rotateAngleX + (float) Math.toRadians(xx), rightArm.rotateAngleY + (float) Math.toRadians(yy), rightArm.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = 10.75 + (((tickAnim - 0) / 6) * (-14.90139-(10.75))); + yy = 5.25 + (((tickAnim - 0) / 6) * (26.87771-(5.25))); + zz = 34.25 + (((tickAnim - 0) / 6) * (4.47404-(34.25))); + } + else if (tickAnim >= 6 && tickAnim < 11) { + xx = -14.90139 + (((tickAnim - 6) / 5) * (-69.03518-(-14.90139))); + yy = 26.87771 + (((tickAnim - 6) / 5) * (4.8234-(26.87771))); + zz = 4.47404 + (((tickAnim - 6) / 5) * (-36.03127-(4.47404))); + } + else if (tickAnim >= 11 && tickAnim < 15) { + xx = -69.03518 + (((tickAnim - 11) / 4) * (-45.28681-(-69.03518))); + yy = 4.8234 + (((tickAnim - 11) / 4) * (27.51442-(4.8234))); + zz = -36.03127 + (((tickAnim - 11) / 4) * (-42.17811-(-36.03127))); + } + else if (tickAnim >= 15 && tickAnim < 30) { + xx = -45.28681 + (((tickAnim - 15) / 15) * (10.75-(-45.28681))); + yy = 27.51442 + (((tickAnim - 15) / 15) * (5.25-(27.51442))); + zz = -42.17811 + (((tickAnim - 15) / 15) * (34.25-(-42.17811))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm2, rightArm2.rotateAngleX + (float) Math.toRadians(xx), rightArm2.rotateAngleY + (float) Math.toRadians(yy), rightArm2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 15) { + xx = 0 + (((tickAnim - 0) / 15) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 15) * (-0.325-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 30) { + xx = 0 + (((tickAnim - 15) / 15) * (0-(0))); + yy = -0.325 + (((tickAnim - 15) / 15) * (0-(-0.325))); + zz = 0 + (((tickAnim - 15) / 15) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightArm2.rotationPointX = this.rightArm2.rotationPointX + (float)(xx); + this.rightArm2.rotationPointY = this.rightArm2.rotationPointY - (float)(yy); + this.rightArm2.rotationPointZ = this.rightArm2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = 0 + (((tickAnim - 0) / 6) * (0-(0))); + yy = 82 + (((tickAnim - 0) / 6) * (113.83-(82))); + zz = 0 + (((tickAnim - 0) / 6) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 11) { + xx = 0 + (((tickAnim - 6) / 5) * (30.82947-(0))); + yy = 113.83 + (((tickAnim - 6) / 5) * (122.92002-(113.83))); + zz = 0 + (((tickAnim - 6) / 5) * (31.77877-(0))); + } + else if (tickAnim >= 11 && tickAnim < 15) { + xx = 30.82947 + (((tickAnim - 11) / 4) * (0-(30.82947))); + yy = 122.92002 + (((tickAnim - 11) / 4) * (34-(122.92002))); + zz = 31.77877 + (((tickAnim - 11) / 4) * (0-(31.77877))); + } + else if (tickAnim >= 15 && tickAnim < 23) { + xx = 0 + (((tickAnim - 15) / 8) * (9.24354-(0))); + yy = 34 + (((tickAnim - 15) / 8) * (13.0985-(34))); + zz = 0 + (((tickAnim - 15) / 8) * (-17.35596-(0))); + } + else if (tickAnim >= 23 && tickAnim < 30) { + xx = 9.24354 + (((tickAnim - 23) / 7) * (0-(9.24354))); + yy = 13.0985 + (((tickAnim - 23) / 7) * (82-(13.0985))); + zz = -17.35596 + (((tickAnim - 23) / 7) * (0-(-17.35596))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm3, rightArm3.rotateAngleX + (float) Math.toRadians(xx), rightArm3.rotateAngleY + (float) Math.toRadians(yy), rightArm3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = 0.5 + (((tickAnim - 0) / 6) * (0.72-(0.5))); + yy = 1.1 + (((tickAnim - 0) / 6) * (1.54-(1.1))); + zz = -0.175 + (((tickAnim - 0) / 6) * (-0.08-(-0.175))); + } + else if (tickAnim >= 6 && tickAnim < 11) { + xx = 0.72 + (((tickAnim - 6) / 5) * (0.45-(0.72))); + yy = 1.54 + (((tickAnim - 6) / 5) * (1.3-(1.54))); + zz = -0.08 + (((tickAnim - 6) / 5) * (-0.49-(-0.08))); + } + else if (tickAnim >= 11 && tickAnim < 15) { + xx = 0.45 + (((tickAnim - 11) / 4) * (0-(0.45))); + yy = 1.3 + (((tickAnim - 11) / 4) * (0.1-(1.3))); + zz = -0.49 + (((tickAnim - 11) / 4) * (0-(-0.49))); + } + else if (tickAnim >= 15 && tickAnim < 23) { + xx = 0 + (((tickAnim - 15) / 8) * (0-(0))); + yy = 0.1 + (((tickAnim - 15) / 8) * (0.125-(0.1))); + zz = 0 + (((tickAnim - 15) / 8) * (0-(0))); + } + else if (tickAnim >= 23 && tickAnim < 30) { + xx = 0 + (((tickAnim - 23) / 7) * (0.5-(0))); + yy = 0.125 + (((tickAnim - 23) / 7) * (1.1-(0.125))); + zz = 0 + (((tickAnim - 23) / 7) * (-0.175-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightArm3.rotationPointX = this.rightArm3.rotationPointX + (float)(xx); + this.rightArm3.rotationPointY = this.rightArm3.rotationPointY - (float)(yy); + this.rightArm3.rotationPointZ = this.rightArm3.rotationPointZ + (float)(zz); + + } + public void animSwimFast(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraDiandongosuchus entity = (EntityPrehistoricFloraDiandongosuchus) entitylivingbaseIn; + int animCycle = 15; + double tickAnim = (entity.ticksExisted + entity.getTickOffset()) - (int) (Math.floor((double) (entity.ticksExisted + entity.getTickOffset()) / (double) animCycle) * (double) animCycle) + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + this.setRotateAngle(root, root.rotateAngleX + (float) Math.toRadians(0), root.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480))*4), root.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(leftleg, leftleg.rotateAngleX + (float) Math.toRadians(1.30509), leftleg.rotateAngleY + (float) Math.toRadians(-68.3549842412+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-50))*2), leftleg.rotateAngleZ + (float) Math.toRadians(-7.9309)); + + + this.setRotateAngle(leftleg2, leftleg2.rotateAngleX + (float) Math.toRadians(0), leftleg2.rotateAngleY + (float) Math.toRadians(0), leftleg2.rotateAngleZ + (float) Math.toRadians(-23.5)); + + + this.setRotateAngle(leftleg3, leftleg3.rotateAngleX + (float) Math.toRadians(0), leftleg3.rotateAngleY + (float) Math.toRadians(-99.5+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-50))*4), leftleg3.rotateAngleZ + (float) Math.toRadians(0)); + this.leftleg3.rotationPointX = this.leftleg3.rotationPointX + (float)(-0.3); + this.leftleg3.rotationPointY = this.leftleg3.rotationPointY - (float)(0); + this.leftleg3.rotationPointZ = this.leftleg3.rotationPointZ + (float)(-0.425); + + + this.setRotateAngle(rightleg, rightleg.rotateAngleX + (float) Math.toRadians(1.30509), rightleg.rotateAngleY + (float) Math.toRadians(68.3549842412+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-50))*2), rightleg.rotateAngleZ + (float) Math.toRadians(7.9309)); + + + this.setRotateAngle(rightleg2, rightleg2.rotateAngleX + (float) Math.toRadians(0), rightleg2.rotateAngleY + (float) Math.toRadians(0), rightleg2.rotateAngleZ + (float) Math.toRadians(23.5)); + + + this.setRotateAngle(rightleg3, rightleg3.rotateAngleX + (float) Math.toRadians(0), rightleg3.rotateAngleY + (float) Math.toRadians(99.5+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-50))*4), rightleg3.rotateAngleZ + (float) Math.toRadians(0)); + this.rightleg3.rotationPointX = this.rightleg3.rotationPointX + (float)(-0.3); + this.rightleg3.rotationPointY = this.rightleg3.rotationPointY - (float)(0); + this.rightleg3.rotationPointZ = this.rightleg3.rotationPointZ + (float)(-0.425); + + + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(0), body.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-50))*-4), body.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(0), body2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-150))*4), body2.rotateAngleZ + (float) Math.toRadians(0)); + this.body2.rotationPointX = this.body2.rotationPointX + (float)(0); + this.body2.rotationPointY = this.body2.rotationPointY - (float)(0); + this.body2.rotationPointZ = this.body2.rotationPointZ + (float)(0.15); + + + this.setRotateAngle(leftArm, leftArm.rotateAngleX + (float) Math.toRadians(0), leftArm.rotateAngleY + (float) Math.toRadians(-34), leftArm.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(leftArm2, leftArm2.rotateAngleX + (float) Math.toRadians(-0.81087), leftArm2.rotateAngleY + (float) Math.toRadians(-57.06912), leftArm2.rotateAngleZ + (float) Math.toRadians(-27.06684)); + + + this.setRotateAngle(leftArm3, leftArm3.rotateAngleX + (float) Math.toRadians(0), leftArm3.rotateAngleY + (float) Math.toRadians(-136.5+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-50))*-4), leftArm3.rotateAngleZ + (float) Math.toRadians(0)); + this.leftArm3.rotationPointX = this.leftArm3.rotationPointX + (float)(0); + this.leftArm3.rotationPointY = this.leftArm3.rotationPointY - (float)(0.675); + this.leftArm3.rotationPointZ = this.leftArm3.rotationPointZ + (float)(-0.65); + + + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(0), neck.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-200))*2), neck.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(neck2, neck2.rotateAngleX + (float) Math.toRadians(0), neck2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-220))*-2), neck2.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(neck3, neck3.rotateAngleX + (float) Math.toRadians(0), neck3.rotateAngleY + (float) Math.toRadians(0), neck3.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(5.25), tail.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-50))*4), tail.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(7.25), tail2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-100))*18), tail2.rotateAngleZ + (float) Math.toRadians(0)); + this.tail2.rotationPointX = this.tail2.rotationPointX + (float)(0); + this.tail2.rotationPointY = this.tail2.rotationPointY - (float)(0); + this.tail2.rotationPointZ = this.tail2.rotationPointZ + (float)(-0.425); + + + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(-2), tail3.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-150))*25), tail3.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(-5.5), tail4.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-200))*35), tail4.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(rightArm, rightArm.rotateAngleX + (float) Math.toRadians(0), rightArm.rotateAngleY + (float) Math.toRadians(34), rightArm.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(rightArm2, rightArm2.rotateAngleX + (float) Math.toRadians(-0.81087), rightArm2.rotateAngleY + (float) Math.toRadians(57.06912), rightArm2.rotateAngleZ + (float) Math.toRadians(27.06684)); + + + this.setRotateAngle(rightArm3, rightArm3.rotateAngleX + (float) Math.toRadians(0), rightArm3.rotateAngleY + (float) Math.toRadians(136.5+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-50))*-4), rightArm3.rotateAngleZ + (float) Math.toRadians(0)); + this.rightArm3.rotationPointX = this.rightArm3.rotationPointX + (float)(0); + this.rightArm3.rotationPointY = this.rightArm3.rotationPointY - (float)(0.675); + this.rightArm3.rotationPointZ = this.rightArm3.rotationPointZ + (float)(-0.65); + + } + + + + + public void animate(IAnimatedEntity entity, float f, float f1, float f2, float f3, float f4, float f5) { + EntityPrehistoricFloraDiandongosuchus e = (EntityPrehistoricFloraDiandongosuchus) entity; + animator.update(entity); + +// animator.setAnimation(e.EAT_ANIMATION); //10 ticks +// animator.startKeyframe(4); +// animator.rotate(this.upperbody2, (float) Math.toRadians(10), (float) Math.toRadians(0), (float) Math.toRadians(0)); +// animator.rotate(this.upperbody, (float) Math.toRadians(7.5), (float) Math.toRadians(0), (float) Math.toRadians(0)); +// animator.rotate(this.neck, (float) Math.toRadians(30), (float) Math.toRadians(0), (float) Math.toRadians(0)); +// animator.rotate(this.head, (float) Math.toRadians(15), (float) Math.toRadians(0), (float) Math.toRadians(0)); +// animator.rotate(this.jaw, (float) Math.toRadians(25), (float) Math.toRadians(0), (float) Math.toRadians(0)); +// animator.endKeyframe(); +// animator.setStaticKeyframe(3); +// animator.resetKeyframe(3); + + } +} diff --git a/src/main/java/net/lepidodendron/entity/model/entity/ModelDyoplax.java b/src/main/java/net/lepidodendron/entity/model/entity/ModelDyoplax.java new file mode 100644 index 0000000000..7e9314bd3b --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/model/entity/ModelDyoplax.java @@ -0,0 +1,2610 @@ +package net.lepidodendron.entity.model.entity; + +import net.ilexiconn.llibrary.client.model.ModelAnimator; +import net.ilexiconn.llibrary.client.model.tools.AdvancedModelRenderer; +import net.ilexiconn.llibrary.server.animation.IAnimatedEntity; +import net.lepidodendron.entity.EntityPrehistoricFloraDyoplax; +import net.lepidodendron.entity.model.ModelBasePalaeopedia; +import net.minecraft.client.model.ModelBox; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; + +public class ModelDyoplax extends ModelBasePalaeopedia { + private final AdvancedModelRenderer main; + private final AdvancedModelRenderer backLeftLeg; + private final AdvancedModelRenderer backLeftLeg2; + private final AdvancedModelRenderer backLeftLeg3; + private final AdvancedModelRenderer backRightLeg; + private final AdvancedModelRenderer backRightLeg2; + private final AdvancedModelRenderer backRightLeg3; + private final AdvancedModelRenderer tail; + private final AdvancedModelRenderer tail2; + private final AdvancedModelRenderer tail3; + private final AdvancedModelRenderer cube_r1; + private final AdvancedModelRenderer tail4; + private final AdvancedModelRenderer body; + private final AdvancedModelRenderer body2; + private final AdvancedModelRenderer frontLeftLeg; + private final AdvancedModelRenderer frontLeftLeg2; + private final AdvancedModelRenderer frontLeftLeg3; + private final AdvancedModelRenderer frontRightLeg; + private final AdvancedModelRenderer frontRightLeg2; + private final AdvancedModelRenderer frontRightLeg3; + private final AdvancedModelRenderer neck; + private final AdvancedModelRenderer cube_r2; + private final AdvancedModelRenderer head; + private final AdvancedModelRenderer cube_r3; + private final AdvancedModelRenderer cube_r4; + private final AdvancedModelRenderer cube_r5; + private final AdvancedModelRenderer cube_r6; + private final AdvancedModelRenderer cube_r7; + private final AdvancedModelRenderer cube_r8; + private final AdvancedModelRenderer cube_r9; + private final AdvancedModelRenderer jaw; + private final AdvancedModelRenderer cube_r10; + private final AdvancedModelRenderer cube_r11; + + private ModelAnimator animator; + + public ModelDyoplax() { + this.textureWidth = 64; + this.textureHeight = 64; + + this.main = new AdvancedModelRenderer(this); + this.main.setRotationPoint(0.0F, 14.2875F, 5.0F); + this.main.cubeList.add(new ModelBox(main, 23, 14, -2.0F, -1.0375F, -3.0F, 4, 4, 6, 0.0F, false)); + this.main.cubeList.add(new ModelBox(main, 38, 25, -1.0F, -1.4625F, -3.0F, 2, 1, 6, -0.001F, false)); + + this.backLeftLeg = new AdvancedModelRenderer(this); + this.backLeftLeg.setRotationPoint(2.0F, 0.6042F, -0.5455F); + this.main.addChild(backLeftLeg); + this.setRotateAngle(backLeftLeg, -0.0873F, 0.0F, 0.0F); + this.backLeftLeg.cubeList.add(new ModelBox(backLeftLeg, 43, 44, -1.0F, -0.5F, -1.5F, 2, 5, 3, 0.0F, false)); + + this.backLeftLeg2 = new AdvancedModelRenderer(this); + this.backLeftLeg2.setRotationPoint(1.0F, 4.5F, -1.5F); + this.backLeftLeg.addChild(backLeftLeg2); + this.setRotateAngle(backLeftLeg2, 0.5236F, 0.0F, 0.0F); + this.backLeftLeg2.cubeList.add(new ModelBox(backLeftLeg2, 0, 52, -2.0F, 0.0F, 0.0F, 2, 5, 2, -0.001F, false)); + + this.backLeftLeg3 = new AdvancedModelRenderer(this); + this.backLeftLeg3.setRotationPoint(0.0F, 4.6826F, 1.2435F); + this.backLeftLeg2.addChild(backLeftLeg3); + this.setRotateAngle(backLeftLeg3, -0.4363F, 0.0F, 0.0F); + this.backLeftLeg3.cubeList.add(new ModelBox(backLeftLeg3, 44, 18, -2.5F, 0.0F, -3.5F, 3, 1, 4, 0.0F, false)); + + this.backRightLeg = new AdvancedModelRenderer(this); + this.backRightLeg.setRotationPoint(-2.0F, 0.6042F, -0.5455F); + this.main.addChild(backRightLeg); + this.setRotateAngle(backRightLeg, -0.0873F, 0.0F, 0.0F); + this.backRightLeg.cubeList.add(new ModelBox(backRightLeg, 43, 44, -1.0F, -0.5F, -1.5F, 2, 5, 3, 0.0F, true)); + + this.backRightLeg2 = new AdvancedModelRenderer(this); + this.backRightLeg2.setRotationPoint(-1.0F, 4.5F, -1.5F); + this.backRightLeg.addChild(backRightLeg2); + this.setRotateAngle(backRightLeg2, 0.5236F, 0.0F, 0.0F); + this.backRightLeg2.cubeList.add(new ModelBox(backRightLeg2, 0, 52, 0.0F, 0.0F, 0.0F, 2, 5, 2, -0.001F, true)); + + this.backRightLeg3 = new AdvancedModelRenderer(this); + this.backRightLeg3.setRotationPoint(0.0F, 4.6826F, 1.2435F); + this.backRightLeg2.addChild(backRightLeg3); + this.setRotateAngle(backRightLeg3, -0.4363F, 0.0F, 0.0F); + this.backRightLeg3.cubeList.add(new ModelBox(backRightLeg3, 44, 18, -0.5F, 0.0F, -3.5F, 3, 1, 4, 0.0F, true)); + + this.tail = new AdvancedModelRenderer(this); + this.tail.setRotationPoint(0.0F, -0.9375F, 2.5F); + this.main.addChild(tail); + this.setRotateAngle(tail, -0.1309F, 0.0F, 0.0F); + this.tail.cubeList.add(new ModelBox(tail, 19, 25, -1.5F, 0.0F, 0.0F, 3, 3, 6, 0.0F, false)); + this.tail.cubeList.add(new ModelBox(tail, 15, 44, -0.5F, -0.5F, 0.0F, 1, 1, 6, -0.001F, false)); + + this.tail2 = new AdvancedModelRenderer(this); + this.tail2.setRotationPoint(0.0F, 0.075F, 5.5F); + this.tail.addChild(tail2); + this.setRotateAngle(tail2, -0.0873F, 0.0F, 0.0F); + this.tail2.cubeList.add(new ModelBox(tail2, 27, 0, -1.0F, 0.075F, 0.0F, 2, 2, 7, 0.0F, false)); + this.tail2.cubeList.add(new ModelBox(tail2, 34, 35, -0.5F, -0.5F, 0.0F, 1, 1, 7, -0.002F, false)); + + this.tail3 = new AdvancedModelRenderer(this); + this.tail3.setRotationPoint(0.0F, 0.45F, 6.5F); + this.tail2.addChild(tail3); + this.setRotateAngle(tail3, 0.1309F, 0.0F, 0.0F); + this.tail3.cubeList.add(new ModelBox(tail3, 17, 35, -0.5F, -0.025F, 0.0F, 1, 1, 7, 0.0F, false)); + + this.cube_r1 = new AdvancedModelRenderer(this); + this.cube_r1.setRotationPoint(0.0F, -0.775F, 0.5F); + this.tail3.addChild(cube_r1); + this.setRotateAngle(cube_r1, -0.0873F, 0.0F, 0.0F); + this.cube_r1.cubeList.add(new ModelBox(cube_r1, 0, 43, 0.0F, 0.0F, -0.5F, 0, 1, 7, 0.0F, false)); + + this.tail4 = new AdvancedModelRenderer(this); + this.tail4.setRotationPoint(0.0F, 0.5F, 7.0F); + this.tail3.addChild(tail4); + this.setRotateAngle(tail4, 0.1309F, 0.0F, 0.0F); + this.tail4.cubeList.add(new ModelBox(tail4, 44, 10, -0.5F, -0.525F, 0.0F, 1, 1, 6, 0.001F, false)); + + this.body = new AdvancedModelRenderer(this); + this.body.setRotationPoint(0.0F, -1.0375F, -2.5F); + this.main.addChild(body); + this.setRotateAngle(body, 0.1309F, 0.0F, 0.0F); + this.body.cubeList.add(new ModelBox(body, 0, 0, -2.5F, -0.25F, -8.0F, 5, 5, 8, 0.0F, false)); + this.body.cubeList.add(new ModelBox(body, 0, 14, -1.5F, -0.5F, -8.0F, 3, 1, 8, -0.001F, false)); + + this.body2 = new AdvancedModelRenderer(this); + this.body2.setRotationPoint(0.0F, 0.0F, -7.25F); + this.body.addChild(body2); + this.setRotateAngle(body2, -0.1309F, 0.0F, 0.0F); + this.body2.cubeList.add(new ModelBox(body2, 0, 34, -2.0F, 0.0F, -4.0F, 4, 4, 4, 0.0F, false)); + this.body2.cubeList.add(new ModelBox(body2, 30, 44, -1.0F, -0.325F, -4.0F, 2, 1, 4, 0.0F, false)); + + this.frontLeftLeg = new AdvancedModelRenderer(this); + this.frontLeftLeg.setRotationPoint(2.0F, 3.0381F, -2.1913F); + this.body2.addChild(frontLeftLeg); + this.setRotateAngle(frontLeftLeg, 0.3927F, 0.0F, 0.0F); + this.frontLeftLeg.cubeList.add(new ModelBox(frontLeftLeg, 9, 52, -1.0F, -0.5F, -1.0F, 2, 4, 2, 0.0F, false)); + + this.frontLeftLeg2 = new AdvancedModelRenderer(this); + this.frontLeftLeg2.setRotationPoint(-0.5F, 3.5F, 1.0F); + this.frontLeftLeg.addChild(frontLeftLeg2); + this.setRotateAngle(frontLeftLeg2, -0.7854F, 0.0F, 0.0F); + this.frontLeftLeg2.cubeList.add(new ModelBox(frontLeftLeg2, 18, 52, -0.5F, 0.0F, -2.0F, 2, 4, 2, -0.001F, false)); + + this.frontLeftLeg3 = new AdvancedModelRenderer(this); + this.frontLeftLeg3.setRotationPoint(0.0F, 3.3169F, -0.4612F); + this.frontLeftLeg2.addChild(frontLeftLeg3); + this.setRotateAngle(frontLeftLeg3, 0.3927F, 0.0F, 0.0F); + this.frontLeftLeg3.cubeList.add(new ModelBox(frontLeftLeg3, 51, 33, -1.0F, 0.0F, -3.0F, 3, 1, 3, 0.0F, false)); + + this.frontRightLeg = new AdvancedModelRenderer(this); + this.frontRightLeg.setRotationPoint(-2.0F, 3.0381F, -2.1913F); + this.body2.addChild(frontRightLeg); + this.setRotateAngle(frontRightLeg, 0.3927F, 0.0F, 0.0F); + this.frontRightLeg.cubeList.add(new ModelBox(frontRightLeg, 9, 52, -1.0F, -0.5F, -1.0F, 2, 4, 2, 0.0F, true)); + + this.frontRightLeg2 = new AdvancedModelRenderer(this); + this.frontRightLeg2.setRotationPoint(0.5F, 3.5F, 1.0F); + this.frontRightLeg.addChild(frontRightLeg2); + this.setRotateAngle(frontRightLeg2, -0.7854F, 0.0F, 0.0F); + this.frontRightLeg2.cubeList.add(new ModelBox(frontRightLeg2, 18, 52, -1.5F, 0.0F, -2.0F, 2, 4, 2, -0.001F, true)); + + this.frontRightLeg3 = new AdvancedModelRenderer(this); + this.frontRightLeg3.setRotationPoint(0.0F, 3.3169F, -0.4612F); + this.frontRightLeg2.addChild(frontRightLeg3); + this.setRotateAngle(frontRightLeg3, 0.3927F, 0.0F, 0.0F); + this.frontRightLeg3.cubeList.add(new ModelBox(frontRightLeg3, 51, 33, -2.0F, 0.0F, -3.0F, 3, 1, 3, 0.0F, true)); + + this.neck = new AdvancedModelRenderer(this); + this.neck.setRotationPoint(0.0F, 0.1544F, -3.017F); + this.body2.addChild(neck); + this.setRotateAngle(neck, -0.1309F, 0.0F, 0.0F); + this.neck.cubeList.add(new ModelBox(neck, 0, 24, -1.5F, 0.0F, -6.0F, 3, 3, 6, -0.01F, false)); + + this.cube_r2 = new AdvancedModelRenderer(this); + this.cube_r2.setRotationPoint(0.0F, -0.3F, 0.0F); + this.neck.addChild(cube_r2); + this.setRotateAngle(cube_r2, 0.0524F, 0.0F, 0.0F); + this.cube_r2.cubeList.add(new ModelBox(cube_r2, 46, 0, -1.0F, -0.075F, -4.975F, 2, 1, 4, -0.001F, false)); + + this.head = new AdvancedModelRenderer(this); + this.head.setRotationPoint(0.0F, 0.0033F, -5.983F); + this.neck.addChild(head); + this.setRotateAngle(head, 0.1745F, 0.0F, 0.0F); + this.head.cubeList.add(new ModelBox(head, 56, 53, -0.5F, 0.85F, -5.525F, 1, 1, 2, -0.001F, false)); + this.head.cubeList.add(new ModelBox(head, 54, 44, -0.5F, 0.85F, -3.8F, 1, 1, 2, 0.001F, false)); + this.head.cubeList.add(new ModelBox(head, 27, 53, -1.5F, 0.85F, -1.8F, 3, 1, 2, 0.001F, false)); + this.head.cubeList.add(new ModelBox(head, 55, 24, 0.4F, 1.15F, -5.475F, 0, 1, 3, 0.0F, false)); + this.head.cubeList.add(new ModelBox(head, 55, 24, -0.4F, 1.15F, -5.475F, 0, 1, 3, 0.0F, true)); + + this.cube_r3 = new AdvancedModelRenderer(this); + this.cube_r3.setRotationPoint(0.0F, 0.6475F, -3.9447F); + this.head.addChild(cube_r3); + this.setRotateAngle(cube_r3, 0.1134F, 0.0F, 0.0F); + this.cube_r3.cubeList.add(new ModelBox(cube_r3, 57, 6, -0.5F, 0.0F, -1.6F, 1, 1, 2, 0.0F, false)); + + this.cube_r4 = new AdvancedModelRenderer(this); + this.cube_r4.setRotationPoint(1.5F, -0.15F, -0.025F); + this.head.addChild(cube_r4); + this.setRotateAngle(cube_r4, 0.2007F, 0.0F, 0.0F); + this.cube_r4.cubeList.add(new ModelBox(cube_r4, 47, 53, -2.0F, 0.0F, -4.0F, 1, 1, 2, 0.003F, false)); + + this.cube_r5 = new AdvancedModelRenderer(this); + this.cube_r5.setRotationPoint(0.5F, 0.2487F, -1.9848F); + this.head.addChild(cube_r5); + this.setRotateAngle(cube_r5, 0.1178F, 0.0F, 0.0F); + this.cube_r5.cubeList.add(new ModelBox(cube_r5, 46, 6, -2.0F, 0.0F, 0.0F, 3, 1, 2, 0.0F, false)); + + this.cube_r6 = new AdvancedModelRenderer(this); + this.cube_r6.setRotationPoint(-0.65F, 0.9951F, -2.3681F); + this.head.addChild(cube_r6); + this.setRotateAngle(cube_r6, 0.1082F, -0.4476F, 0.4447F); + this.cube_r6.cubeList.add(new ModelBox(cube_r6, 38, 10, -0.7F, -0.5F, -0.4F, 1, 1, 1, 0.0F, true)); + + this.cube_r7 = new AdvancedModelRenderer(this); + this.cube_r7.setRotationPoint(-1.5F, 1.35F, -1.8F); + this.head.addChild(cube_r7); + this.setRotateAngle(cube_r7, 0.0F, -0.3491F, 0.0F); + this.cube_r7.cubeList.add(new ModelBox(cube_r7, 46, 58, 0.0F, -0.5F, -3.0F, 1, 1, 3, 0.003F, true)); + + this.cube_r8 = new AdvancedModelRenderer(this); + this.cube_r8.setRotationPoint(1.5F, 1.35F, -1.8F); + this.head.addChild(cube_r8); + this.setRotateAngle(cube_r8, 0.0F, 0.3491F, 0.0F); + this.cube_r8.cubeList.add(new ModelBox(cube_r8, 46, 58, -1.0F, -0.5F, -3.0F, 1, 1, 3, 0.003F, false)); + + this.cube_r9 = new AdvancedModelRenderer(this); + this.cube_r9.setRotationPoint(0.65F, 0.9951F, -2.3681F); + this.head.addChild(cube_r9); + this.setRotateAngle(cube_r9, 0.1082F, 0.4476F, -0.4447F); + this.cube_r9.cubeList.add(new ModelBox(cube_r9, 38, 10, -0.3F, -0.5F, -0.4F, 1, 1, 1, 0.0F, false)); + + this.jaw = new AdvancedModelRenderer(this); + this.jaw.setRotationPoint(0.0F, 1.85F, -0.025F); + this.head.addChild(jaw); + this.jaw.cubeList.add(new ModelBox(jaw, 55, 29, -0.5F, 0.0F, -5.475F, 1, 1, 2, -0.003F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 32, 57, -0.5F, 0.0F, -3.75F, 1, 1, 2, -0.002F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 27, 10, -1.5F, 0.0F, -1.75F, 3, 1, 2, 0.0F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 54, 48, 0.35F, -0.2F, -5.45F, 0, 1, 3, 0.0F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 54, 48, -0.35F, -0.2F, -5.45F, 0, 1, 3, 0.0F, true)); + this.jaw.cubeList.add(new ModelBox(jaw, 51, 38, -1.0F, -1.25F, -1.9F, 2, 2, 3, -0.004F, false)); + + this.cube_r10 = new AdvancedModelRenderer(this); + this.cube_r10.setRotationPoint(-1.5027F, 1.002F, -1.749F); + this.jaw.addChild(cube_r10); + this.setRotateAngle(cube_r10, 0.0F, -0.3491F, 0.0F); + this.cube_r10.cubeList.add(new ModelBox(cube_r10, 38, 53, 0.0F, -1.0F, -3.0F, 1, 1, 3, -0.006F, true)); + + this.cube_r11 = new AdvancedModelRenderer(this); + this.cube_r11.setRotationPoint(1.5027F, 1.002F, -1.749F); + this.jaw.addChild(cube_r11); + this.setRotateAngle(cube_r11, 0.0F, 0.3491F, 0.0F); + this.cube_r11.cubeList.add(new ModelBox(cube_r11, 38, 53, -1.0F, -1.0F, -3.0F, 1, 1, 3, -0.006F, false)); + + updateDefaultPose(); + animator = ModelAnimator.create(); + } + + @Override + public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { + animate((IAnimatedEntity) entity, f, f1, f2, f3, f4, f5); + this.main.render(f5); + } + + @Override + public void renderStaticBook(float f) { + //Rotations, positions and sizing: + this.main.offsetY = 0.2F; + this.main.offsetX = 0.35F; + this.main.offsetZ = 2.0F; + this.main.rotateAngleY = (float)Math.toRadians(120); + this.main.rotateAngleX = (float)Math.toRadians(1); + this.main.rotateAngleZ = (float)Math.toRadians(0); + this.main.scaleChildren = true; + float scaler = 0.6F; + this.main.setScale(scaler, scaler, scaler); + //Start of pose: + + //End of pose, now render the model: + this.main.render(f); + //Reset rotations, positions and sizing: + this.main.setScale(1.0F, 1.0F, 1.0F); + this.main.scaleChildren = false; + resetToDefaultPose(); + + } + + public void renderStaticWall(float f) { + resetToDefaultPose(); + } + + public void renderStaticFloor(float f) { + this.main.offsetY = -0.105F; + this.main.render(0.01F); + resetToDefaultPose(); + } + + public void setRotateAngle(AdvancedModelRenderer AdvancedModelRenderer, float x, float y, float z) { + AdvancedModelRenderer.rotateAngleX = x; + AdvancedModelRenderer.rotateAngleY = y; + AdvancedModelRenderer.rotateAngleZ = z; + } + + @Override + public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity e) { + super.setRotationAngles(f, f1, f2, f3, f4, f5, e); + //this.resetToDefaultPose(); + + EntityPrehistoricFloraDyoplax EntityMegalosaurus = (EntityPrehistoricFloraDyoplax) e; + + this.faceTarget(f3, f4, 8, neck); + this.faceTarget(f3, f4, 8, head); + + AdvancedModelRenderer[] Tail = {this.tail, this.tail2, this.tail3, this.tail4}; + AdvancedModelRenderer[] Neck = {this.neck, this.head}; + + EntityMegalosaurus.tailBuffer.applyChainSwingBuffer(Tail); + + if (EntityMegalosaurus.getAnimation() == EntityMegalosaurus.LAY_ANIMATION) { + this.chainSwing(Neck, 0.5F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.5F * 2, -0.02F, 0.5F, f2, 0.8F); + } + else { + if (!EntityMegalosaurus.isReallyInWater()) { + + if (f3 == 0.0F || !EntityMegalosaurus.getIsMoving()) { + this.chainSwing(Neck, 0.05F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.05F * 2, -0.02F, 0.5F, f2, 0.8F); + + this.chainWave(Tail, (0.15F * 0.35F), 0.125F * 0.15F, 0.2F, f2, 1F); + this.chainSwing(Tail, (0.15F * 0.35F) * 4F, 0.05F * 0.35F, 0.12F, f2, 1F); + return; + } + + if (EntityMegalosaurus.getIsFast()) { //Running + + + } else { //Walking + + } + } else { + //Swimming pose: + if (f3 == 0.0F) { //static in water + return; + } + //moving in water + return; + } + } + } + + public void animAttack(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraDyoplax entity = (EntityPrehistoricFloraDyoplax) entitylivingbaseIn; + int animCycle = 10; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (12.5-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = 12.5 + (((tickAnim - 3) / 4) * (-8.75-(12.5))); + yy = 0 + (((tickAnim - 3) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 4) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = -8.75 + (((tickAnim - 7) / 3) * (0-(-8.75))); + yy = 0 + (((tickAnim - 7) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (-18.5-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 5) { + xx = -18.5 + (((tickAnim - 3) / 2) * (-22.4-(-18.5))); + yy = 0 + (((tickAnim - 3) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 2) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 7) { + xx = -22.4 + (((tickAnim - 5) / 2) * (0-(-22.4))); + yy = 0 + (((tickAnim - 5) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 2) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = 0 + (((tickAnim - 7) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 7) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0.475-(0))); + } + else if (tickAnim >= 3 && tickAnim < 10) { + xx = 0 + (((tickAnim - 3) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 3) / 7) * (0-(0))); + zz = 0.475 + (((tickAnim - 3) / 7) * (0-(0.475))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.head.rotationPointX = this.head.rotationPointX + (float)(xx); + this.head.rotationPointY = this.head.rotationPointY - (float)(yy); + this.head.rotationPointZ = this.head.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (4.25-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 5) { + xx = 4.25 + (((tickAnim - 3) / 2) * (26-(4.25))); + yy = 0 + (((tickAnim - 3) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 2) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 7) { + xx = 26 + (((tickAnim - 5) / 2) * (0-(26))); + yy = 0 + (((tickAnim - 5) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animEat(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraDyoplax entity = (EntityPrehistoricFloraDyoplax) entitylivingbaseIn; + int animCycle = 20; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (36.63-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 36.63 + (((tickAnim - 8) / 2) * (28.5-(36.63))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 28.5 + (((tickAnim - 10) / 10) * (0-(28.5))); + yy = 0 + (((tickAnim - 10) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.neck.rotationPointX = this.neck.rotationPointX + (float)(xx); + this.neck.rotationPointY = this.neck.rotationPointY - (float)(yy); + this.neck.rotationPointZ = this.neck.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (32.13-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 8) { + xx = 32.13 + (((tickAnim - 5) / 3) * (11.19-(32.13))); + yy = 0 + (((tickAnim - 5) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 3) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 11.19 + (((tickAnim - 8) / 2) * (22.25-(11.19))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 22.25 + (((tickAnim - 10) / 10) * (0-(22.25))); + yy = 0 + (((tickAnim - 10) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 8) { + xx = 0 + (((tickAnim - 5) / 3) * (32.75-(0))); + yy = 0 + (((tickAnim - 5) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 3) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 32.75 + (((tickAnim - 8) / 2) * (0-(32.75))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 0 + (((tickAnim - 10) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 10) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animRoar(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraDyoplax entity = (EntityPrehistoricFloraDyoplax) entitylivingbaseIn; + int animCycle = 30; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 18) { + xx = -14.95+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50-30))*-30 + (((tickAnim - 0) / 18) * (-2.1-(-14.95+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50-30))*-30))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 30) { + xx = -2.1 + (((tickAnim - 18) / 12) * (0-(-2.1))); + yy = 0 + (((tickAnim - 18) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 12) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 12) { + xx = 0 + (((tickAnim - 0) / 12) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 12) * (0.45-(0))); + } + else if (tickAnim >= 12 && tickAnim < 30) { + xx = 0 + (((tickAnim - 12) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 12) / 18) * (0-(0))); + zz = 0.45 + (((tickAnim - 12) / 18) * (0-(0.45))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.neck.rotationPointX = this.neck.rotationPointX + (float)(xx); + this.neck.rotationPointY = this.neck.rotationPointY - (float)(yy); + this.neck.rotationPointZ = this.neck.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (33.625+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-50-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 30) { + xx = 33.625+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-50 + (((tickAnim - 18) / 12) * (0-(33.625+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-50))); + yy = 0 + (((tickAnim - 18) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 12) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (70.7+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80))*-50-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 21) { + xx = 70.7+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80))*-50 + (((tickAnim - 18) / 3) * (0-(70.7+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80))*-50))); + yy = 0 + (((tickAnim - 18) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 3) * (0-(0))); + } + else if (tickAnim >= 21 && tickAnim < 30) { + xx = 0 + (((tickAnim - 21) / 9) * (0-(0))); + yy = 0 + (((tickAnim - 21) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 21) / 9) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animNest(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraDyoplax entity = (EntityPrehistoricFloraDyoplax) entitylivingbaseIn; + int animCycle = 50; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 15) { + xx = 0 + (((tickAnim - 0) / 15) * (-25.35395-(0))); + yy = 0 + (((tickAnim - 0) / 15) * (-16.44463-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (-7.51672-(0))); + } + else if (tickAnim >= 15 && tickAnim < 24) { + xx = -25.35395 + (((tickAnim - 15) / 9) * (15.36576-(-25.35395))); + yy = -16.44463 + (((tickAnim - 15) / 9) * (-16.97536-(-16.44463))); + zz = -7.51672 + (((tickAnim - 15) / 9) * (-28.35428-(-7.51672))); + } + else if (tickAnim >= 24 && tickAnim < 35) { + xx = 15.36576 + (((tickAnim - 24) / 11) * (53.27976-(15.36576))); + yy = -16.97536 + (((tickAnim - 24) / 11) * (-16.42963-(-16.97536))); + zz = -28.35428 + (((tickAnim - 24) / 11) * (-17.68323-(-28.35428))); + } + else if (tickAnim >= 35 && tickAnim < 50) { + xx = 53.27976 + (((tickAnim - 35) / 15) * (0-(53.27976))); + yy = -16.42963 + (((tickAnim - 35) / 15) * (0-(-16.42963))); + zz = -17.68323 + (((tickAnim - 35) / 15) * (0-(-17.68323))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 15) { + xx = 0 + (((tickAnim - 0) / 15) * (-22.5-(0))); + yy = 0 + (((tickAnim - 0) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 24) { + xx = -22.5 + (((tickAnim - 15) / 9) * (0-(-22.5))); + yy = 0 + (((tickAnim - 15) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 15) / 9) * (0-(0))); + } + else if (tickAnim >= 24 && tickAnim < 35) { + xx = 0 + (((tickAnim - 24) / 11) * (16.25-(0))); + yy = 0 + (((tickAnim - 24) / 11) * (0-(0))); + zz = 0 + (((tickAnim - 24) / 11) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 50) { + xx = 16.25 + (((tickAnim - 35) / 15) * (0-(16.25))); + yy = 0 + (((tickAnim - 35) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 15) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 15) { + xx = 0 + (((tickAnim - 0) / 15) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 43) { + xx = 0 + (((tickAnim - 15) / 28) * (0-(0))); + yy = 0 + (((tickAnim - 15) / 28) * (0.75-(0))); + zz = 0 + (((tickAnim - 15) / 28) * (0-(0))); + } + else if (tickAnim >= 43 && tickAnim < 50) { + xx = 0 + (((tickAnim - 43) / 7) * (0-(0))); + yy = 0.75 + (((tickAnim - 43) / 7) * (0-(0.75))); + zz = 0 + (((tickAnim - 43) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg2.rotationPointX = this.backLeftLeg2.rotationPointX + (float)(xx); + this.backLeftLeg2.rotationPointY = this.backLeftLeg2.rotationPointY - (float)(yy); + this.backLeftLeg2.rotationPointZ = this.backLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 15) { + xx = 0 + (((tickAnim - 0) / 15) * (61.25-(0))); + yy = 0 + (((tickAnim - 0) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 24) { + xx = 61.25 + (((tickAnim - 15) / 9) * (66.37633-(61.25))); + yy = 0 + (((tickAnim - 15) / 9) * (-12.13005-(0))); + zz = 0 + (((tickAnim - 15) / 9) * (-14.73532-(0))); + } + else if (tickAnim >= 24 && tickAnim < 35) { + xx = 66.37633 + (((tickAnim - 24) / 11) * (69-(66.37633))); + yy = -12.13005 + (((tickAnim - 24) / 11) * (0-(-12.13005))); + zz = -14.73532 + (((tickAnim - 24) / 11) * (0-(-14.73532))); + } + else if (tickAnim >= 35 && tickAnim < 43) { + xx = 69 + (((tickAnim - 35) / 8) * (43.67-(69))); + yy = 0 + (((tickAnim - 35) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 8) * (0-(0))); + } + else if (tickAnim >= 43 && tickAnim < 50) { + xx = 43.67 + (((tickAnim - 43) / 7) * (0-(43.67))); + yy = 0 + (((tickAnim - 43) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 43) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg3, backLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 15) { + xx = 0 + (((tickAnim - 0) / 15) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 19) { + xx = 0 + (((tickAnim - 15) / 4) * (-0.16-(0))); + yy = 0 + (((tickAnim - 15) / 4) * (1.69-(0))); + zz = 0 + (((tickAnim - 15) / 4) * (0-(0))); + } + else if (tickAnim >= 19 && tickAnim < 24) { + xx = -0.16 + (((tickAnim - 19) / 5) * (-0.35-(-0.16))); + yy = 1.69 + (((tickAnim - 19) / 5) * (2-(1.69))); + zz = 0 + (((tickAnim - 19) / 5) * (0-(0))); + } + else if (tickAnim >= 24 && tickAnim < 35) { + xx = -0.35 + (((tickAnim - 24) / 11) * (0-(-0.35))); + yy = 2 + (((tickAnim - 24) / 11) * (0-(2))); + zz = 0 + (((tickAnim - 24) / 11) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 43) { + xx = 0 + (((tickAnim - 35) / 8) * (0-(0))); + yy = 0 + (((tickAnim - 35) / 8) * (1.5-(0))); + zz = 0 + (((tickAnim - 35) / 8) * (0-(0))); + } + else if (tickAnim >= 43 && tickAnim < 50) { + xx = 0 + (((tickAnim - 43) / 7) * (0-(0))); + yy = 1.5 + (((tickAnim - 43) / 7) * (0-(1.5))); + zz = 0 + (((tickAnim - 43) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg3.rotationPointX = this.backLeftLeg3.rotationPointX + (float)(xx); + this.backLeftLeg3.rotationPointY = this.backLeftLeg3.rotationPointY - (float)(yy); + this.backLeftLeg3.rotationPointZ = this.backLeftLeg3.rotationPointZ + (float)(zz); + + } + public void animLay(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraDyoplax entity = (EntityPrehistoricFloraDyoplax) entitylivingbaseIn; + int animCycle = 50; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-19.25-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = -19.25 + (((tickAnim - 18) / 16) * (-19.25-(-19.25))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = -19.25 + (((tickAnim - 34) / 16) * (0-(-19.25))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(xx), main.rotateAngleY + (float) Math.toRadians(yy), main.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (-3.95-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 0 + (((tickAnim - 18) / 16) * (0-(0))); + yy = -3.95 + (((tickAnim - 18) / 16) * (-3.95-(-3.95))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 0 + (((tickAnim - 34) / 16) * (0-(0))); + yy = -3.95 + (((tickAnim - 34) / 16) * (0-(-3.95))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.main.rotationPointX = this.main.rotationPointX + (float)(xx); + this.main.rotationPointY = this.main.rotationPointY - (float)(yy); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-33.25-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = -33.25 + (((tickAnim - 18) / 16) * (-33.25-(-33.25))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = -33.25 + (((tickAnim - 34) / 16) * (0-(-33.25))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (52-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 52 + (((tickAnim - 18) / 16) * (52-(52))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 52 + (((tickAnim - 34) / 16) * (0-(52))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (5.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 5.75 + (((tickAnim - 18) / 16) * (5.75-(5.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 5.75 + (((tickAnim - 34) / 16) * (0-(5.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(xx), tail.rotateAngleY + (float) Math.toRadians(yy), tail.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (14-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 14 + (((tickAnim - 18) / 16) * (14-(14))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 14 + (((tickAnim - 34) / 16) * (0-(14))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(xx), tail2.rotateAngleY + (float) Math.toRadians(yy), tail2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (10.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 10.75 + (((tickAnim - 18) / 16) * (10.75-(10.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 10.75 + (((tickAnim - 34) / 16) * (0-(10.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(xx), tail3.rotateAngleY + (float) Math.toRadians(yy), tail3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (5.5-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 5.5 + (((tickAnim - 18) / 16) * (5.5-(5.5))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 5.5 + (((tickAnim - 34) / 16) * (0-(5.5))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(xx), tail4.rotateAngleY + (float) Math.toRadians(yy), tail4.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (5.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 5.75 + (((tickAnim - 18) / 16) * (5.75-(5.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 5.75 + (((tickAnim - 34) / 16) * (0-(5.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(xx), body.rotateAngleY + (float) Math.toRadians(yy), body.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (10-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 10 + (((tickAnim - 18) / 16) * (10-(10))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 10 + (((tickAnim - 34) / 16) * (0-(10))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(xx), body2.rotateAngleY + (float) Math.toRadians(yy), body2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-25.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = -25.75 + (((tickAnim - 18) / 16) * (-25.75-(-25.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = -25.75 + (((tickAnim - 34) / 16) * (0-(-25.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg2, frontLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (29.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 29.75 + (((tickAnim - 18) / 16) * (29.75-(29.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 29.75 + (((tickAnim - 34) / 16) * (0-(29.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg3, frontLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0.1-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (-0.075-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 0 + (((tickAnim - 18) / 16) * (0-(0))); + yy = 0.1 + (((tickAnim - 18) / 16) * (0.1-(0.1))); + zz = -0.075 + (((tickAnim - 18) / 16) * (-0.075-(-0.075))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 0 + (((tickAnim - 34) / 16) * (0-(0))); + yy = 0.1 + (((tickAnim - 34) / 16) * (0-(0.1))); + zz = -0.075 + (((tickAnim - 34) / 16) * (0-(-0.075))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg3.rotationPointX = this.frontLeftLeg3.rotationPointX + (float)(xx); + this.frontLeftLeg3.rotationPointY = this.frontLeftLeg3.rotationPointY - (float)(yy); + this.frontLeftLeg3.rotationPointZ = this.frontLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-33.25-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = -33.25 + (((tickAnim - 18) / 16) * (-33.25-(-33.25))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = -33.25 + (((tickAnim - 34) / 16) * (0-(-33.25))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg, backRightLeg.rotateAngleX + (float) Math.toRadians(xx), backRightLeg.rotateAngleY + (float) Math.toRadians(yy), backRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (52-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 52 + (((tickAnim - 18) / 16) * (52-(52))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 52 + (((tickAnim - 34) / 16) * (0-(52))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg2, backRightLeg2.rotateAngleX + (float) Math.toRadians(xx), backRightLeg2.rotateAngleY + (float) Math.toRadians(yy), backRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-25.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = -25.75 + (((tickAnim - 18) / 16) * (-25.75-(-25.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = -25.75 + (((tickAnim - 34) / 16) * (0-(-25.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg2, frontRightLeg2.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg2.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (29.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 29.75 + (((tickAnim - 18) / 16) * (29.75-(29.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 29.75 + (((tickAnim - 34) / 16) * (0-(29.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg3, frontRightLeg3.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg3.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0.1-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (-0.075-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 0 + (((tickAnim - 18) / 16) * (0-(0))); + yy = 0.1 + (((tickAnim - 18) / 16) * (0.1-(0.1))); + zz = -0.075 + (((tickAnim - 18) / 16) * (-0.075-(-0.075))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 0 + (((tickAnim - 34) / 16) * (0-(0))); + yy = 0.1 + (((tickAnim - 34) / 16) * (0-(0.1))); + zz = -0.075 + (((tickAnim - 34) / 16) * (0-(-0.075))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg3.rotationPointX = this.frontRightLeg3.rotationPointX + (float)(xx); + this.frontRightLeg3.rotationPointY = this.frontRightLeg3.rotationPointY - (float)(yy); + this.frontRightLeg3.rotationPointZ = this.frontRightLeg3.rotationPointZ + (float)(zz); + + } + public void animWalking(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraDyoplax entity = (EntityPrehistoricFloraDyoplax) entitylivingbaseIn; + int animCycle = 26; + double tickAnim = (entity.ticksExisted + entity.getTickOffset()) - (int) (Math.floor((double) (entity.ticksExisted + entity.getTickOffset()) / (double) animCycle) * (double) animCycle) + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269/0.5-90))*2), main.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-50))*1), main.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-90))*4)); + this.main.rotationPointX = this.main.rotationPointX + (float)(0); + this.main.rotationPointY = this.main.rotationPointY - (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269/0.5))*-0.5); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269/0.5-100))*0.5); + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 22.5 + (((tickAnim - 0) / 8) * (-37.57-(22.5))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 13) { + xx = -37.57 + (((tickAnim - 8) / 5) * (-24.75-(-37.57))); + yy = 0 + (((tickAnim - 8) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 5) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 27) { + xx = -24.75 + (((tickAnim - 13) / 14) * (22.5-(-24.75))); + yy = 0 + (((tickAnim - 13) / 14) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 14) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 18.75 + (((tickAnim - 0) / 3) * (46.59-(18.75))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 8) { + xx = 46.59 + (((tickAnim - 3) / 5) * (32.87-(46.59))); + yy = 0 + (((tickAnim - 3) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 5) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 13) { + xx = 32.87 + (((tickAnim - 8) / 5) * (0-(32.87))); + yy = 0 + (((tickAnim - 8) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 5) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 27) { + xx = 0 + (((tickAnim - 13) / 14) * (18.75-(0))); + yy = 0 + (((tickAnim - 13) / 14) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 14) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 13) { + xx = 0 + (((tickAnim - 0) / 13) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 13) * (-0.15-(0))); + zz = 0 + (((tickAnim - 0) / 13) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 27) { + xx = 0 + (((tickAnim - 13) / 14) * (0-(0))); + yy = -0.15 + (((tickAnim - 13) / 14) * (0-(-0.15))); + zz = 0 + (((tickAnim - 13) / 14) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg2.rotationPointX = this.backLeftLeg2.rotationPointX + (float)(xx); + this.backLeftLeg2.rotationPointY = this.backLeftLeg2.rotationPointY - (float)(yy); + this.backLeftLeg2.rotationPointZ = this.backLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 43.75 + (((tickAnim - 0) / 3) * (73.53-(43.75))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 8) { + xx = 73.53 + (((tickAnim - 3) / 5) * (64.32-(73.53))); + yy = 0 + (((tickAnim - 3) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 5) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 13) { + xx = 64.32 + (((tickAnim - 8) / 5) * (23-(64.32))); + yy = 0 + (((tickAnim - 8) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 5) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 17) { + xx = 23 + (((tickAnim - 13) / 4) * (5.76674-(23))); + yy = 0 + (((tickAnim - 13) / 4) * (-1.89599-(0))); + zz = 0 + (((tickAnim - 13) / 4) * (-0.6265-(0))); + } + else if (tickAnim >= 17 && tickAnim < 27) { + xx = 5.76674 + (((tickAnim - 17) / 10) * (43.75-(5.76674))); + yy = -1.89599 + (((tickAnim - 17) / 10) * (0-(-1.89599))); + zz = -0.6265 + (((tickAnim - 17) / 10) * (0-(-0.6265))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg3, backLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 0.275 + (((tickAnim - 0) / 3) * (0.33-(0.275))); + zz = 0.125 + (((tickAnim - 0) / 3) * (-0.625-(0.125))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 0 + (((tickAnim - 3) / 3) * (0-(0))); + yy = 0.33 + (((tickAnim - 3) / 3) * (1.12-(0.33))); + zz = -0.625 + (((tickAnim - 3) / 3) * (-0.36-(-0.625))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 0 + (((tickAnim - 6) / 2) * (0-(0))); + yy = 1.12 + (((tickAnim - 6) / 2) * (0.885-(1.12))); + zz = -0.36 + (((tickAnim - 6) / 2) * (0-(-0.36))); + } + else if (tickAnim >= 8 && tickAnim < 13) { + xx = 0 + (((tickAnim - 8) / 5) * (0-(0))); + yy = 0.885 + (((tickAnim - 8) / 5) * (-0.3-(0.885))); + zz = 0 + (((tickAnim - 8) / 5) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 17) { + xx = 0 + (((tickAnim - 13) / 4) * (0-(0))); + yy = -0.3 + (((tickAnim - 13) / 4) * (0.535-(-0.3))); + zz = 0 + (((tickAnim - 13) / 4) * (0.03-(0))); + } + else if (tickAnim >= 17 && tickAnim < 27) { + xx = 0 + (((tickAnim - 17) / 10) * (0-(0))); + yy = 0.535 + (((tickAnim - 17) / 10) * (0.275-(0.535))); + zz = 0.03 + (((tickAnim - 17) / 10) * (0.125-(0.03))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg3.rotationPointX = this.backLeftLeg3.rotationPointX + (float)(xx); + this.backLeftLeg3.rotationPointY = this.backLeftLeg3.rotationPointY - (float)(yy); + this.backLeftLeg3.rotationPointZ = this.backLeftLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269/0.5-90))*2), tail.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-50))*1), tail.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-90))*-4)); + + + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269/0.5-150))*-2), tail2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-100))*4), tail2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-90))*-4)); + + + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269/0.5-200))*2), tail3.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-150))*8), tail3.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-90))*4)); + + + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269/0.5-250))*2), tail4.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-200))*12), tail4.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-90))*4)); + + + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269/0.5-150))*-2), body.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-100))*-1), body.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-90))*-4)); + + + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269/0.5-250))*3), body2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-150))*2), body2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-160))*4)); + + + + if (tickAnim >= 0 && tickAnim < 13) { + xx = -29 + (((tickAnim - 0) / 13) * (26.4609-(-29))); + yy = 0 + (((tickAnim - 0) / 13) * (-7.87355-(0))); + zz = 0 + (((tickAnim - 0) / 13) * (-0.65033-(0))); + } + else if (tickAnim >= 13 && tickAnim < 19) { + xx = 26.4609 + (((tickAnim - 13) / 6) * (-14.66879-(26.4609))); + yy = -7.87355 + (((tickAnim - 13) / 6) * (10.07712-(-7.87355))); + zz = -0.65033 + (((tickAnim - 13) / 6) * (-20.57385-(-0.65033))); + } + else if (tickAnim >= 19 && tickAnim < 25) { + xx = -14.66879 + (((tickAnim - 19) / 6) * (-35-(-14.66879))); + yy = 10.07712 + (((tickAnim - 19) / 6) * (0-(10.07712))); + zz = -20.57385 + (((tickAnim - 19) / 6) * (0-(-20.57385))); + } + else if (tickAnim >= 25 && tickAnim < 27) { + xx = -35 + (((tickAnim - 25) / 2) * (-29-(-35))); + yy = 0 + (((tickAnim - 25) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 25) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg, frontLeftLeg.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 13) { + xx = 17.75 + (((tickAnim - 0) / 13) * (15.25-(17.75))); + yy = 0 + (((tickAnim - 0) / 13) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 13) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 19) { + xx = 15.25 + (((tickAnim - 13) / 6) * (-43.58822-(15.25))); + yy = 0 + (((tickAnim - 13) / 6) * (-7.1715-(0))); + zz = 0 + (((tickAnim - 13) / 6) * (14.343-(0))); + } + else if (tickAnim >= 19 && tickAnim < 25) { + xx = -43.58822 + (((tickAnim - 19) / 6) * (17-(-43.58822))); + yy = -7.1715 + (((tickAnim - 19) / 6) * (0-(-7.1715))); + zz = 14.343 + (((tickAnim - 19) / 6) * (0-(14.343))); + } + else if (tickAnim >= 25 && tickAnim < 27) { + xx = 17 + (((tickAnim - 25) / 2) * (17.75-(17))); + yy = 0 + (((tickAnim - 25) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 25) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg2, frontLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 13) { + xx = 0 + (((tickAnim - 0) / 13) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 13) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 13) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 15) { + xx = 0 + (((tickAnim - 13) / 2) * (-0.13-(0))); + yy = 0 + (((tickAnim - 13) / 2) * (0.46-(0))); + zz = 0 + (((tickAnim - 13) / 2) * (0.14-(0))); + } + else if (tickAnim >= 15 && tickAnim < 19) { + xx = -0.13 + (((tickAnim - 15) / 4) * (-0.45-(-0.13))); + yy = 0.46 + (((tickAnim - 15) / 4) * (0.15-(0.46))); + zz = 0.14 + (((tickAnim - 15) / 4) * (-0.05-(0.14))); + } + else if (tickAnim >= 19 && tickAnim < 25) { + xx = -0.45 + (((tickAnim - 19) / 6) * (0-(-0.45))); + yy = 0.15 + (((tickAnim - 19) / 6) * (0-(0.15))); + zz = -0.05 + (((tickAnim - 19) / 6) * (0-(-0.05))); + } + else if (tickAnim >= 25 && tickAnim < 27) { + xx = 0 + (((tickAnim - 25) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 25) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 25) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg2.rotationPointX = this.frontLeftLeg2.rotationPointX + (float)(xx); + this.frontLeftLeg2.rotationPointY = this.frontLeftLeg2.rotationPointY - (float)(yy); + this.frontLeftLeg2.rotationPointZ = this.frontLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 11.5 + (((tickAnim - 0) / 5) * (-5.44-(11.5))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 13) { + xx = -5.44 + (((tickAnim - 5) / 8) * (46.25-(-5.44))); + yy = 0 + (((tickAnim - 5) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 8) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 15) { + xx = 46.25 + (((tickAnim - 13) / 2) * (90.86-(46.25))); + yy = 0 + (((tickAnim - 13) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 2) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 19) { + xx = 90.86 + (((tickAnim - 15) / 4) * (86-(90.86))); + yy = 0 + (((tickAnim - 15) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 15) / 4) * (0-(0))); + } + else if (tickAnim >= 19 && tickAnim < 24) { + xx = 86 + (((tickAnim - 19) / 5) * (41-(86))); + yy = 0 + (((tickAnim - 19) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 19) / 5) * (0-(0))); + } + else if (tickAnim >= 24 && tickAnim < 27) { + xx = 41 + (((tickAnim - 24) / 3) * (11.5-(41))); + yy = 0 + (((tickAnim - 24) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 24) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg3, frontLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0.15 + (((tickAnim - 0) / 2) * (0.72-(0.15))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 5) { + xx = 0 + (((tickAnim - 2) / 3) * (0-(0))); + yy = 0.72 + (((tickAnim - 2) / 3) * (0.8-(0.72))); + zz = 0 + (((tickAnim - 2) / 3) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 13) { + xx = 0 + (((tickAnim - 5) / 8) * (0-(0))); + yy = 0.8 + (((tickAnim - 5) / 8) * (0.45-(0.8))); + zz = 0 + (((tickAnim - 5) / 8) * (-0.4-(0))); + } + else if (tickAnim >= 13 && tickAnim < 15) { + xx = 0 + (((tickAnim - 13) / 2) * (0-(0))); + yy = 0.45 + (((tickAnim - 13) / 2) * (1.34-(0.45))); + zz = -0.4 + (((tickAnim - 13) / 2) * (-1.26-(-0.4))); + } + else if (tickAnim >= 15 && tickAnim < 19) { + xx = 0 + (((tickAnim - 15) / 4) * (0-(0))); + yy = 1.34 + (((tickAnim - 15) / 4) * (0.6-(1.34))); + zz = -1.26 + (((tickAnim - 15) / 4) * (-1.125-(-1.26))); + } + else if (tickAnim >= 19 && tickAnim < 24) { + xx = 0 + (((tickAnim - 19) / 5) * (0-(0))); + yy = 0.6 + (((tickAnim - 19) / 5) * (0.75-(0.6))); + zz = -1.125 + (((tickAnim - 19) / 5) * (0-(-1.125))); + } + else if (tickAnim >= 24 && tickAnim < 27) { + xx = 0 + (((tickAnim - 24) / 3) * (0-(0))); + yy = 0.75 + (((tickAnim - 24) / 3) * (0.15-(0.75))); + zz = 0 + (((tickAnim - 24) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg3.rotationPointX = this.frontLeftLeg3.rotationPointX + (float)(xx); + this.frontLeftLeg3.rotationPointY = this.frontLeftLeg3.rotationPointY - (float)(yy); + this.frontLeftLeg3.rotationPointZ = this.frontLeftLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269/0.5-540))*3), neck.rotateAngleY + (float) Math.toRadians(0), neck.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-160))*-4)); + + + + if (tickAnim >= 0 && tickAnim < 13) { + xx = -24.75 + (((tickAnim - 0) / 13) * (22.5-(-24.75))); + yy = 0 + (((tickAnim - 0) / 13) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 13) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 22) { + xx = 22.5 + (((tickAnim - 13) / 9) * (-37.57-(22.5))); + yy = 0 + (((tickAnim - 13) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 9) * (0-(0))); + } + else if (tickAnim >= 22 && tickAnim < 27) { + xx = -37.57 + (((tickAnim - 22) / 5) * (-24.75-(-37.57))); + yy = 0 + (((tickAnim - 22) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 22) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg, backRightLeg.rotateAngleX + (float) Math.toRadians(xx), backRightLeg.rotateAngleY + (float) Math.toRadians(yy), backRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 13) { + xx = 0 + (((tickAnim - 0) / 13) * (18.75-(0))); + yy = 0 + (((tickAnim - 0) / 13) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 13) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 17) { + xx = 18.75 + (((tickAnim - 13) / 4) * (46.59-(18.75))); + yy = 0 + (((tickAnim - 13) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 4) * (0-(0))); + } + else if (tickAnim >= 17 && tickAnim < 22) { + xx = 46.59 + (((tickAnim - 17) / 5) * (32.87-(46.59))); + yy = 0 + (((tickAnim - 17) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 17) / 5) * (0-(0))); + } + else if (tickAnim >= 22 && tickAnim < 27) { + xx = 32.87 + (((tickAnim - 22) / 5) * (0-(32.87))); + yy = 0 + (((tickAnim - 22) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 22) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg2, backRightLeg2.rotateAngleX + (float) Math.toRadians(xx), backRightLeg2.rotateAngleY + (float) Math.toRadians(yy), backRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 13) { + xx = 0 + (((tickAnim - 0) / 13) * (0-(0))); + yy = -0.15 + (((tickAnim - 0) / 13) * (0-(-0.15))); + zz = 0 + (((tickAnim - 0) / 13) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 27) { + xx = 0 + (((tickAnim - 13) / 14) * (0-(0))); + yy = 0 + (((tickAnim - 13) / 14) * (-0.15-(0))); + zz = 0 + (((tickAnim - 13) / 14) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg2.rotationPointX = this.backRightLeg2.rotationPointX + (float)(xx); + this.backRightLeg2.rotationPointY = this.backRightLeg2.rotationPointY - (float)(yy); + this.backRightLeg2.rotationPointZ = this.backRightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 23 + (((tickAnim - 0) / 3) * (5.76674-(23))); + yy = 0 + (((tickAnim - 0) / 3) * (-1.89599-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (-0.6265-(0))); + } + else if (tickAnim >= 3 && tickAnim < 13) { + xx = 5.76674 + (((tickAnim - 3) / 10) * (43.75-(5.76674))); + yy = -1.89599 + (((tickAnim - 3) / 10) * (0-(-1.89599))); + zz = -0.6265 + (((tickAnim - 3) / 10) * (0-(-0.6265))); + } + else if (tickAnim >= 13 && tickAnim < 17) { + xx = 43.75 + (((tickAnim - 13) / 4) * (73.53-(43.75))); + yy = 0 + (((tickAnim - 13) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 4) * (0-(0))); + } + else if (tickAnim >= 17 && tickAnim < 22) { + xx = 73.53 + (((tickAnim - 17) / 5) * (64.32-(73.53))); + yy = 0 + (((tickAnim - 17) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 17) / 5) * (0-(0))); + } + else if (tickAnim >= 22 && tickAnim < 27) { + xx = 64.32 + (((tickAnim - 22) / 5) * (23-(64.32))); + yy = 0 + (((tickAnim - 22) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 22) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg3, backRightLeg3.rotateAngleX + (float) Math.toRadians(xx), backRightLeg3.rotateAngleY + (float) Math.toRadians(yy), backRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = -0.3 + (((tickAnim - 0) / 3) * (0.535-(-0.3))); + zz = 0 + (((tickAnim - 0) / 3) * (0.03-(0))); + } + else if (tickAnim >= 3 && tickAnim < 13) { + xx = 0 + (((tickAnim - 3) / 10) * (0-(0))); + yy = 0.535 + (((tickAnim - 3) / 10) * (0.275-(0.535))); + zz = 0.03 + (((tickAnim - 3) / 10) * (0.125-(0.03))); + } + else if (tickAnim >= 13 && tickAnim < 17) { + xx = 0 + (((tickAnim - 13) / 4) * (0-(0))); + yy = 0.275 + (((tickAnim - 13) / 4) * (0.33-(0.275))); + zz = 0.125 + (((tickAnim - 13) / 4) * (-0.625-(0.125))); + } + else if (tickAnim >= 17 && tickAnim < 19) { + xx = 0 + (((tickAnim - 17) / 2) * (0-(0))); + yy = 0.33 + (((tickAnim - 17) / 2) * (1.12-(0.33))); + zz = -0.625 + (((tickAnim - 17) / 2) * (-0.36-(-0.625))); + } + else if (tickAnim >= 19 && tickAnim < 22) { + xx = 0 + (((tickAnim - 19) / 3) * (0-(0))); + yy = 1.12 + (((tickAnim - 19) / 3) * (0.885-(1.12))); + zz = -0.36 + (((tickAnim - 19) / 3) * (0-(-0.36))); + } + else if (tickAnim >= 22 && tickAnim < 27) { + xx = 0 + (((tickAnim - 22) / 5) * (0-(0))); + yy = 0.885 + (((tickAnim - 22) / 5) * (-0.3-(0.885))); + zz = 0 + (((tickAnim - 22) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg3.rotationPointX = this.backRightLeg3.rotationPointX + (float)(xx); + this.backRightLeg3.rotationPointY = this.backRightLeg3.rotationPointY - (float)(yy); + this.backRightLeg3.rotationPointZ = this.backRightLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = 26.4609 + (((tickAnim - 0) / 6) * (-14.66879-(26.4609))); + yy = 7.87355 + (((tickAnim - 0) / 6) * (-10.07712-(7.87355))); + zz = -0.65033 + (((tickAnim - 0) / 6) * (20.57385-(-0.65033))); + } + else if (tickAnim >= 6 && tickAnim < 12) { + xx = -14.66879 + (((tickAnim - 6) / 6) * (-35-(-14.66879))); + yy = -10.07712 + (((tickAnim - 6) / 6) * (0-(-10.07712))); + zz = 20.57385 + (((tickAnim - 6) / 6) * (0-(20.57385))); + } + else if (tickAnim >= 12 && tickAnim < 13) { + xx = -35 + (((tickAnim - 12) / 1) * (-24.92101-(-35))); + yy = 0 + (((tickAnim - 12) / 1) * (0.87484-(0))); + zz = 0 + (((tickAnim - 12) / 1) * (-0.07226-(0))); + } + else if (tickAnim >= 13 && tickAnim < 27) { + xx = -24.92101 + (((tickAnim - 13) / 14) * (26.4609-(-24.92101))); + yy = 0.87484 + (((tickAnim - 13) / 14) * (7.87355-(0.87484))); + zz = -0.07226 + (((tickAnim - 13) / 14) * (-0.65033-(-0.07226))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg, frontRightLeg.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = 15.25 + (((tickAnim - 0) / 6) * (-43.58822-(15.25))); + yy = 0 + (((tickAnim - 0) / 6) * (7.1715-(0))); + zz = 0 + (((tickAnim - 0) / 6) * (-14.343-(0))); + } + else if (tickAnim >= 6 && tickAnim < 12) { + xx = -43.58822 + (((tickAnim - 6) / 6) * (17-(-43.58822))); + yy = 7.1715 + (((tickAnim - 6) / 6) * (0-(7.1715))); + zz = -14.343 + (((tickAnim - 6) / 6) * (0-(-14.343))); + } + else if (tickAnim >= 12 && tickAnim < 13) { + xx = 17 + (((tickAnim - 12) / 1) * (15.06-(17))); + yy = 0 + (((tickAnim - 12) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 12) / 1) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 27) { + xx = 15.06 + (((tickAnim - 13) / 14) * (15.25-(15.06))); + yy = 0 + (((tickAnim - 13) / 14) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 14) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg2, frontRightLeg2.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg2.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (-0.13-(0))); + yy = 0 + (((tickAnim - 0) / 2) * (0.46-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0.14-(0))); + } + else if (tickAnim >= 2 && tickAnim < 6) { + xx = -0.13 + (((tickAnim - 2) / 4) * (0.45-(-0.13))); + yy = 0.46 + (((tickAnim - 2) / 4) * (0.15-(0.46))); + zz = 0.14 + (((tickAnim - 2) / 4) * (-0.05-(0.14))); + } + else if (tickAnim >= 6 && tickAnim < 12) { + xx = 0.45 + (((tickAnim - 6) / 6) * (0-(0.45))); + yy = 0.15 + (((tickAnim - 6) / 6) * (0-(0.15))); + zz = -0.05 + (((tickAnim - 6) / 6) * (0-(-0.05))); + } + else if (tickAnim >= 12 && tickAnim < 27) { + xx = 0 + (((tickAnim - 12) / 15) * (0-(0))); + yy = 0 + (((tickAnim - 12) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 12) / 15) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg2.rotationPointX = this.frontRightLeg2.rotationPointX + (float)(xx); + this.frontRightLeg2.rotationPointY = this.frontRightLeg2.rotationPointY - (float)(yy); + this.frontRightLeg2.rotationPointZ = this.frontRightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 46.25 + (((tickAnim - 0) / 2) * (90.86-(46.25))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 6) { + xx = 90.86 + (((tickAnim - 2) / 4) * (86-(90.86))); + yy = 0 + (((tickAnim - 2) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 4) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 11) { + xx = 86 + (((tickAnim - 6) / 5) * (50.75-(86))); + yy = 0 + (((tickAnim - 6) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 5) * (0-(0))); + } + else if (tickAnim >= 11 && tickAnim < 13) { + xx = 50.75 + (((tickAnim - 11) / 2) * (8.1-(50.75))); + yy = 0 + (((tickAnim - 11) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 11) / 2) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 17) { + xx = 8.1 + (((tickAnim - 13) / 4) * (-0.19-(8.1))); + yy = 0 + (((tickAnim - 13) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 4) * (0-(0))); + } + else if (tickAnim >= 17 && tickAnim < 27) { + xx = -0.19 + (((tickAnim - 17) / 10) * (46.25-(-0.19))); + yy = 0 + (((tickAnim - 17) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 17) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg3, frontRightLeg3.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg3.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0.45 + (((tickAnim - 0) / 2) * (1.34-(0.45))); + zz = -0.4 + (((tickAnim - 0) / 2) * (-1.26-(-0.4))); + } + else if (tickAnim >= 2 && tickAnim < 6) { + xx = 0 + (((tickAnim - 2) / 4) * (0-(0))); + yy = 1.34 + (((tickAnim - 2) / 4) * (0.6-(1.34))); + zz = -1.26 + (((tickAnim - 2) / 4) * (-1.125-(-1.26))); + } + else if (tickAnim >= 6 && tickAnim < 11) { + xx = 0 + (((tickAnim - 6) / 5) * (0-(0))); + yy = 0.6 + (((tickAnim - 6) / 5) * (0.825-(0.6))); + zz = -1.125 + (((tickAnim - 6) / 5) * (-0.475-(-1.125))); + } + else if (tickAnim >= 11 && tickAnim < 13) { + xx = 0 + (((tickAnim - 11) / 2) * (0-(0))); + yy = 0.825 + (((tickAnim - 11) / 2) * (0-(0.825))); + zz = -0.475 + (((tickAnim - 11) / 2) * (0-(-0.475))); + } + else if (tickAnim >= 13 && tickAnim < 17) { + xx = 0 + (((tickAnim - 13) / 4) * (0-(0))); + yy = 0 + (((tickAnim - 13) / 4) * (0.55-(0))); + zz = 0 + (((tickAnim - 13) / 4) * (0-(0))); + } + else if (tickAnim >= 17 && tickAnim < 27) { + xx = 0 + (((tickAnim - 17) / 10) * (0-(0))); + yy = 0.55 + (((tickAnim - 17) / 10) * (0.45-(0.55))); + zz = 0 + (((tickAnim - 17) / 10) * (-0.4-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg3.rotationPointX = this.frontRightLeg3.rotationPointX + (float)(xx); + this.frontRightLeg3.rotationPointY = this.frontRightLeg3.rotationPointY - (float)(yy); + this.frontRightLeg3.rotationPointZ = this.frontRightLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269/0.5-540))*-3), head.rotateAngleY + (float) Math.toRadians(0), head.rotateAngleZ + (float) Math.toRadians(0)); + + } + public void animRunning(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraDyoplax entity = (EntityPrehistoricFloraDyoplax) entitylivingbaseIn; + int animCycle = 15; + double tickAnim = (entity.ticksExisted + entity.getTickOffset()) - (int) (Math.floor((double) (entity.ticksExisted + entity.getTickOffset()) / (double) animCycle) * (double) animCycle) + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-50))*8), main.rotateAngleY + (float) Math.toRadians(0), main.rotateAngleZ + (float) Math.toRadians(0)); + this.main.rotationPointX = this.main.rotationPointX + (float)(0); + this.main.rotationPointY = this.main.rotationPointY - (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-150))*0.5); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-150))*0.5); + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = -26.75168 + (((tickAnim - 0) / 8) * (41.25-(-26.75168))); + yy = -10.91753 + (((tickAnim - 0) / 8) * (0-(-10.91753))); + zz = 1.05849 + (((tickAnim - 0) / 8) * (0-(1.05849))); + } + else if (tickAnim >= 8 && tickAnim < 12) { + xx = 41.25 + (((tickAnim - 8) / 4) * (-51.32242-(41.25))); + yy = 0 + (((tickAnim - 8) / 4) * (-14.8121-(0))); + zz = 0 + (((tickAnim - 8) / 4) * (0.82857-(0))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = -51.32242 + (((tickAnim - 12) / 3) * (-26.75168-(-51.32242))); + yy = -14.8121 + (((tickAnim - 12) / 3) * (-10.91753-(-14.8121))); + zz = 0.82857 + (((tickAnim - 12) / 3) * (1.05849-(0.82857))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (-1-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 12) { + xx = -1 + (((tickAnim - 8) / 4) * (51.06-(-1))); + yy = 0 + (((tickAnim - 8) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 4) * (0-(0))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = 51.06 + (((tickAnim - 12) / 3) * (0-(51.06))); + yy = 0 + (((tickAnim - 12) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 12) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = 0 + (((tickAnim - 8) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 8) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg2.rotationPointX = this.backLeftLeg2.rotationPointX + (float)(xx); + this.backLeftLeg2.rotationPointY = this.backLeftLeg2.rotationPointY - (float)(yy); + this.backLeftLeg2.rotationPointZ = this.backLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 30 + (((tickAnim - 0) / 2) * (12.3-(30))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 5) { + xx = 12.3 + (((tickAnim - 2) / 3) * (12.28-(12.3))); + yy = 0 + (((tickAnim - 2) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 3) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 8) { + xx = 12.28 + (((tickAnim - 5) / 3) * (80.25-(12.28))); + yy = 0 + (((tickAnim - 5) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 3) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 9) { + xx = 80.25 + (((tickAnim - 8) / 1) * (104.71672-(80.25))); + yy = 0 + (((tickAnim - 8) / 1) * (-1.31832-(0))); + zz = 0 + (((tickAnim - 8) / 1) * (-5.77415-(0))); + } + else if (tickAnim >= 9 && tickAnim < 12) { + xx = 104.71672 + (((tickAnim - 9) / 3) * (83.08-(104.71672))); + yy = -1.31832 + (((tickAnim - 9) / 3) * (0-(-1.31832))); + zz = -5.77415 + (((tickAnim - 9) / 3) * (0-(-5.77415))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = 83.08 + (((tickAnim - 12) / 3) * (30-(83.08))); + yy = 0 + (((tickAnim - 12) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 12) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg3, backLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = -0.275 + (((tickAnim - 0) / 2) * (0.045-(-0.275))); + zz = 0 + (((tickAnim - 0) / 2) * (-0.12-(0))); + } + else if (tickAnim >= 2 && tickAnim < 8) { + xx = 0 + (((tickAnim - 2) / 6) * (0-(0))); + yy = 0.045 + (((tickAnim - 2) / 6) * (0.72-(0.045))); + zz = -0.12 + (((tickAnim - 2) / 6) * (-0.6-(-0.12))); + } + else if (tickAnim >= 8 && tickAnim < 12) { + xx = 0 + (((tickAnim - 8) / 4) * (0-(0))); + yy = 0.72 + (((tickAnim - 8) / 4) * (1.22-(0.72))); + zz = -0.6 + (((tickAnim - 8) / 4) * (-0.395-(-0.6))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = 0 + (((tickAnim - 12) / 3) * (0-(0))); + yy = 1.22 + (((tickAnim - 12) / 3) * (-0.275-(1.22))); + zz = -0.395 + (((tickAnim - 12) / 3) * (0-(-0.395))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg3.rotationPointX = this.backLeftLeg3.rotationPointX + (float)(xx); + this.backLeftLeg3.rotationPointY = this.backLeftLeg3.rotationPointY - (float)(yy); + this.backLeftLeg3.rotationPointZ = this.backLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = -26.75168 + (((tickAnim - 0) / 8) * (41.25-(-26.75168))); + yy = 10.91753 + (((tickAnim - 0) / 8) * (0-(10.91753))); + zz = -1.05849 + (((tickAnim - 0) / 8) * (0-(-1.05849))); + } + else if (tickAnim >= 8 && tickAnim < 12) { + xx = 41.25 + (((tickAnim - 8) / 4) * (-51.32242-(41.25))); + yy = 0 + (((tickAnim - 8) / 4) * (14.8121-(0))); + zz = 0 + (((tickAnim - 8) / 4) * (-0.82857-(0))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = -51.32242 + (((tickAnim - 12) / 3) * (-26.75168-(-51.32242))); + yy = 14.8121 + (((tickAnim - 12) / 3) * (10.91753-(14.8121))); + zz = -0.82857 + (((tickAnim - 12) / 3) * (-1.05849-(-0.82857))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg, backRightLeg.rotateAngleX + (float) Math.toRadians(xx), backRightLeg.rotateAngleY + (float) Math.toRadians(yy), backRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (-1-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 12) { + xx = -1 + (((tickAnim - 8) / 4) * (51.06-(-1))); + yy = 0 + (((tickAnim - 8) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 4) * (0-(0))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = 51.06 + (((tickAnim - 12) / 3) * (0-(51.06))); + yy = 0 + (((tickAnim - 12) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 12) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg2, backRightLeg2.rotateAngleX + (float) Math.toRadians(xx), backRightLeg2.rotateAngleY + (float) Math.toRadians(yy), backRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = 0 + (((tickAnim - 8) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 8) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg2.rotationPointX = this.backRightLeg2.rotationPointX + (float)(xx); + this.backRightLeg2.rotationPointY = this.backRightLeg2.rotationPointY - (float)(yy); + this.backRightLeg2.rotationPointZ = this.backRightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 30 + (((tickAnim - 0) / 2) * (12.3-(30))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 5) { + xx = 12.3 + (((tickAnim - 2) / 3) * (12.28-(12.3))); + yy = 0 + (((tickAnim - 2) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 3) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 8) { + xx = 12.28 + (((tickAnim - 5) / 3) * (80.25-(12.28))); + yy = 0 + (((tickAnim - 5) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 3) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 9) { + xx = 80.25 + (((tickAnim - 8) / 1) * (104.71672-(80.25))); + yy = 0 + (((tickAnim - 8) / 1) * (-1.31832-(0))); + zz = 0 + (((tickAnim - 8) / 1) * (-5.77415-(0))); + } + else if (tickAnim >= 9 && tickAnim < 12) { + xx = 104.71672 + (((tickAnim - 9) / 3) * (83.08-(104.71672))); + yy = -1.31832 + (((tickAnim - 9) / 3) * (0-(-1.31832))); + zz = -5.77415 + (((tickAnim - 9) / 3) * (0-(-5.77415))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = 83.08 + (((tickAnim - 12) / 3) * (30-(83.08))); + yy = 0 + (((tickAnim - 12) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 12) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg3, backRightLeg3.rotateAngleX + (float) Math.toRadians(xx), backRightLeg3.rotateAngleY + (float) Math.toRadians(yy), backRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = -0.275 + (((tickAnim - 0) / 2) * (0.045-(-0.275))); + zz = 0 + (((tickAnim - 0) / 2) * (-0.12-(0))); + } + else if (tickAnim >= 2 && tickAnim < 8) { + xx = 0 + (((tickAnim - 2) / 6) * (0-(0))); + yy = 0.045 + (((tickAnim - 2) / 6) * (0.72-(0.045))); + zz = -0.12 + (((tickAnim - 2) / 6) * (-0.6-(-0.12))); + } + else if (tickAnim >= 8 && tickAnim < 12) { + xx = 0 + (((tickAnim - 8) / 4) * (0-(0))); + yy = 0.72 + (((tickAnim - 8) / 4) * (1.22-(0.72))); + zz = -0.6 + (((tickAnim - 8) / 4) * (-0.395-(-0.6))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = 0 + (((tickAnim - 12) / 3) * (0-(0))); + yy = 1.22 + (((tickAnim - 12) / 3) * (-0.275-(1.22))); + zz = -0.395 + (((tickAnim - 12) / 3) * (0-(-0.395))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg3.rotationPointX = this.backRightLeg3.rotationPointX + (float)(xx); + this.backRightLeg3.rotationPointY = this.backRightLeg3.rotationPointY - (float)(yy); + this.backRightLeg3.rotationPointZ = this.backRightLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-50))*8), tail.rotateAngleY + (float) Math.toRadians(0), tail.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-50))*-8), tail2.rotateAngleY + (float) Math.toRadians(0), tail2.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-150))*12), tail3.rotateAngleY + (float) Math.toRadians(0), tail3.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-250))*12), tail4.rotateAngleY + (float) Math.toRadians(0), tail4.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-150))*8), body.rotateAngleY + (float) Math.toRadians(0), body.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-250))*8), body2.rotateAngleY + (float) Math.toRadians(0), body2.rotateAngleZ + (float) Math.toRadians(0)); + + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = 52.4453 + (((tickAnim - 0) / 4) * (3.47307-(52.4453))); + yy = -4.82922 + (((tickAnim - 0) / 4) * (13.52353-(-4.82922))); + zz = 1.29717 + (((tickAnim - 0) / 4) * (-29.3449-(1.29717))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = 3.47307 + (((tickAnim - 4) / 4) * (-39.5-(3.47307))); + yy = 13.52353 + (((tickAnim - 4) / 4) * (0-(13.52353))); + zz = -29.3449 + (((tickAnim - 4) / 4) * (0-(-29.3449))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = -39.5 + (((tickAnim - 8) / 7) * (52.4453-(-39.5))); + yy = 0 + (((tickAnim - 8) / 7) * (-4.82922-(0))); + zz = 0 + (((tickAnim - 8) / 7) * (1.29717-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg, frontLeftLeg.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = 21.15888 + (((tickAnim - 0) / 4) * (-44.86212-(21.15888))); + yy = 2.84124 + (((tickAnim - 0) / 4) * (-0.45546-(2.84124))); + zz = 6.40007 + (((tickAnim - 0) / 4) * (28.60857-(6.40007))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = -44.86212 + (((tickAnim - 4) / 4) * (25.75-(-44.86212))); + yy = -0.45546 + (((tickAnim - 4) / 4) * (0-(-0.45546))); + zz = 28.60857 + (((tickAnim - 4) / 4) * (0-(28.60857))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = 25.75 + (((tickAnim - 8) / 7) * (21.15888-(25.75))); + yy = 0 + (((tickAnim - 8) / 7) * (2.84124-(0))); + zz = 0 + (((tickAnim - 8) / 7) * (6.40007-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg2, frontLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = 0 + (((tickAnim - 0) / 4) * (-0.375-(0))); + yy = 0 + (((tickAnim - 0) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 4) * (0-(0))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = -0.375 + (((tickAnim - 4) / 4) * (0-(-0.375))); + yy = 0 + (((tickAnim - 4) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 4) / 4) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = 0 + (((tickAnim - 8) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 8) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg2.rotationPointX = this.frontLeftLeg2.rotationPointX + (float)(xx); + this.frontLeftLeg2.rotationPointY = this.frontLeftLeg2.rotationPointY - (float)(yy); + this.frontLeftLeg2.rotationPointZ = this.frontLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = 59.75 + (((tickAnim - 0) / 4) * (85.38-(59.75))); + yy = 0 + (((tickAnim - 0) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 4) * (0-(0))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = 85.38 + (((tickAnim - 4) / 4) * (10-(85.38))); + yy = 0 + (((tickAnim - 4) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 4) / 4) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 12) { + xx = 10 + (((tickAnim - 8) / 4) * (-23.87-(10))); + yy = 0 + (((tickAnim - 8) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 4) * (0-(0))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = -23.87 + (((tickAnim - 12) / 3) * (59.75-(-23.87))); + yy = 0 + (((tickAnim - 12) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 12) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg3, frontLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0.275 + (((tickAnim - 0) / 2) * (1.155-(0.275))); + zz = -0.925 + (((tickAnim - 0) / 2) * (-1.07-(-0.925))); + } + else if (tickAnim >= 2 && tickAnim < 4) { + xx = 0 + (((tickAnim - 2) / 2) * (0-(0))); + yy = 1.155 + (((tickAnim - 2) / 2) * (0.28-(1.155))); + zz = -1.07 + (((tickAnim - 2) / 2) * (-1.285-(-1.07))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = 0 + (((tickAnim - 4) / 4) * (0-(0))); + yy = 0.28 + (((tickAnim - 4) / 4) * (1.85-(0.28))); + zz = -1.285 + (((tickAnim - 4) / 4) * (0-(-1.285))); + } + else if (tickAnim >= 8 && tickAnim < 12) { + xx = 0 + (((tickAnim - 8) / 4) * (0-(0))); + yy = 1.85 + (((tickAnim - 8) / 4) * (0-(1.85))); + zz = 0 + (((tickAnim - 8) / 4) * (0-(0))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = 0 + (((tickAnim - 12) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 12) / 3) * (0.275-(0))); + zz = 0 + (((tickAnim - 12) / 3) * (-0.925-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg3.rotationPointX = this.frontLeftLeg3.rotationPointX + (float)(xx); + this.frontLeftLeg3.rotationPointY = this.frontLeftLeg3.rotationPointY - (float)(yy); + this.frontLeftLeg3.rotationPointZ = this.frontLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = 52.4453 + (((tickAnim - 0) / 4) * (3.47307-(52.4453))); + yy = 4.82922 + (((tickAnim - 0) / 4) * (-13.52353-(4.82922))); + zz = -1.29717 + (((tickAnim - 0) / 4) * (29.3449-(-1.29717))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = 3.47307 + (((tickAnim - 4) / 4) * (-39.5-(3.47307))); + yy = -13.52353 + (((tickAnim - 4) / 4) * (0-(-13.52353))); + zz = 29.3449 + (((tickAnim - 4) / 4) * (0-(29.3449))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = -39.5 + (((tickAnim - 8) / 7) * (52.4453-(-39.5))); + yy = 0 + (((tickAnim - 8) / 7) * (4.82922-(0))); + zz = 0 + (((tickAnim - 8) / 7) * (-1.29717-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg, frontRightLeg.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = 21.15888 + (((tickAnim - 0) / 4) * (-44.86212-(21.15888))); + yy = -2.84124 + (((tickAnim - 0) / 4) * (0.45546-(-2.84124))); + zz = -6.40007 + (((tickAnim - 0) / 4) * (-28.60857-(-6.40007))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = -44.86212 + (((tickAnim - 4) / 4) * (25.75-(-44.86212))); + yy = 0.45546 + (((tickAnim - 4) / 4) * (0-(0.45546))); + zz = -28.60857 + (((tickAnim - 4) / 4) * (0-(-28.60857))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = 25.75 + (((tickAnim - 8) / 7) * (21.15888-(25.75))); + yy = 0 + (((tickAnim - 8) / 7) * (-2.84124-(0))); + zz = 0 + (((tickAnim - 8) / 7) * (-6.40007-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg2, frontRightLeg2.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg2.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = 0 + (((tickAnim - 0) / 4) * (0.375-(0))); + yy = 0 + (((tickAnim - 0) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 4) * (0-(0))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = 0.375 + (((tickAnim - 4) / 4) * (0-(0.375))); + yy = 0 + (((tickAnim - 4) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 4) / 4) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = 0 + (((tickAnim - 8) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 8) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg2.rotationPointX = this.frontRightLeg2.rotationPointX + (float)(xx); + this.frontRightLeg2.rotationPointY = this.frontRightLeg2.rotationPointY - (float)(yy); + this.frontRightLeg2.rotationPointZ = this.frontRightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = 59.75 + (((tickAnim - 0) / 4) * (85.38-(59.75))); + yy = 0 + (((tickAnim - 0) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 4) * (0-(0))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = 85.38 + (((tickAnim - 4) / 4) * (10-(85.38))); + yy = 0 + (((tickAnim - 4) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 4) / 4) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 12) { + xx = 10 + (((tickAnim - 8) / 4) * (-23.87-(10))); + yy = 0 + (((tickAnim - 8) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 4) * (0-(0))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = -23.87 + (((tickAnim - 12) / 3) * (59.75-(-23.87))); + yy = 0 + (((tickAnim - 12) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 12) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg3, frontRightLeg3.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg3.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0.275 + (((tickAnim - 0) / 2) * (1.155-(0.275))); + zz = -0.925 + (((tickAnim - 0) / 2) * (-1.07-(-0.925))); + } + else if (tickAnim >= 2 && tickAnim < 4) { + xx = 0 + (((tickAnim - 2) / 2) * (0-(0))); + yy = 1.155 + (((tickAnim - 2) / 2) * (0.28-(1.155))); + zz = -1.07 + (((tickAnim - 2) / 2) * (-1.285-(-1.07))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = 0 + (((tickAnim - 4) / 4) * (0-(0))); + yy = 0.28 + (((tickAnim - 4) / 4) * (1.85-(0.28))); + zz = -1.285 + (((tickAnim - 4) / 4) * (0-(-1.285))); + } + else if (tickAnim >= 8 && tickAnim < 12) { + xx = 0 + (((tickAnim - 8) / 4) * (0-(0))); + yy = 1.85 + (((tickAnim - 8) / 4) * (0-(1.85))); + zz = 0 + (((tickAnim - 8) / 4) * (0-(0))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = 0 + (((tickAnim - 12) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 12) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 12) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg3.rotationPointX = this.frontRightLeg3.rotationPointX + (float)(xx); + this.frontRightLeg3.rotationPointY = this.frontRightLeg3.rotationPointY - (float)(yy); + this.frontRightLeg3.rotationPointZ = this.frontRightLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-320))*8), neck.rotateAngleY + (float) Math.toRadians(0), neck.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-450))*8), head.rotateAngleY + (float) Math.toRadians(0), head.rotateAngleZ + (float) Math.toRadians(0)); + + } + + @Override + public void setLivingAnimations(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + super.setLivingAnimations(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + this.resetToDefaultPose(); + EntityPrehistoricFloraDyoplax ee = (EntityPrehistoricFloraDyoplax) entitylivingbaseIn; + + if (!ee.isReallyInWater()) { + if (ee.getIsMoving()) { + if (ee.getIsFast()) { //Running + animRunning(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + + } else { //Walking + animWalking(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + } + } + } + else { + //Swimming pose: + if (!ee.getIsMoving()) { //static in water + // + } + //moving in water + // + } + if (ee.getAnimation() == ee.EAT_ANIMATION) { + animEat(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.ATTACK_ANIMATION) { + animAttack(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.MAKE_NEST_ANIMATION) { + animNest(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.LAY_ANIMATION) { + animLay(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.ROAR_ANIMATION) { //The actual roar/anim + animRoar(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + + } + + public void animate(IAnimatedEntity entity, float f, float f1, float f2, float f3, float f4, float f5) { + EntityPrehistoricFloraDyoplax e = (EntityPrehistoricFloraDyoplax) entity; + + } +} diff --git a/src/main/java/net/lepidodendron/entity/model/entity/ModelErpetosuchus.java b/src/main/java/net/lepidodendron/entity/model/entity/ModelErpetosuchus.java new file mode 100644 index 0000000000..ff63951db7 --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/model/entity/ModelErpetosuchus.java @@ -0,0 +1,2710 @@ +package net.lepidodendron.entity.model.entity; + +import net.ilexiconn.llibrary.client.model.ModelAnimator; +import net.ilexiconn.llibrary.client.model.tools.AdvancedModelRenderer; +import net.ilexiconn.llibrary.server.animation.IAnimatedEntity; +import net.lepidodendron.entity.EntityPrehistoricFloraErpetosuchus; +import net.lepidodendron.entity.model.ModelBasePalaeopedia; +import net.minecraft.client.model.ModelBox; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; + +public class ModelErpetosuchus extends ModelBasePalaeopedia { + private final AdvancedModelRenderer main; + private final AdvancedModelRenderer cube_r1; + private final AdvancedModelRenderer backLeftLeg; + private final AdvancedModelRenderer backLeftLeg2; + private final AdvancedModelRenderer backLeftLeg3; + private final AdvancedModelRenderer backRightLeg; + private final AdvancedModelRenderer backRightLeg2; + private final AdvancedModelRenderer backRightLeg3; + private final AdvancedModelRenderer tail; + private final AdvancedModelRenderer cube_r2; + private final AdvancedModelRenderer tail2; + private final AdvancedModelRenderer tail3; + private final AdvancedModelRenderer tail4; + private final AdvancedModelRenderer body; + private final AdvancedModelRenderer body2; + private final AdvancedModelRenderer frontLeftLeg; + private final AdvancedModelRenderer frontLeftLeg2; + private final AdvancedModelRenderer frontLeftLeg3; + private final AdvancedModelRenderer frontRightLeg; + private final AdvancedModelRenderer frontRightLeg2; + private final AdvancedModelRenderer frontRightLeg3; + private final AdvancedModelRenderer body3; + private final AdvancedModelRenderer cube_r3; + private final AdvancedModelRenderer head; + private final AdvancedModelRenderer cube_r4; + private final AdvancedModelRenderer cube_r5; + private final AdvancedModelRenderer cube_r6; + private final AdvancedModelRenderer cube_r7; + private final AdvancedModelRenderer cube_r8; + private final AdvancedModelRenderer cube_r9; + private final AdvancedModelRenderer cube_r10; + private final AdvancedModelRenderer cube_r11; + private final AdvancedModelRenderer eye; + private final AdvancedModelRenderer cube_r12; + private final AdvancedModelRenderer cube_r13; + private final AdvancedModelRenderer jaw; + private final AdvancedModelRenderer cube_r14; + private final AdvancedModelRenderer cube_r15; + private final AdvancedModelRenderer cube_r16; + private final AdvancedModelRenderer cube_r17; + private final AdvancedModelRenderer cube_r18; + + private ModelAnimator animator; + + public ModelErpetosuchus() { + this.textureWidth = 48; + this.textureHeight = 48; + + this.main = new AdvancedModelRenderer(this); + this.main.setRotationPoint(0.0F, 24.0F, 0.0F); + this.main.cubeList.add(new ModelBox(main, 0, 8, -1.5F, -7.25F, 0.0F, 3, 3, 4, 0.0F, false)); + + this.cube_r1 = new AdvancedModelRenderer(this); + this.cube_r1.setRotationPoint(0.0F, -7.55F, -0.05F); + this.main.addChild(cube_r1); + this.setRotateAngle(cube_r1, -0.048F, 0.0F, 0.0F); + this.cube_r1.cubeList.add(new ModelBox(cube_r1, 13, 21, -1.0F, 0.0F, 0.0F, 2, 1, 4, -0.001F, false)); + + this.backLeftLeg = new AdvancedModelRenderer(this); + this.backLeftLeg.setRotationPoint(1.5F, -6.25F, 2.5F); + this.main.addChild(backLeftLeg); + this.setRotateAngle(backLeftLeg, -0.3796F, 0.0F, 0.0F); + this.backLeftLeg.cubeList.add(new ModelBox(backLeftLeg, 28, 14, -1.0F, -0.5F, -1.0F, 2, 4, 2, 0.0F, false)); + + this.backLeftLeg2 = new AdvancedModelRenderer(this); + this.backLeftLeg2.setRotationPoint(0.5F, 3.3959F, -0.9009F); + this.backLeftLeg.addChild(backLeftLeg2); + this.setRotateAngle(backLeftLeg2, 0.6109F, 0.0F, 0.0F); + this.backLeftLeg2.cubeList.add(new ModelBox(backLeftLeg2, 0, 39, -1.0F, 0.0F, 0.0F, 1, 3, 1, 0.0F, false)); + this.backLeftLeg2.cubeList.add(new ModelBox(backLeftLeg2, 40, 32, -1.0F, 0.0F, 0.3F, 1, 3, 1, -0.001F, false)); + + this.backLeftLeg3 = new AdvancedModelRenderer(this); + this.backLeftLeg3.setRotationPoint(0.0F, 3.0752F, 1.2434F); + this.backLeftLeg2.addChild(backLeftLeg3); + this.setRotateAngle(backLeftLeg3, -0.2269F, 0.0F, 0.0F); + this.backLeftLeg3.cubeList.add(new ModelBox(backLeftLeg3, 0, 29, -1.5F, -0.325F, -3.2F, 2, 1, 3, 0.0F, false)); + + this.backRightLeg = new AdvancedModelRenderer(this); + this.backRightLeg.setRotationPoint(-1.5F, -6.25F, 2.5F); + this.main.addChild(backRightLeg); + this.setRotateAngle(backRightLeg, -0.3796F, 0.0F, 0.0F); + this.backRightLeg.cubeList.add(new ModelBox(backRightLeg, 28, 14, -1.0F, -0.5F, -1.0F, 2, 4, 2, 0.0F, true)); + + this.backRightLeg2 = new AdvancedModelRenderer(this); + this.backRightLeg2.setRotationPoint(-0.5F, 3.3959F, -0.9009F); + this.backRightLeg.addChild(backRightLeg2); + this.setRotateAngle(backRightLeg2, 0.6109F, 0.0F, 0.0F); + this.backRightLeg2.cubeList.add(new ModelBox(backRightLeg2, 0, 39, 0.0F, 0.0F, 0.0F, 1, 3, 1, 0.0F, true)); + this.backRightLeg2.cubeList.add(new ModelBox(backRightLeg2, 40, 32, 0.0F, 0.0F, 0.3F, 1, 3, 1, -0.001F, true)); + + this.backRightLeg3 = new AdvancedModelRenderer(this); + this.backRightLeg3.setRotationPoint(0.0F, 3.0752F, 1.2434F); + this.backRightLeg2.addChild(backRightLeg3); + this.setRotateAngle(backRightLeg3, -0.2269F, 0.0F, 0.0F); + this.backRightLeg3.cubeList.add(new ModelBox(backRightLeg3, 0, 29, -0.5F, -0.325F, -3.2F, 2, 1, 3, 0.0F, true)); + + this.tail = new AdvancedModelRenderer(this); + this.tail.setRotationPoint(-0.5F, -7.1086F, 3.8161F); + this.main.addChild(tail); + this.setRotateAngle(tail, -0.1745F, 0.0F, 0.0F); + this.tail.cubeList.add(new ModelBox(tail, 17, 0, -0.5F, 0.0F, 0.0F, 2, 2, 4, 0.0F, false)); + + this.cube_r2 = new AdvancedModelRenderer(this); + this.cube_r2.setRotationPoint(0.5F, -0.275F, 0.0F); + this.tail.addChild(cube_r2); + this.setRotateAngle(cube_r2, -0.0741F, 0.0005F, -0.0004F); + this.cube_r2.cubeList.add(new ModelBox(cube_r2, 31, 32, -0.5F, 0.025F, 0.075F, 1, 1, 3, 0.0F, false)); + + this.tail2 = new AdvancedModelRenderer(this); + this.tail2.setRotationPoint(0.0F, 1.0F, 3.5F); + this.tail.addChild(tail2); + this.setRotateAngle(tail2, -0.1745F, 0.0F, 0.0F); + this.tail2.cubeList.add(new ModelBox(tail2, 15, 14, -0.5F, -1.0F, 0.0F, 2, 2, 4, 0.001F, false)); + + this.tail3 = new AdvancedModelRenderer(this); + this.tail3.setRotationPoint(0.0F, -0.1515F, 3.5174F); + this.tail2.addChild(tail3); + this.setRotateAngle(tail3, 0.1745F, 0.0F, 0.0F); + this.tail3.cubeList.add(new ModelBox(tail3, 0, 16, 0.0F, -0.5F, 0.0F, 1, 1, 5, 0.0F, false)); + + this.tail4 = new AdvancedModelRenderer(this); + this.tail4.setRotationPoint(0.0F, -0.0021F, 4.5239F); + this.tail3.addChild(tail4); + this.setRotateAngle(tail4, 0.1745F, 0.0F, 0.0F); + this.tail4.cubeList.add(new ModelBox(tail4, 0, 23, 0.0F, -0.5F, 0.0F, 1, 1, 4, 0.001F, false)); + + this.body = new AdvancedModelRenderer(this); + this.body.setRotationPoint(-0.5F, -7.25F, 0.0F); + this.main.addChild(body); + this.setRotateAngle(body, 0.0436F, 0.0F, 0.0F); + this.body.cubeList.add(new ModelBox(body, 0, 0, -1.5F, 0.0F, -4.0F, 4, 3, 4, 0.0F, false)); + this.body.cubeList.add(new ModelBox(body, 15, 8, -1.0F, -0.3F, -4.0F, 3, 1, 4, 0.001F, false)); + + this.body2 = new AdvancedModelRenderer(this); + this.body2.setRotationPoint(0.0F, 0.0434F, -3.2793F); + this.body.addChild(body2); + this.setRotateAngle(body2, 0.0087F, 0.0F, 0.0F); + this.body2.cubeList.add(new ModelBox(body2, 26, 21, -1.0F, 0.0F, -2.0F, 3, 3, 2, 0.0F, false)); + this.body2.cubeList.add(new ModelBox(body2, 37, 17, -0.5F, -0.275F, -2.0F, 2, 1, 2, -0.001F, false)); + + this.frontLeftLeg = new AdvancedModelRenderer(this); + this.frontLeftLeg.setRotationPoint(2.075F, 2.0F, -1.25F); + this.body2.addChild(frontLeftLeg); + this.setRotateAngle(frontLeftLeg, -0.8727F, 0.0F, 0.0F); + this.frontLeftLeg.cubeList.add(new ModelBox(frontLeftLeg, 37, 12, -0.5F, -0.5F, -0.5F, 1, 1, 3, 0.001F, false)); + + this.frontLeftLeg2 = new AdvancedModelRenderer(this); + this.frontLeftLeg2.setRotationPoint(0.0F, 0.197F, 2.5347F); + this.frontLeftLeg.addChild(frontLeftLeg2); + this.setRotateAngle(frontLeftLeg2, -1.1345F, 0.0F, 0.0F); + this.frontLeftLeg2.cubeList.add(new ModelBox(frontLeftLeg2, 11, 33, -0.5F, -0.5F, -0.5F, 1, 1, 3, 0.0F, false)); + + this.frontLeftLeg3 = new AdvancedModelRenderer(this); + this.frontLeftLeg3.setRotationPoint(0.0F, -0.2733F, 2.0713F); + this.frontLeftLeg2.addChild(frontLeftLeg3); + this.setRotateAngle(frontLeftLeg3, 0.3883F, 0.0F, 0.0F); + this.frontLeftLeg3.cubeList.add(new ModelBox(frontLeftLeg3, 9, 38, -1.0F, 0.0F, 0.0F, 2, 2, 1, 0.0F, false)); + + this.frontRightLeg = new AdvancedModelRenderer(this); + this.frontRightLeg.setRotationPoint(-1.075F, 2.0F, -1.25F); + this.body2.addChild(frontRightLeg); + this.setRotateAngle(frontRightLeg, -0.8727F, 0.0F, 0.0F); + this.frontRightLeg.cubeList.add(new ModelBox(frontRightLeg, 37, 12, -0.5F, -0.5F, -0.5F, 1, 1, 3, 0.001F, true)); + + this.frontRightLeg2 = new AdvancedModelRenderer(this); + this.frontRightLeg2.setRotationPoint(0.0F, 0.197F, 2.5347F); + this.frontRightLeg.addChild(frontRightLeg2); + this.setRotateAngle(frontRightLeg2, -1.1345F, 0.0F, 0.0F); + this.frontRightLeg2.cubeList.add(new ModelBox(frontRightLeg2, 11, 33, -0.5F, -0.5F, -0.5F, 1, 1, 3, 0.0F, true)); + + this.frontRightLeg3 = new AdvancedModelRenderer(this); + this.frontRightLeg3.setRotationPoint(0.0F, -0.2733F, 2.0713F); + this.frontRightLeg2.addChild(frontRightLeg3); + this.setRotateAngle(frontRightLeg3, 0.3883F, 0.0F, 0.0F); + this.frontRightLeg3.cubeList.add(new ModelBox(frontRightLeg3, 9, 38, -1.0F, 0.0F, 0.0F, 2, 2, 1, 0.0F, true)); + + this.body3 = new AdvancedModelRenderer(this); + this.body3.setRotationPoint(0.0F, 0.0868F, -1.0076F); + this.body2.addChild(body3); + this.setRotateAngle(body3, -0.1745F, 0.0F, 0.0F); + this.body3.cubeList.add(new ModelBox(body3, 11, 27, -0.5F, 0.0F, -3.0F, 2, 2, 3, -0.003F, false)); + this.body3.cubeList.add(new ModelBox(body3, 22, 32, 0.0F, -0.175F, -3.0F, 1, 1, 3, 0.0F, false)); + + this.cube_r3 = new AdvancedModelRenderer(this); + this.cube_r3.setRotationPoint(0.5F, 1.725F, -3.0F); + this.body3.addChild(cube_r3); + this.setRotateAngle(cube_r3, -0.1309F, 0.0F, 0.0F); + this.cube_r3.cubeList.add(new ModelBox(cube_r3, 22, 27, -1.0F, -0.3F, 0.0F, 2, 1, 3, -0.004F, false)); + + this.head = new AdvancedModelRenderer(this); + this.head.setRotationPoint(0.0F, 0.2029F, -2.7002F); + this.body3.addChild(head); + this.setRotateAngle(head, 0.1309F, 0.0F, 0.0F); + + + this.cube_r4 = new AdvancedModelRenderer(this); + this.cube_r4.setRotationPoint(0.5F, -0.1852F, -1.0277F); + this.head.addChild(cube_r4); + this.setRotateAngle(cube_r4, 0.1658F, 0.0F, 0.0F); + this.cube_r4.cubeList.add(new ModelBox(cube_r4, 30, 0, -1.5F, 0.0F, -1.0F, 3, 1, 2, 0.001F, false)); + + this.cube_r5 = new AdvancedModelRenderer(this); + this.cube_r5.setRotationPoint(0.5F, -0.0201F, -2.014F); + this.head.addChild(cube_r5); + this.setRotateAngle(cube_r5, 0.3229F, 0.0F, 0.0F); + this.cube_r5.cubeList.add(new ModelBox(cube_r5, 33, 27, -0.5F, 0.0F, -3.0F, 1, 1, 3, 0.0F, false)); + + this.cube_r6 = new AdvancedModelRenderer(this); + this.cube_r6.setRotationPoint(1.0F, 0.5F, 0.0F); + this.head.addChild(cube_r6); + this.setRotateAngle(cube_r6, 0.0393F, 0.0F, 0.0F); + this.cube_r6.cubeList.add(new ModelBox(cube_r6, 30, 8, -2.0F, 0.025F, -1.9F, 3, 1, 2, 0.0F, false)); + + this.cube_r7 = new AdvancedModelRenderer(this); + this.cube_r7.setRotationPoint(-0.9735F, 1.5738F, -1.9093F); + this.head.addChild(cube_r7); + this.setRotateAngle(cube_r7, 0.0532F, -0.4145F, -0.0038F); + this.cube_r7.cubeList.add(new ModelBox(cube_r7, 5, 39, 0.3F, -0.7F, -2.875F, 0, 1, 1, 0.0F, true)); + + this.cube_r8 = new AdvancedModelRenderer(this); + this.cube_r8.setRotationPoint(1.9735F, 1.5738F, -1.9093F); + this.head.addChild(cube_r8); + this.setRotateAngle(cube_r8, 0.0532F, 0.4145F, 0.0038F); + this.cube_r8.cubeList.add(new ModelBox(cube_r8, 5, 39, -0.3F, -0.7F, -2.875F, 0, 1, 1, 0.0F, false)); + + this.cube_r9 = new AdvancedModelRenderer(this); + this.cube_r9.setRotationPoint(-0.9735F, 1.5738F, -1.9093F); + this.head.addChild(cube_r9); + this.setRotateAngle(cube_r9, 0.0102F, -0.5454F, -0.0053F); + this.cube_r9.cubeList.add(new ModelBox(cube_r9, 23, 38, 0.0F, -1.0F, -1.95F, 1, 1, 2, 0.0F, true)); + + this.cube_r10 = new AdvancedModelRenderer(this); + this.cube_r10.setRotationPoint(1.9735F, 1.5738F, -1.9093F); + this.head.addChild(cube_r10); + this.setRotateAngle(cube_r10, 0.0102F, 0.5454F, 0.0053F); + this.cube_r10.cubeList.add(new ModelBox(cube_r10, 23, 38, -1.0F, -1.0F, -1.95F, 1, 1, 2, 0.0F, false)); + + this.cube_r11 = new AdvancedModelRenderer(this); + this.cube_r11.setRotationPoint(0.5F, 1.5968F, -1.8083F); + this.head.addChild(cube_r11); + this.setRotateAngle(cube_r11, 0.0087F, 0.0F, 0.0F); + this.cube_r11.cubeList.add(new ModelBox(cube_r11, 16, 38, -0.5F, -1.0F, -2.0F, 1, 1, 2, -0.001F, false)); + + this.eye = new AdvancedModelRenderer(this); + this.eye.setRotationPoint(1.375F, 0.7171F, -2.1617F); + this.head.addChild(eye); + + + this.cube_r12 = new AdvancedModelRenderer(this); + this.cube_r12.setRotationPoint(-1.75F, 0.0F, 0.0F); + this.eye.addChild(cube_r12); + this.setRotateAngle(cube_r12, 0.2183F, -0.4781F, -0.0623F); + this.cube_r12.cubeList.add(new ModelBox(cube_r12, 41, 0, -0.45F, -0.5F, -0.3F, 1, 1, 1, 0.0F, true)); + + this.cube_r13 = new AdvancedModelRenderer(this); + this.cube_r13.setRotationPoint(0.0F, 0.0F, 0.0F); + this.eye.addChild(cube_r13); + this.setRotateAngle(cube_r13, 0.2183F, 0.4781F, 0.0623F); + this.cube_r13.cubeList.add(new ModelBox(cube_r13, 41, 0, -0.55F, -0.5F, -0.3F, 1, 1, 1, 0.0F, false)); + + this.jaw = new AdvancedModelRenderer(this); + this.jaw.setRotationPoint(0.0F, 1.3527F, -0.7082F); + this.head.addChild(jaw); + + + this.cube_r14 = new AdvancedModelRenderer(this); + this.cube_r14.setRotationPoint(1.0F, -0.0089F, 0.2489F); + this.jaw.addChild(cube_r14); + this.setRotateAngle(cube_r14, -0.048F, 0.0F, 0.0F); + this.cube_r14.cubeList.add(new ModelBox(cube_r14, 0, 34, -1.0F, 0.025F, -4.0F, 1, 1, 3, -0.002F, false)); + this.cube_r14.cubeList.add(new ModelBox(cube_r14, 37, 21, -1.5F, -0.9F, -1.375F, 2, 1, 2, -0.005F, false)); + this.cube_r14.cubeList.add(new ModelBox(cube_r14, 30, 4, -2.0F, 0.05F, -1.4F, 3, 1, 2, -0.001F, false)); + + this.cube_r15 = new AdvancedModelRenderer(this); + this.cube_r15.setRotationPoint(-0.9735F, 0.9461F, -1.2011F); + this.jaw.addChild(cube_r15); + this.setRotateAngle(cube_r15, -0.0594F, -0.4554F, 0.0191F); + this.cube_r15.cubeList.add(new ModelBox(cube_r15, 31, 37, 0.175F, -1.3F, -2.775F, 0, 1, 3, 0.0F, true)); + + this.cube_r16 = new AdvancedModelRenderer(this); + this.cube_r16.setRotationPoint(1.9735F, 0.9461F, -1.2011F); + this.jaw.addChild(cube_r16); + this.setRotateAngle(cube_r16, -0.0594F, 0.4554F, -0.0191F); + this.cube_r16.cubeList.add(new ModelBox(cube_r16, 31, 37, -0.175F, -1.3F, -2.775F, 0, 1, 3, 0.0F, false)); + + this.cube_r17 = new AdvancedModelRenderer(this); + this.cube_r17.setRotationPoint(-0.9735F, 0.9461F, -1.2011F); + this.jaw.addChild(cube_r17); + this.setRotateAngle(cube_r17, -0.0623F, -0.5425F, 0.0252F); + this.cube_r17.cubeList.add(new ModelBox(cube_r17, 38, 37, 0.0F, -1.0F, -2.0F, 1, 1, 2, 0.0F, true)); + + this.cube_r18 = new AdvancedModelRenderer(this); + this.cube_r18.setRotationPoint(1.9735F, 0.9461F, -1.2011F); + this.jaw.addChild(cube_r18); + this.setRotateAngle(cube_r18, -0.0623F, 0.5425F, -0.0252F); + this.cube_r18.cubeList.add(new ModelBox(cube_r18, 38, 37, -1.0F, -1.0F, -2.0F, 1, 1, 2, 0.0F, false)); + + updateDefaultPose(); + animator = ModelAnimator.create(); + } + + @Override + public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { + animate((IAnimatedEntity) entity, f, f1, f2, f3, f4, f5); + this.main.render(f5); + } + + @Override + public void renderStaticBook(float f) { + //Rotations, positions and sizing: + this.main.offsetY = 0.2F; + this.main.offsetX = 0.35F; + this.main.offsetZ = 2.0F; + this.main.rotateAngleY = (float)Math.toRadians(120); + this.main.rotateAngleX = (float)Math.toRadians(1); + this.main.rotateAngleZ = (float)Math.toRadians(0); + this.main.scaleChildren = true; + float scaler = 0.6F; + this.main.setScale(scaler, scaler, scaler); + //Start of pose: + + //End of pose, now render the model: + this.main.render(f); + //Reset rotations, positions and sizing: + this.main.setScale(1.0F, 1.0F, 1.0F); + this.main.scaleChildren = false; + resetToDefaultPose(); + + } + + public void renderStaticWall(float f) { + resetToDefaultPose(); + } + + public void renderStaticFloor(float f) { + this.main.offsetY = -0.105F; + this.main.render(0.01F); + resetToDefaultPose(); + } + + public void setRotateAngle(AdvancedModelRenderer AdvancedModelRenderer, float x, float y, float z) { + AdvancedModelRenderer.rotateAngleX = x; + AdvancedModelRenderer.rotateAngleY = y; + AdvancedModelRenderer.rotateAngleZ = z; + } + + @Override + public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity e) { + super.setRotationAngles(f, f1, f2, f3, f4, f5, e); + //this.resetToDefaultPose(); + + EntityPrehistoricFloraErpetosuchus EntityMegalosaurus = (EntityPrehistoricFloraErpetosuchus) e; + + this.faceTarget(f3, f4, 8, body3); + this.faceTarget(f3, f4, 8, head); + + AdvancedModelRenderer[] Tail = {this.tail, this.tail2, this.tail3, this.tail4}; + AdvancedModelRenderer[] Neck = {this.body3, this.head}; + + EntityMegalosaurus.tailBuffer.applyChainSwingBuffer(Tail); + + if (EntityMegalosaurus.getAnimation() == EntityMegalosaurus.LAY_ANIMATION) { + this.chainSwing(Neck, 0.5F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.5F * 2, -0.02F, 0.5F, f2, 0.8F); + } + else { + if (!EntityMegalosaurus.isReallyInWater()) { + + if (f3 == 0.0F || !EntityMegalosaurus.getIsMoving()) { + this.chainSwing(Neck, 0.05F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.05F * 2, -0.02F, 0.5F, f2, 0.8F); + + this.chainWave(Tail, (0.15F * 0.35F), 0.125F * 0.15F, 0.2F, f2, 1F); + this.chainSwing(Tail, (0.15F * 0.35F) * 4F, 0.05F * 0.35F, 0.12F, f2, 1F); + return; + } + + if (EntityMegalosaurus.getIsFast()) { //Running + + + } else { //Walking + + } + } else { + //Swimming pose: + if (f3 == 0.0F) { //static in water + return; + } + //moving in water + return; + } + } + } + + public void animAttack(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraErpetosuchus entity = (EntityPrehistoricFloraErpetosuchus) entitylivingbaseIn; + int animCycle = 10; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (12.5-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = 12.5 + (((tickAnim - 3) / 4) * (-8.75-(12.5))); + yy = 0 + (((tickAnim - 3) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 4) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = -8.75 + (((tickAnim - 7) / 3) * (0-(-8.75))); + yy = 0 + (((tickAnim - 7) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body3, body3.rotateAngleX + (float) Math.toRadians(xx), body3.rotateAngleY + (float) Math.toRadians(yy), body3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (-18.5-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 5) { + xx = -18.5 + (((tickAnim - 3) / 2) * (-22.4-(-18.5))); + yy = 0 + (((tickAnim - 3) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 2) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 7) { + xx = -22.4 + (((tickAnim - 5) / 2) * (0-(-22.4))); + yy = 0 + (((tickAnim - 5) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 2) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = 0 + (((tickAnim - 7) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 7) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0.475-(0))); + } + else if (tickAnim >= 3 && tickAnim < 10) { + xx = 0 + (((tickAnim - 3) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 3) / 7) * (0-(0))); + zz = 0.475 + (((tickAnim - 3) / 7) * (0-(0.475))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.head.rotationPointX = this.head.rotationPointX + (float)(xx); + this.head.rotationPointY = this.head.rotationPointY - (float)(yy); + this.head.rotationPointZ = this.head.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (21-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 5) { + xx = 21 + (((tickAnim - 3) / 2) * (42.25-(21))); + yy = 0 + (((tickAnim - 3) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 2) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 7) { + xx = 42.25 + (((tickAnim - 5) / 2) * (0-(42.25))); + yy = 0 + (((tickAnim - 5) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animEat(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraErpetosuchus entity = (EntityPrehistoricFloraErpetosuchus) entitylivingbaseIn; + int animCycle = 20; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 8) { + xx = 0 + (((tickAnim - 5) / 3) * (36.63-(0))); + yy = 0 + (((tickAnim - 5) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 3) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 36.63 + (((tickAnim - 8) / 2) * (28.5-(36.63))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 28.5 + (((tickAnim - 10) / 10) * (0-(28.5))); + yy = 0 + (((tickAnim - 10) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body3, body3.rotateAngleX + (float) Math.toRadians(xx), body3.rotateAngleY + (float) Math.toRadians(yy), body3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (-0.375-(0))); + } + else if (tickAnim >= 5 && tickAnim < 8) { + xx = 0 + (((tickAnim - 5) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 5) / 3) * (0.17-(0))); + zz = -0.375 + (((tickAnim - 5) / 3) * (-0.95-(-0.375))); + } + else if (tickAnim >= 8 && tickAnim < 20) { + xx = 0 + (((tickAnim - 8) / 12) * (0-(0))); + yy = 0.17 + (((tickAnim - 8) / 12) * (0-(0.17))); + zz = -0.95 + (((tickAnim - 8) / 12) * (0-(-0.95))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.body3.rotationPointX = this.body3.rotationPointX + (float)(xx); + this.body3.rotationPointY = this.body3.rotationPointY - (float)(yy); + this.body3.rotationPointZ = this.body3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (32.13-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 8) { + xx = 32.13 + (((tickAnim - 5) / 3) * (11.19-(32.13))); + yy = 0 + (((tickAnim - 5) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 3) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 11.19 + (((tickAnim - 8) / 2) * (22.25-(11.19))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 22.25 + (((tickAnim - 10) / 10) * (0-(22.25))); + yy = 0 + (((tickAnim - 10) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 8) { + xx = 0 + (((tickAnim - 5) / 3) * (32.75-(0))); + yy = 0 + (((tickAnim - 5) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 3) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 32.75 + (((tickAnim - 8) / 2) * (0-(32.75))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 0 + (((tickAnim - 10) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 10) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animRoar(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraErpetosuchus entity = (EntityPrehistoricFloraErpetosuchus) entitylivingbaseIn; + int animCycle = 30; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 18) { + xx = -14.95+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50-30))*-30 + (((tickAnim - 0) / 18) * (-10.1-(-14.95+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50-30))*-30))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 30) { + xx = -10.1 + (((tickAnim - 18) / 12) * (0-(-10.1))); + yy = 0 + (((tickAnim - 18) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 12) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body3, body3.rotateAngleX + (float) Math.toRadians(xx), body3.rotateAngleY + (float) Math.toRadians(yy), body3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 12) { + xx = 0 + (((tickAnim - 0) / 12) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 12) * (0.325-(0))); + } + else if (tickAnim >= 12 && tickAnim < 30) { + xx = 0 + (((tickAnim - 12) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 12) / 18) * (0-(0))); + zz = 0.325 + (((tickAnim - 12) / 18) * (0-(0.325))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.body3.rotationPointX = this.body3.rotationPointX + (float)(xx); + this.body3.rotationPointY = this.body3.rotationPointY - (float)(yy); + this.body3.rotationPointZ = this.body3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (33.625+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-50-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 30) { + xx = 33.625+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-50 + (((tickAnim - 18) / 12) * (0-(33.625+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-50))); + yy = 0 + (((tickAnim - 18) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 12) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (77.2+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-100-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 21) { + xx = 77.2+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-100 + (((tickAnim - 18) / 3) * (0-(77.2+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-100))); + yy = 0 + (((tickAnim - 18) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 3) * (0-(0))); + } + else if (tickAnim >= 21 && tickAnim < 30) { + xx = 0 + (((tickAnim - 21) / 9) * (0-(0))); + yy = 0 + (((tickAnim - 21) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 21) / 9) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + + } + public void animNest(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraErpetosuchus entity = (EntityPrehistoricFloraErpetosuchus) entitylivingbaseIn; + int animCycle = 50; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 15) { + xx = 0 + (((tickAnim - 0) / 15) * (-25.35395-(0))); + yy = 0 + (((tickAnim - 0) / 15) * (-16.44463-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (-7.51672-(0))); + } + else if (tickAnim >= 15 && tickAnim < 24) { + xx = -25.35395 + (((tickAnim - 15) / 9) * (15.36576-(-25.35395))); + yy = -16.44463 + (((tickAnim - 15) / 9) * (-16.97536-(-16.44463))); + zz = -7.51672 + (((tickAnim - 15) / 9) * (-28.35428-(-7.51672))); + } + else if (tickAnim >= 24 && tickAnim < 35) { + xx = 15.36576 + (((tickAnim - 24) / 11) * (53.27976-(15.36576))); + yy = -16.97536 + (((tickAnim - 24) / 11) * (-16.42963-(-16.97536))); + zz = -28.35428 + (((tickAnim - 24) / 11) * (-17.68323-(-28.35428))); + } + else if (tickAnim >= 35 && tickAnim < 50) { + xx = 53.27976 + (((tickAnim - 35) / 15) * (0-(53.27976))); + yy = -16.42963 + (((tickAnim - 35) / 15) * (0-(-16.42963))); + zz = -17.68323 + (((tickAnim - 35) / 15) * (0-(-17.68323))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 15) { + xx = 0 + (((tickAnim - 0) / 15) * (-22.5-(0))); + yy = 0 + (((tickAnim - 0) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 24) { + xx = -22.5 + (((tickAnim - 15) / 9) * (0-(-22.5))); + yy = 0 + (((tickAnim - 15) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 15) / 9) * (0-(0))); + } + else if (tickAnim >= 24 && tickAnim < 35) { + xx = 0 + (((tickAnim - 24) / 11) * (16.25-(0))); + yy = 0 + (((tickAnim - 24) / 11) * (0-(0))); + zz = 0 + (((tickAnim - 24) / 11) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 50) { + xx = 16.25 + (((tickAnim - 35) / 15) * (0-(16.25))); + yy = 0 + (((tickAnim - 35) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 15) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 15) { + xx = 0 + (((tickAnim - 0) / 15) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 43) { + xx = 0 + (((tickAnim - 15) / 28) * (0-(0))); + yy = 0 + (((tickAnim - 15) / 28) * (0.75-(0))); + zz = 0 + (((tickAnim - 15) / 28) * (0-(0))); + } + else if (tickAnim >= 43 && tickAnim < 50) { + xx = 0 + (((tickAnim - 43) / 7) * (0-(0))); + yy = 0.75 + (((tickAnim - 43) / 7) * (0-(0.75))); + zz = 0 + (((tickAnim - 43) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg2.rotationPointX = this.backLeftLeg2.rotationPointX + (float)(xx); + this.backLeftLeg2.rotationPointY = this.backLeftLeg2.rotationPointY - (float)(yy); + this.backLeftLeg2.rotationPointZ = this.backLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 15) { + xx = 0 + (((tickAnim - 0) / 15) * (61.25-(0))); + yy = 0 + (((tickAnim - 0) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 24) { + xx = 61.25 + (((tickAnim - 15) / 9) * (66.37633-(61.25))); + yy = 0 + (((tickAnim - 15) / 9) * (-12.13005-(0))); + zz = 0 + (((tickAnim - 15) / 9) * (-14.73532-(0))); + } + else if (tickAnim >= 24 && tickAnim < 35) { + xx = 66.37633 + (((tickAnim - 24) / 11) * (69-(66.37633))); + yy = -12.13005 + (((tickAnim - 24) / 11) * (0-(-12.13005))); + zz = -14.73532 + (((tickAnim - 24) / 11) * (0-(-14.73532))); + } + else if (tickAnim >= 35 && tickAnim < 43) { + xx = 69 + (((tickAnim - 35) / 8) * (43.67-(69))); + yy = 0 + (((tickAnim - 35) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 8) * (0-(0))); + } + else if (tickAnim >= 43 && tickAnim < 50) { + xx = 43.67 + (((tickAnim - 43) / 7) * (0-(43.67))); + yy = 0 + (((tickAnim - 43) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 43) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg3, backLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 15) { + xx = 0 + (((tickAnim - 0) / 15) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 19) { + xx = 0 + (((tickAnim - 15) / 4) * (-0.16-(0))); + yy = 0 + (((tickAnim - 15) / 4) * (1.69-(0))); + zz = 0 + (((tickAnim - 15) / 4) * (0-(0))); + } + else if (tickAnim >= 19 && tickAnim < 24) { + xx = -0.16 + (((tickAnim - 19) / 5) * (-0.35-(-0.16))); + yy = 1.69 + (((tickAnim - 19) / 5) * (2-(1.69))); + zz = 0 + (((tickAnim - 19) / 5) * (0-(0))); + } + else if (tickAnim >= 24 && tickAnim < 35) { + xx = -0.35 + (((tickAnim - 24) / 11) * (0-(-0.35))); + yy = 2 + (((tickAnim - 24) / 11) * (0-(2))); + zz = 0 + (((tickAnim - 24) / 11) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 43) { + xx = 0 + (((tickAnim - 35) / 8) * (0-(0))); + yy = 0 + (((tickAnim - 35) / 8) * (1.5-(0))); + zz = 0 + (((tickAnim - 35) / 8) * (0-(0))); + } + else if (tickAnim >= 43 && tickAnim < 50) { + xx = 0 + (((tickAnim - 43) / 7) * (0-(0))); + yy = 1.5 + (((tickAnim - 43) / 7) * (0-(1.5))); + zz = 0 + (((tickAnim - 43) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg3.rotationPointX = this.backLeftLeg3.rotationPointX + (float)(xx); + this.backLeftLeg3.rotationPointY = this.backLeftLeg3.rotationPointY - (float)(yy); + this.backLeftLeg3.rotationPointZ = this.backLeftLeg3.rotationPointZ + (float)(zz); + + } + public void animLay(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraErpetosuchus entity = (EntityPrehistoricFloraErpetosuchus) entitylivingbaseIn; + int animCycle = 50; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-19.25-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = -19.25 + (((tickAnim - 18) / 16) * (-19.25-(-19.25))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = -19.25 + (((tickAnim - 34) / 16) * (0-(-19.25))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(xx), main.rotateAngleY + (float) Math.toRadians(yy), main.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (-1.8-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 0 + (((tickAnim - 18) / 16) * (0-(0))); + yy = -1.8 + (((tickAnim - 18) / 16) * (-1.8-(-1.8))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 0 + (((tickAnim - 34) / 16) * (0-(0))); + yy = -1.8 + (((tickAnim - 34) / 16) * (0-(-1.8))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.main.rotationPointX = this.main.rotationPointX + (float)(xx); + this.main.rotationPointY = this.main.rotationPointY - (float)(yy); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-33.25-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = -33.25 + (((tickAnim - 18) / 16) * (-33.25-(-33.25))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = -33.25 + (((tickAnim - 34) / 16) * (0-(-33.25))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (52-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 52 + (((tickAnim - 18) / 16) * (52-(52))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 52 + (((tickAnim - 34) / 16) * (0-(52))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-33.25-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = -33.25 + (((tickAnim - 18) / 16) * (-33.25-(-33.25))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = -33.25 + (((tickAnim - 34) / 16) * (0-(-33.25))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg, backRightLeg.rotateAngleX + (float) Math.toRadians(xx), backRightLeg.rotateAngleY + (float) Math.toRadians(yy), backRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (52-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 52 + (((tickAnim - 18) / 16) * (52-(52))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 52 + (((tickAnim - 34) / 16) * (0-(52))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg2, backRightLeg2.rotateAngleX + (float) Math.toRadians(xx), backRightLeg2.rotateAngleY + (float) Math.toRadians(yy), backRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (5.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 5.75 + (((tickAnim - 18) / 16) * (5.75-(5.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 5.75 + (((tickAnim - 34) / 16) * (0-(5.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(xx), tail.rotateAngleY + (float) Math.toRadians(yy), tail.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (14-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 14 + (((tickAnim - 18) / 16) * (14-(14))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 14 + (((tickAnim - 34) / 16) * (0-(14))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(xx), tail2.rotateAngleY + (float) Math.toRadians(yy), tail2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (10.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 10.75 + (((tickAnim - 18) / 16) * (10.75-(10.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 10.75 + (((tickAnim - 34) / 16) * (0-(10.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(xx), tail3.rotateAngleY + (float) Math.toRadians(yy), tail3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-18-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = -18 + (((tickAnim - 18) / 16) * (-18-(-18))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = -18 + (((tickAnim - 34) / 16) * (0-(-18))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(xx), tail4.rotateAngleY + (float) Math.toRadians(yy), tail4.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (5.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 5.75 + (((tickAnim - 18) / 16) * (5.75-(5.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 5.75 + (((tickAnim - 34) / 16) * (0-(5.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(xx), body.rotateAngleY + (float) Math.toRadians(yy), body.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (10-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 10 + (((tickAnim - 18) / 16) * (10-(10))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 10 + (((tickAnim - 34) / 16) * (0-(10))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(xx), body2.rotateAngleY + (float) Math.toRadians(yy), body2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-25.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = -25.75 + (((tickAnim - 18) / 16) * (-25.75-(-25.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = -25.75 + (((tickAnim - 34) / 16) * (0-(-25.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg2, frontLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (29.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 29.75 + (((tickAnim - 18) / 16) * (29.75-(29.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 29.75 + (((tickAnim - 34) / 16) * (0-(29.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg3, frontLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (-0.55-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (-0.675-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 0 + (((tickAnim - 18) / 16) * (0-(0))); + yy = -0.55 + (((tickAnim - 18) / 16) * (-0.55-(-0.55))); + zz = -0.675 + (((tickAnim - 18) / 16) * (-0.675-(-0.675))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 0 + (((tickAnim - 34) / 16) * (0-(0))); + yy = -0.55 + (((tickAnim - 34) / 16) * (0-(-0.55))); + zz = -0.675 + (((tickAnim - 34) / 16) * (0-(-0.675))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg3.rotationPointX = this.frontLeftLeg3.rotationPointX + (float)(xx); + this.frontLeftLeg3.rotationPointY = this.frontLeftLeg3.rotationPointY - (float)(yy); + this.frontLeftLeg3.rotationPointZ = this.frontLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-25.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = -25.75 + (((tickAnim - 18) / 16) * (-25.75-(-25.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = -25.75 + (((tickAnim - 34) / 16) * (0-(-25.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg2, frontRightLeg2.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg2.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (29.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 29.75 + (((tickAnim - 18) / 16) * (29.75-(29.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 29.75 + (((tickAnim - 34) / 16) * (0-(29.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg3, frontRightLeg3.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg3.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (-0.55-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (-0.675-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 0 + (((tickAnim - 18) / 16) * (0-(0))); + yy = -0.55 + (((tickAnim - 18) / 16) * (-0.55-(-0.55))); + zz = -0.675 + (((tickAnim - 18) / 16) * (-0.675-(-0.675))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 0 + (((tickAnim - 34) / 16) * (0-(0))); + yy = -0.55 + (((tickAnim - 34) / 16) * (0-(-0.55))); + zz = -0.675 + (((tickAnim - 34) / 16) * (0-(-0.675))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg3.rotationPointX = this.frontRightLeg3.rotationPointX + (float)(xx); + this.frontRightLeg3.rotationPointY = this.frontRightLeg3.rotationPointY - (float)(yy); + this.frontRightLeg3.rotationPointZ = this.frontRightLeg3.rotationPointZ + (float)(zz); + + } + public void animWalking(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraErpetosuchus entity = (EntityPrehistoricFloraErpetosuchus) entitylivingbaseIn; + int animCycle = 19; + double tickAnim = (entity.ticksExisted + entity.getTickOffset()) - (int) (Math.floor((double) (entity.ticksExisted + entity.getTickOffset()) / (double) animCycle) * (double) animCycle) + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375/0.5))*1), main.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-50))*1), main.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-50))*1)); + this.main.rotationPointX = this.main.rotationPointX + (float)(0); + this.main.rotationPointY = this.main.rotationPointY - (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375/0.5-100))*0.15); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375/0.5))*0.1); + + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = 35.5 + (((tickAnim - 0) / 6) * (5.83698-(35.5))); + yy = 0 + (((tickAnim - 0) / 6) * (-1.08257-(0))); + zz = 0 + (((tickAnim - 0) / 6) * (-9.187+Math.sin((Math.PI/180)*(((double)tickAnim/20)*120))*5-(0))); + } + else if (tickAnim >= 6 && tickAnim < 10) { + xx = 5.83698 + (((tickAnim - 6) / 4) * (-15.5-(5.83698))); + yy = -1.08257 + (((tickAnim - 6) / 4) * (0-(-1.08257))); + zz = -9.187+Math.sin((Math.PI/180)*(((double)tickAnim/20)*120))*5 + (((tickAnim - 6) / 4) * (0-(-9.187+Math.sin((Math.PI/180)*(((double)tickAnim/20)*120))*5))); + } + else if (tickAnim >= 10 && tickAnim < 19) { + xx = -15.5 + (((tickAnim - 10) / 9) * (35.5-(-15.5))); + yy = 0 + (((tickAnim - 10) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 9) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 7.5 + (((tickAnim - 0) / 3) * (27.31-(7.5))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 27.31 + (((tickAnim - 3) / 3) * (11.32141-(27.31))); + yy = 0 + (((tickAnim - 3) / 3) * (-0.05586-(0))); + zz = 0 + (((tickAnim - 3) / 3) * (0.47724-(0))); + } + else if (tickAnim >= 6 && tickAnim < 10) { + xx = 11.32141 + (((tickAnim - 6) / 4) * (-12.25-(11.32141))); + yy = -0.05586 + (((tickAnim - 6) / 4) * (0-(-0.05586))); + zz = 0.47724 + (((tickAnim - 6) / 4) * (0-(0.47724))); + } + else if (tickAnim >= 10 && tickAnim < 19) { + xx = -12.25 + (((tickAnim - 10) / 9) * (7.5-(-12.25))); + yy = 0 + (((tickAnim - 10) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 9) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = 0 + (((tickAnim - 0) / 6) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 6) * (1-(0))); + zz = 0 + (((tickAnim - 0) / 6) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 10) { + xx = 0 + (((tickAnim - 6) / 4) * (0-(0))); + yy = 1 + (((tickAnim - 6) / 4) * (0-(1))); + zz = 0 + (((tickAnim - 6) / 4) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 19) { + xx = 0 + (((tickAnim - 10) / 9) * (0-(0))); + yy = 0 + (((tickAnim - 10) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 9) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg2.rotationPointX = this.backLeftLeg2.rotationPointX + (float)(xx); + this.backLeftLeg2.rotationPointY = this.backLeftLeg2.rotationPointY - (float)(yy); + this.backLeftLeg2.rotationPointZ = this.backLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 59.5 + (((tickAnim - 0) / 3) * (77.13-(59.5))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 77.13 + (((tickAnim - 3) / 3) * (80.78-(77.13))); + yy = 0 + (((tickAnim - 3) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 3) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 80.78 + (((tickAnim - 6) / 2) * (7.39-(80.78))); + yy = 0 + (((tickAnim - 6) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 2) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 7.39 + (((tickAnim - 8) / 2) * (27-(7.39))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = 27 + (((tickAnim - 10) / 3) * (2.07-(27))); + yy = 0 + (((tickAnim - 10) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 3) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 17) { + xx = 2.07 + (((tickAnim - 13) / 4) * (12.48-(2.07))); + yy = 0 + (((tickAnim - 13) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 4) * (0-(0))); + } + else if (tickAnim >= 17 && tickAnim < 19) { + xx = 12.48 + (((tickAnim - 17) / 2) * (59.5-(12.48))); + yy = 0 + (((tickAnim - 17) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 17) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg3, backLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (-0.4-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 0 + (((tickAnim - 3) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 3) / 3) * (1.125-(0))); + zz = -0.4 + (((tickAnim - 3) / 3) * (-0.38-(-0.4))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 0 + (((tickAnim - 6) / 2) * (0-(0))); + yy = 1.125 + (((tickAnim - 6) / 2) * (0-(1.125))); + zz = -0.38 + (((tickAnim - 6) / 2) * (0-(-0.38))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 0 + (((tickAnim - 8) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 19) { + xx = 0 + (((tickAnim - 10) / 9) * (0-(0))); + yy = 0 + (((tickAnim - 10) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 9) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg3.rotationPointX = this.backLeftLeg3.rotationPointX + (float)(xx); + this.backLeftLeg3.rotationPointY = this.backLeftLeg3.rotationPointY - (float)(yy); + this.backLeftLeg3.rotationPointZ = this.backLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = -11.2326 + (((tickAnim - 0) / 2) * (-15.5-(-11.2326))); + yy = -0.21651 + (((tickAnim - 0) / 2) * (0-(-0.21651))); + zz = -1.01825 + (((tickAnim - 0) / 2) * (0-(-1.01825))); + } + else if (tickAnim >= 2 && tickAnim < 9) { + xx = -15.5 + (((tickAnim - 2) / 7) * (35.5-(-15.5))); + yy = 0 + (((tickAnim - 2) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 7) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 16) { + xx = 35.5 + (((tickAnim - 9) / 7) * (5.83698-(35.5))); + yy = 0 + (((tickAnim - 9) / 7) * (1.0826-(0))); + zz = 0 + (((tickAnim - 9) / 7) * (-1.913+Math.sin((Math.PI/180)*(((double)tickAnim/20)*120))*5-(0))); + } + else if (tickAnim >= 16 && tickAnim < 19) { + xx = 5.83698 + (((tickAnim - 16) / 3) * (-11.2326-(5.83698))); + yy = 1.0826 + (((tickAnim - 16) / 3) * (-0.21651-(1.0826))); + zz = -1.913+Math.sin((Math.PI/180)*(((double)tickAnim/20)*120))*5 + (((tickAnim - 16) / 3) * (-1.01825-(-1.913+Math.sin((Math.PI/180)*(((double)tickAnim/20)*120))*5))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg, backRightLeg.rotateAngleX + (float) Math.toRadians(xx), backRightLeg.rotateAngleY + (float) Math.toRadians(yy), backRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = -7.53572 + (((tickAnim - 0) / 2) * (-12.25-(-7.53572))); + yy = -0.01117 + (((tickAnim - 0) / 2) * (0-(-0.01117))); + zz = 0.09545 + (((tickAnim - 0) / 2) * (0-(0.09545))); + } + else if (tickAnim >= 2 && tickAnim < 9) { + xx = -12.25 + (((tickAnim - 2) / 7) * (7.5-(-12.25))); + yy = 0 + (((tickAnim - 2) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 7) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 11) { + xx = 7.5 + (((tickAnim - 9) / 2) * (24.70535-(7.5))); + yy = 0 + (((tickAnim - 9) / 2) * (-0.01397-(0))); + zz = 0 + (((tickAnim - 9) / 2) * (0.11931-(0))); + } + else if (tickAnim >= 11 && tickAnim < 16) { + xx = 24.70535 + (((tickAnim - 11) / 5) * (11.32141-(24.70535))); + yy = -0.01397 + (((tickAnim - 11) / 5) * (-0.05586-(-0.01397))); + zz = 0.11931 + (((tickAnim - 11) / 5) * (0.47724-(0.11931))); + } + else if (tickAnim >= 16 && tickAnim < 19) { + xx = 11.32141 + (((tickAnim - 16) / 3) * (-7.53572-(11.32141))); + yy = -0.05586 + (((tickAnim - 16) / 3) * (-0.01117-(-0.05586))); + zz = 0.47724 + (((tickAnim - 16) / 3) * (0.09545-(0.47724))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg2, backRightLeg2.rotateAngleX + (float) Math.toRadians(xx), backRightLeg2.rotateAngleY + (float) Math.toRadians(yy), backRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0.2 + (((tickAnim - 0) / 2) * (0-(0.2))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 9) { + xx = 0 + (((tickAnim - 2) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 2) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 7) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 16) { + xx = 0 + (((tickAnim - 9) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 9) / 7) * (1-(0))); + zz = 0 + (((tickAnim - 9) / 7) * (0-(0))); + } + else if (tickAnim >= 16 && tickAnim < 19) { + xx = 0 + (((tickAnim - 16) / 3) * (0-(0))); + yy = 1 + (((tickAnim - 16) / 3) * (0.2-(1))); + zz = 0 + (((tickAnim - 16) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg2.rotationPointX = this.backRightLeg2.rotationPointX + (float)(xx); + this.backRightLeg2.rotationPointY = this.backRightLeg2.rotationPointY - (float)(yy); + this.backRightLeg2.rotationPointZ = this.backRightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 17.19 + (((tickAnim - 0) / 2) * (27-(17.19))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 6) { + xx = 27 + (((tickAnim - 2) / 4) * (-2.54-(27))); + yy = 0 + (((tickAnim - 2) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 4) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = -2.54 + (((tickAnim - 6) / 2) * (24.06-(-2.54))); + yy = 0 + (((tickAnim - 6) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 2) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 9) { + xx = 24.06 + (((tickAnim - 8) / 1) * (59.5-(24.06))); + yy = 0 + (((tickAnim - 8) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 1) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 11) { + xx = 59.5 + (((tickAnim - 9) / 2) * (71.82-(59.5))); + yy = 0 + (((tickAnim - 9) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 9) / 2) * (0-(0))); + } + else if (tickAnim >= 11 && tickAnim < 16) { + xx = 71.82 + (((tickAnim - 11) / 5) * (80.78-(71.82))); + yy = 0 + (((tickAnim - 11) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 11) / 5) * (0-(0))); + } + else if (tickAnim >= 16 && tickAnim < 19) { + xx = 80.78 + (((tickAnim - 16) / 3) * (17.19-(80.78))); + yy = 0 + (((tickAnim - 16) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 16) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg3, backRightLeg3.rotateAngleX + (float) Math.toRadians(xx), backRightLeg3.rotateAngleY + (float) Math.toRadians(yy), backRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 6) { + xx = 0 + (((tickAnim - 2) / 4) * (0-(0))); + yy = 0 + (((tickAnim - 2) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 4) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 9) { + xx = 0 + (((tickAnim - 6) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 6) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 3) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 16) { + xx = 0 + (((tickAnim - 9) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 9) / 7) * (1.5-(0))); + zz = 0 + (((tickAnim - 9) / 7) * (-0.38-(0))); + } + else if (tickAnim >= 16 && tickAnim < 18) { + xx = 0 + (((tickAnim - 16) / 2) * (0-(0))); + yy = 1.5 + (((tickAnim - 16) / 2) * (1.3-(1.5))); + zz = -0.38 + (((tickAnim - 16) / 2) * (-0.19-(-0.38))); + } + else if (tickAnim >= 18 && tickAnim < 19) { + xx = 0 + (((tickAnim - 18) / 1) * (0-(0))); + yy = 1.3 + (((tickAnim - 18) / 1) * (0-(1.3))); + zz = -0.19 + (((tickAnim - 18) / 1) * (0-(-0.19))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg3.rotationPointX = this.backRightLeg3.rotationPointX + (float)(xx); + this.backRightLeg3.rotationPointY = this.backRightLeg3.rotationPointY - (float)(yy); + this.backRightLeg3.rotationPointZ = this.backRightLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(-1.5+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375/0.5-50))*1), tail.rotateAngleY + (float) Math.toRadians(Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-50))*1), tail.rotateAngleZ + (float) Math.toRadians(Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-50))*1)); + + + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375/0.5-100))*2), tail2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-100))*5), tail2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-50))*1)); + + + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375/0.5-150))*4), tail3.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-150))*10), tail3.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-50))*1)); + + + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375/0.5-200))*8), tail4.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-200))*20), tail4.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-50))*1)); + + + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(0), body.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-100))*-2), body.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-100))*2)); + + + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375/0.5-50))*-2), body2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-150))*2), body2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-150))*-3)); + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = -41.25 + (((tickAnim - 0) / 8) * (16.9414-(-41.25))); + yy = 0 + (((tickAnim - 0) / 8) * (24.74959-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (-8.22979-(0))); + } + else if (tickAnim >= 8 && tickAnim < 14) { + xx = 16.9414 + (((tickAnim - 8) / 6) * (-4.10814-(16.9414))); + yy = 24.74959 + (((tickAnim - 8) / 6) * (16.61652-(24.74959))); + zz = -8.22979 + (((tickAnim - 8) / 6) * (-31.47549-(-8.22979))); + } + else if (tickAnim >= 14 && tickAnim < 19) { + xx = -4.10814 + (((tickAnim - 14) / 5) * (-41.25-(-4.10814))); + yy = 16.61652 + (((tickAnim - 14) / 5) * (0-(16.61652))); + zz = -31.47549 + (((tickAnim - 14) / 5) * (0-(-31.47549))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg, frontLeftLeg.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 28.75 + (((tickAnim - 0) / 8) * (11.75-(28.75))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 11.75 + (((tickAnim - 8) / 2) * (41.97864-(11.75))); + yy = 0 + (((tickAnim - 8) / 2) * (3.275-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (13.8761-(0))); + } + else if (tickAnim >= 10 && tickAnim < 14) { + xx = 41.97864 + (((tickAnim - 10) / 4) * (-44.59147-(41.97864))); + yy = 3.275 + (((tickAnim - 10) / 4) * (-30.94943-(3.275))); + zz = 13.8761 + (((tickAnim - 10) / 4) * (4.39932-(13.8761))); + } + else if (tickAnim >= 14 && tickAnim < 19) { + xx = -44.59147 + (((tickAnim - 14) / 5) * (28.75-(-44.59147))); + yy = -30.94943 + (((tickAnim - 14) / 5) * (0-(-30.94943))); + zz = 4.39932 + (((tickAnim - 14) / 5) * (0-(4.39932))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg2, frontLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 0 + (((tickAnim - 8) / 2) * (-0.2-(0))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 14) { + xx = -0.2 + (((tickAnim - 10) / 4) * (0-(-0.2))); + yy = 0 + (((tickAnim - 10) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 4) * (0-(0))); + } + else if (tickAnim >= 14 && tickAnim < 19) { + xx = 0 + (((tickAnim - 14) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 14) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 14) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg2.rotationPointX = this.frontLeftLeg2.rotationPointX + (float)(xx); + this.frontLeftLeg2.rotationPointY = this.frontLeftLeg2.rotationPointY - (float)(yy); + this.frontLeftLeg2.rotationPointZ = this.frontLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = 11.75 + (((tickAnim - 0) / 4) * (-3.75-(11.75))); + yy = 0 + (((tickAnim - 0) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 4) * (0-(0))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = -3.75 + (((tickAnim - 4) / 4) * (62.75-(-3.75))); + yy = 0 + (((tickAnim - 4) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 4) / 4) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 11) { + xx = 62.75 + (((tickAnim - 8) / 3) * (67.66-(62.75))); + yy = 0 + (((tickAnim - 8) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 3) * (0-(0))); + } + else if (tickAnim >= 11 && tickAnim < 13) { + xx = 67.66 + (((tickAnim - 11) / 2) * (71.29-(67.66))); + yy = 0 + (((tickAnim - 11) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 11) / 2) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 19) { + xx = 71.29 + (((tickAnim - 13) / 6) * (11.75-(71.29))); + yy = 0 + (((tickAnim - 13) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 6) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg3, frontLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = 0 + (((tickAnim - 0) / 4) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 4) * (0-(0))); + zz = -0.525 + (((tickAnim - 0) / 4) * (0-(-0.525))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = 0 + (((tickAnim - 4) / 4) * (0-(0))); + yy = 0 + (((tickAnim - 4) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 4) / 4) * (-0.45-(0))); + } + else if (tickAnim >= 8 && tickAnim < 11) { + xx = 0 + (((tickAnim - 8) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 8) / 3) * (-0.725-(0))); + zz = -0.45 + (((tickAnim - 8) / 3) * (0-(-0.45))); + } + else if (tickAnim >= 11 && tickAnim < 13) { + xx = 0 + (((tickAnim - 11) / 2) * (0-(0))); + yy = -0.725 + (((tickAnim - 11) / 2) * (0-(-0.725))); + zz = 0 + (((tickAnim - 11) / 2) * (-0.15-(0))); + } + else if (tickAnim >= 13 && tickAnim < 19) { + xx = 0 + (((tickAnim - 13) / 6) * (0-(0))); + yy = 0 + (((tickAnim - 13) / 6) * (0-(0))); + zz = -0.15 + (((tickAnim - 13) / 6) * (-0.525-(-0.15))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg3.rotationPointX = this.frontLeftLeg3.rotationPointX + (float)(xx); + this.frontLeftLeg3.rotationPointY = this.frontLeftLeg3.rotationPointY - (float)(yy); + this.frontLeftLeg3.rotationPointZ = this.frontLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 16.9414 + (((tickAnim - 0) / 5) * (-4.10814-(16.9414))); + yy = -24.74959 + (((tickAnim - 0) / 5) * (-16.61652-(-24.74959))); + zz = 8.22979 + (((tickAnim - 0) / 5) * (31.47549-(8.22979))); + } + else if (tickAnim >= 5 && tickAnim < 9) { + xx = -4.10814 + (((tickAnim - 5) / 4) * (-41.25-(-4.10814))); + yy = -16.61652 + (((tickAnim - 5) / 4) * (0-(-16.61652))); + zz = 31.47549 + (((tickAnim - 5) / 4) * (0-(31.47549))); + } + else if (tickAnim >= 9 && tickAnim < 19) { + xx = -41.25 + (((tickAnim - 9) / 10) * (16.9414-(-41.25))); + yy = 0 + (((tickAnim - 9) / 10) * (-24.74959-(0))); + zz = 0 + (((tickAnim - 9) / 10) * (8.22979-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg, frontRightLeg.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 11.75 + (((tickAnim - 0) / 2) * (41.97864-(11.75))); + yy = 0 + (((tickAnim - 0) / 2) * (-3.275-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (-13.8761-(0))); + } + else if (tickAnim >= 2 && tickAnim < 5) { + xx = 41.97864 + (((tickAnim - 2) / 3) * (-44.59147-(41.97864))); + yy = -3.275 + (((tickAnim - 2) / 3) * (30.94943-(-3.275))); + zz = -13.8761 + (((tickAnim - 2) / 3) * (-4.39932-(-13.8761))); + } + else if (tickAnim >= 5 && tickAnim < 9) { + xx = -44.59147 + (((tickAnim - 5) / 4) * (28.75-(-44.59147))); + yy = 30.94943 + (((tickAnim - 5) / 4) * (0-(30.94943))); + zz = -4.39932 + (((tickAnim - 5) / 4) * (0-(-4.39932))); + } + else if (tickAnim >= 9 && tickAnim < 19) { + xx = 28.75 + (((tickAnim - 9) / 10) * (11.75-(28.75))); + yy = 0 + (((tickAnim - 9) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 9) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg2, frontRightLeg2.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg2.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (-0.2-(0))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 5) { + xx = -0.2 + (((tickAnim - 2) / 3) * (0-(-0.2))); + yy = 0 + (((tickAnim - 2) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 3) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 9) { + xx = 0 + (((tickAnim - 5) / 4) * (0-(0))); + yy = 0 + (((tickAnim - 5) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 4) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 19) { + xx = 0 + (((tickAnim - 9) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 9) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 9) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg2.rotationPointX = this.frontRightLeg2.rotationPointX + (float)(xx); + this.frontRightLeg2.rotationPointY = this.frontRightLeg2.rotationPointY - (float)(yy); + this.frontRightLeg2.rotationPointZ = this.frontRightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 62.75 + (((tickAnim - 0) / 3) * (67.66-(62.75))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 4) { + xx = 67.66 + (((tickAnim - 3) / 1) * (71.29-(67.66))); + yy = 0 + (((tickAnim - 3) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 1) * (0-(0))); + } + else if (tickAnim >= 4 && tickAnim < 9) { + xx = 71.29 + (((tickAnim - 4) / 5) * (11.75-(71.29))); + yy = 0 + (((tickAnim - 4) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 4) / 5) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 14) { + xx = 11.75 + (((tickAnim - 9) / 5) * (-8.75302-(11.75))); + yy = 0 + (((tickAnim - 9) / 5) * (-3.26868-(0))); + zz = 0 + (((tickAnim - 9) / 5) * (13.36311-(0))); + } + else if (tickAnim >= 14 && tickAnim < 19) { + xx = -8.75302 + (((tickAnim - 14) / 5) * (62.75-(-8.75302))); + yy = -3.26868 + (((tickAnim - 14) / 5) * (0-(-3.26868))); + zz = 13.36311 + (((tickAnim - 14) / 5) * (0-(13.36311))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg3, frontRightLeg3.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg3.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (-0.725-(0))); + zz = -0.45 + (((tickAnim - 0) / 3) * (0-(-0.45))); + } + else if (tickAnim >= 3 && tickAnim < 4) { + xx = 0 + (((tickAnim - 3) / 1) * (0-(0))); + yy = -0.725 + (((tickAnim - 3) / 1) * (0-(-0.725))); + zz = 0 + (((tickAnim - 3) / 1) * (-0.15-(0))); + } + else if (tickAnim >= 4 && tickAnim < 9) { + xx = 0 + (((tickAnim - 4) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 4) / 5) * (0-(0))); + zz = -0.15 + (((tickAnim - 4) / 5) * (-0.525-(-0.15))); + } + else if (tickAnim >= 9 && tickAnim < 14) { + xx = 0 + (((tickAnim - 9) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 9) / 5) * (-0.175-(0))); + zz = -0.525 + (((tickAnim - 9) / 5) * (0-(-0.525))); + } + else if (tickAnim >= 14 && tickAnim < 19) { + xx = 0 + (((tickAnim - 14) / 5) * (0-(0))); + yy = -0.175 + (((tickAnim - 14) / 5) * (0-(-0.175))); + zz = 0 + (((tickAnim - 14) / 5) * (-0.45-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg3.rotationPointX = this.frontRightLeg3.rotationPointX + (float)(xx); + this.frontRightLeg3.rotationPointY = this.frontRightLeg3.rotationPointY - (float)(yy); + this.frontRightLeg3.rotationPointZ = this.frontRightLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(body3, body3.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375/0.5-80))*3), body3.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-200))*-2), body3.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-250))*3)); + + + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(0), head.rotateAngleY + (float) Math.toRadians(0), head.rotateAngleZ + (float) Math.toRadians(0)); + + } + public void animRunning(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraErpetosuchus entity = (EntityPrehistoricFloraErpetosuchus) entitylivingbaseIn; + int animCycle = 8; + double tickAnim = (entity.ticksExisted + entity.getTickOffset()) - (int) (Math.floor((double) (entity.ticksExisted + entity.getTickOffset()) / (double) animCycle) * (double) animCycle) + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*430/0.5-30))*9), main.rotateAngleY + (float) Math.toRadians(0), main.rotateAngleZ + (float) Math.toRadians(0)); + this.main.rotationPointX = this.main.rotationPointX + (float)(0); + this.main.rotationPointY = this.main.rotationPointY - (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*430/0.5-20))*0.5); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*430/0.5))*0.5); + + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = -33.16689 + (((tickAnim - 0) / 4) * (40.23032-(-33.16689))); + yy = -13.3269 + (((tickAnim - 0) / 4) * (-7.716-(-13.3269))); + zz = -6.901 + (((tickAnim - 0) / 4) * (-0.6108-(-6.901))); + } + else if (tickAnim >= 4 && tickAnim < 7) { + xx = 40.23032 + (((tickAnim - 4) / 3) * (-37.8031-(40.23032))); + yy = -7.716 + (((tickAnim - 4) / 3) * (-15.2529-(-7.716))); + zz = -0.6108 + (((tickAnim - 4) / 3) * (-15.288-(-0.6108))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = -37.8031 + (((tickAnim - 7) / 1) * (-33.16689-(-37.8031))); + yy = -15.2529 + (((tickAnim - 7) / 1) * (-13.3269-(-15.2529))); + zz = -15.288 + (((tickAnim - 7) / 1) * (-6.901-(-15.288))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = -6.5 + (((tickAnim - 0) / 4) * (12-(-6.5))); + yy = 0 + (((tickAnim - 0) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 4) * (0-(0))); + } + else if (tickAnim >= 4 && tickAnim < 6) { + xx = 12 + (((tickAnim - 4) / 2) * (27.1-(12))); + yy = 0 + (((tickAnim - 4) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 4) / 2) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 27.1 + (((tickAnim - 6) / 2) * (-6.5-(27.1))); + yy = 0 + (((tickAnim - 6) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = -0.45 + (((tickAnim - 0) / 3) * (-0.275-(-0.45))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 0 + (((tickAnim - 3) / 3) * (0-(0))); + yy = -0.275 + (((tickAnim - 3) / 3) * (1.025-(-0.275))); + zz = 0 + (((tickAnim - 3) / 3) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 0 + (((tickAnim - 6) / 2) * (0-(0))); + yy = 1.025 + (((tickAnim - 6) / 2) * (-0.3-(1.025))); + zz = 0 + (((tickAnim - 6) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg2.rotationPointX = this.backLeftLeg2.rotationPointX + (float)(xx); + this.backLeftLeg2.rotationPointY = this.backLeftLeg2.rotationPointY - (float)(yy); + this.backLeftLeg2.rotationPointZ = this.backLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 1) { + xx = 47.40521 + (((tickAnim - 0) / 1) * (17.59271-(47.40521))); + yy = 1.6579 + (((tickAnim - 0) / 1) * (1.6579-(1.6579))); + zz = 6.5441 + (((tickAnim - 0) / 1) * (6.5441-(6.5441))); + } + else if (tickAnim >= 1 && tickAnim < 2) { + xx = 17.59271 + (((tickAnim - 1) / 1) * (26.78021-(17.59271))); + yy = 1.6579 + (((tickAnim - 1) / 1) * (1.6579-(1.6579))); + zz = 6.5441 + (((tickAnim - 1) / 1) * (6.5441-(6.5441))); + } + else if (tickAnim >= 2 && tickAnim < 4) { + xx = 26.78021 + (((tickAnim - 2) / 2) * (73.40521-(26.78021))); + yy = 1.6579 + (((tickAnim - 2) / 2) * (1.6579-(1.6579))); + zz = 6.5441 + (((tickAnim - 2) / 2) * (-6.5441-(6.5441))); + } + else if (tickAnim >= 4 && tickAnim < 5) { + xx = 73.40521 + (((tickAnim - 4) / 1) * (96.53021-(73.40521))); + yy = 1.6579 + (((tickAnim - 4) / 1) * (1.6579-(1.6579))); + zz = -6.5441 + (((tickAnim - 4) / 1) * (-6.5441-(-6.5441))); + } + else if (tickAnim >= 5 && tickAnim < 7) { + xx = 96.53021 + (((tickAnim - 5) / 2) * (25.24709-(96.53021))); + yy = 1.6579 + (((tickAnim - 5) / 2) * (3.49168-(1.6579))); + zz = -6.5441 + (((tickAnim - 5) / 2) * (5.59285-(-6.5441))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 25.24709 + (((tickAnim - 7) / 1) * (13.28021-(25.24709))); + yy = 3.49168 + (((tickAnim - 7) / 1) * (1.6579-(3.49168))); + zz = 5.59285 + (((tickAnim - 7) / 1) * (6.5441-(5.59285))); + } + else if (tickAnim >= 8 && tickAnim < 8) { + xx = 13.28021 + (((tickAnim - 8) / 0) * (47.40521-(13.28021))); + yy = 1.6579 + (((tickAnim - 8) / 0) * (1.6579-(1.6579))); + zz = 6.5441 + (((tickAnim - 8) / 0) * (6.5441-(6.5441))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg3, backLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = -0.325 + (((tickAnim - 0) / 2) * (-0.125-(-0.325))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 3) { + xx = 0 + (((tickAnim - 2) / 1) * (0-(0))); + yy = -0.125 + (((tickAnim - 2) / 1) * (0.385-(-0.125))); + zz = 0 + (((tickAnim - 2) / 1) * (0.2-(0))); + } + else if (tickAnim >= 3 && tickAnim < 4) { + xx = 0 + (((tickAnim - 3) / 1) * (0-(0))); + yy = 0.385 + (((tickAnim - 3) / 1) * (0.15-(0.385))); + zz = 0.2 + (((tickAnim - 3) / 1) * (-0.375-(0.2))); + } + else if (tickAnim >= 4 && tickAnim < 7) { + xx = 0 + (((tickAnim - 4) / 3) * (0-(0))); + yy = 0.15 + (((tickAnim - 4) / 3) * (0.525-(0.15))); + zz = -0.375 + (((tickAnim - 4) / 3) * (0-(-0.375))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 0 + (((tickAnim - 7) / 1) * (0-(0))); + yy = 0.525 + (((tickAnim - 7) / 1) * (0-(0.525))); + zz = 0 + (((tickAnim - 7) / 1) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 8) { + xx = 0 + (((tickAnim - 8) / 0) * (0-(0))); + yy = 0 + (((tickAnim - 8) / 0) * (-0.325-(0))); + zz = 0 + (((tickAnim - 8) / 0) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg3.rotationPointX = this.backLeftLeg3.rotationPointX + (float)(xx); + this.backLeftLeg3.rotationPointY = this.backLeftLeg3.rotationPointY - (float)(yy); + this.backLeftLeg3.rotationPointZ = this.backLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = -34.91689 + (((tickAnim - 0) / 3) * (38.73032-(-34.91689))); + yy = 13.3269 + (((tickAnim - 0) / 3) * (7.71601-(13.3269))); + zz = 6.901 + (((tickAnim - 0) / 3) * (0.61082-(6.901))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = 38.73032 + (((tickAnim - 3) / 4) * (-39.16633-(38.73032))); + yy = 7.71601 + (((tickAnim - 3) / 4) * (15.36745-(7.71601))); + zz = 0.61082 + (((tickAnim - 3) / 4) * (15.11285-(0.61082))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = -39.16633 + (((tickAnim - 7) / 1) * (-34.91689-(-39.16633))); + yy = 15.36745 + (((tickAnim - 7) / 1) * (13.3269-(15.36745))); + zz = 15.11285 + (((tickAnim - 7) / 1) * (6.901-(15.11285))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg, backRightLeg.rotateAngleX + (float) Math.toRadians(xx), backRightLeg.rotateAngleY + (float) Math.toRadians(yy), backRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = -6.5 + (((tickAnim - 0) / 3) * (15.27241-(-6.5))); + yy = 0 + (((tickAnim - 0) / 3) * (-4.74918-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (5.48423-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 15.27241 + (((tickAnim - 3) / 3) * (27.1-(15.27241))); + yy = -4.74918 + (((tickAnim - 3) / 3) * (0-(-4.74918))); + zz = 5.48423 + (((tickAnim - 3) / 3) * (0-(5.48423))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 27.1 + (((tickAnim - 6) / 2) * (-6.5-(27.1))); + yy = 0 + (((tickAnim - 6) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg2, backRightLeg2.rotateAngleX + (float) Math.toRadians(xx), backRightLeg2.rotateAngleY + (float) Math.toRadians(yy), backRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = -0.45 + (((tickAnim - 0) / 3) * (-0.275-(-0.45))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 0 + (((tickAnim - 3) / 3) * (0-(0))); + yy = -0.275 + (((tickAnim - 3) / 3) * (1.4-(-0.275))); + zz = 0 + (((tickAnim - 3) / 3) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 0 + (((tickAnim - 6) / 2) * (0-(0))); + yy = 1.4 + (((tickAnim - 6) / 2) * (-0.3-(1.4))); + zz = 0 + (((tickAnim - 6) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg2.rotationPointX = this.backRightLeg2.rotationPointX + (float)(xx); + this.backRightLeg2.rotationPointY = this.backRightLeg2.rotationPointY - (float)(yy); + this.backRightLeg2.rotationPointZ = this.backRightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 1) { + xx = 46.71229 + (((tickAnim - 0) / 1) * (12.09271-(46.71229))); + yy = 6.24152 + (((tickAnim - 0) / 1) * (1.6579-(6.24152))); + zz = -3.482 + (((tickAnim - 0) / 1) * (0-(-3.482))); + } + else if (tickAnim >= 1 && tickAnim < 2) { + xx = 12.09271 + (((tickAnim - 1) / 1) * (27.28021-(12.09271))); + yy = 1.6579 + (((tickAnim - 1) / 1) * (1.6579-(1.6579))); + zz = 0 + (((tickAnim - 1) / 1) * (-6.5441-(0))); + } + else if (tickAnim >= 2 && tickAnim < 3) { + xx = 27.28021 + (((tickAnim - 2) / 1) * (73.40521-(27.28021))); + yy = 1.6579 + (((tickAnim - 2) / 1) * (1.6579-(1.6579))); + zz = -6.5441 + (((tickAnim - 2) / 1) * (-6.5441-(-6.5441))); + } + else if (tickAnim >= 3 && tickAnim < 5) { + xx = 73.40521 + (((tickAnim - 3) / 2) * (96.53021-(73.40521))); + yy = 1.6579 + (((tickAnim - 3) / 2) * (1.6579-(1.6579))); + zz = -6.5441 + (((tickAnim - 3) / 2) * (-6.5441-(-6.5441))); + } + else if (tickAnim >= 5 && tickAnim < 7) { + xx = 96.53021 + (((tickAnim - 5) / 2) * (25.24709-(96.53021))); + yy = 1.6579 + (((tickAnim - 5) / 2) * (3.49168-(1.6579))); + zz = -6.5441 + (((tickAnim - 5) / 2) * (5.59285-(-6.5441))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 25.24709 + (((tickAnim - 7) / 1) * (13.28021-(25.24709))); + yy = 3.49168 + (((tickAnim - 7) / 1) * (1.6579-(3.49168))); + zz = 5.59285 + (((tickAnim - 7) / 1) * (-6.5441-(5.59285))); + } + else if (tickAnim >= 8 && tickAnim < 8) { + xx = 13.28021 + (((tickAnim - 8) / 0) * (46.71229-(13.28021))); + yy = 1.6579 + (((tickAnim - 8) / 0) * (6.24152-(1.6579))); + zz = -6.5441 + (((tickAnim - 8) / 0) * (-3.482-(-6.5441))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg3, backRightLeg3.rotateAngleX + (float) Math.toRadians(xx), backRightLeg3.rotateAngleY + (float) Math.toRadians(yy), backRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = -0.325 + (((tickAnim - 0) / 2) * (-0.125-(-0.325))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 3) { + xx = 0 + (((tickAnim - 2) / 1) * (0-(0))); + yy = -0.125 + (((tickAnim - 2) / 1) * (0.15-(-0.125))); + zz = 0 + (((tickAnim - 2) / 1) * (-0.375-(0))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = 0 + (((tickAnim - 3) / 4) * (0-(0))); + yy = 0.15 + (((tickAnim - 3) / 4) * (0.675-(0.15))); + zz = -0.375 + (((tickAnim - 3) / 4) * (0-(-0.375))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 0 + (((tickAnim - 7) / 1) * (0-(0))); + yy = 0.675 + (((tickAnim - 7) / 1) * (0-(0.675))); + zz = 0 + (((tickAnim - 7) / 1) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 8) { + xx = 0 + (((tickAnim - 8) / 0) * (0-(0))); + yy = 0 + (((tickAnim - 8) / 0) * (-0.325-(0))); + zz = 0 + (((tickAnim - 8) / 0) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg3.rotationPointX = this.backRightLeg3.rotationPointX + (float)(xx); + this.backRightLeg3.rotationPointY = this.backRightLeg3.rotationPointY - (float)(yy); + this.backRightLeg3.rotationPointZ = this.backRightLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(6.25+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*430/0.5+20))*5), tail.rotateAngleY + (float) Math.toRadians(0), tail.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(5.75+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*430/0.5-100))*10), tail2.rotateAngleY + (float) Math.toRadians(0), tail2.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*430/0.5-150))*20), tail3.rotateAngleY + (float) Math.toRadians(0), tail3.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*430/0.5-150))*30), tail4.rotateAngleY + (float) Math.toRadians(0), tail4.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*430/0.5+70))*10), body.rotateAngleY + (float) Math.toRadians(0), body.rotateAngleZ + (float) Math.toRadians(0)); + this.body.rotationPointX = this.body.rotationPointX + (float)(0); + this.body.rotationPointY = this.body.rotationPointY - (float)(0); + this.body.rotationPointZ = this.body.rotationPointZ + (float)(0.425); + + + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*430/0.5-20))*-9), body2.rotateAngleY + (float) Math.toRadians(0), body2.rotateAngleZ + (float) Math.toRadians(0)); + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 39.92159 + (((tickAnim - 0) / 2) * (-8.87369-(39.92159))); + yy = 5.86879 + (((tickAnim - 0) / 2) * (13.05994-(5.86879))); + zz = -0.31147 + (((tickAnim - 0) / 2) * (-55.54863-(-0.31147))); + } + else if (tickAnim >= 2 && tickAnim < 4) { + xx = -8.87369 + (((tickAnim - 2) / 2) * (-37.5-(-8.87369))); + yy = 13.05994 + (((tickAnim - 2) / 2) * (0-(13.05994))); + zz = -55.54863 + (((tickAnim - 2) / 2) * (0-(-55.54863))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = -37.5 + (((tickAnim - 4) / 4) * (39.92159-(-37.5))); + yy = 0 + (((tickAnim - 4) / 4) * (5.86879-(0))); + zz = 0 + (((tickAnim - 4) / 4) * (-0.31147-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg, frontLeftLeg.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 26.00761 + (((tickAnim - 0) / 3) * (-38.16361-(26.00761))); + yy = 1.13448 + (((tickAnim - 0) / 3) * (-31.26975-(1.13448))); + zz = 27.96622 + (((tickAnim - 0) / 3) * (12.06606-(27.96622))); + } + else if (tickAnim >= 3 && tickAnim < 4) { + xx = -38.16361 + (((tickAnim - 3) / 1) * (30.25-(-38.16361))); + yy = -31.26975 + (((tickAnim - 3) / 1) * (0-(-31.26975))); + zz = 12.06606 + (((tickAnim - 3) / 1) * (0-(12.06606))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = 30.25 + (((tickAnim - 4) / 4) * (26.00761-(30.25))); + yy = 0 + (((tickAnim - 4) / 4) * (1.13448-(0))); + zz = 0 + (((tickAnim - 4) / 4) * (27.96622-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg2, frontLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0.2-(0))); + yy = 0.025 + (((tickAnim - 0) / 3) * (0.535-(0.025))); + zz = 0 + (((tickAnim - 0) / 3) * (0.525-(0))); + } + else if (tickAnim >= 3 && tickAnim < 4) { + xx = 0.2 + (((tickAnim - 3) / 1) * (0-(0.2))); + yy = 0.535 + (((tickAnim - 3) / 1) * (0-(0.535))); + zz = 0.525 + (((tickAnim - 3) / 1) * (0-(0.525))); + } + else if (tickAnim >= 4 && tickAnim < 6) { + xx = 0 + (((tickAnim - 4) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 4) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 4) / 2) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 0 + (((tickAnim - 6) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 6) / 2) * (0.025-(0))); + zz = 0 + (((tickAnim - 6) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg2.rotationPointX = this.frontLeftLeg2.rotationPointX + (float)(xx); + this.frontLeftLeg2.rotationPointY = this.frontLeftLeg2.rotationPointY - (float)(yy); + this.frontLeftLeg2.rotationPointZ = this.frontLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 74.75 + (((tickAnim - 0) / 3) * (68.88-(74.75))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 4) { + xx = 68.88 + (((tickAnim - 3) / 1) * (26.5-(68.88))); + yy = 0 + (((tickAnim - 3) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 1) * (0-(0))); + } + else if (tickAnim >= 4 && tickAnim < 6) { + xx = 26.5 + (((tickAnim - 4) / 2) * (-13.81899-(26.5))); + yy = 0 + (((tickAnim - 4) / 2) * (8.66533-(0))); + zz = 0 + (((tickAnim - 4) / 2) * (-5.15641-(0))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = -13.81899 + (((tickAnim - 6) / 2) * (74.75-(-13.81899))); + yy = 8.66533 + (((tickAnim - 6) / 2) * (0-(8.66533))); + zz = -5.15641 + (((tickAnim - 6) / 2) * (0-(-5.15641))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg3, frontLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = -0.525 + (((tickAnim - 0) / 3) * (-0.61-(-0.525))); + } + else if (tickAnim >= 3 && tickAnim < 4) { + xx = 0 + (((tickAnim - 3) / 1) * (0-(0))); + yy = 0 + (((tickAnim - 3) / 1) * (-0.25-(0))); + zz = -0.61 + (((tickAnim - 3) / 1) * (0-(-0.61))); + } + else if (tickAnim >= 4 && tickAnim < 6) { + xx = 0 + (((tickAnim - 4) / 2) * (0-(0))); + yy = -0.25 + (((tickAnim - 4) / 2) * (0-(-0.25))); + zz = 0 + (((tickAnim - 4) / 2) * (0.15-(0))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 0 + (((tickAnim - 6) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 6) / 2) * (0-(0))); + zz = 0.15 + (((tickAnim - 6) / 2) * (-0.525-(0.15))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg3.rotationPointX = this.frontLeftLeg3.rotationPointX + (float)(xx); + this.frontLeftLeg3.rotationPointY = this.frontLeftLeg3.rotationPointY - (float)(yy); + this.frontLeftLeg3.rotationPointZ = this.frontLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 39.92159 + (((tickAnim - 0) / 2) * (-10.42003-(39.92159))); + yy = 5.86879 + (((tickAnim - 0) / 2) * (-22.1154-(5.86879))); + zz = 0.3115 + (((tickAnim - 0) / 2) * (59.39881-(0.3115))); + } + else if (tickAnim >= 2 && tickAnim < 4) { + xx = -10.42003 + (((tickAnim - 2) / 2) * (-37.5-(-10.42003))); + yy = -22.1154 + (((tickAnim - 2) / 2) * (0-(-22.1154))); + zz = 59.39881 + (((tickAnim - 2) / 2) * (0-(59.39881))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = -37.5 + (((tickAnim - 4) / 4) * (39.92159-(-37.5))); + yy = 0 + (((tickAnim - 4) / 4) * (5.86879-(0))); + zz = 0 + (((tickAnim - 4) / 4) * (0.3115-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg, frontRightLeg.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 11.75761 + (((tickAnim - 0) / 3) * (-38.16361-(11.75761))); + yy = 1.13448 + (((tickAnim - 0) / 3) * (31.26975-(1.13448))); + zz = -27.9662 + (((tickAnim - 0) / 3) * (-12.06606-(-27.9662))); + } + else if (tickAnim >= 3 && tickAnim < 4) { + xx = -38.16361 + (((tickAnim - 3) / 1) * (30.25-(-38.16361))); + yy = 31.26975 + (((tickAnim - 3) / 1) * (0-(31.26975))); + zz = -12.06606 + (((tickAnim - 3) / 1) * (0-(-12.06606))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = 30.25 + (((tickAnim - 4) / 4) * (11.75761-(30.25))); + yy = 0 + (((tickAnim - 4) / 4) * (1.13448-(0))); + zz = 0 + (((tickAnim - 4) / 4) * (-27.9662-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg2, frontRightLeg2.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg2.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0.2-(0))); + yy = 0.025 + (((tickAnim - 0) / 3) * (0.535-(0.025))); + zz = 0 + (((tickAnim - 0) / 3) * (0.525-(0))); + } + else if (tickAnim >= 3 && tickAnim < 4) { + xx = 0.2 + (((tickAnim - 3) / 1) * (0-(0.2))); + yy = 0.535 + (((tickAnim - 3) / 1) * (0-(0.535))); + zz = 0.525 + (((tickAnim - 3) / 1) * (0-(0.525))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = 0 + (((tickAnim - 4) / 4) * (0-(0))); + yy = 0 + (((tickAnim - 4) / 4) * (0.025-(0))); + zz = 0 + (((tickAnim - 4) / 4) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg2.rotationPointX = this.frontRightLeg2.rotationPointX + (float)(xx); + this.frontRightLeg2.rotationPointY = this.frontRightLeg2.rotationPointY - (float)(yy); + this.frontRightLeg2.rotationPointZ = this.frontRightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 74.75 + (((tickAnim - 0) / 3) * (68.88-(74.75))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 4) { + xx = 68.88 + (((tickAnim - 3) / 1) * (26.5-(68.88))); + yy = 0 + (((tickAnim - 3) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 1) * (0-(0))); + } + else if (tickAnim >= 4 && tickAnim < 6) { + xx = 26.5 + (((tickAnim - 4) / 2) * (-13.81899-(26.5))); + yy = 0 + (((tickAnim - 4) / 2) * (-8.66533-(0))); + zz = 0 + (((tickAnim - 4) / 2) * (5.15641-(0))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = -13.81899 + (((tickAnim - 6) / 2) * (74.75-(-13.81899))); + yy = -8.66533 + (((tickAnim - 6) / 2) * (0-(-8.66533))); + zz = 5.15641 + (((tickAnim - 6) / 2) * (0-(5.15641))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg3, frontRightLeg3.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg3.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = -0.525 + (((tickAnim - 0) / 3) * (-0.61-(-0.525))); + } + else if (tickAnim >= 3 && tickAnim < 4) { + xx = 0 + (((tickAnim - 3) / 1) * (0-(0))); + yy = 0 + (((tickAnim - 3) / 1) * (-0.25-(0))); + zz = -0.61 + (((tickAnim - 3) / 1) * (0-(-0.61))); + } + else if (tickAnim >= 4 && tickAnim < 6) { + xx = 0 + (((tickAnim - 4) / 2) * (0-(0))); + yy = -0.25 + (((tickAnim - 4) / 2) * (0-(-0.25))); + zz = 0 + (((tickAnim - 4) / 2) * (0.15-(0))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 0 + (((tickAnim - 6) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 6) / 2) * (0-(0))); + zz = 0.15 + (((tickAnim - 6) / 2) * (-0.525-(0.15))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg3.rotationPointX = this.frontRightLeg3.rotationPointX + (float)(xx); + this.frontRightLeg3.rotationPointY = this.frontRightLeg3.rotationPointY - (float)(yy); + this.frontRightLeg3.rotationPointZ = this.frontRightLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(body3, body3.rotateAngleX + (float) Math.toRadians(-11.25+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*430/0.5-50))*12), body3.rotateAngleY + (float) Math.toRadians(0), body3.rotateAngleZ + (float) Math.toRadians(0)); + this.body3.rotationPointX = this.body3.rotationPointX + (float)(0); + this.body3.rotationPointY = this.body3.rotationPointY - (float)(0); + this.body3.rotationPointZ = this.body3.rotationPointZ + (float)(0.425); + + + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(8.25+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*430/0.5-150))*8), head.rotateAngleY + (float) Math.toRadians(0), head.rotateAngleZ + (float) Math.toRadians(0)); + + } + + @Override + public void setLivingAnimations(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + super.setLivingAnimations(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + this.resetToDefaultPose(); + EntityPrehistoricFloraErpetosuchus ee = (EntityPrehistoricFloraErpetosuchus) entitylivingbaseIn; + + if (!ee.isReallyInWater()) { + if (ee.getIsMoving()) { + if (ee.getIsFast()) { //Running + animRunning(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + + } else { //Walking + animWalking(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + } + } + } + else { + //Swimming pose: + if (!ee.getIsMoving()) { //static in water + // + } + //moving in water + // + } + if (ee.getAnimation() == ee.EAT_ANIMATION) { + animEat(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.ATTACK_ANIMATION) { + animAttack(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.MAKE_NEST_ANIMATION) { + animNest(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.LAY_ANIMATION) { + animLay(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.ROAR_ANIMATION) { //The actual roar/anim + animRoar(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + + } + + public void animate(IAnimatedEntity entity, float f, float f1, float f2, float f3, float f4, float f5) { + EntityPrehistoricFloraErpetosuchus e = (EntityPrehistoricFloraErpetosuchus) entity; + + } +} diff --git a/src/main/java/net/lepidodendron/entity/model/entity/ModelGracilisuchus.java b/src/main/java/net/lepidodendron/entity/model/entity/ModelGracilisuchus.java new file mode 100644 index 0000000000..c8306f1b47 --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/model/entity/ModelGracilisuchus.java @@ -0,0 +1,482 @@ +package net.lepidodendron.entity.model.entity; + +import net.ilexiconn.llibrary.client.model.ModelAnimator; +import net.ilexiconn.llibrary.client.model.tools.AdvancedModelRenderer; +import net.ilexiconn.llibrary.server.animation.IAnimatedEntity; +import net.lepidodendron.entity.EntityPrehistoricFloraErpetosuchus; +import net.lepidodendron.entity.model.ModelBasePalaeopedia; +import net.minecraft.client.model.ModelBox; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; + +public class ModelGracilisuchus extends ModelBasePalaeopedia { + private final AdvancedModelRenderer main; + private final AdvancedModelRenderer cube_r1; + private final AdvancedModelRenderer backLeftLeg; + private final AdvancedModelRenderer backLeftLeg2; + private final AdvancedModelRenderer backLeftLeg3; + private final AdvancedModelRenderer backRightLeg; + private final AdvancedModelRenderer backRightLeg2; + private final AdvancedModelRenderer backRightLeg3; + private final AdvancedModelRenderer tail; + private final AdvancedModelRenderer cube_r2; + private final AdvancedModelRenderer tail2; + private final AdvancedModelRenderer tail3; + private final AdvancedModelRenderer tail4; + private final AdvancedModelRenderer body; + private final AdvancedModelRenderer body2; + private final AdvancedModelRenderer frontLeftLeg; + private final AdvancedModelRenderer frontLeftLeg2; + private final AdvancedModelRenderer frontLeftLeg3; + private final AdvancedModelRenderer frontRightLeg; + private final AdvancedModelRenderer frontRightLeg2; + private final AdvancedModelRenderer frontRightLeg3; + private final AdvancedModelRenderer body3; + private final AdvancedModelRenderer cube_r3; + private final AdvancedModelRenderer head; + private final AdvancedModelRenderer cube_r4; + private final AdvancedModelRenderer cube_r5; + private final AdvancedModelRenderer cube_r6; + private final AdvancedModelRenderer cube_r7; + private final AdvancedModelRenderer cube_r8; + private final AdvancedModelRenderer cube_r9; + private final AdvancedModelRenderer cube_r10; + private final AdvancedModelRenderer cube_r11; + private final AdvancedModelRenderer eye; + private final AdvancedModelRenderer cube_r12; + private final AdvancedModelRenderer cube_r13; + private final AdvancedModelRenderer jaw; + private final AdvancedModelRenderer cube_r14; + private final AdvancedModelRenderer cube_r15; + private final AdvancedModelRenderer cube_r16; + private final AdvancedModelRenderer cube_r17; + private final AdvancedModelRenderer cube_r18; + + private ModelAnimator animator; + + public ModelGracilisuchus() { + this.textureWidth = 48; + this.textureHeight = 48; + + this.main = new AdvancedModelRenderer(this); + this.main.setRotationPoint(0.0F, 24.0F, 0.0F); + this.main.cubeList.add(new ModelBox(main, 0, 8, -1.5F, -7.25F, 0.0F, 3, 3, 4, 0.0F, false)); + + this.cube_r1 = new AdvancedModelRenderer(this); + this.cube_r1.setRotationPoint(0.0F, -7.55F, -0.05F); + this.main.addChild(cube_r1); + this.setRotateAngle(cube_r1, -0.048F, 0.0F, 0.0F); + this.cube_r1.cubeList.add(new ModelBox(cube_r1, 13, 21, -1.0F, 0.0F, 0.0F, 2, 1, 4, -0.001F, false)); + + this.backLeftLeg = new AdvancedModelRenderer(this); + this.backLeftLeg.setRotationPoint(1.5F, -6.25F, 2.5F); + this.main.addChild(backLeftLeg); + this.setRotateAngle(backLeftLeg, -0.3796F, 0.0F, 0.0F); + this.backLeftLeg.cubeList.add(new ModelBox(backLeftLeg, 28, 14, -1.0F, -0.5F, -1.0F, 2, 4, 2, 0.0F, false)); + + this.backLeftLeg2 = new AdvancedModelRenderer(this); + this.backLeftLeg2.setRotationPoint(0.5F, 3.3959F, -0.9009F); + this.backLeftLeg.addChild(backLeftLeg2); + this.setRotateAngle(backLeftLeg2, 0.6109F, 0.0F, 0.0F); + this.backLeftLeg2.cubeList.add(new ModelBox(backLeftLeg2, 0, 39, -1.0F, 0.0F, 0.0F, 1, 3, 1, 0.0F, false)); + this.backLeftLeg2.cubeList.add(new ModelBox(backLeftLeg2, 40, 32, -1.0F, 0.0F, 0.3F, 1, 3, 1, -0.001F, false)); + + this.backLeftLeg3 = new AdvancedModelRenderer(this); + this.backLeftLeg3.setRotationPoint(0.0F, 3.0752F, 1.2434F); + this.backLeftLeg2.addChild(backLeftLeg3); + this.setRotateAngle(backLeftLeg3, -0.2269F, 0.0F, 0.0F); + this.backLeftLeg3.cubeList.add(new ModelBox(backLeftLeg3, 0, 29, -1.5F, -0.325F, -3.2F, 2, 1, 3, 0.0F, false)); + + this.backRightLeg = new AdvancedModelRenderer(this); + this.backRightLeg.setRotationPoint(-1.5F, -6.25F, 2.5F); + this.main.addChild(backRightLeg); + this.setRotateAngle(backRightLeg, -0.3796F, 0.0F, 0.0F); + this.backRightLeg.cubeList.add(new ModelBox(backRightLeg, 28, 14, -1.0F, -0.5F, -1.0F, 2, 4, 2, 0.0F, true)); + + this.backRightLeg2 = new AdvancedModelRenderer(this); + this.backRightLeg2.setRotationPoint(-0.5F, 3.3959F, -0.9009F); + this.backRightLeg.addChild(backRightLeg2); + this.setRotateAngle(backRightLeg2, 0.6109F, 0.0F, 0.0F); + this.backRightLeg2.cubeList.add(new ModelBox(backRightLeg2, 0, 39, 0.0F, 0.0F, 0.0F, 1, 3, 1, 0.0F, true)); + this.backRightLeg2.cubeList.add(new ModelBox(backRightLeg2, 40, 32, 0.0F, 0.0F, 0.3F, 1, 3, 1, -0.001F, true)); + + this.backRightLeg3 = new AdvancedModelRenderer(this); + this.backRightLeg3.setRotationPoint(0.0F, 3.0752F, 1.2434F); + this.backRightLeg2.addChild(backRightLeg3); + this.setRotateAngle(backRightLeg3, -0.2269F, 0.0F, 0.0F); + this.backRightLeg3.cubeList.add(new ModelBox(backRightLeg3, 0, 29, -0.5F, -0.325F, -3.2F, 2, 1, 3, 0.0F, true)); + + this.tail = new AdvancedModelRenderer(this); + this.tail.setRotationPoint(-0.5F, -7.1086F, 3.8161F); + this.main.addChild(tail); + this.setRotateAngle(tail, -0.1745F, 0.0F, 0.0F); + this.tail.cubeList.add(new ModelBox(tail, 17, 0, -0.5F, 0.0F, 0.0F, 2, 2, 4, 0.0F, false)); + + this.cube_r2 = new AdvancedModelRenderer(this); + this.cube_r2.setRotationPoint(0.5F, -0.275F, 0.0F); + this.tail.addChild(cube_r2); + this.setRotateAngle(cube_r2, -0.0741F, 0.0005F, -0.0004F); + this.cube_r2.cubeList.add(new ModelBox(cube_r2, 31, 32, -0.5F, 0.025F, 0.075F, 1, 1, 3, 0.0F, false)); + + this.tail2 = new AdvancedModelRenderer(this); + this.tail2.setRotationPoint(0.0F, 1.0F, 3.5F); + this.tail.addChild(tail2); + this.setRotateAngle(tail2, -0.1745F, 0.0F, 0.0F); + this.tail2.cubeList.add(new ModelBox(tail2, 15, 14, -0.5F, -1.0F, 0.0F, 2, 2, 4, 0.001F, false)); + + this.tail3 = new AdvancedModelRenderer(this); + this.tail3.setRotationPoint(0.0F, -0.1515F, 3.5174F); + this.tail2.addChild(tail3); + this.setRotateAngle(tail3, 0.1745F, 0.0F, 0.0F); + this.tail3.cubeList.add(new ModelBox(tail3, 0, 16, 0.0F, -0.5F, 0.0F, 1, 1, 5, 0.0F, false)); + + this.tail4 = new AdvancedModelRenderer(this); + this.tail4.setRotationPoint(0.0F, -0.0021F, 4.5239F); + this.tail3.addChild(tail4); + this.setRotateAngle(tail4, 0.1745F, 0.0F, 0.0F); + this.tail4.cubeList.add(new ModelBox(tail4, 0, 23, 0.0F, -0.5F, 0.0F, 1, 1, 4, 0.001F, false)); + + this.body = new AdvancedModelRenderer(this); + this.body.setRotationPoint(-0.5F, -7.25F, 0.0F); + this.main.addChild(body); + this.setRotateAngle(body, 0.0436F, 0.0F, 0.0F); + this.body.cubeList.add(new ModelBox(body, 0, 0, -1.5F, 0.0F, -4.0F, 4, 3, 4, 0.0F, false)); + this.body.cubeList.add(new ModelBox(body, 15, 8, -1.0F, -0.3F, -4.0F, 3, 1, 4, 0.001F, false)); + + this.body2 = new AdvancedModelRenderer(this); + this.body2.setRotationPoint(0.0F, 0.0434F, -3.2793F); + this.body.addChild(body2); + this.setRotateAngle(body2, 0.0087F, 0.0F, 0.0F); + this.body2.cubeList.add(new ModelBox(body2, 26, 21, -1.0F, 0.0F, -2.0F, 3, 3, 2, 0.0F, false)); + this.body2.cubeList.add(new ModelBox(body2, 37, 17, -0.5F, -0.275F, -2.0F, 2, 1, 2, -0.001F, false)); + + this.frontLeftLeg = new AdvancedModelRenderer(this); + this.frontLeftLeg.setRotationPoint(2.075F, 2.0F, -1.25F); + this.body2.addChild(frontLeftLeg); + this.setRotateAngle(frontLeftLeg, -0.8727F, 0.0F, 0.0F); + this.frontLeftLeg.cubeList.add(new ModelBox(frontLeftLeg, 37, 12, -0.5F, -0.5F, -0.5F, 1, 1, 3, 0.001F, false)); + + this.frontLeftLeg2 = new AdvancedModelRenderer(this); + this.frontLeftLeg2.setRotationPoint(0.0F, 0.197F, 2.5347F); + this.frontLeftLeg.addChild(frontLeftLeg2); + this.setRotateAngle(frontLeftLeg2, -1.1345F, 0.0F, 0.0F); + this.frontLeftLeg2.cubeList.add(new ModelBox(frontLeftLeg2, 11, 33, -0.5F, -0.5F, -0.5F, 1, 1, 3, 0.0F, false)); + + this.frontLeftLeg3 = new AdvancedModelRenderer(this); + this.frontLeftLeg3.setRotationPoint(0.0F, -0.2733F, 2.0713F); + this.frontLeftLeg2.addChild(frontLeftLeg3); + this.setRotateAngle(frontLeftLeg3, 0.3883F, 0.0F, 0.0F); + this.frontLeftLeg3.cubeList.add(new ModelBox(frontLeftLeg3, 9, 38, -1.0F, 0.0F, 0.0F, 2, 2, 1, 0.0F, false)); + + this.frontRightLeg = new AdvancedModelRenderer(this); + this.frontRightLeg.setRotationPoint(-1.075F, 2.0F, -1.25F); + this.body2.addChild(frontRightLeg); + this.setRotateAngle(frontRightLeg, -0.8727F, 0.0F, 0.0F); + this.frontRightLeg.cubeList.add(new ModelBox(frontRightLeg, 37, 12, -0.5F, -0.5F, -0.5F, 1, 1, 3, 0.001F, true)); + + this.frontRightLeg2 = new AdvancedModelRenderer(this); + this.frontRightLeg2.setRotationPoint(0.0F, 0.197F, 2.5347F); + this.frontRightLeg.addChild(frontRightLeg2); + this.setRotateAngle(frontRightLeg2, -1.1345F, 0.0F, 0.0F); + this.frontRightLeg2.cubeList.add(new ModelBox(frontRightLeg2, 11, 33, -0.5F, -0.5F, -0.5F, 1, 1, 3, 0.0F, true)); + + this.frontRightLeg3 = new AdvancedModelRenderer(this); + this.frontRightLeg3.setRotationPoint(0.0F, -0.2733F, 2.0713F); + this.frontRightLeg2.addChild(frontRightLeg3); + this.setRotateAngle(frontRightLeg3, 0.3883F, 0.0F, 0.0F); + this.frontRightLeg3.cubeList.add(new ModelBox(frontRightLeg3, 9, 38, -1.0F, 0.0F, 0.0F, 2, 2, 1, 0.0F, true)); + + this.body3 = new AdvancedModelRenderer(this); + this.body3.setRotationPoint(0.0F, 0.0868F, -1.0076F); + this.body2.addChild(body3); + this.setRotateAngle(body3, -0.1745F, 0.0F, 0.0F); + this.body3.cubeList.add(new ModelBox(body3, 11, 27, -0.5F, 0.0F, -3.0F, 2, 2, 3, -0.003F, false)); + this.body3.cubeList.add(new ModelBox(body3, 22, 32, 0.0F, -0.175F, -3.0F, 1, 1, 3, 0.0F, false)); + + this.cube_r3 = new AdvancedModelRenderer(this); + this.cube_r3.setRotationPoint(0.5F, 1.725F, -3.0F); + this.body3.addChild(cube_r3); + this.setRotateAngle(cube_r3, -0.1309F, 0.0F, 0.0F); + this.cube_r3.cubeList.add(new ModelBox(cube_r3, 22, 27, -1.0F, -0.3F, 0.0F, 2, 1, 3, -0.004F, false)); + + this.head = new AdvancedModelRenderer(this); + this.head.setRotationPoint(0.0F, 0.2029F, -2.7002F); + this.body3.addChild(head); + this.setRotateAngle(head, 0.1309F, 0.0F, 0.0F); + + + this.cube_r4 = new AdvancedModelRenderer(this); + this.cube_r4.setRotationPoint(0.5F, -0.1852F, -1.0277F); + this.head.addChild(cube_r4); + this.setRotateAngle(cube_r4, 0.1658F, 0.0F, 0.0F); + this.cube_r4.cubeList.add(new ModelBox(cube_r4, 30, 0, -1.5F, 0.0F, -1.0F, 3, 1, 2, 0.001F, false)); + + this.cube_r5 = new AdvancedModelRenderer(this); + this.cube_r5.setRotationPoint(0.5F, -0.0201F, -2.014F); + this.head.addChild(cube_r5); + this.setRotateAngle(cube_r5, 0.3229F, 0.0F, 0.0F); + this.cube_r5.cubeList.add(new ModelBox(cube_r5, 33, 27, -0.5F, 0.0F, -3.0F, 1, 1, 3, 0.0F, false)); + + this.cube_r6 = new AdvancedModelRenderer(this); + this.cube_r6.setRotationPoint(1.0F, 0.5F, 0.0F); + this.head.addChild(cube_r6); + this.setRotateAngle(cube_r6, 0.0393F, 0.0F, 0.0F); + this.cube_r6.cubeList.add(new ModelBox(cube_r6, 30, 8, -2.0F, 0.025F, -1.9F, 3, 1, 2, 0.0F, false)); + + this.cube_r7 = new AdvancedModelRenderer(this); + this.cube_r7.setRotationPoint(-0.9735F, 1.5738F, -1.9093F); + this.head.addChild(cube_r7); + this.setRotateAngle(cube_r7, 0.0532F, -0.4145F, -0.0038F); + this.cube_r7.cubeList.add(new ModelBox(cube_r7, 5, 39, 0.3F, -0.7F, -2.875F, 0, 1, 1, 0.0F, true)); + + this.cube_r8 = new AdvancedModelRenderer(this); + this.cube_r8.setRotationPoint(1.9735F, 1.5738F, -1.9093F); + this.head.addChild(cube_r8); + this.setRotateAngle(cube_r8, 0.0532F, 0.4145F, 0.0038F); + this.cube_r8.cubeList.add(new ModelBox(cube_r8, 5, 39, -0.3F, -0.7F, -2.875F, 0, 1, 1, 0.0F, false)); + + this.cube_r9 = new AdvancedModelRenderer(this); + this.cube_r9.setRotationPoint(-0.9735F, 1.5738F, -1.9093F); + this.head.addChild(cube_r9); + this.setRotateAngle(cube_r9, 0.0102F, -0.5454F, -0.0053F); + this.cube_r9.cubeList.add(new ModelBox(cube_r9, 23, 38, 0.0F, -1.0F, -1.95F, 1, 1, 2, 0.0F, true)); + + this.cube_r10 = new AdvancedModelRenderer(this); + this.cube_r10.setRotationPoint(1.9735F, 1.5738F, -1.9093F); + this.head.addChild(cube_r10); + this.setRotateAngle(cube_r10, 0.0102F, 0.5454F, 0.0053F); + this.cube_r10.cubeList.add(new ModelBox(cube_r10, 23, 38, -1.0F, -1.0F, -1.95F, 1, 1, 2, 0.0F, false)); + + this.cube_r11 = new AdvancedModelRenderer(this); + this.cube_r11.setRotationPoint(0.5F, 1.5968F, -1.8083F); + this.head.addChild(cube_r11); + this.setRotateAngle(cube_r11, 0.0087F, 0.0F, 0.0F); + this.cube_r11.cubeList.add(new ModelBox(cube_r11, 16, 38, -0.5F, -1.0F, -2.0F, 1, 1, 2, -0.001F, false)); + + this.eye = new AdvancedModelRenderer(this); + this.eye.setRotationPoint(1.375F, 0.7171F, -2.1617F); + this.head.addChild(eye); + + + this.cube_r12 = new AdvancedModelRenderer(this); + this.cube_r12.setRotationPoint(-1.75F, 0.0F, 0.0F); + this.eye.addChild(cube_r12); + this.setRotateAngle(cube_r12, 0.2183F, -0.4781F, -0.0623F); + this.cube_r12.cubeList.add(new ModelBox(cube_r12, 41, 0, -0.45F, -0.5F, -0.3F, 1, 1, 1, 0.0F, true)); + + this.cube_r13 = new AdvancedModelRenderer(this); + this.cube_r13.setRotationPoint(0.0F, 0.0F, 0.0F); + this.eye.addChild(cube_r13); + this.setRotateAngle(cube_r13, 0.2183F, 0.4781F, 0.0623F); + this.cube_r13.cubeList.add(new ModelBox(cube_r13, 41, 0, -0.55F, -0.5F, -0.3F, 1, 1, 1, 0.0F, false)); + + this.jaw = new AdvancedModelRenderer(this); + this.jaw.setRotationPoint(0.0F, 1.3527F, -0.7082F); + this.head.addChild(jaw); + + + this.cube_r14 = new AdvancedModelRenderer(this); + this.cube_r14.setRotationPoint(1.0F, -0.0089F, 0.2489F); + this.jaw.addChild(cube_r14); + this.setRotateAngle(cube_r14, -0.048F, 0.0F, 0.0F); + this.cube_r14.cubeList.add(new ModelBox(cube_r14, 0, 34, -1.0F, 0.025F, -4.0F, 1, 1, 3, -0.002F, false)); + this.cube_r14.cubeList.add(new ModelBox(cube_r14, 37, 21, -1.5F, -0.9F, -1.375F, 2, 1, 2, -0.005F, false)); + this.cube_r14.cubeList.add(new ModelBox(cube_r14, 30, 4, -2.0F, 0.05F, -1.4F, 3, 1, 2, -0.001F, false)); + + this.cube_r15 = new AdvancedModelRenderer(this); + this.cube_r15.setRotationPoint(-0.9735F, 0.9461F, -1.2011F); + this.jaw.addChild(cube_r15); + this.setRotateAngle(cube_r15, -0.0594F, -0.4554F, 0.0191F); + this.cube_r15.cubeList.add(new ModelBox(cube_r15, 31, 37, 0.175F, -1.3F, -2.775F, 0, 1, 3, 0.0F, true)); + + this.cube_r16 = new AdvancedModelRenderer(this); + this.cube_r16.setRotationPoint(1.9735F, 0.9461F, -1.2011F); + this.jaw.addChild(cube_r16); + this.setRotateAngle(cube_r16, -0.0594F, 0.4554F, -0.0191F); + this.cube_r16.cubeList.add(new ModelBox(cube_r16, 31, 37, -0.175F, -1.3F, -2.775F, 0, 1, 3, 0.0F, false)); + + this.cube_r17 = new AdvancedModelRenderer(this); + this.cube_r17.setRotationPoint(-0.9735F, 0.9461F, -1.2011F); + this.jaw.addChild(cube_r17); + this.setRotateAngle(cube_r17, -0.0623F, -0.5425F, 0.0252F); + this.cube_r17.cubeList.add(new ModelBox(cube_r17, 38, 37, 0.0F, -1.0F, -2.0F, 1, 1, 2, 0.0F, true)); + + this.cube_r18 = new AdvancedModelRenderer(this); + this.cube_r18.setRotationPoint(1.9735F, 0.9461F, -1.2011F); + this.jaw.addChild(cube_r18); + this.setRotateAngle(cube_r18, -0.0623F, 0.5425F, -0.0252F); + this.cube_r18.cubeList.add(new ModelBox(cube_r18, 38, 37, -1.0F, -1.0F, -2.0F, 1, 1, 2, 0.0F, false)); + + updateDefaultPose(); + animator = ModelAnimator.create(); + } + + @Override + public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { + animate((IAnimatedEntity) entity, f, f1, f2, f3, f4, f5); + this.main.render(f5); + } + + @Override + public void renderStaticBook(float f) { + //Rotations, positions and sizing: + this.main.offsetY = 0.2F; + this.main.offsetX = 0.35F; + this.main.offsetZ = 2.0F; + this.main.rotateAngleY = (float)Math.toRadians(120); + this.main.rotateAngleX = (float)Math.toRadians(1); + this.main.rotateAngleZ = (float)Math.toRadians(0); + this.main.scaleChildren = true; + float scaler = 0.6F; + this.main.setScale(scaler, scaler, scaler); + //Start of pose: + + //End of pose, now render the model: + this.main.render(f); + //Reset rotations, positions and sizing: + this.main.setScale(1.0F, 1.0F, 1.0F); + this.main.scaleChildren = false; + resetToDefaultPose(); + + } + + public void renderStaticWall(float f) { + resetToDefaultPose(); + } + + public void renderStaticFloor(float f) { + this.main.offsetY = -0.105F; + this.main.render(0.01F); + resetToDefaultPose(); + } + + public void setRotateAngle(AdvancedModelRenderer AdvancedModelRenderer, float x, float y, float z) { + AdvancedModelRenderer.rotateAngleX = x; + AdvancedModelRenderer.rotateAngleY = y; + AdvancedModelRenderer.rotateAngleZ = z; + } + + @Override + public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity e) { + super.setRotationAngles(f, f1, f2, f3, f4, f5, e); + //this.resetToDefaultPose(); + + EntityPrehistoricFloraErpetosuchus EntityMegalosaurus = (EntityPrehistoricFloraErpetosuchus) e; + + this.faceTarget(f3, f4, 8, body3); + this.faceTarget(f3, f4, 8, head); + + AdvancedModelRenderer[] Tail = {this.tail, this.tail2, this.tail3, this.tail4}; + AdvancedModelRenderer[] Neck = {this.body3, this.head}; + + EntityMegalosaurus.tailBuffer.applyChainSwingBuffer(Tail); + + if (EntityMegalosaurus.getAnimation() == EntityMegalosaurus.LAY_ANIMATION) { + this.chainSwing(Neck, 0.5F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.5F * 2, -0.02F, 0.5F, f2, 0.8F); + } + else { + if (!EntityMegalosaurus.isReallyInWater()) { + + if (f3 == 0.0F || !EntityMegalosaurus.getIsMoving()) { + this.chainSwing(Neck, 0.05F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.05F * 2, -0.02F, 0.5F, f2, 0.8F); + + this.chainWave(Tail, (0.15F * 0.35F), 0.125F * 0.15F, 0.2F, f2, 1F); + this.chainSwing(Tail, (0.15F * 0.35F) * 4F, 0.05F * 0.35F, 0.12F, f2, 1F); + return; + } + + if (EntityMegalosaurus.getIsFast()) { //Running + + + } else { //Walking + + } + } else { + //Swimming pose: + if (f3 == 0.0F) { //static in water + return; + } + //moving in water + return; + } + } + } + + public void animAttack(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraErpetosuchus entity = (EntityPrehistoricFloraErpetosuchus) entitylivingbaseIn; + + } + public void animEat(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraErpetosuchus entity = (EntityPrehistoricFloraErpetosuchus) entitylivingbaseIn; + + } + public void animRoar(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraErpetosuchus entity = (EntityPrehistoricFloraErpetosuchus) entitylivingbaseIn; + + } + public void animNest(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraErpetosuchus entity = (EntityPrehistoricFloraErpetosuchus) entitylivingbaseIn; + + } + public void animLay(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraErpetosuchus entity = (EntityPrehistoricFloraErpetosuchus) entitylivingbaseIn; + + } + public void animWalking(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraErpetosuchus entity = (EntityPrehistoricFloraErpetosuchus) entitylivingbaseIn; + + } + public void animRunning(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraErpetosuchus entity = (EntityPrehistoricFloraErpetosuchus) entitylivingbaseIn; + + } + + @Override + public void setLivingAnimations(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + super.setLivingAnimations(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + this.resetToDefaultPose(); + EntityPrehistoricFloraErpetosuchus ee = (EntityPrehistoricFloraErpetosuchus) entitylivingbaseIn; + + if (!ee.isReallyInWater()) { + if (ee.getIsMoving()) { + if (ee.getIsFast()) { //Running + animRunning(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + + } else { //Walking + animWalking(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + } + } + } + else { + //Swimming pose: + if (!ee.getIsMoving()) { //static in water + // + } + //moving in water + // + } + if (ee.getAnimation() == ee.EAT_ANIMATION) { + animEat(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.ATTACK_ANIMATION) { + animAttack(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.MAKE_NEST_ANIMATION) { + animNest(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.LAY_ANIMATION) { + animLay(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.ROAR_ANIMATION) { //The actual roar/anim + animRoar(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + + } + + public void animate(IAnimatedEntity entity, float f, float f1, float f2, float f3, float f4, float f5) { + EntityPrehistoricFloraErpetosuchus e = (EntityPrehistoricFloraErpetosuchus) entity; + + } +} diff --git a/src/main/java/net/lepidodendron/entity/model/entity/ModelNundasuchus.java b/src/main/java/net/lepidodendron/entity/model/entity/ModelNundasuchus.java new file mode 100644 index 0000000000..84c33aabb0 --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/model/entity/ModelNundasuchus.java @@ -0,0 +1,4437 @@ +package net.lepidodendron.entity.model.entity; + +import net.ilexiconn.llibrary.client.model.ModelAnimator; +import net.ilexiconn.llibrary.client.model.tools.AdvancedModelRenderer; +import net.ilexiconn.llibrary.server.animation.IAnimatedEntity; +import net.lepidodendron.entity.EntityPrehistoricFloraNundasuchus; +import net.lepidodendron.entity.model.ModelBasePalaeopedia; +import net.minecraft.client.model.ModelBox; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; + +public class ModelNundasuchus extends ModelBasePalaeopedia { + private final AdvancedModelRenderer main; + private final AdvancedModelRenderer leftLeg; + private final AdvancedModelRenderer leftLeg2; + private final AdvancedModelRenderer leftLeg3; + private final AdvancedModelRenderer leftLeg4; + private final AdvancedModelRenderer rightLeg; + private final AdvancedModelRenderer rightLeg2; + private final AdvancedModelRenderer rightLeg3; + private final AdvancedModelRenderer rightLeg4; + private final AdvancedModelRenderer tail; + private final AdvancedModelRenderer tail2; + private final AdvancedModelRenderer tail3; + private final AdvancedModelRenderer tail4; + private final AdvancedModelRenderer tail5; + private final AdvancedModelRenderer tail6; + private final AdvancedModelRenderer body; + private final AdvancedModelRenderer body2; + private final AdvancedModelRenderer body3; + private final AdvancedModelRenderer leftArm; + private final AdvancedModelRenderer leftArm2; + private final AdvancedModelRenderer leftArm3; + private final AdvancedModelRenderer rightArm; + private final AdvancedModelRenderer rightArm2; + private final AdvancedModelRenderer rightArm3; + private final AdvancedModelRenderer neck; + private final AdvancedModelRenderer cube_r1; + private final AdvancedModelRenderer neck2; + private final AdvancedModelRenderer cube_r2; + private final AdvancedModelRenderer head; + private final AdvancedModelRenderer cube_r3; + private final AdvancedModelRenderer cube_r4; + private final AdvancedModelRenderer cube_r5; + private final AdvancedModelRenderer cube_r6; + private final AdvancedModelRenderer cube_r7; + private final AdvancedModelRenderer cube_r8; + private final AdvancedModelRenderer cube_r9; + private final AdvancedModelRenderer cube_r10; + private final AdvancedModelRenderer cube_r11; + private final AdvancedModelRenderer cube_r12; + private final AdvancedModelRenderer jaw; + private final AdvancedModelRenderer cube_r13; + private final AdvancedModelRenderer cube_r14; + private final AdvancedModelRenderer cube_r15; + private final AdvancedModelRenderer cube_r16; + + private ModelAnimator animator; + + public ModelNundasuchus() { + this.textureWidth = 82; + this.textureHeight = 82; + + this.main = new AdvancedModelRenderer(this); + this.main.setRotationPoint(0.0F, 8.0F, 11.5F); + this.main.cubeList.add(new ModelBox(main, 27, 18, -3.0F, -1.0F, -3.0F, 6, 8, 6, 0.0F, false)); + + this.leftLeg = new AdvancedModelRenderer(this); + this.leftLeg.setRotationPoint(3.0F, 1.7104F, 0.0472F); + this.main.addChild(leftLeg); + this.setRotateAngle(leftLeg, -0.1745F, 0.0F, 0.0F); + this.leftLeg.cubeList.add(new ModelBox(leftLeg, 54, 0, -1.5F, -1.0F, -2.0F, 3, 8, 4, 0.0F, false)); + + this.leftLeg2 = new AdvancedModelRenderer(this); + this.leftLeg2.setRotationPoint(1.5F, 7.0F, -2.0F); + this.leftLeg.addChild(leftLeg2); + this.setRotateAngle(leftLeg2, 0.7418F, 0.0F, 0.0F); + this.leftLeg2.cubeList.add(new ModelBox(leftLeg2, 61, 63, -2.5F, 0.0F, 0.0F, 2, 7, 3, 0.0F, false)); + + this.leftLeg3 = new AdvancedModelRenderer(this); + this.leftLeg3.setRotationPoint(0.0F, 6.2081F, 1.8019F); + this.leftLeg2.addChild(leftLeg3); + this.setRotateAngle(leftLeg3, -0.8727F, 0.0F, 0.0F); + this.leftLeg3.cubeList.add(new ModelBox(leftLeg3, 34, 58, -2.5F, 0.0F, -1.0F, 2, 3, 2, -0.01F, false)); + + this.leftLeg4 = new AdvancedModelRenderer(this); + this.leftLeg4.setRotationPoint(0.0F, 2.5907F, -0.0144F); + this.leftLeg3.addChild(leftLeg4); + this.setRotateAngle(leftLeg4, 0.3054F, 0.0F, 0.0F); + this.leftLeg4.cubeList.add(new ModelBox(leftLeg4, 0, 65, -3.0F, 0.0F, -3.0F, 3, 1, 4, 0.0F, false)); + + this.rightLeg = new AdvancedModelRenderer(this); + this.rightLeg.setRotationPoint(-3.0F, 1.7104F, 0.0472F); + this.main.addChild(rightLeg); + this.setRotateAngle(rightLeg, -0.1745F, 0.0F, 0.0F); + this.rightLeg.cubeList.add(new ModelBox(rightLeg, 54, 0, -1.5F, -1.0F, -2.0F, 3, 8, 4, 0.0F, true)); + + this.rightLeg2 = new AdvancedModelRenderer(this); + this.rightLeg2.setRotationPoint(-1.5F, 7.0F, -2.0F); + this.rightLeg.addChild(rightLeg2); + this.setRotateAngle(rightLeg2, 0.7418F, 0.0F, 0.0F); + this.rightLeg2.cubeList.add(new ModelBox(rightLeg2, 61, 63, 0.5F, 0.0F, 0.0F, 2, 7, 3, 0.0F, true)); + + this.rightLeg3 = new AdvancedModelRenderer(this); + this.rightLeg3.setRotationPoint(0.0F, 6.2081F, 1.8019F); + this.rightLeg2.addChild(rightLeg3); + this.setRotateAngle(rightLeg3, -0.8727F, 0.0F, 0.0F); + this.rightLeg3.cubeList.add(new ModelBox(rightLeg3, 34, 58, 0.5F, 0.0F, -1.0F, 2, 3, 2, -0.01F, true)); + + this.rightLeg4 = new AdvancedModelRenderer(this); + this.rightLeg4.setRotationPoint(0.0F, 2.5907F, -0.0144F); + this.rightLeg3.addChild(rightLeg4); + this.setRotateAngle(rightLeg4, 0.3054F, 0.0F, 0.0F); + this.rightLeg4.cubeList.add(new ModelBox(rightLeg4, 0, 65, 0.0F, 0.0F, -3.0F, 3, 1, 4, 0.0F, true)); + + this.tail = new AdvancedModelRenderer(this); + this.tail.setRotationPoint(-1.0F, -0.85F, 2.4F); + this.main.addChild(tail); + this.setRotateAngle(tail, -0.0873F, 0.0F, 0.0F); + this.tail.cubeList.add(new ModelBox(tail, 0, 34, -1.5F, 0.0F, 0.0F, 5, 6, 6, 0.0F, false)); + + this.tail2 = new AdvancedModelRenderer(this); + this.tail2.setRotationPoint(0.0F, 0.0567F, 4.8475F); + this.tail.addChild(tail2); + this.setRotateAngle(tail2, -0.0873F, 0.0F, 0.0F); + this.tail2.cubeList.add(new ModelBox(tail2, 27, 33, -1.0F, 0.0F, 0.0F, 4, 5, 7, 0.0F, false)); + + this.tail3 = new AdvancedModelRenderer(this); + this.tail3.setRotationPoint(0.0F, 0.0507F, 5.9673F); + this.tail2.addChild(tail3); + this.setRotateAngle(tail3, -0.1309F, 0.0F, 0.0F); + this.tail3.cubeList.add(new ModelBox(tail3, 23, 46, -0.5F, 0.0F, 0.0F, 3, 4, 7, 0.0F, false)); + + this.tail4 = new AdvancedModelRenderer(this); + this.tail4.setRotationPoint(0.0F, 0.1F, 6.0F); + this.tail3.addChild(tail4); + this.setRotateAngle(tail4, -0.0873F, 0.0F, 0.0F); + this.tail4.cubeList.add(new ModelBox(tail4, 0, 47, 0.0F, 0.0F, 0.0F, 2, 3, 7, 0.0F, false)); + + this.tail5 = new AdvancedModelRenderer(this); + this.tail5.setRotationPoint(0.0F, 0.1F, 6.5F); + this.tail4.addChild(tail5); + this.setRotateAngle(tail5, 0.0873F, 0.0F, 0.0F); + this.tail5.cubeList.add(new ModelBox(tail5, 52, 23, 0.5F, 0.0F, 0.0F, 1, 2, 7, 0.0F, false)); + + this.tail6 = new AdvancedModelRenderer(this); + this.tail6.setRotationPoint(0.0F, 0.1F, 6.0F); + this.tail5.addChild(tail6); + this.setRotateAngle(tail6, 0.0873F, 0.0F, 0.0F); + this.tail6.cubeList.add(new ModelBox(tail6, 44, 57, 0.5F, 0.0F, 0.0F, 1, 1, 7, -0.01F, false)); + + this.body = new AdvancedModelRenderer(this); + this.body.setRotationPoint(-0.5F, -0.75F, -2.5F); + this.main.addChild(body); + this.setRotateAngle(body, 0.0873F, 0.0F, 0.0F); + this.body.cubeList.add(new ModelBox(body, 0, 0, -3.0F, -0.5F, -8.0F, 7, 9, 8, 0.0F, false)); + + this.body2 = new AdvancedModelRenderer(this); + this.body2.setRotationPoint(0.0F, 0.2F, -7.0F); + this.body.addChild(body2); + this.setRotateAngle(body2, 0.0873F, 0.0F, 0.0F); + this.body2.cubeList.add(new ModelBox(body2, 0, 18, -2.5F, -0.5F, -7.0F, 6, 8, 7, 0.0F, false)); + + this.body3 = new AdvancedModelRenderer(this); + this.body3.setRotationPoint(0.0F, -0.1357F, -6.7264F); + this.body2.addChild(body3); + this.setRotateAngle(body3, -0.0873F, 0.0F, 0.0F); + this.body3.cubeList.add(new ModelBox(body3, 31, 0, -2.0F, -0.1743F, -4.0076F, 5, 7, 6, 0.0F, false)); + + this.leftArm = new AdvancedModelRenderer(this); + this.leftArm.setRotationPoint(2.75F, 5.5084F, -2.2087F); + this.body3.addChild(leftArm); + this.setRotateAngle(leftArm, 0.4363F, 0.0F, 0.0F); + this.leftArm.cubeList.add(new ModelBox(leftArm, 63, 43, -1.5F, -0.5F, -1.5F, 3, 5, 3, 0.0F, false)); + + this.leftArm2 = new AdvancedModelRenderer(this); + this.leftArm2.setRotationPoint(0.0F, 4.5F, 1.5F); + this.leftArm.addChild(leftArm2); + this.setRotateAngle(leftArm2, -0.7418F, 0.0F, 0.0F); + this.leftArm2.cubeList.add(new ModelBox(leftArm2, 69, 0, -1.0F, 0.0F, -2.0F, 2, 6, 2, 0.0F, false)); + + this.leftArm3 = new AdvancedModelRenderer(this); + this.leftArm3.setRotationPoint(0.0F, 5.4717F, -1.1644F); + this.leftArm2.addChild(leftArm3); + this.setRotateAngle(leftArm3, 0.2182F, 0.0F, 0.0F); + this.leftArm3.cubeList.add(new ModelBox(leftArm3, 63, 52, -1.5F, 0.0F, -2.0F, 3, 1, 3, 0.0F, false)); + + this.rightArm = new AdvancedModelRenderer(this); + this.rightArm.setRotationPoint(-1.75F, 5.5084F, -2.2087F); + this.body3.addChild(rightArm); + this.setRotateAngle(rightArm, 0.4363F, 0.0F, 0.0F); + this.rightArm.cubeList.add(new ModelBox(rightArm, 63, 43, -1.5F, -0.5F, -1.5F, 3, 5, 3, 0.0F, true)); + + this.rightArm2 = new AdvancedModelRenderer(this); + this.rightArm2.setRotationPoint(0.0F, 4.5F, 1.5F); + this.rightArm.addChild(rightArm2); + this.setRotateAngle(rightArm2, -0.7418F, 0.0F, 0.0F); + this.rightArm2.cubeList.add(new ModelBox(rightArm2, 69, 0, -1.0F, 0.0F, -2.0F, 2, 6, 2, 0.0F, true)); + + this.rightArm3 = new AdvancedModelRenderer(this); + this.rightArm3.setRotationPoint(0.0F, 5.4717F, -1.1644F); + this.rightArm2.addChild(rightArm3); + this.setRotateAngle(rightArm3, 0.2182F, 0.0F, 0.0F); + this.rightArm3.cubeList.add(new ModelBox(rightArm3, 63, 52, -1.5F, 0.0F, -2.0F, 3, 1, 3, 0.0F, true)); + + this.neck = new AdvancedModelRenderer(this); + this.neck.setRotationPoint(0.0F, 0.3257F, -3.0076F); + this.body3.addChild(neck); + this.setRotateAngle(neck, -0.1745F, 0.0F, 0.0F); + this.neck.cubeList.add(new ModelBox(neck, 50, 33, -1.5F, -0.25F, -5.0F, 4, 4, 5, 0.0F, false)); + + this.cube_r1 = new AdvancedModelRenderer(this); + this.cube_r1.setRotationPoint(0.5F, 3.75F, -5.0F); + this.neck.addChild(cube_r1); + this.setRotateAngle(cube_r1, -0.2618F, 0.0F, 0.0F); + this.cube_r1.cubeList.add(new ModelBox(cube_r1, 52, 14, -1.5F, -1.325F, 0.0F, 3, 2, 6, 0.0F, false)); + + this.neck2 = new AdvancedModelRenderer(this); + this.neck2.setRotationPoint(-0.5F, -0.25F, -4.0F); + this.neck.addChild(neck2); + this.setRotateAngle(neck2, 0.1309F, 0.0F, 0.0F); + this.neck2.cubeList.add(new ModelBox(neck2, 44, 46, -0.5F, 0.0F, -6.0F, 3, 4, 6, -0.006F, false)); + + this.cube_r2 = new AdvancedModelRenderer(this); + this.cube_r2.setRotationPoint(1.0F, 4.0F, -5.0F); + this.neck2.addChild(cube_r2); + this.setRotateAngle(cube_r2, -0.1745F, 0.0F, 0.0F); + this.cube_r2.cubeList.add(new ModelBox(cube_r2, 17, 58, -1.5F, -0.95F, -1.0F, 3, 1, 5, -0.01F, false)); + + this.head = new AdvancedModelRenderer(this); + this.head.setRotationPoint(0.0F, -0.3125F, -5.0213F); + this.neck2.addChild(head); + this.setRotateAngle(head, 0.0436F, 0.0F, 0.0F); + this.head.cubeList.add(new ModelBox(head, 0, 58, -1.0F, 1.0F, -4.0F, 4, 2, 4, 0.0F, false)); + this.head.cubeList.add(new ModelBox(head, 57, 43, 2.05F, 0.75F, -3.675F, 1, 1, 1, 0.0F, false)); + this.head.cubeList.add(new ModelBox(head, 57, 43, -1.05F, 0.75F, -3.675F, 1, 1, 1, 0.0F, true)); + this.head.cubeList.add(new ModelBox(head, 30, 65, -0.5F, 1.0F, -7.0F, 3, 2, 3, 0.0F, false)); + this.head.cubeList.add(new ModelBox(head, 69, 37, 2.3F, 2.3F, -6.925F, 0, 1, 3, 0.0F, false)); + this.head.cubeList.add(new ModelBox(head, 69, 37, -0.3F, 2.3F, -6.925F, 0, 1, 3, 0.0F, true)); + + this.cube_r3 = new AdvancedModelRenderer(this); + this.cube_r3.setRotationPoint(1.0F, 2.7793F, -7.9753F); + this.head.addChild(cube_r3); + this.setRotateAngle(cube_r3, 0.6065F, 0.0F, 0.0F); + this.cube_r3.cubeList.add(new ModelBox(cube_r3, 23, 34, -0.9F, -0.4F, 0.1F, 0, 1, 1, 0.0F, true)); + this.cube_r3.cubeList.add(new ModelBox(cube_r3, 23, 34, 0.9F, -0.4F, 0.1F, 0, 1, 1, 0.0F, false)); + + this.cube_r4 = new AdvancedModelRenderer(this); + this.cube_r4.setRotationPoint(1.0F, 3.0F, -7.0F); + this.head.addChild(cube_r4); + this.setRotateAngle(cube_r4, -0.2225F, 0.0F, 0.0F); + this.cube_r4.cubeList.add(new ModelBox(cube_r4, 50, 43, -1.0F, -1.0F, -1.0F, 2, 1, 1, -0.003F, false)); + + this.cube_r5 = new AdvancedModelRenderer(this); + this.cube_r5.setRotationPoint(0.5F, 1.9098F, -8.4942F); + this.head.addChild(cube_r5); + this.setRotateAngle(cube_r5, 2.0944F, 0.0F, 0.0F); + this.cube_r5.cubeList.add(new ModelBox(cube_r5, 71, 14, -0.5F, 0.0F, -1.0F, 2, 1, 1, 0.006F, false)); + + this.cube_r6 = new AdvancedModelRenderer(this); + this.cube_r6.setRotationPoint(0.5F, 1.0438F, -7.9942F); + this.head.addChild(cube_r6); + this.setRotateAngle(cube_r6, 1.0472F, 0.0F, 0.0F); + this.cube_r6.cubeList.add(new ModelBox(cube_r6, 42, 14, -0.5F, 0.0F, -1.0F, 2, 2, 1, 0.0F, false)); + + this.cube_r7 = new AdvancedModelRenderer(this); + this.cube_r7.setRotationPoint(0.5F, 0.785F, -7.0283F); + this.head.addChild(cube_r7); + this.setRotateAngle(cube_r7, 0.2618F, 0.0F, 0.0F); + this.cube_r7.cubeList.add(new ModelBox(cube_r7, 14, 71, -0.5F, 0.0F, -1.0F, 2, 1, 1, 0.003F, false)); + + this.cube_r8 = new AdvancedModelRenderer(this); + this.cube_r8.setRotationPoint(0.0F, 0.2191F, -2.0616F); + this.head.addChild(cube_r8); + this.setRotateAngle(cube_r8, -0.0218F, 0.0F, 0.0F); + this.cube_r8.cubeList.add(new ModelBox(cube_r8, 69, 33, -0.5F, 0.0F, 0.0F, 3, 1, 2, 0.0F, false)); + + this.cube_r9 = new AdvancedModelRenderer(this); + this.cube_r9.setRotationPoint(-0.5F, 0.8044F, -3.0142F); + this.head.addChild(cube_r9); + this.setRotateAngle(cube_r9, 0.0166F, -0.0484F, 0.8715F); + this.cube_r9.cubeList.add(new ModelBox(cube_r9, 7, 71, -0.55F, -0.5F, -1.0F, 1, 1, 2, 0.0F, true)); + + this.cube_r10 = new AdvancedModelRenderer(this); + this.cube_r10.setRotationPoint(2.5F, 0.8044F, -3.0142F); + this.head.addChild(cube_r10); + this.setRotateAngle(cube_r10, 0.0166F, 0.0484F, -0.8715F); + this.cube_r10.cubeList.add(new ModelBox(cube_r10, 7, 71, -0.45F, -0.5F, -1.0F, 1, 1, 2, 0.0F, false)); + + this.cube_r11 = new AdvancedModelRenderer(this); + this.cube_r11.setRotationPoint(0.0F, 0.3934F, -4.054F); + this.head.addChild(cube_r11); + this.setRotateAngle(cube_r11, 0.0873F, 0.0F, 0.0F); + this.cube_r11.cubeList.add(new ModelBox(cube_r11, 31, 14, -0.5F, 0.0F, 0.0F, 3, 1, 2, 0.003F, false)); + + this.cube_r12 = new AdvancedModelRenderer(this); + this.cube_r12.setRotationPoint(0.5F, 0.785F, -7.0283F); + this.head.addChild(cube_r12); + this.setRotateAngle(cube_r12, 0.1309F, 0.0F, 0.0F); + this.cube_r12.cubeList.add(new ModelBox(cube_r12, 69, 23, -0.5F, 0.0F, 0.0F, 2, 1, 3, 0.0F, false)); + + this.jaw = new AdvancedModelRenderer(this); + this.jaw.setRotationPoint(0.0F, 3.0F, 0.0F); + this.head.addChild(jaw); + this.jaw.cubeList.add(new ModelBox(jaw, 61, 57, -1.0F, 0.0F, -4.0F, 4, 1, 4, 0.0F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 43, 66, -0.5F, -1.75F, -3.0F, 3, 2, 3, -0.003F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 69, 9, -0.5F, 0.0F, -7.0F, 3, 1, 3, 0.0F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 15, 65, -0.5F, 0.3916F, -4.0257F, 3, 1, 4, 0.0F, false)); + + this.cube_r13 = new AdvancedModelRenderer(this); + this.cube_r13.setRotationPoint(0.25F, -0.1477F, -7.5682F); + this.jaw.addChild(cube_r13); + this.setRotateAngle(cube_r13, -0.5672F, 0.0F, 0.0F); + this.cube_r13.cubeList.add(new ModelBox(cube_r13, 23, 37, 0.0F, -0.5F, 0.1F, 0, 1, 1, 0.0F, true)); + this.cube_r13.cubeList.add(new ModelBox(cube_r13, 23, 37, 1.5F, -0.5F, 0.1F, 0, 1, 1, 0.0F, false)); + + this.cube_r14 = new AdvancedModelRenderer(this); + this.cube_r14.setRotationPoint(1.0F, 0.3F, -5.5F); + this.jaw.addChild(cube_r14); + this.setRotateAngle(cube_r14, -0.0436F, 0.0F, 0.0F); + this.cube_r14.cubeList.add(new ModelBox(cube_r14, 0, 71, -1.0F, -0.575F, -1.35F, 0, 1, 3, 0.0F, true)); + this.cube_r14.cubeList.add(new ModelBox(cube_r14, 0, 71, 1.0F, -0.575F, -1.35F, 0, 1, 3, 0.0F, false)); + + this.cube_r15 = new AdvancedModelRenderer(this); + this.cube_r15.setRotationPoint(1.0F, 1.0F, -7.0F); + this.jaw.addChild(cube_r15); + this.setRotateAngle(cube_r15, -0.4363F, 0.0F, 0.0F); + this.cube_r15.cubeList.add(new ModelBox(cube_r15, 71, 17, -1.0F, -1.0F, -1.0F, 2, 1, 1, -0.01F, false)); + + this.cube_r16 = new AdvancedModelRenderer(this); + this.cube_r16.setRotationPoint(1.0F, 1.0F, -7.0F); + this.jaw.addChild(cube_r16); + this.setRotateAngle(cube_r16, -0.1309F, 0.0F, 0.0F); + this.cube_r16.cubeList.add(new ModelBox(cube_r16, 69, 28, -1.0F, -1.0F, 0.0F, 2, 1, 3, 0.0F, false)); + + updateDefaultPose(); + animator = ModelAnimator.create(); + } + + @Override + public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { + animate((IAnimatedEntity) entity, f, f1, f2, f3, f4, f5); + this.main.render(f5); + } + + @Override + public void renderStaticBook(float f) { + //Rotations, positions and sizing: + this.main.offsetY = 0.2F; + this.main.offsetX = 0.35F; + this.main.offsetZ = 2.0F; + this.main.rotateAngleY = (float)Math.toRadians(120); + this.main.rotateAngleX = (float)Math.toRadians(1); + this.main.rotateAngleZ = (float)Math.toRadians(0); + this.main.scaleChildren = true; + float scaler = 0.6F; + this.main.setScale(scaler, scaler, scaler); + //Start of pose: + + //End of pose, now render the model: + this.main.render(f); + //Reset rotations, positions and sizing: + this.main.setScale(1.0F, 1.0F, 1.0F); + this.main.scaleChildren = false; + resetToDefaultPose(); + + } + + public void renderStaticWall(float f) { + resetToDefaultPose(); + } + + public void renderStaticFloor(float f) { + this.main.offsetY = -0.105F; + this.main.render(0.01F); + resetToDefaultPose(); + } + + public void setRotateAngle(AdvancedModelRenderer AdvancedModelRenderer, float x, float y, float z) { + AdvancedModelRenderer.rotateAngleX = x; + AdvancedModelRenderer.rotateAngleY = y; + AdvancedModelRenderer.rotateAngleZ = z; + } + + @Override + public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity e) { + super.setRotationAngles(f, f1, f2, f3, f4, f5, e); + //this.resetToDefaultPose(); + + EntityPrehistoricFloraNundasuchus EntityMegalosaurus = (EntityPrehistoricFloraNundasuchus) e; + + this.faceTarget(f3, f4, 8, neck); + this.faceTarget(f3, f4, 8, neck2); + this.faceTarget(f3, f4, 8, head); + + AdvancedModelRenderer[] Tail = {this.tail, this.tail2, this.tail3, this.tail4, this.tail5}; + AdvancedModelRenderer[] Neck = {this.neck, this.neck2, this.head}; + + EntityMegalosaurus.tailBuffer.applyChainSwingBuffer(Tail); + + if (EntityMegalosaurus.getAnimation() == EntityMegalosaurus.LAY_ANIMATION) { + this.chainSwing(Neck, 0.5F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.5F * 2, -0.02F, 0.5F, f2, 0.8F); + } + else { + if (!EntityMegalosaurus.isReallyInWater()) { + + if (f3 == 0.0F || !EntityMegalosaurus.getIsMoving()) { + this.chainSwing(Neck, 0.05F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.05F * 2, -0.02F, 0.5F, f2, 0.8F); + + this.chainWave(Tail, (0.15F * 0.35F), 0.125F * 0.15F, 0.2F, f2, 1F); + this.chainSwing(Tail, (0.15F * 0.35F) * 4F, 0.05F * 0.35F, 0.12F, f2, 1F); + return; + } + + if (EntityMegalosaurus.getIsFast()) { //Running + + + } else { //Walking + + } + } else { + //Swimming pose: + if (f3 == 0.0F) { //static in water + return; + } + //moving in water + return; + } + } + } + + public void animAttack(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraNundasuchus entity = (EntityPrehistoricFloraNundasuchus) entitylivingbaseIn; + int animCycle = 15; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (15.75-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = 15.75 + (((tickAnim - 5) / 5) * (-7.5-(15.75))); + yy = 0 + (((tickAnim - 5) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 5) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = -7.5 + (((tickAnim - 10) / 5) * (0-(-7.5))); + yy = 0 + (((tickAnim - 10) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = 0 + (((tickAnim - 10) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 10) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.neck.rotationPointX = this.neck.rotationPointX + (float)(xx); + this.neck.rotationPointY = this.neck.rotationPointY - (float)(yy); + this.neck.rotationPointZ = this.neck.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (-13.75-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = -13.75 + (((tickAnim - 5) / 5) * (-6.75-(-13.75))); + yy = 0 + (((tickAnim - 5) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 5) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = -6.75 + (((tickAnim - 10) / 5) * (0-(-6.75))); + yy = 0 + (((tickAnim - 10) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck2, neck2.rotateAngleX + (float) Math.toRadians(xx), neck2.rotateAngleY + (float) Math.toRadians(yy), neck2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0.6-(0))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = 0 + (((tickAnim - 5) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 5) / 5) * (0-(0))); + zz = 0.6 + (((tickAnim - 5) / 5) * (0-(0.6))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = 0 + (((tickAnim - 10) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 10) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.neck2.rotationPointX = this.neck2.rotationPointX + (float)(xx); + this.neck2.rotationPointY = this.neck2.rotationPointY - (float)(yy); + this.neck2.rotationPointZ = this.neck2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (4.75-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 5) { + xx = 4.75 + (((tickAnim - 3) / 2) * (-10.5-(4.75))); + yy = 0 + (((tickAnim - 3) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 2) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 8) { + xx = -10.5 + (((tickAnim - 5) / 3) * (-11.25-(-10.5))); + yy = 0 + (((tickAnim - 5) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 3) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = -11.25 + (((tickAnim - 8) / 2) * (9.5-(-11.25))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = 9.5 + (((tickAnim - 10) / 5) * (0-(9.5))); + yy = 0 + (((tickAnim - 10) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = 0 + (((tickAnim - 10) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 10) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.head.rotationPointX = this.head.rotationPointX + (float)(xx); + this.head.rotationPointY = this.head.rotationPointY - (float)(yy); + this.head.rotationPointZ = this.head.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (4.75-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 8) { + xx = 4.75 + (((tickAnim - 5) / 3) * (31.75-(4.75))); + yy = 0 + (((tickAnim - 5) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 3) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 31.75 + (((tickAnim - 8) / 2) * (0-(31.75))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animEat(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraNundasuchus entity = (EntityPrehistoricFloraNundasuchus) entitylivingbaseIn; + int animCycle = 20; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (21.25-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 21.25 + (((tickAnim - 10) / 10) * (0-(21.25))); + yy = 0 + (((tickAnim - 10) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0.35-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 0 + (((tickAnim - 10) / 10) * (0-(0))); + yy = 0.35 + (((tickAnim - 10) / 10) * (0-(0.35))); + zz = 0 + (((tickAnim - 10) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.neck.rotationPointX = this.neck.rotationPointX + (float)(xx); + this.neck.rotationPointY = this.neck.rotationPointY - (float)(yy); + this.neck.rotationPointZ = this.neck.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (9.25-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 9.25 + (((tickAnim - 10) / 10) * (0-(9.25))); + yy = 0 + (((tickAnim - 10) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck2, neck2.rotateAngleX + (float) Math.toRadians(xx), neck2.rotateAngleY + (float) Math.toRadians(yy), neck2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (-0.875-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 0 + (((tickAnim - 10) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 10) / 10) * (0-(0))); + zz = -0.875 + (((tickAnim - 10) / 10) * (0-(-0.875))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.neck2.rotationPointX = this.neck2.rotationPointX + (float)(xx); + this.neck2.rotationPointY = this.neck2.rotationPointY - (float)(yy); + this.neck2.rotationPointZ = this.neck2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (29.63-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = 29.63 + (((tickAnim - 5) / 5) * (15.75-(29.63))); + yy = 0 + (((tickAnim - 5) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 5) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = 15.75 + (((tickAnim - 10) / 3) * (28-(15.75))); + yy = 0 + (((tickAnim - 10) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 3) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 20) { + xx = 28 + (((tickAnim - 13) / 7) * (0-(28))); + yy = 0 + (((tickAnim - 13) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (-0.79-(0))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = 0 + (((tickAnim - 5) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 5) / 5) * (0-(0))); + zz = -0.79 + (((tickAnim - 5) / 5) * (-0.675-(-0.79))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = 0 + (((tickAnim - 10) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 10) / 3) * (0-(0))); + zz = -0.675 + (((tickAnim - 10) / 3) * (-0.675-(-0.675))); + } + else if (tickAnim >= 13 && tickAnim < 20) { + xx = 0 + (((tickAnim - 13) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 13) / 7) * (0-(0))); + zz = -0.675 + (((tickAnim - 13) / 7) * (0-(-0.675))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.head.rotationPointX = this.head.rotationPointX + (float)(xx); + this.head.rotationPointY = this.head.rotationPointY - (float)(yy); + this.head.rotationPointZ = this.head.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (24.25-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = 24.25 + (((tickAnim - 5) / 5) * (0-(24.25))); + yy = 0 + (((tickAnim - 5) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animNest(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraNundasuchus entity = (EntityPrehistoricFloraNundasuchus) entitylivingbaseIn; + int animCycle = 50; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (35.25-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 23) { + xx = 35.25 + (((tickAnim - 10) / 13) * (-12.62-(35.25))); + yy = 0 + (((tickAnim - 10) / 13) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 13) * (0-(0))); + } + else if (tickAnim >= 23 && tickAnim < 25) { + xx = -12.62 + (((tickAnim - 23) / 2) * (0-(-12.62))); + yy = 0 + (((tickAnim - 23) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 23) / 2) * (0-(0))); + } + else if (tickAnim >= 25 && tickAnim < 35) { + xx = 0 + (((tickAnim - 25) / 10) * (35.25-(0))); + yy = 0 + (((tickAnim - 25) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 25) / 10) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 48) { + xx = 35.25 + (((tickAnim - 35) / 13) * (-12.62-(35.25))); + yy = 0 + (((tickAnim - 35) / 13) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 13) * (0-(0))); + } + else if (tickAnim >= 48 && tickAnim < 50) { + xx = -12.62 + (((tickAnim - 48) / 2) * (0-(-12.62))); + yy = 0 + (((tickAnim - 48) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 48) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg, leftLeg.rotateAngleX + (float) Math.toRadians(xx), leftLeg.rotateAngleY + (float) Math.toRadians(yy), leftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 18) { + xx = 0 + (((tickAnim - 10) / 8) * (25-(0))); + yy = 0 + (((tickAnim - 10) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 8) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 25) { + xx = 25 + (((tickAnim - 18) / 7) * (0-(25))); + yy = 0 + (((tickAnim - 18) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 7) * (0-(0))); + } + else if (tickAnim >= 25 && tickAnim < 35) { + xx = 0 + (((tickAnim - 25) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 25) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 25) / 10) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 43) { + xx = 0 + (((tickAnim - 35) / 8) * (25-(0))); + yy = 0 + (((tickAnim - 35) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 8) * (0-(0))); + } + else if (tickAnim >= 43 && tickAnim < 50) { + xx = 25 + (((tickAnim - 43) / 7) * (0-(25))); + yy = 0 + (((tickAnim - 43) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 43) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg2, leftLeg2.rotateAngleX + (float) Math.toRadians(xx), leftLeg2.rotateAngleY + (float) Math.toRadians(yy), leftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (16-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 18) { + xx = 16 + (((tickAnim - 10) / 8) * (-37.5-(16))); + yy = 0 + (((tickAnim - 10) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 8) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 22) { + xx = -37.5 + (((tickAnim - 18) / 4) * (-37.5-(-37.5))); + yy = 0 + (((tickAnim - 18) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 4) * (0-(0))); + } + else if (tickAnim >= 22 && tickAnim < 25) { + xx = -37.5 + (((tickAnim - 22) / 3) * (0-(-37.5))); + yy = 0 + (((tickAnim - 22) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 22) / 3) * (0-(0))); + } + else if (tickAnim >= 25 && tickAnim < 35) { + xx = 0 + (((tickAnim - 25) / 10) * (16-(0))); + yy = 0 + (((tickAnim - 25) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 25) / 10) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 43) { + xx = 16 + (((tickAnim - 35) / 8) * (-37.5-(16))); + yy = 0 + (((tickAnim - 35) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 8) * (0-(0))); + } + else if (tickAnim >= 43 && tickAnim < 47) { + xx = -37.5 + (((tickAnim - 43) / 4) * (-37.5-(-37.5))); + yy = 0 + (((tickAnim - 43) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 43) / 4) * (0-(0))); + } + else if (tickAnim >= 47 && tickAnim < 50) { + xx = -37.5 + (((tickAnim - 47) / 3) * (0-(-37.5))); + yy = 0 + (((tickAnim - 47) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 47) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg3, leftLeg3.rotateAngleX + (float) Math.toRadians(xx), leftLeg3.rotateAngleY + (float) Math.toRadians(yy), leftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0.075-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0.175-(0))); + } + else if (tickAnim >= 18 && tickAnim < 22) { + xx = 0 + (((tickAnim - 18) / 4) * (0-(0))); + yy = 0.075 + (((tickAnim - 18) / 4) * (0.075-(0.075))); + zz = 0.175 + (((tickAnim - 18) / 4) * (0.175-(0.175))); + } + else if (tickAnim >= 22 && tickAnim < 25) { + xx = 0 + (((tickAnim - 22) / 3) * (0-(0))); + yy = 0.075 + (((tickAnim - 22) / 3) * (0-(0.075))); + zz = 0.175 + (((tickAnim - 22) / 3) * (0-(0.175))); + } + else if (tickAnim >= 25 && tickAnim < 43) { + xx = 0 + (((tickAnim - 25) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 25) / 18) * (0.075-(0))); + zz = 0 + (((tickAnim - 25) / 18) * (0.175-(0))); + } + else if (tickAnim >= 43 && tickAnim < 47) { + xx = 0 + (((tickAnim - 43) / 4) * (0-(0))); + yy = 0.075 + (((tickAnim - 43) / 4) * (0.075-(0.075))); + zz = 0.175 + (((tickAnim - 43) / 4) * (0.175-(0.175))); + } + else if (tickAnim >= 47 && tickAnim < 50) { + xx = 0 + (((tickAnim - 47) / 3) * (0-(0))); + yy = 0.075 + (((tickAnim - 47) / 3) * (0-(0.075))); + zz = 0.175 + (((tickAnim - 47) / 3) * (0-(0.175))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftLeg3.rotationPointX = this.leftLeg3.rotationPointX + (float)(xx); + this.leftLeg3.rotationPointY = this.leftLeg3.rotationPointY - (float)(yy); + this.leftLeg3.rotationPointZ = this.leftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (54-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 18) { + xx = 54 + (((tickAnim - 10) / 8) * (79.25-(54))); + yy = 0 + (((tickAnim - 10) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 8) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 22) { + xx = 79.25 + (((tickAnim - 18) / 4) * (79.25-(79.25))); + yy = 0 + (((tickAnim - 18) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 4) * (0-(0))); + } + else if (tickAnim >= 22 && tickAnim < 25) { + xx = 79.25 + (((tickAnim - 22) / 3) * (0-(79.25))); + yy = 0 + (((tickAnim - 22) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 22) / 3) * (0-(0))); + } + else if (tickAnim >= 25 && tickAnim < 35) { + xx = 0 + (((tickAnim - 25) / 10) * (54-(0))); + yy = 0 + (((tickAnim - 25) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 25) / 10) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 43) { + xx = 54 + (((tickAnim - 35) / 8) * (79.25-(54))); + yy = 0 + (((tickAnim - 35) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 8) * (0-(0))); + } + else if (tickAnim >= 43 && tickAnim < 47) { + xx = 79.25 + (((tickAnim - 43) / 4) * (79.25-(79.25))); + yy = 0 + (((tickAnim - 43) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 43) / 4) * (0-(0))); + } + else if (tickAnim >= 47 && tickAnim < 50) { + xx = 79.25 + (((tickAnim - 47) / 3) * (0-(79.25))); + yy = 0 + (((tickAnim - 47) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 47) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg4, leftLeg4.rotateAngleX + (float) Math.toRadians(xx), leftLeg4.rotateAngleY + (float) Math.toRadians(yy), leftLeg4.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (-0.375-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (-0.175-(0))); + } + else if (tickAnim >= 10 && tickAnim < 18) { + xx = 0 + (((tickAnim - 10) / 8) * (0-(0))); + yy = -0.375 + (((tickAnim - 10) / 8) * (1.035-(-0.375))); + zz = -0.175 + (((tickAnim - 10) / 8) * (-0.44-(-0.175))); + } + else if (tickAnim >= 18 && tickAnim < 22) { + xx = 0 + (((tickAnim - 18) / 4) * (0-(0))); + yy = 1.035 + (((tickAnim - 18) / 4) * (1.035-(1.035))); + zz = -0.44 + (((tickAnim - 18) / 4) * (-0.44-(-0.44))); + } + else if (tickAnim >= 22 && tickAnim < 25) { + xx = 0 + (((tickAnim - 22) / 3) * (0-(0))); + yy = 1.035 + (((tickAnim - 22) / 3) * (0-(1.035))); + zz = -0.44 + (((tickAnim - 22) / 3) * (0-(-0.44))); + } + else if (tickAnim >= 25 && tickAnim < 35) { + xx = 0 + (((tickAnim - 25) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 25) / 10) * (-0.375-(0))); + zz = 0 + (((tickAnim - 25) / 10) * (-0.175-(0))); + } + else if (tickAnim >= 35 && tickAnim < 43) { + xx = 0 + (((tickAnim - 35) / 8) * (0-(0))); + yy = -0.375 + (((tickAnim - 35) / 8) * (1.035-(-0.375))); + zz = -0.175 + (((tickAnim - 35) / 8) * (-0.44-(-0.175))); + } + else if (tickAnim >= 43 && tickAnim < 47) { + xx = 0 + (((tickAnim - 43) / 4) * (0-(0))); + yy = 1.035 + (((tickAnim - 43) / 4) * (1.035-(1.035))); + zz = -0.44 + (((tickAnim - 43) / 4) * (-0.44-(-0.44))); + } + else if (tickAnim >= 47 && tickAnim < 50) { + xx = 0 + (((tickAnim - 47) / 3) * (0-(0))); + yy = 1.035 + (((tickAnim - 47) / 3) * (0-(1.035))); + zz = -0.44 + (((tickAnim - 47) / 3) * (0-(-0.44))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftLeg4.rotationPointX = this.leftLeg4.rotationPointX + (float)(xx); + this.leftLeg4.rotationPointY = this.leftLeg4.rotationPointY - (float)(yy); + this.leftLeg4.rotationPointZ = this.leftLeg4.rotationPointZ + (float)(zz); + + } + public void animLay(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraNundasuchus entity = (EntityPrehistoricFloraNundasuchus) entitylivingbaseIn; + int animCycle = 50; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-7-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -7 + (((tickAnim - 20) / 10) * (-7-(-7))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -7 + (((tickAnim - 30) / 20) * (0-(-7))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(xx), main.rotateAngleY + (float) Math.toRadians(yy), main.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (-4.2-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (1.9-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 0 + (((tickAnim - 20) / 10) * (0-(0))); + yy = -4.2 + (((tickAnim - 20) / 10) * (-4.2-(-4.2))); + zz = 1.9 + (((tickAnim - 20) / 10) * (1.9-(1.9))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 0 + (((tickAnim - 30) / 20) * (0-(0))); + yy = -4.2 + (((tickAnim - 30) / 20) * (0-(-4.2))); + zz = 1.9 + (((tickAnim - 30) / 20) * (0-(1.9))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.main.rotationPointX = this.main.rotationPointX + (float)(xx); + this.main.rotationPointY = this.main.rotationPointY - (float)(yy); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-30.5-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (-5-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -30.5 + (((tickAnim - 20) / 10) * (-30.5-(-30.5))); + yy = -5 + (((tickAnim - 20) / 10) * (-5-(-5))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -30.5 + (((tickAnim - 30) / 20) * (0-(-30.5))); + yy = -5 + (((tickAnim - 30) / 20) * (0-(-5))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg, leftLeg.rotateAngleX + (float) Math.toRadians(xx), leftLeg.rotateAngleY + (float) Math.toRadians(yy), leftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (46.75-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 46.75 + (((tickAnim - 20) / 10) * (46.75-(46.75))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 46.75 + (((tickAnim - 30) / 20) * (0-(46.75))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg2, leftLeg2.rotateAngleX + (float) Math.toRadians(xx), leftLeg2.rotateAngleY + (float) Math.toRadians(yy), leftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-9-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -9 + (((tickAnim - 20) / 10) * (-9-(-9))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -9 + (((tickAnim - 30) / 20) * (0-(-9))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg3, leftLeg3.rotateAngleX + (float) Math.toRadians(xx), leftLeg3.rotateAngleY + (float) Math.toRadians(yy), leftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-30.5-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (5-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -30.5 + (((tickAnim - 20) / 10) * (-30.5-(-30.5))); + yy = 5 + (((tickAnim - 20) / 10) * (5-(5))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -30.5 + (((tickAnim - 30) / 20) * (0-(-30.5))); + yy = 5 + (((tickAnim - 30) / 20) * (0-(5))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg, rightLeg.rotateAngleX + (float) Math.toRadians(xx), rightLeg.rotateAngleY + (float) Math.toRadians(yy), rightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (46.75-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 46.75 + (((tickAnim - 20) / 10) * (46.75-(46.75))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 46.75 + (((tickAnim - 30) / 20) * (0-(46.75))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg2, rightLeg2.rotateAngleX + (float) Math.toRadians(xx), rightLeg2.rotateAngleY + (float) Math.toRadians(yy), rightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-9-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -9 + (((tickAnim - 20) / 10) * (-9-(-9))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -9 + (((tickAnim - 30) / 20) * (0-(-9))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg3, rightLeg3.rotateAngleX + (float) Math.toRadians(xx), rightLeg3.rotateAngleY + (float) Math.toRadians(yy), rightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-11.75-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -11.75 + (((tickAnim - 20) / 10) * (-11.75-(-11.75))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -11.75 + (((tickAnim - 30) / 20) * (0-(-11.75))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(xx), tail.rotateAngleY + (float) Math.toRadians(yy), tail.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 20) { + xx = 0 + (((tickAnim - 8) / 12) * (-4.5-(0))); + yy = 0 + (((tickAnim - 8) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 12) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -4.5 + (((tickAnim - 20) / 10) * (-4.5-(-4.5))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -4.5 + (((tickAnim - 30) / 20) * (0-(-4.5))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(xx), tail2.rotateAngleY + (float) Math.toRadians(yy), tail2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 20) { + xx = 0 + (((tickAnim - 8) / 12) * (8.25-(0))); + yy = 0 + (((tickAnim - 8) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 12) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 8.25 + (((tickAnim - 20) / 10) * (8.25-(8.25))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 38) { + xx = 8.25 + (((tickAnim - 30) / 8) * (0-(8.25))); + yy = 0 + (((tickAnim - 30) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 8) * (0-(0))); + } + else if (tickAnim >= 38 && tickAnim < 50) { + xx = 0 + (((tickAnim - 38) / 12) * (0-(0))); + yy = 0 + (((tickAnim - 38) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 38) / 12) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(xx), tail3.rotateAngleY + (float) Math.toRadians(yy), tail3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 20) { + xx = 0 + (((tickAnim - 8) / 12) * (26.22368-(0))); + yy = 0 + (((tickAnim - 8) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 12) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 26.22368 + (((tickAnim - 20) / 10) * (26.22368-(26.22368))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 38) { + xx = 26.22368 + (((tickAnim - 30) / 8) * (0-(26.22368))); + yy = 0 + (((tickAnim - 30) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 8) * (0-(0))); + } + else if (tickAnim >= 38 && tickAnim < 43) { + xx = 0 + (((tickAnim - 38) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 38) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 38) / 5) * (0-(0))); + } + else if (tickAnim >= 43 && tickAnim < 50) { + xx = 0 + (((tickAnim - 43) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 43) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 43) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(xx), tail4.rotateAngleY + (float) Math.toRadians(yy), tail4.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (-0.475-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 0 + (((tickAnim - 20) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = -0.475 + (((tickAnim - 20) / 10) * (-0.475-(-0.475))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 0 + (((tickAnim - 30) / 20) * (0-(0))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = -0.475 + (((tickAnim - 30) / 20) * (0-(-0.475))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.tail4.rotationPointX = this.tail4.rotationPointX + (float)(xx); + this.tail4.rotationPointY = this.tail4.rotationPointY - (float)(yy); + this.tail4.rotationPointZ = this.tail4.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 20) { + xx = 0 + (((tickAnim - 8) / 12) * (-3.25-(0))); + yy = 0 + (((tickAnim - 8) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 12) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -3.25 + (((tickAnim - 20) / 10) * (-3.25-(-3.25))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 38) { + xx = -3.25 + (((tickAnim - 30) / 8) * (20.47-(-3.25))); + yy = 0 + (((tickAnim - 30) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 8) * (0-(0))); + } + else if (tickAnim >= 38 && tickAnim < 41) { + xx = 20.47 + (((tickAnim - 38) / 3) * (0-(20.47))); + yy = 0 + (((tickAnim - 38) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 38) / 3) * (0-(0))); + } + else if (tickAnim >= 41 && tickAnim < 43) { + xx = 0 + (((tickAnim - 41) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 41) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 41) / 2) * (0-(0))); + } + else if (tickAnim >= 43 && tickAnim < 46) { + xx = 0 + (((tickAnim - 43) / 3) * (-6.75-(0))); + yy = 0 + (((tickAnim - 43) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 43) / 3) * (0-(0))); + } + else if (tickAnim >= 46 && tickAnim < 50) { + xx = -6.75 + (((tickAnim - 46) / 4) * (0-(-6.75))); + yy = 0 + (((tickAnim - 46) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 46) / 4) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail5, tail5.rotateAngleX + (float) Math.toRadians(xx), tail5.rotateAngleY + (float) Math.toRadians(yy), tail5.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 30) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 30) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 38) { + xx = 0 + (((tickAnim - 30) / 8) * (0-(0))); + yy = 0 + (((tickAnim - 30) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 8) * (0-(0))); + } + else if (tickAnim >= 38 && tickAnim < 41) { + xx = 0 + (((tickAnim - 38) / 3) * (13.5-(0))); + yy = 0 + (((tickAnim - 38) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 38) / 3) * (0-(0))); + } + else if (tickAnim >= 41 && tickAnim < 43) { + xx = 13.5 + (((tickAnim - 41) / 2) * (0-(13.5))); + yy = 0 + (((tickAnim - 41) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 41) / 2) * (0-(0))); + } + else if (tickAnim >= 43 && tickAnim < 46) { + xx = 0 + (((tickAnim - 43) / 3) * (-6.75-(0))); + yy = 0 + (((tickAnim - 43) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 43) / 3) * (0-(0))); + } + else if (tickAnim >= 46 && tickAnim < 50) { + xx = -6.75 + (((tickAnim - 46) / 4) * (0-(-6.75))); + yy = 0 + (((tickAnim - 46) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 46) / 4) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail6, tail6.rotateAngleX + (float) Math.toRadians(xx), tail6.rotateAngleY + (float) Math.toRadians(yy), tail6.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-2.5-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -2.5 + (((tickAnim - 20) / 10) * (-2.5-(-2.5))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -2.5 + (((tickAnim - 30) / 20) * (0-(-2.5))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(xx), body.rotateAngleY + (float) Math.toRadians(yy), body.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-4-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -4 + (((tickAnim - 20) / 10) * (-4-(-4))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -4 + (((tickAnim - 30) / 20) * (0-(-4))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(xx), body2.rotateAngleY + (float) Math.toRadians(yy), body2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (6-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 6 + (((tickAnim - 20) / 10) * (6-(6))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 6 + (((tickAnim - 30) / 20) * (0-(6))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body3, body3.rotateAngleX + (float) Math.toRadians(xx), body3.rotateAngleY + (float) Math.toRadians(yy), body3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0.125-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 0 + (((tickAnim - 20) / 10) * (0-(0))); + yy = 0.125 + (((tickAnim - 20) / 10) * (0.125-(0.125))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 0 + (((tickAnim - 30) / 20) * (0-(0))); + yy = 0.125 + (((tickAnim - 30) / 20) * (0-(0.125))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.body3.rotationPointX = this.body3.rotationPointX + (float)(xx); + this.body3.rotationPointY = this.body3.rotationPointY - (float)(yy); + this.body3.rotationPointZ = this.body3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-1.01238-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (11.73955-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (-5.55256-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -1.01238 + (((tickAnim - 20) / 10) * (-1.01238-(-1.01238))); + yy = 11.73955 + (((tickAnim - 20) / 10) * (11.73955-(11.73955))); + zz = -5.55256 + (((tickAnim - 20) / 10) * (-5.55256-(-5.55256))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -1.01238 + (((tickAnim - 30) / 20) * (0-(-1.01238))); + yy = 11.73955 + (((tickAnim - 30) / 20) * (0-(11.73955))); + zz = -5.55256 + (((tickAnim - 30) / 20) * (0-(-5.55256))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm, leftArm.rotateAngleX + (float) Math.toRadians(xx), leftArm.rotateAngleY + (float) Math.toRadians(yy), leftArm.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-12.5-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -12.5 + (((tickAnim - 20) / 10) * (-12.5-(-12.5))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -12.5 + (((tickAnim - 30) / 20) * (0-(-12.5))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm2, leftArm2.rotateAngleX + (float) Math.toRadians(xx), leftArm2.rotateAngleY + (float) Math.toRadians(yy), leftArm2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (21.19963-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (-13.67246-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (-3.31582-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 21.19963 + (((tickAnim - 20) / 10) * (21.19963-(21.19963))); + yy = -13.67246 + (((tickAnim - 20) / 10) * (-13.67246-(-13.67246))); + zz = -3.31582 + (((tickAnim - 20) / 10) * (-3.31582-(-3.31582))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 21.19963 + (((tickAnim - 30) / 20) * (0-(21.19963))); + yy = -13.67246 + (((tickAnim - 30) / 20) * (0-(-13.67246))); + zz = -3.31582 + (((tickAnim - 30) / 20) * (0-(-3.31582))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm3, leftArm3.rotateAngleX + (float) Math.toRadians(xx), leftArm3.rotateAngleY + (float) Math.toRadians(yy), leftArm3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-1.01238-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (-11.73955-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (5.55256-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -1.01238 + (((tickAnim - 20) / 10) * (-1.01238-(-1.01238))); + yy = -11.73955 + (((tickAnim - 20) / 10) * (-11.73955-(-11.73955))); + zz = 5.55256 + (((tickAnim - 20) / 10) * (5.55256-(5.55256))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -1.01238 + (((tickAnim - 30) / 20) * (0-(-1.01238))); + yy = -11.73955 + (((tickAnim - 30) / 20) * (0-(-11.73955))); + zz = 5.55256 + (((tickAnim - 30) / 20) * (0-(5.55256))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm, rightArm.rotateAngleX + (float) Math.toRadians(xx), rightArm.rotateAngleY + (float) Math.toRadians(yy), rightArm.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-12.5-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -12.5 + (((tickAnim - 20) / 10) * (-12.5-(-12.5))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -12.5 + (((tickAnim - 30) / 20) * (0-(-12.5))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm2, rightArm2.rotateAngleX + (float) Math.toRadians(xx), rightArm2.rotateAngleY + (float) Math.toRadians(yy), rightArm2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (21.19963-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (13.67246-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (3.31582-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 21.19963 + (((tickAnim - 20) / 10) * (21.19963-(21.19963))); + yy = 13.67246 + (((tickAnim - 20) / 10) * (13.67246-(13.67246))); + zz = 3.31582 + (((tickAnim - 20) / 10) * (3.31582-(3.31582))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 21.19963 + (((tickAnim - 30) / 20) * (0-(21.19963))); + yy = 13.67246 + (((tickAnim - 30) / 20) * (0-(13.67246))); + zz = 3.31582 + (((tickAnim - 30) / 20) * (0-(3.31582))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm3, rightArm3.rotateAngleX + (float) Math.toRadians(xx), rightArm3.rotateAngleY + (float) Math.toRadians(yy), rightArm3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (11-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 11 + (((tickAnim - 20) / 10) * (11-(11))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 11 + (((tickAnim - 30) / 20) * (0-(11))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0.2-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 0 + (((tickAnim - 20) / 10) * (0-(0))); + yy = 0.2 + (((tickAnim - 20) / 10) * (0.2-(0.2))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 0 + (((tickAnim - 30) / 20) * (0-(0))); + yy = 0.2 + (((tickAnim - 30) / 20) * (0-(0.2))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.neck.rotationPointX = this.neck.rotationPointX + (float)(xx); + this.neck.rotationPointY = this.neck.rotationPointY - (float)(yy); + this.neck.rotationPointZ = this.neck.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 50) { + xx = 0 + (((tickAnim - 0) / 50) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 50) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 50) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck2, neck2.rotateAngleX + (float) Math.toRadians(xx), neck2.rotateAngleY + (float) Math.toRadians(yy), neck2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 50) { + xx = 0 + (((tickAnim - 0) / 50) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 50) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 50) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animAlert(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraNundasuchus entity = (EntityPrehistoricFloraNundasuchus) entitylivingbaseIn; + int animCycle = 180; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (-2.5-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = -2.5 + (((tickAnim - 40) / 105) * (-2.5-(-2.5))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = -2.5 + (((tickAnim - 145) / 35) * (0-(-2.5))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(xx), main.rotateAngleY + (float) Math.toRadians(yy), main.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (-0.6-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = 0 + (((tickAnim - 40) / 105) * (0-(0))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = -0.6 + (((tickAnim - 40) / 105) * (-0.6-(-0.6))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 0 + (((tickAnim - 145) / 35) * (0-(0))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = -0.6 + (((tickAnim - 145) / 35) * (0-(-0.6))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.main.rotationPointX = this.main.rotationPointX + (float)(xx); + this.main.rotationPointY = this.main.rotationPointY - (float)(yy); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (8.75-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = 8.75 + (((tickAnim - 40) / 105) * (8.75-(8.75))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 8.75 + (((tickAnim - 145) / 35) * (0-(8.75))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg, leftLeg.rotateAngleX + (float) Math.toRadians(xx), leftLeg.rotateAngleY + (float) Math.toRadians(yy), leftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (-3.25-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = -3.25 + (((tickAnim - 40) / 105) * (-3.25-(-3.25))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = -3.25 + (((tickAnim - 145) / 35) * (0-(-3.25))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg2, leftLeg2.rotateAngleX + (float) Math.toRadians(xx), leftLeg2.rotateAngleY + (float) Math.toRadians(yy), leftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (-2.98018-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (-0.11895-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (-0.32-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = -2.98018 + (((tickAnim - 40) / 105) * (-2.98018-(-2.98018))); + yy = -0.11895 + (((tickAnim - 40) / 105) * (-0.11895-(-0.11895))); + zz = -0.32 + (((tickAnim - 40) / 105) * (-0.32-(-0.32))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = -2.98018 + (((tickAnim - 145) / 35) * (0-(-2.98018))); + yy = -0.11895 + (((tickAnim - 145) / 35) * (0-(-0.11895))); + zz = -0.32 + (((tickAnim - 145) / 35) * (0-(-0.32))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg4, leftLeg4.rotateAngleX + (float) Math.toRadians(xx), leftLeg4.rotateAngleY + (float) Math.toRadians(yy), leftLeg4.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (8.75-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = 8.75 + (((tickAnim - 40) / 105) * (8.75-(8.75))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 8.75 + (((tickAnim - 145) / 35) * (0-(8.75))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg, rightLeg.rotateAngleX + (float) Math.toRadians(xx), rightLeg.rotateAngleY + (float) Math.toRadians(yy), rightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (-3.25-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = -3.25 + (((tickAnim - 40) / 105) * (-3.25-(-3.25))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = -3.25 + (((tickAnim - 145) / 35) * (0-(-3.25))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg2, rightLeg2.rotateAngleX + (float) Math.toRadians(xx), rightLeg2.rotateAngleY + (float) Math.toRadians(yy), rightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (-2.98018-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (-0.11895-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (-0.32-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = -2.98018 + (((tickAnim - 40) / 105) * (-2.98018-(-2.98018))); + yy = -0.11895 + (((tickAnim - 40) / 105) * (-0.11895-(-0.11895))); + zz = -0.32 + (((tickAnim - 40) / 105) * (-0.32-(-0.32))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = -2.98018 + (((tickAnim - 145) / 35) * (0-(-2.98018))); + yy = -0.11895 + (((tickAnim - 145) / 35) * (0-(-0.11895))); + zz = -0.32 + (((tickAnim - 145) / 35) * (0-(-0.32))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg4, rightLeg4.rotateAngleX + (float) Math.toRadians(xx), rightLeg4.rotateAngleY + (float) Math.toRadians(yy), rightLeg4.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 80) { + xx = 0 + (((tickAnim - 0) / 80) * (-1.50301-(0))); + yy = 0 + (((tickAnim - 0) / 80) * (1.73875-(0))); + zz = 0 + (((tickAnim - 0) / 80) * (-0.19817-(0))); + } + else if (tickAnim >= 80 && tickAnim < 145) { + xx = -1.50301 + (((tickAnim - 80) / 65) * (-1.5-(-1.50301))); + yy = 1.73875 + (((tickAnim - 80) / 65) * (0-(1.73875))); + zz = -0.19817 + (((tickAnim - 80) / 65) * (0-(-0.19817))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = -1.5 + (((tickAnim - 145) / 35) * (0-(-1.5))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(xx), tail.rotateAngleY + (float) Math.toRadians(yy), tail.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 80) { + xx = 0 + (((tickAnim - 0) / 80) * (-3.55007-(0))); + yy = 0 + (((tickAnim - 0) / 80) * (6.18108-(0))); + zz = 0 + (((tickAnim - 0) / 80) * (-0.92741-(0))); + } + else if (tickAnim >= 80 && tickAnim < 145) { + xx = -3.55007 + (((tickAnim - 80) / 65) * (-3.5-(-3.55007))); + yy = 6.18108 + (((tickAnim - 80) / 65) * (0-(6.18108))); + zz = -0.92741 + (((tickAnim - 80) / 65) * (0-(-0.92741))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = -3.5 + (((tickAnim - 145) / 35) * (0-(-3.5))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(xx), tail2.rotateAngleY + (float) Math.toRadians(yy), tail2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 80) { + xx = 0 + (((tickAnim - 0) / 80) * (4.22902-(0))); + yy = 0 + (((tickAnim - 0) / 80) * (6.4895-(0))); + zz = 0 + (((tickAnim - 0) / 80) * (-0.37009-(0))); + } + else if (tickAnim >= 80 && tickAnim < 145) { + xx = 4.22902 + (((tickAnim - 80) / 65) * (4.25-(4.22902))); + yy = 6.4895 + (((tickAnim - 80) / 65) * (0-(6.4895))); + zz = -0.37009 + (((tickAnim - 80) / 65) * (0-(-0.37009))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 4.25 + (((tickAnim - 145) / 35) * (0-(4.25))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(xx), tail3.rotateAngleY + (float) Math.toRadians(yy), tail3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 80) { + xx = 0 + (((tickAnim - 0) / 80) * (7.01195-(0))); + yy = 0 + (((tickAnim - 0) / 80) * (6.24618-(0))); + zz = 0 + (((tickAnim - 0) / 80) * (0.21899-(0))); + } + else if (tickAnim >= 80 && tickAnim < 96) { + xx = 7.01195 + (((tickAnim - 80) / 16) * (7.03635-(7.01195))); + yy = 6.24618 + (((tickAnim - 80) / 16) * (10.38858-(6.24618))); + zz = 0.21899 + (((tickAnim - 80) / 16) * (0.3675-(0.21899))); + } + else if (tickAnim >= 96 && tickAnim < 145) { + xx = 7.03635 + (((tickAnim - 96) / 49) * (7.01964-(7.03635))); + yy = 10.38858 + (((tickAnim - 96) / 49) * (7.99509-(10.38858))); + zz = 0.3675 + (((tickAnim - 96) / 49) * (0.28102-(0.3675))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 7.01964 + (((tickAnim - 145) / 35) * (0-(7.01964))); + yy = 7.99509 + (((tickAnim - 145) / 35) * (0-(7.99509))); + zz = 0.28102 + (((tickAnim - 145) / 35) * (0-(0.28102))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(xx), tail4.rotateAngleY + (float) Math.toRadians(yy), tail4.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (6.75-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 80) { + xx = 6.75 + (((tickAnim - 40) / 40) * (6.81291-(6.75))); + yy = 0 + (((tickAnim - 40) / 40) * (5.87383-(0))); + zz = 0 + (((tickAnim - 40) / 40) * (1.22615-(0))); + } + else if (tickAnim >= 80 && tickAnim < 107) { + xx = 6.81291 + (((tickAnim - 80) / 27) * (7.38059-(6.81291))); + yy = 5.87383 + (((tickAnim - 80) / 27) * (17.56197-(5.87383))); + zz = 1.22615 + (((tickAnim - 80) / 27) * (3.79298-(1.22615))); + } + else if (tickAnim >= 107 && tickAnim < 145) { + xx = 7.38059 + (((tickAnim - 107) / 38) * (6.82971-(7.38059))); + yy = 17.56197 + (((tickAnim - 107) / 38) * (6.60792-(17.56197))); + zz = 3.79298 + (((tickAnim - 107) / 38) * (1.38071-(3.79298))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 6.82971 + (((tickAnim - 145) / 35) * (0-(6.82971))); + yy = 6.60792 + (((tickAnim - 145) / 35) * (0-(6.60792))); + zz = 1.38071 + (((tickAnim - 145) / 35) * (0-(1.38071))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail5, tail5.rotateAngleX + (float) Math.toRadians(xx), tail5.rotateAngleY + (float) Math.toRadians(yy), tail5.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 80) { + xx = 0 + (((tickAnim - 0) / 80) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 80) * (-14.25-(0))); + zz = 0 + (((tickAnim - 0) / 80) * (0-(0))); + } + else if (tickAnim >= 80 && tickAnim < 96) { + xx = 0 + (((tickAnim - 80) / 16) * (0-(0))); + yy = -14.25 + (((tickAnim - 80) / 16) * (15.75-(-14.25))); + zz = 0 + (((tickAnim - 80) / 16) * (0-(0))); + } + else if (tickAnim >= 96 && tickAnim < 145) { + xx = 0 + (((tickAnim - 96) / 49) * (0-(0))); + yy = 15.75 + (((tickAnim - 96) / 49) * (15.75-(15.75))); + zz = 0 + (((tickAnim - 96) / 49) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 0 + (((tickAnim - 145) / 35) * (0-(0))); + yy = 15.75 + (((tickAnim - 145) / 35) * (0-(15.75))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail6, tail6.rotateAngleX + (float) Math.toRadians(xx), tail6.rotateAngleY + (float) Math.toRadians(yy), tail6.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (1.5-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = 1.5 + (((tickAnim - 40) / 105) * (1.5-(1.5))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 1.5 + (((tickAnim - 145) / 35) * (0-(1.5))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(xx), body.rotateAngleY + (float) Math.toRadians(yy), body.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (-3.25-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = -3.25 + (((tickAnim - 40) / 105) * (-3.25-(-3.25))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = -3.25 + (((tickAnim - 145) / 35) * (0-(-3.25))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(xx), body2.rotateAngleY + (float) Math.toRadians(yy), body2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (2.75-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = 2.75 + (((tickAnim - 40) / 105) * (2.75-(2.75))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 2.75 + (((tickAnim - 145) / 35) * (0-(2.75))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body3, body3.rotateAngleX + (float) Math.toRadians(xx), body3.rotateAngleY + (float) Math.toRadians(yy), body3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (-23.25-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = -23.25 + (((tickAnim - 40) / 105) * (-23.25-(-23.25))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 165) { + xx = -23.25 + (((tickAnim - 145) / 20) * (20.04-(-23.25))); + yy = 0 + (((tickAnim - 145) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 20) * (0-(0))); + } + else if (tickAnim >= 165 && tickAnim < 180) { + xx = 20.04 + (((tickAnim - 165) / 15) * (0-(20.04))); + yy = 0 + (((tickAnim - 165) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 165) / 15) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm, leftArm.rotateAngleX + (float) Math.toRadians(xx), leftArm.rotateAngleY + (float) Math.toRadians(yy), leftArm.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-28.12-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 40) { + xx = -28.12 + (((tickAnim - 20) / 20) * (15.25-(-28.12))); + yy = 0 + (((tickAnim - 20) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 20) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = 15.25 + (((tickAnim - 40) / 105) * (15.25-(15.25))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 165) { + xx = 15.25 + (((tickAnim - 145) / 20) * (-38.21-(15.25))); + yy = 0 + (((tickAnim - 145) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 20) * (0-(0))); + } + else if (tickAnim >= 165 && tickAnim < 180) { + xx = -38.21 + (((tickAnim - 165) / 15) * (0-(-38.21))); + yy = 0 + (((tickAnim - 165) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 165) / 15) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm2, leftArm2.rotateAngleX + (float) Math.toRadians(xx), leftArm2.rotateAngleY + (float) Math.toRadians(yy), leftArm2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (91-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 40) { + xx = 91 + (((tickAnim - 20) / 20) * (7.75-(91))); + yy = 0 + (((tickAnim - 20) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 20) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = 7.75 + (((tickAnim - 40) / 105) * (7.75-(7.75))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 165) { + xx = 7.75 + (((tickAnim - 145) / 20) * (92.32-(7.75))); + yy = 0 + (((tickAnim - 145) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 20) * (0-(0))); + } + else if (tickAnim >= 165 && tickAnim < 180) { + xx = 92.32 + (((tickAnim - 165) / 15) * (0-(92.32))); + yy = 0 + (((tickAnim - 165) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 165) / 15) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm3, leftArm3.rotateAngleX + (float) Math.toRadians(xx), leftArm3.rotateAngleY + (float) Math.toRadians(yy), leftArm3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (-0.15-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = 0 + (((tickAnim - 40) / 105) * (0-(0))); + yy = -0.15 + (((tickAnim - 40) / 105) * (-0.15-(-0.15))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 0 + (((tickAnim - 145) / 35) * (0-(0))); + yy = -0.15 + (((tickAnim - 145) / 35) * (0-(-0.15))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftArm3.rotationPointX = this.leftArm3.rotationPointX + (float)(xx); + this.leftArm3.rotationPointY = this.leftArm3.rotationPointY - (float)(yy); + this.leftArm3.rotationPointZ = this.leftArm3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (1.75-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = 1.75 + (((tickAnim - 40) / 105) * (1.75-(1.75))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 1.75 + (((tickAnim - 145) / 35) * (0-(1.75))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm, rightArm.rotateAngleX + (float) Math.toRadians(xx), rightArm.rotateAngleY + (float) Math.toRadians(yy), rightArm.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (16.75-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = 16.75 + (((tickAnim - 40) / 105) * (16.75-(16.75))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 16.75 + (((tickAnim - 145) / 35) * (0-(16.75))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm2, rightArm2.rotateAngleX + (float) Math.toRadians(xx), rightArm2.rotateAngleY + (float) Math.toRadians(yy), rightArm2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (-0.075-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = 0 + (((tickAnim - 40) / 105) * (0-(0))); + yy = -0.075 + (((tickAnim - 40) / 105) * (-0.075-(-0.075))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 0 + (((tickAnim - 145) / 35) * (0-(0))); + yy = -0.075 + (((tickAnim - 145) / 35) * (0-(-0.075))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightArm2.rotationPointX = this.rightArm2.rotationPointX + (float)(xx); + this.rightArm2.rotationPointY = this.rightArm2.rotationPointY - (float)(yy); + this.rightArm2.rotationPointZ = this.rightArm2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (-18-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = -18 + (((tickAnim - 40) / 105) * (-18-(-18))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = -18 + (((tickAnim - 145) / 35) * (0-(-18))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm3, rightArm3.rotateAngleX + (float) Math.toRadians(xx), rightArm3.rotateAngleY + (float) Math.toRadians(yy), rightArm3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (-0.35-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = 0 + (((tickAnim - 40) / 105) * (0-(0))); + yy = -0.35 + (((tickAnim - 40) / 105) * (-0.35-(-0.35))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 0 + (((tickAnim - 145) / 35) * (0-(0))); + yy = -0.35 + (((tickAnim - 145) / 35) * (0-(-0.35))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightArm3.rotationPointX = this.rightArm3.rotationPointX + (float)(xx); + this.rightArm3.rotationPointY = this.rightArm3.rotationPointY - (float)(yy); + this.rightArm3.rotationPointZ = this.rightArm3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (-5.25-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 60) { + xx = -5.25 + (((tickAnim - 40) / 20) * (-5.25-(-5.25))); + yy = 0 + (((tickAnim - 40) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 20) * (0-(0))); + } + else if (tickAnim >= 60 && tickAnim < 80) { + xx = -5.25 + (((tickAnim - 60) / 20) * (-4.5-(-5.25))); + yy = 0 + (((tickAnim - 60) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 60) / 20) * (0-(0))); + } + else if (tickAnim >= 80 && tickAnim < 105) { + xx = -4.5 + (((tickAnim - 80) / 25) * (-4.24686-(-4.5))); + yy = 0 + (((tickAnim - 80) / 25) * (-9.63994-(0))); + zz = 0 + (((tickAnim - 80) / 25) * (-0.3632-(0))); + } + else if (tickAnim >= 105 && tickAnim < 128) { + xx = -4.24686 + (((tickAnim - 105) / 23) * (-4.24686-(-4.24686))); + yy = -9.63994 + (((tickAnim - 105) / 23) * (-9.63994-(-9.63994))); + zz = -0.3632 + (((tickAnim - 105) / 23) * (-0.3632-(-0.3632))); + } + else if (tickAnim >= 128 && tickAnim < 145) { + xx = -4.24686 + (((tickAnim - 128) / 17) * (-6.99686-(-4.24686))); + yy = -9.63994 + (((tickAnim - 128) / 17) * (-9.63994-(-9.63994))); + zz = -0.3632 + (((tickAnim - 128) / 17) * (-0.3632-(-0.3632))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = -6.99686 + (((tickAnim - 145) / 35) * (0-(-6.99686))); + yy = -9.63994 + (((tickAnim - 145) / 35) * (0-(-9.63994))); + zz = -0.3632 + (((tickAnim - 145) / 35) * (0-(-0.3632))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + this.neck.rotationPointX = this.neck.rotationPointX + (float)(0); + this.neck.rotationPointY = this.neck.rotationPointY - (float)(0); + this.neck.rotationPointZ = this.neck.rotationPointZ + (float)(0); + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (-5-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 45) { + xx = -5 + (((tickAnim - 40) / 5) * (-4.25-(-5))); + yy = 0 + (((tickAnim - 40) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 5) * (0-(0))); + } + else if (tickAnim >= 45 && tickAnim < 50) { + xx = -4.25 + (((tickAnim - 45) / 5) * (-5-(-4.25))); + yy = 0 + (((tickAnim - 45) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 45) / 5) * (0-(0))); + } + else if (tickAnim >= 50 && tickAnim < 55) { + xx = -5 + (((tickAnim - 50) / 5) * (-4.25-(-5))); + yy = 0 + (((tickAnim - 50) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 50) / 5) * (0-(0))); + } + else if (tickAnim >= 55 && tickAnim < 60) { + xx = -4.25 + (((tickAnim - 55) / 5) * (-5-(-4.25))); + yy = 0 + (((tickAnim - 55) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 55) / 5) * (0-(0))); + } + else if (tickAnim >= 60 && tickAnim < 80) { + xx = -5 + (((tickAnim - 60) / 20) * (-6-(-5))); + yy = 0 + (((tickAnim - 60) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 60) / 20) * (0-(0))); + } + else if (tickAnim >= 80 && tickAnim < 93) { + xx = -6 + (((tickAnim - 80) / 13) * (-8.5781+Math.sin((Math.PI/180)*(((double)tickAnim/20)*100))*5-(-6))); + yy = 0 + (((tickAnim - 80) / 13) * (-7.0642-(0))); + zz = 0 + (((tickAnim - 80) / 13) * (-0.18835-(0))); + } + else if (tickAnim >= 93 && tickAnim < 105) { + xx = -8.5781+Math.sin((Math.PI/180)*(((double)tickAnim/20)*100))*5 + (((tickAnim - 93) / 12) * (-5.959-(-8.5781+Math.sin((Math.PI/180)*(((double)tickAnim/20)*100))*5))); + yy = -7.0642 + (((tickAnim - 93) / 12) * (-13.24538-(-7.0642))); + zz = -0.18835 + (((tickAnim - 93) / 12) * (-0.35316-(-0.18835))); + } + else if (tickAnim >= 105 && tickAnim < 110) { + xx = -5.959 + (((tickAnim - 105) / 5) * (-5.459-(-5.959))); + yy = -13.24538 + (((tickAnim - 105) / 5) * (-13.24538-(-13.24538))); + zz = -0.35316 + (((tickAnim - 105) / 5) * (-0.35316-(-0.35316))); + } + else if (tickAnim >= 110 && tickAnim < 115) { + xx = -5.459 + (((tickAnim - 110) / 5) * (-5.959-(-5.459))); + yy = -13.24538 + (((tickAnim - 110) / 5) * (-13.24538-(-13.24538))); + zz = -0.35316 + (((tickAnim - 110) / 5) * (-0.35316-(-0.35316))); + } + else if (tickAnim >= 115 && tickAnim < 120) { + xx = -5.959 + (((tickAnim - 115) / 5) * (-5.459-(-5.959))); + yy = -13.24538 + (((tickAnim - 115) / 5) * (-13.24538-(-13.24538))); + zz = -0.35316 + (((tickAnim - 115) / 5) * (-0.35316-(-0.35316))); + } + else if (tickAnim >= 120 && tickAnim < 125) { + xx = -5.459 + (((tickAnim - 120) / 5) * (-5.959-(-5.459))); + yy = -13.24538 + (((tickAnim - 120) / 5) * (-13.24538-(-13.24538))); + zz = -0.35316 + (((tickAnim - 120) / 5) * (-0.35316-(-0.35316))); + } + else if (tickAnim >= 125 && tickAnim < 130) { + xx = -5.959 + (((tickAnim - 125) / 5) * (-5.959-(-5.959))); + yy = -13.24538 + (((tickAnim - 125) / 5) * (-13.24538-(-13.24538))); + zz = -0.35316 + (((tickAnim - 125) / 5) * (-0.35316-(-0.35316))); + } + else if (tickAnim >= 130 && tickAnim < 145) { + xx = -5.959 + (((tickAnim - 130) / 15) * (-7.959-(-5.959))); + yy = -13.24538 + (((tickAnim - 130) / 15) * (-13.24538-(-13.24538))); + zz = -0.35316 + (((tickAnim - 130) / 15) * (-0.35316-(-0.35316))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = -7.959 + (((tickAnim - 145) / 35) * (0-(-7.959))); + yy = -13.24538 + (((tickAnim - 145) / 35) * (0-(-13.24538))); + zz = -0.35316 + (((tickAnim - 145) / 35) * (0-(-0.35316))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck2, neck2.rotateAngleX + (float) Math.toRadians(xx), neck2.rotateAngleY + (float) Math.toRadians(yy), neck2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (11.5-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 45) { + xx = 11.5 + (((tickAnim - 40) / 5) * (9.5-(11.5))); + yy = 0 + (((tickAnim - 40) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 5) * (0-(0))); + } + else if (tickAnim >= 45 && tickAnim < 50) { + xx = 9.5 + (((tickAnim - 45) / 5) * (11.5-(9.5))); + yy = 0 + (((tickAnim - 45) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 45) / 5) * (0-(0))); + } + else if (tickAnim >= 50 && tickAnim < 55) { + xx = 11.5 + (((tickAnim - 50) / 5) * (9.5-(11.5))); + yy = 0 + (((tickAnim - 50) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 50) / 5) * (0-(0))); + } + else if (tickAnim >= 55 && tickAnim < 60) { + xx = 9.5 + (((tickAnim - 55) / 5) * (11.5-(9.5))); + yy = 0 + (((tickAnim - 55) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 55) / 5) * (0-(0))); + } + else if (tickAnim >= 60 && tickAnim < 80) { + xx = 11.5 + (((tickAnim - 60) / 20) * (10.5-(11.5))); + yy = 0 + (((tickAnim - 60) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 60) / 20) * (0-(0))); + } + else if (tickAnim >= 80 && tickAnim < 93) { + xx = 10.5 + (((tickAnim - 80) / 13) * (4.5183+Math.sin((Math.PI/180)*(((double)tickAnim/20)*100-10))*10-(10.5))); + yy = 0 + (((tickAnim - 80) / 13) * (-3.37745-(0))); + zz = 0 + (((tickAnim - 80) / 13) * (-0.78302-(0))); + } + else if (tickAnim >= 93 && tickAnim < 110) { + xx = 4.5183+Math.sin((Math.PI/180)*(((double)tickAnim/20)*100-10))*10 + (((tickAnim - 93) / 17) * (8.83122-(4.5183+Math.sin((Math.PI/180)*(((double)tickAnim/20)*100-10))*10))); + yy = -3.37745 + (((tickAnim - 93) / 17) * (-6.33271-(-3.37745))); + zz = -0.78302 + (((tickAnim - 93) / 17) * (-1.46817-(-0.78302))); + } + else if (tickAnim >= 110 && tickAnim < 115) { + xx = 8.83122 + (((tickAnim - 110) / 5) * (10.58122-(8.83122))); + yy = -6.33271 + (((tickAnim - 110) / 5) * (-6.33271-(-6.33271))); + zz = -1.46817 + (((tickAnim - 110) / 5) * (-1.46817-(-1.46817))); + } + else if (tickAnim >= 115 && tickAnim < 120) { + xx = 10.58122 + (((tickAnim - 115) / 5) * (8.83122-(10.58122))); + yy = -6.33271 + (((tickAnim - 115) / 5) * (-6.33271-(-6.33271))); + zz = -1.46817 + (((tickAnim - 115) / 5) * (-1.46817-(-1.46817))); + } + else if (tickAnim >= 120 && tickAnim < 125) { + xx = 8.83122 + (((tickAnim - 120) / 5) * (10.58122-(8.83122))); + yy = -6.33271 + (((tickAnim - 120) / 5) * (-6.33271-(-6.33271))); + zz = -1.46817 + (((tickAnim - 120) / 5) * (-1.46817-(-1.46817))); + } + else if (tickAnim >= 125 && tickAnim < 130) { + xx = 10.58122 + (((tickAnim - 125) / 5) * (10.58122-(10.58122))); + yy = -6.33271 + (((tickAnim - 125) / 5) * (-6.33271-(-6.33271))); + zz = -1.46817 + (((tickAnim - 125) / 5) * (-1.46817-(-1.46817))); + } + else if (tickAnim >= 130 && tickAnim < 145) { + xx = 10.58122 + (((tickAnim - 130) / 15) * (16.08122-(10.58122))); + yy = -6.33271 + (((tickAnim - 130) / 15) * (-6.33271-(-6.33271))); + zz = -1.46817 + (((tickAnim - 130) / 15) * (-1.46817-(-1.46817))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 16.08122 + (((tickAnim - 145) / 35) * (0-(16.08122))); + yy = -6.33271 + (((tickAnim - 145) / 35) * (0-(-6.33271))); + zz = -1.46817 + (((tickAnim - 145) / 35) * (0-(-1.46817))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 145) { + xx = 0 + (((tickAnim - 0) / 145) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 145) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 145) * (-0.6-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 0 + (((tickAnim - 145) / 35) * (0-(0))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = -0.6 + (((tickAnim - 145) / 35) * (0-(-0.6))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.head.rotationPointX = this.head.rotationPointX + (float)(xx); + this.head.rotationPointY = this.head.rotationPointY - (float)(yy); + this.head.rotationPointZ = this.head.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 80 && tickAnim < 87) { + xx = 0 + (((tickAnim - 80) / 7) * (3.75-(0))); + yy = 0 + (((tickAnim - 80) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 80) / 7) * (0-(0))); + } + else if (tickAnim >= 87 && tickAnim < 93) { + xx = 3.75 + (((tickAnim - 87) / 6) * (0-(3.75))); + yy = 0 + (((tickAnim - 87) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 87) / 6) * (0-(0))); + } + else if (tickAnim >= 93 && tickAnim < 130) { + xx = 0 + (((tickAnim - 93) / 37) * (0-(0))); + yy = 0 + (((tickAnim - 93) / 37) * (0-(0))); + zz = 0 + (((tickAnim - 93) / 37) * (0-(0))); + } + else if (tickAnim >= 130 && tickAnim < 135) { + xx = 0 + (((tickAnim - 130) / 5) * (3.75-(0))); + yy = 0 + (((tickAnim - 130) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 130) / 5) * (0-(0))); + } + else if (tickAnim >= 135 && tickAnim < 140) { + xx = 3.75 + (((tickAnim - 135) / 5) * (0-(3.75))); + yy = 0 + (((tickAnim - 135) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 135) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animRoar(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraNundasuchus entity = (EntityPrehistoricFloraNundasuchus) entitylivingbaseIn; + int animCycle = 32; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-4.24532-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0.36919-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (1.45387-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -4.24532 + (((tickAnim - 18) / 15) * (0-(-4.24532))); + yy = 0.36919 + (((tickAnim - 18) / 15) * (0-(0.36919))); + zz = 1.45387 + (((tickAnim - 18) / 15) * (0-(1.45387))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + this.neck.rotationPointX = this.neck.rotationPointX + (float)(0); + this.neck.rotationPointY = this.neck.rotationPointY - (float)(0); + this.neck.rotationPointZ = this.neck.rotationPointZ + (float)(0); + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-4.8768+Math.sin((Math.PI/180)*(((double)tickAnim/20)*130-20))*5-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (-0.05232-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (3.99966-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -4.8768+Math.sin((Math.PI/180)*(((double)tickAnim/20)*130-20))*5 + (((tickAnim - 18) / 15) * (0-(-4.8768+Math.sin((Math.PI/180)*(((double)tickAnim/20)*130-20))*5))); + yy = -0.05232 + (((tickAnim - 18) / 15) * (0-(-0.05232))); + zz = 3.99966 + (((tickAnim - 18) / 15) * (0-(3.99966))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck2, neck2.rotateAngleX + (float) Math.toRadians(xx), neck2.rotateAngleY + (float) Math.toRadians(yy), neck2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (0.25-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0.325-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 0.25 + (((tickAnim - 18) / 15) * (0-(0.25))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0.325 + (((tickAnim - 18) / 15) * (0-(0.325))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.neck2.rotationPointX = this.neck2.rotationPointX + (float)(xx); + this.neck2.rotationPointY = this.neck2.rotationPointY - (float)(yy); + this.neck2.rotationPointZ = this.neck2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (-9.11-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 18) { + xx = -9.11 + (((tickAnim - 8) / 10) * (5.775+Math.sin((Math.PI/180)*(((double)tickAnim/20)*130+50))*-15-(-9.11))); + yy = 0 + (((tickAnim - 8) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 10) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 25) { + xx = 5.775+Math.sin((Math.PI/180)*(((double)tickAnim/20)*130+50))*-15 + (((tickAnim - 18) / 7) * (9.38-(5.775+Math.sin((Math.PI/180)*(((double)tickAnim/20)*130+50))*-15))); + yy = 0 + (((tickAnim - 18) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 7) * (0-(0))); + } + else if (tickAnim >= 25 && tickAnim < 33) { + xx = 9.38 + (((tickAnim - 25) / 8) * (0-(9.38))); + yy = 0 + (((tickAnim - 25) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 25) / 8) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0.55-(0))); + } + else if (tickAnim >= 8 && tickAnim < 25) { + xx = 0 + (((tickAnim - 8) / 17) * (0-(0))); + yy = 0 + (((tickAnim - 8) / 17) * (0-(0))); + zz = 0.55 + (((tickAnim - 8) / 17) * (-0.53-(0.55))); + } + else if (tickAnim >= 25 && tickAnim < 33) { + xx = 0 + (((tickAnim - 25) / 8) * (0-(0))); + yy = 0 + (((tickAnim - 25) / 8) * (0-(0))); + zz = -0.53 + (((tickAnim - 25) / 8) * (0-(-0.53))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.head.rotationPointX = this.head.rotationPointX + (float)(xx); + this.head.rotationPointY = this.head.rotationPointY - (float)(yy); + this.head.rotationPointZ = this.head.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (17.5-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 17.5 + (((tickAnim - 18) / 15) * (0-(17.5))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + this.jaw.rotationPointX = this.jaw.rotationPointX + (float)(0); + this.jaw.rotationPointY = this.jaw.rotationPointY - (float)(0); + this.jaw.rotationPointZ = this.jaw.rotationPointZ + (float)(0); + + } + public void animRunning(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraNundasuchus entity = (EntityPrehistoricFloraNundasuchus) entitylivingbaseIn; + int animCycle = 12; + double tickAnim = (entity.ticksExisted + entity.getTickOffset()) - (int) (Math.floor((double) (entity.ticksExisted + entity.getTickOffset()) / (double) animCycle) * (double) animCycle) + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577+80))*10), main.rotateAngleY + (float) Math.toRadians(0), main.rotateAngleZ + (float) Math.toRadians(0)); + this.main.rotationPointX = this.main.rotationPointX + (float)(0); + this.main.rotationPointY = this.main.rotationPointY - (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577+50))*1.5); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577+150))*-1.5); + + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = -41.18187 + (((tickAnim - 0) / 7) * (49.75-(-41.18187))); + yy = -9.08316 + (((tickAnim - 0) / 7) * (0-(-9.08316))); + zz = 0.38498 + (((tickAnim - 0) / 7) * (0-(0.38498))); + } + else if (tickAnim >= 7 && tickAnim < 13) { + xx = 49.75 + (((tickAnim - 7) / 6) * (-41.18187-(49.75))); + yy = 0 + (((tickAnim - 7) / 6) * (-9.08316-(0))); + zz = 0 + (((tickAnim - 7) / 6) * (0.38498-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg, leftLeg.rotateAngleX + (float) Math.toRadians(xx), leftLeg.rotateAngleY + (float) Math.toRadians(yy), leftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 24 + (((tickAnim - 0) / 2) * (-22.44-(24))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 7) { + xx = -22.44 + (((tickAnim - 2) / 5) * (0-(-22.44))); + yy = 0 + (((tickAnim - 2) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 5) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 0 + (((tickAnim - 7) / 1) * (32.39-(0))); + yy = 0 + (((tickAnim - 7) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 1) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 32.39 + (((tickAnim - 8) / 2) * (32.39-(32.39))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 11) { + xx = 32.39 + (((tickAnim - 10) / 1) * (32.39-(32.39))); + yy = 0 + (((tickAnim - 10) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 1) * (0-(0))); + } + else if (tickAnim >= 11 && tickAnim < 13) { + xx = 32.39 + (((tickAnim - 11) / 2) * (24-(32.39))); + yy = 0 + (((tickAnim - 11) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 11) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg2, leftLeg2.rotateAngleX + (float) Math.toRadians(xx), leftLeg2.rotateAngleY + (float) Math.toRadians(yy), leftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 0 + (((tickAnim - 0) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 13) { + xx = 0 + (((tickAnim - 7) / 6) * (0-(0))); + yy = 0 + (((tickAnim - 7) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 6) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftLeg2.rotationPointX = this.leftLeg2.rotationPointX + (float)(xx); + this.leftLeg2.rotationPointY = this.leftLeg2.rotationPointY - (float)(yy); + this.leftLeg2.rotationPointZ = this.leftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0.75 + (((tickAnim - 0) / 2) * (15.38-(0.75))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 7) { + xx = 15.38 + (((tickAnim - 2) / 5) * (16.25-(15.38))); + yy = 0 + (((tickAnim - 2) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 5) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = 16.25 + (((tickAnim - 7) / 3) * (-39.36-(16.25))); + yy = 0 + (((tickAnim - 7) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 3) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = -39.36 + (((tickAnim - 10) / 3) * (0.75-(-39.36))); + yy = 0 + (((tickAnim - 10) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg3, leftLeg3.rotateAngleX + (float) Math.toRadians(xx), leftLeg3.rotateAngleY + (float) Math.toRadians(yy), leftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 2) * (-0.4-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 3) { + xx = 0 + (((tickAnim - 2) / 1) * (0-(0))); + yy = -0.4 + (((tickAnim - 2) / 1) * (-0.305-(-0.4))); + zz = 0 + (((tickAnim - 2) / 1) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = 0 + (((tickAnim - 3) / 4) * (0-(0))); + yy = -0.305 + (((tickAnim - 3) / 4) * (0-(-0.305))); + zz = 0 + (((tickAnim - 3) / 4) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 13) { + xx = 0 + (((tickAnim - 7) / 6) * (0-(0))); + yy = 0 + (((tickAnim - 7) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 6) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftLeg3.rotationPointX = this.leftLeg3.rotationPointX + (float)(xx); + this.leftLeg3.rotationPointY = this.leftLeg3.rotationPointY - (float)(yy); + this.leftLeg3.rotationPointZ = this.leftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 18.75 + (((tickAnim - 0) / 2) * (19-(18.75))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 3) { + xx = 19 + (((tickAnim - 2) / 1) * (-4.42-(19))); + yy = 0 + (((tickAnim - 2) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 1) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = -4.42 + (((tickAnim - 3) / 4) * (37.29-(-4.42))); + yy = 0 + (((tickAnim - 3) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 4) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 37.29 + (((tickAnim - 7) / 1) * (82.67-(37.29))); + yy = 0 + (((tickAnim - 7) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 1) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 82.67 + (((tickAnim - 8) / 2) * (89.04-(82.67))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = 89.04 + (((tickAnim - 10) / 3) * (18.75-(89.04))); + yy = 0 + (((tickAnim - 10) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg4, leftLeg4.rotateAngleX + (float) Math.toRadians(xx), leftLeg4.rotateAngleY + (float) Math.toRadians(yy), leftLeg4.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 2) * (-0.35-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 3) { + xx = 0 + (((tickAnim - 2) / 1) * (0-(0))); + yy = -0.35 + (((tickAnim - 2) / 1) * (0.505-(-0.35))); + zz = 0 + (((tickAnim - 2) / 1) * (-0.2-(0))); + } + else if (tickAnim >= 3 && tickAnim < 5) { + xx = 0 + (((tickAnim - 3) / 2) * (0-(0))); + yy = 0.505 + (((tickAnim - 3) / 2) * (1.025-(0.505))); + zz = -0.2 + (((tickAnim - 3) / 2) * (-0.1-(-0.2))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = 0 + (((tickAnim - 5) / 5) * (0-(0))); + yy = 1.025 + (((tickAnim - 5) / 5) * (0.275-(1.025))); + zz = -0.1 + (((tickAnim - 5) / 5) * (-0.8-(-0.1))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = 0 + (((tickAnim - 10) / 3) * (0-(0))); + yy = 0.275 + (((tickAnim - 10) / 3) * (0-(0.275))); + zz = -0.8 + (((tickAnim - 10) / 3) * (0-(-0.8))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftLeg4.rotationPointX = this.leftLeg4.rotationPointX + (float)(xx); + this.leftLeg4.rotationPointY = this.leftLeg4.rotationPointY - (float)(yy); + this.leftLeg4.rotationPointZ = this.leftLeg4.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = -41.18187 + (((tickAnim - 0) / 7) * (49.75-(-41.18187))); + yy = 9.08316 + (((tickAnim - 0) / 7) * (0-(9.08316))); + zz = -0.38498 + (((tickAnim - 0) / 7) * (0-(-0.38498))); + } + else if (tickAnim >= 7 && tickAnim < 13) { + xx = 49.75 + (((tickAnim - 7) / 6) * (-41.18187-(49.75))); + yy = 0 + (((tickAnim - 7) / 6) * (9.08316-(0))); + zz = 0 + (((tickAnim - 7) / 6) * (-0.38498-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg, rightLeg.rotateAngleX + (float) Math.toRadians(xx), rightLeg.rotateAngleY + (float) Math.toRadians(yy), rightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 24 + (((tickAnim - 0) / 2) * (-22.44-(24))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 7) { + xx = -22.44 + (((tickAnim - 2) / 5) * (0-(-22.44))); + yy = 0 + (((tickAnim - 2) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 5) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 0 + (((tickAnim - 7) / 1) * (32.39-(0))); + yy = 0 + (((tickAnim - 7) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 1) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 32.39 + (((tickAnim - 8) / 2) * (32.39-(32.39))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 11) { + xx = 32.39 + (((tickAnim - 10) / 1) * (32.39-(32.39))); + yy = 0 + (((tickAnim - 10) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 1) * (0-(0))); + } + else if (tickAnim >= 11 && tickAnim < 13) { + xx = 32.39 + (((tickAnim - 11) / 2) * (24-(32.39))); + yy = 0 + (((tickAnim - 11) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 11) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg2, rightLeg2.rotateAngleX + (float) Math.toRadians(xx), rightLeg2.rotateAngleY + (float) Math.toRadians(yy), rightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 0 + (((tickAnim - 0) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 13) { + xx = 0 + (((tickAnim - 7) / 6) * (0-(0))); + yy = 0 + (((tickAnim - 7) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 6) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightLeg2.rotationPointX = this.rightLeg2.rotationPointX + (float)(xx); + this.rightLeg2.rotationPointY = this.rightLeg2.rotationPointY - (float)(yy); + this.rightLeg2.rotationPointZ = this.rightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0.75 + (((tickAnim - 0) / 2) * (15.38-(0.75))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 7) { + xx = 15.38 + (((tickAnim - 2) / 5) * (16.25-(15.38))); + yy = 0 + (((tickAnim - 2) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 5) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = 16.25 + (((tickAnim - 7) / 3) * (-39.36-(16.25))); + yy = 0 + (((tickAnim - 7) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 3) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = -39.36 + (((tickAnim - 10) / 3) * (0.75-(-39.36))); + yy = 0 + (((tickAnim - 10) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg3, rightLeg3.rotateAngleX + (float) Math.toRadians(xx), rightLeg3.rotateAngleY + (float) Math.toRadians(yy), rightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 2) * (-0.4-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 3) { + xx = 0 + (((tickAnim - 2) / 1) * (0-(0))); + yy = -0.4 + (((tickAnim - 2) / 1) * (-0.305-(-0.4))); + zz = 0 + (((tickAnim - 2) / 1) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = 0 + (((tickAnim - 3) / 4) * (0-(0))); + yy = -0.305 + (((tickAnim - 3) / 4) * (0-(-0.305))); + zz = 0 + (((tickAnim - 3) / 4) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 13) { + xx = 0 + (((tickAnim - 7) / 6) * (0-(0))); + yy = 0 + (((tickAnim - 7) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 6) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightLeg3.rotationPointX = this.rightLeg3.rotationPointX + (float)(xx); + this.rightLeg3.rotationPointY = this.rightLeg3.rotationPointY - (float)(yy); + this.rightLeg3.rotationPointZ = this.rightLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 18.75 + (((tickAnim - 0) / 2) * (19-(18.75))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 3) { + xx = 19 + (((tickAnim - 2) / 1) * (-4.42-(19))); + yy = 0 + (((tickAnim - 2) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 1) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = -4.42 + (((tickAnim - 3) / 4) * (37.29-(-4.42))); + yy = 0 + (((tickAnim - 3) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 4) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 37.29 + (((tickAnim - 7) / 1) * (82.67-(37.29))); + yy = 0 + (((tickAnim - 7) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 1) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 82.67 + (((tickAnim - 8) / 2) * (89.04-(82.67))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = 89.04 + (((tickAnim - 10) / 3) * (18.75-(89.04))); + yy = 0 + (((tickAnim - 10) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg4, rightLeg4.rotateAngleX + (float) Math.toRadians(xx), rightLeg4.rotateAngleY + (float) Math.toRadians(yy), rightLeg4.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 2) * (-0.35-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 3) { + xx = 0 + (((tickAnim - 2) / 1) * (0-(0))); + yy = -0.35 + (((tickAnim - 2) / 1) * (0.505-(-0.35))); + zz = 0 + (((tickAnim - 2) / 1) * (-0.2-(0))); + } + else if (tickAnim >= 3 && tickAnim < 5) { + xx = 0 + (((tickAnim - 3) / 2) * (0-(0))); + yy = 0.505 + (((tickAnim - 3) / 2) * (1.025-(0.505))); + zz = -0.2 + (((tickAnim - 3) / 2) * (-0.1-(-0.2))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = 0 + (((tickAnim - 5) / 5) * (0-(0))); + yy = 1.025 + (((tickAnim - 5) / 5) * (0.275-(1.025))); + zz = -0.1 + (((tickAnim - 5) / 5) * (-0.8-(-0.1))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = 0 + (((tickAnim - 10) / 3) * (0-(0))); + yy = 0.275 + (((tickAnim - 10) / 3) * (0-(0.275))); + zz = -0.8 + (((tickAnim - 10) / 3) * (0-(-0.8))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightLeg4.rotationPointX = this.rightLeg4.rotationPointX + (float)(xx); + this.rightLeg4.rotationPointY = this.rightLeg4.rotationPointY - (float)(yy); + this.rightLeg4.rotationPointZ = this.rightLeg4.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577+20))*-4), tail.rotateAngleY + (float) Math.toRadians(0), tail.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577))*-8), tail2.rotateAngleY + (float) Math.toRadians(0), tail2.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577))*1), tail3.rotateAngleY + (float) Math.toRadians(0), tail3.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577-150))*-15), tail4.rotateAngleY + (float) Math.toRadians(0), tail4.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail5, tail5.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577-200))*-18), tail5.rotateAngleY + (float) Math.toRadians(0), tail5.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail6, tail6.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577-250))*-22), tail6.rotateAngleY + (float) Math.toRadians(0), tail6.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577))*-5), body.rotateAngleY + (float) Math.toRadians(0), body.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(0), body2.rotateAngleY + (float) Math.toRadians(0), body2.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(body3, body3.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577-220))*-10), body3.rotateAngleY + (float) Math.toRadians(0), body3.rotateAngleZ + (float) Math.toRadians(0)); + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 41.69874 + (((tickAnim - 0) / 3) * (-1.44743-(41.69874))); + yy = 3.69123 + (((tickAnim - 0) / 3) * (7.83213-(3.69123))); + zz = -1.54924 + (((tickAnim - 0) / 3) * (-17.52603-(-1.54924))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = -1.44743 + (((tickAnim - 3) / 4) * (-34-(-1.44743))); + yy = 7.83213 + (((tickAnim - 3) / 4) * (0-(7.83213))); + zz = -17.52603 + (((tickAnim - 3) / 4) * (0-(-17.52603))); + } + else if (tickAnim >= 7 && tickAnim < 13) { + xx = -34 + (((tickAnim - 7) / 6) * (41.69874-(-34))); + yy = 0 + (((tickAnim - 7) / 6) * (3.69123-(0))); + zz = 0 + (((tickAnim - 7) / 6) * (-1.54924-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm, leftArm.rotateAngleX + (float) Math.toRadians(xx), leftArm.rotateAngleY + (float) Math.toRadians(yy), leftArm.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 21.74771 + (((tickAnim - 0) / 3) * (-39.25114-(21.74771))); + yy = 4.67656 + (((tickAnim - 0) / 3) * (2.33828-(4.67656))); + zz = 12.14324 + (((tickAnim - 0) / 3) * (6.07162-(12.14324))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = -39.25114 + (((tickAnim - 3) / 4) * (10.25-(-39.25114))); + yy = 2.33828 + (((tickAnim - 3) / 4) * (0-(2.33828))); + zz = 6.07162 + (((tickAnim - 3) / 4) * (0-(6.07162))); + } + else if (tickAnim >= 7 && tickAnim < 9) { + xx = 10.25 + (((tickAnim - 7) / 2) * (6.75-(10.25))); + yy = 0 + (((tickAnim - 7) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 2) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 13) { + xx = 6.75 + (((tickAnim - 9) / 4) * (21.74771-(6.75))); + yy = 0 + (((tickAnim - 9) / 4) * (4.67656-(0))); + zz = 0 + (((tickAnim - 9) / 4) * (12.14324-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm2, leftArm2.rotateAngleX + (float) Math.toRadians(xx), leftArm2.rotateAngleY + (float) Math.toRadians(yy), leftArm2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 1) { + xx = 85.25 + (((tickAnim - 0) / 1) * (114.63-(85.25))); + yy = 0 + (((tickAnim - 0) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 1) * (0-(0))); + } + else if (tickAnim >= 1 && tickAnim < 3) { + xx = 114.63 + (((tickAnim - 1) / 2) * (101.75-(114.63))); + yy = 0 + (((tickAnim - 1) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 1) / 2) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = 101.75 + (((tickAnim - 3) / 4) * (67.25-(101.75))); + yy = 0 + (((tickAnim - 3) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 4) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 67.25 + (((tickAnim - 7) / 1) * (9.33-(67.25))); + yy = 0 + (((tickAnim - 7) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 1) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 9) { + xx = 9.33 + (((tickAnim - 8) / 1) * (-2-(9.33))); + yy = 0 + (((tickAnim - 8) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 1) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 10) { + xx = -2 + (((tickAnim - 9) / 1) * (-11.44-(-2))); + yy = 0 + (((tickAnim - 9) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 9) / 1) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = -11.44 + (((tickAnim - 10) / 3) * (85.25-(-11.44))); + yy = 0 + (((tickAnim - 10) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm3, leftArm3.rotateAngleX + (float) Math.toRadians(xx), leftArm3.rotateAngleY + (float) Math.toRadians(yy), leftArm3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 7 && tickAnim < 8) { + xx = 0 + (((tickAnim - 7) / 1) * (0-(0))); + yy = 0 + (((tickAnim - 7) / 1) * (0.725-(0))); + zz = 0 + (((tickAnim - 7) / 1) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 9) { + xx = 0 + (((tickAnim - 8) / 1) * (0-(0))); + yy = 0.725 + (((tickAnim - 8) / 1) * (1.575-(0.725))); + zz = 0 + (((tickAnim - 8) / 1) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 10) { + xx = 0 + (((tickAnim - 9) / 1) * (0-(0))); + yy = 1.575 + (((tickAnim - 9) / 1) * (1.495-(1.575))); + zz = 0 + (((tickAnim - 9) / 1) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 11) { + xx = 0 + (((tickAnim - 10) / 1) * (0-(0))); + yy = 1.495 + (((tickAnim - 10) / 1) * (1.755-(1.495))); + zz = 0 + (((tickAnim - 10) / 1) * (0-(0))); + } + else if (tickAnim >= 11 && tickAnim < 13) { + xx = 0 + (((tickAnim - 11) / 2) * (0-(0))); + yy = 1.755 + (((tickAnim - 11) / 2) * (0-(1.755))); + zz = 0 + (((tickAnim - 11) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftArm3.rotationPointX = this.leftArm3.rotationPointX + (float)(xx); + this.leftArm3.rotationPointY = this.leftArm3.rotationPointY - (float)(yy); + this.leftArm3.rotationPointZ = this.leftArm3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 43.4332 + (((tickAnim - 0) / 3) * (-1.44743-(43.4332))); + yy = -4.39936 + (((tickAnim - 0) / 3) * (-7.83213-(-4.39936))); + zz = 1.7833 + (((tickAnim - 0) / 3) * (17.52603-(1.7833))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = -1.44743 + (((tickAnim - 3) / 4) * (-34-(-1.44743))); + yy = -7.83213 + (((tickAnim - 3) / 4) * (0-(-7.83213))); + zz = 17.52603 + (((tickAnim - 3) / 4) * (0-(17.52603))); + } + else if (tickAnim >= 7 && tickAnim < 13) { + xx = -34 + (((tickAnim - 7) / 6) * (43.4332-(-34))); + yy = 0 + (((tickAnim - 7) / 6) * (-4.39936-(0))); + zz = 0 + (((tickAnim - 7) / 6) * (1.7833-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm, rightArm.rotateAngleX + (float) Math.toRadians(xx), rightArm.rotateAngleY + (float) Math.toRadians(yy), rightArm.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 13.74771 + (((tickAnim - 0) / 3) * (-39.25114-(13.74771))); + yy = -4.67656 + (((tickAnim - 0) / 3) * (2.33828-(-4.67656))); + zz = -12.14324 + (((tickAnim - 0) / 3) * (6.07162-(-12.14324))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = -39.25114 + (((tickAnim - 3) / 4) * (10.25-(-39.25114))); + yy = 2.33828 + (((tickAnim - 3) / 4) * (0-(2.33828))); + zz = 6.07162 + (((tickAnim - 3) / 4) * (0-(6.07162))); + } + else if (tickAnim >= 7 && tickAnim < 9) { + xx = 10.25 + (((tickAnim - 7) / 2) * (6.75-(10.25))); + yy = 0 + (((tickAnim - 7) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 2) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 13) { + xx = 6.75 + (((tickAnim - 9) / 4) * (13.74771-(6.75))); + yy = 0 + (((tickAnim - 9) / 4) * (-4.67656-(0))); + zz = 0 + (((tickAnim - 9) / 4) * (-12.14324-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm2, rightArm2.rotateAngleX + (float) Math.toRadians(xx), rightArm2.rotateAngleY + (float) Math.toRadians(yy), rightArm2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 1) { + xx = 85.25 + (((tickAnim - 0) / 1) * (114.63-(85.25))); + yy = 0 + (((tickAnim - 0) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 1) * (0-(0))); + } + else if (tickAnim >= 1 && tickAnim < 3) { + xx = 114.63 + (((tickAnim - 1) / 2) * (101.75-(114.63))); + yy = 0 + (((tickAnim - 1) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 1) / 2) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = 101.75 + (((tickAnim - 3) / 4) * (67.25-(101.75))); + yy = 0 + (((tickAnim - 3) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 4) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 67.25 + (((tickAnim - 7) / 1) * (9.33-(67.25))); + yy = 0 + (((tickAnim - 7) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 1) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 9) { + xx = 9.33 + (((tickAnim - 8) / 1) * (-2-(9.33))); + yy = 0 + (((tickAnim - 8) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 1) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 10) { + xx = -2 + (((tickAnim - 9) / 1) * (-11.44-(-2))); + yy = 0 + (((tickAnim - 9) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 9) / 1) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = -11.44 + (((tickAnim - 10) / 3) * (85.25-(-11.44))); + yy = 0 + (((tickAnim - 10) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm3, rightArm3.rotateAngleX + (float) Math.toRadians(xx), rightArm3.rotateAngleY + (float) Math.toRadians(yy), rightArm3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 0 + (((tickAnim - 0) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 0 + (((tickAnim - 7) / 1) * (0-(0))); + yy = 0 + (((tickAnim - 7) / 1) * (0.725-(0))); + zz = 0 + (((tickAnim - 7) / 1) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 9) { + xx = 0 + (((tickAnim - 8) / 1) * (0-(0))); + yy = 0.725 + (((tickAnim - 8) / 1) * (1.575-(0.725))); + zz = 0 + (((tickAnim - 8) / 1) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 10) { + xx = 0 + (((tickAnim - 9) / 1) * (0-(0))); + yy = 1.575 + (((tickAnim - 9) / 1) * (1.495-(1.575))); + zz = 0 + (((tickAnim - 9) / 1) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 11) { + xx = 0 + (((tickAnim - 10) / 1) * (0-(0))); + yy = 1.495 + (((tickAnim - 10) / 1) * (1.755-(1.495))); + zz = 0 + (((tickAnim - 10) / 1) * (0-(0))); + } + else if (tickAnim >= 11 && tickAnim < 13) { + xx = 0 + (((tickAnim - 11) / 2) * (0-(0))); + yy = 1.755 + (((tickAnim - 11) / 2) * (0-(1.755))); + zz = 0 + (((tickAnim - 11) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightArm3.rotationPointX = this.rightArm3.rotationPointX + (float)(xx); + this.rightArm3.rotationPointY = this.rightArm3.rotationPointY - (float)(yy); + this.rightArm3.rotationPointZ = this.rightArm3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577-150))*7), neck.rotateAngleY + (float) Math.toRadians(0), neck.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(neck2, neck2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577-250))*-5), neck2.rotateAngleY + (float) Math.toRadians(0), neck2.rotateAngleZ + (float) Math.toRadians(0)); + + } + public void animWalking(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraNundasuchus entity = (EntityPrehistoricFloraNundasuchus) entitylivingbaseIn; + int animCycle = 30; + double tickAnim = (entity.ticksExisted + entity.getTickOffset()) - (int) (Math.floor((double) (entity.ticksExisted + entity.getTickOffset()) / (double) animCycle) * (double) animCycle) + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 22.75 + (((tickAnim - 0) / 10) * (-37.48955-(22.75))); + yy = 0 + (((tickAnim - 0) / 10) * (-2.96624-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (1.1359-(0))); + } + else if (tickAnim >= 10 && tickAnim < 14) { + xx = -37.48955 + (((tickAnim - 10) / 4) * (-26-(-37.48955))); + yy = -2.96624 + (((tickAnim - 10) / 4) * (0-(-2.96624))); + zz = 1.1359 + (((tickAnim - 10) / 4) * (0-(1.1359))); + } + else if (tickAnim >= 14 && tickAnim < 30) { + xx = -26 + (((tickAnim - 14) / 16) * (22.75-(-26))); + yy = 0 + (((tickAnim - 14) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 14) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg, leftLeg.rotateAngleX + (float) Math.toRadians(xx), leftLeg.rotateAngleY + (float) Math.toRadians(yy), leftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (34-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = 34 + (((tickAnim - 3) / 4) * (34-(34))); + yy = 0 + (((tickAnim - 3) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 4) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 14) { + xx = 34 + (((tickAnim - 7) / 7) * (-6-(34))); + yy = 0 + (((tickAnim - 7) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 7) * (0-(0))); + } + else if (tickAnim >= 14 && tickAnim < 30) { + xx = -6 + (((tickAnim - 14) / 16) * (0-(-6))); + yy = 0 + (((tickAnim - 14) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 14) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg2, leftLeg2.rotateAngleX + (float) Math.toRadians(xx), leftLeg2.rotateAngleY + (float) Math.toRadians(yy), leftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 28.5 + (((tickAnim - 0) / 7) * (-51.09-(28.5))); + yy = 0 + (((tickAnim - 0) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = -51.09 + (((tickAnim - 7) / 3) * (-51.09-(-51.09))); + yy = 0 + (((tickAnim - 7) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 3) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 14) { + xx = -51.09 + (((tickAnim - 10) / 4) * (31.5-(-51.09))); + yy = 0 + (((tickAnim - 10) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 4) * (0-(0))); + } + else if (tickAnim >= 14 && tickAnim < 20) { + xx = 31.5 + (((tickAnim - 14) / 6) * (17.39-(31.5))); + yy = 0 + (((tickAnim - 14) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 14) / 6) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 17.39 + (((tickAnim - 20) / 10) * (28.5-(17.39))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg3, leftLeg3.rotateAngleX + (float) Math.toRadians(xx), leftLeg3.rotateAngleY + (float) Math.toRadians(yy), leftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + this.leftLeg3.rotationPointX = this.leftLeg3.rotationPointX + (float)(0); + this.leftLeg3.rotationPointY = this.leftLeg3.rotationPointY - (float)(-0.225); + this.leftLeg3.rotationPointZ = this.leftLeg3.rotationPointZ + (float)(0); + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 48 + (((tickAnim - 0) / 2) * (90.6-(48))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 7) { + xx = 90.6 + (((tickAnim - 2) / 5) * (95.41-(90.6))); + yy = 0 + (((tickAnim - 2) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 5) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = 95.41 + (((tickAnim - 7) / 3) * (95.41-(95.41))); + yy = 0 + (((tickAnim - 7) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 3) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 14) { + xx = 95.41 + (((tickAnim - 10) / 4) * (3-(95.41))); + yy = 0 + (((tickAnim - 10) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 4) * (0-(0))); + } + else if (tickAnim >= 14 && tickAnim < 17) { + xx = 3 + (((tickAnim - 14) / 3) * (-2-(3))); + yy = 0 + (((tickAnim - 14) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 14) / 3) * (0-(0))); + } + else if (tickAnim >= 17 && tickAnim < 20) { + xx = -2 + (((tickAnim - 17) / 3) * (-7-(-2))); + yy = 0 + (((tickAnim - 17) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 17) / 3) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -7 + (((tickAnim - 20) / 10) * (48-(-7))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg4, leftLeg4.rotateAngleX + (float) Math.toRadians(xx), leftLeg4.rotateAngleY + (float) Math.toRadians(yy), leftLeg4.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 0 + (((tickAnim - 0) / 7) * (0-(0))); + yy = 0.3 + (((tickAnim - 0) / 7) * (0.985-(0.3))); + zz = -0.425 + (((tickAnim - 0) / 7) * (-0.705-(-0.425))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = 0 + (((tickAnim - 7) / 3) * (0-(0))); + yy = 0.985 + (((tickAnim - 7) / 3) * (0.985-(0.985))); + zz = -0.705 + (((tickAnim - 7) / 3) * (-0.705-(-0.705))); + } + else if (tickAnim >= 10 && tickAnim < 14) { + xx = 0 + (((tickAnim - 10) / 4) * (0-(0))); + yy = 0.985 + (((tickAnim - 10) / 4) * (-0.375-(0.985))); + zz = -0.705 + (((tickAnim - 10) / 4) * (0-(-0.705))); + } + else if (tickAnim >= 14 && tickAnim < 17) { + xx = 0 + (((tickAnim - 14) / 3) * (0-(0))); + yy = -0.375 + (((tickAnim - 14) / 3) * (-0.17-(-0.375))); + zz = 0 + (((tickAnim - 14) / 3) * (0-(0))); + } + else if (tickAnim >= 17 && tickAnim < 20) { + xx = 0 + (((tickAnim - 17) / 3) * (0-(0))); + yy = -0.17 + (((tickAnim - 17) / 3) * (0.5-(-0.17))); + zz = 0 + (((tickAnim - 17) / 3) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 25) { + xx = 0 + (((tickAnim - 20) / 5) * (0-(0))); + yy = 0.5 + (((tickAnim - 20) / 5) * (1.225-(0.5))); + zz = 0 + (((tickAnim - 20) / 5) * (-0.21-(0))); + } + else if (tickAnim >= 25 && tickAnim < 30) { + xx = 0 + (((tickAnim - 25) / 5) * (0-(0))); + yy = 1.225 + (((tickAnim - 25) / 5) * (0.3-(1.225))); + zz = -0.21 + (((tickAnim - 25) / 5) * (-0.425-(-0.21))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftLeg4.rotationPointX = this.leftLeg4.rotationPointX + (float)(xx); + this.leftLeg4.rotationPointY = this.leftLeg4.rotationPointY - (float)(yy); + this.leftLeg4.rotationPointZ = this.leftLeg4.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 16) { + xx = -26 + (((tickAnim - 0) / 16) * (22.75-(-26))); + yy = 0 + (((tickAnim - 0) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 16) * (0-(0))); + } + else if (tickAnim >= 16 && tickAnim < 26) { + xx = 22.75 + (((tickAnim - 16) / 10) * (-38.16455-(22.75))); + yy = 0 + (((tickAnim - 16) / 10) * (2.96624-(0))); + zz = 0 + (((tickAnim - 16) / 10) * (-1.1359-(0))); + } + else if (tickAnim >= 26 && tickAnim < 30) { + xx = -38.16455 + (((tickAnim - 26) / 4) * (-26-(-38.16455))); + yy = 2.96624 + (((tickAnim - 26) / 4) * (0-(2.96624))); + zz = -1.1359 + (((tickAnim - 26) / 4) * (0-(-1.1359))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg, rightLeg.rotateAngleX + (float) Math.toRadians(xx), rightLeg.rotateAngleY + (float) Math.toRadians(yy), rightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 16) { + xx = -6 + (((tickAnim - 0) / 16) * (0-(-6))); + yy = 0 + (((tickAnim - 0) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 16) * (0-(0))); + } + else if (tickAnim >= 16 && tickAnim < 19) { + xx = 0 + (((tickAnim - 16) / 3) * (34-(0))); + yy = 0 + (((tickAnim - 16) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 16) / 3) * (0-(0))); + } + else if (tickAnim >= 19 && tickAnim < 23) { + xx = 34 + (((tickAnim - 19) / 4) * (34-(34))); + yy = 0 + (((tickAnim - 19) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 19) / 4) * (0-(0))); + } + else if (tickAnim >= 23 && tickAnim < 30) { + xx = 34 + (((tickAnim - 23) / 7) * (-6-(34))); + yy = 0 + (((tickAnim - 23) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 23) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg2, rightLeg2.rotateAngleX + (float) Math.toRadians(xx), rightLeg2.rotateAngleY + (float) Math.toRadians(yy), rightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = 31.5 + (((tickAnim - 0) / 6) * (17.39-(31.5))); + yy = 0 + (((tickAnim - 0) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 6) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 16) { + xx = 17.39 + (((tickAnim - 6) / 10) * (28.5-(17.39))); + yy = 0 + (((tickAnim - 6) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 10) * (0-(0))); + } + else if (tickAnim >= 16 && tickAnim < 23) { + xx = 28.5 + (((tickAnim - 16) / 7) * (-51.09-(28.5))); + yy = 0 + (((tickAnim - 16) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 16) / 7) * (0-(0))); + } + else if (tickAnim >= 23 && tickAnim < 26) { + xx = -51.09 + (((tickAnim - 23) / 3) * (-51.09-(-51.09))); + yy = 0 + (((tickAnim - 23) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 23) / 3) * (0-(0))); + } + else if (tickAnim >= 26 && tickAnim < 30) { + xx = -51.09 + (((tickAnim - 26) / 4) * (31.5-(-51.09))); + yy = 0 + (((tickAnim - 26) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 26) / 4) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg3, rightLeg3.rotateAngleX + (float) Math.toRadians(xx), rightLeg3.rotateAngleY + (float) Math.toRadians(yy), rightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 30) { + xx = 0 + (((tickAnim - 0) / 30) * (0-(0))); + yy = -0.225 + (((tickAnim - 0) / 30) * (-0.225-(-0.225))); + zz = 0 + (((tickAnim - 0) / 30) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightLeg3.rotationPointX = this.rightLeg3.rotationPointX + (float)(xx); + this.rightLeg3.rotationPointY = this.rightLeg3.rotationPointY - (float)(yy); + this.rightLeg3.rotationPointZ = this.rightLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 3 + (((tickAnim - 0) / 3) * (-2-(3))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = -2 + (((tickAnim - 3) / 3) * (-7-(-2))); + yy = 0 + (((tickAnim - 3) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 3) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 16) { + xx = -7 + (((tickAnim - 6) / 10) * (48-(-7))); + yy = 0 + (((tickAnim - 6) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 10) * (0-(0))); + } + else if (tickAnim >= 16 && tickAnim < 18) { + xx = 48 + (((tickAnim - 16) / 2) * (90.6-(48))); + yy = 0 + (((tickAnim - 16) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 16) / 2) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 23) { + xx = 90.6 + (((tickAnim - 18) / 5) * (95.41-(90.6))); + yy = 0 + (((tickAnim - 18) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 5) * (0-(0))); + } + else if (tickAnim >= 23 && tickAnim < 26) { + xx = 95.41 + (((tickAnim - 23) / 3) * (95.41-(95.41))); + yy = 0 + (((tickAnim - 23) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 23) / 3) * (0-(0))); + } + else if (tickAnim >= 26 && tickAnim < 30) { + xx = 95.41 + (((tickAnim - 26) / 4) * (3-(95.41))); + yy = 0 + (((tickAnim - 26) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 26) / 4) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg4, rightLeg4.rotateAngleX + (float) Math.toRadians(xx), rightLeg4.rotateAngleY + (float) Math.toRadians(yy), rightLeg4.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = -0.375 + (((tickAnim - 0) / 3) * (-0.17-(-0.375))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 0 + (((tickAnim - 3) / 3) * (0-(0))); + yy = -0.17 + (((tickAnim - 3) / 3) * (0.5-(-0.17))); + zz = 0 + (((tickAnim - 3) / 3) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 11) { + xx = 0 + (((tickAnim - 6) / 5) * (0-(0))); + yy = 0.5 + (((tickAnim - 6) / 5) * (1.225-(0.5))); + zz = 0 + (((tickAnim - 6) / 5) * (-0.21-(0))); + } + else if (tickAnim >= 11 && tickAnim < 16) { + xx = 0 + (((tickAnim - 11) / 5) * (0-(0))); + yy = 1.225 + (((tickAnim - 11) / 5) * (0.3-(1.225))); + zz = -0.21 + (((tickAnim - 11) / 5) * (-0.425-(-0.21))); + } + else if (tickAnim >= 16 && tickAnim < 23) { + xx = 0 + (((tickAnim - 16) / 7) * (0-(0))); + yy = 0.3 + (((tickAnim - 16) / 7) * (0.985-(0.3))); + zz = -0.425 + (((tickAnim - 16) / 7) * (-0.705-(-0.425))); + } + else if (tickAnim >= 23 && tickAnim < 26) { + xx = 0 + (((tickAnim - 23) / 3) * (0-(0))); + yy = 0.985 + (((tickAnim - 23) / 3) * (0.985-(0.985))); + zz = -0.705 + (((tickAnim - 23) / 3) * (-0.705-(-0.705))); + } + else if (tickAnim >= 26 && tickAnim < 30) { + xx = 0 + (((tickAnim - 26) / 4) * (0-(0))); + yy = 0.985 + (((tickAnim - 26) / 4) * (-0.375-(0.985))); + zz = -0.705 + (((tickAnim - 26) / 4) * (0-(-0.705))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightLeg4.rotationPointX = this.rightLeg4.rotationPointX + (float)(xx); + this.rightLeg4.rotationPointY = this.rightLeg4.rotationPointY - (float)(yy); + this.rightLeg4.rotationPointZ = this.rightLeg4.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 9) { + xx = -35.38932 + (((tickAnim - 0) / 9) * (0-(-35.38932))); + yy = 10.47152 + (((tickAnim - 0) / 9) * (0-(10.47152))); + zz = -6.73517 + (((tickAnim - 0) / 9) * (0-(-6.73517))); + } + else if (tickAnim >= 9 && tickAnim < 15) { + xx = 0 + (((tickAnim - 9) / 6) * (24.40263-(0))); + yy = 0 + (((tickAnim - 9) / 6) * (-3.61018-(0))); + zz = 0 + (((tickAnim - 9) / 6) * (3.08897-(0))); + } + else if (tickAnim >= 15 && tickAnim < 30) { + xx = 24.40263 + (((tickAnim - 15) / 15) * (-35.38932-(24.40263))); + yy = -3.61018 + (((tickAnim - 15) / 15) * (10.47152-(-3.61018))); + zz = 3.08897 + (((tickAnim - 15) / 15) * (-6.73517-(3.08897))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm, leftArm.rotateAngleX + (float) Math.toRadians(xx), leftArm.rotateAngleY + (float) Math.toRadians(yy), leftArm.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 15) { + xx = 11.5 + (((tickAnim - 0) / 15) * (19.25-(11.5))); + yy = 0 + (((tickAnim - 0) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 23) { + xx = 19.25 + (((tickAnim - 15) / 8) * (-42.12-(19.25))); + yy = 0 + (((tickAnim - 15) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 15) / 8) * (0-(0))); + } + else if (tickAnim >= 23 && tickAnim < 30) { + xx = -42.12 + (((tickAnim - 23) / 7) * (11.5-(-42.12))); + yy = 0 + (((tickAnim - 23) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 23) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm2, leftArm2.rotateAngleX + (float) Math.toRadians(xx), leftArm2.rotateAngleY + (float) Math.toRadians(yy), leftArm2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 9) { + xx = 26.53409 + (((tickAnim - 0) / 9) * (-16-(26.53409))); + yy = -10.56589 + (((tickAnim - 0) / 9) * (0-(-10.56589))); + zz = -0.80704 + (((tickAnim - 0) / 9) * (0-(-0.80704))); + } + else if (tickAnim >= 9 && tickAnim < 15) { + xx = -16 + (((tickAnim - 9) / 6) * (83.5-(-16))); + yy = 0 + (((tickAnim - 9) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 9) / 6) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 17) { + xx = 83.5 + (((tickAnim - 15) / 2) * (127.30934-(83.5))); + yy = 0 + (((tickAnim - 15) / 2) * (1.17399-(0))); + zz = 0 + (((tickAnim - 15) / 2) * (0.08967-(0))); + } + else if (tickAnim >= 17 && tickAnim < 23) { + xx = 127.30934 + (((tickAnim - 17) / 6) * (101.76704-(127.30934))); + yy = 1.17399 + (((tickAnim - 17) / 6) * (5.28295-(1.17399))); + zz = 0.08967 + (((tickAnim - 17) / 6) * (0.40352-(0.08967))); + } + else if (tickAnim >= 23 && tickAnim < 30) { + xx = 101.76704 + (((tickAnim - 23) / 7) * (26.53409-(101.76704))); + yy = 5.28295 + (((tickAnim - 23) / 7) * (-10.56589-(5.28295))); + zz = 0.40352 + (((tickAnim - 23) / 7) * (-0.80704-(0.40352))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm3, leftArm3.rotateAngleX + (float) Math.toRadians(xx), leftArm3.rotateAngleY + (float) Math.toRadians(yy), leftArm3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0.4-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 0 + (((tickAnim - 3) / 3) * (0-(0))); + yy = 0.4 + (((tickAnim - 3) / 3) * (0.765-(0.4))); + zz = 0 + (((tickAnim - 3) / 3) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 9) { + xx = 0 + (((tickAnim - 6) / 3) * (0-(0))); + yy = 0.765 + (((tickAnim - 6) / 3) * (1.05-(0.765))); + zz = 0 + (((tickAnim - 6) / 3) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 15) { + xx = 0 + (((tickAnim - 9) / 6) * (0-(0))); + yy = 1.05 + (((tickAnim - 9) / 6) * (-0.825-(1.05))); + zz = 0 + (((tickAnim - 9) / 6) * (-0.3-(0))); + } + else if (tickAnim >= 15 && tickAnim < 17) { + xx = 0 + (((tickAnim - 15) / 2) * (0-(0))); + yy = -0.825 + (((tickAnim - 15) / 2) * (-0.845-(-0.825))); + zz = -0.3 + (((tickAnim - 15) / 2) * (0.23-(-0.3))); + } + else if (tickAnim >= 17 && tickAnim < 19) { + xx = 0 + (((tickAnim - 17) / 2) * (0-(0))); + yy = -0.845 + (((tickAnim - 17) / 2) * (0.45-(-0.845))); + zz = 0.23 + (((tickAnim - 17) / 2) * (-0.22-(0.23))); + } + else if (tickAnim >= 19 && tickAnim < 30) { + xx = 0 + (((tickAnim - 19) / 11) * (0-(0))); + yy = 0.45 + (((tickAnim - 19) / 11) * (0-(0.45))); + zz = -0.22 + (((tickAnim - 19) / 11) * (0-(-0.22))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftArm3.rotationPointX = this.leftArm3.rotationPointX + (float)(xx); + this.leftArm3.rotationPointY = this.leftArm3.rotationPointY - (float)(yy); + this.leftArm3.rotationPointZ = this.leftArm3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 15) { + xx = 24.40263 + (((tickAnim - 0) / 15) * (-35.38932-(24.40263))); + yy = 3.61018 + (((tickAnim - 0) / 15) * (-10.47152-(3.61018))); + zz = -3.08897 + (((tickAnim - 0) / 15) * (6.73517-(-3.08897))); + } + else if (tickAnim >= 15 && tickAnim < 24) { + xx = -35.38932 + (((tickAnim - 15) / 9) * (0-(-35.38932))); + yy = -10.47152 + (((tickAnim - 15) / 9) * (0-(-10.47152))); + zz = 6.73517 + (((tickAnim - 15) / 9) * (0-(6.73517))); + } + else if (tickAnim >= 24 && tickAnim < 30) { + xx = 0 + (((tickAnim - 24) / 6) * (24.40263-(0))); + yy = 0 + (((tickAnim - 24) / 6) * (3.61018-(0))); + zz = 0 + (((tickAnim - 24) / 6) * (-3.08897-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm, rightArm.rotateAngleX + (float) Math.toRadians(xx), rightArm.rotateAngleY + (float) Math.toRadians(yy), rightArm.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 19.25 + (((tickAnim - 0) / 8) * (-42.12-(19.25))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = -42.12 + (((tickAnim - 8) / 7) * (11.5-(-42.12))); + yy = 0 + (((tickAnim - 8) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 7) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 30) { + xx = 11.5 + (((tickAnim - 15) / 15) * (19.25-(11.5))); + yy = 0 + (((tickAnim - 15) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 15) / 15) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm2, rightArm2.rotateAngleX + (float) Math.toRadians(xx), rightArm2.rotateAngleY + (float) Math.toRadians(yy), rightArm2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 83.5 + (((tickAnim - 0) / 2) * (127.30934-(83.5))); + yy = 0 + (((tickAnim - 0) / 2) * (1.17399-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0.08967-(0))); + } + else if (tickAnim >= 2 && tickAnim < 8) { + xx = 127.30934 + (((tickAnim - 2) / 6) * (101.76704-(127.30934))); + yy = 1.17399 + (((tickAnim - 2) / 6) * (5.28295-(1.17399))); + zz = 0.08967 + (((tickAnim - 2) / 6) * (0.40352-(0.08967))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = 101.76704 + (((tickAnim - 8) / 7) * (26.53409-(101.76704))); + yy = 5.28295 + (((tickAnim - 8) / 7) * (10.56589-(5.28295))); + zz = 0.40352 + (((tickAnim - 8) / 7) * (0.80704-(0.40352))); + } + else if (tickAnim >= 15 && tickAnim < 24) { + xx = 26.53409 + (((tickAnim - 15) / 9) * (-16-(26.53409))); + yy = 10.56589 + (((tickAnim - 15) / 9) * (0-(10.56589))); + zz = 0.80704 + (((tickAnim - 15) / 9) * (0-(0.80704))); + } + else if (tickAnim >= 24 && tickAnim < 30) { + xx = -16 + (((tickAnim - 24) / 6) * (83.5-(-16))); + yy = 0 + (((tickAnim - 24) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 24) / 6) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm3, rightArm3.rotateAngleX + (float) Math.toRadians(xx), rightArm3.rotateAngleY + (float) Math.toRadians(yy), rightArm3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = -0.825 + (((tickAnim - 0) / 2) * (-0.845-(-0.825))); + zz = -0.3 + (((tickAnim - 0) / 2) * (0.23-(-0.3))); + } + else if (tickAnim >= 2 && tickAnim < 4) { + xx = 0 + (((tickAnim - 2) / 2) * (0-(0))); + yy = -0.845 + (((tickAnim - 2) / 2) * (0.45-(-0.845))); + zz = 0.23 + (((tickAnim - 2) / 2) * (-0.22-(0.23))); + } + else if (tickAnim >= 4 && tickAnim < 15) { + xx = 0 + (((tickAnim - 4) / 11) * (0-(0))); + yy = 0.45 + (((tickAnim - 4) / 11) * (0-(0.45))); + zz = -0.22 + (((tickAnim - 4) / 11) * (0-(-0.22))); + } + else if (tickAnim >= 15 && tickAnim < 18) { + xx = 0 + (((tickAnim - 15) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 15) / 3) * (0.275-(0))); + zz = 0 + (((tickAnim - 15) / 3) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 21) { + xx = 0 + (((tickAnim - 18) / 3) * (0-(0))); + yy = 0.275 + (((tickAnim - 18) / 3) * (0.765-(0.275))); + zz = 0 + (((tickAnim - 18) / 3) * (0-(0))); + } + else if (tickAnim >= 21 && tickAnim < 24) { + xx = 0 + (((tickAnim - 21) / 3) * (0-(0))); + yy = 0.765 + (((tickAnim - 21) / 3) * (0.95-(0.765))); + zz = 0 + (((tickAnim - 21) / 3) * (0-(0))); + } + else if (tickAnim >= 24 && tickAnim < 30) { + xx = 0 + (((tickAnim - 24) / 6) * (0-(0))); + yy = 0.95 + (((tickAnim - 24) / 6) * (-0.825-(0.95))); + zz = 0 + (((tickAnim - 24) / 6) * (-0.3-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightArm3.rotationPointX = this.rightArm3.rotationPointX + (float)(xx); + this.rightArm3.rotationPointY = this.rightArm3.rotationPointY - (float)(yy); + this.rightArm3.rotationPointZ = this.rightArm3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-90))*1), main.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-120))*2), main.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240))*2)); + this.main.rotationPointX = this.main.rotationPointX + (float)(0); + this.main.rotationPointY = this.main.rotationPointY - (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5+40))*0.5); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5+150))*-0.5); + + + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5))*2), tail.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240))*4), tail.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240))*2)); + + + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-50))*2), tail2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-50))*2), tail2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240))*2)); + + + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-100))*2), tail3.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-100))*4), tail3.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240))*2)); + + + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-150))*3), tail4.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-150))*6), tail4.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240))*2)); + + + this.setRotateAngle(tail5, tail5.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-200))*3), tail5.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-150))*8), tail5.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240))*2)); + + + this.setRotateAngle(tail6, tail6.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-250))*4), tail6.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-200))*10), tail6.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240))*2)); + + + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-150))*-1), body.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-100))*-2), body.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-50))*2)); + + + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-200))*1), body2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-150))*-2), body2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-150))*-3)); + + + this.setRotateAngle(body3, body3.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-250))*2), body3.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-190))*2), body3.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-200))*3)); + + + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-300))*2), neck.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-250))*-2), neck.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-150))*3)); + + + this.setRotateAngle(neck2, neck2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-300))*-2), neck2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-300))*2), neck2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-250))*3)); + + + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-350))*2), head.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-300))*-2), head.rotateAngleZ + (float) Math.toRadians(0)); + + } + + @Override + public void setLivingAnimations(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + super.setLivingAnimations(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + this.resetToDefaultPose(); + EntityPrehistoricFloraNundasuchus ee = (EntityPrehistoricFloraNundasuchus) entitylivingbaseIn; + + if (!ee.isReallyInWater()) { + if (ee.getIsMoving()) { + if (ee.getIsFast()) { //Running + animRunning(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + + } else { //Walking + animWalking(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + } + } + } + else { + //Swimming pose: + if (!ee.getIsMoving()) { //static in water + // + } + //moving in water + // + } + if (ee.getAnimation() == ee.EAT_ANIMATION) { + animEat(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.ATTACK_ANIMATION) { + animAttack(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.MAKE_NEST_ANIMATION) { + animNest(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.LAY_ANIMATION) { + animLay(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.STAND_ANIMATION) { + animAlert(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.ROAR_ANIMATION) { //The actual roar/anim + animRoar(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + + } + + public void animate(IAnimatedEntity entity, float f, float f1, float f2, float f3, float f4, float f5) { + EntityPrehistoricFloraNundasuchus e = (EntityPrehistoricFloraNundasuchus) entity; + + } +} diff --git a/src/main/java/net/lepidodendron/entity/model/entity/ModelParringtonia.java b/src/main/java/net/lepidodendron/entity/model/entity/ModelParringtonia.java new file mode 100644 index 0000000000..4ce57769f3 --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/model/entity/ModelParringtonia.java @@ -0,0 +1,2502 @@ +package net.lepidodendron.entity.model.entity; + +import net.ilexiconn.llibrary.client.model.ModelAnimator; +import net.ilexiconn.llibrary.client.model.tools.AdvancedModelRenderer; +import net.ilexiconn.llibrary.server.animation.IAnimatedEntity; +import net.lepidodendron.entity.EntityPrehistoricFloraParringtonia; +import net.lepidodendron.entity.model.ModelBasePalaeopedia; +import net.minecraft.client.model.ModelBox; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; + +public class ModelParringtonia extends ModelBasePalaeopedia { + private final AdvancedModelRenderer main; + private final AdvancedModelRenderer cube_r1; + private final AdvancedModelRenderer backLeftLeg; + private final AdvancedModelRenderer backLeftLeg2; + private final AdvancedModelRenderer backLeftLeg3; + private final AdvancedModelRenderer backRightLeg; + private final AdvancedModelRenderer backRightLeg2; + private final AdvancedModelRenderer backRightLeg3; + private final AdvancedModelRenderer tail; + private final AdvancedModelRenderer cube_r2; + private final AdvancedModelRenderer tail2; + private final AdvancedModelRenderer cube_r3; + private final AdvancedModelRenderer tail3; + private final AdvancedModelRenderer tail4; + private final AdvancedModelRenderer body; + private final AdvancedModelRenderer body2; + private final AdvancedModelRenderer cube_r4; + private final AdvancedModelRenderer frontLeftLeg; + private final AdvancedModelRenderer frontLeftLeg2; + private final AdvancedModelRenderer frontLeftLeg3; + private final AdvancedModelRenderer frontRightLeg; + private final AdvancedModelRenderer frontRightLeg2; + private final AdvancedModelRenderer frontRightLeg3; + private final AdvancedModelRenderer body3; + private final AdvancedModelRenderer cube_r5; + private final AdvancedModelRenderer head; + private final AdvancedModelRenderer cube_r6; + private final AdvancedModelRenderer cube_r7; + private final AdvancedModelRenderer cube_r8; + private final AdvancedModelRenderer cube_r9; + private final AdvancedModelRenderer cube_r10; + private final AdvancedModelRenderer cube_r11; + private final AdvancedModelRenderer cube_r12; + private final AdvancedModelRenderer cube_r13; + private final AdvancedModelRenderer jaw; + private final AdvancedModelRenderer cube_r14; + private final AdvancedModelRenderer cube_r15; + private final AdvancedModelRenderer cube_r16; + + private ModelAnimator animator; + + public ModelParringtonia() { + this.textureWidth = 55; + this.textureHeight = 55; + + this.main = new AdvancedModelRenderer(this); + this.main.setRotationPoint(0.0F, 16.8977F, 4.9619F); + this.main.cubeList.add(new ModelBox(main, 0, 10, -1.5F, -1.1477F, -1.9619F, 3, 4, 4, 0.0F, false)); + + this.cube_r1 = new AdvancedModelRenderer(this); + this.cube_r1.setRotationPoint(0.0F, -1.4477F, -2.0118F); + this.main.addChild(cube_r1); + this.setRotateAngle(cube_r1, -0.048F, 0.0F, 0.0F); + this.cube_r1.cubeList.add(new ModelBox(cube_r1, 28, 32, -1.0F, 0.0F, 0.0F, 2, 1, 4, -0.001F, false)); + + this.backLeftLeg = new AdvancedModelRenderer(this); + this.backLeftLeg.setRotationPoint(1.5F, -0.1477F, 0.5381F); + this.main.addChild(backLeftLeg); + this.setRotateAngle(backLeftLeg, -0.3796F, 0.0F, 0.0F); + this.backLeftLeg.cubeList.add(new ModelBox(backLeftLeg, 41, 24, -1.0F, -0.5F, -1.0F, 2, 4, 2, 0.0F, false)); + + this.backLeftLeg2 = new AdvancedModelRenderer(this); + this.backLeftLeg2.setRotationPoint(0.5F, 3.3959F, -0.9009F); + this.backLeftLeg.addChild(backLeftLeg2); + this.setRotateAngle(backLeftLeg2, 0.48F, 0.0F, 0.0F); + this.backLeftLeg2.cubeList.add(new ModelBox(backLeftLeg2, 5, 46, -1.0F, 0.0F, 0.0F, 1, 5, 1, 0.0F, false)); + this.backLeftLeg2.cubeList.add(new ModelBox(backLeftLeg2, 0, 46, -1.0F, 0.0F, 0.5F, 1, 5, 1, -0.001F, false)); + + this.backLeftLeg3 = new AdvancedModelRenderer(this); + this.backLeftLeg3.setRotationPoint(0.0F, 3.5704F, 1.0237F); + this.backLeftLeg2.addChild(backLeftLeg3); + this.setRotateAngle(backLeftLeg3, -0.096F, 0.0F, 0.0F); + this.backLeftLeg3.cubeList.add(new ModelBox(backLeftLeg3, 41, 31, -1.5F, -0.025F, -2.7F, 2, 1, 3, 0.0F, false)); + + this.backRightLeg = new AdvancedModelRenderer(this); + this.backRightLeg.setRotationPoint(-1.5F, -0.1477F, 0.5381F); + this.main.addChild(backRightLeg); + this.setRotateAngle(backRightLeg, -0.3796F, 0.0F, 0.0F); + this.backRightLeg.cubeList.add(new ModelBox(backRightLeg, 41, 24, -1.0F, -0.5F, -1.0F, 2, 4, 2, 0.0F, true)); + + this.backRightLeg2 = new AdvancedModelRenderer(this); + this.backRightLeg2.setRotationPoint(-0.5F, 3.3959F, -0.9009F); + this.backRightLeg.addChild(backRightLeg2); + this.setRotateAngle(backRightLeg2, 0.48F, 0.0F, 0.0F); + this.backRightLeg2.cubeList.add(new ModelBox(backRightLeg2, 5, 46, 0.0F, 0.0F, 0.0F, 1, 5, 1, 0.0F, true)); + this.backRightLeg2.cubeList.add(new ModelBox(backRightLeg2, 0, 46, 0.0F, 0.0F, 0.5F, 1, 5, 1, -0.001F, true)); + + this.backRightLeg3 = new AdvancedModelRenderer(this); + this.backRightLeg3.setRotationPoint(0.0F, 3.5704F, 1.0237F); + this.backRightLeg2.addChild(backRightLeg3); + this.setRotateAngle(backRightLeg3, -0.096F, 0.0F, 0.0F); + this.backRightLeg3.cubeList.add(new ModelBox(backRightLeg3, 41, 31, -0.5F, -0.025F, -2.7F, 2, 1, 3, 0.0F, true)); + + this.tail = new AdvancedModelRenderer(this); + this.tail.setRotationPoint(0.0F, -1.0063F, 1.9542F); + this.main.addChild(tail); + this.setRotateAngle(tail, -0.2182F, 0.0F, 0.0F); + this.tail.cubeList.add(new ModelBox(tail, 15, 25, -1.0F, 0.0F, 0.0F, 2, 3, 4, 0.0F, false)); + this.tail.cubeList.add(new ModelBox(tail, 0, 40, -0.5F, -0.225F, -0.05F, 1, 1, 4, -0.003F, false)); + + this.cube_r2 = new AdvancedModelRenderer(this); + this.cube_r2.setRotationPoint(0.0F, -0.275F, 0.0F); + this.tail.addChild(cube_r2); + this.setRotateAngle(cube_r2, -0.0741F, 0.0005F, -0.0004F); + this.cube_r2.cubeList.add(new ModelBox(cube_r2, 31, 32, -0.5F, 0.025F, 0.075F, 1, 1, 3, 0.0F, false)); + + this.tail2 = new AdvancedModelRenderer(this); + this.tail2.setRotationPoint(0.0F, 1.0F, 3.5F); + this.tail.addChild(tail2); + this.setRotateAngle(tail2, -0.1745F, 0.0F, 0.0F); + this.tail2.cubeList.add(new ModelBox(tail2, 0, 19, -1.0F, -1.0F, 0.0F, 2, 2, 5, -0.003F, false)); + + this.cube_r3 = new AdvancedModelRenderer(this); + this.cube_r3.setRotationPoint(0.0F, -1.2F, 0.0F); + this.tail2.addChild(cube_r3); + this.setRotateAngle(cube_r3, -0.0305F, 0.0F, 0.0F); + this.cube_r3.cubeList.add(new ModelBox(cube_r3, 28, 25, -0.5F, 0.0F, 0.0F, 1, 1, 5, -0.003F, false)); + + this.tail3 = new AdvancedModelRenderer(this); + this.tail3.setRotationPoint(0.0F, -0.3765F, 4.5174F); + this.tail2.addChild(tail3); + this.tail3.cubeList.add(new ModelBox(tail3, 0, 27, -0.5F, -0.5F, 0.0F, 1, 1, 5, 0.0F, false)); + + this.tail4 = new AdvancedModelRenderer(this); + this.tail4.setRotationPoint(0.0F, -0.0021F, 4.5239F); + this.tail3.addChild(tail4); + this.setRotateAngle(tail4, 0.1745F, 0.0F, 0.0F); + this.tail4.cubeList.add(new ModelBox(tail4, 13, 33, -0.5F, -0.5F, 0.0F, 1, 1, 4, -0.003F, false)); + + this.body = new AdvancedModelRenderer(this); + this.body.setRotationPoint(0.0F, -1.1477F, -1.9619F); + this.main.addChild(body); + this.setRotateAngle(body, 0.1745F, 0.0F, 0.0F); + this.body.cubeList.add(new ModelBox(body, 0, 0, -2.0F, 0.0F, -5.0F, 4, 4, 5, 0.0F, false)); + this.body.cubeList.add(new ModelBox(body, 15, 10, -1.5F, -0.3F, -5.0F, 3, 1, 5, 0.001F, false)); + + this.body2 = new AdvancedModelRenderer(this); + this.body2.setRotationPoint(0.0F, 0.0325F, -5.2793F); + this.body.addChild(body2); + this.setRotateAngle(body2, -0.0785F, 0.0F, 0.0F); + this.body2.cubeList.add(new ModelBox(body2, 15, 17, -1.5F, 0.0F, -3.25F, 3, 3, 4, 0.0F, false)); + this.body2.cubeList.add(new ModelBox(body2, 32, 6, -1.0F, -0.275F, -3.25F, 2, 1, 4, -0.001F, false)); + + this.cube_r4 = new AdvancedModelRenderer(this); + this.cube_r4.setRotationPoint(0.0F, 3.3F, -3.3F); + this.body2.addChild(cube_r4); + this.setRotateAngle(cube_r4, -0.1309F, 0.0F, 0.0F); + this.cube_r4.cubeList.add(new ModelBox(cube_r4, 19, 0, -1.5F, -1.0F, 0.0F, 3, 1, 4, -0.003F, false)); + + this.frontLeftLeg = new AdvancedModelRenderer(this); + this.frontLeftLeg.setRotationPoint(1.575F, 2.0F, -2.5F); + this.body2.addChild(frontLeftLeg); + this.setRotateAngle(frontLeftLeg, -1.0036F, 0.0F, 0.0F); + this.frontLeftLeg.cubeList.add(new ModelBox(frontLeftLeg, 43, 17, -0.5F, -1.5F, -0.5F, 1, 2, 3, 0.001F, false)); + + this.frontLeftLeg2 = new AdvancedModelRenderer(this); + this.frontLeftLeg2.setRotationPoint(0.0F, -0.834F, 2.456F); + this.frontLeftLeg.addChild(frontLeftLeg2); + this.setRotateAngle(frontLeftLeg2, -0.829F, 0.0F, 0.0F); + this.frontLeftLeg2.cubeList.add(new ModelBox(frontLeftLeg2, 35, 38, -0.5F, -0.4F, -0.4F, 1, 1, 4, -0.003F, false)); + this.frontLeftLeg2.cubeList.add(new ModelBox(frontLeftLeg2, 11, 39, -0.5F, -0.1F, -0.4F, 1, 1, 4, 0.0F, false)); + + this.frontLeftLeg3 = new AdvancedModelRenderer(this); + this.frontLeftLeg3.setRotationPoint(0.0F, -0.0733F, 2.6713F); + this.frontLeftLeg2.addChild(frontLeftLeg3); + this.setRotateAngle(frontLeftLeg3, 0.1745F, 0.0F, 0.0F); + this.frontLeftLeg3.cubeList.add(new ModelBox(frontLeftLeg3, 46, 36, -1.0F, 0.0F, 0.0F, 2, 2, 1, 0.0F, false)); + + this.frontRightLeg = new AdvancedModelRenderer(this); + this.frontRightLeg.setRotationPoint(-1.575F, 2.0F, -2.5F); + this.body2.addChild(frontRightLeg); + this.setRotateAngle(frontRightLeg, -1.0036F, 0.0F, 0.0F); + this.frontRightLeg.cubeList.add(new ModelBox(frontRightLeg, 43, 17, -0.5F, -1.5F, -0.5F, 1, 2, 3, 0.001F, true)); + + this.frontRightLeg2 = new AdvancedModelRenderer(this); + this.frontRightLeg2.setRotationPoint(0.0F, -0.834F, 2.456F); + this.frontRightLeg.addChild(frontRightLeg2); + this.setRotateAngle(frontRightLeg2, -0.829F, 0.0F, 0.0F); + this.frontRightLeg2.cubeList.add(new ModelBox(frontRightLeg2, 35, 38, -0.5F, -0.4F, -0.4F, 1, 1, 4, -0.003F, true)); + this.frontRightLeg2.cubeList.add(new ModelBox(frontRightLeg2, 11, 39, -0.5F, -0.1F, -0.4F, 1, 1, 4, 0.0F, true)); + + this.frontRightLeg3 = new AdvancedModelRenderer(this); + this.frontRightLeg3.setRotationPoint(0.0F, -0.0733F, 2.6713F); + this.frontRightLeg2.addChild(frontRightLeg3); + this.setRotateAngle(frontRightLeg3, 0.1745F, 0.0F, 0.0F); + this.frontRightLeg3.cubeList.add(new ModelBox(frontRightLeg3, 46, 36, -1.0F, 0.0F, 0.0F, 2, 2, 1, 0.0F, true)); + + this.body3 = new AdvancedModelRenderer(this); + this.body3.setRotationPoint(0.0F, 0.0868F, -2.2576F); + this.body2.addChild(body3); + this.setRotateAngle(body3, -0.1745F, 0.0F, 0.0F); + this.body3.cubeList.add(new ModelBox(body3, 0, 34, -1.0F, 0.025F, -3.0F, 2, 2, 3, -0.003F, false)); + this.body3.cubeList.add(new ModelBox(body3, 33, 44, -0.5F, -0.175F, -2.9F, 1, 1, 3, 0.0F, false)); + + this.cube_r5 = new AdvancedModelRenderer(this); + this.cube_r5.setRotationPoint(0.0F, 3.0356F, -0.117F); + this.body3.addChild(cube_r5); + this.setRotateAngle(cube_r5, -0.0436F, 0.0F, 0.0F); + this.cube_r5.cubeList.add(new ModelBox(cube_r5, 32, 12, -1.0F, -1.0F, -3.0F, 2, 1, 3, -0.004F, false)); + + this.head = new AdvancedModelRenderer(this); + this.head.setRotationPoint(0.2273F, -0.1815F, -2.8673F); + this.body3.addChild(head); + this.setRotateAngle(head, 0.1309F, 0.0F, 0.0F); + this.head.cubeList.add(new ModelBox(head, 30, 17, -0.7273F, 1.0815F, -5.8827F, 1, 1, 5, 0.003F, false)); + this.head.cubeList.add(new ModelBox(head, 19, 6, -1.7273F, 1.1065F, -2.0077F, 3, 1, 2, -0.01F, false)); + this.head.cubeList.add(new ModelBox(head, 43, 12, -1.7273F, 0.0007F, -2.0003F, 3, 2, 2, 0.0F, false)); + + this.cube_r6 = new AdvancedModelRenderer(this); + this.cube_r6.setRotationPoint(-0.2273F, 0.0533F, -2.7209F); + this.head.addChild(cube_r6); + this.setRotateAngle(cube_r6, 0.0436F, 0.0F, 0.0F); + this.cube_r6.cubeList.add(new ModelBox(cube_r6, 46, 40, -0.5F, 0.0F, 0.0F, 1, 2, 1, -0.003F, false)); + + this.cube_r7 = new AdvancedModelRenderer(this); + this.cube_r7.setRotationPoint(-0.2273F, 2.2098F, -6.2351F); + this.head.addChild(cube_r7); + this.setRotateAngle(cube_r7, 0.3054F, 0.0F, 0.0F); + this.cube_r7.cubeList.add(new ModelBox(cube_r7, 34, 0, -0.5F, -1.0F, 0.0F, 1, 1, 4, 0.0F, false)); + + this.cube_r8 = new AdvancedModelRenderer(this); + this.cube_r8.setRotationPoint(-1.0865F, 0.6565F, -2.4315F); + this.head.addChild(cube_r8); + this.setRotateAngle(cube_r8, 0.0152F, -0.3716F, 0.3257F); + this.cube_r8.cubeList.add(new ModelBox(cube_r8, 18, 48, -0.325F, -0.425F, -0.5F, 1, 1, 1, 0.0F, true)); + + this.cube_r9 = new AdvancedModelRenderer(this); + this.cube_r9.setRotationPoint(0.6318F, 0.6565F, -2.4315F); + this.head.addChild(cube_r9); + this.setRotateAngle(cube_r9, 0.0152F, 0.3716F, -0.3257F); + this.cube_r9.cubeList.add(new ModelBox(cube_r9, 18, 48, -0.675F, -0.425F, -0.5F, 1, 1, 1, 0.0F, false)); + + this.cube_r10 = new AdvancedModelRenderer(this); + this.cube_r10.setRotationPoint(-1.7273F, 1.5815F, -1.9827F); + this.head.addChild(cube_r10); + this.setRotateAngle(cube_r10, 0.0F, -0.3491F, 0.0F); + this.cube_r10.cubeList.add(new ModelBox(cube_r10, 42, 44, 0.0F, -0.5F, -3.0F, 1, 1, 3, 0.0F, true)); + + this.cube_r11 = new AdvancedModelRenderer(this); + this.cube_r11.setRotationPoint(1.2727F, 1.5815F, -1.9827F); + this.head.addChild(cube_r11); + this.setRotateAngle(cube_r11, 0.0F, 0.3491F, 0.0F); + this.cube_r11.cubeList.add(new ModelBox(cube_r11, 42, 44, -1.0F, -0.5F, -3.0F, 1, 1, 3, 0.0F, false)); + + this.cube_r12 = new AdvancedModelRenderer(this); + this.cube_r12.setRotationPoint(-0.1273F, 1.6815F, -5.7327F); + this.head.addChild(cube_r12); + this.setRotateAngle(cube_r12, 0.5672F, 0.0F, 0.0F); + this.cube_r12.cubeList.add(new ModelBox(cube_r12, 18, 45, -0.5F, -0.5F, -0.5F, 0, 1, 1, 0.0F, true)); + this.cube_r12.cubeList.add(new ModelBox(cube_r12, 18, 45, 0.3F, -0.5F, -0.5F, 0, 1, 1, 0.0F, false)); + + this.cube_r13 = new AdvancedModelRenderer(this); + this.cube_r13.setRotationPoint(-0.1273F, 1.8315F, -4.6827F); + this.head.addChild(cube_r13); + this.setRotateAngle(cube_r13, -0.2182F, 0.0F, 0.0F); + this.cube_r13.cubeList.add(new ModelBox(cube_r13, 24, 33, -0.5F, -0.5F, -0.5F, 0, 1, 1, 0.0F, true)); + this.cube_r13.cubeList.add(new ModelBox(cube_r13, 24, 33, 0.3F, -0.5F, -0.5F, 0, 1, 1, 0.0F, false)); + + this.jaw = new AdvancedModelRenderer(this); + this.jaw.setRotationPoint(0.2727F, 2.0815F, -0.0077F); + this.head.addChild(jaw); + this.jaw.cubeList.add(new ModelBox(jaw, 22, 44, -2.0F, 0.0F, -2.0F, 3, 1, 2, 0.0F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 23, 48, -1.0F, 0.0F, -3.0F, 1, 1, 1, 0.003F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 24, 38, -1.5F, -1.5F, -2.6F, 2, 2, 3, -0.01F, false)); + + this.cube_r14 = new AdvancedModelRenderer(this); + this.cube_r14.setRotationPoint(-2.0F, 1.0F, -1.975F); + this.jaw.addChild(cube_r14); + this.setRotateAngle(cube_r14, -0.0849F, -0.3484F, 0.0186F); + this.cube_r14.cubeList.add(new ModelBox(cube_r14, 45, 5, 0.0F, -1.0F, -3.0F, 1, 1, 3, 0.0F, true)); + + this.cube_r15 = new AdvancedModelRenderer(this); + this.cube_r15.setRotationPoint(1.0F, 1.0F, -1.975F); + this.jaw.addChild(cube_r15); + this.setRotateAngle(cube_r15, -0.0849F, 0.3484F, -0.0186F); + this.cube_r15.cubeList.add(new ModelBox(cube_r15, 45, 5, -1.0F, -1.0F, -3.0F, 1, 1, 3, 0.0F, false)); + + this.cube_r16 = new AdvancedModelRenderer(this); + this.cube_r16.setRotationPoint(-0.9F, 1.0F, -3.0F); + this.jaw.addChild(cube_r16); + this.setRotateAngle(cube_r16, -0.1309F, 0.0F, 0.0F); + this.cube_r16.cubeList.add(new ModelBox(cube_r16, 11, 45, 0.0F, -1.4F, -3.0F, 0, 1, 3, 0.0F, true)); + this.cube_r16.cubeList.add(new ModelBox(cube_r16, 11, 45, 0.8F, -1.4F, -3.0F, 0, 1, 3, 0.0F, false)); + this.cube_r16.cubeList.add(new ModelBox(cube_r16, 45, 0, -0.1F, -1.0F, -3.0F, 1, 1, 3, -0.003F, false)); + + updateDefaultPose(); + animator = ModelAnimator.create(); + } + + @Override + public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { + animate((IAnimatedEntity) entity, f, f1, f2, f3, f4, f5); + this.main.render(f5); + } + + @Override + public void renderStaticBook(float f) { + //Rotations, positions and sizing: + this.main.offsetY = 0.2F; + this.main.offsetX = 0.35F; + this.main.offsetZ = 2.0F; + this.main.rotateAngleY = (float)Math.toRadians(120); + this.main.rotateAngleX = (float)Math.toRadians(1); + this.main.rotateAngleZ = (float)Math.toRadians(0); + this.main.scaleChildren = true; + float scaler = 0.6F; + this.main.setScale(scaler, scaler, scaler); + //Start of pose: + + //End of pose, now render the model: + this.main.render(f); + //Reset rotations, positions and sizing: + this.main.setScale(1.0F, 1.0F, 1.0F); + this.main.scaleChildren = false; + resetToDefaultPose(); + + } + + public void renderStaticWall(float f) { + resetToDefaultPose(); + } + + public void renderStaticFloor(float f) { + this.main.offsetY = -0.105F; + this.main.render(0.01F); + resetToDefaultPose(); + } + + public void setRotateAngle(AdvancedModelRenderer AdvancedModelRenderer, float x, float y, float z) { + AdvancedModelRenderer.rotateAngleX = x; + AdvancedModelRenderer.rotateAngleY = y; + AdvancedModelRenderer.rotateAngleZ = z; + } + + @Override + public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity e) { + super.setRotationAngles(f, f1, f2, f3, f4, f5, e); + //this.resetToDefaultPose(); + + EntityPrehistoricFloraParringtonia EntityMegalosaurus = (EntityPrehistoricFloraParringtonia) e; + + this.faceTarget(f3, f4, 8, body3); + this.faceTarget(f3, f4, 8, head); + + AdvancedModelRenderer[] Tail = {this.tail, this.tail2, this.tail3, this.tail4}; + AdvancedModelRenderer[] Neck = {this.body3, this.head}; + + EntityMegalosaurus.tailBuffer.applyChainSwingBuffer(Tail); + + if (EntityMegalosaurus.getAnimation() == EntityMegalosaurus.LAY_ANIMATION) { + this.chainSwing(Neck, 0.5F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.5F * 2, -0.02F, 0.5F, f2, 0.8F); + } + else { + if (!EntityMegalosaurus.isReallyInWater()) { + + if (f3 == 0.0F || !EntityMegalosaurus.getIsMoving()) { + this.chainSwing(Neck, 0.05F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.05F * 2, -0.02F, 0.5F, f2, 0.8F); + + this.chainWave(Tail, (0.15F * 0.35F), 0.125F * 0.15F, 0.2F, f2, 1F); + this.chainSwing(Tail, (0.15F * 0.35F) * 4F, 0.05F * 0.35F, 0.12F, f2, 1F); + return; + } + + if (EntityMegalosaurus.getIsFast()) { //Running + + + } else { //Walking + + } + } else { + //Swimming pose: + if (f3 == 0.0F) { //static in water + return; + } + //moving in water + return; + } + } + } + + public void animAttack(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraParringtonia entity = (EntityPrehistoricFloraParringtonia) entitylivingbaseIn; + int animCycle = 20; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + + + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*360-320))*-16), head.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*360-150))*-4), head.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*360-150))*-6)); + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0.425-(0))); + } + else if (tickAnim >= 5 && tickAnim < 15) { + xx = 0 + (((tickAnim - 5) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 5) / 10) * (0-(0))); + zz = 0.425 + (((tickAnim - 5) / 10) * (0.425-(0.425))); + } + else if (tickAnim >= 15 && tickAnim < 20) { + xx = 0 + (((tickAnim - 15) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 15) / 5) * (0-(0))); + zz = 0.425 + (((tickAnim - 15) / 5) * (0-(0.425))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.head.rotationPointX = this.head.rotationPointX + (float)(xx); + this.head.rotationPointY = this.head.rotationPointY - (float)(yy); + this.head.rotationPointZ = this.head.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 28.5 + (((tickAnim - 0) / 5) * (0-(28.5))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 12) { + xx = 0 + (((tickAnim - 5) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 5) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 7) * (0-(0))); + } + else if (tickAnim >= 12 && tickAnim < 18) { + xx = 0 + (((tickAnim - 12) / 6) * (28.5-(0))); + yy = 0 + (((tickAnim - 12) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 12) / 6) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 20) { + xx = 28.5 + (((tickAnim - 18) / 2) * (28.5-(28.5))); + yy = 0 + (((tickAnim - 18) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animEat(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraParringtonia entity = (EntityPrehistoricFloraParringtonia) entitylivingbaseIn; + int animCycle = 20; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (20-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 20 + (((tickAnim - 10) / 10) * (0-(20))); + yy = 0 + (((tickAnim - 10) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body3, body3.rotateAngleX + (float) Math.toRadians(xx), body3.rotateAngleY + (float) Math.toRadians(yy), body3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0.1-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 0 + (((tickAnim - 10) / 10) * (0-(0))); + yy = 0.1 + (((tickAnim - 10) / 10) * (0-(0.1))); + zz = 0 + (((tickAnim - 10) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.body3.rotationPointX = this.body3.rotationPointX + (float)(xx); + this.body3.rotationPointY = this.body3.rotationPointY - (float)(yy); + this.body3.rotationPointZ = this.body3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (30.13-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 8) { + xx = 30.13 + (((tickAnim - 5) / 3) * (29.44-(30.13))); + yy = 0 + (((tickAnim - 5) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 3) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 29.44 + (((tickAnim - 8) / 2) * (9.75-(29.44))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 9.75 + (((tickAnim - 10) / 10) * (0-(9.75))); + yy = 0 + (((tickAnim - 10) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 8) { + xx = 0 + (((tickAnim - 5) / 3) * (20.75-(0))); + yy = 0 + (((tickAnim - 5) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 3) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 20.75 + (((tickAnim - 8) / 2) * (0-(20.75))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animRoar(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraParringtonia entity = (EntityPrehistoricFloraParringtonia) entitylivingbaseIn; + int animCycle = 30; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 18) { + xx = -14.95+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50-30))*-30 + (((tickAnim - 0) / 18) * (-10.1-(-14.95+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50-30))*-30))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 30) { + xx = -10.1 + (((tickAnim - 18) / 12) * (0-(-10.1))); + yy = 0 + (((tickAnim - 18) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 12) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body3, body3.rotateAngleX + (float) Math.toRadians(xx), body3.rotateAngleY + (float) Math.toRadians(yy), body3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 12) { + xx = 0 + (((tickAnim - 0) / 12) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 12) * (0.325-(0))); + } + else if (tickAnim >= 12 && tickAnim < 30) { + xx = 0 + (((tickAnim - 12) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 12) / 18) * (0-(0))); + zz = 0.325 + (((tickAnim - 12) / 18) * (0-(0.325))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.body3.rotationPointX = this.body3.rotationPointX + (float)(xx); + this.body3.rotationPointY = this.body3.rotationPointY - (float)(yy); + this.body3.rotationPointZ = this.body3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (33.625+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-50-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 30) { + xx = 33.625+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-50 + (((tickAnim - 18) / 12) * (0-(33.625+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-50))); + yy = 0 + (((tickAnim - 18) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 12) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (62.85+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-90-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 21) { + xx = 62.85+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-90 + (((tickAnim - 18) / 3) * (0-(62.85+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-90))); + yy = 0 + (((tickAnim - 18) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 3) * (0-(0))); + } + else if (tickAnim >= 21 && tickAnim < 30) { + xx = 0 + (((tickAnim - 21) / 9) * (0-(0))); + yy = 0 + (((tickAnim - 21) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 21) / 9) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animNest(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraParringtonia entity = (EntityPrehistoricFloraParringtonia) entitylivingbaseIn; + int animCycle = 50; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 21) { + xx = 0 + (((tickAnim - 0) / 21) * (45.75-(0))); + yy = 0 + (((tickAnim - 0) / 21) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 21) * (0-(0))); + } + else if (tickAnim >= 21 && tickAnim < 33) { + xx = 45.75 + (((tickAnim - 21) / 12) * (-26.75-(45.75))); + yy = 0 + (((tickAnim - 21) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 21) / 12) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 38) { + xx = -26.75 + (((tickAnim - 33) / 5) * (-18.75-(-26.75))); + yy = 0 + (((tickAnim - 33) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 5) * (0-(0))); + } + else if (tickAnim >= 38 && tickAnim < 50) { + xx = -18.75 + (((tickAnim - 38) / 12) * (0-(-18.75))); + yy = 0 + (((tickAnim - 38) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 38) / 12) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 21) { + xx = 0 + (((tickAnim - 0) / 21) * (13-(0))); + yy = 0 + (((tickAnim - 0) / 21) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 21) * (0-(0))); + } + else if (tickAnim >= 21 && tickAnim < 33) { + xx = 13 + (((tickAnim - 21) / 12) * (6.58-(13))); + yy = 0 + (((tickAnim - 21) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 21) / 12) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 38) { + xx = 6.58 + (((tickAnim - 33) / 5) * (0-(6.58))); + yy = 0 + (((tickAnim - 33) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 5) * (0-(0))); + } + else if (tickAnim >= 38 && tickAnim < 50) { + xx = 0 + (((tickAnim - 38) / 12) * (0-(0))); + yy = 0 + (((tickAnim - 38) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 38) / 12) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 27) { + xx = 0 + (((tickAnim - 0) / 27) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 27) * (0.95-(0))); + zz = 0 + (((tickAnim - 0) / 27) * (0-(0))); + } + else if (tickAnim >= 27 && tickAnim < 33) { + xx = 0 + (((tickAnim - 27) / 6) * (0-(0))); + yy = 0.95 + (((tickAnim - 27) / 6) * (1.205-(0.95))); + zz = 0 + (((tickAnim - 27) / 6) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 38) { + xx = 0 + (((tickAnim - 33) / 5) * (0-(0))); + yy = 1.205 + (((tickAnim - 33) / 5) * (0-(1.205))); + zz = 0 + (((tickAnim - 33) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg2.rotationPointX = this.backLeftLeg2.rotationPointX + (float)(xx); + this.backLeftLeg2.rotationPointY = this.backLeftLeg2.rotationPointY - (float)(yy); + this.backLeftLeg2.rotationPointZ = this.backLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (1.96-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 21) { + xx = 1.96 + (((tickAnim - 8) / 13) * (71.5-(1.96))); + yy = 0 + (((tickAnim - 8) / 13) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 13) * (0-(0))); + } + else if (tickAnim >= 21 && tickAnim < 27) { + xx = 71.5 + (((tickAnim - 21) / 6) * (107.21-(71.5))); + yy = 0 + (((tickAnim - 21) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 21) / 6) * (0-(0))); + } + else if (tickAnim >= 27 && tickAnim < 33) { + xx = 107.21 + (((tickAnim - 27) / 6) * (71.92-(107.21))); + yy = 0 + (((tickAnim - 27) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 27) / 6) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 38) { + xx = 71.92 + (((tickAnim - 33) / 5) * (17.75-(71.92))); + yy = 0 + (((tickAnim - 33) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 5) * (0-(0))); + } + else if (tickAnim >= 38 && tickAnim < 50) { + xx = 17.75 + (((tickAnim - 38) / 12) * (0-(17.75))); + yy = 0 + (((tickAnim - 38) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 38) / 12) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg3, backLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 21) { + xx = 0 + (((tickAnim - 0) / 21) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 21) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 21) * (-0.225-(0))); + } + else if (tickAnim >= 21 && tickAnim < 27) { + xx = 0 + (((tickAnim - 21) / 6) * (0-(0))); + yy = 0 + (((tickAnim - 21) / 6) * (0.255-(0))); + zz = -0.225 + (((tickAnim - 21) / 6) * (-0.9-(-0.225))); + } + else if (tickAnim >= 27 && tickAnim < 33) { + xx = 0 + (((tickAnim - 27) / 6) * (0-(0))); + yy = 0.255 + (((tickAnim - 27) / 6) * (0-(0.255))); + zz = -0.9 + (((tickAnim - 27) / 6) * (-0.3-(-0.9))); + } + else if (tickAnim >= 33 && tickAnim < 38) { + xx = 0 + (((tickAnim - 33) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 33) / 5) * (-0.625-(0))); + zz = -0.3 + (((tickAnim - 33) / 5) * (0-(-0.3))); + } + else if (tickAnim >= 38 && tickAnim < 50) { + xx = 0 + (((tickAnim - 38) / 12) * (0-(0))); + yy = -0.625 + (((tickAnim - 38) / 12) * (0-(-0.625))); + zz = 0 + (((tickAnim - 38) / 12) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg3.rotationPointX = this.backLeftLeg3.rotationPointX + (float)(xx); + this.backLeftLeg3.rotationPointY = this.backLeftLeg3.rotationPointY - (float)(yy); + this.backLeftLeg3.rotationPointZ = this.backLeftLeg3.rotationPointZ + (float)(zz); + + } + public void animLay(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraParringtonia entity = (EntityPrehistoricFloraParringtonia) entitylivingbaseIn; + int animCycle = 50; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-9.25-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -9.25 + (((tickAnim - 18) / 15) * (-9.25-(-9.25))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -9.25 + (((tickAnim - 33) / 17) * (0-(-9.25))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(xx), main.rotateAngleY + (float) Math.toRadians(yy), main.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (-2.7-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 0 + (((tickAnim - 18) / 15) * (0-(0))); + yy = -2.7 + (((tickAnim - 18) / 15) * (-2.7-(-2.7))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 0 + (((tickAnim - 33) / 17) * (0-(0))); + yy = -2.7 + (((tickAnim - 33) / 17) * (0-(-2.7))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.main.rotationPointX = this.main.rotationPointX + (float)(xx); + this.main.rotationPointY = this.main.rotationPointY - (float)(yy); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-23.5-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (-6.75-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -23.5 + (((tickAnim - 18) / 15) * (-23.5-(-23.5))); + yy = -6.75 + (((tickAnim - 18) / 15) * (-6.75-(-6.75))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -23.5 + (((tickAnim - 33) / 17) * (0-(-23.5))); + yy = -6.75 + (((tickAnim - 33) / 17) * (0-(-6.75))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (42-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 42 + (((tickAnim - 18) / 15) * (42-(42))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 42 + (((tickAnim - 33) / 17) * (0-(42))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-8.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -8.75 + (((tickAnim - 18) / 15) * (-8.75-(-8.75))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -8.75 + (((tickAnim - 33) / 17) * (0-(-8.75))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg3, backLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0.65-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 0 + (((tickAnim - 18) / 15) * (0-(0))); + yy = 0.65 + (((tickAnim - 18) / 15) * (0.65-(0.65))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 0 + (((tickAnim - 33) / 17) * (0-(0))); + yy = 0.65 + (((tickAnim - 33) / 17) * (0-(0.65))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg3.rotationPointX = this.backLeftLeg3.rotationPointX + (float)(xx); + this.backLeftLeg3.rotationPointY = this.backLeftLeg3.rotationPointY - (float)(yy); + this.backLeftLeg3.rotationPointZ = this.backLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-23.5-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (6.75-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -23.5 + (((tickAnim - 18) / 15) * (-23.5-(-23.5))); + yy = 6.75 + (((tickAnim - 18) / 15) * (6.75-(6.75))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -23.5 + (((tickAnim - 33) / 17) * (0-(-23.5))); + yy = 6.75 + (((tickAnim - 33) / 17) * (0-(6.75))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg, backRightLeg.rotateAngleX + (float) Math.toRadians(xx), backRightLeg.rotateAngleY + (float) Math.toRadians(yy), backRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (42-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 42 + (((tickAnim - 18) / 15) * (42-(42))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 42 + (((tickAnim - 33) / 17) * (0-(42))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg2, backRightLeg2.rotateAngleX + (float) Math.toRadians(xx), backRightLeg2.rotateAngleY + (float) Math.toRadians(yy), backRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-8.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -8.75 + (((tickAnim - 18) / 15) * (-8.75-(-8.75))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -8.75 + (((tickAnim - 33) / 17) * (0-(-8.75))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg3, backRightLeg3.rotateAngleX + (float) Math.toRadians(xx), backRightLeg3.rotateAngleY + (float) Math.toRadians(yy), backRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0.65-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 0 + (((tickAnim - 18) / 15) * (0-(0))); + yy = 0.65 + (((tickAnim - 18) / 15) * (0.65-(0.65))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 0 + (((tickAnim - 33) / 17) * (0-(0))); + yy = 0.65 + (((tickAnim - 33) / 17) * (0-(0.65))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg3.rotationPointX = this.backRightLeg3.rotationPointX + (float)(xx); + this.backRightLeg3.rotationPointY = this.backRightLeg3.rotationPointY - (float)(yy); + this.backRightLeg3.rotationPointZ = this.backRightLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (5.5-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 18) { + xx = 5.5 + (((tickAnim - 8) / 10) * (8.75-(5.5))); + yy = 0 + (((tickAnim - 8) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 10) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 8.75 + (((tickAnim - 18) / 15) * (8.75-(8.75))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 8.75 + (((tickAnim - 33) / 17) * (0-(8.75))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(xx), tail.rotateAngleY + (float) Math.toRadians(yy), tail.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (-7.5-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 18) { + xx = -7.5 + (((tickAnim - 8) / 10) * (4.5-(-7.5))); + yy = 0 + (((tickAnim - 8) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 10) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 4.5 + (((tickAnim - 18) / 15) * (4.5-(4.5))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 38) { + xx = 4.5 + (((tickAnim - 33) / 5) * (-2.75-(4.5))); + yy = 0 + (((tickAnim - 33) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 5) * (0-(0))); + } + else if (tickAnim >= 38 && tickAnim < 50) { + xx = -2.75 + (((tickAnim - 38) / 12) * (0-(-2.75))); + yy = 0 + (((tickAnim - 38) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 38) / 12) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(xx), tail2.rotateAngleY + (float) Math.toRadians(yy), tail2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 38) { + xx = 0 + (((tickAnim - 0) / 38) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 38) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 38) * (0-(0))); + } + else if (tickAnim >= 38 && tickAnim < 43) { + xx = 0 + (((tickAnim - 38) / 5) * (-18.37465-(0))); + yy = 0 + (((tickAnim - 38) / 5) * (1.74056-(0))); + zz = 0 + (((tickAnim - 38) / 5) * (1.02689-(0))); + } + else if (tickAnim >= 43 && tickAnim < 50) { + xx = -18.37465 + (((tickAnim - 43) / 7) * (0-(-18.37465))); + yy = 1.74056 + (((tickAnim - 43) / 7) * (0-(1.74056))); + zz = 1.02689 + (((tickAnim - 43) / 7) * (0-(1.02689))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(xx), tail3.rotateAngleY + (float) Math.toRadians(yy), tail3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (17.5-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 17.5 + (((tickAnim - 18) / 15) * (17.5-(17.5))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 17.5 + (((tickAnim - 33) / 17) * (0-(17.5))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg, frontLeftLeg.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-20.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -20.75 + (((tickAnim - 18) / 15) * (-20.75-(-20.75))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -20.75 + (((tickAnim - 33) / 17) * (0-(-20.75))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg2, frontLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (13-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 13 + (((tickAnim - 18) / 15) * (13-(13))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 13 + (((tickAnim - 33) / 17) * (0-(13))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg3, frontLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (17.5-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 17.5 + (((tickAnim - 18) / 15) * (17.5-(17.5))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 17.5 + (((tickAnim - 33) / 17) * (0-(17.5))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg, frontRightLeg.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-20.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -20.75 + (((tickAnim - 18) / 15) * (-20.75-(-20.75))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -20.75 + (((tickAnim - 33) / 17) * (0-(-20.75))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg2, frontRightLeg2.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg2.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (13-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 13 + (((tickAnim - 18) / 15) * (13-(13))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 13 + (((tickAnim - 33) / 17) * (0-(13))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg3, frontRightLeg3.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg3.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animWalking(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraParringtonia entity = (EntityPrehistoricFloraParringtonia) entitylivingbaseIn; + int animCycle = 27; + double tickAnim = (entity.ticksExisted + entity.getTickOffset()) - (int) (Math.floor((double) (entity.ticksExisted + entity.getTickOffset()) / (double) animCycle) * (double) animCycle) + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262/0.5-50))*2), main.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262-100))*2), main.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262-50))*4)); + this.main.rotationPointX = this.main.rotationPointX + (float)(0); + this.main.rotationPointY = this.main.rotationPointY - (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262/0.5-70))*0.5); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262/0.5-20))*-0.3); + + + + if (tickAnim >= 0 && tickAnim < 14) { + xx = 30.75 + (((tickAnim - 0) / 14) * (-16.99894-(30.75))); + yy = 0 + (((tickAnim - 0) / 14) * (-0.31296-(0))); + zz = 0 + (((tickAnim - 0) / 14) * (-0.38995-(0))); + } + else if (tickAnim >= 14 && tickAnim < 28) { + xx = -16.99894 + (((tickAnim - 14) / 14) * (30.75-(-16.99894))); + yy = -0.31296 + (((tickAnim - 14) / 14) * (0-(-0.31296))); + zz = -0.38995 + (((tickAnim - 14) / 14) * (0-(-0.38995))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 20.25 + (((tickAnim - 0) / 3) * (30.815-(20.25))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 10) { + xx = 30.815 + (((tickAnim - 3) / 7) * (-15.65-(30.815))); + yy = 0 + (((tickAnim - 3) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 7) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 14) { + xx = -15.65 + (((tickAnim - 10) / 4) * (9-(-15.65))); + yy = 0 + (((tickAnim - 10) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 4) * (0-(0))); + } + else if (tickAnim >= 14 && tickAnim < 28) { + xx = 9 + (((tickAnim - 14) / 14) * (20.25-(9))); + yy = 0 + (((tickAnim - 14) / 14) * (0-(0))); + zz = 0 + (((tickAnim - 14) / 14) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 10) { + xx = 0 + (((tickAnim - 3) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 3) / 7) * (1.605-(0))); + zz = 0 + (((tickAnim - 3) / 7) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 14) { + xx = 0 + (((tickAnim - 10) / 4) * (0-(0))); + yy = 1.605 + (((tickAnim - 10) / 4) * (-0.325-(1.605))); + zz = 0 + (((tickAnim - 10) / 4) * (0-(0))); + } + else if (tickAnim >= 14 && tickAnim < 28) { + xx = 0 + (((tickAnim - 14) / 14) * (0-(0))); + yy = -0.325 + (((tickAnim - 14) / 14) * (0-(-0.325))); + zz = 0 + (((tickAnim - 14) / 14) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg2.rotationPointX = this.backLeftLeg2.rotationPointX + (float)(xx); + this.backLeftLeg2.rotationPointY = this.backLeftLeg2.rotationPointY - (float)(yy); + this.backLeftLeg2.rotationPointZ = this.backLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 36.75 + (((tickAnim - 0) / 3) * (66.06-(36.75))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 8) { + xx = 66.06 + (((tickAnim - 3) / 5) * (17.26-(66.06))); + yy = 0 + (((tickAnim - 3) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 5) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 14) { + xx = 17.26 + (((tickAnim - 8) / 6) * (8-(17.26))); + yy = 0 + (((tickAnim - 8) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 6) * (0-(0))); + } + else if (tickAnim >= 14 && tickAnim < 18) { + xx = 8 + (((tickAnim - 14) / 4) * (-11.67-(8))); + yy = 0 + (((tickAnim - 14) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 14) / 4) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 28) { + xx = -11.67 + (((tickAnim - 18) / 10) * (36.75-(-11.67))); + yy = 0 + (((tickAnim - 18) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg3, backLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 0.175 + (((tickAnim - 0) / 3) * (0.49-(0.175))); + zz = -0.1 + (((tickAnim - 0) / 3) * (-0.205-(-0.1))); + } + else if (tickAnim >= 3 && tickAnim < 8) { + xx = 0 + (((tickAnim - 3) / 5) * (0-(0))); + yy = 0.49 + (((tickAnim - 3) / 5) * (-0.155-(0.49))); + zz = -0.205 + (((tickAnim - 3) / 5) * (-0.09-(-0.205))); + } + else if (tickAnim >= 8 && tickAnim < 14) { + xx = 0 + (((tickAnim - 8) / 6) * (0-(0))); + yy = -0.155 + (((tickAnim - 8) / 6) * (0.05-(-0.155))); + zz = -0.09 + (((tickAnim - 8) / 6) * (0-(-0.09))); + } + else if (tickAnim >= 14 && tickAnim < 18) { + xx = 0 + (((tickAnim - 14) / 4) * (0-(0))); + yy = 0.05 + (((tickAnim - 14) / 4) * (-0.755-(0.05))); + zz = 0 + (((tickAnim - 14) / 4) * (-0.03-(0))); + } + else if (tickAnim >= 18 && tickAnim < 28) { + xx = 0 + (((tickAnim - 18) / 10) * (0-(0))); + yy = -0.755 + (((tickAnim - 18) / 10) * (0.175-(-0.755))); + zz = -0.03 + (((tickAnim - 18) / 10) * (-0.1-(-0.03))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg3.rotationPointX = this.backLeftLeg3.rotationPointX + (float)(xx); + this.backLeftLeg3.rotationPointY = this.backLeftLeg3.rotationPointY - (float)(yy); + this.backLeftLeg3.rotationPointZ = this.backLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 14) { + xx = -16.99894 + (((tickAnim - 0) / 14) * (30.75-(-16.99894))); + yy = 0.31296 + (((tickAnim - 0) / 14) * (0-(0.31296))); + zz = 0.38995 + (((tickAnim - 0) / 14) * (0-(0.38995))); + } + else if (tickAnim >= 14 && tickAnim < 28) { + xx = 30.75 + (((tickAnim - 14) / 14) * (-16.99894-(30.75))); + yy = 0 + (((tickAnim - 14) / 14) * (0.31296-(0))); + zz = 0 + (((tickAnim - 14) / 14) * (0.38995-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg, backRightLeg.rotateAngleX + (float) Math.toRadians(xx), backRightLeg.rotateAngleY + (float) Math.toRadians(yy), backRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 14) { + xx = 9 + (((tickAnim - 0) / 14) * (20.25-(9))); + yy = 0 + (((tickAnim - 0) / 14) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 14) * (0-(0))); + } + else if (tickAnim >= 14 && tickAnim < 18) { + xx = 20.25 + (((tickAnim - 14) / 4) * (30.815-(20.25))); + yy = 0 + (((tickAnim - 14) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 14) / 4) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 24) { + xx = 30.815 + (((tickAnim - 18) / 6) * (-15.65-(30.815))); + yy = 0 + (((tickAnim - 18) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 6) * (0-(0))); + } + else if (tickAnim >= 24 && tickAnim < 28) { + xx = -15.65 + (((tickAnim - 24) / 4) * (9-(-15.65))); + yy = 0 + (((tickAnim - 24) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 24) / 4) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg2, backRightLeg2.rotateAngleX + (float) Math.toRadians(xx), backRightLeg2.rotateAngleY + (float) Math.toRadians(yy), backRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (0-(0))); + yy = -0.325 + (((tickAnim - 0) / 5) * (-0.295-(-0.325))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 14) { + xx = 0 + (((tickAnim - 5) / 9) * (0-(0))); + yy = -0.295 + (((tickAnim - 5) / 9) * (0-(-0.295))); + zz = 0 + (((tickAnim - 5) / 9) * (0-(0))); + } + else if (tickAnim >= 14 && tickAnim < 18) { + xx = 0 + (((tickAnim - 14) / 4) * (0-(0))); + yy = 0 + (((tickAnim - 14) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 14) / 4) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 24) { + xx = 0 + (((tickAnim - 18) / 6) * (0-(0))); + yy = 0 + (((tickAnim - 18) / 6) * (1.605-(0))); + zz = 0 + (((tickAnim - 18) / 6) * (0-(0))); + } + else if (tickAnim >= 24 && tickAnim < 28) { + xx = 0 + (((tickAnim - 24) / 4) * (0-(0))); + yy = 1.605 + (((tickAnim - 24) / 4) * (-0.325-(1.605))); + zz = 0 + (((tickAnim - 24) / 4) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg2.rotationPointX = this.backRightLeg2.rotationPointX + (float)(xx); + this.backRightLeg2.rotationPointY = this.backRightLeg2.rotationPointY - (float)(yy); + this.backRightLeg2.rotationPointZ = this.backRightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 8 + (((tickAnim - 0) / 5) * (-11.67-(8))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 14) { + xx = -11.67 + (((tickAnim - 5) / 9) * (36.75-(-11.67))); + yy = 0 + (((tickAnim - 5) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 9) * (0-(0))); + } + else if (tickAnim >= 14 && tickAnim < 18) { + xx = 36.75 + (((tickAnim - 14) / 4) * (66.06-(36.75))); + yy = 0 + (((tickAnim - 14) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 14) / 4) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 22) { + xx = 66.06 + (((tickAnim - 18) / 4) * (18.26-(66.06))); + yy = 0 + (((tickAnim - 18) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 4) * (0-(0))); + } + else if (tickAnim >= 22 && tickAnim < 28) { + xx = 18.26 + (((tickAnim - 22) / 6) * (8-(18.26))); + yy = 0 + (((tickAnim - 22) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 22) / 6) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg3, backRightLeg3.rotateAngleX + (float) Math.toRadians(xx), backRightLeg3.rotateAngleY + (float) Math.toRadians(yy), backRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (0-(0))); + yy = 0.1 + (((tickAnim - 0) / 5) * (-0.605-(0.1))); + zz = 0 + (((tickAnim - 0) / 5) * (-0.03-(0))); + } + else if (tickAnim >= 5 && tickAnim < 14) { + xx = 0 + (((tickAnim - 5) / 9) * (0-(0))); + yy = -0.605 + (((tickAnim - 5) / 9) * (0.175-(-0.605))); + zz = -0.03 + (((tickAnim - 5) / 9) * (-0.1-(-0.03))); + } + else if (tickAnim >= 14 && tickAnim < 18) { + xx = 0 + (((tickAnim - 14) / 4) * (0-(0))); + yy = 0.175 + (((tickAnim - 14) / 4) * (0.49-(0.175))); + zz = -0.1 + (((tickAnim - 14) / 4) * (-0.205-(-0.1))); + } + else if (tickAnim >= 18 && tickAnim < 22) { + xx = 0 + (((tickAnim - 18) / 4) * (0-(0))); + yy = 0.49 + (((tickAnim - 18) / 4) * (-0.155-(0.49))); + zz = -0.205 + (((tickAnim - 18) / 4) * (-0.09-(-0.205))); + } + else if (tickAnim >= 22 && tickAnim < 28) { + xx = 0 + (((tickAnim - 22) / 6) * (0-(0))); + yy = -0.155 + (((tickAnim - 22) / 6) * (0.1-(-0.155))); + zz = -0.09 + (((tickAnim - 22) / 6) * (0-(-0.09))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg3.rotationPointX = this.backRightLeg3.rotationPointX + (float)(xx); + this.backRightLeg3.rotationPointY = this.backRightLeg3.rotationPointY - (float)(yy); + this.backRightLeg3.rotationPointZ = this.backRightLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262/0.5))*-4), tail.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262-50))*4), tail.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262-50))*4)); + + + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262/0.5-50))*-4), tail2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262-100))*8), tail2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262-100))*4)); + + + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262/0.5-100))*-4), tail3.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262-150))*12), tail3.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262-150))*4)); + + + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262/0.5-150))*-4), tail4.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262-200))*16), tail4.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262-200))*4)); + + + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262/0.5-150))*2), body.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262-250))*2), body.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262-100))*-8)); + + + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262/0.5-250))*3), body2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262-250))*-2), body2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262-150))*8)); + + + + if (tickAnim >= 0 && tickAnim < 14) { + xx = -37.75 + (((tickAnim - 0) / 14) * (21.75-(-37.75))); + yy = 0 + (((tickAnim - 0) / 14) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 14) * (0-(0))); + } + else if (tickAnim >= 14 && tickAnim < 21) { + xx = 21.75 + (((tickAnim - 14) / 7) * (-10.35594-(21.75))); + yy = 0 + (((tickAnim - 14) / 7) * (10.75751-(0))); + zz = 0 + (((tickAnim - 14) / 7) * (-24.63895-(0))); + } + else if (tickAnim >= 21 && tickAnim < 28) { + xx = -10.35594 + (((tickAnim - 21) / 7) * (-37.75-(-10.35594))); + yy = 10.75751 + (((tickAnim - 21) / 7) * (0-(10.75751))); + zz = -24.63895 + (((tickAnim - 21) / 7) * (0-(-24.63895))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg, frontLeftLeg.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 14) { + xx = -2.75 + (((tickAnim - 0) / 14) * (6.5-(-2.75))); + yy = 0 + (((tickAnim - 0) / 14) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 14) * (0-(0))); + } + else if (tickAnim >= 14 && tickAnim < 21) { + xx = 6.5 + (((tickAnim - 14) / 7) * (-37.87-(6.5))); + yy = 0 + (((tickAnim - 14) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 14) / 7) * (0-(0))); + } + else if (tickAnim >= 21 && tickAnim < 28) { + xx = -37.87 + (((tickAnim - 21) / 7) * (-2.75-(-37.87))); + yy = 0 + (((tickAnim - 21) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 21) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg2, frontLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 37.25 + (((tickAnim - 0) / 7) * (3.63-(37.25))); + yy = 0 + (((tickAnim - 0) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 14) { + xx = 3.63 + (((tickAnim - 7) / 7) * (51-(3.63))); + yy = 0 + (((tickAnim - 7) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 7) * (0-(0))); + } + else if (tickAnim >= 14 && tickAnim < 21) { + xx = 51 + (((tickAnim - 14) / 7) * (79.41239-(51))); + yy = 0 + (((tickAnim - 14) / 7) * (-8.00667-(0))); + zz = 0 + (((tickAnim - 14) / 7) * (-11.21506-(0))); + } + else if (tickAnim >= 21 && tickAnim < 28) { + xx = 79.41239 + (((tickAnim - 21) / 7) * (37.25-(79.41239))); + yy = -8.00667 + (((tickAnim - 21) / 7) * (0-(-8.00667))); + zz = -11.21506 + (((tickAnim - 21) / 7) * (0-(-11.21506))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg3, frontLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 0 + (((tickAnim - 0) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 7) * (-0.07-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (0.275-(0))); + } + else if (tickAnim >= 7 && tickAnim < 14) { + xx = 0 + (((tickAnim - 7) / 7) * (0-(0))); + yy = -0.07 + (((tickAnim - 7) / 7) * (-0.15-(-0.07))); + zz = 0.275 + (((tickAnim - 7) / 7) * (0-(0.275))); + } + else if (tickAnim >= 14 && tickAnim < 16) { + xx = 0 + (((tickAnim - 14) / 2) * (0-(0))); + yy = -0.15 + (((tickAnim - 14) / 2) * (-0.34-(-0.15))); + zz = 0 + (((tickAnim - 14) / 2) * (-0.725-(0))); + } + else if (tickAnim >= 16 && tickAnim < 21) { + xx = 0 + (((tickAnim - 16) / 5) * (0-(0))); + yy = -0.34 + (((tickAnim - 16) / 5) * (-0.72-(-0.34))); + zz = -0.725 + (((tickAnim - 16) / 5) * (0-(-0.725))); + } + else if (tickAnim >= 21 && tickAnim < 28) { + xx = 0 + (((tickAnim - 21) / 7) * (0-(0))); + yy = -0.72 + (((tickAnim - 21) / 7) * (0-(-0.72))); + zz = 0 + (((tickAnim - 21) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg3.rotationPointX = this.frontLeftLeg3.rotationPointX + (float)(xx); + this.frontLeftLeg3.rotationPointY = this.frontLeftLeg3.rotationPointY - (float)(yy); + this.frontLeftLeg3.rotationPointZ = this.frontLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 21.75 + (((tickAnim - 0) / 7) * (-10.35594-(21.75))); + yy = 0 + (((tickAnim - 0) / 7) * (-10.75751-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (24.63895-(0))); + } + else if (tickAnim >= 7 && tickAnim < 14) { + xx = -10.35594 + (((tickAnim - 7) / 7) * (-37.75-(-10.35594))); + yy = -10.75751 + (((tickAnim - 7) / 7) * (0-(-10.75751))); + zz = 24.63895 + (((tickAnim - 7) / 7) * (0-(24.63895))); + } + else if (tickAnim >= 14 && tickAnim < 28) { + xx = -37.75 + (((tickAnim - 14) / 14) * (21.75-(-37.75))); + yy = 0 + (((tickAnim - 14) / 14) * (0-(0))); + zz = 0 + (((tickAnim - 14) / 14) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg, frontRightLeg.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 6.5 + (((tickAnim - 0) / 7) * (-37.87-(6.5))); + yy = 0 + (((tickAnim - 0) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 14) { + xx = -37.87 + (((tickAnim - 7) / 7) * (-2.75-(-37.87))); + yy = 0 + (((tickAnim - 7) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 7) * (0-(0))); + } + else if (tickAnim >= 14 && tickAnim < 28) { + xx = -2.75 + (((tickAnim - 14) / 14) * (6.5-(-2.75))); + yy = 0 + (((tickAnim - 14) / 14) * (0-(0))); + zz = 0 + (((tickAnim - 14) / 14) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg2, frontRightLeg2.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg2.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 51 + (((tickAnim - 0) / 7) * (79.41239-(51))); + yy = 0 + (((tickAnim - 0) / 7) * (8.00667-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (11.21506-(0))); + } + else if (tickAnim >= 7 && tickAnim < 14) { + xx = 79.41239 + (((tickAnim - 7) / 7) * (37.25-(79.41239))); + yy = 8.00667 + (((tickAnim - 7) / 7) * (0-(8.00667))); + zz = 11.21506 + (((tickAnim - 7) / 7) * (0-(11.21506))); + } + else if (tickAnim >= 14 && tickAnim < 21) { + xx = 37.25 + (((tickAnim - 14) / 7) * (5.38-(37.25))); + yy = 0 + (((tickAnim - 14) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 14) / 7) * (0-(0))); + } + else if (tickAnim >= 21 && tickAnim < 28) { + xx = 5.38 + (((tickAnim - 21) / 7) * (51-(5.38))); + yy = 0 + (((tickAnim - 21) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 21) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg3, frontRightLeg3.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg3.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = -0.15 + (((tickAnim - 0) / 3) * (-0.34-(-0.15))); + zz = 0 + (((tickAnim - 0) / 3) * (-0.725-(0))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = 0 + (((tickAnim - 3) / 4) * (0-(0))); + yy = -0.34 + (((tickAnim - 3) / 4) * (-0.72-(-0.34))); + zz = -0.725 + (((tickAnim - 3) / 4) * (-0.625-(-0.725))); + } + else if (tickAnim >= 7 && tickAnim < 14) { + xx = 0 + (((tickAnim - 7) / 7) * (0-(0))); + yy = -0.72 + (((tickAnim - 7) / 7) * (0-(-0.72))); + zz = -0.625 + (((tickAnim - 7) / 7) * (0-(-0.625))); + } + else if (tickAnim >= 14 && tickAnim < 28) { + xx = 0 + (((tickAnim - 14) / 14) * (0-(0))); + yy = 0 + (((tickAnim - 14) / 14) * (-0.15-(0))); + zz = 0 + (((tickAnim - 14) / 14) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg3.rotationPointX = this.frontRightLeg3.rotationPointX + (float)(xx); + this.frontRightLeg3.rotationPointY = this.frontRightLeg3.rotationPointY - (float)(yy); + this.frontRightLeg3.rotationPointZ = this.frontRightLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(body3, body3.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262/0.5-350))*3), body3.rotateAngleY + (float) Math.toRadians(0), body3.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262-150))*-8)); + + + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262/0.5-300))*-5), head.rotateAngleY + (float) Math.toRadians(0), head.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*262-250))*-5)); + + } + public void animRunning(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraParringtonia entity = (EntityPrehistoricFloraParringtonia) entitylivingbaseIn; + int animCycle = 10; + double tickAnim = (entity.ticksExisted + entity.getTickOffset()) - (int) (Math.floor((double) (entity.ticksExisted + entity.getTickOffset()) / (double) animCycle) * (double) animCycle) + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666/0.5-50))*4), main.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666-120))*6), main.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666-50))*8)); + this.main.rotationPointX = this.main.rotationPointX + (float)(0); + this.main.rotationPointY = this.main.rotationPointY - (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666/0.5-70))*0.7); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666/0.5-20))*-0.5); + + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = 30.75 + (((tickAnim - 0) / 6) * (-16.99894-(30.75))); + yy = 0 + (((tickAnim - 0) / 6) * (-0.31296-(0))); + zz = 0 + (((tickAnim - 0) / 6) * (-0.38995-(0))); + } + else if (tickAnim >= 6 && tickAnim < 11) { + xx = -16.99894 + (((tickAnim - 6) / 5) * (30.75-(-16.99894))); + yy = -0.31296 + (((tickAnim - 6) / 5) * (0-(-0.31296))); + zz = -0.38995 + (((tickAnim - 6) / 5) * (0-(-0.38995))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 20.25 + (((tickAnim - 0) / 2) * (30.815-(20.25))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 4) { + xx = 30.815 + (((tickAnim - 2) / 2) * (-15.65-(30.815))); + yy = 0 + (((tickAnim - 2) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 2) * (0-(0))); + } + else if (tickAnim >= 4 && tickAnim < 6) { + xx = -15.65 + (((tickAnim - 4) / 2) * (9-(-15.65))); + yy = 0 + (((tickAnim - 4) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 4) / 2) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 11) { + xx = 9 + (((tickAnim - 6) / 5) * (20.25-(9))); + yy = 0 + (((tickAnim - 6) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 4) { + xx = 0 + (((tickAnim - 2) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 2) / 2) * (1.605-(0))); + zz = 0 + (((tickAnim - 2) / 2) * (0-(0))); + } + else if (tickAnim >= 4 && tickAnim < 6) { + xx = 0 + (((tickAnim - 4) / 2) * (0-(0))); + yy = 1.605 + (((tickAnim - 4) / 2) * (-0.325-(1.605))); + zz = 0 + (((tickAnim - 4) / 2) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 11) { + xx = 0 + (((tickAnim - 6) / 5) * (0-(0))); + yy = -0.325 + (((tickAnim - 6) / 5) * (0-(-0.325))); + zz = 0 + (((tickAnim - 6) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg2.rotationPointX = this.backLeftLeg2.rotationPointX + (float)(xx); + this.backLeftLeg2.rotationPointY = this.backLeftLeg2.rotationPointY - (float)(yy); + this.backLeftLeg2.rotationPointZ = this.backLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 36.75 + (((tickAnim - 0) / 2) * (66.06-(36.75))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 3) { + xx = 66.06 + (((tickAnim - 2) / 1) * (17.26-(66.06))); + yy = 0 + (((tickAnim - 2) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 1) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 17.26 + (((tickAnim - 3) / 3) * (8-(17.26))); + yy = 0 + (((tickAnim - 3) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 3) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 8 + (((tickAnim - 6) / 2) * (-11.67-(8))); + yy = 0 + (((tickAnim - 6) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 2) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 11) { + xx = -11.67 + (((tickAnim - 8) / 3) * (36.75-(-11.67))); + yy = 0 + (((tickAnim - 8) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg3, backLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0.175 + (((tickAnim - 0) / 2) * (0.49-(0.175))); + zz = -0.1 + (((tickAnim - 0) / 2) * (-0.205-(-0.1))); + } + else if (tickAnim >= 2 && tickAnim < 3) { + xx = 0 + (((tickAnim - 2) / 1) * (0-(0))); + yy = 0.49 + (((tickAnim - 2) / 1) * (-0.155-(0.49))); + zz = -0.205 + (((tickAnim - 2) / 1) * (-0.09-(-0.205))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 0 + (((tickAnim - 3) / 3) * (0-(0))); + yy = -0.155 + (((tickAnim - 3) / 3) * (0.05-(-0.155))); + zz = -0.09 + (((tickAnim - 3) / 3) * (0-(-0.09))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 0 + (((tickAnim - 6) / 2) * (0-(0))); + yy = 0.05 + (((tickAnim - 6) / 2) * (-0.755-(0.05))); + zz = 0 + (((tickAnim - 6) / 2) * (-0.03-(0))); + } + else if (tickAnim >= 8 && tickAnim < 11) { + xx = 0 + (((tickAnim - 8) / 3) * (0-(0))); + yy = -0.755 + (((tickAnim - 8) / 3) * (0.175-(-0.755))); + zz = -0.03 + (((tickAnim - 8) / 3) * (-0.1-(-0.03))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg3.rotationPointX = this.backLeftLeg3.rotationPointX + (float)(xx); + this.backLeftLeg3.rotationPointY = this.backLeftLeg3.rotationPointY - (float)(yy); + this.backLeftLeg3.rotationPointZ = this.backLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = -16.99894 + (((tickAnim - 0) / 6) * (30.75-(-16.99894))); + yy = 0.31296 + (((tickAnim - 0) / 6) * (0-(0.31296))); + zz = 0.38995 + (((tickAnim - 0) / 6) * (0-(0.38995))); + } + else if (tickAnim >= 6 && tickAnim < 11) { + xx = 30.75 + (((tickAnim - 6) / 5) * (-16.99894-(30.75))); + yy = 0 + (((tickAnim - 6) / 5) * (0.31296-(0))); + zz = 0 + (((tickAnim - 6) / 5) * (0.38995-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg, backRightLeg.rotateAngleX + (float) Math.toRadians(xx), backRightLeg.rotateAngleY + (float) Math.toRadians(yy), backRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = 9 + (((tickAnim - 0) / 6) * (20.25-(9))); + yy = 0 + (((tickAnim - 0) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 6) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 7) { + xx = 20.25 + (((tickAnim - 6) / 1) * (30.815-(20.25))); + yy = 0 + (((tickAnim - 6) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 1) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = 30.815 + (((tickAnim - 7) / 3) * (-15.65-(30.815))); + yy = 0 + (((tickAnim - 7) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 3) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 11) { + xx = -15.65 + (((tickAnim - 10) / 1) * (9-(-15.65))); + yy = 0 + (((tickAnim - 10) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 1) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg2, backRightLeg2.rotateAngleX + (float) Math.toRadians(xx), backRightLeg2.rotateAngleY + (float) Math.toRadians(yy), backRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = -0.325 + (((tickAnim - 0) / 2) * (-0.295-(-0.325))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 6) { + xx = 0 + (((tickAnim - 2) / 4) * (0-(0))); + yy = -0.295 + (((tickAnim - 2) / 4) * (0-(-0.295))); + zz = 0 + (((tickAnim - 2) / 4) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 7) { + xx = 0 + (((tickAnim - 6) / 1) * (0-(0))); + yy = 0 + (((tickAnim - 6) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 1) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = 0 + (((tickAnim - 7) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 7) / 3) * (1.605-(0))); + zz = 0 + (((tickAnim - 7) / 3) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 11) { + xx = 0 + (((tickAnim - 10) / 1) * (0-(0))); + yy = 1.605 + (((tickAnim - 10) / 1) * (-0.325-(1.605))); + zz = 0 + (((tickAnim - 10) / 1) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg2.rotationPointX = this.backRightLeg2.rotationPointX + (float)(xx); + this.backRightLeg2.rotationPointY = this.backRightLeg2.rotationPointY - (float)(yy); + this.backRightLeg2.rotationPointZ = this.backRightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 8 + (((tickAnim - 0) / 2) * (-11.67-(8))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 6) { + xx = -11.67 + (((tickAnim - 2) / 4) * (36.75-(-11.67))); + yy = 0 + (((tickAnim - 2) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 4) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 7) { + xx = 36.75 + (((tickAnim - 6) / 1) * (66.06-(36.75))); + yy = 0 + (((tickAnim - 6) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 1) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 66.06 + (((tickAnim - 7) / 1) * (18.26-(66.06))); + yy = 0 + (((tickAnim - 7) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 1) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 11) { + xx = 18.26 + (((tickAnim - 8) / 3) * (8-(18.26))); + yy = 0 + (((tickAnim - 8) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg3, backRightLeg3.rotateAngleX + (float) Math.toRadians(xx), backRightLeg3.rotateAngleY + (float) Math.toRadians(yy), backRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0.1 + (((tickAnim - 0) / 2) * (-0.605-(0.1))); + zz = 0 + (((tickAnim - 0) / 2) * (-0.03-(0))); + } + else if (tickAnim >= 2 && tickAnim < 6) { + xx = 0 + (((tickAnim - 2) / 4) * (0-(0))); + yy = -0.605 + (((tickAnim - 2) / 4) * (0.175-(-0.605))); + zz = -0.03 + (((tickAnim - 2) / 4) * (-0.1-(-0.03))); + } + else if (tickAnim >= 6 && tickAnim < 7) { + xx = 0 + (((tickAnim - 6) / 1) * (0-(0))); + yy = 0.175 + (((tickAnim - 6) / 1) * (0.49-(0.175))); + zz = -0.1 + (((tickAnim - 6) / 1) * (-0.205-(-0.1))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 0 + (((tickAnim - 7) / 1) * (0-(0))); + yy = 0.49 + (((tickAnim - 7) / 1) * (-0.155-(0.49))); + zz = -0.205 + (((tickAnim - 7) / 1) * (-0.09-(-0.205))); + } + else if (tickAnim >= 8 && tickAnim < 11) { + xx = 0 + (((tickAnim - 8) / 3) * (0-(0))); + yy = -0.155 + (((tickAnim - 8) / 3) * (0.1-(-0.155))); + zz = -0.09 + (((tickAnim - 8) / 3) * (0-(-0.09))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg3.rotationPointX = this.backRightLeg3.rotationPointX + (float)(xx); + this.backRightLeg3.rotationPointY = this.backRightLeg3.rotationPointY - (float)(yy); + this.backRightLeg3.rotationPointZ = this.backRightLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666/0.5))*-8), tail.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666-50))*8), tail.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666-50))*4)); + + + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666/0.5-50))*-8), tail2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666-100))*12), tail2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666-100))*4)); + + + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666/0.5-100))*-8), tail3.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666-150))*16), tail3.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666-150))*4)); + + + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666/0.5-150))*-8), tail4.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666-200))*20), tail4.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666-200))*4)); + + + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666/0.5-150))*4), body.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666-250))*6), body.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666-100))*-12)); + + + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666/0.5-250))*5), body2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666-250))*-6), body2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666-150))*12)); + + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = -59.25 + (((tickAnim - 0) / 6) * (32.25-(-59.25))); + yy = 0 + (((tickAnim - 0) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 6) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 9) { + xx = 32.25 + (((tickAnim - 6) / 3) * (-35.48696-(32.25))); + yy = 0 + (((tickAnim - 6) / 3) * (10.75751-(0))); + zz = 0 + (((tickAnim - 6) / 3) * (-24.63895-(0))); + } + else if (tickAnim >= 9 && tickAnim < 11) { + xx = -35.48696 + (((tickAnim - 9) / 2) * (-59.25-(-35.48696))); + yy = 10.75751 + (((tickAnim - 9) / 2) * (0-(10.75751))); + zz = -24.63895 + (((tickAnim - 9) / 2) * (0-(-24.63895))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg, frontLeftLeg.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = 21.5 + (((tickAnim - 0) / 6) * (6.5-(21.5))); + yy = 0 + (((tickAnim - 0) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 6) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 6.5 + (((tickAnim - 6) / 2) * (-37.87-(6.5))); + yy = 0 + (((tickAnim - 6) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 2) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 9) { + xx = -37.87 + (((tickAnim - 8) / 1) * (-37.87-(-37.87))); + yy = 0 + (((tickAnim - 8) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 1) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 11) { + xx = -37.87 + (((tickAnim - 9) / 2) * (21.5-(-37.87))); + yy = 0 + (((tickAnim - 9) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 9) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg2, frontLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 37.25 + (((tickAnim - 0) / 3) * (3.63-(37.25))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 3.63 + (((tickAnim - 3) / 3) * (51-(3.63))); + yy = 0 + (((tickAnim - 3) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 3) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 51 + (((tickAnim - 6) / 2) * (79.41239-(51))); + yy = 0 + (((tickAnim - 6) / 2) * (-8.00667-(0))); + zz = 0 + (((tickAnim - 6) / 2) * (-11.21506-(0))); + } + else if (tickAnim >= 8 && tickAnim < 11) { + xx = 79.41239 + (((tickAnim - 8) / 3) * (37.25-(79.41239))); + yy = -8.00667 + (((tickAnim - 8) / 3) * (0-(-8.00667))); + zz = -11.21506 + (((tickAnim - 8) / 3) * (0-(-11.21506))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg3, frontLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (-0.07-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0.275-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 0 + (((tickAnim - 3) / 3) * (0-(0))); + yy = -0.07 + (((tickAnim - 3) / 3) * (-0.15-(-0.07))); + zz = 0.275 + (((tickAnim - 3) / 3) * (0-(0.275))); + } + else if (tickAnim >= 6 && tickAnim < 7) { + xx = 0 + (((tickAnim - 6) / 1) * (0-(0))); + yy = -0.15 + (((tickAnim - 6) / 1) * (-0.34-(-0.15))); + zz = 0 + (((tickAnim - 6) / 1) * (-0.725-(0))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 0 + (((tickAnim - 7) / 1) * (0-(0))); + yy = -0.34 + (((tickAnim - 7) / 1) * (-0.72-(-0.34))); + zz = -0.725 + (((tickAnim - 7) / 1) * (0-(-0.725))); + } + else if (tickAnim >= 8 && tickAnim < 11) { + xx = 0 + (((tickAnim - 8) / 3) * (0-(0))); + yy = -0.72 + (((tickAnim - 8) / 3) * (0-(-0.72))); + zz = 0 + (((tickAnim - 8) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg3.rotationPointX = this.frontLeftLeg3.rotationPointX + (float)(xx); + this.frontLeftLeg3.rotationPointY = this.frontLeftLeg3.rotationPointY - (float)(yy); + this.frontLeftLeg3.rotationPointZ = this.frontLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 29.5 + (((tickAnim - 0) / 3) * (-35.48696-(29.5))); + yy = 0 + (((tickAnim - 0) / 3) * (-10.75751-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (24.63895-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = -35.48696 + (((tickAnim - 3) / 3) * (-59.25-(-35.48696))); + yy = -10.75751 + (((tickAnim - 3) / 3) * (0-(-10.75751))); + zz = 24.63895 + (((tickAnim - 3) / 3) * (0-(24.63895))); + } + else if (tickAnim >= 6 && tickAnim < 11) { + xx = -59.25 + (((tickAnim - 6) / 5) * (29.5-(-59.25))); + yy = 0 + (((tickAnim - 6) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg, frontRightLeg.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 6.5 + (((tickAnim - 0) / 3) * (-37.87-(6.5))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 3) { + xx = -37.87 + (((tickAnim - 3) / 0) * (-37.87-(-37.87))); + yy = 0 + (((tickAnim - 3) / 0) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 0) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = -37.87 + (((tickAnim - 3) / 3) * (27.75-(-37.87))); + yy = 0 + (((tickAnim - 3) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 3) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 11) { + xx = 27.75 + (((tickAnim - 6) / 5) * (6.5-(27.75))); + yy = 0 + (((tickAnim - 6) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg2, frontRightLeg2.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg2.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 51 + (((tickAnim - 0) / 3) * (79.41239-(51))); + yy = 0 + (((tickAnim - 0) / 3) * (8.00667-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (11.21506-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 79.41239 + (((tickAnim - 3) / 3) * (37.25-(79.41239))); + yy = 8.00667 + (((tickAnim - 3) / 3) * (0-(8.00667))); + zz = 11.21506 + (((tickAnim - 3) / 3) * (0-(11.21506))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 37.25 + (((tickAnim - 6) / 2) * (5.38-(37.25))); + yy = 0 + (((tickAnim - 6) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 2) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 11) { + xx = 5.38 + (((tickAnim - 8) / 3) * (51-(5.38))); + yy = 0 + (((tickAnim - 8) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg3, frontRightLeg3.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg3.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 1) { + xx = 0 + (((tickAnim - 0) / 1) * (0-(0))); + yy = -0.15 + (((tickAnim - 0) / 1) * (-0.34-(-0.15))); + zz = 0 + (((tickAnim - 0) / 1) * (-0.725-(0))); + } + else if (tickAnim >= 1 && tickAnim < 3) { + xx = 0 + (((tickAnim - 1) / 2) * (0-(0))); + yy = -0.34 + (((tickAnim - 1) / 2) * (-0.72-(-0.34))); + zz = -0.725 + (((tickAnim - 1) / 2) * (-0.625-(-0.725))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 0 + (((tickAnim - 3) / 3) * (0-(0))); + yy = -0.72 + (((tickAnim - 3) / 3) * (0-(-0.72))); + zz = -0.625 + (((tickAnim - 3) / 3) * (0-(-0.625))); + } + else if (tickAnim >= 6 && tickAnim < 11) { + xx = 0 + (((tickAnim - 6) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 6) / 5) * (-0.15-(0))); + zz = 0 + (((tickAnim - 6) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg3.rotationPointX = this.frontRightLeg3.rotationPointX + (float)(xx); + this.frontRightLeg3.rotationPointY = this.frontRightLeg3.rotationPointY - (float)(yy); + this.frontRightLeg3.rotationPointZ = this.frontRightLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(body3, body3.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666/0.5-350))*5), body3.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666-150))*-8), body3.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666-150))*-8)); + + + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666/0.5-300))*-8), head.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666-250))*5), head.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*666-250))*-5)); + + } + + @Override + public void setLivingAnimations(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + super.setLivingAnimations(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + this.resetToDefaultPose(); + EntityPrehistoricFloraParringtonia ee = (EntityPrehistoricFloraParringtonia) entitylivingbaseIn; + + if (!ee.isReallyInWater()) { + if (ee.getIsMoving()) { + if (ee.getIsFast()) { //Running + animRunning(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + + } else { //Walking + animWalking(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + } + } + } + else { + //Swimming pose: + if (!ee.getIsMoving()) { //static in water + // + } + //moving in water + // + } + if (ee.getAnimation() == ee.EAT_ANIMATION) { + animEat(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.ATTACK_ANIMATION) { + animAttack(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.MAKE_NEST_ANIMATION) { + animNest(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.LAY_ANIMATION) { + animLay(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.ROAR_ANIMATION) { //The actual roar/anim + animRoar(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + + } + + public void animate(IAnimatedEntity entity, float f, float f1, float f2, float f3, float f4, float f5) { + EntityPrehistoricFloraParringtonia e = (EntityPrehistoricFloraParringtonia) entity; + + } +} diff --git a/src/main/java/net/lepidodendron/entity/model/entity/ModelProtosuchus.java b/src/main/java/net/lepidodendron/entity/model/entity/ModelProtosuchus.java new file mode 100644 index 0000000000..bc971e76df --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/model/entity/ModelProtosuchus.java @@ -0,0 +1,2704 @@ +package net.lepidodendron.entity.model.entity; + +import net.ilexiconn.llibrary.client.model.ModelAnimator; +import net.ilexiconn.llibrary.client.model.tools.AdvancedModelRenderer; +import net.ilexiconn.llibrary.server.animation.IAnimatedEntity; +import net.lepidodendron.entity.EntityPrehistoricFloraProtosuchus; +import net.lepidodendron.entity.model.ModelBasePalaeopedia; +import net.minecraft.client.model.ModelBox; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; + +public class ModelProtosuchus extends ModelBasePalaeopedia { + private final AdvancedModelRenderer main; + private final AdvancedModelRenderer backLeftLeg; + private final AdvancedModelRenderer backLeftLeg2; + private final AdvancedModelRenderer backLeftLeg3; + private final AdvancedModelRenderer backRightLeg; + private final AdvancedModelRenderer backRightLeg2; + private final AdvancedModelRenderer backRightLeg3; + private final AdvancedModelRenderer body; + private final AdvancedModelRenderer body2; + private final AdvancedModelRenderer frontLeftLeg; + private final AdvancedModelRenderer frontLeftLeg2; + private final AdvancedModelRenderer frontLeftLeg3; + private final AdvancedModelRenderer frontRightLeg; + private final AdvancedModelRenderer frontRightLeg2; + private final AdvancedModelRenderer frontRightLeg3; + private final AdvancedModelRenderer body3; + private final AdvancedModelRenderer cube_r1; + private final AdvancedModelRenderer head; + private final AdvancedModelRenderer cube_r2; + private final AdvancedModelRenderer cube_r3; + private final AdvancedModelRenderer cube_r4; + private final AdvancedModelRenderer cube_r5; + private final AdvancedModelRenderer cube_r6; + private final AdvancedModelRenderer cube_r7; + private final AdvancedModelRenderer cube_r8; + private final AdvancedModelRenderer cube_r9; + private final AdvancedModelRenderer cube_r10; + private final AdvancedModelRenderer jaw; + private final AdvancedModelRenderer cube_r11; + private final AdvancedModelRenderer cube_r12; + private final AdvancedModelRenderer cube_r13; + private final AdvancedModelRenderer tail; + private final AdvancedModelRenderer tail2; + private final AdvancedModelRenderer tail3; + private final AdvancedModelRenderer tail4; + + private ModelAnimator animator; + + public ModelProtosuchus() { + this.textureWidth = 48; + this.textureHeight = 48; + + this.main = new AdvancedModelRenderer(this); + this.main.setRotationPoint(0.0F, 23.5F, 0.0F); + this.main.cubeList.add(new ModelBox(main, 0, 26, -1.5F, -8.2F, 6.0F, 3, 3, 3, 0.0F, false)); + + this.backLeftLeg = new AdvancedModelRenderer(this); + this.backLeftLeg.setRotationPoint(1.75F, -6.7932F, 7.7549F); + this.main.addChild(backLeftLeg); + this.setRotateAngle(backLeftLeg, -0.1745F, 0.0F, 0.0F); + this.backLeftLeg.cubeList.add(new ModelBox(backLeftLeg, 30, 17, -1.0F, -0.5F, -1.0F, 2, 4, 2, 0.002F, false)); + + this.backLeftLeg2 = new AdvancedModelRenderer(this); + this.backLeftLeg2.setRotationPoint(0.5F, 3.25F, -1.0F); + this.backLeftLeg.addChild(backLeftLeg2); + this.setRotateAngle(backLeftLeg2, 0.3491F, 0.0F, 0.0F); + this.backLeftLeg2.cubeList.add(new ModelBox(backLeftLeg2, 0, 33, -1.5F, 0.0F, 0.0F, 2, 4, 1, 0.0F, false)); + this.backLeftLeg2.cubeList.add(new ModelBox(backLeftLeg2, 34, 0, -1.5F, 0.0F, 0.6F, 2, 4, 1, -0.001F, false)); + + this.backLeftLeg3 = new AdvancedModelRenderer(this); + this.backLeftLeg3.setRotationPoint(0.0F, 3.5F, 1.0F); + this.backLeftLeg2.addChild(backLeftLeg3); + this.setRotateAngle(backLeftLeg3, -0.1745F, 0.0F, 0.0F); + this.backLeftLeg3.cubeList.add(new ModelBox(backLeftLeg3, 30, 7, -2.0F, 0.0F, -3.0F, 3, 1, 3, 0.0F, false)); + + this.backRightLeg = new AdvancedModelRenderer(this); + this.backRightLeg.setRotationPoint(-1.75F, -6.7932F, 7.7549F); + this.main.addChild(backRightLeg); + this.setRotateAngle(backRightLeg, -0.1745F, 0.0F, 0.0F); + this.backRightLeg.cubeList.add(new ModelBox(backRightLeg, 30, 17, -1.0F, -0.5F, -1.0F, 2, 4, 2, 0.002F, true)); + + this.backRightLeg2 = new AdvancedModelRenderer(this); + this.backRightLeg2.setRotationPoint(-0.5F, 3.25F, -1.0F); + this.backRightLeg.addChild(backRightLeg2); + this.setRotateAngle(backRightLeg2, 0.3491F, 0.0F, 0.0F); + this.backRightLeg2.cubeList.add(new ModelBox(backRightLeg2, 0, 33, -0.5F, 0.0F, 0.0F, 2, 4, 1, 0.0F, true)); + this.backRightLeg2.cubeList.add(new ModelBox(backRightLeg2, 34, 0, -0.5F, 0.0F, 0.6F, 2, 4, 1, -0.001F, true)); + + this.backRightLeg3 = new AdvancedModelRenderer(this); + this.backRightLeg3.setRotationPoint(0.0F, 3.5F, 1.0F); + this.backRightLeg2.addChild(backRightLeg3); + this.setRotateAngle(backRightLeg3, -0.1745F, 0.0F, 0.0F); + this.backRightLeg3.cubeList.add(new ModelBox(backRightLeg3, 30, 7, -1.0F, 0.0F, -3.0F, 3, 1, 3, 0.0F, true)); + + this.body = new AdvancedModelRenderer(this); + this.body.setRotationPoint(0.0F, -8.0004F, 6.2337F); + this.main.addChild(body); + this.setRotateAngle(body, 0.0873F, 0.0F, 0.0F); + this.body.cubeList.add(new ModelBox(body, 0, 0, -2.0F, -0.35F, -6.0F, 4, 4, 6, 0.01F, false)); + + this.body2 = new AdvancedModelRenderer(this); + this.body2.setRotationPoint(0.0F, 0.25F, -5.25F); + this.body.addChild(body2); + this.body2.cubeList.add(new ModelBox(body2, 0, 19, -2.0F, -0.35F, -3.0F, 4, 3, 3, 0.0F, false)); + + this.frontLeftLeg = new AdvancedModelRenderer(this); + this.frontLeftLeg.setRotationPoint(1.9F, 2.125F, -2.05F); + this.body2.addChild(frontLeftLeg); + this.setRotateAngle(frontLeftLeg, 0.1745F, 0.0F, 0.0F); + this.frontLeftLeg.cubeList.add(new ModelBox(frontLeftLeg, 7, 36, -1.0F, -0.25F, -0.5F, 2, 3, 1, 0.001F, false)); + this.frontLeftLeg.cubeList.add(new ModelBox(frontLeftLeg, 39, 17, -1.0F, -0.25F, 0.0F, 2, 3, 1, -0.003F, false)); + + this.frontLeftLeg2 = new AdvancedModelRenderer(this); + this.frontLeftLeg2.setRotationPoint(0.0F, 2.6201F, 0.5437F); + this.frontLeftLeg.addChild(frontLeftLeg2); + this.setRotateAngle(frontLeftLeg2, -0.5236F, 0.0F, 0.0F); + this.frontLeftLeg2.cubeList.add(new ModelBox(frontLeftLeg2, 7, 41, -0.25F, 0.0F, -1.0F, 1, 3, 1, 0.0F, false)); + this.frontLeftLeg2.cubeList.add(new ModelBox(frontLeftLeg2, 12, 41, -0.75F, 0.0F, -1.0F, 1, 3, 1, -0.001F, false)); + + this.frontLeftLeg3 = new AdvancedModelRenderer(this); + this.frontLeftLeg3.setRotationPoint(0.0F, 2.3651F, -0.6829F); + this.frontLeftLeg2.addChild(frontLeftLeg3); + this.setRotateAngle(frontLeftLeg3, 0.2618F, 0.0F, 0.0F); + this.frontLeftLeg3.cubeList.add(new ModelBox(frontLeftLeg3, 33, 35, -1.0F, 0.0F, -1.5F, 2, 1, 2, 0.001F, false)); + + this.frontRightLeg = new AdvancedModelRenderer(this); + this.frontRightLeg.setRotationPoint(-1.9F, 2.125F, -2.05F); + this.body2.addChild(frontRightLeg); + this.setRotateAngle(frontRightLeg, 0.1745F, 0.0F, 0.0F); + this.frontRightLeg.cubeList.add(new ModelBox(frontRightLeg, 7, 36, -1.0F, -0.25F, -0.5F, 2, 3, 1, 0.001F, true)); + this.frontRightLeg.cubeList.add(new ModelBox(frontRightLeg, 39, 17, -1.0F, -0.25F, 0.0F, 2, 3, 1, -0.003F, true)); + + this.frontRightLeg2 = new AdvancedModelRenderer(this); + this.frontRightLeg2.setRotationPoint(0.0F, 2.6201F, 0.5437F); + this.frontRightLeg.addChild(frontRightLeg2); + this.setRotateAngle(frontRightLeg2, -0.5236F, 0.0F, 0.0F); + this.frontRightLeg2.cubeList.add(new ModelBox(frontRightLeg2, 7, 41, -0.75F, 0.0F, -1.0F, 1, 3, 1, 0.0F, true)); + this.frontRightLeg2.cubeList.add(new ModelBox(frontRightLeg2, 12, 41, -0.25F, 0.0F, -1.0F, 1, 3, 1, -0.001F, true)); + + this.frontRightLeg3 = new AdvancedModelRenderer(this); + this.frontRightLeg3.setRotationPoint(0.0F, 2.3651F, -0.6829F); + this.frontRightLeg2.addChild(frontRightLeg3); + this.setRotateAngle(frontRightLeg3, 0.2618F, 0.0F, 0.0F); + this.frontRightLeg3.cubeList.add(new ModelBox(frontRightLeg3, 33, 35, -1.0F, 0.0F, -1.5F, 2, 1, 2, 0.001F, true)); + + this.body3 = new AdvancedModelRenderer(this); + this.body3.setRotationPoint(0.0F, -0.25F, -2.5F); + this.body2.addChild(body3); + this.body3.cubeList.add(new ModelBox(body3, 28, 25, -1.5F, 0.0F, -3.0F, 3, 2, 3, -0.001F, false)); + + this.cube_r1 = new AdvancedModelRenderer(this); + this.cube_r1.setRotationPoint(-0.5F, 2.75F, 0.0F); + this.body3.addChild(cube_r1); + this.setRotateAngle(cube_r1, -0.1745F, 0.0F, 0.0F); + this.cube_r1.cubeList.add(new ModelBox(cube_r1, 30, 12, -0.5F, -0.85F, -3.2F, 2, 1, 3, -0.001F, false)); + + this.head = new AdvancedModelRenderer(this); + this.head.setRotationPoint(0.0F, 0.0F, -3.0F); + this.body3.addChild(head); + this.setRotateAngle(head, -0.0611F, 0.0F, 0.0F); + this.head.cubeList.add(new ModelBox(head, 28, 31, -1.5F, 0.5F, -1.85F, 3, 1, 2, 0.0F, false)); + + this.cube_r2 = new AdvancedModelRenderer(this); + this.cube_r2.setRotationPoint(0.0F, 0.5F, -1.85F); + this.head.addChild(cube_r2); + this.setRotateAngle(cube_r2, 0.0873F, 0.0F, 0.0F); + this.cube_r2.cubeList.add(new ModelBox(cube_r2, 28, 39, -0.5F, 0.0F, -2.0F, 1, 1, 2, 0.006F, false)); + + this.cube_r3 = new AdvancedModelRenderer(this); + this.cube_r3.setRotationPoint(0.0F, 1.1876F, -3.0739F); + this.head.addChild(cube_r3); + this.setRotateAngle(cube_r3, 0.0916F, 0.0F, 0.0F); + this.cube_r3.cubeList.add(new ModelBox(cube_r3, 0, 39, -0.4F, -0.425F, -1.425F, 0, 1, 3, 0.0F, true)); + this.cube_r3.cubeList.add(new ModelBox(cube_r3, 0, 39, 0.4F, -0.425F, -1.425F, 0, 1, 3, 0.0F, false)); + + this.cube_r4 = new AdvancedModelRenderer(this); + this.cube_r4.setRotationPoint(0.5F, 1.4184F, -2.524F); + this.head.addChild(cube_r4); + this.setRotateAngle(cube_r4, 0.1789F, 0.0F, 0.0F); + this.cube_r4.cubeList.add(new ModelBox(cube_r4, 21, 39, -1.0F, -0.975F, -2.0F, 1, 1, 2, 0.0F, false)); + + this.cube_r5 = new AdvancedModelRenderer(this); + this.cube_r5.setRotationPoint(0.5F, 0.1308F, -1.8457F); + this.head.addChild(cube_r5); + this.setRotateAngle(cube_r5, 0.3665F, 0.0F, 0.0F); + this.cube_r5.cubeList.add(new ModelBox(cube_r5, 7, 33, -1.0F, 0.0F, -1.0F, 1, 1, 1, 0.003F, false)); + + this.cube_r6 = new AdvancedModelRenderer(this); + this.cube_r6.setRotationPoint(0.0F, 0.0F, 0.15F); + this.head.addChild(cube_r6); + this.setRotateAngle(cube_r6, 0.0654F, 0.0F, 0.0F); + this.cube_r6.cubeList.add(new ModelBox(cube_r6, 21, 7, -1.0F, 0.0F, -2.0F, 2, 1, 2, 0.0F, false)); + + this.cube_r7 = new AdvancedModelRenderer(this); + this.cube_r7.setRotationPoint(-0.8745F, 0.8029F, -2.0024F); + this.head.addChild(cube_r7); + this.setRotateAngle(cube_r7, -0.2127F, -0.5796F, 0.4742F); + this.cube_r7.cubeList.add(new ModelBox(cube_r7, 41, 4, -0.5F, -0.425F, -0.5F, 1, 1, 1, 0.0F, true)); + + this.cube_r8 = new AdvancedModelRenderer(this); + this.cube_r8.setRotationPoint(0.8745F, 0.8029F, -2.0024F); + this.head.addChild(cube_r8); + this.setRotateAngle(cube_r8, -0.2127F, 0.5796F, -0.4742F); + this.cube_r8.cubeList.add(new ModelBox(cube_r8, 41, 4, -0.5F, -0.425F, -0.5F, 1, 1, 1, 0.0F, false)); + + this.cube_r9 = new AdvancedModelRenderer(this); + this.cube_r9.setRotationPoint(-1.5F, 0.5F, -1.85F); + this.head.addChild(cube_r9); + this.setRotateAngle(cube_r9, 0.0567F, -0.6109F, 0.0F); + this.cube_r9.cubeList.add(new ModelBox(cube_r9, 35, 39, 0.0F, 0.0F, -2.0F, 1, 1, 2, 0.0F, true)); + + this.cube_r10 = new AdvancedModelRenderer(this); + this.cube_r10.setRotationPoint(1.5F, 0.5F, -1.85F); + this.head.addChild(cube_r10); + this.setRotateAngle(cube_r10, 0.0567F, 0.6109F, 0.0F); + this.cube_r10.cubeList.add(new ModelBox(cube_r10, 35, 39, -1.0F, 0.0F, -2.0F, 1, 1, 2, 0.0F, false)); + + this.jaw = new AdvancedModelRenderer(this); + this.jaw.setRotationPoint(-0.5F, 1.325F, 0.15F); + this.head.addChild(jaw); + this.jaw.cubeList.add(new ModelBox(jaw, 13, 32, -1.0F, 0.0F, -2.0F, 3, 1, 2, -0.003F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 24, 35, -0.5F, -0.825F, -1.75F, 2, 1, 2, -0.003F, false)); + + this.cube_r11 = new AdvancedModelRenderer(this); + this.cube_r11.setRotationPoint(0.0F, 1.0F, -2.0F); + this.jaw.addChild(cube_r11); + this.setRotateAngle(cube_r11, -0.1309F, 0.0F, 0.0F); + this.cube_r11.cubeList.add(new ModelBox(cube_r11, 14, 36, 0.175F, -1.2F, -2.575F, 0, 1, 3, 0.0F, true)); + this.cube_r11.cubeList.add(new ModelBox(cube_r11, 14, 36, 0.825F, -1.2F, -2.575F, 0, 1, 3, 0.0F, false)); + this.cube_r11.cubeList.add(new ModelBox(cube_r11, 39, 22, 0.0F, -1.0F, -2.6F, 1, 1, 1, -0.002F, false)); + this.cube_r11.cubeList.add(new ModelBox(cube_r11, 39, 31, 0.0F, -1.0F, -2.0F, 1, 1, 2, -0.003F, false)); + + this.cube_r12 = new AdvancedModelRenderer(this); + this.cube_r12.setRotationPoint(-1.0F, 1.0F, -2.0F); + this.jaw.addChild(cube_r12); + this.setRotateAngle(cube_r12, -0.1482F, -0.6036F, 0.0685F); + this.cube_r12.cubeList.add(new ModelBox(cube_r12, 41, 0, 0.0F, -1.0F, -2.0F, 1, 1, 2, -0.01F, true)); + + this.cube_r13 = new AdvancedModelRenderer(this); + this.cube_r13.setRotationPoint(2.0F, 1.0F, -2.0F); + this.jaw.addChild(cube_r13); + this.setRotateAngle(cube_r13, -0.1482F, 0.6036F, -0.0685F); + this.cube_r13.cubeList.add(new ModelBox(cube_r13, 41, 0, -1.0F, -1.0F, -2.0F, 1, 1, 2, -0.01F, false)); + + this.tail = new AdvancedModelRenderer(this); + this.tail.setRotationPoint(0.0F, -8.05F, 8.7F); + this.main.addChild(tail); + this.setRotateAngle(tail, -0.2618F, 0.0F, 0.0F); + this.tail.cubeList.add(new ModelBox(tail, 0, 11, -1.0F, 0.0F, 0.0F, 2, 2, 5, 0.001F, false)); + + this.tail2 = new AdvancedModelRenderer(this); + this.tail2.setRotationPoint(0.0F, 0.0106F, 4.5687F); + this.tail.addChild(tail2); + this.setRotateAngle(tail2, -0.4363F, 0.0F, 0.0F); + this.tail2.cubeList.add(new ModelBox(tail2, 15, 18, -1.0F, 0.0F, 0.0F, 2, 1, 5, 0.0F, false)); + this.tail2.cubeList.add(new ModelBox(tail2, 15, 11, -1.0F, 0.5F, 0.0F, 2, 1, 5, -0.001F, false)); + + this.tail3 = new AdvancedModelRenderer(this); + this.tail3.setRotationPoint(0.0F, 0.25F, 4.5F); + this.tail2.addChild(tail3); + this.setRotateAngle(tail3, 0.1309F, 0.0F, 0.0F); + this.tail3.cubeList.add(new ModelBox(tail3, 21, 0, -0.5F, 0.0F, 0.0F, 1, 1, 5, 0.0F, false)); + + this.tail4 = new AdvancedModelRenderer(this); + this.tail4.setRotationPoint(0.0F, 0.5F, 4.75F); + this.tail3.addChild(tail4); + this.setRotateAngle(tail4, 0.3927F, 0.0F, 0.0F); + this.tail4.cubeList.add(new ModelBox(tail4, 15, 25, -0.5F, -0.5F, 0.0F, 1, 1, 5, -0.001F, false)); + + updateDefaultPose(); + animator = ModelAnimator.create(); + } + + @Override + public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { + animate((IAnimatedEntity) entity, f, f1, f2, f3, f4, f5); + this.main.render(f5); + } + + @Override + public void renderStaticBook(float f) { + //Rotations, positions and sizing: + this.main.offsetY = 0.2F; + this.main.offsetX = 0.35F; + this.main.offsetZ = 2.0F; + this.main.rotateAngleY = (float)Math.toRadians(120); + this.main.rotateAngleX = (float)Math.toRadians(1); + this.main.rotateAngleZ = (float)Math.toRadians(0); + this.main.scaleChildren = true; + float scaler = 0.6F; + this.main.setScale(scaler, scaler, scaler); + //Start of pose: + + //End of pose, now render the model: + this.main.render(f); + //Reset rotations, positions and sizing: + this.main.setScale(1.0F, 1.0F, 1.0F); + this.main.scaleChildren = false; + resetToDefaultPose(); + + } + + public void renderStaticWall(float f) { + resetToDefaultPose(); + } + + public void renderStaticFloor(float f) { + this.main.offsetY = -0.105F; + this.main.render(0.01F); + resetToDefaultPose(); + } + + public void setRotateAngle(AdvancedModelRenderer AdvancedModelRenderer, float x, float y, float z) { + AdvancedModelRenderer.rotateAngleX = x; + AdvancedModelRenderer.rotateAngleY = y; + AdvancedModelRenderer.rotateAngleZ = z; + } + + @Override + public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity e) { + super.setRotationAngles(f, f1, f2, f3, f4, f5, e); + //this.resetToDefaultPose(); + + EntityPrehistoricFloraProtosuchus EntityMegalosaurus = (EntityPrehistoricFloraProtosuchus) e; + + this.faceTarget(f3, f4, 8, body3); + this.faceTarget(f3, f4, 8, head); + + AdvancedModelRenderer[] Tail = {this.tail, this.tail2, this.tail3, this.tail4}; + AdvancedModelRenderer[] Neck = {this.body3, this.head}; + + EntityMegalosaurus.tailBuffer.applyChainSwingBuffer(Tail); + + if (EntityMegalosaurus.getAnimation() == EntityMegalosaurus.LAY_ANIMATION) { + this.chainSwing(Neck, 0.5F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.5F * 2, -0.02F, 0.5F, f2, 0.8F); + } + else { + if (!EntityMegalosaurus.isReallyInWater()) { + + if (f3 == 0.0F || !EntityMegalosaurus.getIsMoving()) { + this.chainSwing(Neck, 0.05F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.05F * 2, -0.02F, 0.5F, f2, 0.8F); + + this.chainWave(Tail, (0.15F * 0.35F), 0.125F * 0.15F, 0.2F, f2, 1F); + this.chainSwing(Tail, (0.15F * 0.35F) * 4F, 0.05F * 0.35F, 0.12F, f2, 1F); + return; + } + + if (EntityMegalosaurus.getIsFast()) { //Running + + + } else { //Walking + + } + } else { + //Swimming pose: + if (f3 == 0.0F) { //static in water + return; + } + //moving in water + return; + } + } + } + + public void animAttack(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraProtosuchus entity = (EntityPrehistoricFloraProtosuchus) entitylivingbaseIn; + int animCycle = 10; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (12.5-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = 12.5 + (((tickAnim - 3) / 4) * (-8.75-(12.5))); + yy = 0 + (((tickAnim - 3) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 4) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = -8.75 + (((tickAnim - 7) / 3) * (0-(-8.75))); + yy = 0 + (((tickAnim - 7) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body3, body3.rotateAngleX + (float) Math.toRadians(xx), body3.rotateAngleY + (float) Math.toRadians(yy), body3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (-18.5-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 5) { + xx = -18.5 + (((tickAnim - 3) / 2) * (-22.4-(-18.5))); + yy = 0 + (((tickAnim - 3) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 2) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 7) { + xx = -22.4 + (((tickAnim - 5) / 2) * (0-(-22.4))); + yy = 0 + (((tickAnim - 5) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 2) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = 0 + (((tickAnim - 7) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 7) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0.475-(0))); + } + else if (tickAnim >= 3 && tickAnim < 10) { + xx = 0 + (((tickAnim - 3) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 3) / 7) * (0-(0))); + zz = 0.475 + (((tickAnim - 3) / 7) * (0-(0.475))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.head.rotationPointX = this.head.rotationPointX + (float)(xx); + this.head.rotationPointY = this.head.rotationPointY - (float)(yy); + this.head.rotationPointZ = this.head.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (21-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 5) { + xx = 21 + (((tickAnim - 3) / 2) * (42.25-(21))); + yy = 0 + (((tickAnim - 3) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 2) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 7) { + xx = 42.25 + (((tickAnim - 5) / 2) * (0-(42.25))); + yy = 0 + (((tickAnim - 5) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animEat(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraProtosuchus entity = (EntityPrehistoricFloraProtosuchus) entitylivingbaseIn; + int animCycle = 15; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 7) { + xx = 0 + (((tickAnim - 0) / 7) * (7.75-(0))); + yy = 0 + (((tickAnim - 0) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = 7.75 + (((tickAnim - 7) / 3) * (7.75-(7.75))); + yy = 0 + (((tickAnim - 7) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 3) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = 7.75 + (((tickAnim - 10) / 5) * (0-(7.75))); + yy = 0 + (((tickAnim - 10) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(xx), body.rotateAngleY + (float) Math.toRadians(yy), body.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 0 + (((tickAnim - 0) / 7) * (4-(0))); + yy = 0 + (((tickAnim - 0) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = 4 + (((tickAnim - 7) / 3) * (4-(4))); + yy = 0 + (((tickAnim - 7) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 3) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = 4 + (((tickAnim - 10) / 5) * (0-(4))); + yy = 0 + (((tickAnim - 10) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(xx), body2.rotateAngleY + (float) Math.toRadians(yy), body2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 0 + (((tickAnim - 0) / 7) * (-11.08969-(0))); + yy = 0 + (((tickAnim - 0) / 7) * (11.26652-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (-22.09199-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = -11.08969 + (((tickAnim - 7) / 3) * (-11.08969-(-11.08969))); + yy = 11.26652 + (((tickAnim - 7) / 3) * (11.26652-(11.26652))); + zz = -22.09199 + (((tickAnim - 7) / 3) * (-22.09199-(-22.09199))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = -11.08969 + (((tickAnim - 10) / 5) * (0-(-11.08969))); + yy = 11.26652 + (((tickAnim - 10) / 5) * (0-(11.26652))); + zz = -22.09199 + (((tickAnim - 10) / 5) * (0-(-22.09199))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg, frontLeftLeg.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 0 + (((tickAnim - 0) / 7) * (-33.42079-(0))); + yy = 0 + (((tickAnim - 0) / 7) * (18.9463-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (3.4702-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = -33.42079 + (((tickAnim - 7) / 3) * (-33.42079-(-33.42079))); + yy = 18.9463 + (((tickAnim - 7) / 3) * (18.9463-(18.9463))); + zz = 3.4702 + (((tickAnim - 7) / 3) * (3.4702-(3.4702))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = -33.42079 + (((tickAnim - 10) / 5) * (0-(-33.42079))); + yy = 18.9463 + (((tickAnim - 10) / 5) * (0-(18.9463))); + zz = 3.4702 + (((tickAnim - 10) / 5) * (0-(3.4702))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg2, frontLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 0 + (((tickAnim - 0) / 7) * (26-(0))); + yy = 0 + (((tickAnim - 0) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = 26 + (((tickAnim - 7) / 3) * (26-(26))); + yy = 0 + (((tickAnim - 7) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 3) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = 26 + (((tickAnim - 10) / 5) * (0-(26))); + yy = 0 + (((tickAnim - 10) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg3, frontLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 0 + (((tickAnim - 0) / 7) * (7-(0))); + yy = 0 + (((tickAnim - 0) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 7 + (((tickAnim - 7) / 1) * (14.25-(7))); + yy = 0 + (((tickAnim - 7) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 1) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = 14.25 + (((tickAnim - 8) / 7) * (0-(14.25))); + yy = 0 + (((tickAnim - 8) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body3, body3.rotateAngleX + (float) Math.toRadians(xx), body3.rotateAngleY + (float) Math.toRadians(yy), body3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 0 + (((tickAnim - 0) / 7) * (-11.08969-(0))); + yy = 0 + (((tickAnim - 0) / 7) * (-11.2665-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (22.092-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = -11.08969 + (((tickAnim - 7) / 3) * (-11.08969-(-11.08969))); + yy = -11.2665 + (((tickAnim - 7) / 3) * (-11.2665-(-11.2665))); + zz = 22.092 + (((tickAnim - 7) / 3) * (22.092-(22.092))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = -11.08969 + (((tickAnim - 10) / 5) * (0-(-11.08969))); + yy = -11.2665 + (((tickAnim - 10) / 5) * (0-(-11.2665))); + zz = 22.092 + (((tickAnim - 10) / 5) * (0-(22.092))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg, frontRightLeg.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 0 + (((tickAnim - 0) / 7) * (-33.42079-(0))); + yy = 0 + (((tickAnim - 0) / 7) * (-18.9463-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (-3.4702-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = -33.42079 + (((tickAnim - 7) / 3) * (-33.42079-(-33.42079))); + yy = -18.9463 + (((tickAnim - 7) / 3) * (-18.9463-(-18.9463))); + zz = -3.4702 + (((tickAnim - 7) / 3) * (-3.4702-(-3.4702))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = -33.42079 + (((tickAnim - 10) / 5) * (0-(-33.42079))); + yy = -18.9463 + (((tickAnim - 10) / 5) * (0-(-18.9463))); + zz = -3.4702 + (((tickAnim - 10) / 5) * (0-(-3.4702))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg2, frontRightLeg2.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg2.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 0 + (((tickAnim - 0) / 7) * (26-(0))); + yy = 0 + (((tickAnim - 0) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = 26 + (((tickAnim - 7) / 3) * (26-(26))); + yy = 0 + (((tickAnim - 7) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 3) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = 26 + (((tickAnim - 10) / 5) * (0-(26))); + yy = 0 + (((tickAnim - 10) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg3, frontRightLeg3.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg3.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 0 + (((tickAnim - 0) / 7) * (9.25-(0))); + yy = 0 + (((tickAnim - 0) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 9.25 + (((tickAnim - 7) / 1) * (0-(9.25))); + yy = 0 + (((tickAnim - 7) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 1) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 13) { + xx = 0 + (((tickAnim - 8) / 5) * (11.5-(0))); + yy = 0 + (((tickAnim - 8) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 5) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 15) { + xx = 11.5 + (((tickAnim - 13) / 2) * (0-(11.5))); + yy = 0 + (((tickAnim - 13) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = 0 + (((tickAnim - 3) / 4) * (18.25-(0))); + yy = 0 + (((tickAnim - 3) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 4) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 18.25 + (((tickAnim - 7) / 1) * (0-(18.25))); + yy = 0 + (((tickAnim - 7) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 1) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animNest(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraProtosuchus entity = (EntityPrehistoricFloraProtosuchus) entitylivingbaseIn; + int animCycle = 50; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 15) { + xx = 0 + (((tickAnim - 0) / 15) * (-25.35395-(0))); + yy = 0 + (((tickAnim - 0) / 15) * (-16.44463-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (-7.51672-(0))); + } + else if (tickAnim >= 15 && tickAnim < 24) { + xx = -25.35395 + (((tickAnim - 15) / 9) * (15.36576-(-25.35395))); + yy = -16.44463 + (((tickAnim - 15) / 9) * (-16.97536-(-16.44463))); + zz = -7.51672 + (((tickAnim - 15) / 9) * (-28.35428-(-7.51672))); + } + else if (tickAnim >= 24 && tickAnim < 35) { + xx = 15.36576 + (((tickAnim - 24) / 11) * (53.27976-(15.36576))); + yy = -16.97536 + (((tickAnim - 24) / 11) * (-16.42963-(-16.97536))); + zz = -28.35428 + (((tickAnim - 24) / 11) * (-17.68323-(-28.35428))); + } + else if (tickAnim >= 35 && tickAnim < 50) { + xx = 53.27976 + (((tickAnim - 35) / 15) * (0-(53.27976))); + yy = -16.42963 + (((tickAnim - 35) / 15) * (0-(-16.42963))); + zz = -17.68323 + (((tickAnim - 35) / 15) * (0-(-17.68323))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 15) { + xx = 0 + (((tickAnim - 0) / 15) * (-22.5-(0))); + yy = 0 + (((tickAnim - 0) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 24) { + xx = -22.5 + (((tickAnim - 15) / 9) * (0-(-22.5))); + yy = 0 + (((tickAnim - 15) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 15) / 9) * (0-(0))); + } + else if (tickAnim >= 24 && tickAnim < 35) { + xx = 0 + (((tickAnim - 24) / 11) * (16.25-(0))); + yy = 0 + (((tickAnim - 24) / 11) * (0-(0))); + zz = 0 + (((tickAnim - 24) / 11) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 50) { + xx = 16.25 + (((tickAnim - 35) / 15) * (0-(16.25))); + yy = 0 + (((tickAnim - 35) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 15) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 15) { + xx = 0 + (((tickAnim - 0) / 15) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 43) { + xx = 0 + (((tickAnim - 15) / 28) * (0-(0))); + yy = 0 + (((tickAnim - 15) / 28) * (0.75-(0))); + zz = 0 + (((tickAnim - 15) / 28) * (0-(0))); + } + else if (tickAnim >= 43 && tickAnim < 50) { + xx = 0 + (((tickAnim - 43) / 7) * (0-(0))); + yy = 0.75 + (((tickAnim - 43) / 7) * (0-(0.75))); + zz = 0 + (((tickAnim - 43) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg2.rotationPointX = this.backLeftLeg2.rotationPointX + (float)(xx); + this.backLeftLeg2.rotationPointY = this.backLeftLeg2.rotationPointY - (float)(yy); + this.backLeftLeg2.rotationPointZ = this.backLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 15) { + xx = 0 + (((tickAnim - 0) / 15) * (61.25-(0))); + yy = 0 + (((tickAnim - 0) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 24) { + xx = 61.25 + (((tickAnim - 15) / 9) * (66.37633-(61.25))); + yy = 0 + (((tickAnim - 15) / 9) * (-12.13005-(0))); + zz = 0 + (((tickAnim - 15) / 9) * (-14.73532-(0))); + } + else if (tickAnim >= 24 && tickAnim < 35) { + xx = 66.37633 + (((tickAnim - 24) / 11) * (69-(66.37633))); + yy = -12.13005 + (((tickAnim - 24) / 11) * (0-(-12.13005))); + zz = -14.73532 + (((tickAnim - 24) / 11) * (0-(-14.73532))); + } + else if (tickAnim >= 35 && tickAnim < 43) { + xx = 69 + (((tickAnim - 35) / 8) * (43.67-(69))); + yy = 0 + (((tickAnim - 35) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 8) * (0-(0))); + } + else if (tickAnim >= 43 && tickAnim < 50) { + xx = 43.67 + (((tickAnim - 43) / 7) * (0-(43.67))); + yy = 0 + (((tickAnim - 43) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 43) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg3, backLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 15) { + xx = 0 + (((tickAnim - 0) / 15) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 19) { + xx = 0 + (((tickAnim - 15) / 4) * (-0.16-(0))); + yy = 0 + (((tickAnim - 15) / 4) * (1.69-(0))); + zz = 0 + (((tickAnim - 15) / 4) * (0-(0))); + } + else if (tickAnim >= 19 && tickAnim < 24) { + xx = -0.16 + (((tickAnim - 19) / 5) * (-0.35-(-0.16))); + yy = 1.69 + (((tickAnim - 19) / 5) * (2-(1.69))); + zz = 0 + (((tickAnim - 19) / 5) * (0-(0))); + } + else if (tickAnim >= 24 && tickAnim < 35) { + xx = -0.35 + (((tickAnim - 24) / 11) * (0-(-0.35))); + yy = 2 + (((tickAnim - 24) / 11) * (0-(2))); + zz = 0 + (((tickAnim - 24) / 11) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 43) { + xx = 0 + (((tickAnim - 35) / 8) * (0-(0))); + yy = 0 + (((tickAnim - 35) / 8) * (1.5-(0))); + zz = 0 + (((tickAnim - 35) / 8) * (0-(0))); + } + else if (tickAnim >= 43 && tickAnim < 50) { + xx = 0 + (((tickAnim - 43) / 7) * (0-(0))); + yy = 1.5 + (((tickAnim - 43) / 7) * (0-(1.5))); + zz = 0 + (((tickAnim - 43) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg3.rotationPointX = this.backLeftLeg3.rotationPointX + (float)(xx); + this.backLeftLeg3.rotationPointY = this.backLeftLeg3.rotationPointY - (float)(yy); + this.backLeftLeg3.rotationPointZ = this.backLeftLeg3.rotationPointZ + (float)(zz); + + } + public void animLay(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraProtosuchus entity = (EntityPrehistoricFloraProtosuchus) entitylivingbaseIn; + int animCycle = 50; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-19.25-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = -19.25 + (((tickAnim - 18) / 16) * (-19.25-(-19.25))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = -19.25 + (((tickAnim - 34) / 16) * (0-(-19.25))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(xx), main.rotateAngleY + (float) Math.toRadians(yy), main.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-33.25-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = -33.25 + (((tickAnim - 18) / 16) * (-33.25-(-33.25))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = -33.25 + (((tickAnim - 34) / 16) * (0-(-33.25))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (52-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 52 + (((tickAnim - 18) / 16) * (52-(52))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 52 + (((tickAnim - 34) / 16) * (0-(52))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (5.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 5.75 + (((tickAnim - 18) / 16) * (5.75-(5.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 5.75 + (((tickAnim - 34) / 16) * (0-(5.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(xx), body.rotateAngleY + (float) Math.toRadians(yy), body.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (10-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 10 + (((tickAnim - 18) / 16) * (10-(10))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 10 + (((tickAnim - 34) / 16) * (0-(10))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(xx), body2.rotateAngleY + (float) Math.toRadians(yy), body2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-25.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = -25.75 + (((tickAnim - 18) / 16) * (-25.75-(-25.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = -25.75 + (((tickAnim - 34) / 16) * (0-(-25.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg2, frontLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (21.25-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 21.25 + (((tickAnim - 18) / 16) * (21.25-(21.25))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 21.25 + (((tickAnim - 34) / 16) * (0-(21.25))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(xx), tail.rotateAngleY + (float) Math.toRadians(yy), tail.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (14-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 14 + (((tickAnim - 18) / 16) * (14-(14))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 14 + (((tickAnim - 34) / 16) * (0-(14))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(xx), tail2.rotateAngleY + (float) Math.toRadians(yy), tail2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (10.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 10.75 + (((tickAnim - 18) / 16) * (10.75-(10.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 10.75 + (((tickAnim - 34) / 16) * (0-(10.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(xx), tail3.rotateAngleY + (float) Math.toRadians(yy), tail3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-18-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = -18 + (((tickAnim - 18) / 16) * (-18-(-18))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = -18 + (((tickAnim - 34) / 16) * (0-(-18))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(xx), tail4.rotateAngleY + (float) Math.toRadians(yy), tail4.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (29.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 29.75 + (((tickAnim - 18) / 16) * (29.75-(29.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 29.75 + (((tickAnim - 34) / 16) * (0-(29.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg3, frontLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-33.25-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = -33.25 + (((tickAnim - 18) / 16) * (-33.25-(-33.25))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = -33.25 + (((tickAnim - 34) / 16) * (0-(-33.25))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg, backRightLeg.rotateAngleX + (float) Math.toRadians(xx), backRightLeg.rotateAngleY + (float) Math.toRadians(yy), backRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (52-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 52 + (((tickAnim - 18) / 16) * (52-(52))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 52 + (((tickAnim - 34) / 16) * (0-(52))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg2, backRightLeg2.rotateAngleX + (float) Math.toRadians(xx), backRightLeg2.rotateAngleY + (float) Math.toRadians(yy), backRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-25.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = -25.75 + (((tickAnim - 18) / 16) * (-25.75-(-25.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = -25.75 + (((tickAnim - 34) / 16) * (0-(-25.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg2, frontRightLeg2.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg2.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (29.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 29.75 + (((tickAnim - 18) / 16) * (29.75-(29.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 29.75 + (((tickAnim - 34) / 16) * (0-(29.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg3, frontRightLeg3.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg3.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animWalking(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraProtosuchus entity = (EntityPrehistoricFloraProtosuchus) entitylivingbaseIn; + int animCycle = 19; + double tickAnim = (entity.ticksExisted + entity.getTickOffset()) - (int) (Math.floor((double) (entity.ticksExisted + entity.getTickOffset()) / (double) animCycle) * (double) animCycle) + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + + if (tickAnim >= 0 && tickAnim < 6) { + xx = 35.5 + (((tickAnim - 0) / 6) * (5.83698-(35.5))); + yy = 0 + (((tickAnim - 0) / 6) * (-1.08257-(0))); + zz = 0 + (((tickAnim - 0) / 6) * (-9.187+Math.sin((Math.PI/180)*(((double)tickAnim/20)*120))*5-(0))); + } + else if (tickAnim >= 6 && tickAnim < 10) { + xx = 5.83698 + (((tickAnim - 6) / 4) * (-15.5-(5.83698))); + yy = -1.08257 + (((tickAnim - 6) / 4) * (0-(-1.08257))); + zz = -9.187+Math.sin((Math.PI/180)*(((double)tickAnim/20)*120))*5 + (((tickAnim - 6) / 4) * (0-(-9.187+Math.sin((Math.PI/180)*(((double)tickAnim/20)*120))*5))); + } + else if (tickAnim >= 10 && tickAnim < 19) { + xx = -15.5 + (((tickAnim - 10) / 9) * (35.5-(-15.5))); + yy = 0 + (((tickAnim - 10) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 9) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 7.5 + (((tickAnim - 0) / 3) * (27.31-(7.5))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 27.31 + (((tickAnim - 3) / 3) * (11.32141-(27.31))); + yy = 0 + (((tickAnim - 3) / 3) * (-0.05586-(0))); + zz = 0 + (((tickAnim - 3) / 3) * (0.47724-(0))); + } + else if (tickAnim >= 6 && tickAnim < 10) { + xx = 11.32141 + (((tickAnim - 6) / 4) * (-12.25-(11.32141))); + yy = -0.05586 + (((tickAnim - 6) / 4) * (0-(-0.05586))); + zz = 0.47724 + (((tickAnim - 6) / 4) * (0-(0.47724))); + } + else if (tickAnim >= 10 && tickAnim < 19) { + xx = -12.25 + (((tickAnim - 10) / 9) * (7.5-(-12.25))); + yy = 0 + (((tickAnim - 10) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 9) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = 0 + (((tickAnim - 0) / 6) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 6) * (1-(0))); + zz = 0 + (((tickAnim - 0) / 6) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 10) { + xx = 0 + (((tickAnim - 6) / 4) * (0-(0))); + yy = 1 + (((tickAnim - 6) / 4) * (0-(1))); + zz = 0 + (((tickAnim - 6) / 4) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 19) { + xx = 0 + (((tickAnim - 10) / 9) * (0-(0))); + yy = 0 + (((tickAnim - 10) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 9) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg2.rotationPointX = this.backLeftLeg2.rotationPointX + (float)(xx); + this.backLeftLeg2.rotationPointY = this.backLeftLeg2.rotationPointY - (float)(yy); + this.backLeftLeg2.rotationPointZ = this.backLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 59.5 + (((tickAnim - 0) / 3) * (77.13-(59.5))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 77.13 + (((tickAnim - 3) / 3) * (80.78-(77.13))); + yy = 0 + (((tickAnim - 3) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 3) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 80.78 + (((tickAnim - 6) / 2) * (7.39-(80.78))); + yy = 0 + (((tickAnim - 6) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 2) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 7.39 + (((tickAnim - 8) / 2) * (27-(7.39))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = 27 + (((tickAnim - 10) / 3) * (2.07-(27))); + yy = 0 + (((tickAnim - 10) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 3) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 17) { + xx = 2.07 + (((tickAnim - 13) / 4) * (12.48-(2.07))); + yy = 0 + (((tickAnim - 13) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 4) * (0-(0))); + } + else if (tickAnim >= 17 && tickAnim < 19) { + xx = 12.48 + (((tickAnim - 17) / 2) * (59.5-(12.48))); + yy = 0 + (((tickAnim - 17) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 17) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg3, backLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (-0.4-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 0 + (((tickAnim - 3) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 3) / 3) * (1.125-(0))); + zz = -0.4 + (((tickAnim - 3) / 3) * (-0.38-(-0.4))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 0 + (((tickAnim - 6) / 2) * (0-(0))); + yy = 1.125 + (((tickAnim - 6) / 2) * (0-(1.125))); + zz = -0.38 + (((tickAnim - 6) / 2) * (0-(-0.38))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 0 + (((tickAnim - 8) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 19) { + xx = 0 + (((tickAnim - 10) / 9) * (0-(0))); + yy = 0 + (((tickAnim - 10) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 9) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg3.rotationPointX = this.backLeftLeg3.rotationPointX + (float)(xx); + this.backLeftLeg3.rotationPointY = this.backLeftLeg3.rotationPointY - (float)(yy); + this.backLeftLeg3.rotationPointZ = this.backLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = -41.25 + (((tickAnim - 0) / 8) * (32.75-(-41.25))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 14) { + xx = 32.75 + (((tickAnim - 8) / 6) * (-1.32798-(32.75))); + yy = 0 + (((tickAnim - 8) / 6) * (6.1143-(0))); + zz = 0 + (((tickAnim - 8) / 6) * (-17.4939-(0))); + } + else if (tickAnim >= 14 && tickAnim < 19) { + xx = -1.32798 + (((tickAnim - 14) / 5) * (-41.25-(-1.32798))); + yy = 6.1143 + (((tickAnim - 14) / 5) * (0-(6.1143))); + zz = -17.4939 + (((tickAnim - 14) / 5) * (0-(-17.4939))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg, frontLeftLeg.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 28.75 + (((tickAnim - 0) / 8) * (11.75-(28.75))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 11) { + xx = 11.75 + (((tickAnim - 8) / 3) * (41.97864-(11.75))); + yy = 0 + (((tickAnim - 8) / 3) * (3.275-(0))); + zz = 0 + (((tickAnim - 8) / 3) * (13.8761-(0))); + } + else if (tickAnim >= 11 && tickAnim < 17) { + xx = 41.97864 + (((tickAnim - 11) / 6) * (-17.38774-(41.97864))); + yy = 3.275 + (((tickAnim - 11) / 6) * (5.88275-(3.275))); + zz = 13.8761 + (((tickAnim - 11) / 6) * (-5.62273-(13.8761))); + } + else if (tickAnim >= 17 && tickAnim < 19) { + xx = -17.38774 + (((tickAnim - 17) / 2) * (28.75-(-17.38774))); + yy = 5.88275 + (((tickAnim - 17) / 2) * (0-(5.88275))); + zz = -5.62273 + (((tickAnim - 17) / 2) * (0-(-5.62273))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg2, frontLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 11) { + xx = 0 + (((tickAnim - 8) / 3) * (-0.2-(0))); + yy = 0 + (((tickAnim - 8) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 3) * (0-(0))); + } + else if (tickAnim >= 11 && tickAnim < 14) { + xx = -0.2 + (((tickAnim - 11) / 3) * (-0.15-(-0.2))); + yy = 0 + (((tickAnim - 11) / 3) * (1.25-(0))); + zz = 0 + (((tickAnim - 11) / 3) * (0.125-(0))); + } + else if (tickAnim >= 14 && tickAnim < 17) { + xx = -0.15 + (((tickAnim - 14) / 3) * (0-(-0.15))); + yy = 1.25 + (((tickAnim - 14) / 3) * (0.1-(1.25))); + zz = 0.125 + (((tickAnim - 14) / 3) * (0.26-(0.125))); + } + else if (tickAnim >= 17 && tickAnim < 19) { + xx = 0 + (((tickAnim - 17) / 2) * (0-(0))); + yy = 0.1 + (((tickAnim - 17) / 2) * (0-(0.1))); + zz = 0.26 + (((tickAnim - 17) / 2) * (0-(0.26))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg2.rotationPointX = this.frontLeftLeg2.rotationPointX + (float)(xx); + this.frontLeftLeg2.rotationPointY = this.frontLeftLeg2.rotationPointY - (float)(yy); + this.frontLeftLeg2.rotationPointZ = this.frontLeftLeg2.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375/0.5))*1), main.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-50))*1), main.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-50))*1)); + this.main.rotationPointX = this.main.rotationPointX + (float)(0); + this.main.rotationPointY = this.main.rotationPointY - (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375/0.5-100))*0.15); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375/0.5))*0.1); + + + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(0), body.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-100))*-2), body.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-100))*2)); + + + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375/0.5-50))*-2), body2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-150))*2), body2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-150))*-3)); + + + this.setRotateAngle(body3, body3.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375/0.5-80))*3), body3.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-200))*-2), body3.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-250))*3)); + + + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(10.5+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375/0.5-50))*1), tail.rotateAngleY + (float) Math.toRadians(Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-50))*1), tail.rotateAngleZ + (float) Math.toRadians(Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-50))*1)); + + + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375/0.5-100))*2), tail2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-100))*5), tail2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-50))*1)); + + + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375/0.5-150))*4), tail3.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-150))*10), tail3.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-50))*1)); + + + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375/0.5-200))*8), tail4.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-200))*20), tail4.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*375-50))*1)); + + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = 11.75 + (((tickAnim - 0) / 4) * (-18.89-(11.75))); + yy = 0 + (((tickAnim - 0) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 4) * (0-(0))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = -18.89 + (((tickAnim - 4) / 4) * (62.75-(-18.89))); + yy = 0 + (((tickAnim - 4) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 4) / 4) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 11) { + xx = 62.75 + (((tickAnim - 8) / 3) * (67.66-(62.75))); + yy = 0 + (((tickAnim - 8) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 3) * (0-(0))); + } + else if (tickAnim >= 11 && tickAnim < 13) { + xx = 67.66 + (((tickAnim - 11) / 2) * (71.29-(67.66))); + yy = 0 + (((tickAnim - 11) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 11) / 2) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 17) { + xx = 71.29 + (((tickAnim - 13) / 4) * (72.52-(71.29))); + yy = 0 + (((tickAnim - 13) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 4) * (0-(0))); + } + else if (tickAnim >= 17 && tickAnim < 19) { + xx = 72.52 + (((tickAnim - 17) / 2) * (11.75-(72.52))); + yy = 0 + (((tickAnim - 17) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 17) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg3, frontLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = 0 + (((tickAnim - 0) / 4) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 4) * (0-(0))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = 0 + (((tickAnim - 4) / 4) * (0-(0))); + yy = 0 + (((tickAnim - 4) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 4) / 4) * (-0.45-(0))); + } + else if (tickAnim >= 8 && tickAnim < 11) { + xx = 0 + (((tickAnim - 8) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 8) / 3) * (0-(0))); + zz = -0.45 + (((tickAnim - 8) / 3) * (0-(-0.45))); + } + else if (tickAnim >= 11 && tickAnim < 13) { + xx = 0 + (((tickAnim - 11) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 11) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 11) / 2) * (-0.15-(0))); + } + else if (tickAnim >= 13 && tickAnim < 17) { + xx = 0 + (((tickAnim - 13) / 4) * (0-(0))); + yy = 0 + (((tickAnim - 13) / 4) * (0-(0))); + zz = -0.15 + (((tickAnim - 13) / 4) * (-0.275-(-0.15))); + } + else if (tickAnim >= 17 && tickAnim < 19) { + xx = 0 + (((tickAnim - 17) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 17) / 2) * (0-(0))); + zz = -0.275 + (((tickAnim - 17) / 2) * (0-(-0.275))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg3.rotationPointX = this.frontLeftLeg3.rotationPointX + (float)(xx); + this.frontLeftLeg3.rotationPointY = this.frontLeftLeg3.rotationPointY - (float)(yy); + this.frontLeftLeg3.rotationPointZ = this.frontLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = -11.2326 + (((tickAnim - 0) / 2) * (-15.5-(-11.2326))); + yy = -0.21651 + (((tickAnim - 0) / 2) * (0-(-0.21651))); + zz = -1.01825 + (((tickAnim - 0) / 2) * (0-(-1.01825))); + } + else if (tickAnim >= 2 && tickAnim < 9) { + xx = -15.5 + (((tickAnim - 2) / 7) * (35.5-(-15.5))); + yy = 0 + (((tickAnim - 2) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 7) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 16) { + xx = 35.5 + (((tickAnim - 9) / 7) * (5.83698-(35.5))); + yy = 0 + (((tickAnim - 9) / 7) * (1.0826-(0))); + zz = 0 + (((tickAnim - 9) / 7) * (-1.913+Math.sin((Math.PI/180)*(((double)tickAnim/20)*120))*5-(0))); + } + else if (tickAnim >= 16 && tickAnim < 19) { + xx = 5.83698 + (((tickAnim - 16) / 3) * (-11.2326-(5.83698))); + yy = 1.0826 + (((tickAnim - 16) / 3) * (-0.21651-(1.0826))); + zz = -1.913+Math.sin((Math.PI/180)*(((double)tickAnim/20)*120))*5 + (((tickAnim - 16) / 3) * (-1.01825-(-1.913+Math.sin((Math.PI/180)*(((double)tickAnim/20)*120))*5))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg, backRightLeg.rotateAngleX + (float) Math.toRadians(xx), backRightLeg.rotateAngleY + (float) Math.toRadians(yy), backRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = -7.53572 + (((tickAnim - 0) / 2) * (-12.25-(-7.53572))); + yy = -0.01117 + (((tickAnim - 0) / 2) * (0-(-0.01117))); + zz = 0.09545 + (((tickAnim - 0) / 2) * (0-(0.09545))); + } + else if (tickAnim >= 2 && tickAnim < 9) { + xx = -12.25 + (((tickAnim - 2) / 7) * (7.5-(-12.25))); + yy = 0 + (((tickAnim - 2) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 7) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 11) { + xx = 7.5 + (((tickAnim - 9) / 2) * (24.70535-(7.5))); + yy = 0 + (((tickAnim - 9) / 2) * (-0.01397-(0))); + zz = 0 + (((tickAnim - 9) / 2) * (0.11931-(0))); + } + else if (tickAnim >= 11 && tickAnim < 16) { + xx = 24.70535 + (((tickAnim - 11) / 5) * (11.32141-(24.70535))); + yy = -0.01397 + (((tickAnim - 11) / 5) * (-0.05586-(-0.01397))); + zz = 0.11931 + (((tickAnim - 11) / 5) * (0.47724-(0.11931))); + } + else if (tickAnim >= 16 && tickAnim < 19) { + xx = 11.32141 + (((tickAnim - 16) / 3) * (-7.53572-(11.32141))); + yy = -0.05586 + (((tickAnim - 16) / 3) * (-0.01117-(-0.05586))); + zz = 0.47724 + (((tickAnim - 16) / 3) * (0.09545-(0.47724))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg2, backRightLeg2.rotateAngleX + (float) Math.toRadians(xx), backRightLeg2.rotateAngleY + (float) Math.toRadians(yy), backRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0.2 + (((tickAnim - 0) / 2) * (0-(0.2))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 9) { + xx = 0 + (((tickAnim - 2) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 2) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 7) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 16) { + xx = 0 + (((tickAnim - 9) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 9) / 7) * (1-(0))); + zz = 0 + (((tickAnim - 9) / 7) * (0-(0))); + } + else if (tickAnim >= 16 && tickAnim < 19) { + xx = 0 + (((tickAnim - 16) / 3) * (0-(0))); + yy = 1 + (((tickAnim - 16) / 3) * (0.2-(1))); + zz = 0 + (((tickAnim - 16) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg2.rotationPointX = this.backRightLeg2.rotationPointX + (float)(xx); + this.backRightLeg2.rotationPointY = this.backRightLeg2.rotationPointY - (float)(yy); + this.backRightLeg2.rotationPointZ = this.backRightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 17.19 + (((tickAnim - 0) / 2) * (27-(17.19))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 6) { + xx = 27 + (((tickAnim - 2) / 4) * (-2.54-(27))); + yy = 0 + (((tickAnim - 2) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 4) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = -2.54 + (((tickAnim - 6) / 2) * (24.06-(-2.54))); + yy = 0 + (((tickAnim - 6) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 2) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 9) { + xx = 24.06 + (((tickAnim - 8) / 1) * (59.5-(24.06))); + yy = 0 + (((tickAnim - 8) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 1) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 11) { + xx = 59.5 + (((tickAnim - 9) / 2) * (71.82-(59.5))); + yy = 0 + (((tickAnim - 9) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 9) / 2) * (0-(0))); + } + else if (tickAnim >= 11 && tickAnim < 16) { + xx = 71.82 + (((tickAnim - 11) / 5) * (80.78-(71.82))); + yy = 0 + (((tickAnim - 11) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 11) / 5) * (0-(0))); + } + else if (tickAnim >= 16 && tickAnim < 19) { + xx = 80.78 + (((tickAnim - 16) / 3) * (17.19-(80.78))); + yy = 0 + (((tickAnim - 16) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 16) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg3, backRightLeg3.rotateAngleX + (float) Math.toRadians(xx), backRightLeg3.rotateAngleY + (float) Math.toRadians(yy), backRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 6) { + xx = 0 + (((tickAnim - 2) / 4) * (0-(0))); + yy = 0 + (((tickAnim - 2) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 4) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 9) { + xx = 0 + (((tickAnim - 6) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 6) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 3) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 16) { + xx = 0 + (((tickAnim - 9) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 9) / 7) * (1.5-(0))); + zz = 0 + (((tickAnim - 9) / 7) * (-0.38-(0))); + } + else if (tickAnim >= 16 && tickAnim < 18) { + xx = 0 + (((tickAnim - 16) / 2) * (0-(0))); + yy = 1.5 + (((tickAnim - 16) / 2) * (1.3-(1.5))); + zz = -0.38 + (((tickAnim - 16) / 2) * (-0.19-(-0.38))); + } + else if (tickAnim >= 18 && tickAnim < 19) { + xx = 0 + (((tickAnim - 18) / 1) * (0-(0))); + yy = 1.3 + (((tickAnim - 18) / 1) * (0-(1.3))); + zz = -0.19 + (((tickAnim - 18) / 1) * (0-(-0.19))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg3.rotationPointX = this.backRightLeg3.rotationPointX + (float)(xx); + this.backRightLeg3.rotationPointY = this.backRightLeg3.rotationPointY - (float)(yy); + this.backRightLeg3.rotationPointZ = this.backRightLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 32.75 + (((tickAnim - 0) / 5) * (-13.32798-(32.75))); + yy = 0 + (((tickAnim - 0) / 5) * (-6.11426-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (17.49388-(0))); + } + else if (tickAnim >= 5 && tickAnim < 9) { + xx = -13.32798 + (((tickAnim - 5) / 4) * (-41.25-(-13.32798))); + yy = -6.11426 + (((tickAnim - 5) / 4) * (0-(-6.11426))); + zz = 17.49388 + (((tickAnim - 5) / 4) * (0-(17.49388))); + } + else if (tickAnim >= 9 && tickAnim < 19) { + xx = -41.25 + (((tickAnim - 9) / 10) * (32.75-(-41.25))); + yy = 0 + (((tickAnim - 9) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 9) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg, frontRightLeg.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 11.75 + (((tickAnim - 0) / 2) * (41.97864-(11.75))); + yy = 0 + (((tickAnim - 0) / 2) * (-3.27504-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (-13.87614-(0))); + } + else if (tickAnim >= 2 && tickAnim < 7) { + xx = 41.97864 + (((tickAnim - 2) / 5) * (-17.38774-(41.97864))); + yy = -3.27504 + (((tickAnim - 2) / 5) * (5.88275-(-3.27504))); + zz = -13.87614 + (((tickAnim - 2) / 5) * (-5.62273-(-13.87614))); + } + else if (tickAnim >= 7 && tickAnim < 9) { + xx = -17.38774 + (((tickAnim - 7) / 2) * (28.75-(-17.38774))); + yy = 5.88275 + (((tickAnim - 7) / 2) * (0-(5.88275))); + zz = -5.62273 + (((tickAnim - 7) / 2) * (0-(-5.62273))); + } + else if (tickAnim >= 9 && tickAnim < 19) { + xx = 28.75 + (((tickAnim - 9) / 10) * (11.75-(28.75))); + yy = 0 + (((tickAnim - 9) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 9) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg2, frontRightLeg2.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg2.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0.2-(0))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 5) { + xx = 0.2 + (((tickAnim - 2) / 3) * (0.15-(0.2))); + yy = 0 + (((tickAnim - 2) / 3) * (1.1-(0))); + zz = 0 + (((tickAnim - 2) / 3) * (0.075-(0))); + } + else if (tickAnim >= 5 && tickAnim < 7) { + xx = 0.15 + (((tickAnim - 5) / 2) * (0-(0.15))); + yy = 1.1 + (((tickAnim - 5) / 2) * (0.1-(1.1))); + zz = 0.075 + (((tickAnim - 5) / 2) * (0.26-(0.075))); + } + else if (tickAnim >= 7 && tickAnim < 9) { + xx = 0 + (((tickAnim - 7) / 2) * (0-(0))); + yy = 0.1 + (((tickAnim - 7) / 2) * (0-(0.1))); + zz = 0.26 + (((tickAnim - 7) / 2) * (0-(0.26))); + } + else if (tickAnim >= 9 && tickAnim < 19) { + xx = 0 + (((tickAnim - 9) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 9) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 9) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg2.rotationPointX = this.frontRightLeg2.rotationPointX + (float)(xx); + this.frontRightLeg2.rotationPointY = this.frontRightLeg2.rotationPointY - (float)(yy); + this.frontRightLeg2.rotationPointZ = this.frontRightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 62.75 + (((tickAnim - 0) / 2) * (67.66-(62.75))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 5) { + xx = 67.66 + (((tickAnim - 2) / 3) * (71.29-(67.66))); + yy = 0 + (((tickAnim - 2) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 3) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 7) { + xx = 71.29 + (((tickAnim - 5) / 2) * (72.52-(71.29))); + yy = 0 + (((tickAnim - 5) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 2) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 9) { + xx = 72.52 + (((tickAnim - 7) / 2) * (11.75-(72.52))); + yy = 0 + (((tickAnim - 7) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 2) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 14) { + xx = 11.75 + (((tickAnim - 9) / 5) * (-14.87-(11.75))); + yy = 0 + (((tickAnim - 9) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 9) / 5) * (0-(0))); + } + else if (tickAnim >= 14 && tickAnim < 19) { + xx = -14.87 + (((tickAnim - 14) / 5) * (62.75-(-14.87))); + yy = 0 + (((tickAnim - 14) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 14) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg3, frontRightLeg3.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg3.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = -0.45 + (((tickAnim - 0) / 2) * (-0.375-(-0.45))); + } + else if (tickAnim >= 2 && tickAnim < 5) { + xx = 0 + (((tickAnim - 2) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 2) / 3) * (0-(0))); + zz = -0.375 + (((tickAnim - 2) / 3) * (-0.35-(-0.375))); + } + else if (tickAnim >= 5 && tickAnim < 7) { + xx = 0 + (((tickAnim - 5) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 5) / 2) * (0-(0))); + zz = -0.35 + (((tickAnim - 5) / 2) * (-0.35-(-0.35))); + } + else if (tickAnim >= 7 && tickAnim < 9) { + xx = 0 + (((tickAnim - 7) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 7) / 2) * (0-(0))); + zz = -0.35 + (((tickAnim - 7) / 2) * (0-(-0.35))); + } + else if (tickAnim >= 9 && tickAnim < 14) { + xx = 0 + (((tickAnim - 9) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 9) / 5) * (-0.175-(0))); + zz = 0 + (((tickAnim - 9) / 5) * (0-(0))); + } + else if (tickAnim >= 14 && tickAnim < 19) { + xx = 0 + (((tickAnim - 14) / 5) * (0-(0))); + yy = -0.175 + (((tickAnim - 14) / 5) * (0-(-0.175))); + zz = 0 + (((tickAnim - 14) / 5) * (-0.45-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg3.rotationPointX = this.frontRightLeg3.rotationPointX + (float)(xx); + this.frontRightLeg3.rotationPointY = this.frontRightLeg3.rotationPointY - (float)(yy); + this.frontRightLeg3.rotationPointZ = this.frontRightLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(0), head.rotateAngleY + (float) Math.toRadians(0), head.rotateAngleZ + (float) Math.toRadians(0)); + + } + public void animRunning(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraProtosuchus entity = (EntityPrehistoricFloraProtosuchus) entitylivingbaseIn; + int animCycle = 8; + double tickAnim = (entity.ticksExisted + entity.getTickOffset()) - (int) (Math.floor((double) (entity.ticksExisted + entity.getTickOffset()) / (double) animCycle) * (double) animCycle) + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*430/0.5-30))*9), main.rotateAngleY + (float) Math.toRadians(0), main.rotateAngleZ + (float) Math.toRadians(0)); + this.main.rotationPointX = this.main.rotationPointX + (float)(0); + this.main.rotationPointY = this.main.rotationPointY - (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*430/0.5-20))*0.5); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*430/0.5))*0.5); + + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = -33.16689 + (((tickAnim - 0) / 4) * (40.23032-(-33.16689))); + yy = -13.3269 + (((tickAnim - 0) / 4) * (-7.716-(-13.3269))); + zz = -6.901 + (((tickAnim - 0) / 4) * (-0.6108-(-6.901))); + } + else if (tickAnim >= 4 && tickAnim < 7) { + xx = 40.23032 + (((tickAnim - 4) / 3) * (-37.8031-(40.23032))); + yy = -7.716 + (((tickAnim - 4) / 3) * (-15.2529-(-7.716))); + zz = -0.6108 + (((tickAnim - 4) / 3) * (-15.288-(-0.6108))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = -37.8031 + (((tickAnim - 7) / 1) * (-33.16689-(-37.8031))); + yy = -15.2529 + (((tickAnim - 7) / 1) * (-13.3269-(-15.2529))); + zz = -15.288 + (((tickAnim - 7) / 1) * (-6.901-(-15.288))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = -6.5 + (((tickAnim - 0) / 4) * (12-(-6.5))); + yy = 0 + (((tickAnim - 0) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 4) * (0-(0))); + } + else if (tickAnim >= 4 && tickAnim < 6) { + xx = 12 + (((tickAnim - 4) / 2) * (27.1-(12))); + yy = 0 + (((tickAnim - 4) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 4) / 2) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 27.1 + (((tickAnim - 6) / 2) * (-6.5-(27.1))); + yy = 0 + (((tickAnim - 6) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = -0.45 + (((tickAnim - 0) / 3) * (-0.275-(-0.45))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 0 + (((tickAnim - 3) / 3) * (0-(0))); + yy = -0.275 + (((tickAnim - 3) / 3) * (1.025-(-0.275))); + zz = 0 + (((tickAnim - 3) / 3) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 0 + (((tickAnim - 6) / 2) * (0-(0))); + yy = 1.025 + (((tickAnim - 6) / 2) * (-0.3-(1.025))); + zz = 0 + (((tickAnim - 6) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg2.rotationPointX = this.backLeftLeg2.rotationPointX + (float)(xx); + this.backLeftLeg2.rotationPointY = this.backLeftLeg2.rotationPointY - (float)(yy); + this.backLeftLeg2.rotationPointZ = this.backLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 1) { + xx = 47.40521 + (((tickAnim - 0) / 1) * (17.59271-(47.40521))); + yy = 1.6579 + (((tickAnim - 0) / 1) * (1.6579-(1.6579))); + zz = 6.5441 + (((tickAnim - 0) / 1) * (6.5441-(6.5441))); + } + else if (tickAnim >= 1 && tickAnim < 2) { + xx = 17.59271 + (((tickAnim - 1) / 1) * (26.78021-(17.59271))); + yy = 1.6579 + (((tickAnim - 1) / 1) * (1.6579-(1.6579))); + zz = 6.5441 + (((tickAnim - 1) / 1) * (6.5441-(6.5441))); + } + else if (tickAnim >= 2 && tickAnim < 4) { + xx = 26.78021 + (((tickAnim - 2) / 2) * (73.40521-(26.78021))); + yy = 1.6579 + (((tickAnim - 2) / 2) * (1.6579-(1.6579))); + zz = 6.5441 + (((tickAnim - 2) / 2) * (-6.5441-(6.5441))); + } + else if (tickAnim >= 4 && tickAnim < 5) { + xx = 73.40521 + (((tickAnim - 4) / 1) * (96.53021-(73.40521))); + yy = 1.6579 + (((tickAnim - 4) / 1) * (1.6579-(1.6579))); + zz = -6.5441 + (((tickAnim - 4) / 1) * (-6.5441-(-6.5441))); + } + else if (tickAnim >= 5 && tickAnim < 7) { + xx = 96.53021 + (((tickAnim - 5) / 2) * (25.24709-(96.53021))); + yy = 1.6579 + (((tickAnim - 5) / 2) * (3.49168-(1.6579))); + zz = -6.5441 + (((tickAnim - 5) / 2) * (5.59285-(-6.5441))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 25.24709 + (((tickAnim - 7) / 1) * (13.28021-(25.24709))); + yy = 3.49168 + (((tickAnim - 7) / 1) * (1.6579-(3.49168))); + zz = 5.59285 + (((tickAnim - 7) / 1) * (6.5441-(5.59285))); + } + else if (tickAnim >= 8 && tickAnim < 8) { + xx = 13.28021 + (((tickAnim - 8) / 0) * (47.40521-(13.28021))); + yy = 1.6579 + (((tickAnim - 8) / 0) * (1.6579-(1.6579))); + zz = 6.5441 + (((tickAnim - 8) / 0) * (6.5441-(6.5441))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg3, backLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = -0.325 + (((tickAnim - 0) / 2) * (-0.125-(-0.325))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 3) { + xx = 0 + (((tickAnim - 2) / 1) * (0-(0))); + yy = -0.125 + (((tickAnim - 2) / 1) * (0.385-(-0.125))); + zz = 0 + (((tickAnim - 2) / 1) * (0.2-(0))); + } + else if (tickAnim >= 3 && tickAnim < 4) { + xx = 0 + (((tickAnim - 3) / 1) * (0-(0))); + yy = 0.385 + (((tickAnim - 3) / 1) * (0.15-(0.385))); + zz = 0.2 + (((tickAnim - 3) / 1) * (-0.375-(0.2))); + } + else if (tickAnim >= 4 && tickAnim < 7) { + xx = 0 + (((tickAnim - 4) / 3) * (0-(0))); + yy = 0.15 + (((tickAnim - 4) / 3) * (0.525-(0.15))); + zz = -0.375 + (((tickAnim - 4) / 3) * (0-(-0.375))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 0 + (((tickAnim - 7) / 1) * (0-(0))); + yy = 0.525 + (((tickAnim - 7) / 1) * (0-(0.525))); + zz = 0 + (((tickAnim - 7) / 1) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 8) { + xx = 0 + (((tickAnim - 8) / 0) * (0-(0))); + yy = 0 + (((tickAnim - 8) / 0) * (-0.325-(0))); + zz = 0 + (((tickAnim - 8) / 0) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg3.rotationPointX = this.backLeftLeg3.rotationPointX + (float)(xx); + this.backLeftLeg3.rotationPointY = this.backLeftLeg3.rotationPointY - (float)(yy); + this.backLeftLeg3.rotationPointZ = this.backLeftLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*430/0.5+70))*10), body.rotateAngleY + (float) Math.toRadians(0), body.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*430/0.5-20))*-9), body2.rotateAngleY + (float) Math.toRadians(0), body2.rotateAngleZ + (float) Math.toRadians(0)); + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 39.92159 + (((tickAnim - 0) / 2) * (-8.87369-(39.92159))); + yy = 5.86879 + (((tickAnim - 0) / 2) * (13.05994-(5.86879))); + zz = -0.31147 + (((tickAnim - 0) / 2) * (-55.54863-(-0.31147))); + } + else if (tickAnim >= 2 && tickAnim < 4) { + xx = -8.87369 + (((tickAnim - 2) / 2) * (-37.5-(-8.87369))); + yy = 13.05994 + (((tickAnim - 2) / 2) * (0-(13.05994))); + zz = -55.54863 + (((tickAnim - 2) / 2) * (0-(-55.54863))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = -37.5 + (((tickAnim - 4) / 4) * (39.92159-(-37.5))); + yy = 0 + (((tickAnim - 4) / 4) * (5.86879-(0))); + zz = 0 + (((tickAnim - 4) / 4) * (-0.31147-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg, frontLeftLeg.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 26.00761 + (((tickAnim - 0) / 3) * (-24.84007-(26.00761))); + yy = 1.13448 + (((tickAnim - 0) / 3) * (9.96438-(1.13448))); + zz = 27.96622 + (((tickAnim - 0) / 3) * (33.14602-(27.96622))); + } + else if (tickAnim >= 3 && tickAnim < 4) { + xx = -24.84007 + (((tickAnim - 3) / 1) * (30.25-(-24.84007))); + yy = 9.96438 + (((tickAnim - 3) / 1) * (0-(9.96438))); + zz = 33.14602 + (((tickAnim - 3) / 1) * (0-(33.14602))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = 30.25 + (((tickAnim - 4) / 4) * (26.00761-(30.25))); + yy = 0 + (((tickAnim - 4) / 4) * (1.13448-(0))); + zz = 0 + (((tickAnim - 4) / 4) * (27.96622-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg2, frontLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0.2-(0))); + yy = 0.025 + (((tickAnim - 0) / 3) * (0.535-(0.025))); + zz = 0 + (((tickAnim - 0) / 3) * (0.525-(0))); + } + else if (tickAnim >= 3 && tickAnim < 4) { + xx = 0.2 + (((tickAnim - 3) / 1) * (0-(0.2))); + yy = 0.535 + (((tickAnim - 3) / 1) * (0-(0.535))); + zz = 0.525 + (((tickAnim - 3) / 1) * (0-(0.525))); + } + else if (tickAnim >= 4 && tickAnim < 6) { + xx = 0 + (((tickAnim - 4) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 4) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 4) / 2) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 0 + (((tickAnim - 6) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 6) / 2) * (0.025-(0))); + zz = 0 + (((tickAnim - 6) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg2.rotationPointX = this.frontLeftLeg2.rotationPointX + (float)(xx); + this.frontLeftLeg2.rotationPointY = this.frontLeftLeg2.rotationPointY - (float)(yy); + this.frontLeftLeg2.rotationPointZ = this.frontLeftLeg2.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(body3, body3.rotateAngleX + (float) Math.toRadians(-11.25+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*430/0.5-50))*12), body3.rotateAngleY + (float) Math.toRadians(0), body3.rotateAngleZ + (float) Math.toRadians(0)); + this.body3.rotationPointX = this.body3.rotationPointX + (float)(0); + this.body3.rotationPointY = this.body3.rotationPointY - (float)(0); + this.body3.rotationPointZ = this.body3.rotationPointZ + (float)(0.425); + + + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(18.25+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*430/0.5+20))*5), tail.rotateAngleY + (float) Math.toRadians(0), tail.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(5.75+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*430/0.5-100))*10), tail2.rotateAngleY + (float) Math.toRadians(0), tail2.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*430/0.5-150))*20), tail3.rotateAngleY + (float) Math.toRadians(0), tail3.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*430/0.5-150))*30), tail4.rotateAngleY + (float) Math.toRadians(0), tail4.rotateAngleZ + (float) Math.toRadians(0)); + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 74.75 + (((tickAnim - 0) / 3) * (68.88-(74.75))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 4) { + xx = 68.88 + (((tickAnim - 3) / 1) * (26.5-(68.88))); + yy = 0 + (((tickAnim - 3) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 1) * (0-(0))); + } + else if (tickAnim >= 4 && tickAnim < 6) { + xx = 26.5 + (((tickAnim - 4) / 2) * (-29.38903-(26.5))); + yy = 0 + (((tickAnim - 4) / 2) * (-1.89829-(0))); + zz = 0 + (((tickAnim - 4) / 2) * (-13.87325-(0))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = -29.38903 + (((tickAnim - 6) / 2) * (74.75-(-29.38903))); + yy = -1.89829 + (((tickAnim - 6) / 2) * (0-(-1.89829))); + zz = -13.87325 + (((tickAnim - 6) / 2) * (0-(-13.87325))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg3, frontLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = -0.525 + (((tickAnim - 0) / 3) * (-0.61-(-0.525))); + } + else if (tickAnim >= 3 && tickAnim < 4) { + xx = 0 + (((tickAnim - 3) / 1) * (0-(0))); + yy = 0 + (((tickAnim - 3) / 1) * (-0.25-(0))); + zz = -0.61 + (((tickAnim - 3) / 1) * (0-(-0.61))); + } + else if (tickAnim >= 4 && tickAnim < 6) { + xx = 0 + (((tickAnim - 4) / 2) * (0-(0))); + yy = -0.25 + (((tickAnim - 4) / 2) * (-0.55-(-0.25))); + zz = 0 + (((tickAnim - 4) / 2) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 0 + (((tickAnim - 6) / 2) * (0-(0))); + yy = -0.55 + (((tickAnim - 6) / 2) * (0-(-0.55))); + zz = 0 + (((tickAnim - 6) / 2) * (-0.525-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg3.rotationPointX = this.frontLeftLeg3.rotationPointX + (float)(xx); + this.frontLeftLeg3.rotationPointY = this.frontLeftLeg3.rotationPointY - (float)(yy); + this.frontLeftLeg3.rotationPointZ = this.frontLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = -34.91689 + (((tickAnim - 0) / 3) * (38.73032-(-34.91689))); + yy = 13.3269 + (((tickAnim - 0) / 3) * (7.71601-(13.3269))); + zz = 6.901 + (((tickAnim - 0) / 3) * (0.61082-(6.901))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = 38.73032 + (((tickAnim - 3) / 4) * (-39.16633-(38.73032))); + yy = 7.71601 + (((tickAnim - 3) / 4) * (15.36745-(7.71601))); + zz = 0.61082 + (((tickAnim - 3) / 4) * (15.11285-(0.61082))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = -39.16633 + (((tickAnim - 7) / 1) * (-34.91689-(-39.16633))); + yy = 15.36745 + (((tickAnim - 7) / 1) * (13.3269-(15.36745))); + zz = 15.11285 + (((tickAnim - 7) / 1) * (6.901-(15.11285))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg, backRightLeg.rotateAngleX + (float) Math.toRadians(xx), backRightLeg.rotateAngleY + (float) Math.toRadians(yy), backRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = -6.5 + (((tickAnim - 0) / 3) * (15.27241-(-6.5))); + yy = 0 + (((tickAnim - 0) / 3) * (-4.74918-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (5.48423-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 15.27241 + (((tickAnim - 3) / 3) * (27.1-(15.27241))); + yy = -4.74918 + (((tickAnim - 3) / 3) * (0-(-4.74918))); + zz = 5.48423 + (((tickAnim - 3) / 3) * (0-(5.48423))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 27.1 + (((tickAnim - 6) / 2) * (-6.5-(27.1))); + yy = 0 + (((tickAnim - 6) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg2, backRightLeg2.rotateAngleX + (float) Math.toRadians(xx), backRightLeg2.rotateAngleY + (float) Math.toRadians(yy), backRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = -0.45 + (((tickAnim - 0) / 3) * (-0.275-(-0.45))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 0 + (((tickAnim - 3) / 3) * (0-(0))); + yy = -0.275 + (((tickAnim - 3) / 3) * (1.4-(-0.275))); + zz = 0 + (((tickAnim - 3) / 3) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 0 + (((tickAnim - 6) / 2) * (0-(0))); + yy = 1.4 + (((tickAnim - 6) / 2) * (-0.3-(1.4))); + zz = 0 + (((tickAnim - 6) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg2.rotationPointX = this.backRightLeg2.rotationPointX + (float)(xx); + this.backRightLeg2.rotationPointY = this.backRightLeg2.rotationPointY - (float)(yy); + this.backRightLeg2.rotationPointZ = this.backRightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 1) { + xx = 46.71229 + (((tickAnim - 0) / 1) * (12.09271-(46.71229))); + yy = 6.24152 + (((tickAnim - 0) / 1) * (1.6579-(6.24152))); + zz = -3.482 + (((tickAnim - 0) / 1) * (0-(-3.482))); + } + else if (tickAnim >= 1 && tickAnim < 2) { + xx = 12.09271 + (((tickAnim - 1) / 1) * (27.28021-(12.09271))); + yy = 1.6579 + (((tickAnim - 1) / 1) * (1.6579-(1.6579))); + zz = 0 + (((tickAnim - 1) / 1) * (-6.5441-(0))); + } + else if (tickAnim >= 2 && tickAnim < 3) { + xx = 27.28021 + (((tickAnim - 2) / 1) * (73.40521-(27.28021))); + yy = 1.6579 + (((tickAnim - 2) / 1) * (1.6579-(1.6579))); + zz = -6.5441 + (((tickAnim - 2) / 1) * (-6.5441-(-6.5441))); + } + else if (tickAnim >= 3 && tickAnim < 5) { + xx = 73.40521 + (((tickAnim - 3) / 2) * (96.53021-(73.40521))); + yy = 1.6579 + (((tickAnim - 3) / 2) * (1.6579-(1.6579))); + zz = -6.5441 + (((tickAnim - 3) / 2) * (-6.5441-(-6.5441))); + } + else if (tickAnim >= 5 && tickAnim < 7) { + xx = 96.53021 + (((tickAnim - 5) / 2) * (25.24709-(96.53021))); + yy = 1.6579 + (((tickAnim - 5) / 2) * (3.49168-(1.6579))); + zz = -6.5441 + (((tickAnim - 5) / 2) * (5.59285-(-6.5441))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 25.24709 + (((tickAnim - 7) / 1) * (13.28021-(25.24709))); + yy = 3.49168 + (((tickAnim - 7) / 1) * (1.6579-(3.49168))); + zz = 5.59285 + (((tickAnim - 7) / 1) * (-6.5441-(5.59285))); + } + else if (tickAnim >= 8 && tickAnim < 8) { + xx = 13.28021 + (((tickAnim - 8) / 0) * (46.71229-(13.28021))); + yy = 1.6579 + (((tickAnim - 8) / 0) * (6.24152-(1.6579))); + zz = -6.5441 + (((tickAnim - 8) / 0) * (-3.482-(-6.5441))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg3, backRightLeg3.rotateAngleX + (float) Math.toRadians(xx), backRightLeg3.rotateAngleY + (float) Math.toRadians(yy), backRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = -0.325 + (((tickAnim - 0) / 2) * (-0.125-(-0.325))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 3) { + xx = 0 + (((tickAnim - 2) / 1) * (0-(0))); + yy = -0.125 + (((tickAnim - 2) / 1) * (0.15-(-0.125))); + zz = 0 + (((tickAnim - 2) / 1) * (-0.375-(0))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = 0 + (((tickAnim - 3) / 4) * (0-(0))); + yy = 0.15 + (((tickAnim - 3) / 4) * (0.675-(0.15))); + zz = -0.375 + (((tickAnim - 3) / 4) * (0-(-0.375))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 0 + (((tickAnim - 7) / 1) * (0-(0))); + yy = 0.675 + (((tickAnim - 7) / 1) * (0-(0.675))); + zz = 0 + (((tickAnim - 7) / 1) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 8) { + xx = 0 + (((tickAnim - 8) / 0) * (0-(0))); + yy = 0 + (((tickAnim - 8) / 0) * (-0.325-(0))); + zz = 0 + (((tickAnim - 8) / 0) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg3.rotationPointX = this.backRightLeg3.rotationPointX + (float)(xx); + this.backRightLeg3.rotationPointY = this.backRightLeg3.rotationPointY - (float)(yy); + this.backRightLeg3.rotationPointZ = this.backRightLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 39.92159 + (((tickAnim - 0) / 2) * (-10.42003-(39.92159))); + yy = 5.86879 + (((tickAnim - 0) / 2) * (-22.1154-(5.86879))); + zz = 0.3115 + (((tickAnim - 0) / 2) * (59.39881-(0.3115))); + } + else if (tickAnim >= 2 && tickAnim < 4) { + xx = -10.42003 + (((tickAnim - 2) / 2) * (-37.5-(-10.42003))); + yy = -22.1154 + (((tickAnim - 2) / 2) * (0-(-22.1154))); + zz = 59.39881 + (((tickAnim - 2) / 2) * (0-(59.39881))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = -37.5 + (((tickAnim - 4) / 4) * (39.92159-(-37.5))); + yy = 0 + (((tickAnim - 4) / 4) * (5.86879-(0))); + zz = 0 + (((tickAnim - 4) / 4) * (0.3115-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg, frontRightLeg.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 11.75761 + (((tickAnim - 0) / 3) * (-29.5363-(11.75761))); + yy = 1.13448 + (((tickAnim - 0) / 3) * (1.13901-(1.13448))); + zz = -27.9662 + (((tickAnim - 0) / 3) * (-27.37826-(-27.9662))); + } + else if (tickAnim >= 3 && tickAnim < 4) { + xx = -29.5363 + (((tickAnim - 3) / 1) * (30.25-(-29.5363))); + yy = 1.13901 + (((tickAnim - 3) / 1) * (0-(1.13901))); + zz = -27.37826 + (((tickAnim - 3) / 1) * (0-(-27.37826))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = 30.25 + (((tickAnim - 4) / 4) * (11.75761-(30.25))); + yy = 0 + (((tickAnim - 4) / 4) * (1.13448-(0))); + zz = 0 + (((tickAnim - 4) / 4) * (-27.9662-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg2, frontRightLeg2.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg2.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0.2-(0))); + yy = 0.025 + (((tickAnim - 0) / 3) * (0.535-(0.025))); + zz = 0 + (((tickAnim - 0) / 3) * (0.525-(0))); + } + else if (tickAnim >= 3 && tickAnim < 4) { + xx = 0.2 + (((tickAnim - 3) / 1) * (0-(0.2))); + yy = 0.535 + (((tickAnim - 3) / 1) * (0-(0.535))); + zz = 0.525 + (((tickAnim - 3) / 1) * (0-(0.525))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = 0 + (((tickAnim - 4) / 4) * (0-(0))); + yy = 0 + (((tickAnim - 4) / 4) * (0.025-(0))); + zz = 0 + (((tickAnim - 4) / 4) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg2.rotationPointX = this.frontRightLeg2.rotationPointX + (float)(xx); + this.frontRightLeg2.rotationPointY = this.frontRightLeg2.rotationPointY - (float)(yy); + this.frontRightLeg2.rotationPointZ = this.frontRightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 74.75 + (((tickAnim - 0) / 3) * (68.88-(74.75))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 4) { + xx = 68.88 + (((tickAnim - 3) / 1) * (26.5-(68.88))); + yy = 0 + (((tickAnim - 3) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 1) * (0-(0))); + } + else if (tickAnim >= 4 && tickAnim < 6) { + xx = 26.5 + (((tickAnim - 4) / 2) * (-22.56349-(26.5))); + yy = 0 + (((tickAnim - 4) / 2) * (-9.71994-(0))); + zz = 0 + (((tickAnim - 4) / 2) * (12.93448-(0))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = -22.56349 + (((tickAnim - 6) / 2) * (74.75-(-22.56349))); + yy = -9.71994 + (((tickAnim - 6) / 2) * (0-(-9.71994))); + zz = 12.93448 + (((tickAnim - 6) / 2) * (0-(12.93448))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg3, frontRightLeg3.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg3.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = -0.525 + (((tickAnim - 0) / 3) * (-0.61-(-0.525))); + } + else if (tickAnim >= 3 && tickAnim < 4) { + xx = 0 + (((tickAnim - 3) / 1) * (0-(0))); + yy = 0 + (((tickAnim - 3) / 1) * (-0.25-(0))); + zz = -0.61 + (((tickAnim - 3) / 1) * (0-(-0.61))); + } + else if (tickAnim >= 4 && tickAnim < 6) { + xx = 0 + (((tickAnim - 4) / 2) * (0-(0))); + yy = -0.25 + (((tickAnim - 4) / 2) * (-0.55-(-0.25))); + zz = 0 + (((tickAnim - 4) / 2) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 0 + (((tickAnim - 6) / 2) * (0-(0))); + yy = -0.55 + (((tickAnim - 6) / 2) * (0-(-0.55))); + zz = 0 + (((tickAnim - 6) / 2) * (-0.525-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg3.rotationPointX = this.frontRightLeg3.rotationPointX + (float)(xx); + this.frontRightLeg3.rotationPointY = this.frontRightLeg3.rotationPointY - (float)(yy); + this.frontRightLeg3.rotationPointZ = this.frontRightLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(8.25+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*430/0.5-150))*8), head.rotateAngleY + (float) Math.toRadians(0), head.rotateAngleZ + (float) Math.toRadians(0)); + + } + + @Override + public void setLivingAnimations(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + super.setLivingAnimations(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + this.resetToDefaultPose(); + EntityPrehistoricFloraProtosuchus ee = (EntityPrehistoricFloraProtosuchus) entitylivingbaseIn; + + if (!ee.isReallyInWater()) { + if (ee.getIsMoving()) { + if (ee.getIsFast()) { //Running + animRunning(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + + } else { //Walking + animWalking(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + } + } + } + else { + //Swimming pose: + if (!ee.getIsMoving()) { //static in water + // + } + //moving in water + // + } + if (ee.getAnimation() == ee.EAT_ANIMATION) { + animEat(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.ATTACK_ANIMATION) { + animAttack(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.MAKE_NEST_ANIMATION) { + animNest(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.LAY_ANIMATION) { + animLay(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + + } + + public void animate(IAnimatedEntity entity, float f, float f1, float f2, float f3, float f4, float f5) { + EntityPrehistoricFloraProtosuchus e = (EntityPrehistoricFloraProtosuchus) entity; + animator.update(entity); + setRotationAngles(f, f1, f2, f3, f4, f5, (Entity) entity); + + animator.setAnimation(e.ROAR_ANIMATION); + animator.startKeyframe(10); + animator.rotate(this.jaw, (float) Math.toRadians(30), (float) Math.toRadians(0), (float) Math.toRadians(0)); + animator.endKeyframe(); + animator.setStaticKeyframe(10); + animator.resetKeyframe(10); + + } +} diff --git a/src/main/java/net/lepidodendron/entity/model/entity/ModelRiojasuchus.java b/src/main/java/net/lepidodendron/entity/model/entity/ModelRiojasuchus.java new file mode 100644 index 0000000000..f713a7db7e --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/model/entity/ModelRiojasuchus.java @@ -0,0 +1,2494 @@ +package net.lepidodendron.entity.model.entity; + +import net.ilexiconn.llibrary.client.model.ModelAnimator; +import net.ilexiconn.llibrary.client.model.tools.AdvancedModelRenderer; +import net.ilexiconn.llibrary.server.animation.IAnimatedEntity; +import net.lepidodendron.entity.EntityPrehistoricFloraRiojasuchus; +import net.lepidodendron.entity.model.ModelBasePalaeopedia; +import net.minecraft.client.model.ModelBox; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; + +public class ModelRiojasuchus extends ModelBasePalaeopedia { + private final AdvancedModelRenderer main; + private final AdvancedModelRenderer cube_r1; + private final AdvancedModelRenderer backLeftLeg; + private final AdvancedModelRenderer backLeftLeg2; + private final AdvancedModelRenderer backLeftLeg3; + private final AdvancedModelRenderer backRightLeg; + private final AdvancedModelRenderer backRightLeg2; + private final AdvancedModelRenderer backRightLeg3; + private final AdvancedModelRenderer tail; + private final AdvancedModelRenderer tail2; + private final AdvancedModelRenderer cube_r2; + private final AdvancedModelRenderer tail3; + private final AdvancedModelRenderer body; + private final AdvancedModelRenderer body2; + private final AdvancedModelRenderer frontLeftLeg; + private final AdvancedModelRenderer frontLeftLeg2; + private final AdvancedModelRenderer frontLeftLeg3; + private final AdvancedModelRenderer frontRightLeg; + private final AdvancedModelRenderer frontRightLeg2; + private final AdvancedModelRenderer frontRightLeg3; + private final AdvancedModelRenderer neck; + private final AdvancedModelRenderer cube_r3; + private final AdvancedModelRenderer cube_r4; + private final AdvancedModelRenderer head; + private final AdvancedModelRenderer cube_r5; + private final AdvancedModelRenderer cube_r6; + private final AdvancedModelRenderer cube_r7; + private final AdvancedModelRenderer cube_r8; + private final AdvancedModelRenderer cube_r9; + private final AdvancedModelRenderer jaw; + private final AdvancedModelRenderer cube_r10; + private final AdvancedModelRenderer cube_r11; + + private ModelAnimator animator; + + public ModelRiojasuchus() { + this.textureWidth = 64; + this.textureHeight = 64; + + this.main = new AdvancedModelRenderer(this); + this.main.setRotationPoint(0.0F, 15.5546F, 5.297F); + + + this.cube_r1 = new AdvancedModelRenderer(this); + this.cube_r1.setRotationPoint(0.5F, -0.4296F, -2.472F); + this.main.addChild(cube_r1); + this.setRotateAngle(cube_r1, -0.0873F, 0.0F, 0.0F); + this.cube_r1.cubeList.add(new ModelBox(cube_r1, 34, 33, -2.0F, -1.575F, 0.0F, 3, 1, 5, -0.06F, false)); + this.cube_r1.cubeList.add(new ModelBox(cube_r1, 0, 14, -2.5F, -1.0F, 0.0F, 4, 5, 5, 0.0F, false)); + + this.backLeftLeg = new AdvancedModelRenderer(this); + this.backLeftLeg.setRotationPoint(2.15F, 0.8204F, 0.028F); + this.main.addChild(backLeftLeg); + this.setRotateAngle(backLeftLeg, -0.48F, 0.0F, 0.0F); + this.backLeftLeg.cubeList.add(new ModelBox(backLeftLeg, 40, 9, -1.5F, -1.0F, -1.5F, 3, 5, 3, 0.0F, false)); + + this.backLeftLeg2 = new AdvancedModelRenderer(this); + this.backLeftLeg2.setRotationPoint(1.0F, 4.0F, -1.35F); + this.backLeftLeg.addChild(backLeftLeg2); + this.setRotateAngle(backLeftLeg2, 0.8159F, 0.0F, 0.0F); + this.backLeftLeg2.cubeList.add(new ModelBox(backLeftLeg2, 13, 48, -2.0F, 0.0F, 0.0F, 2, 5, 2, 0.0F, false)); + + this.backLeftLeg3 = new AdvancedModelRenderer(this); + this.backLeftLeg3.setRotationPoint(0.0F, 4.6116F, 0.7755F); + this.backLeftLeg2.addChild(backLeftLeg3); + this.setRotateAngle(backLeftLeg3, -0.3229F, 0.0F, 0.0F); + this.backLeftLeg3.cubeList.add(new ModelBox(backLeftLeg3, 34, 40, -2.5F, -0.4159F, -3.0026F, 3, 1, 4, 0.0F, false)); + + this.backRightLeg = new AdvancedModelRenderer(this); + this.backRightLeg.setRotationPoint(-2.15F, 0.8204F, 0.028F); + this.main.addChild(backRightLeg); + this.setRotateAngle(backRightLeg, -0.48F, 0.0F, 0.0F); + this.backRightLeg.cubeList.add(new ModelBox(backRightLeg, 40, 9, -1.5F, -1.0F, -1.5F, 3, 5, 3, 0.0F, true)); + + this.backRightLeg2 = new AdvancedModelRenderer(this); + this.backRightLeg2.setRotationPoint(-1.0F, 4.0F, -1.35F); + this.backRightLeg.addChild(backRightLeg2); + this.setRotateAngle(backRightLeg2, 0.8159F, 0.0F, 0.0F); + this.backRightLeg2.cubeList.add(new ModelBox(backRightLeg2, 13, 48, 0.0F, 0.0F, 0.0F, 2, 5, 2, 0.0F, true)); + + this.backRightLeg3 = new AdvancedModelRenderer(this); + this.backRightLeg3.setRotationPoint(0.0F, 4.6116F, 0.7755F); + this.backRightLeg2.addChild(backRightLeg3); + this.setRotateAngle(backRightLeg3, -0.3229F, 0.0F, 0.0F); + this.backRightLeg3.cubeList.add(new ModelBox(backRightLeg3, 34, 40, -0.5F, -0.4159F, -3.0026F, 3, 1, 4, 0.0F, true)); + + this.tail = new AdvancedModelRenderer(this); + this.tail.setRotationPoint(0.0F, -0.7814F, 2.3773F); + this.main.addChild(tail); + this.setRotateAngle(tail, -0.3927F, 0.0F, 0.0F); + this.tail.cubeList.add(new ModelBox(tail, 19, 23, -1.5F, 0.0F, 0.0F, 3, 3, 6, 0.0F, false)); + this.tail.cubeList.add(new ModelBox(tail, 17, 33, -1.0F, -0.7F, 0.0F, 2, 1, 6, -0.001F, false)); + + this.tail2 = new AdvancedModelRenderer(this); + this.tail2.setRotationPoint(0.0F, 0.1813F, 5.5034F); + this.tail.addChild(tail2); + this.setRotateAngle(tail2, 0.0436F, 0.0F, 0.0F); + this.tail2.cubeList.add(new ModelBox(tail2, 25, 0, -1.0F, 0.0F, 0.0F, 2, 2, 6, 0.0F, false)); + + this.cube_r2 = new AdvancedModelRenderer(this); + this.cube_r2.setRotationPoint(-0.5F, -0.7F, 0.25F); + this.tail2.addChild(cube_r2); + this.setRotateAngle(cube_r2, -0.0916F, 0.0F, 0.0F); + this.cube_r2.cubeList.add(new ModelBox(cube_r2, 38, 23, 0.0F, 0.0F, -0.25F, 1, 1, 6, 0.0F, false)); + + this.tail3 = new AdvancedModelRenderer(this); + this.tail3.setRotationPoint(0.0F, 0.25F, 5.5F); + this.tail2.addChild(tail3); + this.setRotateAngle(tail3, 0.3491F, 0.0F, 0.0F); + this.tail3.cubeList.add(new ModelBox(tail3, 0, 35, -0.5F, 0.0F, 0.0F, 1, 1, 6, 0.003F, false)); + this.tail3.cubeList.add(new ModelBox(tail3, 41, 46, 0.0F, -0.25F, 0.0F, 0, 1, 5, 0.0F, false)); + + this.body = new AdvancedModelRenderer(this); + this.body.setRotationPoint(0.0F, -0.0421F, -2.297F); + this.main.addChild(body); + this.body.cubeList.add(new ModelBox(body, 0, 0, -2.5F, -1.5125F, -6.5F, 5, 6, 7, 0.0F, false)); + this.body.cubeList.add(new ModelBox(body, 19, 14, -1.5F, -1.9875F, -6.5F, 3, 1, 7, 0.001F, false)); + + this.body2 = new AdvancedModelRenderer(this); + this.body2.setRotationPoint(0.0F, -1.2625F, -6.0F); + this.body.addChild(body2); + this.setRotateAngle(body2, 0.1745F, 0.0F, 0.0F); + this.body2.cubeList.add(new ModelBox(body2, 0, 25, -2.0F, 0.0F, -4.0F, 4, 5, 4, 0.0F, false)); + this.body2.cubeList.add(new ModelBox(body2, 28, 46, -1.0F, -0.675F, -3.975F, 2, 1, 4, 0.0F, false)); + + this.frontLeftLeg = new AdvancedModelRenderer(this); + this.frontLeftLeg.setRotationPoint(1.725F, 3.7769F, -3.3479F); + this.body2.addChild(frontLeftLeg); + this.setRotateAngle(frontLeftLeg, 0.7298F, 0.1468F, -0.162F); + this.frontLeftLeg.cubeList.add(new ModelBox(frontLeftLeg, 51, 31, -1.0F, 0.0F, -0.5F, 2, 4, 2, 0.01F, false)); + + this.frontLeftLeg2 = new AdvancedModelRenderer(this); + this.frontLeftLeg2.setRotationPoint(0.0F, 3.5F, 0.0F); + this.frontLeftLeg.addChild(frontLeftLeg2); + this.setRotateAngle(frontLeftLeg2, -1.3933F, 0.0017F, 0.22F); + this.frontLeftLeg2.cubeList.add(new ModelBox(frontLeftLeg2, 0, 50, -1.0F, -1.0F, -0.725F, 2, 4, 2, 0.0F, false)); + + this.frontLeftLeg3 = new AdvancedModelRenderer(this); + this.frontLeftLeg3.setRotationPoint(0.0F, 2.617F, 0.0036F); + this.frontLeftLeg2.addChild(frontLeftLeg3); + this.setRotateAngle(frontLeftLeg3, 0.48F, 0.0F, 0.0F); + this.frontLeftLeg3.cubeList.add(new ModelBox(frontLeftLeg3, 25, 9, -1.5F, 0.0F, -2.0F, 3, 1, 3, 0.0F, false)); + + this.frontRightLeg = new AdvancedModelRenderer(this); + this.frontRightLeg.setRotationPoint(-1.725F, 3.7769F, -3.3479F); + this.body2.addChild(frontRightLeg); + this.setRotateAngle(frontRightLeg, 0.7298F, -0.1468F, 0.162F); + this.frontRightLeg.cubeList.add(new ModelBox(frontRightLeg, 51, 31, -1.0F, 0.0F, -0.5F, 2, 4, 2, 0.01F, true)); + + this.frontRightLeg2 = new AdvancedModelRenderer(this); + this.frontRightLeg2.setRotationPoint(0.0F, 3.5F, 0.0F); + this.frontRightLeg.addChild(frontRightLeg2); + this.setRotateAngle(frontRightLeg2, -1.3933F, -0.0017F, -0.22F); + this.frontRightLeg2.cubeList.add(new ModelBox(frontRightLeg2, 0, 50, -1.0F, -1.0F, -0.725F, 2, 4, 2, 0.0F, true)); + + this.frontRightLeg3 = new AdvancedModelRenderer(this); + this.frontRightLeg3.setRotationPoint(0.0F, 2.617F, 0.0036F); + this.frontRightLeg2.addChild(frontRightLeg3); + this.setRotateAngle(frontRightLeg3, 0.48F, 0.0F, 0.0F); + this.frontRightLeg3.cubeList.add(new ModelBox(frontRightLeg3, 25, 9, -1.5F, 0.0F, -2.0F, 3, 1, 3, 0.0F, true)); + + this.neck = new AdvancedModelRenderer(this); + this.neck.setRotationPoint(0.0F, 0.025F, -3.5F); + this.body2.addChild(neck); + this.setRotateAngle(neck, -0.1091F, 0.0F, 0.0F); + this.neck.cubeList.add(new ModelBox(neck, 15, 41, -1.25F, 0.0F, -4.0F, 2, 2, 4, -0.011F, false)); + this.neck.cubeList.add(new ModelBox(neck, 42, 0, -0.75F, 0.0F, -4.0F, 2, 2, 4, -0.01F, false)); + + this.cube_r3 = new AdvancedModelRenderer(this); + this.cube_r3.setRotationPoint(0.0F, -0.5F, 0.0F); + this.neck.addChild(cube_r3); + this.setRotateAngle(cube_r3, 0.1091F, 0.0F, 0.0F); + this.cube_r3.cubeList.add(new ModelBox(cube_r3, 49, 40, -0.5F, -0.1F, -4.175F, 1, 1, 4, 0.0F, false)); + + this.cube_r4 = new AdvancedModelRenderer(this); + this.cube_r4.setRotationPoint(-1.75F, 3.0F, -5.0F); + this.neck.addChild(cube_r4); + this.setRotateAngle(cube_r4, -0.1309F, 0.0F, 0.0F); + this.cube_r4.cubeList.add(new ModelBox(cube_r4, 0, 43, 0.75F, -2.125F, 1.0F, 2, 2, 4, -0.011F, false)); + + this.head = new AdvancedModelRenderer(this); + this.head.setRotationPoint(0.0F, -0.0434F, -3.7538F); + this.neck.addChild(head); + this.setRotateAngle(head, 0.1745F, 0.0F, 0.0F); + this.head.cubeList.add(new ModelBox(head, 53, 15, -0.5F, 0.975F, -4.25F, 1, 1, 1, 0.0F, false)); + this.head.cubeList.add(new ModelBox(head, 40, 18, -1.0F, 0.975F, -3.25F, 2, 1, 3, 0.0F, false)); + this.head.cubeList.add(new ModelBox(head, 9, 50, 0.825F, 1.2F, -3.225F, 0, 1, 1, 0.0F, false)); + this.head.cubeList.add(new ModelBox(head, 9, 50, -0.825F, 1.2F, -3.225F, 0, 1, 1, 0.0F, true)); + + this.cube_r5 = new AdvancedModelRenderer(this); + this.cube_r5.setRotationPoint(-0.375F, 2.2491F, -5.6363F); + this.head.addChild(cube_r5); + this.setRotateAngle(cube_r5, 0.9687F, 0.0F, 0.0F); + this.cube_r5.cubeList.add(new ModelBox(cube_r5, 9, 53, 0.0F, 0.0F, 0.0F, 0, 1, 1, 0.0F, true)); + this.cube_r5.cubeList.add(new ModelBox(cube_r5, 9, 53, 0.75F, 0.0F, 0.0F, 0, 1, 1, 0.0F, false)); + + this.cube_r6 = new AdvancedModelRenderer(this); + this.cube_r6.setRotationPoint(0.0F, 2.0833F, -5.8251F); + this.head.addChild(cube_r6); + this.setRotateAngle(cube_r6, 0.7505F, 0.0F, 0.0F); + this.cube_r6.cubeList.add(new ModelBox(cube_r6, 53, 7, -0.5F, 0.0F, 0.0F, 1, 1, 2, 0.002F, false)); + + this.cube_r7 = new AdvancedModelRenderer(this); + this.cube_r7.setRotationPoint(0.0F, 1.1001F, -5.6428F); + this.head.addChild(cube_r7); + this.setRotateAngle(cube_r7, 1.3875F, 0.0F, 0.0F); + this.cube_r7.cubeList.add(new ModelBox(cube_r7, 28, 41, -0.5F, 0.0F, -1.0F, 1, 1, 1, 0.0F, false)); + + this.cube_r8 = new AdvancedModelRenderer(this); + this.cube_r8.setRotationPoint(0.5F, -0.3984F, -1.9341F); + this.head.addChild(cube_r8); + this.setRotateAngle(cube_r8, 0.384F, 0.0F, 0.0F); + this.cube_r8.cubeList.add(new ModelBox(cube_r8, 22, 48, -1.6F, 0.25F, -1.25F, 1, 1, 1, -0.001F, true)); + this.cube_r8.cubeList.add(new ModelBox(cube_r8, 22, 48, -0.4F, 0.25F, -1.25F, 1, 1, 1, -0.001F, false)); + this.cube_r8.cubeList.add(new ModelBox(cube_r8, 52, 46, -1.5F, 0.0F, -2.0F, 2, 1, 2, -0.001F, false)); + this.cube_r8.cubeList.add(new ModelBox(cube_r8, 53, 11, -1.0F, 0.0F, -4.0F, 1, 1, 2, 0.001F, false)); + + this.cube_r9 = new AdvancedModelRenderer(this); + this.cube_r9.setRotationPoint(-0.5F, -0.025F, -0.25F); + this.head.addChild(cube_r9); + this.setRotateAngle(cube_r9, -0.2182F, 0.0F, 0.0F); + this.cube_r9.cubeList.add(new ModelBox(cube_r9, 22, 52, -0.5F, 0.0F, -1.725F, 2, 2, 2, 0.001F, false)); + + this.jaw = new AdvancedModelRenderer(this); + this.jaw.setRotationPoint(-0.5F, 2.0F, -0.5F); + this.head.addChild(jaw); + this.jaw.cubeList.add(new ModelBox(jaw, 53, 23, 0.0F, -0.025F, -4.0F, 1, 1, 2, -0.001F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 51, 18, -0.5F, -0.025F, -2.75F, 2, 1, 3, 0.0F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 31, 52, -0.5F, -1.525F, -1.45F, 2, 2, 2, -0.02F, false)); + + this.cube_r10 = new AdvancedModelRenderer(this); + this.cube_r10.setRotationPoint(0.25F, 0.225F, -3.75F); + this.jaw.addChild(cube_r10); + this.setRotateAngle(cube_r10, 0.0F, -0.2182F, 0.0F); + this.cube_r10.cubeList.add(new ModelBox(cube_r10, 52, 50, 0.0F, -0.5F, -0.25F, 0, 1, 3, 0.0F, true)); + + this.cube_r11 = new AdvancedModelRenderer(this); + this.cube_r11.setRotationPoint(0.75F, 0.225F, -3.75F); + this.jaw.addChild(cube_r11); + this.setRotateAngle(cube_r11, 0.0F, 0.2182F, 0.0F); + this.cube_r11.cubeList.add(new ModelBox(cube_r11, 52, 50, 0.0F, -0.5F, -0.25F, 0, 1, 3, 0.0F, false)); + + updateDefaultPose(); + animator = ModelAnimator.create(); + } + + @Override + public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { + animate((IAnimatedEntity) entity, f, f1, f2, f3, f4, f5); + this.main.render(f5); + } + + @Override + public void renderStaticBook(float f) { + //Rotations, positions and sizing: + this.main.offsetY = 0.2F; + this.main.offsetX = 0.35F; + this.main.offsetZ = 2.0F; + this.main.rotateAngleY = (float)Math.toRadians(120); + this.main.rotateAngleX = (float)Math.toRadians(1); + this.main.rotateAngleZ = (float)Math.toRadians(0); + this.main.scaleChildren = true; + float scaler = 0.6F; + this.main.setScale(scaler, scaler, scaler); + //Start of pose: + + //End of pose, now render the model: + this.main.render(f); + //Reset rotations, positions and sizing: + this.main.setScale(1.0F, 1.0F, 1.0F); + this.main.scaleChildren = false; + resetToDefaultPose(); + + } + + public void renderStaticWall(float f) { + resetToDefaultPose(); + } + + public void renderStaticFloor(float f) { + this.main.offsetY = -0.105F; + this.main.render(0.01F); + resetToDefaultPose(); + } + + public void setRotateAngle(AdvancedModelRenderer AdvancedModelRenderer, float x, float y, float z) { + AdvancedModelRenderer.rotateAngleX = x; + AdvancedModelRenderer.rotateAngleY = y; + AdvancedModelRenderer.rotateAngleZ = z; + } + + @Override + public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity e) { + super.setRotationAngles(f, f1, f2, f3, f4, f5, e); + //this.resetToDefaultPose(); + + EntityPrehistoricFloraRiojasuchus EntityMegalosaurus = (EntityPrehistoricFloraRiojasuchus) e; + + this.faceTarget(f3, f4, 8, neck); + this.faceTarget(f3, f4, 8, head); + + AdvancedModelRenderer[] Tail = {this.tail, this.tail2, this.tail3}; + AdvancedModelRenderer[] Neck = {this.neck, this.head}; + + EntityMegalosaurus.tailBuffer.applyChainSwingBuffer(Tail); + + if (EntityMegalosaurus.getAnimation() == EntityMegalosaurus.LAY_ANIMATION) { + this.chainSwing(Neck, 0.5F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.5F * 2, -0.02F, 0.5F, f2, 0.8F); + } + else { + if (!EntityMegalosaurus.isReallyInWater()) { + + if (f3 == 0.0F || !EntityMegalosaurus.getIsMoving()) { + this.chainSwing(Neck, 0.05F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.05F * 2, -0.02F, 0.5F, f2, 0.8F); + + this.chainWave(Tail, (0.15F * 0.35F), 0.125F * 0.15F, 0.2F, f2, 1F); + this.chainSwing(Tail, (0.15F * 0.35F) * 4F, 0.05F * 0.35F, 0.12F, f2, 1F); + return; + } + + if (EntityMegalosaurus.getIsFast()) { //Running + + + } else { //Walking + + } + } else { + //Swimming pose: + if (f3 == 0.0F) { //static in water + return; + } + //moving in water + return; + } + } + } + + public void animAttack(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraRiojasuchus entity = (EntityPrehistoricFloraRiojasuchus) entitylivingbaseIn; + int animCycle = 15; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (18.45+Math.sin((Math.PI/180)*(((double)tickAnim/20)*60))*-80-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (2.45+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50))*-50-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (-10.25-(0))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = 18.45+Math.sin((Math.PI/180)*(((double)tickAnim/20)*60))*-80 + (((tickAnim - 5) / 5) * (-11.99098-(18.45+Math.sin((Math.PI/180)*(((double)tickAnim/20)*60))*-80))); + yy = 2.45+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50))*-50 + (((tickAnim - 5) / 5) * (-44.687+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50))*100-(2.45+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50))*-50))); + zz = -10.25 + (((tickAnim - 5) / 5) * (10.12006-(-10.25))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = -11.99098 + (((tickAnim - 10) / 5) * (0-(-11.99098))); + yy = -44.687+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50))*100 + (((tickAnim - 10) / 5) * (0-(-44.687+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50))*100))); + zz = 10.12006 + (((tickAnim - 10) / 5) * (0-(10.12006))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0.55-(0))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = 0 + (((tickAnim - 10) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 10) / 5) * (0-(0))); + zz = 0.55 + (((tickAnim - 10) / 5) * (0-(0.55))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.neck.rotationPointX = this.neck.rotationPointX + (float)(xx); + this.neck.rotationPointY = this.neck.rotationPointY - (float)(yy); + this.neck.rotationPointZ = this.neck.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (15.6+Math.sin((Math.PI/180)*(((double)tickAnim/20)*60+20))*-80-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50))*80-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (17.75-(0))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = 15.6+Math.sin((Math.PI/180)*(((double)tickAnim/20)*60+20))*-80 + (((tickAnim - 5) / 5) * (-102.462+Math.sin((Math.PI/180)*(((double)tickAnim/20)*60))*150-(15.6+Math.sin((Math.PI/180)*(((double)tickAnim/20)*60+20))*-80))); + yy = 0+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50))*80 + (((tickAnim - 5) / 5) * (79.3764+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50))*-200-(0+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50))*80))); + zz = 17.75 + (((tickAnim - 5) / 5) * (15.45451-(17.75))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = -102.462+Math.sin((Math.PI/180)*(((double)tickAnim/20)*60))*150 + (((tickAnim - 10) / 5) * (0-(-102.462+Math.sin((Math.PI/180)*(((double)tickAnim/20)*60))*150))); + yy = 79.3764+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50))*-200 + (((tickAnim - 10) / 5) * (0-(79.3764+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50))*-200))); + zz = 15.45451 + (((tickAnim - 10) / 5) * (0-(15.45451))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (0.625-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (-0.625-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (1.55-(0))); + } + else if (tickAnim >= 5 && tickAnim < 15) { + xx = 0.625 + (((tickAnim - 5) / 10) * (0-(0.625))); + yy = -0.625 + (((tickAnim - 5) / 10) * (0-(-0.625))); + zz = 1.55 + (((tickAnim - 5) / 10) * (0-(1.55))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.head.rotationPointX = this.head.rotationPointX + (float)(xx); + this.head.rotationPointY = this.head.rotationPointY - (float)(yy); + this.head.rotationPointZ = this.head.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 8) { + xx = 0 + (((tickAnim - 3) / 5) * (-54.3+Math.sin((Math.PI/180)*(((double)tickAnim/20)*220))*100-(0))); + yy = 0 + (((tickAnim - 3) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 5) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = -54.3+Math.sin((Math.PI/180)*(((double)tickAnim/20)*220))*100 + (((tickAnim - 8) / 7) * (0-(-54.3+Math.sin((Math.PI/180)*(((double)tickAnim/20)*220))*100))); + yy = 0 + (((tickAnim - 8) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animEat(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraRiojasuchus entity = (EntityPrehistoricFloraRiojasuchus) entitylivingbaseIn; + int animCycle = 20; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (17.25-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 17.25 + (((tickAnim - 10) / 10) * (0-(17.25))); + yy = 0 + (((tickAnim - 10) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (23.63-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = 23.63 + (((tickAnim - 5) / 5) * (-12.325+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50+100))*55-(23.63))); + yy = 0 + (((tickAnim - 5) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 5) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = -12.325+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50+100))*55 + (((tickAnim - 10) / 10) * (0-(-12.325+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50+100))*55))); + yy = 0 + (((tickAnim - 10) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (29.25-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = 29.25 + (((tickAnim - 5) / 5) * (0-(29.25))); + yy = 0 + (((tickAnim - 5) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animNest(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraRiojasuchus entity = (EntityPrehistoricFloraRiojasuchus) entitylivingbaseIn; + int animCycle = 50; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 21) { + xx = 0 + (((tickAnim - 0) / 21) * (45.75-(0))); + yy = 0 + (((tickAnim - 0) / 21) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 21) * (0-(0))); + } + else if (tickAnim >= 21 && tickAnim < 33) { + xx = 45.75 + (((tickAnim - 21) / 12) * (-26.75-(45.75))); + yy = 0 + (((tickAnim - 21) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 21) / 12) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 38) { + xx = -26.75 + (((tickAnim - 33) / 5) * (-18.75-(-26.75))); + yy = 0 + (((tickAnim - 33) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 5) * (0-(0))); + } + else if (tickAnim >= 38 && tickAnim < 50) { + xx = -18.75 + (((tickAnim - 38) / 12) * (0-(-18.75))); + yy = 0 + (((tickAnim - 38) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 38) / 12) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 21) { + xx = 0 + (((tickAnim - 0) / 21) * (13-(0))); + yy = 0 + (((tickAnim - 0) / 21) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 21) * (0-(0))); + } + else if (tickAnim >= 21 && tickAnim < 33) { + xx = 13 + (((tickAnim - 21) / 12) * (6.58-(13))); + yy = 0 + (((tickAnim - 21) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 21) / 12) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 38) { + xx = 6.58 + (((tickAnim - 33) / 5) * (0-(6.58))); + yy = 0 + (((tickAnim - 33) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 5) * (0-(0))); + } + else if (tickAnim >= 38 && tickAnim < 50) { + xx = 0 + (((tickAnim - 38) / 12) * (0-(0))); + yy = 0 + (((tickAnim - 38) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 38) / 12) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (1.96-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 21) { + xx = 1.96 + (((tickAnim - 8) / 13) * (71.5-(1.96))); + yy = 0 + (((tickAnim - 8) / 13) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 13) * (0-(0))); + } + else if (tickAnim >= 21 && tickAnim < 27) { + xx = 71.5 + (((tickAnim - 21) / 6) * (107.21-(71.5))); + yy = 0 + (((tickAnim - 21) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 21) / 6) * (0-(0))); + } + else if (tickAnim >= 27 && tickAnim < 33) { + xx = 107.21 + (((tickAnim - 27) / 6) * (71.92-(107.21))); + yy = 0 + (((tickAnim - 27) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 27) / 6) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 38) { + xx = 71.92 + (((tickAnim - 33) / 5) * (17.75-(71.92))); + yy = 0 + (((tickAnim - 33) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 5) * (0-(0))); + } + else if (tickAnim >= 38 && tickAnim < 50) { + xx = 17.75 + (((tickAnim - 38) / 12) * (0-(17.75))); + yy = 0 + (((tickAnim - 38) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 38) / 12) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg3, backLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 21) { + xx = 0 + (((tickAnim - 0) / 21) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 21) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 21) * (0-(0))); + } + else if (tickAnim >= 21 && tickAnim < 27) { + xx = 0 + (((tickAnim - 21) / 6) * (0-(0))); + yy = 0 + (((tickAnim - 21) / 6) * (1.88-(0))); + zz = 0 + (((tickAnim - 21) / 6) * (0-(0))); + } + else if (tickAnim >= 27 && tickAnim < 33) { + xx = 0 + (((tickAnim - 27) / 6) * (0-(0))); + yy = 1.88 + (((tickAnim - 27) / 6) * (1.255-(1.88))); + zz = 0 + (((tickAnim - 27) / 6) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 38) { + xx = 0 + (((tickAnim - 33) / 5) * (0-(0))); + yy = 1.255 + (((tickAnim - 33) / 5) * (-0.625-(1.255))); + zz = 0 + (((tickAnim - 33) / 5) * (0-(0))); + } + else if (tickAnim >= 38 && tickAnim < 50) { + xx = 0 + (((tickAnim - 38) / 12) * (0-(0))); + yy = -0.625 + (((tickAnim - 38) / 12) * (0-(-0.625))); + zz = 0 + (((tickAnim - 38) / 12) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg3.rotationPointX = this.backLeftLeg3.rotationPointX + (float)(xx); + this.backLeftLeg3.rotationPointY = this.backLeftLeg3.rotationPointY - (float)(yy); + this.backLeftLeg3.rotationPointZ = this.backLeftLeg3.rotationPointZ + (float)(zz); + + } + public void animLay(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraRiojasuchus entity = (EntityPrehistoricFloraRiojasuchus) entitylivingbaseIn; + int animCycle = 50; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-9.25-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -9.25 + (((tickAnim - 18) / 15) * (-9.25-(-9.25))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -9.25 + (((tickAnim - 33) / 17) * (0-(-9.25))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(xx), main.rotateAngleY + (float) Math.toRadians(yy), main.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (-2.7-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 0 + (((tickAnim - 18) / 15) * (0-(0))); + yy = -2.7 + (((tickAnim - 18) / 15) * (-2.7-(-2.7))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 0 + (((tickAnim - 33) / 17) * (0-(0))); + yy = -2.7 + (((tickAnim - 33) / 17) * (0-(-2.7))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.main.rotationPointX = this.main.rotationPointX + (float)(xx); + this.main.rotationPointY = this.main.rotationPointY - (float)(yy); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-23.5-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (-6.75-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -23.5 + (((tickAnim - 18) / 15) * (-23.5-(-23.5))); + yy = -6.75 + (((tickAnim - 18) / 15) * (-6.75-(-6.75))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -23.5 + (((tickAnim - 33) / 17) * (0-(-23.5))); + yy = -6.75 + (((tickAnim - 33) / 17) * (0-(-6.75))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (42-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 42 + (((tickAnim - 18) / 15) * (42-(42))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 42 + (((tickAnim - 33) / 17) * (0-(42))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-8.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -8.75 + (((tickAnim - 18) / 15) * (-8.75-(-8.75))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -8.75 + (((tickAnim - 33) / 17) * (0-(-8.75))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg3, backLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-23.5-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (6.75-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -23.5 + (((tickAnim - 18) / 15) * (-23.5-(-23.5))); + yy = 6.75 + (((tickAnim - 18) / 15) * (6.75-(6.75))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -23.5 + (((tickAnim - 33) / 17) * (0-(-23.5))); + yy = 6.75 + (((tickAnim - 33) / 17) * (0-(6.75))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg, backRightLeg.rotateAngleX + (float) Math.toRadians(xx), backRightLeg.rotateAngleY + (float) Math.toRadians(yy), backRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (42-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 42 + (((tickAnim - 18) / 15) * (42-(42))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 42 + (((tickAnim - 33) / 17) * (0-(42))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg2, backRightLeg2.rotateAngleX + (float) Math.toRadians(xx), backRightLeg2.rotateAngleY + (float) Math.toRadians(yy), backRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-8.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -8.75 + (((tickAnim - 18) / 15) * (-8.75-(-8.75))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -8.75 + (((tickAnim - 33) / 17) * (0-(-8.75))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg3, backRightLeg3.rotateAngleX + (float) Math.toRadians(xx), backRightLeg3.rotateAngleY + (float) Math.toRadians(yy), backRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 18) { + xx = 0 + (((tickAnim - 8) / 10) * (3-(0))); + yy = 0 + (((tickAnim - 8) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 10) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 3 + (((tickAnim - 18) / 15) * (3-(3))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 3 + (((tickAnim - 33) / 17) * (0-(3))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(xx), tail.rotateAngleY + (float) Math.toRadians(yy), tail.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (-7.5-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 18) { + xx = -7.5 + (((tickAnim - 8) / 10) * (4.5-(-7.5))); + yy = 0 + (((tickAnim - 8) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 10) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 4.5 + (((tickAnim - 18) / 15) * (4.5-(4.5))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 38) { + xx = 4.5 + (((tickAnim - 33) / 5) * (-2.75-(4.5))); + yy = 0 + (((tickAnim - 33) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 5) * (0-(0))); + } + else if (tickAnim >= 38 && tickAnim < 50) { + xx = -2.75 + (((tickAnim - 38) / 12) * (0-(-2.75))); + yy = 0 + (((tickAnim - 38) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 38) / 12) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(xx), tail2.rotateAngleY + (float) Math.toRadians(yy), tail2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 38) { + xx = 0 + (((tickAnim - 0) / 38) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 38) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 38) * (0-(0))); + } + else if (tickAnim >= 38 && tickAnim < 43) { + xx = 0 + (((tickAnim - 38) / 5) * (-18.37465-(0))); + yy = 0 + (((tickAnim - 38) / 5) * (1.74056-(0))); + zz = 0 + (((tickAnim - 38) / 5) * (1.02689-(0))); + } + else if (tickAnim >= 43 && tickAnim < 50) { + xx = -18.37465 + (((tickAnim - 43) / 7) * (0-(-18.37465))); + yy = 1.74056 + (((tickAnim - 43) / 7) * (0-(1.74056))); + zz = 1.02689 + (((tickAnim - 43) / 7) * (0-(1.02689))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(xx), tail3.rotateAngleY + (float) Math.toRadians(yy), tail3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (17.5-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 17.5 + (((tickAnim - 18) / 15) * (17.5-(17.5))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 17.5 + (((tickAnim - 33) / 17) * (0-(17.5))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg, frontLeftLeg.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-20.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -20.75 + (((tickAnim - 18) / 15) * (-20.75-(-20.75))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -20.75 + (((tickAnim - 33) / 17) * (0-(-20.75))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg2, frontLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (13-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 13 + (((tickAnim - 18) / 15) * (13-(13))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 13 + (((tickAnim - 33) / 17) * (0-(13))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg3, frontLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (17.5-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 17.5 + (((tickAnim - 18) / 15) * (17.5-(17.5))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 17.5 + (((tickAnim - 33) / 17) * (0-(17.5))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg, frontRightLeg.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-20.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -20.75 + (((tickAnim - 18) / 15) * (-20.75-(-20.75))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = -20.75 + (((tickAnim - 33) / 17) * (0-(-20.75))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg2, frontRightLeg2.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg2.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (13-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 13 + (((tickAnim - 18) / 15) * (13-(13))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 13 + (((tickAnim - 33) / 17) * (0-(13))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg3, frontRightLeg3.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg3.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (7-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 7 + (((tickAnim - 18) / 15) * (7-(7))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else if (tickAnim >= 33 && tickAnim < 50) { + xx = 7 + (((tickAnim - 33) / 17) * (0-(7))); + yy = 0 + (((tickAnim - 33) / 17) * (0-(0))); + zz = 0 + (((tickAnim - 33) / 17) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + } + public void animRoar(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraRiojasuchus entity = (EntityPrehistoricFloraRiojasuchus) entitylivingbaseIn; + int animCycle = 30; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 18) { + xx = -14.95+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50-30))*-30 + (((tickAnim - 0) / 18) * (-10.1-(-14.95+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50-30))*-30))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 30) { + xx = -10.1 + (((tickAnim - 18) / 12) * (0-(-10.1))); + yy = 0 + (((tickAnim - 18) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 12) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 12) { + xx = 0 + (((tickAnim - 0) / 12) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 12) * (0.325-(0))); + } + else if (tickAnim >= 12 && tickAnim < 30) { + xx = 0 + (((tickAnim - 12) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 12) / 18) * (0-(0))); + zz = 0.325 + (((tickAnim - 12) / 18) * (0-(0.325))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.neck.rotationPointX = this.neck.rotationPointX + (float)(xx); + this.neck.rotationPointY = this.neck.rotationPointY - (float)(yy); + this.neck.rotationPointZ = this.neck.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (33.625+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-50-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 30) { + xx = 33.625+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-50 + (((tickAnim - 18) / 12) * (0-(33.625+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-50))); + yy = 0 + (((tickAnim - 18) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 12) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (77.2+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-100-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 21) { + xx = 77.2+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-100 + (((tickAnim - 18) / 3) * (0-(77.2+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-100))); + yy = 0 + (((tickAnim - 18) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 3) * (0-(0))); + } + else if (tickAnim >= 21 && tickAnim < 30) { + xx = 0 + (((tickAnim - 21) / 9) * (0-(0))); + yy = 0 + (((tickAnim - 21) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 21) / 9) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animRunning(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraRiojasuchus entity = (EntityPrehistoricFloraRiojasuchus) entitylivingbaseIn; + int animCycle = 13; + double tickAnim = (entity.ticksExisted + entity.getTickOffset()) - (int) (Math.floor((double) (entity.ticksExisted + entity.getTickOffset()) / (double) animCycle) * (double) animCycle) + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*540/0.5))*4), main.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*540))*5), main.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*540-100))*10)); + this.main.rotationPointX = this.main.rotationPointX + (float)(0); + this.main.rotationPointY = this.main.rotationPointY - (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*540/0.5-20))*0.55); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*540/0.5-80))*0.45); + + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = 43.94688 + (((tickAnim - 0) / 4) * (-35.92-(43.94688))); + yy = -13.2075 + (((tickAnim - 0) / 4) * (0-(-13.2075))); + zz = -3.85864 + (((tickAnim - 0) / 4) * (0-(-3.85864))); + } + else if (tickAnim >= 4 && tickAnim < 6) { + xx = -35.92 + (((tickAnim - 4) / 2) * (-20.75-(-35.92))); + yy = 0 + (((tickAnim - 4) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 4) / 2) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 13) { + xx = -20.75 + (((tickAnim - 6) / 7) * (43.94688-(-20.75))); + yy = 0 + (((tickAnim - 6) / 7) * (-13.2075-(0))); + zz = 0 + (((tickAnim - 6) / 7) * (-3.85864-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 1) { + xx = 10.5 + (((tickAnim - 0) / 1) * (23.25-(10.5))); + yy = 0 + (((tickAnim - 0) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 1) * (0-(0))); + } + else if (tickAnim >= 1 && tickAnim < 4) { + xx = 23.25 + (((tickAnim - 1) / 3) * (28.16-(23.25))); + yy = 0 + (((tickAnim - 1) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 1) / 3) * (0-(0))); + } + else if (tickAnim >= 4 && tickAnim < 6) { + xx = 28.16 + (((tickAnim - 4) / 2) * (-8.25-(28.16))); + yy = 0 + (((tickAnim - 4) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 4) / 2) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 13) { + xx = -8.25 + (((tickAnim - 6) / 7) * (10.5-(-8.25))); + yy = 0 + (((tickAnim - 6) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 1) { + xx = 57.75 + (((tickAnim - 0) / 1) * (79.82-(57.75))); + yy = 0 + (((tickAnim - 0) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 1) * (0-(0))); + } + else if (tickAnim >= 1 && tickAnim < 6) { + xx = 79.82 + (((tickAnim - 1) / 5) * (32.61523-(79.82))); + yy = 0 + (((tickAnim - 1) / 5) * (1.60167-(0))); + zz = 0 + (((tickAnim - 1) / 5) * (-9.6188-(0))); + } + else if (tickAnim >= 6 && tickAnim < 10) { + xx = 32.61523 + (((tickAnim - 6) / 4) * (-12.87-(32.61523))); + yy = 1.60167 + (((tickAnim - 6) / 4) * (0-(1.60167))); + zz = -9.6188 + (((tickAnim - 6) / 4) * (0-(-9.6188))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = -12.87 + (((tickAnim - 10) / 3) * (57.75-(-12.87))); + yy = 0 + (((tickAnim - 10) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg3, backLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 1) { + xx = 0 + (((tickAnim - 0) / 1) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 1) * (0.435-(0))); + zz = 0 + (((tickAnim - 0) / 1) * (0.15-(0))); + } + else if (tickAnim >= 1 && tickAnim < 3) { + xx = 0 + (((tickAnim - 1) / 2) * (0-(0))); + yy = 0.435 + (((tickAnim - 1) / 2) * (0.88-(0.435))); + zz = 0.15 + (((tickAnim - 1) / 2) * (0.07-(0.15))); + } + else if (tickAnim >= 3 && tickAnim < 4) { + xx = 0 + (((tickAnim - 3) / 1) * (0-(0))); + yy = 0.88 + (((tickAnim - 3) / 1) * (0.6-(0.88))); + zz = 0.07 + (((tickAnim - 3) / 1) * (0-(0.07))); + } + else if (tickAnim >= 4 && tickAnim < 6) { + xx = 0 + (((tickAnim - 4) / 2) * (0-(0))); + yy = 0.6 + (((tickAnim - 4) / 2) * (-0.175-(0.6))); + zz = 0 + (((tickAnim - 4) / 2) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 9) { + xx = 0 + (((tickAnim - 6) / 3) * (0-(0))); + yy = -0.175 + (((tickAnim - 6) / 3) * (-0.085-(-0.175))); + zz = 0 + (((tickAnim - 6) / 3) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 13) { + xx = 0 + (((tickAnim - 9) / 4) * (0-(0))); + yy = -0.085 + (((tickAnim - 9) / 4) * (0-(-0.085))); + zz = 0 + (((tickAnim - 9) / 4) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg3.rotationPointX = this.backLeftLeg3.rotationPointX + (float)(xx); + this.backLeftLeg3.rotationPointY = this.backLeftLeg3.rotationPointY - (float)(yy); + this.backLeftLeg3.rotationPointZ = this.backLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = -8.25 + (((tickAnim - 0) / 6) * (43.94688-(-8.25))); + yy = 0 + (((tickAnim - 0) / 6) * (13.2075-(0))); + zz = 0 + (((tickAnim - 0) / 6) * (3.85864-(0))); + } + else if (tickAnim >= 6 && tickAnim < 10) { + xx = 43.94688 + (((tickAnim - 6) / 4) * (-35.92-(43.94688))); + yy = 13.2075 + (((tickAnim - 6) / 4) * (0-(13.2075))); + zz = 3.85864 + (((tickAnim - 6) / 4) * (0-(3.85864))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = -35.92 + (((tickAnim - 10) / 3) * (-8.25-(-35.92))); + yy = 0 + (((tickAnim - 10) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg, backRightLeg.rotateAngleX + (float) Math.toRadians(xx), backRightLeg.rotateAngleY + (float) Math.toRadians(yy), backRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = -2.25 + (((tickAnim - 0) / 6) * (10.5-(-2.25))); + yy = 0 + (((tickAnim - 0) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 6) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 7) { + xx = 10.5 + (((tickAnim - 6) / 1) * (23.25-(10.5))); + yy = 0 + (((tickAnim - 6) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 1) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 11) { + xx = 23.25 + (((tickAnim - 7) / 4) * (28.16-(23.25))); + yy = 0 + (((tickAnim - 7) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 4) * (0-(0))); + } + else if (tickAnim >= 11 && tickAnim < 13) { + xx = 28.16 + (((tickAnim - 11) / 2) * (-8.25-(28.16))); + yy = 0 + (((tickAnim - 11) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 11) / 2) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 13) { + xx = -8.25 + (((tickAnim - 13) / 0) * (-2.25-(-8.25))); + yy = 0 + (((tickAnim - 13) / 0) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 0) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg2, backRightLeg2.rotateAngleX + (float) Math.toRadians(xx), backRightLeg2.rotateAngleY + (float) Math.toRadians(yy), backRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 9.63454 + (((tickAnim - 0) / 3) * (1.92-(9.63454))); + yy = 1.55661 + (((tickAnim - 0) / 3) * (0-(1.55661))); + zz = 9.87932 + (((tickAnim - 0) / 3) * (0-(9.87932))); + } + else if (tickAnim >= 3 && tickAnim < 3) { + xx = 1.92 + (((tickAnim - 3) / 0) * (3.86-(1.92))); + yy = 0 + (((tickAnim - 3) / 0) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 0) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 3.86 + (((tickAnim - 3) / 3) * (57.75-(3.86))); + yy = 0 + (((tickAnim - 3) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 3) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 7) { + xx = 57.75 + (((tickAnim - 6) / 1) * (79.82-(57.75))); + yy = 0 + (((tickAnim - 6) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 1) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 13) { + xx = 79.82 + (((tickAnim - 7) / 6) * (27.88513-(79.82))); + yy = 0 + (((tickAnim - 7) / 6) * (-1.47949-(0))); + zz = 0 + (((tickAnim - 7) / 6) * (8.87855-(0))); + } + else if (tickAnim >= 13 && tickAnim < 13) { + xx = 27.88513 + (((tickAnim - 13) / 0) * (9.63454-(27.88513))); + yy = -1.47949 + (((tickAnim - 13) / 0) * (1.55661-(-1.47949))); + zz = 8.87855 + (((tickAnim - 13) / 0) * (9.87932-(8.87855))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg3, backRightLeg3.rotateAngleX + (float) Math.toRadians(xx), backRightLeg3.rotateAngleY + (float) Math.toRadians(yy), backRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 1) { + xx = 0 + (((tickAnim - 0) / 1) * (0-(0))); + yy = 0.375 + (((tickAnim - 0) / 1) * (-0.16-(0.375))); + zz = 0 + (((tickAnim - 0) / 1) * (0.04-(0))); + } + else if (tickAnim >= 1 && tickAnim < 3) { + xx = 0 + (((tickAnim - 1) / 2) * (0-(0))); + yy = -0.16 + (((tickAnim - 1) / 2) * (0.025-(-0.16))); + zz = 0.04 + (((tickAnim - 1) / 2) * (0.075-(0.04))); + } + else if (tickAnim >= 3 && tickAnim < 3) { + xx = 0 + (((tickAnim - 3) / 0) * (0-(0))); + yy = 0.025 + (((tickAnim - 3) / 0) * (0.17-(0.025))); + zz = 0.075 + (((tickAnim - 3) / 0) * (0.175-(0.075))); + } + else if (tickAnim >= 3 && tickAnim < 4) { + xx = 0 + (((tickAnim - 3) / 1) * (0-(0))); + yy = 0.17 + (((tickAnim - 3) / 1) * (0.425-(0.17))); + zz = 0.175 + (((tickAnim - 3) / 1) * (0.21-(0.175))); + } + else if (tickAnim >= 4 && tickAnim < 6) { + xx = 0 + (((tickAnim - 4) / 2) * (0-(0))); + yy = 0.425 + (((tickAnim - 4) / 2) * (0-(0.425))); + zz = 0.21 + (((tickAnim - 4) / 2) * (0-(0.21))); + } + else if (tickAnim >= 6 && tickAnim < 7) { + xx = 0 + (((tickAnim - 6) / 1) * (0-(0))); + yy = 0 + (((tickAnim - 6) / 1) * (0.435-(0))); + zz = 0 + (((tickAnim - 6) / 1) * (0.15-(0))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 0 + (((tickAnim - 7) / 1) * (0-(0))); + yy = 0.435 + (((tickAnim - 7) / 1) * (0.88-(0.435))); + zz = 0.15 + (((tickAnim - 7) / 1) * (0.07-(0.15))); + } + else if (tickAnim >= 8 && tickAnim < 11) { + xx = 0 + (((tickAnim - 8) / 3) * (0-(0))); + yy = 0.88 + (((tickAnim - 8) / 3) * (0.6-(0.88))); + zz = 0.07 + (((tickAnim - 8) / 3) * (0-(0.07))); + } + else if (tickAnim >= 11 && tickAnim < 13) { + xx = 0 + (((tickAnim - 11) / 2) * (0-(0))); + yy = 0.6 + (((tickAnim - 11) / 2) * (0.225-(0.6))); + zz = 0 + (((tickAnim - 11) / 2) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 13) { + xx = 0 + (((tickAnim - 13) / 0) * (0-(0))); + yy = 0.225 + (((tickAnim - 13) / 0) * (0.375-(0.225))); + zz = 0 + (((tickAnim - 13) / 0) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg3.rotationPointX = this.backRightLeg3.rotationPointX + (float)(xx); + this.backRightLeg3.rotationPointY = this.backRightLeg3.rotationPointY - (float)(yy); + this.backRightLeg3.rotationPointZ = this.backRightLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*540/0.5-100))*4), tail.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*540-50))*4), tail.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*540-100))*2.5)); + + + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*540/0.5-150))*8), tail2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*540-100))*10), tail2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*540-150))*2.5)); + + + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*540/0.5-200))*12), tail3.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*540-150))*15), tail3.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*540-200))*4)); + + + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*540/0.5-50))*-4), body.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*540-50))*-5), body.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*540-100))*-15)); + + + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*540/0.5-20))*-3), body2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*540-100))*3), body2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*540-100))*10)); + + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = -75.25 + (((tickAnim - 0) / 6) * (13.25-(-75.25))); + yy = 0 + (((tickAnim - 0) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 6) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 9) { + xx = 13.25 + (((tickAnim - 6) / 3) * (-30.70913-(13.25))); + yy = 0 + (((tickAnim - 6) / 3) * (12.61088-(0))); + zz = 0 + (((tickAnim - 6) / 3) * (-41.58507-(0))); + } + else if (tickAnim >= 9 && tickAnim < 13) { + xx = -30.70913 + (((tickAnim - 9) / 4) * (-75.25-(-30.70913))); + yy = 12.61088 + (((tickAnim - 9) / 4) * (0-(12.61088))); + zz = -41.58507 + (((tickAnim - 9) / 4) * (0-(-41.58507))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg, frontLeftLeg.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = 0 + (((tickAnim - 0) / 6) * (0-(0))); + yy = 0.55 + (((tickAnim - 0) / 6) * (0-(0.55))); + zz = 0.175 + (((tickAnim - 0) / 6) * (0-(0.175))); + } + else if (tickAnim >= 6 && tickAnim < 13) { + xx = 0 + (((tickAnim - 6) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 6) / 7) * (0.55-(0))); + zz = 0 + (((tickAnim - 6) / 7) * (0.175-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg.rotationPointX = this.frontLeftLeg.rotationPointX + (float)(xx); + this.frontLeftLeg.rotationPointY = this.frontLeftLeg.rotationPointY - (float)(yy); + this.frontLeftLeg.rotationPointZ = this.frontLeftLeg.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = 48.81074 + (((tickAnim - 0) / 6) * (10.75-(48.81074))); + yy = -8.85281 + (((tickAnim - 0) / 6) * (0-(-8.85281))); + zz = -4.10122 + (((tickAnim - 0) / 6) * (0-(-4.10122))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 10.75 + (((tickAnim - 6) / 2) * (36.15569-(10.75))); + yy = 0 + (((tickAnim - 6) / 2) * (-0.69172-(0))); + zz = 0 + (((tickAnim - 6) / 2) * (15.88067-(0))); + } + else if (tickAnim >= 8 && tickAnim < 11) { + xx = 36.15569 + (((tickAnim - 8) / 3) * (-20.37186-(36.15569))); + yy = -0.69172 + (((tickAnim - 8) / 3) * (-9.40131-(-0.69172))); + zz = 15.88067 + (((tickAnim - 8) / 3) * (23.15986-(15.88067))); + } + else if (tickAnim >= 11 && tickAnim < 13) { + xx = -20.37186 + (((tickAnim - 11) / 2) * (48.81074-(-20.37186))); + yy = -9.40131 + (((tickAnim - 11) / 2) * (-8.85281-(-9.40131))); + zz = 23.15986 + (((tickAnim - 11) / 2) * (-4.10122-(23.15986))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg2, frontLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 13) { + xx = 0 + (((tickAnim - 0) / 13) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 13) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 13) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg2.rotationPointX = this.frontLeftLeg2.rotationPointX + (float)(xx); + this.frontLeftLeg2.rotationPointY = this.frontLeftLeg2.rotationPointY - (float)(yy); + this.frontLeftLeg2.rotationPointZ = this.frontLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 19.45308 + (((tickAnim - 0) / 3) * (0.94136-(19.45308))); + yy = 2.40857 + (((tickAnim - 0) / 3) * (0.37462-(2.40857))); + zz = -2.18084 + (((tickAnim - 0) / 3) * (-0.50714-(-2.18084))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 0.94136 + (((tickAnim - 3) / 3) * (67-(0.94136))); + yy = 0.37462 + (((tickAnim - 3) / 3) * (0-(0.37462))); + zz = -0.50714 + (((tickAnim - 3) / 3) * (0-(-0.50714))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 67 + (((tickAnim - 6) / 2) * (94.12448-(67))); + yy = 0 + (((tickAnim - 6) / 2) * (0.12445-(0))); + zz = 0 + (((tickAnim - 6) / 2) * (-0.10169-(0))); + } + else if (tickAnim >= 8 && tickAnim < 11) { + xx = 94.12448 + (((tickAnim - 8) / 3) * (94.1238-(94.12448))); + yy = 0.12445 + (((tickAnim - 8) / 3) * (0.29039-(0.12445))); + zz = -0.10169 + (((tickAnim - 8) / 3) * (-0.23727-(-0.10169))); + } + else if (tickAnim >= 11 && tickAnim < 13) { + xx = 94.1238 + (((tickAnim - 11) / 2) * (19.45308-(94.1238))); + yy = 0.29039 + (((tickAnim - 11) / 2) * (2.40857-(0.29039))); + zz = -0.23727 + (((tickAnim - 11) / 2) * (-2.18084-(-0.23727))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg3, frontLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 0 + (((tickAnim - 3) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 3) / 3) * (0.3-(0))); + zz = 0 + (((tickAnim - 3) / 3) * (-0.225-(0))); + } + else if (tickAnim >= 6 && tickAnim < 13) { + xx = 0 + (((tickAnim - 6) / 7) * (0-(0))); + yy = 0.3 + (((tickAnim - 6) / 7) * (0-(0.3))); + zz = -0.225 + (((tickAnim - 6) / 7) * (0-(-0.225))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg3.rotationPointX = this.frontLeftLeg3.rotationPointX + (float)(xx); + this.frontLeftLeg3.rotationPointY = this.frontLeftLeg3.rotationPointY - (float)(yy); + this.frontLeftLeg3.rotationPointZ = this.frontLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 13.25 + (((tickAnim - 0) / 3) * (-30.70913-(13.25))); + yy = 0 + (((tickAnim - 0) / 3) * (-12.61088-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (41.58507-(0))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = -30.70913 + (((tickAnim - 3) / 4) * (-75.25-(-30.70913))); + yy = -12.61088 + (((tickAnim - 3) / 4) * (0-(-12.61088))); + zz = 41.58507 + (((tickAnim - 3) / 4) * (0-(41.58507))); + } + else if (tickAnim >= 7 && tickAnim < 13) { + xx = -75.25 + (((tickAnim - 7) / 6) * (13.25-(-75.25))); + yy = 0 + (((tickAnim - 7) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 6) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg, frontRightLeg.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 0 + (((tickAnim - 0) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 7) * (0.55-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (0.175-(0))); + } + else if (tickAnim >= 7 && tickAnim < 13) { + xx = 0 + (((tickAnim - 7) / 6) * (0-(0))); + yy = 0.55 + (((tickAnim - 7) / 6) * (0-(0.55))); + zz = 0.175 + (((tickAnim - 7) / 6) * (0-(0.175))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg.rotationPointX = this.frontRightLeg.rotationPointX + (float)(xx); + this.frontRightLeg.rotationPointY = this.frontRightLeg.rotationPointY - (float)(yy); + this.frontRightLeg.rotationPointZ = this.frontRightLeg.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 1) { + xx = 10.75 + (((tickAnim - 0) / 1) * (36.15569-(10.75))); + yy = 0 + (((tickAnim - 0) / 1) * (0.69172-(0))); + zz = 0 + (((tickAnim - 0) / 1) * (-15.88067-(0))); + } + else if (tickAnim >= 1 && tickAnim < 4) { + xx = 36.15569 + (((tickAnim - 1) / 3) * (-20.37186-(36.15569))); + yy = 0.69172 + (((tickAnim - 1) / 3) * (9.40131-(0.69172))); + zz = -15.88067 + (((tickAnim - 1) / 3) * (-23.15986-(-15.88067))); + } + else if (tickAnim >= 4 && tickAnim < 7) { + xx = -20.37186 + (((tickAnim - 4) / 3) * (48.81074-(-20.37186))); + yy = 9.40131 + (((tickAnim - 4) / 3) * (8.85281-(9.40131))); + zz = -23.15986 + (((tickAnim - 4) / 3) * (4.10122-(-23.15986))); + } + else if (tickAnim >= 7 && tickAnim < 13) { + xx = 48.81074 + (((tickAnim - 7) / 6) * (10.75-(48.81074))); + yy = 8.85281 + (((tickAnim - 7) / 6) * (0-(8.85281))); + zz = 4.10122 + (((tickAnim - 7) / 6) * (0-(4.10122))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg2, frontRightLeg2.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg2.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + this.frontRightLeg2.rotationPointX = this.frontRightLeg2.rotationPointX + (float)(0); + this.frontRightLeg2.rotationPointY = this.frontRightLeg2.rotationPointY - (float)(0); + this.frontRightLeg2.rotationPointZ = this.frontRightLeg2.rotationPointZ + (float)(0); + + + + if (tickAnim >= 0 && tickAnim < 1) { + xx = 67 + (((tickAnim - 0) / 1) * (94.12448-(67))); + yy = 0 + (((tickAnim - 0) / 1) * (0.12445-(0))); + zz = 0 + (((tickAnim - 0) / 1) * (-0.10169-(0))); + } + else if (tickAnim >= 1 && tickAnim < 3) { + xx = 94.12448 + (((tickAnim - 1) / 2) * (94.1238-(94.12448))); + yy = 0.12445 + (((tickAnim - 1) / 2) * (0.29039-(0.12445))); + zz = -0.10169 + (((tickAnim - 1) / 2) * (-0.23727-(-0.10169))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = 94.1238 + (((tickAnim - 3) / 4) * (24.24559-(94.1238))); + yy = 0.29039 + (((tickAnim - 3) / 4) * (0.76362-(0.29039))); + zz = -0.23727 + (((tickAnim - 3) / 4) * (-0.64507-(-0.23727))); + } + else if (tickAnim >= 7 && tickAnim < 9) { + xx = 24.24559 + (((tickAnim - 7) / 2) * (6.44101-(24.24559))); + yy = 0.76362 + (((tickAnim - 7) / 2) * (-0.31273-(0.76362))); + zz = -0.64507 + (((tickAnim - 7) / 2) * (0.25552-(-0.64507))); + } + else if (tickAnim >= 9 && tickAnim < 13) { + xx = 6.44101 + (((tickAnim - 9) / 4) * (67-(6.44101))); + yy = -0.31273 + (((tickAnim - 9) / 4) * (0-(-0.31273))); + zz = 0.25552 + (((tickAnim - 9) / 4) * (0-(0.25552))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg3, frontRightLeg3.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg3.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 0 + (((tickAnim - 0) / 7) * (0-(0))); + yy = 0.3 + (((tickAnim - 0) / 7) * (0-(0.3))); + zz = -0.225 + (((tickAnim - 0) / 7) * (0-(-0.225))); + } + else if (tickAnim >= 7 && tickAnim < 9) { + xx = 0 + (((tickAnim - 7) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 7) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 2) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 13) { + xx = 0 + (((tickAnim - 9) / 4) * (0-(0))); + yy = 0 + (((tickAnim - 9) / 4) * (0.3-(0))); + zz = 0 + (((tickAnim - 9) / 4) * (-0.225-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg3.rotationPointX = this.frontRightLeg3.rotationPointX + (float)(xx); + this.frontRightLeg3.rotationPointY = this.frontRightLeg3.rotationPointY - (float)(yy); + this.frontRightLeg3.rotationPointZ = this.frontRightLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(-8.25+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*540/0.5-200))*-4), neck.rotateAngleY + (float) Math.toRadians(0), neck.rotateAngleZ + (float) Math.toRadians(Math.sin((Math.PI/180)*((((double)tickAnim/20D))*540-50))*4)); + this.neck.rotationPointX = this.neck.rotationPointX + (float)(0); + this.neck.rotationPointY = this.neck.rotationPointY - (float)(0); + this.neck.rotationPointZ = this.neck.rotationPointZ + (float)(0.55); + + + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*540/0.5-100))*4), head.rotateAngleY + (float) Math.toRadians(0), head.rotateAngleZ + (float) Math.toRadians(0)); + + } + public void animWalking(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraRiojasuchus entity = (EntityPrehistoricFloraRiojasuchus) entitylivingbaseIn; + int animCycle = 25; + double tickAnim = (entity.ticksExisted + entity.getTickOffset()) - (int) (Math.floor((double) (entity.ticksExisted + entity.getTickOffset()) / (double) animCycle) * (double) animCycle) + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*288/0.5))*2.5), main.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*288))*2), main.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*288-100))*2.5)); + this.main.rotationPointX = this.main.rotationPointX + (float)(0); + this.main.rotationPointY = this.main.rotationPointY - (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*288/0.5-20))*0.5); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*288/0.5-80))*0.25); + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 43.94688 + (((tickAnim - 0) / 8) * (-35.92-(43.94688))); + yy = -13.2075 + (((tickAnim - 0) / 8) * (0-(-13.2075))); + zz = -3.85864 + (((tickAnim - 0) / 8) * (0-(-3.85864))); + } + else if (tickAnim >= 8 && tickAnim < 12) { + xx = -35.92 + (((tickAnim - 8) / 4) * (-20.75-(-35.92))); + yy = 0 + (((tickAnim - 8) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 4) * (0-(0))); + } + else if (tickAnim >= 12 && tickAnim < 25) { + xx = -20.75 + (((tickAnim - 12) / 13) * (43.94688-(-20.75))); + yy = 0 + (((tickAnim - 12) / 13) * (-13.2075-(0))); + zz = 0 + (((tickAnim - 12) / 13) * (-3.85864-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 10.5 + (((tickAnim - 0) / 2) * (23.25-(10.5))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 8) { + xx = 23.25 + (((tickAnim - 2) / 6) * (28.16-(23.25))); + yy = 0 + (((tickAnim - 2) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 6) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 12) { + xx = 28.16 + (((tickAnim - 8) / 4) * (-8.25-(28.16))); + yy = 0 + (((tickAnim - 8) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 4) * (0-(0))); + } + else if (tickAnim >= 12 && tickAnim < 25) { + xx = -8.25 + (((tickAnim - 12) / 13) * (10.5-(-8.25))); + yy = 0 + (((tickAnim - 12) / 13) * (0-(0))); + zz = 0 + (((tickAnim - 12) / 13) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 57.75 + (((tickAnim - 0) / 2) * (79.82-(57.75))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 12) { + xx = 79.82 + (((tickAnim - 2) / 10) * (28-(79.82))); + yy = 0 + (((tickAnim - 2) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 10) * (0-(0))); + } + else if (tickAnim >= 12 && tickAnim < 19) { + xx = 28 + (((tickAnim - 12) / 7) * (-12.87-(28))); + yy = 0 + (((tickAnim - 12) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 12) / 7) * (0-(0))); + } + else if (tickAnim >= 19 && tickAnim < 25) { + xx = -12.87 + (((tickAnim - 19) / 6) * (57.75-(-12.87))); + yy = 0 + (((tickAnim - 19) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 19) / 6) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg3, backLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 2) * (0.435-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0.15-(0))); + } + else if (tickAnim >= 2 && tickAnim < 5) { + xx = 0 + (((tickAnim - 2) / 3) * (0-(0))); + yy = 0.435 + (((tickAnim - 2) / 3) * (0.88-(0.435))); + zz = 0.15 + (((tickAnim - 2) / 3) * (0.07-(0.15))); + } + else if (tickAnim >= 5 && tickAnim < 8) { + xx = 0 + (((tickAnim - 5) / 3) * (0-(0))); + yy = 0.88 + (((tickAnim - 5) / 3) * (0.6-(0.88))); + zz = 0.07 + (((tickAnim - 5) / 3) * (0-(0.07))); + } + else if (tickAnim >= 8 && tickAnim < 12) { + xx = 0 + (((tickAnim - 8) / 4) * (0-(0))); + yy = 0.6 + (((tickAnim - 8) / 4) * (-0.75-(0.6))); + zz = 0 + (((tickAnim - 8) / 4) * (0-(0))); + } + else if (tickAnim >= 12 && tickAnim < 17) { + xx = 0 + (((tickAnim - 12) / 5) * (0-(0))); + yy = -0.75 + (((tickAnim - 12) / 5) * (-0.085-(-0.75))); + zz = 0 + (((tickAnim - 12) / 5) * (0-(0))); + } + else if (tickAnim >= 17 && tickAnim < 25) { + xx = 0 + (((tickAnim - 17) / 8) * (0-(0))); + yy = -0.085 + (((tickAnim - 17) / 8) * (0-(-0.085))); + zz = 0 + (((tickAnim - 17) / 8) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg3.rotationPointX = this.backLeftLeg3.rotationPointX + (float)(xx); + this.backLeftLeg3.rotationPointY = this.backLeftLeg3.rotationPointY - (float)(yy); + this.backLeftLeg3.rotationPointZ = this.backLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 11) { + xx = -8.25 + (((tickAnim - 0) / 11) * (43.94688-(-8.25))); + yy = 0 + (((tickAnim - 0) / 11) * (13.2075-(0))); + zz = 0 + (((tickAnim - 0) / 11) * (3.85864-(0))); + } + else if (tickAnim >= 11 && tickAnim < 19) { + xx = 43.94688 + (((tickAnim - 11) / 8) * (-35.92-(43.94688))); + yy = 13.2075 + (((tickAnim - 11) / 8) * (0-(13.2075))); + zz = 3.85864 + (((tickAnim - 11) / 8) * (0-(3.85864))); + } + else if (tickAnim >= 19 && tickAnim < 22) { + xx = -35.92 + (((tickAnim - 19) / 3) * (-20.75-(-35.92))); + yy = 0 + (((tickAnim - 19) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 19) / 3) * (0-(0))); + } + else if (tickAnim >= 22 && tickAnim < 25) { + xx = -20.75 + (((tickAnim - 22) / 3) * (-8.25-(-20.75))); + yy = 0 + (((tickAnim - 22) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 22) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg, backRightLeg.rotateAngleX + (float) Math.toRadians(xx), backRightLeg.rotateAngleY + (float) Math.toRadians(yy), backRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 11) { + xx = -2.25 + (((tickAnim - 0) / 11) * (10.5-(-2.25))); + yy = 0 + (((tickAnim - 0) / 11) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 11) * (0-(0))); + } + else if (tickAnim >= 11 && tickAnim < 13) { + xx = 10.5 + (((tickAnim - 11) / 2) * (23.25-(10.5))); + yy = 0 + (((tickAnim - 11) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 11) / 2) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 19) { + xx = 23.25 + (((tickAnim - 13) / 6) * (28.16-(23.25))); + yy = 0 + (((tickAnim - 13) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 6) * (0-(0))); + } + else if (tickAnim >= 19 && tickAnim < 22) { + xx = 28.16 + (((tickAnim - 19) / 3) * (-8.25-(28.16))); + yy = 0 + (((tickAnim - 19) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 19) / 3) * (0-(0))); + } + else if (tickAnim >= 22 && tickAnim < 25) { + xx = -8.25 + (((tickAnim - 22) / 3) * (-2.25-(-8.25))); + yy = 0 + (((tickAnim - 22) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 22) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg2, backRightLeg2.rotateAngleX + (float) Math.toRadians(xx), backRightLeg2.rotateAngleY + (float) Math.toRadians(yy), backRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 9.5 + (((tickAnim - 0) / 3) * (1.92-(9.5))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = 1.92 + (((tickAnim - 3) / 4) * (3.86-(1.92))); + yy = 0 + (((tickAnim - 3) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 4) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 11) { + xx = 3.86 + (((tickAnim - 7) / 4) * (57.75-(3.86))); + yy = 0 + (((tickAnim - 7) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 4) * (0-(0))); + } + else if (tickAnim >= 11 && tickAnim < 13) { + xx = 57.75 + (((tickAnim - 11) / 2) * (79.82-(57.75))); + yy = 0 + (((tickAnim - 11) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 11) / 2) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 22) { + xx = 79.82 + (((tickAnim - 13) / 9) * (28-(79.82))); + yy = 0 + (((tickAnim - 13) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 9) * (0-(0))); + } + else if (tickAnim >= 22 && tickAnim < 25) { + xx = 28 + (((tickAnim - 22) / 3) * (9.5-(28))); + yy = 0 + (((tickAnim - 22) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 22) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg3, backRightLeg3.rotateAngleX + (float) Math.toRadians(xx), backRightLeg3.rotateAngleY + (float) Math.toRadians(yy), backRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = -0.2 + (((tickAnim - 0) / 2) * (-0.16-(-0.2))); + zz = 0 + (((tickAnim - 0) / 2) * (0.04-(0))); + } + else if (tickAnim >= 2 && tickAnim < 3) { + xx = 0 + (((tickAnim - 2) / 1) * (0-(0))); + yy = -0.16 + (((tickAnim - 2) / 1) * (0.025-(-0.16))); + zz = 0.04 + (((tickAnim - 2) / 1) * (0.075-(0.04))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = 0 + (((tickAnim - 3) / 4) * (0-(0))); + yy = 0.025 + (((tickAnim - 3) / 4) * (0.17-(0.025))); + zz = 0.075 + (((tickAnim - 3) / 4) * (0.175-(0.075))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 0 + (((tickAnim - 7) / 1) * (0-(0))); + yy = 0.17 + (((tickAnim - 7) / 1) * (0.425-(0.17))); + zz = 0.175 + (((tickAnim - 7) / 1) * (0.21-(0.175))); + } + else if (tickAnim >= 8 && tickAnim < 11) { + xx = 0 + (((tickAnim - 8) / 3) * (0-(0))); + yy = 0.425 + (((tickAnim - 8) / 3) * (0-(0.425))); + zz = 0.21 + (((tickAnim - 8) / 3) * (0-(0.21))); + } + else if (tickAnim >= 11 && tickAnim < 13) { + xx = 0 + (((tickAnim - 11) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 11) / 2) * (0.435-(0))); + zz = 0 + (((tickAnim - 11) / 2) * (0.15-(0))); + } + else if (tickAnim >= 13 && tickAnim < 16) { + xx = 0 + (((tickAnim - 13) / 3) * (0-(0))); + yy = 0.435 + (((tickAnim - 13) / 3) * (0.88-(0.435))); + zz = 0.15 + (((tickAnim - 13) / 3) * (0.07-(0.15))); + } + else if (tickAnim >= 16 && tickAnim < 19) { + xx = 0 + (((tickAnim - 16) / 3) * (0-(0))); + yy = 0.88 + (((tickAnim - 16) / 3) * (0.6-(0.88))); + zz = 0.07 + (((tickAnim - 16) / 3) * (0-(0.07))); + } + else if (tickAnim >= 19 && tickAnim < 22) { + xx = 0 + (((tickAnim - 19) / 3) * (0-(0))); + yy = 0.6 + (((tickAnim - 19) / 3) * (-0.75-(0.6))); + zz = 0 + (((tickAnim - 19) / 3) * (0-(0))); + } + else if (tickAnim >= 22 && tickAnim < 25) { + xx = 0 + (((tickAnim - 22) / 3) * (0-(0))); + yy = -0.75 + (((tickAnim - 22) / 3) * (-0.2-(-0.75))); + zz = 0 + (((tickAnim - 22) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg3.rotationPointX = this.backRightLeg3.rotationPointX + (float)(xx); + this.backRightLeg3.rotationPointY = this.backRightLeg3.rotationPointY - (float)(yy); + this.backRightLeg3.rotationPointZ = this.backRightLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*288/0.5-100))*2), tail.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*288-50))*2), tail.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*288-100))*2.5)); + + + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*288/0.5-150))*4), tail2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*288-100))*4), tail2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*288-150))*2.5)); + + + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*288/0.5-200))*6), tail3.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*288-150))*6), tail3.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*288-200))*4)); + + + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*288/0.5-50))*-2), body.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*288-50))*-2), body.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*288-100))*-1.5)); + + + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*288/0.5-20))*-1.5), body2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*288-100))*3), body2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*288-100))*-4)); + + + + if (tickAnim >= 0 && tickAnim < 13) { + xx = -52.5 + (((tickAnim - 0) / 13) * (13.25-(-52.5))); + yy = 0 + (((tickAnim - 0) / 13) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 13) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 19) { + xx = 13.25 + (((tickAnim - 13) / 6) * (-30.70913-(13.25))); + yy = 0 + (((tickAnim - 13) / 6) * (12.61088-(0))); + zz = 0 + (((tickAnim - 13) / 6) * (-41.58507-(0))); + } + else if (tickAnim >= 19 && tickAnim < 25) { + xx = -30.70913 + (((tickAnim - 19) / 6) * (-52.5-(-30.70913))); + yy = 12.61088 + (((tickAnim - 19) / 6) * (0-(12.61088))); + zz = -41.58507 + (((tickAnim - 19) / 6) * (0-(-41.58507))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg, frontLeftLeg.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 13) { + xx = 0 + (((tickAnim - 0) / 13) * (0-(0))); + yy = 0.55 + (((tickAnim - 0) / 13) * (0-(0.55))); + zz = 0.175 + (((tickAnim - 0) / 13) * (0-(0.175))); + } + else if (tickAnim >= 13 && tickAnim < 25) { + xx = 0 + (((tickAnim - 13) / 12) * (0-(0))); + yy = 0 + (((tickAnim - 13) / 12) * (0.55-(0))); + zz = 0 + (((tickAnim - 13) / 12) * (0.175-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg.rotationPointX = this.frontLeftLeg.rotationPointX + (float)(xx); + this.frontLeftLeg.rotationPointY = this.frontLeftLeg.rotationPointY - (float)(yy); + this.frontLeftLeg.rotationPointZ = this.frontLeftLeg.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 13) { + xx = 29.56074 + (((tickAnim - 0) / 13) * (10.75-(29.56074))); + yy = -8.85281 + (((tickAnim - 0) / 13) * (0-(-8.85281))); + zz = -4.10122 + (((tickAnim - 0) / 13) * (0-(-4.10122))); + } + else if (tickAnim >= 13 && tickAnim < 15) { + xx = 10.75 + (((tickAnim - 13) / 2) * (36.15569-(10.75))); + yy = 0 + (((tickAnim - 13) / 2) * (-0.69172-(0))); + zz = 0 + (((tickAnim - 13) / 2) * (15.88067-(0))); + } + else if (tickAnim >= 15 && tickAnim < 21) { + xx = 36.15569 + (((tickAnim - 15) / 6) * (-20.37186-(36.15569))); + yy = -0.69172 + (((tickAnim - 15) / 6) * (-9.40131-(-0.69172))); + zz = 15.88067 + (((tickAnim - 15) / 6) * (23.15986-(15.88067))); + } + else if (tickAnim >= 21 && tickAnim < 25) { + xx = -20.37186 + (((tickAnim - 21) / 4) * (29.56074-(-20.37186))); + yy = -9.40131 + (((tickAnim - 21) / 4) * (-8.85281-(-9.40131))); + zz = 23.15986 + (((tickAnim - 21) / 4) * (-4.10122-(23.15986))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg2, frontLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = 19.45308 + (((tickAnim - 0) / 6) * (0.94136-(19.45308))); + yy = 2.40857 + (((tickAnim - 0) / 6) * (0.37462-(2.40857))); + zz = -2.18084 + (((tickAnim - 0) / 6) * (-0.50714-(-2.18084))); + } + else if (tickAnim >= 6 && tickAnim < 13) { + xx = 0.94136 + (((tickAnim - 6) / 7) * (67-(0.94136))); + yy = 0.37462 + (((tickAnim - 6) / 7) * (0-(0.37462))); + zz = -0.50714 + (((tickAnim - 6) / 7) * (0-(-0.50714))); + } + else if (tickAnim >= 13 && tickAnim < 15) { + xx = 67 + (((tickAnim - 13) / 2) * (94.12448-(67))); + yy = 0 + (((tickAnim - 13) / 2) * (0.12445-(0))); + zz = 0 + (((tickAnim - 13) / 2) * (-0.10169-(0))); + } + else if (tickAnim >= 15 && tickAnim < 21) { + xx = 94.12448 + (((tickAnim - 15) / 6) * (94.1238-(94.12448))); + yy = 0.12445 + (((tickAnim - 15) / 6) * (0.29039-(0.12445))); + zz = -0.10169 + (((tickAnim - 15) / 6) * (-0.23727-(-0.10169))); + } + else if (tickAnim >= 21 && tickAnim < 25) { + xx = 94.1238 + (((tickAnim - 21) / 4) * (19.45308-(94.1238))); + yy = 0.29039 + (((tickAnim - 21) / 4) * (2.40857-(0.29039))); + zz = -0.23727 + (((tickAnim - 21) / 4) * (-2.18084-(-0.23727))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg3, frontLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = 0 + (((tickAnim - 0) / 6) * (0-(0))); + yy = 0.85 + (((tickAnim - 0) / 6) * (0-(0.85))); + zz = 0 + (((tickAnim - 0) / 6) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 13) { + xx = 0 + (((tickAnim - 6) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 6) / 7) * (0.3-(0))); + zz = 0 + (((tickAnim - 6) / 7) * (-0.225-(0))); + } + else if (tickAnim >= 13 && tickAnim < 25) { + xx = 0 + (((tickAnim - 13) / 12) * (0-(0))); + yy = 0.3 + (((tickAnim - 13) / 12) * (0.85-(0.3))); + zz = -0.225 + (((tickAnim - 13) / 12) * (0-(-0.225))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg3.rotationPointX = this.frontLeftLeg3.rotationPointX + (float)(xx); + this.frontLeftLeg3.rotationPointY = this.frontLeftLeg3.rotationPointY - (float)(yy); + this.frontLeftLeg3.rotationPointZ = this.frontLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 13.25 + (((tickAnim - 0) / 8) * (-30.70913-(13.25))); + yy = 0 + (((tickAnim - 0) / 8) * (-12.61088-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (41.58507-(0))); + } + else if (tickAnim >= 8 && tickAnim < 14) { + xx = -30.70913 + (((tickAnim - 8) / 6) * (-52.5-(-30.70913))); + yy = -12.61088 + (((tickAnim - 8) / 6) * (0-(-12.61088))); + zz = 41.58507 + (((tickAnim - 8) / 6) * (0-(41.58507))); + } + else if (tickAnim >= 14 && tickAnim < 25) { + xx = -52.5 + (((tickAnim - 14) / 11) * (13.25-(-52.5))); + yy = 0 + (((tickAnim - 14) / 11) * (0-(0))); + zz = 0 + (((tickAnim - 14) / 11) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg, frontRightLeg.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 14) { + xx = 0 + (((tickAnim - 0) / 14) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 14) * (0.55-(0))); + zz = 0 + (((tickAnim - 0) / 14) * (0.175-(0))); + } + else if (tickAnim >= 14 && tickAnim < 25) { + xx = 0 + (((tickAnim - 14) / 11) * (0-(0))); + yy = 0.55 + (((tickAnim - 14) / 11) * (0-(0.55))); + zz = 0.175 + (((tickAnim - 14) / 11) * (0-(0.175))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg.rotationPointX = this.frontRightLeg.rotationPointX + (float)(xx); + this.frontRightLeg.rotationPointY = this.frontRightLeg.rotationPointY - (float)(yy); + this.frontRightLeg.rotationPointZ = this.frontRightLeg.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 10.75 + (((tickAnim - 0) / 3) * (36.15569-(10.75))); + yy = 0 + (((tickAnim - 0) / 3) * (0.69172-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (-15.88067-(0))); + } + else if (tickAnim >= 3 && tickAnim < 9) { + xx = 36.15569 + (((tickAnim - 3) / 6) * (-20.37186-(36.15569))); + yy = 0.69172 + (((tickAnim - 3) / 6) * (9.40131-(0.69172))); + zz = -15.88067 + (((tickAnim - 3) / 6) * (-23.15986-(-15.88067))); + } + else if (tickAnim >= 9 && tickAnim < 14) { + xx = -20.37186 + (((tickAnim - 9) / 5) * (29.56074-(-20.37186))); + yy = 9.40131 + (((tickAnim - 9) / 5) * (8.85281-(9.40131))); + zz = -23.15986 + (((tickAnim - 9) / 5) * (4.10122-(-23.15986))); + } + else if (tickAnim >= 14 && tickAnim < 25) { + xx = 29.56074 + (((tickAnim - 14) / 11) * (10.75-(29.56074))); + yy = 8.85281 + (((tickAnim - 14) / 11) * (0-(8.85281))); + zz = 4.10122 + (((tickAnim - 14) / 11) * (0-(4.10122))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg2, frontRightLeg2.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg2.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 67 + (((tickAnim - 0) / 3) * (94.12448-(67))); + yy = 0 + (((tickAnim - 0) / 3) * (0.12445-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (-0.10169-(0))); + } + else if (tickAnim >= 3 && tickAnim < 8) { + xx = 94.12448 + (((tickAnim - 3) / 5) * (94.1238-(94.12448))); + yy = 0.12445 + (((tickAnim - 3) / 5) * (0.29039-(0.12445))); + zz = -0.10169 + (((tickAnim - 3) / 5) * (-0.23727-(-0.10169))); + } + else if (tickAnim >= 8 && tickAnim < 14) { + xx = 94.1238 + (((tickAnim - 8) / 6) * (23.24759-(94.1238))); + yy = 0.29039 + (((tickAnim - 8) / 6) * (-0.58079-(0.29039))); + zz = -0.23727 + (((tickAnim - 8) / 6) * (0.47455-(-0.23727))); + } + else if (tickAnim >= 14 && tickAnim < 18) { + xx = 23.24759 + (((tickAnim - 14) / 4) * (6.44101-(23.24759))); + yy = -0.58079 + (((tickAnim - 14) / 4) * (-0.31273-(-0.58079))); + zz = 0.47455 + (((tickAnim - 14) / 4) * (0.25552-(0.47455))); + } + else if (tickAnim >= 18 && tickAnim < 25) { + xx = 6.44101 + (((tickAnim - 18) / 7) * (67-(6.44101))); + yy = -0.31273 + (((tickAnim - 18) / 7) * (0-(-0.31273))); + zz = 0.25552 + (((tickAnim - 18) / 7) * (0-(0.25552))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg3, frontRightLeg3.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg3.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 14) { + xx = 0 + (((tickAnim - 0) / 14) * (0-(0))); + yy = 0.3 + (((tickAnim - 0) / 14) * (0.25-(0.3))); + zz = -0.225 + (((tickAnim - 0) / 14) * (0-(-0.225))); + } + else if (tickAnim >= 14 && tickAnim < 18) { + xx = 0 + (((tickAnim - 14) / 4) * (0-(0))); + yy = 0.25 + (((tickAnim - 14) / 4) * (0-(0.25))); + zz = 0 + (((tickAnim - 14) / 4) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 25) { + xx = 0 + (((tickAnim - 18) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 18) / 7) * (0.3-(0))); + zz = 0 + (((tickAnim - 18) / 7) * (-0.225-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg3.rotationPointX = this.frontRightLeg3.rotationPointX + (float)(xx); + this.frontRightLeg3.rotationPointY = this.frontRightLeg3.rotationPointY - (float)(yy); + this.frontRightLeg3.rotationPointZ = this.frontRightLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*288/0.5-150))*-2), neck.rotateAngleY + (float) Math.toRadians(0), neck.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*288-50))*4)); + + + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*288/0.5-100))*4), head.rotateAngleY + (float) Math.toRadians(0), head.rotateAngleZ + (float) Math.toRadians(0)); + + } + + @Override + public void setLivingAnimations(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + super.setLivingAnimations(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + this.resetToDefaultPose(); + EntityPrehistoricFloraRiojasuchus ee = (EntityPrehistoricFloraRiojasuchus) entitylivingbaseIn; + + if (!ee.isReallyInWater()) { + if (ee.getIsMoving()) { + if (ee.getIsFast()) { //Running + animRunning(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + + } else { //Walking + animWalking(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + } + } + } + else { + //Swimming pose: + if (!ee.getIsMoving()) { //static in water + // + } + //moving in water + // + } + if (ee.getAnimation() == ee.EAT_ANIMATION) { + animEat(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.ATTACK_ANIMATION) { + animAttack(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.MAKE_NEST_ANIMATION) { + animNest(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.LAY_ANIMATION) { + animLay(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.ROAR_ANIMATION) { //The actual roar/anim + animRoar(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + + } + + public void animate(IAnimatedEntity entity, float f, float f1, float f2, float f3, float f4, float f5) { + EntityPrehistoricFloraRiojasuchus e = (EntityPrehistoricFloraRiojasuchus) entity; + + } +} diff --git a/src/main/java/net/lepidodendron/entity/model/entity/ModelTarjadia.java b/src/main/java/net/lepidodendron/entity/model/entity/ModelTarjadia.java new file mode 100644 index 0000000000..a5549b8f71 --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/model/entity/ModelTarjadia.java @@ -0,0 +1,2741 @@ +package net.lepidodendron.entity.model.entity; + +import net.ilexiconn.llibrary.client.model.ModelAnimator; +import net.ilexiconn.llibrary.client.model.tools.AdvancedModelRenderer; +import net.ilexiconn.llibrary.server.animation.IAnimatedEntity; +import net.lepidodendron.entity.EntityPrehistoricFloraTarjadia; +import net.lepidodendron.entity.model.ModelBasePalaeopedia; +import net.minecraft.client.model.ModelBox; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; + +public class ModelTarjadia extends ModelBasePalaeopedia { + private final AdvancedModelRenderer main; + private final AdvancedModelRenderer backLeftLeg; + private final AdvancedModelRenderer backLeftLeg2; + private final AdvancedModelRenderer backLeftLeg3; + private final AdvancedModelRenderer backRightLeg; + private final AdvancedModelRenderer backRightLeg2; + private final AdvancedModelRenderer backRightLeg3; + private final AdvancedModelRenderer tail; + private final AdvancedModelRenderer tail2; + private final AdvancedModelRenderer tail3; + private final AdvancedModelRenderer cube_r1; + private final AdvancedModelRenderer tail4; + private final AdvancedModelRenderer tail5; + private final AdvancedModelRenderer body; + private final AdvancedModelRenderer body2; + private final AdvancedModelRenderer cube_r2; + private final AdvancedModelRenderer frontLeftLeg; + private final AdvancedModelRenderer frontLeftLeg2; + private final AdvancedModelRenderer frontLeftLeg3; + private final AdvancedModelRenderer frontRightLeg; + private final AdvancedModelRenderer frontRightLeg2; + private final AdvancedModelRenderer frontRightLeg3; + private final AdvancedModelRenderer neck; + private final AdvancedModelRenderer cube_r3; + private final AdvancedModelRenderer cube_r4; + private final AdvancedModelRenderer head; + private final AdvancedModelRenderer cube_r5; + private final AdvancedModelRenderer cube_r6; + private final AdvancedModelRenderer cube_r7; + private final AdvancedModelRenderer cube_r8; + private final AdvancedModelRenderer cube_r9; + private final AdvancedModelRenderer cube_r10; + private final AdvancedModelRenderer cube_r11; + private final AdvancedModelRenderer cube_r12; + private final AdvancedModelRenderer cube_r13; + private final AdvancedModelRenderer jaw; + private final AdvancedModelRenderer cube_r14; + private final AdvancedModelRenderer cube_r15; + private final AdvancedModelRenderer cube_r16; + private final AdvancedModelRenderer cube_r17; + private final AdvancedModelRenderer cube_r18; + private final AdvancedModelRenderer cube_r19; + private final AdvancedModelRenderer cube_r20; + private final AdvancedModelRenderer cube_r21; + private final AdvancedModelRenderer cube_r22; + private final AdvancedModelRenderer cube_r23; + private final AdvancedModelRenderer cube_r24; + private final AdvancedModelRenderer cube_r25; + + private ModelAnimator animator; + + public ModelTarjadia() { + this.textureWidth = 80; + this.textureHeight = 80; + + this.main = new AdvancedModelRenderer(this); + this.main.setRotationPoint(0.0F, 13.4375F, 7.0F); + this.main.cubeList.add(new ModelBox(main, 23, 15, -2.0F, -1.0375F, -4.0F, 4, 5, 5, 0.0F, false)); + this.main.cubeList.add(new ModelBox(main, 42, 19, -1.0F, -1.4625F, -4.0F, 2, 1, 5, -0.001F, false)); + + this.backLeftLeg = new AdvancedModelRenderer(this); + this.backLeftLeg.setRotationPoint(2.0F, 1.3542F, -1.5455F); + this.main.addChild(backLeftLeg); + this.setRotateAngle(backLeftLeg, -0.0873F, 0.0F, 0.0F); + this.backLeftLeg.cubeList.add(new ModelBox(backLeftLeg, 46, 0, -0.5F, -1.5F, -1.5F, 2, 6, 3, 0.0F, false)); + this.backLeftLeg.cubeList.add(new ModelBox(backLeftLeg, 11, 59, 0.6F, 1.4F, -1.6F, 1, 3, 2, 0.0F, false)); + + this.backLeftLeg2 = new AdvancedModelRenderer(this); + this.backLeftLeg2.setRotationPoint(1.5F, 4.5F, -1.5F); + this.backLeftLeg.addChild(backLeftLeg2); + this.setRotateAngle(backLeftLeg2, 0.48F, 0.0F, 0.0F); + this.backLeftLeg2.cubeList.add(new ModelBox(backLeftLeg2, 57, 8, -2.0F, 0.0F, 0.0F, 2, 5, 2, -0.001F, false)); + this.backLeftLeg2.cubeList.add(new ModelBox(backLeftLeg2, 62, 42, -0.9F, 0.5F, -0.1F, 1, 3, 1, -0.003F, false)); + + this.backLeftLeg3 = new AdvancedModelRenderer(this); + this.backLeftLeg3.setRotationPoint(0.0F, 4.6826F, 1.2435F); + this.backLeftLeg2.addChild(backLeftLeg3); + this.setRotateAngle(backLeftLeg3, -0.3752F, 0.0F, 0.0F); + this.backLeftLeg3.cubeList.add(new ModelBox(backLeftLeg3, 15, 46, -2.5F, 0.0F, -3.5F, 3, 1, 4, 0.0F, false)); + + this.backRightLeg = new AdvancedModelRenderer(this); + this.backRightLeg.setRotationPoint(-2.0F, 1.3542F, -1.5455F); + this.main.addChild(backRightLeg); + this.setRotateAngle(backRightLeg, -0.0873F, 0.0F, 0.0F); + this.backRightLeg.cubeList.add(new ModelBox(backRightLeg, 46, 0, -1.5F, -1.5F, -1.5F, 2, 6, 3, 0.0F, true)); + this.backRightLeg.cubeList.add(new ModelBox(backRightLeg, 11, 59, -1.6F, 1.4F, -1.6F, 1, 3, 2, 0.0F, true)); + + this.backRightLeg2 = new AdvancedModelRenderer(this); + this.backRightLeg2.setRotationPoint(-1.5F, 4.5F, -1.5F); + this.backRightLeg.addChild(backRightLeg2); + this.setRotateAngle(backRightLeg2, 0.48F, 0.0F, 0.0F); + this.backRightLeg2.cubeList.add(new ModelBox(backRightLeg2, 57, 8, 0.0F, 0.0F, 0.0F, 2, 5, 2, -0.001F, true)); + this.backRightLeg2.cubeList.add(new ModelBox(backRightLeg2, 62, 42, -0.1F, 0.5F, -0.1F, 1, 3, 1, -0.003F, true)); + + this.backRightLeg3 = new AdvancedModelRenderer(this); + this.backRightLeg3.setRotationPoint(0.0F, 4.6826F, 1.2435F); + this.backRightLeg2.addChild(backRightLeg3); + this.setRotateAngle(backRightLeg3, -0.3752F, 0.0F, 0.0F); + this.backRightLeg3.cubeList.add(new ModelBox(backRightLeg3, 15, 46, -0.5F, 0.0F, -3.5F, 3, 1, 4, 0.0F, true)); + + this.tail = new AdvancedModelRenderer(this); + this.tail.setRotationPoint(0.0F, -0.9375F, 0.5F); + this.main.addChild(tail); + this.setRotateAngle(tail, -0.1571F, 0.0F, 0.0F); + this.tail.cubeList.add(new ModelBox(tail, 19, 26, -1.5F, 0.0F, 0.0F, 3, 4, 6, 0.0F, false)); + this.tail.cubeList.add(new ModelBox(tail, 42, 11, -0.5F, -0.5F, 0.0F, 1, 1, 6, -0.001F, false)); + + this.tail2 = new AdvancedModelRenderer(this); + this.tail2.setRotationPoint(0.0F, 0.075F, 5.5F); + this.tail.addChild(tail2); + this.setRotateAngle(tail2, -0.2618F, 0.0F, 0.0F); + this.tail2.cubeList.add(new ModelBox(tail2, 27, 0, -1.0F, 0.075F, 0.0F, 2, 3, 7, 0.0F, false)); + this.tail2.cubeList.add(new ModelBox(tail2, 17, 37, -0.5F, -0.5F, 0.0F, 1, 1, 7, -0.002F, false)); + + this.tail3 = new AdvancedModelRenderer(this); + this.tail3.setRotationPoint(0.0F, 0.45F, 6.5F); + this.tail2.addChild(tail3); + this.tail3.cubeList.add(new ModelBox(tail3, 38, 26, -0.5F, -0.025F, 0.0F, 1, 2, 6, 0.0F, false)); + + this.cube_r1 = new AdvancedModelRenderer(this); + this.cube_r1.setRotationPoint(0.0F, -0.775F, 0.5F); + this.tail3.addChild(cube_r1); + this.setRotateAngle(cube_r1, -0.0873F, 0.0F, 0.0F); + this.cube_r1.cubeList.add(new ModelBox(cube_r1, 49, 45, 0.0F, 0.0F, -0.5F, 0, 1, 6, 0.0F, false)); + + this.tail4 = new AdvancedModelRenderer(this); + this.tail4.setRotationPoint(0.0F, 0.5F, 5.8F); + this.tail3.addChild(tail4); + this.setRotateAngle(tail4, 0.0436F, 0.0F, 0.0F); + this.tail4.cubeList.add(new ModelBox(tail4, 50, 46, 0.025F, -0.775F, 0.2F, 0, 1, 5, 0.0F, false)); + this.tail4.cubeList.add(new ModelBox(tail4, 51, 35, -0.5F, -0.525F, 0.0F, 1, 1, 5, 0.001F, false)); + + this.tail5 = new AdvancedModelRenderer(this); + this.tail5.setRotationPoint(0.0F, 0.0F, 4.75F); + this.tail4.addChild(tail5); + this.setRotateAngle(tail5, 0.1309F, 0.0F, 0.0F); + this.tail5.cubeList.add(new ModelBox(tail5, 50, 46, 0.0F, -0.7F, 0.5F, 0, 1, 5, 0.0F, false)); + this.tail5.cubeList.add(new ModelBox(tail5, 0, 45, -0.5F, -0.525F, 0.0F, 1, 1, 6, -0.003F, false)); + + this.body = new AdvancedModelRenderer(this); + this.body.setRotationPoint(0.0F, -1.0375F, -3.5F); + this.main.addChild(body); + this.setRotateAngle(body, 0.0436F, 0.0F, 0.0F); + this.body.cubeList.add(new ModelBox(body, 0, 0, -2.5F, -0.25F, -8.0F, 5, 6, 8, 0.0F, false)); + this.body.cubeList.add(new ModelBox(body, 0, 15, -1.5F, -0.5F, -8.0F, 3, 1, 8, -0.001F, false)); + + this.body2 = new AdvancedModelRenderer(this); + this.body2.setRotationPoint(0.0F, 0.0218F, -7.2498F); + this.body.addChild(body2); + this.setRotateAngle(body2, 0.0218F, 0.0F, 0.0F); + this.body2.cubeList.add(new ModelBox(body2, 0, 25, -2.0F, 0.0F, -5.0F, 4, 5, 5, 0.0F, false)); + + this.cube_r2 = new AdvancedModelRenderer(this); + this.cube_r2.setRotationPoint(0.0F, -0.325F, -5.0F); + this.body2.addChild(cube_r2); + this.setRotateAngle(cube_r2, 0.0131F, 0.0F, 0.0F); + this.cube_r2.cubeList.add(new ModelBox(cube_r2, 34, 45, -1.0F, -0.025F, -0.025F, 2, 1, 5, 0.0F, false)); + + this.frontLeftLeg = new AdvancedModelRenderer(this); + this.frontLeftLeg.setRotationPoint(2.0F, 3.5727F, -3.5441F); + this.body2.addChild(frontLeftLeg); + this.setRotateAngle(frontLeftLeg, 0.5149F, 0.0F, 0.0F); + this.frontLeftLeg.cubeList.add(new ModelBox(frontLeftLeg, 36, 11, 0.1F, 2.25F, 0.1F, 1, 2, 1, 0.0F, false)); + this.frontLeftLeg.cubeList.add(new ModelBox(frontLeftLeg, 57, 0, -1.0F, -0.5F, -1.0F, 2, 5, 2, 0.0F, false)); + + this.frontLeftLeg2 = new AdvancedModelRenderer(this); + this.frontLeftLeg2.setRotationPoint(-0.5F, 4.5F, 1.0F); + this.frontLeftLeg.addChild(frontLeftLeg2); + this.setRotateAngle(frontLeftLeg2, -0.7854F, 0.0F, 0.0F); + this.frontLeftLeg2.cubeList.add(new ModelBox(frontLeftLeg2, 50, 58, -0.5F, 0.0F, -2.0F, 2, 4, 2, -0.001F, false)); + this.frontLeftLeg2.cubeList.add(new ModelBox(frontLeftLeg2, 62, 47, 0.6F, 0.5F, -2.15F, 1, 3, 1, -0.003F, false)); + this.frontLeftLeg2.cubeList.add(new ModelBox(frontLeftLeg2, 59, 62, 0.6F, 1.0F, -0.9F, 1, 2, 1, -0.003F, false)); + + this.frontLeftLeg3 = new AdvancedModelRenderer(this); + this.frontLeftLeg3.setRotationPoint(0.0F, 3.3169F, -0.2862F); + this.frontLeftLeg2.addChild(frontLeftLeg3); + this.setRotateAngle(frontLeftLeg3, 0.2182F, 0.0F, 0.0F); + this.frontLeftLeg3.cubeList.add(new ModelBox(frontLeftLeg3, 53, 26, -1.0F, 0.0F, -3.0F, 3, 1, 3, 0.0F, false)); + + this.frontRightLeg = new AdvancedModelRenderer(this); + this.frontRightLeg.setRotationPoint(-2.0F, 3.5727F, -3.5441F); + this.body2.addChild(frontRightLeg); + this.setRotateAngle(frontRightLeg, 0.5149F, 0.0F, 0.0F); + this.frontRightLeg.cubeList.add(new ModelBox(frontRightLeg, 36, 11, -1.1F, 2.25F, 0.1F, 1, 2, 1, 0.0F, true)); + this.frontRightLeg.cubeList.add(new ModelBox(frontRightLeg, 57, 0, -1.0F, -0.5F, -1.0F, 2, 5, 2, 0.0F, true)); + + this.frontRightLeg2 = new AdvancedModelRenderer(this); + this.frontRightLeg2.setRotationPoint(0.5F, 4.5F, 1.0F); + this.frontRightLeg.addChild(frontRightLeg2); + this.setRotateAngle(frontRightLeg2, -0.7854F, 0.0F, 0.0F); + this.frontRightLeg2.cubeList.add(new ModelBox(frontRightLeg2, 50, 58, -1.5F, 0.0F, -2.0F, 2, 4, 2, -0.001F, true)); + this.frontRightLeg2.cubeList.add(new ModelBox(frontRightLeg2, 62, 47, -1.6F, 0.5F, -2.15F, 1, 3, 1, -0.003F, true)); + this.frontRightLeg2.cubeList.add(new ModelBox(frontRightLeg2, 59, 62, -1.6F, 1.0F, -0.9F, 1, 2, 1, -0.003F, true)); + + this.frontRightLeg3 = new AdvancedModelRenderer(this); + this.frontRightLeg3.setRotationPoint(0.0F, 3.3169F, -0.2862F); + this.frontRightLeg2.addChild(frontRightLeg3); + this.setRotateAngle(frontRightLeg3, 0.2182F, 0.0F, 0.0F); + this.frontRightLeg3.cubeList.add(new ModelBox(frontRightLeg3, 53, 26, -2.0F, 0.0F, -3.0F, 3, 1, 3, 0.0F, true)); + + this.neck = new AdvancedModelRenderer(this); + this.neck.setRotationPoint(0.0F, 0.1544F, -4.017F); + this.body2.addChild(neck); + this.setRotateAngle(neck, -0.1745F, 0.0F, 0.0F); + this.neck.cubeList.add(new ModelBox(neck, 0, 36, -1.5F, 0.0F, -5.0F, 3, 3, 5, -0.01F, false)); + + this.cube_r3 = new AdvancedModelRenderer(this); + this.cube_r3.setRotationPoint(0.0F, -0.3F, 0.0F); + this.neck.addChild(cube_r3); + this.setRotateAngle(cube_r3, 0.0524F, 0.0F, 0.0F); + this.cube_r3.cubeList.add(new ModelBox(cube_r3, 28, 52, -1.0F, -0.075F, -5.025F, 2, 1, 4, -0.001F, false)); + + this.cube_r4 = new AdvancedModelRenderer(this); + this.cube_r4.setRotationPoint(0.0F, 3.7F, -5.075F); + this.neck.addChild(cube_r4); + this.setRotateAngle(cube_r4, -0.1309F, 0.0F, 0.0F); + this.cube_r4.cubeList.add(new ModelBox(cube_r4, 34, 37, -1.5F, -2.0F, 0.0F, 3, 2, 5, -0.013F, false)); + + this.head = new AdvancedModelRenderer(this); + this.head.setRotationPoint(0.0F, 0.0109F, -4.9926F); + this.neck.addChild(head); + this.setRotateAngle(head, 0.1745F, 0.0F, 0.0F); + this.head.cubeList.add(new ModelBox(head, 0, 53, -1.5F, -0.0109F, -3.0074F, 3, 2, 3, 0.006F, false)); + this.head.cubeList.add(new ModelBox(head, 56, 42, -0.5F, -0.1109F, -1.0074F, 1, 1, 1, 0.0F, false)); + this.head.cubeList.add(new ModelBox(head, 41, 53, -1.5F, 1.5891F, -3.0074F, 3, 1, 3, 0.003F, false)); + this.head.cubeList.add(new ModelBox(head, 57, 16, -0.5F, 1.5891F, -6.8324F, 1, 1, 4, -0.003F, false)); + this.head.cubeList.add(new ModelBox(head, 53, 31, -0.5F, 0.8391F, -4.7324F, 1, 1, 2, 0.0F, false)); + + this.cube_r5 = new AdvancedModelRenderer(this); + this.cube_r5.setRotationPoint(0.05F, 2.2891F, -6.4824F); + this.head.addChild(cube_r5); + this.setRotateAngle(cube_r5, -0.3491F, 0.0F, 0.0F); + this.cube_r5.cubeList.add(new ModelBox(cube_r5, 25, 62, -0.5F, -0.5F, -0.5F, 0, 1, 1, 0.0F, true)); + this.cube_r5.cubeList.add(new ModelBox(cube_r5, 25, 62, 0.4F, -0.5F, -0.5F, 0, 1, 1, 0.0F, false)); + + this.cube_r6 = new AdvancedModelRenderer(this); + this.cube_r6.setRotationPoint(-0.45F, 2.2891F, -5.1824F); + this.head.addChild(cube_r6); + this.setRotateAngle(cube_r6, -0.6545F, 0.0F, 0.0F); + this.cube_r6.cubeList.add(new ModelBox(cube_r6, 0, 64, 0.0F, -0.5F, -0.5F, 0, 1, 1, 0.0F, true)); + this.cube_r6.cubeList.add(new ModelBox(cube_r6, 0, 64, 0.9F, -0.5F, -0.5F, 0, 1, 1, 0.0F, false)); + + this.cube_r7 = new AdvancedModelRenderer(this); + this.cube_r7.setRotationPoint(-1.5F, 2.0891F, -3.0074F); + this.head.addChild(cube_r7); + this.setRotateAngle(cube_r7, 0.0F, -0.3491F, 0.0F); + this.cube_r7.cubeList.add(new ModelBox(cube_r7, 57, 22, 0.0F, -0.5F, -2.0F, 1, 1, 2, 0.0F, true)); + + this.cube_r8 = new AdvancedModelRenderer(this); + this.cube_r8.setRotationPoint(-0.816F, 2.0891F, -4.8867F); + this.head.addChild(cube_r8); + this.setRotateAngle(cube_r8, 0.0F, -0.1745F, 0.0F); + this.cube_r8.cubeList.add(new ModelBox(cube_r8, 18, 59, 0.0F, -0.5F, -1.925F, 1, 1, 2, 0.0F, true)); + + this.cube_r9 = new AdvancedModelRenderer(this); + this.cube_r9.setRotationPoint(0.816F, 2.0891F, -4.8867F); + this.head.addChild(cube_r9); + this.setRotateAngle(cube_r9, 0.0F, 0.1745F, 0.0F); + this.cube_r9.cubeList.add(new ModelBox(cube_r9, 18, 59, -1.0F, -0.5F, -1.925F, 1, 1, 2, 0.0F, false)); + + this.cube_r10 = new AdvancedModelRenderer(this); + this.cube_r10.setRotationPoint(1.5F, 2.0891F, -3.0074F); + this.head.addChild(cube_r10); + this.setRotateAngle(cube_r10, 0.0F, 0.3491F, 0.0F); + this.cube_r10.cubeList.add(new ModelBox(cube_r10, 57, 22, -1.0F, -0.5F, -2.0F, 1, 1, 2, 0.0F, false)); + + this.cube_r11 = new AdvancedModelRenderer(this); + this.cube_r11.setRotationPoint(-0.5F, -0.0109F, -3.0074F); + this.head.addChild(cube_r11); + this.setRotateAngle(cube_r11, 0.3927F, 0.0F, 0.0F); + this.cube_r11.cubeList.add(new ModelBox(cube_r11, 15, 52, 0.0F, 0.0F, -5.0F, 1, 1, 5, 0.003F, false)); + + this.cube_r12 = new AdvancedModelRenderer(this); + this.cube_r12.setRotationPoint(-1.0F, 1.0667F, -3.5471F); + this.head.addChild(cube_r12); + this.setRotateAngle(cube_r12, 0.0297F, -0.3651F, 0.2441F); + this.cube_r12.cubeList.add(new ModelBox(cube_r12, 51, 42, -0.15F, -0.45F, -0.425F, 1, 1, 1, 0.0F, true)); + + this.cube_r13 = new AdvancedModelRenderer(this); + this.cube_r13.setRotationPoint(1.0F, 1.0667F, -3.5471F); + this.head.addChild(cube_r13); + this.setRotateAngle(cube_r13, 0.0297F, 0.3651F, -0.2441F); + this.cube_r13.cubeList.add(new ModelBox(cube_r13, 51, 42, -0.85F, -0.45F, -0.425F, 1, 1, 1, 0.0F, false)); + + this.jaw = new AdvancedModelRenderer(this); + this.jaw.setRotationPoint(0.0F, 2.5891F, -0.0074F); + this.head.addChild(jaw); + this.jaw.cubeList.add(new ModelBox(jaw, 54, 53, -1.5F, 0.0F, -3.0F, 3, 1, 3, 0.0F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 39, 58, -1.0F, -1.5F, -3.0F, 2, 2, 3, -0.003F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 18, 63, -0.5F, 0.0F, -4.0F, 1, 1, 1, -0.003F, false)); + + this.cube_r14 = new AdvancedModelRenderer(this); + this.cube_r14.setRotationPoint(0.5F, 1.5636F, -0.3577F); + this.jaw.addChild(cube_r14); + this.setRotateAngle(cube_r14, 0.1047F, 0.0F, 0.0F); + this.cube_r14.cubeList.add(new ModelBox(cube_r14, 27, 11, -1.5F, -1.0F, 0.0F, 2, 1, 2, -0.003F, false)); + + this.cube_r15 = new AdvancedModelRenderer(this); + this.cube_r15.setRotationPoint(0.5F, 1.0943F, -3.3208F); + this.jaw.addChild(cube_r15); + this.setRotateAngle(cube_r15, -0.1571F, 0.0F, 0.0F); + this.cube_r15.cubeList.add(new ModelBox(cube_r15, 0, 59, -1.5F, -1.0F, 0.0F, 2, 1, 3, 0.0F, false)); + + this.cube_r16 = new AdvancedModelRenderer(this); + this.cube_r16.setRotationPoint(0.1F, -0.2506F, -6.6491F); + this.jaw.addChild(cube_r16); + this.setRotateAngle(cube_r16, 0.1484F, 0.0F, 0.0F); + this.cube_r16.cubeList.add(new ModelBox(cube_r16, 30, 49, -0.5F, -0.35F, -0.375F, 0, 1, 1, 0.0F, true)); + this.cube_r16.cubeList.add(new ModelBox(cube_r16, 30, 49, 0.3F, -0.35F, -0.375F, 0, 1, 1, 0.0F, false)); + + this.cube_r17 = new AdvancedModelRenderer(this); + this.cube_r17.setRotationPoint(-0.5F, 0.0026F, -4.9031F); + this.jaw.addChild(cube_r17); + this.setRotateAngle(cube_r17, 0.1914F, -0.2181F, 0.0058F); + this.cube_r17.cubeList.add(new ModelBox(cube_r17, 25, 59, 0.0F, -0.5F, -0.5F, 0, 1, 1, 0.0F, true)); + + this.cube_r18 = new AdvancedModelRenderer(this); + this.cube_r18.setRotationPoint(-0.8F, 0.3526F, -3.5031F); + this.jaw.addChild(cube_r18); + this.setRotateAngle(cube_r18, 0.3392F, -0.1774F, -0.2128F); + this.cube_r18.cubeList.add(new ModelBox(cube_r18, 30, 46, 0.0F, -0.5F, -0.5F, 0, 1, 1, 0.0F, true)); + + this.cube_r19 = new AdvancedModelRenderer(this); + this.cube_r19.setRotationPoint(0.5F, 0.0026F, -4.9031F); + this.jaw.addChild(cube_r19); + this.setRotateAngle(cube_r19, 0.1914F, 0.2181F, -0.0058F); + this.cube_r19.cubeList.add(new ModelBox(cube_r19, 25, 59, 0.0F, -0.5F, -0.5F, 0, 1, 1, 0.0F, false)); + + this.cube_r20 = new AdvancedModelRenderer(this); + this.cube_r20.setRotationPoint(0.8F, 0.3526F, -3.5031F); + this.jaw.addChild(cube_r20); + this.setRotateAngle(cube_r20, 0.3392F, 0.1774F, 0.2128F); + this.cube_r20.cubeList.add(new ModelBox(cube_r20, 30, 46, 0.0F, -0.5F, -0.5F, 0, 1, 1, 0.0F, false)); + + this.cube_r21 = new AdvancedModelRenderer(this); + this.cube_r21.setRotationPoint(0.0F, 1.0F, -4.0F); + this.jaw.addChild(cube_r21); + this.setRotateAngle(cube_r21, -0.1134F, 0.0F, 0.0F); + this.cube_r21.cubeList.add(new ModelBox(cube_r21, 28, 58, -0.5F, -1.0F, -3.3F, 1, 1, 4, 0.0F, false)); + + this.cube_r22 = new AdvancedModelRenderer(this); + this.cube_r22.setRotationPoint(-0.816F, 0.4F, -4.7294F); + this.jaw.addChild(cube_r22); + this.setRotateAngle(cube_r22, -0.1114F, -0.1731F, 0.0132F); + this.cube_r22.cubeList.add(new ModelBox(cube_r22, 60, 31, 0.0F, -0.5F, -1.925F, 1, 1, 2, 0.0F, true)); + + this.cube_r23 = new AdvancedModelRenderer(this); + this.cube_r23.setRotationPoint(-1.5F, 1.0F, -3.0F); + this.jaw.addChild(cube_r23); + this.setRotateAngle(cube_r23, -0.0775F, -0.3608F, 0.0688F); + this.cube_r23.cubeList.add(new ModelBox(cube_r23, 59, 58, 0.0F, -1.0F, -2.0F, 1, 1, 2, 0.0F, true)); + + this.cube_r24 = new AdvancedModelRenderer(this); + this.cube_r24.setRotationPoint(0.816F, 0.4F, -4.7294F); + this.jaw.addChild(cube_r24); + this.setRotateAngle(cube_r24, -0.1114F, 0.1731F, -0.0132F); + this.cube_r24.cubeList.add(new ModelBox(cube_r24, 60, 31, -1.0F, -0.5F, -1.925F, 1, 1, 2, 0.0F, false)); + + this.cube_r25 = new AdvancedModelRenderer(this); + this.cube_r25.setRotationPoint(1.5F, 1.0F, -3.0F); + this.jaw.addChild(cube_r25); + this.setRotateAngle(cube_r25, -0.0775F, 0.3608F, -0.0688F); + this.cube_r25.cubeList.add(new ModelBox(cube_r25, 59, 58, -1.0F, -1.0F, -2.0F, 1, 1, 2, 0.0F, false)); + + updateDefaultPose(); + animator = ModelAnimator.create(); + } + + @Override + public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { + animate((IAnimatedEntity) entity, f, f1, f2, f3, f4, f5); + this.main.render(f5); + } + + @Override + public void renderStaticBook(float f) { + //Rotations, positions and sizing: + this.main.offsetY = 0.2F; + this.main.offsetX = 0.35F; + this.main.offsetZ = 2.0F; + this.main.rotateAngleY = (float)Math.toRadians(120); + this.main.rotateAngleX = (float)Math.toRadians(1); + this.main.rotateAngleZ = (float)Math.toRadians(0); + this.main.scaleChildren = true; + float scaler = 0.6F; + this.main.setScale(scaler, scaler, scaler); + //Start of pose: + + //End of pose, now render the model: + this.main.render(f); + //Reset rotations, positions and sizing: + this.main.setScale(1.0F, 1.0F, 1.0F); + this.main.scaleChildren = false; + resetToDefaultPose(); + + } + + public void renderStaticWall(float f) { + resetToDefaultPose(); + } + + public void renderStaticFloor(float f) { + this.main.offsetY = -0.105F; + this.main.render(0.01F); + resetToDefaultPose(); + } + + public void setRotateAngle(AdvancedModelRenderer AdvancedModelRenderer, float x, float y, float z) { + AdvancedModelRenderer.rotateAngleX = x; + AdvancedModelRenderer.rotateAngleY = y; + AdvancedModelRenderer.rotateAngleZ = z; + } + + @Override + public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity e) { + super.setRotationAngles(f, f1, f2, f3, f4, f5, e); + //this.resetToDefaultPose(); + + EntityPrehistoricFloraTarjadia EntityMegalosaurus = (EntityPrehistoricFloraTarjadia) e; + + this.faceTarget(f3, f4, 8, neck); + this.faceTarget(f3, f4, 8, head); + + AdvancedModelRenderer[] Tail = {this.tail, this.tail2, this.tail3, this.tail4, this.tail5}; + AdvancedModelRenderer[] Neck = {this.neck, this.head}; + + EntityMegalosaurus.tailBuffer.applyChainSwingBuffer(Tail); + + if (EntityMegalosaurus.getAnimation() == EntityMegalosaurus.LAY_ANIMATION) { + this.chainSwing(Neck, 0.5F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.5F * 2, -0.02F, 0.5F, f2, 0.8F); + } + else { + if (!EntityMegalosaurus.isReallyInWater()) { + + if (f3 == 0.0F || !EntityMegalosaurus.getIsMoving()) { + this.chainSwing(Neck, 0.05F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.05F * 2, -0.02F, 0.5F, f2, 0.8F); + + this.chainWave(Tail, (0.15F * 0.35F), 0.125F * 0.15F, 0.2F, f2, 1F); + this.chainSwing(Tail, (0.15F * 0.35F) * 4F, 0.05F * 0.35F, 0.12F, f2, 1F); + return; + } + + if (EntityMegalosaurus.getIsFast()) { //Running + + + } else { //Walking + + } + } else { + //Swimming pose: + if (f3 == 0.0F) { //static in water + return; + } + //moving in water + return; + } + } + } + + public void animAttack(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraTarjadia entity = (EntityPrehistoricFloraTarjadia) entitylivingbaseIn; + int animCycle = 10; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (12.5-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = 12.5 + (((tickAnim - 3) / 4) * (-8.75-(12.5))); + yy = 0 + (((tickAnim - 3) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 4) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = -8.75 + (((tickAnim - 7) / 3) * (0-(-8.75))); + yy = 0 + (((tickAnim - 7) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (-18.5-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 5) { + xx = -18.5 + (((tickAnim - 3) / 2) * (-22.4-(-18.5))); + yy = 0 + (((tickAnim - 3) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 2) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 7) { + xx = -22.4 + (((tickAnim - 5) / 2) * (0-(-22.4))); + yy = 0 + (((tickAnim - 5) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 2) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = 0 + (((tickAnim - 7) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 7) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0.475-(0))); + } + else if (tickAnim >= 3 && tickAnim < 10) { + xx = 0 + (((tickAnim - 3) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 3) / 7) * (0-(0))); + zz = 0.475 + (((tickAnim - 3) / 7) * (0-(0.475))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.head.rotationPointX = this.head.rotationPointX + (float)(xx); + this.head.rotationPointY = this.head.rotationPointY - (float)(yy); + this.head.rotationPointZ = this.head.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (4.25-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 5) { + xx = 4.25 + (((tickAnim - 3) / 2) * (26-(4.25))); + yy = 0 + (((tickAnim - 3) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 2) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 7) { + xx = 26 + (((tickAnim - 5) / 2) * (0-(26))); + yy = 0 + (((tickAnim - 5) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animEat(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraTarjadia entity = (EntityPrehistoricFloraTarjadia) entitylivingbaseIn; + int animCycle = 20; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (36.63-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 36.63 + (((tickAnim - 8) / 2) * (28.5-(36.63))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 28.5 + (((tickAnim - 10) / 10) * (0-(28.5))); + yy = 0 + (((tickAnim - 10) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.neck.rotationPointX = this.neck.rotationPointX + (float)(xx); + this.neck.rotationPointY = this.neck.rotationPointY - (float)(yy); + this.neck.rotationPointZ = this.neck.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (32.13-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 8) { + xx = 32.13 + (((tickAnim - 5) / 3) * (11.19-(32.13))); + yy = 0 + (((tickAnim - 5) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 3) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 11.19 + (((tickAnim - 8) / 2) * (22.25-(11.19))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 22.25 + (((tickAnim - 10) / 10) * (0-(22.25))); + yy = 0 + (((tickAnim - 10) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 8) { + xx = 0 + (((tickAnim - 5) / 3) * (32.75-(0))); + yy = 0 + (((tickAnim - 5) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 3) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 32.75 + (((tickAnim - 8) / 2) * (0-(32.75))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 0 + (((tickAnim - 10) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 10) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animRoar(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraTarjadia entity = (EntityPrehistoricFloraTarjadia) entitylivingbaseIn; + int animCycle = 30; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 18) { + xx = -14.95+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50-30))*-30 + (((tickAnim - 0) / 18) * (-2.1-(-14.95+Math.sin((Math.PI/180)*(((double)tickAnim/20)*50-30))*-30))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 30) { + xx = -2.1 + (((tickAnim - 18) / 12) * (0-(-2.1))); + yy = 0 + (((tickAnim - 18) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 12) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 12) { + xx = 0 + (((tickAnim - 0) / 12) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 12) * (0.45-(0))); + } + else if (tickAnim >= 12 && tickAnim < 30) { + xx = 0 + (((tickAnim - 12) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 12) / 18) * (0-(0))); + zz = 0.45 + (((tickAnim - 12) / 18) * (0-(0.45))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.neck.rotationPointX = this.neck.rotationPointX + (float)(xx); + this.neck.rotationPointY = this.neck.rotationPointY - (float)(yy); + this.neck.rotationPointZ = this.neck.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (33.625+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-50-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 30) { + xx = 33.625+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-50 + (((tickAnim - 18) / 12) * (0-(33.625+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80-30))*-50))); + yy = 0 + (((tickAnim - 18) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 12) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (70.7+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80))*-50-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 21) { + xx = 70.7+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80))*-50 + (((tickAnim - 18) / 3) * (0-(70.7+Math.sin((Math.PI/180)*(((double)tickAnim/20)*80))*-50))); + yy = 0 + (((tickAnim - 18) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 3) * (0-(0))); + } + else if (tickAnim >= 21 && tickAnim < 30) { + xx = 0 + (((tickAnim - 21) / 9) * (0-(0))); + yy = 0 + (((tickAnim - 21) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 21) / 9) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animNest(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraTarjadia entity = (EntityPrehistoricFloraTarjadia) entitylivingbaseIn; + int animCycle = 50; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 15) { + xx = 0 + (((tickAnim - 0) / 15) * (-25.35395-(0))); + yy = 0 + (((tickAnim - 0) / 15) * (-16.44463-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (-7.51672-(0))); + } + else if (tickAnim >= 15 && tickAnim < 24) { + xx = -25.35395 + (((tickAnim - 15) / 9) * (15.36576-(-25.35395))); + yy = -16.44463 + (((tickAnim - 15) / 9) * (-16.97536-(-16.44463))); + zz = -7.51672 + (((tickAnim - 15) / 9) * (-28.35428-(-7.51672))); + } + else if (tickAnim >= 24 && tickAnim < 35) { + xx = 15.36576 + (((tickAnim - 24) / 11) * (53.27976-(15.36576))); + yy = -16.97536 + (((tickAnim - 24) / 11) * (-16.42963-(-16.97536))); + zz = -28.35428 + (((tickAnim - 24) / 11) * (-17.68323-(-28.35428))); + } + else if (tickAnim >= 35 && tickAnim < 50) { + xx = 53.27976 + (((tickAnim - 35) / 15) * (0-(53.27976))); + yy = -16.42963 + (((tickAnim - 35) / 15) * (0-(-16.42963))); + zz = -17.68323 + (((tickAnim - 35) / 15) * (0-(-17.68323))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 15) { + xx = 0 + (((tickAnim - 0) / 15) * (-22.5-(0))); + yy = 0 + (((tickAnim - 0) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 24) { + xx = -22.5 + (((tickAnim - 15) / 9) * (0-(-22.5))); + yy = 0 + (((tickAnim - 15) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 15) / 9) * (0-(0))); + } + else if (tickAnim >= 24 && tickAnim < 35) { + xx = 0 + (((tickAnim - 24) / 11) * (16.25-(0))); + yy = 0 + (((tickAnim - 24) / 11) * (0-(0))); + zz = 0 + (((tickAnim - 24) / 11) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 50) { + xx = 16.25 + (((tickAnim - 35) / 15) * (0-(16.25))); + yy = 0 + (((tickAnim - 35) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 15) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 15) { + xx = 0 + (((tickAnim - 0) / 15) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 43) { + xx = 0 + (((tickAnim - 15) / 28) * (0-(0))); + yy = 0 + (((tickAnim - 15) / 28) * (0.75-(0))); + zz = 0 + (((tickAnim - 15) / 28) * (0-(0))); + } + else if (tickAnim >= 43 && tickAnim < 50) { + xx = 0 + (((tickAnim - 43) / 7) * (0-(0))); + yy = 0.75 + (((tickAnim - 43) / 7) * (0-(0.75))); + zz = 0 + (((tickAnim - 43) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg2.rotationPointX = this.backLeftLeg2.rotationPointX + (float)(xx); + this.backLeftLeg2.rotationPointY = this.backLeftLeg2.rotationPointY - (float)(yy); + this.backLeftLeg2.rotationPointZ = this.backLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 15) { + xx = 0 + (((tickAnim - 0) / 15) * (61.25-(0))); + yy = 0 + (((tickAnim - 0) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 24) { + xx = 61.25 + (((tickAnim - 15) / 9) * (66.37633-(61.25))); + yy = 0 + (((tickAnim - 15) / 9) * (-12.13005-(0))); + zz = 0 + (((tickAnim - 15) / 9) * (-14.73532-(0))); + } + else if (tickAnim >= 24 && tickAnim < 35) { + xx = 66.37633 + (((tickAnim - 24) / 11) * (69-(66.37633))); + yy = -12.13005 + (((tickAnim - 24) / 11) * (0-(-12.13005))); + zz = -14.73532 + (((tickAnim - 24) / 11) * (0-(-14.73532))); + } + else if (tickAnim >= 35 && tickAnim < 43) { + xx = 69 + (((tickAnim - 35) / 8) * (43.67-(69))); + yy = 0 + (((tickAnim - 35) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 8) * (0-(0))); + } + else if (tickAnim >= 43 && tickAnim < 50) { + xx = 43.67 + (((tickAnim - 43) / 7) * (0-(43.67))); + yy = 0 + (((tickAnim - 43) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 43) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg3, backLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 15) { + xx = 0 + (((tickAnim - 0) / 15) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 19) { + xx = 0 + (((tickAnim - 15) / 4) * (-0.16-(0))); + yy = 0 + (((tickAnim - 15) / 4) * (1.69-(0))); + zz = 0 + (((tickAnim - 15) / 4) * (0-(0))); + } + else if (tickAnim >= 19 && tickAnim < 24) { + xx = -0.16 + (((tickAnim - 19) / 5) * (-0.35-(-0.16))); + yy = 1.69 + (((tickAnim - 19) / 5) * (2-(1.69))); + zz = 0 + (((tickAnim - 19) / 5) * (0-(0))); + } + else if (tickAnim >= 24 && tickAnim < 35) { + xx = -0.35 + (((tickAnim - 24) / 11) * (0-(-0.35))); + yy = 2 + (((tickAnim - 24) / 11) * (0-(2))); + zz = 0 + (((tickAnim - 24) / 11) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 43) { + xx = 0 + (((tickAnim - 35) / 8) * (0-(0))); + yy = 0 + (((tickAnim - 35) / 8) * (1.5-(0))); + zz = 0 + (((tickAnim - 35) / 8) * (0-(0))); + } + else if (tickAnim >= 43 && tickAnim < 50) { + xx = 0 + (((tickAnim - 43) / 7) * (0-(0))); + yy = 1.5 + (((tickAnim - 43) / 7) * (0-(1.5))); + zz = 0 + (((tickAnim - 43) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg3.rotationPointX = this.backLeftLeg3.rotationPointX + (float)(xx); + this.backLeftLeg3.rotationPointY = this.backLeftLeg3.rotationPointY - (float)(yy); + this.backLeftLeg3.rotationPointZ = this.backLeftLeg3.rotationPointZ + (float)(zz); + + } + public void animLay(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraTarjadia entity = (EntityPrehistoricFloraTarjadia) entitylivingbaseIn; + int animCycle = 50; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-19.25-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = -19.25 + (((tickAnim - 18) / 16) * (-19.25-(-19.25))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = -19.25 + (((tickAnim - 34) / 16) * (0-(-19.25))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(xx), main.rotateAngleY + (float) Math.toRadians(yy), main.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (-3.95-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 0 + (((tickAnim - 18) / 16) * (0-(0))); + yy = -3.95 + (((tickAnim - 18) / 16) * (-3.95-(-3.95))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 0 + (((tickAnim - 34) / 16) * (0-(0))); + yy = -3.95 + (((tickAnim - 34) / 16) * (0-(-3.95))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.main.rotationPointX = this.main.rotationPointX + (float)(xx); + this.main.rotationPointY = this.main.rotationPointY - (float)(yy); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-33.25-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = -33.25 + (((tickAnim - 18) / 16) * (-33.25-(-33.25))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = -33.25 + (((tickAnim - 34) / 16) * (0-(-33.25))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (52-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 52 + (((tickAnim - 18) / 16) * (52-(52))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 52 + (((tickAnim - 34) / 16) * (0-(52))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-33.25-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = -33.25 + (((tickAnim - 18) / 16) * (-33.25-(-33.25))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = -33.25 + (((tickAnim - 34) / 16) * (0-(-33.25))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg, backRightLeg.rotateAngleX + (float) Math.toRadians(xx), backRightLeg.rotateAngleY + (float) Math.toRadians(yy), backRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (52-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 52 + (((tickAnim - 18) / 16) * (52-(52))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 52 + (((tickAnim - 34) / 16) * (0-(52))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg2, backRightLeg2.rotateAngleX + (float) Math.toRadians(xx), backRightLeg2.rotateAngleY + (float) Math.toRadians(yy), backRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (5.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 5.75 + (((tickAnim - 18) / 16) * (5.75-(5.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 5.75 + (((tickAnim - 34) / 16) * (0-(5.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(xx), tail.rotateAngleY + (float) Math.toRadians(yy), tail.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (14-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 14 + (((tickAnim - 18) / 16) * (14-(14))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 14 + (((tickAnim - 34) / 16) * (0-(14))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(xx), tail2.rotateAngleY + (float) Math.toRadians(yy), tail2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (10.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 10.75 + (((tickAnim - 18) / 16) * (10.75-(10.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 10.75 + (((tickAnim - 34) / 16) * (0-(10.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(xx), tail3.rotateAngleY + (float) Math.toRadians(yy), tail3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (5.5-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 5.5 + (((tickAnim - 18) / 16) * (5.5-(5.5))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 5.5 + (((tickAnim - 34) / 16) * (0-(5.5))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(xx), tail4.rotateAngleY + (float) Math.toRadians(yy), tail4.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (5.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 5.75 + (((tickAnim - 18) / 16) * (5.75-(5.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 5.75 + (((tickAnim - 34) / 16) * (0-(5.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(xx), body.rotateAngleY + (float) Math.toRadians(yy), body.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (10-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 10 + (((tickAnim - 18) / 16) * (10-(10))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 10 + (((tickAnim - 34) / 16) * (0-(10))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(xx), body2.rotateAngleY + (float) Math.toRadians(yy), body2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-25.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = -25.75 + (((tickAnim - 18) / 16) * (-25.75-(-25.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = -25.75 + (((tickAnim - 34) / 16) * (0-(-25.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg2, frontLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (29.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 29.75 + (((tickAnim - 18) / 16) * (29.75-(29.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 29.75 + (((tickAnim - 34) / 16) * (0-(29.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg3, frontLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0.1-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (-0.075-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 0 + (((tickAnim - 18) / 16) * (0-(0))); + yy = 0.1 + (((tickAnim - 18) / 16) * (0.1-(0.1))); + zz = -0.075 + (((tickAnim - 18) / 16) * (-0.075-(-0.075))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 0 + (((tickAnim - 34) / 16) * (0-(0))); + yy = 0.1 + (((tickAnim - 34) / 16) * (0-(0.1))); + zz = -0.075 + (((tickAnim - 34) / 16) * (0-(-0.075))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg3.rotationPointX = this.frontLeftLeg3.rotationPointX + (float)(xx); + this.frontLeftLeg3.rotationPointY = this.frontLeftLeg3.rotationPointY - (float)(yy); + this.frontLeftLeg3.rotationPointZ = this.frontLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-25.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = -25.75 + (((tickAnim - 18) / 16) * (-25.75-(-25.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = -25.75 + (((tickAnim - 34) / 16) * (0-(-25.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg2, frontRightLeg2.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg2.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (29.75-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 29.75 + (((tickAnim - 18) / 16) * (29.75-(29.75))); + yy = 0 + (((tickAnim - 18) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 16) * (0-(0))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 29.75 + (((tickAnim - 34) / 16) * (0-(29.75))); + yy = 0 + (((tickAnim - 34) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 34) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg3, frontRightLeg3.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg3.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0.1-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (-0.075-(0))); + } + else if (tickAnim >= 18 && tickAnim < 34) { + xx = 0 + (((tickAnim - 18) / 16) * (0-(0))); + yy = 0.1 + (((tickAnim - 18) / 16) * (0.1-(0.1))); + zz = -0.075 + (((tickAnim - 18) / 16) * (-0.075-(-0.075))); + } + else if (tickAnim >= 34 && tickAnim < 50) { + xx = 0 + (((tickAnim - 34) / 16) * (0-(0))); + yy = 0.1 + (((tickAnim - 34) / 16) * (0-(0.1))); + zz = -0.075 + (((tickAnim - 34) / 16) * (0-(-0.075))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg3.rotationPointX = this.frontRightLeg3.rotationPointX + (float)(xx); + this.frontRightLeg3.rotationPointY = this.frontRightLeg3.rotationPointY - (float)(yy); + this.frontRightLeg3.rotationPointZ = this.frontRightLeg3.rotationPointZ + (float)(zz); + + } + public void animWalking(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraTarjadia entity = (EntityPrehistoricFloraTarjadia) entitylivingbaseIn; + int animCycle = 26; + double tickAnim = (entity.ticksExisted + entity.getTickOffset()) - (int) (Math.floor((double) (entity.ticksExisted + entity.getTickOffset()) / (double) animCycle) * (double) animCycle) + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269/0.5-90))*2), main.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-50))*1), main.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-90))*4)); + this.main.rotationPointX = this.main.rotationPointX + (float)(0); + this.main.rotationPointY = this.main.rotationPointY - (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269/0.5))*-0.5); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269/0.5-100))*0.5); + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 22.5 + (((tickAnim - 0) / 8) * (-37.57-(22.5))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 13) { + xx = -37.57 + (((tickAnim - 8) / 5) * (-24.75-(-37.57))); + yy = 0 + (((tickAnim - 8) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 5) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 27) { + xx = -24.75 + (((tickAnim - 13) / 14) * (22.5-(-24.75))); + yy = 0 + (((tickAnim - 13) / 14) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 14) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 18.75 + (((tickAnim - 0) / 3) * (46.59-(18.75))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 8) { + xx = 46.59 + (((tickAnim - 3) / 5) * (32.87-(46.59))); + yy = 0 + (((tickAnim - 3) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 5) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 13) { + xx = 32.87 + (((tickAnim - 8) / 5) * (0-(32.87))); + yy = 0 + (((tickAnim - 8) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 5) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 27) { + xx = 0 + (((tickAnim - 13) / 14) * (18.75-(0))); + yy = 0 + (((tickAnim - 13) / 14) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 14) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 13) { + xx = 0 + (((tickAnim - 0) / 13) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 13) * (-0.15-(0))); + zz = 0 + (((tickAnim - 0) / 13) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 27) { + xx = 0 + (((tickAnim - 13) / 14) * (0-(0))); + yy = -0.15 + (((tickAnim - 13) / 14) * (0-(-0.15))); + zz = 0 + (((tickAnim - 13) / 14) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg2.rotationPointX = this.backLeftLeg2.rotationPointX + (float)(xx); + this.backLeftLeg2.rotationPointY = this.backLeftLeg2.rotationPointY - (float)(yy); + this.backLeftLeg2.rotationPointZ = this.backLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 43.75 + (((tickAnim - 0) / 3) * (73.53-(43.75))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 8) { + xx = 73.53 + (((tickAnim - 3) / 5) * (64.32-(73.53))); + yy = 0 + (((tickAnim - 3) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 5) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 13) { + xx = 64.32 + (((tickAnim - 8) / 5) * (23-(64.32))); + yy = 0 + (((tickAnim - 8) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 5) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 17) { + xx = 23 + (((tickAnim - 13) / 4) * (5.76674-(23))); + yy = 0 + (((tickAnim - 13) / 4) * (-1.89599-(0))); + zz = 0 + (((tickAnim - 13) / 4) * (-0.6265-(0))); + } + else if (tickAnim >= 17 && tickAnim < 27) { + xx = 5.76674 + (((tickAnim - 17) / 10) * (43.75-(5.76674))); + yy = -1.89599 + (((tickAnim - 17) / 10) * (0-(-1.89599))); + zz = -0.6265 + (((tickAnim - 17) / 10) * (0-(-0.6265))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg3, backLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 0.275 + (((tickAnim - 0) / 3) * (0.33-(0.275))); + zz = 0.125 + (((tickAnim - 0) / 3) * (-0.625-(0.125))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 0 + (((tickAnim - 3) / 3) * (0-(0))); + yy = 0.33 + (((tickAnim - 3) / 3) * (1.12-(0.33))); + zz = -0.625 + (((tickAnim - 3) / 3) * (-0.36-(-0.625))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 0 + (((tickAnim - 6) / 2) * (0-(0))); + yy = 1.12 + (((tickAnim - 6) / 2) * (0.885-(1.12))); + zz = -0.36 + (((tickAnim - 6) / 2) * (0-(-0.36))); + } + else if (tickAnim >= 8 && tickAnim < 13) { + xx = 0 + (((tickAnim - 8) / 5) * (0-(0))); + yy = 0.885 + (((tickAnim - 8) / 5) * (-0.3-(0.885))); + zz = 0 + (((tickAnim - 8) / 5) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 27) { + xx = 0 + (((tickAnim - 13) / 14) * (0-(0))); + yy = -0.3 + (((tickAnim - 13) / 14) * (0.275-(-0.3))); + zz = 0 + (((tickAnim - 13) / 14) * (0.125-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg3.rotationPointX = this.backLeftLeg3.rotationPointX + (float)(xx); + this.backLeftLeg3.rotationPointY = this.backLeftLeg3.rotationPointY - (float)(yy); + this.backLeftLeg3.rotationPointZ = this.backLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 13) { + xx = -24.75 + (((tickAnim - 0) / 13) * (22.5-(-24.75))); + yy = 0 + (((tickAnim - 0) / 13) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 13) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 22) { + xx = 22.5 + (((tickAnim - 13) / 9) * (-37.57-(22.5))); + yy = 0 + (((tickAnim - 13) / 9) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 9) * (0-(0))); + } + else if (tickAnim >= 22 && tickAnim < 27) { + xx = -37.57 + (((tickAnim - 22) / 5) * (-24.75-(-37.57))); + yy = 0 + (((tickAnim - 22) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 22) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg, backRightLeg.rotateAngleX + (float) Math.toRadians(xx), backRightLeg.rotateAngleY + (float) Math.toRadians(yy), backRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 13) { + xx = 0 + (((tickAnim - 0) / 13) * (18.75-(0))); + yy = 0 + (((tickAnim - 0) / 13) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 13) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 17) { + xx = 18.75 + (((tickAnim - 13) / 4) * (46.59-(18.75))); + yy = 0 + (((tickAnim - 13) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 4) * (0-(0))); + } + else if (tickAnim >= 17 && tickAnim < 22) { + xx = 46.59 + (((tickAnim - 17) / 5) * (32.87-(46.59))); + yy = 0 + (((tickAnim - 17) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 17) / 5) * (0-(0))); + } + else if (tickAnim >= 22 && tickAnim < 27) { + xx = 32.87 + (((tickAnim - 22) / 5) * (0-(32.87))); + yy = 0 + (((tickAnim - 22) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 22) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg2, backRightLeg2.rotateAngleX + (float) Math.toRadians(xx), backRightLeg2.rotateAngleY + (float) Math.toRadians(yy), backRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 13) { + xx = 0 + (((tickAnim - 0) / 13) * (0-(0))); + yy = -0.15 + (((tickAnim - 0) / 13) * (0-(-0.15))); + zz = 0 + (((tickAnim - 0) / 13) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 27) { + xx = 0 + (((tickAnim - 13) / 14) * (0-(0))); + yy = 0 + (((tickAnim - 13) / 14) * (-0.15-(0))); + zz = 0 + (((tickAnim - 13) / 14) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg2.rotationPointX = this.backRightLeg2.rotationPointX + (float)(xx); + this.backRightLeg2.rotationPointY = this.backRightLeg2.rotationPointY - (float)(yy); + this.backRightLeg2.rotationPointZ = this.backRightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 23 + (((tickAnim - 0) / 3) * (5.76674-(23))); + yy = 0 + (((tickAnim - 0) / 3) * (-1.89599-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (-0.6265-(0))); + } + else if (tickAnim >= 3 && tickAnim < 13) { + xx = 5.76674 + (((tickAnim - 3) / 10) * (43.75-(5.76674))); + yy = -1.89599 + (((tickAnim - 3) / 10) * (0-(-1.89599))); + zz = -0.6265 + (((tickAnim - 3) / 10) * (0-(-0.6265))); + } + else if (tickAnim >= 13 && tickAnim < 17) { + xx = 43.75 + (((tickAnim - 13) / 4) * (73.53-(43.75))); + yy = 0 + (((tickAnim - 13) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 4) * (0-(0))); + } + else if (tickAnim >= 17 && tickAnim < 22) { + xx = 73.53 + (((tickAnim - 17) / 5) * (64.32-(73.53))); + yy = 0 + (((tickAnim - 17) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 17) / 5) * (0-(0))); + } + else if (tickAnim >= 22 && tickAnim < 27) { + xx = 64.32 + (((tickAnim - 22) / 5) * (23-(64.32))); + yy = 0 + (((tickAnim - 22) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 22) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg3, backRightLeg3.rotateAngleX + (float) Math.toRadians(xx), backRightLeg3.rotateAngleY + (float) Math.toRadians(yy), backRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 13) { + xx = 0 + (((tickAnim - 0) / 13) * (0-(0))); + yy = -0.3 + (((tickAnim - 0) / 13) * (0.275-(-0.3))); + zz = 0 + (((tickAnim - 0) / 13) * (0.125-(0))); + } + else if (tickAnim >= 13 && tickAnim < 17) { + xx = 0 + (((tickAnim - 13) / 4) * (0-(0))); + yy = 0.275 + (((tickAnim - 13) / 4) * (0.33-(0.275))); + zz = 0.125 + (((tickAnim - 13) / 4) * (-0.625-(0.125))); + } + else if (tickAnim >= 17 && tickAnim < 19) { + xx = 0 + (((tickAnim - 17) / 2) * (0-(0))); + yy = 0.33 + (((tickAnim - 17) / 2) * (1.12-(0.33))); + zz = -0.625 + (((tickAnim - 17) / 2) * (-0.36-(-0.625))); + } + else if (tickAnim >= 19 && tickAnim < 22) { + xx = 0 + (((tickAnim - 19) / 3) * (0-(0))); + yy = 1.12 + (((tickAnim - 19) / 3) * (0.885-(1.12))); + zz = -0.36 + (((tickAnim - 19) / 3) * (0-(-0.36))); + } + else if (tickAnim >= 22 && tickAnim < 27) { + xx = 0 + (((tickAnim - 22) / 5) * (0-(0))); + yy = 0.885 + (((tickAnim - 22) / 5) * (-0.3-(0.885))); + zz = 0 + (((tickAnim - 22) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg3.rotationPointX = this.backRightLeg3.rotationPointX + (float)(xx); + this.backRightLeg3.rotationPointY = this.backRightLeg3.rotationPointY - (float)(yy); + this.backRightLeg3.rotationPointZ = this.backRightLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269/0.5-90))*2), tail.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-50))*1), tail.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-90))*-4)); + + + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269/0.5-150))*-2), tail2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-100))*4), tail2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-90))*-4)); + + + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269/0.5-200))*2), tail3.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-150))*8), tail3.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-90))*4)); + + + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269/0.5-250))*2), tail4.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-200))*12), tail4.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-90))*4)); + + + this.setRotateAngle(tail5, tail5.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269/0.5-300))*2), tail5.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-250))*15), tail5.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-90))*4)); + + + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269/0.5-150))*-2), body.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-100))*-1), body.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-90))*-4)); + + + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269/0.5-250))*3), body2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-150))*2), body2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-160))*4)); + + + + if (tickAnim >= 0 && tickAnim < 13) { + xx = -29 + (((tickAnim - 0) / 13) * (26.4609-(-29))); + yy = 0 + (((tickAnim - 0) / 13) * (-7.87355-(0))); + zz = 0 + (((tickAnim - 0) / 13) * (-0.65033-(0))); + } + else if (tickAnim >= 13 && tickAnim < 19) { + xx = 26.4609 + (((tickAnim - 13) / 6) * (-14.66879-(26.4609))); + yy = -7.87355 + (((tickAnim - 13) / 6) * (10.07712-(-7.87355))); + zz = -0.65033 + (((tickAnim - 13) / 6) * (-20.57385-(-0.65033))); + } + else if (tickAnim >= 19 && tickAnim < 25) { + xx = -14.66879 + (((tickAnim - 19) / 6) * (-35-(-14.66879))); + yy = 10.07712 + (((tickAnim - 19) / 6) * (0-(10.07712))); + zz = -20.57385 + (((tickAnim - 19) / 6) * (0-(-20.57385))); + } + else if (tickAnim >= 25 && tickAnim < 27) { + xx = -35 + (((tickAnim - 25) / 2) * (-29-(-35))); + yy = 0 + (((tickAnim - 25) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 25) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg, frontLeftLeg.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 13) { + xx = 11.75 + (((tickAnim - 0) / 13) * (15.25-(11.75))); + yy = 0 + (((tickAnim - 0) / 13) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 13) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 19) { + xx = 15.25 + (((tickAnim - 13) / 6) * (-43.58822-(15.25))); + yy = 0 + (((tickAnim - 13) / 6) * (-7.1715-(0))); + zz = 0 + (((tickAnim - 13) / 6) * (14.343-(0))); + } + else if (tickAnim >= 19 && tickAnim < 25) { + xx = -43.58822 + (((tickAnim - 19) / 6) * (17-(-43.58822))); + yy = -7.1715 + (((tickAnim - 19) / 6) * (0-(-7.1715))); + zz = 14.343 + (((tickAnim - 19) / 6) * (0-(14.343))); + } + else if (tickAnim >= 25 && tickAnim < 27) { + xx = 17 + (((tickAnim - 25) / 2) * (11.75-(17))); + yy = 0 + (((tickAnim - 25) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 25) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg2, frontLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 13) { + xx = 0 + (((tickAnim - 0) / 13) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 13) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 13) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 19) { + xx = 0 + (((tickAnim - 13) / 6) * (-0.45-(0))); + yy = 0 + (((tickAnim - 13) / 6) * (-0.325-(0))); + zz = 0 + (((tickAnim - 13) / 6) * (-0.05-(0))); + } + else if (tickAnim >= 19 && tickAnim < 25) { + xx = -0.45 + (((tickAnim - 19) / 6) * (0-(-0.45))); + yy = -0.325 + (((tickAnim - 19) / 6) * (0-(-0.325))); + zz = -0.05 + (((tickAnim - 19) / 6) * (0-(-0.05))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg2.rotationPointX = this.frontLeftLeg2.rotationPointX + (float)(xx); + this.frontLeftLeg2.rotationPointY = this.frontLeftLeg2.rotationPointY - (float)(yy); + this.frontLeftLeg2.rotationPointZ = this.frontLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 16.75 + (((tickAnim - 0) / 5) * (-5.44-(16.75))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 13) { + xx = -5.44 + (((tickAnim - 5) / 8) * (46.25-(-5.44))); + yy = 0 + (((tickAnim - 5) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 8) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 15) { + xx = 46.25 + (((tickAnim - 13) / 2) * (90.86-(46.25))); + yy = 0 + (((tickAnim - 13) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 2) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 19) { + xx = 90.86 + (((tickAnim - 15) / 4) * (86-(90.86))); + yy = 0 + (((tickAnim - 15) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 15) / 4) * (0-(0))); + } + else if (tickAnim >= 19 && tickAnim < 25) { + xx = 86 + (((tickAnim - 19) / 6) * (16.75-(86))); + yy = 0 + (((tickAnim - 19) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 19) / 6) * (0-(0))); + } + else if (tickAnim >= 25 && tickAnim < 27) { + xx = 16.75 + (((tickAnim - 25) / 2) * (16.75-(16.75))); + yy = 0 + (((tickAnim - 25) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 25) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg3, frontLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (0-(0))); + yy = 0.425 + (((tickAnim - 0) / 5) * (0.55-(0.425))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 13) { + xx = 0 + (((tickAnim - 5) / 8) * (0-(0))); + yy = 0.55 + (((tickAnim - 5) / 8) * (0.45-(0.55))); + zz = 0 + (((tickAnim - 5) / 8) * (-0.4-(0))); + } + else if (tickAnim >= 13 && tickAnim < 15) { + xx = 0 + (((tickAnim - 13) / 2) * (0-(0))); + yy = 0.45 + (((tickAnim - 13) / 2) * (1.34-(0.45))); + zz = -0.4 + (((tickAnim - 13) / 2) * (-1.26-(-0.4))); + } + else if (tickAnim >= 15 && tickAnim < 19) { + xx = 0 + (((tickAnim - 15) / 4) * (0-(0))); + yy = 1.34 + (((tickAnim - 15) / 4) * (0.6-(1.34))); + zz = -1.26 + (((tickAnim - 15) / 4) * (-1.125-(-1.26))); + } + else if (tickAnim >= 19 && tickAnim < 25) { + xx = 0 + (((tickAnim - 19) / 6) * (0-(0))); + yy = 0.6 + (((tickAnim - 19) / 6) * (0.75-(0.6))); + zz = -1.125 + (((tickAnim - 19) / 6) * (0-(-1.125))); + } + else if (tickAnim >= 25 && tickAnim < 27) { + xx = 0 + (((tickAnim - 25) / 2) * (0-(0))); + yy = 0.75 + (((tickAnim - 25) / 2) * (0.425-(0.75))); + zz = 0 + (((tickAnim - 25) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg3.rotationPointX = this.frontLeftLeg3.rotationPointX + (float)(xx); + this.frontLeftLeg3.rotationPointY = this.frontLeftLeg3.rotationPointY - (float)(yy); + this.frontLeftLeg3.rotationPointZ = this.frontLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = 26.4609 + (((tickAnim - 0) / 6) * (-14.66879-(26.4609))); + yy = 7.87355 + (((tickAnim - 0) / 6) * (-10.07712-(7.87355))); + zz = -0.65033 + (((tickAnim - 0) / 6) * (20.57385-(-0.65033))); + } + else if (tickAnim >= 6 && tickAnim < 12) { + xx = -14.66879 + (((tickAnim - 6) / 6) * (-35-(-14.66879))); + yy = -10.07712 + (((tickAnim - 6) / 6) * (0-(-10.07712))); + zz = 20.57385 + (((tickAnim - 6) / 6) * (0-(20.57385))); + } + else if (tickAnim >= 12 && tickAnim < 13) { + xx = -35 + (((tickAnim - 12) / 1) * (-24.92101-(-35))); + yy = 0 + (((tickAnim - 12) / 1) * (0.87484-(0))); + zz = 0 + (((tickAnim - 12) / 1) * (-0.07226-(0))); + } + else if (tickAnim >= 13 && tickAnim < 27) { + xx = -24.92101 + (((tickAnim - 13) / 14) * (26.4609-(-24.92101))); + yy = 0.87484 + (((tickAnim - 13) / 14) * (7.87355-(0.87484))); + zz = -0.07226 + (((tickAnim - 13) / 14) * (-0.65033-(-0.07226))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg, frontRightLeg.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = 15.25 + (((tickAnim - 0) / 6) * (-43.58822-(15.25))); + yy = 0 + (((tickAnim - 0) / 6) * (7.1715-(0))); + zz = 0 + (((tickAnim - 0) / 6) * (-14.343-(0))); + } + else if (tickAnim >= 6 && tickAnim < 12) { + xx = -43.58822 + (((tickAnim - 6) / 6) * (17-(-43.58822))); + yy = 7.1715 + (((tickAnim - 6) / 6) * (0-(7.1715))); + zz = -14.343 + (((tickAnim - 6) / 6) * (0-(-14.343))); + } + else if (tickAnim >= 12 && tickAnim < 13) { + xx = 17 + (((tickAnim - 12) / 1) * (8.56-(17))); + yy = 0 + (((tickAnim - 12) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 12) / 1) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 27) { + xx = 8.56 + (((tickAnim - 13) / 14) * (15.25-(8.56))); + yy = 0 + (((tickAnim - 13) / 14) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 14) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg2, frontRightLeg2.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg2.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = 0 + (((tickAnim - 0) / 6) * (0.45-(0))); + yy = 0 + (((tickAnim - 0) / 6) * (-0.325-(0))); + zz = 0 + (((tickAnim - 0) / 6) * (-0.05-(0))); + } + else if (tickAnim >= 6 && tickAnim < 12) { + xx = 0.45 + (((tickAnim - 6) / 6) * (0-(0.45))); + yy = -0.325 + (((tickAnim - 6) / 6) * (0-(-0.325))); + zz = -0.05 + (((tickAnim - 6) / 6) * (0-(-0.05))); + } + else if (tickAnim >= 12 && tickAnim < 27) { + xx = 0 + (((tickAnim - 12) / 15) * (0-(0))); + yy = 0 + (((tickAnim - 12) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 12) / 15) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg2.rotationPointX = this.frontRightLeg2.rotationPointX + (float)(xx); + this.frontRightLeg2.rotationPointY = this.frontRightLeg2.rotationPointY - (float)(yy); + this.frontRightLeg2.rotationPointZ = this.frontRightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 46.25 + (((tickAnim - 0) / 2) * (90.86-(46.25))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 6) { + xx = 90.86 + (((tickAnim - 2) / 4) * (86-(90.86))); + yy = 0 + (((tickAnim - 2) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 4) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 12) { + xx = 86 + (((tickAnim - 6) / 6) * (16.75-(86))); + yy = 0 + (((tickAnim - 6) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 6) * (0-(0))); + } + else if (tickAnim >= 12 && tickAnim < 13) { + xx = 16.75 + (((tickAnim - 12) / 1) * (16.85-(16.75))); + yy = 0 + (((tickAnim - 12) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 12) / 1) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 17) { + xx = 16.85 + (((tickAnim - 13) / 4) * (-0.19-(16.85))); + yy = 0 + (((tickAnim - 13) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 4) * (0-(0))); + } + else if (tickAnim >= 17 && tickAnim < 27) { + xx = -0.19 + (((tickAnim - 17) / 10) * (46.25-(-0.19))); + yy = 0 + (((tickAnim - 17) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 17) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg3, frontRightLeg3.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg3.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0.45 + (((tickAnim - 0) / 2) * (1.34-(0.45))); + zz = -0.4 + (((tickAnim - 0) / 2) * (-1.26-(-0.4))); + } + else if (tickAnim >= 2 && tickAnim < 6) { + xx = 0 + (((tickAnim - 2) / 4) * (0-(0))); + yy = 1.34 + (((tickAnim - 2) / 4) * (0.6-(1.34))); + zz = -1.26 + (((tickAnim - 2) / 4) * (-1.125-(-1.26))); + } + else if (tickAnim >= 6 && tickAnim < 12) { + xx = 0 + (((tickAnim - 6) / 6) * (0-(0))); + yy = 0.6 + (((tickAnim - 6) / 6) * (0.425-(0.6))); + zz = -1.125 + (((tickAnim - 6) / 6) * (0-(-1.125))); + } + else if (tickAnim >= 12 && tickAnim < 17) { + xx = 0 + (((tickAnim - 12) / 5) * (0-(0))); + yy = 0.425 + (((tickAnim - 12) / 5) * (0.55-(0.425))); + zz = 0 + (((tickAnim - 12) / 5) * (0-(0))); + } + else if (tickAnim >= 17 && tickAnim < 27) { + xx = 0 + (((tickAnim - 17) / 10) * (0-(0))); + yy = 0.55 + (((tickAnim - 17) / 10) * (0.45-(0.55))); + zz = 0 + (((tickAnim - 17) / 10) * (-0.4-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg3.rotationPointX = this.frontRightLeg3.rotationPointX + (float)(xx); + this.frontRightLeg3.rotationPointY = this.frontRightLeg3.rotationPointY - (float)(yy); + this.frontRightLeg3.rotationPointZ = this.frontRightLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269/0.5-540))*3), neck.rotateAngleY + (float) Math.toRadians(0), neck.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269-160))*-4)); + + + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*269/0.5-540))*-3), head.rotateAngleY + (float) Math.toRadians(0), head.rotateAngleZ + (float) Math.toRadians(0)); + + } + public void animRunning(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraTarjadia entity = (EntityPrehistoricFloraTarjadia) entitylivingbaseIn; + int animCycle = 15; + double tickAnim = (entity.ticksExisted + entity.getTickOffset()) - (int) (Math.floor((double) (entity.ticksExisted + entity.getTickOffset()) / (double) animCycle) * (double) animCycle) + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480/0.5+90))*3), main.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480+90))*-5), main.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480+90))*3)); + this.main.rotationPointX = this.main.rotationPointX + (float)(0); + this.main.rotationPointY = this.main.rotationPointY - (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480/0.5))*-0.5); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480/0.5-155))*0.5); + + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = 34.5 + (((tickAnim - 0) / 4) * (-45.69-(34.5))); + yy = 0 + (((tickAnim - 0) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 4) * (0-(0))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = -45.69 + (((tickAnim - 4) / 4) * (-31.75-(-45.69))); + yy = 0 + (((tickAnim - 4) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 4) / 4) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = -31.75 + (((tickAnim - 8) / 7) * (34.5-(-31.75))); + yy = 0 + (((tickAnim - 8) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg, backLeftLeg.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = 9.5 + (((tickAnim - 0) / 4) * (38.75-(9.5))); + yy = 0 + (((tickAnim - 0) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 4) * (0-(0))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = 38.75 + (((tickAnim - 4) / 4) * (0.5-(38.75))); + yy = 0 + (((tickAnim - 4) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 4) / 4) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = 0.5 + (((tickAnim - 8) / 7) * (9.5-(0.5))); + yy = 0 + (((tickAnim - 8) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg2, backLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = 0 + (((tickAnim - 0) / 4) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 4) * (-0.01-(0))); + zz = 0 + (((tickAnim - 0) / 4) * (0.13-(0))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = 0 + (((tickAnim - 4) / 4) * (0-(0))); + yy = -0.01 + (((tickAnim - 4) / 4) * (-0.25-(-0.01))); + zz = 0.13 + (((tickAnim - 4) / 4) * (0.3-(0.13))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = 0 + (((tickAnim - 8) / 7) * (0-(0))); + yy = -0.25 + (((tickAnim - 8) / 7) * (0-(-0.25))); + zz = 0.3 + (((tickAnim - 8) / 7) * (0-(0.3))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg2.rotationPointX = this.backLeftLeg2.rotationPointX + (float)(xx); + this.backLeftLeg2.rotationPointY = this.backLeftLeg2.rotationPointY - (float)(yy); + this.backLeftLeg2.rotationPointZ = this.backLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = 72.75 + (((tickAnim - 0) / 4) * (80.94-(72.75))); + yy = 0 + (((tickAnim - 0) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 4) * (0-(0))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = 80.94 + (((tickAnim - 4) / 4) * (31-(80.94))); + yy = 0 + (((tickAnim - 4) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 4) / 4) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 31 + (((tickAnim - 8) / 2) * (4.42-(31))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = 4.42 + (((tickAnim - 10) / 5) * (72.75-(4.42))); + yy = 0 + (((tickAnim - 10) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backLeftLeg3, backLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), backLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), backLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = 0 + (((tickAnim - 0) / 4) * (0-(0))); + yy = 0.6 + (((tickAnim - 0) / 4) * (1.48-(0.6))); + zz = -0.425 + (((tickAnim - 0) / 4) * (-0.465-(-0.425))); + } + else if (tickAnim >= 4 && tickAnim < 6) { + xx = 0 + (((tickAnim - 4) / 2) * (0-(0))); + yy = 1.48 + (((tickAnim - 4) / 2) * (1.58-(1.48))); + zz = -0.465 + (((tickAnim - 4) / 2) * (-0.19-(-0.465))); + } + else if (tickAnim >= 6 && tickAnim < 8) { + xx = 0 + (((tickAnim - 6) / 2) * (0-(0))); + yy = 1.58 + (((tickAnim - 6) / 2) * (-0.35-(1.58))); + zz = -0.19 + (((tickAnim - 6) / 2) * (0-(-0.19))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 0 + (((tickAnim - 8) / 2) * (0-(0))); + yy = -0.35 + (((tickAnim - 8) / 2) * (0.02-(-0.35))); + zz = 0 + (((tickAnim - 8) / 2) * (-0.14-(0))); + } + else if (tickAnim >= 10 && tickAnim < 12) { + xx = 0 + (((tickAnim - 10) / 2) * (0-(0))); + yy = 0.02 + (((tickAnim - 10) / 2) * (0.685-(0.02))); + zz = -0.14 + (((tickAnim - 10) / 2) * (0.11-(-0.14))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = 0 + (((tickAnim - 12) / 3) * (0-(0))); + yy = 0.685 + (((tickAnim - 12) / 3) * (0.6-(0.685))); + zz = 0.11 + (((tickAnim - 12) / 3) * (-0.425-(0.11))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backLeftLeg3.rotationPointX = this.backLeftLeg3.rotationPointX + (float)(xx); + this.backLeftLeg3.rotationPointY = this.backLeftLeg3.rotationPointY - (float)(yy); + this.backLeftLeg3.rotationPointZ = this.backLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = -31.75 + (((tickAnim - 0) / 8) * (34.5-(-31.75))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 12) { + xx = 34.5 + (((tickAnim - 8) / 4) * (-45.69-(34.5))); + yy = 0 + (((tickAnim - 8) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 4) * (0-(0))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = -45.69 + (((tickAnim - 12) / 3) * (-31.75-(-45.69))); + yy = 0 + (((tickAnim - 12) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 12) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg, backRightLeg.rotateAngleX + (float) Math.toRadians(xx), backRightLeg.rotateAngleY + (float) Math.toRadians(yy), backRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0.5 + (((tickAnim - 0) / 8) * (9.5-(0.5))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 12) { + xx = 9.5 + (((tickAnim - 8) / 4) * (38.75-(9.5))); + yy = 0 + (((tickAnim - 8) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 4) * (0-(0))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = 38.75 + (((tickAnim - 12) / 3) * (0.5-(38.75))); + yy = 0 + (((tickAnim - 12) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 12) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg2, backRightLeg2.rotateAngleX + (float) Math.toRadians(xx), backRightLeg2.rotateAngleY + (float) Math.toRadians(yy), backRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (0-(0))); + yy = -0.25 + (((tickAnim - 0) / 8) * (0-(-0.25))); + zz = 0.3 + (((tickAnim - 0) / 8) * (0-(0.3))); + } + else if (tickAnim >= 8 && tickAnim < 12) { + xx = 0 + (((tickAnim - 8) / 4) * (0-(0))); + yy = 0 + (((tickAnim - 8) / 4) * (-0.01-(0))); + zz = 0 + (((tickAnim - 8) / 4) * (0.13-(0))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = 0 + (((tickAnim - 12) / 3) * (0-(0))); + yy = -0.01 + (((tickAnim - 12) / 3) * (-0.25-(-0.01))); + zz = 0.13 + (((tickAnim - 12) / 3) * (0.3-(0.13))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg2.rotationPointX = this.backRightLeg2.rotationPointX + (float)(xx); + this.backRightLeg2.rotationPointY = this.backRightLeg2.rotationPointY - (float)(yy); + this.backRightLeg2.rotationPointZ = this.backRightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 31 + (((tickAnim - 0) / 3) * (4.42-(31))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 8) { + xx = 4.42 + (((tickAnim - 3) / 5) * (72.75-(4.42))); + yy = 0 + (((tickAnim - 3) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 5) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 12) { + xx = 72.75 + (((tickAnim - 8) / 4) * (80.94-(72.75))); + yy = 0 + (((tickAnim - 8) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 4) * (0-(0))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = 80.94 + (((tickAnim - 12) / 3) * (31-(80.94))); + yy = 0 + (((tickAnim - 12) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 12) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(backRightLeg3, backRightLeg3.rotateAngleX + (float) Math.toRadians(xx), backRightLeg3.rotateAngleY + (float) Math.toRadians(yy), backRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = -0.35 + (((tickAnim - 0) / 3) * (0.02-(-0.35))); + zz = 0 + (((tickAnim - 0) / 3) * (-0.14-(0))); + } + else if (tickAnim >= 3 && tickAnim < 4) { + xx = 0 + (((tickAnim - 3) / 1) * (0-(0))); + yy = 0.02 + (((tickAnim - 3) / 1) * (0.685-(0.02))); + zz = -0.14 + (((tickAnim - 3) / 1) * (0.11-(-0.14))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = 0 + (((tickAnim - 4) / 4) * (0-(0))); + yy = 0.685 + (((tickAnim - 4) / 4) * (0.6-(0.685))); + zz = 0.11 + (((tickAnim - 4) / 4) * (-0.425-(0.11))); + } + else if (tickAnim >= 8 && tickAnim < 12) { + xx = 0 + (((tickAnim - 8) / 4) * (0-(0))); + yy = 0.6 + (((tickAnim - 8) / 4) * (1.48-(0.6))); + zz = -0.425 + (((tickAnim - 8) / 4) * (-0.465-(-0.425))); + } + else if (tickAnim >= 12 && tickAnim < 13) { + xx = 0 + (((tickAnim - 12) / 1) * (0-(0))); + yy = 1.48 + (((tickAnim - 12) / 1) * (1.58-(1.48))); + zz = -0.465 + (((tickAnim - 12) / 1) * (-0.19-(-0.465))); + } + else if (tickAnim >= 13 && tickAnim < 15) { + xx = 0 + (((tickAnim - 13) / 2) * (0-(0))); + yy = 1.58 + (((tickAnim - 13) / 2) * (-0.35-(1.58))); + zz = -0.19 + (((tickAnim - 13) / 2) * (0-(-0.19))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.backRightLeg3.rotationPointX = this.backRightLeg3.rotationPointX + (float)(xx); + this.backRightLeg3.rotationPointY = this.backRightLeg3.rotationPointY - (float)(yy); + this.backRightLeg3.rotationPointZ = this.backRightLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480/0.5+90))*-3), tail.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480))*-3), tail.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480+90))*3)); + + + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480/0.5))*5), tail2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-50))*9), tail2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480+90))*3)); + + + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480/0.5-100))*7), tail3.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-100))*15), tail3.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480+90))*3)); + + + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480/0.5-150))*9), tail4.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-150))*20), tail4.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480+90))*3)); + + + this.setRotateAngle(tail5, tail5.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480/0.5-200))*12), tail5.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480-200))*25), tail5.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480+90))*3)); + + + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480/0.5+140))*-3), body.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480+130))*9), body.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480+140))*-5)); + + + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480/0.5+220))*5), body2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480+90))*-5), body2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480+140))*5)); + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = -52.5 + (((tickAnim - 0) / 8) * (24.65648-(-52.5))); + yy = 0 + (((tickAnim - 0) / 8) * (3.85347-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (-2.77938-(0))); + } + else if (tickAnim >= 8 && tickAnim < 12) { + xx = 24.65648 + (((tickAnim - 8) / 4) * (-22.96229-(24.65648))); + yy = 3.85347 + (((tickAnim - 8) / 4) * (9.383-(3.85347))); + zz = -2.77938 + (((tickAnim - 8) / 4) * (-47.6175-(-2.77938))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = -22.96229 + (((tickAnim - 12) / 3) * (-52.5-(-22.96229))); + yy = 9.383 + (((tickAnim - 12) / 3) * (0-(9.383))); + zz = -47.6175 + (((tickAnim - 12) / 3) * (0-(-47.6175))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg, frontLeftLeg.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 19 + (((tickAnim - 0) / 8) * (35.94875-(19))); + yy = 0 + (((tickAnim - 0) / 8) * (1.9152-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (11.84839-(0))); + } + else if (tickAnim >= 8 && tickAnim < 12) { + xx = 35.94875 + (((tickAnim - 8) / 4) * (-27.80427-(35.94875))); + yy = 1.9152 + (((tickAnim - 8) / 4) * (-0.43603-(1.9152))); + zz = 11.84839 + (((tickAnim - 8) / 4) * (52.4953-(11.84839))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = -27.80427 + (((tickAnim - 12) / 3) * (19-(-27.80427))); + yy = -0.43603 + (((tickAnim - 12) / 3) * (0-(-0.43603))); + zz = 52.4953 + (((tickAnim - 12) / 3) * (0-(52.4953))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg2, frontLeftLeg2.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg2.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0.325-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 9) { + xx = 0 + (((tickAnim - 8) / 1) * (-0.035-(0))); + yy = 0.325 + (((tickAnim - 8) / 1) * (0.725-(0.325))); + zz = 0 + (((tickAnim - 8) / 1) * (0.04-(0))); + } + else if (tickAnim >= 9 && tickAnim < 12) { + xx = -0.035 + (((tickAnim - 9) / 3) * (-0.9-(-0.035))); + yy = 0.725 + (((tickAnim - 9) / 3) * (0.14-(0.725))); + zz = 0.04 + (((tickAnim - 9) / 3) * (0.1-(0.04))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = -0.9 + (((tickAnim - 12) / 3) * (0-(-0.9))); + yy = 0.14 + (((tickAnim - 12) / 3) * (0-(0.14))); + zz = 0.1 + (((tickAnim - 12) / 3) * (0-(0.1))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg2.rotationPointX = this.frontLeftLeg2.rotationPointX + (float)(xx); + this.frontLeftLeg2.rotationPointY = this.frontLeftLeg2.rotationPointY - (float)(yy); + this.frontLeftLeg2.rotationPointZ = this.frontLeftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 33.25 + (((tickAnim - 0) / 3) * (-7.20286-(33.25))); + yy = 0 + (((tickAnim - 0) / 3) * (0.36988-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (-3.98289-(0))); + } + else if (tickAnim >= 3 && tickAnim < 8) { + xx = -7.20286 + (((tickAnim - 3) / 5) * (61.5-(-7.20286))); + yy = 0.36988 + (((tickAnim - 3) / 5) * (0-(0.36988))); + zz = -3.98289 + (((tickAnim - 3) / 5) * (0-(-3.98289))); + } + else if (tickAnim >= 8 && tickAnim < 9) { + xx = 61.5 + (((tickAnim - 8) / 1) * (91.87-(61.5))); + yy = 0 + (((tickAnim - 8) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 1) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 12) { + xx = 91.87 + (((tickAnim - 9) / 3) * (75.56-(91.87))); + yy = 0 + (((tickAnim - 9) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 9) / 3) * (0-(0))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = 75.56 + (((tickAnim - 12) / 3) * (33.25-(75.56))); + yy = 0 + (((tickAnim - 12) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 12) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontLeftLeg3, frontLeftLeg3.rotateAngleX + (float) Math.toRadians(xx), frontLeftLeg3.rotateAngleY + (float) Math.toRadians(yy), frontLeftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0.325 + (((tickAnim - 0) / 2) * (1.62-(0.325))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 3) { + xx = 0 + (((tickAnim - 2) / 1) * (0-(0))); + yy = 1.62 + (((tickAnim - 2) / 1) * (0.95-(1.62))); + zz = 0 + (((tickAnim - 2) / 1) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 8) { + xx = 0 + (((tickAnim - 3) / 5) * (0-(0))); + yy = 0.95 + (((tickAnim - 3) / 5) * (0.525-(0.95))); + zz = 0 + (((tickAnim - 3) / 5) * (-0.825-(0))); + } + else if (tickAnim >= 8 && tickAnim < 9) { + xx = 0 + (((tickAnim - 8) / 1) * (0-(0))); + yy = 0.525 + (((tickAnim - 8) / 1) * (1.42-(0.525))); + zz = -0.825 + (((tickAnim - 8) / 1) * (-1.155-(-0.825))); + } + else if (tickAnim >= 9 && tickAnim < 12) { + xx = 0 + (((tickAnim - 9) / 3) * (0-(0))); + yy = 1.42 + (((tickAnim - 9) / 3) * (1.01-(1.42))); + zz = -1.155 + (((tickAnim - 9) / 3) * (-0.97-(-1.155))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = 0 + (((tickAnim - 12) / 3) * (0-(0))); + yy = 1.01 + (((tickAnim - 12) / 3) * (0.325-(1.01))); + zz = -0.97 + (((tickAnim - 12) / 3) * (0-(-0.97))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontLeftLeg3.rotationPointX = this.frontLeftLeg3.rotationPointX + (float)(xx); + this.frontLeftLeg3.rotationPointY = this.frontLeftLeg3.rotationPointY - (float)(yy); + this.frontLeftLeg3.rotationPointZ = this.frontLeftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = 24.65648 + (((tickAnim - 0) / 4) * (-22.96229-(24.65648))); + yy = 3.85347 + (((tickAnim - 0) / 4) * (-9.383-(3.85347))); + zz = -2.77938 + (((tickAnim - 0) / 4) * (47.6175-(-2.77938))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = -22.96229 + (((tickAnim - 4) / 4) * (-52.5-(-22.96229))); + yy = -9.383 + (((tickAnim - 4) / 4) * (0-(-9.383))); + zz = 47.6175 + (((tickAnim - 4) / 4) * (0-(47.6175))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = -52.5 + (((tickAnim - 8) / 7) * (24.65648-(-52.5))); + yy = 0 + (((tickAnim - 8) / 7) * (3.85347-(0))); + zz = 0 + (((tickAnim - 8) / 7) * (-2.77938-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg, frontRightLeg.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 4) { + xx = 35.94875 + (((tickAnim - 0) / 4) * (-27.80427-(35.94875))); + yy = -1.9152 + (((tickAnim - 0) / 4) * (0.43603-(-1.9152))); + zz = -11.84839 + (((tickAnim - 0) / 4) * (-52.4953-(-11.84839))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = -27.80427 + (((tickAnim - 4) / 4) * (19-(-27.80427))); + yy = 0.43603 + (((tickAnim - 4) / 4) * (0-(0.43603))); + zz = -52.4953 + (((tickAnim - 4) / 4) * (0-(-52.4953))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = 19 + (((tickAnim - 8) / 7) * (35.94875-(19))); + yy = 0 + (((tickAnim - 8) / 7) * (-1.9152-(0))); + zz = 0 + (((tickAnim - 8) / 7) * (-11.84839-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg2, frontRightLeg2.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg2.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (-0.035-(0))); + yy = 0.325 + (((tickAnim - 0) / 2) * (0.725-(0.325))); + zz = 0 + (((tickAnim - 0) / 2) * (0.04-(0))); + } + else if (tickAnim >= 2 && tickAnim < 4) { + xx = -0.035 + (((tickAnim - 2) / 2) * (0.9-(-0.035))); + yy = 0.725 + (((tickAnim - 2) / 2) * (-0.14-(0.725))); + zz = 0.04 + (((tickAnim - 2) / 2) * (0.1-(0.04))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = 0.9 + (((tickAnim - 4) / 4) * (0-(0.9))); + yy = -0.14 + (((tickAnim - 4) / 4) * (0-(-0.14))); + zz = 0.1 + (((tickAnim - 4) / 4) * (0-(0.1))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = 0 + (((tickAnim - 8) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 8) / 7) * (0.325-(0))); + zz = 0 + (((tickAnim - 8) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg2.rotationPointX = this.frontRightLeg2.rotationPointX + (float)(xx); + this.frontRightLeg2.rotationPointY = this.frontRightLeg2.rotationPointY - (float)(yy); + this.frontRightLeg2.rotationPointZ = this.frontRightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 61.5 + (((tickAnim - 0) / 2) * (91.87-(61.5))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 4) { + xx = 91.87 + (((tickAnim - 2) / 2) * (75.56-(91.87))); + yy = 0 + (((tickAnim - 2) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 2) * (0-(0))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = 75.56 + (((tickAnim - 4) / 4) * (33.25-(75.56))); + yy = 0 + (((tickAnim - 4) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 4) / 4) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 12) { + xx = 33.25 + (((tickAnim - 8) / 4) * (-18.80265-(33.25))); + yy = 0 + (((tickAnim - 8) / 4) * (0.12458-(0))); + zz = 0 + (((tickAnim - 8) / 4) * (6.74886-(0))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = -18.80265 + (((tickAnim - 12) / 3) * (61.5-(-18.80265))); + yy = 0.12458 + (((tickAnim - 12) / 3) * (0-(0.12458))); + zz = 6.74886 + (((tickAnim - 12) / 3) * (0-(6.74886))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(frontRightLeg3, frontRightLeg3.rotateAngleX + (float) Math.toRadians(xx), frontRightLeg3.rotateAngleY + (float) Math.toRadians(yy), frontRightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0.525 + (((tickAnim - 0) / 2) * (1.42-(0.525))); + zz = -0.825 + (((tickAnim - 0) / 2) * (-1.155-(-0.825))); + } + else if (tickAnim >= 2 && tickAnim < 4) { + xx = 0 + (((tickAnim - 2) / 2) * (0-(0))); + yy = 1.42 + (((tickAnim - 2) / 2) * (1.01-(1.42))); + zz = -1.155 + (((tickAnim - 2) / 2) * (-0.97-(-1.155))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = 0 + (((tickAnim - 4) / 4) * (0-(0))); + yy = 1.01 + (((tickAnim - 4) / 4) * (0.325-(1.01))); + zz = -0.97 + (((tickAnim - 4) / 4) * (0-(-0.97))); + } + else if (tickAnim >= 8 && tickAnim < 9) { + xx = 0 + (((tickAnim - 8) / 1) * (0-(0))); + yy = 0.325 + (((tickAnim - 8) / 1) * (1.62-(0.325))); + zz = 0 + (((tickAnim - 8) / 1) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 11) { + xx = 0 + (((tickAnim - 9) / 2) * (0-(0))); + yy = 1.62 + (((tickAnim - 9) / 2) * (0.95-(1.62))); + zz = 0 + (((tickAnim - 9) / 2) * (0-(0))); + } + else if (tickAnim >= 11 && tickAnim < 12) { + xx = 0 + (((tickAnim - 11) / 1) * (0-(0))); + yy = 0.95 + (((tickAnim - 11) / 1) * (0.35-(0.95))); + zz = 0 + (((tickAnim - 11) / 1) * (0-(0))); + } + else if (tickAnim >= 12 && tickAnim < 15) { + xx = 0 + (((tickAnim - 12) / 3) * (0-(0))); + yy = 0.35 + (((tickAnim - 12) / 3) * (0.525-(0.35))); + zz = 0 + (((tickAnim - 12) / 3) * (-0.825-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.frontRightLeg3.rotationPointX = this.frontRightLeg3.rotationPointX + (float)(xx); + this.frontRightLeg3.rotationPointY = this.frontRightLeg3.rotationPointY - (float)(yy); + this.frontRightLeg3.rotationPointZ = this.frontRightLeg3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480/0.5+150))*-5), neck.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480))*9), neck.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480+140))*-5)); + + + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*480/0.5+150))*5), head.rotateAngleY + (float) Math.toRadians(0), head.rotateAngleZ + (float) Math.toRadians(0)); + + } + + @Override + public void setLivingAnimations(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + super.setLivingAnimations(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + this.resetToDefaultPose(); + EntityPrehistoricFloraTarjadia ee = (EntityPrehistoricFloraTarjadia) entitylivingbaseIn; + + if (!ee.isReallyInWater()) { + if (ee.getIsMoving()) { + if (ee.getIsFast()) { //Running + animRunning(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + + } else { //Walking + animWalking(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + } + } + } + else { + //Swimming pose: + if (!ee.getIsMoving()) { //static in water + // + } + //moving in water + // + } + if (ee.getAnimation() == ee.EAT_ANIMATION) { + animEat(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.ATTACK_ANIMATION) { + animAttack(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.MAKE_NEST_ANIMATION) { + animNest(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.LAY_ANIMATION) { + animLay(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.ROAR_ANIMATION) { //The actual roar/anim + animRoar(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + + } + + public void animate(IAnimatedEntity entity, float f, float f1, float f2, float f3, float f4, float f5) { + EntityPrehistoricFloraTarjadia e = (EntityPrehistoricFloraTarjadia) entity; + + } +} diff --git a/src/main/java/net/lepidodendron/entity/model/entity/ModelTicinosuchus.java b/src/main/java/net/lepidodendron/entity/model/entity/ModelTicinosuchus.java new file mode 100644 index 0000000000..d000fba1fb --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/model/entity/ModelTicinosuchus.java @@ -0,0 +1,4271 @@ +package net.lepidodendron.entity.model.entity; + +import net.ilexiconn.llibrary.client.model.ModelAnimator; +import net.ilexiconn.llibrary.client.model.tools.AdvancedModelRenderer; +import net.ilexiconn.llibrary.server.animation.IAnimatedEntity; +import net.lepidodendron.entity.EntityPrehistoricFloraTicinosuchus; +import net.lepidodendron.entity.model.ModelBasePalaeopedia; +import net.minecraft.client.model.ModelBox; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; + +public class ModelTicinosuchus extends ModelBasePalaeopedia { + private final AdvancedModelRenderer main; + private final AdvancedModelRenderer leftLeg; + private final AdvancedModelRenderer leftLeg2; + private final AdvancedModelRenderer leftLeg3; + private final AdvancedModelRenderer leftLeg4; + private final AdvancedModelRenderer rightLeg; + private final AdvancedModelRenderer rightLeg2; + private final AdvancedModelRenderer rightLeg3; + private final AdvancedModelRenderer rightLeg4; + private final AdvancedModelRenderer tail; + private final AdvancedModelRenderer tail2; + private final AdvancedModelRenderer tail3; + private final AdvancedModelRenderer cube_r1; + private final AdvancedModelRenderer tail4; + private final AdvancedModelRenderer cube_r2; + private final AdvancedModelRenderer tail5; + private final AdvancedModelRenderer tail6; + private final AdvancedModelRenderer body; + private final AdvancedModelRenderer body2; + private final AdvancedModelRenderer leftArm; + private final AdvancedModelRenderer leftArm2; + private final AdvancedModelRenderer leftArm3; + private final AdvancedModelRenderer rightArm; + private final AdvancedModelRenderer rightArm2; + private final AdvancedModelRenderer rightArm3; + private final AdvancedModelRenderer neck; + private final AdvancedModelRenderer neck2; + private final AdvancedModelRenderer cube_r3; + private final AdvancedModelRenderer head; + private final AdvancedModelRenderer cube_r4; + private final AdvancedModelRenderer cube_r5; + private final AdvancedModelRenderer cube_r6; + private final AdvancedModelRenderer cube_r7; + private final AdvancedModelRenderer cube_r8; + private final AdvancedModelRenderer cube_r9; + private final AdvancedModelRenderer jaw; + private final AdvancedModelRenderer cube_r10; + private final AdvancedModelRenderer cube_r11; + private final AdvancedModelRenderer cube_r12; + private final AdvancedModelRenderer cube_r13; + private final AdvancedModelRenderer cube_r14; + + private ModelAnimator animator; + + public ModelTicinosuchus() { + this.textureWidth = 80; + this.textureHeight = 80; + + this.main = new AdvancedModelRenderer(this); + this.main.setRotationPoint(0.0F, 12.5F, 6.0F); + this.main.cubeList.add(new ModelBox(main, 0, 16, -3.1114F, -2.0197F, -0.0587F, 6, 6, 6, 0.0F, false)); + this.main.cubeList.add(new ModelBox(main, 55, 58, -1.6114F, -2.3947F, 0.8913F, 3, 1, 5, 0.0F, false)); + + this.leftLeg = new AdvancedModelRenderer(this); + this.leftLeg.setRotationPoint(2.8886F, 0.1303F, 4.4413F); + this.main.addChild(leftLeg); + this.setRotateAngle(leftLeg, -0.2618F, 0.0F, 0.0F); + this.leftLeg.cubeList.add(new ModelBox(leftLeg, 40, 51, -1.5F, -1.0F, -2.0F, 3, 7, 4, 0.0F, false)); + + this.leftLeg2 = new AdvancedModelRenderer(this); + this.leftLeg2.setRotationPoint(0.0F, 6.0F, -2.0F); + this.leftLeg.addChild(leftLeg2); + this.setRotateAngle(leftLeg2, 0.7723F, 0.0F, 0.0F); + this.leftLeg2.cubeList.add(new ModelBox(leftLeg2, 63, 38, -1.0F, 0.0F, 0.0F, 2, 5, 3, 0.0F, false)); + + this.leftLeg3 = new AdvancedModelRenderer(this); + this.leftLeg3.setRotationPoint(0.0F, 5.0F, 3.0F); + this.leftLeg2.addChild(leftLeg3); + this.setRotateAngle(leftLeg3, -0.6981F, 0.0F, 0.0F); + this.leftLeg3.cubeList.add(new ModelBox(leftLeg3, 67, 5, -1.0F, 0.0F, -2.0F, 2, 3, 2, -0.01F, false)); + + this.leftLeg4 = new AdvancedModelRenderer(this); + this.leftLeg4.setRotationPoint(0.0F, 2.3F, -0.5F); + this.leftLeg3.addChild(leftLeg4); + this.setRotateAngle(leftLeg4, 0.1876F, 0.0F, 0.0F); + this.leftLeg4.cubeList.add(new ModelBox(leftLeg4, 28, 63, -1.5F, 0.0F, -4.0F, 3, 1, 4, 0.0F, false)); + + this.rightLeg = new AdvancedModelRenderer(this); + this.rightLeg.setRotationPoint(-3.1114F, 0.1303F, 4.4413F); + this.main.addChild(rightLeg); + this.setRotateAngle(rightLeg, -0.2618F, 0.0F, 0.0F); + this.rightLeg.cubeList.add(new ModelBox(rightLeg, 40, 51, -1.5F, -1.0F, -2.0F, 3, 7, 4, 0.0F, true)); + + this.rightLeg2 = new AdvancedModelRenderer(this); + this.rightLeg2.setRotationPoint(0.0F, 6.0F, -2.0F); + this.rightLeg.addChild(rightLeg2); + this.setRotateAngle(rightLeg2, 0.7723F, 0.0F, 0.0F); + this.rightLeg2.cubeList.add(new ModelBox(rightLeg2, 63, 38, -1.0F, 0.0F, 0.0F, 2, 5, 3, 0.0F, true)); + + this.rightLeg3 = new AdvancedModelRenderer(this); + this.rightLeg3.setRotationPoint(0.0F, 5.0F, 3.0F); + this.rightLeg2.addChild(rightLeg3); + this.setRotateAngle(rightLeg3, -0.6981F, 0.0F, 0.0F); + this.rightLeg3.cubeList.add(new ModelBox(rightLeg3, 67, 5, -1.0F, 0.0F, -2.0F, 2, 3, 2, -0.01F, true)); + + this.rightLeg4 = new AdvancedModelRenderer(this); + this.rightLeg4.setRotationPoint(0.0F, 2.3F, -0.5F); + this.rightLeg3.addChild(rightLeg4); + this.setRotateAngle(rightLeg4, 0.1876F, 0.0F, 0.0F); + this.rightLeg4.cubeList.add(new ModelBox(rightLeg4, 28, 63, -1.5F, 0.0F, -4.0F, 3, 1, 4, 0.0F, true)); + + this.tail = new AdvancedModelRenderer(this); + this.tail.setRotationPoint(-0.1114F, -2.0197F, 4.9413F); + this.main.addChild(tail); + this.tail.cubeList.add(new ModelBox(tail, 21, 40, -2.5F, 0.025F, 0.0F, 5, 5, 5, 0.0F, false)); + this.tail.cubeList.add(new ModelBox(tail, 65, 32, -1.0F, -0.375F, 0.8F, 2, 1, 4, -0.003F, false)); + + this.tail2 = new AdvancedModelRenderer(this); + this.tail2.setRotationPoint(0.0F, 0.175F, 4.0F); + this.tail.addChild(tail2); + this.setRotateAngle(tail2, -0.0698F, 0.0F, 0.0F); + this.tail2.cubeList.add(new ModelBox(tail2, 25, 16, -2.0F, 0.025F, 0.0F, 4, 4, 7, 0.0F, false)); + this.tail2.cubeList.add(new ModelBox(tail2, 48, 20, -1.0F, -0.575F, 0.725F, 2, 1, 6, 0.0F, false)); + + this.tail3 = new AdvancedModelRenderer(this); + this.tail3.setRotationPoint(0.0F, 0.1616F, 6.3332F); + this.tail2.addChild(tail3); + this.setRotateAngle(tail3, -0.1527F, 0.0F, 0.0F); + this.tail3.cubeList.add(new ModelBox(tail3, 46, 28, -1.5F, 0.025F, 0.0F, 3, 3, 6, 0.0F, false)); + + this.cube_r1 = new AdvancedModelRenderer(this); + this.cube_r1.setRotationPoint(0.0F, -0.675F, 5.75F); + this.tail3.addChild(cube_r1); + this.setRotateAngle(cube_r1, 0.0044F, 0.0F, 0.0F); + this.cube_r1.cubeList.add(new ModelBox(cube_r1, 0, 61, -0.5F, 0.0F, -6.025F, 1, 1, 6, 0.0F, false)); + + this.tail4 = new AdvancedModelRenderer(this); + this.tail4.setRotationPoint(0.0F, -0.55F, 5.675F); + this.tail3.addChild(tail4); + this.setRotateAngle(tail4, -0.1702F, 0.0F, 0.0F); + this.tail4.cubeList.add(new ModelBox(tail4, 42, 40, -1.0F, 0.8057F, -0.5183F, 2, 2, 8, 0.0F, false)); + + this.cube_r2 = new AdvancedModelRenderer(this); + this.cube_r2.setRotationPoint(-0.5F, 0.8057F, -0.5183F); + this.tail4.addChild(cube_r2); + this.setRotateAngle(cube_r2, -0.0654F, 0.0F, 0.0F); + this.cube_r2.cubeList.add(new ModelBox(cube_r2, 0, 52, 0.0F, -0.95F, 0.45F, 1, 1, 7, 0.003F, false)); + + this.tail5 = new AdvancedModelRenderer(this); + this.tail5.setRotationPoint(0.0F, 0.7807F, 6.4817F); + this.tail4.addChild(tail5); + this.setRotateAngle(tail5, 0.2051F, 0.0F, 0.0F); + this.tail5.cubeList.add(new ModelBox(tail5, 0, 41, -1.0F, 0.025F, 0.0F, 2, 2, 8, -0.003F, false)); + this.tail5.cubeList.add(new ModelBox(tail5, 21, 51, -0.5F, -0.275F, 0.0F, 1, 1, 8, 0.0F, false)); + + this.tail6 = new AdvancedModelRenderer(this); + this.tail6.setRotationPoint(0.0F, 0.1F, 7.0F); + this.tail5.addChild(tail6); + this.setRotateAngle(tail6, 0.1527F, 0.0F, 0.0F); + this.tail6.cubeList.add(new ModelBox(tail6, 48, 10, -0.5F, 0.025F, 0.0F, 1, 1, 8, -0.003F, false)); + + this.body = new AdvancedModelRenderer(this); + this.body.setRotationPoint(-0.1114F, -2.1197F, 0.9413F); + this.main.addChild(body); + this.setRotateAngle(body, 0.0873F, 0.0F, 0.0F); + this.body.cubeList.add(new ModelBox(body, 0, 0, -3.0F, 0.0F, -8.0F, 6, 7, 8, 0.01F, false)); + this.body.cubeList.add(new ModelBox(body, 29, 0, -1.5F, -0.25F, -8.0F, 3, 1, 8, 0.003F, false)); + + this.body2 = new AdvancedModelRenderer(this); + this.body2.setRotationPoint(0.0F, 0.0F, -7.0F); + this.body.addChild(body2); + this.setRotateAngle(body2, -0.0873F, 0.0F, 0.0F); + this.body2.cubeList.add(new ModelBox(body2, 25, 28, -2.5F, 0.0F, -5.0F, 5, 6, 5, 0.0F, false)); + this.body2.cubeList.add(new ModelBox(body2, 55, 51, -1.5F, -0.2F, -5.0F, 3, 1, 5, -0.003F, false)); + + this.leftArm = new AdvancedModelRenderer(this); + this.leftArm.setRotationPoint(2.35F, 4.3415F, -3.4575F); + this.body2.addChild(leftArm); + this.setRotateAngle(leftArm, 0.4014F, 0.0F, 0.0F); + this.leftArm.cubeList.add(new ModelBox(leftArm, 15, 61, -1.5F, -0.5F, -1.5F, 3, 5, 3, 0.0F, false)); + + this.leftArm2 = new AdvancedModelRenderer(this); + this.leftArm2.setRotationPoint(0.0F, 4.5F, 1.5F); + this.leftArm.addChild(leftArm2); + this.setRotateAngle(leftArm2, -0.6196F, 0.0F, 0.0F); + this.leftArm2.cubeList.add(new ModelBox(leftArm2, 43, 63, -1.0F, 0.0F, -2.0F, 2, 5, 2, 0.0F, false)); + + this.leftArm3 = new AdvancedModelRenderer(this); + this.leftArm3.setRotationPoint(0.0F, 4.1851F, -0.2071F); + this.leftArm2.addChild(leftArm3); + this.setRotateAngle(leftArm3, 0.2182F, 0.0F, 0.0F); + this.leftArm3.cubeList.add(new ModelBox(leftArm3, 29, 10, -1.5F, 0.0F, -4.0F, 3, 1, 4, 0.0F, false)); + + this.rightArm = new AdvancedModelRenderer(this); + this.rightArm.setRotationPoint(-2.35F, 4.3415F, -3.4575F); + this.body2.addChild(rightArm); + this.setRotateAngle(rightArm, 0.4014F, 0.0F, 0.0F); + this.rightArm.cubeList.add(new ModelBox(rightArm, 15, 61, -1.5F, -0.5F, -1.5F, 3, 5, 3, 0.0F, true)); + + this.rightArm2 = new AdvancedModelRenderer(this); + this.rightArm2.setRotationPoint(0.0F, 4.5F, 1.5F); + this.rightArm.addChild(rightArm2); + this.setRotateAngle(rightArm2, -0.6196F, 0.0F, 0.0F); + this.rightArm2.cubeList.add(new ModelBox(rightArm2, 43, 63, -1.0F, 0.0F, -2.0F, 2, 5, 2, 0.0F, true)); + + this.rightArm3 = new AdvancedModelRenderer(this); + this.rightArm3.setRotationPoint(0.0F, 4.1851F, -0.2071F); + this.rightArm2.addChild(rightArm3); + this.setRotateAngle(rightArm3, 0.2182F, 0.0F, 0.0F); + this.rightArm3.cubeList.add(new ModelBox(rightArm3, 29, 10, -1.5F, 0.0F, -4.0F, 3, 1, 4, 0.0F, true)); + + this.neck = new AdvancedModelRenderer(this); + this.neck.setRotationPoint(0.0F, 0.187F, -3.7956F); + this.body2.addChild(neck); + this.setRotateAngle(neck, -0.1004F, 0.0F, 0.0F); + this.neck.cubeList.add(new ModelBox(neck, 0, 29, -2.0F, 0.0F, -5.0F, 4, 5, 6, 0.0F, false)); + this.neck.cubeList.add(new ModelBox(neck, 65, 26, -1.0F, -0.2F, -5.0F, 2, 1, 4, 0.003F, false)); + + this.neck2 = new AdvancedModelRenderer(this); + this.neck2.setRotationPoint(0.0F, 0.0087F, -4.4498F); + this.neck.addChild(neck2); + this.setRotateAngle(neck2, 0.0436F, 0.0F, 0.0F); + this.neck2.cubeList.add(new ModelBox(neck2, 52, 0, -1.5F, 0.0F, -4.0F, 3, 4, 4, -0.01F, false)); + + this.cube_r3 = new AdvancedModelRenderer(this); + this.cube_r3.setRotationPoint(0.0F, 0.25F, -4.0F); + this.neck2.addChild(cube_r3); + this.setRotateAngle(cube_r3, 0.0436F, 0.0F, 0.0F); + this.cube_r3.cubeList.add(new ModelBox(cube_r3, 65, 20, -1.0F, -0.3F, -0.2F, 2, 1, 4, 0.0F, false)); + + this.head = new AdvancedModelRenderer(this); + this.head.setRotationPoint(0.0F, 0.0F, -4.0F); + this.neck2.addChild(head); + this.setRotateAngle(head, 0.1745F, 0.0F, 0.0F); + this.head.cubeList.add(new ModelBox(head, 63, 65, -1.5F, 0.0F, -2.0F, 3, 2, 2, 0.0F, false)); + this.head.cubeList.add(new ModelBox(head, 37, 71, -1.0F, 0.2615F, -5.8136F, 2, 1, 1, 0.0F, false)); + + this.cube_r4 = new AdvancedModelRenderer(this); + this.cube_r4.setRotationPoint(-1.0F, 2.3252F, -4.13F); + this.head.addChild(cube_r4); + this.setRotateAngle(cube_r4, -0.0916F, 0.0F, 0.0F); + this.cube_r4.cubeList.add(new ModelBox(cube_r4, 63, 47, -0.5F, -1.0F, 2.075F, 3, 1, 2, 0.003F, false)); + this.cube_r4.cubeList.add(new ModelBox(cube_r4, 28, 69, 0.0F, -0.975F, 0.55F, 2, 1, 2, 0.0F, false)); + + this.cube_r5 = new AdvancedModelRenderer(this); + this.cube_r5.setRotationPoint(0.5F, 0.6944F, -6.9412F); + this.head.addChild(cube_r5); + this.setRotateAngle(cube_r5, -0.1309F, 0.0F, 0.0F); + this.cube_r5.cubeList.add(new ModelBox(cube_r5, 70, 70, -1.4F, 0.5F, 0.65F, 0, 1, 3, 0.0F, true)); + this.cube_r5.cubeList.add(new ModelBox(cube_r5, 70, 70, 0.4F, 0.5F, 0.65F, 0, 1, 3, 0.0F, false)); + this.cube_r5.cubeList.add(new ModelBox(cube_r5, 67, 0, -1.5F, 0.25F, 0.55F, 2, 1, 3, 0.003F, false)); + + this.cube_r6 = new AdvancedModelRenderer(this); + this.cube_r6.setRotationPoint(0.0F, 0.2615F, -5.8136F); + this.head.addChild(cube_r6); + this.setRotateAngle(cube_r6, 0.8727F, 0.0F, 0.0F); + this.cube_r6.cubeList.add(new ModelBox(cube_r6, 44, 71, -1.0F, 0.0F, -1.0F, 2, 1, 1, -0.003F, false)); + + this.cube_r7 = new AdvancedModelRenderer(this); + this.cube_r7.setRotationPoint(-1.0F, 0.7387F, -2.4122F); + this.head.addChild(cube_r7); + this.setRotateAngle(cube_r7, 0.0894F, -0.2173F, -0.0193F); + this.cube_r7.cubeList.add(new ModelBox(cube_r7, 58, 71, -0.475F, -0.325F, -0.275F, 1, 1, 1, 0.0F, true)); + + this.cube_r8 = new AdvancedModelRenderer(this); + this.cube_r8.setRotationPoint(1.0F, 0.7387F, -2.4122F); + this.head.addChild(cube_r8); + this.setRotateAngle(cube_r8, 0.0894F, 0.2173F, 0.0193F); + this.cube_r8.cubeList.add(new ModelBox(cube_r8, 58, 71, -0.525F, -0.325F, -0.275F, 1, 1, 1, 0.0F, false)); + + this.cube_r9 = new AdvancedModelRenderer(this); + this.cube_r9.setRotationPoint(0.0F, 0.0F, -2.0F); + this.head.addChild(cube_r9); + this.setRotateAngle(cube_r9, 0.0873F, 0.0F, 0.0F); + this.cube_r9.cubeList.add(new ModelBox(cube_r9, 52, 65, -1.0F, 0.0F, -2.975F, 2, 2, 3, -0.01F, false)); + + this.jaw = new AdvancedModelRenderer(this); + this.jaw.setRotationPoint(-0.5F, 2.6976F, -0.3883F); + this.head.addChild(jaw); + + + this.cube_r10 = new AdvancedModelRenderer(this); + this.cube_r10.setRotationPoint(0.5F, 0.4565F, -3.7977F); + this.jaw.addChild(cube_r10); + this.setRotateAngle(cube_r10, -0.2225F, 0.0F, 0.0F); + this.cube_r10.cubeList.add(new ModelBox(cube_r10, 51, 71, -1.0F, -1.05F, -2.475F, 2, 1, 1, -0.009F, false)); + + this.cube_r11 = new AdvancedModelRenderer(this); + this.cube_r11.setRotationPoint(0.5F, 0.4565F, -3.7977F); + this.jaw.addChild(cube_r11); + this.setRotateAngle(cube_r11, -0.3098F, 0.0F, 0.0F); + this.cube_r11.cubeList.add(new ModelBox(cube_r11, 18, 70, -0.8F, -1.275F, -2.3F, 0, 1, 3, 0.0F, true)); + this.cube_r11.cubeList.add(new ModelBox(cube_r11, 18, 70, 0.8F, -1.275F, -2.3F, 0, 1, 3, 0.0F, false)); + + this.cube_r12 = new AdvancedModelRenderer(this); + this.cube_r12.setRotationPoint(0.5F, 0.4632F, -3.6948F); + this.jaw.addChild(cube_r12); + this.setRotateAngle(cube_r12, -0.2225F, 0.0F, 0.0F); + this.cube_r12.cubeList.add(new ModelBox(cube_r12, 0, 69, -1.0F, -1.025F, -1.975F, 2, 1, 2, -0.006F, false)); + + this.cube_r13 = new AdvancedModelRenderer(this); + this.cube_r13.setRotationPoint(0.0F, -0.1894F, -1.7501F); + this.jaw.addChild(cube_r13); + this.setRotateAngle(cube_r13, -0.1789F, 0.0F, 0.0F); + this.cube_r13.cubeList.add(new ModelBox(cube_r13, 9, 70, -0.5F, -0.025F, -1.8F, 2, 1, 2, -0.003F, false)); + + this.cube_r14 = new AdvancedModelRenderer(this); + this.cube_r14.setRotationPoint(0.0F, -0.3724F, -3.7417F); + this.jaw.addChild(cube_r14); + this.setRotateAngle(cube_r14, -0.0916F, 0.0F, 0.0F); + this.cube_r14.cubeList.add(new ModelBox(cube_r14, 67, 15, -0.5F, -1.5F, 2.05F, 2, 2, 2, -0.01F, false)); + this.cube_r14.cubeList.add(new ModelBox(cube_r14, 67, 11, -1.0F, 0.0F, 2.075F, 3, 1, 2, 0.0F, false)); + + updateDefaultPose(); + animator = ModelAnimator.create(); + } + + @Override + public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { + animate((IAnimatedEntity) entity, f, f1, f2, f3, f4, f5); + this.main.render(f5); + } + + @Override + public void renderStaticBook(float f) { + //Rotations, positions and sizing: + this.main.offsetY = 0.2F; + this.main.offsetX = 0.35F; + this.main.offsetZ = 2.0F; + this.main.rotateAngleY = (float)Math.toRadians(120); + this.main.rotateAngleX = (float)Math.toRadians(1); + this.main.rotateAngleZ = (float)Math.toRadians(0); + this.main.scaleChildren = true; + float scaler = 0.6F; + this.main.setScale(scaler, scaler, scaler); + //Start of pose: + + //End of pose, now render the model: + this.main.render(f); + //Reset rotations, positions and sizing: + this.main.setScale(1.0F, 1.0F, 1.0F); + this.main.scaleChildren = false; + resetToDefaultPose(); + + } + + public void renderStaticWall(float f) { + resetToDefaultPose(); + } + + public void renderStaticFloor(float f) { + this.main.offsetY = -0.105F; + this.main.render(0.01F); + resetToDefaultPose(); + } + + public void setRotateAngle(AdvancedModelRenderer AdvancedModelRenderer, float x, float y, float z) { + AdvancedModelRenderer.rotateAngleX = x; + AdvancedModelRenderer.rotateAngleY = y; + AdvancedModelRenderer.rotateAngleZ = z; + } + + @Override + public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity e) { + super.setRotationAngles(f, f1, f2, f3, f4, f5, e); + //this.resetToDefaultPose(); + + EntityPrehistoricFloraTicinosuchus EntityMegalosaurus = (EntityPrehistoricFloraTicinosuchus) e; + + this.faceTarget(f3, f4, 8, neck); + this.faceTarget(f3, f4, 8, neck2); + this.faceTarget(f3, f4, 8, head); + + AdvancedModelRenderer[] Tail = {this.tail, this.tail2, this.tail3, this.tail4, this.tail5}; + AdvancedModelRenderer[] Neck = {this.neck, this.neck2, this.head}; + + EntityMegalosaurus.tailBuffer.applyChainSwingBuffer(Tail); + + if (EntityMegalosaurus.getAnimation() == EntityMegalosaurus.LAY_ANIMATION) { + this.chainSwing(Neck, 0.5F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.5F * 2, -0.02F, 0.5F, f2, 0.8F); + } + else { + if (!EntityMegalosaurus.isReallyInWater()) { + + if (f3 == 0.0F || !EntityMegalosaurus.getIsMoving()) { + this.chainSwing(Neck, 0.05F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.05F * 2, -0.02F, 0.5F, f2, 0.8F); + + this.chainWave(Tail, (0.15F * 0.35F), 0.125F * 0.15F, 0.2F, f2, 1F); + this.chainSwing(Tail, (0.15F * 0.35F) * 4F, 0.05F * 0.35F, 0.12F, f2, 1F); + return; + } + + if (EntityMegalosaurus.getIsFast()) { //Running + + + } else { //Walking + + } + } else { + //Swimming pose: + if (f3 == 0.0F) { //static in water + return; + } + //moving in water + return; + } + } + } + + public void animAttack(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraTicinosuchus entity = (EntityPrehistoricFloraTicinosuchus) entitylivingbaseIn; + int animCycle = 15; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (15.75-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = 15.75 + (((tickAnim - 5) / 5) * (-7.5-(15.75))); + yy = 0 + (((tickAnim - 5) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 5) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = -7.5 + (((tickAnim - 10) / 5) * (0-(-7.5))); + yy = 0 + (((tickAnim - 10) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (-13.75-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = -13.75 + (((tickAnim - 5) / 5) * (-6.75-(-13.75))); + yy = 0 + (((tickAnim - 5) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 5) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = -6.75 + (((tickAnim - 10) / 5) * (0-(-6.75))); + yy = 0 + (((tickAnim - 10) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck2, neck2.rotateAngleX + (float) Math.toRadians(xx), neck2.rotateAngleY + (float) Math.toRadians(yy), neck2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0.6-(0))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = 0 + (((tickAnim - 5) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 5) / 5) * (0-(0))); + zz = 0.6 + (((tickAnim - 5) / 5) * (0-(0.6))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = 0 + (((tickAnim - 10) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 10) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.neck2.rotationPointX = this.neck2.rotationPointX + (float)(xx); + this.neck2.rotationPointY = this.neck2.rotationPointY - (float)(yy); + this.neck2.rotationPointZ = this.neck2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (4.75-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 5) { + xx = 4.75 + (((tickAnim - 3) / 2) * (-10.5-(4.75))); + yy = 0 + (((tickAnim - 3) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 2) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 8) { + xx = -10.5 + (((tickAnim - 5) / 3) * (-11.25-(-10.5))); + yy = 0 + (((tickAnim - 5) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 3) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = -11.25 + (((tickAnim - 8) / 2) * (9.5-(-11.25))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = 9.5 + (((tickAnim - 10) / 5) * (0-(9.5))); + yy = 0 + (((tickAnim - 10) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 15) { + xx = 0 + (((tickAnim - 10) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 10) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.head.rotationPointX = this.head.rotationPointX + (float)(xx); + this.head.rotationPointY = this.head.rotationPointY - (float)(yy); + this.head.rotationPointZ = this.head.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (4.75-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 8) { + xx = 4.75 + (((tickAnim - 5) / 3) * (31.75-(4.75))); + yy = 0 + (((tickAnim - 5) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 3) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 31.75 + (((tickAnim - 8) / 2) * (0-(31.75))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animEat(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraTicinosuchus entity = (EntityPrehistoricFloraTicinosuchus) entitylivingbaseIn; + int animCycle = 20; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (17.25-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 17.25 + (((tickAnim - 10) / 10) * (0-(17.25))); + yy = 0 + (((tickAnim - 10) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0.025-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 0 + (((tickAnim - 10) / 10) * (0-(0))); + yy = 0.025 + (((tickAnim - 10) / 10) * (0-(0.025))); + zz = 0 + (((tickAnim - 10) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.neck.rotationPointX = this.neck.rotationPointX + (float)(xx); + this.neck.rotationPointY = this.neck.rotationPointY - (float)(yy); + this.neck.rotationPointZ = this.neck.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (9.25-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 9.25 + (((tickAnim - 10) / 10) * (0-(9.25))); + yy = 0 + (((tickAnim - 10) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck2, neck2.rotateAngleX + (float) Math.toRadians(xx), neck2.rotateAngleY + (float) Math.toRadians(yy), neck2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (-0.075-(0))); + } + else if (tickAnim >= 10 && tickAnim < 20) { + xx = 0 + (((tickAnim - 10) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 10) / 10) * (0-(0))); + zz = -0.075 + (((tickAnim - 10) / 10) * (0-(-0.075))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.neck2.rotationPointX = this.neck2.rotationPointX + (float)(xx); + this.neck2.rotationPointY = this.neck2.rotationPointY - (float)(yy); + this.neck2.rotationPointZ = this.neck2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (29.63-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = 29.63 + (((tickAnim - 5) / 5) * (15.75-(29.63))); + yy = 0 + (((tickAnim - 5) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 5) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = 15.75 + (((tickAnim - 10) / 3) * (28-(15.75))); + yy = 0 + (((tickAnim - 10) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 3) * (0-(0))); + } + else if (tickAnim >= 13 && tickAnim < 20) { + xx = 28 + (((tickAnim - 13) / 7) * (0-(28))); + yy = 0 + (((tickAnim - 13) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 13) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (-0.19-(0))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = 0 + (((tickAnim - 5) / 5) * (0-(0))); + yy = 0 + (((tickAnim - 5) / 5) * (0-(0))); + zz = -0.19 + (((tickAnim - 5) / 5) * (-0.1-(-0.19))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = 0 + (((tickAnim - 10) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 10) / 3) * (0-(0))); + zz = -0.1 + (((tickAnim - 10) / 3) * (-0.25-(-0.1))); + } + else if (tickAnim >= 13 && tickAnim < 20) { + xx = 0 + (((tickAnim - 13) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 13) / 7) * (0-(0))); + zz = -0.25 + (((tickAnim - 13) / 7) * (0-(-0.25))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.head.rotationPointX = this.head.rotationPointX + (float)(xx); + this.head.rotationPointY = this.head.rotationPointY - (float)(yy); + this.head.rotationPointZ = this.head.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 5) { + xx = 0 + (((tickAnim - 0) / 5) * (24.25-(0))); + yy = 0 + (((tickAnim - 0) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 5) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = 24.25 + (((tickAnim - 5) / 5) * (0-(24.25))); + yy = 0 + (((tickAnim - 5) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animLay(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraTicinosuchus entity = (EntityPrehistoricFloraTicinosuchus) entitylivingbaseIn; + int animCycle = 50; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-7-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -7 + (((tickAnim - 20) / 10) * (-7-(-7))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -7 + (((tickAnim - 30) / 20) * (0-(-7))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(xx), main.rotateAngleY + (float) Math.toRadians(yy), main.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (-4.2-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (1.9-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 0 + (((tickAnim - 20) / 10) * (0-(0))); + yy = -4.2 + (((tickAnim - 20) / 10) * (-4.2-(-4.2))); + zz = 1.9 + (((tickAnim - 20) / 10) * (1.9-(1.9))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 0 + (((tickAnim - 30) / 20) * (0-(0))); + yy = -4.2 + (((tickAnim - 30) / 20) * (0-(-4.2))); + zz = 1.9 + (((tickAnim - 30) / 20) * (0-(1.9))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.main.rotationPointX = this.main.rotationPointX + (float)(xx); + this.main.rotationPointY = this.main.rotationPointY - (float)(yy); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-30.5-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (-5-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -30.5 + (((tickAnim - 20) / 10) * (-30.5-(-30.5))); + yy = -5 + (((tickAnim - 20) / 10) * (-5-(-5))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -30.5 + (((tickAnim - 30) / 20) * (0-(-30.5))); + yy = -5 + (((tickAnim - 30) / 20) * (0-(-5))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg, leftLeg.rotateAngleX + (float) Math.toRadians(xx), leftLeg.rotateAngleY + (float) Math.toRadians(yy), leftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (46.75-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 46.75 + (((tickAnim - 20) / 10) * (46.75-(46.75))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 46.75 + (((tickAnim - 30) / 20) * (0-(46.75))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg2, leftLeg2.rotateAngleX + (float) Math.toRadians(xx), leftLeg2.rotateAngleY + (float) Math.toRadians(yy), leftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-9-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -9 + (((tickAnim - 20) / 10) * (-9-(-9))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -9 + (((tickAnim - 30) / 20) * (0-(-9))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg3, leftLeg3.rotateAngleX + (float) Math.toRadians(xx), leftLeg3.rotateAngleY + (float) Math.toRadians(yy), leftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-30.5-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (5-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -30.5 + (((tickAnim - 20) / 10) * (-30.5-(-30.5))); + yy = 5 + (((tickAnim - 20) / 10) * (5-(5))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -30.5 + (((tickAnim - 30) / 20) * (0-(-30.5))); + yy = 5 + (((tickAnim - 30) / 20) * (0-(5))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg, rightLeg.rotateAngleX + (float) Math.toRadians(xx), rightLeg.rotateAngleY + (float) Math.toRadians(yy), rightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (46.75-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 46.75 + (((tickAnim - 20) / 10) * (46.75-(46.75))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 46.75 + (((tickAnim - 30) / 20) * (0-(46.75))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg2, rightLeg2.rotateAngleX + (float) Math.toRadians(xx), rightLeg2.rotateAngleY + (float) Math.toRadians(yy), rightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-9-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -9 + (((tickAnim - 20) / 10) * (-9-(-9))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -9 + (((tickAnim - 30) / 20) * (0-(-9))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg3, rightLeg3.rotateAngleX + (float) Math.toRadians(xx), rightLeg3.rotateAngleY + (float) Math.toRadians(yy), rightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-11.75-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -11.75 + (((tickAnim - 20) / 10) * (-11.75-(-11.75))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -11.75 + (((tickAnim - 30) / 20) * (0-(-11.75))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(xx), tail.rotateAngleY + (float) Math.toRadians(yy), tail.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 20) { + xx = 0 + (((tickAnim - 8) / 12) * (9.25-(0))); + yy = 0 + (((tickAnim - 8) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 12) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 9.25 + (((tickAnim - 20) / 10) * (9.25-(9.25))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 9.25 + (((tickAnim - 30) / 20) * (0-(9.25))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(xx), tail2.rotateAngleY + (float) Math.toRadians(yy), tail2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (2.75-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 20) { + xx = 2.75 + (((tickAnim - 8) / 12) * (17.75-(2.75))); + yy = 0 + (((tickAnim - 8) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 12) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 17.75 + (((tickAnim - 20) / 10) * (17.75-(17.75))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 17.75 + (((tickAnim - 30) / 20) * (0-(17.75))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(xx), tail3.rotateAngleY + (float) Math.toRadians(yy), tail3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (11.75-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 20) { + xx = 11.75 + (((tickAnim - 8) / 12) * (21.25-(11.75))); + yy = 0 + (((tickAnim - 8) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 12) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 21.25 + (((tickAnim - 20) / 10) * (21.25-(21.25))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 21.25 + (((tickAnim - 30) / 20) * (0-(21.25))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(xx), tail4.rotateAngleY + (float) Math.toRadians(yy), tail4.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 0 + (((tickAnim - 20) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 0 + (((tickAnim - 30) / 20) * (0-(0))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.tail4.rotationPointX = this.tail4.rotationPointX + (float)(xx); + this.tail4.rotationPointY = this.tail4.rotationPointY - (float)(yy); + this.tail4.rotationPointZ = this.tail4.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (14-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 20) { + xx = 14 + (((tickAnim - 8) / 12) * (-3.25-(14))); + yy = 0 + (((tickAnim - 8) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 12) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -3.25 + (((tickAnim - 20) / 10) * (-3.25-(-3.25))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -3.25 + (((tickAnim - 30) / 20) * (0-(-3.25))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail5, tail5.rotateAngleX + (float) Math.toRadians(xx), tail5.rotateAngleY + (float) Math.toRadians(yy), tail5.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (-11.25-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 20) { + xx = -11.25 + (((tickAnim - 8) / 12) * (-21-(-11.25))); + yy = 0 + (((tickAnim - 8) / 12) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 12) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -21 + (((tickAnim - 20) / 10) * (-21-(-21))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -21 + (((tickAnim - 30) / 20) * (0-(-21))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail6, tail6.rotateAngleX + (float) Math.toRadians(xx), tail6.rotateAngleY + (float) Math.toRadians(yy), tail6.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-12.5-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -12.5 + (((tickAnim - 20) / 10) * (-12.5-(-12.5))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -12.5 + (((tickAnim - 30) / 20) * (0-(-12.5))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(xx), body.rotateAngleY + (float) Math.toRadians(yy), body.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (8.75-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 8.75 + (((tickAnim - 20) / 10) * (8.75-(8.75))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 8.75 + (((tickAnim - 30) / 20) * (0-(8.75))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(xx), body2.rotateAngleY + (float) Math.toRadians(yy), body2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-1.01238-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (11.73955-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (-5.55256-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -1.01238 + (((tickAnim - 20) / 10) * (-1.01238-(-1.01238))); + yy = 11.73955 + (((tickAnim - 20) / 10) * (11.73955-(11.73955))); + zz = -5.55256 + (((tickAnim - 20) / 10) * (-5.55256-(-5.55256))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -1.01238 + (((tickAnim - 30) / 20) * (0-(-1.01238))); + yy = 11.73955 + (((tickAnim - 30) / 20) * (0-(11.73955))); + zz = -5.55256 + (((tickAnim - 30) / 20) * (0-(-5.55256))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm, leftArm.rotateAngleX + (float) Math.toRadians(xx), leftArm.rotateAngleY + (float) Math.toRadians(yy), leftArm.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-12.5-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -12.5 + (((tickAnim - 20) / 10) * (-12.5-(-12.5))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -12.5 + (((tickAnim - 30) / 20) * (0-(-12.5))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm2, leftArm2.rotateAngleX + (float) Math.toRadians(xx), leftArm2.rotateAngleY + (float) Math.toRadians(yy), leftArm2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (21.19963-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (-13.67246-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (-3.31582-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 21.19963 + (((tickAnim - 20) / 10) * (21.19963-(21.19963))); + yy = -13.67246 + (((tickAnim - 20) / 10) * (-13.67246-(-13.67246))); + zz = -3.31582 + (((tickAnim - 20) / 10) * (-3.31582-(-3.31582))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 21.19963 + (((tickAnim - 30) / 20) * (0-(21.19963))); + yy = -13.67246 + (((tickAnim - 30) / 20) * (0-(-13.67246))); + zz = -3.31582 + (((tickAnim - 30) / 20) * (0-(-3.31582))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm3, leftArm3.rotateAngleX + (float) Math.toRadians(xx), leftArm3.rotateAngleY + (float) Math.toRadians(yy), leftArm3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-1.01238-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (-11.73955-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (5.55256-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -1.01238 + (((tickAnim - 20) / 10) * (-1.01238-(-1.01238))); + yy = -11.73955 + (((tickAnim - 20) / 10) * (-11.73955-(-11.73955))); + zz = 5.55256 + (((tickAnim - 20) / 10) * (5.55256-(5.55256))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -1.01238 + (((tickAnim - 30) / 20) * (0-(-1.01238))); + yy = -11.73955 + (((tickAnim - 30) / 20) * (0-(-11.73955))); + zz = 5.55256 + (((tickAnim - 30) / 20) * (0-(5.55256))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm, rightArm.rotateAngleX + (float) Math.toRadians(xx), rightArm.rotateAngleY + (float) Math.toRadians(yy), rightArm.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-12.5-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = -12.5 + (((tickAnim - 20) / 10) * (-12.5-(-12.5))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = -12.5 + (((tickAnim - 30) / 20) * (0-(-12.5))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm2, rightArm2.rotateAngleX + (float) Math.toRadians(xx), rightArm2.rotateAngleY + (float) Math.toRadians(yy), rightArm2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (21.19963-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (13.67246-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (3.31582-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 21.19963 + (((tickAnim - 20) / 10) * (21.19963-(21.19963))); + yy = 13.67246 + (((tickAnim - 20) / 10) * (13.67246-(13.67246))); + zz = 3.31582 + (((tickAnim - 20) / 10) * (3.31582-(3.31582))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 21.19963 + (((tickAnim - 30) / 20) * (0-(21.19963))); + yy = 13.67246 + (((tickAnim - 30) / 20) * (0-(13.67246))); + zz = 3.31582 + (((tickAnim - 30) / 20) * (0-(3.31582))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm3, rightArm3.rotateAngleX + (float) Math.toRadians(xx), rightArm3.rotateAngleY + (float) Math.toRadians(yy), rightArm3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (11-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 11 + (((tickAnim - 20) / 10) * (11-(11))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 11 + (((tickAnim - 30) / 20) * (0-(11))); + yy = 0 + (((tickAnim - 30) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0.2-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 0 + (((tickAnim - 20) / 10) * (0-(0))); + yy = 0.2 + (((tickAnim - 20) / 10) * (0.2-(0.2))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else if (tickAnim >= 30 && tickAnim < 50) { + xx = 0 + (((tickAnim - 30) / 20) * (0-(0))); + yy = 0.2 + (((tickAnim - 30) / 20) * (0-(0.2))); + zz = 0 + (((tickAnim - 30) / 20) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.neck.rotationPointX = this.neck.rotationPointX + (float)(xx); + this.neck.rotationPointY = this.neck.rotationPointY - (float)(yy); + this.neck.rotationPointZ = this.neck.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 50) { + xx = 0 + (((tickAnim - 0) / 50) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 50) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 50) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck2, neck2.rotateAngleX + (float) Math.toRadians(xx), neck2.rotateAngleY + (float) Math.toRadians(yy), neck2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 50) { + xx = 0 + (((tickAnim - 0) / 50) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 50) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 50) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animNest(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraTicinosuchus entity = (EntityPrehistoricFloraTicinosuchus) entitylivingbaseIn; + int animCycle = 50; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (35.25-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 23) { + xx = 35.25 + (((tickAnim - 10) / 13) * (-12.62-(35.25))); + yy = 0 + (((tickAnim - 10) / 13) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 13) * (0-(0))); + } + else if (tickAnim >= 23 && tickAnim < 25) { + xx = -12.62 + (((tickAnim - 23) / 2) * (0-(-12.62))); + yy = 0 + (((tickAnim - 23) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 23) / 2) * (0-(0))); + } + else if (tickAnim >= 25 && tickAnim < 35) { + xx = 0 + (((tickAnim - 25) / 10) * (35.25-(0))); + yy = 0 + (((tickAnim - 25) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 25) / 10) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 48) { + xx = 35.25 + (((tickAnim - 35) / 13) * (-12.62-(35.25))); + yy = 0 + (((tickAnim - 35) / 13) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 13) * (0-(0))); + } + else if (tickAnim >= 48 && tickAnim < 50) { + xx = -12.62 + (((tickAnim - 48) / 2) * (0-(-12.62))); + yy = 0 + (((tickAnim - 48) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 48) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg, leftLeg.rotateAngleX + (float) Math.toRadians(xx), leftLeg.rotateAngleY + (float) Math.toRadians(yy), leftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 18) { + xx = 0 + (((tickAnim - 10) / 8) * (25-(0))); + yy = 0 + (((tickAnim - 10) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 8) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 25) { + xx = 25 + (((tickAnim - 18) / 7) * (0-(25))); + yy = 0 + (((tickAnim - 18) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 7) * (0-(0))); + } + else if (tickAnim >= 25 && tickAnim < 35) { + xx = 0 + (((tickAnim - 25) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 25) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 25) / 10) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 43) { + xx = 0 + (((tickAnim - 35) / 8) * (25-(0))); + yy = 0 + (((tickAnim - 35) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 8) * (0-(0))); + } + else if (tickAnim >= 43 && tickAnim < 50) { + xx = 25 + (((tickAnim - 43) / 7) * (0-(25))); + yy = 0 + (((tickAnim - 43) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 43) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg2, leftLeg2.rotateAngleX + (float) Math.toRadians(xx), leftLeg2.rotateAngleY + (float) Math.toRadians(yy), leftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (16-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 18) { + xx = 16 + (((tickAnim - 10) / 8) * (-37.5-(16))); + yy = 0 + (((tickAnim - 10) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 8) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 22) { + xx = -37.5 + (((tickAnim - 18) / 4) * (-37.5-(-37.5))); + yy = 0 + (((tickAnim - 18) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 4) * (0-(0))); + } + else if (tickAnim >= 22 && tickAnim < 25) { + xx = -37.5 + (((tickAnim - 22) / 3) * (0-(-37.5))); + yy = 0 + (((tickAnim - 22) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 22) / 3) * (0-(0))); + } + else if (tickAnim >= 25 && tickAnim < 35) { + xx = 0 + (((tickAnim - 25) / 10) * (16-(0))); + yy = 0 + (((tickAnim - 25) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 25) / 10) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 43) { + xx = 16 + (((tickAnim - 35) / 8) * (-37.5-(16))); + yy = 0 + (((tickAnim - 35) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 8) * (0-(0))); + } + else if (tickAnim >= 43 && tickAnim < 47) { + xx = -37.5 + (((tickAnim - 43) / 4) * (-37.5-(-37.5))); + yy = 0 + (((tickAnim - 43) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 43) / 4) * (0-(0))); + } + else if (tickAnim >= 47 && tickAnim < 50) { + xx = -37.5 + (((tickAnim - 47) / 3) * (0-(-37.5))); + yy = 0 + (((tickAnim - 47) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 47) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg3, leftLeg3.rotateAngleX + (float) Math.toRadians(xx), leftLeg3.rotateAngleY + (float) Math.toRadians(yy), leftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (54-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 18) { + xx = 54 + (((tickAnim - 10) / 8) * (79.25-(54))); + yy = 0 + (((tickAnim - 10) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 8) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 22) { + xx = 79.25 + (((tickAnim - 18) / 4) * (79.25-(79.25))); + yy = 0 + (((tickAnim - 18) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 4) * (0-(0))); + } + else if (tickAnim >= 22 && tickAnim < 25) { + xx = 79.25 + (((tickAnim - 22) / 3) * (0-(79.25))); + yy = 0 + (((tickAnim - 22) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 22) / 3) * (0-(0))); + } + else if (tickAnim >= 25 && tickAnim < 35) { + xx = 0 + (((tickAnim - 25) / 10) * (54-(0))); + yy = 0 + (((tickAnim - 25) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 25) / 10) * (0-(0))); + } + else if (tickAnim >= 35 && tickAnim < 43) { + xx = 54 + (((tickAnim - 35) / 8) * (79.25-(54))); + yy = 0 + (((tickAnim - 35) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 35) / 8) * (0-(0))); + } + else if (tickAnim >= 43 && tickAnim < 47) { + xx = 79.25 + (((tickAnim - 43) / 4) * (79.25-(79.25))); + yy = 0 + (((tickAnim - 43) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 43) / 4) * (0-(0))); + } + else if (tickAnim >= 47 && tickAnim < 50) { + xx = 79.25 + (((tickAnim - 47) / 3) * (0-(79.25))); + yy = 0 + (((tickAnim - 47) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 47) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg4, leftLeg4.rotateAngleX + (float) Math.toRadians(xx), leftLeg4.rotateAngleY + (float) Math.toRadians(yy), leftLeg4.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 0 + (((tickAnim - 0) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 10) * (0.65-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (-0.425-(0))); + } + else if (tickAnim >= 10 && tickAnim < 18) { + xx = 0 + (((tickAnim - 10) / 8) * (0-(0))); + yy = 0.65 + (((tickAnim - 10) / 8) * (1.035-(0.65))); + zz = -0.425 + (((tickAnim - 10) / 8) * (-0.44-(-0.425))); + } + else if (tickAnim >= 18 && tickAnim < 22) { + xx = 0 + (((tickAnim - 18) / 4) * (0-(0))); + yy = 1.035 + (((tickAnim - 18) / 4) * (1.035-(1.035))); + zz = -0.44 + (((tickAnim - 18) / 4) * (-0.44-(-0.44))); + } + else if (tickAnim >= 22 && tickAnim < 25) { + xx = 0 + (((tickAnim - 22) / 3) * (0-(0))); + yy = 1.035 + (((tickAnim - 22) / 3) * (0-(1.035))); + zz = -0.44 + (((tickAnim - 22) / 3) * (0-(-0.44))); + } + else if (tickAnim >= 25 && tickAnim < 35) { + xx = 0 + (((tickAnim - 25) / 10) * (0-(0))); + yy = 0 + (((tickAnim - 25) / 10) * (0.65-(0))); + zz = 0 + (((tickAnim - 25) / 10) * (-0.425-(0))); + } + else if (tickAnim >= 35 && tickAnim < 43) { + xx = 0 + (((tickAnim - 35) / 8) * (0-(0))); + yy = 0.65 + (((tickAnim - 35) / 8) * (1.035-(0.65))); + zz = -0.425 + (((tickAnim - 35) / 8) * (-0.44-(-0.425))); + } + else if (tickAnim >= 43 && tickAnim < 47) { + xx = 0 + (((tickAnim - 43) / 4) * (0-(0))); + yy = 1.035 + (((tickAnim - 43) / 4) * (1.035-(1.035))); + zz = -0.44 + (((tickAnim - 43) / 4) * (-0.44-(-0.44))); + } + else if (tickAnim >= 47 && tickAnim < 50) { + xx = 0 + (((tickAnim - 47) / 3) * (0-(0))); + yy = 1.035 + (((tickAnim - 47) / 3) * (0-(1.035))); + zz = -0.44 + (((tickAnim - 47) / 3) * (0-(-0.44))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftLeg4.rotationPointX = this.leftLeg4.rotationPointX + (float)(xx); + this.leftLeg4.rotationPointY = this.leftLeg4.rotationPointY - (float)(yy); + this.leftLeg4.rotationPointZ = this.leftLeg4.rotationPointZ + (float)(zz); + + } + public void animAlert(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraTicinosuchus entity = (EntityPrehistoricFloraTicinosuchus) entitylivingbaseIn; + int animCycle = 180; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (-2.5-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = -2.5 + (((tickAnim - 40) / 105) * (-2.5-(-2.5))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = -2.5 + (((tickAnim - 145) / 35) * (0-(-2.5))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(xx), main.rotateAngleY + (float) Math.toRadians(yy), main.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (-0.6-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = 0 + (((tickAnim - 40) / 105) * (0-(0))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = -0.6 + (((tickAnim - 40) / 105) * (-0.6-(-0.6))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 0 + (((tickAnim - 145) / 35) * (0-(0))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = -0.6 + (((tickAnim - 145) / 35) * (0-(-0.6))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.main.rotationPointX = this.main.rotationPointX + (float)(xx); + this.main.rotationPointY = this.main.rotationPointY - (float)(yy); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (8.75-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = 8.75 + (((tickAnim - 40) / 105) * (8.75-(8.75))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 8.75 + (((tickAnim - 145) / 35) * (0-(8.75))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg, leftLeg.rotateAngleX + (float) Math.toRadians(xx), leftLeg.rotateAngleY + (float) Math.toRadians(yy), leftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (-3.25-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = -3.25 + (((tickAnim - 40) / 105) * (-3.25-(-3.25))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = -3.25 + (((tickAnim - 145) / 35) * (0-(-3.25))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg2, leftLeg2.rotateAngleX + (float) Math.toRadians(xx), leftLeg2.rotateAngleY + (float) Math.toRadians(yy), leftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (-2.98018-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (-0.11895-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (-0.32-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = -2.98018 + (((tickAnim - 40) / 105) * (-2.98018-(-2.98018))); + yy = -0.11895 + (((tickAnim - 40) / 105) * (-0.11895-(-0.11895))); + zz = -0.32 + (((tickAnim - 40) / 105) * (-0.32-(-0.32))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = -2.98018 + (((tickAnim - 145) / 35) * (0-(-2.98018))); + yy = -0.11895 + (((tickAnim - 145) / 35) * (0-(-0.11895))); + zz = -0.32 + (((tickAnim - 145) / 35) * (0-(-0.32))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg4, leftLeg4.rotateAngleX + (float) Math.toRadians(xx), leftLeg4.rotateAngleY + (float) Math.toRadians(yy), leftLeg4.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (8.75-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = 8.75 + (((tickAnim - 40) / 105) * (8.75-(8.75))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 8.75 + (((tickAnim - 145) / 35) * (0-(8.75))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg, rightLeg.rotateAngleX + (float) Math.toRadians(xx), rightLeg.rotateAngleY + (float) Math.toRadians(yy), rightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (-3.25-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = -3.25 + (((tickAnim - 40) / 105) * (-3.25-(-3.25))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = -3.25 + (((tickAnim - 145) / 35) * (0-(-3.25))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg2, rightLeg2.rotateAngleX + (float) Math.toRadians(xx), rightLeg2.rotateAngleY + (float) Math.toRadians(yy), rightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (-2.98018-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (-0.11895-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (-0.32-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = -2.98018 + (((tickAnim - 40) / 105) * (-2.98018-(-2.98018))); + yy = -0.11895 + (((tickAnim - 40) / 105) * (-0.11895-(-0.11895))); + zz = -0.32 + (((tickAnim - 40) / 105) * (-0.32-(-0.32))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = -2.98018 + (((tickAnim - 145) / 35) * (0-(-2.98018))); + yy = -0.11895 + (((tickAnim - 145) / 35) * (0-(-0.11895))); + zz = -0.32 + (((tickAnim - 145) / 35) * (0-(-0.32))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg4, rightLeg4.rotateAngleX + (float) Math.toRadians(xx), rightLeg4.rotateAngleY + (float) Math.toRadians(yy), rightLeg4.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 80) { + xx = 0 + (((tickAnim - 0) / 80) * (-1.50301-(0))); + yy = 0 + (((tickAnim - 0) / 80) * (1.73875-(0))); + zz = 0 + (((tickAnim - 0) / 80) * (-0.19817-(0))); + } + else if (tickAnim >= 80 && tickAnim < 145) { + xx = -1.50301 + (((tickAnim - 80) / 65) * (-1.5-(-1.50301))); + yy = 1.73875 + (((tickAnim - 80) / 65) * (0-(1.73875))); + zz = -0.19817 + (((tickAnim - 80) / 65) * (0-(-0.19817))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = -1.5 + (((tickAnim - 145) / 35) * (0-(-1.5))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(xx), tail.rotateAngleY + (float) Math.toRadians(yy), tail.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 80) { + xx = 0 + (((tickAnim - 0) / 80) * (-3.55007-(0))); + yy = 0 + (((tickAnim - 0) / 80) * (6.18108-(0))); + zz = 0 + (((tickAnim - 0) / 80) * (-0.92741-(0))); + } + else if (tickAnim >= 80 && tickAnim < 145) { + xx = -3.55007 + (((tickAnim - 80) / 65) * (-3.5-(-3.55007))); + yy = 6.18108 + (((tickAnim - 80) / 65) * (0-(6.18108))); + zz = -0.92741 + (((tickAnim - 80) / 65) * (0-(-0.92741))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = -3.5 + (((tickAnim - 145) / 35) * (0-(-3.5))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(xx), tail2.rotateAngleY + (float) Math.toRadians(yy), tail2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 80) { + xx = 0 + (((tickAnim - 0) / 80) * (4.22902-(0))); + yy = 0 + (((tickAnim - 0) / 80) * (6.4895-(0))); + zz = 0 + (((tickAnim - 0) / 80) * (-0.37009-(0))); + } + else if (tickAnim >= 80 && tickAnim < 145) { + xx = 4.22902 + (((tickAnim - 80) / 65) * (4.25-(4.22902))); + yy = 6.4895 + (((tickAnim - 80) / 65) * (0-(6.4895))); + zz = -0.37009 + (((tickAnim - 80) / 65) * (0-(-0.37009))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 4.25 + (((tickAnim - 145) / 35) * (0-(4.25))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(xx), tail3.rotateAngleY + (float) Math.toRadians(yy), tail3.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 80) { + xx = 0 + (((tickAnim - 0) / 80) * (7.01195-(0))); + yy = 0 + (((tickAnim - 0) / 80) * (6.24618-(0))); + zz = 0 + (((tickAnim - 0) / 80) * (0.21899-(0))); + } + else if (tickAnim >= 80 && tickAnim < 96) { + xx = 7.01195 + (((tickAnim - 80) / 16) * (7.03635-(7.01195))); + yy = 6.24618 + (((tickAnim - 80) / 16) * (10.38858-(6.24618))); + zz = 0.21899 + (((tickAnim - 80) / 16) * (0.3675-(0.21899))); + } + else if (tickAnim >= 96 && tickAnim < 145) { + xx = 7.03635 + (((tickAnim - 96) / 49) * (7.01964-(7.03635))); + yy = 10.38858 + (((tickAnim - 96) / 49) * (7.99509-(10.38858))); + zz = 0.3675 + (((tickAnim - 96) / 49) * (0.28102-(0.3675))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 7.01964 + (((tickAnim - 145) / 35) * (0-(7.01964))); + yy = 7.99509 + (((tickAnim - 145) / 35) * (0-(7.99509))); + zz = 0.28102 + (((tickAnim - 145) / 35) * (0-(0.28102))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(xx), tail4.rotateAngleY + (float) Math.toRadians(yy), tail4.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (6.75-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 80) { + xx = 6.75 + (((tickAnim - 40) / 40) * (6.81291-(6.75))); + yy = 0 + (((tickAnim - 40) / 40) * (5.87383-(0))); + zz = 0 + (((tickAnim - 40) / 40) * (1.22615-(0))); + } + else if (tickAnim >= 80 && tickAnim < 107) { + xx = 6.81291 + (((tickAnim - 80) / 27) * (7.38059-(6.81291))); + yy = 5.87383 + (((tickAnim - 80) / 27) * (17.56197-(5.87383))); + zz = 1.22615 + (((tickAnim - 80) / 27) * (3.79298-(1.22615))); + } + else if (tickAnim >= 107 && tickAnim < 145) { + xx = 7.38059 + (((tickAnim - 107) / 38) * (6.82971-(7.38059))); + yy = 17.56197 + (((tickAnim - 107) / 38) * (6.60792-(17.56197))); + zz = 3.79298 + (((tickAnim - 107) / 38) * (1.38071-(3.79298))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 6.82971 + (((tickAnim - 145) / 35) * (0-(6.82971))); + yy = 6.60792 + (((tickAnim - 145) / 35) * (0-(6.60792))); + zz = 1.38071 + (((tickAnim - 145) / 35) * (0-(1.38071))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail5, tail5.rotateAngleX + (float) Math.toRadians(xx), tail5.rotateAngleY + (float) Math.toRadians(yy), tail5.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 80) { + xx = 0 + (((tickAnim - 0) / 80) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 80) * (-14.25-(0))); + zz = 0 + (((tickAnim - 0) / 80) * (0-(0))); + } + else if (tickAnim >= 80 && tickAnim < 96) { + xx = 0 + (((tickAnim - 80) / 16) * (0-(0))); + yy = -14.25 + (((tickAnim - 80) / 16) * (15.75-(-14.25))); + zz = 0 + (((tickAnim - 80) / 16) * (0-(0))); + } + else if (tickAnim >= 96 && tickAnim < 145) { + xx = 0 + (((tickAnim - 96) / 49) * (0-(0))); + yy = 15.75 + (((tickAnim - 96) / 49) * (15.75-(15.75))); + zz = 0 + (((tickAnim - 96) / 49) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 0 + (((tickAnim - 145) / 35) * (0-(0))); + yy = 15.75 + (((tickAnim - 145) / 35) * (0-(15.75))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(tail6, tail6.rotateAngleX + (float) Math.toRadians(xx), tail6.rotateAngleY + (float) Math.toRadians(yy), tail6.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (1.5-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = 1.5 + (((tickAnim - 40) / 105) * (1.5-(1.5))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 1.5 + (((tickAnim - 145) / 35) * (0-(1.5))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(xx), body.rotateAngleY + (float) Math.toRadians(yy), body.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (-3.25-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = -3.25 + (((tickAnim - 40) / 105) * (-3.25-(-3.25))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = -3.25 + (((tickAnim - 145) / 35) * (0-(-3.25))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(xx), body2.rotateAngleY + (float) Math.toRadians(yy), body2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (-23.25-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = -23.25 + (((tickAnim - 40) / 105) * (-23.25-(-23.25))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 165) { + xx = -23.25 + (((tickAnim - 145) / 20) * (20.04-(-23.25))); + yy = 0 + (((tickAnim - 145) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 20) * (0-(0))); + } + else if (tickAnim >= 165 && tickAnim < 180) { + xx = 20.04 + (((tickAnim - 165) / 15) * (0-(20.04))); + yy = 0 + (((tickAnim - 165) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 165) / 15) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm, leftArm.rotateAngleX + (float) Math.toRadians(xx), leftArm.rotateAngleY + (float) Math.toRadians(yy), leftArm.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (-28.12-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 40) { + xx = -28.12 + (((tickAnim - 20) / 20) * (15.25-(-28.12))); + yy = 0 + (((tickAnim - 20) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 20) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = 15.25 + (((tickAnim - 40) / 105) * (15.25-(15.25))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 165) { + xx = 15.25 + (((tickAnim - 145) / 20) * (-38.21-(15.25))); + yy = 0 + (((tickAnim - 145) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 20) * (0-(0))); + } + else if (tickAnim >= 165 && tickAnim < 180) { + xx = -38.21 + (((tickAnim - 165) / 15) * (0-(-38.21))); + yy = 0 + (((tickAnim - 165) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 165) / 15) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm2, leftArm2.rotateAngleX + (float) Math.toRadians(xx), leftArm2.rotateAngleY + (float) Math.toRadians(yy), leftArm2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (91-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 40) { + xx = 91 + (((tickAnim - 20) / 20) * (12.25-(91))); + yy = 0 + (((tickAnim - 20) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 20) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = 12.25 + (((tickAnim - 40) / 105) * (12.25-(12.25))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 165) { + xx = 12.25 + (((tickAnim - 145) / 20) * (92.32-(12.25))); + yy = 0 + (((tickAnim - 145) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 20) * (0-(0))); + } + else if (tickAnim >= 165 && tickAnim < 180) { + xx = 92.32 + (((tickAnim - 165) / 15) * (0-(92.32))); + yy = 0 + (((tickAnim - 165) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 165) / 15) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm3, leftArm3.rotateAngleX + (float) Math.toRadians(xx), leftArm3.rotateAngleY + (float) Math.toRadians(yy), leftArm3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 20) { + xx = 0 + (((tickAnim - 0) / 20) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 20) * (1.655-(0))); + zz = 0 + (((tickAnim - 0) / 20) * (-1.5-(0))); + } + else if (tickAnim >= 20 && tickAnim < 40) { + xx = 0 + (((tickAnim - 20) / 20) * (0-(0))); + yy = 1.655 + (((tickAnim - 20) / 20) * (0.2-(1.655))); + zz = -1.5 + (((tickAnim - 20) / 20) * (0-(-1.5))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = 0 + (((tickAnim - 40) / 105) * (0-(0))); + yy = 0.2 + (((tickAnim - 40) / 105) * (0.2-(0.2))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 165) { + xx = 0 + (((tickAnim - 145) / 20) * (0-(0))); + yy = 0.2 + (((tickAnim - 145) / 20) * (1.265-(0.2))); + zz = 0 + (((tickAnim - 145) / 20) * (-1.575-(0))); + } + else if (tickAnim >= 165 && tickAnim < 180) { + xx = 0 + (((tickAnim - 165) / 15) * (0-(0))); + yy = 1.265 + (((tickAnim - 165) / 15) * (0-(1.265))); + zz = -1.575 + (((tickAnim - 165) / 15) * (0-(-1.575))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftArm3.rotationPointX = this.leftArm3.rotationPointX + (float)(xx); + this.leftArm3.rotationPointY = this.leftArm3.rotationPointY - (float)(yy); + this.leftArm3.rotationPointZ = this.leftArm3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (1.75-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = 1.75 + (((tickAnim - 40) / 105) * (1.75-(1.75))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 1.75 + (((tickAnim - 145) / 35) * (0-(1.75))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm, rightArm.rotateAngleX + (float) Math.toRadians(xx), rightArm.rotateAngleY + (float) Math.toRadians(yy), rightArm.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (16.75-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = 16.75 + (((tickAnim - 40) / 105) * (16.75-(16.75))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 16.75 + (((tickAnim - 145) / 35) * (0-(16.75))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm2, rightArm2.rotateAngleX + (float) Math.toRadians(xx), rightArm2.rotateAngleY + (float) Math.toRadians(yy), rightArm2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (-0.075-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = 0 + (((tickAnim - 40) / 105) * (0-(0))); + yy = -0.075 + (((tickAnim - 40) / 105) * (-0.075-(-0.075))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 0 + (((tickAnim - 145) / 35) * (0-(0))); + yy = -0.075 + (((tickAnim - 145) / 35) * (0-(-0.075))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightArm2.rotationPointX = this.rightArm2.rotationPointX + (float)(xx); + this.rightArm2.rotationPointY = this.rightArm2.rotationPointY - (float)(yy); + this.rightArm2.rotationPointZ = this.rightArm2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (-18-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = -18 + (((tickAnim - 40) / 105) * (-18-(-18))); + yy = 0 + (((tickAnim - 40) / 105) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = -18 + (((tickAnim - 145) / 35) * (0-(-18))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm3, rightArm3.rotateAngleX + (float) Math.toRadians(xx), rightArm3.rotateAngleY + (float) Math.toRadians(yy), rightArm3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (-0.35-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 145) { + xx = 0 + (((tickAnim - 40) / 105) * (0-(0))); + yy = -0.35 + (((tickAnim - 40) / 105) * (-0.35-(-0.35))); + zz = 0 + (((tickAnim - 40) / 105) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 0 + (((tickAnim - 145) / 35) * (0-(0))); + yy = -0.35 + (((tickAnim - 145) / 35) * (0-(-0.35))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightArm3.rotationPointX = this.rightArm3.rotationPointX + (float)(xx); + this.rightArm3.rotationPointY = this.rightArm3.rotationPointY - (float)(yy); + this.rightArm3.rotationPointZ = this.rightArm3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (-5.25-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 60) { + xx = -5.25 + (((tickAnim - 40) / 20) * (-5.25-(-5.25))); + yy = 0 + (((tickAnim - 40) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 20) * (0-(0))); + } + else if (tickAnim >= 60 && tickAnim < 80) { + xx = -5.25 + (((tickAnim - 60) / 20) * (-4.5-(-5.25))); + yy = 0 + (((tickAnim - 60) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 60) / 20) * (0-(0))); + } + else if (tickAnim >= 80 && tickAnim < 105) { + xx = -4.5 + (((tickAnim - 80) / 25) * (-4.24686-(-4.5))); + yy = 0 + (((tickAnim - 80) / 25) * (-9.63994-(0))); + zz = 0 + (((tickAnim - 80) / 25) * (-0.3632-(0))); + } + else if (tickAnim >= 105 && tickAnim < 128) { + xx = -4.24686 + (((tickAnim - 105) / 23) * (-4.24686-(-4.24686))); + yy = -9.63994 + (((tickAnim - 105) / 23) * (-9.63994-(-9.63994))); + zz = -0.3632 + (((tickAnim - 105) / 23) * (-0.3632-(-0.3632))); + } + else if (tickAnim >= 128 && tickAnim < 145) { + xx = -4.24686 + (((tickAnim - 128) / 17) * (-6.99686-(-4.24686))); + yy = -9.63994 + (((tickAnim - 128) / 17) * (-9.63994-(-9.63994))); + zz = -0.3632 + (((tickAnim - 128) / 17) * (-0.3632-(-0.3632))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = -6.99686 + (((tickAnim - 145) / 35) * (0-(-6.99686))); + yy = -9.63994 + (((tickAnim - 145) / 35) * (0-(-9.63994))); + zz = -0.3632 + (((tickAnim - 145) / 35) * (0-(-0.3632))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + this.neck.rotationPointX = this.neck.rotationPointX + (float)(0); + this.neck.rotationPointY = this.neck.rotationPointY - (float)(0); + this.neck.rotationPointZ = this.neck.rotationPointZ + (float)(0); + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (-5-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 45) { + xx = -5 + (((tickAnim - 40) / 5) * (-4.25-(-5))); + yy = 0 + (((tickAnim - 40) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 5) * (0-(0))); + } + else if (tickAnim >= 45 && tickAnim < 50) { + xx = -4.25 + (((tickAnim - 45) / 5) * (-5-(-4.25))); + yy = 0 + (((tickAnim - 45) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 45) / 5) * (0-(0))); + } + else if (tickAnim >= 50 && tickAnim < 55) { + xx = -5 + (((tickAnim - 50) / 5) * (-4.25-(-5))); + yy = 0 + (((tickAnim - 50) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 50) / 5) * (0-(0))); + } + else if (tickAnim >= 55 && tickAnim < 60) { + xx = -4.25 + (((tickAnim - 55) / 5) * (-5-(-4.25))); + yy = 0 + (((tickAnim - 55) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 55) / 5) * (0-(0))); + } + else if (tickAnim >= 60 && tickAnim < 80) { + xx = -5 + (((tickAnim - 60) / 20) * (-6-(-5))); + yy = 0 + (((tickAnim - 60) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 60) / 20) * (0-(0))); + } + else if (tickAnim >= 80 && tickAnim < 93) { + xx = -6 + (((tickAnim - 80) / 13) * (-8.5781+Math.sin((Math.PI/180)*(((double)tickAnim/20)*100))*5-(-6))); + yy = 0 + (((tickAnim - 80) / 13) * (-7.0642-(0))); + zz = 0 + (((tickAnim - 80) / 13) * (-0.18835-(0))); + } + else if (tickAnim >= 93 && tickAnim < 105) { + xx = -8.5781+Math.sin((Math.PI/180)*(((double)tickAnim/20)*100))*5 + (((tickAnim - 93) / 12) * (-5.959-(-8.5781+Math.sin((Math.PI/180)*(((double)tickAnim/20)*100))*5))); + yy = -7.0642 + (((tickAnim - 93) / 12) * (-13.24538-(-7.0642))); + zz = -0.18835 + (((tickAnim - 93) / 12) * (-0.35316-(-0.18835))); + } + else if (tickAnim >= 105 && tickAnim < 110) { + xx = -5.959 + (((tickAnim - 105) / 5) * (-5.459-(-5.959))); + yy = -13.24538 + (((tickAnim - 105) / 5) * (-13.24538-(-13.24538))); + zz = -0.35316 + (((tickAnim - 105) / 5) * (-0.35316-(-0.35316))); + } + else if (tickAnim >= 110 && tickAnim < 115) { + xx = -5.459 + (((tickAnim - 110) / 5) * (-5.959-(-5.459))); + yy = -13.24538 + (((tickAnim - 110) / 5) * (-13.24538-(-13.24538))); + zz = -0.35316 + (((tickAnim - 110) / 5) * (-0.35316-(-0.35316))); + } + else if (tickAnim >= 115 && tickAnim < 120) { + xx = -5.959 + (((tickAnim - 115) / 5) * (-5.459-(-5.959))); + yy = -13.24538 + (((tickAnim - 115) / 5) * (-13.24538-(-13.24538))); + zz = -0.35316 + (((tickAnim - 115) / 5) * (-0.35316-(-0.35316))); + } + else if (tickAnim >= 120 && tickAnim < 125) { + xx = -5.459 + (((tickAnim - 120) / 5) * (-5.959-(-5.459))); + yy = -13.24538 + (((tickAnim - 120) / 5) * (-13.24538-(-13.24538))); + zz = -0.35316 + (((tickAnim - 120) / 5) * (-0.35316-(-0.35316))); + } + else if (tickAnim >= 125 && tickAnim < 130) { + xx = -5.959 + (((tickAnim - 125) / 5) * (-5.959-(-5.959))); + yy = -13.24538 + (((tickAnim - 125) / 5) * (-13.24538-(-13.24538))); + zz = -0.35316 + (((tickAnim - 125) / 5) * (-0.35316-(-0.35316))); + } + else if (tickAnim >= 130 && tickAnim < 145) { + xx = -5.959 + (((tickAnim - 130) / 15) * (-7.959-(-5.959))); + yy = -13.24538 + (((tickAnim - 130) / 15) * (-13.24538-(-13.24538))); + zz = -0.35316 + (((tickAnim - 130) / 15) * (-0.35316-(-0.35316))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = -7.959 + (((tickAnim - 145) / 35) * (0-(-7.959))); + yy = -13.24538 + (((tickAnim - 145) / 35) * (0-(-13.24538))); + zz = -0.35316 + (((tickAnim - 145) / 35) * (0-(-0.35316))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck2, neck2.rotateAngleX + (float) Math.toRadians(xx), neck2.rotateAngleY + (float) Math.toRadians(yy), neck2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 40) { + xx = 0 + (((tickAnim - 0) / 40) * (11.5-(0))); + yy = 0 + (((tickAnim - 0) / 40) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 40) * (0-(0))); + } + else if (tickAnim >= 40 && tickAnim < 45) { + xx = 11.5 + (((tickAnim - 40) / 5) * (9.5-(11.5))); + yy = 0 + (((tickAnim - 40) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 40) / 5) * (0-(0))); + } + else if (tickAnim >= 45 && tickAnim < 50) { + xx = 9.5 + (((tickAnim - 45) / 5) * (11.5-(9.5))); + yy = 0 + (((tickAnim - 45) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 45) / 5) * (0-(0))); + } + else if (tickAnim >= 50 && tickAnim < 55) { + xx = 11.5 + (((tickAnim - 50) / 5) * (9.5-(11.5))); + yy = 0 + (((tickAnim - 50) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 50) / 5) * (0-(0))); + } + else if (tickAnim >= 55 && tickAnim < 60) { + xx = 9.5 + (((tickAnim - 55) / 5) * (11.5-(9.5))); + yy = 0 + (((tickAnim - 55) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 55) / 5) * (0-(0))); + } + else if (tickAnim >= 60 && tickAnim < 80) { + xx = 11.5 + (((tickAnim - 60) / 20) * (10.5-(11.5))); + yy = 0 + (((tickAnim - 60) / 20) * (0-(0))); + zz = 0 + (((tickAnim - 60) / 20) * (0-(0))); + } + else if (tickAnim >= 80 && tickAnim < 93) { + xx = 10.5 + (((tickAnim - 80) / 13) * (4.5183+Math.sin((Math.PI/180)*(((double)tickAnim/20)*100-10))*10-(10.5))); + yy = 0 + (((tickAnim - 80) / 13) * (-3.37745-(0))); + zz = 0 + (((tickAnim - 80) / 13) * (-0.78302-(0))); + } + else if (tickAnim >= 93 && tickAnim < 110) { + xx = 4.5183+Math.sin((Math.PI/180)*(((double)tickAnim/20)*100-10))*10 + (((tickAnim - 93) / 17) * (8.83122-(4.5183+Math.sin((Math.PI/180)*(((double)tickAnim/20)*100-10))*10))); + yy = -3.37745 + (((tickAnim - 93) / 17) * (-6.33271-(-3.37745))); + zz = -0.78302 + (((tickAnim - 93) / 17) * (-1.46817-(-0.78302))); + } + else if (tickAnim >= 110 && tickAnim < 115) { + xx = 8.83122 + (((tickAnim - 110) / 5) * (10.58122-(8.83122))); + yy = -6.33271 + (((tickAnim - 110) / 5) * (-6.33271-(-6.33271))); + zz = -1.46817 + (((tickAnim - 110) / 5) * (-1.46817-(-1.46817))); + } + else if (tickAnim >= 115 && tickAnim < 120) { + xx = 10.58122 + (((tickAnim - 115) / 5) * (8.83122-(10.58122))); + yy = -6.33271 + (((tickAnim - 115) / 5) * (-6.33271-(-6.33271))); + zz = -1.46817 + (((tickAnim - 115) / 5) * (-1.46817-(-1.46817))); + } + else if (tickAnim >= 120 && tickAnim < 125) { + xx = 8.83122 + (((tickAnim - 120) / 5) * (10.58122-(8.83122))); + yy = -6.33271 + (((tickAnim - 120) / 5) * (-6.33271-(-6.33271))); + zz = -1.46817 + (((tickAnim - 120) / 5) * (-1.46817-(-1.46817))); + } + else if (tickAnim >= 125 && tickAnim < 130) { + xx = 10.58122 + (((tickAnim - 125) / 5) * (10.58122-(10.58122))); + yy = -6.33271 + (((tickAnim - 125) / 5) * (-6.33271-(-6.33271))); + zz = -1.46817 + (((tickAnim - 125) / 5) * (-1.46817-(-1.46817))); + } + else if (tickAnim >= 130 && tickAnim < 145) { + xx = 10.58122 + (((tickAnim - 130) / 15) * (16.08122-(10.58122))); + yy = -6.33271 + (((tickAnim - 130) / 15) * (-6.33271-(-6.33271))); + zz = -1.46817 + (((tickAnim - 130) / 15) * (-1.46817-(-1.46817))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 16.08122 + (((tickAnim - 145) / 35) * (0-(16.08122))); + yy = -6.33271 + (((tickAnim - 145) / 35) * (0-(-6.33271))); + zz = -1.46817 + (((tickAnim - 145) / 35) * (0-(-1.46817))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 145) { + xx = 0 + (((tickAnim - 0) / 145) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 145) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 145) * (0-(0))); + } + else if (tickAnim >= 145 && tickAnim < 180) { + xx = 0 + (((tickAnim - 145) / 35) * (0-(0))); + yy = 0 + (((tickAnim - 145) / 35) * (0-(0))); + zz = 0 + (((tickAnim - 145) / 35) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.head.rotationPointX = this.head.rotationPointX + (float)(xx); + this.head.rotationPointY = this.head.rotationPointY - (float)(yy); + this.head.rotationPointZ = this.head.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 80 && tickAnim < 87) { + xx = 0 + (((tickAnim - 80) / 7) * (3.75-(0))); + yy = 0 + (((tickAnim - 80) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 80) / 7) * (0-(0))); + } + else if (tickAnim >= 87 && tickAnim < 93) { + xx = 3.75 + (((tickAnim - 87) / 6) * (0-(3.75))); + yy = 0 + (((tickAnim - 87) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 87) / 6) * (0-(0))); + } + else if (tickAnim >= 93 && tickAnim < 130) { + xx = 0 + (((tickAnim - 93) / 37) * (0-(0))); + yy = 0 + (((tickAnim - 93) / 37) * (0-(0))); + zz = 0 + (((tickAnim - 93) / 37) * (0-(0))); + } + else if (tickAnim >= 130 && tickAnim < 135) { + xx = 0 + (((tickAnim - 130) / 5) * (3.75-(0))); + yy = 0 + (((tickAnim - 130) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 130) / 5) * (0-(0))); + } + else if (tickAnim >= 135 && tickAnim < 140) { + xx = 3.75 + (((tickAnim - 135) / 5) * (0-(3.75))); + yy = 0 + (((tickAnim - 135) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 135) / 5) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + } + public void animRoar(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraTicinosuchus entity = (EntityPrehistoricFloraTicinosuchus) entitylivingbaseIn; + int animCycle = 32; + double tickAnim = animTick + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-4.24532-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0.36919-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (1.45387-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -4.24532 + (((tickAnim - 18) / 15) * (0-(-4.24532))); + yy = 0.36919 + (((tickAnim - 18) / 15) * (0-(0.36919))); + zz = 1.45387 + (((tickAnim - 18) / 15) * (0-(1.45387))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(xx), neck.rotateAngleY + (float) Math.toRadians(yy), neck.rotateAngleZ + (float) Math.toRadians(zz)); + + this.neck.rotationPointX = this.neck.rotationPointX + (float)(0); + this.neck.rotationPointY = this.neck.rotationPointY - (float)(0); + this.neck.rotationPointZ = this.neck.rotationPointZ + (float)(0); + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (-4.8768+Math.sin((Math.PI/180)*(((double)tickAnim/20)*130-20))*5-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (-0.05232-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (3.99966-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = -4.8768+Math.sin((Math.PI/180)*(((double)tickAnim/20)*130-20))*5 + (((tickAnim - 18) / 15) * (0-(-4.8768+Math.sin((Math.PI/180)*(((double)tickAnim/20)*130-20))*5))); + yy = -0.05232 + (((tickAnim - 18) / 15) * (0-(-0.05232))); + zz = 3.99966 + (((tickAnim - 18) / 15) * (0-(3.99966))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(neck2, neck2.rotateAngleX + (float) Math.toRadians(xx), neck2.rotateAngleY + (float) Math.toRadians(yy), neck2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (0.25-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0.325-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 0.25 + (((tickAnim - 18) / 15) * (0-(0.25))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0.325 + (((tickAnim - 18) / 15) * (0-(0.325))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.neck2.rotationPointX = this.neck2.rotationPointX + (float)(xx); + this.neck2.rotationPointY = this.neck2.rotationPointY - (float)(yy); + this.neck2.rotationPointZ = this.neck2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (-9.11-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 18) { + xx = -9.11 + (((tickAnim - 8) / 10) * (5.775+Math.sin((Math.PI/180)*(((double)tickAnim/20)*130+50))*-15-(-9.11))); + yy = 0 + (((tickAnim - 8) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 10) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 25) { + xx = 5.775+Math.sin((Math.PI/180)*(((double)tickAnim/20)*130+50))*-15 + (((tickAnim - 18) / 7) * (9.38-(5.775+Math.sin((Math.PI/180)*(((double)tickAnim/20)*130+50))*-15))); + yy = 0 + (((tickAnim - 18) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 7) * (0-(0))); + } + else if (tickAnim >= 25 && tickAnim < 33) { + xx = 9.38 + (((tickAnim - 25) / 8) * (0-(9.38))); + yy = 0 + (((tickAnim - 25) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 25) / 8) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(xx), head.rotateAngleY + (float) Math.toRadians(yy), head.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 0 + (((tickAnim - 0) / 8) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0.55-(0))); + } + else if (tickAnim >= 8 && tickAnim < 25) { + xx = 0 + (((tickAnim - 8) / 17) * (0-(0))); + yy = 0 + (((tickAnim - 8) / 17) * (0-(0))); + zz = 0.55 + (((tickAnim - 8) / 17) * (-0.08-(0.55))); + } + else if (tickAnim >= 25 && tickAnim < 33) { + xx = 0 + (((tickAnim - 25) / 8) * (0-(0))); + yy = 0 + (((tickAnim - 25) / 8) * (0-(0))); + zz = -0.08 + (((tickAnim - 25) / 8) * (0-(-0.08))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.head.rotationPointX = this.head.rotationPointX + (float)(xx); + this.head.rotationPointY = this.head.rotationPointY - (float)(yy); + this.head.rotationPointZ = this.head.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 18) { + xx = 0 + (((tickAnim - 0) / 18) * (17.5-(0))); + yy = 0 + (((tickAnim - 0) / 18) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 18) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 33) { + xx = 17.5 + (((tickAnim - 18) / 15) * (0-(17.5))); + yy = 0 + (((tickAnim - 18) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 15) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(jaw, jaw.rotateAngleX + (float) Math.toRadians(xx), jaw.rotateAngleY + (float) Math.toRadians(yy), jaw.rotateAngleZ + (float) Math.toRadians(zz)); + + this.jaw.rotationPointX = this.jaw.rotationPointX + (float)(0); + this.jaw.rotationPointY = this.jaw.rotationPointY - (float)(0); + this.jaw.rotationPointZ = this.jaw.rotationPointZ + (float)(0); + + } + public void animRunning(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraTicinosuchus entity = (EntityPrehistoricFloraTicinosuchus) entitylivingbaseIn; + int animCycle = 12; + double tickAnim = (entity.ticksExisted + entity.getTickOffset()) - (int) (Math.floor((double) (entity.ticksExisted + entity.getTickOffset()) / (double) animCycle) * (double) animCycle) + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577+80))*10), main.rotateAngleY + (float) Math.toRadians(0), main.rotateAngleZ + (float) Math.toRadians(0)); + this.main.rotationPointX = this.main.rotationPointX + (float)(0); + this.main.rotationPointY = this.main.rotationPointY - (float)(0.25+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577+50))*2); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577+150))*-2.5); + + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = -41.18187 + (((tickAnim - 0) / 7) * (49.75-(-41.18187))); + yy = -9.08316 + (((tickAnim - 0) / 7) * (0-(-9.08316))); + zz = 0.38498 + (((tickAnim - 0) / 7) * (0-(0.38498))); + } + else if (tickAnim >= 7 && tickAnim < 13) { + xx = 49.75 + (((tickAnim - 7) / 6) * (-41.18187-(49.75))); + yy = 0 + (((tickAnim - 7) / 6) * (-9.08316-(0))); + zz = 0 + (((tickAnim - 7) / 6) * (0.38498-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg, leftLeg.rotateAngleX + (float) Math.toRadians(xx), leftLeg.rotateAngleY + (float) Math.toRadians(yy), leftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 24 + (((tickAnim - 0) / 2) * (-22.44-(24))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 7) { + xx = -22.44 + (((tickAnim - 2) / 5) * (0-(-22.44))); + yy = 0 + (((tickAnim - 2) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 5) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 0 + (((tickAnim - 7) / 1) * (32.39-(0))); + yy = 0 + (((tickAnim - 7) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 1) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 32.39 + (((tickAnim - 8) / 2) * (32.39-(32.39))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 11) { + xx = 32.39 + (((tickAnim - 10) / 1) * (32.39-(32.39))); + yy = 0 + (((tickAnim - 10) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 1) * (0-(0))); + } + else if (tickAnim >= 11 && tickAnim < 13) { + xx = 32.39 + (((tickAnim - 11) / 2) * (24-(32.39))); + yy = 0 + (((tickAnim - 11) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 11) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg2, leftLeg2.rotateAngleX + (float) Math.toRadians(xx), leftLeg2.rotateAngleY + (float) Math.toRadians(yy), leftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 0 + (((tickAnim - 0) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 13) { + xx = 0 + (((tickAnim - 7) / 6) * (0-(0))); + yy = 0 + (((tickAnim - 7) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 6) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftLeg2.rotationPointX = this.leftLeg2.rotationPointX + (float)(xx); + this.leftLeg2.rotationPointY = this.leftLeg2.rotationPointY - (float)(yy); + this.leftLeg2.rotationPointZ = this.leftLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0.75 + (((tickAnim - 0) / 2) * (15.38-(0.75))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 7) { + xx = 15.38 + (((tickAnim - 2) / 5) * (16.25-(15.38))); + yy = 0 + (((tickAnim - 2) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 5) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = 16.25 + (((tickAnim - 7) / 3) * (-39.36-(16.25))); + yy = 0 + (((tickAnim - 7) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 3) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = -39.36 + (((tickAnim - 10) / 3) * (0.75-(-39.36))); + yy = 0 + (((tickAnim - 10) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg3, leftLeg3.rotateAngleX + (float) Math.toRadians(xx), leftLeg3.rotateAngleY + (float) Math.toRadians(yy), leftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 2) * (-0.4-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 3) { + xx = 0 + (((tickAnim - 2) / 1) * (0-(0))); + yy = -0.4 + (((tickAnim - 2) / 1) * (-0.305-(-0.4))); + zz = 0 + (((tickAnim - 2) / 1) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 5) { + xx = 0 + (((tickAnim - 3) / 2) * (0-(0))); + yy = -0.305 + (((tickAnim - 3) / 2) * (0.85-(-0.305))); + zz = 0 + (((tickAnim - 3) / 2) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 7) { + xx = 0 + (((tickAnim - 5) / 2) * (0-(0))); + yy = 0.85 + (((tickAnim - 5) / 2) * (0-(0.85))); + zz = 0 + (((tickAnim - 5) / 2) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 13) { + xx = 0 + (((tickAnim - 7) / 6) * (0-(0))); + yy = 0 + (((tickAnim - 7) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 6) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftLeg3.rotationPointX = this.leftLeg3.rotationPointX + (float)(xx); + this.leftLeg3.rotationPointY = this.leftLeg3.rotationPointY - (float)(yy); + this.leftLeg3.rotationPointZ = this.leftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 18.75 + (((tickAnim - 0) / 2) * (19-(18.75))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 3) { + xx = 19 + (((tickAnim - 2) / 1) * (-4.42-(19))); + yy = 0 + (((tickAnim - 2) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 1) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 5) { + xx = -4.42 + (((tickAnim - 3) / 2) * (3.43-(-4.42))); + yy = 0 + (((tickAnim - 3) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 2) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 7) { + xx = 3.43 + (((tickAnim - 5) / 2) * (37.29-(3.43))); + yy = 0 + (((tickAnim - 5) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 2) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 37.29 + (((tickAnim - 7) / 1) * (82.67-(37.29))); + yy = 0 + (((tickAnim - 7) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 1) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 82.67 + (((tickAnim - 8) / 2) * (89.04-(82.67))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = 89.04 + (((tickAnim - 10) / 3) * (18.75-(89.04))); + yy = 0 + (((tickAnim - 10) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg4, leftLeg4.rotateAngleX + (float) Math.toRadians(xx), leftLeg4.rotateAngleY + (float) Math.toRadians(yy), leftLeg4.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 2) * (-0.35-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 3) { + xx = 0 + (((tickAnim - 2) / 1) * (0-(0))); + yy = -0.35 + (((tickAnim - 2) / 1) * (0.505-(-0.35))); + zz = 0 + (((tickAnim - 2) / 1) * (-0.2-(0))); + } + else if (tickAnim >= 3 && tickAnim < 5) { + xx = 0 + (((tickAnim - 3) / 2) * (0-(0))); + yy = 0.505 + (((tickAnim - 3) / 2) * (1.15-(0.505))); + zz = -0.2 + (((tickAnim - 3) / 2) * (0.5-(-0.2))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = 0 + (((tickAnim - 5) / 5) * (0-(0))); + yy = 1.15 + (((tickAnim - 5) / 5) * (0.275-(1.15))); + zz = 0.5 + (((tickAnim - 5) / 5) * (-0.8-(0.5))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = 0 + (((tickAnim - 10) / 3) * (0-(0))); + yy = 0.275 + (((tickAnim - 10) / 3) * (0-(0.275))); + zz = -0.8 + (((tickAnim - 10) / 3) * (0-(-0.8))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftLeg4.rotationPointX = this.leftLeg4.rotationPointX + (float)(xx); + this.leftLeg4.rotationPointY = this.leftLeg4.rotationPointY - (float)(yy); + this.leftLeg4.rotationPointZ = this.leftLeg4.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = -41.18187 + (((tickAnim - 0) / 7) * (49.75-(-41.18187))); + yy = 9.08316 + (((tickAnim - 0) / 7) * (0-(9.08316))); + zz = -0.38498 + (((tickAnim - 0) / 7) * (0-(-0.38498))); + } + else if (tickAnim >= 7 && tickAnim < 13) { + xx = 49.75 + (((tickAnim - 7) / 6) * (-41.18187-(49.75))); + yy = 0 + (((tickAnim - 7) / 6) * (9.08316-(0))); + zz = 0 + (((tickAnim - 7) / 6) * (-0.38498-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg, rightLeg.rotateAngleX + (float) Math.toRadians(xx), rightLeg.rotateAngleY + (float) Math.toRadians(yy), rightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 24 + (((tickAnim - 0) / 2) * (-22.44-(24))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 7) { + xx = -22.44 + (((tickAnim - 2) / 5) * (0-(-22.44))); + yy = 0 + (((tickAnim - 2) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 5) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 0 + (((tickAnim - 7) / 1) * (32.39-(0))); + yy = 0 + (((tickAnim - 7) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 1) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 32.39 + (((tickAnim - 8) / 2) * (32.39-(32.39))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 11) { + xx = 32.39 + (((tickAnim - 10) / 1) * (32.39-(32.39))); + yy = 0 + (((tickAnim - 10) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 1) * (0-(0))); + } + else if (tickAnim >= 11 && tickAnim < 13) { + xx = 32.39 + (((tickAnim - 11) / 2) * (24-(32.39))); + yy = 0 + (((tickAnim - 11) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 11) / 2) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg2, rightLeg2.rotateAngleX + (float) Math.toRadians(xx), rightLeg2.rotateAngleY + (float) Math.toRadians(yy), rightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 0 + (((tickAnim - 0) / 7) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 13) { + xx = 0 + (((tickAnim - 7) / 6) * (0-(0))); + yy = 0 + (((tickAnim - 7) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 6) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightLeg2.rotationPointX = this.rightLeg2.rotationPointX + (float)(xx); + this.rightLeg2.rotationPointY = this.rightLeg2.rotationPointY - (float)(yy); + this.rightLeg2.rotationPointZ = this.rightLeg2.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0.75 + (((tickAnim - 0) / 2) * (15.38-(0.75))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 7) { + xx = 15.38 + (((tickAnim - 2) / 5) * (16.25-(15.38))); + yy = 0 + (((tickAnim - 2) / 5) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 5) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 10) { + xx = 16.25 + (((tickAnim - 7) / 3) * (-39.36-(16.25))); + yy = 0 + (((tickAnim - 7) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 3) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = -39.36 + (((tickAnim - 10) / 3) * (0.75-(-39.36))); + yy = 0 + (((tickAnim - 10) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg3, rightLeg3.rotateAngleX + (float) Math.toRadians(xx), rightLeg3.rotateAngleY + (float) Math.toRadians(yy), rightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 2) * (-0.4-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 3) { + xx = 0 + (((tickAnim - 2) / 1) * (0-(0))); + yy = -0.4 + (((tickAnim - 2) / 1) * (-0.305-(-0.4))); + zz = 0 + (((tickAnim - 2) / 1) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 5) { + xx = 0 + (((tickAnim - 3) / 2) * (0-(0))); + yy = -0.305 + (((tickAnim - 3) / 2) * (0.85-(-0.305))); + zz = 0 + (((tickAnim - 3) / 2) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 7) { + xx = 0 + (((tickAnim - 5) / 2) * (0-(0))); + yy = 0.85 + (((tickAnim - 5) / 2) * (0-(0.85))); + zz = 0 + (((tickAnim - 5) / 2) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 13) { + xx = 0 + (((tickAnim - 7) / 6) * (0-(0))); + yy = 0 + (((tickAnim - 7) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 6) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightLeg3.rotationPointX = this.rightLeg3.rotationPointX + (float)(xx); + this.rightLeg3.rotationPointY = this.rightLeg3.rotationPointY - (float)(yy); + this.rightLeg3.rotationPointZ = this.rightLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 18.75 + (((tickAnim - 0) / 2) * (19-(18.75))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 3) { + xx = 19 + (((tickAnim - 2) / 1) * (-4.42-(19))); + yy = 0 + (((tickAnim - 2) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 1) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 5) { + xx = -4.42 + (((tickAnim - 3) / 2) * (3.43-(-4.42))); + yy = 0 + (((tickAnim - 3) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 2) * (0-(0))); + } + else if (tickAnim >= 5 && tickAnim < 7) { + xx = 3.43 + (((tickAnim - 5) / 2) * (37.29-(3.43))); + yy = 0 + (((tickAnim - 5) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 5) / 2) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 37.29 + (((tickAnim - 7) / 1) * (82.67-(37.29))); + yy = 0 + (((tickAnim - 7) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 1) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 10) { + xx = 82.67 + (((tickAnim - 8) / 2) * (89.04-(82.67))); + yy = 0 + (((tickAnim - 8) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 2) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = 89.04 + (((tickAnim - 10) / 3) * (18.75-(89.04))); + yy = 0 + (((tickAnim - 10) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg4, rightLeg4.rotateAngleX + (float) Math.toRadians(xx), rightLeg4.rotateAngleY + (float) Math.toRadians(yy), rightLeg4.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 2) * (-0.35-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 3) { + xx = 0 + (((tickAnim - 2) / 1) * (0-(0))); + yy = -0.35 + (((tickAnim - 2) / 1) * (0.505-(-0.35))); + zz = 0 + (((tickAnim - 2) / 1) * (-0.2-(0))); + } + else if (tickAnim >= 3 && tickAnim < 5) { + xx = 0 + (((tickAnim - 3) / 2) * (0-(0))); + yy = 0.505 + (((tickAnim - 3) / 2) * (1.15-(0.505))); + zz = -0.2 + (((tickAnim - 3) / 2) * (0.5-(-0.2))); + } + else if (tickAnim >= 5 && tickAnim < 10) { + xx = 0 + (((tickAnim - 5) / 5) * (0-(0))); + yy = 1.15 + (((tickAnim - 5) / 5) * (0.275-(1.15))); + zz = 0.5 + (((tickAnim - 5) / 5) * (-0.8-(0.5))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = 0 + (((tickAnim - 10) / 3) * (0-(0))); + yy = 0.275 + (((tickAnim - 10) / 3) * (0-(0.275))); + zz = -0.8 + (((tickAnim - 10) / 3) * (0-(-0.8))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightLeg4.rotationPointX = this.rightLeg4.rotationPointX + (float)(xx); + this.rightLeg4.rotationPointY = this.rightLeg4.rotationPointY - (float)(yy); + this.rightLeg4.rotationPointZ = this.rightLeg4.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577+20))*-8), tail.rotateAngleY + (float) Math.toRadians(0), tail.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577))*-10), tail2.rotateAngleY + (float) Math.toRadians(0), tail2.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577))*5), tail3.rotateAngleY + (float) Math.toRadians(0), tail3.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577-150))*-15), tail4.rotateAngleY + (float) Math.toRadians(0), tail4.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail5, tail5.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577-200))*-18), tail5.rotateAngleY + (float) Math.toRadians(0), tail5.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(tail6, tail6.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577-250))*-22), tail6.rotateAngleY + (float) Math.toRadians(0), tail6.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577))*-10), body.rotateAngleY + (float) Math.toRadians(0), body.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(6.25+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577-220))*-7), body2.rotateAngleY + (float) Math.toRadians(0), body2.rotateAngleZ + (float) Math.toRadians(0)); + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 41.69874 + (((tickAnim - 0) / 3) * (-1.44743-(41.69874))); + yy = 3.69123 + (((tickAnim - 0) / 3) * (7.83213-(3.69123))); + zz = -1.54924 + (((tickAnim - 0) / 3) * (-17.52603-(-1.54924))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = -1.44743 + (((tickAnim - 3) / 4) * (-34-(-1.44743))); + yy = 7.83213 + (((tickAnim - 3) / 4) * (0-(7.83213))); + zz = -17.52603 + (((tickAnim - 3) / 4) * (0-(-17.52603))); + } + else if (tickAnim >= 7 && tickAnim < 13) { + xx = -34 + (((tickAnim - 7) / 6) * (41.69874-(-34))); + yy = 0 + (((tickAnim - 7) / 6) * (3.69123-(0))); + zz = 0 + (((tickAnim - 7) / 6) * (-1.54924-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm, leftArm.rotateAngleX + (float) Math.toRadians(xx), leftArm.rotateAngleY + (float) Math.toRadians(yy), leftArm.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 21.74771 + (((tickAnim - 0) / 3) * (-39.25114-(21.74771))); + yy = 4.67656 + (((tickAnim - 0) / 3) * (2.33828-(4.67656))); + zz = 12.14324 + (((tickAnim - 0) / 3) * (6.07162-(12.14324))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = -39.25114 + (((tickAnim - 3) / 4) * (10.25-(-39.25114))); + yy = 2.33828 + (((tickAnim - 3) / 4) * (0-(2.33828))); + zz = 6.07162 + (((tickAnim - 3) / 4) * (0-(6.07162))); + } + else if (tickAnim >= 7 && tickAnim < 9) { + xx = 10.25 + (((tickAnim - 7) / 2) * (6.75-(10.25))); + yy = 0 + (((tickAnim - 7) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 2) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 13) { + xx = 6.75 + (((tickAnim - 9) / 4) * (21.74771-(6.75))); + yy = 0 + (((tickAnim - 9) / 4) * (4.67656-(0))); + zz = 0 + (((tickAnim - 9) / 4) * (12.14324-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm2, leftArm2.rotateAngleX + (float) Math.toRadians(xx), leftArm2.rotateAngleY + (float) Math.toRadians(yy), leftArm2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 1) { + xx = 85.25 + (((tickAnim - 0) / 1) * (91.63-(85.25))); + yy = 0 + (((tickAnim - 0) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 1) * (0-(0))); + } + else if (tickAnim >= 1 && tickAnim < 3) { + xx = 91.63 + (((tickAnim - 1) / 2) * (101.75-(91.63))); + yy = 0 + (((tickAnim - 1) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 1) / 2) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = 101.75 + (((tickAnim - 3) / 4) * (23.25-(101.75))); + yy = 0 + (((tickAnim - 3) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 4) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 23.25 + (((tickAnim - 7) / 1) * (-2.67-(23.25))); + yy = 0 + (((tickAnim - 7) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 1) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 9) { + xx = -2.67 + (((tickAnim - 8) / 1) * (-12.25-(-2.67))); + yy = 0 + (((tickAnim - 8) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 1) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 10) { + xx = -12.25 + (((tickAnim - 9) / 1) * (-11.44-(-12.25))); + yy = 0 + (((tickAnim - 9) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 9) / 1) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = -11.44 + (((tickAnim - 10) / 3) * (85.25-(-11.44))); + yy = 0 + (((tickAnim - 10) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm3, leftArm3.rotateAngleX + (float) Math.toRadians(xx), leftArm3.rotateAngleY + (float) Math.toRadians(yy), leftArm3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 1) { + xx = 0 + (((tickAnim - 0) / 1) * (0-(0))); + yy = 2.375 + (((tickAnim - 0) / 1) * (1.505-(2.375))); + zz = -1.575 + (((tickAnim - 0) / 1) * (-1.58-(-1.575))); + } + else if (tickAnim >= 1 && tickAnim < 7) { + xx = 0 + (((tickAnim - 1) / 6) * (0-(0))); + yy = 1.505 + (((tickAnim - 1) / 6) * (0.6-(1.505))); + zz = -1.58 + (((tickAnim - 1) / 6) * (-0.15-(-1.58))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 0 + (((tickAnim - 7) / 1) * (0-(0))); + yy = 0.6 + (((tickAnim - 7) / 1) * (2.025-(0.6))); + zz = -0.15 + (((tickAnim - 7) / 1) * (0-(-0.15))); + } + else if (tickAnim >= 8 && tickAnim < 9) { + xx = 0 + (((tickAnim - 8) / 1) * (0-(0))); + yy = 2.025 + (((tickAnim - 8) / 1) * (1.575-(2.025))); + zz = 0 + (((tickAnim - 8) / 1) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 10) { + xx = 0 + (((tickAnim - 9) / 1) * (0-(0))); + yy = 1.575 + (((tickAnim - 9) / 1) * (1.495-(1.575))); + zz = 0 + (((tickAnim - 9) / 1) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 11) { + xx = 0 + (((tickAnim - 10) / 1) * (0-(0))); + yy = 1.495 + (((tickAnim - 10) / 1) * (1.755-(1.495))); + zz = 0 + (((tickAnim - 10) / 1) * (0-(0))); + } + else if (tickAnim >= 11 && tickAnim < 13) { + xx = 0 + (((tickAnim - 11) / 2) * (0-(0))); + yy = 1.755 + (((tickAnim - 11) / 2) * (2.375-(1.755))); + zz = 0 + (((tickAnim - 11) / 2) * (-1.575-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftArm3.rotationPointX = this.leftArm3.rotationPointX + (float)(xx); + this.leftArm3.rotationPointY = this.leftArm3.rotationPointY - (float)(yy); + this.leftArm3.rotationPointZ = this.leftArm3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 43.4332 + (((tickAnim - 0) / 3) * (-1.44743-(43.4332))); + yy = -4.39936 + (((tickAnim - 0) / 3) * (-7.83213-(-4.39936))); + zz = 1.7833 + (((tickAnim - 0) / 3) * (17.52603-(1.7833))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = -1.44743 + (((tickAnim - 3) / 4) * (-34-(-1.44743))); + yy = -7.83213 + (((tickAnim - 3) / 4) * (0-(-7.83213))); + zz = 17.52603 + (((tickAnim - 3) / 4) * (0-(17.52603))); + } + else if (tickAnim >= 7 && tickAnim < 13) { + xx = -34 + (((tickAnim - 7) / 6) * (43.4332-(-34))); + yy = 0 + (((tickAnim - 7) / 6) * (-4.39936-(0))); + zz = 0 + (((tickAnim - 7) / 6) * (1.7833-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm, rightArm.rotateAngleX + (float) Math.toRadians(xx), rightArm.rotateAngleY + (float) Math.toRadians(yy), rightArm.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 13.74771 + (((tickAnim - 0) / 3) * (-39.25114-(13.74771))); + yy = -4.67656 + (((tickAnim - 0) / 3) * (2.33828-(-4.67656))); + zz = -12.14324 + (((tickAnim - 0) / 3) * (6.07162-(-12.14324))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = -39.25114 + (((tickAnim - 3) / 4) * (10.25-(-39.25114))); + yy = 2.33828 + (((tickAnim - 3) / 4) * (0-(2.33828))); + zz = 6.07162 + (((tickAnim - 3) / 4) * (0-(6.07162))); + } + else if (tickAnim >= 7 && tickAnim < 9) { + xx = 10.25 + (((tickAnim - 7) / 2) * (6.75-(10.25))); + yy = 0 + (((tickAnim - 7) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 2) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 13) { + xx = 6.75 + (((tickAnim - 9) / 4) * (13.74771-(6.75))); + yy = 0 + (((tickAnim - 9) / 4) * (-4.67656-(0))); + zz = 0 + (((tickAnim - 9) / 4) * (-12.14324-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm2, rightArm2.rotateAngleX + (float) Math.toRadians(xx), rightArm2.rotateAngleY + (float) Math.toRadians(yy), rightArm2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 1) { + xx = 85.25 + (((tickAnim - 0) / 1) * (91.63-(85.25))); + yy = 0 + (((tickAnim - 0) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 1) * (0-(0))); + } + else if (tickAnim >= 1 && tickAnim < 3) { + xx = 91.63 + (((tickAnim - 1) / 2) * (101.75-(91.63))); + yy = 0 + (((tickAnim - 1) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 1) / 2) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = 101.75 + (((tickAnim - 3) / 4) * (23.25-(101.75))); + yy = 0 + (((tickAnim - 3) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 4) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 23.25 + (((tickAnim - 7) / 1) * (-2.67-(23.25))); + yy = 0 + (((tickAnim - 7) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 1) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 9) { + xx = -2.67 + (((tickAnim - 8) / 1) * (-12.25-(-2.67))); + yy = 0 + (((tickAnim - 8) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 1) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 10) { + xx = -12.25 + (((tickAnim - 9) / 1) * (-11.44-(-12.25))); + yy = 0 + (((tickAnim - 9) / 1) * (0-(0))); + zz = 0 + (((tickAnim - 9) / 1) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 13) { + xx = -11.44 + (((tickAnim - 10) / 3) * (85.25-(-11.44))); + yy = 0 + (((tickAnim - 10) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 3) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm3, rightArm3.rotateAngleX + (float) Math.toRadians(xx), rightArm3.rotateAngleY + (float) Math.toRadians(yy), rightArm3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 1) { + xx = 0 + (((tickAnim - 0) / 1) * (0-(0))); + yy = 2.375 + (((tickAnim - 0) / 1) * (1.505-(2.375))); + zz = -1.575 + (((tickAnim - 0) / 1) * (-1.58-(-1.575))); + } + else if (tickAnim >= 1 && tickAnim < 7) { + xx = 0 + (((tickAnim - 1) / 6) * (0-(0))); + yy = 1.505 + (((tickAnim - 1) / 6) * (0.6-(1.505))); + zz = -1.58 + (((tickAnim - 1) / 6) * (-0.15-(-1.58))); + } + else if (tickAnim >= 7 && tickAnim < 8) { + xx = 0 + (((tickAnim - 7) / 1) * (0-(0))); + yy = 0.6 + (((tickAnim - 7) / 1) * (2.025-(0.6))); + zz = -0.15 + (((tickAnim - 7) / 1) * (0-(-0.15))); + } + else if (tickAnim >= 8 && tickAnim < 9) { + xx = 0 + (((tickAnim - 8) / 1) * (0-(0))); + yy = 2.025 + (((tickAnim - 8) / 1) * (1.575-(2.025))); + zz = 0 + (((tickAnim - 8) / 1) * (0-(0))); + } + else if (tickAnim >= 9 && tickAnim < 10) { + xx = 0 + (((tickAnim - 9) / 1) * (0-(0))); + yy = 1.575 + (((tickAnim - 9) / 1) * (1.495-(1.575))); + zz = 0 + (((tickAnim - 9) / 1) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 11) { + xx = 0 + (((tickAnim - 10) / 1) * (0-(0))); + yy = 1.495 + (((tickAnim - 10) / 1) * (1.755-(1.495))); + zz = 0 + (((tickAnim - 10) / 1) * (0-(0))); + } + else if (tickAnim >= 11 && tickAnim < 13) { + xx = 0 + (((tickAnim - 11) / 2) * (0-(0))); + yy = 1.755 + (((tickAnim - 11) / 2) * (2.375-(1.755))); + zz = 0 + (((tickAnim - 11) / 2) * (-1.575-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightArm3.rotationPointX = this.rightArm3.rotationPointX + (float)(xx); + this.rightArm3.rotationPointY = this.rightArm3.rotationPointY - (float)(yy); + this.rightArm3.rotationPointZ = this.rightArm3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577-150))*7), neck.rotateAngleY + (float) Math.toRadians(0), neck.rotateAngleZ + (float) Math.toRadians(0)); + + + this.setRotateAngle(neck2, neck2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*577-250))*-5), neck2.rotateAngleY + (float) Math.toRadians(0), neck2.rotateAngleZ + (float) Math.toRadians(0)); + + } + public void animWalking(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraTicinosuchus entity = (EntityPrehistoricFloraTicinosuchus) entitylivingbaseIn; + int animCycle = 30; + double tickAnim = (entity.ticksExisted + entity.getTickOffset()) - (int) (Math.floor((double) (entity.ticksExisted + entity.getTickOffset()) / (double) animCycle) * (double) animCycle) + partialTickTime; + double xx = 0; + double yy = 0; + double zz = 0; + + if (tickAnim >= 0 && tickAnim < 10) { + xx = 22.75 + (((tickAnim - 0) / 10) * (-37.48955-(22.75))); + yy = 0 + (((tickAnim - 0) / 10) * (-2.96624-(0))); + zz = 0 + (((tickAnim - 0) / 10) * (1.1359-(0))); + } + else if (tickAnim >= 10 && tickAnim < 14) { + xx = -37.48955 + (((tickAnim - 10) / 4) * (-26-(-37.48955))); + yy = -2.96624 + (((tickAnim - 10) / 4) * (0-(-2.96624))); + zz = 1.1359 + (((tickAnim - 10) / 4) * (0-(1.1359))); + } + else if (tickAnim >= 14 && tickAnim < 30) { + xx = -26 + (((tickAnim - 14) / 16) * (22.75-(-26))); + yy = 0 + (((tickAnim - 14) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 14) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg, leftLeg.rotateAngleX + (float) Math.toRadians(xx), leftLeg.rotateAngleY + (float) Math.toRadians(yy), leftLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (34-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = 34 + (((tickAnim - 3) / 4) * (34-(34))); + yy = 0 + (((tickAnim - 3) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 4) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 14) { + xx = 34 + (((tickAnim - 7) / 7) * (-6-(34))); + yy = 0 + (((tickAnim - 7) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 7) * (0-(0))); + } + else if (tickAnim >= 14 && tickAnim < 30) { + xx = -6 + (((tickAnim - 14) / 16) * (0-(-6))); + yy = 0 + (((tickAnim - 14) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 14) / 16) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg2, leftLeg2.rotateAngleX + (float) Math.toRadians(xx), leftLeg2.rotateAngleY + (float) Math.toRadians(yy), leftLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 22.25 + (((tickAnim - 0) / 7) * (-40.25-(22.25))); + yy = 0 + (((tickAnim - 0) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 7) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 14) { + xx = -40.25 + (((tickAnim - 7) / 7) * (32.75-(-40.25))); + yy = 0 + (((tickAnim - 7) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 7) * (0-(0))); + } + else if (tickAnim >= 14 && tickAnim < 20) { + xx = 32.75 + (((tickAnim - 14) / 6) * (11.75-(32.75))); + yy = 0 + (((tickAnim - 14) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 14) / 6) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 11.75 + (((tickAnim - 20) / 10) * (22.25-(11.75))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg3, leftLeg3.rotateAngleX + (float) Math.toRadians(xx), leftLeg3.rotateAngleY + (float) Math.toRadians(yy), leftLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 14 && tickAnim < 20) { + xx = 0 + (((tickAnim - 14) / 6) * (0-(0))); + yy = 0.1 + (((tickAnim - 14) / 6) * (0-(0.1))); + zz = 0 + (((tickAnim - 14) / 6) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftLeg3.rotationPointX = this.leftLeg3.rotationPointX + (float)(xx); + this.leftLeg3.rotationPointY = this.leftLeg3.rotationPointY - (float)(yy); + this.leftLeg3.rotationPointZ = this.leftLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 47 + (((tickAnim - 0) / 3) * (83.15-(47))); + yy = 0 + (((tickAnim - 0) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 10) { + xx = 83.15 + (((tickAnim - 3) / 7) * (61.08-(83.15))); + yy = 0 + (((tickAnim - 3) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 3) / 7) * (0-(0))); + } + else if (tickAnim >= 10 && tickAnim < 14) { + xx = 61.08 + (((tickAnim - 10) / 4) * (0-(61.08))); + yy = 0 + (((tickAnim - 10) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 10) / 4) * (0-(0))); + } + else if (tickAnim >= 14 && tickAnim < 20) { + xx = 0 + (((tickAnim - 14) / 6) * (0-(0))); + yy = 0 + (((tickAnim - 14) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 14) / 6) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 30) { + xx = 0 + (((tickAnim - 20) / 10) * (47-(0))); + yy = 0 + (((tickAnim - 20) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 20) / 10) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftLeg4, leftLeg4.rotateAngleX + (float) Math.toRadians(xx), leftLeg4.rotateAngleY + (float) Math.toRadians(yy), leftLeg4.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 1.88 + (((tickAnim - 0) / 3) * (0.15-(1.88))); + zz = -0.05 + (((tickAnim - 0) / 3) * (-1.155-(-0.05))); + } + else if (tickAnim >= 3 && tickAnim < 10) { + xx = 0 + (((tickAnim - 3) / 7) * (0-(0))); + yy = 0.15 + (((tickAnim - 3) / 7) * (0.745-(0.15))); + zz = -1.155 + (((tickAnim - 3) / 7) * (-0.765-(-1.155))); + } + else if (tickAnim >= 10 && tickAnim < 14) { + xx = 0 + (((tickAnim - 10) / 4) * (0-(0))); + yy = 0.745 + (((tickAnim - 10) / 4) * (0-(0.745))); + zz = -0.765 + (((tickAnim - 10) / 4) * (0-(-0.765))); + } + else if (tickAnim >= 14 && tickAnim < 18) { + xx = 0 + (((tickAnim - 14) / 4) * (0-(0))); + yy = 0 + (((tickAnim - 14) / 4) * (0.335-(0))); + zz = 0 + (((tickAnim - 14) / 4) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 20) { + xx = 0 + (((tickAnim - 18) / 2) * (0-(0))); + yy = 0.335 + (((tickAnim - 18) / 2) * (0.375-(0.335))); + zz = 0 + (((tickAnim - 18) / 2) * (0-(0))); + } + else if (tickAnim >= 20 && tickAnim < 25) { + xx = 0 + (((tickAnim - 20) / 5) * (0-(0))); + yy = 0.375 + (((tickAnim - 20) / 5) * (1.805-(0.375))); + zz = 0 + (((tickAnim - 20) / 5) * (0.28-(0))); + } + else if (tickAnim >= 25 && tickAnim < 30) { + xx = 0 + (((tickAnim - 25) / 5) * (0-(0))); + yy = 1.805 + (((tickAnim - 25) / 5) * (1.88-(1.805))); + zz = 0.28 + (((tickAnim - 25) / 5) * (-0.05-(0.28))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftLeg4.rotationPointX = this.leftLeg4.rotationPointX + (float)(xx); + this.leftLeg4.rotationPointY = this.leftLeg4.rotationPointY - (float)(yy); + this.leftLeg4.rotationPointZ = this.leftLeg4.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 16) { + xx = -26 + (((tickAnim - 0) / 16) * (22.75-(-26))); + yy = 0 + (((tickAnim - 0) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 16) * (0-(0))); + } + else if (tickAnim >= 16 && tickAnim < 26) { + xx = 22.75 + (((tickAnim - 16) / 10) * (-38.16455-(22.75))); + yy = 0 + (((tickAnim - 16) / 10) * (2.96624-(0))); + zz = 0 + (((tickAnim - 16) / 10) * (-1.1359-(0))); + } + else if (tickAnim >= 26 && tickAnim < 30) { + xx = -38.16455 + (((tickAnim - 26) / 4) * (-26-(-38.16455))); + yy = 2.96624 + (((tickAnim - 26) / 4) * (0-(2.96624))); + zz = -1.1359 + (((tickAnim - 26) / 4) * (0-(-1.1359))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg, rightLeg.rotateAngleX + (float) Math.toRadians(xx), rightLeg.rotateAngleY + (float) Math.toRadians(yy), rightLeg.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 16) { + xx = -6 + (((tickAnim - 0) / 16) * (0-(-6))); + yy = 0 + (((tickAnim - 0) / 16) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 16) * (0-(0))); + } + else if (tickAnim >= 16 && tickAnim < 19) { + xx = 0 + (((tickAnim - 16) / 3) * (34-(0))); + yy = 0 + (((tickAnim - 16) / 3) * (0-(0))); + zz = 0 + (((tickAnim - 16) / 3) * (0-(0))); + } + else if (tickAnim >= 19 && tickAnim < 23) { + xx = 34 + (((tickAnim - 19) / 4) * (34-(34))); + yy = 0 + (((tickAnim - 19) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 19) / 4) * (0-(0))); + } + else if (tickAnim >= 23 && tickAnim < 30) { + xx = 34 + (((tickAnim - 23) / 7) * (-6-(34))); + yy = 0 + (((tickAnim - 23) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 23) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg2, rightLeg2.rotateAngleX + (float) Math.toRadians(xx), rightLeg2.rotateAngleY + (float) Math.toRadians(yy), rightLeg2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = 32.75 + (((tickAnim - 0) / 6) * (11.75-(32.75))); + yy = 0 + (((tickAnim - 0) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 6) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 16) { + xx = 11.75 + (((tickAnim - 6) / 10) * (22.25-(11.75))); + yy = 0 + (((tickAnim - 6) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 10) * (0-(0))); + } + else if (tickAnim >= 16 && tickAnim < 23) { + xx = 22.25 + (((tickAnim - 16) / 7) * (-40.25-(22.25))); + yy = 0 + (((tickAnim - 16) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 16) / 7) * (0-(0))); + } + else if (tickAnim >= 23 && tickAnim < 30) { + xx = -40.25 + (((tickAnim - 23) / 7) * (32.75-(-40.25))); + yy = 0 + (((tickAnim - 23) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 23) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg3, rightLeg3.rotateAngleX + (float) Math.toRadians(xx), rightLeg3.rotateAngleY + (float) Math.toRadians(yy), rightLeg3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = 0 + (((tickAnim - 0) / 6) * (0-(0))); + yy = 0.1 + (((tickAnim - 0) / 6) * (0-(0.1))); + zz = 0 + (((tickAnim - 0) / 6) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 30) { + xx = 0 + (((tickAnim - 6) / 24) * (0-(0))); + yy = 0 + (((tickAnim - 6) / 24) * (0.1-(0))); + zz = 0 + (((tickAnim - 6) / 24) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightLeg3.rotationPointX = this.rightLeg3.rotationPointX + (float)(xx); + this.rightLeg3.rotationPointY = this.rightLeg3.rotationPointY - (float)(yy); + this.rightLeg3.rotationPointZ = this.rightLeg3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 6) { + xx = 0 + (((tickAnim - 0) / 6) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 6) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 16) { + xx = 0 + (((tickAnim - 6) / 10) * (47-(0))); + yy = 0 + (((tickAnim - 6) / 10) * (0-(0))); + zz = 0 + (((tickAnim - 6) / 10) * (0-(0))); + } + else if (tickAnim >= 16 && tickAnim < 18) { + xx = 47 + (((tickAnim - 16) / 2) * (83.15-(47))); + yy = 0 + (((tickAnim - 16) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 16) / 2) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 26) { + xx = 83.15 + (((tickAnim - 18) / 8) * (61.08-(83.15))); + yy = 0 + (((tickAnim - 18) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 18) / 8) * (0-(0))); + } + else if (tickAnim >= 26 && tickAnim < 30) { + xx = 61.08 + (((tickAnim - 26) / 4) * (0-(61.08))); + yy = 0 + (((tickAnim - 26) / 4) * (0-(0))); + zz = 0 + (((tickAnim - 26) / 4) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightLeg4, rightLeg4.rotateAngleX + (float) Math.toRadians(xx), rightLeg4.rotateAngleY + (float) Math.toRadians(yy), rightLeg4.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 3) { + xx = 0 + (((tickAnim - 0) / 3) * (0-(0))); + yy = 0 + (((tickAnim - 0) / 3) * (0.335-(0))); + zz = 0 + (((tickAnim - 0) / 3) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 6) { + xx = 0 + (((tickAnim - 3) / 3) * (0-(0))); + yy = 0.335 + (((tickAnim - 3) / 3) * (0.375-(0.335))); + zz = 0 + (((tickAnim - 3) / 3) * (0-(0))); + } + else if (tickAnim >= 6 && tickAnim < 11) { + xx = 0 + (((tickAnim - 6) / 5) * (0-(0))); + yy = 0.375 + (((tickAnim - 6) / 5) * (1.805-(0.375))); + zz = 0 + (((tickAnim - 6) / 5) * (0.28-(0))); + } + else if (tickAnim >= 11 && tickAnim < 16) { + xx = 0 + (((tickAnim - 11) / 5) * (0-(0))); + yy = 1.805 + (((tickAnim - 11) / 5) * (1.88-(1.805))); + zz = 0.28 + (((tickAnim - 11) / 5) * (-0.05-(0.28))); + } + else if (tickAnim >= 16 && tickAnim < 18) { + xx = 0 + (((tickAnim - 16) / 2) * (0-(0))); + yy = 1.88 + (((tickAnim - 16) / 2) * (0.15-(1.88))); + zz = -0.05 + (((tickAnim - 16) / 2) * (-1.155-(-0.05))); + } + else if (tickAnim >= 18 && tickAnim < 26) { + xx = 0 + (((tickAnim - 18) / 8) * (0-(0))); + yy = 0.15 + (((tickAnim - 18) / 8) * (0.745-(0.15))); + zz = -1.155 + (((tickAnim - 18) / 8) * (-0.765-(-1.155))); + } + else if (tickAnim >= 26 && tickAnim < 30) { + xx = 0 + (((tickAnim - 26) / 4) * (0-(0))); + yy = 0.745 + (((tickAnim - 26) / 4) * (0-(0.745))); + zz = -0.765 + (((tickAnim - 26) / 4) * (0-(-0.765))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightLeg4.rotationPointX = this.rightLeg4.rotationPointX + (float)(xx); + this.rightLeg4.rotationPointY = this.rightLeg4.rotationPointY - (float)(yy); + this.rightLeg4.rotationPointZ = this.rightLeg4.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 9) { + xx = -35.38932 + (((tickAnim - 0) / 9) * (0-(-35.38932))); + yy = 10.47152 + (((tickAnim - 0) / 9) * (0-(10.47152))); + zz = -6.73517 + (((tickAnim - 0) / 9) * (0-(-6.73517))); + } + else if (tickAnim >= 9 && tickAnim < 15) { + xx = 0 + (((tickAnim - 9) / 6) * (24.40263-(0))); + yy = 0 + (((tickAnim - 9) / 6) * (-3.61018-(0))); + zz = 0 + (((tickAnim - 9) / 6) * (3.08897-(0))); + } + else if (tickAnim >= 15 && tickAnim < 23) { + xx = 24.40263 + (((tickAnim - 15) / 8) * (-6.45319-(24.40263))); + yy = -3.61018 + (((tickAnim - 15) / 8) * (6.7347-(-3.61018))); + zz = 3.08897 + (((tickAnim - 15) / 8) * (-12.62109-(3.08897))); + } + else if (tickAnim >= 23 && tickAnim < 30) { + xx = -6.45319 + (((tickAnim - 23) / 7) * (-35.38932-(-6.45319))); + yy = 6.7347 + (((tickAnim - 23) / 7) * (10.47152-(6.7347))); + zz = -12.62109 + (((tickAnim - 23) / 7) * (-6.73517-(-12.62109))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm, leftArm.rotateAngleX + (float) Math.toRadians(xx), leftArm.rotateAngleY + (float) Math.toRadians(yy), leftArm.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 15) { + xx = 11.5 + (((tickAnim - 0) / 15) * (19.25-(11.5))); + yy = 0 + (((tickAnim - 0) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 15) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 23) { + xx = 19.25 + (((tickAnim - 15) / 8) * (-42.12-(19.25))); + yy = 0 + (((tickAnim - 15) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 15) / 8) * (0-(0))); + } + else if (tickAnim >= 23 && tickAnim < 30) { + xx = -42.12 + (((tickAnim - 23) / 7) * (11.5-(-42.12))); + yy = 0 + (((tickAnim - 23) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 23) / 7) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm2, leftArm2.rotateAngleX + (float) Math.toRadians(xx), leftArm2.rotateAngleY + (float) Math.toRadians(yy), leftArm2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 7) { + xx = 23.4467 + (((tickAnim - 0) / 7) * (-5.5-(23.4467))); + yy = -12.19858 + (((tickAnim - 0) / 7) * (0-(-12.19858))); + zz = 0.20035 + (((tickAnim - 0) / 7) * (0-(0.20035))); + } + else if (tickAnim >= 7 && tickAnim < 15) { + xx = -5.5 + (((tickAnim - 7) / 8) * (55.75-(-5.5))); + yy = 0 + (((tickAnim - 7) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 7) / 8) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 17) { + xx = 55.75 + (((tickAnim - 15) / 2) * (95-(55.75))); + yy = 0 + (((tickAnim - 15) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 15) / 2) * (0-(0))); + } + else if (tickAnim >= 17 && tickAnim < 23) { + xx = 95 + (((tickAnim - 17) / 6) * (104-(95))); + yy = 0 + (((tickAnim - 17) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 17) / 6) * (0-(0))); + } + else if (tickAnim >= 23 && tickAnim < 30) { + xx = 104 + (((tickAnim - 23) / 7) * (23.4467-(104))); + yy = 0 + (((tickAnim - 23) / 7) * (-12.19858-(0))); + zz = 0 + (((tickAnim - 23) / 7) * (0.20035-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(leftArm3, leftArm3.rotateAngleX + (float) Math.toRadians(xx), leftArm3.rotateAngleY + (float) Math.toRadians(yy), leftArm3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = -0.225 + (((tickAnim - 0) / 2) * (0.17-(-0.225))); + yy = 0.3 + (((tickAnim - 0) / 2) * (0.21-(0.3))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 3) { + xx = 0.17 + (((tickAnim - 2) / 1) * (0.12-(0.17))); + yy = 0.21 + (((tickAnim - 2) / 1) * (0.12-(0.21))); + zz = 0 + (((tickAnim - 2) / 1) * (0-(0))); + } + else if (tickAnim >= 3 && tickAnim < 7) { + xx = 0.12 + (((tickAnim - 3) / 4) * (0-(0.12))); + yy = 0.12 + (((tickAnim - 3) / 4) * (0.35-(0.12))); + zz = 0 + (((tickAnim - 3) / 4) * (0-(0))); + } + else if (tickAnim >= 7 && tickAnim < 11) { + xx = 0 + (((tickAnim - 7) / 4) * (0-(0))); + yy = 0.35 + (((tickAnim - 7) / 4) * (1.865-(0.35))); + zz = 0 + (((tickAnim - 7) / 4) * (-0.44-(0))); + } + else if (tickAnim >= 11 && tickAnim < 15) { + xx = 0 + (((tickAnim - 11) / 4) * (0-(0))); + yy = 1.865 + (((tickAnim - 11) / 4) * (1.525-(1.865))); + zz = -0.44 + (((tickAnim - 11) / 4) * (-0.875-(-0.44))); + } + else if (tickAnim >= 15 && tickAnim < 17) { + xx = 0 + (((tickAnim - 15) / 2) * (0-(0))); + yy = 1.525 + (((tickAnim - 15) / 2) * (1.675-(1.525))); + zz = -0.875 + (((tickAnim - 15) / 2) * (-1.58-(-0.875))); + } + else if (tickAnim >= 17 && tickAnim < 19) { + xx = 0 + (((tickAnim - 17) / 2) * (0-(0))); + yy = 1.675 + (((tickAnim - 17) / 2) * (1.665-(1.675))); + zz = -1.58 + (((tickAnim - 17) / 2) * (-1.735-(-1.58))); + } + else if (tickAnim >= 19 && tickAnim < 23) { + xx = 0 + (((tickAnim - 19) / 4) * (0-(0))); + yy = 1.665 + (((tickAnim - 19) / 4) * (0.705-(1.665))); + zz = -1.735 + (((tickAnim - 19) / 4) * (-1.645-(-1.735))); + } + else if (tickAnim >= 23 && tickAnim < 30) { + xx = 0 + (((tickAnim - 23) / 7) * (-0.225-(0))); + yy = 0.705 + (((tickAnim - 23) / 7) * (0.3-(0.705))); + zz = -1.645 + (((tickAnim - 23) / 7) * (0-(-1.645))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.leftArm3.rotationPointX = this.leftArm3.rotationPointX + (float)(xx); + this.leftArm3.rotationPointY = this.leftArm3.rotationPointY - (float)(yy); + this.leftArm3.rotationPointZ = this.leftArm3.rotationPointZ + (float)(zz); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 24.49526 + (((tickAnim - 0) / 8) * (-6.45319-(24.49526))); + yy = 1.21569 + (((tickAnim - 0) / 8) * (-6.7347-(1.21569))); + zz = -0.88938 + (((tickAnim - 0) / 8) * (12.62109-(-0.88938))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = -6.45319 + (((tickAnim - 8) / 7) * (-35.38932-(-6.45319))); + yy = -6.7347 + (((tickAnim - 8) / 7) * (-10.47152-(-6.7347))); + zz = 12.62109 + (((tickAnim - 8) / 7) * (6.73517-(12.62109))); + } + else if (tickAnim >= 15 && tickAnim < 24) { + xx = -35.38932 + (((tickAnim - 15) / 9) * (0-(-35.38932))); + yy = -10.47152 + (((tickAnim - 15) / 9) * (0-(-10.47152))); + zz = 6.73517 + (((tickAnim - 15) / 9) * (0-(6.73517))); + } + else if (tickAnim >= 24 && tickAnim < 30) { + xx = 0 + (((tickAnim - 24) / 6) * (24.49526-(0))); + yy = 0 + (((tickAnim - 24) / 6) * (1.21569-(0))); + zz = 0 + (((tickAnim - 24) / 6) * (-0.88938-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm, rightArm.rotateAngleX + (float) Math.toRadians(xx), rightArm.rotateAngleY + (float) Math.toRadians(yy), rightArm.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 8) { + xx = 19.25 + (((tickAnim - 0) / 8) * (-42.12-(19.25))); + yy = 0 + (((tickAnim - 0) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 8) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = -42.12 + (((tickAnim - 8) / 7) * (11.5-(-42.12))); + yy = 0 + (((tickAnim - 8) / 7) * (0-(0))); + zz = 0 + (((tickAnim - 8) / 7) * (0-(0))); + } + else if (tickAnim >= 15 && tickAnim < 30) { + xx = 11.5 + (((tickAnim - 15) / 15) * (19.25-(11.5))); + yy = 0 + (((tickAnim - 15) / 15) * (0-(0))); + zz = 0 + (((tickAnim - 15) / 15) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm2, rightArm2.rotateAngleX + (float) Math.toRadians(xx), rightArm2.rotateAngleY + (float) Math.toRadians(yy), rightArm2.rotateAngleZ + (float) Math.toRadians(zz)); + + + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 55.75 + (((tickAnim - 0) / 2) * (95-(55.75))); + yy = 0 + (((tickAnim - 0) / 2) * (0-(0))); + zz = 0 + (((tickAnim - 0) / 2) * (0-(0))); + } + else if (tickAnim >= 2 && tickAnim < 8) { + xx = 95 + (((tickAnim - 2) / 6) * (104-(95))); + yy = 0 + (((tickAnim - 2) / 6) * (0-(0))); + zz = 0 + (((tickAnim - 2) / 6) * (0-(0))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = 104 + (((tickAnim - 8) / 7) * (23.4467-(104))); + yy = 0 + (((tickAnim - 8) / 7) * (12.19858-(0))); + zz = 0 + (((tickAnim - 8) / 7) * (0.20035-(0))); + } + else if (tickAnim >= 15 && tickAnim < 22) { + xx = 23.4467 + (((tickAnim - 15) / 7) * (-5.5-(23.4467))); + yy = 12.19858 + (((tickAnim - 15) / 7) * (0-(12.19858))); + zz = 0.20035 + (((tickAnim - 15) / 7) * (0-(0.20035))); + } + else if (tickAnim >= 22 && tickAnim < 30) { + xx = -5.5 + (((tickAnim - 22) / 8) * (55.75-(-5.5))); + yy = 0 + (((tickAnim - 22) / 8) * (0-(0))); + zz = 0 + (((tickAnim - 22) / 8) * (0-(0))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.setRotateAngle(rightArm3, rightArm3.rotateAngleX + (float) Math.toRadians(xx), rightArm3.rotateAngleY + (float) Math.toRadians(yy), rightArm3.rotateAngleZ + (float) Math.toRadians(zz)); + + + if (tickAnim >= 0 && tickAnim < 2) { + xx = 0 + (((tickAnim - 0) / 2) * (0-(0))); + yy = 1.525 + (((tickAnim - 0) / 2) * (1.675-(1.525))); + zz = -0.875 + (((tickAnim - 0) / 2) * (-1.58-(-0.875))); + } + else if (tickAnim >= 2 && tickAnim < 4) { + xx = 0 + (((tickAnim - 2) / 2) * (0-(0))); + yy = 1.675 + (((tickAnim - 2) / 2) * (1.665-(1.675))); + zz = -1.58 + (((tickAnim - 2) / 2) * (-1.735-(-1.58))); + } + else if (tickAnim >= 4 && tickAnim < 8) { + xx = 0 + (((tickAnim - 4) / 4) * (0-(0))); + yy = 1.665 + (((tickAnim - 4) / 4) * (0.705-(1.665))); + zz = -1.735 + (((tickAnim - 4) / 4) * (-1.645-(-1.735))); + } + else if (tickAnim >= 8 && tickAnim < 15) { + xx = 0 + (((tickAnim - 8) / 7) * (0.225-(0))); + yy = 0.705 + (((tickAnim - 8) / 7) * (0.3-(0.705))); + zz = -1.645 + (((tickAnim - 8) / 7) * (0-(-1.645))); + } + else if (tickAnim >= 15 && tickAnim < 17) { + xx = 0.225 + (((tickAnim - 15) / 2) * (0.17-(0.225))); + yy = 0.3 + (((tickAnim - 15) / 2) * (0.21-(0.3))); + zz = 0 + (((tickAnim - 15) / 2) * (0-(0))); + } + else if (tickAnim >= 17 && tickAnim < 18) { + xx = 0.17 + (((tickAnim - 17) / 1) * (0.12-(0.17))); + yy = 0.21 + (((tickAnim - 17) / 1) * (0.12-(0.21))); + zz = 0 + (((tickAnim - 17) / 1) * (0-(0))); + } + else if (tickAnim >= 18 && tickAnim < 22) { + xx = 0.12 + (((tickAnim - 18) / 4) * (0-(0.12))); + yy = 0.12 + (((tickAnim - 18) / 4) * (0.35-(0.12))); + zz = 0 + (((tickAnim - 18) / 4) * (0-(0))); + } + else if (tickAnim >= 22 && tickAnim < 26) { + xx = 0 + (((tickAnim - 22) / 4) * (0-(0))); + yy = 0.35 + (((tickAnim - 22) / 4) * (1.865-(0.35))); + zz = 0 + (((tickAnim - 22) / 4) * (-0.44-(0))); + } + else if (tickAnim >= 26 && tickAnim < 30) { + xx = 0 + (((tickAnim - 26) / 4) * (0-(0))); + yy = 1.865 + (((tickAnim - 26) / 4) * (1.525-(1.865))); + zz = -0.44 + (((tickAnim - 26) / 4) * (-0.875-(-0.44))); + } + else { + xx = 0; + yy = 0; + zz = 0; + } + this.rightArm3.rotationPointX = this.rightArm3.rotationPointX + (float)(xx); + this.rightArm3.rotationPointY = this.rightArm3.rotationPointY - (float)(yy); + this.rightArm3.rotationPointZ = this.rightArm3.rotationPointZ + (float)(zz); + + + + this.setRotateAngle(main, main.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-90))*1), main.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-120))*4), main.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240))*2)); + this.main.rotationPointX = this.main.rotationPointX + (float)(0); + this.main.rotationPointY = this.main.rotationPointY - (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5+40))*0.3); + this.main.rotationPointZ = this.main.rotationPointZ + (float)(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5+150))*-0.3); + this.setRotateAngle(body, body.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-200))*1), body.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-150))*-4), body.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-150))*-3)); + this.setRotateAngle(body2, body2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-250))*2), body2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-190))*4), body2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-200))*3)); + this.setRotateAngle(neck, neck.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-300))*2), neck.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-250))*-2), neck.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-150))*3)); + this.setRotateAngle(neck2, neck2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-300))*-2), neck2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-300))*2), neck2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-250))*3)); + this.setRotateAngle(head, head.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-350))*2), head.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-300))*-2), head.rotateAngleZ + (float) Math.toRadians(0)); + this.setRotateAngle(tail, tail.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5))*1), tail.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240))*2), tail.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240))*2)); + this.setRotateAngle(tail2, tail2.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-50))*2), tail2.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-50))*2), tail2.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-50))*-2)); + this.setRotateAngle(tail3, tail3.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-100))*3), tail3.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-100))*4), tail3.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-100))*-2)); + this.setRotateAngle(tail4, tail4.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-200))*4), tail4.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-150))*8), tail4.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-150))*-2)); + this.setRotateAngle(tail5, tail5.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-150))*5), tail5.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-200))*12), tail5.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-200))*-2)); + this.setRotateAngle(tail6, tail6.rotateAngleX + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240/0.5-50))*-6), tail6.rotateAngleY + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-250))*15), tail6.rotateAngleZ + (float) Math.toRadians(0+Math.sin((Math.PI/180)*((((double)tickAnim/20D))*240-250))*-4)); + + } + + @Override + public void setLivingAnimations(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + super.setLivingAnimations(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + this.resetToDefaultPose(); + EntityPrehistoricFloraTicinosuchus ee = (EntityPrehistoricFloraTicinosuchus) entitylivingbaseIn; + + if (!ee.isReallyInWater()) { + if (ee.getIsMoving()) { + if (ee.getIsFast()) { //Running + animRunning(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + + } else { //Walking + animWalking(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + } + } + } + else { + //Swimming pose: + if (!ee.getIsMoving()) { //static in water + // + } + //moving in water + // + } + if (ee.getAnimation() == ee.EAT_ANIMATION) { + animEat(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.ATTACK_ANIMATION) { + animAttack(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.MAKE_NEST_ANIMATION) { + animNest(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.LAY_ANIMATION) { + animLay(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.STAND_ANIMATION) { + animAlert(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.ROAR_ANIMATION) { //The actual roar/anim + animRoar(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + + } + + public void animate(IAnimatedEntity entity, float f, float f1, float f2, float f3, float f4, float f5) { + EntityPrehistoricFloraTicinosuchus e = (EntityPrehistoricFloraTicinosuchus) entity; + + } +} diff --git a/src/main/java/net/lepidodendron/entity/model/entity/ModelTurfanosuchus.java b/src/main/java/net/lepidodendron/entity/model/entity/ModelTurfanosuchus.java new file mode 100644 index 0000000000..1a940cee87 --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/model/entity/ModelTurfanosuchus.java @@ -0,0 +1,490 @@ +package net.lepidodendron.entity.model.entity; + +import net.ilexiconn.llibrary.client.model.ModelAnimator; +import net.ilexiconn.llibrary.client.model.tools.AdvancedModelRenderer; +import net.ilexiconn.llibrary.server.animation.IAnimatedEntity; +import net.lepidodendron.entity.EntityPrehistoricFloraXilousuchus; +import net.lepidodendron.entity.model.ModelBasePalaeopedia; +import net.minecraft.client.model.ModelBox; +import net.minecraft.entity.Entity; +import net.minecraft.entity.EntityLivingBase; + +public class ModelTurfanosuchus extends ModelBasePalaeopedia { + private final AdvancedModelRenderer main; + private final AdvancedModelRenderer cube_r1; + private final AdvancedModelRenderer backLeftLeg; + private final AdvancedModelRenderer backLeftLeg2; + private final AdvancedModelRenderer backLeftLeg3; + private final AdvancedModelRenderer backRightLeg; + private final AdvancedModelRenderer backRightLeg2; + private final AdvancedModelRenderer backRightLeg3; + private final AdvancedModelRenderer body; + private final AdvancedModelRenderer cube_r2; + private final AdvancedModelRenderer body2; + private final AdvancedModelRenderer frontLeftArm; + private final AdvancedModelRenderer frontLeftArm2; + private final AdvancedModelRenderer frontLeftArm3; + private final AdvancedModelRenderer frontRightArm; + private final AdvancedModelRenderer frontRightArm2; + private final AdvancedModelRenderer frontRightArm3; + private final AdvancedModelRenderer neck; + private final AdvancedModelRenderer cube_r3; + private final AdvancedModelRenderer neck2; + private final AdvancedModelRenderer head; + private final AdvancedModelRenderer cube_r4; + private final AdvancedModelRenderer cube_r5; + private final AdvancedModelRenderer cube_r6; + private final AdvancedModelRenderer cube_r7; + private final AdvancedModelRenderer cube_r8; + private final AdvancedModelRenderer cube_r9; + private final AdvancedModelRenderer cube_r10; + private final AdvancedModelRenderer jaw; + private final AdvancedModelRenderer sail3; + private final AdvancedModelRenderer sail2; + private final AdvancedModelRenderer tail; + private final AdvancedModelRenderer cube_r11; + private final AdvancedModelRenderer tail2; + private final AdvancedModelRenderer cube_r12; + private final AdvancedModelRenderer tail3; + private final AdvancedModelRenderer cube_r13; + private final AdvancedModelRenderer tail4; + private final AdvancedModelRenderer tail5; + private final AdvancedModelRenderer sail; + + private ModelAnimator animator; + + public ModelTurfanosuchus() { + this.textureWidth = 55; + this.textureHeight = 55; + + this.main = new AdvancedModelRenderer(this); + this.main.setRotationPoint(0.0F, 14.5081F, -0.522F); + this.main.cubeList.add(new ModelBox(main, 0, 0, -2.0F, -0.2581F, -0.478F, 4, 4, 5, 0.01F, false)); + + this.cube_r1 = new AdvancedModelRenderer(this); + this.cube_r1.setRotationPoint(0.0F, 4.4419F, -0.478F); + this.main.addChild(cube_r1); + this.setRotateAngle(cube_r1, 0.0742F, 0.0F, 0.0F); + this.cube_r1.cubeList.add(new ModelBox(cube_r1, 19, 13, -1.5F, -1.0F, 0.0F, 3, 1, 5, 0.01F, false)); + + this.backLeftLeg = new AdvancedModelRenderer(this); + this.backLeftLeg.setRotationPoint(1.95F, 0.9127F, 2.6164F); + this.main.addChild(backLeftLeg); + this.setRotateAngle(backLeftLeg, -0.2182F, 0.0F, 0.0F); + this.backLeftLeg.cubeList.add(new ModelBox(backLeftLeg, 15, 34, -0.7F, -0.5F, -1.5F, 2, 5, 3, 0.01F, false)); + + this.backLeftLeg2 = new AdvancedModelRenderer(this); + this.backLeftLeg2.setRotationPoint(0.8F, 4.5F, -1.5F); + this.backLeftLeg.addChild(backLeftLeg2); + this.setRotateAngle(backLeftLeg2, 0.7025F, 0.0F, 0.0F); + this.backLeftLeg2.cubeList.add(new ModelBox(backLeftLeg2, 39, 34, -1.5F, 0.0F, 0.0F, 2, 5, 2, 0.0F, false)); + + this.backLeftLeg3 = new AdvancedModelRenderer(this); + this.backLeftLeg3.setRotationPoint(0.0F, 4.4891F, 0.5023F); + this.backLeftLeg2.addChild(backLeftLeg3); + this.setRotateAngle(backLeftLeg3, -2.0508F, 0.0F, 0.0F); + this.backLeftLeg3.cubeList.add(new ModelBox(backLeftLeg3, 9, 43, -2.0F, -1.0F, 0.0F, 3, 4, 1, 0.0F, false)); + + this.backRightLeg = new AdvancedModelRenderer(this); + this.backRightLeg.setRotationPoint(-1.95F, 0.9127F, 2.6164F); + this.main.addChild(backRightLeg); + this.setRotateAngle(backRightLeg, -0.2182F, 0.0F, 0.0F); + this.backRightLeg.cubeList.add(new ModelBox(backRightLeg, 15, 34, -1.3F, -0.5F, -1.5F, 2, 5, 3, 0.01F, true)); + + this.backRightLeg2 = new AdvancedModelRenderer(this); + this.backRightLeg2.setRotationPoint(-0.8F, 4.5F, -1.5F); + this.backRightLeg.addChild(backRightLeg2); + this.setRotateAngle(backRightLeg2, 0.7025F, 0.0F, 0.0F); + this.backRightLeg2.cubeList.add(new ModelBox(backRightLeg2, 39, 34, -0.5F, 0.0F, 0.0F, 2, 5, 2, 0.0F, true)); + + this.backRightLeg3 = new AdvancedModelRenderer(this); + this.backRightLeg3.setRotationPoint(0.0F, 4.4891F, 0.5023F); + this.backRightLeg2.addChild(backRightLeg3); + this.setRotateAngle(backRightLeg3, -2.0508F, 0.0F, 0.0F); + this.backRightLeg3.cubeList.add(new ModelBox(backRightLeg3, 9, 43, -1.0F, -1.0F, 0.0F, 3, 4, 1, 0.0F, true)); + + this.body = new AdvancedModelRenderer(this); + this.body.setRotationPoint(0.0F, -0.2581F, 0.522F); + this.main.addChild(body); + this.body.cubeList.add(new ModelBox(body, 0, 10, -2.0F, 0.0F, -5.0F, 4, 4, 5, -0.003F, false)); + + this.cube_r2 = new AdvancedModelRenderer(this); + this.cube_r2.setRotationPoint(0.5F, 4.7F, -1.0F); + this.body.addChild(cube_r2); + this.setRotateAngle(cube_r2, -0.1745F, 0.0F, 0.0F); + this.cube_r2.cubeList.add(new ModelBox(cube_r2, 15, 28, -2.0F, -1.0F, -4.0F, 3, 1, 4, 0.0F, false)); + + this.body2 = new AdvancedModelRenderer(this); + this.body2.setRotationPoint(0.0F, 0.75F, -4.5F); + this.body.addChild(body2); + this.setRotateAngle(body2, -0.0873F, 0.0F, 0.0F); + this.body2.cubeList.add(new ModelBox(body2, 30, 27, -1.5F, -0.75F, -3.0F, 3, 3, 3, 0.0F, false)); + + this.frontLeftArm = new AdvancedModelRenderer(this); + this.frontLeftArm.setRotationPoint(1.5F, 1.5556F, -1.8712F); + this.body2.addChild(frontLeftArm); + this.setRotateAngle(frontLeftArm, 0.7459F, 0.274F, -0.2849F); + this.frontLeftArm.cubeList.add(new ModelBox(frontLeftArm, 18, 43, -0.5F, -0.5F, -1.0F, 1, 4, 2, 0.01F, false)); + + this.frontLeftArm2 = new AdvancedModelRenderer(this); + this.frontLeftArm2.setRotationPoint(0.0F, 2.8467F, 0.2706F); + this.frontLeftArm.addChild(frontLeftArm2); + this.setRotateAngle(frontLeftArm2, -1.1781F, 0.0F, 0.0F); + this.frontLeftArm2.cubeList.add(new ModelBox(frontLeftArm2, 9, 36, -0.5F, 0.0F, -1.0F, 1, 3, 1, 0.0F, false)); + this.frontLeftArm2.cubeList.add(new ModelBox(frontLeftArm2, 25, 47, -0.5F, 0.0F, -0.3F, 1, 3, 1, -0.003F, false)); + + this.frontLeftArm3 = new AdvancedModelRenderer(this); + this.frontLeftArm3.setRotationPoint(0.5F, 3.0F, -0.15F); + this.frontLeftArm2.addChild(frontLeftArm3); + this.setRotateAngle(frontLeftArm3, 0.0F, 0.0F, 0.3491F); + this.frontLeftArm3.cubeList.add(new ModelBox(frontLeftArm3, 45, 0, -1.0F, 0.0F, -1.0F, 1, 2, 2, 0.0F, false)); + + this.frontRightArm = new AdvancedModelRenderer(this); + this.frontRightArm.setRotationPoint(-1.5F, 1.5556F, -1.8712F); + this.body2.addChild(frontRightArm); + this.setRotateAngle(frontRightArm, 0.7459F, -0.274F, 0.2849F); + this.frontRightArm.cubeList.add(new ModelBox(frontRightArm, 18, 43, -0.5F, -0.5F, -1.0F, 1, 4, 2, 0.01F, true)); + + this.frontRightArm2 = new AdvancedModelRenderer(this); + this.frontRightArm2.setRotationPoint(0.0F, 2.8467F, 0.2706F); + this.frontRightArm.addChild(frontRightArm2); + this.setRotateAngle(frontRightArm2, -1.1781F, 0.0F, 0.0F); + this.frontRightArm2.cubeList.add(new ModelBox(frontRightArm2, 9, 36, -0.5F, 0.0F, -1.0F, 1, 3, 1, 0.0F, true)); + this.frontRightArm2.cubeList.add(new ModelBox(frontRightArm2, 25, 47, -0.5F, 0.0F, -0.3F, 1, 3, 1, -0.003F, true)); + + this.frontRightArm3 = new AdvancedModelRenderer(this); + this.frontRightArm3.setRotationPoint(-0.5F, 3.0F, -0.15F); + this.frontRightArm2.addChild(frontRightArm3); + this.setRotateAngle(frontRightArm3, 0.0F, 0.0F, -0.3491F); + this.frontRightArm3.cubeList.add(new ModelBox(frontRightArm3, 45, 0, 0.0F, 0.0F, -1.0F, 1, 2, 2, 0.0F, true)); + + this.neck = new AdvancedModelRenderer(this); + this.neck.setRotationPoint(-0.5F, -0.1F, -2.65F); + this.body2.addChild(neck); + this.setRotateAngle(neck, -0.2182F, 0.0F, 0.0F); + this.neck.cubeList.add(new ModelBox(neck, 36, 13, -0.5F, -0.5F, -3.0F, 2, 2, 3, 0.01F, false)); + + this.cube_r3 = new AdvancedModelRenderer(this); + this.cube_r3.setRotationPoint(0.5F, 0.0F, -1.5F); + this.neck.addChild(cube_r3); + this.setRotateAngle(cube_r3, 0.5182F, -0.0521F, 0.0062F); + this.cube_r3.cubeList.add(new ModelBox(cube_r3, 44, 42, -0.5F, -0.85F, -0.45F, 1, 2, 2, 0.0F, false)); + + this.neck2 = new AdvancedModelRenderer(this); + this.neck2.setRotationPoint(0.0F, -0.5064F, -2.9231F); + this.neck.addChild(neck2); + this.setRotateAngle(neck2, 0.3054F, 0.0F, 0.0F); + this.neck2.cubeList.add(new ModelBox(neck2, 26, 41, -0.5F, 0.0F, -3.0F, 2, 2, 3, 0.0F, false)); + + this.head = new AdvancedModelRenderer(this); + this.head.setRotationPoint(0.0F, 0.0F, -3.0F); + this.neck2.addChild(head); + this.setRotateAngle(head, 0.0436F, 0.0F, 0.0F); + + + this.cube_r4 = new AdvancedModelRenderer(this); + this.cube_r4.setRotationPoint(0.0583F, 1.423F, -3.5954F); + this.head.addChild(cube_r4); + this.setRotateAngle(cube_r4, 0.0764F, -0.0227F, 0.0444F); + this.cube_r4.cubeList.add(new ModelBox(cube_r4, 30, 47, 0.0F, -0.65F, 0.075F, 0, 1, 2, 0.0F, true)); + + this.cube_r5 = new AdvancedModelRenderer(this); + this.cube_r5.setRotationPoint(0.9417F, 1.423F, -3.5954F); + this.head.addChild(cube_r5); + this.setRotateAngle(cube_r5, 0.0764F, 0.0227F, -0.0444F); + this.cube_r5.cubeList.add(new ModelBox(cube_r5, 30, 47, 0.0F, -0.65F, 0.075F, 0, 1, 2, 0.0F, false)); + + this.cube_r6 = new AdvancedModelRenderer(this); + this.cube_r6.setRotationPoint(1.0F, 1.5F, -3.0F); + this.head.addChild(cube_r6); + this.setRotateAngle(cube_r6, -0.0829F, 0.0F, 0.0F); + this.cube_r6.cubeList.add(new ModelBox(cube_r6, 48, 34, -1.0F, -1.075F, 0.15F, 1, 1, 1, -0.003F, false)); + this.cube_r6.cubeList.add(new ModelBox(cube_r6, 43, 23, -1.5F, -1.075F, 1.1F, 2, 1, 2, -0.003F, false)); + + this.cube_r7 = new AdvancedModelRenderer(this); + this.cube_r7.setRotationPoint(1.0F, 0.4046F, -2.9726F); + this.head.addChild(cube_r7); + this.setRotateAngle(cube_r7, 0.1789F, 0.0F, 0.0F); + this.cube_r7.cubeList.add(new ModelBox(cube_r7, 0, 46, -1.0F, 0.05F, -0.975F, 1, 1, 2, 0.0F, false)); + + this.cube_r8 = new AdvancedModelRenderer(this); + this.cube_r8.setRotationPoint(-0.15F, 0.7881F, -1.1577F); + this.head.addChild(cube_r8); + this.setRotateAngle(cube_r8, 0.0F, 0.0F, -0.1745F); + this.cube_r8.cubeList.add(new ModelBox(cube_r8, 44, 47, -0.4F, -0.475F, -0.5F, 1, 1, 1, -0.01F, true)); + + this.cube_r9 = new AdvancedModelRenderer(this); + this.cube_r9.setRotationPoint(1.15F, 0.7881F, -1.1577F); + this.head.addChild(cube_r9); + this.setRotateAngle(cube_r9, 0.0F, 0.0F, 0.1745F); + this.cube_r9.cubeList.add(new ModelBox(cube_r9, 44, 47, -0.6F, -0.475F, -0.5F, 1, 1, 1, -0.01F, false)); + + this.cube_r10 = new AdvancedModelRenderer(this); + this.cube_r10.setRotationPoint(0.5F, 0.0F, 0.0F); + this.head.addChild(cube_r10); + this.setRotateAngle(cube_r10, 0.1353F, 0.0F, 0.0F); + this.cube_r10.cubeList.add(new ModelBox(cube_r10, 43, 19, -1.0F, 0.0F, -2.0F, 2, 1, 2, 0.003F, false)); + + this.jaw = new AdvancedModelRenderer(this); + this.jaw.setRotationPoint(0.0F, 1.35F, 0.05F); + this.head.addChild(jaw); + this.setRotateAngle(jaw, 0.0436F, 0.0F, 0.0F); + this.jaw.cubeList.add(new ModelBox(jaw, 43, 27, -0.5F, -0.375F, -1.9F, 2, 1, 2, -0.006F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 43, 31, -0.5F, -1.075F, -1.4F, 2, 1, 1, -0.01F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 47, 13, 0.0F, -0.375F, -3.55F, 1, 1, 2, -0.01F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 48, 37, 0.9F, -0.625F, -3.45F, 0, 1, 1, 0.0F, false)); + this.jaw.cubeList.add(new ModelBox(jaw, 48, 37, 0.1F, -0.625F, -3.45F, 0, 1, 1, 0.0F, true)); + + this.sail3 = new AdvancedModelRenderer(this); + this.sail3.setRotationPoint(0.0F, -0.75F, 0.0F); + this.body2.addChild(sail3); + this.sail3.cubeList.add(new ModelBox(sail3, 37, 42, 0.0F, -5.0F, -3.0F, 0, 5, 3, 0.0F, false)); + + this.sail2 = new AdvancedModelRenderer(this); + this.sail2.setRotationPoint(0.0F, 0.0F, 1.0F); + this.body.addChild(sail2); + this.sail2.cubeList.add(new ModelBox(sail2, 19, 0, 0.025F, -6.0F, -6.0F, 0, 6, 6, 0.0F, false)); + + this.tail = new AdvancedModelRenderer(this); + this.tail.setRotationPoint(-0.5F, -0.2145F, 4.0201F); + this.main.addChild(tail); + this.setRotateAngle(tail, -0.0873F, 0.0F, 0.0F); + this.tail.cubeList.add(new ModelBox(tail, 0, 20, -1.5F, 0.0F, 0.0F, 4, 4, 3, 0.0F, false)); + + this.cube_r11 = new AdvancedModelRenderer(this); + this.cube_r11.setRotationPoint(0.5F, -0.2014F, 1.3405F); + this.tail.addChild(cube_r11); + this.setRotateAngle(cube_r11, -0.1745F, 0.0F, 0.0F); + this.cube_r11.cubeList.add(new ModelBox(cube_r11, 43, 7, -0.5F, -1.0F, -1.5F, 1, 2, 3, 0.003F, false)); + + this.tail2 = new AdvancedModelRenderer(this); + this.tail2.setRotationPoint(0.0F, 0.025F, 2.3F); + this.tail.addChild(tail2); + this.tail2.cubeList.add(new ModelBox(tail2, 15, 20, -1.0F, 0.0F, 0.0F, 3, 3, 4, 0.0F, false)); + + this.cube_r12 = new AdvancedModelRenderer(this); + this.cube_r12.setRotationPoint(1.0F, -1.0F, 0.0F); + this.tail2.addChild(cube_r12); + this.setRotateAngle(cube_r12, -0.0873F, 0.0F, 0.0F); + this.cube_r12.cubeList.add(new ModelBox(cube_r12, 32, 7, -1.0F, 0.0F, 0.0F, 1, 1, 4, 0.0F, false)); + + this.tail3 = new AdvancedModelRenderer(this); + this.tail3.setRotationPoint(0.0F, 0.0F, 3.5F); + this.tail2.addChild(tail3); + this.tail3.cubeList.add(new ModelBox(tail3, 0, 28, -0.5F, 0.0F, 0.0F, 2, 2, 5, -0.006F, false)); + + this.cube_r13 = new AdvancedModelRenderer(this); + this.cube_r13.setRotationPoint(0.5F, -0.675F, 0.0F); + this.tail3.addChild(cube_r13); + this.setRotateAngle(cube_r13, -0.1353F, 0.0F, 0.0F); + this.cube_r13.cubeList.add(new ModelBox(cube_r13, 32, 0, -0.5F, 0.0F, 0.0F, 1, 1, 5, -0.003F, false)); + + this.tail4 = new AdvancedModelRenderer(this); + this.tail4.setRotationPoint(0.0F, 0.0F, 4.5F); + this.tail3.addChild(tail4); + this.tail4.cubeList.add(new ModelBox(tail4, 26, 34, 0.0F, 0.0F, 0.0F, 1, 1, 5, 0.0F, false)); + + this.tail5 = new AdvancedModelRenderer(this); + this.tail5.setRotationPoint(0.0F, 0.0F, 4.5F); + this.tail4.addChild(tail5); + this.setRotateAngle(tail5, -0.0873F, 0.0F, 0.0F); + this.tail5.cubeList.add(new ModelBox(tail5, 30, 20, 0.0F, 0.0F, 0.0F, 1, 1, 5, -0.006F, false)); + + this.sail = new AdvancedModelRenderer(this); + this.sail.setRotationPoint(0.0F, -0.2581F, 1.522F); + this.main.addChild(sail); + this.sail.cubeList.add(new ModelBox(sail, 0, 36, 0.0F, -5.0F, -1.0F, 0, 5, 4, 0.0F, false)); + + updateDefaultPose(); + animator = ModelAnimator.create(); + } + + @Override + public void render(Entity entity, float f, float f1, float f2, float f3, float f4, float f5) { + animate((IAnimatedEntity) entity, f, f1, f2, f3, f4, f5); + this.main.render(f5); + } + + @Override + public void renderStaticBook(float f) { + //Rotations, positions and sizing: + this.main.offsetY = 0.2F; + this.main.offsetX = 0.35F; + this.main.offsetZ = 2.0F; + this.main.rotateAngleY = (float)Math.toRadians(120); + this.main.rotateAngleX = (float)Math.toRadians(1); + this.main.rotateAngleZ = (float)Math.toRadians(0); + this.main.scaleChildren = true; + float scaler = 0.6F; + this.main.setScale(scaler, scaler, scaler); + //Start of pose: + + //End of pose, now render the model: + this.main.render(f); + //Reset rotations, positions and sizing: + this.main.setScale(1.0F, 1.0F, 1.0F); + this.main.scaleChildren = false; + resetToDefaultPose(); + + } + + public void renderStaticWall(float f) { + resetToDefaultPose(); + } + + public void renderStaticFloor(float f) { + this.main.offsetY = -0.105F; + this.main.render(0.01F); + resetToDefaultPose(); + } + + public void setRotateAngle(AdvancedModelRenderer AdvancedModelRenderer, float x, float y, float z) { + AdvancedModelRenderer.rotateAngleX = x; + AdvancedModelRenderer.rotateAngleY = y; + AdvancedModelRenderer.rotateAngleZ = z; + } + + @Override + public void setRotationAngles(float f, float f1, float f2, float f3, float f4, float f5, Entity e) { + super.setRotationAngles(f, f1, f2, f3, f4, f5, e); + //this.resetToDefaultPose(); + + EntityPrehistoricFloraXilousuchus EntityMegalosaurus = (EntityPrehistoricFloraXilousuchus) e; + + this.faceTarget(f3, f4, 8, neck); + this.faceTarget(f3, f4, 8, neck2); + this.faceTarget(f3, f4, 8, head); + + AdvancedModelRenderer[] Tail = {this.tail, this.tail2, this.tail3, this.tail4, this.tail5}; + AdvancedModelRenderer[] Neck = {this.neck, this.neck2, this.head}; + AdvancedModelRenderer[] ArmL = {this.frontLeftArm, this.frontLeftArm2, this.frontLeftArm3}; + AdvancedModelRenderer[] ArmR = {this.frontRightArm, this.frontRightArm2, this.frontRightArm3}; + + EntityMegalosaurus.tailBuffer.applyChainSwingBuffer(Tail); + + if (EntityMegalosaurus.getAnimation() == EntityMegalosaurus.LAY_ANIMATION) { + this.chainSwing(Neck, 0.5F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.5F * 2, -0.02F, 0.5F, f2, 0.8F); + } + else { + if (!EntityMegalosaurus.isReallyInWater()) { + + if (f3 == 0.0F || !EntityMegalosaurus.getIsMoving()) { + this.chainSwing(Neck, 0.05F, 0.10F, 0.5, f2, 0.8F); + this.chainWave(Neck, 0.05F * 2, -0.02F, 0.5F, f2, 0.8F); + + this.chainWave(Tail, (0.15F * 0.35F), 0.125F * 0.15F, 0.2F, f2, 1F); + this.chainSwing(Tail, (0.15F * 0.35F) * 4F, 0.05F * 0.35F, 0.12F, f2, 1F); + + this.chainWaveExtended(ArmL, 0.175F, 0.03F, 0.1F, 3F, f2, 1F); + this.chainWaveExtended(ArmR, 0.175F, -0.03F, -0.1F, 0f, f2, 1F); + this.chainFlapExtended(ArmL, 0.175F, -0.03F, 0.1F, 3F, f2, 1F); + this.chainFlapExtended(ArmR, 0.175F, -0.03F, -0.1F, 0f, f2, 1F); + this.walk(this.frontLeftArm, 0.175F, 0.10F, true, 3F, 0.05F, f2, 1F); + this.walk(this.frontRightArm, 0.175F, -0.10F, true, 0F, 0.05F, f2, 1F); + this.flap(this.frontLeftArm, 0.175F, -0.10F, true, 3F, 0.05F, f2, 1F); + this.flap(this.frontRightArm, 0.175F, -0.10F, true, 0F, 0.05F, f2, 1F); + + return; + } + + if (EntityMegalosaurus.getIsFast()) { //Running + + + } else { //Walking + + } + } else { + //Swimming pose: + if (f3 == 0.0F) { //static in water + return; + } + //moving in water + return; + } + } + } + + public void animAttack(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraXilousuchus entity = (EntityPrehistoricFloraXilousuchus) entitylivingbaseIn; + + } + public void animEat(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraXilousuchus entity = (EntityPrehistoricFloraXilousuchus) entitylivingbaseIn; + + } + public void animNest(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraXilousuchus entity = (EntityPrehistoricFloraXilousuchus) entitylivingbaseIn; + + } + public void animLay(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraXilousuchus entity = (EntityPrehistoricFloraXilousuchus) entitylivingbaseIn; + + } + public void animAlert(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraXilousuchus entity = (EntityPrehistoricFloraXilousuchus) entitylivingbaseIn; + + } + public void animRoar(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime, double animTick) { + EntityPrehistoricFloraXilousuchus entity = (EntityPrehistoricFloraXilousuchus) entitylivingbaseIn; + + } + public void animRunning(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraXilousuchus entity = (EntityPrehistoricFloraXilousuchus) entitylivingbaseIn; + + } + public void animWalking(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + EntityPrehistoricFloraXilousuchus entity = (EntityPrehistoricFloraXilousuchus) entitylivingbaseIn; + + } + + @Override + public void setLivingAnimations(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTickTime) { + super.setLivingAnimations(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + this.resetToDefaultPose(); + EntityPrehistoricFloraXilousuchus ee = (EntityPrehistoricFloraXilousuchus) entitylivingbaseIn; + + if (!ee.isReallyInWater()) { + if (ee.getIsMoving()) { + if (ee.getIsFast()) { //Running + animRunning(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + + } else { //Walking + animWalking(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime); + } + } + } + else { + //Swimming pose: + if (!ee.getIsMoving()) { //static in water + // + } + //moving in water + // + } + if (ee.getAnimation() == ee.EAT_ANIMATION) { + animEat(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.ATTACK_ANIMATION) { + animAttack(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.MAKE_NEST_ANIMATION) { + animNest(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.LAY_ANIMATION) { + animLay(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.STAND_ANIMATION) { + animAlert(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + else if (ee.getAnimation() == ee.ROAR_ANIMATION) { //The actual roar/anim + animRoar(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTickTime, ee.getAnimationTick()); + } + + } + + public void animate(IAnimatedEntity entity, float f, float f1, float f2, float f3, float f4, float f5) { + EntityPrehistoricFloraXilousuchus e = (EntityPrehistoricFloraXilousuchus) entity; + + } +} diff --git a/src/main/java/net/lepidodendron/entity/render/RenderHandler.java b/src/main/java/net/lepidodendron/entity/render/RenderHandler.java index f1a43660bf..ddf47630bd 100644 --- a/src/main/java/net/lepidodendron/entity/render/RenderHandler.java +++ b/src/main/java/net/lepidodendron/entity/render/RenderHandler.java @@ -9071,6 +9071,66 @@ public Render createRenderFor(Rend return new RenderMantellisaurus(manager); } }); + RenderingRegistry.registerEntityRenderingHandler(EntityPrehistoricFloraDiandongosuchus.class, new IRenderFactory() { + @Override + public Render createRenderFor(RenderManager manager) { + return new RenderDiandongosuchus(manager); + } + }); + RenderingRegistry.registerEntityRenderingHandler(EntityPrehistoricFloraNundasuchus.class, new IRenderFactory() { + @Override + public Render createRenderFor(RenderManager manager) { + return new RenderNundasuchus(manager); + } + }); + RenderingRegistry.registerEntityRenderingHandler(EntityPrehistoricFloraTicinosuchus.class, new IRenderFactory() { + @Override + public Render createRenderFor(RenderManager manager) { + return new RenderTicinosuchus(manager); + } + }); + RenderingRegistry.registerEntityRenderingHandler(EntityPrehistoricFloraRiojasuchus.class, new IRenderFactory() { + @Override + public Render createRenderFor(RenderManager manager) { + return new RenderRiojasuchus(manager); + } + }); + RenderingRegistry.registerEntityRenderingHandler(EntityPrehistoricFloraColossosuchus.class, new IRenderFactory() { + @Override + public Render createRenderFor(RenderManager manager) { + return new RenderColossosuchus(manager); + } + }); + RenderingRegistry.registerEntityRenderingHandler(EntityPrehistoricFloraProtosuchus.class, new IRenderFactory() { + @Override + public Render createRenderFor(RenderManager manager) { + return new RenderProtosuchus(manager); + } + }); + RenderingRegistry.registerEntityRenderingHandler(EntityPrehistoricFloraErpetosuchus.class, new IRenderFactory() { + @Override + public Render createRenderFor(RenderManager manager) { + return new RenderErpetosuchus(manager); + } + }); + RenderingRegistry.registerEntityRenderingHandler(EntityPrehistoricFloraDyoplax.class, new IRenderFactory() { + @Override + public Render createRenderFor(RenderManager manager) { + return new RenderDyoplax(manager); + } + }); + RenderingRegistry.registerEntityRenderingHandler(EntityPrehistoricFloraTarjadia.class, new IRenderFactory() { + @Override + public Render createRenderFor(RenderManager manager) { + return new RenderTarjadia(manager); + } + }); + RenderingRegistry.registerEntityRenderingHandler(EntityPrehistoricFloraParringtonia.class, new IRenderFactory() { + @Override + public Render createRenderFor(RenderManager manager) { + return new RenderParringtonia(manager); + } + }); RenderingRegistry.registerEntityRenderingHandler(EntityPrehistoricFloraHauffiosaurus.class, new IRenderFactory() { @Override public Render createRenderFor(RenderManager manager) { diff --git a/src/main/java/net/lepidodendron/entity/render/entity/RenderColossosuchus.java b/src/main/java/net/lepidodendron/entity/render/entity/RenderColossosuchus.java new file mode 100644 index 0000000000..0af66411fc --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/render/entity/RenderColossosuchus.java @@ -0,0 +1,36 @@ +package net.lepidodendron.entity.render.entity; + +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.entity.EntityPrehistoricFloraColossosuchus; +import net.lepidodendron.entity.model.entity.ModelColossosuchus; +import net.lepidodendron.entity.render.RenderLivingBaseWithBook; +import net.minecraft.client.renderer.GlStateManager; +import net.minecraft.client.renderer.entity.RenderManager; +import net.minecraft.util.ResourceLocation; + +public class RenderColossosuchus extends RenderLivingBaseWithBook { + public static final ResourceLocation TEXTURE = new ResourceLocation(LepidodendronMod.MODID + ":textures/entities/colossosuchus.png"); + + public static float getScaler() {return 1f;} + public RenderColossosuchus(RenderManager mgr) { + super(mgr, new ModelColossosuchus(), 0.3f); + } + + @Override + public ResourceLocation getEntityTexture(EntityPrehistoricFloraColossosuchus entity) { + return RenderColossosuchus.TEXTURE; + } + + @Override + protected void applyRotations(EntityPrehistoricFloraColossosuchus entityLiving, float ageInTicks, float rotationYaw, float partialTicks) { + super.applyRotations(entityLiving, ageInTicks, rotationYaw, partialTicks); + } + + @Override + protected void preRenderCallback(EntityPrehistoricFloraColossosuchus entity, float f) { + float scale = entity.getAgeScale()*getScaler(); + GlStateManager.scale(scale, scale, scale); + this.shadowSize = entity.width * scale * 0.15F; + } + +} \ No newline at end of file diff --git a/src/main/java/net/lepidodendron/entity/render/entity/RenderDiandongosuchus.java b/src/main/java/net/lepidodendron/entity/render/entity/RenderDiandongosuchus.java new file mode 100644 index 0000000000..df3b86c066 --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/render/entity/RenderDiandongosuchus.java @@ -0,0 +1,36 @@ +package net.lepidodendron.entity.render.entity; + +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.entity.EntityPrehistoricFloraDiandongosuchus; +import net.lepidodendron.entity.model.entity.ModelDiandongosuchus; +import net.lepidodendron.entity.render.RenderLivingBaseWithBook; +import net.minecraft.client.renderer.GlStateManager; +import net.minecraft.client.renderer.entity.RenderManager; +import net.minecraft.util.ResourceLocation; + +public class RenderDiandongosuchus extends RenderLivingBaseWithBook { + public static final ResourceLocation TEXTURE = new ResourceLocation(LepidodendronMod.MODID + ":textures/entities/diandongosuchus.png"); + + public static float getScaler() {return 0.5511f;} + public RenderDiandongosuchus(RenderManager mgr) { + super(mgr, new ModelDiandongosuchus(), 0.3f); + } + + @Override + public ResourceLocation getEntityTexture(EntityPrehistoricFloraDiandongosuchus entity) { + return RenderDiandongosuchus.TEXTURE; + } + + @Override + protected void applyRotations(EntityPrehistoricFloraDiandongosuchus entityLiving, float ageInTicks, float rotationYaw, float partialTicks) { + super.applyRotations(entityLiving, ageInTicks, rotationYaw, partialTicks); + } + + @Override + protected void preRenderCallback(EntityPrehistoricFloraDiandongosuchus entity, float f) { + float scale = entity.getAgeScale()*getScaler(); + GlStateManager.scale(scale, scale, scale); + this.shadowSize = entity.width * scale * 0.15F; + } + +} \ No newline at end of file diff --git a/src/main/java/net/lepidodendron/entity/render/entity/RenderDyoplax.java b/src/main/java/net/lepidodendron/entity/render/entity/RenderDyoplax.java new file mode 100644 index 0000000000..080495ebdd --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/render/entity/RenderDyoplax.java @@ -0,0 +1,36 @@ +package net.lepidodendron.entity.render.entity; + +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.entity.EntityPrehistoricFloraDyoplax; +import net.lepidodendron.entity.model.entity.ModelDyoplax; +import net.lepidodendron.entity.render.RenderLivingBaseWithBook; +import net.minecraft.client.renderer.GlStateManager; +import net.minecraft.client.renderer.entity.RenderManager; +import net.minecraft.util.ResourceLocation; + +public class RenderDyoplax extends RenderLivingBaseWithBook { + public static final ResourceLocation TEXTURE = new ResourceLocation(LepidodendronMod.MODID + ":textures/entities/dyoplax.png"); + + public static float getScaler() {return 0.203f;} + public RenderDyoplax(RenderManager mgr) { + super(mgr, new ModelDyoplax(), 0.3f); + } + + @Override + public ResourceLocation getEntityTexture(EntityPrehistoricFloraDyoplax entity) { + return RenderDyoplax.TEXTURE; + } + + @Override + protected void applyRotations(EntityPrehistoricFloraDyoplax entityLiving, float ageInTicks, float rotationYaw, float partialTicks) { + super.applyRotations(entityLiving, ageInTicks, rotationYaw, partialTicks); + } + + @Override + protected void preRenderCallback(EntityPrehistoricFloraDyoplax entity, float f) { + float scale = entity.getAgeScale()*getScaler(); + GlStateManager.scale(scale, scale, scale); + this.shadowSize = entity.width * scale * 0.15F; + } + +} \ No newline at end of file diff --git a/src/main/java/net/lepidodendron/entity/render/entity/RenderErpetosuchus.java b/src/main/java/net/lepidodendron/entity/render/entity/RenderErpetosuchus.java new file mode 100644 index 0000000000..b98877c7ef --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/render/entity/RenderErpetosuchus.java @@ -0,0 +1,36 @@ +package net.lepidodendron.entity.render.entity; + +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.entity.EntityPrehistoricFloraErpetosuchus; +import net.lepidodendron.entity.model.entity.ModelErpetosuchus; +import net.lepidodendron.entity.render.RenderLivingBaseWithBook; +import net.minecraft.client.renderer.GlStateManager; +import net.minecraft.client.renderer.entity.RenderManager; +import net.minecraft.util.ResourceLocation; + +public class RenderErpetosuchus extends RenderLivingBaseWithBook { + public static final ResourceLocation TEXTURE = new ResourceLocation(LepidodendronMod.MODID + ":textures/entities/erpetosuchus.png"); + + public static float getScaler() {return 0.258f;} + public RenderErpetosuchus(RenderManager mgr) { + super(mgr, new ModelErpetosuchus(), 0.3f); + } + + @Override + public ResourceLocation getEntityTexture(EntityPrehistoricFloraErpetosuchus entity) { + return RenderErpetosuchus.TEXTURE; + } + + @Override + protected void applyRotations(EntityPrehistoricFloraErpetosuchus entityLiving, float ageInTicks, float rotationYaw, float partialTicks) { + super.applyRotations(entityLiving, ageInTicks, rotationYaw, partialTicks); + } + + @Override + protected void preRenderCallback(EntityPrehistoricFloraErpetosuchus entity, float f) { + float scale = entity.getAgeScale()*getScaler(); + GlStateManager.scale(scale, scale, scale); + this.shadowSize = entity.width * scale * 0.15F; + } + +} \ No newline at end of file diff --git a/src/main/java/net/lepidodendron/entity/render/entity/RenderNundasuchus.java b/src/main/java/net/lepidodendron/entity/render/entity/RenderNundasuchus.java new file mode 100644 index 0000000000..91d1d1bbd6 --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/render/entity/RenderNundasuchus.java @@ -0,0 +1,36 @@ +package net.lepidodendron.entity.render.entity; + +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.entity.EntityPrehistoricFloraNundasuchus; +import net.lepidodendron.entity.model.entity.ModelNundasuchus; +import net.lepidodendron.entity.render.RenderLivingBaseWithBook; +import net.minecraft.client.renderer.GlStateManager; +import net.minecraft.client.renderer.entity.RenderManager; +import net.minecraft.util.ResourceLocation; + +public class RenderNundasuchus extends RenderLivingBaseWithBook { + public static final ResourceLocation TEXTURE = new ResourceLocation(LepidodendronMod.MODID + ":textures/entities/nundasuchus.png"); + + public static float getScaler() {return 0.54f;} + public RenderNundasuchus(RenderManager mgr) { + super(mgr, new ModelNundasuchus(), 0.3f); + } + + @Override + public ResourceLocation getEntityTexture(EntityPrehistoricFloraNundasuchus entity) { + return RenderNundasuchus.TEXTURE; + } + + @Override + protected void applyRotations(EntityPrehistoricFloraNundasuchus entityLiving, float ageInTicks, float rotationYaw, float partialTicks) { + super.applyRotations(entityLiving, ageInTicks, rotationYaw, partialTicks); + } + + @Override + protected void preRenderCallback(EntityPrehistoricFloraNundasuchus entity, float f) { + float scale = entity.getAgeScale()*getScaler(); + GlStateManager.scale(scale, scale, scale); + this.shadowSize = entity.width * scale * 0.15F; + } + +} \ No newline at end of file diff --git a/src/main/java/net/lepidodendron/entity/render/entity/RenderParringtonia.java b/src/main/java/net/lepidodendron/entity/render/entity/RenderParringtonia.java new file mode 100644 index 0000000000..056e53f5a4 --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/render/entity/RenderParringtonia.java @@ -0,0 +1,36 @@ +package net.lepidodendron.entity.render.entity; + +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.entity.EntityPrehistoricFloraParringtonia; +import net.lepidodendron.entity.model.entity.ModelParringtonia; +import net.lepidodendron.entity.render.RenderLivingBaseWithBook; +import net.minecraft.client.renderer.GlStateManager; +import net.minecraft.client.renderer.entity.RenderManager; +import net.minecraft.util.ResourceLocation; + +public class RenderParringtonia extends RenderLivingBaseWithBook { + public static final ResourceLocation TEXTURE = new ResourceLocation(LepidodendronMod.MODID + ":textures/entities/parringtonia.png"); + + public static float getScaler() {return 0.62f;} + public RenderParringtonia(RenderManager mgr) { + super(mgr, new ModelParringtonia(), 0.3f); + } + + @Override + public ResourceLocation getEntityTexture(EntityPrehistoricFloraParringtonia entity) { + return RenderParringtonia.TEXTURE; + } + + @Override + protected void applyRotations(EntityPrehistoricFloraParringtonia entityLiving, float ageInTicks, float rotationYaw, float partialTicks) { + super.applyRotations(entityLiving, ageInTicks, rotationYaw, partialTicks); + } + + @Override + protected void preRenderCallback(EntityPrehistoricFloraParringtonia entity, float f) { + float scale = entity.getAgeScale()*getScaler(); + GlStateManager.scale(scale, scale, scale); + this.shadowSize = entity.width * scale * 0.15F; + } + +} \ No newline at end of file diff --git a/src/main/java/net/lepidodendron/entity/render/entity/RenderProtosuchus.java b/src/main/java/net/lepidodendron/entity/render/entity/RenderProtosuchus.java new file mode 100644 index 0000000000..f1f519aefd --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/render/entity/RenderProtosuchus.java @@ -0,0 +1,36 @@ +package net.lepidodendron.entity.render.entity; + +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.entity.EntityPrehistoricFloraProtosuchus; +import net.lepidodendron.entity.model.entity.ModelProtosuchus; +import net.lepidodendron.entity.render.RenderLivingBaseWithBook; +import net.minecraft.client.renderer.GlStateManager; +import net.minecraft.client.renderer.entity.RenderManager; +import net.minecraft.util.ResourceLocation; + +public class RenderProtosuchus extends RenderLivingBaseWithBook { + public static final ResourceLocation TEXTURE = new ResourceLocation(LepidodendronMod.MODID + ":textures/entities/protosuchus.png"); + + public static float getScaler() {return 0.47f;} + public RenderProtosuchus(RenderManager mgr) { + super(mgr, new ModelProtosuchus(), 0.3f); + } + + @Override + public ResourceLocation getEntityTexture(EntityPrehistoricFloraProtosuchus entity) { + return RenderProtosuchus.TEXTURE; + } + + @Override + protected void applyRotations(EntityPrehistoricFloraProtosuchus entityLiving, float ageInTicks, float rotationYaw, float partialTicks) { + super.applyRotations(entityLiving, ageInTicks, rotationYaw, partialTicks); + } + + @Override + protected void preRenderCallback(EntityPrehistoricFloraProtosuchus entity, float f) { + float scale = entity.getAgeScale()*getScaler(); + GlStateManager.scale(scale, scale, scale); + this.shadowSize = entity.width * scale * 0.15F; + } + +} \ No newline at end of file diff --git a/src/main/java/net/lepidodendron/entity/render/entity/RenderRiojasuchus.java b/src/main/java/net/lepidodendron/entity/render/entity/RenderRiojasuchus.java new file mode 100644 index 0000000000..e1dcd2eeae --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/render/entity/RenderRiojasuchus.java @@ -0,0 +1,36 @@ +package net.lepidodendron.entity.render.entity; + +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.entity.EntityPrehistoricFloraRiojasuchus; +import net.lepidodendron.entity.model.entity.ModelRiojasuchus; +import net.lepidodendron.entity.render.RenderLivingBaseWithBook; +import net.minecraft.client.renderer.GlStateManager; +import net.minecraft.client.renderer.entity.RenderManager; +import net.minecraft.util.ResourceLocation; + +public class RenderRiojasuchus extends RenderLivingBaseWithBook { + public static final ResourceLocation TEXTURE = new ResourceLocation(LepidodendronMod.MODID + ":textures/entities/riojasuchus.png"); + + public static float getScaler() {return 0.66f;} + public RenderRiojasuchus(RenderManager mgr) { + super(mgr, new ModelRiojasuchus(), 0.3f); + } + + @Override + public ResourceLocation getEntityTexture(EntityPrehistoricFloraRiojasuchus entity) { + return RenderRiojasuchus.TEXTURE; + } + + @Override + protected void applyRotations(EntityPrehistoricFloraRiojasuchus entityLiving, float ageInTicks, float rotationYaw, float partialTicks) { + super.applyRotations(entityLiving, ageInTicks, rotationYaw, partialTicks); + } + + @Override + protected void preRenderCallback(EntityPrehistoricFloraRiojasuchus entity, float f) { + float scale = entity.getAgeScale()*getScaler(); + GlStateManager.scale(scale, scale, scale); + this.shadowSize = entity.width * scale * 0.15F; + } + +} \ No newline at end of file diff --git a/src/main/java/net/lepidodendron/entity/render/entity/RenderTarjadia.java b/src/main/java/net/lepidodendron/entity/render/entity/RenderTarjadia.java new file mode 100644 index 0000000000..ede06b9489 --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/render/entity/RenderTarjadia.java @@ -0,0 +1,36 @@ +package net.lepidodendron.entity.render.entity; + +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.entity.EntityPrehistoricFloraTarjadia; +import net.lepidodendron.entity.model.entity.ModelTarjadia; +import net.lepidodendron.entity.render.RenderLivingBaseWithBook; +import net.minecraft.client.renderer.GlStateManager; +import net.minecraft.client.renderer.entity.RenderManager; +import net.minecraft.util.ResourceLocation; + +public class RenderTarjadia extends RenderLivingBaseWithBook { + public static final ResourceLocation TEXTURE = new ResourceLocation(LepidodendronMod.MODID + ":textures/entities/tarjadia.png"); + + public static float getScaler() {return 0.888f;} + public RenderTarjadia(RenderManager mgr) { + super(mgr, new ModelTarjadia(), 0.3f); + } + + @Override + public ResourceLocation getEntityTexture(EntityPrehistoricFloraTarjadia entity) { + return RenderTarjadia.TEXTURE; + } + + @Override + protected void applyRotations(EntityPrehistoricFloraTarjadia entityLiving, float ageInTicks, float rotationYaw, float partialTicks) { + super.applyRotations(entityLiving, ageInTicks, rotationYaw, partialTicks); + } + + @Override + protected void preRenderCallback(EntityPrehistoricFloraTarjadia entity, float f) { + float scale = entity.getAgeScale()*getScaler(); + GlStateManager.scale(scale, scale, scale); + this.shadowSize = entity.width * scale * 0.15F; + } + +} \ No newline at end of file diff --git a/src/main/java/net/lepidodendron/entity/render/entity/RenderTicinosuchus.java b/src/main/java/net/lepidodendron/entity/render/entity/RenderTicinosuchus.java new file mode 100644 index 0000000000..6418f5f0d5 --- /dev/null +++ b/src/main/java/net/lepidodendron/entity/render/entity/RenderTicinosuchus.java @@ -0,0 +1,36 @@ +package net.lepidodendron.entity.render.entity; + +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.entity.EntityPrehistoricFloraTicinosuchus; +import net.lepidodendron.entity.model.entity.ModelTicinosuchus; +import net.lepidodendron.entity.render.RenderLivingBaseWithBook; +import net.minecraft.client.renderer.GlStateManager; +import net.minecraft.client.renderer.entity.RenderManager; +import net.minecraft.util.ResourceLocation; + +public class RenderTicinosuchus extends RenderLivingBaseWithBook { + public static final ResourceLocation TEXTURE = new ResourceLocation(LepidodendronMod.MODID + ":textures/entities/ticinosuchus.png"); + + public static float getScaler() {return 0.606f;} + public RenderTicinosuchus(RenderManager mgr) { + super(mgr, new ModelTicinosuchus(), 0.3f); + } + + @Override + public ResourceLocation getEntityTexture(EntityPrehistoricFloraTicinosuchus entity) { + return RenderTicinosuchus.TEXTURE; + } + + @Override + protected void applyRotations(EntityPrehistoricFloraTicinosuchus entityLiving, float ageInTicks, float rotationYaw, float partialTicks) { + super.applyRotations(entityLiving, ageInTicks, rotationYaw, partialTicks); + } + + @Override + protected void preRenderCallback(EntityPrehistoricFloraTicinosuchus entity, float f) { + float scale = entity.getAgeScale()*getScaler(); + GlStateManager.scale(scale, scale, scale); + this.shadowSize = entity.width * scale * 0.15F; + } + +} \ No newline at end of file diff --git a/src/main/java/net/lepidodendron/item/entities/ItemColossosuchusRaw.java b/src/main/java/net/lepidodendron/item/entities/ItemColossosuchusRaw.java new file mode 100644 index 0000000000..72391e9fe8 --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemColossosuchusRaw.java @@ -0,0 +1,54 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemColossosuchusRaw extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:colossosuchus_raw") + public static final Item block = null; + public ItemColossosuchusRaw(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.colossosuchus_raw); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemFoodCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/colossosuchus_raw", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("mobdnaPNlepidodendron:prehistoric_flora_colossosuchus", ItemColossosuchusRaw.block); + OreDictionary.registerOre("listAllmeatraw", ItemColossosuchusRaw.block); + OreDictionary.registerOre("pnfurnaceMeat", ItemColossosuchusRaw.block); + OreDictionary.registerOre("pndietMeat", ItemColossosuchusRaw.block); + } + + public static class ItemFoodCustom extends ItemPNTaxidermyItem { + public ItemFoodCustom() { + super(3, 0.3f, false); + setTranslationKey("pf_colossosuchus_raw"); + setRegistryName("colossosuchus_raw"); + setCreativeTab(TabLepidodendronMobile.tab); + setMaxStackSize(64); + } + } +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemDiandongosuchusRaw.java b/src/main/java/net/lepidodendron/item/entities/ItemDiandongosuchusRaw.java index f6e138dfaa..7f36045f98 100644 --- a/src/main/java/net/lepidodendron/item/entities/ItemDiandongosuchusRaw.java +++ b/src/main/java/net/lepidodendron/item/entities/ItemDiandongosuchusRaw.java @@ -1,54 +1,54 @@ -// -//package net.lepidodendron.item.entities; -// -//import net.lepidodendron.ElementsLepidodendronMod; -//import net.lepidodendron.LepidodendronSorter; -//import net.lepidodendron.creativetab.TabLepidodendronMobile; -//import net.minecraft.client.renderer.block.model.ModelResourceLocation; -//import net.minecraft.item.Item; -//import net.minecraftforge.client.event.ModelRegistryEvent; -//import net.minecraftforge.client.model.ModelLoader; -//import net.minecraftforge.fml.common.event.FMLInitializationEvent; -//import net.minecraftforge.fml.common.registry.GameRegistry; -//import net.minecraftforge.fml.relauncher.Side; -//import net.minecraftforge.fml.relauncher.SideOnly; -//import net.minecraftforge.oredict.OreDictionary; -// -//@ElementsLepidodendronMod.ModElement.Tag -//public class ItemDiandongosuchusRaw extends ElementsLepidodendronMod.ModElement { -// @GameRegistry.ObjectHolder("lepidodendron:diandongosuchus_raw") -// public static final Item block = null; -// public ItemDiandongosuchusRaw(ElementsLepidodendronMod instance) { -// super(instance, LepidodendronSorter.diandongosuchus_raw); -// } -// -// @Override -// public void initElements() { -// elements.items.add(() -> new ItemFoodCustom()); -// } -// -// @SideOnly(Side.CLIENT) -// @Override -// public void registerModels(ModelRegistryEvent event) { -// ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/diandongosuchus_raw", "inventory")); -// } -// -// @Override -// public void init(FMLInitializationEvent event) { -// super.init(event); -// OreDictionary.registerOre("mobdnaPNlepidodendron:prehistoric_flora_diandongosuchus", ItemDiandongosuchusRaw.block); -// OreDictionary.registerOre("listAllmeatraw", ItemDiandongosuchusRaw.block); -// OreDictionary.registerOre("pnfurnaceAmphibian", ItemDiandongosuchusRaw.block); -// OreDictionary.registerOre("pndietMeat", ItemDiandongosuchusRaw.block); -// } -// -// public static class ItemFoodCustom extends ItemPNTaxidermyItem { -// public ItemFoodCustom() { -// super(2, 0.1f, false); -// setTranslationKey("pf_diandongosuchus_raw"); -// setRegistryName("diandongosuchus_raw"); -// setCreativeTab(TabLepidodendronMobile.tab); -// setMaxStackSize(64); -// } -// } -//} + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemDiandongosuchusRaw extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:diandongosuchus_raw") + public static final Item block = null; + public ItemDiandongosuchusRaw(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.diandongosuchus_raw); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemFoodCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/diandongosuchus_raw", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("mobdnaPNlepidodendron:prehistoric_flora_diandongosuchus", ItemDiandongosuchusRaw.block); + OreDictionary.registerOre("listAllmeatraw", ItemDiandongosuchusRaw.block); + OreDictionary.registerOre("pnfurnaceMeat", ItemDiandongosuchusRaw.block); + OreDictionary.registerOre("pndietMeat", ItemDiandongosuchusRaw.block); + } + + public static class ItemFoodCustom extends ItemPNTaxidermyItem { + public ItemFoodCustom() { + super(3, 0.3f, false); + setTranslationKey("pf_diandongosuchus_raw"); + setRegistryName("diandongosuchus_raw"); + setCreativeTab(TabLepidodendronMobile.tab); + setMaxStackSize(64); + } + } +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemDyoplaxRaw.java b/src/main/java/net/lepidodendron/item/entities/ItemDyoplaxRaw.java new file mode 100644 index 0000000000..577d70a7eb --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemDyoplaxRaw.java @@ -0,0 +1,54 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemDyoplaxRaw extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:dyoplax_raw") + public static final Item block = null; + public ItemDyoplaxRaw(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.dyoplax_raw); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemFoodCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/dyoplax_raw", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("mobdnaPNlepidodendron:prehistoric_flora_dyoplax", ItemDyoplaxRaw.block); + OreDictionary.registerOre("listAllmeatraw", ItemDyoplaxRaw.block); + OreDictionary.registerOre("pnfurnaceMeat", ItemDyoplaxRaw.block); + OreDictionary.registerOre("pndietMeat", ItemDyoplaxRaw.block); + } + + public static class ItemFoodCustom extends ItemPNTaxidermyItem { + public ItemFoodCustom() { + super(3, 0.3f, false); + setTranslationKey("pf_dyoplax_raw"); + setRegistryName("dyoplax_raw"); + setCreativeTab(TabLepidodendronMobile.tab); + setMaxStackSize(64); + } + } +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemEggsColossosuchus.java b/src/main/java/net/lepidodendron/item/entities/ItemEggsColossosuchus.java new file mode 100644 index 0000000000..1d7986f96d --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemEggsColossosuchus.java @@ -0,0 +1,63 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemEggsColossosuchus extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:eggs_colossosuchus") + public static final Item block = null; + public ItemEggsColossosuchus(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.eggs_colossosuchus); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/eggs_colossosuchus", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("bakingEgg", ItemEggsColossosuchus.block); + OreDictionary.registerOre("egg", ItemEggsColossosuchus.block); + OreDictionary.registerOre("eggCookable", ItemEggsColossosuchus.block); + OreDictionary.registerOre("foodSimpleEgg", ItemEggsColossosuchus.block); + OreDictionary.registerOre("ingredientEgg", ItemEggsColossosuchus.block); + OreDictionary.registerOre("listAllegg", ItemEggsColossosuchus.block); + OreDictionary.registerOre("objectEgg", ItemEggsColossosuchus.block); + } + + public static class ItemCustom extends ItemEggsPF { + public ItemCustom() { + super(); + setTranslationKey("pf_eggs_colossosuchus"); + setRegistryName("eggs_colossosuchus"); + setCreativeTab(TabLepidodendronMobile.tab); + } + + @Override + public String getMobString() { + return LepidodendronMod.MODID + ":prehistoric_flora_colossosuchus"; + } + } + +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemEggsDiandongosuchus.java b/src/main/java/net/lepidodendron/item/entities/ItemEggsDiandongosuchus.java index 2ef52684e8..78a51c3969 100644 --- a/src/main/java/net/lepidodendron/item/entities/ItemEggsDiandongosuchus.java +++ b/src/main/java/net/lepidodendron/item/entities/ItemEggsDiandongosuchus.java @@ -1,63 +1,63 @@ -// -//package net.lepidodendron.item.entities; -// -//import net.lepidodendron.ElementsLepidodendronMod; -//import net.lepidodendron.LepidodendronMod; -//import net.lepidodendron.LepidodendronSorter; -//import net.lepidodendron.creativetab.TabLepidodendronMobile; -//import net.minecraft.client.renderer.block.model.ModelResourceLocation; -//import net.minecraft.item.Item; -//import net.minecraftforge.client.event.ModelRegistryEvent; -//import net.minecraftforge.client.model.ModelLoader; -//import net.minecraftforge.fml.common.event.FMLInitializationEvent; -//import net.minecraftforge.fml.common.registry.GameRegistry; -//import net.minecraftforge.fml.relauncher.Side; -//import net.minecraftforge.fml.relauncher.SideOnly; -//import net.minecraftforge.oredict.OreDictionary; -// -//@ElementsLepidodendronMod.ModElement.Tag -//public class ItemEggsDiandongosuchus extends ElementsLepidodendronMod.ModElement { -// @GameRegistry.ObjectHolder("lepidodendron:eggs_diandongosuchus") -// public static final Item block = null; -// public ItemEggsDiandongosuchus(ElementsLepidodendronMod instance) { -// super(instance, LepidodendronSorter.eggs_diandongosuchus); -// } -// -// @Override -// public void initElements() { -// elements.items.add(() -> new ItemCustom()); -// } -// -// @SideOnly(Side.CLIENT) -// @Override -// public void registerModels(ModelRegistryEvent event) { -// ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/eggs_diandongosuchus", "inventory")); -// } -// -// @Override -// public void init(FMLInitializationEvent event) { -// super.init(event); -// OreDictionary.registerOre("bakingEgg", ItemEggsDiandongosuchus.block); -// OreDictionary.registerOre("egg", ItemEggsDiandongosuchus.block); -// OreDictionary.registerOre("eggCookable", ItemEggsDiandongosuchus.block); -// OreDictionary.registerOre("foodSimpleEgg", ItemEggsDiandongosuchus.block); -// OreDictionary.registerOre("ingredientEgg", ItemEggsDiandongosuchus.block); -// OreDictionary.registerOre("listAllegg", ItemEggsDiandongosuchus.block); -// OreDictionary.registerOre("objectEgg", ItemEggsDiandongosuchus.block); -// } -// -// public static class ItemCustom extends ItemEggsPF { -// public ItemCustom() { -// super(); -// setTranslationKey("pf_eggs_diandongosuchus"); -// setRegistryName("eggs_diandongosuchus"); -// setCreativeTab(TabLepidodendronMobile.tab); -// } -// -// @Override -// public String getMobString() { -// return LepidodendronMod.MODID + ":prehistoric_flora_diandongosuchus"; -// } -// } -// -//} + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemEggsDiandongosuchus extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:eggs_diandongosuchus") + public static final Item block = null; + public ItemEggsDiandongosuchus(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.eggs_diandongosuchus); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/eggs_diandongosuchus", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("bakingEgg", ItemEggsDiandongosuchus.block); + OreDictionary.registerOre("egg", ItemEggsDiandongosuchus.block); + OreDictionary.registerOre("eggCookable", ItemEggsDiandongosuchus.block); + OreDictionary.registerOre("foodSimpleEgg", ItemEggsDiandongosuchus.block); + OreDictionary.registerOre("ingredientEgg", ItemEggsDiandongosuchus.block); + OreDictionary.registerOre("listAllegg", ItemEggsDiandongosuchus.block); + OreDictionary.registerOre("objectEgg", ItemEggsDiandongosuchus.block); + } + + public static class ItemCustom extends ItemEggsPF { + public ItemCustom() { + super(); + setTranslationKey("pf_eggs_diandongosuchus"); + setRegistryName("eggs_diandongosuchus"); + setCreativeTab(TabLepidodendronMobile.tab); + } + + @Override + public String getMobString() { + return LepidodendronMod.MODID + ":prehistoric_flora_diandongosuchus"; + } + } + +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemEggsDyoplax.java b/src/main/java/net/lepidodendron/item/entities/ItemEggsDyoplax.java new file mode 100644 index 0000000000..08e3654b72 --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemEggsDyoplax.java @@ -0,0 +1,63 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemEggsDyoplax extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:eggs_dyoplax") + public static final Item block = null; + public ItemEggsDyoplax(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.eggs_dyoplax); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/eggs_dyoplax", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("bakingEgg", ItemEggsDyoplax.block); + OreDictionary.registerOre("egg", ItemEggsDyoplax.block); + OreDictionary.registerOre("eggCookable", ItemEggsDyoplax.block); + OreDictionary.registerOre("foodSimpleEgg", ItemEggsDyoplax.block); + OreDictionary.registerOre("ingredientEgg", ItemEggsDyoplax.block); + OreDictionary.registerOre("listAllegg", ItemEggsDyoplax.block); + OreDictionary.registerOre("objectEgg", ItemEggsDyoplax.block); + } + + public static class ItemCustom extends ItemEggsPF { + public ItemCustom() { + super(); + setTranslationKey("pf_eggs_dyoplax"); + setRegistryName("eggs_dyoplax"); + setCreativeTab(TabLepidodendronMobile.tab); + } + + @Override + public String getMobString() { + return LepidodendronMod.MODID + ":prehistoric_flora_dyoplax"; + } + } + +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemEggsErpetosuchus.java b/src/main/java/net/lepidodendron/item/entities/ItemEggsErpetosuchus.java new file mode 100644 index 0000000000..336b846d91 --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemEggsErpetosuchus.java @@ -0,0 +1,63 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemEggsErpetosuchus extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:eggs_erpetosuchus") + public static final Item block = null; + public ItemEggsErpetosuchus(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.eggs_erpetosuchus); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/eggs_erpetosuchus", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("bakingEgg", ItemEggsErpetosuchus.block); + OreDictionary.registerOre("egg", ItemEggsErpetosuchus.block); + OreDictionary.registerOre("eggCookable", ItemEggsErpetosuchus.block); + OreDictionary.registerOre("foodSimpleEgg", ItemEggsErpetosuchus.block); + OreDictionary.registerOre("ingredientEgg", ItemEggsErpetosuchus.block); + OreDictionary.registerOre("listAllegg", ItemEggsErpetosuchus.block); + OreDictionary.registerOre("objectEgg", ItemEggsErpetosuchus.block); + } + + public static class ItemCustom extends ItemEggsPF { + public ItemCustom() { + super(); + setTranslationKey("pf_eggs_erpetosuchus"); + setRegistryName("eggs_erpetosuchus"); + setCreativeTab(TabLepidodendronMobile.tab); + } + + @Override + public String getMobString() { + return LepidodendronMod.MODID + ":prehistoric_flora_erpetosuchus"; + } + } + +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemEggsGracilisuchus.java b/src/main/java/net/lepidodendron/item/entities/ItemEggsGracilisuchus.java new file mode 100644 index 0000000000..8e39638e60 --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemEggsGracilisuchus.java @@ -0,0 +1,63 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemEggsGracilisuchus extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:eggs_gracilisuchus") + public static final Item block = null; + public ItemEggsGracilisuchus(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.eggs_gracilisuchus); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/eggs_gracilisuchus", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("bakingEgg", ItemEggsGracilisuchus.block); + OreDictionary.registerOre("egg", ItemEggsGracilisuchus.block); + OreDictionary.registerOre("eggCookable", ItemEggsGracilisuchus.block); + OreDictionary.registerOre("foodSimpleEgg", ItemEggsGracilisuchus.block); + OreDictionary.registerOre("ingredientEgg", ItemEggsGracilisuchus.block); + OreDictionary.registerOre("listAllegg", ItemEggsGracilisuchus.block); + OreDictionary.registerOre("objectEgg", ItemEggsGracilisuchus.block); + } + + public static class ItemCustom extends ItemEggsPF { + public ItemCustom() { + super(); + setTranslationKey("pf_eggs_gracilisuchus"); + setRegistryName("eggs_gracilisuchus"); + setCreativeTab(TabLepidodendronMobile.tab); + } + + @Override + public String getMobString() { + return LepidodendronMod.MODID + ":prehistoric_flora_gracilisuchus"; + } + } + +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemEggsNundasuchus.java b/src/main/java/net/lepidodendron/item/entities/ItemEggsNundasuchus.java new file mode 100644 index 0000000000..f71f0be2b4 --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemEggsNundasuchus.java @@ -0,0 +1,63 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemEggsNundasuchus extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:eggs_nundasuchus") + public static final Item block = null; + public ItemEggsNundasuchus(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.eggs_nundasuchus); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/eggs_nundasuchus", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("bakingEgg", ItemEggsNundasuchus.block); + OreDictionary.registerOre("egg", ItemEggsNundasuchus.block); + OreDictionary.registerOre("eggCookable", ItemEggsNundasuchus.block); + OreDictionary.registerOre("foodSimpleEgg", ItemEggsNundasuchus.block); + OreDictionary.registerOre("ingredientEgg", ItemEggsNundasuchus.block); + OreDictionary.registerOre("listAllegg", ItemEggsNundasuchus.block); + OreDictionary.registerOre("objectEgg", ItemEggsNundasuchus.block); + } + + public static class ItemCustom extends ItemEggsPF { + public ItemCustom() { + super(); + setTranslationKey("pf_eggs_nundasuchus"); + setRegistryName("eggs_nundasuchus"); + setCreativeTab(TabLepidodendronMobile.tab); + } + + @Override + public String getMobString() { + return LepidodendronMod.MODID + ":prehistoric_flora_nundasuchus"; + } + } + +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemEggsParringtonia.java b/src/main/java/net/lepidodendron/item/entities/ItemEggsParringtonia.java new file mode 100644 index 0000000000..3795fe3a73 --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemEggsParringtonia.java @@ -0,0 +1,63 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemEggsParringtonia extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:eggs_parringtonia") + public static final Item block = null; + public ItemEggsParringtonia(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.eggs_parringtonia); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/eggs_parringtonia", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("bakingEgg", ItemEggsParringtonia.block); + OreDictionary.registerOre("egg", ItemEggsParringtonia.block); + OreDictionary.registerOre("eggCookable", ItemEggsParringtonia.block); + OreDictionary.registerOre("foodSimpleEgg", ItemEggsParringtonia.block); + OreDictionary.registerOre("ingredientEgg", ItemEggsParringtonia.block); + OreDictionary.registerOre("listAllegg", ItemEggsParringtonia.block); + OreDictionary.registerOre("objectEgg", ItemEggsParringtonia.block); + } + + public static class ItemCustom extends ItemEggsPF { + public ItemCustom() { + super(); + setTranslationKey("pf_eggs_parringtonia"); + setRegistryName("eggs_parringtonia"); + setCreativeTab(TabLepidodendronMobile.tab); + } + + @Override + public String getMobString() { + return LepidodendronMod.MODID + ":prehistoric_flora_parringtonia"; + } + } + +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemEggsParvosuchus.java b/src/main/java/net/lepidodendron/item/entities/ItemEggsParvosuchus.java new file mode 100644 index 0000000000..210a55f324 --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemEggsParvosuchus.java @@ -0,0 +1,63 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemEggsParvosuchus extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:eggs_parvosuchus") + public static final Item block = null; + public ItemEggsParvosuchus(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.eggs_parvosuchus); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/eggs_parvosuchus", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("bakingEgg", ItemEggsParvosuchus.block); + OreDictionary.registerOre("egg", ItemEggsParvosuchus.block); + OreDictionary.registerOre("eggCookable", ItemEggsParvosuchus.block); + OreDictionary.registerOre("foodSimpleEgg", ItemEggsParvosuchus.block); + OreDictionary.registerOre("ingredientEgg", ItemEggsParvosuchus.block); + OreDictionary.registerOre("listAllegg", ItemEggsParvosuchus.block); + OreDictionary.registerOre("objectEgg", ItemEggsParvosuchus.block); + } + + public static class ItemCustom extends ItemEggsPF { + public ItemCustom() { + super(); + setTranslationKey("pf_eggs_parvosuchus"); + setRegistryName("eggs_parvosuchus"); + setCreativeTab(TabLepidodendronMobile.tab); + } + + @Override + public String getMobString() { + return LepidodendronMod.MODID + ":prehistoric_flora_parvosuchus"; + } + } + +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemEggsProtosuchus.java b/src/main/java/net/lepidodendron/item/entities/ItemEggsProtosuchus.java new file mode 100644 index 0000000000..8420a79d8d --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemEggsProtosuchus.java @@ -0,0 +1,63 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemEggsProtosuchus extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:eggs_protosuchus") + public static final Item block = null; + public ItemEggsProtosuchus(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.eggs_protosuchus); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/eggs_protosuchus", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("bakingEgg", ItemEggsProtosuchus.block); + OreDictionary.registerOre("egg", ItemEggsProtosuchus.block); + OreDictionary.registerOre("eggCookable", ItemEggsProtosuchus.block); + OreDictionary.registerOre("foodSimpleEgg", ItemEggsProtosuchus.block); + OreDictionary.registerOre("ingredientEgg", ItemEggsProtosuchus.block); + OreDictionary.registerOre("listAllegg", ItemEggsProtosuchus.block); + OreDictionary.registerOre("objectEgg", ItemEggsProtosuchus.block); + } + + public static class ItemCustom extends ItemEggsPF { + public ItemCustom() { + super(); + setTranslationKey("pf_eggs_protosuchus"); + setRegistryName("eggs_protosuchus"); + setCreativeTab(TabLepidodendronMobile.tab); + } + + @Override + public String getMobString() { + return LepidodendronMod.MODID + ":prehistoric_flora_protosuchus"; + } + } + +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemEggsRiojasuchus.java b/src/main/java/net/lepidodendron/item/entities/ItemEggsRiojasuchus.java new file mode 100644 index 0000000000..9143b9fde0 --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemEggsRiojasuchus.java @@ -0,0 +1,63 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemEggsRiojasuchus extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:eggs_riojasuchus") + public static final Item block = null; + public ItemEggsRiojasuchus(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.eggs_riojasuchus); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/eggs_riojasuchus", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("bakingEgg", ItemEggsRiojasuchus.block); + OreDictionary.registerOre("egg", ItemEggsRiojasuchus.block); + OreDictionary.registerOre("eggCookable", ItemEggsRiojasuchus.block); + OreDictionary.registerOre("foodSimpleEgg", ItemEggsRiojasuchus.block); + OreDictionary.registerOre("ingredientEgg", ItemEggsRiojasuchus.block); + OreDictionary.registerOre("listAllegg", ItemEggsRiojasuchus.block); + OreDictionary.registerOre("objectEgg", ItemEggsRiojasuchus.block); + } + + public static class ItemCustom extends ItemEggsPF { + public ItemCustom() { + super(); + setTranslationKey("pf_eggs_riojasuchus"); + setRegistryName("eggs_riojasuchus"); + setCreativeTab(TabLepidodendronMobile.tab); + } + + @Override + public String getMobString() { + return LepidodendronMod.MODID + ":prehistoric_flora_riojasuchus"; + } + } + +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemEggsTarjadia.java b/src/main/java/net/lepidodendron/item/entities/ItemEggsTarjadia.java new file mode 100644 index 0000000000..3cdc35a38c --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemEggsTarjadia.java @@ -0,0 +1,63 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemEggsTarjadia extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:eggs_tarjadia") + public static final Item block = null; + public ItemEggsTarjadia(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.eggs_tarjadia); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/eggs_tarjadia", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("bakingEgg", ItemEggsTarjadia.block); + OreDictionary.registerOre("egg", ItemEggsTarjadia.block); + OreDictionary.registerOre("eggCookable", ItemEggsTarjadia.block); + OreDictionary.registerOre("foodSimpleEgg", ItemEggsTarjadia.block); + OreDictionary.registerOre("ingredientEgg", ItemEggsTarjadia.block); + OreDictionary.registerOre("listAllegg", ItemEggsTarjadia.block); + OreDictionary.registerOre("objectEgg", ItemEggsTarjadia.block); + } + + public static class ItemCustom extends ItemEggsPF { + public ItemCustom() { + super(); + setTranslationKey("pf_eggs_tarjadia"); + setRegistryName("eggs_tarjadia"); + setCreativeTab(TabLepidodendronMobile.tab); + } + + @Override + public String getMobString() { + return LepidodendronMod.MODID + ":prehistoric_flora_tarjadia"; + } + } + +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemEggsTicinosuchus.java b/src/main/java/net/lepidodendron/item/entities/ItemEggsTicinosuchus.java new file mode 100644 index 0000000000..19b6e42fed --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemEggsTicinosuchus.java @@ -0,0 +1,63 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemEggsTicinosuchus extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:eggs_ticinosuchus") + public static final Item block = null; + public ItemEggsTicinosuchus(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.eggs_ticinosuchus); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/eggs_ticinosuchus", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("bakingEgg", ItemEggsTicinosuchus.block); + OreDictionary.registerOre("egg", ItemEggsTicinosuchus.block); + OreDictionary.registerOre("eggCookable", ItemEggsTicinosuchus.block); + OreDictionary.registerOre("foodSimpleEgg", ItemEggsTicinosuchus.block); + OreDictionary.registerOre("ingredientEgg", ItemEggsTicinosuchus.block); + OreDictionary.registerOre("listAllegg", ItemEggsTicinosuchus.block); + OreDictionary.registerOre("objectEgg", ItemEggsTicinosuchus.block); + } + + public static class ItemCustom extends ItemEggsPF { + public ItemCustom() { + super(); + setTranslationKey("pf_eggs_ticinosuchus"); + setRegistryName("eggs_ticinosuchus"); + setCreativeTab(TabLepidodendronMobile.tab); + } + + @Override + public String getMobString() { + return LepidodendronMod.MODID + ":prehistoric_flora_ticinosuchus"; + } + } + +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemEggsTurfanosuchus.java b/src/main/java/net/lepidodendron/item/entities/ItemEggsTurfanosuchus.java new file mode 100644 index 0000000000..618d623f89 --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemEggsTurfanosuchus.java @@ -0,0 +1,63 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemEggsTurfanosuchus extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:eggs_turfanosuchus") + public static final Item block = null; + public ItemEggsTurfanosuchus(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.eggs_turfanosuchus); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/eggs_turfanosuchus", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("bakingEgg", ItemEggsTurfanosuchus.block); + OreDictionary.registerOre("egg", ItemEggsTurfanosuchus.block); + OreDictionary.registerOre("eggCookable", ItemEggsTurfanosuchus.block); + OreDictionary.registerOre("foodSimpleEgg", ItemEggsTurfanosuchus.block); + OreDictionary.registerOre("ingredientEgg", ItemEggsTurfanosuchus.block); + OreDictionary.registerOre("listAllegg", ItemEggsTurfanosuchus.block); + OreDictionary.registerOre("objectEgg", ItemEggsTurfanosuchus.block); + } + + public static class ItemCustom extends ItemEggsPF { + public ItemCustom() { + super(); + setTranslationKey("pf_eggs_turfanosuchus"); + setRegistryName("eggs_turfanosuchus"); + setCreativeTab(TabLepidodendronMobile.tab); + } + + @Override + public String getMobString() { + return LepidodendronMod.MODID + ":prehistoric_flora_turfanosuchus"; + } + } + +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemEggsYonghesuchus.java b/src/main/java/net/lepidodendron/item/entities/ItemEggsYonghesuchus.java new file mode 100644 index 0000000000..e72c04e44b --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemEggsYonghesuchus.java @@ -0,0 +1,63 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemEggsYonghesuchus extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:eggs_yonghesuchus") + public static final Item block = null; + public ItemEggsYonghesuchus(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.eggs_yonghesuchus); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/eggs_yonghesuchus", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("bakingEgg", ItemEggsYonghesuchus.block); + OreDictionary.registerOre("egg", ItemEggsYonghesuchus.block); + OreDictionary.registerOre("eggCookable", ItemEggsYonghesuchus.block); + OreDictionary.registerOre("foodSimpleEgg", ItemEggsYonghesuchus.block); + OreDictionary.registerOre("ingredientEgg", ItemEggsYonghesuchus.block); + OreDictionary.registerOre("listAllegg", ItemEggsYonghesuchus.block); + OreDictionary.registerOre("objectEgg", ItemEggsYonghesuchus.block); + } + + public static class ItemCustom extends ItemEggsPF { + public ItemCustom() { + super(); + setTranslationKey("pf_eggs_yonghesuchus"); + setRegistryName("eggs_yonghesuchus"); + setCreativeTab(TabLepidodendronMobile.tab); + } + + @Override + public String getMobString() { + return LepidodendronMod.MODID + ":prehistoric_flora_yonghesuchus"; + } + } + +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemErpetosuchusRaw.java b/src/main/java/net/lepidodendron/item/entities/ItemErpetosuchusRaw.java new file mode 100644 index 0000000000..6ce8de5996 --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemErpetosuchusRaw.java @@ -0,0 +1,54 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemErpetosuchusRaw extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:erpetosuchus_raw") + public static final Item block = null; + public ItemErpetosuchusRaw(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.erpetosuchus_raw); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemFoodCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/erpetosuchus_raw", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("mobdnaPNlepidodendron:prehistoric_flora_erpetosuchus", ItemErpetosuchusRaw.block); + OreDictionary.registerOre("listAllmeatraw", ItemErpetosuchusRaw.block); + OreDictionary.registerOre("pnfurnaceMeat", ItemErpetosuchusRaw.block); + OreDictionary.registerOre("pndietMeat", ItemErpetosuchusRaw.block); + } + + public static class ItemFoodCustom extends ItemPNTaxidermyItem { + public ItemFoodCustom() { + super(3, 0.3f, false); + setTranslationKey("pf_erpetosuchus_raw"); + setRegistryName("erpetosuchus_raw"); + setCreativeTab(TabLepidodendronMobile.tab); + setMaxStackSize(64); + } + } +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemGracilisuchusRaw.java b/src/main/java/net/lepidodendron/item/entities/ItemGracilisuchusRaw.java new file mode 100644 index 0000000000..0adaf4a90c --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemGracilisuchusRaw.java @@ -0,0 +1,54 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemGracilisuchusRaw extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:gracilisuchus_raw") + public static final Item block = null; + public ItemGracilisuchusRaw(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.gracilisuchus_raw); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemFoodCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/gracilisuchus_raw", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("mobdnaPNlepidodendron:prehistoric_flora_gracilisuchus", ItemGracilisuchusRaw.block); + OreDictionary.registerOre("listAllmeatraw", ItemGracilisuchusRaw.block); + OreDictionary.registerOre("pnfurnaceMeat", ItemGracilisuchusRaw.block); + OreDictionary.registerOre("pndietMeat", ItemGracilisuchusRaw.block); + } + + public static class ItemFoodCustom extends ItemPNTaxidermyItem { + public ItemFoodCustom() { + super(3, 0.3f, false); + setTranslationKey("pf_gracilisuchus_raw"); + setRegistryName("gracilisuchus_raw"); + setCreativeTab(TabLepidodendronMobile.tab); + setMaxStackSize(64); + } + } +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemNundasuchusRaw.java b/src/main/java/net/lepidodendron/item/entities/ItemNundasuchusRaw.java new file mode 100644 index 0000000000..38969f1ce5 --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemNundasuchusRaw.java @@ -0,0 +1,54 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemNundasuchusRaw extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:nundasuchus_raw") + public static final Item block = null; + public ItemNundasuchusRaw(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.nundasuchus_raw); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemFoodCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/nundasuchus_raw", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("mobdnaPNlepidodendron:prehistoric_flora_nundasuchus", ItemNundasuchusRaw.block); + OreDictionary.registerOre("listAllmeatraw", ItemNundasuchusRaw.block); + OreDictionary.registerOre("pnfurnaceMeat", ItemNundasuchusRaw.block); + OreDictionary.registerOre("pndietMeat", ItemNundasuchusRaw.block); + } + + public static class ItemFoodCustom extends ItemPNTaxidermyItem { + public ItemFoodCustom() { + super(3, 0.3f, false); + setTranslationKey("pf_nundasuchus_raw"); + setRegistryName("nundasuchus_raw"); + setCreativeTab(TabLepidodendronMobile.tab); + setMaxStackSize(64); + } + } +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemParringtoniaRaw.java b/src/main/java/net/lepidodendron/item/entities/ItemParringtoniaRaw.java new file mode 100644 index 0000000000..10842c6228 --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemParringtoniaRaw.java @@ -0,0 +1,54 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemParringtoniaRaw extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:parringtonia_raw") + public static final Item block = null; + public ItemParringtoniaRaw(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.parringtonia_raw); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemFoodCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/parringtonia_raw", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("mobdnaPNlepidodendron:prehistoric_flora_parringtonia", ItemParringtoniaRaw.block); + OreDictionary.registerOre("listAllmeatraw", ItemParringtoniaRaw.block); + OreDictionary.registerOre("pnfurnaceMeat", ItemParringtoniaRaw.block); + OreDictionary.registerOre("pndietMeat", ItemParringtoniaRaw.block); + } + + public static class ItemFoodCustom extends ItemPNTaxidermyItem { + public ItemFoodCustom() { + super(3, 0.3f, false); + setTranslationKey("pf_parringtonia_raw"); + setRegistryName("parringtonia_raw"); + setCreativeTab(TabLepidodendronMobile.tab); + setMaxStackSize(64); + } + } +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemParvosuchusRaw.java b/src/main/java/net/lepidodendron/item/entities/ItemParvosuchusRaw.java new file mode 100644 index 0000000000..e2da61419e --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemParvosuchusRaw.java @@ -0,0 +1,54 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemParvosuchusRaw extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:parvosuchus_raw") + public static final Item block = null; + public ItemParvosuchusRaw(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.parvosuchus_raw); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemFoodCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/parvosuchus_raw", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("mobdnaPNlepidodendron:prehistoric_flora_parvosuchus", ItemParvosuchusRaw.block); + OreDictionary.registerOre("listAllmeatraw", ItemParvosuchusRaw.block); + OreDictionary.registerOre("pnfurnaceMeat", ItemParvosuchusRaw.block); + OreDictionary.registerOre("pndietMeat", ItemParvosuchusRaw.block); + } + + public static class ItemFoodCustom extends ItemPNTaxidermyItem { + public ItemFoodCustom() { + super(3, 0.3f, false); + setTranslationKey("pf_parvosuchus_raw"); + setRegistryName("parvosuchus_raw"); + setCreativeTab(TabLepidodendronMobile.tab); + setMaxStackSize(64); + } + } +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemProtosuchusRaw.java b/src/main/java/net/lepidodendron/item/entities/ItemProtosuchusRaw.java new file mode 100644 index 0000000000..8e33efb7fc --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemProtosuchusRaw.java @@ -0,0 +1,54 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemProtosuchusRaw extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:protosuchus_raw") + public static final Item block = null; + public ItemProtosuchusRaw(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.protosuchus_raw); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemFoodCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/protosuchus_raw", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("mobdnaPNlepidodendron:prehistoric_flora_protosuchus", ItemProtosuchusRaw.block); + OreDictionary.registerOre("listAllmeatraw", ItemProtosuchusRaw.block); + OreDictionary.registerOre("pnfurnaceMeat", ItemProtosuchusRaw.block); + OreDictionary.registerOre("pndietMeat", ItemProtosuchusRaw.block); + } + + public static class ItemFoodCustom extends ItemPNTaxidermyItem { + public ItemFoodCustom() { + super(3, 0.3f, false); + setTranslationKey("pf_protosuchus_raw"); + setRegistryName("protosuchus_raw"); + setCreativeTab(TabLepidodendronMobile.tab); + setMaxStackSize(64); + } + } +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemRiojasuchusRaw.java b/src/main/java/net/lepidodendron/item/entities/ItemRiojasuchusRaw.java new file mode 100644 index 0000000000..da35cdd220 --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemRiojasuchusRaw.java @@ -0,0 +1,54 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemRiojasuchusRaw extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:riojasuchus_raw") + public static final Item block = null; + public ItemRiojasuchusRaw(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.riojasuchus_raw); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemFoodCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/riojasuchus_raw", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("mobdnaPNlepidodendron:prehistoric_flora_riojasuchus", ItemRiojasuchusRaw.block); + OreDictionary.registerOre("listAllmeatraw", ItemRiojasuchusRaw.block); + OreDictionary.registerOre("pnfurnaceMeat", ItemRiojasuchusRaw.block); + OreDictionary.registerOre("pndietMeat", ItemRiojasuchusRaw.block); + } + + public static class ItemFoodCustom extends ItemPNTaxidermyItem { + public ItemFoodCustom() { + super(3, 0.3f, false); + setTranslationKey("pf_riojasuchus_raw"); + setRegistryName("riojasuchus_raw"); + setCreativeTab(TabLepidodendronMobile.tab); + setMaxStackSize(64); + } + } +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemTarjadiaRaw.java b/src/main/java/net/lepidodendron/item/entities/ItemTarjadiaRaw.java new file mode 100644 index 0000000000..1cc91c5585 --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemTarjadiaRaw.java @@ -0,0 +1,54 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemTarjadiaRaw extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:tarjadia_raw") + public static final Item block = null; + public ItemTarjadiaRaw(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.tarjadia_raw); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemFoodCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/tarjadia_raw", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("mobdnaPNlepidodendron:prehistoric_flora_tarjadia", ItemTarjadiaRaw.block); + OreDictionary.registerOre("listAllmeatraw", ItemTarjadiaRaw.block); + OreDictionary.registerOre("pnfurnaceMeat", ItemTarjadiaRaw.block); + OreDictionary.registerOre("pndietMeat", ItemTarjadiaRaw.block); + } + + public static class ItemFoodCustom extends ItemPNTaxidermyItem { + public ItemFoodCustom() { + super(3, 0.3f, false); + setTranslationKey("pf_tarjadia_raw"); + setRegistryName("tarjadia_raw"); + setCreativeTab(TabLepidodendronMobile.tab); + setMaxStackSize(64); + } + } +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemTicinosuchusRaw.java b/src/main/java/net/lepidodendron/item/entities/ItemTicinosuchusRaw.java new file mode 100644 index 0000000000..f034e2c7fd --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemTicinosuchusRaw.java @@ -0,0 +1,54 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemTicinosuchusRaw extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:ticinosuchus_raw") + public static final Item block = null; + public ItemTicinosuchusRaw(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.ticinosuchus_raw); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemFoodCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/ticinosuchus_raw", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("mobdnaPNlepidodendron:prehistoric_flora_ticinosuchus", ItemTicinosuchusRaw.block); + OreDictionary.registerOre("listAllmeatraw", ItemTicinosuchusRaw.block); + OreDictionary.registerOre("pnfurnaceMeat", ItemTicinosuchusRaw.block); + OreDictionary.registerOre("pndietMeat", ItemTicinosuchusRaw.block); + } + + public static class ItemFoodCustom extends ItemPNTaxidermyItem { + public ItemFoodCustom() { + super(3, 0.3f, false); + setTranslationKey("pf_ticinosuchus_raw"); + setRegistryName("ticinosuchus_raw"); + setCreativeTab(TabLepidodendronMobile.tab); + setMaxStackSize(64); + } + } +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemTurfanosuchusRaw.java b/src/main/java/net/lepidodendron/item/entities/ItemTurfanosuchusRaw.java new file mode 100644 index 0000000000..3d18ed7ccb --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemTurfanosuchusRaw.java @@ -0,0 +1,54 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemTurfanosuchusRaw extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:turfanosuchus_raw") + public static final Item block = null; + public ItemTurfanosuchusRaw(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.turfanosuchus_raw); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemFoodCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/turfanosuchus_raw", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("mobdnaPNlepidodendron:prehistoric_flora_turfanosuchus", ItemTurfanosuchusRaw.block); + OreDictionary.registerOre("listAllmeatraw", ItemTurfanosuchusRaw.block); + OreDictionary.registerOre("pnfurnaceMeat", ItemTurfanosuchusRaw.block); + OreDictionary.registerOre("pndietMeat", ItemTurfanosuchusRaw.block); + } + + public static class ItemFoodCustom extends ItemPNTaxidermyItem { + public ItemFoodCustom() { + super(3, 0.3f, false); + setTranslationKey("pf_turfanosuchus_raw"); + setRegistryName("turfanosuchus_raw"); + setCreativeTab(TabLepidodendronMobile.tab); + setMaxStackSize(64); + } + } +} diff --git a/src/main/java/net/lepidodendron/item/entities/ItemYonghesuchusRaw.java b/src/main/java/net/lepidodendron/item/entities/ItemYonghesuchusRaw.java new file mode 100644 index 0000000000..0fca03efa3 --- /dev/null +++ b/src/main/java/net/lepidodendron/item/entities/ItemYonghesuchusRaw.java @@ -0,0 +1,54 @@ + +package net.lepidodendron.item.entities; + +import net.lepidodendron.ElementsLepidodendronMod; +import net.lepidodendron.LepidodendronSorter; +import net.lepidodendron.creativetab.TabLepidodendronMobile; +import net.minecraft.client.renderer.block.model.ModelResourceLocation; +import net.minecraft.item.Item; +import net.minecraftforge.client.event.ModelRegistryEvent; +import net.minecraftforge.client.model.ModelLoader; +import net.minecraftforge.fml.common.event.FMLInitializationEvent; +import net.minecraftforge.fml.common.registry.GameRegistry; +import net.minecraftforge.fml.relauncher.Side; +import net.minecraftforge.fml.relauncher.SideOnly; +import net.minecraftforge.oredict.OreDictionary; + +@ElementsLepidodendronMod.ModElement.Tag +public class ItemYonghesuchusRaw extends ElementsLepidodendronMod.ModElement { + @GameRegistry.ObjectHolder("lepidodendron:yonghesuchus_raw") + public static final Item block = null; + public ItemYonghesuchusRaw(ElementsLepidodendronMod instance) { + super(instance, LepidodendronSorter.yonghesuchus_raw); + } + + @Override + public void initElements() { + elements.items.add(() -> new ItemFoodCustom()); + } + + @SideOnly(Side.CLIENT) + @Override + public void registerModels(ModelRegistryEvent event) { + ModelLoader.setCustomModelResourceLocation(block, 0, new ModelResourceLocation("lepidodendron:entities/yonghesuchus_raw", "inventory")); + } + + @Override + public void init(FMLInitializationEvent event) { + super.init(event); + OreDictionary.registerOre("mobdnaPNlepidodendron:prehistoric_flora_yonghesuchus", ItemYonghesuchusRaw.block); + OreDictionary.registerOre("listAllmeatraw", ItemYonghesuchusRaw.block); + OreDictionary.registerOre("pnfurnaceMeat", ItemYonghesuchusRaw.block); + OreDictionary.registerOre("pndietMeat", ItemYonghesuchusRaw.block); + } + + public static class ItemFoodCustom extends ItemPNTaxidermyItem { + public ItemFoodCustom() { + super(3, 0.3f, false); + setTranslationKey("pf_yonghesuchus_raw"); + setRegistryName("yonghesuchus_raw"); + setCreativeTab(TabLepidodendronMobile.tab); + setMaxStackSize(64); + } + } +} diff --git a/src/main/java/net/lepidodendron/util/AcidBathOutputMobs.java b/src/main/java/net/lepidodendron/util/AcidBathOutputMobs.java index a37e21142b..b83b187763 100644 --- a/src/main/java/net/lepidodendron/util/AcidBathOutputMobs.java +++ b/src/main/java/net/lepidodendron/util/AcidBathOutputMobs.java @@ -1226,6 +1226,19 @@ public static String[] getTriassicCleanedFossilsMobs() { (net.minecraftforge.fml.common.registry.EntityRegistry.getEntry(EntityPrehistoricFloraKuehneosaurus.class)).getRegistryName().toString(), (net.minecraftforge.fml.common.registry.EntityRegistry.getEntry(EntityPrehistoricFloraOzimek.class)).getRegistryName().toString(), (net.minecraftforge.fml.common.registry.EntityRegistry.getEntry(EntityPrehistoricFloraSharovipteryx.class)).getRegistryName().toString(), + (net.minecraftforge.fml.common.registry.EntityRegistry.getEntry(EntityPrehistoricFloraColossosuchus.class)).getRegistryName().toString(), + (net.minecraftforge.fml.common.registry.EntityRegistry.getEntry(EntityPrehistoricFloraRiojasuchus.class)).getRegistryName().toString(), + (net.minecraftforge.fml.common.registry.EntityRegistry.getEntry(EntityPrehistoricFloraNundasuchus.class)).getRegistryName().toString(), + (net.minecraftforge.fml.common.registry.EntityRegistry.getEntry(EntityPrehistoricFloraDiandongosuchus.class)).getRegistryName().toString(), + (net.minecraftforge.fml.common.registry.EntityRegistry.getEntry(EntityPrehistoricFloraTicinosuchus.class)).getRegistryName().toString(), + (net.minecraftforge.fml.common.registry.EntityRegistry.getEntry(EntityPrehistoricFloraTarjadia.class)).getRegistryName().toString(), + (net.minecraftforge.fml.common.registry.EntityRegistry.getEntry(EntityPrehistoricFloraParringtonia.class)).getRegistryName().toString(), + (net.minecraftforge.fml.common.registry.EntityRegistry.getEntry(EntityPrehistoricFloraDyoplax.class)).getRegistryName().toString(), + (net.minecraftforge.fml.common.registry.EntityRegistry.getEntry(EntityPrehistoricFloraErpetosuchus.class)).getRegistryName().toString(), +// (net.minecraftforge.fml.common.registry.EntityRegistry.getEntry(EntityPrehistoricFloraYonghesuchus.class)).getRegistryName().toString(), +// (net.minecraftforge.fml.common.registry.EntityRegistry.getEntry(EntityPrehistoricFloraParvosuchus.class)).getRegistryName().toString(), +// (net.minecraftforge.fml.common.registry.EntityRegistry.getEntry(EntityPrehistoricFloraGracilisuchus.class)).getRegistryName().toString(), +// (net.minecraftforge.fml.common.registry.EntityRegistry.getEntry(EntityPrehistoricFloraTurfanosuchus.class)).getRegistryName().toString(), @@ -1523,6 +1536,7 @@ public static String[] getJurassicCleanedFossilsMobs() { (net.minecraftforge.fml.common.registry.EntityRegistry.getEntry(EntityPrehistoricFloraPlesioblattogryllus.class)).getRegistryName().toString(), (net.minecraftforge.fml.common.registry.EntityRegistry.getEntry(EntityPrehistoricFloraMarshosaurus.class)).getRegistryName().toString(), (net.minecraftforge.fml.common.registry.EntityRegistry.getEntry(EntityPrehistoricFloraSpicomellus.class)).getRegistryName().toString(), + (net.minecraftforge.fml.common.registry.EntityRegistry.getEntry(EntityPrehistoricFloraProtosuchus.class)).getRegistryName().toString(), (net.minecraftforge.fml.common.registry.EntityRegistry.getEntry(EntityPrehistoricFloraHauffiosaurus.class)).getRegistryName().toString(), }; diff --git a/src/main/resources/assets/lepidodendron/loot_tables/entity/colossosuchus.json b/src/main/resources/assets/lepidodendron/loot_tables/entity/colossosuchus.json new file mode 100644 index 0000000000..23bd8566bc --- /dev/null +++ b/src/main/resources/assets/lepidodendron/loot_tables/entity/colossosuchus.json @@ -0,0 +1,44 @@ +{ + "pools": [ + { + "name": "colossosuchus", + "rolls": 1, + "entries": [ + { + "type": "item", + "name": "lepidodendron:colossosuchus_raw", + "weight": 1, + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 1 + } + } + ] + } + ] + }, + { + "name": "colossosuchus", + "rolls": 1, + "entries": [ + { + "type": "item", + "name": "minecraft:bone", + "weight": 1, + "functions": [ + { + "function": "set_count", + "count": { + "min": 0, + "max": 1 + } + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/lepidodendron/loot_tables/entity/colossosuchus_young.json b/src/main/resources/assets/lepidodendron/loot_tables/entity/colossosuchus_young.json new file mode 100644 index 0000000000..584e6cbd3e --- /dev/null +++ b/src/main/resources/assets/lepidodendron/loot_tables/entity/colossosuchus_young.json @@ -0,0 +1,24 @@ +{ + "pools": [ + { + "name": "colossosuchus", + "rolls": 1, + "entries": [ + { + "type": "item", + "name": "lepidodendron:colossosuchus_raw", + "weight": 1, + "functions": [ + { + "function": "set_count", + "count": { + "min": 0, + "max": 1 + } + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/lepidodendron/loot_tables/entity/diandongosuchus.json b/src/main/resources/assets/lepidodendron/loot_tables/entity/diandongosuchus.json new file mode 100644 index 0000000000..f06e3adf4a --- /dev/null +++ b/src/main/resources/assets/lepidodendron/loot_tables/entity/diandongosuchus.json @@ -0,0 +1,24 @@ +{ + "pools": [ + { + "name": "diandongosuchus", + "rolls": 1, + "entries": [ + { + "type": "item", + "name": "lepidodendron:diandongosuchus_raw", + "weight": 1, + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 1 + } + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/lepidodendron/loot_tables/entity/dyoplax.json b/src/main/resources/assets/lepidodendron/loot_tables/entity/dyoplax.json new file mode 100644 index 0000000000..bcb93c7f21 --- /dev/null +++ b/src/main/resources/assets/lepidodendron/loot_tables/entity/dyoplax.json @@ -0,0 +1,24 @@ +{ + "pools": [ + { + "name": "dyoplax", + "rolls": 1, + "entries": [ + { + "type": "item", + "name": "lepidodendron:dyoplax_raw", + "weight": 1, + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 1 + } + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/lepidodendron/loot_tables/entity/erpetosuchus.json b/src/main/resources/assets/lepidodendron/loot_tables/entity/erpetosuchus.json new file mode 100644 index 0000000000..bf5a1210c2 --- /dev/null +++ b/src/main/resources/assets/lepidodendron/loot_tables/entity/erpetosuchus.json @@ -0,0 +1,24 @@ +{ + "pools": [ + { + "name": "erpetosuchus", + "rolls": 1, + "entries": [ + { + "type": "item", + "name": "lepidodendron:erpetosuchus_raw", + "weight": 1, + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 1 + } + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/lepidodendron/loot_tables/entity/nundasuchus.json b/src/main/resources/assets/lepidodendron/loot_tables/entity/nundasuchus.json new file mode 100644 index 0000000000..fa6ebd9019 --- /dev/null +++ b/src/main/resources/assets/lepidodendron/loot_tables/entity/nundasuchus.json @@ -0,0 +1,24 @@ +{ + "pools": [ + { + "name": "nundasuchus", + "rolls": 1, + "entries": [ + { + "type": "item", + "name": "lepidodendron:nundasuchus_raw", + "weight": 1, + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 1 + } + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/lepidodendron/loot_tables/entity/parringtonia.json b/src/main/resources/assets/lepidodendron/loot_tables/entity/parringtonia.json new file mode 100644 index 0000000000..a32aa58014 --- /dev/null +++ b/src/main/resources/assets/lepidodendron/loot_tables/entity/parringtonia.json @@ -0,0 +1,24 @@ +{ + "pools": [ + { + "name": "parringtonia", + "rolls": 1, + "entries": [ + { + "type": "item", + "name": "lepidodendron:parringtonia_raw", + "weight": 1, + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 1 + } + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/lepidodendron/loot_tables/entity/protosuchus.json b/src/main/resources/assets/lepidodendron/loot_tables/entity/protosuchus.json new file mode 100644 index 0000000000..aad64c4f3a --- /dev/null +++ b/src/main/resources/assets/lepidodendron/loot_tables/entity/protosuchus.json @@ -0,0 +1,24 @@ +{ + "pools": [ + { + "name": "protosuchus", + "rolls": 1, + "entries": [ + { + "type": "item", + "name": "lepidodendron:protosuchus_raw", + "weight": 1, + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 1 + } + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/lepidodendron/loot_tables/entity/riojasuchus.json b/src/main/resources/assets/lepidodendron/loot_tables/entity/riojasuchus.json new file mode 100644 index 0000000000..a82e7597af --- /dev/null +++ b/src/main/resources/assets/lepidodendron/loot_tables/entity/riojasuchus.json @@ -0,0 +1,24 @@ +{ + "pools": [ + { + "name": "riojasuchus", + "rolls": 1, + "entries": [ + { + "type": "item", + "name": "lepidodendron:riojasuchus_raw", + "weight": 1, + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 1 + } + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/lepidodendron/loot_tables/entity/tarjadia.json b/src/main/resources/assets/lepidodendron/loot_tables/entity/tarjadia.json new file mode 100644 index 0000000000..5507595d35 --- /dev/null +++ b/src/main/resources/assets/lepidodendron/loot_tables/entity/tarjadia.json @@ -0,0 +1,44 @@ +{ + "pools": [ + { + "name": "tarjadia", + "rolls": 1, + "entries": [ + { + "type": "item", + "name": "lepidodendron:tarjadia_raw", + "weight": 1, + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 1 + } + } + ] + } + ] + }, + { + "name": "tarjadia", + "rolls": 1, + "entries": [ + { + "type": "item", + "name": "minecraft:bone", + "weight": 1, + "functions": [ + { + "function": "set_count", + "count": { + "min": 0, + "max": 1 + } + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/lepidodendron/loot_tables/entity/ticinosuchus.json b/src/main/resources/assets/lepidodendron/loot_tables/entity/ticinosuchus.json new file mode 100644 index 0000000000..d1ef7f96cc --- /dev/null +++ b/src/main/resources/assets/lepidodendron/loot_tables/entity/ticinosuchus.json @@ -0,0 +1,44 @@ +{ + "pools": [ + { + "name": "ticinosuchus", + "rolls": 1, + "entries": [ + { + "type": "item", + "name": "lepidodendron:ticinosuchus_raw", + "weight": 1, + "functions": [ + { + "function": "set_count", + "count": { + "min": 1, + "max": 1 + } + } + ] + } + ] + }, + { + "name": "ticinosuchus", + "rolls": 1, + "entries": [ + { + "type": "item", + "name": "minecraft:bone", + "weight": 1, + "functions": [ + { + "function": "set_count", + "count": { + "min": 0, + "max": 1 + } + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/lepidodendron/loot_tables/entity/ticinosuchus_young.json b/src/main/resources/assets/lepidodendron/loot_tables/entity/ticinosuchus_young.json new file mode 100644 index 0000000000..bde7acaf3a --- /dev/null +++ b/src/main/resources/assets/lepidodendron/loot_tables/entity/ticinosuchus_young.json @@ -0,0 +1,24 @@ +{ + "pools": [ + { + "name": "ticinosuchus", + "rolls": 1, + "entries": [ + { + "type": "item", + "name": "lepidodendron:ticinosuchus_raw", + "weight": 1, + "functions": [ + { + "function": "set_count", + "count": { + "min": 0, + "max": 1 + } + } + ] + } + ] + } + ] +} \ No newline at end of file diff --git a/src/main/resources/assets/lepidodendron/models/item/entities/eggs_colossosuchus.json b/src/main/resources/assets/lepidodendron/models/item/entities/eggs_colossosuchus.json new file mode 100644 index 0000000000..0702a563d7 --- /dev/null +++ b/src/main/resources/assets/lepidodendron/models/item/entities/eggs_colossosuchus.json @@ -0,0 +1,6 @@ +{ + "parent": "lepidodendron:block/eggs_large", + "textures": { + "texture": "lepidodendron:entities/eggs_colossosuchus" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/lepidodendron/models/item/entities/eggs_diandongosuchus.json b/src/main/resources/assets/lepidodendron/models/item/entities/eggs_diandongosuchus.json index 24fcdd50b3..43fa01644e 100644 --- a/src/main/resources/assets/lepidodendron/models/item/entities/eggs_diandongosuchus.json +++ b/src/main/resources/assets/lepidodendron/models/item/entities/eggs_diandongosuchus.json @@ -1,6 +1,6 @@ { - "parent": "lepidodendron:block/eggs_small", - "textures": { - "texture": "lepidodendron:entities/eggs_diandongosuchus" - } + "parent": "lepidodendron:block/eggs_small", + "textures": { + "texture": "lepidodendron:entities/eggs_diandongosuchus" + } } \ No newline at end of file diff --git a/src/main/resources/assets/lepidodendron/models/item/entities/eggs_dyoplax.json b/src/main/resources/assets/lepidodendron/models/item/entities/eggs_dyoplax.json new file mode 100644 index 0000000000..ccfbd56387 --- /dev/null +++ b/src/main/resources/assets/lepidodendron/models/item/entities/eggs_dyoplax.json @@ -0,0 +1,6 @@ +{ + "parent": "lepidodendron:block/eggs_small", + "textures": { + "texture": "lepidodendron:entities/eggs_dyoplax" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/lepidodendron/models/item/entities/eggs_erpetosuchus.json b/src/main/resources/assets/lepidodendron/models/item/entities/eggs_erpetosuchus.json new file mode 100644 index 0000000000..c69aae07ec --- /dev/null +++ b/src/main/resources/assets/lepidodendron/models/item/entities/eggs_erpetosuchus.json @@ -0,0 +1,6 @@ +{ + "parent": "lepidodendron:block/eggs_small", + "textures": { + "texture": "lepidodendron:entities/eggs_erpetosuchus" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/lepidodendron/models/item/entities/eggs_nundasuchus.json b/src/main/resources/assets/lepidodendron/models/item/entities/eggs_nundasuchus.json new file mode 100644 index 0000000000..78c7a1f309 --- /dev/null +++ b/src/main/resources/assets/lepidodendron/models/item/entities/eggs_nundasuchus.json @@ -0,0 +1,6 @@ +{ + "parent": "lepidodendron:block/eggs_small", + "textures": { + "texture": "lepidodendron:entities/eggs_nundasuchus" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/lepidodendron/models/item/entities/eggs_parringtonia.json b/src/main/resources/assets/lepidodendron/models/item/entities/eggs_parringtonia.json new file mode 100644 index 0000000000..a120543552 --- /dev/null +++ b/src/main/resources/assets/lepidodendron/models/item/entities/eggs_parringtonia.json @@ -0,0 +1,6 @@ +{ + "parent": "lepidodendron:block/eggs_small", + "textures": { + "texture": "lepidodendron:entities/eggs_parringtonia" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/lepidodendron/models/item/entities/eggs_protosuchus.json b/src/main/resources/assets/lepidodendron/models/item/entities/eggs_protosuchus.json new file mode 100644 index 0000000000..dfaaf677ce --- /dev/null +++ b/src/main/resources/assets/lepidodendron/models/item/entities/eggs_protosuchus.json @@ -0,0 +1,6 @@ +{ + "parent": "lepidodendron:block/eggs_small", + "textures": { + "texture": "lepidodendron:entities/eggs_protosuchus" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/lepidodendron/models/item/entities/eggs_riojasuchus.json b/src/main/resources/assets/lepidodendron/models/item/entities/eggs_riojasuchus.json new file mode 100644 index 0000000000..d806a4a76f --- /dev/null +++ b/src/main/resources/assets/lepidodendron/models/item/entities/eggs_riojasuchus.json @@ -0,0 +1,6 @@ +{ + "parent": "lepidodendron:block/eggs_small", + "textures": { + "texture": "lepidodendron:entities/eggs_riojasuchus" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/lepidodendron/models/item/entities/eggs_tarjadia.json b/src/main/resources/assets/lepidodendron/models/item/entities/eggs_tarjadia.json new file mode 100644 index 0000000000..2e0bfdf0e4 --- /dev/null +++ b/src/main/resources/assets/lepidodendron/models/item/entities/eggs_tarjadia.json @@ -0,0 +1,6 @@ +{ + "parent": "lepidodendron:block/eggs_small", + "textures": { + "texture": "lepidodendron:entities/eggs_tarjadia" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/lepidodendron/models/item/entities/eggs_ticinosuchus.json b/src/main/resources/assets/lepidodendron/models/item/entities/eggs_ticinosuchus.json new file mode 100644 index 0000000000..6ff9473304 --- /dev/null +++ b/src/main/resources/assets/lepidodendron/models/item/entities/eggs_ticinosuchus.json @@ -0,0 +1,6 @@ +{ + "parent": "lepidodendron:block/eggs_small", + "textures": { + "texture": "lepidodendron:entities/eggs_ticinosuchus" + } +} \ No newline at end of file diff --git a/src/main/resources/assets/lepidodendron/textures/entities/colossosuchus.png b/src/main/resources/assets/lepidodendron/textures/entities/colossosuchus.png new file mode 100644 index 0000000000..e2155f4a51 Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/colossosuchus.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/diandongosuchus.png b/src/main/resources/assets/lepidodendron/textures/entities/diandongosuchus.png new file mode 100644 index 0000000000..629c94bec0 Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/diandongosuchus.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/dyoplax.png b/src/main/resources/assets/lepidodendron/textures/entities/dyoplax.png new file mode 100644 index 0000000000..31f6dbc28a Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/dyoplax.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/eggs_colossosuchus.png b/src/main/resources/assets/lepidodendron/textures/entities/eggs_colossosuchus.png new file mode 100644 index 0000000000..fd37e909b0 Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/eggs_colossosuchus.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/eggs_dyoplax.png b/src/main/resources/assets/lepidodendron/textures/entities/eggs_dyoplax.png new file mode 100644 index 0000000000..8d0512a6c8 Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/eggs_dyoplax.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/eggs_erpetosuchus.png b/src/main/resources/assets/lepidodendron/textures/entities/eggs_erpetosuchus.png new file mode 100644 index 0000000000..8d0512a6c8 Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/eggs_erpetosuchus.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/eggs_gracilisuchus.png b/src/main/resources/assets/lepidodendron/textures/entities/eggs_gracilisuchus.png new file mode 100644 index 0000000000..8d0512a6c8 Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/eggs_gracilisuchus.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/eggs_lupeosaurus.png b/src/main/resources/assets/lepidodendron/textures/entities/eggs_lupeosaurus.png new file mode 100644 index 0000000000..83f3d0af30 Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/eggs_lupeosaurus.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/eggs_nundasuchus.png b/src/main/resources/assets/lepidodendron/textures/entities/eggs_nundasuchus.png new file mode 100644 index 0000000000..a1f8f3e740 Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/eggs_nundasuchus.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/eggs_parringtonia.png b/src/main/resources/assets/lepidodendron/textures/entities/eggs_parringtonia.png new file mode 100644 index 0000000000..8d0512a6c8 Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/eggs_parringtonia.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/eggs_parvosuchus.png b/src/main/resources/assets/lepidodendron/textures/entities/eggs_parvosuchus.png new file mode 100644 index 0000000000..87b689b12f Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/eggs_parvosuchus.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/eggs_protosuchus.png b/src/main/resources/assets/lepidodendron/textures/entities/eggs_protosuchus.png new file mode 100644 index 0000000000..16680aad23 Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/eggs_protosuchus.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/eggs_riojasuchus.png b/src/main/resources/assets/lepidodendron/textures/entities/eggs_riojasuchus.png new file mode 100644 index 0000000000..f8996b214f Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/eggs_riojasuchus.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/eggs_tarjadia.png b/src/main/resources/assets/lepidodendron/textures/entities/eggs_tarjadia.png new file mode 100644 index 0000000000..e61950c3b3 Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/eggs_tarjadia.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/eggs_ticinosuchus.png b/src/main/resources/assets/lepidodendron/textures/entities/eggs_ticinosuchus.png new file mode 100644 index 0000000000..2a19c6e787 Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/eggs_ticinosuchus.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/eggs_turfanosuchus.png b/src/main/resources/assets/lepidodendron/textures/entities/eggs_turfanosuchus.png new file mode 100644 index 0000000000..8d0512a6c8 Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/eggs_turfanosuchus.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/eggs_yonghesuchus.png b/src/main/resources/assets/lepidodendron/textures/entities/eggs_yonghesuchus.png new file mode 100644 index 0000000000..8d0512a6c8 Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/eggs_yonghesuchus.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/erpetosuchus.png b/src/main/resources/assets/lepidodendron/textures/entities/erpetosuchus.png new file mode 100644 index 0000000000..2a593dc072 Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/erpetosuchus.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/malawisuchus.png b/src/main/resources/assets/lepidodendron/textures/entities/malawisuchus.png index 0c27e8855a..e430a26b28 100644 Binary files a/src/main/resources/assets/lepidodendron/textures/entities/malawisuchus.png and b/src/main/resources/assets/lepidodendron/textures/entities/malawisuchus.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/nundasuchus.png b/src/main/resources/assets/lepidodendron/textures/entities/nundasuchus.png new file mode 100644 index 0000000000..9d745850c0 Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/nundasuchus.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/parringtonia.png b/src/main/resources/assets/lepidodendron/textures/entities/parringtonia.png new file mode 100644 index 0000000000..f168e3b899 Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/parringtonia.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/protosuchus.png b/src/main/resources/assets/lepidodendron/textures/entities/protosuchus.png new file mode 100644 index 0000000000..6db1c57be5 Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/protosuchus.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/riojasuchus.png b/src/main/resources/assets/lepidodendron/textures/entities/riojasuchus.png new file mode 100644 index 0000000000..e6fbc18207 Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/riojasuchus.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/tarjadia.png b/src/main/resources/assets/lepidodendron/textures/entities/tarjadia.png new file mode 100644 index 0000000000..df37f2eeed Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/tarjadia.png differ diff --git a/src/main/resources/assets/lepidodendron/textures/entities/ticinosuchus.png b/src/main/resources/assets/lepidodendron/textures/entities/ticinosuchus.png new file mode 100644 index 0000000000..75bae63b56 Binary files /dev/null and b/src/main/resources/assets/lepidodendron/textures/entities/ticinosuchus.png differ