我的世界扩展狼使getEntityAttribute不起作用

时间:2019-07-17 04:07:43

标签: java minecraft

我当前正在尝试创建自定义实体。到目前为止,我已经使用Wolf AI进行了渲染,移动和攻击。我认为通过使用扩展的狼,狼部分中的某些东西会改变它的生命值和攻击力。但是,由于某些原因,速度仍然有效。

我已经尽力想了一切。例如,从狼的部分复制东西,覆盖它,然后取消它的作用。

public class EntityKendal extends EntityWolf{

    public EntityKendal(World worldIn) {
        super(worldIn);
        this.setSize(0.6F, 0.85F);

    }
    @Override
    protected void applyEntityAttributes()
    {
        super.applyEntityAttributes();
        this.getEntityAttribute(SharedMonsterAttributes.MAX_HEALTH).setBaseValue(500.0D);
        this.getEntityAttribute(SharedMonsterAttributes.MOVEMENT_SPEED).setBaseValue(0.5D);
        this.getEntityAttribute(SharedMonsterAttributes.ATTACK_DAMAGE).setBaseValue(18D);

    }
    @Override
    protected void initEntityAI()
    {
        this.tasks.addTask(1, new EntityAISwimming(this));
        this.tasks.addTask(4, new EntityAILeapAtTarget(this, 0.4F));
        this.tasks.addTask(5, new EntityAIAttackMelee(this, 1.0D, true));
        this.tasks.addTask(8, new EntityAIWanderAvoidWater(this, 1.0D));
        this.tasks.addTask(10, new EntityAIWatchClosest(this, EntityPlayer.class, 8.0F));
        this.tasks.addTask(10, new EntityAILookIdle(this));
        this.targetTasks.addTask(3, new EntityAIHurtByTarget(this, true, new Class[0]));
        this.targetTasks.addTask(5, new EntityAINearestAttackableTarget(this, AbstractSkeleton.class, false));

    }
    @Override
    public boolean processInteract(EntityPlayer player, EnumHand hand) {
        return false;
    }
    @Override
    public EntityWolf createChild(EntityAgeable ageable)
    {
        return new EntityKendal(world);
    }
}

我希望该实体拥有500点生命值,并在2次命中中杀死玩家,但两者均不会。

0 个答案:

没有答案