mini_arcade_core.scenes.systems.builtins.powerups

Reusable pickup / power-up collection helpers.

Classes

PickupCollisionBinding

Declarative collector-vs-pickup intersection rule.

PickupCollisionSystem

Collect overlapping pickup-like entities and optionally remove them.

Module Contents

class mini_arcade_core.scenes.systems.builtins.powerups.PickupCollisionBinding[source]

Bases: Generic[TCtx]

Declarative collector-vs-pickup intersection rule.

collectors_getter: Callable[[TCtx], Iterable[mini_arcade_core.engine.entities.BaseEntity]]
pickups_getter: Callable[[TCtx], Iterable[mini_arcade_core.engine.entities.BaseEntity]]
predicate: Callable[[TCtx, mini_arcade_core.engine.entities.BaseEntity], bool]
on_collect: Callable[[TCtx, mini_arcade_core.engine.entities.BaseEntity, mini_arcade_core.engine.entities.BaseEntity], None] | None = None
remove_collected: bool = True
class mini_arcade_core.scenes.systems.builtins.powerups.PickupCollisionSystem[source]

Bases: Generic[TCtx]

Collect overlapping pickup-like entities and optionally remove them.

name: str = 'common_pickup_collision'
phase: int
order: int = 48
enabled_when: Callable[[TCtx], bool]
bindings: tuple[PickupCollisionBinding[TCtx], Ellipsis] = ()
step(ctx: TCtx) None[source]

Resolve pickup collection for all configured bindings.