From cafb8206e5beed6adfedee024344335b5289a596 Mon Sep 17 00:00:00 2001 From: baz Date: Mon, 24 Jun 2024 21:42:44 +0100 Subject: [PATCH] IncrementEXP when player overlaps --- Source/vampires/EXPPickup.cpp | 10 +++++++--- Source/vampires/EXPPickup.h | 9 ++++++--- 2 files changed, 13 insertions(+), 6 deletions(-) diff --git a/Source/vampires/EXPPickup.cpp b/Source/vampires/EXPPickup.cpp index 5f2aa36..45e6397 100644 --- a/Source/vampires/EXPPickup.cpp +++ b/Source/vampires/EXPPickup.cpp @@ -3,6 +3,8 @@ #include "EXPPickup.h" +#include "PlayerCharacter.h" + void AEXPPickup::BeginPlay() { Super::BeginPlay(); @@ -16,7 +18,9 @@ void AEXPPickup::Tick(float DeltaSeconds) void AEXPPickup::OnBeginOverlap(UPrimitiveComponent* OverlappedComponent, AActor* OtherActor, UPrimitiveComponent* OtherComp, int32 OtherBodyIndex, bool bFromSweep, const FHitResult& SweepResult) { - // TODO: Add EXP to player EXP component - - Super::OnBeginOverlap(OverlappedComponent, OtherActor, OtherComp, OtherBodyIndex, bFromSweep, SweepResult); + if (APlayerCharacter* PlayerCharacter = Cast(OtherActor)) + { + PlayerCharacter->GetEXPComponent()->IncrementEXP(EXP); + Super::OnBeginOverlap(OverlappedComponent, OtherActor, OtherComp, OtherBodyIndex, bFromSweep, SweepResult); + } } diff --git a/Source/vampires/EXPPickup.h b/Source/vampires/EXPPickup.h index 9241e69..05fa8dc 100644 --- a/Source/vampires/EXPPickup.h +++ b/Source/vampires/EXPPickup.h @@ -13,7 +13,10 @@ UCLASS() class VAMPIRES_API AEXPPickup : public APickup { GENERATED_BODY() - + +public: + int EXP = 1; + protected: virtual void BeginPlay() override; @@ -21,6 +24,6 @@ public: virtual void Tick(float DeltaSeconds) override; virtual void OnBeginOverlap(UPrimitiveComponent* OverlappedComponent, AActor* OtherActor, - UPrimitiveComponent* OtherComp, int32 OtherBodyIndex, bool bFromSweep, - const FHitResult& SweepResult) override; + UPrimitiveComponent* OtherComp, int32 OtherBodyIndex, bool bFromSweep, + const FHitResult& SweepResult) override; };