52 lines
1.8 KiB
Markdown
52 lines
1.8 KiB
Markdown
# DA_EquipmentConfig — Data Asset
|
|
|
|
> **⚡ C++ Status: Stub** — `Source/PG_Framework/Public/Inventory/DA_EquipmentConfig.h` provides `FDamageTypeResistance` struct (DamageType GameplayTag + Resistance float), `Durability`, `Weight`, and `GetResistance()` query. **Create Data Asset instances** (Right-click → Miscellaneous → Data Asset → `DA_EquipmentConfig`), one per equipment piece. Fill in damage resistances per type. See `docs/developer/cpp-integration-guide.md`.
|
|
>
|
|
> ---
|
|
|
|
**Parent Class:** `UDataAsset`
|
|
**Dependencies:** [`BPC_EquipmentSlotSystem`](../04-inventory/BPC_EquipmentSlotSystem.md)
|
|
**Purpose:** Defines equipment slot configurations — which item categories map to which slots, socket names, and auto-equip rules.
|
|
|
|
---
|
|
|
|
## Variables / Structure
|
|
|
|
| Field | Type | Description |
|
|
|-------|------|-------------|
|
|
| `Slot` | `E_EquipmentSlot` | Equipment slot identifier |
|
|
| `SocketName` | `FName` | Character skeletal mesh socket |
|
|
| `AllowedCategories` | `TArray<E_ItemCategory>` | Categories allowed in this slot |
|
|
| `bAutoEquipOnPickup` | `bool` | Auto-equip matching items on pickup |
|
|
| `bMustBeEmptyToEquip` | `bool` | Slot must be empty before equipping |
|
|
| `VisualAttachmentClass` | `TSubclassOf<AActor>` | Visual attachment actor class |
|
|
|
|
---
|
|
|
|
## Gameplay Tags
|
|
- Namespace: `Equipment.Slot.<Name>` (e.g., `Equipment.Slot.Head`, `Equipment.Slot.Torso`)
|
|
|
|
---
|
|
|
|
## Validation Rules
|
|
- `Slot` must be unique
|
|
- `SocketName` must not be empty if visual attachment is used
|
|
|
|
---
|
|
|
|
## Example Data
|
|
|
|
| Field | Value |
|
|
|-------|-------|
|
|
| Slot | Head |
|
|
| SocketName | `head_socket` |
|
|
| AllowedCategories | `[Equipment]` |
|
|
| bAutoEquipOnPickup | true |
|
|
|
|
---
|
|
|
|
## Consumed By
|
|
- [`BPC_EquipmentSlotSystem`](../04-inventory/BPC_EquipmentSlotSystem.md)
|
|
|
|
## Reuse Notes
|
|
- Equipment configs are data-driven; new slots added without code changes |