From 949bc45d30baabebbdbae69c95c37941dc2309c5 Mon Sep 17 00:00:00 2001 From: Ewpratten Date: Sun, 3 Apr 2022 21:15:43 +0000 Subject: [PATCH] deploy: 8cd2ae6354c74e77b9f8c37235f19439f45acad3 --- rustdoc/game_logic/all.html | 2 +- .../game_logic/scenes/cutscenes/index.html | 6 + .../scenes/cutscenes/sidebar-items.js | 1 + .../scenes/cutscenes/struct.CutScenes.html | 31 + rustdoc/game_logic/scenes/index.html | 5 +- .../main_menu/enum.MenuStateSignal.html | 16 +- .../game_logic/scenes/main_menu/index.html | 2 +- .../scenes/main_menu/struct.MainMenu.html | 6 +- .../scenes/player_interaction/index.html | 2 +- .../struct.PlayableScene.html | 9 +- rustdoc/game_logic/scenes/sidebar-items.js | 2 +- .../scenes/struct.SceneRenderDelegate.html | 9 +- rustdoc/implementors/core/fmt/trait.Debug.js | 2 +- .../implementors/core/marker/trait.Freeze.js | 2 +- .../implementors/core/marker/trait.Send.js | 2 +- .../implementors/core/marker/trait.Sync.js | 2 +- .../implementors/core/marker/trait.Unpin.js | 2 +- .../panic/unwind_safe/trait.RefUnwindSafe.js | 2 +- .../panic/unwind_safe/trait.UnwindSafe.js | 2 +- rustdoc/search-index.js | 2 +- rustdoc/source-files.js | 2 +- .../src/game_logic/scenes/cutscenes.rs.html | 533 ++++++++++++++++++ .../src/game_logic/scenes/main_menu.rs.html | 14 +- rustdoc/src/game_logic/scenes/mod.rs.html | 126 ++++- .../scenes/player_interaction.rs.html | 42 +- 25 files changed, 789 insertions(+), 35 deletions(-) create mode 100644 rustdoc/game_logic/scenes/cutscenes/index.html create mode 100644 rustdoc/game_logic/scenes/cutscenes/sidebar-items.js create mode 100644 rustdoc/game_logic/scenes/cutscenes/struct.CutScenes.html create mode 100644 rustdoc/src/game_logic/scenes/cutscenes.rs.html diff --git a/rustdoc/game_logic/all.html b/rustdoc/game_logic/all.html index 613a2599..088d57fd 100644 --- a/rustdoc/game_logic/all.html +++ b/rustdoc/game_logic/all.html @@ -2,5 +2,5 @@

List of all items[] -

Structs

Enums

Functions

Typedefs

Constants

+

Structs

Enums

Functions

Typedefs

Constants

\ No newline at end of file diff --git a/rustdoc/game_logic/scenes/cutscenes/index.html b/rustdoc/game_logic/scenes/cutscenes/index.html new file mode 100644 index 00000000..ab0da335 --- /dev/null +++ b/rustdoc/game_logic/scenes/cutscenes/index.html @@ -0,0 +1,6 @@ +game_logic::scenes::cutscenes - Rust +

Module game_logic::scenes::cutscenes[][src]

Expand description

This scene encompasses the main menu system

+

Structs

+
+ \ No newline at end of file diff --git a/rustdoc/game_logic/scenes/cutscenes/sidebar-items.js b/rustdoc/game_logic/scenes/cutscenes/sidebar-items.js new file mode 100644 index 00000000..07393fd0 --- /dev/null +++ b/rustdoc/game_logic/scenes/cutscenes/sidebar-items.js @@ -0,0 +1 @@ +initSidebarItems({"struct":[["CutScenes",""]]}); \ No newline at end of file diff --git a/rustdoc/game_logic/scenes/cutscenes/struct.CutScenes.html b/rustdoc/game_logic/scenes/cutscenes/struct.CutScenes.html new file mode 100644 index 00000000..8d505db8 --- /dev/null +++ b/rustdoc/game_logic/scenes/cutscenes/struct.CutScenes.html @@ -0,0 +1,31 @@ +CutScenes in game_logic::scenes::cutscenes - Rust +

Struct game_logic::scenes::cutscenes::CutScenes[][src]

pub struct CutScenes {
+    show_debug_info: bool,
+}

Fields

show_debug_info: bool

Implementations

Construct a new CutScenes

+

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

+

Performs the conversion.

+

Instruments this type with the provided Span, returning an +Instrumented wrapper. Read more

+

Instruments this type with the current Span, returning an +Instrumented wrapper. Read more

+

Performs the conversion.

+

Should always be Self

+

The inverse inclusion map: attempts to construct self from the equivalent element of its +superset. Read more

+

Checks if self is actually part of its subset T (and can be converted to it).

+

Use with care! Same as self.to_subset but without any property checks. Always succeeds.

+

The inclusion map: converts self to the equivalent element of its superset.

+

The type returned in the event of a conversion error.

+

Performs the conversion.

+

The type returned in the event of a conversion error.

+

Performs the conversion.

+

Attaches the provided Subscriber to this type, returning a +WithDispatch wrapper. Read more

+

Attaches the current default Subscriber to this type, returning a +WithDispatch wrapper. Read more

+
+ \ No newline at end of file diff --git a/rustdoc/game_logic/scenes/index.html b/rustdoc/game_logic/scenes/index.html index 2600bb0e..2e538a8d 100644 --- a/rustdoc/game_logic/scenes/index.html +++ b/rustdoc/game_logic/scenes/index.html @@ -1,10 +1,11 @@ game_logic::scenes - Rust

Module game_logic::scenes[][src]

Expand description

The render code for various scenes

+

Module scenes

Module game_logic::scenes[][src]

Expand description

The render code for various scenes

Overview

This will probably become a messy module over time. Stick your rendering code here

Modules

-

This scene encompasses the main menu system

+

This scene encompasses the main menu system

+

This scene encompasses the main menu system

This scene encompasses the main menu system

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

This “scene” is used only for testing animation and resource loading diff --git a/rustdoc/game_logic/scenes/main_menu/enum.MenuStateSignal.html b/rustdoc/game_logic/scenes/main_menu/enum.MenuStateSignal.html index dd2edc10..c02aaf85 100644 --- a/rustdoc/game_logic/scenes/main_menu/enum.MenuStateSignal.html +++ b/rustdoc/game_logic/scenes/main_menu/enum.MenuStateSignal.html @@ -1,6 +1,6 @@ MenuStateSignal in game_logic::scenes::main_menu - Rust

Enum game_logic::scenes::main_menu::MenuStateSignal[][src]

pub enum MenuStateSignal {
+        

Enum MenuStateSignal

Enum game_logic::scenes::main_menu::MenuStateSignal[][src]

pub enum MenuStateSignal {
     StartGame,
     QuitGame,
     DoMainMenu,
@@ -8,9 +8,19 @@
     DoCredits,
     DoLeaderboard,
     DoPauseMenu,
-}

Variants

StartGame

QuitGame

DoMainMenu

DoOptions

DoCredits

DoLeaderboard

DoPauseMenu

Trait Implementations

Returns a copy of the value. Read more

+ DoIntroCutscene, + DoMeltedDeathCutscene { + playtime: Duration, + }, + DoFinishedCutscene { + playtime: Duration, + }, + DoOceanCutscene { + playtime: Duration, + }, +}

Variants

StartGame

QuitGame

DoMainMenu

DoOptions

DoCredits

DoLeaderboard

DoPauseMenu

DoIntroCutscene

DoMeltedDeathCutscene

Fields

playtime: Duration

DoFinishedCutscene

Fields

playtime: Duration

DoOceanCutscene

Fields

playtime: Duration

Trait Implementations

Returns a copy of the value. Read more

Performs copy-assignment from source. Read more

-

Formats the value using the given formatter. Read more

+

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/main_menu/index.html b/rustdoc/game_logic/scenes/main_menu/index.html index f84c06f8..439bd8ae 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 f21f664c..18d96b27 100644 --- a/rustdoc/game_logic/scenes/main_menu/struct.MainMenu.html +++ b/rustdoc/game_logic/scenes/main_menu/struct.MainMenu.html @@ -1,11 +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,
     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

+}

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/player_interaction/index.html b/rustdoc/game_logic/scenes/player_interaction/index.html index 56475c6f..94b5252f 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 8423f678..26ed2a62 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,
@@ -9,9 +9,10 @@
     game_soundtrack: Music,
     world_colliders: Vec<ObjectCollider>,
     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

+ play_start_time: DateTime<Utc>, +}

Fields

has_updated_discord_rpc: boolplayer: Playerworld_map: MapRenderercamera: Camera2Dlast_update: SystemTimegame_soundtrack: Musicworld_colliders: Vec<ObjectCollider>show_debug_info: boolplay_start_time: DateTime<Utc>

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/game_logic/scenes/sidebar-items.js b/rustdoc/game_logic/scenes/sidebar-items.js index f22d55e7..e7692684 100644 --- a/rustdoc/game_logic/scenes/sidebar-items.js +++ b/rustdoc/game_logic/scenes/sidebar-items.js @@ -1 +1 @@ -initSidebarItems({"mod":[["main_menu","This scene encompasses the main menu system"],["pause_menu","This scene encompasses the main menu system"],["player_interaction","This scene encompasses all of the game where the player can walk around."],["test_fox","This “scene” is used only for testing animation and resource loading It should be removed once the game is being worked on"]],"struct":[["SceneRenderDelegate","Delegate for handling rendering. This is a struct to allow for stateful data (like sub-screens) to be set up"]]}); \ No newline at end of file +initSidebarItems({"mod":[["cutscenes","This scene encompasses the main menu system"],["main_menu","This scene encompasses the main menu system"],["pause_menu","This scene encompasses the main menu system"],["player_interaction","This scene encompasses all of the game where the player can walk around."],["test_fox","This “scene” is used only for testing animation and resource loading It should be removed once the game is being worked on"]],"struct":[["SceneRenderDelegate","Delegate for handling rendering. This is a struct to allow for stateful data (like sub-screens) to be set up"]]}); \ No newline at end of file diff --git a/rustdoc/game_logic/scenes/struct.SceneRenderDelegate.html b/rustdoc/game_logic/scenes/struct.SceneRenderDelegate.html index b3c0216f..391dd728 100644 --- a/rustdoc/game_logic/scenes/struct.SceneRenderDelegate.html +++ b/rustdoc/game_logic/scenes/struct.SceneRenderDelegate.html @@ -1,6 +1,6 @@ SceneRenderDelegate in game_logic::scenes - Rust

Struct game_logic::scenes::SceneRenderDelegate[][src]

pub struct SceneRenderDelegate {
+        

Struct SceneRenderDelegate

Struct game_logic::scenes::SceneRenderDelegate[][src]

pub struct SceneRenderDelegate {
     menu_control_signal: MenuStateSignal,
     pub needs_exit: bool,
     audio_subsystem: RaylibAudio,
@@ -8,12 +8,13 @@
     scene_playable: PlayableScene,
     scene_main_menu: MainMenu,
     scene_pause_menu: PauseMenu,
+    scene_cutscenes: CutScenes,
 }
Expand description

Delegate for handling rendering. This is a struct to allow for stateful data (like sub-screens) to be set up

-

Fields

menu_control_signal: MenuStateSignalneeds_exit: boolaudio_subsystem: RaylibAudioscene_test_fox: TestFoxScenescene_playable: PlayableScenescene_main_menu: MainMenuscene_pause_menu: PauseMenu

Implementations

This is called when the game first loads

-

This is called every frame once the game has started.

+

Fields

menu_control_signal: MenuStateSignalneeds_exit: boolaudio_subsystem: RaylibAudioscene_test_fox: TestFoxScenescene_playable: PlayableScenescene_main_menu: MainMenuscene_pause_menu: PauseMenuscene_cutscenes: CutScenes

Implementations

This is called when the game first loads

+

This is called every frame once the game has started.

Keep in mind everything you do here will block the main thread (no loading files plz)

-

Trait Implementations

If you need anything to happen when the game closes, stick it here.

+

Trait Implementations

If you need anything to happen when the game closes, stick it here.

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/implementors/core/fmt/trait.Debug.js b/rustdoc/implementors/core/fmt/trait.Debug.js index d01d1ec8..590036fc 100644 --- a/rustdoc/implementors/core/fmt/trait.Debug.js +++ b/rustdoc/implementors/core/fmt/trait.Debug.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["game_logic"] = [{"text":"impl Debug for InternalJsonLoadError","synthetic":false,"types":["game_logic::asset_manager::json::InternalJsonLoadError"]},{"text":"impl Debug for KnownSpriteType","synthetic":false,"types":["game_logic::asset_manager::sprite_types::KnownSpriteType"]},{"text":"impl Debug for ResourceLoadError","synthetic":false,"types":["game_logic::asset_manager::texture::ResourceLoadError"]},{"text":"impl Debug for DiscordRpcSignal","synthetic":false,"types":["game_logic::discord::signal::DiscordRpcSignal"]},{"text":"impl Debug for StatefulDiscordRpcSignalHandler","synthetic":false,"types":["game_logic::discord::signal::StatefulDiscordRpcSignalHandler"]},{"text":"impl Debug for DiscordError","synthetic":false,"types":["game_logic::discord::ipc::DiscordError"]},{"text":"impl Debug for GlobalResources","synthetic":false,"types":["game_logic::global_resource_package::GlobalResources"]},{"text":"impl Debug for Player","synthetic":false,"types":["game_logic::model::player::Player"]},{"text":"impl Debug for PossiblyAnimatedTexture","synthetic":false,"types":["game_logic::model::world_object::PossiblyAnimatedTexture"]},{"text":"impl Debug for ObjectCollider","synthetic":false,"types":["game_logic::model::world_object::ObjectCollider"]},{"text":"impl Debug for WorldObject","synthetic":false,"types":["game_logic::model::world_object::WorldObject"]},{"text":"impl Debug for WorldObjectRef","synthetic":false,"types":["game_logic::model::world_object::WorldObjectRef"]},{"text":"impl Debug for WorldObjectPackageLoadError","synthetic":false,"types":["game_logic::model::world_object_package::WorldObjectPackageLoadError"]},{"text":"impl Debug for WorldObjectPackage","synthetic":false,"types":["game_logic::model::world_object_package::WorldObjectPackage"]},{"text":"impl Debug for PersistentGameSettings","synthetic":false,"types":["game_logic::persistent::settings::PersistentGameSettings"]},{"text":"impl Debug for GameSaveState","synthetic":false,"types":["game_logic::persistent::save_state::GameSaveState"]},{"text":"impl Debug for DiscordConstants","synthetic":false,"types":["game_logic::project_constants::DiscordConstants"]},{"text":"impl Debug for PlayerConstants","synthetic":false,"types":["game_logic::project_constants::PlayerConstants"]},{"text":"impl Debug for ProjectConstants","synthetic":false,"types":["game_logic::project_constants::ProjectConstants"]},{"text":"impl Debug for AnimatedTextureLoadError","synthetic":false,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureLoadError"]},{"text":"impl Debug for FrameTextureDescriptor","synthetic":false,"types":["game_logic::rendering::utilities::anim_texture::FrameTextureDescriptor"]},{"text":"impl Debug for AnimatedTextureMetadata","synthetic":false,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureMetadata"]},{"text":"impl Debug for AnimatedTexture","synthetic":false,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTexture"]},{"text":"impl Debug for MapRenderError","synthetic":false,"types":["game_logic::rendering::utilities::map_render::MapRenderError"]},{"text":"impl Debug for ProgramDataTileCache","synthetic":false,"types":["game_logic::rendering::utilities::map_render::ProgramDataTileCache"]},{"text":"impl Debug for MapRenderer","synthetic":false,"types":["game_logic::rendering::utilities::map_render::MapRenderer"]},{"text":"impl Debug for SmFailureScreen","synthetic":false,"types":["game_logic::rendering::screens::sm_failure_screen::SmFailureScreen"]},{"text":"impl Debug for PreloadState","synthetic":false,"types":["game_logic::rendering::core_renderer_sm::PreloadState"]},{"text":"impl Debug for LoadingState","synthetic":false,"types":["game_logic::rendering::core_renderer_sm::LoadingState"]},{"text":"impl Debug for RenderGameState","synthetic":false,"types":["game_logic::rendering::core_renderer_sm::RenderGameState"]},{"text":"impl Debug for SmFailedState","synthetic":false,"types":["game_logic::rendering::core_renderer_sm::SmFailedState"]},{"text":"impl Debug for RenderBackendStates","synthetic":false,"types":["game_logic::rendering::core_renderer_sm::RenderBackendStates"]},{"text":"impl Debug for MenuStateSignal","synthetic":false,"types":["game_logic::scenes::main_menu::MenuStateSignal"]},{"text":"impl Debug for MainMenu","synthetic":false,"types":["game_logic::scenes::main_menu::MainMenu"]},{"text":"impl Debug for PauseMenu","synthetic":false,"types":["game_logic::scenes::pause_menu::PauseMenu"]},{"text":"impl Debug for PlayableScene","synthetic":false,"types":["game_logic::scenes::player_interaction::PlayableScene"]},{"text":"impl Debug for TestFoxScene","synthetic":false,"types":["game_logic::scenes::test_fox::TestFoxScene"]}]; +implementors["game_logic"] = [{"text":"impl Debug for InternalJsonLoadError","synthetic":false,"types":["game_logic::asset_manager::json::InternalJsonLoadError"]},{"text":"impl Debug for KnownSpriteType","synthetic":false,"types":["game_logic::asset_manager::sprite_types::KnownSpriteType"]},{"text":"impl Debug for ResourceLoadError","synthetic":false,"types":["game_logic::asset_manager::texture::ResourceLoadError"]},{"text":"impl Debug for DiscordRpcSignal","synthetic":false,"types":["game_logic::discord::signal::DiscordRpcSignal"]},{"text":"impl Debug for StatefulDiscordRpcSignalHandler","synthetic":false,"types":["game_logic::discord::signal::StatefulDiscordRpcSignalHandler"]},{"text":"impl Debug for DiscordError","synthetic":false,"types":["game_logic::discord::ipc::DiscordError"]},{"text":"impl Debug for GlobalResources","synthetic":false,"types":["game_logic::global_resource_package::GlobalResources"]},{"text":"impl Debug for Player","synthetic":false,"types":["game_logic::model::player::Player"]},{"text":"impl Debug for PossiblyAnimatedTexture","synthetic":false,"types":["game_logic::model::world_object::PossiblyAnimatedTexture"]},{"text":"impl Debug for ObjectCollider","synthetic":false,"types":["game_logic::model::world_object::ObjectCollider"]},{"text":"impl Debug for WorldObject","synthetic":false,"types":["game_logic::model::world_object::WorldObject"]},{"text":"impl Debug for WorldObjectRef","synthetic":false,"types":["game_logic::model::world_object::WorldObjectRef"]},{"text":"impl Debug for WorldObjectPackageLoadError","synthetic":false,"types":["game_logic::model::world_object_package::WorldObjectPackageLoadError"]},{"text":"impl Debug for WorldObjectPackage","synthetic":false,"types":["game_logic::model::world_object_package::WorldObjectPackage"]},{"text":"impl Debug for PersistentGameSettings","synthetic":false,"types":["game_logic::persistent::settings::PersistentGameSettings"]},{"text":"impl Debug for GameSaveState","synthetic":false,"types":["game_logic::persistent::save_state::GameSaveState"]},{"text":"impl Debug for DiscordConstants","synthetic":false,"types":["game_logic::project_constants::DiscordConstants"]},{"text":"impl Debug for PlayerConstants","synthetic":false,"types":["game_logic::project_constants::PlayerConstants"]},{"text":"impl Debug for ProjectConstants","synthetic":false,"types":["game_logic::project_constants::ProjectConstants"]},{"text":"impl Debug for AnimatedTextureLoadError","synthetic":false,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureLoadError"]},{"text":"impl Debug for FrameTextureDescriptor","synthetic":false,"types":["game_logic::rendering::utilities::anim_texture::FrameTextureDescriptor"]},{"text":"impl Debug for AnimatedTextureMetadata","synthetic":false,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureMetadata"]},{"text":"impl Debug for AnimatedTexture","synthetic":false,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTexture"]},{"text":"impl Debug for MapRenderError","synthetic":false,"types":["game_logic::rendering::utilities::map_render::MapRenderError"]},{"text":"impl Debug for ProgramDataTileCache","synthetic":false,"types":["game_logic::rendering::utilities::map_render::ProgramDataTileCache"]},{"text":"impl Debug for MapRenderer","synthetic":false,"types":["game_logic::rendering::utilities::map_render::MapRenderer"]},{"text":"impl Debug for SmFailureScreen","synthetic":false,"types":["game_logic::rendering::screens::sm_failure_screen::SmFailureScreen"]},{"text":"impl Debug for PreloadState","synthetic":false,"types":["game_logic::rendering::core_renderer_sm::PreloadState"]},{"text":"impl Debug for LoadingState","synthetic":false,"types":["game_logic::rendering::core_renderer_sm::LoadingState"]},{"text":"impl Debug for RenderGameState","synthetic":false,"types":["game_logic::rendering::core_renderer_sm::RenderGameState"]},{"text":"impl Debug for SmFailedState","synthetic":false,"types":["game_logic::rendering::core_renderer_sm::SmFailedState"]},{"text":"impl Debug for RenderBackendStates","synthetic":false,"types":["game_logic::rendering::core_renderer_sm::RenderBackendStates"]},{"text":"impl Debug for CutScenes","synthetic":false,"types":["game_logic::scenes::cutscenes::CutScenes"]},{"text":"impl Debug for MenuStateSignal","synthetic":false,"types":["game_logic::scenes::main_menu::MenuStateSignal"]},{"text":"impl Debug for MainMenu","synthetic":false,"types":["game_logic::scenes::main_menu::MainMenu"]},{"text":"impl Debug for PauseMenu","synthetic":false,"types":["game_logic::scenes::pause_menu::PauseMenu"]},{"text":"impl Debug for PlayableScene","synthetic":false,"types":["game_logic::scenes::player_interaction::PlayableScene"]},{"text":"impl Debug for TestFoxScene","synthetic":false,"types":["game_logic::scenes::test_fox::TestFoxScene"]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/rustdoc/implementors/core/marker/trait.Freeze.js b/rustdoc/implementors/core/marker/trait.Freeze.js index e0d6408f..5bd3db96 100644 --- a/rustdoc/implementors/core/marker/trait.Freeze.js +++ b/rustdoc/implementors/core/marker/trait.Freeze.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["game_logic"] = [{"text":"impl Freeze for InternalData","synthetic":true,"types":["game_logic::asset_manager::datastore::InternalData"]},{"text":"impl Freeze for InternalJsonLoadError","synthetic":true,"types":["game_logic::asset_manager::json::InternalJsonLoadError"]},{"text":"impl Freeze for KnownSpriteType","synthetic":true,"types":["game_logic::asset_manager::sprite_types::KnownSpriteType"]},{"text":"impl Freeze for ResourceLoadError","synthetic":true,"types":["game_logic::asset_manager::texture::ResourceLoadError"]},{"text":"impl Freeze for DiscordRpcSignal","synthetic":true,"types":["game_logic::discord::signal::DiscordRpcSignal"]},{"text":"impl Freeze for StatefulDiscordRpcSignalHandler","synthetic":true,"types":["game_logic::discord::signal::StatefulDiscordRpcSignalHandler"]},{"text":"impl Freeze for DiscordError","synthetic":true,"types":["game_logic::discord::ipc::DiscordError"]},{"text":"impl !Freeze for DiscordRpcClient","synthetic":true,"types":["game_logic::discord::ipc::DiscordRpcClient"]},{"text":"impl !Freeze for DiscordRpcThreadHandle","synthetic":true,"types":["game_logic::discord::DiscordRpcThreadHandle"]},{"text":"impl Freeze for GlobalResources","synthetic":true,"types":["game_logic::global_resource_package::GlobalResources"]},{"text":"impl Freeze for Player","synthetic":true,"types":["game_logic::model::player::Player"]},{"text":"impl Freeze for PossiblyAnimatedTexture","synthetic":true,"types":["game_logic::model::world_object::PossiblyAnimatedTexture"]},{"text":"impl Freeze for ObjectCollider","synthetic":true,"types":["game_logic::model::world_object::ObjectCollider"]},{"text":"impl Freeze for WorldObject","synthetic":true,"types":["game_logic::model::world_object::WorldObject"]},{"text":"impl Freeze for WorldObjectRef","synthetic":true,"types":["game_logic::model::world_object::WorldObjectRef"]},{"text":"impl Freeze for WorldObjectPackageLoadError","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackageLoadError"]},{"text":"impl Freeze for WorldObjectPackage","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackage"]},{"text":"impl Freeze for PersistentGameSettings","synthetic":true,"types":["game_logic::persistent::settings::PersistentGameSettings"]},{"text":"impl Freeze for GameSaveState","synthetic":true,"types":["game_logic::persistent::save_state::GameSaveState"]},{"text":"impl Freeze for DiscordConstants","synthetic":true,"types":["game_logic::project_constants::DiscordConstants"]},{"text":"impl Freeze for PlayerConstants","synthetic":true,"types":["game_logic::project_constants::PlayerConstants"]},{"text":"impl Freeze for ProjectConstants","synthetic":true,"types":["game_logic::project_constants::ProjectConstants"]},{"text":"impl Freeze for AnimatedTextureLoadError","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureLoadError"]},{"text":"impl Freeze for FrameTextureDescriptor","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::FrameTextureDescriptor"]},{"text":"impl Freeze for AnimatedTextureMetadata","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureMetadata"]},{"text":"impl Freeze for AnimatedTexture","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTexture"]},{"text":"impl Freeze for MapRenderError","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderError"]},{"text":"impl Freeze for ProgramDataTileCache","synthetic":true,"types":["game_logic::rendering::utilities::map_render::ProgramDataTileCache"]},{"text":"impl Freeze for MapRenderer","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderer"]},{"text":"impl Freeze for LoadingScreen","synthetic":true,"types":["game_logic::rendering::screens::loading_screen::LoadingScreen"]},{"text":"impl Freeze for SmFailureScreen","synthetic":true,"types":["game_logic::rendering::screens::sm_failure_screen::SmFailureScreen"]},{"text":"impl Freeze for PreloadState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::PreloadState"]},{"text":"impl Freeze for LoadingState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::LoadingState"]},{"text":"impl Freeze for RenderGameState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderGameState"]},{"text":"impl Freeze for SmFailedState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::SmFailedState"]},{"text":"impl Freeze for RenderBackendStates","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderBackendStates"]},{"text":"impl Freeze for MenuStateSignal","synthetic":true,"types":["game_logic::scenes::main_menu::MenuStateSignal"]},{"text":"impl Freeze for MainMenu","synthetic":true,"types":["game_logic::scenes::main_menu::MainMenu"]},{"text":"impl Freeze for PauseMenu","synthetic":true,"types":["game_logic::scenes::pause_menu::PauseMenu"]},{"text":"impl Freeze for PlayableScene","synthetic":true,"types":["game_logic::scenes::player_interaction::PlayableScene"]},{"text":"impl Freeze for TestFoxScene","synthetic":true,"types":["game_logic::scenes::test_fox::TestFoxScene"]},{"text":"impl Freeze for SceneRenderDelegate","synthetic":true,"types":["game_logic::scenes::SceneRenderDelegate"]}]; +implementors["game_logic"] = [{"text":"impl Freeze for InternalData","synthetic":true,"types":["game_logic::asset_manager::datastore::InternalData"]},{"text":"impl Freeze for InternalJsonLoadError","synthetic":true,"types":["game_logic::asset_manager::json::InternalJsonLoadError"]},{"text":"impl Freeze for KnownSpriteType","synthetic":true,"types":["game_logic::asset_manager::sprite_types::KnownSpriteType"]},{"text":"impl Freeze for ResourceLoadError","synthetic":true,"types":["game_logic::asset_manager::texture::ResourceLoadError"]},{"text":"impl Freeze for DiscordRpcSignal","synthetic":true,"types":["game_logic::discord::signal::DiscordRpcSignal"]},{"text":"impl Freeze for StatefulDiscordRpcSignalHandler","synthetic":true,"types":["game_logic::discord::signal::StatefulDiscordRpcSignalHandler"]},{"text":"impl Freeze for DiscordError","synthetic":true,"types":["game_logic::discord::ipc::DiscordError"]},{"text":"impl !Freeze for DiscordRpcClient","synthetic":true,"types":["game_logic::discord::ipc::DiscordRpcClient"]},{"text":"impl !Freeze for DiscordRpcThreadHandle","synthetic":true,"types":["game_logic::discord::DiscordRpcThreadHandle"]},{"text":"impl Freeze for GlobalResources","synthetic":true,"types":["game_logic::global_resource_package::GlobalResources"]},{"text":"impl Freeze for Player","synthetic":true,"types":["game_logic::model::player::Player"]},{"text":"impl Freeze for PossiblyAnimatedTexture","synthetic":true,"types":["game_logic::model::world_object::PossiblyAnimatedTexture"]},{"text":"impl Freeze for ObjectCollider","synthetic":true,"types":["game_logic::model::world_object::ObjectCollider"]},{"text":"impl Freeze for WorldObject","synthetic":true,"types":["game_logic::model::world_object::WorldObject"]},{"text":"impl Freeze for WorldObjectRef","synthetic":true,"types":["game_logic::model::world_object::WorldObjectRef"]},{"text":"impl Freeze for WorldObjectPackageLoadError","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackageLoadError"]},{"text":"impl Freeze for WorldObjectPackage","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackage"]},{"text":"impl Freeze for PersistentGameSettings","synthetic":true,"types":["game_logic::persistent::settings::PersistentGameSettings"]},{"text":"impl Freeze for GameSaveState","synthetic":true,"types":["game_logic::persistent::save_state::GameSaveState"]},{"text":"impl Freeze for DiscordConstants","synthetic":true,"types":["game_logic::project_constants::DiscordConstants"]},{"text":"impl Freeze for PlayerConstants","synthetic":true,"types":["game_logic::project_constants::PlayerConstants"]},{"text":"impl Freeze for ProjectConstants","synthetic":true,"types":["game_logic::project_constants::ProjectConstants"]},{"text":"impl Freeze for AnimatedTextureLoadError","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureLoadError"]},{"text":"impl Freeze for FrameTextureDescriptor","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::FrameTextureDescriptor"]},{"text":"impl Freeze for AnimatedTextureMetadata","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureMetadata"]},{"text":"impl Freeze for AnimatedTexture","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTexture"]},{"text":"impl Freeze for MapRenderError","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderError"]},{"text":"impl Freeze for ProgramDataTileCache","synthetic":true,"types":["game_logic::rendering::utilities::map_render::ProgramDataTileCache"]},{"text":"impl Freeze for MapRenderer","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderer"]},{"text":"impl Freeze for LoadingScreen","synthetic":true,"types":["game_logic::rendering::screens::loading_screen::LoadingScreen"]},{"text":"impl Freeze for SmFailureScreen","synthetic":true,"types":["game_logic::rendering::screens::sm_failure_screen::SmFailureScreen"]},{"text":"impl Freeze for PreloadState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::PreloadState"]},{"text":"impl Freeze for LoadingState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::LoadingState"]},{"text":"impl Freeze for RenderGameState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderGameState"]},{"text":"impl Freeze for SmFailedState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::SmFailedState"]},{"text":"impl Freeze for RenderBackendStates","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderBackendStates"]},{"text":"impl Freeze for CutScenes","synthetic":true,"types":["game_logic::scenes::cutscenes::CutScenes"]},{"text":"impl Freeze for MenuStateSignal","synthetic":true,"types":["game_logic::scenes::main_menu::MenuStateSignal"]},{"text":"impl Freeze for MainMenu","synthetic":true,"types":["game_logic::scenes::main_menu::MainMenu"]},{"text":"impl Freeze for PauseMenu","synthetic":true,"types":["game_logic::scenes::pause_menu::PauseMenu"]},{"text":"impl Freeze for PlayableScene","synthetic":true,"types":["game_logic::scenes::player_interaction::PlayableScene"]},{"text":"impl Freeze for TestFoxScene","synthetic":true,"types":["game_logic::scenes::test_fox::TestFoxScene"]},{"text":"impl Freeze for SceneRenderDelegate","synthetic":true,"types":["game_logic::scenes::SceneRenderDelegate"]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/rustdoc/implementors/core/marker/trait.Send.js b/rustdoc/implementors/core/marker/trait.Send.js index a4062e04..832b6abe 100644 --- a/rustdoc/implementors/core/marker/trait.Send.js +++ b/rustdoc/implementors/core/marker/trait.Send.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["game_logic"] = [{"text":"impl Send for InternalData","synthetic":true,"types":["game_logic::asset_manager::datastore::InternalData"]},{"text":"impl Send for InternalJsonLoadError","synthetic":true,"types":["game_logic::asset_manager::json::InternalJsonLoadError"]},{"text":"impl Send for KnownSpriteType","synthetic":true,"types":["game_logic::asset_manager::sprite_types::KnownSpriteType"]},{"text":"impl Send for ResourceLoadError","synthetic":true,"types":["game_logic::asset_manager::texture::ResourceLoadError"]},{"text":"impl Send for DiscordRpcSignal","synthetic":true,"types":["game_logic::discord::signal::DiscordRpcSignal"]},{"text":"impl Send for StatefulDiscordRpcSignalHandler","synthetic":true,"types":["game_logic::discord::signal::StatefulDiscordRpcSignalHandler"]},{"text":"impl Send for DiscordError","synthetic":true,"types":["game_logic::discord::ipc::DiscordError"]},{"text":"impl Send for DiscordRpcClient","synthetic":true,"types":["game_logic::discord::ipc::DiscordRpcClient"]},{"text":"impl Send for DiscordRpcThreadHandle","synthetic":true,"types":["game_logic::discord::DiscordRpcThreadHandle"]},{"text":"impl !Send for GlobalResources","synthetic":true,"types":["game_logic::global_resource_package::GlobalResources"]},{"text":"impl Send for Player","synthetic":true,"types":["game_logic::model::player::Player"]},{"text":"impl Send for PossiblyAnimatedTexture","synthetic":true,"types":["game_logic::model::world_object::PossiblyAnimatedTexture"]},{"text":"impl Send for ObjectCollider","synthetic":true,"types":["game_logic::model::world_object::ObjectCollider"]},{"text":"impl Send for WorldObject","synthetic":true,"types":["game_logic::model::world_object::WorldObject"]},{"text":"impl Send for WorldObjectRef","synthetic":true,"types":["game_logic::model::world_object::WorldObjectRef"]},{"text":"impl Send for WorldObjectPackageLoadError","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackageLoadError"]},{"text":"impl Send for WorldObjectPackage","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackage"]},{"text":"impl Send for PersistentGameSettings","synthetic":true,"types":["game_logic::persistent::settings::PersistentGameSettings"]},{"text":"impl Send for GameSaveState","synthetic":true,"types":["game_logic::persistent::save_state::GameSaveState"]},{"text":"impl Send for DiscordConstants","synthetic":true,"types":["game_logic::project_constants::DiscordConstants"]},{"text":"impl Send for PlayerConstants","synthetic":true,"types":["game_logic::project_constants::PlayerConstants"]},{"text":"impl Send for ProjectConstants","synthetic":true,"types":["game_logic::project_constants::ProjectConstants"]},{"text":"impl Send for AnimatedTextureLoadError","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureLoadError"]},{"text":"impl Send for FrameTextureDescriptor","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::FrameTextureDescriptor"]},{"text":"impl Send for AnimatedTextureMetadata","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureMetadata"]},{"text":"impl Send for AnimatedTexture","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTexture"]},{"text":"impl Send for MapRenderError","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderError"]},{"text":"impl Send for ProgramDataTileCache","synthetic":true,"types":["game_logic::rendering::utilities::map_render::ProgramDataTileCache"]},{"text":"impl Send for MapRenderer","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderer"]},{"text":"impl !Send for LoadingScreen","synthetic":true,"types":["game_logic::rendering::screens::loading_screen::LoadingScreen"]},{"text":"impl Send for SmFailureScreen","synthetic":true,"types":["game_logic::rendering::screens::sm_failure_screen::SmFailureScreen"]},{"text":"impl Send for PreloadState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::PreloadState"]},{"text":"impl Send for LoadingState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::LoadingState"]},{"text":"impl Send for RenderGameState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderGameState"]},{"text":"impl Send for SmFailedState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::SmFailedState"]},{"text":"impl Send for RenderBackendStates","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderBackendStates"]},{"text":"impl Send for MenuStateSignal","synthetic":true,"types":["game_logic::scenes::main_menu::MenuStateSignal"]},{"text":"impl Send for MainMenu","synthetic":true,"types":["game_logic::scenes::main_menu::MainMenu"]},{"text":"impl Send for PauseMenu","synthetic":true,"types":["game_logic::scenes::pause_menu::PauseMenu"]},{"text":"impl !Send for PlayableScene","synthetic":true,"types":["game_logic::scenes::player_interaction::PlayableScene"]},{"text":"impl Send for TestFoxScene","synthetic":true,"types":["game_logic::scenes::test_fox::TestFoxScene"]},{"text":"impl !Send for SceneRenderDelegate","synthetic":true,"types":["game_logic::scenes::SceneRenderDelegate"]}]; +implementors["game_logic"] = [{"text":"impl Send for InternalData","synthetic":true,"types":["game_logic::asset_manager::datastore::InternalData"]},{"text":"impl Send for InternalJsonLoadError","synthetic":true,"types":["game_logic::asset_manager::json::InternalJsonLoadError"]},{"text":"impl Send for KnownSpriteType","synthetic":true,"types":["game_logic::asset_manager::sprite_types::KnownSpriteType"]},{"text":"impl Send for ResourceLoadError","synthetic":true,"types":["game_logic::asset_manager::texture::ResourceLoadError"]},{"text":"impl Send for DiscordRpcSignal","synthetic":true,"types":["game_logic::discord::signal::DiscordRpcSignal"]},{"text":"impl Send for StatefulDiscordRpcSignalHandler","synthetic":true,"types":["game_logic::discord::signal::StatefulDiscordRpcSignalHandler"]},{"text":"impl Send for DiscordError","synthetic":true,"types":["game_logic::discord::ipc::DiscordError"]},{"text":"impl Send for DiscordRpcClient","synthetic":true,"types":["game_logic::discord::ipc::DiscordRpcClient"]},{"text":"impl Send for DiscordRpcThreadHandle","synthetic":true,"types":["game_logic::discord::DiscordRpcThreadHandle"]},{"text":"impl !Send for GlobalResources","synthetic":true,"types":["game_logic::global_resource_package::GlobalResources"]},{"text":"impl Send for Player","synthetic":true,"types":["game_logic::model::player::Player"]},{"text":"impl Send for PossiblyAnimatedTexture","synthetic":true,"types":["game_logic::model::world_object::PossiblyAnimatedTexture"]},{"text":"impl Send for ObjectCollider","synthetic":true,"types":["game_logic::model::world_object::ObjectCollider"]},{"text":"impl Send for WorldObject","synthetic":true,"types":["game_logic::model::world_object::WorldObject"]},{"text":"impl Send for WorldObjectRef","synthetic":true,"types":["game_logic::model::world_object::WorldObjectRef"]},{"text":"impl Send for WorldObjectPackageLoadError","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackageLoadError"]},{"text":"impl Send for WorldObjectPackage","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackage"]},{"text":"impl Send for PersistentGameSettings","synthetic":true,"types":["game_logic::persistent::settings::PersistentGameSettings"]},{"text":"impl Send for GameSaveState","synthetic":true,"types":["game_logic::persistent::save_state::GameSaveState"]},{"text":"impl Send for DiscordConstants","synthetic":true,"types":["game_logic::project_constants::DiscordConstants"]},{"text":"impl Send for PlayerConstants","synthetic":true,"types":["game_logic::project_constants::PlayerConstants"]},{"text":"impl Send for ProjectConstants","synthetic":true,"types":["game_logic::project_constants::ProjectConstants"]},{"text":"impl Send for AnimatedTextureLoadError","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureLoadError"]},{"text":"impl Send for FrameTextureDescriptor","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::FrameTextureDescriptor"]},{"text":"impl Send for AnimatedTextureMetadata","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureMetadata"]},{"text":"impl Send for AnimatedTexture","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTexture"]},{"text":"impl Send for MapRenderError","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderError"]},{"text":"impl Send for ProgramDataTileCache","synthetic":true,"types":["game_logic::rendering::utilities::map_render::ProgramDataTileCache"]},{"text":"impl Send for MapRenderer","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderer"]},{"text":"impl !Send for LoadingScreen","synthetic":true,"types":["game_logic::rendering::screens::loading_screen::LoadingScreen"]},{"text":"impl Send for SmFailureScreen","synthetic":true,"types":["game_logic::rendering::screens::sm_failure_screen::SmFailureScreen"]},{"text":"impl Send for PreloadState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::PreloadState"]},{"text":"impl Send for LoadingState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::LoadingState"]},{"text":"impl Send for RenderGameState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderGameState"]},{"text":"impl Send for SmFailedState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::SmFailedState"]},{"text":"impl Send for RenderBackendStates","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderBackendStates"]},{"text":"impl Send for CutScenes","synthetic":true,"types":["game_logic::scenes::cutscenes::CutScenes"]},{"text":"impl Send for MenuStateSignal","synthetic":true,"types":["game_logic::scenes::main_menu::MenuStateSignal"]},{"text":"impl Send for MainMenu","synthetic":true,"types":["game_logic::scenes::main_menu::MainMenu"]},{"text":"impl Send for PauseMenu","synthetic":true,"types":["game_logic::scenes::pause_menu::PauseMenu"]},{"text":"impl !Send for PlayableScene","synthetic":true,"types":["game_logic::scenes::player_interaction::PlayableScene"]},{"text":"impl Send for TestFoxScene","synthetic":true,"types":["game_logic::scenes::test_fox::TestFoxScene"]},{"text":"impl !Send for SceneRenderDelegate","synthetic":true,"types":["game_logic::scenes::SceneRenderDelegate"]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/rustdoc/implementors/core/marker/trait.Sync.js b/rustdoc/implementors/core/marker/trait.Sync.js index cfd7bcf0..be5d8d62 100644 --- a/rustdoc/implementors/core/marker/trait.Sync.js +++ b/rustdoc/implementors/core/marker/trait.Sync.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["game_logic"] = [{"text":"impl Sync for InternalData","synthetic":true,"types":["game_logic::asset_manager::datastore::InternalData"]},{"text":"impl Sync for InternalJsonLoadError","synthetic":true,"types":["game_logic::asset_manager::json::InternalJsonLoadError"]},{"text":"impl Sync for KnownSpriteType","synthetic":true,"types":["game_logic::asset_manager::sprite_types::KnownSpriteType"]},{"text":"impl Sync for ResourceLoadError","synthetic":true,"types":["game_logic::asset_manager::texture::ResourceLoadError"]},{"text":"impl Sync for DiscordRpcSignal","synthetic":true,"types":["game_logic::discord::signal::DiscordRpcSignal"]},{"text":"impl Sync for StatefulDiscordRpcSignalHandler","synthetic":true,"types":["game_logic::discord::signal::StatefulDiscordRpcSignalHandler"]},{"text":"impl Sync for DiscordError","synthetic":true,"types":["game_logic::discord::ipc::DiscordError"]},{"text":"impl Sync for DiscordRpcClient","synthetic":true,"types":["game_logic::discord::ipc::DiscordRpcClient"]},{"text":"impl Sync for DiscordRpcThreadHandle","synthetic":true,"types":["game_logic::discord::DiscordRpcThreadHandle"]},{"text":"impl !Sync for GlobalResources","synthetic":true,"types":["game_logic::global_resource_package::GlobalResources"]},{"text":"impl Sync for Player","synthetic":true,"types":["game_logic::model::player::Player"]},{"text":"impl Sync for PossiblyAnimatedTexture","synthetic":true,"types":["game_logic::model::world_object::PossiblyAnimatedTexture"]},{"text":"impl Sync for ObjectCollider","synthetic":true,"types":["game_logic::model::world_object::ObjectCollider"]},{"text":"impl Sync for WorldObject","synthetic":true,"types":["game_logic::model::world_object::WorldObject"]},{"text":"impl Sync for WorldObjectRef","synthetic":true,"types":["game_logic::model::world_object::WorldObjectRef"]},{"text":"impl Sync for WorldObjectPackageLoadError","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackageLoadError"]},{"text":"impl Sync for WorldObjectPackage","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackage"]},{"text":"impl Sync for PersistentGameSettings","synthetic":true,"types":["game_logic::persistent::settings::PersistentGameSettings"]},{"text":"impl Sync for GameSaveState","synthetic":true,"types":["game_logic::persistent::save_state::GameSaveState"]},{"text":"impl Sync for DiscordConstants","synthetic":true,"types":["game_logic::project_constants::DiscordConstants"]},{"text":"impl Sync for PlayerConstants","synthetic":true,"types":["game_logic::project_constants::PlayerConstants"]},{"text":"impl Sync for ProjectConstants","synthetic":true,"types":["game_logic::project_constants::ProjectConstants"]},{"text":"impl Sync for AnimatedTextureLoadError","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureLoadError"]},{"text":"impl Sync for FrameTextureDescriptor","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::FrameTextureDescriptor"]},{"text":"impl Sync for AnimatedTextureMetadata","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureMetadata"]},{"text":"impl Sync for AnimatedTexture","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTexture"]},{"text":"impl Sync for MapRenderError","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderError"]},{"text":"impl Sync for ProgramDataTileCache","synthetic":true,"types":["game_logic::rendering::utilities::map_render::ProgramDataTileCache"]},{"text":"impl Sync for MapRenderer","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderer"]},{"text":"impl !Sync for LoadingScreen","synthetic":true,"types":["game_logic::rendering::screens::loading_screen::LoadingScreen"]},{"text":"impl Sync for SmFailureScreen","synthetic":true,"types":["game_logic::rendering::screens::sm_failure_screen::SmFailureScreen"]},{"text":"impl Sync for PreloadState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::PreloadState"]},{"text":"impl Sync for LoadingState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::LoadingState"]},{"text":"impl Sync for RenderGameState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderGameState"]},{"text":"impl Sync for SmFailedState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::SmFailedState"]},{"text":"impl Sync for RenderBackendStates","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderBackendStates"]},{"text":"impl Sync for MenuStateSignal","synthetic":true,"types":["game_logic::scenes::main_menu::MenuStateSignal"]},{"text":"impl Sync for MainMenu","synthetic":true,"types":["game_logic::scenes::main_menu::MainMenu"]},{"text":"impl Sync for PauseMenu","synthetic":true,"types":["game_logic::scenes::pause_menu::PauseMenu"]},{"text":"impl !Sync for PlayableScene","synthetic":true,"types":["game_logic::scenes::player_interaction::PlayableScene"]},{"text":"impl Sync for TestFoxScene","synthetic":true,"types":["game_logic::scenes::test_fox::TestFoxScene"]},{"text":"impl !Sync for SceneRenderDelegate","synthetic":true,"types":["game_logic::scenes::SceneRenderDelegate"]}]; +implementors["game_logic"] = [{"text":"impl Sync for InternalData","synthetic":true,"types":["game_logic::asset_manager::datastore::InternalData"]},{"text":"impl Sync for InternalJsonLoadError","synthetic":true,"types":["game_logic::asset_manager::json::InternalJsonLoadError"]},{"text":"impl Sync for KnownSpriteType","synthetic":true,"types":["game_logic::asset_manager::sprite_types::KnownSpriteType"]},{"text":"impl Sync for ResourceLoadError","synthetic":true,"types":["game_logic::asset_manager::texture::ResourceLoadError"]},{"text":"impl Sync for DiscordRpcSignal","synthetic":true,"types":["game_logic::discord::signal::DiscordRpcSignal"]},{"text":"impl Sync for StatefulDiscordRpcSignalHandler","synthetic":true,"types":["game_logic::discord::signal::StatefulDiscordRpcSignalHandler"]},{"text":"impl Sync for DiscordError","synthetic":true,"types":["game_logic::discord::ipc::DiscordError"]},{"text":"impl Sync for DiscordRpcClient","synthetic":true,"types":["game_logic::discord::ipc::DiscordRpcClient"]},{"text":"impl Sync for DiscordRpcThreadHandle","synthetic":true,"types":["game_logic::discord::DiscordRpcThreadHandle"]},{"text":"impl !Sync for GlobalResources","synthetic":true,"types":["game_logic::global_resource_package::GlobalResources"]},{"text":"impl Sync for Player","synthetic":true,"types":["game_logic::model::player::Player"]},{"text":"impl Sync for PossiblyAnimatedTexture","synthetic":true,"types":["game_logic::model::world_object::PossiblyAnimatedTexture"]},{"text":"impl Sync for ObjectCollider","synthetic":true,"types":["game_logic::model::world_object::ObjectCollider"]},{"text":"impl Sync for WorldObject","synthetic":true,"types":["game_logic::model::world_object::WorldObject"]},{"text":"impl Sync for WorldObjectRef","synthetic":true,"types":["game_logic::model::world_object::WorldObjectRef"]},{"text":"impl Sync for WorldObjectPackageLoadError","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackageLoadError"]},{"text":"impl Sync for WorldObjectPackage","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackage"]},{"text":"impl Sync for PersistentGameSettings","synthetic":true,"types":["game_logic::persistent::settings::PersistentGameSettings"]},{"text":"impl Sync for GameSaveState","synthetic":true,"types":["game_logic::persistent::save_state::GameSaveState"]},{"text":"impl Sync for DiscordConstants","synthetic":true,"types":["game_logic::project_constants::DiscordConstants"]},{"text":"impl Sync for PlayerConstants","synthetic":true,"types":["game_logic::project_constants::PlayerConstants"]},{"text":"impl Sync for ProjectConstants","synthetic":true,"types":["game_logic::project_constants::ProjectConstants"]},{"text":"impl Sync for AnimatedTextureLoadError","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureLoadError"]},{"text":"impl Sync for FrameTextureDescriptor","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::FrameTextureDescriptor"]},{"text":"impl Sync for AnimatedTextureMetadata","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureMetadata"]},{"text":"impl Sync for AnimatedTexture","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTexture"]},{"text":"impl Sync for MapRenderError","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderError"]},{"text":"impl Sync for ProgramDataTileCache","synthetic":true,"types":["game_logic::rendering::utilities::map_render::ProgramDataTileCache"]},{"text":"impl Sync for MapRenderer","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderer"]},{"text":"impl !Sync for LoadingScreen","synthetic":true,"types":["game_logic::rendering::screens::loading_screen::LoadingScreen"]},{"text":"impl Sync for SmFailureScreen","synthetic":true,"types":["game_logic::rendering::screens::sm_failure_screen::SmFailureScreen"]},{"text":"impl Sync for PreloadState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::PreloadState"]},{"text":"impl Sync for LoadingState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::LoadingState"]},{"text":"impl Sync for RenderGameState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderGameState"]},{"text":"impl Sync for SmFailedState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::SmFailedState"]},{"text":"impl Sync for RenderBackendStates","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderBackendStates"]},{"text":"impl Sync for CutScenes","synthetic":true,"types":["game_logic::scenes::cutscenes::CutScenes"]},{"text":"impl Sync for MenuStateSignal","synthetic":true,"types":["game_logic::scenes::main_menu::MenuStateSignal"]},{"text":"impl Sync for MainMenu","synthetic":true,"types":["game_logic::scenes::main_menu::MainMenu"]},{"text":"impl Sync for PauseMenu","synthetic":true,"types":["game_logic::scenes::pause_menu::PauseMenu"]},{"text":"impl !Sync for PlayableScene","synthetic":true,"types":["game_logic::scenes::player_interaction::PlayableScene"]},{"text":"impl Sync for TestFoxScene","synthetic":true,"types":["game_logic::scenes::test_fox::TestFoxScene"]},{"text":"impl !Sync for SceneRenderDelegate","synthetic":true,"types":["game_logic::scenes::SceneRenderDelegate"]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/rustdoc/implementors/core/marker/trait.Unpin.js b/rustdoc/implementors/core/marker/trait.Unpin.js index 27aacde6..0ed713d2 100644 --- a/rustdoc/implementors/core/marker/trait.Unpin.js +++ b/rustdoc/implementors/core/marker/trait.Unpin.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["game_logic"] = [{"text":"impl Unpin for InternalData","synthetic":true,"types":["game_logic::asset_manager::datastore::InternalData"]},{"text":"impl Unpin for InternalJsonLoadError","synthetic":true,"types":["game_logic::asset_manager::json::InternalJsonLoadError"]},{"text":"impl Unpin for KnownSpriteType","synthetic":true,"types":["game_logic::asset_manager::sprite_types::KnownSpriteType"]},{"text":"impl Unpin for ResourceLoadError","synthetic":true,"types":["game_logic::asset_manager::texture::ResourceLoadError"]},{"text":"impl Unpin for DiscordRpcSignal","synthetic":true,"types":["game_logic::discord::signal::DiscordRpcSignal"]},{"text":"impl Unpin for StatefulDiscordRpcSignalHandler","synthetic":true,"types":["game_logic::discord::signal::StatefulDiscordRpcSignalHandler"]},{"text":"impl Unpin for DiscordError","synthetic":true,"types":["game_logic::discord::ipc::DiscordError"]},{"text":"impl Unpin for DiscordRpcClient","synthetic":true,"types":["game_logic::discord::ipc::DiscordRpcClient"]},{"text":"impl Unpin for DiscordRpcThreadHandle","synthetic":true,"types":["game_logic::discord::DiscordRpcThreadHandle"]},{"text":"impl Unpin for GlobalResources","synthetic":true,"types":["game_logic::global_resource_package::GlobalResources"]},{"text":"impl Unpin for Player","synthetic":true,"types":["game_logic::model::player::Player"]},{"text":"impl Unpin for PossiblyAnimatedTexture","synthetic":true,"types":["game_logic::model::world_object::PossiblyAnimatedTexture"]},{"text":"impl Unpin for ObjectCollider","synthetic":true,"types":["game_logic::model::world_object::ObjectCollider"]},{"text":"impl Unpin for WorldObject","synthetic":true,"types":["game_logic::model::world_object::WorldObject"]},{"text":"impl Unpin for WorldObjectRef","synthetic":true,"types":["game_logic::model::world_object::WorldObjectRef"]},{"text":"impl Unpin for WorldObjectPackageLoadError","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackageLoadError"]},{"text":"impl Unpin for WorldObjectPackage","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackage"]},{"text":"impl Unpin for PersistentGameSettings","synthetic":true,"types":["game_logic::persistent::settings::PersistentGameSettings"]},{"text":"impl Unpin for GameSaveState","synthetic":true,"types":["game_logic::persistent::save_state::GameSaveState"]},{"text":"impl Unpin for DiscordConstants","synthetic":true,"types":["game_logic::project_constants::DiscordConstants"]},{"text":"impl Unpin for PlayerConstants","synthetic":true,"types":["game_logic::project_constants::PlayerConstants"]},{"text":"impl Unpin for ProjectConstants","synthetic":true,"types":["game_logic::project_constants::ProjectConstants"]},{"text":"impl Unpin for AnimatedTextureLoadError","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureLoadError"]},{"text":"impl Unpin for FrameTextureDescriptor","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::FrameTextureDescriptor"]},{"text":"impl Unpin for AnimatedTextureMetadata","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureMetadata"]},{"text":"impl Unpin for AnimatedTexture","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTexture"]},{"text":"impl Unpin for MapRenderError","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderError"]},{"text":"impl Unpin for ProgramDataTileCache","synthetic":true,"types":["game_logic::rendering::utilities::map_render::ProgramDataTileCache"]},{"text":"impl Unpin for MapRenderer","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderer"]},{"text":"impl Unpin for LoadingScreen","synthetic":true,"types":["game_logic::rendering::screens::loading_screen::LoadingScreen"]},{"text":"impl Unpin for SmFailureScreen","synthetic":true,"types":["game_logic::rendering::screens::sm_failure_screen::SmFailureScreen"]},{"text":"impl Unpin for PreloadState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::PreloadState"]},{"text":"impl Unpin for LoadingState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::LoadingState"]},{"text":"impl Unpin for RenderGameState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderGameState"]},{"text":"impl Unpin for SmFailedState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::SmFailedState"]},{"text":"impl Unpin for RenderBackendStates","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderBackendStates"]},{"text":"impl Unpin for MenuStateSignal","synthetic":true,"types":["game_logic::scenes::main_menu::MenuStateSignal"]},{"text":"impl Unpin for MainMenu","synthetic":true,"types":["game_logic::scenes::main_menu::MainMenu"]},{"text":"impl Unpin for PauseMenu","synthetic":true,"types":["game_logic::scenes::pause_menu::PauseMenu"]},{"text":"impl Unpin for PlayableScene","synthetic":true,"types":["game_logic::scenes::player_interaction::PlayableScene"]},{"text":"impl Unpin for TestFoxScene","synthetic":true,"types":["game_logic::scenes::test_fox::TestFoxScene"]},{"text":"impl Unpin for SceneRenderDelegate","synthetic":true,"types":["game_logic::scenes::SceneRenderDelegate"]}]; +implementors["game_logic"] = [{"text":"impl Unpin for InternalData","synthetic":true,"types":["game_logic::asset_manager::datastore::InternalData"]},{"text":"impl Unpin for InternalJsonLoadError","synthetic":true,"types":["game_logic::asset_manager::json::InternalJsonLoadError"]},{"text":"impl Unpin for KnownSpriteType","synthetic":true,"types":["game_logic::asset_manager::sprite_types::KnownSpriteType"]},{"text":"impl Unpin for ResourceLoadError","synthetic":true,"types":["game_logic::asset_manager::texture::ResourceLoadError"]},{"text":"impl Unpin for DiscordRpcSignal","synthetic":true,"types":["game_logic::discord::signal::DiscordRpcSignal"]},{"text":"impl Unpin for StatefulDiscordRpcSignalHandler","synthetic":true,"types":["game_logic::discord::signal::StatefulDiscordRpcSignalHandler"]},{"text":"impl Unpin for DiscordError","synthetic":true,"types":["game_logic::discord::ipc::DiscordError"]},{"text":"impl Unpin for DiscordRpcClient","synthetic":true,"types":["game_logic::discord::ipc::DiscordRpcClient"]},{"text":"impl Unpin for DiscordRpcThreadHandle","synthetic":true,"types":["game_logic::discord::DiscordRpcThreadHandle"]},{"text":"impl Unpin for GlobalResources","synthetic":true,"types":["game_logic::global_resource_package::GlobalResources"]},{"text":"impl Unpin for Player","synthetic":true,"types":["game_logic::model::player::Player"]},{"text":"impl Unpin for PossiblyAnimatedTexture","synthetic":true,"types":["game_logic::model::world_object::PossiblyAnimatedTexture"]},{"text":"impl Unpin for ObjectCollider","synthetic":true,"types":["game_logic::model::world_object::ObjectCollider"]},{"text":"impl Unpin for WorldObject","synthetic":true,"types":["game_logic::model::world_object::WorldObject"]},{"text":"impl Unpin for WorldObjectRef","synthetic":true,"types":["game_logic::model::world_object::WorldObjectRef"]},{"text":"impl Unpin for WorldObjectPackageLoadError","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackageLoadError"]},{"text":"impl Unpin for WorldObjectPackage","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackage"]},{"text":"impl Unpin for PersistentGameSettings","synthetic":true,"types":["game_logic::persistent::settings::PersistentGameSettings"]},{"text":"impl Unpin for GameSaveState","synthetic":true,"types":["game_logic::persistent::save_state::GameSaveState"]},{"text":"impl Unpin for DiscordConstants","synthetic":true,"types":["game_logic::project_constants::DiscordConstants"]},{"text":"impl Unpin for PlayerConstants","synthetic":true,"types":["game_logic::project_constants::PlayerConstants"]},{"text":"impl Unpin for ProjectConstants","synthetic":true,"types":["game_logic::project_constants::ProjectConstants"]},{"text":"impl Unpin for AnimatedTextureLoadError","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureLoadError"]},{"text":"impl Unpin for FrameTextureDescriptor","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::FrameTextureDescriptor"]},{"text":"impl Unpin for AnimatedTextureMetadata","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureMetadata"]},{"text":"impl Unpin for AnimatedTexture","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTexture"]},{"text":"impl Unpin for MapRenderError","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderError"]},{"text":"impl Unpin for ProgramDataTileCache","synthetic":true,"types":["game_logic::rendering::utilities::map_render::ProgramDataTileCache"]},{"text":"impl Unpin for MapRenderer","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderer"]},{"text":"impl Unpin for LoadingScreen","synthetic":true,"types":["game_logic::rendering::screens::loading_screen::LoadingScreen"]},{"text":"impl Unpin for SmFailureScreen","synthetic":true,"types":["game_logic::rendering::screens::sm_failure_screen::SmFailureScreen"]},{"text":"impl Unpin for PreloadState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::PreloadState"]},{"text":"impl Unpin for LoadingState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::LoadingState"]},{"text":"impl Unpin for RenderGameState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderGameState"]},{"text":"impl Unpin for SmFailedState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::SmFailedState"]},{"text":"impl Unpin for RenderBackendStates","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderBackendStates"]},{"text":"impl Unpin for CutScenes","synthetic":true,"types":["game_logic::scenes::cutscenes::CutScenes"]},{"text":"impl Unpin for MenuStateSignal","synthetic":true,"types":["game_logic::scenes::main_menu::MenuStateSignal"]},{"text":"impl Unpin for MainMenu","synthetic":true,"types":["game_logic::scenes::main_menu::MainMenu"]},{"text":"impl Unpin for PauseMenu","synthetic":true,"types":["game_logic::scenes::pause_menu::PauseMenu"]},{"text":"impl Unpin for PlayableScene","synthetic":true,"types":["game_logic::scenes::player_interaction::PlayableScene"]},{"text":"impl Unpin for TestFoxScene","synthetic":true,"types":["game_logic::scenes::test_fox::TestFoxScene"]},{"text":"impl Unpin for SceneRenderDelegate","synthetic":true,"types":["game_logic::scenes::SceneRenderDelegate"]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/rustdoc/implementors/core/panic/unwind_safe/trait.RefUnwindSafe.js b/rustdoc/implementors/core/panic/unwind_safe/trait.RefUnwindSafe.js index f1e39dc9..c75c95cb 100644 --- a/rustdoc/implementors/core/panic/unwind_safe/trait.RefUnwindSafe.js +++ b/rustdoc/implementors/core/panic/unwind_safe/trait.RefUnwindSafe.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["game_logic"] = [{"text":"impl RefUnwindSafe for InternalData","synthetic":true,"types":["game_logic::asset_manager::datastore::InternalData"]},{"text":"impl !RefUnwindSafe for InternalJsonLoadError","synthetic":true,"types":["game_logic::asset_manager::json::InternalJsonLoadError"]},{"text":"impl RefUnwindSafe for KnownSpriteType","synthetic":true,"types":["game_logic::asset_manager::sprite_types::KnownSpriteType"]},{"text":"impl !RefUnwindSafe for ResourceLoadError","synthetic":true,"types":["game_logic::asset_manager::texture::ResourceLoadError"]},{"text":"impl RefUnwindSafe for DiscordRpcSignal","synthetic":true,"types":["game_logic::discord::signal::DiscordRpcSignal"]},{"text":"impl RefUnwindSafe for StatefulDiscordRpcSignalHandler","synthetic":true,"types":["game_logic::discord::signal::StatefulDiscordRpcSignalHandler"]},{"text":"impl !RefUnwindSafe for DiscordError","synthetic":true,"types":["game_logic::discord::ipc::DiscordError"]},{"text":"impl !RefUnwindSafe for DiscordRpcClient","synthetic":true,"types":["game_logic::discord::ipc::DiscordRpcClient"]},{"text":"impl !RefUnwindSafe for DiscordRpcThreadHandle","synthetic":true,"types":["game_logic::discord::DiscordRpcThreadHandle"]},{"text":"impl RefUnwindSafe for GlobalResources","synthetic":true,"types":["game_logic::global_resource_package::GlobalResources"]},{"text":"impl RefUnwindSafe for Player","synthetic":true,"types":["game_logic::model::player::Player"]},{"text":"impl RefUnwindSafe for PossiblyAnimatedTexture","synthetic":true,"types":["game_logic::model::world_object::PossiblyAnimatedTexture"]},{"text":"impl RefUnwindSafe for ObjectCollider","synthetic":true,"types":["game_logic::model::world_object::ObjectCollider"]},{"text":"impl RefUnwindSafe for WorldObject","synthetic":true,"types":["game_logic::model::world_object::WorldObject"]},{"text":"impl RefUnwindSafe for WorldObjectRef","synthetic":true,"types":["game_logic::model::world_object::WorldObjectRef"]},{"text":"impl !RefUnwindSafe for WorldObjectPackageLoadError","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackageLoadError"]},{"text":"impl RefUnwindSafe for WorldObjectPackage","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackage"]},{"text":"impl RefUnwindSafe for PersistentGameSettings","synthetic":true,"types":["game_logic::persistent::settings::PersistentGameSettings"]},{"text":"impl RefUnwindSafe for GameSaveState","synthetic":true,"types":["game_logic::persistent::save_state::GameSaveState"]},{"text":"impl RefUnwindSafe for DiscordConstants","synthetic":true,"types":["game_logic::project_constants::DiscordConstants"]},{"text":"impl RefUnwindSafe for PlayerConstants","synthetic":true,"types":["game_logic::project_constants::PlayerConstants"]},{"text":"impl RefUnwindSafe for ProjectConstants","synthetic":true,"types":["game_logic::project_constants::ProjectConstants"]},{"text":"impl !RefUnwindSafe for AnimatedTextureLoadError","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureLoadError"]},{"text":"impl RefUnwindSafe for FrameTextureDescriptor","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::FrameTextureDescriptor"]},{"text":"impl RefUnwindSafe for AnimatedTextureMetadata","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureMetadata"]},{"text":"impl RefUnwindSafe for AnimatedTexture","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTexture"]},{"text":"impl !RefUnwindSafe for MapRenderError","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderError"]},{"text":"impl RefUnwindSafe for ProgramDataTileCache","synthetic":true,"types":["game_logic::rendering::utilities::map_render::ProgramDataTileCache"]},{"text":"impl RefUnwindSafe for MapRenderer","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderer"]},{"text":"impl RefUnwindSafe for LoadingScreen","synthetic":true,"types":["game_logic::rendering::screens::loading_screen::LoadingScreen"]},{"text":"impl RefUnwindSafe for SmFailureScreen","synthetic":true,"types":["game_logic::rendering::screens::sm_failure_screen::SmFailureScreen"]},{"text":"impl RefUnwindSafe for PreloadState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::PreloadState"]},{"text":"impl RefUnwindSafe for LoadingState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::LoadingState"]},{"text":"impl RefUnwindSafe for RenderGameState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderGameState"]},{"text":"impl RefUnwindSafe for SmFailedState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::SmFailedState"]},{"text":"impl RefUnwindSafe for RenderBackendStates","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderBackendStates"]},{"text":"impl RefUnwindSafe for MenuStateSignal","synthetic":true,"types":["game_logic::scenes::main_menu::MenuStateSignal"]},{"text":"impl RefUnwindSafe for MainMenu","synthetic":true,"types":["game_logic::scenes::main_menu::MainMenu"]},{"text":"impl RefUnwindSafe for PauseMenu","synthetic":true,"types":["game_logic::scenes::pause_menu::PauseMenu"]},{"text":"impl RefUnwindSafe for PlayableScene","synthetic":true,"types":["game_logic::scenes::player_interaction::PlayableScene"]},{"text":"impl RefUnwindSafe for TestFoxScene","synthetic":true,"types":["game_logic::scenes::test_fox::TestFoxScene"]},{"text":"impl RefUnwindSafe for SceneRenderDelegate","synthetic":true,"types":["game_logic::scenes::SceneRenderDelegate"]}]; +implementors["game_logic"] = [{"text":"impl RefUnwindSafe for InternalData","synthetic":true,"types":["game_logic::asset_manager::datastore::InternalData"]},{"text":"impl !RefUnwindSafe for InternalJsonLoadError","synthetic":true,"types":["game_logic::asset_manager::json::InternalJsonLoadError"]},{"text":"impl RefUnwindSafe for KnownSpriteType","synthetic":true,"types":["game_logic::asset_manager::sprite_types::KnownSpriteType"]},{"text":"impl !RefUnwindSafe for ResourceLoadError","synthetic":true,"types":["game_logic::asset_manager::texture::ResourceLoadError"]},{"text":"impl RefUnwindSafe for DiscordRpcSignal","synthetic":true,"types":["game_logic::discord::signal::DiscordRpcSignal"]},{"text":"impl RefUnwindSafe for StatefulDiscordRpcSignalHandler","synthetic":true,"types":["game_logic::discord::signal::StatefulDiscordRpcSignalHandler"]},{"text":"impl !RefUnwindSafe for DiscordError","synthetic":true,"types":["game_logic::discord::ipc::DiscordError"]},{"text":"impl !RefUnwindSafe for DiscordRpcClient","synthetic":true,"types":["game_logic::discord::ipc::DiscordRpcClient"]},{"text":"impl !RefUnwindSafe for DiscordRpcThreadHandle","synthetic":true,"types":["game_logic::discord::DiscordRpcThreadHandle"]},{"text":"impl RefUnwindSafe for GlobalResources","synthetic":true,"types":["game_logic::global_resource_package::GlobalResources"]},{"text":"impl RefUnwindSafe for Player","synthetic":true,"types":["game_logic::model::player::Player"]},{"text":"impl RefUnwindSafe for PossiblyAnimatedTexture","synthetic":true,"types":["game_logic::model::world_object::PossiblyAnimatedTexture"]},{"text":"impl RefUnwindSafe for ObjectCollider","synthetic":true,"types":["game_logic::model::world_object::ObjectCollider"]},{"text":"impl RefUnwindSafe for WorldObject","synthetic":true,"types":["game_logic::model::world_object::WorldObject"]},{"text":"impl RefUnwindSafe for WorldObjectRef","synthetic":true,"types":["game_logic::model::world_object::WorldObjectRef"]},{"text":"impl !RefUnwindSafe for WorldObjectPackageLoadError","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackageLoadError"]},{"text":"impl RefUnwindSafe for WorldObjectPackage","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackage"]},{"text":"impl RefUnwindSafe for PersistentGameSettings","synthetic":true,"types":["game_logic::persistent::settings::PersistentGameSettings"]},{"text":"impl RefUnwindSafe for GameSaveState","synthetic":true,"types":["game_logic::persistent::save_state::GameSaveState"]},{"text":"impl RefUnwindSafe for DiscordConstants","synthetic":true,"types":["game_logic::project_constants::DiscordConstants"]},{"text":"impl RefUnwindSafe for PlayerConstants","synthetic":true,"types":["game_logic::project_constants::PlayerConstants"]},{"text":"impl RefUnwindSafe for ProjectConstants","synthetic":true,"types":["game_logic::project_constants::ProjectConstants"]},{"text":"impl !RefUnwindSafe for AnimatedTextureLoadError","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureLoadError"]},{"text":"impl RefUnwindSafe for FrameTextureDescriptor","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::FrameTextureDescriptor"]},{"text":"impl RefUnwindSafe for AnimatedTextureMetadata","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureMetadata"]},{"text":"impl RefUnwindSafe for AnimatedTexture","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTexture"]},{"text":"impl !RefUnwindSafe for MapRenderError","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderError"]},{"text":"impl RefUnwindSafe for ProgramDataTileCache","synthetic":true,"types":["game_logic::rendering::utilities::map_render::ProgramDataTileCache"]},{"text":"impl RefUnwindSafe for MapRenderer","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderer"]},{"text":"impl RefUnwindSafe for LoadingScreen","synthetic":true,"types":["game_logic::rendering::screens::loading_screen::LoadingScreen"]},{"text":"impl RefUnwindSafe for SmFailureScreen","synthetic":true,"types":["game_logic::rendering::screens::sm_failure_screen::SmFailureScreen"]},{"text":"impl RefUnwindSafe for PreloadState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::PreloadState"]},{"text":"impl RefUnwindSafe for LoadingState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::LoadingState"]},{"text":"impl RefUnwindSafe for RenderGameState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderGameState"]},{"text":"impl RefUnwindSafe for SmFailedState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::SmFailedState"]},{"text":"impl RefUnwindSafe for RenderBackendStates","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderBackendStates"]},{"text":"impl RefUnwindSafe for CutScenes","synthetic":true,"types":["game_logic::scenes::cutscenes::CutScenes"]},{"text":"impl RefUnwindSafe for MenuStateSignal","synthetic":true,"types":["game_logic::scenes::main_menu::MenuStateSignal"]},{"text":"impl RefUnwindSafe for MainMenu","synthetic":true,"types":["game_logic::scenes::main_menu::MainMenu"]},{"text":"impl RefUnwindSafe for PauseMenu","synthetic":true,"types":["game_logic::scenes::pause_menu::PauseMenu"]},{"text":"impl RefUnwindSafe for PlayableScene","synthetic":true,"types":["game_logic::scenes::player_interaction::PlayableScene"]},{"text":"impl RefUnwindSafe for TestFoxScene","synthetic":true,"types":["game_logic::scenes::test_fox::TestFoxScene"]},{"text":"impl RefUnwindSafe for SceneRenderDelegate","synthetic":true,"types":["game_logic::scenes::SceneRenderDelegate"]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/rustdoc/implementors/core/panic/unwind_safe/trait.UnwindSafe.js b/rustdoc/implementors/core/panic/unwind_safe/trait.UnwindSafe.js index 43bb56d1..6868cead 100644 --- a/rustdoc/implementors/core/panic/unwind_safe/trait.UnwindSafe.js +++ b/rustdoc/implementors/core/panic/unwind_safe/trait.UnwindSafe.js @@ -1,3 +1,3 @@ (function() {var implementors = {}; -implementors["game_logic"] = [{"text":"impl UnwindSafe for InternalData","synthetic":true,"types":["game_logic::asset_manager::datastore::InternalData"]},{"text":"impl !UnwindSafe for InternalJsonLoadError","synthetic":true,"types":["game_logic::asset_manager::json::InternalJsonLoadError"]},{"text":"impl UnwindSafe for KnownSpriteType","synthetic":true,"types":["game_logic::asset_manager::sprite_types::KnownSpriteType"]},{"text":"impl !UnwindSafe for ResourceLoadError","synthetic":true,"types":["game_logic::asset_manager::texture::ResourceLoadError"]},{"text":"impl UnwindSafe for DiscordRpcSignal","synthetic":true,"types":["game_logic::discord::signal::DiscordRpcSignal"]},{"text":"impl UnwindSafe for StatefulDiscordRpcSignalHandler","synthetic":true,"types":["game_logic::discord::signal::StatefulDiscordRpcSignalHandler"]},{"text":"impl !UnwindSafe for DiscordError","synthetic":true,"types":["game_logic::discord::ipc::DiscordError"]},{"text":"impl !UnwindSafe for DiscordRpcClient","synthetic":true,"types":["game_logic::discord::ipc::DiscordRpcClient"]},{"text":"impl !UnwindSafe for DiscordRpcThreadHandle","synthetic":true,"types":["game_logic::discord::DiscordRpcThreadHandle"]},{"text":"impl UnwindSafe for GlobalResources","synthetic":true,"types":["game_logic::global_resource_package::GlobalResources"]},{"text":"impl UnwindSafe for Player","synthetic":true,"types":["game_logic::model::player::Player"]},{"text":"impl UnwindSafe for PossiblyAnimatedTexture","synthetic":true,"types":["game_logic::model::world_object::PossiblyAnimatedTexture"]},{"text":"impl UnwindSafe for ObjectCollider","synthetic":true,"types":["game_logic::model::world_object::ObjectCollider"]},{"text":"impl UnwindSafe for WorldObject","synthetic":true,"types":["game_logic::model::world_object::WorldObject"]},{"text":"impl UnwindSafe for WorldObjectRef","synthetic":true,"types":["game_logic::model::world_object::WorldObjectRef"]},{"text":"impl !UnwindSafe for WorldObjectPackageLoadError","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackageLoadError"]},{"text":"impl UnwindSafe for WorldObjectPackage","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackage"]},{"text":"impl UnwindSafe for PersistentGameSettings","synthetic":true,"types":["game_logic::persistent::settings::PersistentGameSettings"]},{"text":"impl UnwindSafe for GameSaveState","synthetic":true,"types":["game_logic::persistent::save_state::GameSaveState"]},{"text":"impl UnwindSafe for DiscordConstants","synthetic":true,"types":["game_logic::project_constants::DiscordConstants"]},{"text":"impl UnwindSafe for PlayerConstants","synthetic":true,"types":["game_logic::project_constants::PlayerConstants"]},{"text":"impl UnwindSafe for ProjectConstants","synthetic":true,"types":["game_logic::project_constants::ProjectConstants"]},{"text":"impl !UnwindSafe for AnimatedTextureLoadError","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureLoadError"]},{"text":"impl UnwindSafe for FrameTextureDescriptor","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::FrameTextureDescriptor"]},{"text":"impl UnwindSafe for AnimatedTextureMetadata","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureMetadata"]},{"text":"impl UnwindSafe for AnimatedTexture","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTexture"]},{"text":"impl !UnwindSafe for MapRenderError","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderError"]},{"text":"impl UnwindSafe for ProgramDataTileCache","synthetic":true,"types":["game_logic::rendering::utilities::map_render::ProgramDataTileCache"]},{"text":"impl UnwindSafe for MapRenderer","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderer"]},{"text":"impl UnwindSafe for LoadingScreen","synthetic":true,"types":["game_logic::rendering::screens::loading_screen::LoadingScreen"]},{"text":"impl UnwindSafe for SmFailureScreen","synthetic":true,"types":["game_logic::rendering::screens::sm_failure_screen::SmFailureScreen"]},{"text":"impl UnwindSafe for PreloadState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::PreloadState"]},{"text":"impl UnwindSafe for LoadingState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::LoadingState"]},{"text":"impl UnwindSafe for RenderGameState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderGameState"]},{"text":"impl UnwindSafe for SmFailedState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::SmFailedState"]},{"text":"impl UnwindSafe for RenderBackendStates","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderBackendStates"]},{"text":"impl UnwindSafe for MenuStateSignal","synthetic":true,"types":["game_logic::scenes::main_menu::MenuStateSignal"]},{"text":"impl UnwindSafe for MainMenu","synthetic":true,"types":["game_logic::scenes::main_menu::MainMenu"]},{"text":"impl UnwindSafe for PauseMenu","synthetic":true,"types":["game_logic::scenes::pause_menu::PauseMenu"]},{"text":"impl UnwindSafe for PlayableScene","synthetic":true,"types":["game_logic::scenes::player_interaction::PlayableScene"]},{"text":"impl UnwindSafe for TestFoxScene","synthetic":true,"types":["game_logic::scenes::test_fox::TestFoxScene"]},{"text":"impl UnwindSafe for SceneRenderDelegate","synthetic":true,"types":["game_logic::scenes::SceneRenderDelegate"]}]; +implementors["game_logic"] = [{"text":"impl UnwindSafe for InternalData","synthetic":true,"types":["game_logic::asset_manager::datastore::InternalData"]},{"text":"impl !UnwindSafe for InternalJsonLoadError","synthetic":true,"types":["game_logic::asset_manager::json::InternalJsonLoadError"]},{"text":"impl UnwindSafe for KnownSpriteType","synthetic":true,"types":["game_logic::asset_manager::sprite_types::KnownSpriteType"]},{"text":"impl !UnwindSafe for ResourceLoadError","synthetic":true,"types":["game_logic::asset_manager::texture::ResourceLoadError"]},{"text":"impl UnwindSafe for DiscordRpcSignal","synthetic":true,"types":["game_logic::discord::signal::DiscordRpcSignal"]},{"text":"impl UnwindSafe for StatefulDiscordRpcSignalHandler","synthetic":true,"types":["game_logic::discord::signal::StatefulDiscordRpcSignalHandler"]},{"text":"impl !UnwindSafe for DiscordError","synthetic":true,"types":["game_logic::discord::ipc::DiscordError"]},{"text":"impl !UnwindSafe for DiscordRpcClient","synthetic":true,"types":["game_logic::discord::ipc::DiscordRpcClient"]},{"text":"impl !UnwindSafe for DiscordRpcThreadHandle","synthetic":true,"types":["game_logic::discord::DiscordRpcThreadHandle"]},{"text":"impl UnwindSafe for GlobalResources","synthetic":true,"types":["game_logic::global_resource_package::GlobalResources"]},{"text":"impl UnwindSafe for Player","synthetic":true,"types":["game_logic::model::player::Player"]},{"text":"impl UnwindSafe for PossiblyAnimatedTexture","synthetic":true,"types":["game_logic::model::world_object::PossiblyAnimatedTexture"]},{"text":"impl UnwindSafe for ObjectCollider","synthetic":true,"types":["game_logic::model::world_object::ObjectCollider"]},{"text":"impl UnwindSafe for WorldObject","synthetic":true,"types":["game_logic::model::world_object::WorldObject"]},{"text":"impl UnwindSafe for WorldObjectRef","synthetic":true,"types":["game_logic::model::world_object::WorldObjectRef"]},{"text":"impl !UnwindSafe for WorldObjectPackageLoadError","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackageLoadError"]},{"text":"impl UnwindSafe for WorldObjectPackage","synthetic":true,"types":["game_logic::model::world_object_package::WorldObjectPackage"]},{"text":"impl UnwindSafe for PersistentGameSettings","synthetic":true,"types":["game_logic::persistent::settings::PersistentGameSettings"]},{"text":"impl UnwindSafe for GameSaveState","synthetic":true,"types":["game_logic::persistent::save_state::GameSaveState"]},{"text":"impl UnwindSafe for DiscordConstants","synthetic":true,"types":["game_logic::project_constants::DiscordConstants"]},{"text":"impl UnwindSafe for PlayerConstants","synthetic":true,"types":["game_logic::project_constants::PlayerConstants"]},{"text":"impl UnwindSafe for ProjectConstants","synthetic":true,"types":["game_logic::project_constants::ProjectConstants"]},{"text":"impl !UnwindSafe for AnimatedTextureLoadError","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureLoadError"]},{"text":"impl UnwindSafe for FrameTextureDescriptor","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::FrameTextureDescriptor"]},{"text":"impl UnwindSafe for AnimatedTextureMetadata","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTextureMetadata"]},{"text":"impl UnwindSafe for AnimatedTexture","synthetic":true,"types":["game_logic::rendering::utilities::anim_texture::AnimatedTexture"]},{"text":"impl !UnwindSafe for MapRenderError","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderError"]},{"text":"impl UnwindSafe for ProgramDataTileCache","synthetic":true,"types":["game_logic::rendering::utilities::map_render::ProgramDataTileCache"]},{"text":"impl UnwindSafe for MapRenderer","synthetic":true,"types":["game_logic::rendering::utilities::map_render::MapRenderer"]},{"text":"impl UnwindSafe for LoadingScreen","synthetic":true,"types":["game_logic::rendering::screens::loading_screen::LoadingScreen"]},{"text":"impl UnwindSafe for SmFailureScreen","synthetic":true,"types":["game_logic::rendering::screens::sm_failure_screen::SmFailureScreen"]},{"text":"impl UnwindSafe for PreloadState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::PreloadState"]},{"text":"impl UnwindSafe for LoadingState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::LoadingState"]},{"text":"impl UnwindSafe for RenderGameState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderGameState"]},{"text":"impl UnwindSafe for SmFailedState","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::SmFailedState"]},{"text":"impl UnwindSafe for RenderBackendStates","synthetic":true,"types":["game_logic::rendering::core_renderer_sm::RenderBackendStates"]},{"text":"impl UnwindSafe for CutScenes","synthetic":true,"types":["game_logic::scenes::cutscenes::CutScenes"]},{"text":"impl UnwindSafe for MenuStateSignal","synthetic":true,"types":["game_logic::scenes::main_menu::MenuStateSignal"]},{"text":"impl UnwindSafe for MainMenu","synthetic":true,"types":["game_logic::scenes::main_menu::MainMenu"]},{"text":"impl UnwindSafe for PauseMenu","synthetic":true,"types":["game_logic::scenes::pause_menu::PauseMenu"]},{"text":"impl UnwindSafe for PlayableScene","synthetic":true,"types":["game_logic::scenes::player_interaction::PlayableScene"]},{"text":"impl UnwindSafe for TestFoxScene","synthetic":true,"types":["game_logic::scenes::test_fox::TestFoxScene"]},{"text":"impl UnwindSafe for SceneRenderDelegate","synthetic":true,"types":["game_logic::scenes::SceneRenderDelegate"]}]; if (window.register_implementors) {window.register_implementors(implementors);} else {window.pending_implementors = implementors;}})() \ No newline at end of file diff --git a/rustdoc/search-index.js b/rustdoc/search-index.js index 1889f3e3..89e9d836 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,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"]]}\ +"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,0,11,11,11,11,11,0,12,12,11,0,0,11,12,12,12,12,12,0,11,11,11,11,11,3,11,11,11,11,11,11,11,11,11,11,11,11,12,11,11,11,11,11,13,13,13,13,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,12,12,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,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","cutscenes","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_cutscenes","scene_main_menu","scene_pause_menu","scene_playable","scene_test_fox","test_fox","to_subset","to_subset_unchecked","try_from","try_into","type_id","CutScenes","borrow","borrow_mut","fmt","from","from_subset","into","is_in_subset","new","render_bartender_cutscene_frame","render_finished_cutscene_frame","render_melted_cutscene_frame","render_ocean_cutscene_frame","show_debug_info","to_subset","to_subset_unchecked","try_from","try_into","type_id","DoCredits","DoFinishedCutscene","DoIntroCutscene","DoLeaderboard","DoMainMenu","DoMeltedDeathCutscene","DoOceanCutscene","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","playtime","playtime","playtime","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","play_start_time","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::cutscenes","","","","","","","","","","","","","","","","","","","game_logic::scenes::main_menu","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","game_logic::scenes::main_menu::MenuStateSignal","","","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 …","","","","This scene encompasses the main menu system","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 CutScenes","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","","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,0,60,60,60,60,60,0,60,60,60,0,0,60,60,60,60,60,60,0,60,60,60,60,60,0,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,61,62,62,62,62,62,62,62,62,62,0,0,62,62,62,63,62,63,62,62,62,63,62,63,62,63,63,62,63,62,63,63,63,63,63,63,63,62,62,63,62,63,62,63,62,63,62,63,63,64,65,66,0,67,67,67,67,67,67,67,67,67,67,67,67,67,67,67,0,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,68,0,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69,69],"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]]],[[["recverror",3]]],[[["error",4]]],[[]],[[]],[[]],[[]],[[]],[[],["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,[[]],[[]],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,null,[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],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]]],[[["raylibhandle",3],["raylibthread",3],["sender",3],["globalresources",3],["projectconstants",3],["raylibaudio",3],["duration",3]]],[[["raylibhandle",3],["raylibthread",3],["sender",3],["globalresources",3],["projectconstants",3],["raylibaudio",3],["duration",3]]],[[["raylibhandle",3],["raylibthread",3],["sender",3],["globalresources",3],["projectconstants",3],["raylibaudio",3],["duration",3]]],null,[[],["option",4]],[[]],[[],["result",4]],[[],["result",4]],[[],["typeid",3]],null,null,null,null,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,null,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,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"],[3,"CutScenes"],[4,"MenuStateSignal"],[3,"MainMenu"],[13,"DoMeltedDeathCutscene"],[13,"DoFinishedCutscene"],[13,"DoOceanCutscene"],[3,"PauseMenu"],[3,"PlayableScene"],[3,"TestFoxScene"]]}\ }'); if (window.initSearch) {window.initSearch(searchIndex)}; \ No newline at end of file diff --git a/rustdoc/source-files.js b/rustdoc/source-files.js index e974886b..44f84a1c 100644 --- a/rustdoc/source-files.js +++ b/rustdoc/source-files.js @@ -1,3 +1,3 @@ var N = null;var sourcesIndex = {}; -sourcesIndex["game_logic"] = {"name":"","dirs":[{"name":"asset_manager","files":["datastore.rs","json.rs","mod.rs","sprite_types.rs","texture.rs"]},{"name":"discord","files":["ipc.rs","mod.rs","signal.rs"]},{"name":"model","files":["mod.rs","player.rs","world_object.rs","world_object_package.rs"]},{"name":"persistent","files":["mod.rs","save_state.rs","settings.rs"]},{"name":"rendering","dirs":[{"name":"screens","files":["loading_screen.rs","mod.rs","sm_failure_screen.rs"]},{"name":"utilities","files":["anim_texture.rs","map_render.rs","mod.rs"]}],"files":["core_renderer_sm.rs","event_loop.rs","mod.rs"]},{"name":"scenes","files":["main_menu.rs","mod.rs","pause_menu.rs","player_interaction.rs","test_fox.rs"]}],"files":["coord_convert.rs","global_resource_package.rs","lib.rs","project_constants.rs"]}; +sourcesIndex["game_logic"] = {"name":"","dirs":[{"name":"asset_manager","files":["datastore.rs","json.rs","mod.rs","sprite_types.rs","texture.rs"]},{"name":"discord","files":["ipc.rs","mod.rs","signal.rs"]},{"name":"model","files":["mod.rs","player.rs","world_object.rs","world_object_package.rs"]},{"name":"persistent","files":["mod.rs","save_state.rs","settings.rs"]},{"name":"rendering","dirs":[{"name":"screens","files":["loading_screen.rs","mod.rs","sm_failure_screen.rs"]},{"name":"utilities","files":["anim_texture.rs","map_render.rs","mod.rs"]}],"files":["core_renderer_sm.rs","event_loop.rs","mod.rs"]},{"name":"scenes","files":["cutscenes.rs","main_menu.rs","mod.rs","pause_menu.rs","player_interaction.rs","test_fox.rs"]}],"files":["coord_convert.rs","global_resource_package.rs","lib.rs","project_constants.rs"]}; createSourceSidebar(); diff --git a/rustdoc/src/game_logic/scenes/cutscenes.rs.html b/rustdoc/src/game_logic/scenes/cutscenes.rs.html new file mode 100644 index 00000000..42e5e538 --- /dev/null +++ b/rustdoc/src/game_logic/scenes/cutscenes.rs.html @@ -0,0 +1,533 @@ +cutscenes.rs - source +
  1
+  2
+  3
+  4
+  5
+  6
+  7
+  8
+  9
+ 10
+ 11
+ 12
+ 13
+ 14
+ 15
+ 16
+ 17
+ 18
+ 19
+ 20
+ 21
+ 22
+ 23
+ 24
+ 25
+ 26
+ 27
+ 28
+ 29
+ 30
+ 31
+ 32
+ 33
+ 34
+ 35
+ 36
+ 37
+ 38
+ 39
+ 40
+ 41
+ 42
+ 43
+ 44
+ 45
+ 46
+ 47
+ 48
+ 49
+ 50
+ 51
+ 52
+ 53
+ 54
+ 55
+ 56
+ 57
+ 58
+ 59
+ 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
+ 87
+ 88
+ 89
+ 90
+ 91
+ 92
+ 93
+ 94
+ 95
+ 96
+ 97
+ 98
+ 99
+100
+101
+102
+103
+104
+105
+106
+107
+108
+109
+110
+111
+112
+113
+114
+115
+116
+117
+118
+119
+120
+121
+122
+123
+124
+125
+126
+127
+128
+129
+130
+131
+132
+133
+134
+135
+136
+137
+138
+139
+140
+141
+142
+143
+144
+145
+146
+147
+148
+149
+150
+151
+152
+153
+154
+155
+156
+157
+158
+159
+160
+161
+162
+163
+164
+165
+166
+167
+168
+169
+170
+171
+172
+173
+174
+175
+176
+177
+178
+179
+180
+181
+182
+183
+184
+185
+186
+187
+188
+189
+190
+191
+192
+193
+194
+195
+196
+197
+198
+199
+200
+201
+202
+203
+204
+205
+206
+207
+208
+209
+210
+211
+212
+213
+214
+215
+216
+217
+218
+219
+220
+221
+222
+223
+224
+225
+226
+227
+228
+229
+230
+231
+232
+233
+234
+235
+236
+237
+238
+239
+240
+241
+242
+243
+244
+245
+246
+247
+248
+249
+250
+251
+252
+253
+254
+255
+256
+257
+258
+259
+260
+261
+262
+263
+264
+
//! This scene encompasses the main menu system
+
+use chrono::Duration;
+use na::Vector1;
+use nalgebra as na;
+use raylib::{
+    ffi::{GetMouseX, GetMouseY, IsMouseButtonDown, Texture},
+    prelude::*,
+};
+
+use crate::{
+    discord::{DiscordChannel, DiscordRpcSignal},
+    global_resource_package::GlobalResources,
+    persistent::settings::PersistentGameSettings,
+    project_constants::ProjectConstants,
+};
+
+use super::main_menu::MenuStateSignal;
+
+#[derive(Debug)]
+pub struct CutScenes {
+    show_debug_info: bool,
+}
+
+impl CutScenes {
+    /// Construct a new `CutScenes`
+    pub fn new(
+        raylib_handle: &mut RaylibHandle,
+        thread: &RaylibThread,
+        constants: &ProjectConstants,
+        game_settings: &mut PersistentGameSettings,
+    ) -> Self {
+        Self {
+            show_debug_info: false,
+        }
+    }
+
+    pub async fn render_bartender_cutscene_frame(
+        &mut self,
+        raylib: &mut RaylibHandle,
+        rl_thread: &RaylibThread,
+        discord: &DiscordChannel,
+        global_resources: &GlobalResources,
+        constants: &ProjectConstants,
+        audio_subsystem: &mut RaylibAudio,
+    ) -> MenuStateSignal {
+        // Get a drawing handle
+        let mut draw = raylib.begin_drawing(rl_thread);
+
+        // 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("INTRO CUTSCENE GOES HERE", 100, 90, 60, Color::BLACK);
+        draw.draw_text("Press SPACE to skip", 100, 600, 20, Color::BLACK);
+
+        // Let the user leave this cutscene by pressing space
+        if draw.is_key_pressed(KeyboardKey::KEY_SPACE) {
+            return MenuStateSignal::StartGame;
+        }
+
+        // Return MenuStateSignal::DoMainMenu if you want to return to the main menu
+        // Return MenuStateSignal::StartGame if you want the game to start.
+        // Otherwise, keep returning MenuStateSignal::DoIntroCutscene
+        return MenuStateSignal::DoIntroCutscene;
+    }
+
+    pub async fn render_melted_cutscene_frame(
+        &mut self,
+        raylib: &mut RaylibHandle,
+        rl_thread: &RaylibThread,
+        discord: &DiscordChannel,
+        global_resources: &GlobalResources,
+        constants: &ProjectConstants,
+        audio_subsystem: &mut RaylibAudio,
+        playtime: &Duration,
+    ) -> MenuStateSignal {
+        // Get a drawing handle
+        let mut draw = raylib.begin_drawing(rl_thread);
+
+        // 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("MELTY CUTSCENE GOES HERE", 100, 90, 60, Color::BLACK);
+        draw.draw_text(
+            &format!("This took you {} seconds", playtime.num_seconds()),
+            100,
+            600,
+            20,
+            Color::BLACK,
+        );
+        draw.draw_text("Press SPACE to skip", 100, 680, 20, Color::BLACK);
+
+        // Let the user leave this cutscene by pressing space
+        if draw.is_key_pressed(KeyboardKey::KEY_SPACE) {
+            return MenuStateSignal::DoMainMenu;
+        }
+
+        // Return MenuStateSignal::DoMainMenu if you want to return to the main menu
+        // Otherwise, keep returning MenuStateSignal::DoMeltedDeathCutscene
+        return MenuStateSignal::DoMeltedDeathCutscene {
+            playtime: playtime.clone(),
+        };
+    }
+
+    pub async fn render_finished_cutscene_frame(
+        &mut self,
+        raylib: &mut RaylibHandle,
+        rl_thread: &RaylibThread,
+        discord: &DiscordChannel,
+        global_resources: &GlobalResources,
+        constants: &ProjectConstants,
+        audio_subsystem: &mut RaylibAudio,
+        playtime: &Duration,
+    ) -> MenuStateSignal {
+        // Get a drawing handle
+        let mut draw = raylib.begin_drawing(rl_thread);
+
+        // 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("END CUTSCENE GOES HERE", 100, 90, 60, Color::BLACK);
+        draw.draw_text(
+            &format!("This took you {} seconds", playtime.num_seconds()),
+            100,
+            600,
+            20,
+            Color::BLACK,
+        );
+        draw.draw_text("Press SPACE to skip", 100, 680, 20, Color::BLACK);
+
+        // Let the user leave this cutscene by pressing space
+        if draw.is_key_pressed(KeyboardKey::KEY_SPACE) {
+            return MenuStateSignal::DoMainMenu;
+        }
+
+        // Return MenuStateSignal::DoMainMenu if you want to return to the main menu
+        // Otherwise, keep returning MenuStateSignal::DoFinishedCutscene
+        return MenuStateSignal::DoFinishedCutscene {
+            playtime: playtime.clone(),
+        };
+    }
+
+    pub async fn render_ocean_cutscene_frame(
+        &mut self,
+        raylib: &mut RaylibHandle,
+        rl_thread: &RaylibThread,
+        discord: &DiscordChannel,
+        global_resources: &GlobalResources,
+        constants: &ProjectConstants,
+        audio_subsystem: &mut RaylibAudio,
+        playtime: &Duration,
+    ) -> MenuStateSignal {
+        // Get a drawing handle
+        let mut draw = raylib.begin_drawing(rl_thread);
+
+        // 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("OCEAN CUTSCENE GOES HERE", 100, 90, 60, Color::BLACK);
+        draw.draw_text(
+            &format!("This took you {} seconds", playtime.num_seconds()),
+            100,
+            600,
+            20,
+            Color::BLACK,
+        );
+        draw.draw_text("Press SPACE to skip", 100, 680, 20, Color::BLACK);
+
+        // Let the user leave this cutscene by pressing space
+        if draw.is_key_pressed(KeyboardKey::KEY_SPACE) {
+            return MenuStateSignal::DoMainMenu;
+        }
+
+        // Return MenuStateSignal::DoMainMenu if you want to return to the main menu
+        // Otherwise, keep returning MenuStateSignal::DoOceanCutscene
+        return MenuStateSignal::DoOceanCutscene {
+            playtime: playtime.clone(),
+        };
+    }
+}
+
+
+ \ 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 29cc65c2..0136de33 100644 --- a/rustdoc/src/game_logic/scenes/main_menu.rs.html +++ b/rustdoc/src/game_logic/scenes/main_menu.rs.html @@ -561,8 +561,14 @@ 559 560 561 +562 +563 +564 +565 +566
//! This scene encompasses the main menu system
 
+use chrono::Duration;
 use na::Vector1;
 use nalgebra as na;
 use raylib::{
@@ -586,6 +592,10 @@
     DoCredits,
     DoLeaderboard,
     DoPauseMenu,
+    DoIntroCutscene,
+    DoMeltedDeathCutscene { playtime: Duration },
+    DoFinishedCutscene { playtime: Duration },
+    DoOceanCutscene { playtime: Duration },
 }
 
 #[derive(Debug)]
@@ -682,7 +692,7 @@
             draw.draw_text("Start Game", 100, 190, 34, label_colors);
             if draw.is_mouse_button_pressed(MouseButton::MOUSE_LEFT_BUTTON) {
                 audio_subsystem.play_sound(&global_resources.button_click_sound);
-                return MenuStateSignal::StartGame;
+                return MenuStateSignal::DoIntroCutscene;
             }
         }
 
@@ -927,7 +937,7 @@
                 return MenuStateSignal::QuitGame;
             }
         }
-        // Return MenuStateSignal::StartGame if you want the game to start.
+        // Return MenuStateSignal::DoIntroCutscene if you want the game to start.
         // Otherwise, keep returning MenuStateSignal::DoMainMenu until the player clicks the start button
         return MenuStateSignal::DoMainMenu;
     }
diff --git a/rustdoc/src/game_logic/scenes/mod.rs.html b/rustdoc/src/game_logic/scenes/mod.rs.html
index 3a063726..e99ee266 100644
--- a/rustdoc/src/game_logic/scenes/mod.rs.html
+++ b/rustdoc/src/game_logic/scenes/mod.rs.html
@@ -169,6 +169,67 @@
 167
 168
 169
+170
+171
+172
+173
+174
+175
+176
+177
+178
+179
+180
+181
+182
+183
+184
+185
+186
+187
+188
+189
+190
+191
+192
+193
+194
+195
+196
+197
+198
+199
+200
+201
+202
+203
+204
+205
+206
+207
+208
+209
+210
+211
+212
+213
+214
+215
+216
+217
+218
+219
+220
+221
+222
+223
+224
+225
+226
+227
+228
+229
+230
 
//! The render code for various scenes
 //!
 //! ## Overview
@@ -184,11 +245,13 @@
 };
 
 use self::{
+    cutscenes::CutScenes,
     main_menu::{MainMenu, MenuStateSignal},
     pause_menu::PauseMenu,
     player_interaction::PlayableScene,
     test_fox::TestFoxScene,
 };
+mod cutscenes;
 mod main_menu;
 mod pause_menu;
 mod player_interaction;
@@ -205,6 +268,7 @@
     scene_playable: PlayableScene,
     scene_main_menu: MainMenu,
     scene_pause_menu: PauseMenu,
+    scene_cutscenes: CutScenes,
 }
 
 impl SceneRenderDelegate {
@@ -222,6 +286,7 @@
         let scene_playable = PlayableScene::new(raylib, rl_thread, constants);
         let scene_main_menu = MainMenu::new(raylib, rl_thread, constants, game_settings);
         let scene_pause_menu = PauseMenu::new(raylib, rl_thread, constants, game_settings);
+        let scene_cutscenes = CutScenes::new(raylib, rl_thread, constants, game_settings);
 
         Self {
             menu_control_signal: MenuStateSignal::DoMainMenu,
@@ -231,6 +296,7 @@
             scene_playable,
             scene_main_menu,
             scene_pause_menu,
+            scene_cutscenes,
         }
     }
 
@@ -248,9 +314,10 @@
         save_state: &mut GameSaveState,
     ) {
         // Render the main menu if in it, otherwise, render the game
-        match self.menu_control_signal {
+        match &self.menu_control_signal {
             MenuStateSignal::StartGame => {
-                self.menu_control_signal = self.scene_playable
+                self.menu_control_signal = self
+                    .scene_playable
                     .render_frame(
                         raylib,
                         rl_thread,
@@ -330,6 +397,61 @@
                     )
                     .await;
             }
+            MenuStateSignal::DoIntroCutscene => {
+                self.menu_control_signal = self
+                    .scene_cutscenes
+                    .render_bartender_cutscene_frame(
+                        raylib,
+                        rl_thread,
+                        discord,
+                        global_resources,
+                        constants,
+                        &mut self.audio_subsystem,
+                    )
+                    .await;
+            }
+            MenuStateSignal::DoMeltedDeathCutscene { playtime } => {
+                self.menu_control_signal = self
+                    .scene_cutscenes
+                    .render_melted_cutscene_frame(
+                        raylib,
+                        rl_thread,
+                        discord,
+                        global_resources,
+                        constants,
+                        &mut self.audio_subsystem,
+                        playtime,
+                    )
+                    .await;
+            }
+            MenuStateSignal::DoFinishedCutscene { playtime } => {
+                self.menu_control_signal = self
+                    .scene_cutscenes
+                    .render_finished_cutscene_frame(
+                        raylib,
+                        rl_thread,
+                        discord,
+                        global_resources,
+                        constants,
+                        &mut self.audio_subsystem,
+                        playtime,
+                    )
+                    .await;
+            }
+            MenuStateSignal::DoOceanCutscene { playtime } => {
+                self.menu_control_signal = self
+                    .scene_cutscenes
+                    .render_ocean_cutscene_frame(
+                        raylib,
+                        rl_thread,
+                        discord,
+                        global_resources,
+                        constants,
+                        &mut self.audio_subsystem,
+                        playtime,
+                    )
+                    .await;
+            }
         }
     }
 }
diff --git a/rustdoc/src/game_logic/scenes/player_interaction.rs.html b/rustdoc/src/game_logic/scenes/player_interaction.rs.html
index 3435819c..2fc90e20 100644
--- a/rustdoc/src/game_logic/scenes/player_interaction.rs.html
+++ b/rustdoc/src/game_logic/scenes/player_interaction.rs.html
@@ -280,8 +280,28 @@
 278
 279
 280
+281
+282
+283
+284
+285
+286
+287
+288
+289
+290
+291
+292
+293
+294
+295
+296
+297
+298
+299
 
//! This scene encompasses all of the game where the player can walk around.
 
+use chrono::{DateTime, Utc};
 use nalgebra as na;
 use raylib::prelude::*;
 use std::time::SystemTime;
@@ -307,6 +327,7 @@
     game_soundtrack: Music,
     world_colliders: Vec<WorldSpaceObjectCollider>,
     show_debug_info: bool,
+    play_start_time: DateTime<Utc>,
 }
 
 impl PlayableScene {
@@ -346,6 +367,7 @@
             game_soundtrack,
             world_colliders,
             show_debug_info: false,
+            play_start_time: Utc::now(),
         }
     }
 
@@ -373,6 +395,7 @@
                 .await
                 .unwrap();
             self.has_updated_discord_rpc = true;
+            self.play_start_time = Utc::now();
         }
 
         // Ensure the game soundtrack is playing
@@ -393,6 +416,17 @@
 
         self.draw_ui(&mut draw, constants);
 
+        // NOTE: If you want to trigger a cutscene, do it here by using one of:
+        // return MenuStateSignal::DoFinishedCutscene {
+        //     playtime: Utc::now().signed_duration_since(self.play_start_time),
+        // };
+        // return MenuStateSignal::DoMeltedDeathCutscene {
+        //     playtime: Utc::now().signed_duration_since(self.play_start_time),
+        // };
+        // return MenuStateSignal::DoOceanCutscene {
+        //     playtime: Utc::now().signed_duration_since(self.play_start_time),
+        // };
+
         // A little hack to make pausing work
         if draw.is_key_pressed(KeyboardKey::KEY_ESCAPE) {
             return MenuStateSignal::DoPauseMenu;
@@ -406,8 +440,12 @@
         let mut ctx2d = draw.begin_mode2D(self.camera);
 
         // Render the map
-        self.world_map
-            .render_map(&mut ctx2d, &self.camera, self.show_debug_info, self.player.position);
+        self.world_map.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;