Purpose
Prompt suppression is a local UI control for temporarily hiding generated Interaction Framework prompts without clearing focus, changing target state, or invalidating the current interaction surface.
Full Prompt Suppression
Use SuppressInteractionPrompts when another local UI layer owns the player flow and prompt-driven input should be unavailable. Generated prompt widgets are hidden and prompt input bindings are cleared until every full suppression reason is released with ClearInteractionPromptSuppression.
Non-Focused Prompt Suppression
Use SuppressNonFocusedInteractionPrompts when the focused prompt should remain visible but nearby/passive prompts should be hidden. This is useful for inspection views, focused overlays, radial menus, or any custom UI that should keep the active target visible while reducing prompt clutter.
Reason Keys
Suppression is reason-based and reference-counted by system intent. Use stable reason names such as Inventory, Inspection, Cinematic, or ModalFlow. Clear the same reason that was used to suppress prompts. This prevents one UI layer from accidentally restoring prompts that another UI layer still owns.
Blueprint Access
Widgets can call the convenience helpers on UInteractionUIPromptBlueprintLibrary from any valid world context. Systems that already hold the local player subsystem can call the matching functions on UInteractionUIManagerSubsystem directly.
Prompt Suppression Versus Flow Guards
Suppression controls visibility and prompt input ownership. It does not freeze interaction evaluation. Use Flow Guards when a command is about to make the current prompt surface collapse but a custom widget still needs a deliberate transition or cleanup event.
Cleanup Checklist
- Call clear from animation-finished, widget removal, or owner teardown paths.
- Clear full suppression before expecting prompt input to resume.
- Clear non-focused suppression when nearby prompts should become visible again.
- Use unique reason names for independent UI owners.