add foxes, temp textures
This commit is contained in:
parent
cdf8db1b50
commit
ad930fcbdc
6 changed files with 150 additions and 8 deletions
115
common/src/main/java/common/entity/animal/EntityFox.java
Normal file
115
common/src/main/java/common/entity/animal/EntityFox.java
Normal file
|
@ -0,0 +1,115 @@
|
|||
package common.entity.animal;
|
||||
|
||||
import common.ai.EntityAIAttackOnCollide;
|
||||
import common.ai.EntityAIHurtByTarget;
|
||||
import common.ai.EntityAILeapAtTarget;
|
||||
import common.ai.EntityAILookIdle;
|
||||
import common.ai.EntityAIMate;
|
||||
import common.ai.EntityAISwimming;
|
||||
import common.ai.EntityAIWander;
|
||||
import common.ai.EntityAIWatchClosest;
|
||||
import common.attributes.Attribute;
|
||||
import common.entity.DamageSource;
|
||||
import common.entity.Entity;
|
||||
import common.entity.npc.Alignment;
|
||||
import common.entity.types.EntityAnimal;
|
||||
import common.entity.types.EntityLiving;
|
||||
import common.init.Items;
|
||||
import common.init.SoundEvent;
|
||||
import common.item.Item;
|
||||
import common.item.ItemStack;
|
||||
import common.pathfinding.PathNavigateGround;
|
||||
import common.vars.Vars;
|
||||
import common.world.World;
|
||||
|
||||
public class EntityFox extends EntityAnimal
|
||||
{
|
||||
public EntityFox(World worldIn)
|
||||
{
|
||||
super(worldIn);
|
||||
this.setSize(0.6F, 0.8F);
|
||||
((PathNavigateGround)this.getNavigator()).setAvoidsWater(true);
|
||||
this.tasks.addTask(1, new EntityAISwimming(this));
|
||||
this.tasks.addTask(3, new EntityAILeapAtTarget(this, 0.4F));
|
||||
this.tasks.addTask(4, new EntityAIAttackOnCollide(this, 1.0D, true));
|
||||
this.tasks.addTask(6, new EntityAIMate(this, 1.0D));
|
||||
this.tasks.addTask(7, new EntityAIWander(this, 1.0D));
|
||||
this.tasks.addTask(9, new EntityAIWatchClosest(this, null, 8.0F));
|
||||
this.tasks.addTask(9, new EntityAILookIdle(this));
|
||||
this.targets.addTask(3, new EntityAIHurtByTarget(this, true));
|
||||
// this.targets.addTask(5, new EntityAINearestAttackableTarget(this, EntityUndead.class, false));
|
||||
}
|
||||
|
||||
protected void applyEntityAttributes()
|
||||
{
|
||||
super.applyEntityAttributes();
|
||||
this.getEntityAttribute(Attribute.MOVEMENT_SPEED).setBaseValue(0.35D);
|
||||
|
||||
this.setMaxHealth(6);
|
||||
|
||||
this.getAttributeMap().registerAttribute(Attribute.ATTACK_DAMAGE);
|
||||
this.getEntityAttribute(Attribute.ATTACK_DAMAGE).setBaseValue(2.0D);
|
||||
}
|
||||
|
||||
protected SoundEvent getHurtSound()
|
||||
{
|
||||
return SoundEvent.WOLF_HURT;
|
||||
}
|
||||
|
||||
protected SoundEvent getDeathSound()
|
||||
{
|
||||
return SoundEvent.WOLF_DEATH;
|
||||
}
|
||||
|
||||
protected float getSoundVolume()
|
||||
{
|
||||
return 0.4F;
|
||||
}
|
||||
|
||||
protected Item getDropItem()
|
||||
{
|
||||
return null;
|
||||
}
|
||||
|
||||
public float getEyeHeight()
|
||||
{
|
||||
return this.height * 0.8F;
|
||||
}
|
||||
|
||||
public boolean attackEntityAsMob(Entity entityIn)
|
||||
{
|
||||
if(!this.worldObj.client && !Vars.damageMobs)
|
||||
return false;
|
||||
boolean flag = entityIn.attackEntityFrom(DamageSource.causeMobDamage(this), ((int)this.getEntityAttribute(Attribute.ATTACK_DAMAGE).getAttributeValue()));
|
||||
|
||||
if (flag)
|
||||
{
|
||||
this.applyEnchantments(this, entityIn);
|
||||
}
|
||||
|
||||
return flag;
|
||||
}
|
||||
|
||||
public boolean isBreedingItem(ItemStack stack)
|
||||
{
|
||||
return stack != null && stack.getItem() == Items.apple;
|
||||
}
|
||||
|
||||
public int getMaxChunkSpawns()
|
||||
{
|
||||
return 6;
|
||||
}
|
||||
|
||||
public EntityFox createChild(EntityLiving ageable)
|
||||
{
|
||||
return new EntityFox(this.worldObj);
|
||||
}
|
||||
|
||||
public int getColor() {
|
||||
return 0xc35d00;
|
||||
}
|
||||
|
||||
public Alignment getAlignment() {
|
||||
return Alignment.LAWFUL;
|
||||
}
|
||||
}
|
|
@ -9,6 +9,7 @@ import common.entity.animal.EntityBat;
|
|||
import common.entity.animal.EntityChicken;
|
||||
import common.entity.animal.EntityCow;
|
||||
import common.entity.animal.EntityDragon;
|
||||
import common.entity.animal.EntityFox;
|
||||
import common.entity.animal.EntityHorse;
|
||||
import common.entity.animal.EntityMooshroom;
|
||||
import common.entity.animal.EntityMouse;
|
||||
|
@ -262,6 +263,7 @@ public abstract class EntityRegistry {
|
|||
registerEntity("Horse", EntityHorse.class, "terra", "Pferd", 12623485, 15656192);
|
||||
registerEntity("Rabbit", EntityRabbit.class, "terra", "Kaninchen", 10051392, 7555121);
|
||||
registerEntity("Mouse", EntityMouse.class, "terra", "Maus", 0x606060, 0xb0b0b0);
|
||||
registerEntity("Fox", EntityFox.class, "terra", "Fuchs", 0xae5300, 0x622f00);
|
||||
|
||||
for(int z = 0; z < SpeciesRegistry.SPECIMEN.size(); z++) {
|
||||
SpeciesInfo info = SpeciesRegistry.SPECIMEN.get(z);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue