flatland-presentation 0.2.21

Gfx sprite mode resolution — maps game states to sprite sheet mode ids
Documentation
//! Resolve authoritative game states to gfx sprite `mode_id`s.

mod catalog;
mod directional;
mod npc_states;
mod player_config;
mod player_states;
mod resolve;
mod validate;

pub use catalog::{default_sprites_dir, load_sprite_catalog, SpriteCatalog, SpriteSheetModes};
pub use directional::{
    base_sprite_mode, cardinal_facing_label, eight_way_facing_label, expand_directional_draw_mode,
    four_way_facing_label, sheet_has_mode, PLAYER_DIRECTIONAL_BASE_MODES,
};
pub use npc_states::{
    resolve_placed_npc_presentation_key, resolve_wildlife_presentation_key,
    PlacedNpcPresentationInput, WildlifeNpcPresentationInput, NPC_LEGACY_BEHAVIOR_ALIASES,
    NPC_PRESENTATION_STATES,
};
pub use player_config::{
    default_player_presentation_path, load_player_presentation, load_player_presentation_default,
    PlayerPresentationConfig, PlayerPresentationDoc,
};
pub use player_states::{
    resolve_player_presentation_key, PlayerPresentationInput, PLAYER_PRESENTATION_STATES,
};
pub use resolve::{
    npc_presentation_key, placed_npc_presentation_input, player_presentation_input,
    resolve_npc_sprite_mode, resolve_player_sprite_mode, resolve_resource_sprite_mode,
    resource_presentation_key, wildlife_npc_presentation_input, NpcPresentationInput,
    PlayerSpritePresentationInput, RESOURCE_PRESENTATION_KEYS,
    RESOURCE_PRESENTATION_KEY_COOLDOWN_LEGACY,
};
pub use validate::{mode_exists_on_sheet, validate_sprite_mode_maps};

use std::collections::HashMap;

/// Presentation key → sprite sheet mode id (from item/NPC YAML `sprite_modes`).
pub type SpriteModeMap = HashMap<String, String>;