/// <summary> /// 剑 - 特殊攻击 /// 1、冷却状态(消耗HP)无法使用 /// 2、剑直接飞出去又自动飞回来 /// 右键点击 /// </summary> protected override void RightNormalShot() { //【是否为特殊攻击 && 达到CD时间 && 武器管理类判断特殊攻击是否可用(里面会涉及修改Enable是否开启使用)】 if (!(Gun_Data.GunState == GunState.SpecialState && CanSpecialShotNext && WeaponManager.Instance.SpecialGunCheckOut())) { return; } //如果可以射击【已经开启可以用】 if (!Gun_Data.SpecialEnable) { return; } //------------------------------------------------------- //开始计时 StartCoroutine(SpecialShotCD()); //------------------------------------------------------- //击打动作 AimQuadrant currentAimQuadrant = CheckAimQuadrant(); switch (currentAimQuadrant) { case AimQuadrant.second: case AimQuadrant.fourth: StartToSpecialAttack(AttackDirection.AntiClockWise); break; case AimQuadrant.first: case AimQuadrant.third: StartToSpecialAttack(AttackDirection.ClockWise); break; } //角色MPHP减少 PlayerMPHPChange((int)Gun_Data.SpecialComsumeMP, 0); }
/// <summary> /// 左键普通攻击 /// </summary> protected override void LeftNormalShot() { //是否为普通攻击 && 已经开启可以用 && 达到CD时间 if (!(Gun_Data.GunState == GunState.NormalState && Gun_Data.Enable && SwordGunCanShotNext)) { return; } //武器射击CD计时 StartCoroutine(ShotCD()); //刷新击中敌人集合 HitPointIDHashSet.Clear(); //击打动作 AimQuadrant currentAimQuadrant = CheckAimQuadrant(); switch (currentAimQuadrant) { case AimQuadrant.second: case AimQuadrant.fourth: NormalCloseAttack(AttackDirection.AntiClockWise); break; case AimQuadrant.first: case AimQuadrant.third: NormalCloseAttack(AttackDirection.ClockWise); break; } //角色MPHP减少 PlayerMPHPChange(Gun_Data.ComsumeMP, Gun_Data.ComsumeHP); }