This repository has been archived on 2022-04-04. You can view files and clone it, but cannot push or open issues or pull requests.

30 lines
8.8 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!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 file is the main entry point for the game logic."><meta name="keywords" content="rust, rustlang, rust-lang, game_logic"><title>game_logic - 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 crate"><!--[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">Crate game_logic</h2><div class="block version"><div class="narrow-helper"></div><p>Version 0.1.0</p></div><div class="sidebar-elems"><a id="all-types" href="all.html"><p>See all game_logic's items</p></a><div class="block items"><ul><li><a href="#modules">Modules</a></li><li><a href="#functions">Functions</a></li></ul></div><div id="sidebar-vars" data-name="game_logic" 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">Crate <a class="mod" href="#">game_logic</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/lib.rs.html#1-100" 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 file is the main entry point for the game logic.</p>
<h3 id="overview" class="section-header"><a href="#overview">Overview</a></h3>
<p>The main function in this module is <code>entrypoint()</code>. This is called from <code>desktop_wrapper</code> to start the game.</p>
<p>This module also includes all the other sub-modules of the game. If you are viewing this document from the web, click on the modules below to see more info.</p>
<h3 id="programming-guide" class="section-header"><a href="#programming-guide">Programming Guide</a></h3>
<p>The game code is split into two parts: the core code, and the actual game logic.</p>
<p><a href="https://github.com/ewpratten">@ewpratten</a> has written most of the core code to bootstrap the game, and provide convenience functions.
This stuff probably wont need to be touched.
Most of the game logic is expected to live in <code>src/scenes</code> and <code>src/model</code> (rendering and data).</p>
<h3 id="important-functions-and-files" class="section-header"><a href="#important-functions-and-files">Important Functions and Files</a></h3>
<ul>
<li>If you are wanting to write rendering code, check out <a href="scenes/fn.process_ingame_frame.html"><code>process_ingame_frame</code></a>.</li>
<li>If you want to have something load at the start of the game and stay in memory, check out <a href="global_resource_package/struct.GlobalResources.html"><code>GlobalResources</code></a>.</li>
<li>If you want to add data to the save state file or settings file, check out the <a href="persistent/index.html"><code>persistent</code></a> module.</li>
</ul>
</div></details><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="asset_manager/index.html" title="game_logic::asset_manager mod">asset_manager</a></div><div class="item-right docblock-short"><p>Embedded asset management.</p>
</div></div><div class="item-row"><div class="item-left module-item"><a class="mod" href="coord_convert/index.html" title="game_logic::coord_convert mod">coord_convert</a></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left module-item"><a class="mod" href="discord/index.html" title="game_logic::discord mod">discord</a></div><div class="item-right docblock-short"><p>Interfacing with Discord</p>
</div></div><div class="item-row"><div class="item-left module-item"><a class="mod" href="global_resource_package/index.html" title="game_logic::global_resource_package mod">global_resource_package</a></div><div class="item-right docblock-short"><p>Global resources</p>
</div></div><div class="item-row"><div class="item-left module-item"><a class="mod" href="model/index.html" title="game_logic::model mod">model</a></div><div class="item-right docblock-short"></div></div><div class="item-row"><div class="item-left module-item"><a class="mod" href="persistent/index.html" title="game_logic::persistent mod">persistent</a></div><div class="item-right docblock-short"><p>This module contains the datastructure backing persistent data.</p>
</div></div><div class="item-row"><div class="item-left module-item"><a class="mod" href="project_constants/index.html" title="game_logic::project_constants mod">project_constants</a></div><div class="item-right docblock-short"><p>The rust side of the <code>dist/project-constants.json</code> file</p>
</div></div><div class="item-row"><div class="item-left module-item"><a class="mod" href="rendering/index.html" title="game_logic::rendering mod">rendering</a></div><div class="item-right docblock-short"><p>This module contains lower level rendering logic.</p>
</div></div><div class="item-row"><div class="item-left module-item"><a class="mod" href="scenes/index.html" title="game_logic::scenes mod">scenes</a></div><div class="item-right docblock-short"><p>The render code for various scenes</p>
</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.entrypoint.html" title="game_logic::entrypoint fn">entrypoint</a></div><div class="item-right docblock-short"><p>This is the game logic entrypoint. Despite being async,
this is expected to block the main thread for rendering and stuff.</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>