Overview

Create a flexible Pickup system which allows a quick implementation of various pickups with different effects on activation.

This system consists of 3 elements:

  1. Pickup Effect Object
  2. Pickup Effects Component
  3. Pickup Object

Pickup Effect Object

This is a lightweight object which encapsulates the effect activation logic of a pickup.

The object should have these parameters, functions, and callbacks.

FUNCTION DESCRIPTION
ActivateEffect Activates the effect, this function can be overridden to implement the actual effect logic

Pickup Effect Component

This component determines what PickupEffectObject will be used on pickup activation.

The component should have these parameters, functions, and callbacks.

PARAMETER DESCRIPTION
PickupEffect Determines PickupEffectObject which will be used on activation
FUNCTION DESCRIPTION
ActivatePickupEffect Activates pickup effect in PickupEffect
CALLBACK DESCRIPTION
OnPickupEffectActivated Called when PickupEffect was successfully activated

Pickup Object

An actual pickup object which can be placed in the world.

This object must have at least 2 components:

  1. Activation Trigger