Skip to content

Pickups — Sample Scenes

This folder contains runnable demo scenes for the Pickups system.

Each scene demonstrates a specific part of the pickup pipeline and is paired with a Teachable Panel that explains the behaviour live.


What These Scenes Are For

These scenes are designed to:

  • Show how the Pickups system behaves in isolation
  • Demonstrate pickup effects and composition without external dependencies
  • Provide a safe environment for testing effects, decorators, and cooldowns
  • Teach the system through live panels + minimal scene setups

👉 These scenes focus on core Pickups behaviour only.


Scene → Teachable Mapping

Every scene is built around a corresponding Teachable Panel:

Scene Focus Teachable Panel
00 — Quickstart (Minimal) Standalone pickup flow (no Inventory) PickupsQuickstartPanel
01 — Decorators + Cooldowns Effect wrapping + cooldown behaviour PickupsDecoratorsAndApplyPathPanel

👉 Open the panel in each scene to see exactly how the system is working.


World Pickups & Integrations

TriggerPickup itself is already in 00 — the teleport cube is one, and walking into it is the whole flow: overlap → relay → TriggerPickup → effect. The sword beside it is an InteractablePickupBase in Press mode, so you walk up to it and press F.

The rest of the input-driven surface is demonstrated in the Integrations folder:

Integrations/Pickups/InventoryIntegration/Scenes/02_World_Pickups_+_Interactables

That scene ships three catalog prefabs, one per interaction mode, all using F as the interact key:

Prefab Mode What to do
GoldHelmet Auto Walk into it. It picks up on trigger enter.
GoldSword PressToPickup Stand in it and tap F.
ShortSword HoldToPickup Stand in it and hold F for ~0.4s.

Spawn one from the panel's Spawn tab, then walk the Player into it. None of the three has a prompt UI assigned, so nothing appears on screen to tell you to press the key — that field is InteractablePickupBase.promptUI, and wiring one up is the exercise.

Facing checks (facingDotThreshold) and respawn (respawn / respawnDelay) are fields on the same component. No shipped scene enables either — the prefabs leave facing off (-1) and respawn off. To see them, set them on a prefab and spawn it again.

👉 These are separated to keep core Pickups scenes fully standalone and removable.


What These Scenes Demonstrate

Effect System

  • PickupEffect as the core behaviour unit
  • Decorators wrapping effects (VFX, audio, conditions, etc.)
  • Application via PickupEffectRunner

Cooldowns

  • Per-effect cooldowns
  • Owner-based cooldown tracking
  • Runtime gating of repeated application

Authority (Optional)

  • Pickups can be gated by IPickupAuthority
  • If no authority is present → local allow (single-player default)
  • Some scenes include authority hints via panels

Inventory Independence

  • These scenes do not require Inventory
  • Use SimpleItemBag for lightweight demo storage
  • No services, adapters, or backend systems required

Important Notes

These are core demo scenes

  • They are not production setups
  • They do not define required prefab structures
  • They do not enforce a specific architecture

Panels are developer tools

  • Teachable Panels are for learning and debugging
  • They are not gameplay UI
  • They expose behaviour — they do not replace runtime systems

Assets are examples

  • Models, materials, and props are included for demonstration only
  • They are not part of the framework API

How to Use These Scenes

  1. Open a scene
  2. Press Play
  3. Open the corresponding Teachable Panel
  4. Apply effects and observe behaviour
  5. Modify inputs and test edge cases

👉 Each scene is intentionally minimal — focus on behaviour, not presentation.


Safe to Modify or Remove

All scenes and assets in this folder are optional.

You can:

  • Modify them
  • Replace them
  • Delete them

without affecting the Pickups runtime system.


Summary

These scenes exist to answer:

“How does the Pickups system behave in isolation?”

They provide:

  • Clear, focused examples
  • Live, inspectable behaviour
  • Zero hidden setup

For full world interaction and cross-system usage, see the Integrations scenes.