Skip to content

🎁 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 MonoBehaviour components
  • trigger relay helpers for 2D and 3D
  • interactable pickup patterns
  • Unity-side helper components and config types

🧩 What Lives Here

Main scene components:

  • TriggerPickup
  • InteractablePickupBase

Trigger relays:

  • IPickupTriggerReceiver
  • TriggerRelay2D
  • TriggerRelay3D

Helpers and config:

  • PickupBillboard
  • DestroyWithTarget (internal)
  • ShieldSystem
  • PickupMode
  • PickupPrefabSettings, 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 IDamageable when 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 camera
  • ShieldSystem → 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.


  • Core
  • Effects
  • Definitions
  • Authority
  • Feedback