Add interactable logic

This commit is contained in:
2024-09-23 06:00:02 -04:00
parent 73353dabde
commit da842d3194
9 changed files with 75 additions and 4 deletions
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,29 @@
// Fill out your copyright notice in the Description page of Project Settings.
#include "InteractableActorComponent.h"
// Sets default values for this component's properties
UInteractableActorComponent::UInteractableActorComponent()
{
// Set this component to be initialized when the game starts, and to be ticked every frame. You can turn these features
// off to improve performance if you don't need them.
PrimaryComponentTick.bCanEverTick = false;
// ...
}
// Called when the game starts
void UInteractableActorComponent::BeginPlay()
{
Super::BeginPlay();
// ...
}
void UInteractableActorComponent::OnInteract_Implementation(AActor* Interactor)
{
UE_LOG(LogTemp, Warning, TEXT("Interacted with %s"), *GetOwner()->GetName());
}
@@ -0,0 +1,26 @@
// Fill out your copyright notice in the Description page of Project Settings.
#pragma once
#include "CoreMinimal.h"
#include "Components/ActorComponent.h"
#include "InteractableActorComponent.generated.h"
UCLASS( ClassGroup=(Custom), meta=(BlueprintSpawnableComponent), Blueprintable )
class WIZARDINGCENTRAL_API UInteractableActorComponent : public UActorComponent
{
GENERATED_BODY()
public:
// Sets default values for this component's properties
UInteractableActorComponent();
protected:
// Called when the game starts
virtual void BeginPlay() override;
public:
UFUNCTION(BlueprintNativeEvent, BlueprintCallable, Category = "Interactable Actor")
void OnInteract(AActor* Interactor);
};
@@ -14,7 +14,8 @@ public class WizardingCentral : ModuleRules
"CoreUObject", "CoreUObject",
"Engine", "Engine",
"InputCore", "InputCore",
"EnhancedInput" "EnhancedInput",
"UMG",
}); });
PrivateDependencyModuleNames.AddRange(new string[] { }); PrivateDependencyModuleNames.AddRange(new string[] { });
+4 -1
View File
@@ -7,7 +7,10 @@
{ {
"Name": "WizardingCentral", "Name": "WizardingCentral",
"Type": "Runtime", "Type": "Runtime",
"LoadingPhase": "Default" "LoadingPhase": "Default",
"AdditionalDependencies": [
"Engine"
]
} }
], ],
"Plugins": [ "Plugins": [