示例#1
0
    /// <summary>
    /// 攻击的时候触发
    /// 触发方式可以是动画事件也可能是投掷武器
    /// 这个方式会计算额外的伤害
    /// </summary>
    /// <param name="aim">Aim.</param>
    public virtual void OnAttack(Acter aim, float extraDamage = 0f)
    {
        if (!aim.isAlive)
        {
            return;
        }

        aim.OnHpChange(-(this.attackDamage + extraDamage));
        if (aim.hpNow == 0)
        {
            OnKill(aim);
        }
    }
示例#2
0
    public override void OnAttack(Acter aim, float extreaDamage)
    {
        if (!aim.isAlive)
        {
            return;
        }

        aim.OnHpChange(-(this.attackDamage + extreaDamage));
        if (aim.hpNow == 0)
        {
            OnKill(aim);
            OnGetLearningValue(aim.lvNow * 15f);
        }
    }