@@ -0,0 +1,1884 @@
+package info.u_team.u_team_test.entity;%0A%0Aimport java.util.Random;%0A%0Aimport net.minecraft.entity.*;%0Aimport net.minecraft.entity.monster.*;%0Aimport net.minecraft.item.*;%0Aimport net.minecraft.potion.*;%0Aimport net.minecraft.util.*;%0Aimport net.minecraft.util.math.BlockPos;%0Aimport net.minecraft.world.*;%0A%0Apublic class TestLivingEntity extends ZombieEntity %7B%0A%09%0A%09public TestLivingEntity(EntityType%3C? extends ZombieEntity%3E type, World worldIn) %7B%0A%09%09super(type, worldIn);%0A%09%7D%0A%09%0A%09public static boolean func_223334_b(EntityType%3CHuskEntity%3E p_223334_0_, IServerWorld p_223334_1_, SpawnReason reason, BlockPos p_223334_3_, Random p_223334_4_) %7B%0A%09%09return canMonsterSpawnInLight(p_223334_0_, p_223334_1_, reason, p_223334_3_, p_223334_4_) && (reason == SpawnReason.SPAWNER %7C%7C p_223334_1_.canSeeSky(p_223334_3_));%0A%09%7D%0A%09%0A%09@Override%0A%09protected boolean shouldBurnInDay() %7B%0A%09%09return false;%0A%09%7D%0A%09%0A%09@Override%0A%09protected SoundEvent getAmbientSound() %7B%0A%09%09return SoundEvents.BLOCK_LODESTONE_PLACE;%0A%09%7D%0A%09%0A%09@Override%0A%09protected SoundEvent getHurtSound(DamageSource source) %7B%0A%09%09return SoundEvents.ENTITY_ARROW_SHOOT;%0A%09%7D%0A%09%0A%09@Override%0A%09protected SoundEvent getDeathSound() %7B%0A%09%09return SoundEvents.ENTITY_DONKEY_DEATH;%0A%09%7D%0A%09%0A%09@Override%0A%09protected SoundEvent getStepSound() %7B%0A%09%09return SoundEvents.ENTITY_HOGLIN_HURT;%0A%09%7D%0A%09%0A%09@Override%0A%09public boolean attackEntityAsMob(Entity entity) %7B%0A%09%09boolean flag = super.attackEntityAsMob(entity);%0A%09%09if (flag && getHeldItemMainhand().isEmpty() && entity instanceof LivingEntity) %7B%0A%09%09%09final float localDifficulty = world.getDifficultyForLocation(getPosition()).getAdditionalDifficulty();%0A%09%09%09((LivingEntity) entity).addPotionEffect(new EffectInstance(Effects.LEVITATION, (int) (500 * localDifficulty)));%0A%09%09%7D%0A%09%09return flag;%0A%09%7D%0A%09%0A%09@Override%0A%09protected boolean shouldDrown() %7B%0A%09%09return false;%0A%09%7D%0A%09%0A%09@Override%0A%09protected ItemStack getSkullDrop() %7B%0A%09%09return new ItemStack(Items.GHAST_TEAR);%0A%09%7D%0A%7D%0A

Add test living entity