From b2817efae02eba5dbe69fa37daf69c16c37bc63d Mon Sep 17 00:00:00 2001 From: Ewpratten Date: Sun, 3 Apr 2022 20:48:58 +0000 Subject: [PATCH] deploy: 76aede470bcf85a1906db2ac7d2e5acc84c4d210 --- .../game_logic/scenes/main_menu/index.html | 2 +- .../scenes/main_menu/struct.MainMenu.html | 7 +-- .../game_logic/scenes/pause_menu/index.html | 2 +- .../scenes/pause_menu/struct.PauseMenu.html | 6 ++- .../scenes/player_interaction/index.html | 2 +- .../struct.PlayableScene.html | 9 ++-- rustdoc/search-index.js | 2 +- .../src/game_logic/scenes/main_menu.rs.html | 34 ++++++++++-- .../src/game_logic/scenes/pause_menu.rs.html | 52 ++++++++++++++++++- .../scenes/player_interaction.rs.html | 46 +++++++++++++++- 10 files changed, 143 insertions(+), 19 deletions(-) diff --git a/rustdoc/game_logic/scenes/main_menu/index.html b/rustdoc/game_logic/scenes/main_menu/index.html index 9dcf0006..f84c06f8 100644 --- a/rustdoc/game_logic/scenes/main_menu/index.html +++ b/rustdoc/game_logic/scenes/main_menu/index.html @@ -1,6 +1,6 @@ game_logic::scenes::main_menu - Rust

Module game_logic::scenes::main_menu[][src]

Expand description

This scene encompasses the main menu system

+

Module main_menu

Module game_logic::scenes::main_menu[][src]

Expand description

This scene encompasses the main menu system

Structs

Enums

diff --git a/rustdoc/game_logic/scenes/main_menu/struct.MainMenu.html b/rustdoc/game_logic/scenes/main_menu/struct.MainMenu.html index 528fcfa6..f21f664c 100644 --- a/rustdoc/game_logic/scenes/main_menu/struct.MainMenu.html +++ b/rustdoc/game_logic/scenes/main_menu/struct.MainMenu.html @@ -1,10 +1,11 @@ MainMenu in game_logic::scenes::main_menu - Rust

Struct game_logic::scenes::main_menu::MainMenu[][src]

pub struct MainMenu {
+        

Struct MainMenu

Struct game_logic::scenes::main_menu::MainMenu[][src]

pub struct MainMenu {
     pub has_updated_discord_rpc: bool,
     volume_percentage: f32,
-}

Fields

has_updated_discord_rpc: boolvolume_percentage: f32

Implementations

Construct a new MainMenu

-

Trait Implementations

Formats the value using the given formatter. Read more

+ show_debug_info: bool, +}

Fields

has_updated_discord_rpc: boolvolume_percentage: f32show_debug_info: bool

Implementations

Construct a new MainMenu

+

Trait Implementations

Formats the value using the given formatter. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

diff --git a/rustdoc/game_logic/scenes/pause_menu/index.html b/rustdoc/game_logic/scenes/pause_menu/index.html index 65a1fb86..5c37d789 100644 --- a/rustdoc/game_logic/scenes/pause_menu/index.html +++ b/rustdoc/game_logic/scenes/pause_menu/index.html @@ -1,6 +1,6 @@ game_logic::scenes::pause_menu - Rust

Module game_logic::scenes::pause_menu[][src]

Expand description

This scene encompasses the main menu system

+

Module pause_menu

Module game_logic::scenes::pause_menu[][src]

Expand description

This scene encompasses the main menu system

Structs

\ No newline at end of file diff --git a/rustdoc/game_logic/scenes/pause_menu/struct.PauseMenu.html b/rustdoc/game_logic/scenes/pause_menu/struct.PauseMenu.html index d1784afd..b29879cd 100644 --- a/rustdoc/game_logic/scenes/pause_menu/struct.PauseMenu.html +++ b/rustdoc/game_logic/scenes/pause_menu/struct.PauseMenu.html @@ -1,7 +1,9 @@ PauseMenu in game_logic::scenes::pause_menu - Rust

Struct game_logic::scenes::pause_menu::PauseMenu[][src]

pub struct PauseMenu {}

Implementations

Construct a new PauseMenu

-

Trait Implementations

Formats the value using the given formatter. Read more

+

Struct PauseMenu

Struct game_logic::scenes::pause_menu::PauseMenu[][src]

pub struct PauseMenu {
+    show_debug_info: bool,
+}

Fields

show_debug_info: bool

Implementations

Construct a new PauseMenu

+

Trait Implementations

Formats the value using the given formatter. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

diff --git a/rustdoc/game_logic/scenes/player_interaction/index.html b/rustdoc/game_logic/scenes/player_interaction/index.html index 1d7222ad..56475c6f 100644 --- a/rustdoc/game_logic/scenes/player_interaction/index.html +++ b/rustdoc/game_logic/scenes/player_interaction/index.html @@ -1,6 +1,6 @@ game_logic::scenes::player_interaction - Rust

Module game_logic::scenes::player_interaction[][src]

Expand description

This scene encompasses all of the game where the player can walk around.

+

Module player_interaction

Module game_logic::scenes::player_interaction[][src]

Expand description

This scene encompasses all of the game where the player can walk around.

Structs

\ No newline at end of file diff --git a/rustdoc/game_logic/scenes/player_interaction/struct.PlayableScene.html b/rustdoc/game_logic/scenes/player_interaction/struct.PlayableScene.html index 2124ee86..8423f678 100644 --- a/rustdoc/game_logic/scenes/player_interaction/struct.PlayableScene.html +++ b/rustdoc/game_logic/scenes/player_interaction/struct.PlayableScene.html @@ -1,6 +1,6 @@ PlayableScene in game_logic::scenes::player_interaction - Rust

Struct game_logic::scenes::player_interaction::PlayableScene[][src]

pub struct PlayableScene {
+        

Struct PlayableScene

Struct game_logic::scenes::player_interaction::PlayableScene[][src]

pub struct PlayableScene {
     pub has_updated_discord_rpc: bool,
     player: Player,
     world_map: MapRenderer,
@@ -8,9 +8,10 @@
     last_update: SystemTime,
     game_soundtrack: Music,
     world_colliders: Vec<ObjectCollider>,
-}

Fields

has_updated_discord_rpc: boolplayer: Playerworld_map: MapRenderercamera: Camera2Dlast_update: SystemTimegame_soundtrack: Musicworld_colliders: Vec<ObjectCollider>

Implementations

Construct a new PlayableScene

-

Handler for each frame

-

Trait Implementations

Formats the value using the given formatter. Read more

+ show_debug_info: bool, +}

Fields

has_updated_discord_rpc: boolplayer: Playerworld_map: MapRenderercamera: Camera2Dlast_update: SystemTimegame_soundtrack: Musicworld_colliders: Vec<ObjectCollider>show_debug_info: bool

Implementations

Construct a new PlayableScene

+

Handler for each frame

+

Trait Implementations

Formats the value using the given formatter. Read more

Auto Trait Implementations

Blanket Implementations

Gets the TypeId of self. Read more

Immutably borrows from an owned value. Read more

Mutably borrows from an owned value. Read more

diff --git a/rustdoc/search-index.js b/rustdoc/search-index.js index f3dd5401..1889f3e3 100644 --- a/rustdoc/search-index.js +++ b/rustdoc/search-index.js @@ -1,4 +1,4 @@ var searchIndex = JSON.parse('{\ -"game_logic":{"doc":"This file is the main entry point for the game logic.","t":[0,0,0,5,0,0,0,0,0,0,0,0,0,0,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,13,4,13,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,12,12,3,11,11,11,11,11,11,12,11,11,11,11,5,12,11,11,11,11,11,11,13,13,13,4,11,11,11,11,11,11,11,11,11,5,5,5,11,11,11,11,11,11,11,12,12,12,5,5,17,6,3,11,11,11,11,11,11,12,11,0,11,11,12,0,12,11,11,11,11,12,11,13,13,13,4,3,13,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,13,13,13,13,4,13,13,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,3,11,11,12,11,11,11,11,11,11,11,11,11,11,11,0,0,0,3,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,12,3,6,3,3,3,6,12,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,12,12,13,13,3,4,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,12,12,11,11,11,11,11,11,12,12,12,0,0,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,3,3,3,12,12,12,12,11,11,11,11,11,11,12,11,11,11,12,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,13,13,13,13,13,13,4,13,4,4,13,4,13,4,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,5,0,0,3,11,11,11,11,12,11,11,11,11,12,11,11,11,11,11,3,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,0,0,3,4,3,3,13,13,13,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,13,4,3,3,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,12,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,3,12,11,11,11,11,11,11,11,0,12,12,11,0,0,11,12,12,12,12,0,11,11,11,11,11,13,13,13,13,13,3,4,13,13,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,3,11,11,12,11,11,11,11,11,12,12,11,11,12,11,12,11,11,11,11,11,11,11,11,12,12,3,11,11,12,11,12,11,11,11,11,11,11,11,11,11,11,11,12],"n":["asset_manager","coord_convert","discord","entrypoint","global_resource_package","model","persistent","project_constants","rendering","scenes","datastore","json","sprite_types","texture","InternalData","borrow","borrow_mut","from","from_subset","get","get","into","is_in_subset","iter","iter","to_subset","to_subset_unchecked","try_from","try_into","type_id","AssetNotFound","InternalJsonLoadError","JsonError","borrow","borrow_mut","fmt","fmt","from","from","from_subset","into","is_in_subset","load_json_structure","source","to_string","to_subset","to_subset_unchecked","try_from","try_into","type_id","0","0","KnownSpriteType","borrow","borrow_mut","clone","clone_into","deserialize","fmt","friendly_name","from","from_subset","into","is_in_subset","load_known_sprite_types","short_name","to_owned","to_subset","to_subset_unchecked","try_from","try_into","type_id","AssetNotFound","Generic","Io","ResourceLoadError","borrow","borrow_mut","fmt","fmt","from","from","from_subset","into","is_in_subset","load_music_from_internal_data","load_sound_from_internal_data","load_texture_from_internal_data","source","to_string","to_subset","to_subset_unchecked","try_from","try_into","type_id","0","0","0","game_to_tiled","tiled_to_game","DISCORD_CONNECT_TIMEOUT_SECONDS","DiscordChannel","DiscordRpcThreadHandle","begin_thread_non_blocking","borrow","borrow_mut","from","from_subset","get_channel","internal_client","into","ipc","is_in_subset","new","rx_chan","signal","state","to_subset","to_subset_unchecked","try_from","try_into","tx_chan","type_id","AwaitConnection","Connection","ConnectionTimeout","DiscordError","DiscordRpcClient","Sdk","borrow","borrow","borrow_mut","borrow_mut","clear_rich_presence","discord","fmt","fmt","from","from","from","from","from","from_subset","from_subset","into","into","is_in_subset","is_in_subset","new","set_rich_presence","source","to_string","to_subset","to_subset","to_subset_unchecked","to_subset_unchecked","try_from","try_from","try_into","try_into","type_id","type_id","user","wheel","0","0","0","BeginGameTimer","ChangeAssets","ChangeDetails","ClearGameTimeRemaining","DiscordRpcSignal","EndGameTimer","SetGameTimeRemainingTimestamp","StatefulDiscordRpcSignalHandler","apply","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","default","fmt","fmt","from","from","from_subset","from_subset","game_assets","game_details","game_end_timer","game_party_status","game_start_timer","into","into","is_in_subset","is_in_subset","to_owned","to_owned","to_subset","to_subset","to_subset_unchecked","to_subset_unchecked","try_from","try_from","try_into","try_into","type_id","type_id","0","0","details","party_status","GlobalResources","borrow","borrow_mut","button_click_sound","fmt","from","from_subset","into","is_in_subset","load","to_subset","to_subset_unchecked","try_from","try_into","type_id","player","world_object","world_object_package","Player","borrow","borrow_mut","clone","clone_into","fmt","from","from_subset","into","is_in_subset","new","position","size","to_owned","to_subset","to_subset_unchecked","try_from","try_into","type_id","velocity","ObjectCollider","ObjectSpaceObjectCollider","PossiblyAnimatedTexture","WorldObject","WorldObjectRef","WorldSpaceObjectCollider","animated","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","bottom_texture","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","deserialize","deserialize","deserialize","deserialize","file_path","fmt","fmt","fmt","fmt","footprint","friction","from","from","from","from","from_subset","from_subset","from_subset","from_subset","get_tile_space_position","get_world_space_position","into","into","into","into","into_key","is_in_subset","is_in_subset","is_in_subset","is_in_subset","kind","name","name","physics_colliders","position","position","rotation_degrees","size","temperature","to_owned","to_owned","to_owned","to_owned","to_subset","to_subset","to_subset","to_subset","to_subset_unchecked","to_subset_unchecked","to_subset_unchecked","to_subset_unchecked","top_texture","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","variant","visualization_radius","JsonError","ResourceError","WorldObjectPackage","WorldObjectPackageLoadError","borrow","borrow","borrow_mut","borrow_mut","bottom_animated_textures","bottom_static_textures","fmt","fmt","fmt","from","from","from","from","from_subset","from_subset","into","into","is_in_subset","is_in_subset","load","object_definitions","object_references","source","to_string","to_subset","to_subset","to_subset_unchecked","to_subset_unchecked","top_animated_textures","top_static_textures","try_from","try_from","try_into","try_into","type_id","type_id","world_space_colliders","0","0","save_state","settings","GameSaveState","borrow","borrow_mut","clone","clone_into","default","deserialize","fmt","from","from_subset","get_save_location","into","is_in_subset","load_or_create","save","serialize","to_owned","to_subset","to_subset_unchecked","try_from","try_into","type_id","PersistentGameSettings","borrow","borrow_mut","clone","clone_into","default","deserialize","fmt","from","from_subset","get_save_location","into","is_in_subset","load_or_create","save","serialize","to_owned","to_subset","to_subset_unchecked","try_from","try_into","type_id","volume","DiscordConstants","PlayerConstants","ProjectConstants","acceleration","app_id","artwork","base_window_size","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","deceleration","deserialize","deserialize","deserialize","discord","fmt","fmt","fmt","from","from","from","from_subset","from_subset","from_subset","game_name","into","into","into","is_in_subset","is_in_subset","is_in_subset","max_velocity","player","start_size","strings","target_fps","tile_size","to_subset","to_subset","to_subset","to_subset_unchecked","to_subset_unchecked","to_subset_unchecked","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","core_renderer_sm","event_loop","screens","utilities","FromFinishLoading","FromFinishPreload","FromForceSmFailure","FromInit","FromInit","Loading","LoadingState","Preload","PreloadState","RenderBackendStates","RenderGame","RenderGameState","SmFailed","SmFailedState","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","eq","eq","eq","eq","eq","finish_loading","finish_preload","fmt","fmt","fmt","fmt","fmt","force_sm_failure","force_sm_failure","force_sm_failure","from","from","from","from","from","from_subset","from_subset","from_subset","from_subset","from_subset","into","into","into","into","into","is_in_subset","is_in_subset","is_in_subset","is_in_subset","is_in_subset","ne","preload","sm_failed","to_owned","to_owned","to_owned","to_owned","to_owned","to_subset","to_subset","to_subset","to_subset","to_subset","to_subset_unchecked","to_subset_unchecked","to_subset_unchecked","to_subset_unchecked","to_subset_unchecked","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","0","0","0","0","handle_graphics_blocking","loading_screen","sm_failure_screen","LoadingScreen","borrow","borrow_mut","from","from_subset","has_updated_discord_status","into","is_in_subset","new","render","resources","to_subset","to_subset_unchecked","try_from","try_into","type_id","SmFailureScreen","borrow","borrow_mut","fmt","from","from_subset","has_updated_discord_status","into","is_in_subset","new","render","to_subset","to_subset_unchecked","try_from","try_into","type_id","anim_texture","map_render","AnimatedTexture","AnimatedTextureLoadError","AnimatedTextureMetadata","FrameTextureDescriptor","InvalidSpriteType","KnownSpriteTypesLoadError","MetadataLoadError","TextureLoadError","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deserialize","deserialize","fmt","fmt","fmt","fmt","fmt","fps","frames","from","from","from","from","from","from","from","from_subset","from_subset","from_subset","from_subset","get_current_frame_index","height","into","into","into","into","into","is_in_subset","is_in_subset","is_in_subset","is_in_subset","new","render_automatic","render_frame_by_index","reset_animation","sheet_height","sheet_width","size","source","start_time","texture","texture_metadata","texture_source_rects","to_owned","to_owned","to_string","to_subset","to_subset","to_subset","to_subset","to_subset_unchecked","to_subset_unchecked","to_subset_unchecked","to_subset_unchecked","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","width","x","y","0","0","0","0","AssetNotFound","MapRenderError","MapRenderer","ProgramDataTileCache","TiledError","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","fmt","fmt","fmt","fmt","from","from","from","from","from_subset","from_subset","from_subset","get_map_size","get_or_try_insert_tileset_with","get_tileset","get_world_colliders","internal_loader","into","into","into","is_in_subset","is_in_subset","is_in_subset","map","new","new","render_map","sample_friction_at","sample_temperature_at","source","tile_textures","tilesets","to_string","to_subset","to_subset","to_subset","to_subset_unchecked","to_subset_unchecked","to_subset_unchecked","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","world_objects","0","0","SceneRenderDelegate","audio_subsystem","borrow","borrow_mut","drop","from","from_subset","into","is_in_subset","main_menu","menu_control_signal","needs_exit","on_game_start","pause_menu","player_interaction","process_ingame_frame","scene_main_menu","scene_pause_menu","scene_playable","scene_test_fox","test_fox","to_subset","to_subset_unchecked","try_from","try_into","type_id","DoCredits","DoLeaderboard","DoMainMenu","DoOptions","DoPauseMenu","MainMenu","MenuStateSignal","QuitGame","StartGame","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","fmt","fmt","from","from","from_subset","from_subset","has_updated_discord_rpc","into","into","is_in_subset","is_in_subset","new","render_credits_frame","render_leaderboard_frame","render_main_menu_frame","render_options_frame","to_owned","to_subset","to_subset","to_subset_unchecked","to_subset_unchecked","try_from","try_from","try_into","try_into","type_id","type_id","volume_percentage","PauseMenu","borrow","borrow_mut","fmt","from","from_subset","into","is_in_subset","new","render_pause_menu_frame","to_subset","to_subset_unchecked","try_from","try_into","type_id","PlayableScene","borrow","borrow_mut","camera","draw_ui","draw_world","fmt","from","from_subset","game_soundtrack","has_updated_discord_rpc","into","is_in_subset","last_update","new","player","render_frame","to_subset","to_subset_unchecked","try_from","try_into","type_id","update_camera","update_physics","world_colliders","world_map","TestFoxScene","borrow","borrow_mut","camera","fmt","fox_animation","from","from_subset","into","is_in_subset","new","render_frame","to_subset","to_subset_unchecked","try_from","try_into","type_id","world_map"],"q":["game_logic","","","","","","","","","","game_logic::asset_manager","","","","game_logic::asset_manager::datastore","","","","","","","","","","","","","","","","game_logic::asset_manager::json","","","","","","","","","","","","","","","","","","","","game_logic::asset_manager::json::InternalJsonLoadError","","game_logic::asset_manager::sprite_types","","","","","","","","","","","","","","","","","","","","game_logic::asset_manager::texture","","","","","","","","","","","","","","","","","","","","","","","game_logic::asset_manager::texture::ResourceLoadError","","","game_logic::coord_convert","","game_logic::discord","","","","","","","","","","","","","","","","","","","","","","","game_logic::discord::ipc","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game_logic::discord::ipc::DiscordError","","","game_logic::discord::signal","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game_logic::discord::signal::DiscordRpcSignal","","","","game_logic::global_resource_package","","","","","","","","","","","","","","","game_logic::model","","","game_logic::model::player","","","","","","","","","","","","","","","","","","","","game_logic::model::world_object","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game_logic::model::world_object_package","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game_logic::model::world_object_package::WorldObjectPackageLoadError","","game_logic::persistent","","game_logic::persistent::save_state","","","","","","","","","","","","","","","","","","","","","","game_logic::persistent::settings","","","","","","","","","","","","","","","","","","","","","","","game_logic::project_constants","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game_logic::rendering","","","","game_logic::rendering::core_renderer_sm","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game_logic::rendering::core_renderer_sm::RenderBackendStates","","","","game_logic::rendering::event_loop","game_logic::rendering::screens","","game_logic::rendering::screens::loading_screen","","","","","","","","","","","","","","","","game_logic::rendering::screens::sm_failure_screen","","","","","","","","","","","","","","","","game_logic::rendering::utilities","","game_logic::rendering::utilities::anim_texture","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game_logic::rendering::utilities::anim_texture::AnimatedTextureLoadError","","","","game_logic::rendering::utilities::map_render","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game_logic::rendering::utilities::map_render::MapRenderError","","game_logic::scenes","","","","","","","","","","","","","","","","","","","","","","","","","","game_logic::scenes::main_menu","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game_logic::scenes::pause_menu","","","","","","","","","","","","","","","game_logic::scenes::player_interaction","","","","","","","","","","","","","","","","","","","","","","","","","","game_logic::scenes::test_fox","","","","","","","","","","","","","","","","",""],"d":["Embedded asset management.","","Interfacing with Discord","This is the game logic entrypoint. Despite being async, …","Global resources","","This module contains the datastructure backing persistent …","The rust side of the dist/project-constants.json file","This module contains lower level rendering logic.","The render code for various scenes","Access to the game’s embedded files.","Utilities for loading JSON from the embedded filesystem.","","Code for loading textures from RAM to VRAM","This structure is dynamically packed with the contents of …","","","","","Get an embedded file and its metadata.","","","","Iterates over the file paths in the folder.","","","","","","","The JSON data was not found in the internal data store","Possible errors generated when deserializing JSON data …","An error occurred with the JSON data itself","","","","","","","","","","Load an embedded JSON file","","","","","","","","","","The structure backing the dist/known-sprite-types.json file","","","","","","","Sprite long name","","","","","Loads a list of all known sprite types from the …","Sprite short name (used in filenames)","","","","","","","","","","","","","","","","","","","","","","Loads an embedded texture into VRAM.","","","","","","","","","","","Converts from the game coordinate system to the tiled …","Converts from the tiled coordinate system to the game …","How long to wait before we give up on connecting to …","A cross-thread communication channel for sending Discord …","","Run the inner communication task in an async context","","","","","Get access to the inter-thread channel for communicating …","","","Discord Rich Presence utilities","","Construct a new DiscordRpcThreadHandle","","This file contains a system for signaling Discord RPC …","","","","","","","","","","","","The client wrapper for Discord RPC","","","","","","Clears the user rich presence","","","","","","","","","","","","","","","Creates a new DiscordRpcClient","Sets the user rich presence","","","","","","","","","","","","","","","","","","Signal to begin a game timer (Discord will display …","Signal to change the graphical assets in the info card","Signal to set the details in the info card","Signal to clear the game remaining timer","Definitions of signals that can be sent to the Discord RPC …","Signal to end a game timer","Signal to begin a countdown timer (Discord will display …","A struct that can keep track of incoming signals and their …","Apply a signal to generate a new activity","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","What the player is doing, eg. “Exploring the Wilds of …","The user’s currenty party status, eg. “Playing Solo”.","Global resource package","","","","","","","","","Load the resources (blocking)","","","","","","","","","","","","","","","","","","","Construct a new player.","","","","","","","","","","Defines a collider in object space.","","","Definition of an object. Only one of these should exist …","Used to reference an object in the world definition","","Signal if the texture is animated or static","","","","","","","","","The object’s bottom texture","","","","","","","","","","","","","Relative file path from dist to the texture","","","","","colliders describing the object’s footprint","Friction","","","","","","","","","","","","","","","","","","","","Object type","Object name. Must match the name of the texture","Object name","Colliders for physics","Position, relative to the object’s center (north east is …","Object position (tile-space not pixel-space). 1,1 being up …","Object rotation, positive is clockwise","Possible sizing","Temperature","","","","","","","","","","","","","The object’s top texture","","","","","","","","","","","","","Variant name","A “sphere of influence” for the object. This is used …","","","A simply interface for the madness","","","","","","Bottom animated textures","Bottom static textures","","","","","","","","","","","","","","","The object definitions","The object references","","","","","","","Top animated textures","Top static textures","","","","","","","A list of colliders in the world. We pre-solve these to …","","","","","Game save state.","","","","","","","","","","Returns the optimal path for storing settings data.","","","Loads the savestate from disk.","Saves the savestate to disk.","","","","","","","","Settings for the game.","","","","","","","","","","Returns the optimal path for storing settings data.","","","Loads the settings from disk.","Saves the settings to disk.","","","","","","","","","Constants relating to Discord","Constants relating to the Player","This structure is filled with the contents of …","Acceleration, tiles per second per second","The Discord application ID","Artwork name mapping","The window size to use on launch","","","","","","","Deceleration, tiles per second per second","","","","The Discord constants","","","","","","","","","","The name of the game","","","","","","","Maximum velocity, tiles per second","The Player constants","Starting size of player in tiles","Strings","The target framerate of the game","The size of the game tiles","","","","","","","","","","","","","","","","This module contains state machine definitions for the …","The Event Loop module","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Will begin rendering graphics. Returns when the window …","Handles loading the global resources and playing an intro …","","","","","","","","","","Construct a new LoadingScreen","","","","","","","","","","","","","","","","","Construct a new SmFailureScreen","","","","","","","This module handles the code for rendering …","","","Possible errors to be thrown during the animation texture …","Definition for the metadata structure attached to each …","Definition for the structure describing a frame’s size …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Get the current frame index","","","","","","","","","","","Construct a new AnimatedTexture","Render the animation based on timestamp","Render a single frame to the screen","Clear the internal tracker for when the animation started","","","","","The animation start timestamp","The whole internal spritesheet","The metadata describing the spritesheet","a list of source rects to reduce memory allocation needs …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Possible errors generated by the map loading process","","","","","","","","","","","","","","","","","","","","","Gets the map size","","Load the tileset. First attempts to pull from an in-RAM …","Get the list of world colliders","","","","","","","","","","Construct a new MapRenderer.","","","","","","","","","","","","","","","","","","","","","","","","","","Delegate for handling rendering. This is a struct to allow …","","","","If you need anything to happen when the game closes, stick …","","","","","This scene encompasses the main menu system","","","This is called when the game first loads","This scene encompasses the main menu system","This scene encompasses all of the game where the player …","This is called every frame once the game has started.","","","","","This “scene” is used only for testing animation and …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Construct a new MainMenu","","","","","","","","","","","","","","","","","","","","","","","","","Construct a new PauseMenu","","","","","","","","","","","","","","","","","","","","","Construct a new PlayableScene","","Handler for each frame","","","","","","","","","","","","","","","","","","","","Construct a new TestFoxScene","Handler for each frame","","","","","",""],"i":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,0,2,2,2,2,2,2,2,2,2,2,0,2,2,2,2,2,2,2,3,4,0,5,5,5,5,5,5,5,5,5,5,5,0,5,5,5,5,5,5,5,6,6,6,0,6,6,6,6,6,6,6,6,6,0,0,0,6,6,6,6,6,6,6,7,8,9,0,0,0,0,0,10,10,10,10,10,10,10,10,0,10,10,10,0,10,10,10,10,10,10,10,11,11,11,0,0,11,12,11,12,11,12,12,11,11,12,11,11,11,11,12,11,12,11,12,11,12,12,11,11,12,11,12,11,12,11,12,11,12,11,12,12,13,14,15,16,16,16,16,0,16,16,0,17,16,17,16,17,16,17,16,17,17,16,17,16,17,16,17,17,17,17,17,17,16,17,16,17,16,17,16,17,16,17,16,17,16,17,16,17,18,19,20,20,0,21,21,21,21,21,21,21,21,21,21,21,21,21,21,0,0,0,0,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,0,0,0,0,0,0,23,23,24,25,26,23,24,25,26,25,23,24,25,26,23,24,25,26,23,24,25,26,23,23,24,25,26,25,25,23,24,25,26,23,24,25,26,26,26,23,24,25,26,26,23,24,25,26,26,25,26,25,24,26,26,24,25,23,24,25,26,23,24,25,26,23,24,25,26,25,23,24,25,26,23,24,25,26,23,24,25,26,26,25,27,27,0,0,27,28,27,28,28,28,27,27,28,27,27,27,28,27,28,27,28,27,28,28,28,28,27,27,27,28,27,28,28,28,27,28,27,28,27,28,28,29,30,0,0,0,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,0,0,0,33,34,34,35,34,33,35,34,33,35,33,34,33,35,35,34,33,35,34,33,35,34,33,35,35,34,33,35,34,33,35,33,35,33,34,35,35,34,33,35,34,33,35,34,33,35,34,33,35,34,33,35,0,0,0,0,36,37,38,39,38,40,0,40,0,0,40,0,40,0,39,37,36,38,40,39,37,36,38,40,39,37,36,38,40,39,37,36,38,40,39,37,36,38,40,37,39,39,37,36,38,40,39,37,36,39,37,36,38,40,39,37,36,38,40,39,37,36,38,40,39,37,36,38,40,40,40,40,39,37,36,38,40,39,37,36,38,40,39,37,36,38,40,39,37,36,38,40,39,37,36,38,40,39,37,36,38,40,41,42,43,44,0,0,0,0,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,0,46,46,46,46,46,46,46,46,46,46,46,46,46,46,46,0,0,0,0,0,0,47,47,47,47,47,48,49,50,47,48,49,50,48,49,48,49,48,49,47,47,48,49,50,49,49,47,47,47,47,48,49,50,47,48,49,50,50,48,47,48,48,49,50,47,48,49,50,50,50,50,50,49,49,50,47,50,50,50,50,48,49,47,47,48,49,50,47,48,49,50,47,48,49,50,47,48,49,50,47,48,49,50,48,48,48,51,52,53,54,55,0,0,0,55,55,56,57,55,56,57,55,55,56,57,55,55,56,57,55,56,57,57,56,56,57,56,55,56,57,55,56,57,57,56,57,57,57,57,55,57,56,55,55,56,57,55,56,57,55,56,57,55,56,57,55,56,57,57,58,59,0,60,60,60,60,60,60,60,60,0,60,60,60,0,0,60,60,60,60,60,0,60,60,60,60,60,61,61,61,61,61,0,0,61,61,61,62,61,62,61,61,61,62,61,62,61,62,62,61,62,61,62,62,62,62,62,62,61,61,62,61,62,61,62,61,62,61,62,62,0,63,63,63,63,63,63,63,63,63,63,63,63,63,63,0,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,0,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65],"f":[null,null,null,[[["bool",15]]],null,null,null,null,null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[["str",15]],["option",4,[["embeddedfile",3]]]],[[["str",15]],["option",4,[["embeddedfile",3]]]],[[]],[[],["bool",15]],[[]],[[],["filenames",4]],[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,null,null,[[]],[[]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["error",3]]],[[]],[[]],[[]],[[],["bool",15]],[[["str",15]],["result",4,[["deserializeowned",8],["internaljsonloaderror",4]]]],[[],["option",4,[["error",8]]]],[[],["string",3]],[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,null,null,[[]],[[]],[[],["knownspritetype",3]],[[]],[[],["result",4]],[[["formatter",3]],["result",6]],null,[[]],[[]],[[]],[[],["bool",15]],[[],["result",4,[["vec",3,[["knownspritetype",3]]],["error",3]]]],null,[[]],[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,null,null,null,[[]],[[]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[]],[[["error",3]]],[[]],[[]],[[],["bool",15]],[[["raylibthread",3],["str",15]],["result",4,[["music",3],["resourceloaderror",4]]]],[[["str",15]],["result",4,[["sound",3],["resourceloaderror",4]]]],[[["raylibhandle",3],["raylibthread",3],["str",15]],["result",4,[["texture2d",3],["resourceloaderror",4]]]],[[],["option",4,[["error",8]]]],[[],["string",3]],[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,null,null,[[["vector2",6,[["f32",15]]]],["vector2",6,[["f32",15]]]],[[["vector2",6,[["f32",15]]]],["vector2",6,[["f32",15]]]],null,null,null,[[],["joinhandle",3]],[[]],[[]],[[]],[[]],[[],["sender",3,[["discordrpcsignal",4]]]],null,[[]],null,[[],["bool",15]],[[["i64",15]]],null,null,null,[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],null,[[],["typeid",3]],null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],null,[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[]],[[["elapsed",3]]],[[["error",4]]],[[["recverror",3]]],[[]],[[]],[[]],[[]],[[]],[[],["bool",15]],[[],["bool",15]],[[["i64",15],["subscriptions",3]]],[[["activitybuilder",3]]],[[],["option",4,[["error",8]]]],[[],["string",3]],[[],["option",4]],[[],["option",4]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],null,null,null,null,null,null,null,null,null,null,null,null,null,[[["discordrpcsignal",4]],["activitybuilder",3]],[[]],[[]],[[]],[[]],[[],["discordrpcsignal",4]],[[],["statefuldiscordrpcsignalhandler",3]],[[]],[[]],[[],["statefuldiscordrpcsignalhandler",3]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[]],[[]],[[]],[[]],null,null,null,null,null,[[]],[[]],[[],["bool",15]],[[],["bool",15]],[[]],[[]],[[],["option",4]],[[],["option",4]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],null,null,null,null,null,[[]],[[]],null,[[["formatter",3]],["result",6]],[[]],[[]],[[]],[[],["bool",15]],[[["raylibhandle",3],["raylibthread",3]]],[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,null,null,null,[[]],[[]],[[],["player",3]],[[]],[[["formatter",3]],["result",6]],[[]],[[]],[[]],[[],["bool",15]],[[["vector2",6,[["f32",15]]]]],null,null,[[]],[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,[[],["possiblyanimatedtexture",3]],[[],["objectcollider",3]],[[],["worldobject",3]],[[],["worldobjectref",3]],[[]],[[]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],null,[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],["vector2",6,[["f32",15]]]],[[],["vector2",6,[["f32",15]]]],[[]],[[]],[[]],[[]],[[],["string",3]],[[],["bool",15]],[[],["bool",15]],[[],["bool",15]],[[],["bool",15]],null,null,null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[],["option",4]],[[],["option",4]],[[],["option",4]],[[],["option",4]],[[]],[[]],[[]],[[]],null,[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],null,null,null,null,null,null,[[]],[[]],[[]],[[]],null,null,[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[]],[[["resourceloaderror",4]]],[[["internaljsonloaderror",4]]],[[]],[[]],[[]],[[]],[[]],[[],["bool",15]],[[],["bool",15]],[[["raylibhandle",3],["raylibthread",3],["str",15]],["result",4,[["worldobjectpackageloaderror",4]]]],null,null,[[],["option",4,[["error",8]]]],[[],["string",3]],[[],["option",4]],[[],["option",4]],[[]],[[]],null,null,[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],null,null,null,null,null,null,[[]],[[]],[[],["gamesavestate",3]],[[]],[[]],[[],["result",4]],[[["formatter",3]],["result",6]],[[]],[[]],[[],["pathbuf",3]],[[]],[[],["bool",15]],[[["bool",15]],["result",4,[["error",3]]]],[[],["result",4,[["error",3]]]],[[],["result",4]],[[]],[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,[[]],[[]],[[],["persistentgamesettings",3]],[[]],[[]],[[],["result",4]],[[["formatter",3]],["result",6]],[[]],[[]],[[],["pathbuf",3]],[[]],[[],["bool",15]],[[["bool",15]],["result",4,[["error",3]]]],[[],["result",4,[["error",3]]]],[[],["result",4]],[[]],[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],null,[[],["result",4]],[[],["result",4]],[[],["result",4]],null,[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[]],[[]],[[]],[[]],[[]],[[]],null,[[]],[[]],[[]],[[],["bool",15]],[[],["bool",15]],[[],["bool",15]],null,null,null,null,null,null,[[],["option",4]],[[],["option",4]],[[],["option",4]],[[]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],["preloadstate",4]],[[],["loadingstate",4]],[[],["rendergamestate",4]],[[],["smfailedstate",4]],[[],["renderbackendstates",4]],[[]],[[]],[[]],[[]],[[]],[[["preloadstate",4]],["bool",15]],[[["loadingstate",4]],["bool",15]],[[["rendergamestate",4]],["bool",15]],[[["smfailedstate",4]],["bool",15]],[[["renderbackendstates",4]],["bool",15]],[[],["renderbackendstates",4]],[[],["renderbackendstates",4]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[],["renderbackendstates",4]],[[],["renderbackendstates",4]],[[],["renderbackendstates",4]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],["bool",15]],[[],["bool",15]],[[],["bool",15]],[[],["bool",15]],[[],["bool",15]],[[["renderbackendstates",4]],["bool",15]],[[],["renderbackendstates",4]],[[],["renderbackendstates",4]],[[]],[[]],[[]],[[]],[[]],[[],["option",4]],[[],["option",4]],[[],["option",4]],[[],["option",4]],[[],["option",4]],[[]],[[]],[[]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],null,null,null,null,[[["u32",15],["projectconstants",3],["sender",3,[["discordrpcsignal",4]]],["persistentgamesettings",3],["gamesavestate",3]]],null,null,null,[[]],[[]],[[]],[[]],null,[[]],[[],["bool",15]],[[]],[[["raylibhandle",3],["raylibthread",3],["sender",3],["projectconstants",3]]],null,[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,[[]],[[]],[[["formatter",3]],["result",6]],[[]],[[]],null,[[]],[[],["bool",15]],[[]],[[["raylibhandle",3],["raylibthread",3],["sender",3],["projectconstants",3]]],[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,null,null,null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],["frametexturedescriptor",3]],[[],["animatedtexturemetadata",3]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],null,null,[[]],[[["resourceloaderror",4]]],[[["error",3]]],[[["internaljsonloaderror",4]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],["option",4,[["usize",15]]]],null,[[]],[[],["rectangle",3]],[[]],[[]],[[]],[[],["bool",15]],[[],["bool",15]],[[],["bool",15]],[[],["bool",15]],[[["raylibhandle",3],["raylibthread",3],["str",15],["str",15]],["result",4,[["animatedtextureloaderror",4]]]],[[["raylibmode2d",3],["vector2",6,[["f32",15]]],["option",4,[["vector2",6,[["f32",15]]]]],["option",4,[["vector2",6,[["f32",15]]]]],["option",4,[["f32",15]]],["option",4,[["color",3]]]]],[[["raylibmode2d",3],["usize",15],["vector2",6,[["f32",15]]],["option",4,[["vector2",6,[["f32",15]]]]],["option",4,[["vector2",6,[["f32",15]]]]],["option",4,[["f32",15]]],["option",4,[["color",3]]]]],[[]],null,null,[[],["vector2",6,[["f32",15]]]],[[],["option",4,[["error",8]]]],null,null,null,null,[[]],[[]],[[],["string",3]],[[],["option",4]],[[],["option",4]],[[],["option",4]],[[],["option",4]],[[]],[[]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],null,null,null,null,null,null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["error",4]]],[[]],[[]],[[]],[[]],[[]],[[]],[[],["vector2",6,[["f32",15]]]],[[["resourcepathbuf",6]],["result",4,[["arc",3,[["tileset",3]]]]]],[[],["option",4,[["arc",3,[["tileset",3]]]]]],[[],["vec",3,[["objectcollider",3]]]],null,[[]],[[]],[[]],[[],["bool",15]],[[],["bool",15]],[[],["bool",15]],null,[[]],[[["str",15],["str",15],["raylibhandle",3],["raylibthread",3]],["result",4,[["maprendererror",4]]]],[[["raylibmode2d",3],["camera2d",3],["bool",15],["vector2",6,[["f32",15]]]]],[[["vector2",6,[["f32",15]]]],["option",4,[["f32",15]]]],[[["vector2",6,[["f32",15]]]],["option",4,[["f32",15]]]],[[],["option",4,[["error",8]]]],null,null,[[],["string",3]],[[],["option",4]],[[],["option",4]],[[],["option",4]],[[]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[],["bool",15]],null,null,null,[[["raylibhandle",3],["raylibthread",3],["projectconstants",3],["raylibaudio",3],["persistentgamesettings",3],["gamesavestate",3]]],null,null,[[["raylibhandle",3],["raylibthread",3],["sender",3],["globalresources",3],["projectconstants",3],["persistentgamesettings",3],["gamesavestate",3]]],null,null,null,null,null,[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,null,null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[],["menustatesignal",4]],[[]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[]],[[]],[[]],[[]],null,[[]],[[]],[[],["bool",15]],[[],["bool",15]],[[["raylibhandle",3],["raylibthread",3],["projectconstants",3],["persistentgamesettings",3]]],[[["raylibhandle",3],["raylibthread",3],["sender",3],["globalresources",3],["projectconstants",3],["raylibaudio",3]]],[[["raylibhandle",3],["raylibthread",3],["sender",3],["globalresources",3],["projectconstants",3],["raylibaudio",3]]],[[["raylibhandle",3],["raylibthread",3],["sender",3],["globalresources",3],["projectconstants",3],["raylibaudio",3],["persistentgamesettings",3]]],[[["raylibhandle",3],["raylibthread",3],["sender",3],["globalresources",3],["projectconstants",3]]],[[]],[[],["option",4]],[[],["option",4]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],null,null,[[]],[[]],[[["formatter",3]],["result",6]],[[]],[[]],[[]],[[],["bool",15]],[[["raylibhandle",3],["raylibthread",3],["projectconstants",3],["persistentgamesettings",3]]],[[["raylibhandle",3],["raylibthread",3],["sender",3],["globalresources",3],["projectconstants",3],["raylibaudio",3]]],[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,[[]],[[]],null,[[["raylibdrawhandle",3],["projectconstants",3]]],[[["raylibdrawhandle",3],["projectconstants",3]]],[[["formatter",3]],["result",6]],[[]],[[]],null,null,[[]],[[],["bool",15]],null,[[["raylibhandle",3],["raylibthread",3],["projectconstants",3]]],null,[[["raylibhandle",3],["raylibthread",3],["sender",3],["globalresources",3],["projectconstants",3],["raylibaudio",3]]],[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[["raylibhandle",3]]],[[["raylibhandle",3],["projectconstants",3]]],null,null,null,[[]],[[]],null,[[["formatter",3]],["result",6]],null,[[]],[[]],[[]],[[],["bool",15]],[[["raylibhandle",3],["raylibthread",3]]],[[["raylibhandle",3],["raylibthread",3],["sender",3],["globalresources",3]]],[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null],"p":[[3,"InternalData"],[4,"InternalJsonLoadError"],[13,"JsonError"],[13,"AssetNotFound"],[3,"KnownSpriteType"],[4,"ResourceLoadError"],[13,"Io"],[13,"AssetNotFound"],[13,"Generic"],[3,"DiscordRpcThreadHandle"],[4,"DiscordError"],[3,"DiscordRpcClient"],[13,"Sdk"],[13,"AwaitConnection"],[13,"ConnectionTimeout"],[4,"DiscordRpcSignal"],[3,"StatefulDiscordRpcSignalHandler"],[13,"SetGameTimeRemainingTimestamp"],[13,"ChangeAssets"],[13,"ChangeDetails"],[3,"GlobalResources"],[3,"Player"],[3,"PossiblyAnimatedTexture"],[3,"ObjectCollider"],[3,"WorldObject"],[3,"WorldObjectRef"],[4,"WorldObjectPackageLoadError"],[3,"WorldObjectPackage"],[13,"JsonError"],[13,"ResourceError"],[3,"GameSaveState"],[3,"PersistentGameSettings"],[3,"PlayerConstants"],[3,"DiscordConstants"],[3,"ProjectConstants"],[4,"RenderGameState"],[4,"LoadingState"],[4,"SmFailedState"],[4,"PreloadState"],[4,"RenderBackendStates"],[13,"Preload"],[13,"Loading"],[13,"RenderGame"],[13,"SmFailed"],[3,"LoadingScreen"],[3,"SmFailureScreen"],[4,"AnimatedTextureLoadError"],[3,"FrameTextureDescriptor"],[3,"AnimatedTextureMetadata"],[3,"AnimatedTexture"],[13,"MetadataLoadError"],[13,"KnownSpriteTypesLoadError"],[13,"InvalidSpriteType"],[13,"TextureLoadError"],[4,"MapRenderError"],[3,"ProgramDataTileCache"],[3,"MapRenderer"],[13,"AssetNotFound"],[13,"TiledError"],[3,"SceneRenderDelegate"],[4,"MenuStateSignal"],[3,"MainMenu"],[3,"PauseMenu"],[3,"PlayableScene"],[3,"TestFoxScene"]]}\ +"game_logic":{"doc":"This file is the main entry point for the game logic.","t":[0,0,0,5,0,0,0,0,0,0,0,0,0,0,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,13,4,13,11,11,11,11,11,11,11,11,11,5,11,11,11,11,11,11,11,12,12,3,11,11,11,11,11,11,12,11,11,11,11,5,12,11,11,11,11,11,11,13,13,13,4,11,11,11,11,11,11,11,11,11,5,5,5,11,11,11,11,11,11,11,12,12,12,5,5,17,6,3,11,11,11,11,11,11,12,11,0,11,11,12,0,12,11,11,11,11,12,11,13,13,13,4,3,13,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,13,13,13,13,4,13,13,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,3,11,11,12,11,11,11,11,11,11,11,11,11,11,11,0,0,0,3,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,12,3,6,3,3,3,6,12,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,12,12,13,13,3,4,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,12,12,11,11,11,11,11,11,12,12,12,0,0,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,3,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,3,3,3,12,12,12,12,11,11,11,11,11,11,12,11,11,11,12,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,12,12,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,0,0,0,0,13,13,13,13,13,13,4,13,4,4,13,4,13,4,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,5,0,0,3,11,11,11,11,12,11,11,11,11,12,11,11,11,11,11,3,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,0,0,3,4,3,3,13,13,13,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,11,11,12,12,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,12,12,12,12,13,4,3,3,13,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,12,11,11,11,11,11,11,12,12,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,11,12,12,12,3,12,11,11,11,11,11,11,11,0,12,12,11,0,0,11,12,12,12,12,0,11,11,11,11,11,13,13,13,13,13,3,4,13,13,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,11,11,11,11,11,11,12,3,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,3,11,11,12,11,11,11,11,11,12,12,11,11,12,11,12,11,12,11,11,11,11,11,11,11,12,12,3,11,11,12,11,12,11,11,11,11,11,11,11,11,11,11,11,12],"n":["asset_manager","coord_convert","discord","entrypoint","global_resource_package","model","persistent","project_constants","rendering","scenes","datastore","json","sprite_types","texture","InternalData","borrow","borrow_mut","from","from_subset","get","get","into","is_in_subset","iter","iter","to_subset","to_subset_unchecked","try_from","try_into","type_id","AssetNotFound","InternalJsonLoadError","JsonError","borrow","borrow_mut","fmt","fmt","from","from","from_subset","into","is_in_subset","load_json_structure","source","to_string","to_subset","to_subset_unchecked","try_from","try_into","type_id","0","0","KnownSpriteType","borrow","borrow_mut","clone","clone_into","deserialize","fmt","friendly_name","from","from_subset","into","is_in_subset","load_known_sprite_types","short_name","to_owned","to_subset","to_subset_unchecked","try_from","try_into","type_id","AssetNotFound","Generic","Io","ResourceLoadError","borrow","borrow_mut","fmt","fmt","from","from","from_subset","into","is_in_subset","load_music_from_internal_data","load_sound_from_internal_data","load_texture_from_internal_data","source","to_string","to_subset","to_subset_unchecked","try_from","try_into","type_id","0","0","0","game_to_tiled","tiled_to_game","DISCORD_CONNECT_TIMEOUT_SECONDS","DiscordChannel","DiscordRpcThreadHandle","begin_thread_non_blocking","borrow","borrow_mut","from","from_subset","get_channel","internal_client","into","ipc","is_in_subset","new","rx_chan","signal","state","to_subset","to_subset_unchecked","try_from","try_into","tx_chan","type_id","AwaitConnection","Connection","ConnectionTimeout","DiscordError","DiscordRpcClient","Sdk","borrow","borrow","borrow_mut","borrow_mut","clear_rich_presence","discord","fmt","fmt","from","from","from","from","from","from_subset","from_subset","into","into","is_in_subset","is_in_subset","new","set_rich_presence","source","to_string","to_subset","to_subset","to_subset_unchecked","to_subset_unchecked","try_from","try_from","try_into","try_into","type_id","type_id","user","wheel","0","0","0","BeginGameTimer","ChangeAssets","ChangeDetails","ClearGameTimeRemaining","DiscordRpcSignal","EndGameTimer","SetGameTimeRemainingTimestamp","StatefulDiscordRpcSignalHandler","apply","borrow","borrow","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","default","fmt","fmt","from","from","from_subset","from_subset","game_assets","game_details","game_end_timer","game_party_status","game_start_timer","into","into","is_in_subset","is_in_subset","to_owned","to_owned","to_subset","to_subset","to_subset_unchecked","to_subset_unchecked","try_from","try_from","try_into","try_into","type_id","type_id","0","0","details","party_status","GlobalResources","borrow","borrow_mut","button_click_sound","fmt","from","from_subset","into","is_in_subset","load","to_subset","to_subset_unchecked","try_from","try_into","type_id","player","world_object","world_object_package","Player","borrow","borrow_mut","clone","clone_into","fmt","from","from_subset","into","is_in_subset","new","position","size","to_owned","to_subset","to_subset_unchecked","try_from","try_into","type_id","velocity","ObjectCollider","ObjectSpaceObjectCollider","PossiblyAnimatedTexture","WorldObject","WorldObjectRef","WorldSpaceObjectCollider","animated","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","bottom_texture","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","deserialize","deserialize","deserialize","deserialize","file_path","fmt","fmt","fmt","fmt","footprint","friction","from","from","from","from","from_subset","from_subset","from_subset","from_subset","get_tile_space_position","get_world_space_position","into","into","into","into","into_key","is_in_subset","is_in_subset","is_in_subset","is_in_subset","kind","name","name","physics_colliders","position","position","rotation_degrees","size","temperature","to_owned","to_owned","to_owned","to_owned","to_subset","to_subset","to_subset","to_subset","to_subset_unchecked","to_subset_unchecked","to_subset_unchecked","to_subset_unchecked","top_texture","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","variant","visualization_radius","JsonError","ResourceError","WorldObjectPackage","WorldObjectPackageLoadError","borrow","borrow","borrow_mut","borrow_mut","bottom_animated_textures","bottom_static_textures","fmt","fmt","fmt","from","from","from","from","from_subset","from_subset","into","into","is_in_subset","is_in_subset","load","object_definitions","object_references","source","to_string","to_subset","to_subset","to_subset_unchecked","to_subset_unchecked","top_animated_textures","top_static_textures","try_from","try_from","try_into","try_into","type_id","type_id","world_space_colliders","0","0","save_state","settings","GameSaveState","borrow","borrow_mut","clone","clone_into","default","deserialize","fmt","from","from_subset","get_save_location","into","is_in_subset","load_or_create","save","serialize","to_owned","to_subset","to_subset_unchecked","try_from","try_into","type_id","PersistentGameSettings","borrow","borrow_mut","clone","clone_into","default","deserialize","fmt","from","from_subset","get_save_location","into","is_in_subset","load_or_create","save","serialize","to_owned","to_subset","to_subset_unchecked","try_from","try_into","type_id","volume","DiscordConstants","PlayerConstants","ProjectConstants","acceleration","app_id","artwork","base_window_size","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","deceleration","deserialize","deserialize","deserialize","discord","fmt","fmt","fmt","from","from","from","from_subset","from_subset","from_subset","game_name","into","into","into","is_in_subset","is_in_subset","is_in_subset","max_velocity","player","start_size","strings","target_fps","tile_size","to_subset","to_subset","to_subset","to_subset_unchecked","to_subset_unchecked","to_subset_unchecked","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","core_renderer_sm","event_loop","screens","utilities","FromFinishLoading","FromFinishPreload","FromForceSmFailure","FromInit","FromInit","Loading","LoadingState","Preload","PreloadState","RenderBackendStates","RenderGame","RenderGameState","SmFailed","SmFailedState","borrow","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone","clone","clone","clone_into","clone_into","clone_into","clone_into","clone_into","eq","eq","eq","eq","eq","finish_loading","finish_preload","fmt","fmt","fmt","fmt","fmt","force_sm_failure","force_sm_failure","force_sm_failure","from","from","from","from","from","from_subset","from_subset","from_subset","from_subset","from_subset","into","into","into","into","into","is_in_subset","is_in_subset","is_in_subset","is_in_subset","is_in_subset","ne","preload","sm_failed","to_owned","to_owned","to_owned","to_owned","to_owned","to_subset","to_subset","to_subset","to_subset","to_subset","to_subset_unchecked","to_subset_unchecked","to_subset_unchecked","to_subset_unchecked","to_subset_unchecked","try_from","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","type_id","0","0","0","0","handle_graphics_blocking","loading_screen","sm_failure_screen","LoadingScreen","borrow","borrow_mut","from","from_subset","has_updated_discord_status","into","is_in_subset","new","render","resources","to_subset","to_subset_unchecked","try_from","try_into","type_id","SmFailureScreen","borrow","borrow_mut","fmt","from","from_subset","has_updated_discord_status","into","is_in_subset","new","render","to_subset","to_subset_unchecked","try_from","try_into","type_id","anim_texture","map_render","AnimatedTexture","AnimatedTextureLoadError","AnimatedTextureMetadata","FrameTextureDescriptor","InvalidSpriteType","KnownSpriteTypesLoadError","MetadataLoadError","TextureLoadError","borrow","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","borrow_mut","clone","clone","clone_into","clone_into","deserialize","deserialize","fmt","fmt","fmt","fmt","fmt","fps","frames","from","from","from","from","from","from","from","from_subset","from_subset","from_subset","from_subset","get_current_frame_index","height","into","into","into","into","into","is_in_subset","is_in_subset","is_in_subset","is_in_subset","new","render_automatic","render_frame_by_index","reset_animation","sheet_height","sheet_width","size","source","start_time","texture","texture_metadata","texture_source_rects","to_owned","to_owned","to_string","to_subset","to_subset","to_subset","to_subset","to_subset_unchecked","to_subset_unchecked","to_subset_unchecked","to_subset_unchecked","try_from","try_from","try_from","try_from","try_into","try_into","try_into","try_into","type_id","type_id","type_id","type_id","width","x","y","0","0","0","0","AssetNotFound","MapRenderError","MapRenderer","ProgramDataTileCache","TiledError","borrow","borrow","borrow","borrow_mut","borrow_mut","borrow_mut","fmt","fmt","fmt","fmt","from","from","from","from","from_subset","from_subset","from_subset","get_map_size","get_or_try_insert_tileset_with","get_tileset","get_world_colliders","internal_loader","into","into","into","is_in_subset","is_in_subset","is_in_subset","map","new","new","render_map","sample_friction_at","sample_temperature_at","source","tile_textures","tilesets","to_string","to_subset","to_subset","to_subset","to_subset_unchecked","to_subset_unchecked","to_subset_unchecked","try_from","try_from","try_from","try_into","try_into","try_into","type_id","type_id","type_id","world_objects","0","0","SceneRenderDelegate","audio_subsystem","borrow","borrow_mut","drop","from","from_subset","into","is_in_subset","main_menu","menu_control_signal","needs_exit","on_game_start","pause_menu","player_interaction","process_ingame_frame","scene_main_menu","scene_pause_menu","scene_playable","scene_test_fox","test_fox","to_subset","to_subset_unchecked","try_from","try_into","type_id","DoCredits","DoLeaderboard","DoMainMenu","DoOptions","DoPauseMenu","MainMenu","MenuStateSignal","QuitGame","StartGame","borrow","borrow","borrow_mut","borrow_mut","clone","clone_into","fmt","fmt","from","from","from_subset","from_subset","has_updated_discord_rpc","into","into","is_in_subset","is_in_subset","new","render_credits_frame","render_leaderboard_frame","render_main_menu_frame","render_options_frame","show_debug_info","to_owned","to_subset","to_subset","to_subset_unchecked","to_subset_unchecked","try_from","try_from","try_into","try_into","type_id","type_id","volume_percentage","PauseMenu","borrow","borrow_mut","fmt","from","from_subset","into","is_in_subset","new","render_pause_menu_frame","show_debug_info","to_subset","to_subset_unchecked","try_from","try_into","type_id","PlayableScene","borrow","borrow_mut","camera","draw_ui","draw_world","fmt","from","from_subset","game_soundtrack","has_updated_discord_rpc","into","is_in_subset","last_update","new","player","render_frame","show_debug_info","to_subset","to_subset_unchecked","try_from","try_into","type_id","update_camera","update_physics","world_colliders","world_map","TestFoxScene","borrow","borrow_mut","camera","fmt","fox_animation","from","from_subset","into","is_in_subset","new","render_frame","to_subset","to_subset_unchecked","try_from","try_into","type_id","world_map"],"q":["game_logic","","","","","","","","","","game_logic::asset_manager","","","","game_logic::asset_manager::datastore","","","","","","","","","","","","","","","","game_logic::asset_manager::json","","","","","","","","","","","","","","","","","","","","game_logic::asset_manager::json::InternalJsonLoadError","","game_logic::asset_manager::sprite_types","","","","","","","","","","","","","","","","","","","","game_logic::asset_manager::texture","","","","","","","","","","","","","","","","","","","","","","","game_logic::asset_manager::texture::ResourceLoadError","","","game_logic::coord_convert","","game_logic::discord","","","","","","","","","","","","","","","","","","","","","","","game_logic::discord::ipc","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game_logic::discord::ipc::DiscordError","","","game_logic::discord::signal","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game_logic::discord::signal::DiscordRpcSignal","","","","game_logic::global_resource_package","","","","","","","","","","","","","","","game_logic::model","","","game_logic::model::player","","","","","","","","","","","","","","","","","","","","game_logic::model::world_object","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game_logic::model::world_object_package","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game_logic::model::world_object_package::WorldObjectPackageLoadError","","game_logic::persistent","","game_logic::persistent::save_state","","","","","","","","","","","","","","","","","","","","","","game_logic::persistent::settings","","","","","","","","","","","","","","","","","","","","","","","game_logic::project_constants","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game_logic::rendering","","","","game_logic::rendering::core_renderer_sm","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game_logic::rendering::core_renderer_sm::RenderBackendStates","","","","game_logic::rendering::event_loop","game_logic::rendering::screens","","game_logic::rendering::screens::loading_screen","","","","","","","","","","","","","","","","game_logic::rendering::screens::sm_failure_screen","","","","","","","","","","","","","","","","game_logic::rendering::utilities","","game_logic::rendering::utilities::anim_texture","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game_logic::rendering::utilities::anim_texture::AnimatedTextureLoadError","","","","game_logic::rendering::utilities::map_render","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game_logic::rendering::utilities::map_render::MapRenderError","","game_logic::scenes","","","","","","","","","","","","","","","","","","","","","","","","","","game_logic::scenes::main_menu","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game_logic::scenes::pause_menu","","","","","","","","","","","","","","","","game_logic::scenes::player_interaction","","","","","","","","","","","","","","","","","","","","","","","","","","","game_logic::scenes::test_fox","","","","","","","","","","","","","","","","",""],"d":["Embedded asset management.","","Interfacing with Discord","This is the game logic entrypoint. Despite being async, …","Global resources","","This module contains the datastructure backing persistent …","The rust side of the dist/project-constants.json file","This module contains lower level rendering logic.","The render code for various scenes","Access to the game’s embedded files.","Utilities for loading JSON from the embedded filesystem.","","Code for loading textures from RAM to VRAM","This structure is dynamically packed with the contents of …","","","","","","Get an embedded file and its metadata.","","","","Iterates over the file paths in the folder.","","","","","","The JSON data was not found in the internal data store","Possible errors generated when deserializing JSON data …","An error occurred with the JSON data itself","","","","","","","","","","Load an embedded JSON file","","","","","","","","","","The structure backing the dist/known-sprite-types.json file","","","","","","","Sprite long name","","","","","Loads a list of all known sprite types from the …","Sprite short name (used in filenames)","","","","","","","","","","","","","","","","","","","","","","Loads an embedded texture into VRAM.","","","","","","","","","","","Converts from the game coordinate system to the tiled …","Converts from the tiled coordinate system to the game …","How long to wait before we give up on connecting to …","A cross-thread communication channel for sending Discord …","","Run the inner communication task in an async context","","","","","Get access to the inter-thread channel for communicating …","","","Discord Rich Presence utilities","","Construct a new DiscordRpcThreadHandle","","This file contains a system for signaling Discord RPC …","","","","","","","","","","","","The client wrapper for Discord RPC","","","","","","Clears the user rich presence","","","","","","","","","","","","","","","Creates a new DiscordRpcClient","Sets the user rich presence","","","","","","","","","","","","","","","","","","Signal to begin a game timer (Discord will display …","Signal to change the graphical assets in the info card","Signal to set the details in the info card","Signal to clear the game remaining timer","Definitions of signals that can be sent to the Discord RPC …","Signal to end a game timer","Signal to begin a countdown timer (Discord will display …","A struct that can keep track of incoming signals and their …","Apply a signal to generate a new activity","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","What the player is doing, eg. “Exploring the Wilds of …","The user’s currenty party status, eg. “Playing Solo”.","Global resource package","","","","","","","","","Load the resources (blocking)","","","","","","","","","","","","","","","","","","","Construct a new player.","","","","","","","","","","Defines a collider in object space.","","","Definition of an object. Only one of these should exist …","Used to reference an object in the world definition","","Signal if the texture is animated or static","","","","","","","","","The object’s bottom texture","","","","","","","","","","","","","Relative file path from dist to the texture","","","","","colliders describing the object’s footprint","Friction","","","","","","","","","","","","","","","","","","","","Object type","Object name. Must match the name of the texture","Object name","Colliders for physics","Position, relative to the object’s center (north east is …","Object position (tile-space not pixel-space). 1,1 being up …","Object rotation, positive is clockwise","Possible sizing","Temperature","","","","","","","","","","","","","The object’s top texture","","","","","","","","","","","","","Variant name","A “sphere of influence” for the object. This is used …","","","A simply interface for the madness","","","","","","Bottom animated textures","Bottom static textures","","","","","","","","","","","","","","","The object definitions","The object references","","","","","","","Top animated textures","Top static textures","","","","","","","A list of colliders in the world. We pre-solve these to …","","","","","Game save state.","","","","","","","","","","Returns the optimal path for storing settings data.","","","Loads the savestate from disk.","Saves the savestate to disk.","","","","","","","","Settings for the game.","","","","","","","","","","Returns the optimal path for storing settings data.","","","Loads the settings from disk.","Saves the settings to disk.","","","","","","","","","Constants relating to Discord","Constants relating to the Player","This structure is filled with the contents of …","Acceleration, tiles per second per second","The Discord application ID","Artwork name mapping","The window size to use on launch","","","","","","","Deceleration, tiles per second per second","","","","The Discord constants","","","","","","","","","","The name of the game","","","","","","","Maximum velocity, tiles per second","The Player constants","Starting size of player in tiles","Strings","The target framerate of the game","The size of the game tiles","","","","","","","","","","","","","","","","This module contains state machine definitions for the …","The Event Loop module","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Will begin rendering graphics. Returns when the window …","Handles loading the global resources and playing an intro …","","","","","","","","","","Construct a new LoadingScreen","","","","","","","","","","","","","","","","","Construct a new SmFailureScreen","","","","","","","This module handles the code for rendering …","","","Possible errors to be thrown during the animation texture …","Definition for the metadata structure attached to each …","Definition for the structure describing a frame’s size …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Get the current frame index","","","","","","","","","","","Construct a new AnimatedTexture","Render the animation based on timestamp","Render a single frame to the screen","Clear the internal tracker for when the animation started","","","","","The animation start timestamp","The whole internal spritesheet","The metadata describing the spritesheet","a list of source rects to reduce memory allocation needs …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Possible errors generated by the map loading process","","","","","","","","","","","","","","","","","","","","","Gets the map size","","Load the tileset. First attempts to pull from an in-RAM …","Get the list of world colliders","","","","","","","","","","Construct a new MapRenderer.","","","","","","","","","","","","","","","","","","","","","","","","","","Delegate for handling rendering. This is a struct to allow …","","","","If you need anything to happen when the game closes, stick …","","","","","This scene encompasses the main menu system","","","This is called when the game first loads","This scene encompasses the main menu system","This scene encompasses all of the game where the player …","This is called every frame once the game has started.","","","","","This “scene” is used only for testing animation and …","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","Construct a new MainMenu","","","","","","","","","","","","","","","","","","","","","","","","","","Construct a new PauseMenu","","","","","","","","","","","","","","","","","","","","","","Construct a new PlayableScene","","Handler for each frame","","","","","","","","","","","","","","","","","","","","","Construct a new TestFoxScene","Handler for each frame","","","","","",""],"i":[0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,2,0,2,2,2,2,2,2,2,2,2,2,0,2,2,2,2,2,2,2,3,4,0,5,5,5,5,5,5,5,5,5,5,5,0,5,5,5,5,5,5,5,6,6,6,0,6,6,6,6,6,6,6,6,6,0,0,0,6,6,6,6,6,6,6,7,8,9,0,0,0,0,0,10,10,10,10,10,10,10,10,0,10,10,10,0,10,10,10,10,10,10,10,11,11,11,0,0,11,12,11,12,11,12,12,11,11,12,11,11,11,11,12,11,12,11,12,11,12,12,11,11,12,11,12,11,12,11,12,11,12,11,12,12,13,14,15,16,16,16,16,0,16,16,0,17,16,17,16,17,16,17,16,17,17,16,17,16,17,16,17,17,17,17,17,17,16,17,16,17,16,17,16,17,16,17,16,17,16,17,16,17,18,19,20,20,0,21,21,21,21,21,21,21,21,21,21,21,21,21,21,0,0,0,0,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,22,0,0,0,0,0,0,23,23,24,25,26,23,24,25,26,25,23,24,25,26,23,24,25,26,23,24,25,26,23,23,24,25,26,25,25,23,24,25,26,23,24,25,26,26,26,23,24,25,26,26,23,24,25,26,26,25,26,25,24,26,26,24,25,23,24,25,26,23,24,25,26,23,24,25,26,25,23,24,25,26,23,24,25,26,23,24,25,26,26,25,27,27,0,0,27,28,27,28,28,28,27,27,28,27,27,27,28,27,28,27,28,27,28,28,28,28,27,27,27,28,27,28,28,28,27,28,27,28,27,28,28,29,30,0,0,0,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,31,0,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,0,0,0,33,34,34,35,34,33,35,34,33,35,33,34,33,35,35,34,33,35,34,33,35,34,33,35,35,34,33,35,34,33,35,33,35,33,34,35,35,34,33,35,34,33,35,34,33,35,34,33,35,34,33,35,0,0,0,0,36,37,38,39,38,40,0,40,0,0,40,0,40,0,39,37,36,38,40,39,37,36,38,40,39,37,36,38,40,39,37,36,38,40,39,37,36,38,40,37,39,39,37,36,38,40,39,37,36,39,37,36,38,40,39,37,36,38,40,39,37,36,38,40,39,37,36,38,40,40,40,40,39,37,36,38,40,39,37,36,38,40,39,37,36,38,40,39,37,36,38,40,39,37,36,38,40,39,37,36,38,40,41,42,43,44,0,0,0,0,45,45,45,45,45,45,45,45,45,45,45,45,45,45,45,0,46,46,46,46,46,46,46,46,46,46,46,46,46,46,46,0,0,0,0,0,0,47,47,47,47,47,48,49,50,47,48,49,50,48,49,48,49,48,49,47,47,48,49,50,49,49,47,47,47,47,48,49,50,47,48,49,50,50,48,47,48,48,49,50,47,48,49,50,50,50,50,50,49,49,50,47,50,50,50,50,48,49,47,47,48,49,50,47,48,49,50,47,48,49,50,47,48,49,50,47,48,49,50,48,48,48,51,52,53,54,55,0,0,0,55,55,56,57,55,56,57,55,55,56,57,55,55,56,57,55,56,57,57,56,56,57,56,55,56,57,55,56,57,57,56,57,57,57,57,55,57,56,55,55,56,57,55,56,57,55,56,57,55,56,57,55,56,57,57,58,59,0,60,60,60,60,60,60,60,60,0,60,60,60,0,0,60,60,60,60,60,0,60,60,60,60,60,61,61,61,61,61,0,0,61,61,61,62,61,62,61,61,61,62,61,62,61,62,62,61,62,61,62,62,62,62,62,62,62,61,61,62,61,62,61,62,61,62,61,62,62,0,63,63,63,63,63,63,63,63,63,63,63,63,63,63,63,0,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,64,0,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65,65],"f":[null,null,null,[[["bool",15]]],null,null,null,null,null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[["str",15]],["option",4,[["embeddedfile",3]]]],[[["str",15]],["option",4,[["embeddedfile",3]]]],[[]],[[],["bool",15]],[[],["filenames",4]],[[]],[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,null,null,[[]],[[]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["error",3]]],[[]],[[]],[[]],[[],["bool",15]],[[["str",15]],["result",4,[["deserializeowned",8],["internaljsonloaderror",4]]]],[[],["option",4,[["error",8]]]],[[],["string",3]],[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,null,null,[[]],[[]],[[],["knownspritetype",3]],[[]],[[],["result",4]],[[["formatter",3]],["result",6]],null,[[]],[[]],[[]],[[],["bool",15]],[[],["result",4,[["vec",3,[["knownspritetype",3]]],["error",3]]]],null,[[]],[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,null,null,null,[[]],[[]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[]],[[["error",3]]],[[]],[[]],[[],["bool",15]],[[["raylibthread",3],["str",15]],["result",4,[["music",3],["resourceloaderror",4]]]],[[["str",15]],["result",4,[["sound",3],["resourceloaderror",4]]]],[[["raylibhandle",3],["raylibthread",3],["str",15]],["result",4,[["texture2d",3],["resourceloaderror",4]]]],[[],["option",4,[["error",8]]]],[[],["string",3]],[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,null,null,[[["vector2",6,[["f32",15]]]],["vector2",6,[["f32",15]]]],[[["vector2",6,[["f32",15]]]],["vector2",6,[["f32",15]]]],null,null,null,[[],["joinhandle",3]],[[]],[[]],[[]],[[]],[[],["sender",3,[["discordrpcsignal",4]]]],null,[[]],null,[[],["bool",15]],[[["i64",15]]],null,null,null,[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],null,[[],["typeid",3]],null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],null,[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[]],[[["recverror",3]]],[[["error",4]]],[[["elapsed",3]]],[[]],[[]],[[]],[[]],[[]],[[],["bool",15]],[[],["bool",15]],[[["i64",15],["subscriptions",3]]],[[["activitybuilder",3]]],[[],["option",4,[["error",8]]]],[[],["string",3]],[[],["option",4]],[[],["option",4]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],null,null,null,null,null,null,null,null,null,null,null,null,null,[[["discordrpcsignal",4]],["activitybuilder",3]],[[]],[[]],[[]],[[]],[[],["discordrpcsignal",4]],[[],["statefuldiscordrpcsignalhandler",3]],[[]],[[]],[[],["statefuldiscordrpcsignalhandler",3]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[]],[[]],[[]],[[]],null,null,null,null,null,[[]],[[]],[[],["bool",15]],[[],["bool",15]],[[]],[[]],[[],["option",4]],[[],["option",4]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],null,null,null,null,null,[[]],[[]],null,[[["formatter",3]],["result",6]],[[]],[[]],[[]],[[],["bool",15]],[[["raylibhandle",3],["raylibthread",3]]],[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,null,null,null,[[]],[[]],[[],["player",3]],[[]],[[["formatter",3]],["result",6]],[[]],[[]],[[]],[[],["bool",15]],[[["vector2",6,[["f32",15]]]]],null,null,[[]],[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],null,[[],["possiblyanimatedtexture",3]],[[],["objectcollider",3]],[[],["worldobject",3]],[[],["worldobjectref",3]],[[]],[[]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],null,[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],["vector2",6,[["f32",15]]]],[[],["vector2",6,[["f32",15]]]],[[]],[[]],[[]],[[]],[[],["string",3]],[[],["bool",15]],[[],["bool",15]],[[],["bool",15]],[[],["bool",15]],null,null,null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[],["option",4]],[[],["option",4]],[[],["option",4]],[[],["option",4]],[[]],[[]],[[]],[[]],null,[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],null,null,null,null,null,null,[[]],[[]],[[]],[[]],null,null,[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[]],[[["resourceloaderror",4]]],[[["internaljsonloaderror",4]]],[[]],[[]],[[]],[[]],[[]],[[],["bool",15]],[[],["bool",15]],[[["raylibhandle",3],["raylibthread",3],["str",15]],["result",4,[["worldobjectpackageloaderror",4]]]],null,null,[[],["option",4,[["error",8]]]],[[],["string",3]],[[],["option",4]],[[],["option",4]],[[]],[[]],null,null,[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],null,null,null,null,null,null,[[]],[[]],[[],["gamesavestate",3]],[[]],[[]],[[],["result",4]],[[["formatter",3]],["result",6]],[[]],[[]],[[],["pathbuf",3]],[[]],[[],["bool",15]],[[["bool",15]],["result",4,[["error",3]]]],[[],["result",4,[["error",3]]]],[[],["result",4]],[[]],[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,[[]],[[]],[[],["persistentgamesettings",3]],[[]],[[]],[[],["result",4]],[[["formatter",3]],["result",6]],[[]],[[]],[[],["pathbuf",3]],[[]],[[],["bool",15]],[[["bool",15]],["result",4,[["error",3]]]],[[],["result",4,[["error",3]]]],[[],["result",4]],[[]],[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],null,[[],["result",4]],[[],["result",4]],[[],["result",4]],null,[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[]],[[]],[[]],[[]],[[]],[[]],null,[[]],[[]],[[]],[[],["bool",15]],[[],["bool",15]],[[],["bool",15]],null,null,null,null,null,null,[[],["option",4]],[[],["option",4]],[[],["option",4]],[[]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],["preloadstate",4]],[[],["loadingstate",4]],[[],["rendergamestate",4]],[[],["smfailedstate",4]],[[],["renderbackendstates",4]],[[]],[[]],[[]],[[]],[[]],[[["preloadstate",4]],["bool",15]],[[["loadingstate",4]],["bool",15]],[[["rendergamestate",4]],["bool",15]],[[["smfailedstate",4]],["bool",15]],[[["renderbackendstates",4]],["bool",15]],[[],["renderbackendstates",4]],[[],["renderbackendstates",4]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[],["renderbackendstates",4]],[[],["renderbackendstates",4]],[[],["renderbackendstates",4]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],["bool",15]],[[],["bool",15]],[[],["bool",15]],[[],["bool",15]],[[],["bool",15]],[[["renderbackendstates",4]],["bool",15]],[[],["renderbackendstates",4]],[[],["renderbackendstates",4]],[[]],[[]],[[]],[[]],[[]],[[],["option",4]],[[],["option",4]],[[],["option",4]],[[],["option",4]],[[],["option",4]],[[]],[[]],[[]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],null,null,null,null,[[["u32",15],["projectconstants",3],["sender",3,[["discordrpcsignal",4]]],["persistentgamesettings",3],["gamesavestate",3]]],null,null,null,[[]],[[]],[[]],[[]],null,[[]],[[],["bool",15]],[[]],[[["raylibhandle",3],["raylibthread",3],["sender",3],["projectconstants",3]]],null,[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,[[]],[[]],[[["formatter",3]],["result",6]],[[]],[[]],null,[[]],[[],["bool",15]],[[]],[[["raylibhandle",3],["raylibthread",3],["sender",3],["projectconstants",3]]],[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,null,null,null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],["frametexturedescriptor",3]],[[],["animatedtexturemetadata",3]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],null,null,[[]],[[["resourceloaderror",4]]],[[["internaljsonloaderror",4]]],[[["error",3]]],[[]],[[]],[[]],[[]],[[]],[[]],[[]],[[],["option",4,[["usize",15]]]],null,[[]],[[],["rectangle",3]],[[]],[[]],[[]],[[],["bool",15]],[[],["bool",15]],[[],["bool",15]],[[],["bool",15]],[[["raylibhandle",3],["raylibthread",3],["str",15],["str",15]],["result",4,[["animatedtextureloaderror",4]]]],[[["raylibmode2d",3],["vector2",6,[["f32",15]]],["option",4,[["vector2",6,[["f32",15]]]]],["option",4,[["vector2",6,[["f32",15]]]]],["option",4,[["f32",15]]],["option",4,[["color",3]]]]],[[["raylibmode2d",3],["usize",15],["vector2",6,[["f32",15]]],["option",4,[["vector2",6,[["f32",15]]]]],["option",4,[["vector2",6,[["f32",15]]]]],["option",4,[["f32",15]]],["option",4,[["color",3]]]]],[[]],null,null,[[],["vector2",6,[["f32",15]]]],[[],["option",4,[["error",8]]]],null,null,null,null,[[]],[[]],[[],["string",3]],[[],["option",4]],[[],["option",4]],[[],["option",4]],[[],["option",4]],[[]],[[]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],null,null,null,null,null,null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[["error",4]]],[[]],[[]],[[]],[[]],[[]],[[]],[[],["vector2",6,[["f32",15]]]],[[["resourcepathbuf",6]],["result",4,[["arc",3,[["tileset",3]]]]]],[[],["option",4,[["arc",3,[["tileset",3]]]]]],[[],["vec",3,[["objectcollider",3]]]],null,[[]],[[]],[[]],[[],["bool",15]],[[],["bool",15]],[[],["bool",15]],null,[[]],[[["str",15],["str",15],["raylibhandle",3],["raylibthread",3]],["result",4,[["maprendererror",4]]]],[[["raylibmode2d",3],["camera2d",3],["bool",15],["vector2",6,[["f32",15]]]]],[[["vector2",6,[["f32",15]]]],["option",4,[["f32",15]]]],[[["vector2",6,[["f32",15]]]],["option",4,[["f32",15]]]],[[],["option",4,[["error",8]]]],null,null,[[],["string",3]],[[],["option",4]],[[],["option",4]],[[],["option",4]],[[]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],[[],["typeid",3]],null,null,null,null,null,[[]],[[]],[[]],[[]],[[]],[[]],[[],["bool",15]],null,null,null,[[["raylibhandle",3],["raylibthread",3],["projectconstants",3],["raylibaudio",3],["persistentgamesettings",3],["gamesavestate",3]]],null,null,[[["raylibhandle",3],["raylibthread",3],["sender",3],["globalresources",3],["projectconstants",3],["persistentgamesettings",3],["gamesavestate",3]]],null,null,null,null,null,[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,null,null,null,null,null,null,null,null,[[]],[[]],[[]],[[]],[[],["menustatesignal",4]],[[]],[[["formatter",3]],["result",6]],[[["formatter",3]],["result",6]],[[]],[[]],[[]],[[]],null,[[]],[[]],[[],["bool",15]],[[],["bool",15]],[[["raylibhandle",3],["raylibthread",3],["projectconstants",3],["persistentgamesettings",3]]],[[["raylibhandle",3],["raylibthread",3],["sender",3],["globalresources",3],["projectconstants",3],["raylibaudio",3]]],[[["raylibhandle",3],["raylibthread",3],["sender",3],["globalresources",3],["projectconstants",3],["raylibaudio",3]]],[[["raylibhandle",3],["raylibthread",3],["sender",3],["globalresources",3],["projectconstants",3],["raylibaudio",3],["persistentgamesettings",3]]],[[["raylibhandle",3],["raylibthread",3],["sender",3],["globalresources",3],["projectconstants",3]]],null,[[]],[[],["option",4]],[[],["option",4]],[[]],[[]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[],["typeid",3]],null,null,[[]],[[]],[[["formatter",3]],["result",6]],[[]],[[]],[[]],[[],["bool",15]],[[["raylibhandle",3],["raylibthread",3],["projectconstants",3],["persistentgamesettings",3]]],[[["raylibhandle",3],["raylibthread",3],["sender",3],["globalresources",3],["projectconstants",3],["raylibaudio",3]]],null,[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,[[]],[[]],null,[[["raylibdrawhandle",3],["projectconstants",3]]],[[["raylibdrawhandle",3],["projectconstants",3]]],[[["formatter",3]],["result",6]],[[]],[[]],null,null,[[]],[[],["bool",15]],null,[[["raylibhandle",3],["raylibthread",3],["projectconstants",3]]],null,[[["raylibhandle",3],["raylibthread",3],["sender",3],["globalresources",3],["projectconstants",3],["raylibaudio",3]]],null,[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],[[["raylibhandle",3]]],[[["raylibhandle",3],["projectconstants",3]]],null,null,null,[[]],[[]],null,[[["formatter",3]],["result",6]],null,[[]],[[]],[[]],[[],["bool",15]],[[["raylibhandle",3],["raylibthread",3]]],[[["raylibhandle",3],["raylibthread",3],["sender",3],["globalresources",3]]],[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null],"p":[[3,"InternalData"],[4,"InternalJsonLoadError"],[13,"JsonError"],[13,"AssetNotFound"],[3,"KnownSpriteType"],[4,"ResourceLoadError"],[13,"Io"],[13,"AssetNotFound"],[13,"Generic"],[3,"DiscordRpcThreadHandle"],[4,"DiscordError"],[3,"DiscordRpcClient"],[13,"Sdk"],[13,"AwaitConnection"],[13,"ConnectionTimeout"],[4,"DiscordRpcSignal"],[3,"StatefulDiscordRpcSignalHandler"],[13,"SetGameTimeRemainingTimestamp"],[13,"ChangeAssets"],[13,"ChangeDetails"],[3,"GlobalResources"],[3,"Player"],[3,"PossiblyAnimatedTexture"],[3,"ObjectCollider"],[3,"WorldObject"],[3,"WorldObjectRef"],[4,"WorldObjectPackageLoadError"],[3,"WorldObjectPackage"],[13,"JsonError"],[13,"ResourceError"],[3,"GameSaveState"],[3,"PersistentGameSettings"],[3,"PlayerConstants"],[3,"DiscordConstants"],[3,"ProjectConstants"],[4,"RenderGameState"],[4,"LoadingState"],[4,"SmFailedState"],[4,"PreloadState"],[4,"RenderBackendStates"],[13,"Preload"],[13,"Loading"],[13,"RenderGame"],[13,"SmFailed"],[3,"LoadingScreen"],[3,"SmFailureScreen"],[4,"AnimatedTextureLoadError"],[3,"FrameTextureDescriptor"],[3,"AnimatedTextureMetadata"],[3,"AnimatedTexture"],[13,"MetadataLoadError"],[13,"KnownSpriteTypesLoadError"],[13,"InvalidSpriteType"],[13,"TextureLoadError"],[4,"MapRenderError"],[3,"ProgramDataTileCache"],[3,"MapRenderer"],[13,"AssetNotFound"],[13,"TiledError"],[3,"SceneRenderDelegate"],[4,"MenuStateSignal"],[3,"MainMenu"],[3,"PauseMenu"],[3,"PlayableScene"],[3,"TestFoxScene"]]}\ }'); if (window.initSearch) {window.initSearch(searchIndex)}; \ No newline at end of file diff --git a/rustdoc/src/game_logic/scenes/main_menu.rs.html b/rustdoc/src/game_logic/scenes/main_menu.rs.html index e4d5e8f2..29cc65c2 100644 --- a/rustdoc/src/game_logic/scenes/main_menu.rs.html +++ b/rustdoc/src/game_logic/scenes/main_menu.rs.html @@ -547,6 +547,20 @@ 545 546 547 +548 +549 +550 +551 +552 +553 +554 +555 +556 +557 +558 +559 +560 +561
//! This scene encompasses the main menu system
 
 use na::Vector1;
@@ -578,6 +592,7 @@
 pub struct MainMenu {
     pub has_updated_discord_rpc: bool,
     volume_percentage: f32,
+    show_debug_info: bool,
 }
 
 impl MainMenu {
@@ -591,6 +606,7 @@
         Self {
             has_updated_discord_rpc: false,
             volume_percentage: game_settings.volume.unwrap_or(0.5),
+            show_debug_info: false,
         }
     }
 
@@ -627,9 +643,21 @@
         let mouse_x = draw.get_mouse_x();
         let mouse_y = draw.get_mouse_y();
 
-        //TODO Errase later
-        draw.draw_text(&mouse_x.to_string(), 20, 5, 20, Color::BLACK);
-        draw.draw_text(&mouse_y.to_string(), 70, 5, 20, Color::BLACK);
+        // Optionally display debug info
+        if draw.is_key_pressed(KeyboardKey::KEY_F3) {
+            self.show_debug_info = !self.show_debug_info;
+        }
+        if self.show_debug_info {
+            // Draw FPS and mouse location
+            draw.draw_fps(10, 10);
+            draw.draw_text(
+                format!("Mouse position: ({}, {})", mouse_x, mouse_y).as_str(),
+                10,
+                30,
+                20,
+                Color::GREEN,
+            );
+        }
 
         //Screen Size
         let window_height = draw.get_screen_height();
diff --git a/rustdoc/src/game_logic/scenes/pause_menu.rs.html b/rustdoc/src/game_logic/scenes/pause_menu.rs.html
index 8c013781..5a71a48e 100644
--- a/rustdoc/src/game_logic/scenes/pause_menu.rs.html
+++ b/rustdoc/src/game_logic/scenes/pause_menu.rs.html
@@ -62,6 +62,30 @@
 60
 61
 62
+63
+64
+65
+66
+67
+68
+69
+70
+71
+72
+73
+74
+75
+76
+77
+78
+79
+80
+81
+82
+83
+84
+85
+86
 
//! This scene encompasses the main menu system
 
 use na::Vector1;
@@ -81,7 +105,9 @@
 use super::main_menu::MenuStateSignal;
 
 #[derive(Debug)]
-pub struct PauseMenu {}
+pub struct PauseMenu {
+    show_debug_info: bool,
+}
 
 impl PauseMenu {
     /// Construct a new `PauseMenu`
@@ -91,7 +117,9 @@
         constants: &ProjectConstants,
         game_settings: &mut PersistentGameSettings,
     ) -> Self {
-        Self {}
+        Self {
+            show_debug_info: false,
+        }
     }
 
     pub async fn render_pause_menu_frame(
@@ -109,6 +137,26 @@
         // Clear the screen
         draw.clear_background(Color::WHITE);
 
+        //Obtain mouse position
+        let mouse_x = draw.get_mouse_x();
+        let mouse_y = draw.get_mouse_y();
+
+        // Optionally display debug info
+        if draw.is_key_pressed(KeyboardKey::KEY_F3) {
+            self.show_debug_info = !self.show_debug_info;
+        }
+        if self.show_debug_info {
+            // Draw FPS and mouse location
+            draw.draw_fps(10, 10);
+            draw.draw_text(
+                format!("Mouse position: ({}, {})", mouse_x, mouse_y).as_str(),
+                10,
+                30,
+                20,
+                Color::GREEN,
+            );
+        }
+
         // Title
         draw.draw_text("Paused", 100, 90, 60, Color::BLACK);
 
diff --git a/rustdoc/src/game_logic/scenes/player_interaction.rs.html b/rustdoc/src/game_logic/scenes/player_interaction.rs.html
index ccb10bb9..3435819c 100644
--- a/rustdoc/src/game_logic/scenes/player_interaction.rs.html
+++ b/rustdoc/src/game_logic/scenes/player_interaction.rs.html
@@ -258,6 +258,28 @@
 256
 257
 258
+259
+260
+261
+262
+263
+264
+265
+266
+267
+268
+269
+270
+271
+272
+273
+274
+275
+276
+277
+278
+279
+280
 
//! This scene encompasses all of the game where the player can walk around.
 
 use nalgebra as na;
@@ -284,6 +306,7 @@
     last_update: SystemTime,
     game_soundtrack: Music,
     world_colliders: Vec<WorldSpaceObjectCollider>,
+    show_debug_info: bool,
 }
 
 impl PlayableScene {
@@ -322,6 +345,7 @@
             last_update: SystemTime::UNIX_EPOCH,
             game_soundtrack,
             world_colliders,
+            show_debug_info: false,
         }
     }
 
@@ -383,7 +407,7 @@
 
         // Render the map
         self.world_map
-            .render_map(&mut ctx2d, &self.camera, true, self.player.position);
+            .render_map(&mut ctx2d, &self.camera, self.show_debug_info, self.player.position);
 
         let player_size =
             (constants.tile_size as f32 * constants.player.start_size * self.player.size) as i32;
@@ -398,6 +422,26 @@
     }
 
     pub fn draw_ui(&mut self, draw: &mut RaylibDrawHandle, constants: &ProjectConstants) {
+        // Obtain mouse position
+        let mouse_x = draw.get_mouse_x();
+        let mouse_y = draw.get_mouse_y();
+
+        // Optionally display debug info
+        if draw.is_key_pressed(KeyboardKey::KEY_F3) {
+            self.show_debug_info = !self.show_debug_info;
+        }
+        if self.show_debug_info {
+            // Draw FPS and mouse location
+            draw.draw_fps(10, 10);
+            draw.draw_text(
+                format!("Mouse position: ({}, {})", mouse_x, mouse_y).as_str(),
+                10,
+                30,
+                20,
+                Color::GREEN,
+            );
+        }
+
         draw.draw_rectangle(draw.get_screen_width() / 2 - 225, 0, 450, 40, Color::WHITE);
         draw.draw_text(
             "Unregistered HyperCam 2",