Skip to main content

flatland_client_ui/
lib.rs

1//! Engine-agnostic play client UI (world grid, input, presentation).
2
3mod app;
4mod color;
5mod hud;
6mod input;
7mod interior_wall_layout;
8mod keybindings;
9mod keymap;
10mod layout;
11mod map_presentation;
12mod rotation_editor;
13mod world;
14
15pub use app::{
16    ActiveOverlay, InputAction, MapTargetState, MovementInput, MovementState, MOVEMENT_IDLE_TIMEOUT,
17};
18pub use color::{parse_color, RgbColor};
19pub use hud::{HudViewMode, PlayHud};
20pub use input::{
21    digit_from_typed_char, us_qwerty_shifted_digit, UiKeyCode, UiKeyEvent, UiKeyEventKind,
22    UiKeyModifiers, UiMouseButton, UiPointerEvent,
23};
24pub use interior_wall_layout::{interior_door_display_xy, interior_wall_glyph_line};
25pub use keybindings::{format_keybindings_plain, KeyBinding, KeyBindingCategory, CATEGORIES};
26pub use keymap::{combat_action_for_key, key_matches, CombatKeyAction};
27pub use layout::{hud_layout, HudLayout, NormRect};
28pub use map_presentation::{
29    chest_presentation, corpse_presentation, door_presentation, entity_fallback,
30    format_map_legend_plain, loot_presentation, map_legend_entries, maybe_reload_for_content_rev,
31    npc_for, player_presentation, quest_board_presentation, reload_map_presentation_catalog,
32    resource_for, shallow_water_presentation, terrain_for, terrain_for_elevation, terrain_for_zone,
33    wall_presentation, well_center_presentation, MapLegendEntry, MapPresentation,
34};
35pub use rotation_editor::{
36    editor_ability_choices, next_custom_preset, preset_deletable, EDITOR_ABILITIES,
37};
38pub use world::{grid_to_world, WorldView, WorldViewOptions};