From be22eae329ed8793b8cb4cc150b54499c2225849 Mon Sep 17 00:00:00 2001 From: Rafal Swierczek <34179rs@gmail.com> Date: Wed, 11 Oct 2023 14:59:17 +0100 Subject: [PATCH] Reparented Bounty Director to an Interactable Actor --- .../BountySystem/BountyDirector.uasset | 4 +-- .../Architecture/Floor_400x400.uasset | 4 +-- .../C/N1/E7M6U3RRQJ0NKZWADRZU2F.uasset | 4 +-- .../BountySystem/BountyDirector.cpp | 7 ++++ .../BountySystem/BountyDirector.h | 5 ++- .../EndlessVendetta/InteractableActor.cpp | 33 +++++++++++++++++++ .../EndlessVendetta/InteractableActor.h | 26 +++++++++++++++ 7 files changed, 76 insertions(+), 7 deletions(-) create mode 100644 EndlessVendetta/Source/EndlessVendetta/InteractableActor.cpp create mode 100644 EndlessVendetta/Source/EndlessVendetta/InteractableActor.h diff --git a/EndlessVendetta/Content/BountySystem/BountyDirector.uasset b/EndlessVendetta/Content/BountySystem/BountyDirector.uasset index abfc1024..0acba18f 100644 --- a/EndlessVendetta/Content/BountySystem/BountyDirector.uasset +++ b/EndlessVendetta/Content/BountySystem/BountyDirector.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:095a379c23e9c3e8d2b07f5b2036d1588931675bee26a2010492c88371620daa -size 42288 +oid sha256:d9d96d19206de2c336790632a9774519478154bb0eedd7080b8ee8c485e15844 +size 43857 diff --git a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset index c85fe9b1..c2a34afc 100644 --- a/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset +++ b/EndlessVendetta/Content/StarterContent/Architecture/Floor_400x400.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:460f12438b7058cfb92d3fde1df787aab7d49edd287ff1449947c28a25c95add -size 14831 +oid sha256:4c0ecf0ac0702cc2bd355ec050232a61c49e10f102448efbeb735a51824adef6 +size 14948 diff --git a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/N1/E7M6U3RRQJ0NKZWADRZU2F.uasset b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/N1/E7M6U3RRQJ0NKZWADRZU2F.uasset index 08f07fda..29ca0d25 100644 --- a/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/N1/E7M6U3RRQJ0NKZWADRZU2F.uasset +++ b/EndlessVendetta/Content/__ExternalActors__/Levels/BountySystemTestLevel/C/N1/E7M6U3RRQJ0NKZWADRZU2F.uasset @@ -1,3 +1,3 @@ version https://git-lfs.github.com/spec/v1 -oid sha256:444ddcb2a79ffd12016502dc9f588c06ea0a5e07e033556a698f2cb3249c0d58 -size 4464 +oid sha256:b37ffa979db56e7f9d07e4c0d02718fa6f15cda90cf7e41886f7301a917cfe15 +size 4934 diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.cpp b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.cpp index 8e87f2e3..fbb820d2 100644 --- a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.cpp +++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.cpp @@ -119,6 +119,13 @@ void ABountyDirector::DestroyActiveSideBounties() UpdateBountyDisplay(); } +void ABountyDirector::Interact() +{ + Super::Interact(); + UE_LOG(LogTemp, Warning, TEXT("This is where I'll put widget opening code!!!!")); +} + + // ----------- Favour Shop --------------- void ABountyDirector::EarnFavours(int FavoursEarned) diff --git a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.h b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.h index dcaa927b..105e4b89 100644 --- a/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.h +++ b/EndlessVendetta/Source/EndlessVendetta/BountySystem/BountyDirector.h @@ -6,11 +6,12 @@ #include "MainBountyClass.h" #include "SideBountyClass.h" #include "EndlessVendetta/EndlessVendettaCharacter.h" +#include "EndlessVendetta/InteractableActor.h" #include "GameFramework/Actor.h" #include "BountyDirector.generated.h" UCLASS() -class ENDLESSVENDETTA_API ABountyDirector : public AActor +class ENDLESSVENDETTA_API ABountyDirector : public AInteractableActor { GENERATED_BODY() @@ -42,6 +43,8 @@ class ENDLESSVENDETTA_API ABountyDirector : public AActor // Collect reward for current Bounty and prepare for the next void FinishActiveBounty(); + + void Interact() override; protected: int Favours = 0; diff --git a/EndlessVendetta/Source/EndlessVendetta/InteractableActor.cpp b/EndlessVendetta/Source/EndlessVendetta/InteractableActor.cpp new file mode 100644 index 00000000..346e151d --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/InteractableActor.cpp @@ -0,0 +1,33 @@ +// Fill out your copyright notice in the Description page of Project Settings. + + +#include "InteractableActor.h" + +// Sets default values +AInteractableActor::AInteractableActor() +{ + // Set this actor to call Tick() every frame. You can turn this off to improve performance if you don't need it. + PrimaryActorTick.bCanEverTick = true; + +} + +// Called when the game starts or when spawned +void AInteractableActor::BeginPlay() +{ + Super::BeginPlay(); + +} + +// Called every frame +void AInteractableActor::Tick(float DeltaTime) +{ + Super::Tick(DeltaTime); + +} + +void AInteractableActor::Interact() +{ + UE_LOG(LogTemp, Warning, TEXT("Interacted with %s"), *GetName()); +} + + diff --git a/EndlessVendetta/Source/EndlessVendetta/InteractableActor.h b/EndlessVendetta/Source/EndlessVendetta/InteractableActor.h new file mode 100644 index 00000000..4756112c --- /dev/null +++ b/EndlessVendetta/Source/EndlessVendetta/InteractableActor.h @@ -0,0 +1,26 @@ +// Fill out your copyright notice in the Description page of Project Settings. + +#pragma once + +#include "CoreMinimal.h" +#include "GameFramework/Actor.h" +#include "InteractableActor.generated.h" + +UCLASS() +class ENDLESSVENDETTA_API AInteractableActor : public AActor +{ + GENERATED_BODY() + +protected: + // Called when the game starts or when spawned + virtual void BeginPlay() override; + +public: + // Sets default values for this actor's properties + AInteractableActor(); + // Called every frame + virtual void Tick(float DeltaTime) override; + + virtual void Interact(); + +};