From 2d10e1886d8e0f0dd12e3446de351437e4c119c8 Mon Sep 17 00:00:00 2001 From: Kingsmedia Date: Mon, 9 May 2022 21:07:33 +0200 Subject: [PATCH] 112 - Displaying Carried Ammo --- .../Character/BP_BlasterCharacter.uasset | Bin 75840 -> 76169 bytes Source/Blaster/Components/CombatComponent.cpp | 26 ++++++++++++++++++ Source/Blaster/Components/CombatComponent.h | 5 ++++ Source/Blaster/Weapon/Weapon.h | 5 ++++ 4 files changed, 36 insertions(+) diff --git a/Content/Blueprints/Character/BP_BlasterCharacter.uasset b/Content/Blueprints/Character/BP_BlasterCharacter.uasset index 0f48b3aeba9c773a2004b5a10d004ee36102ca2b..6d87935d3b76111ae385a166de4631c1df682ef6 100644 GIT binary patch delta 13025 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 CurrentFOV = DefaultFOV; } + if (Character->HasAuthority()) + { + InitializeCarriedAmmo(); + } } } @@ -219,6 +223,16 @@ bool UCombatComponent::CanFire() void UCombatComponent::OnRep_CarriedAmmo() { + Controller = Controller == nullptr ? Cast(Character->Controller) : Controller; + if (Controller) + { + Controller->SetHUDCarriedAmmo(CarriedAmmo); + } +} + +void UCombatComponent::InitializeCarriedAmmo() +{ + CarriedAmmoMap.Emplace(EWeaponType::EWT_AssaultRifle, StartingARAmmo); } void UCombatComponent::ServerFire_Implementation(const FVector_NetQuantize& TraceHitTarget) @@ -299,6 +313,18 @@ void UCombatComponent::EquipWeapon(AWeapon* WeaponToEquip) } EquippedWeapon->SetOwner(Character); EquippedWeapon->SetHUDAmmo(); + + if (CarriedAmmoMap.Contains(EquippedWeapon->GetWeaponType())) + { + CarriedAmmo = CarriedAmmoMap[EquippedWeapon->GetWeaponType()]; + } + + Controller = Controller == nullptr ? Cast(Character->Controller) : Controller; + if (Controller) + { + Controller->SetHUDCarriedAmmo(CarriedAmmo); + } + Character->GetCharacterMovement()->bOrientRotationToMovement = false; Character->bUseControllerRotationYaw = true; } diff --git a/Source/Blaster/Components/CombatComponent.h b/Source/Blaster/Components/CombatComponent.h index c8c8686..e491dc7 100644 --- a/Source/Blaster/Components/CombatComponent.h +++ b/Source/Blaster/Components/CombatComponent.h @@ -110,4 +110,9 @@ private: void OnRep_CarriedAmmo(); TMap CarriedAmmoMap; + + UPROPERTY(EditAnywhere) + int32 StartingARAmmo = 30; + + void InitializeCarriedAmmo(); }; diff --git a/Source/Blaster/Weapon/Weapon.h b/Source/Blaster/Weapon/Weapon.h index 7a21a79..c6d2fbb 100644 --- a/Source/Blaster/Weapon/Weapon.h +++ b/Source/Blaster/Weapon/Weapon.h @@ -3,6 +3,7 @@ #pragma once #include "CoreMinimal.h" +#include "WeaponTypes.h" #include "GameFramework/Actor.h" #include "Weapon.generated.h" @@ -121,6 +122,9 @@ private: UPROPERTY() class ABlasterPlayerController* OwnerController; + + UPROPERTY(EditAnywhere) + EWeaponType WeaponType; public: void SetWeaponState(EWeaponState State); @@ -128,5 +132,6 @@ public: FORCEINLINE USkeletalMeshComponent* GetWeaponMesh() const { return WeaponMesh; }; FORCEINLINE float GetZoomedFOV() const { return ZoomedFOV; }; FORCEINLINE float GetZoomInterpSpeed() const { return ZoomInterpSpeed; }; + FORCEINLINE EWeaponType GetWeaponType() const { return WeaponType; } bool IsEmpty(); };