diff --git a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WBP_AmmoCount.uasset b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WBP_AmmoCount.uasset
index 42f932a9..6e0e13d4 100644
--- a/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WBP_AmmoCount.uasset
+++ b/EndlessVendetta/Content/FirstPerson/Blueprints/BaseWeapons/WBP_AmmoCount.uasset
@@ -1,3 +1,3 @@
 version https://git-lfs.github.com/spec/v1
-oid sha256:652402df45503ab3169e329879f397101d9b5bf17551404301cca7b5b292eb68
-size 62076
+oid sha256:d593d68d5b9a9fc58b1b7ecc44936b84e361aaa1762ab04c5924e36bfd45bee9
+size 61494
diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp
index 53f2de68..d20c1ae8 100644
--- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp
+++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.cpp
@@ -174,7 +174,7 @@ void ABaseWeaponClass::Fire()
 		traceEnd = traceStart + (GunStartArrow->GetForwardVector() * BulletDistance);
 		if (GetWorldTimerManager().IsTimerActive(timerHandle)) return;
 		GetWorld()->LineTraceSingleByChannel(outHit, traceStart, traceEnd, ECC_Visibility, collisionParams);
-		DrawDebugLine(this->GetWorld(), traceStart, traceEnd, FColor::Red, false, 5.0f, 0U, 1.5f);
+		DrawDebugLine(this->GetWorld(), traceStart, traceEnd, FColor::Black , false, 0.2f, 0U, 0.2f);
 		playerControllerRef->PlayerCameraManager->StartCameraShake(CameraShakeClass, 1);
 		currentAmmoCount -= 1;
 		GenerateRecoilVector();
diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h
index 2ea5b812..00541047 100644
--- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h
+++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/BaseWeaponClass.h
@@ -83,9 +83,9 @@ public:
 	virtual void Fire();
 
 	UFUNCTION(BlueprintCallable, Category = "Weapons")
-	void ClickDetectionTimer();
+	virtual void ClickDetectionTimer();
 
-	void CancelFire();
+	virtual void CancelFire();
 
 	UPROPERTY(VisibleAnywhere)
 	ACharacter* playerInWorld;
@@ -144,9 +144,12 @@ public:
 	UPROPERTY(EditAnywhere)
 	int bulletCountShoot; //Gets how many bullets shot per
 
-private:
 
+protected:
 	UArrowComponent* GunStartArrow;
+	bool bStopShooting = false;
+
+private:
 
 	UPROPERTY(EditAnywhere)
 	float BulletDistance;
@@ -157,5 +160,5 @@ private:
 	float originalMinMultiplier;
 
 	float currentPitch;
-	bool bStopShooting = false;
+	
 };
diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.cpp b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.cpp
index 2b7dc95a..0e91083a 100644
--- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.cpp
+++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.cpp
@@ -30,3 +30,19 @@ void APistolClass::Fire()
 	UE_LOG(LogTemp, Display, TEXT("Testing overrides: Pistol has been fired"));
 }
 
+void APistolClass::ClickDetectionTimer()
+{
+	Super::ClickDetectionTimer();
+}
+
+void APistolClass::CancelFire()
+{
+	if (bulletCountShoot <= 0) return;
+	UE_LOG(LogTemp, Display, TEXT("FireCancelled"));
+	bulletCountShoot = 0;
+	GunStartArrow->SetRelativeRotation(FRotator(0));
+	//playerInWorld->GetController()->SetControlRotation(FRotator(0, playerInWorld->GetActorRotation().Yaw, playerInWorld->GetActorRotation().Roll));
+	bStopShooting = true;
+	nullSamples();
+}
+
diff --git a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.h b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.h
index ca85b67e..0ddb7290 100644
--- a/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.h
+++ b/EndlessVendetta/Source/EndlessVendetta/WeaponSystem/PistolClass.h
@@ -24,4 +24,6 @@ public:
 	virtual void Tick(float DeltaTime) override;
 
 	virtual void Fire() override;
+	virtual void ClickDetectionTimer() override;
+	virtual void CancelFire() override;
 };