public ModelAttackRole(GameObject node, ModelAttackRoleData data) : base(node) { InitAttackSkillAnimation(); m_healthPoint = new ModelHPData(data.MaxHP); m_attackDis = data.attackDis; m_attackAngle = data.attackAngle; }
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); }