示例#1
0
 public void OnSkillEnter(int skillID)
 {
     if (!_beginIncreaseDamage && skillID >= 0 && !_owner.ACOwner.AIUse.CurrentSkill.SkillModule._isNormalSkill)
     {
         if (_chargeCount >= _maxChargeCount)
         {
             string skillName = _owner.ACOwner.AIUse.CurrentSkill.SkillModule._skillName;
             foreach (string sn in _skillIgnore)
             {
                 if (sn == skillName)
                 {
                     return;
                 }
             }
             _owner.ACOwner.AIUse.AddDamageScale += _damageInCrease * _maxChargeCount;
             _beginIncreaseDamage = true;
             _chargeCount         = 0;
             if (_battleCharEffect != null)
             {
                 _battleCharEffect.ShowEffect(_chargeCount);
             }
         }
     }
     else
     {
         OnSkillQuit(skillID);
     }
 }
    public override void AttackQuit()
    {
        base.AttackQuit();
        _colliderRangeToStrike.enabled = false;
        ThisObject.layer = FCConst.LAYER_DEFAULT;
        _targetList.Clear();
        _owner.ACOwner.FireTarget = null;
        _owner.ACOwner.ACSetAvoidPriority(_owner._bodyMass);
        _owner.ACOwner.ACShow();



        //bolt count is not max, play bad end effect
        if (_boltCount < _boltMaxCount)
        {
            _battleCharEffect.ShowEffect(0);
            _battleCharEffect.ShowStartEffect(false);
            _battleCharEffect.ShowSpecialEndEffect(0);
        }

        _owner.ClearActionSwitchFlag(FC_ACTION_SWITCH_FLAG.IN_SUPER_SAIYAJIN);
    }
    public void OnSkillEnter(int skillID)
    {
        if (!_beginIncreaseDamage && skillID >= 0 && !_owner.ACOwner.AIUse.CurrentSkill.SkillModule._isNormalSkill)
        {
            string skillName = _owner.ACOwner.AIUse.CurrentSkill.SkillModule._skillName;

            if (_skillName != skillName)
            {
                foreach (string sn in _skillIgnore)
                {
                    if (sn == skillName)
                    {
                        return;
                    }
                }

                if (!_owner.ACOwner.AIUse.AttackCountAgent.SkillIsCD(_skillName))
                {
                    return;
                }

                if (_owner.ACOwner.SkillGodDown)
                {
                    return;
                }

                _chargeCount++;
                _chargeCount = Mathf.Clamp(_chargeCount, 0, _maxChargeCount);

                if (_chargeCount >= _maxChargeCount)
                {
                    _owner.ACOwner.SkillGodDownActive = true;
                }
            }
            else
            {
                _owner.ACOwner.SkillGodDownActive = false;
                _beginIncreaseDamage = true;
                _chargeCount         = 0;
            }

            if (_battleCharEffect != null)
            {
                _battleCharEffect.ShowEffect(_chargeCount);
            }


            ///////////////////////////////////////////////////////////

            //if (_chargeCount >= _maxChargeCount)
            //{
            //    string skillName = _owner.ACOwner.AIUse.CurrentSkill.SkillModule._skillName;
            //    foreach (string sn in _skillIgnore)
            //    {
            //        if (sn == skillName)
            //        {
            //            return;
            //        }
            //    }

            //    if (skillName != _skillName)
            //    {
            //        return;
            //    }

            //    _owner.ACOwner.SkillGodDownActive = false;
            //    _beginIncreaseDamage = true;
            //    _chargeCount = 0;
            //    if (_battleCharEffect != null)
            //    {
            //        _battleCharEffect.ShowEffect(_chargeCount);
            //    }
            //}
        }
        else
        {
            OnSkillQuit(skillID);
        }
    }