private void AttemptAttack() { if (isGun) { Gun gun = (Gun)currentWeapon; if (playerMovement.isRunning) // 打断奔跑状态 { playerMovement.isRunning = false; gun.AfterCanFire(0.3f); return; } if (gun.BulletCountInClip <= 0) // 若没有子弹,则装子弹 { if (!reloading) { ReloadGun(); } return; } } attemptAttack = true; animator.SetBool(AnimParamAiming, true); StartCoroutine(DelaySetAttemptAttackFalse()); Attack(); }