deploy: 76c34ad8dbef13ca6b869dfa74536229ea28a2bc

This commit is contained in:
Ewpratten 2022-04-02 23:44:28 +00:00
parent 2699d97559
commit ff2bac5261
24 changed files with 354 additions and 156 deletions

File diff suppressed because one or more lines are too long

View File

@ -13,7 +13,7 @@ Instead, they are read from disk, allowing us to modify them while the game is r
<p>When the game is built in release mode (with <code>cargo build --release</code>), the resources are packaged into the game as described above.
This means the game will load faster, but also use more RAM.</p>
</div></details><h2 id="reexports" class="small-section-header"><a href="#reexports">Re-exports</a></h2>
<div class="item-table"><div class="item-row"><div class="item-left import-item"><code>pub use datastore::<a class="struct" href="datastore/struct.InternalData.html" title="struct game_logic::asset_manager::datastore::InternalData">InternalData</a>;</code></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left import-item"><code>pub use json::<a class="enum" href="json/enum.InternalJsonLoadError.html" title="enum game_logic::asset_manager::json::InternalJsonLoadError">InternalJsonLoadError</a>;</code></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left import-item"><code>pub use json::<a class="fn" href="json/fn.load_json_structure.html" title="fn game_logic::asset_manager::json::load_json_structure">load_json_structure</a>;</code></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left import-item"><code>pub use sprite_types::<a class="struct" href="sprite_types/struct.KnownSpriteType.html" title="struct game_logic::asset_manager::sprite_types::KnownSpriteType">KnownSpriteType</a>;</code></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left import-item"><code>pub use sprite_types::<a class="fn" href="sprite_types/fn.load_known_sprite_types.html" title="fn game_logic::asset_manager::sprite_types::load_known_sprite_types">load_known_sprite_types</a>;</code></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left import-item"><code>pub use texture::<a class="fn" href="texture/fn.load_texture_from_internal_data.html" title="fn game_logic::asset_manager::texture::load_texture_from_internal_data">load_texture_from_internal_data</a>;</code></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left import-item"><code>pub use texture::<a class="enum" href="texture/enum.ResourceLoadError.html" title="enum game_logic::asset_manager::texture::ResourceLoadError">ResourceLoadError</a>;</code></div><div class="item-right docblock-short"></div></div></div><h2 id="modules" class="small-section-header"><a href="#modules">Modules</a></h2>
<div class="item-table"><div class="item-row"><div class="item-left import-item"><code>pub use datastore::<a class="struct" href="datastore/struct.InternalData.html" title="struct game_logic::asset_manager::datastore::InternalData">InternalData</a>;</code></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left import-item"><code>pub use json::<a class="enum" href="json/enum.InternalJsonLoadError.html" title="enum game_logic::asset_manager::json::InternalJsonLoadError">InternalJsonLoadError</a>;</code></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left import-item"><code>pub use json::<a class="fn" href="json/fn.load_json_structure.html" title="fn game_logic::asset_manager::json::load_json_structure">load_json_structure</a>;</code></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left import-item"><code>pub use sprite_types::<a class="struct" href="sprite_types/struct.KnownSpriteType.html" title="struct game_logic::asset_manager::sprite_types::KnownSpriteType">KnownSpriteType</a>;</code></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left import-item"><code>pub use sprite_types::<a class="fn" href="sprite_types/fn.load_known_sprite_types.html" title="fn game_logic::asset_manager::sprite_types::load_known_sprite_types">load_known_sprite_types</a>;</code></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left import-item"><code>pub use texture::<a class="fn" href="texture/fn.load_texture_from_internal_data.html" title="fn game_logic::asset_manager::texture::load_texture_from_internal_data">load_texture_from_internal_data</a>;</code></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left import-item"><code>pub use texture::<a class="enum" href="texture/enum.ResourceLoadError.html" title="enum game_logic::asset_manager::texture::ResourceLoadError">ResourceLoadError</a>;</code></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left import-item"><code>pub use texture::<a class="fn" href="texture/fn.load_music_from_internal_data.html" title="fn game_logic::asset_manager::texture::load_music_from_internal_data">load_music_from_internal_data</a>;</code></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left import-item"><code>pub use texture::<a class="fn" href="texture/fn.load_sound_from_internal_data.html" title="fn game_logic::asset_manager::texture::load_sound_from_internal_data">load_sound_from_internal_data</a>;</code></div><div class="item-right docblock-short"></div></div></div><h2 id="modules" class="small-section-header"><a href="#modules">Modules</a></h2>
<div class="item-table"><div class="item-row"><div class="item-left module-item"><a class="mod" href="datastore/index.html" title="game_logic::asset_manager::datastore mod">datastore</a></div><div class="item-right docblock-short"><p>Access to the games embedded files.</p>
</div></div><div class="item-row"><div class="item-left module-item"><a class="mod" href="json/index.html" title="game_logic::asset_manager::json mod">json</a></div><div class="item-right docblock-short"><p>Utilities for loading JSON from the embedded filesystem.</p>
</div></div><div class="item-row"><div class="item-left module-item"><a class="mod" href="sprite_types/index.html" title="game_logic::asset_manager::sprite_types mod">sprite_types</a></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left module-item"><a class="mod" href="texture/index.html" title="game_logic::asset_manager::texture mod">texture</a></div><div class="item-right docblock-short"><p>Code for loading textures from RAM to VRAM</p>

View File

@ -1,16 +1,16 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `ResourceLoadError` enum in crate `game_logic`."><meta name="keywords" content="rust, rustlang, rust-lang, ResourceLoadError"><title>ResourceLoadError in game_logic::asset_manager::texture - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" type="text/css" href="../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../ayu.css" disabled><link rel="stylesheet" type="text/css" href="../../../dark.css" disabled><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../../../storage.js"></script><script src="../../../crates.js"></script><script defer src="../../../main.js"></script>
<noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="alternate icon" type="image/png" href="../../../favicon-16x16.png"><link rel="alternate icon" type="image/png" href="../../../favicon-32x32.png"><link rel="icon" type="image/svg+xml" href="../../../favicon.svg"></head><body class="rustdoc enum"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu" role="button">&#9776;</div><a class="sidebar-logo" href="../../../game_logic/index.html"><div class="logo-container"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></div>
</a><h2 class="location">Enum ResourceLoadError</h2><div class="sidebar-elems"><div class="block items"><h3 class="sidebar-title"><a href="#variants">Variants</a></h3><div class="sidebar-links"><a href="#variant.AssetNotFound">AssetNotFound</a><a href="#variant.Generic">Generic</a><a href="#variant.Io">Io</a></div><h3 class="sidebar-title"><a href="#trait-implementations">Trait Implementations</a></h3><div class="sidebar-links"><a href="#impl-Debug">Debug</a><a href="#impl-Display">Display</a><a href="#impl-Error">Error</a><a href="#impl-From%3CError%3E">From&lt;Error&gt;</a><a href="#impl-From%3CResourceLoadError%3E">From&lt;ResourceLoadError&gt;</a></div><h3 class="sidebar-title"><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><div class="sidebar-links"><a href="#impl-RefUnwindSafe">!RefUnwindSafe</a><a href="#impl-Send">Send</a><a href="#impl-Sync">Sync</a><a href="#impl-Unpin">Unpin</a><a href="#impl-UnwindSafe">!UnwindSafe</a></div><h3 class="sidebar-title"><a href="#blanket-implementations">Blanket Implementations</a></h3><div class="sidebar-links"><a href="#impl-Any">Any</a><a href="#impl-Borrow%3CT%3E">Borrow&lt;T&gt;</a><a href="#impl-BorrowMut%3CT%3E">BorrowMut&lt;T&gt;</a><a href="#impl-From%3CT%3E">From&lt;T&gt;</a><a href="#impl-Instrument">Instrument</a><a href="#impl-Into%3CU%3E">Into&lt;U&gt;</a><a href="#impl-Same%3CT%3E">Same&lt;T&gt;</a><a href="#impl-SupersetOf%3CSS%3E">SupersetOf&lt;SS&gt;</a><a href="#impl-ToString">ToString</a><a href="#impl-TryFrom%3CU%3E">TryFrom&lt;U&gt;</a><a href="#impl-TryInto%3CU%3E">TryInto&lt;U&gt;</a><a href="#impl-WithSubscriber">WithSubscriber</a></div></div><h2 class="location">Other items in<br><a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">asset_manager</a>::<wbr><a href="index.html">texture</a></h2><div id="sidebar-vars" data-name="ResourceLoadError" data-ty="enum" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../../game_logic/index.html"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></a><nav class="sub"><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="18" height="18" alt="Pick another theme!" src="../../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../../settings.html" title="settings"><img width="18" height="18" alt="Change settings" src="../../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">Enum <a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">asset_manager</a>::<wbr><a href="index.html">texture</a>::<wbr><a class="enum" href="#">ResourceLoadError</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#13-20" title="goto source code">[src]</a></span></h1><div class="docblock item-decl"><pre class="rust enum"><code>pub enum ResourceLoadError {
</a><h2 class="location">Enum ResourceLoadError</h2><div class="sidebar-elems"><div class="block items"><h3 class="sidebar-title"><a href="#variants">Variants</a></h3><div class="sidebar-links"><a href="#variant.AssetNotFound">AssetNotFound</a><a href="#variant.Generic">Generic</a><a href="#variant.Io">Io</a></div><h3 class="sidebar-title"><a href="#trait-implementations">Trait Implementations</a></h3><div class="sidebar-links"><a href="#impl-Debug">Debug</a><a href="#impl-Display">Display</a><a href="#impl-Error">Error</a><a href="#impl-From%3CError%3E">From&lt;Error&gt;</a><a href="#impl-From%3CResourceLoadError%3E">From&lt;ResourceLoadError&gt;</a></div><h3 class="sidebar-title"><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><div class="sidebar-links"><a href="#impl-RefUnwindSafe">!RefUnwindSafe</a><a href="#impl-Send">Send</a><a href="#impl-Sync">Sync</a><a href="#impl-Unpin">Unpin</a><a href="#impl-UnwindSafe">!UnwindSafe</a></div><h3 class="sidebar-title"><a href="#blanket-implementations">Blanket Implementations</a></h3><div class="sidebar-links"><a href="#impl-Any">Any</a><a href="#impl-Borrow%3CT%3E">Borrow&lt;T&gt;</a><a href="#impl-BorrowMut%3CT%3E">BorrowMut&lt;T&gt;</a><a href="#impl-From%3CT%3E">From&lt;T&gt;</a><a href="#impl-Instrument">Instrument</a><a href="#impl-Into%3CU%3E">Into&lt;U&gt;</a><a href="#impl-Same%3CT%3E">Same&lt;T&gt;</a><a href="#impl-SupersetOf%3CSS%3E">SupersetOf&lt;SS&gt;</a><a href="#impl-ToString">ToString</a><a href="#impl-TryFrom%3CU%3E">TryFrom&lt;U&gt;</a><a href="#impl-TryInto%3CU%3E">TryInto&lt;U&gt;</a><a href="#impl-WithSubscriber">WithSubscriber</a></div></div><h2 class="location">Other items in<br><a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">asset_manager</a>::<wbr><a href="index.html">texture</a></h2><div id="sidebar-vars" data-name="ResourceLoadError" data-ty="enum" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../../game_logic/index.html"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></a><nav class="sub"><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="18" height="18" alt="Pick another theme!" src="../../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../../settings.html" title="settings"><img width="18" height="18" alt="Change settings" src="../../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">Enum <a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">asset_manager</a>::<wbr><a href="index.html">texture</a>::<wbr><a class="enum" href="#">ResourceLoadError</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#17-24" title="goto source code">[src]</a></span></h1><div class="docblock item-decl"><pre class="rust enum"><code>pub enum ResourceLoadError {
Io(<a class="struct" href="https://doc.rust-lang.org/1.59.0/std/io/error/struct.Error.html" title="struct std::io::error::Error">Error</a>),
AssetNotFound(<a class="struct" href="https://doc.rust-lang.org/1.59.0/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>),
Generic(<a class="struct" href="https://doc.rust-lang.org/1.59.0/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>),
}</code></pre></div><h2 id="variants" class="variants small-section-header">Variants<a href="#variants" class="anchor"></a></h2><h3 id="variant.Io" class="variant small-section-header"><a href="#variant.Io" class="anchor field"></a><code>Io(<a class="struct" href="https://doc.rust-lang.org/1.59.0/std/io/error/struct.Error.html" title="struct std::io::error::Error">Error</a>)</code></h3><div class="sub-variant" id="variant.Io.fields"><h4>Tuple Fields</h4><div class="sub-variant-field"><span id="variant.Io.field.0" class="variant small-section-header"><a href="#variant.Io.field.0" class="anchor field"></a><code>0:&nbsp;<a class="struct" href="https://doc.rust-lang.org/1.59.0/std/io/error/struct.Error.html" title="struct std::io::error::Error">Error</a></code></span></div></div><h3 id="variant.AssetNotFound" class="variant small-section-header"><a href="#variant.AssetNotFound" class="anchor field"></a><code>AssetNotFound(<a class="struct" href="https://doc.rust-lang.org/1.59.0/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>)</code></h3><div class="sub-variant" id="variant.AssetNotFound.fields"><h4>Tuple Fields</h4><div class="sub-variant-field"><span id="variant.AssetNotFound.field.0" class="variant small-section-header"><a href="#variant.AssetNotFound.field.0" class="anchor field"></a><code>0:&nbsp;<a class="struct" href="https://doc.rust-lang.org/1.59.0/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span></div></div><h3 id="variant.Generic" class="variant small-section-header"><a href="#variant.Generic" class="anchor field"></a><code>Generic(<a class="struct" href="https://doc.rust-lang.org/1.59.0/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>)</code></h3><div class="sub-variant" id="variant.Generic.fields"><h4>Tuple Fields</h4><div class="sub-variant-field"><span id="variant.Generic.field.0" class="variant small-section-header"><a href="#variant.Generic.field.0" class="anchor field"></a><code>0:&nbsp;<a class="struct" href="https://doc.rust-lang.org/1.59.0/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span></div></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor"></a></h2><div id="trait-implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Debug" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#12" title="goto source code">[src]</a></div><a href="#impl-Debug" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="enum" href="enum.ResourceLoadError.html" title="enum game_logic::asset_manager::texture::ResourceLoadError">ResourceLoadError</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.fmt-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#12" title="goto source code">[src]</a></div><a href="#method.fmt-1" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.59.0/core/fmt/trait.Debug.html#tymethod.fmt" class="fnname">fmt</a>(&amp;self, f: &amp;mut <a class="struct" href="https://doc.rust-lang.org/1.59.0/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a>&lt;'_&gt;) -&gt; <a class="type" href="https://doc.rust-lang.org/1.59.0/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></div></summary><div class='docblock'><p>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/1.59.0/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Display" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#12" title="goto source code">[src]</a></div><a href="#impl-Display" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/fmt/trait.Display.html" title="trait core::fmt::Display">Display</a> for <a class="enum" href="enum.ResourceLoadError.html" title="enum game_logic::asset_manager::texture::ResourceLoadError">ResourceLoadError</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.fmt" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#12" title="goto source code">[src]</a></div><a href="#method.fmt" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.59.0/core/fmt/trait.Display.html#tymethod.fmt" class="fnname">fmt</a>(&amp;self, __formatter: &amp;mut <a class="struct" href="https://doc.rust-lang.org/1.59.0/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a>&lt;'_&gt;) -&gt; <a class="type" href="https://doc.rust-lang.org/1.59.0/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></div></summary><div class='docblock'><p>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/1.59.0/core/fmt/trait.Display.html#tymethod.fmt">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Error" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#12" title="goto source code">[src]</a></div><a href="#impl-Error" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/std/error/trait.Error.html" title="trait std::error::Error">Error</a> for <a class="enum" href="enum.ResourceLoadError.html" title="enum game_logic::asset_manager::texture::ResourceLoadError">ResourceLoadError</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.source" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#12" title="goto source code">[src]</a></div><a href="#method.source" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.59.0/std/error/trait.Error.html#method.source" class="fnname">source</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.59.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;(dyn <a class="trait" href="https://doc.rust-lang.org/1.59.0/std/error/trait.Error.html" title="trait std::error::Error">Error</a> + 'static)&gt;</h4></div></summary><div class='docblock'><p>The lower-level source of this error, if any. <a href="https://doc.rust-lang.org/1.59.0/std/error/trait.Error.html#method.source">Read more</a></p>
}</code></pre></div><h2 id="variants" class="variants small-section-header">Variants<a href="#variants" class="anchor"></a></h2><h3 id="variant.Io" class="variant small-section-header"><a href="#variant.Io" class="anchor field"></a><code>Io(<a class="struct" href="https://doc.rust-lang.org/1.59.0/std/io/error/struct.Error.html" title="struct std::io::error::Error">Error</a>)</code></h3><div class="sub-variant" id="variant.Io.fields"><h4>Tuple Fields</h4><div class="sub-variant-field"><span id="variant.Io.field.0" class="variant small-section-header"><a href="#variant.Io.field.0" class="anchor field"></a><code>0:&nbsp;<a class="struct" href="https://doc.rust-lang.org/1.59.0/std/io/error/struct.Error.html" title="struct std::io::error::Error">Error</a></code></span></div></div><h3 id="variant.AssetNotFound" class="variant small-section-header"><a href="#variant.AssetNotFound" class="anchor field"></a><code>AssetNotFound(<a class="struct" href="https://doc.rust-lang.org/1.59.0/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>)</code></h3><div class="sub-variant" id="variant.AssetNotFound.fields"><h4>Tuple Fields</h4><div class="sub-variant-field"><span id="variant.AssetNotFound.field.0" class="variant small-section-header"><a href="#variant.AssetNotFound.field.0" class="anchor field"></a><code>0:&nbsp;<a class="struct" href="https://doc.rust-lang.org/1.59.0/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span></div></div><h3 id="variant.Generic" class="variant small-section-header"><a href="#variant.Generic" class="anchor field"></a><code>Generic(<a class="struct" href="https://doc.rust-lang.org/1.59.0/alloc/string/struct.String.html" title="struct alloc::string::String">String</a>)</code></h3><div class="sub-variant" id="variant.Generic.fields"><h4>Tuple Fields</h4><div class="sub-variant-field"><span id="variant.Generic.field.0" class="variant small-section-header"><a href="#variant.Generic.field.0" class="anchor field"></a><code>0:&nbsp;<a class="struct" href="https://doc.rust-lang.org/1.59.0/alloc/string/struct.String.html" title="struct alloc::string::String">String</a></code></span></div></div><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor"></a></h2><div id="trait-implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Debug" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#16" title="goto source code">[src]</a></div><a href="#impl-Debug" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="enum" href="enum.ResourceLoadError.html" title="enum game_logic::asset_manager::texture::ResourceLoadError">ResourceLoadError</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.fmt-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#16" title="goto source code">[src]</a></div><a href="#method.fmt-1" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.59.0/core/fmt/trait.Debug.html#tymethod.fmt" class="fnname">fmt</a>(&amp;self, f: &amp;mut <a class="struct" href="https://doc.rust-lang.org/1.59.0/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a>&lt;'_&gt;) -&gt; <a class="type" href="https://doc.rust-lang.org/1.59.0/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></div></summary><div class='docblock'><p>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/1.59.0/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Display" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#16" title="goto source code">[src]</a></div><a href="#impl-Display" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/fmt/trait.Display.html" title="trait core::fmt::Display">Display</a> for <a class="enum" href="enum.ResourceLoadError.html" title="enum game_logic::asset_manager::texture::ResourceLoadError">ResourceLoadError</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.fmt" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#16" title="goto source code">[src]</a></div><a href="#method.fmt" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.59.0/core/fmt/trait.Display.html#tymethod.fmt" class="fnname">fmt</a>(&amp;self, __formatter: &amp;mut <a class="struct" href="https://doc.rust-lang.org/1.59.0/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a>&lt;'_&gt;) -&gt; <a class="type" href="https://doc.rust-lang.org/1.59.0/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></div></summary><div class='docblock'><p>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/1.59.0/core/fmt/trait.Display.html#tymethod.fmt">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Error" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#16" title="goto source code">[src]</a></div><a href="#impl-Error" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/std/error/trait.Error.html" title="trait std::error::Error">Error</a> for <a class="enum" href="enum.ResourceLoadError.html" title="enum game_logic::asset_manager::texture::ResourceLoadError">ResourceLoadError</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.source" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#16" title="goto source code">[src]</a></div><a href="#method.source" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.59.0/std/error/trait.Error.html#method.source" class="fnname">source</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.59.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;(dyn <a class="trait" href="https://doc.rust-lang.org/1.59.0/std/error/trait.Error.html" title="trait std::error::Error">Error</a> + 'static)&gt;</h4></div></summary><div class='docblock'><p>The lower-level source of this error, if any. <a href="https://doc.rust-lang.org/1.59.0/std/error/trait.Error.html#method.source">Read more</a></p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.backtrace" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/std/error.rs.html#135" title="goto source code">[src]</a></div><a href="#method.backtrace" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.59.0/std/error/trait.Error.html#method.backtrace" class="fnname">backtrace</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.59.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;<a class="struct" href="https://doc.rust-lang.org/1.59.0/std/backtrace/struct.Backtrace.html" title="struct std::backtrace::Backtrace">Backtrace</a>&gt;</h4></div></summary><div class="item-info"><div class="stab unstable"><span class="emoji">🔬</span> This is a nightly-only experimental API. (<code>backtrace</code>&nbsp;<a href="https://github.com/Ewpratten/ludum-dare-50/issues/53487">#53487</a>)</div></div><div class='docblock'><p>Returns a stack backtrace, if available, of where this error occurred. <a href="https://doc.rust-lang.org/1.59.0/std/error/trait.Error.html#method.backtrace">Read more</a></p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.description" class="method trait-impl has-srclink"><div class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/std/error.rs.html#147" title="goto source code">[src]</a></div><a href="#method.description" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.59.0/std/error/trait.Error.html#method.description" class="fnname">description</a>(&amp;self) -&gt; &amp;<a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.str.html">str</a></h4></div></summary><div class="item-info"><div class="stab deprecated"><span class="emoji">👎</span> Deprecated since 1.42.0: <p>use the Display impl or to_string()</p>
</div></div><div class='docblock'> <a href="https://doc.rust-lang.org/1.59.0/std/error/trait.Error.html#method.description">Read more</a></div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.cause" class="method trait-impl has-srclink"><div class="rightside"><span class="since" title="Stable since Rust version 1.0.0">1.0.0</span><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/std/error.rs.html#157" title="goto source code">[src]</a></div><a href="#method.cause" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.59.0/std/error/trait.Error.html#method.cause" class="fnname">cause</a>(&amp;self) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.59.0/core/option/enum.Option.html" title="enum core::option::Option">Option</a>&lt;&amp;dyn <a class="trait" href="https://doc.rust-lang.org/1.59.0/std/error/trait.Error.html" title="trait std::error::Error">Error</a>&gt;</h4></div></summary><div class="item-info"><div class="stab deprecated"><span class="emoji">👎</span> Deprecated since 1.33.0: <p>replaced by Error::source, which can support downcasting</p>
</div></div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-From%3CError%3E" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#12" title="goto source code">[src]</a></div><a href="#impl-From%3CError%3E" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.59.0/std/io/error/struct.Error.html" title="struct std::io::error::Error">Error</a>&gt; for <a class="enum" href="enum.ResourceLoadError.html" title="enum game_logic::asset_manager::texture::ResourceLoadError">ResourceLoadError</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.from" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#12" title="goto source code">[src]</a></div><a href="#method.from" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.59.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(source: <a class="struct" href="https://doc.rust-lang.org/1.59.0/std/io/error/struct.Error.html" title="struct std::io::error::Error">Error</a>) -&gt; Self</h4></div></summary><div class='docblock'><p>Performs the conversion.</p>
</div></div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-From%3CError%3E" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#16" title="goto source code">[src]</a></div><a href="#impl-From%3CError%3E" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="struct" href="https://doc.rust-lang.org/1.59.0/std/io/error/struct.Error.html" title="struct std::io::error::Error">Error</a>&gt; for <a class="enum" href="enum.ResourceLoadError.html" title="enum game_logic::asset_manager::texture::ResourceLoadError">ResourceLoadError</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.from" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#16" title="goto source code">[src]</a></div><a href="#method.from" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.59.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(source: <a class="struct" href="https://doc.rust-lang.org/1.59.0/std/io/error/struct.Error.html" title="struct std::io::error::Error">Error</a>) -&gt; Self</h4></div></summary><div class='docblock'><p>Performs the conversion.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-From%3CResourceLoadError%3E" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/rendering/utilities/anim_texture.rs.html#20" title="goto source code">[src]</a></div><a href="#impl-From%3CResourceLoadError%3E" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="enum" href="enum.ResourceLoadError.html" title="enum game_logic::asset_manager::texture::ResourceLoadError">ResourceLoadError</a>&gt; for <a class="enum" href="../../rendering/utilities/anim_texture/enum.AnimatedTextureLoadError.html" title="enum game_logic::rendering::utilities::anim_texture::AnimatedTextureLoadError">AnimatedTextureLoadError</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.from-1" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/rendering/utilities/anim_texture.rs.html#20" title="goto source code">[src]</a></div><a href="#method.from-1" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.59.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(source: <a class="enum" href="enum.ResourceLoadError.html" title="enum game_logic::asset_manager::texture::ResourceLoadError">ResourceLoadError</a>) -&gt; Self</h4></div></summary><div class='docblock'><p>Performs the conversion.</p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-From%3CResourceLoadError%3E-1" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/model/world_object_package.rs.html#12" title="goto source code">[src]</a></div><a href="#impl-From%3CResourceLoadError%3E-1" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;<a class="enum" href="enum.ResourceLoadError.html" title="enum game_logic::asset_manager::texture::ResourceLoadError">ResourceLoadError</a>&gt; for <a class="enum" href="../../model/world_object_package/enum.WorldObjectPackageLoadError.html" title="enum game_logic::model::world_object_package::WorldObjectPackageLoadError">WorldObjectPackageLoadError</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.from-2" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/model/world_object_package.rs.html#12" title="goto source code">[src]</a></div><a href="#method.from-2" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.59.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(source: <a class="enum" href="enum.ResourceLoadError.html" title="enum game_logic::asset_manager::texture::ResourceLoadError">ResourceLoadError</a>) -&gt; Self</h4></div></summary><div class='docblock'><p>Performs the conversion.</p>
</div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor"></a></h2><div id="synthetic-implementations-list"><div id="impl-RefUnwindSafe" class="impl has-srclink"><div class="rightside"></div><a href="#impl-RefUnwindSafe" class="anchor"></a><h3 class="code-header in-band">impl !<a class="trait" href="https://doc.rust-lang.org/1.59.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="enum" href="enum.ResourceLoadError.html" title="enum game_logic::asset_manager::texture::ResourceLoadError">ResourceLoadError</a></h3></div><div id="impl-Send" class="impl has-srclink"><div class="rightside"></div><a href="#impl-Send" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="enum" href="enum.ResourceLoadError.html" title="enum game_logic::asset_manager::texture::ResourceLoadError">ResourceLoadError</a></h3></div><div id="impl-Sync" class="impl has-srclink"><div class="rightside"></div><a href="#impl-Sync" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="enum" href="enum.ResourceLoadError.html" title="enum game_logic::asset_manager::texture::ResourceLoadError">ResourceLoadError</a></h3></div><div id="impl-Unpin" class="impl has-srclink"><div class="rightside"></div><a href="#impl-Unpin" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="enum" href="enum.ResourceLoadError.html" title="enum game_logic::asset_manager::texture::ResourceLoadError">ResourceLoadError</a></h3></div><div id="impl-UnwindSafe" class="impl has-srclink"><div class="rightside"></div><a href="#impl-UnwindSafe" class="anchor"></a><h3 class="code-header in-band">impl !<a class="trait" href="https://doc.rust-lang.org/1.59.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="enum" href="enum.ResourceLoadError.html" title="enum game_logic::asset_manager::texture::ResourceLoadError">ResourceLoadError</a></h3></div></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor"></a></h2><div id="blanket-implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Any" class="impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/any.rs.html#132-136" title="goto source code">[src]</a></div><a href="#impl-Any" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.type_id" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/any.rs.html#133" title="goto source code">[src]</a></div><a href="#method.type_id" class="anchor"></a><h4 class="code-header">pub fn <a href="https://doc.rust-lang.org/1.59.0/core/any/trait.Any.html#tymethod.type_id" class="fnname">type_id</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.59.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></div></summary><div class='docblock'><p>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.59.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></p>

View File

@ -0,0 +1,4 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `load_music_from_internal_data` fn in crate `game_logic`."><meta name="keywords" content="rust, rustlang, rust-lang, load_music_from_internal_data"><title>load_music_from_internal_data in game_logic::asset_manager::texture - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" type="text/css" href="../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../ayu.css" disabled><link rel="stylesheet" type="text/css" href="../../../dark.css" disabled><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../../../storage.js"></script><script src="../../../crates.js"></script><script defer src="../../../main.js"></script>
<noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="alternate icon" type="image/png" href="../../../favicon-16x16.png"><link rel="alternate icon" type="image/png" href="../../../favicon-32x32.png"><link rel="icon" type="image/svg+xml" href="../../../favicon.svg"></head><body class="rustdoc fn"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu" role="button">&#9776;</div><a class="sidebar-logo" href="../../../game_logic/index.html"><div class="logo-container"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></div>
</a><div class="sidebar-elems"><h2 class="location">Other items in<br><a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">asset_manager</a>::<wbr><a href="index.html">texture</a></h2><div id="sidebar-vars" data-name="load_music_from_internal_data" data-ty="fn" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../../game_logic/index.html"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></a><nav class="sub"><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="18" height="18" alt="Pick another theme!" src="../../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../../settings.html" title="settings"><img width="18" height="18" alt="Change settings" src="../../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">Function <a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">asset_manager</a>::<wbr><a href="index.html">texture</a>::<wbr><a class="fn" href="#">load_music_from_internal_data</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#70-102" title="goto source code">[src]</a></span></h1><div class="docblock item-decl"><pre class="rust fn"><code>pub fn load_music_from_internal_data(<br>&nbsp;&nbsp;&nbsp;&nbsp;thread: &amp;RaylibThread, <br>&nbsp;&nbsp;&nbsp;&nbsp;path: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.str.html">str</a><br>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.59.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Music, <a class="enum" href="enum.ResourceLoadError.html" title="enum game_logic::asset_manager::texture::ResourceLoadError">ResourceLoadError</a>&gt;</code></pre></div></section><section id="search" class="content hidden"></section></div></main><div id="rustdoc-vars" data-root-path="../../../" data-current-crate="game_logic" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.59.0 (9d1b2106e 2022-02-23)" ></div>
</body></html>

View File

@ -0,0 +1,4 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `load_sound_from_internal_data` fn in crate `game_logic`."><meta name="keywords" content="rust, rustlang, rust-lang, load_sound_from_internal_data"><title>load_sound_from_internal_data in game_logic::asset_manager::texture - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" type="text/css" href="../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../ayu.css" disabled><link rel="stylesheet" type="text/css" href="../../../dark.css" disabled><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../../../storage.js"></script><script src="../../../crates.js"></script><script defer src="../../../main.js"></script>
<noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="alternate icon" type="image/png" href="../../../favicon-16x16.png"><link rel="alternate icon" type="image/png" href="../../../favicon-32x32.png"><link rel="icon" type="image/svg+xml" href="../../../favicon.svg"></head><body class="rustdoc fn"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu" role="button">&#9776;</div><a class="sidebar-logo" href="../../../game_logic/index.html"><div class="logo-container"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></div>
</a><div class="sidebar-elems"><h2 class="location">Other items in<br><a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">asset_manager</a>::<wbr><a href="index.html">texture</a></h2><div id="sidebar-vars" data-name="load_sound_from_internal_data" data-ty="fn" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../../game_logic/index.html"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></a><nav class="sub"><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="18" height="18" alt="Pick another theme!" src="../../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../../settings.html" title="settings"><img width="18" height="18" alt="Change settings" src="../../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">Function <a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">asset_manager</a>::<wbr><a href="index.html">texture</a>::<wbr><a class="fn" href="#">load_sound_from_internal_data</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#104-135" title="goto source code">[src]</a></span></h1><div class="docblock item-decl"><pre class="rust fn"><code>pub fn load_sound_from_internal_data(<br>&nbsp;&nbsp;&nbsp;&nbsp;path: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.str.html">str</a><br>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.59.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Sound, <a class="enum" href="enum.ResourceLoadError.html" title="enum game_logic::asset_manager::texture::ResourceLoadError">ResourceLoadError</a>&gt;</code></pre></div></section><section id="search" class="content hidden"></section></div></main><div id="rustdoc-vars" data-root-path="../../../" data-current-crate="game_logic" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.59.0 (9d1b2106e 2022-02-23)" ></div>
</body></html>

View File

@ -1,6 +1,6 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Loads an embedded texture into VRAM."><meta name="keywords" content="rust, rustlang, rust-lang, load_texture_from_internal_data"><title>load_texture_from_internal_data in game_logic::asset_manager::texture - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" type="text/css" href="../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../ayu.css" disabled><link rel="stylesheet" type="text/css" href="../../../dark.css" disabled><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../../../storage.js"></script><script src="../../../crates.js"></script><script defer src="../../../main.js"></script>
<noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="alternate icon" type="image/png" href="../../../favicon-16x16.png"><link rel="alternate icon" type="image/png" href="../../../favicon-32x32.png"><link rel="icon" type="image/svg+xml" href="../../../favicon.svg"></head><body class="rustdoc fn"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu" role="button">&#9776;</div><a class="sidebar-logo" href="../../../game_logic/index.html"><div class="logo-container"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></div>
</a><div class="sidebar-elems"><h2 class="location">Other items in<br><a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">asset_manager</a>::<wbr><a href="index.html">texture</a></h2><div id="sidebar-vars" data-name="load_texture_from_internal_data" data-ty="fn" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../../game_logic/index.html"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></a><nav class="sub"><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="18" height="18" alt="Pick another theme!" src="../../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../../settings.html" title="settings"><img width="18" height="18" alt="Change settings" src="../../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">Function <a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">asset_manager</a>::<wbr><a href="index.html">texture</a>::<wbr><a class="fn" href="#">load_texture_from_internal_data</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#30-64" title="goto source code">[src]</a></span></h1><div class="docblock item-decl"><pre class="rust fn"><code>pub fn load_texture_from_internal_data(<br>&nbsp;&nbsp;&nbsp;&nbsp;raylib_handle: &amp;mut RaylibHandle, <br>&nbsp;&nbsp;&nbsp;&nbsp;thread: &amp;RaylibThread, <br>&nbsp;&nbsp;&nbsp;&nbsp;path: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.str.html">str</a><br>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.59.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Texture2D, <a class="enum" href="enum.ResourceLoadError.html" title="enum game_logic::asset_manager::texture::ResourceLoadError">ResourceLoadError</a>&gt;</code></pre></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Loads an embedded texture into VRAM.</p>
</a><div class="sidebar-elems"><h2 class="location">Other items in<br><a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">asset_manager</a>::<wbr><a href="index.html">texture</a></h2><div id="sidebar-vars" data-name="load_texture_from_internal_data" data-ty="fn" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../../game_logic/index.html"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></a><nav class="sub"><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="18" height="18" alt="Pick another theme!" src="../../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../../settings.html" title="settings"><img width="18" height="18" alt="Change settings" src="../../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">Function <a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">asset_manager</a>::<wbr><a href="index.html">texture</a>::<wbr><a class="fn" href="#">load_texture_from_internal_data</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#34-68" title="goto source code">[src]</a></span></h1><div class="docblock item-decl"><pre class="rust fn"><code>pub fn load_texture_from_internal_data(<br>&nbsp;&nbsp;&nbsp;&nbsp;raylib_handle: &amp;mut RaylibHandle, <br>&nbsp;&nbsp;&nbsp;&nbsp;thread: &amp;RaylibThread, <br>&nbsp;&nbsp;&nbsp;&nbsp;path: &amp;<a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.str.html">str</a><br>) -&gt; <a class="enum" href="https://doc.rust-lang.org/1.59.0/core/result/enum.Result.html" title="enum core::result::Result">Result</a>&lt;Texture2D, <a class="enum" href="enum.ResourceLoadError.html" title="enum game_logic::asset_manager::texture::ResourceLoadError">ResourceLoadError</a>&gt;</code></pre></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Loads an embedded texture into VRAM.</p>
<h2 id="technical-info" class="section-header"><a href="#technical-info">Technical Info</a></h2>
<p>In this application, we are using <code>rust_embed</code> to embed static assets directly inside the executable.
This has the limitation of none of the assets being “real files”, which causes an issue with Raylib.

View File

@ -1,9 +1,9 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Code for loading textures from RAM to VRAM"><meta name="keywords" content="rust, rustlang, rust-lang, texture"><title>game_logic::asset_manager::texture - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" type="text/css" href="../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../ayu.css" disabled><link rel="stylesheet" type="text/css" href="../../../dark.css" disabled><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../../../storage.js"></script><script src="../../../crates.js"></script><script defer src="../../../main.js"></script>
<noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="alternate icon" type="image/png" href="../../../favicon-16x16.png"><link rel="alternate icon" type="image/png" href="../../../favicon-32x32.png"><link rel="icon" type="image/svg+xml" href="../../../favicon.svg"></head><body class="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu" role="button">&#9776;</div><a class="sidebar-logo" href="../../../game_logic/index.html"><div class="logo-container"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></div>
</a><h2 class="location">Module texture</h2><div class="sidebar-elems"><div class="block items"><ul><li><a href="#enums">Enums</a></li><li><a href="#functions">Functions</a></li></ul></div><div id="sidebar-vars" data-name="texture" data-ty="mod" data-relpath="./"></div><script defer src="./sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../../game_logic/index.html"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></a><nav class="sub"><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="18" height="18" alt="Pick another theme!" src="../../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../../settings.html" title="settings"><img width="18" height="18" alt="Change settings" src="../../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">Module <a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">asset_manager</a>::<wbr><a class="mod" href="#">texture</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#1-64" title="goto source code">[src]</a></span></h1><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Code for loading textures from RAM to VRAM</p>
</a><h2 class="location">Module texture</h2><div class="sidebar-elems"><div class="block items"><ul><li><a href="#enums">Enums</a></li><li><a href="#functions">Functions</a></li></ul></div><div id="sidebar-vars" data-name="texture" data-ty="mod" data-relpath="./"></div><script defer src="./sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../../game_logic/index.html"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></a><nav class="sub"><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="18" height="18" alt="Pick another theme!" src="../../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../../settings.html" title="settings"><img width="18" height="18" alt="Change settings" src="../../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">Module <a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">asset_manager</a>::<wbr><a class="mod" href="#">texture</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span><a class="srclink" href="../../../src/game_logic/asset_manager/texture.rs.html#1-135" title="goto source code">[src]</a></span></h1><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Code for loading textures from RAM to VRAM</p>
<p>Largely coppied from last year: https://github.com/Ewpratten/ludum-dare-49/blob/master/game/src/utilities/datastore.rs</p>
</div></details><h2 id="enums" class="small-section-header"><a href="#enums">Enums</a></h2>
<div class="item-table"><div class="item-row"><div class="item-left module-item"><a class="enum" href="enum.ResourceLoadError.html" title="game_logic::asset_manager::texture::ResourceLoadError enum">ResourceLoadError</a></div><div class="item-right docblock-short"></div></div></div><h2 id="functions" class="small-section-header"><a href="#functions">Functions</a></h2>
<div class="item-table"><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.load_texture_from_internal_data.html" title="game_logic::asset_manager::texture::load_texture_from_internal_data fn">load_texture_from_internal_data</a></div><div class="item-right docblock-short"><p>Loads an embedded texture into VRAM.</p>
<div class="item-table"><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.load_music_from_internal_data.html" title="game_logic::asset_manager::texture::load_music_from_internal_data fn">load_music_from_internal_data</a></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.load_sound_from_internal_data.html" title="game_logic::asset_manager::texture::load_sound_from_internal_data fn">load_sound_from_internal_data</a></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left module-item"><a class="fn" href="fn.load_texture_from_internal_data.html" title="game_logic::asset_manager::texture::load_texture_from_internal_data fn">load_texture_from_internal_data</a></div><div class="item-right docblock-short"><p>Loads an embedded texture into VRAM.</p>
</div></div></div></section><section id="search" class="content hidden"></section></div></main><div id="rustdoc-vars" data-root-path="../../../" data-current-crate="game_logic" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.59.0 (9d1b2106e 2022-02-23)" ></div>
</body></html>

View File

@ -1 +1 @@
initSidebarItems({"enum":[["ResourceLoadError",""]],"fn":[["load_texture_from_internal_data","Loads an embedded texture into VRAM."]]});
initSidebarItems({"enum":[["ResourceLoadError",""]],"fn":[["load_music_from_internal_data",""],["load_sound_from_internal_data",""],["load_texture_from_internal_data","Loads an embedded texture into VRAM."]]});

View File

@ -1,5 +1,5 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Will begin rendering graphics. Returns when the window closes"><meta name="keywords" content="rust, rustlang, rust-lang, handle_graphics_blocking"><title>handle_graphics_blocking in game_logic::rendering::event_loop - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" type="text/css" href="../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../ayu.css" disabled><link rel="stylesheet" type="text/css" href="../../../dark.css" disabled><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../../../storage.js"></script><script src="../../../crates.js"></script><script defer src="../../../main.js"></script>
<noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="alternate icon" type="image/png" href="../../../favicon-16x16.png"><link rel="alternate icon" type="image/png" href="../../../favicon-32x32.png"><link rel="icon" type="image/svg+xml" href="../../../favicon.svg"></head><body class="rustdoc fn"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu" role="button">&#9776;</div><a class="sidebar-logo" href="../../../game_logic/index.html"><div class="logo-container"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></div>
</a><div class="sidebar-elems"><h2 class="location">Other items in<br><a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">rendering</a>::<wbr><a href="index.html">event_loop</a></h2><div id="sidebar-vars" data-name="handle_graphics_blocking" data-ty="fn" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../../game_logic/index.html"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></a><nav class="sub"><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="18" height="18" alt="Pick another theme!" src="../../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../../settings.html" title="settings"><img width="18" height="18" alt="Change settings" src="../../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">Function <a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">rendering</a>::<wbr><a href="index.html">event_loop</a>::<wbr><a class="fn" href="#">handle_graphics_blocking</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span><a class="srclink" href="../../../src/game_logic/rendering/event_loop.rs.html#22-132" title="goto source code">[src]</a></span></h1><div class="docblock item-decl"><pre class="rust fn"><code>pub async fn handle_graphics_blocking&lt;ConfigBuilder&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;config: ConfigBuilder, <br>&nbsp;&nbsp;&nbsp;&nbsp;target_frames_per_second: <a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.u32.html">u32</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;constants: &amp;<a class="struct" href="../../project_constants/struct.ProjectConstants.html" title="struct game_logic::project_constants::ProjectConstants">ProjectConstants</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;discord_signaling: Sender&lt;<a class="enum" href="../../discord/signal/enum.DiscordRpcSignal.html" title="enum game_logic::discord::signal::DiscordRpcSignal">DiscordRpcSignal</a>&gt;<br>) <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;ConfigBuilder: <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(&amp;mut RaylibBuilder),&nbsp;</span></code></pre></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Will begin rendering graphics. Returns when the window closes</p>
</a><div class="sidebar-elems"><h2 class="location">Other items in<br><a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">rendering</a>::<wbr><a href="index.html">event_loop</a></h2><div id="sidebar-vars" data-name="handle_graphics_blocking" data-ty="fn" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../../game_logic/index.html"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></a><nav class="sub"><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="18" height="18" alt="Pick another theme!" src="../../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../../settings.html" title="settings"><img width="18" height="18" alt="Change settings" src="../../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">Function <a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">rendering</a>::<wbr><a href="index.html">event_loop</a>::<wbr><a class="fn" href="#">handle_graphics_blocking</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span><a class="srclink" href="../../../src/game_logic/rendering/event_loop.rs.html#22-137" title="goto source code">[src]</a></span></h1><div class="docblock item-decl"><pre class="rust fn"><code>pub async fn handle_graphics_blocking&lt;ConfigBuilder&gt;(<br>&nbsp;&nbsp;&nbsp;&nbsp;config: ConfigBuilder, <br>&nbsp;&nbsp;&nbsp;&nbsp;target_frames_per_second: <a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.u32.html">u32</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;constants: &amp;<a class="struct" href="../../project_constants/struct.ProjectConstants.html" title="struct game_logic::project_constants::ProjectConstants">ProjectConstants</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;discord_signaling: Sender&lt;<a class="enum" href="../../discord/signal/enum.DiscordRpcSignal.html" title="enum game_logic::discord::signal::DiscordRpcSignal">DiscordRpcSignal</a>&gt;<br>) <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;ConfigBuilder: <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/ops/function/trait.FnOnce.html" title="trait core::ops::function::FnOnce">FnOnce</a>(&amp;mut RaylibBuilder),&nbsp;</span></code></pre></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Will begin rendering graphics. Returns when the window closes</p>
</div></details></section><section id="search" class="content hidden"></section></div></main><div id="rustdoc-vars" data-root-path="../../../" data-current-crate="game_logic" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.59.0 (9d1b2106e 2022-02-23)" ></div>
</body></html>

View File

@ -1,6 +1,6 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="The Event Loop module"><meta name="keywords" content="rust, rustlang, rust-lang, event_loop"><title>game_logic::rendering::event_loop - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" type="text/css" href="../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../ayu.css" disabled><link rel="stylesheet" type="text/css" href="../../../dark.css" disabled><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../../../storage.js"></script><script src="../../../crates.js"></script><script defer src="../../../main.js"></script>
<noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="alternate icon" type="image/png" href="../../../favicon-16x16.png"><link rel="alternate icon" type="image/png" href="../../../favicon-32x32.png"><link rel="icon" type="image/svg+xml" href="../../../favicon.svg"></head><body class="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu" role="button">&#9776;</div><a class="sidebar-logo" href="../../../game_logic/index.html"><div class="logo-container"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></div>
</a><h2 class="location">Module event_loop</h2><div class="sidebar-elems"><div class="block items"><ul><li><a href="#functions">Functions</a></li></ul></div><div id="sidebar-vars" data-name="event_loop" data-ty="mod" data-relpath="./"></div><script defer src="./sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../../game_logic/index.html"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></a><nav class="sub"><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="18" height="18" alt="Pick another theme!" src="../../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../../settings.html" title="settings"><img width="18" height="18" alt="Change settings" src="../../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">Module <a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">rendering</a>::<wbr><a class="mod" href="#">event_loop</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span><a class="srclink" href="../../../src/game_logic/rendering/event_loop.rs.html#1-132" title="goto source code">[src]</a></span></h1><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>The Event Loop module</p>
</a><h2 class="location">Module event_loop</h2><div class="sidebar-elems"><div class="block items"><ul><li><a href="#functions">Functions</a></li></ul></div><div id="sidebar-vars" data-name="event_loop" data-ty="mod" data-relpath="./"></div><script defer src="./sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../../game_logic/index.html"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></a><nav class="sub"><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="18" height="18" alt="Pick another theme!" src="../../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../../settings.html" title="settings"><img width="18" height="18" alt="Change settings" src="../../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">Module <a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">rendering</a>::<wbr><a class="mod" href="#">event_loop</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span><a class="srclink" href="../../../src/game_logic/rendering/event_loop.rs.html#1-137" title="goto source code">[src]</a></span></h1><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>The Event Loop module</p>
<h3 id="overview" class="section-header"><a href="#overview">Overview</a></h3>
<p>This is the code that handles beginning each frame and ending it. Do not try to add your own game logic in here.
The event loop function has its own statemachine (<code>core_renderer_sm.rs</code>) that handles the current action.</p>

View File

@ -1,6 +1,6 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="The render code for various scenes"><meta name="keywords" content="rust, rustlang, rust-lang, scenes"><title>game_logic::scenes - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../ayu.css" disabled><link rel="stylesheet" type="text/css" href="../../dark.css" disabled><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../../storage.js"></script><script src="../../crates.js"></script><script defer src="../../main.js"></script>
<noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="alternate icon" type="image/png" href="../../favicon-16x16.png"><link rel="alternate icon" type="image/png" href="../../favicon-32x32.png"><link rel="icon" type="image/svg+xml" href="../../favicon.svg"></head><body class="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu" role="button">&#9776;</div><a class="sidebar-logo" href="../../game_logic/index.html"><div class="logo-container"><img class="rust-logo" src="../../rust-logo.png" alt="logo"></div>
</a><h2 class="location">Module scenes</h2><div class="sidebar-elems"><div class="block items"><ul><li><a href="#modules">Modules</a></li><li><a href="#structs">Structs</a></li></ul></div><div id="sidebar-vars" data-name="scenes" data-ty="mod" data-relpath="./"></div><script defer src="./sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../game_logic/index.html"><img class="rust-logo" src="../../rust-logo.png" alt="logo"></a><nav class="sub"><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="18" height="18" alt="Pick another theme!" src="../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../settings.html" title="settings"><img width="18" height="18" alt="Change settings" src="../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">Module <a href="../index.html">game_logic</a>::<wbr><a class="mod" href="#">scenes</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span><a class="srclink" href="../../src/game_logic/scenes/mod.rs.html#1-113" title="goto source code">[src]</a></span></h1><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>The render code for various scenes</p>
</a><h2 class="location">Module scenes</h2><div class="sidebar-elems"><div class="block items"><ul><li><a href="#modules">Modules</a></li><li><a href="#structs">Structs</a></li></ul></div><div id="sidebar-vars" data-name="scenes" data-ty="mod" data-relpath="./"></div><script defer src="./sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../game_logic/index.html"><img class="rust-logo" src="../../rust-logo.png" alt="logo"></a><nav class="sub"><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="18" height="18" alt="Pick another theme!" src="../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../settings.html" title="settings"><img width="18" height="18" alt="Change settings" src="../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">Module <a href="../index.html">game_logic</a>::<wbr><a class="mod" href="#">scenes</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span><a class="srclink" href="../../src/game_logic/scenes/mod.rs.html#1-126" title="goto source code">[src]</a></span></h1><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>The render code for various scenes</p>
<h3 id="overview" class="section-header"><a href="#overview">Overview</a></h3>
<p>This will probably become a messy module over time. Stick your rendering code here</p>
</div></details><h2 id="modules" class="small-section-header"><a href="#modules">Modules</a></h2>

File diff suppressed because one or more lines are too long

View File

@ -1,6 +1,6 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="This scene encompasses all of the game where the player can walk around."><meta name="keywords" content="rust, rustlang, rust-lang, player_interaction"><title>game_logic::scenes::player_interaction - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" type="text/css" href="../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../ayu.css" disabled><link rel="stylesheet" type="text/css" href="../../../dark.css" disabled><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../../../storage.js"></script><script src="../../../crates.js"></script><script defer src="../../../main.js"></script>
<noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="alternate icon" type="image/png" href="../../../favicon-16x16.png"><link rel="alternate icon" type="image/png" href="../../../favicon-32x32.png"><link rel="icon" type="image/svg+xml" href="../../../favicon.svg"></head><body class="rustdoc mod"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu" role="button">&#9776;</div><a class="sidebar-logo" href="../../../game_logic/index.html"><div class="logo-container"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></div>
</a><h2 class="location">Module player_interaction</h2><div class="sidebar-elems"><div class="block items"><ul><li><a href="#structs">Structs</a></li></ul></div><div id="sidebar-vars" data-name="player_interaction" data-ty="mod" data-relpath="./"></div><script defer src="./sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../../game_logic/index.html"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></a><nav class="sub"><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="18" height="18" alt="Pick another theme!" src="../../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../../settings.html" title="settings"><img width="18" height="18" alt="Change settings" src="../../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">Module <a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">scenes</a>::<wbr><a class="mod" href="#">player_interaction</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span><a class="srclink" href="../../../src/game_logic/scenes/player_interaction.rs.html#1-185" title="goto source code">[src]</a></span></h1><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>This scene encompasses all of the game where the player can walk around.</p>
</a><h2 class="location">Module player_interaction</h2><div class="sidebar-elems"><div class="block items"><ul><li><a href="#structs">Structs</a></li></ul></div><div id="sidebar-vars" data-name="player_interaction" data-ty="mod" data-relpath="./"></div><script defer src="./sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../../game_logic/index.html"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></a><nav class="sub"><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="18" height="18" alt="Pick another theme!" src="../../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../../settings.html" title="settings"><img width="18" height="18" alt="Change settings" src="../../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">Module <a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">scenes</a>::<wbr><a class="mod" href="#">player_interaction</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span><a class="srclink" href="../../../src/game_logic/scenes/player_interaction.rs.html#1-192" title="goto source code">[src]</a></span></h1><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>This scene encompasses all of the game where the player can walk around.</p>
</div></details><h2 id="structs" class="small-section-header"><a href="#structs">Structs</a></h2>
<div class="item-table"><div class="item-row"><div class="item-left module-item"><a class="struct" href="struct.PlayableScene.html" title="game_logic::scenes::player_interaction::PlayableScene struct">PlayableScene</a></div><div class="item-right docblock-short"></div></div></div></section><section id="search" class="content hidden"></section></div></main><div id="rustdoc-vars" data-root-path="../../../" data-current-crate="game_logic" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.59.0 (9d1b2106e 2022-02-23)" ></div>
</body></html>

View File

@ -1,15 +1,16 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="API documentation for the Rust `PlayableScene` struct in crate `game_logic`."><meta name="keywords" content="rust, rustlang, rust-lang, PlayableScene"><title>PlayableScene in game_logic::scenes::player_interaction - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" type="text/css" href="../../../normalize.css"><link rel="stylesheet" type="text/css" href="../../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../../ayu.css" disabled><link rel="stylesheet" type="text/css" href="../../../dark.css" disabled><link rel="stylesheet" type="text/css" href="../../../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../../../storage.js"></script><script src="../../../crates.js"></script><script defer src="../../../main.js"></script>
<noscript><link rel="stylesheet" href="../../../noscript.css"></noscript><link rel="alternate icon" type="image/png" href="../../../favicon-16x16.png"><link rel="alternate icon" type="image/png" href="../../../favicon-32x32.png"><link rel="icon" type="image/svg+xml" href="../../../favicon.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu" role="button">&#9776;</div><a class="sidebar-logo" href="../../../game_logic/index.html"><div class="logo-container"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></div>
</a><h2 class="location">Struct PlayableScene</h2><div class="sidebar-elems"><div class="block items"><h3 class="sidebar-title"><a href="#fields">Fields</a></h3><div class="sidebar-links"><a href="#structfield.camera">camera</a><a href="#structfield.has_updated_discord_rpc">has_updated_discord_rpc</a><a href="#structfield.last_update">last_update</a><a href="#structfield.player">player</a><a href="#structfield.world_map">world_map</a></div><h3 class="sidebar-title"><a href="#implementations">Methods</a></h3><div class="sidebar-links"><a href="#method.draw_ui">draw_ui</a><a href="#method.draw_world">draw_world</a><a href="#method.new">new</a><a href="#method.render_frame">render_frame</a><a href="#method.update_camera">update_camera</a><a href="#method.update_physics">update_physics</a></div><h3 class="sidebar-title"><a href="#trait-implementations">Trait Implementations</a></h3><div class="sidebar-links"><a href="#impl-Debug">Debug</a></div><h3 class="sidebar-title"><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><div class="sidebar-links"><a href="#impl-RefUnwindSafe">RefUnwindSafe</a><a href="#impl-Send">Send</a><a href="#impl-Sync">Sync</a><a href="#impl-Unpin">Unpin</a><a href="#impl-UnwindSafe">UnwindSafe</a></div><h3 class="sidebar-title"><a href="#blanket-implementations">Blanket Implementations</a></h3><div class="sidebar-links"><a href="#impl-Any">Any</a><a href="#impl-Borrow%3CT%3E">Borrow&lt;T&gt;</a><a href="#impl-BorrowMut%3CT%3E">BorrowMut&lt;T&gt;</a><a href="#impl-From%3CT%3E">From&lt;T&gt;</a><a href="#impl-Instrument">Instrument</a><a href="#impl-Into%3CU%3E">Into&lt;U&gt;</a><a href="#impl-Same%3CT%3E">Same&lt;T&gt;</a><a href="#impl-SupersetOf%3CSS%3E">SupersetOf&lt;SS&gt;</a><a href="#impl-TryFrom%3CU%3E">TryFrom&lt;U&gt;</a><a href="#impl-TryInto%3CU%3E">TryInto&lt;U&gt;</a><a href="#impl-WithSubscriber">WithSubscriber</a></div></div><h2 class="location">Other items in<br><a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">scenes</a>::<wbr><a href="index.html">player_interaction</a></h2><div id="sidebar-vars" data-name="PlayableScene" data-ty="struct" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../../game_logic/index.html"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></a><nav class="sub"><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="18" height="18" alt="Pick another theme!" src="../../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../../settings.html" title="settings"><img width="18" height="18" alt="Change settings" src="../../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">Struct <a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">scenes</a>::<wbr><a href="index.html">player_interaction</a>::<wbr><a class="struct" href="#">PlayableScene</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span><a class="srclink" href="../../../src/game_logic/scenes/player_interaction.rs.html#16-22" title="goto source code">[src]</a></span></h1><div class="docblock item-decl"><pre class="rust struct"><code>pub struct PlayableScene {
has_updated_discord_rpc: <a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.bool.html">bool</a>,
</a><h2 class="location">Struct PlayableScene</h2><div class="sidebar-elems"><div class="block items"><h3 class="sidebar-title"><a href="#fields">Fields</a></h3><div class="sidebar-links"><a href="#structfield.camera">camera</a><a href="#structfield.game_soundtrack">game_soundtrack</a><a href="#structfield.has_updated_discord_rpc">has_updated_discord_rpc</a><a href="#structfield.last_update">last_update</a><a href="#structfield.player">player</a><a href="#structfield.world_map">world_map</a></div><h3 class="sidebar-title"><a href="#implementations">Methods</a></h3><div class="sidebar-links"><a href="#method.draw_ui">draw_ui</a><a href="#method.draw_world">draw_world</a><a href="#method.new">new</a><a href="#method.render_frame">render_frame</a><a href="#method.update_camera">update_camera</a><a href="#method.update_physics">update_physics</a></div><h3 class="sidebar-title"><a href="#trait-implementations">Trait Implementations</a></h3><div class="sidebar-links"><a href="#impl-Debug">Debug</a></div><h3 class="sidebar-title"><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><div class="sidebar-links"><a href="#impl-RefUnwindSafe">RefUnwindSafe</a><a href="#impl-Send">!Send</a><a href="#impl-Sync">!Sync</a><a href="#impl-Unpin">Unpin</a><a href="#impl-UnwindSafe">UnwindSafe</a></div><h3 class="sidebar-title"><a href="#blanket-implementations">Blanket Implementations</a></h3><div class="sidebar-links"><a href="#impl-Any">Any</a><a href="#impl-Borrow%3CT%3E">Borrow&lt;T&gt;</a><a href="#impl-BorrowMut%3CT%3E">BorrowMut&lt;T&gt;</a><a href="#impl-From%3CT%3E">From&lt;T&gt;</a><a href="#impl-Instrument">Instrument</a><a href="#impl-Into%3CU%3E">Into&lt;U&gt;</a><a href="#impl-Same%3CT%3E">Same&lt;T&gt;</a><a href="#impl-SupersetOf%3CSS%3E">SupersetOf&lt;SS&gt;</a><a href="#impl-TryFrom%3CU%3E">TryFrom&lt;U&gt;</a><a href="#impl-TryInto%3CU%3E">TryInto&lt;U&gt;</a><a href="#impl-WithSubscriber">WithSubscriber</a></div></div><h2 class="location">Other items in<br><a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">scenes</a>::<wbr><a href="index.html">player_interaction</a></h2><div id="sidebar-vars" data-name="PlayableScene" data-ty="struct" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../../game_logic/index.html"><img class="rust-logo" src="../../../rust-logo.png" alt="logo"></a><nav class="sub"><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="18" height="18" alt="Pick another theme!" src="../../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../../settings.html" title="settings"><img width="18" height="18" alt="Change settings" src="../../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">Struct <a href="../../index.html">game_logic</a>::<wbr><a href="../index.html">scenes</a>::<wbr><a href="index.html">player_interaction</a>::<wbr><a class="struct" href="#">PlayableScene</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span><a class="srclink" href="../../../src/game_logic/scenes/player_interaction.rs.html#17-24" title="goto source code">[src]</a></span></h1><div class="docblock item-decl"><pre class="rust struct"><code>pub struct PlayableScene {
pub has_updated_discord_rpc: <a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.bool.html">bool</a>,
player: <a class="struct" href="../../model/player/struct.Player.html" title="struct game_logic::model::player::Player">Player</a>,
world_map: <a class="struct" href="../../rendering/utilities/map_render/struct.MapRenderer.html" title="struct game_logic::rendering::utilities::map_render::MapRenderer">MapRenderer</a>,
camera: Camera2D,
last_update: <a class="struct" href="https://doc.rust-lang.org/1.59.0/std/time/struct.SystemTime.html" title="struct std::time::SystemTime">SystemTime</a>,
}</code></pre></div><h2 id="fields" class="fields small-section-header">Fields<a href="#fields" class="anchor"></a></h2><span id="structfield.has_updated_discord_rpc" class="structfield small-section-header"><a href="#structfield.has_updated_discord_rpc" class="anchor field"></a><code>has_updated_discord_rpc: <a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.bool.html">bool</a></code></span><span id="structfield.player" class="structfield small-section-header"><a href="#structfield.player" class="anchor field"></a><code>player: <a class="struct" href="../../model/player/struct.Player.html" title="struct game_logic::model::player::Player">Player</a></code></span><span id="structfield.world_map" class="structfield small-section-header"><a href="#structfield.world_map" class="anchor field"></a><code>world_map: <a class="struct" href="../../rendering/utilities/map_render/struct.MapRenderer.html" title="struct game_logic::rendering::utilities::map_render::MapRenderer">MapRenderer</a></code></span><span id="structfield.camera" class="structfield small-section-header"><a href="#structfield.camera" class="anchor field"></a><code>camera: Camera2D</code></span><span id="structfield.last_update" class="structfield small-section-header"><a href="#structfield.last_update" class="anchor field"></a><code>last_update: <a class="struct" href="https://doc.rust-lang.org/1.59.0/std/time/struct.SystemTime.html" title="struct std::time::SystemTime">SystemTime</a></code></span><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor"></a></h2><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/scenes/player_interaction.rs.html#24-185" title="goto source code">[src]</a></div><a href="#impl" class="anchor"></a><h3 class="code-header in-band">impl <a class="struct" href="struct.PlayableScene.html" title="struct game_logic::scenes::player_interaction::PlayableScene">PlayableScene</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.new" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/scenes/player_interaction.rs.html#26-52" title="goto source code">[src]</a></div><a href="#method.new" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.new" class="fnname">new</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;raylib_handle: &amp;mut RaylibHandle, <br>&nbsp;&nbsp;&nbsp;&nbsp;thread: &amp;RaylibThread, <br>&nbsp;&nbsp;&nbsp;&nbsp;constants: &amp;<a class="struct" href="../../project_constants/struct.ProjectConstants.html" title="struct game_logic::project_constants::ProjectConstants">ProjectConstants</a><br>) -&gt; Self</h4></div></summary><div class="docblock"><p>Construct a new <code>PlayableScene</code></p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.render_frame" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/scenes/player_interaction.rs.html#55-88" title="goto source code">[src]</a></div><a href="#method.render_frame" class="anchor"></a><h4 class="code-header">pub async fn <a href="#method.render_frame" class="fnname">render_frame</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;&amp;mut self, <br>&nbsp;&nbsp;&nbsp;&nbsp;raylib: &amp;mut RaylibHandle, <br>&nbsp;&nbsp;&nbsp;&nbsp;rl_thread: &amp;RaylibThread, <br>&nbsp;&nbsp;&nbsp;&nbsp;discord: &amp;Sender&lt;<a class="enum" href="../../discord/signal/enum.DiscordRpcSignal.html" title="enum game_logic::discord::signal::DiscordRpcSignal">DiscordRpcSignal</a>&gt;, <br>&nbsp;&nbsp;&nbsp;&nbsp;global_resources: &amp;<a class="struct" href="../../global_resource_package/struct.GlobalResources.html" title="struct game_logic::global_resource_package::GlobalResources">GlobalResources</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;constants: &amp;<a class="struct" href="../../project_constants/struct.ProjectConstants.html" title="struct game_logic::project_constants::ProjectConstants">ProjectConstants</a><br>)</h4></div></summary><div class="docblock"><p>Handler for each frame</p>
</div></details><div id="method.draw_world" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/scenes/player_interaction.rs.html#90-110" title="goto source code">[src]</a></div><a href="#method.draw_world" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.draw_world" class="fnname">draw_world</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;&amp;mut self, <br>&nbsp;&nbsp;&nbsp;&nbsp;draw: &amp;mut RaylibDrawHandle&lt;'_&gt;, <br>&nbsp;&nbsp;&nbsp;&nbsp;constants: &amp;<a class="struct" href="../../project_constants/struct.ProjectConstants.html" title="struct game_logic::project_constants::ProjectConstants">ProjectConstants</a><br>)</h4></div><div id="method.draw_ui" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/scenes/player_interaction.rs.html#112-127" title="goto source code">[src]</a></div><a href="#method.draw_ui" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.draw_ui" class="fnname">draw_ui</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;&amp;mut self, <br>&nbsp;&nbsp;&nbsp;&nbsp;draw: &amp;mut RaylibDrawHandle&lt;'_&gt;, <br>&nbsp;&nbsp;&nbsp;&nbsp;constants: &amp;<a class="struct" href="../../project_constants/struct.ProjectConstants.html" title="struct game_logic::project_constants::ProjectConstants">ProjectConstants</a><br>)</h4></div><div id="method.update_physics" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/scenes/player_interaction.rs.html#130-174" title="goto source code">[src]</a></div><a href="#method.update_physics" class="anchor"></a><h4 class="code-header">pub async fn <a href="#method.update_physics" class="fnname">update_physics</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;&amp;mut self, <br>&nbsp;&nbsp;&nbsp;&nbsp;raylib: &amp;RaylibHandle, <br>&nbsp;&nbsp;&nbsp;&nbsp;constants: &amp;<a class="struct" href="../../project_constants/struct.ProjectConstants.html" title="struct game_logic::project_constants::ProjectConstants">ProjectConstants</a><br>)</h4></div><div id="method.update_camera" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/scenes/player_interaction.rs.html#176-184" title="goto source code">[src]</a></div><a href="#method.update_camera" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.update_camera" class="fnname">update_camera</a>(&amp;mut self, raylib: &amp;RaylibHandle)</h4></div></div></details><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor"></a></h2><div id="trait-implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Debug" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/scenes/player_interaction.rs.html#15" title="goto source code">[src]</a></div><a href="#impl-Debug" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="struct.PlayableScene.html" title="struct game_logic::scenes::player_interaction::PlayableScene">PlayableScene</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.fmt" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/scenes/player_interaction.rs.html#15" title="goto source code">[src]</a></div><a href="#method.fmt" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.59.0/core/fmt/trait.Debug.html#tymethod.fmt" class="fnname">fmt</a>(&amp;self, f: &amp;mut <a class="struct" href="https://doc.rust-lang.org/1.59.0/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a>&lt;'_&gt;) -&gt; <a class="type" href="https://doc.rust-lang.org/1.59.0/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></div></summary><div class='docblock'><p>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/1.59.0/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></p>
</div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor"></a></h2><div id="synthetic-implementations-list"><div id="impl-RefUnwindSafe" class="impl has-srclink"><div class="rightside"></div><a href="#impl-RefUnwindSafe" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.PlayableScene.html" title="struct game_logic::scenes::player_interaction::PlayableScene">PlayableScene</a></h3></div><div id="impl-Send" class="impl has-srclink"><div class="rightside"></div><a href="#impl-Send" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.PlayableScene.html" title="struct game_logic::scenes::player_interaction::PlayableScene">PlayableScene</a></h3></div><div id="impl-Sync" class="impl has-srclink"><div class="rightside"></div><a href="#impl-Sync" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.PlayableScene.html" title="struct game_logic::scenes::player_interaction::PlayableScene">PlayableScene</a></h3></div><div id="impl-Unpin" class="impl has-srclink"><div class="rightside"></div><a href="#impl-Unpin" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.PlayableScene.html" title="struct game_logic::scenes::player_interaction::PlayableScene">PlayableScene</a></h3></div><div id="impl-UnwindSafe" class="impl has-srclink"><div class="rightside"></div><a href="#impl-UnwindSafe" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.PlayableScene.html" title="struct game_logic::scenes::player_interaction::PlayableScene">PlayableScene</a></h3></div></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor"></a></h2><div id="blanket-implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Any" class="impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/any.rs.html#132-136" title="goto source code">[src]</a></div><a href="#impl-Any" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.type_id" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/any.rs.html#133" title="goto source code">[src]</a></div><a href="#method.type_id" class="anchor"></a><h4 class="code-header">pub fn <a href="https://doc.rust-lang.org/1.59.0/core/any/trait.Any.html#tymethod.type_id" class="fnname">type_id</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.59.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></div></summary><div class='docblock'><p>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.59.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></p>
game_soundtrack: Music,
}</code></pre></div><h2 id="fields" class="fields small-section-header">Fields<a href="#fields" class="anchor"></a></h2><span id="structfield.has_updated_discord_rpc" class="structfield small-section-header"><a href="#structfield.has_updated_discord_rpc" class="anchor field"></a><code>has_updated_discord_rpc: <a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.bool.html">bool</a></code></span><span id="structfield.player" class="structfield small-section-header"><a href="#structfield.player" class="anchor field"></a><code>player: <a class="struct" href="../../model/player/struct.Player.html" title="struct game_logic::model::player::Player">Player</a></code></span><span id="structfield.world_map" class="structfield small-section-header"><a href="#structfield.world_map" class="anchor field"></a><code>world_map: <a class="struct" href="../../rendering/utilities/map_render/struct.MapRenderer.html" title="struct game_logic::rendering::utilities::map_render::MapRenderer">MapRenderer</a></code></span><span id="structfield.camera" class="structfield small-section-header"><a href="#structfield.camera" class="anchor field"></a><code>camera: Camera2D</code></span><span id="structfield.last_update" class="structfield small-section-header"><a href="#structfield.last_update" class="anchor field"></a><code>last_update: <a class="struct" href="https://doc.rust-lang.org/1.59.0/std/time/struct.SystemTime.html" title="struct std::time::SystemTime">SystemTime</a></code></span><span id="structfield.game_soundtrack" class="structfield small-section-header"><a href="#structfield.game_soundtrack" class="anchor field"></a><code>game_soundtrack: Music</code></span><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor"></a></h2><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/scenes/player_interaction.rs.html#26-192" title="goto source code">[src]</a></div><a href="#impl" class="anchor"></a><h3 class="code-header in-band">impl <a class="struct" href="struct.PlayableScene.html" title="struct game_logic::scenes::player_interaction::PlayableScene">PlayableScene</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.new" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/scenes/player_interaction.rs.html#28-56" title="goto source code">[src]</a></div><a href="#method.new" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.new" class="fnname">new</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;raylib_handle: &amp;mut RaylibHandle, <br>&nbsp;&nbsp;&nbsp;&nbsp;thread: &amp;RaylibThread, <br>&nbsp;&nbsp;&nbsp;&nbsp;constants: &amp;<a class="struct" href="../../project_constants/struct.ProjectConstants.html" title="struct game_logic::project_constants::ProjectConstants">ProjectConstants</a><br>) -&gt; Self</h4></div></summary><div class="docblock"><p>Construct a new <code>PlayableScene</code></p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.render_frame" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/scenes/player_interaction.rs.html#59-101" title="goto source code">[src]</a></div><a href="#method.render_frame" class="anchor"></a><h4 class="code-header">pub async fn <a href="#method.render_frame" class="fnname">render_frame</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;&amp;mut self, <br>&nbsp;&nbsp;&nbsp;&nbsp;raylib: &amp;mut RaylibHandle, <br>&nbsp;&nbsp;&nbsp;&nbsp;rl_thread: &amp;RaylibThread, <br>&nbsp;&nbsp;&nbsp;&nbsp;discord: &amp;Sender&lt;<a class="enum" href="../../discord/signal/enum.DiscordRpcSignal.html" title="enum game_logic::discord::signal::DiscordRpcSignal">DiscordRpcSignal</a>&gt;, <br>&nbsp;&nbsp;&nbsp;&nbsp;global_resources: &amp;<a class="struct" href="../../global_resource_package/struct.GlobalResources.html" title="struct game_logic::global_resource_package::GlobalResources">GlobalResources</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;constants: &amp;<a class="struct" href="../../project_constants/struct.ProjectConstants.html" title="struct game_logic::project_constants::ProjectConstants">ProjectConstants</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;audio_subsystem: &amp;mut RaylibAudio<br>)</h4></div></summary><div class="docblock"><p>Handler for each frame</p>
</div></details><div id="method.draw_world" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/scenes/player_interaction.rs.html#103-120" title="goto source code">[src]</a></div><a href="#method.draw_world" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.draw_world" class="fnname">draw_world</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;&amp;mut self, <br>&nbsp;&nbsp;&nbsp;&nbsp;draw: &amp;mut RaylibDrawHandle&lt;'_&gt;, <br>&nbsp;&nbsp;&nbsp;&nbsp;constants: &amp;<a class="struct" href="../../project_constants/struct.ProjectConstants.html" title="struct game_logic::project_constants::ProjectConstants">ProjectConstants</a><br>)</h4></div><div id="method.draw_ui" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/scenes/player_interaction.rs.html#122-131" title="goto source code">[src]</a></div><a href="#method.draw_ui" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.draw_ui" class="fnname">draw_ui</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;&amp;mut self, <br>&nbsp;&nbsp;&nbsp;&nbsp;draw: &amp;mut RaylibDrawHandle&lt;'_&gt;, <br>&nbsp;&nbsp;&nbsp;&nbsp;constants: &amp;<a class="struct" href="../../project_constants/struct.ProjectConstants.html" title="struct game_logic::project_constants::ProjectConstants">ProjectConstants</a><br>)</h4></div><div id="method.update_physics" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/scenes/player_interaction.rs.html#134-184" title="goto source code">[src]</a></div><a href="#method.update_physics" class="anchor"></a><h4 class="code-header">pub async fn <a href="#method.update_physics" class="fnname">update_physics</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;&amp;mut self, <br>&nbsp;&nbsp;&nbsp;&nbsp;raylib: &amp;RaylibHandle, <br>&nbsp;&nbsp;&nbsp;&nbsp;constants: &amp;<a class="struct" href="../../project_constants/struct.ProjectConstants.html" title="struct game_logic::project_constants::ProjectConstants">ProjectConstants</a><br>)</h4></div><div id="method.update_camera" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/scenes/player_interaction.rs.html#186-191" title="goto source code">[src]</a></div><a href="#method.update_camera" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.update_camera" class="fnname">update_camera</a>(&amp;mut self, raylib: &amp;RaylibHandle)</h4></div></div></details><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor"></a></h2><div id="trait-implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Debug" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/scenes/player_interaction.rs.html#16" title="goto source code">[src]</a></div><a href="#impl-Debug" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/fmt/trait.Debug.html" title="trait core::fmt::Debug">Debug</a> for <a class="struct" href="struct.PlayableScene.html" title="struct game_logic::scenes::player_interaction::PlayableScene">PlayableScene</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.fmt" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../../src/game_logic/scenes/player_interaction.rs.html#16" title="goto source code">[src]</a></div><a href="#method.fmt" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.59.0/core/fmt/trait.Debug.html#tymethod.fmt" class="fnname">fmt</a>(&amp;self, f: &amp;mut <a class="struct" href="https://doc.rust-lang.org/1.59.0/core/fmt/struct.Formatter.html" title="struct core::fmt::Formatter">Formatter</a>&lt;'_&gt;) -&gt; <a class="type" href="https://doc.rust-lang.org/1.59.0/core/fmt/type.Result.html" title="type core::fmt::Result">Result</a></h4></div></summary><div class='docblock'><p>Formats the value using the given formatter. <a href="https://doc.rust-lang.org/1.59.0/core/fmt/trait.Debug.html#tymethod.fmt">Read more</a></p>
</div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor"></a></h2><div id="synthetic-implementations-list"><div id="impl-RefUnwindSafe" class="impl has-srclink"><div class="rightside"></div><a href="#impl-RefUnwindSafe" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.PlayableScene.html" title="struct game_logic::scenes::player_interaction::PlayableScene">PlayableScene</a></h3></div><div id="impl-Send" class="impl has-srclink"><div class="rightside"></div><a href="#impl-Send" class="anchor"></a><h3 class="code-header in-band">impl !<a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.PlayableScene.html" title="struct game_logic::scenes::player_interaction::PlayableScene">PlayableScene</a></h3></div><div id="impl-Sync" class="impl has-srclink"><div class="rightside"></div><a href="#impl-Sync" class="anchor"></a><h3 class="code-header in-band">impl !<a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.PlayableScene.html" title="struct game_logic::scenes::player_interaction::PlayableScene">PlayableScene</a></h3></div><div id="impl-Unpin" class="impl has-srclink"><div class="rightside"></div><a href="#impl-Unpin" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.PlayableScene.html" title="struct game_logic::scenes::player_interaction::PlayableScene">PlayableScene</a></h3></div><div id="impl-UnwindSafe" class="impl has-srclink"><div class="rightside"></div><a href="#impl-UnwindSafe" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.PlayableScene.html" title="struct game_logic::scenes::player_interaction::PlayableScene">PlayableScene</a></h3></div></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor"></a></h2><div id="blanket-implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Any" class="impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/any.rs.html#132-136" title="goto source code">[src]</a></div><a href="#impl-Any" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.type_id" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/any.rs.html#133" title="goto source code">[src]</a></div><a href="#method.type_id" class="anchor"></a><h4 class="code-header">pub fn <a href="https://doc.rust-lang.org/1.59.0/core/any/trait.Any.html#tymethod.type_id" class="fnname">type_id</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.59.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></div></summary><div class='docblock'><p>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.59.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Borrow%3CT%3E" class="impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/borrow.rs.html#209-214" title="goto source code">[src]</a></div><a href="#impl-Borrow%3CT%3E" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;T&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: ?<a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.borrow" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/borrow.rs.html#211" title="goto source code">[src]</a></div><a href="#method.borrow" class="anchor"></a><h4 class="code-header">pub fn <a href="https://doc.rust-lang.org/1.59.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fnname">borrow</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.reference.html">&amp;</a>T</h4></div></summary><div class='docblock'><p>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.59.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-BorrowMut%3CT%3E" class="impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/borrow.rs.html#218-222" title="goto source code">[src]</a></div><a href="#impl-BorrowMut%3CT%3E" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a>&lt;T&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: ?<a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.borrow_mut" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/borrow.rs.html#219" title="goto source code">[src]</a></div><a href="#method.borrow_mut" class="anchor"></a><h4 class="code-header">pub fn <a href="https://doc.rust-lang.org/1.59.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fnname">borrow_mut</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.reference.html">&amp;mut </a>T</h4></div></summary><div class='docblock'><p>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.59.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-From%3CT%3E" class="impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/convert/mod.rs.html#550-554" title="goto source code">[src]</a></div><a href="#impl-From%3CT%3E" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for T</h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.from" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/convert/mod.rs.html#551" title="goto source code">[src]</a></div><a href="#method.from" class="anchor"></a><h4 class="code-header">pub fn <a href="https://doc.rust-lang.org/1.59.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(t: T) -&gt; T</h4></div></summary><div class='docblock'><p>Performs the conversion.</p>

View File

@ -1,17 +1,19 @@
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width, initial-scale=1.0"><meta name="generator" content="rustdoc"><meta name="description" content="Delegate for handling rendering. This is a struct to allow for stateful data (like sub-screens) to be set up"><meta name="keywords" content="rust, rustlang, rust-lang, SceneRenderDelegate"><title>SceneRenderDelegate in game_logic::scenes - Rust</title><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceSerif4-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../FiraSans-Regular.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../FiraSans-Medium.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceCodePro-Regular.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceSerif4-Bold.ttf.woff2"><link rel="preload" as="font" type="font/woff2" crossorigin href="../../SourceCodePro-Semibold.ttf.woff2"><link rel="stylesheet" type="text/css" href="../../normalize.css"><link rel="stylesheet" type="text/css" href="../../rustdoc.css" id="mainThemeStyle"><link rel="stylesheet" type="text/css" href="../../ayu.css" disabled><link rel="stylesheet" type="text/css" href="../../dark.css" disabled><link rel="stylesheet" type="text/css" href="../../light.css" id="themeStyle"><script id="default-settings" ></script><script src="../../storage.js"></script><script src="../../crates.js"></script><script defer src="../../main.js"></script>
<noscript><link rel="stylesheet" href="../../noscript.css"></noscript><link rel="alternate icon" type="image/png" href="../../favicon-16x16.png"><link rel="alternate icon" type="image/png" href="../../favicon-32x32.png"><link rel="icon" type="image/svg+xml" href="../../favicon.svg"></head><body class="rustdoc struct"><!--[if lte IE 11]><div class="warning">This old browser is unsupported and will most likely display funky things.</div><![endif]--><nav class="sidebar"><div class="sidebar-menu" role="button">&#9776;</div><a class="sidebar-logo" href="../../game_logic/index.html"><div class="logo-container"><img class="rust-logo" src="../../rust-logo.png" alt="logo"></div>
</a><h2 class="location">Struct SceneRenderDelegate</h2><div class="sidebar-elems"><div class="block items"><h3 class="sidebar-title"><a href="#fields">Fields</a></h3><div class="sidebar-links"><a href="#structfield.menu_control_signal">menu_control_signal</a><a href="#structfield.scene_main_menu">scene_main_menu</a><a href="#structfield.scene_playable">scene_playable</a><a href="#structfield.scene_test_fox">scene_test_fox</a></div><h3 class="sidebar-title"><a href="#implementations">Methods</a></h3><div class="sidebar-links"><a href="#method.on_game_start">on_game_start</a><a href="#method.process_ingame_frame">process_ingame_frame</a></div><h3 class="sidebar-title"><a href="#trait-implementations">Trait Implementations</a></h3><div class="sidebar-links"><a href="#impl-Drop">Drop</a></div><h3 class="sidebar-title"><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><div class="sidebar-links"><a href="#impl-RefUnwindSafe">RefUnwindSafe</a><a href="#impl-Send">Send</a><a href="#impl-Sync">Sync</a><a href="#impl-Unpin">Unpin</a><a href="#impl-UnwindSafe">UnwindSafe</a></div><h3 class="sidebar-title"><a href="#blanket-implementations">Blanket Implementations</a></h3><div class="sidebar-links"><a href="#impl-Any">Any</a><a href="#impl-Borrow%3CT%3E">Borrow&lt;T&gt;</a><a href="#impl-BorrowMut%3CT%3E">BorrowMut&lt;T&gt;</a><a href="#impl-From%3CT%3E">From&lt;T&gt;</a><a href="#impl-Instrument">Instrument</a><a href="#impl-Into%3CU%3E">Into&lt;U&gt;</a><a href="#impl-Same%3CT%3E">Same&lt;T&gt;</a><a href="#impl-SupersetOf%3CSS%3E">SupersetOf&lt;SS&gt;</a><a href="#impl-TryFrom%3CU%3E">TryFrom&lt;U&gt;</a><a href="#impl-TryInto%3CU%3E">TryInto&lt;U&gt;</a><a href="#impl-WithSubscriber">WithSubscriber</a></div></div><h2 class="location">Other items in<br><a href="../index.html">game_logic</a>::<wbr><a href="index.html">scenes</a></h2><div id="sidebar-vars" data-name="SceneRenderDelegate" data-ty="struct" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../game_logic/index.html"><img class="rust-logo" src="../../rust-logo.png" alt="logo"></a><nav class="sub"><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="18" height="18" alt="Pick another theme!" src="../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../settings.html" title="settings"><img width="18" height="18" alt="Change settings" src="../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">Struct <a href="../index.html">game_logic</a>::<wbr><a href="index.html">scenes</a>::<wbr><a class="struct" href="#">SceneRenderDelegate</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span><a class="srclink" href="../../src/game_logic/scenes/mod.rs.html#24-30" title="goto source code">[src]</a></span></h1><div class="docblock item-decl"><pre class="rust struct"><code>pub struct SceneRenderDelegate {
</a><h2 class="location">Struct SceneRenderDelegate</h2><div class="sidebar-elems"><div class="block items"><h3 class="sidebar-title"><a href="#fields">Fields</a></h3><div class="sidebar-links"><a href="#structfield.audio_subsystem">audio_subsystem</a><a href="#structfield.menu_control_signal">menu_control_signal</a><a href="#structfield.needs_exit">needs_exit</a><a href="#structfield.scene_main_menu">scene_main_menu</a><a href="#structfield.scene_playable">scene_playable</a><a href="#structfield.scene_test_fox">scene_test_fox</a></div><h3 class="sidebar-title"><a href="#implementations">Methods</a></h3><div class="sidebar-links"><a href="#method.on_game_start">on_game_start</a><a href="#method.process_ingame_frame">process_ingame_frame</a></div><h3 class="sidebar-title"><a href="#trait-implementations">Trait Implementations</a></h3><div class="sidebar-links"><a href="#impl-Drop">Drop</a></div><h3 class="sidebar-title"><a href="#synthetic-implementations">Auto Trait Implementations</a></h3><div class="sidebar-links"><a href="#impl-RefUnwindSafe">RefUnwindSafe</a><a href="#impl-Send">!Send</a><a href="#impl-Sync">!Sync</a><a href="#impl-Unpin">Unpin</a><a href="#impl-UnwindSafe">UnwindSafe</a></div><h3 class="sidebar-title"><a href="#blanket-implementations">Blanket Implementations</a></h3><div class="sidebar-links"><a href="#impl-Any">Any</a><a href="#impl-Borrow%3CT%3E">Borrow&lt;T&gt;</a><a href="#impl-BorrowMut%3CT%3E">BorrowMut&lt;T&gt;</a><a href="#impl-From%3CT%3E">From&lt;T&gt;</a><a href="#impl-Instrument">Instrument</a><a href="#impl-Into%3CU%3E">Into&lt;U&gt;</a><a href="#impl-Same%3CT%3E">Same&lt;T&gt;</a><a href="#impl-SupersetOf%3CSS%3E">SupersetOf&lt;SS&gt;</a><a href="#impl-TryFrom%3CU%3E">TryFrom&lt;U&gt;</a><a href="#impl-TryInto%3CU%3E">TryInto&lt;U&gt;</a><a href="#impl-WithSubscriber">WithSubscriber</a></div></div><h2 class="location">Other items in<br><a href="../index.html">game_logic</a>::<wbr><a href="index.html">scenes</a></h2><div id="sidebar-vars" data-name="SceneRenderDelegate" data-ty="struct" data-relpath=""></div><script defer src="sidebar-items.js"></script></div></nav><main><div class="width-limiter"><div class="sub-container"><a class="sub-logo-container" href="../../game_logic/index.html"><img class="rust-logo" src="../../rust-logo.png" alt="logo"></a><nav class="sub"><div class="theme-picker"><button id="theme-picker" aria-label="Pick another theme!" aria-haspopup="menu" title="themes"><img width="18" height="18" alt="Pick another theme!" src="../../brush.svg"></button><div id="theme-choices" role="menu"></div></div><form class="search-form"><div class="search-container"><div><select id="crate-search"><option value="All crates">All crates</option></select><input class="search-input" name="search" autocomplete="off" spellcheck="false" placeholder="Click or press S to search, ? for more options…" type="search"></div><button type="button" id="help-button" title="help">?</button><a id="settings-menu" href="../../settings.html" title="settings"><img width="18" height="18" alt="Change settings" src="../../wheel.svg"></a></div></form></nav></div><section id="main-content" class="content"><h1 class="fqn"><span class="in-band">Struct <a href="../index.html">game_logic</a>::<wbr><a href="index.html">scenes</a>::<wbr><a class="struct" href="#">SceneRenderDelegate</a><button id="copy-path" onclick="copy_path(this)" title="Copy item path to clipboard"><img src="../../clipboard.svg" width="19" height="18" alt="Copy item path"></button></span><span class="out-of-band"><span id="render-detail"><a id="toggle-all-docs" href="javascript:void(0)" title="collapse all docs">[<span class="inner">&#x2212;</span>]</a></span><a class="srclink" href="../../src/game_logic/scenes/mod.rs.html#24-32" title="goto source code">[src]</a></span></h1><div class="docblock item-decl"><pre class="rust struct"><code>pub struct SceneRenderDelegate {
menu_control_signal: <a class="enum" href="main_menu/enum.MenuStateSignal.html" title="enum game_logic::scenes::main_menu::MenuStateSignal">MenuStateSignal</a>,
pub needs_exit: <a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.bool.html">bool</a>,
audio_subsystem: RaylibAudio,
scene_test_fox: <a class="struct" href="test_fox/struct.TestFoxScene.html" title="struct game_logic::scenes::test_fox::TestFoxScene">TestFoxScene</a>,
scene_playable: <a class="struct" href="player_interaction/struct.PlayableScene.html" title="struct game_logic::scenes::player_interaction::PlayableScene">PlayableScene</a>,
scene_main_menu: <a class="struct" href="main_menu/struct.MainMenu.html" title="struct game_logic::scenes::main_menu::MainMenu">MainMenu</a>,
}</code></pre></div><details class="rustdoc-toggle top-doc" open><summary class="hideme"><span>Expand description</span></summary><div class="docblock"><p>Delegate for handling rendering.
This is a struct to allow for stateful data (like sub-screens) to be set up</p>
</div></details><h2 id="fields" class="fields small-section-header">Fields<a href="#fields" class="anchor"></a></h2><span id="structfield.menu_control_signal" class="structfield small-section-header"><a href="#structfield.menu_control_signal" class="anchor field"></a><code>menu_control_signal: <a class="enum" href="main_menu/enum.MenuStateSignal.html" title="enum game_logic::scenes::main_menu::MenuStateSignal">MenuStateSignal</a></code></span><span id="structfield.scene_test_fox" class="structfield small-section-header"><a href="#structfield.scene_test_fox" class="anchor field"></a><code>scene_test_fox: <a class="struct" href="test_fox/struct.TestFoxScene.html" title="struct game_logic::scenes::test_fox::TestFoxScene">TestFoxScene</a></code></span><span id="structfield.scene_playable" class="structfield small-section-header"><a href="#structfield.scene_playable" class="anchor field"></a><code>scene_playable: <a class="struct" href="player_interaction/struct.PlayableScene.html" title="struct game_logic::scenes::player_interaction::PlayableScene">PlayableScene</a></code></span><span id="structfield.scene_main_menu" class="structfield small-section-header"><a href="#structfield.scene_main_menu" class="anchor field"></a><code>scene_main_menu: <a class="struct" href="main_menu/struct.MainMenu.html" title="struct game_logic::scenes::main_menu::MainMenu">MainMenu</a></code></span><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor"></a></h2><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/game_logic/scenes/mod.rs.html#32-108" title="goto source code">[src]</a></div><a href="#impl" class="anchor"></a><h3 class="code-header in-band">impl <a class="struct" href="struct.SceneRenderDelegate.html" title="struct game_logic::scenes::SceneRenderDelegate">SceneRenderDelegate</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.on_game_start" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/game_logic/scenes/mod.rs.html#34-52" title="goto source code">[src]</a></div><a href="#method.on_game_start" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.on_game_start" class="fnname">on_game_start</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;raylib: &amp;mut RaylibHandle, <br>&nbsp;&nbsp;&nbsp;&nbsp;rl_thread: &amp;RaylibThread, <br>&nbsp;&nbsp;&nbsp;&nbsp;constants: &amp;<a class="struct" href="../project_constants/struct.ProjectConstants.html" title="struct game_logic::project_constants::ProjectConstants">ProjectConstants</a><br>) -&gt; Self</h4></div></summary><div class="docblock"><p>This is called when the game first loads</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.process_ingame_frame" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/game_logic/scenes/mod.rs.html#57-107" title="goto source code">[src]</a></div><a href="#method.process_ingame_frame" class="anchor"></a><h4 class="code-header">pub async fn <a href="#method.process_ingame_frame" class="fnname">process_ingame_frame</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;&amp;mut self, <br>&nbsp;&nbsp;&nbsp;&nbsp;raylib: &amp;mut RaylibHandle, <br>&nbsp;&nbsp;&nbsp;&nbsp;rl_thread: &amp;RaylibThread, <br>&nbsp;&nbsp;&nbsp;&nbsp;discord: &amp;Sender&lt;<a class="enum" href="../discord/signal/enum.DiscordRpcSignal.html" title="enum game_logic::discord::signal::DiscordRpcSignal">DiscordRpcSignal</a>&gt;, <br>&nbsp;&nbsp;&nbsp;&nbsp;global_resources: &amp;<a class="struct" href="../global_resource_package/struct.GlobalResources.html" title="struct game_logic::global_resource_package::GlobalResources">GlobalResources</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;constants: &amp;<a class="struct" href="../project_constants/struct.ProjectConstants.html" title="struct game_logic::project_constants::ProjectConstants">ProjectConstants</a><br>)</h4></div></summary><div class="docblock"><p>This is called every frame once the game has started.</p>
</div></details><h2 id="fields" class="fields small-section-header">Fields<a href="#fields" class="anchor"></a></h2><span id="structfield.menu_control_signal" class="structfield small-section-header"><a href="#structfield.menu_control_signal" class="anchor field"></a><code>menu_control_signal: <a class="enum" href="main_menu/enum.MenuStateSignal.html" title="enum game_logic::scenes::main_menu::MenuStateSignal">MenuStateSignal</a></code></span><span id="structfield.needs_exit" class="structfield small-section-header"><a href="#structfield.needs_exit" class="anchor field"></a><code>needs_exit: <a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.bool.html">bool</a></code></span><span id="structfield.audio_subsystem" class="structfield small-section-header"><a href="#structfield.audio_subsystem" class="anchor field"></a><code>audio_subsystem: RaylibAudio</code></span><span id="structfield.scene_test_fox" class="structfield small-section-header"><a href="#structfield.scene_test_fox" class="anchor field"></a><code>scene_test_fox: <a class="struct" href="test_fox/struct.TestFoxScene.html" title="struct game_logic::scenes::test_fox::TestFoxScene">TestFoxScene</a></code></span><span id="structfield.scene_playable" class="structfield small-section-header"><a href="#structfield.scene_playable" class="anchor field"></a><code>scene_playable: <a class="struct" href="player_interaction/struct.PlayableScene.html" title="struct game_logic::scenes::player_interaction::PlayableScene">PlayableScene</a></code></span><span id="structfield.scene_main_menu" class="structfield small-section-header"><a href="#structfield.scene_main_menu" class="anchor field"></a><code>scene_main_menu: <a class="struct" href="main_menu/struct.MainMenu.html" title="struct game_logic::scenes::main_menu::MainMenu">MainMenu</a></code></span><h2 id="implementations" class="small-section-header">Implementations<a href="#implementations" class="anchor"></a></h2><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/game_logic/scenes/mod.rs.html#34-121" title="goto source code">[src]</a></div><a href="#impl" class="anchor"></a><h3 class="code-header in-band">impl <a class="struct" href="struct.SceneRenderDelegate.html" title="struct game_logic::scenes::SceneRenderDelegate">SceneRenderDelegate</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.on_game_start" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/game_logic/scenes/mod.rs.html#36-58" title="goto source code">[src]</a></div><a href="#method.on_game_start" class="anchor"></a><h4 class="code-header">pub fn <a href="#method.on_game_start" class="fnname">on_game_start</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;raylib: &amp;mut RaylibHandle, <br>&nbsp;&nbsp;&nbsp;&nbsp;rl_thread: &amp;RaylibThread, <br>&nbsp;&nbsp;&nbsp;&nbsp;constants: &amp;<a class="struct" href="../project_constants/struct.ProjectConstants.html" title="struct game_logic::project_constants::ProjectConstants">ProjectConstants</a><br>) -&gt; Self</h4></div></summary><div class="docblock"><p>This is called when the game first loads</p>
</div></details><details class="rustdoc-toggle method-toggle" open><summary><div id="method.process_ingame_frame" class="method has-srclink"><div class="rightside"><a class="srclink" href="../../src/game_logic/scenes/mod.rs.html#63-120" title="goto source code">[src]</a></div><a href="#method.process_ingame_frame" class="anchor"></a><h4 class="code-header">pub async fn <a href="#method.process_ingame_frame" class="fnname">process_ingame_frame</a>(<br>&nbsp;&nbsp;&nbsp;&nbsp;&amp;mut self, <br>&nbsp;&nbsp;&nbsp;&nbsp;raylib: &amp;mut RaylibHandle, <br>&nbsp;&nbsp;&nbsp;&nbsp;rl_thread: &amp;RaylibThread, <br>&nbsp;&nbsp;&nbsp;&nbsp;discord: &amp;Sender&lt;<a class="enum" href="../discord/signal/enum.DiscordRpcSignal.html" title="enum game_logic::discord::signal::DiscordRpcSignal">DiscordRpcSignal</a>&gt;, <br>&nbsp;&nbsp;&nbsp;&nbsp;global_resources: &amp;<a class="struct" href="../global_resource_package/struct.GlobalResources.html" title="struct game_logic::global_resource_package::GlobalResources">GlobalResources</a>, <br>&nbsp;&nbsp;&nbsp;&nbsp;constants: &amp;<a class="struct" href="../project_constants/struct.ProjectConstants.html" title="struct game_logic::project_constants::ProjectConstants">ProjectConstants</a><br>)</h4></div></summary><div class="docblock"><p>This is called every frame once the game has started.</p>
<p>Keep in mind everything you do here will block the main thread (no loading files plz)</p>
</div></details></div></details><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor"></a></h2><div id="trait-implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Drop" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/game_logic/scenes/mod.rs.html#110-113" title="goto source code">[src]</a></div><a href="#impl-Drop" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/ops/drop/trait.Drop.html" title="trait core::ops::drop::Drop">Drop</a> for <a class="struct" href="struct.SceneRenderDelegate.html" title="struct game_logic::scenes::SceneRenderDelegate">SceneRenderDelegate</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.drop" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/game_logic/scenes/mod.rs.html#112" title="goto source code">[src]</a></div><a href="#method.drop" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.59.0/core/ops/drop/trait.Drop.html#tymethod.drop" class="fnname">drop</a>(&amp;mut self)</h4></div></summary><div class="docblock"><p>If you need anything to happen when the game closes, stick it here.</p>
</div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor"></a></h2><div id="synthetic-implementations-list"><div id="impl-RefUnwindSafe" class="impl has-srclink"><div class="rightside"></div><a href="#impl-RefUnwindSafe" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.SceneRenderDelegate.html" title="struct game_logic::scenes::SceneRenderDelegate">SceneRenderDelegate</a></h3></div><div id="impl-Send" class="impl has-srclink"><div class="rightside"></div><a href="#impl-Send" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.SceneRenderDelegate.html" title="struct game_logic::scenes::SceneRenderDelegate">SceneRenderDelegate</a></h3></div><div id="impl-Sync" class="impl has-srclink"><div class="rightside"></div><a href="#impl-Sync" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.SceneRenderDelegate.html" title="struct game_logic::scenes::SceneRenderDelegate">SceneRenderDelegate</a></h3></div><div id="impl-Unpin" class="impl has-srclink"><div class="rightside"></div><a href="#impl-Unpin" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.SceneRenderDelegate.html" title="struct game_logic::scenes::SceneRenderDelegate">SceneRenderDelegate</a></h3></div><div id="impl-UnwindSafe" class="impl has-srclink"><div class="rightside"></div><a href="#impl-UnwindSafe" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.SceneRenderDelegate.html" title="struct game_logic::scenes::SceneRenderDelegate">SceneRenderDelegate</a></h3></div></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor"></a></h2><div id="blanket-implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Any" class="impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/any.rs.html#132-136" title="goto source code">[src]</a></div><a href="#impl-Any" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.type_id" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/any.rs.html#133" title="goto source code">[src]</a></div><a href="#method.type_id" class="anchor"></a><h4 class="code-header">pub fn <a href="https://doc.rust-lang.org/1.59.0/core/any/trait.Any.html#tymethod.type_id" class="fnname">type_id</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.59.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></div></summary><div class='docblock'><p>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.59.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></p>
</div></details></div></details><h2 id="trait-implementations" class="small-section-header">Trait Implementations<a href="#trait-implementations" class="anchor"></a></h2><div id="trait-implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Drop" class="impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/game_logic/scenes/mod.rs.html#123-126" title="goto source code">[src]</a></div><a href="#impl-Drop" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/ops/drop/trait.Drop.html" title="trait core::ops::drop::Drop">Drop</a> for <a class="struct" href="struct.SceneRenderDelegate.html" title="struct game_logic::scenes::SceneRenderDelegate">SceneRenderDelegate</a></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.drop" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="../../src/game_logic/scenes/mod.rs.html#125" title="goto source code">[src]</a></div><a href="#method.drop" class="anchor"></a><h4 class="code-header">fn <a href="https://doc.rust-lang.org/1.59.0/core/ops/drop/trait.Drop.html#tymethod.drop" class="fnname">drop</a>(&amp;mut self)</h4></div></summary><div class="docblock"><p>If you need anything to happen when the game closes, stick it here.</p>
</div></details></div></details></div><h2 id="synthetic-implementations" class="small-section-header">Auto Trait Implementations<a href="#synthetic-implementations" class="anchor"></a></h2><div id="synthetic-implementations-list"><div id="impl-RefUnwindSafe" class="impl has-srclink"><div class="rightside"></div><a href="#impl-RefUnwindSafe" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/panic/unwind_safe/trait.RefUnwindSafe.html" title="trait core::panic::unwind_safe::RefUnwindSafe">RefUnwindSafe</a> for <a class="struct" href="struct.SceneRenderDelegate.html" title="struct game_logic::scenes::SceneRenderDelegate">SceneRenderDelegate</a></h3></div><div id="impl-Send" class="impl has-srclink"><div class="rightside"></div><a href="#impl-Send" class="anchor"></a><h3 class="code-header in-band">impl !<a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Send.html" title="trait core::marker::Send">Send</a> for <a class="struct" href="struct.SceneRenderDelegate.html" title="struct game_logic::scenes::SceneRenderDelegate">SceneRenderDelegate</a></h3></div><div id="impl-Sync" class="impl has-srclink"><div class="rightside"></div><a href="#impl-Sync" class="anchor"></a><h3 class="code-header in-band">impl !<a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Sync.html" title="trait core::marker::Sync">Sync</a> for <a class="struct" href="struct.SceneRenderDelegate.html" title="struct game_logic::scenes::SceneRenderDelegate">SceneRenderDelegate</a></h3></div><div id="impl-Unpin" class="impl has-srclink"><div class="rightside"></div><a href="#impl-Unpin" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Unpin.html" title="trait core::marker::Unpin">Unpin</a> for <a class="struct" href="struct.SceneRenderDelegate.html" title="struct game_logic::scenes::SceneRenderDelegate">SceneRenderDelegate</a></h3></div><div id="impl-UnwindSafe" class="impl has-srclink"><div class="rightside"></div><a href="#impl-UnwindSafe" class="anchor"></a><h3 class="code-header in-band">impl <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/panic/unwind_safe/trait.UnwindSafe.html" title="trait core::panic::unwind_safe::UnwindSafe">UnwindSafe</a> for <a class="struct" href="struct.SceneRenderDelegate.html" title="struct game_logic::scenes::SceneRenderDelegate">SceneRenderDelegate</a></h3></div></div><h2 id="blanket-implementations" class="small-section-header">Blanket Implementations<a href="#blanket-implementations" class="anchor"></a></h2><div id="blanket-implementations-list"><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Any" class="impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/any.rs.html#132-136" title="goto source code">[src]</a></div><a href="#impl-Any" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/any/trait.Any.html" title="trait core::any::Any">Any</a> for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: 'static + ?<a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.type_id" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/any.rs.html#133" title="goto source code">[src]</a></div><a href="#method.type_id" class="anchor"></a><h4 class="code-header">pub fn <a href="https://doc.rust-lang.org/1.59.0/core/any/trait.Any.html#tymethod.type_id" class="fnname">type_id</a>(&amp;self) -&gt; <a class="struct" href="https://doc.rust-lang.org/1.59.0/core/any/struct.TypeId.html" title="struct core::any::TypeId">TypeId</a></h4></div></summary><div class='docblock'><p>Gets the <code>TypeId</code> of <code>self</code>. <a href="https://doc.rust-lang.org/1.59.0/core/any/trait.Any.html#tymethod.type_id">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-Borrow%3CT%3E" class="impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/borrow.rs.html#209-214" title="goto source code">[src]</a></div><a href="#impl-Borrow%3CT%3E" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/borrow/trait.Borrow.html" title="trait core::borrow::Borrow">Borrow</a>&lt;T&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: ?<a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.borrow" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/borrow.rs.html#211" title="goto source code">[src]</a></div><a href="#method.borrow" class="anchor"></a><h4 class="code-header">pub fn <a href="https://doc.rust-lang.org/1.59.0/core/borrow/trait.Borrow.html#tymethod.borrow" class="fnname">borrow</a>(&amp;self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.reference.html">&amp;</a>T</h4></div></summary><div class='docblock'><p>Immutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.59.0/core/borrow/trait.Borrow.html#tymethod.borrow">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-BorrowMut%3CT%3E" class="impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/borrow.rs.html#218-222" title="goto source code">[src]</a></div><a href="#impl-BorrowMut%3CT%3E" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/borrow/trait.BorrowMut.html" title="trait core::borrow::BorrowMut">BorrowMut</a>&lt;T&gt; for T <span class="where fmt-newline">where<br>&nbsp;&nbsp;&nbsp;&nbsp;T: ?<a class="trait" href="https://doc.rust-lang.org/1.59.0/core/marker/trait.Sized.html" title="trait core::marker::Sized">Sized</a>,&nbsp;</span></h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.borrow_mut" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/borrow.rs.html#219" title="goto source code">[src]</a></div><a href="#method.borrow_mut" class="anchor"></a><h4 class="code-header">pub fn <a href="https://doc.rust-lang.org/1.59.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut" class="fnname">borrow_mut</a>(&amp;mut self) -&gt; <a class="primitive" href="https://doc.rust-lang.org/1.59.0/std/primitive.reference.html">&amp;mut </a>T</h4></div></summary><div class='docblock'><p>Mutably borrows from an owned value. <a href="https://doc.rust-lang.org/1.59.0/core/borrow/trait.BorrowMut.html#tymethod.borrow_mut">Read more</a></p>
</div></details></div></details><details class="rustdoc-toggle implementors-toggle" open><summary><div id="impl-From%3CT%3E" class="impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/convert/mod.rs.html#550-554" title="goto source code">[src]</a></div><a href="#impl-From%3CT%3E" class="anchor"></a><h3 class="code-header in-band">impl&lt;T&gt; <a class="trait" href="https://doc.rust-lang.org/1.59.0/core/convert/trait.From.html" title="trait core::convert::From">From</a>&lt;T&gt; for T</h3></div></summary><div class="impl-items"><details class="rustdoc-toggle method-toggle" open><summary><div id="method.from" class="method trait-impl has-srclink"><div class="rightside"><a class="srclink" href="https://doc.rust-lang.org/1.59.0/src/core/convert/mod.rs.html#551" title="goto source code">[src]</a></div><a href="#method.from" class="anchor"></a><h4 class="code-header">pub fn <a href="https://doc.rust-lang.org/1.59.0/core/convert/trait.From.html#tymethod.from" class="fnname">from</a>(t: T) -&gt; T</h4></div></summary><div class='docblock'><p>Performs the conversion.</p>

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -53,6 +53,6 @@
<span class="kw">mod</span> <span class="ident">sprite_types</span>;
<span class="kw">pub</span> <span class="kw">use</span> <span class="ident">sprite_types</span>::{<span class="ident">KnownSpriteType</span>, <span class="ident">load_known_sprite_types</span>};
<span class="kw">mod</span> <span class="ident">texture</span>;
<span class="kw">pub</span> <span class="kw">use</span> <span class="ident">texture</span>::{<span class="ident">load_texture_from_internal_data</span>, <span class="ident">ResourceLoadError</span>};</code></pre></div>
<span class="kw">pub</span> <span class="kw">use</span> <span class="ident">texture</span>::{<span class="ident">load_texture_from_internal_data</span>, <span class="ident">ResourceLoadError</span>, <span class="ident">load_music_from_internal_data</span>, <span class="ident">load_sound_from_internal_data</span>};</code></pre></div>
</section><section id="search" class="content hidden"></section></div></main><div id="rustdoc-vars" data-root-path="../../../" data-current-crate="game_logic" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.59.0 (9d1b2106e 2022-02-23)" ></div>
</body></html>

View File

@ -64,13 +64,88 @@
<span id="62"> 62</span>
<span id="63"> 63</span>
<span id="64"> 64</span>
<span id="65"> 65</span>
<span id="66"> 66</span>
<span id="67"> 67</span>
<span id="68"> 68</span>
<span id="69"> 69</span>
<span id="70"> 70</span>
<span id="71"> 71</span>
<span id="72"> 72</span>
<span id="73"> 73</span>
<span id="74"> 74</span>
<span id="75"> 75</span>
<span id="76"> 76</span>
<span id="77"> 77</span>
<span id="78"> 78</span>
<span id="79"> 79</span>
<span id="80"> 80</span>
<span id="81"> 81</span>
<span id="82"> 82</span>
<span id="83"> 83</span>
<span id="84"> 84</span>
<span id="85"> 85</span>
<span id="86"> 86</span>
<span id="87"> 87</span>
<span id="88"> 88</span>
<span id="89"> 89</span>
<span id="90"> 90</span>
<span id="91"> 91</span>
<span id="92"> 92</span>
<span id="93"> 93</span>
<span id="94"> 94</span>
<span id="95"> 95</span>
<span id="96"> 96</span>
<span id="97"> 97</span>
<span id="98"> 98</span>
<span id="99"> 99</span>
<span id="100">100</span>
<span id="101">101</span>
<span id="102">102</span>
<span id="103">103</span>
<span id="104">104</span>
<span id="105">105</span>
<span id="106">106</span>
<span id="107">107</span>
<span id="108">108</span>
<span id="109">109</span>
<span id="110">110</span>
<span id="111">111</span>
<span id="112">112</span>
<span id="113">113</span>
<span id="114">114</span>
<span id="115">115</span>
<span id="116">116</span>
<span id="117">117</span>
<span id="118">118</span>
<span id="119">119</span>
<span id="120">120</span>
<span id="121">121</span>
<span id="122">122</span>
<span id="123">123</span>
<span id="124">124</span>
<span id="125">125</span>
<span id="126">126</span>
<span id="127">127</span>
<span id="128">128</span>
<span id="129">129</span>
<span id="130">130</span>
<span id="131">131</span>
<span id="132">132</span>
<span id="133">133</span>
<span id="134">134</span>
<span id="135">135</span>
</pre><pre class="rust"><code><span class="doccomment">//! Code for loading textures from RAM to VRAM</span>
<span class="doccomment">//!</span>
<span class="doccomment">//! Largely coppied from last year: https://github.com/Ewpratten/ludum-dare-49/blob/master/game/src/utilities/datastore.rs</span>
<span class="kw">use</span> <span class="ident">std::path::Path</span>;
<span class="kw">use</span> <span class="ident">raylib</span>::{<span class="ident">texture::Texture2D</span>, <span class="ident">RaylibHandle</span>, <span class="ident">RaylibThread</span>};
<span class="kw">use</span> <span class="ident">raylib</span>::{
<span class="ident">audio</span>::{<span class="ident">Music</span>, <span class="ident">RaylibAudio</span>, <span class="ident">Sound</span>},
<span class="ident">texture::Texture2D</span>,
<span class="ident">RaylibHandle</span>, <span class="ident">RaylibThread</span>,
};
<span class="kw">use</span> <span class="ident">tempfile::tempdir</span>;
<span class="kw">use</span> <span class="ident"><span class="kw">crate</span>::asset_manager::InternalData</span>;
@ -128,6 +203,72 @@
<span class="prelude-val">Ok</span>(<span class="ident">texture</span>)
}
</code></pre></div>
<span class="kw">pub</span> <span class="kw">fn</span> <span class="ident">load_music_from_internal_data</span>(
<span class="ident">thread</span>: <span class="kw-2">&amp;</span><span class="ident">RaylibThread</span>,
<span class="ident">path</span>: <span class="kw-2">&amp;</span><span class="ident">str</span>,
) -&gt; <span class="prelude-ty">Result</span><span class="op">&lt;</span><span class="ident">Music</span>, <span class="ident">ResourceLoadError</span><span class="op">&gt;</span> {
<span class="comment">// Create a temp file path to work with</span>
<span class="kw">let</span> <span class="ident">temp_dir</span> <span class="op">=</span> <span class="ident">tempdir</span>()<span class="question-mark">?</span>;
<span class="macro">debug!</span>(
<span class="string">&quot;Created temporary directory for passing embedded data to Raylib: {}&quot;</span>,
<span class="ident">temp_dir</span>.<span class="ident">path</span>().<span class="ident">display</span>()
);
<span class="kw">let</span> <span class="ident">tmp_path</span> <span class="op">=</span> <span class="ident">temp_dir</span>.<span class="ident">path</span>().<span class="ident">join</span>(<span class="ident">Path::new</span>(<span class="ident">path</span>).<span class="ident">file_name</span>().<span class="ident">unwrap</span>());
<span class="comment">// Unpack the raw sound data to a real file on the local filesystem so raylib will read it correctly</span>
<span class="ident">std::fs::write</span>(
<span class="kw-2">&amp;</span><span class="ident">tmp_path</span>,
<span class="kw-2">&amp;</span><span class="ident">InternalData::get</span>(<span class="ident">path</span>)
.<span class="ident">ok_or</span>(<span class="ident">ResourceLoadError::AssetNotFound</span>(<span class="ident">path</span>.<span class="ident">to_string</span>()))<span class="question-mark">?</span>
.<span class="ident">data</span>,
)<span class="question-mark">?</span>;
<span class="comment">// Call through via FFI to re-load the file</span>
<span class="kw">let</span> <span class="ident">texture</span> <span class="op">=</span> <span class="ident">Music::load_music_stream</span>(<span class="ident">thread</span>, <span class="ident">tmp_path</span>.<span class="ident">to_str</span>().<span class="ident">unwrap</span>())
.<span class="ident">map_err</span>(<span class="ident">ResourceLoadError::Generic</span>)<span class="question-mark">?</span>;
<span class="comment">// Close the file</span>
<span class="macro">debug!</span>(
<span class="string">&quot;Dropping temporary directory: {}&quot;</span>,
<span class="ident">temp_dir</span>.<span class="ident">path</span>().<span class="ident">display</span>()
);
<span class="comment">// temp_dir.close()?;</span>
<span class="prelude-val">Ok</span>(<span class="ident">texture</span>)
}
<span class="kw">pub</span> <span class="kw">fn</span> <span class="ident">load_sound_from_internal_data</span>(
<span class="ident">path</span>: <span class="kw-2">&amp;</span><span class="ident">str</span>,
) -&gt; <span class="prelude-ty">Result</span><span class="op">&lt;</span><span class="ident">Sound</span>, <span class="ident">ResourceLoadError</span><span class="op">&gt;</span> {
<span class="comment">// Create a temp file path to work with</span>
<span class="kw">let</span> <span class="ident">temp_dir</span> <span class="op">=</span> <span class="ident">tempdir</span>()<span class="question-mark">?</span>;
<span class="macro">debug!</span>(
<span class="string">&quot;Created temporary directory for passing embedded data to Raylib: {}&quot;</span>,
<span class="ident">temp_dir</span>.<span class="ident">path</span>().<span class="ident">display</span>()
);
<span class="kw">let</span> <span class="ident">tmp_path</span> <span class="op">=</span> <span class="ident">temp_dir</span>.<span class="ident">path</span>().<span class="ident">join</span>(<span class="ident">Path::new</span>(<span class="ident">path</span>).<span class="ident">file_name</span>().<span class="ident">unwrap</span>());
<span class="comment">// Unpack the raw sound data to a real file on the local filesystem so raylib will read it correctly</span>
<span class="ident">std::fs::write</span>(
<span class="kw-2">&amp;</span><span class="ident">tmp_path</span>,
<span class="kw-2">&amp;</span><span class="ident">InternalData::get</span>(<span class="ident">path</span>)
.<span class="ident">ok_or</span>(<span class="ident">ResourceLoadError::AssetNotFound</span>(<span class="ident">path</span>.<span class="ident">to_string</span>()))<span class="question-mark">?</span>
.<span class="ident">data</span>,
)<span class="question-mark">?</span>;
<span class="comment">// Call through via FFI to re-load the file</span>
<span class="kw">let</span> <span class="ident">texture</span> <span class="op">=</span>
<span class="ident">Sound::load_sound</span>(<span class="ident">tmp_path</span>.<span class="ident">to_str</span>().<span class="ident">unwrap</span>()).<span class="ident">map_err</span>(<span class="ident">ResourceLoadError::Generic</span>)<span class="question-mark">?</span>;
<span class="comment">// Close the file</span>
<span class="macro">debug!</span>(
<span class="string">&quot;Dropping temporary directory: {}&quot;</span>,
<span class="ident">temp_dir</span>.<span class="ident">path</span>().<span class="ident">display</span>()
);
<span class="ident">temp_dir</span>.<span class="ident">close</span>()<span class="question-mark">?</span>;
<span class="prelude-val">Ok</span>(<span class="ident">texture</span>)
}</code></pre></div>
</section><section id="search" class="content hidden"></section></div></main><div id="rustdoc-vars" data-root-path="../../../" data-current-crate="game_logic" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.59.0 (9d1b2106e 2022-02-23)" ></div>
</body></html>

View File

@ -132,6 +132,11 @@
<span id="130">130</span>
<span id="131">131</span>
<span id="132">132</span>
<span id="133">133</span>
<span id="134">134</span>
<span id="135">135</span>
<span id="136">136</span>
<span id="137">137</span>
</pre><pre class="rust"><code><span class="doccomment">//! The Event Loop module</span>
<span class="doccomment">//!</span>
<span class="doccomment">//! ## Overview</span>
@ -245,6 +250,11 @@
<span class="ident">constants</span>,
)
.<span class="kw">await</span>;
<span class="comment">// Handle exiting the game</span>
<span class="kw">if</span> <span class="ident">render_delegate</span>.<span class="ident">needs_exit</span> {
<span class="kw">break</span>;
}
}
<span class="kw">_</span> =&gt; <span class="ident">backend_sm</span> <span class="op">=</span> <span class="ident">RenderBackendStates::sm_failed</span>(),
};

View File

@ -301,7 +301,7 @@
<span class="attribute">#[<span class="ident">derive</span>(<span class="ident">Debug</span>)]</span>
<span class="kw">pub</span> <span class="kw">struct</span> <span class="ident">MainMenu</span> {
<span class="ident">has_updated_discord_rpc</span>: <span class="ident">bool</span>,
<span class="kw">pub</span> <span class="ident">has_updated_discord_rpc</span>: <span class="ident">bool</span>,
}
<span class="kw">impl</span> <span class="ident">MainMenu</span> {

View File

@ -113,6 +113,19 @@
<span id="111">111</span>
<span id="112">112</span>
<span id="113">113</span>
<span id="114">114</span>
<span id="115">115</span>
<span id="116">116</span>
<span id="117">117</span>
<span id="118">118</span>
<span id="119">119</span>
<span id="120">120</span>
<span id="121">121</span>
<span id="122">122</span>
<span id="123">123</span>
<span id="124">124</span>
<span id="125">125</span>
<span id="126">126</span>
</pre><pre class="rust"><code><span class="doccomment">//! The render code for various scenes</span>
<span class="doccomment">//!</span>
<span class="doccomment">//! ## Overview</span>
@ -138,6 +151,8 @@
<span class="doccomment">/// This is a struct to allow for stateful data (like sub-screens) to be set up</span>
<span class="kw">pub</span> <span class="kw">struct</span> <span class="ident">SceneRenderDelegate</span> {
<span class="ident">menu_control_signal</span>: <span class="ident">MenuStateSignal</span>,
<span class="kw">pub</span> <span class="ident">needs_exit</span>: <span class="ident">bool</span>,
<span class="ident">audio_subsystem</span>: <span class="ident">RaylibAudio</span>,
<span class="comment">/* Scenes */</span>
<span class="ident">scene_test_fox</span>: <span class="ident">TestFoxScene</span>,
<span class="ident">scene_playable</span>: <span class="ident">PlayableScene</span>,
@ -151,7 +166,9 @@
<span class="ident">rl_thread</span>: <span class="kw-2">&amp;</span><span class="ident">RaylibThread</span>,
<span class="ident">constants</span>: <span class="kw-2">&amp;</span><span class="ident">ProjectConstants</span>,
) -&gt; <span class="self">Self</span> {
<span class="comment">// TODO: Stick any init code you want here.</span>
<span class="comment">// Set up audio</span>
<span class="kw">let</span> <span class="ident">audio_subsystem</span> <span class="op">=</span> <span class="ident">RaylibAudio::init_audio_device</span>();
<span class="ident">audio_subsystem</span>.<span class="ident">set_master_volume</span>(<span class="number">0.4</span>);
<span class="comment">// Init some scenes</span>
<span class="kw">let</span> <span class="ident">scene_test_fox</span> <span class="op">=</span> <span class="ident">TestFoxScene::new</span>(<span class="ident">raylib</span>, <span class="ident">rl_thread</span>);
@ -160,6 +177,8 @@
<span class="self">Self</span> {
<span class="ident">menu_control_signal</span>: <span class="ident">MenuStateSignal::DoMainMenu</span>,
<span class="ident">needs_exit</span>: <span class="bool-val">false</span>,
<span class="ident">audio_subsystem</span>,
<span class="ident">scene_test_fox</span>,
<span class="ident">scene_playable</span>,
<span class="ident">scene_main_menu</span>,
@ -177,22 +196,29 @@
<span class="ident">global_resources</span>: <span class="kw-2">&amp;</span><span class="ident">GlobalResources</span>,
<span class="ident">constants</span>: <span class="kw-2">&amp;</span><span class="ident">ProjectConstants</span>,
) {
<span class="comment">// Render the main menu if in it, otherwise, render the game</span>
<span class="kw">match</span> <span class="self">self</span>.<span class="ident">menu_control_signal</span> {
<span class="ident">MenuStateSignal::StartGame</span> =&gt; {
<span class="self">self</span>.<span class="ident">scene_playable</span>
.<span class="ident">render_frame</span>(<span class="ident">raylib</span>, <span class="ident">rl_thread</span>, <span class="kw-2">&amp;</span><span class="ident">discord</span>, <span class="ident">global_resources</span>, <span class="ident">constants</span>)
.<span class="kw">await</span>;
<span class="self">self</span>.<span class="ident">scene_playable</span>
.<span class="ident">update_physics</span>(<span class="ident">raylib</span>, <span class="ident">constants</span>)
.<span class="ident">render_frame</span>(<span class="ident">raylib</span>, <span class="ident">rl_thread</span>, <span class="kw-2">&amp;</span><span class="ident">discord</span>, <span class="ident">global_resources</span>, <span class="ident">constants</span>, <span class="kw-2">&amp;mut</span> <span class="self">self</span>.<span class="ident">audio_subsystem</span>)
.<span class="kw">await</span>;
<span class="self">self</span>.<span class="ident">scene_playable</span>.<span class="ident">update_physics</span>(<span class="ident">raylib</span>, <span class="ident">constants</span>).<span class="kw">await</span>;
<span class="comment">// Clear the menu system discord status</span>
<span class="self">self</span>.<span class="ident">scene_main_menu</span>.<span class="ident">has_updated_discord_rpc</span> <span class="op">=</span> <span class="bool-val">false</span>;
}
<span class="ident">MenuStateSignal::QuitGame</span> =&gt; {
<span class="self">self</span>.<span class="ident">needs_exit</span> <span class="op">=</span> <span class="bool-val">true</span>;
}
<span class="ident">MenuStateSignal::QuitGame</span> =&gt; <span class="macro">unimplemented!</span>(),
<span class="ident">MenuStateSignal::DoMainMenu</span> =&gt; {
<span class="self">self</span>.<span class="ident">menu_control_signal</span> <span class="op">=</span> <span class="self">self</span>
.<span class="ident">scene_main_menu</span>
.<span class="ident">render_main_menu_frame</span>(<span class="ident">raylib</span>, <span class="ident">rl_thread</span>, <span class="ident">discord</span>, <span class="ident">global_resources</span>, <span class="ident">constants</span>)
.<span class="kw">await</span>
.<span class="kw">await</span>;
<span class="comment">// Clear the ingame discord status</span>
<span class="self">self</span>.<span class="ident">scene_playable</span>.<span class="ident">has_updated_discord_rpc</span> <span class="op">=</span> <span class="bool-val">false</span>;
}
<span class="ident">MenuStateSignal::DoOptions</span> =&gt; {
<span class="self">self</span>.<span class="ident">menu_control_signal</span> <span class="op">=</span> <span class="self">self</span>

View File

@ -187,6 +187,11 @@
<span id="185">185</span>
<span id="186">186</span>
<span id="187">187</span>
<span id="188">188</span>
<span id="189">189</span>
<span id="190">190</span>
<span id="191">191</span>
<span id="192">192</span>
</pre><pre class="rust"><code><span class="doccomment">//! This scene encompasses all of the game where the player can walk around.</span>
<span class="kw">use</span> <span class="ident">nalgebra</span> <span class="kw">as</span> <span class="ident">na</span>;
@ -194,6 +199,7 @@
<span class="kw">use</span> <span class="ident">std::time::SystemTime</span>;
<span class="kw">use</span> <span class="kw">crate</span>::{
<span class="ident">asset_manager</span>::{<span class="ident">load_music_from_internal_data</span>, <span class="ident">load_sound_from_internal_data</span>},
<span class="ident">discord</span>::{<span class="ident">DiscordChannel</span>, <span class="ident">DiscordRpcSignal</span>},
<span class="ident">global_resource_package::GlobalResources</span>,
<span class="ident">model::player::Player</span>,
@ -203,40 +209,43 @@
<span class="attribute">#[<span class="ident">derive</span>(<span class="ident">Debug</span>)]</span>
<span class="kw">pub</span> <span class="kw">struct</span> <span class="ident">PlayableScene</span> {
<span class="ident">has_updated_discord_rpc</span>: <span class="ident">bool</span>,
<span class="kw">pub</span> <span class="ident">has_updated_discord_rpc</span>: <span class="ident">bool</span>,
<span class="ident">player</span>: <span class="ident">Player</span>,
<span class="ident">world_map</span>: <span class="ident">MapRenderer</span>,
<span class="ident">camera</span>: <span class="ident">raylib::camera::Camera2D</span>,
<span class="ident">last_update</span>: <span class="ident">SystemTime</span>,
<span class="ident">game_soundtrack</span>: <span class="ident">Music</span>,
}
<span class="kw">impl</span> <span class="ident">PlayableScene</span> {
<span class="doccomment">/// Construct a new `PlayableScene`</span>
<span class="kw">pub</span> <span class="kw">fn</span> <span class="ident">new</span>(
<span class="ident">raylib_handle</span>: <span class="kw-2">&amp;mut</span> <span class="ident">raylib::RaylibHandle</span>,
<span class="ident">thread</span>: <span class="op">&amp;</span> <span class="ident">raylib::RaylibThread</span>,
<span class="ident">thread</span>: <span class="kw-2">&amp;</span><span class="ident">raylib::RaylibThread</span>,
<span class="ident">constants</span>: <span class="kw-2">&amp;</span><span class="ident">ProjectConstants</span>,
) -&gt; <span class="self">Self</span> {
<span class="kw">let</span> <span class="ident">map_renderer</span> <span class="op">=</span> <span class="ident">MapRenderer::new</span>(<span class="string">&quot;map_gameMap.tmx&quot;</span>, <span class="string">&quot;map_gameMap.objects.json&quot;</span>, <span class="ident">raylib_handle</span>, <span class="ident">thread</span>).<span class="ident">unwrap</span>();
<span class="comment">// Load the game music</span>
<span class="kw">let</span> <span class="ident">game_soundtrack</span> <span class="op">=</span>
<span class="ident">load_music_from_internal_data</span>(<span class="ident">thread</span>, <span class="string">&quot;assets/audio/gameSoundtrack.mp3&quot;</span>).<span class="ident">unwrap</span>();
<span class="self">Self</span> {
<span class="ident">has_updated_discord_rpc</span>: <span class="bool-val">false</span>,
<span class="ident">player</span>: <span class="ident">Player::new</span>(<span class="ident">na::Vector2::new</span>(<span class="number">10.0</span>, <span class="number">10.0</span>)),
<span class="ident">world_map</span>: <span class="ident">map_renderer</span>,
<span class="ident">camera</span>: <span class="ident">raylib::camera::Camera2D</span> {
<span class="ident">target</span>: <span class="ident">raylib::math::Vector2</span> {
<span class="ident">x</span>: <span class="number">0.0</span>,
<span class="ident">y</span>: <span class="number">0.0</span>,
},
<span class="ident">target</span>: <span class="ident">raylib::math::Vector2</span> { <span class="ident">x</span>: <span class="number">0.0</span>, <span class="ident">y</span>: <span class="number">0.0</span> },
<span class="ident">offset</span>: <span class="ident">raylib::math::Vector2</span> {
<span class="ident">x</span>: (<span class="ident">constants</span>.<span class="ident">base_window_size</span>.<span class="number">0</span> <span class="kw">as</span> <span class="ident">f32</span> <span class="op">/</span> <span class="number">2.0</span>),
<span class="ident">y</span>: (<span class="ident">constants</span>.<span class="ident">base_window_size</span>.<span class="number">1</span> <span class="kw">as</span> <span class="ident">f32</span> <span class="op">/</span> <span class="number">2.0</span>)
<span class="ident">y</span>: (<span class="ident">constants</span>.<span class="ident">base_window_size</span>.<span class="number">1</span> <span class="kw">as</span> <span class="ident">f32</span> <span class="op">/</span> <span class="number">2.0</span>),
},
<span class="ident">rotation</span>: <span class="number">0.0</span>,
<span class="ident">zoom</span>: <span class="number">1.0</span>
<span class="ident">zoom</span>: <span class="number">1.0</span>,
},
<span class="ident">last_update</span>: <span class="ident">SystemTime::UNIX_EPOCH</span>
<span class="ident">last_update</span>: <span class="ident">SystemTime::UNIX_EPOCH</span>,
<span class="ident">game_soundtrack</span>,
}
}
@ -248,6 +257,7 @@
<span class="ident">discord</span>: <span class="kw-2">&amp;</span><span class="ident">DiscordChannel</span>,
<span class="ident">global_resources</span>: <span class="kw-2">&amp;</span><span class="ident">GlobalResources</span>,
<span class="ident">constants</span>: <span class="kw-2">&amp;</span><span class="ident">ProjectConstants</span>,
<span class="ident">audio_subsystem</span>: <span class="kw-2">&amp;mut</span> <span class="ident">RaylibAudio</span>,
) {
<span class="comment">// Handle updating discord RPC</span>
<span class="kw">if</span> <span class="op">!</span><span class="self">self</span>.<span class="ident">has_updated_discord_rpc</span> {
@ -265,6 +275,14 @@
<span class="self">self</span>.<span class="ident">has_updated_discord_rpc</span> <span class="op">=</span> <span class="bool-val">true</span>;
}
<span class="comment">// Ensure the game soundtrack is playing</span>
<span class="kw">if</span> <span class="op">!</span><span class="ident">audio_subsystem</span>.<span class="ident">is_music_playing</span>(<span class="kw-2">&amp;</span><span class="self">self</span>.<span class="ident">game_soundtrack</span>) {
<span class="macro">debug!</span>(<span class="string">&quot;Playing game soundtrack&quot;</span>);
<span class="ident">audio_subsystem</span>.<span class="ident">play_music_stream</span>(<span class="kw-2">&amp;mut</span> <span class="self">self</span>.<span class="ident">game_soundtrack</span>);
} <span class="kw">else</span> {
<span class="ident">audio_subsystem</span>.<span class="ident">update_music_stream</span>(<span class="kw-2">&amp;mut</span> <span class="self">self</span>.<span class="ident">game_soundtrack</span>);
}
<span class="comment">// Get a drawing handle</span>
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">draw</span> <span class="op">=</span> <span class="ident">raylib</span>.<span class="ident">begin_drawing</span>(<span class="ident">rl_thread</span>);
@ -276,15 +294,12 @@
<span class="self">self</span>.<span class="ident">draw_ui</span>(<span class="kw-2">&amp;mut</span> <span class="ident">draw</span>, <span class="ident">constants</span>);
}
<span class="kw">pub</span> <span class="kw">fn</span> <span class="ident">draw_world</span>(
<span class="kw-2">&amp;mut</span> <span class="self">self</span>,
<span class="ident">draw</span>: <span class="kw-2">&amp;mut</span> <span class="ident">RaylibDrawHandle</span>,
<span class="ident">constants</span>: <span class="kw-2">&amp;</span><span class="ident">ProjectConstants</span>,
) {
<span class="kw">pub</span> <span class="kw">fn</span> <span class="ident">draw_world</span>(<span class="kw-2">&amp;mut</span> <span class="self">self</span>, <span class="ident">draw</span>: <span class="kw-2">&amp;mut</span> <span class="ident">RaylibDrawHandle</span>, <span class="ident">constants</span>: <span class="kw-2">&amp;</span><span class="ident">ProjectConstants</span>) {
<span class="comment">// Begin camera mode</span>
<span class="kw">let</span> <span class="kw-2">mut</span> <span class="ident">ctx2d</span> <span class="op">=</span> <span class="ident">draw</span>.<span class="ident">begin_mode2D</span>(<span class="self">self</span>.<span class="ident">camera</span>);
<span class="comment">// Render the map</span>
<span class="self">self</span>.<span class="ident">world_map</span>.<span class="ident">render_map</span>(<span class="kw-2">&amp;mut</span> <span class="ident">ctx2d</span>, <span class="kw-2">&amp;</span><span class="self">self</span>.<span class="ident">camera</span>, <span class="bool-val">true</span>, <span class="self">self</span>.<span class="ident">player</span>.<span class="ident">position</span>);
<span class="kw">let</span> <span class="ident">player_size</span> <span class="op">=</span> (<span class="ident">constants</span>.<span class="ident">tile_size</span> <span class="kw">as</span> <span class="ident">f32</span> <span class="op">*</span> <span class="ident">constants</span>.<span class="ident">player</span>.<span class="ident">start_size</span> <span class="op">*</span> <span class="self">self</span>.<span class="ident">player</span>.<span class="ident">size</span>) <span class="kw">as</span> <span class="ident">i32</span>;
@ -294,45 +309,42 @@
<span class="self">self</span>.<span class="ident">player</span>.<span class="ident">position</span>[<span class="number">1</span>] <span class="kw">as</span> <span class="ident">i32</span> <span class="op">*</span> <span class="op">-</span><span class="number">1</span> <span class="op">-</span> <span class="ident">player_size</span> <span class="op">/</span> <span class="number">2</span>,
<span class="ident">player_size</span>,
<span class="ident">player_size</span>,
<span class="ident">Color::LIGHTBLUE</span>
<span class="ident">Color::LIGHTBLUE</span>,
);
}
<span class="kw">pub</span> <span class="kw">fn</span> <span class="ident">draw_ui</span>(
<span class="kw-2">&amp;mut</span> <span class="self">self</span>,
<span class="ident">draw</span>: <span class="kw-2">&amp;mut</span> <span class="ident">RaylibDrawHandle</span>,
<span class="ident">constants</span>: <span class="kw-2">&amp;</span><span class="ident">ProjectConstants</span>,
) {
<span class="ident">draw</span>.<span class="ident">draw_rectangle</span>(
<span class="ident">draw</span>.<span class="ident">get_screen_width</span>() <span class="op">/</span> <span class="number">2</span> <span class="op">-</span> <span class="number">225</span>, <span class="number">0</span>,
<span class="number">450</span>, <span class="number">40</span>,
<span class="ident">Color::WHITE</span>
);
<span class="kw">pub</span> <span class="kw">fn</span> <span class="ident">draw_ui</span>(<span class="kw-2">&amp;mut</span> <span class="self">self</span>, <span class="ident">draw</span>: <span class="kw-2">&amp;mut</span> <span class="ident">RaylibDrawHandle</span>, <span class="ident">constants</span>: <span class="kw-2">&amp;</span><span class="ident">ProjectConstants</span>) {
<span class="ident">draw</span>.<span class="ident">draw_rectangle</span>(<span class="ident">draw</span>.<span class="ident">get_screen_width</span>() <span class="op">/</span> <span class="number">2</span> <span class="op">-</span> <span class="number">225</span>, <span class="number">0</span>, <span class="number">450</span>, <span class="number">40</span>, <span class="ident">Color::WHITE</span>);
<span class="ident">draw</span>.<span class="ident">draw_text</span>(
<span class="string">&quot;Unregistered HyperCam 2&quot;</span>,
<span class="ident">draw</span>.<span class="ident">get_screen_width</span>() <span class="op">/</span> <span class="number">2</span> <span class="op">-</span> <span class="number">215</span>, <span class="number">0</span>,
<span class="number">32</span>, <span class="ident">Color::BLACK</span>
<span class="ident">draw</span>.<span class="ident">get_screen_width</span>() <span class="op">/</span> <span class="number">2</span> <span class="op">-</span> <span class="number">215</span>,
<span class="number">0</span>,
<span class="number">32</span>,
<span class="ident">Color::BLACK</span>,
);
}
<span class="comment">// Physics</span>
<span class="kw">pub</span> <span class="kw">async</span> <span class="kw">fn</span> <span class="ident">update_physics</span>(
<span class="kw-2">&amp;mut</span> <span class="self">self</span>,
<span class="ident">raylib</span>: <span class="op">&amp;</span> <span class="ident">raylib::RaylibHandle</span>,
<span class="ident">raylib</span>: <span class="kw-2">&amp;</span><span class="ident">raylib::RaylibHandle</span>,
<span class="ident">constants</span>: <span class="kw-2">&amp;</span><span class="ident">ProjectConstants</span>,
) {
<span class="comment">// Get time since last physics update</span>
<span class="kw">let</span> <span class="ident">time</span> <span class="op">=</span> <span class="ident">SystemTime::now</span>();
<span class="kw">let</span> <span class="ident">elapsed</span> <span class="op">=</span> <span class="ident">time</span>.<span class="ident">duration_since</span>(<span class="self">self</span>.<span class="ident">last_update</span>).<span class="ident">expect</span>(<span class="string">&quot;Time Appears to Have Moved Backwards!&quot;</span>);
<span class="kw">let</span> <span class="ident">elapsed</span> <span class="op">=</span> <span class="ident">time</span>
.<span class="ident">duration_since</span>(<span class="self">self</span>.<span class="ident">last_update</span>)
.<span class="ident">expect</span>(<span class="string">&quot;Time Appears to Have Moved Backwards!&quot;</span>);
<span class="self">self</span>.<span class="ident">last_update</span> <span class="op">=</span> <span class="ident">time</span>;
<span class="kw">let</span> <span class="ident">delta_time</span> <span class="op">=</span> <span class="ident">elapsed</span>.<span class="ident">as_millis</span>() <span class="kw">as</span> <span class="ident">f32</span> <span class="op">/</span> <span class="number">1000.0</span>; <span class="comment">// Physics will be scaled by this value</span>
<span class="kw">let</span> <span class="ident">player</span> <span class="op">=</span> <span class="kw-2">&amp;mut</span> <span class="self">self</span>.<span class="ident">player</span>;
<span class="comment">// Get input direction components</span>
<span class="kw">let</span> <span class="ident">h_axis</span> <span class="op">=</span> <span class="ident">raylib</span>.<span class="ident">is_key_down</span>(<span class="ident">KeyboardKey::KEY_D</span>) <span class="kw">as</span> <span class="ident">i8</span> <span class="op">-</span> <span class="ident">raylib</span>.<span class="ident">is_key_down</span>(<span class="ident">KeyboardKey::KEY_A</span>) <span class="kw">as</span> <span class="ident">i8</span>;
<span class="kw">let</span> <span class="ident">v_axis</span> <span class="op">=</span> <span class="ident">raylib</span>.<span class="ident">is_key_down</span>(<span class="ident">KeyboardKey::KEY_W</span>) <span class="kw">as</span> <span class="ident">i8</span> <span class="op">-</span> <span class="ident">raylib</span>.<span class="ident">is_key_down</span>(<span class="ident">KeyboardKey::KEY_S</span>) <span class="kw">as</span> <span class="ident">i8</span>;
<span class="kw">let</span> <span class="ident">h_axis</span> <span class="op">=</span> <span class="ident">raylib</span>.<span class="ident">is_key_down</span>(<span class="ident">KeyboardKey::KEY_D</span>) <span class="kw">as</span> <span class="ident">i8</span>
<span class="op">-</span> <span class="ident">raylib</span>.<span class="ident">is_key_down</span>(<span class="ident">KeyboardKey::KEY_A</span>) <span class="kw">as</span> <span class="ident">i8</span>;
<span class="kw">let</span> <span class="ident">v_axis</span> <span class="op">=</span> <span class="ident">raylib</span>.<span class="ident">is_key_down</span>(<span class="ident">KeyboardKey::KEY_W</span>) <span class="kw">as</span> <span class="ident">i8</span>
<span class="op">-</span> <span class="ident">raylib</span>.<span class="ident">is_key_down</span>(<span class="ident">KeyboardKey::KEY_S</span>) <span class="kw">as</span> <span class="ident">i8</span>;
<span class="kw">if</span> <span class="ident">h_axis</span> <span class="op">!</span><span class="op">=</span> <span class="number">0</span> <span class="op">|</span><span class="op">|</span> <span class="ident">v_axis</span> <span class="op">!</span><span class="op">=</span> <span class="number">0</span> {
<span class="comment">// Normalize input and accelerate in desired direction</span>
<span class="kw">let</span> <span class="ident">direction</span> <span class="op">=</span> <span class="ident">na::Vector2::new</span>(<span class="ident">h_axis</span> <span class="kw">as</span> <span class="ident">f32</span>, <span class="ident">v_axis</span> <span class="kw">as</span> <span class="ident">f32</span>).<span class="ident">normalize</span>();
@ -353,8 +365,11 @@
}
<span class="kw">if</span> ((<span class="ident">constants</span>.<span class="ident">player</span>.<span class="ident">max_velocity</span> <span class="op">*</span> <span class="ident">constants</span>.<span class="ident">tile_size</span>) <span class="kw">as</span> <span class="ident">f32</span>)
<span class="op">&lt;</span> <span class="ident">player</span>.<span class="ident">velocity</span>.<span class="ident">magnitude</span>() {
<span class="ident">player</span>.<span class="ident">velocity</span>.<span class="ident">set_magnitude</span>((<span class="ident">constants</span>.<span class="ident">player</span>.<span class="ident">max_velocity</span> <span class="op">*</span> <span class="ident">constants</span>.<span class="ident">tile_size</span>) <span class="kw">as</span> <span class="ident">f32</span>);
<span class="op">&lt;</span> <span class="ident">player</span>.<span class="ident">velocity</span>.<span class="ident">magnitude</span>()
{
<span class="ident">player</span>
.<span class="ident">velocity</span>
.<span class="ident">set_magnitude</span>((<span class="ident">constants</span>.<span class="ident">player</span>.<span class="ident">max_velocity</span> <span class="op">*</span> <span class="ident">constants</span>.<span class="ident">tile_size</span>) <span class="kw">as</span> <span class="ident">f32</span>);
}
<span class="ident">player</span>.<span class="ident">position</span> <span class="op">+</span><span class="op">=</span> <span class="kw-2">&amp;</span><span class="ident">player</span>.<span class="ident">velocity</span> <span class="op">*</span> <span class="ident">delta_time</span>;
@ -362,18 +377,13 @@
<span class="self">self</span>.<span class="ident">update_camera</span>(<span class="ident">raylib</span>);
}
<span class="kw">pub</span> <span class="kw">fn</span> <span class="ident">update_camera</span>(
<span class="kw-2">&amp;mut</span> <span class="self">self</span>,
<span class="ident">raylib</span>: <span class="op">&amp;</span> <span class="ident">raylib::RaylibHandle</span>,
) {
<span class="kw">pub</span> <span class="kw">fn</span> <span class="ident">update_camera</span>(<span class="kw-2">&amp;mut</span> <span class="self">self</span>, <span class="ident">raylib</span>: <span class="kw-2">&amp;</span><span class="ident">raylib::RaylibHandle</span>) {
<span class="self">self</span>.<span class="ident">camera</span>.<span class="ident">target</span> <span class="op">=</span> <span class="self">self</span>.<span class="ident">player</span>.<span class="ident">position</span>.<span class="ident">into</span>();
<span class="self">self</span>.<span class="ident">camera</span>.<span class="ident">target</span>.<span class="ident">y</span> <span class="kw-2">*</span><span class="op">=</span> <span class="op">-</span><span class="number">1.0</span>;
<span class="self">self</span>.<span class="ident">camera</span>.<span class="ident">offset</span>.<span class="ident">x</span> <span class="op">=</span> <span class="ident">raylib</span>.<span class="ident">get_screen_width</span>() <span class="kw">as</span> <span class="ident">f32</span> <span class="op">/</span> <span class="number">2.0</span>;
<span class="self">self</span>.<span class="ident">camera</span>.<span class="ident">offset</span>.<span class="ident">y</span> <span class="op">=</span> <span class="ident">raylib</span>.<span class="ident">get_screen_height</span>() <span class="kw">as</span> <span class="ident">f32</span> <span class="op">/</span> <span class="number">2.0</span>;
}
}
</code></pre></div>
</section><section id="search" class="content hidden"></section></div></main><div id="rustdoc-vars" data-root-path="../../../" data-current-crate="game_logic" data-themes="ayu,dark,light" data-resource-suffix="" data-rustdoc-version="1.59.0 (9d1b2106e 2022-02-23)" ></div>
</body></html>