protected void initEntityAI() { this.tasks.addTask(0, new EntityAISwimming(this)); this.tasks.addTask(1, new EntityAIAvoidEntity(this, EntityZombie.class, 8.0F, 0.6D, 0.6D)); this.tasks.addTask(1, new EntityAIAvoidEntity(this, EntityEvoker.class, 12.0F, 0.8D, 0.8D)); this.tasks.addTask(1, new EntityAIAvoidEntity(this, EntityVindicator.class, 8.0F, 0.8D, 0.8D)); this.tasks.addTask(1, new EntityAIAvoidEntity(this, EntityVex.class, 8.0F, 0.6D, 0.6D)); this.tasks.addTask(1, new EntityAITradePlayer(this)); this.tasks.addTask(1, new EntityAILookAtTradePlayer(this)); this.tasks.addTask(2, new EntityAIMoveIndoors(this)); this.tasks.addTask(3, new EntityAIRestrictOpenDoor(this)); this.tasks.addTask(4, new EntityAIOpenDoor(this, true)); this.tasks.addTask(5, new EntityAIMoveTowardsRestriction(this, 0.6D)); this.tasks.addTask(6, new EntityAIVillagerMate(this)); this.tasks.addTask(7, new EntityAIFollowGolem(this)); this.tasks.addTask(9, new EntityAIWatchClosest2(this, EntityPlayer.class, 3.0F, 1.0F)); this.tasks.addTask(9, new EntityAIVillagerInteract(this)); this.tasks.addTask(9, new EntityAIWanderAvoidWater(this, 0.6D)); this.tasks.addTask(10, new EntityAIWatchClosest(this, EntityLiving.class, 8.0F)); }
public RenderVindicator(RenderManager p_i47189_1_) { super(p_i47189_1_, new ModelVindicator(0.0F), 0.5F); this.addLayer(new LayerHeldItem(this) { public void doRenderLayer(EntityLivingBase entitylivingbaseIn, float limbSwing, float limbSwingAmount, float partialTicks, float ageInTicks, float netHeadYaw, float headPitch, float scale) { if (((EntityVindicator)entitylivingbaseIn).func_190639_o()) { super.doRenderLayer(entitylivingbaseIn, limbSwing, limbSwingAmount, partialTicks, ageInTicks, netHeadYaw, headPitch, scale); } } protected void func_191361_a(EnumHandSide p_191361_1_) { ((ModelIllager)this.livingEntityRenderer.getMainModel()).func_191216_a(p_191361_1_).postRender(0.0625F); } }); }
/** * Sets the models various rotation angles then renders the model. */ public void render(Entity entityIn, float limbSwing, float limbSwingAmount, float ageInTicks, float netHeadYaw, float headPitch, float scale) { super.render(entityIn, limbSwing, limbSwingAmount, ageInTicks, netHeadYaw, headPitch, scale); EntityVindicator entityvindicator = (EntityVindicator)entityIn; if (entityvindicator.func_190639_o()) { this.field_191223_g.render(scale); this.field_191224_h.render(scale); } else { this.field_191219_c.render(scale); } }
@Override protected void addLayers() { this.addLayer(new LayerHeldPonyItem(this) { @Override public void doPonyRender(EntityLivingBase vindicator, float limbSwing, float limbSwingAmount, float partialTicks, float ageInTicks, float netHeadYaw, float headPitch, float scale) { if (((EntityVindicator) vindicator).isAggressive()) { super.doPonyRender(vindicator, limbSwing, limbSwingAmount, partialTicks, ageInTicks, netHeadYaw, headPitch, scale); } } @Override protected void translateToHand(EnumHandSide side) { ((ModelIllagerPony) this.getRenderer().getMainModel()).getArm(side).postRender(0.0625F); } }); }
private void saveCurrentRenderers(RenderManager rm) { // villagers saveRenderer(rm, EntityVillager.class); saveRenderer(rm, EntityZombieVillager.class); // zombies saveRenderer(rm, EntityZombie.class); saveRenderer(rm, EntityHusk.class); // pig zombie saveRenderer(rm, EntityPigZombie.class); // skeletons saveRenderer(rm, EntitySkeleton.class); saveRenderer(rm, EntityStray.class); saveRenderer(rm, EntityWitherSkeleton.class); // illagers saveRenderer(rm, EntityVex.class); saveRenderer(rm, EntityEvoker.class); saveRenderer(rm, EntityVindicator.class); saveRenderer(rm, EntityIllusionIllager.class); }
public ModelAdapterVindicator() { super(EntityVindicator.class, "vindication_illager", 0.5F); }
protected void handleDataMarker(String p_186175_1_, BlockPos p_186175_2_, World p_186175_3_, Random p_186175_4_, StructureBoundingBox p_186175_5_) { if (p_186175_1_.startsWith("Chest")) { Rotation rotation = this.placeSettings.getRotation(); IBlockState iblockstate = Blocks.CHEST.getDefaultState(); if ("ChestWest".equals(p_186175_1_)) { iblockstate = iblockstate.withProperty(BlockChest.FACING, rotation.rotate(EnumFacing.WEST)); } else if ("ChestEast".equals(p_186175_1_)) { iblockstate = iblockstate.withProperty(BlockChest.FACING, rotation.rotate(EnumFacing.EAST)); } else if ("ChestSouth".equals(p_186175_1_)) { iblockstate = iblockstate.withProperty(BlockChest.FACING, rotation.rotate(EnumFacing.SOUTH)); } else if ("ChestNorth".equals(p_186175_1_)) { iblockstate = iblockstate.withProperty(BlockChest.FACING, rotation.rotate(EnumFacing.NORTH)); } this.func_191080_a(p_186175_3_, p_186175_5_, p_186175_4_, p_186175_2_, LootTableList.field_191192_o, iblockstate); } else if ("Mage".equals(p_186175_1_)) { EntityEvoker entityevoker = new EntityEvoker(p_186175_3_); entityevoker.enablePersistence(); entityevoker.moveToBlockPosAndAngles(p_186175_2_, 0.0F, 0.0F); p_186175_3_.spawnEntityInWorld(entityevoker); p_186175_3_.setBlockState(p_186175_2_, Blocks.AIR.getDefaultState(), 2); } else if ("Warrior".equals(p_186175_1_)) { EntityVindicator entityvindicator = new EntityVindicator(p_186175_3_); entityvindicator.enablePersistence(); entityvindicator.moveToBlockPosAndAngles(p_186175_2_, 0.0F, 0.0F); entityvindicator.onInitialSpawn(p_186175_3_.getDifficultyForLocation(new BlockPos(entityvindicator)), (IEntityLivingData)null); p_186175_3_.spawnEntityInWorld(entityvindicator); p_186175_3_.setBlockState(p_186175_2_, Blocks.AIR.getDefaultState(), 2); } }
@Override protected ResourceLocation getTexture(EntityVindicator entity) { return VINDICATOR; }
@Override protected void preRenderCallback(EntityVindicator entitylivingbaseIn, float partialTickTime) { super.preRenderCallback(entitylivingbaseIn, partialTickTime); GlStateManager.scale(0.9375F, 0.9375F, 0.9375F); }
public void initializeMobRenderers(RenderManager rm) { if (this.config.villagers) { ModUtilities.addRenderer(EntityVillager.class, new RenderPonyVillager(rm)); ModUtilities.addRenderer(EntityZombieVillager.class, new RenderPonyZombieVillager(rm)); logger.info("Villagers are now ponies."); } else { ModUtilities.addRenderer(EntityVillager.class, getRenderer(EntityVillager.class)); ModUtilities.addRenderer(EntityZombieVillager.class, getRenderer(EntityZombieVillager.class)); } if (this.config.zombies) { ModUtilities.addRenderer(EntityZombie.class, new RenderPonyZombie<>(rm)); ModUtilities.addRenderer(EntityHusk.class, new RenderPonyZombie.Husk(rm)); logger.info("Zombies are now ponies."); } else { ModUtilities.addRenderer(EntityZombie.class, getRenderer(EntityZombie.class)); ModUtilities.addRenderer(EntityHusk.class, getRenderer(EntityHusk.class)); } if (this.config.pigzombies) { ModUtilities.addRenderer(EntityPigZombie.class, new RenderPonyPigman(rm)); logger.info("Zombie pigmen are now ponies."); } else { ModUtilities.addRenderer(EntityPigZombie.class, getRenderer(EntityPigZombie.class)); } if (this.config.skeletons) { ModUtilities.addRenderer(EntitySkeleton.class, new RenderPonySkeleton<>(rm)); ModUtilities.addRenderer(EntityStray.class, new RenderPonySkeleton.Stray(rm)); ModUtilities.addRenderer(EntityWitherSkeleton.class, new RenderPonySkeleton.Wither(rm)); logger.info("Skeletons are now ponies."); } else { ModUtilities.addRenderer(EntitySkeleton.class, getRenderer(EntitySkeleton.class)); ModUtilities.addRenderer(EntityStray.class, getRenderer(EntityStray.class)); ModUtilities.addRenderer(EntityWitherSkeleton.class, getRenderer(EntityWitherSkeleton.class)); } if (this.config.illagers) { ModUtilities.addRenderer(EntityVex.class, new RenderPonyVex(rm)); ModUtilities.addRenderer(EntityEvoker.class, new RenderPonyEvoker(rm)); ModUtilities.addRenderer(EntityVindicator.class, new RenderPonyVindicator(rm)); ModUtilities.addRenderer(EntityIllusionIllager.class, new RenderPonyIllusionIllager(rm)); logger.info("Illagers are now ponies."); } else { ModUtilities.addRenderer(EntityVex.class, getRenderer(EntityVex.class)); ModUtilities.addRenderer(EntityEvoker.class, getRenderer(EntityEvoker.class)); ModUtilities.addRenderer(EntityVindicator.class, getRenderer(EntityVindicator.class)); ModUtilities.addRenderer(EntityIllusionIllager.class, getRenderer(EntityIllusionIllager.class)); } }