mini_arcade_core.scenes.entity_blueprints

Helpers for building entities from data-driven scene config.

Functions

deep_merge_dict(→ dict[str, Any])

Deep-merge nested dictionaries, replacing non-dict leaves.

resolve_size_value(→ float)

Resolve one size component from config.

resolve_axis_value(→ float)

Resolve one axis position from a config value.

resolve_transform_layout(→ dict[str, Any])

Resolve viewport-relative transform values into plain numeric center coordinates.

build_entity_payload(→ dict[str, Any])

Merge a template with overrides and resolve transform layout.

Module Contents

mini_arcade_core.scenes.entity_blueprints.deep_merge_dict(base: dict[str, Any], overrides: dict[str, Any] | None = None) dict[str, Any][source]

Deep-merge nested dictionaries, replacing non-dict leaves.

mini_arcade_core.scenes.entity_blueprints.resolve_size_value(raw_value: Any, *, axis_size: float) float[source]

Resolve one size component from config.

mini_arcade_core.scenes.entity_blueprints.resolve_axis_value(raw_value: Any, *, axis_size: float, entity_size: float, axis_name: str) float[source]

Resolve one axis position from a config value.

Supported forms: - 12 - { value: 12 } - { anchor: left|center|right, offset: 20 } - { anchor: top|middle|bottom, offset: 20 } - { relative: 0.5, offset: 0 }

mini_arcade_core.scenes.entity_blueprints.resolve_transform_layout(transform: dict[str, Any] | None, *, viewport: tuple[float, float]) dict[str, Any][source]

Resolve viewport-relative transform values into plain numeric center coordinates.

mini_arcade_core.scenes.entity_blueprints.build_entity_payload(template: dict[str, Any], *, viewport: tuple[float, float], overrides: dict[str, Any] | None = None) dict[str, Any][source]

Merge a template with overrides and resolve transform layout.