void AShooterWeapon::OnUnEquip() { DetachMeshFromPawn(); bIsEquipped = false; StopFire(); if (bPendingReload) { StopWeaponAnimation(ReloadAnim); bPendingReload = false; GetWorldTimerManager().ClearTimer(TimerHandle_StopReload); GetWorldTimerManager().ClearTimer(TimerHandle_ReloadWeapon); } if (bPendingEquip) { StopWeaponAnimation(EquipAnim); bPendingEquip = false; GetWorldTimerManager().ClearTimer(TimerHandle_OnEquipFinished); } DetermineWeaponState(); }
void AShooterWeapon::StopSimulatingWeaponFire() { if (bLoopedMuzzleFX ) { if( MuzzlePSC != NULL ) { MuzzlePSC->DeactivateSystem(); MuzzlePSC = NULL; } if( MuzzlePSCSecondary != NULL ) { MuzzlePSCSecondary->DeactivateSystem(); MuzzlePSCSecondary = NULL; } } if (bLoopedFireAnim && bPlayingFireAnim) { StopWeaponAnimation(FireAnim); bPlayingFireAnim = false; } if (FireAC) { FireAC->FadeOut(0.1f, 0.0f); FireAC = NULL; PlayWeaponSound(FireFinishSound); } }
void ASWeapon::StopSimulatingWeaponFire() { if (bPlayingFireAnim) { StopWeaponAnimation(FireAnim); bPlayingFireAnim = false; } }
void AShooterWeapon::StopReload() { if (CurrentState == EWeaponState::Reloading) { bPendingReload = false; DetermineWeaponState(); StopWeaponAnimation(ReloadAnim); } }
void ASWeapon::OnUnEquip() { bIsEquipped = false; StopFire(); if (bPendingEquip) { StopWeaponAnimation(EquipAnim); bPendingEquip = false; GetWorldTimerManager().ClearTimer(EquipFinishedTimerHandle); } if (bPendingReload) { StopWeaponAnimation(ReloadAnim); bPendingReload = false; GetWorldTimerManager().ClearTimer(TimerHandle_ReloadWeapon); } DetermineWeaponState(); }
void ASWeapon::OnUnEquip() { if (bPendingEquip) { StopWeaponAnimation(EquipAnim); bPendingEquip = false; GetWorldTimerManager().ClearTimer(EquipFinishedTimerHandle); } StopFire(); AttachMeshToPawn(StorageSlot); bIsEquipped = false; DetermineWeaponState(); }
void AWeapon::UnEquip(AMutagenCharacter* entity) { DetachMeshFromPawn(); SetEquiped(true); StopAttack(); if (bPendingEquip) { StopWeaponAnimation(equipAnimation); bPendingEquip = false; //GetWorldTimerManager().ClearTimer(this, &AWeapon::OnEquipFinished); GetWorldTimerManager().ClearTimer(equipTimerHandle); } DetermineWeaponState(); }