protected override void Reload() { GunAnimator.SetLayerWeight(2, 1); GunAnimator.SetTrigger(CurrentAmmo > 0 ? "ReloadLeft" : "ReloadOutOf"); FirearmsReloadAudioSource.clip = CurrentAmmo > 0 ? FirearmsAudioData.ReloadLeft : FirearmsAudioData.ReloadOutOf; FirearmsReloadAudioSource.Play(); if (reloadAmmoCheckerCoroutine == null) { reloadAmmoCheckerCoroutine = CheckReloadAmmoAnimationEnd(); StartCoroutine(reloadAmmoCheckerCoroutine); } else { StopCoroutine(reloadAmmoCheckerCoroutine); reloadAmmoCheckerCoroutine = null; reloadAmmoCheckerCoroutine = CheckReloadAmmoAnimationEnd(); StartCoroutine(reloadAmmoCheckerCoroutine); } }
protected override void Reload() { GunAnimator.SetLayerWeight(1, 1); GunAnimator.SetTrigger(CurrentAmmo > 0 ? "ReloadLeft" : "ReloadOutOf"); //通过赋值协程给变量来实现反复执行 if (checkReloadAmmoAnimationEnd_Coroutine == null) { checkReloadAmmoAnimationEnd_Coroutine = CheckReloadAmmoAnimationEnd(); StartCoroutine(checkReloadAmmoAnimationEnd_Coroutine); } else { StopCoroutine(checkReloadAmmoAnimationEnd_Coroutine); checkReloadAmmoAnimationEnd_Coroutine = null; checkReloadAmmoAnimationEnd_Coroutine = CheckReloadAmmoAnimationEnd(); StartCoroutine(checkReloadAmmoAnimationEnd_Coroutine); } }
protected override void Reload() { //GunAnimator.SetLayerWeight(1, 1); GunAnimator.SetTrigger(CurrentAmmo > 0 ? "ReloadLeft" : "ReloadOutOf"); if (reloadAmmoCheckerCoroutine == null) { reloadAmmoCheckerCoroutine = CheckReloadAmmoAnimationEnd(); StartCoroutine(reloadAmmoCheckerCoroutine); } else { StopCoroutine(reloadAmmoCheckerCoroutine); reloadAmmoCheckerCoroutine = null; reloadAmmoCheckerCoroutine = CheckReloadAmmoAnimationEnd(); StartCoroutine(reloadAmmoCheckerCoroutine); } }
protected override void Reload() { //CurrentAmmo = AmmoInMag; //CurrentMaxAmmoCarried -= AmmoInMag; GunAnimator.SetLayerWeight(2, 1);//改变动画layer权重 GunAnimator.SetTrigger(CurrentAmmo > 0 ? "ReloadLeft" : "ReloadOutOf"); //StartCoroutine(CheckReloadAnimationEnd()); FirearmsReloadAudioSource.clip = CurrentAmmo > 0?firearmsAudioData.ReloadLeft:firearmsAudioData.ReloadOutOf; FirearmsReloadAudioSource.Play(); if (reloadAmmoCheckerCoroutine == null) { reloadAmmoCheckerCoroutine = CheckReloadAnimationEnd(); StartCoroutine(reloadAmmoCheckerCoroutine); } else { StopCoroutine(reloadAmmoCheckerCoroutine); reloadAmmoCheckerCoroutine = null; reloadAmmoCheckerCoroutine = CheckReloadAnimationEnd(); StartCoroutine(reloadAmmoCheckerCoroutine); } }