ULimenAsyncActionKeyRebind
Overview
ULimenAsyncActionKeyRebind is an asynchronous action that handles the rebinding of a key mapping by displaying a modal dialog to the player. It inherits from UBlueprintAsyncActionBase and implements FTickableGameObject for periodic updates. The class manages input handling, modal display, and timeout logic.
Properties
Type | Name | Access | Description |
|---|---|---|---|
FOnKeyPressed | OnKeyPressed | BlueprintAssignable | Event triggered when a new key is pressed. |
FTimeoutDelegate | OnTimeout | BlueprintAssignable | Event triggered when the rebind operation times out. |
Functions
Return Type | Signature | Description |
|---|---|---|
ULimenAsyncActionKeyRebind* | RebindKey(UObject* InWorldContext, ALimenPlayerControllerBase* PlayerController, FEnhancedActionKeyMapping KeyMapping, const float InTimeoutTime) | Creates and activates a new instance of |
void | BeginDestroy() | Cleans up resources when the action is destroyed. |
void | Activate() | Starts the key rebind process. |
bool | IsTickableWhenPaused() const | Determines if the object should be ticked while paused. |
bool | IsTickableInEditor() const | Determines if the object should be ticked in the editor. |
UWorld* | GetTickableGameObjectWorld() const | Returns the world associated with the tickable game object. |
void | Tick(const float DeltaTime) | Updates the modal display and checks for timeout. |
ETickableTickType | GetTickableTickType() const | Specifies the type of tick required by the object. |
bool | IsTickable() const | Determines if the object should be ticked. |
TStatId | GetStatId() const | Returns a unique identifier for performance profiling. |
Usage & Implementation Notes
The action uses
FTickableGameObjectto handle periodic updates, ensuring that the modal is updated and the timeout is checked.Input handling is managed by
ALimenInputListener, which binds any key press event and triggers the rebind completion when a new key is pressed.The modal display is controlled using
ULimenGenericModalWidget, which is displayed during the rebind process and updated with remaining time.The action ensures that input mode is restored to its previous state upon completion or timeout.