Pickups — Feedback¶
Folder: Runtime/Systems/Pickups/Feedback
This folder contains the optional UX layer for pickups.
It provides MonoBehaviour components that respond to pickup success or failure by playing visual or audio feedback.
Purpose¶
The Feedback layer provides presentation-only responses to pickup events.
It is responsible for:
- visual and audio feedback on success or failure
- keeping presentation separate from gameplay logic
- enabling feedback without modifying core systems
This folder does not:
- affect pickup success or failure
- modify effect execution
- participate in the pickup pipeline
Folder Overview¶
This folder provides:
- interface-driven feedback hooks
- simple MonoBehaviour components for VFX and SFX
- optional, plug-in presentation behaviour
What Lives Here¶
IPickupFeedback→ success feedback contractIPickupFailFeedback→ failure feedback contract- built-in MonoBehaviour implementations for SFX and VFX
Usage Guidance¶
Success Feedback¶
void PlayFeedback(Transform at);
Invoked when a pickup succeeds.
Failure Feedback¶
void PlayFail(Transform at);
Invoked when a pickup attempt fails.
Invocation Pattern¶
if (component is IPickupFeedback fx)
fx.PlayFeedback(transform);
Notes:
- only enabled components are invoked
- execution is best-effort and should not throw exceptions
Diagnostics¶
- multiple feedback components may run together
- execution order is not guaranteed
- components should be fast and non-blocking
Important Notes¶
- feedback does not affect gameplay logic
- feedback does not block or cancel execution
- behaviour depends on available components and configuration
Not for Production Use¶
It provides presentation-only behaviour
This folder does not provide:
- gameplay logic
- pipeline control
- authority or validation
Related Documentation¶
- UnityIntegration
- Core
- Effects