# WBP_InteractionPromptDisplay — Asset Implementation

> **UE5 Asset:** `/Game/Framework/UI/WBP_InteractionPromptDisplay`
> **Parent Class:** `UserWidget`

---

## Create This Widget

1. Content Browser → `Content/Framework/UI/`
2. Right-click → **User Interface → Widget Blueprint**
3. Name: `WBP_InteractionPromptDisplay`

---

## Designer Canvas

```
Canvas Panel
  └─ Border (background, semi-transparent black)
       └─ Horizontal Box
            ├─ Image (key icon, e.g. "E" key)
            └─ Vertical Box
                 ├─ TextBlock "PromptText"   (e.g. "Pick Up")
                 └─ TextBlock "SubText"      (e.g. "MedKit")
```

---

## What to Wire

### Function: ShowPrompt
```
Inputs: PromptText(Text), SubText(Text), KeyIcon(Texture2D), bShowHoldProgress(Boolean)
  ├─ Set PromptText = PromptText
  ├─ Set SubText = SubText
  ├─ Set KeyIcon = KeyIcon
  ├─ Branch: bShowHoldProgress?
  │   True → Show HoldProgressBar
  ├─ Set Visibility = Visible
  └─ Play Animation (FadeIn)
```

### Function: HidePrompt
```
  ├─ Set Visibility = Hidden
  └─ Stop All Animations
```

### Function: UpdateHoldProgress
```
Input: Progress(0.0-1.0)
  └─ HoldProgressBar → Set Percent(Progress)
```

---

## Events to Handle
| Event | Action |
|-------|--------|
| `BPC_InteractionDetector.OnFocusBegin` | ShowPrompt with object data |
| `BPC_InteractionDetector.OnFocusEnd` | HidePrompt |
| `BPC_InteractionDetector.OnHoldProgress` | UpdateHoldProgress |

---

## Test It
- [ ] Look at an interactable object → prompt appears
- [ ] Hold interact key → progress bar fills
- [ ] Look away → prompt disappears
