// Copyright ExByte Studios. Item Interaction Ecosystem. #pragma once #include "CoreMinimal.h" #include "InteractionAction.h" #include "PlacementInteractionActions.generated.h" /** Placement actions (section 16) - drive the player's UPlacementPreviewComponent. */ UCLASS(meta = (DisplayName = "Action: Start Placement")) class ITEMPLACEMENT_API UInteractionAction_StartPlacement : public UInteractionAction { GENERATED_BODY() public: UInteractionAction_StartPlacement(); virtual void Execute_Implementation(const FInteractionContext& Context) override; }; UCLASS(meta = (DisplayName = "Action: Confirm Placement")) class ITEMPLACEMENT_API UInteractionAction_ConfirmPlacement : public UInteractionAction { GENERATED_BODY() public: UInteractionAction_ConfirmPlacement(); virtual void Execute_Implementation(const FInteractionContext& Context) override; }; UCLASS(meta = (DisplayName = "Action: Cancel Placement")) class ITEMPLACEMENT_API UInteractionAction_CancelPlacement : public UInteractionAction { GENERATED_BODY() public: UInteractionAction_CancelPlacement(); virtual void Execute_Implementation(const FInteractionContext& Context) override; };