ALimenArchiveItem
Overview
ALimenArchiveItem is a subclass of ALimenInteractable designed to manage the archiving state of an item. It includes properties for binding an archive class and handling interaction animations. The class interacts with the ULimenArchiveSubsystem to manage archives and respond to new archive additions.
Properties
Type | Name | Access | Description |
|---|---|---|---|
TSoftClassPtr< ULimenArchive > | BoundArchiveClass | EditAnywhere | The class of the archive that this item can be archived into. |
float | InteractAnimationTime | EditDefaultsOnly | The duration of the interaction animation in seconds. |
Functions
Return Type | Signature | Description |
|---|---|---|
bool | HasAlreadyBeenArchived() const | Checks if the item has already been archived by looking up the bound archive class in the |
void | Interact(AController* InController, APawn* InPawn) override | Handles the interaction logic for archiving the item. Creates a new archive if necessary and triggers the interaction animation. |
UFUNCTION(BlueprintImplementableEvent, BlueprintCosmetic) | InteractAnimation(const float AnimationTime) | A blueprint-implementable event that can be overridden to provide custom interaction animations. |
Usage & Implementation Notes
The
HasAlreadyBeenArchivedfunction checks if an archive of the bound class already exists in the system.The
Interactfunction manages the creation and addition of a new archive, as well as triggering any necessary animations.The
NewArchiveAddedfunction is called when a new archive is added to the system. If it matches the bound archive class, the item is removed from gameplay.This class requires the
ULimenArchiveSubsystemto be available in the game instance for proper functionality.