Beispiel #1
0
 public ModelAttackRole(GameObject node, ModelAttackRoleData data) : base(node)
 {
     InitAttackSkillAnimation();
     m_healthPoint = new ModelHPData(data.MaxHP);
     m_attackDis   = data.attackDis;
     m_attackAngle = data.attackAngle;
 }
Beispiel #2
0
    public virtual float Damage(ModelAttackData data)
    {
        int damage = data.Damage;
        KeyValuePair <Vector3, int> message = new KeyValuePair <Vector3, int>(transform.position, damage);

        EventManager.Dispatch(GameMoudle.Player, GameEvent.Type.ShowDamageText, message);
        m_healthPoint -= damage;
        SRoleState.Type state;
        if (IsHPZero)
        {
            state = SRoleState.Type.SRoleDeath;
        }
        else
        {
            state = SRoleState.Type.SRoleDamage;
        }
        State = state;
        PlayDamageEffect();
        return(m_healthPoint.Percent);
    }