🎁 Pickups — UnityIntegration¶
Folder: Runtime/Systems/Pickups/UnityIntegration
This folder contains the scene-facing Unity components and helper types used to connect the pickup effect pipeline to GameObjects, colliders, and prefabs.
🎯 Purpose¶
The UnityIntegration layer wires pickup behaviour into Unity scenes.
It is responsible for:
- connecting pickups to GameObjects, colliders, and triggers
- providing reusable scene components for trigger and interactable pickups
- supplying small Unity-side helpers used by pickup behaviours
- defining prefab/tooling-facing configuration types
This folder does not include:
- the pickup effect pipeline
- effect construction or dispatch
- authority resolution
- feedback contracts
📦 Folder Overview¶
This folder provides:
- scene-facing
MonoBehaviourcomponents - trigger relay helpers for 2D and 3D
- interactable pickup patterns
- Unity-side helper components and config types
🧩 What Lives Here¶
Main scene components:
TriggerPickupInteractablePickupBase
Trigger relays:
IPickupTriggerReceiverTriggerRelay2DTriggerRelay3D
Helpers and config:
PickupBillboardDestroyWithTarget(internal)ShieldSystemPickupModePickupPrefabSettings,PickupDimension,Collider2DType,Collider3DType
🧠 Usage Guidance¶
Trigger-Based Pickups¶
TriggerPickup provides a ready-to-use world pickup.
- consumes on trigger enter
- filters by layer and optional tag
- optionally checks authority
- resolves
IDamageablewhen required
Use this for simple "walk into pickup" behaviour.
Interactable Pickups¶
InteractablePickupBase supports interaction-driven flows.
- auto, press, or hold interaction modes
- optional facing checks and prompts
- success and failure feedback hooks
Derived classes must implement:
protected abstract bool DoPickup(GameObject actor);
Trigger Relays¶
TriggerRelay2D and TriggerRelay3D forward physics callbacks to IPickupTriggerReceiver.
- decouples trigger handling from 2D/3D specifics
- resolves actor roots from rigidbodies or transforms
Helper Components¶
PickupBillboard→ faces the main cameraShieldSystem→ lightweight temporary shield helper
Config types describe prefab setup and are used by tooling.
🧪 Diagnostics¶
- trigger events are forwarded through relay components
- behaviour depends on collider setup and actor resolution
- interactable flow depends on input availability and configuration
⚠️ Important Notes¶
- this layer connects scene behaviour to the pickup pipeline
- it does not define effect rules or execution policy
- authority is not enforced automatically in all components
- helper components are optional and context-dependent
🚫 Not for Production Use¶
This folder does not provide:
- effect execution logic
- decorator composition
- authority or networking systems
It provides scene integration only.
🔗 Related Documentation¶
- Core
- Effects
- Definitions
- Authority
- Feedback