Updated Doc

This commit is contained in:
Cooldude2606
2018-06-01 16:30:32 +01:00
parent 5eb8600411
commit 4d05f13cb3
23 changed files with 1082 additions and 642 deletions

1
config.ld Normal file
View File

@@ -0,0 +1 @@
new_type('command','Commands',false,'param')

View File

@@ -40,7 +40,7 @@
<li><a href="modules/modules.expgamingcore.gui.guiparts.toolbar.html">modules.expgamingcore.gui.guiparts.toolbar</a></li>
<li><a href="modules/modules.expgamingcore.gui.control.html">modules.expgamingcore.gui.control</a></li>
<li><a href="modules/modules.expgamingcore.ranking.control.html">modules.expgamingcore.ranking.control</a></li>
<li><a href="modules/modules.expgamingcore.server.control.html">modules.expgamingcore.server.control</a></li>
<li><a href="modules/ExpGamingCore.Server.html">ExpGamingCore.Server</a></li>
<li><a href="modules/ExpGamingCore.Sync.html">ExpGamingCore.Sync</a></li>
<li><a href="modules/ExpGamingLib.html">ExpGamingLib</a></li>
<li><a href="modules/StdLib.Color.html">StdLib.Color</a></li>
@@ -95,12 +95,12 @@
<td class="summary">Returns a rank object given a player or rank name</td>
</tr>
<tr>
<td class="name" nowrap><a href="modules/modules.expgamingcore.server.control.html">modules.expgamingcore.server.control</a></td>
<td class="summary">Returns a un-used uuid (better system needed)</td>
<td class="name" nowrap><a href="modules/ExpGamingCore.Server.html">ExpGamingCore.Server</a></td>
<td class="summary">Adds a thread system and event listening and a admin bypass (recommend to disable /c and use optional /interface)</td>
</tr>
<tr>
<td class="name" nowrap><a href="modules/ExpGamingCore.Sync.html">ExpGamingCore.Sync</a></td>
<td class="summary">Description - A small description that will be displayed on the doc</td>
<td class="summary">Allows syncing with an outside server and info panle.</td>
</tr>
<tr>
<td class="name" nowrap><a href="modules/ExpGamingLib.html">ExpGamingLib</a></td>
@@ -132,7 +132,7 @@
</div> <!-- id="main" -->
<div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
<i style="float:right;">Last updated 2018-05-31 00:41:31 </i>
<i style="float:right;">Last updated 2018-06-01 16:29:39 </i>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>

View File

@@ -0,0 +1,835 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<head>
<title>Reference</title>
<link rel="stylesheet" href="../ldoc.css" type="text/css" />
</head>
<body>
<div id="container">
<div id="product">
<div id="product_logo"></div>
<div id="product_name"><big><b></b></big></div>
<div id="product_description"></div>
</div> <!-- id="product" -->
<div id="main">
<!-- Menu -->
<div id="navigation">
<br/>
<h1>ldoc</h1>
<ul>
<li><a href="../index.html">Index</a></li>
</ul>
<h2>Contents</h2>
<ul>
<li><a href="#Functions">Functions</a></li>
<li><a href="#Tables">Tables</a></li>
<li><a href="#Fields">Fields</a></li>
<li><a href="#Class_Thread">Class Thread </a></li>
<li><a href="#modules_expgamingcore_server_src_commands_Functions">modules.expgamingcore.server.src.commands Functions</a></li>
</ul>
<h2>Modules</h2>
<ul class="nowrap">
<li><a href="../modules/FSM.html">FSM</a></li>
<li><a href="../modules/modules.expgamingcore.commands.control.html">modules.expgamingcore.commands.control</a></li>
<li><a href="../modules/modules.expgamingcore.gui.guiparts.center.html">modules.expgamingcore.gui.guiparts.center</a></li>
<li><a href="../modules/modules.expgamingcore.gui.guiparts.inputs.html">modules.expgamingcore.gui.guiparts.inputs</a></li>
<li><a href="../modules/modules.expgamingcore.gui.guiparts.left.html">modules.expgamingcore.gui.guiparts.left</a></li>
<li><a href="../modules/modules.expgamingcore.gui.guiparts.popup.html">modules.expgamingcore.gui.guiparts.popup</a></li>
<li><a href="../modules/modules.expgamingcore.gui.guiparts.toolbar.html">modules.expgamingcore.gui.guiparts.toolbar</a></li>
<li><a href="../modules/modules.expgamingcore.gui.control.html">modules.expgamingcore.gui.control</a></li>
<li><a href="../modules/modules.expgamingcore.ranking.control.html">modules.expgamingcore.ranking.control</a></li>
<li><strong>ExpGamingCore.Server</strong></li>
<li><a href="../modules/ExpGamingCore.Sync.html">ExpGamingCore.Sync</a></li>
<li><a href="../modules/ExpGamingLib.html">ExpGamingLib</a></li>
<li><a href="../modules/StdLib.Color.html">StdLib.Color</a></li>
<li><a href="../modules/StdLib.Game.html">StdLib.Game</a></li>
<li><a href="../modules/StdLib.String.html">StdLib.String</a></li>
<li><a href="../modules/StdLib.Table.html">StdLib.Table</a></li>
<li><a href="../modules/StdLib.Time.html">StdLib.Time</a></li>
</ul>
</div>
<div id="content">
<h1>Module <code>ExpGamingCore.Server</code></h1>
<p>Adds a thread system and event listening and a admin bypass (recommend to disable /c and use optional /interface)</p>
<p></p>
<h3>Info:</h3>
<ul>
<li><strong>License</strong>: https://github.com/explosivegaming/scenario/blob/master/LICENSE</li>
<li><strong>Author</strong>: Cooldude2606</li>
</ul>
<h2><a href="#Functions">Functions</a></h2>
<table class="function_list">
<tr>
<td class="name" nowrap><a href="#new_thread">new_thread (obj)</a></td>
<td class="summary">Generates a new thread object</td>
</tr>
<tr>
<td class="name" nowrap><a href="#get_thread">get_thread (mixed)</a></td>
<td class="summary">Used to get a thread via uuid or name (if one is assied)</td>
</tr>
<tr>
<td class="name" nowrap><a href="#queue_thread">queue_thread (thread_to_queue)</a></td>
<td class="summary">Adds a thread into the resolve queue, can be used to lower lag</td>
</tr>
<tr>
<td class="name" nowrap><a href="#close_all_threads">close_all_threads (with_force)</a></td>
<td class="summary">Closes all active threads, can use force if it causes errors</td>
</tr>
<tr>
<td class="name" nowrap><a href="#run_tick_threads">run_tick_threads ()</a></td>
<td class="summary">Runs all the theads which have opened with an on_tick event</td>
</tr>
<tr>
<td class="name" nowrap><a href="#check_timeouts">check_timeouts ()</a></td>
<td class="summary">Checks the timeout on all active timeout threads</td>
</tr>
<tr>
<td class="name" nowrap><a href="#_thread_debuger">_thread_debuger (player, event[, state=toggle])</a></td>
<td class="summary">Used to print event info to a player</td>
</tr>
<tr>
<td class="name" nowrap><a href="#interface">interface (callback[, use_thread[, env[, ...]]])</a></td>
<td class="summary">Acts as a bypass for running functions, can accept a string</td>
</tr>
</table>
<h2><a href="#Tables">Tables</a></h2>
<table class="function_list">
<tr>
<td class="name" nowrap><a href="#global">global</a></td>
<td class="summary">Global Table</td>
</tr>
</table>
<h2><a href="#Fields">Fields</a></h2>
<table class="function_list">
<tr>
<td class="name" nowrap><a href="#uuid">uuid</a></td>
<td class="summary">Used to generate a new uuid for the thread system</td>
</tr>
<tr>
<td class="name" nowrap><a href="#threads">threads</a></td>
<td class="summary">Redirect to the thread index</td>
</tr>
</table>
<h2><a href="#Class_Thread">Class Thread </a></h2>
<table class="function_list">
<tr>
<td class="name" nowrap><a href="#Server._thread:create">Server._thread:create ([obj={}])</a></td>
<td class="summary">Returns a new thread object</td>
</tr>
<tr>
<td class="name" nowrap><a href="#Server._thread:queue">Server._thread:queue ()</a></td>
<td class="summary">Opens and queses a thread</td>
</tr>
<tr>
<td class="name" nowrap><a href="#Server._thread:valid">Server._thread:valid ([skip_location_check=false])</a></td>
<td class="summary">Test if the thread has all requied parts</td>
</tr>
<tr>
<td class="name" nowrap><a href="#Server._thread:open">Server._thread:open ()</a></td>
<td class="summary">Opens the thread; indexs this thread in the global index</td>
</tr>
<tr>
<td class="name" nowrap><a href="#Server._thread:close">Server._thread:close ()</a></td>
<td class="summary">Inverse of thread:open() - Removes all indexs to this thread, most cases this will cause it to become inassible</td>
</tr>
<tr>
<td class="name" nowrap><a href="#Server._thread:resolve">Server._thread:resolve ([...])</a></td>
<td class="summary">Trigger the on_resolve function and closes the thread - error and success called based on result of pcall (useful for async)</td>
</tr>
<tr>
<td class="name" nowrap><a href="#Server._thread:check_timeout">Server._thread:check_timeout ()</a></td>
<td class="summary">Checks the timeout on a thread - if timed out then it calles on_timeout and closes</td>
</tr>
<tr>
<td class="name" nowrap><a href="#Server._thread:error">Server._thread:error (err)</a></td>
<td class="summary">Used to check and raise the error handler of the thread, if not present it raises an error</td>
</tr>
<tr>
<td class="name" nowrap><a href="#Server._thread:on_event">Server._thread:on_event (event, callback)</a></td>
<td class="summary">Set function to run then an event is triggered, none of them are 'needed' but you are advised to have atleast one</td>
</tr>
</table>
<h2><a href="#modules_expgamingcore_server_src_commands_Functions">modules.expgamingcore.server.src.commands Functions</a></h2>
<table class="function_list">
<tr>
<td class="name" nowrap><a href="#_comment">_comment ()</a></td>
<td class="summary">This file will be loaded when ExpGamingCore.Commands is present</td>
</tr>
<tr>
<td class="name" nowrap><a href="#interface">interface</a></td>
<td class="summary">Runs the given input from the script</td>
</tr>
</table>
<br/>
<br/>
<h2 class="section-header "><a name="Functions"></a>Functions</h2>
<dl class="function">
<dt>
<a name = "new_thread"></a>
<strong>new_thread (obj)</strong>
</dt>
<dd>
Generates a new thread object
<h3>Parameters:</h3>
<ul>
<li><span class="parameter">obj</span>
<span class="types"><a class="type" href="https://www.lua.org/manual/5.2/manual.html#6.5">table</a></span>
the atributes to give to the thread
</li>
</ul>
<h3>Returns:</h3>
<ol>
<span class="types"><span class="type">Server._thread</span></span>
the new thread created
</ol>
<h3>Usage:</h3>
<ul>
<pre class="example">Server.new_thread{name=<span class="string">'foo'</span>,data={}}</pre>
</ul>
</dd>
<dt>
<a name = "get_thread"></a>
<strong>get_thread (mixed)</strong>
</dt>
<dd>
Used to get a thread via uuid or name (if one is assied)
<h3>Parameters:</h3>
<ul>
<li><span class="parameter">mixed</span>
either a uuid or the name given to a thread
</li>
</ul>
<h3>Returns:</h3>
<ol>
<span class="types"><span class="type">Server._thread</span></span>
the thread by that name or uuid
</ol>
<h3>Or</h3>
<ol>
<span class="types"><span class="type">boolean</span></span>
if false is returned then no thread existes
</ol>
<h3>Usage:</h3>
<ul>
<pre class="example">Server.get_thread(<span class="string">'decon'</span>) <span class="comment">-- return thread</span></pre>
</ul>
</dd>
<dt>
<a name = "queue_thread"></a>
<strong>queue_thread (thread_to_queue)</strong>
</dt>
<dd>
Adds a thread into the resolve queue, can be used to lower lag
<h3>Parameters:</h3>
<ul>
<li><span class="parameter">thread_to_queue</span>
<span class="types"><span class="type">Server._thread</span></span>
the thread to be added to the queue, must be open and have a on_resolve function
</li>
</ul>
<h3>Returns:</h3>
<ol>
<span class="types"><span class="type">boolean</span></span>
was it added successfuly
</ol>
<h3>Usage:</h3>
<ul>
<pre class="example">Server.queue_thread(thread) <span class="comment">-- return true/false</span></pre>
</ul>
</dd>
<dt>
<a name = "close_all_threads"></a>
<strong>close_all_threads (with_force)</strong>
</dt>
<dd>
Closes all active threads, can use force if it causes errors
<h3>Parameters:</h3>
<ul>
<li><span class="parameter">with_force</span>
<span class="types"><span class="type">bolean</span></span>
use force when closing
</li>
</ul>
<h3>Usage:</h3>
<ul>
<li><pre class="example">Server.close_all_threads() <span class="comment">-- asks all threads to close</span></pre></li>
<li><pre class="example">Server.close_all_threads(<span class="keyword">true</span>) <span class="comment">-- forcefuly close all threads</span></pre></li>
</ul>
</dd>
<dt>
<a name = "run_tick_threads"></a>
<strong>run_tick_threads ()</strong>
</dt>
<dd>
Runs all the theads which have opened with an on_tick event
<h3>Usage:</h3>
<ul>
<pre class="example">Server.run_tick_threads()</pre>
</ul>
</dd>
<dt>
<a name = "check_timeouts"></a>
<strong>check_timeouts ()</strong>
</dt>
<dd>
Checks the timeout on all active timeout threads
<h3>Usage:</h3>
<ul>
<pre class="example">Server.check_timeouts()</pre>
</ul>
</dd>
<dt>
<a name = "_thread_debuger"></a>
<strong>_thread_debuger (player, event[, state=toggle])</strong>
</dt>
<dd>
Used to print event info to a player
<h3>Parameters:</h3>
<ul>
<li><span class="parameter">player</span>
<span class="types"><span class="type">name</span>, <span class="type">index</span> or <span class="type">LuaPlayer</span></span>
the player that the info will be returned to
</li>
<li><span class="parameter">event</span>
<span class="types"><span class="type">name</span> or <span class="type">index</span></span>
the event that info will be returned fo
</li>
<li><span class="parameter">state</span>
<span class="types"><span class="type">boolean</span></span>
will info be returned, nil to toggle current state
(<em>default</em> toggle)
</li>
</ul>
<h3>Usage:</h3>
<ul>
<pre class="example">Server._thread_debuger(<span class="string">'Cooldude2606'</span>,<span class="string">'on_player_died'</span>,<span class="keyword">true</span>) <span class="comment">-- will output event info to 'Cooldude2606' for 'on_player_died'</span></pre>
</ul>
</dd>
<dt>
<a name = "interface"></a>
<strong>interface (callback[, use_thread[, env[, ...]]])</strong>
</dt>
<dd>
Acts as a bypass for running functions, can accept a string
<h3>Parameters:</h3>
<ul>
<li><span class="parameter">callback</span>
<span class="types"><a class="type" href="https://www.lua.org/manual/5.2/manual.html#6.4">string</a> or <span class="type">function</span></span>
function to be ran
</li>
<li><span class="parameter">use_thread</span>
<span class="types"><span class="type">Server._thread</span> or <span class="type">true</span></span>
run the command on a premade thread or let it make its own
(<em>optional</em>)
</li>
<li><span class="parameter">env</span>
<span class="types"><a class="type" href="https://www.lua.org/manual/5.2/manual.html#6.5">table</a></span>
run the env to run the command in must have _env key as true to be
(<em>optional</em>)
</li>
<li><span class="parameter">...</span>
any args you want to pass to the function
(<em>optional</em>)
</li>
</ul>
<h3>Returns:</h3>
<ol>
if no thread then it will return the value(s) returned by the callback
</ol>
<h3>Usage:</h3>
<ul>
<li><pre class="example">Server.interface(<span class="string">'local x = 1+1 print(x) return x'</span>) <span class="comment">-- return 2</span></pre></li>
<li><pre class="example">Server.interface(<span class="string">'local x = 1+1 print(x)'</span>,<span class="keyword">true</span>) <span class="comment">-- will creat a thread to run as root (this is the bypass)</span></pre></li>
</ul>
</dd>
</dl>
<h2 class="section-header "><a name="Tables"></a>Tables</h2>
<dl class="function">
<dt>
<a name = "global"></a>
<strong>global</strong>
</dt>
<dd>
Global Table
<h3>Fields:</h3>
<ul>
<li><span class="parameter">all</span>
a list of every thread (indexed by uuid)
</li>
<li><span class="parameter">queue</span>
an index for threads which will be resolved (contains uuids)
</li>
<li><span class="parameter">tick</span>
an index for threads which will run every tick (contains uuids)
</li>
<li><span class="parameter">timeout</span>
an index for threads which will timeout (contains uuids)
</li>
<li><span class="parameter">events</span>
an index of threads based on event ids (contains uuids)
</li>
<li><span class="parameter">paused</span>
an index of pasued threads (contains uuids)
</li>
<li><span class="parameter">named</span>
a name index for thread uuids
</li>
<li><span class="parameter">print_to</span>
contains players that event details will be printed to
</li>
<li><span class="parameter">uuid</span>
contains the random number generator for the uuid system
</li>
</ul>
</dd>
</dl>
<h2 class="section-header "><a name="Fields"></a>Fields</h2>
<dl class="function">
<dt>
<a name = "uuid"></a>
<strong>uuid</strong>
</dt>
<dd>
Used to generate a new uuid for the thread system
<h3>Usage:</h3>
<ul>
<pre class="example"><span class="keyword">local</span> uuid = <span class="global">tostring</span>(Server.uuid) <span class="comment">-- calling tostring locks the value</span></pre>
</ul>
</dd>
<dt>
<a name = "threads"></a>
<strong>threads</strong>
</dt>
<dd>
Redirect to the thread index
<h3>Usage:</h3>
<ul>
<li><pre class="example">Server.threads <span class="comment">-- return #global.all</span></pre></li>
<li><pre class="example">Server.threads <span class="comment">-- return global.all</span></pre></li>
</ul>
</dd>
</dl>
<h2 class="section-header has-description"><a name="Class_Thread"></a>Class Thread </h2>
<div class="section-description">
The class for the server threads, allows abbilty to run async function
</div>
<dl class="function">
<dt>
<a name = "Server._thread:create"></a>
<strong>Server._thread:create ([obj={}])</strong>
</dt>
<dd>
Returns a new thread object
<h3>Parameters:</h3>
<ul>
<li><span class="parameter">obj</span>
<span class="types"><a class="type" href="https://www.lua.org/manual/5.2/manual.html#6.5">table</a></span>
all values are opt {timeout=int,name=str,data=any}
(<em>default</em> {})
</li>
</ul>
<h3>Returns:</h3>
<ol>
<span class="types"><span class="type">Server._thread</span></span>
the new thread object
</ol>
<h3>Usage:</h3>
<ul>
<pre class="example">new_thread = thread:create()</pre>
</ul>
</dd>
<dt>
<a name = "Server._thread:queue"></a>
<strong>Server._thread:queue ()</strong>
</dt>
<dd>
Opens and queses a thread
<h3>Returns:</h3>
<ol>
<span class="types"><span class="type">boolean</span></span>
was the thread queued successfuly
</ol>
<h3>See also:</h3>
<ul>
<a href="../modules/ExpGamingCore.Server.html#queue_thread">Server.queue_thread</a>
</ul>
<h3>Usage:</h3>
<ul>
<pre class="example">Server._thread:queue() <span class="comment">-- returns true/false</span></pre>
</ul>
</dd>
<dt>
<a name = "Server._thread:valid"></a>
<strong>Server._thread:valid ([skip_location_check=false])</strong>
</dt>
<dd>
Test if the thread has all requied parts
<h3>Parameters:</h3>
<ul>
<li><span class="parameter">skip_location_check</span>
<span class="types"><span class="type">bolean</span></span>
true to skip the location checking
(<em>default</em> false)
</li>
</ul>
<h3>Returns:</h3>
<ol>
<span class="types"><span class="type">boolean</span></span>
is the thread valid
</ol>
<h3>Usage:</h3>
<ul>
<pre class="example"><span class="keyword">if</span> thread:valid() <span class="keyword">then</span> <span class="keyword">end</span> <span class="comment">-- basic test for valid</span></pre>
</ul>
</dd>
<dt>
<a name = "Server._thread:open"></a>
<strong>Server._thread:open ()</strong>
</dt>
<dd>
Opens the thread; indexs this thread in the global index
<h3>Returns:</h3>
<ol>
<span class="types"><span class="type">bolean</span></span>
if the thread was opened successfuly
</ol>
<h3>Usage:</h3>
<ul>
<pre class="example">thread:open() <span class="comment">-- return true</span></pre>
</ul>
</dd>
<dt>
<a name = "Server._thread:close"></a>
<strong>Server._thread:close ()</strong>
</dt>
<dd>
Inverse of thread:open() - Removes all indexs to this thread, most cases this will cause it to become inassible
<h3>Returns:</h3>
<ol>
<span class="types"><span class="type">boolean</span></span>
if the thread had a on_close function
</ol>
<h3>Usage:</h3>
<ul>
<pre class="example">thread:close() <span class="comment">-- return true</span></pre>
</ul>
</dd>
<dt>
<a name = "Server._thread:resolve"></a>
<strong>Server._thread:resolve ([...])</strong>
</dt>
<dd>
Trigger the on_resolve function and closes the thread - error and success called based on result of pcall (useful for async)
<h3>Parameters:</h3>
<ul>
<li><span class="parameter">...</span>
any arguments you want to pass to the resolve function
(<em>optional</em>)
</li>
</ul>
<h3>Returns:</h3>
<ol>
<span class="types"><span class="type">bolean</span></span>
true if the thread called on_success or on_error
</ol>
<h3>Usage:</h3>
<ul>
<pre class="example">thread:resolve(x,y,z) <span class="comment">-- return true</span></pre>
</ul>
</dd>
<dt>
<a name = "Server._thread:check_timeout"></a>
<strong>Server._thread:check_timeout ()</strong>
</dt>
<dd>
Checks the timeout on a thread - if timed out then it calles on_timeout and closes
<h3>Returns:</h3>
<ol>
<span class="types"><span class="type">bolean</span></span>
if the thread timed out
</ol>
<h3>Usage:</h3>
<ul>
<pre class="example">thread:check_timeout() <span class="comment">-- return true</span></pre>
</ul>
</dd>
<dt>
<a name = "Server._thread:error"></a>
<strong>Server._thread:error (err)</strong>
</dt>
<dd>
Used to check and raise the error handler of the thread, if not present it raises an error
<h3>Parameters:</h3>
<ul>
<li><span class="parameter">err</span>
<span class="types"><a class="type" href="https://www.lua.org/manual/5.2/manual.html#6.4">string</a></span>
the err to be rasied
</li>
</ul>
<h3>Returns:</h3>
<ol>
<span class="types"><span class="type">boolean</span></span>
did the thread have an error handler
</ol>
<h3>Usage:</h3>
<ul>
<pre class="example">thread:<span class="global">error</span>(err) <span class="comment">-- return true</span></pre>
</ul>
</dd>
<dt>
<a name = "Server._thread:on_event"></a>
<strong>Server._thread:on_event (event, callback)</strong>
</dt>
<dd>
Set function to run then an event is triggered, none of them are 'needed' but you are advised to have atleast one
<h3>Parameters:</h3>
<ul>
<li><span class="parameter">event</span>
<span class="types"><a class="type" href="https://www.lua.org/manual/5.2/manual.html#6.4">string</a> or <span class="type">index</span></span>
the name of the event that the function should be called on
</li>
<li><span class="parameter">callback</span>
<span class="types"><span class="type">function</span></span>
the function which is called by the event trigger
</li>
</ul>
<h3>Returns:</h3>
<ol>
<span class="types"><a class="type" href="https://www.lua.org/manual/5.2/manual.html#6.5">table</a></span>
returns self so that they can be chained together
</ol>
<h3>Usage:</h3>
<ul>
<li><pre class="example">thread:on_event(<span class="string">'close'</span>,<span class="keyword">function</span>) <span class="comment">-- if event is not one below then a game event is used</span></pre></li>
<li><pre class="example">thread_only_events = [<span class="string">'close'</span>,<span class="string">'timeout'</span>,<span class="string">'tick'</span>,<span class="string">'resolve'</span>,<span class="string">'success'</span>,<span class="string">'error'</span>]</pre></li>
</ul>
</dd>
</dl>
<h2 class="section-header "><a name="modules_expgamingcore_server_src_commands_Functions"></a>modules.expgamingcore.server.src.commands Functions</h2>
<dl class="function">
<dt>
<a name = "_comment"></a>
<strong>_comment ()</strong>
</dt>
<dd>
This file will be loaded when ExpGamingCore.Commands is present
</dd>
<dt>
<a name = "interface"></a>
<strong>interface</strong>
</dt>
<dd>
Runs the given input from the script
<h3>param:</h3>
<ul>
<li><span class="parameter">code</span>
The code that will be ran
</li>
</ul>
</dd>
</dl>
</div> <!-- id="content" -->
</div> <!-- id="main" -->
<div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
<i style="float:right;">Last updated 2018-06-01 16:29:39 </i>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>
</html>

View File

@@ -35,8 +35,8 @@
<li><a href="#Functions">Functions</a></li>
<li><a href="#Tables">Tables</a></li>
<li><a href="#Fields">Fields</a></li>
<li><a href="#modules_expgamingcore_sync_lib_gui_Functions">modules.expgamingcore.sync.lib.gui Functions</a></li>
<li><a href="#modules_expgamingcore_sync_lib_ranking_Functions">modules.expgamingcore.sync.lib.ranking Functions</a></li>
<li><a href="#modules_expgamingcore_sync_src_gui_Functions">modules.expgamingcore.sync.src.gui Functions</a></li>
<li><a href="#modules_expgamingcore_sync_src_ranking_Functions">modules.expgamingcore.sync.src.ranking Functions</a></li>
</ul>
@@ -51,7 +51,7 @@
<li><a href="../modules/modules.expgamingcore.gui.guiparts.toolbar.html">modules.expgamingcore.gui.guiparts.toolbar</a></li>
<li><a href="../modules/modules.expgamingcore.gui.control.html">modules.expgamingcore.gui.control</a></li>
<li><a href="../modules/modules.expgamingcore.ranking.control.html">modules.expgamingcore.ranking.control</a></li>
<li><a href="../modules/modules.expgamingcore.server.control.html">modules.expgamingcore.server.control</a></li>
<li><a href="../modules/ExpGamingCore.Server.html">ExpGamingCore.Server</a></li>
<li><strong>ExpGamingCore.Sync</strong></li>
<li><a href="../modules/ExpGamingLib.html">ExpGamingLib</a></li>
<li><a href="../modules/StdLib.Color.html">StdLib.Color</a></li>
@@ -66,7 +66,7 @@
<div id="content">
<h1>Module <code>ExpGamingCore.Sync</code></h1>
<p>Description - A small description that will be displayed on the doc</p>
<p>Allows syncing with an outside server and info panle.</p>
<p></p>
<h3>Info:</h3>
<ul>
@@ -124,6 +124,14 @@
</table>
<h2><a href="#Tables">Tables</a></h2>
<table class="function_list">
<tr>
<td class="name" nowrap><a href="#global">global</a></td>
<td class="summary">Global Table</td>
</tr>
<tr>
<td class="name" nowrap><a href="#global.players">global.players</a></td>
<td class="summary">Player sub-table</td>
</tr>
<tr>
<td class="name" nowrap><a href="#EmitEmbededParamaters">EmitEmbededParamaters</a></td>
<td class="summary">Outline of the paramaters accepted by Sync.emit_embeded</td>
@@ -140,22 +148,22 @@
<td class="summary">Used to return and set the current IRL time; not very good need a better way to do this</td>
</tr>
</table>
<h2><a href="#modules_expgamingcore_sync_lib_gui_Functions">modules.expgamingcore.sync.lib.gui Functions</a></h2>
<h2><a href="#modules_expgamingcore_sync_src_gui_Functions">modules.expgamingcore.sync.src.gui Functions</a></h2>
<table class="function_list">
<tr>
<td class="name" nowrap><a href="#_comment">_comment ()</a></td>
<td class="summary">This file will be loaded when ExpGamingCore/Gui is present</td>
<td class="summary">This file will be loaded when ExpGamingCore.Gui is present</td>
</tr>
<tr>
<td class="name" nowrap><a href="#add_to_gui">add_to_gui (element)</a></td>
<td class="summary">Adds a emeltent to the sever info gui</td>
</tr>
</table>
<h2><a href="#modules_expgamingcore_sync_lib_ranking_Functions">modules.expgamingcore.sync.lib.ranking Functions</a></h2>
<h2><a href="#modules_expgamingcore_sync_src_ranking_Functions">modules.expgamingcore.sync.src.ranking Functions</a></h2>
<table class="function_list">
<tr>
<td class="name" nowrap><a href="#_comment">_comment ()</a></td>
<td class="summary">This file will be loaded when ExpGamingCore/Ranking is present</td>
<td class="summary">This file will be loaded when ExpGamingCore.Ranking is present</td>
</tr>
<tr>
<td class="name" nowrap><a href="#set_ranks">set_ranks (...)</a></td>
@@ -486,6 +494,94 @@
<h2 class="section-header "><a name="Tables"></a>Tables</h2>
<dl class="function">
<dt>
<a name = "global"></a>
<strong>global</strong>
</dt>
<dd>
Global Table
<h3>Fields:</h3>
<ul>
<li><span class="parameter">server_name</span>
the server name
</li>
<li><span class="parameter">server_description</span>
a short description of the server
</li>
<li><span class="parameter">reset_time</span>
the reset time of the server
</li>
<li><span class="parameter">time</span>
the last knowen irl time
</li>
<li><span class="parameter">time_set</span>
the last in game time that the time was set
</li>
<li><span class="parameter">last_update</span>
the last time that this info was updated
</li>
<li><span class="parameter">time_period</span>
how often this infomation is updated
</li>
<li><span class="parameter">players</span>
a list of different player related states
</li>
<li><span class="parameter">ranks</span>
a list of player ranks
</li>
<li><span class="parameter">rockets</span>
the number of rockets launched
</li>
<li><span class="parameter">mods</span>
the mods which are loaded
</li>
</ul>
</dd>
<dt>
<a name = "global.players"></a>
<strong>global.players</strong>
</dt>
<dd>
Player sub-table
<h3>Fields:</h3>
<ul>
<li><span class="parameter">online</span>
list of all players online
</li>
<li><span class="parameter">n_online</span>
the number of players online
</li>
<li><span class="parameter">all</span>
list of all player on or offline
</li>
<li><span class="parameter">n_all</span>
the number of players who have joined the server
</li>
<li><span class="parameter">admins_online</span>
the number of admins online
</li>
<li><span class="parameter">afk_players</span>
the number of afk players
</li>
<li><span class="parameter">times</span>
the play times of every player
</li>
</ul>
</dd>
<dt>
<a name = "EmitEmbededParamaters"></a>
<strong>EmitEmbededParamaters</strong>
@@ -578,7 +674,7 @@
</dd>
</dl>
<h2 class="section-header "><a name="modules_expgamingcore_sync_lib_gui_Functions"></a>modules.expgamingcore.sync.lib.gui Functions</h2>
<h2 class="section-header "><a name="modules_expgamingcore_sync_src_gui_Functions"></a>modules.expgamingcore.sync.src.gui Functions</h2>
<dl class="function">
<dt>
@@ -586,7 +682,7 @@
<strong>_comment ()</strong>
</dt>
<dd>
This file will be loaded when ExpGamingCore/Gui is present
This file will be loaded when ExpGamingCore.Gui is present
@@ -626,7 +722,7 @@
</dd>
</dl>
<h2 class="section-header "><a name="modules_expgamingcore_sync_lib_ranking_Functions"></a>modules.expgamingcore.sync.lib.ranking Functions</h2>
<h2 class="section-header "><a name="modules_expgamingcore_sync_src_ranking_Functions"></a>modules.expgamingcore.sync.src.ranking Functions</h2>
<dl class="function">
<dt>
@@ -634,7 +730,7 @@
<strong>_comment ()</strong>
</dt>
<dd>
This file will be loaded when ExpGamingCore/Ranking is present
This file will be loaded when ExpGamingCore.Ranking is present
@@ -698,7 +794,7 @@
</div> <!-- id="main" -->
<div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
<i style="float:right;">Last updated 2018-05-31 00:41:31 </i>
<i style="float:right;">Last updated 2018-06-01 16:29:39 </i>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>

View File

@@ -47,7 +47,7 @@
<li><a href="../modules/modules.expgamingcore.gui.guiparts.toolbar.html">modules.expgamingcore.gui.guiparts.toolbar</a></li>
<li><a href="../modules/modules.expgamingcore.gui.control.html">modules.expgamingcore.gui.control</a></li>
<li><a href="../modules/modules.expgamingcore.ranking.control.html">modules.expgamingcore.ranking.control</a></li>
<li><a href="../modules/modules.expgamingcore.server.control.html">modules.expgamingcore.server.control</a></li>
<li><a href="../modules/ExpGamingCore.Server.html">ExpGamingCore.Server</a></li>
<li><a href="../modules/ExpGamingCore.Sync.html">ExpGamingCore.Sync</a></li>
<li><strong>ExpGamingLib</strong></li>
<li><a href="../modules/StdLib.Color.html">StdLib.Color</a></li>
@@ -66,6 +66,7 @@
<p></p>
<h3>Info:</h3>
<ul>
<li><strong>License</strong>: https://github.com/explosivegaming/scenario/blob/master/LICENSE</li>
<li><strong>Author</strong>: Cooldude2606</li>
</ul>
@@ -411,7 +412,7 @@
</div> <!-- id="main" -->
<div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
<i style="float:right;">Last updated 2018-05-31 00:41:31 </i>
<i style="float:right;">Last updated 2018-06-01 16:29:39 </i>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>

View File

@@ -34,6 +34,7 @@
<ul>
<li><a href="#Functions">Functions</a></li>
<li><a href="#Tables">Tables</a></li>
<li><a href="#Fields">Fields</a></li>
</ul>
@@ -48,7 +49,7 @@
<li><a href="../modules/modules.expgamingcore.gui.guiparts.toolbar.html">modules.expgamingcore.gui.guiparts.toolbar</a></li>
<li><a href="../modules/modules.expgamingcore.gui.control.html">modules.expgamingcore.gui.control</a></li>
<li><a href="../modules/modules.expgamingcore.ranking.control.html">modules.expgamingcore.ranking.control</a></li>
<li><a href="../modules/modules.expgamingcore.server.control.html">modules.expgamingcore.server.control</a></li>
<li><a href="../modules/ExpGamingCore.Server.html">ExpGamingCore.Server</a></li>
<li><a href="../modules/ExpGamingCore.Sync.html">ExpGamingCore.Sync</a></li>
<li><a href="../modules/ExpGamingLib.html">ExpGamingLib</a></li>
<li><a href="../modules/StdLib.Color.html">StdLib.Color</a></li>
@@ -118,6 +119,13 @@
<td class="summary">Sub set to Manger.event and acts as a coverter between event_name and event_id</td>
</tr>
</table>
<h2><a href="#Fields">Fields</a></h2>
<table class="function_list">
<tr>
<td class="name" nowrap><a href="#global">global</a></td>
<td class="summary">Used to avoid conflicts in the global table</td>
</tr>
</table>
<br/>
<br/>
@@ -399,6 +407,37 @@
<pre class="example">Manager.event[event_name]</pre>
</ul>
</dd>
</dl>
<h2 class="section-header "><a name="Fields"></a>Fields</h2>
<dl class="function">
<dt>
<a name = "global"></a>
<strong>global</strong>
</dt>
<dd>
Used to avoid conflicts in the global table
<ul>
<li><span class="parameter">default</span>
<span class="types"><a class="type" href="https://www.lua.org/manual/5.2/manual.html#6.5">table</a> or <span class="type">true</span></span>
the default value of global, if true then default is restored
(<em>default</em> {})
</li>
</ul>
<h3>Usage:</h3>
<ul>
<li><pre class="example">global[key] <span class="comment">-- used like the normal global table</span></pre></li>
<li><pre class="example">global{<span class="string">'foo'</span>,<span class="string">'bar'</span>} <span class="comment">-- sets the default value</span></pre></li>
<li><pre class="example">global(<span class="keyword">true</span>) <span class="comment">-- restores global to default</span></pre></li>
</ul>
</dd>
</dl>
@@ -407,7 +446,7 @@
</div> <!-- id="main" -->
<div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
<i style="float:right;">Last updated 2018-05-31 00:41:31 </i>
<i style="float:right;">Last updated 2018-06-01 16:29:39 </i>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>

View File

@@ -48,7 +48,7 @@
<li><a href="../modules/modules.expgamingcore.gui.guiparts.toolbar.html">modules.expgamingcore.gui.guiparts.toolbar</a></li>
<li><a href="../modules/modules.expgamingcore.gui.control.html">modules.expgamingcore.gui.control</a></li>
<li><a href="../modules/modules.expgamingcore.ranking.control.html">modules.expgamingcore.ranking.control</a></li>
<li><a href="../modules/modules.expgamingcore.server.control.html">modules.expgamingcore.server.control</a></li>
<li><a href="../modules/ExpGamingCore.Server.html">ExpGamingCore.Server</a></li>
<li><a href="../modules/ExpGamingCore.Sync.html">ExpGamingCore.Sync</a></li>
<li><a href="../modules/ExpGamingLib.html">ExpGamingLib</a></li>
<li><strong>StdLib.Color</strong></li>
@@ -553,7 +553,7 @@
</div> <!-- id="main" -->
<div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
<i style="float:right;">Last updated 2018-05-31 00:41:31 </i>
<i style="float:right;">Last updated 2018-06-01 16:29:39 </i>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>

View File

@@ -47,7 +47,7 @@
<li><a href="../modules/modules.expgamingcore.gui.guiparts.toolbar.html">modules.expgamingcore.gui.guiparts.toolbar</a></li>
<li><a href="../modules/modules.expgamingcore.gui.control.html">modules.expgamingcore.gui.control</a></li>
<li><a href="../modules/modules.expgamingcore.ranking.control.html">modules.expgamingcore.ranking.control</a></li>
<li><a href="../modules/modules.expgamingcore.server.control.html">modules.expgamingcore.server.control</a></li>
<li><a href="../modules/ExpGamingCore.Server.html">ExpGamingCore.Server</a></li>
<li><a href="../modules/ExpGamingCore.Sync.html">ExpGamingCore.Sync</a></li>
<li><a href="../modules/ExpGamingLib.html">ExpGamingLib</a></li>
<li><a href="../modules/StdLib.Color.html">StdLib.Color</a></li>
@@ -214,7 +214,7 @@
</div> <!-- id="main" -->
<div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
<i style="float:right;">Last updated 2018-05-31 00:41:31 </i>
<i style="float:right;">Last updated 2018-06-01 16:29:39 </i>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>

View File

@@ -47,7 +47,7 @@
<li><a href="../modules/modules.expgamingcore.gui.guiparts.toolbar.html">modules.expgamingcore.gui.guiparts.toolbar</a></li>
<li><a href="../modules/modules.expgamingcore.gui.control.html">modules.expgamingcore.gui.control</a></li>
<li><a href="../modules/modules.expgamingcore.ranking.control.html">modules.expgamingcore.ranking.control</a></li>
<li><a href="../modules/modules.expgamingcore.server.control.html">modules.expgamingcore.server.control</a></li>
<li><a href="../modules/ExpGamingCore.Server.html">ExpGamingCore.Server</a></li>
<li><a href="../modules/ExpGamingCore.Sync.html">ExpGamingCore.Sync</a></li>
<li><a href="../modules/ExpGamingLib.html">ExpGamingLib</a></li>
<li><a href="../modules/StdLib.Color.html">StdLib.Color</a></li>
@@ -294,7 +294,7 @@
</div> <!-- id="main" -->
<div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
<i style="float:right;">Last updated 2018-05-31 00:41:31 </i>
<i style="float:right;">Last updated 2018-06-01 16:29:39 </i>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>

View File

@@ -47,7 +47,7 @@
<li><a href="../modules/modules.expgamingcore.gui.guiparts.toolbar.html">modules.expgamingcore.gui.guiparts.toolbar</a></li>
<li><a href="../modules/modules.expgamingcore.gui.control.html">modules.expgamingcore.gui.control</a></li>
<li><a href="../modules/modules.expgamingcore.ranking.control.html">modules.expgamingcore.ranking.control</a></li>
<li><a href="../modules/modules.expgamingcore.server.control.html">modules.expgamingcore.server.control</a></li>
<li><a href="../modules/ExpGamingCore.Server.html">ExpGamingCore.Server</a></li>
<li><a href="../modules/ExpGamingCore.Sync.html">ExpGamingCore.Sync</a></li>
<li><a href="../modules/ExpGamingLib.html">ExpGamingLib</a></li>
<li><a href="../modules/StdLib.Color.html">StdLib.Color</a></li>
@@ -1123,7 +1123,7 @@ some_func(<span class="number">1</span>,<span class="number">2</span>) <span cla
</div> <!-- id="main" -->
<div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
<i style="float:right;">Last updated 2018-05-31 00:41:31 </i>
<i style="float:right;">Last updated 2018-06-01 16:29:39 </i>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>

View File

@@ -47,7 +47,7 @@
<li><a href="../modules/modules.expgamingcore.gui.guiparts.toolbar.html">modules.expgamingcore.gui.guiparts.toolbar</a></li>
<li><a href="../modules/modules.expgamingcore.gui.control.html">modules.expgamingcore.gui.control</a></li>
<li><a href="../modules/modules.expgamingcore.ranking.control.html">modules.expgamingcore.ranking.control</a></li>
<li><a href="../modules/modules.expgamingcore.server.control.html">modules.expgamingcore.server.control</a></li>
<li><a href="../modules/ExpGamingCore.Server.html">ExpGamingCore.Server</a></li>
<li><a href="../modules/ExpGamingCore.Sync.html">ExpGamingCore.Sync</a></li>
<li><a href="../modules/ExpGamingLib.html">ExpGamingLib</a></li>
<li><a href="../modules/StdLib.Color.html">StdLib.Color</a></li>
@@ -131,7 +131,7 @@
</div> <!-- id="main" -->
<div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
<i style="float:right;">Last updated 2018-05-31 00:41:31 </i>
<i style="float:right;">Last updated 2018-06-01 16:29:39 </i>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>

View File

@@ -47,7 +47,7 @@
<li><a href="../modules/modules.expgamingcore.gui.guiparts.toolbar.html">modules.expgamingcore.gui.guiparts.toolbar</a></li>
<li><a href="../modules/modules.expgamingcore.gui.control.html">modules.expgamingcore.gui.control</a></li>
<li><a href="../modules/modules.expgamingcore.ranking.control.html">modules.expgamingcore.ranking.control</a></li>
<li><a href="../modules/modules.expgamingcore.server.control.html">modules.expgamingcore.server.control</a></li>
<li><a href="../modules/ExpGamingCore.Server.html">ExpGamingCore.Server</a></li>
<li><a href="../modules/ExpGamingCore.Sync.html">ExpGamingCore.Sync</a></li>
<li><a href="../modules/ExpGamingLib.html">ExpGamingLib</a></li>
<li><a href="../modules/StdLib.Color.html">StdLib.Color</a></li>
@@ -124,7 +124,7 @@
</div> <!-- id="main" -->
<div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
<i style="float:right;">Last updated 2018-05-31 00:41:31 </i>
<i style="float:right;">Last updated 2018-06-01 16:29:39 </i>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>

View File

@@ -47,7 +47,7 @@
<li><a href="../modules/modules.expgamingcore.gui.guiparts.toolbar.html">modules.expgamingcore.gui.guiparts.toolbar</a></li>
<li><strong>modules.expgamingcore.gui.control</strong></li>
<li><a href="../modules/modules.expgamingcore.ranking.control.html">modules.expgamingcore.ranking.control</a></li>
<li><a href="../modules/modules.expgamingcore.server.control.html">modules.expgamingcore.server.control</a></li>
<li><a href="../modules/ExpGamingCore.Server.html">ExpGamingCore.Server</a></li>
<li><a href="../modules/ExpGamingCore.Sync.html">ExpGamingCore.Sync</a></li>
<li><a href="../modules/ExpGamingLib.html">ExpGamingLib</a></li>
<li><a href="../modules/StdLib.Color.html">StdLib.Color</a></li>
@@ -160,7 +160,7 @@
</div> <!-- id="main" -->
<div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
<i style="float:right;">Last updated 2018-05-31 00:41:31 </i>
<i style="float:right;">Last updated 2018-06-01 16:29:39 </i>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>

View File

@@ -47,7 +47,7 @@
<li><a href="../modules/modules.expgamingcore.gui.guiparts.toolbar.html">modules.expgamingcore.gui.guiparts.toolbar</a></li>
<li><a href="../modules/modules.expgamingcore.gui.control.html">modules.expgamingcore.gui.control</a></li>
<li><a href="../modules/modules.expgamingcore.ranking.control.html">modules.expgamingcore.ranking.control</a></li>
<li><a href="../modules/modules.expgamingcore.server.control.html">modules.expgamingcore.server.control</a></li>
<li><a href="../modules/ExpGamingCore.Server.html">ExpGamingCore.Server</a></li>
<li><a href="../modules/ExpGamingCore.Sync.html">ExpGamingCore.Sync</a></li>
<li><a href="../modules/ExpGamingLib.html">ExpGamingLib</a></li>
<li><a href="../modules/StdLib.Color.html">StdLib.Color</a></li>
@@ -278,7 +278,7 @@
</div> <!-- id="main" -->
<div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
<i style="float:right;">Last updated 2018-05-31 00:41:31 </i>
<i style="float:right;">Last updated 2018-06-01 16:29:39 </i>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>

View File

@@ -47,7 +47,7 @@
<li><a href="../modules/modules.expgamingcore.gui.guiparts.toolbar.html">modules.expgamingcore.gui.guiparts.toolbar</a></li>
<li><a href="../modules/modules.expgamingcore.gui.control.html">modules.expgamingcore.gui.control</a></li>
<li><a href="../modules/modules.expgamingcore.ranking.control.html">modules.expgamingcore.ranking.control</a></li>
<li><a href="../modules/modules.expgamingcore.server.control.html">modules.expgamingcore.server.control</a></li>
<li><a href="../modules/ExpGamingCore.Server.html">ExpGamingCore.Server</a></li>
<li><a href="../modules/ExpGamingCore.Sync.html">ExpGamingCore.Sync</a></li>
<li><a href="../modules/ExpGamingLib.html">ExpGamingLib</a></li>
<li><a href="../modules/StdLib.Color.html">StdLib.Color</a></li>
@@ -434,7 +434,7 @@
</div> <!-- id="main" -->
<div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
<i style="float:right;">Last updated 2018-05-31 00:41:31 </i>
<i style="float:right;">Last updated 2018-06-01 16:29:39 </i>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>

View File

@@ -47,7 +47,7 @@
<li><a href="../modules/modules.expgamingcore.gui.guiparts.toolbar.html">modules.expgamingcore.gui.guiparts.toolbar</a></li>
<li><a href="../modules/modules.expgamingcore.gui.control.html">modules.expgamingcore.gui.control</a></li>
<li><a href="../modules/modules.expgamingcore.ranking.control.html">modules.expgamingcore.ranking.control</a></li>
<li><a href="../modules/modules.expgamingcore.server.control.html">modules.expgamingcore.server.control</a></li>
<li><a href="../modules/ExpGamingCore.Server.html">ExpGamingCore.Server</a></li>
<li><a href="../modules/ExpGamingCore.Sync.html">ExpGamingCore.Sync</a></li>
<li><a href="../modules/ExpGamingLib.html">ExpGamingLib</a></li>
<li><a href="../modules/StdLib.Color.html">StdLib.Color</a></li>
@@ -181,7 +181,7 @@
</div> <!-- id="main" -->
<div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
<i style="float:right;">Last updated 2018-05-31 00:41:31 </i>
<i style="float:right;">Last updated 2018-06-01 16:29:39 </i>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>

View File

@@ -47,7 +47,7 @@
<li><a href="../modules/modules.expgamingcore.gui.guiparts.toolbar.html">modules.expgamingcore.gui.guiparts.toolbar</a></li>
<li><a href="../modules/modules.expgamingcore.gui.control.html">modules.expgamingcore.gui.control</a></li>
<li><a href="../modules/modules.expgamingcore.ranking.control.html">modules.expgamingcore.ranking.control</a></li>
<li><a href="../modules/modules.expgamingcore.server.control.html">modules.expgamingcore.server.control</a></li>
<li><a href="../modules/ExpGamingCore.Server.html">ExpGamingCore.Server</a></li>
<li><a href="../modules/ExpGamingCore.Sync.html">ExpGamingCore.Sync</a></li>
<li><a href="../modules/ExpGamingLib.html">ExpGamingLib</a></li>
<li><a href="../modules/StdLib.Color.html">StdLib.Color</a></li>
@@ -126,7 +126,7 @@
</div> <!-- id="main" -->
<div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
<i style="float:right;">Last updated 2018-05-31 00:41:31 </i>
<i style="float:right;">Last updated 2018-06-01 16:29:39 </i>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>

View File

@@ -47,7 +47,7 @@
<li><strong>modules.expgamingcore.gui.guiparts.toolbar</strong></li>
<li><a href="../modules/modules.expgamingcore.gui.control.html">modules.expgamingcore.gui.control</a></li>
<li><a href="../modules/modules.expgamingcore.ranking.control.html">modules.expgamingcore.ranking.control</a></li>
<li><a href="../modules/modules.expgamingcore.server.control.html">modules.expgamingcore.server.control</a></li>
<li><a href="../modules/ExpGamingCore.Server.html">ExpGamingCore.Server</a></li>
<li><a href="../modules/ExpGamingCore.Sync.html">ExpGamingCore.Sync</a></li>
<li><a href="../modules/ExpGamingLib.html">ExpGamingLib</a></li>
<li><a href="../modules/StdLib.Color.html">StdLib.Color</a></li>
@@ -117,7 +117,7 @@
</div> <!-- id="main" -->
<div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
<i style="float:right;">Last updated 2018-05-31 00:41:31 </i>
<i style="float:right;">Last updated 2018-06-01 16:29:39 </i>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>

View File

@@ -47,7 +47,7 @@
<li><a href="../modules/modules.expgamingcore.gui.guiparts.toolbar.html">modules.expgamingcore.gui.guiparts.toolbar</a></li>
<li><a href="../modules/modules.expgamingcore.gui.control.html">modules.expgamingcore.gui.control</a></li>
<li><strong>modules.expgamingcore.ranking.control</strong></li>
<li><a href="../modules/modules.expgamingcore.server.control.html">modules.expgamingcore.server.control</a></li>
<li><a href="../modules/ExpGamingCore.Server.html">ExpGamingCore.Server</a></li>
<li><a href="../modules/ExpGamingCore.Sync.html">ExpGamingCore.Sync</a></li>
<li><a href="../modules/ExpGamingLib.html">ExpGamingLib</a></li>
<li><a href="../modules/StdLib.Color.html">StdLib.Color</a></li>
@@ -374,7 +374,7 @@
</div> <!-- id="main" -->
<div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
<i style="float:right;">Last updated 2018-05-31 00:41:31 </i>
<i style="float:right;">Last updated 2018-06-01 16:29:39 </i>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>

View File

@@ -1,566 +0,0 @@
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8"/>
<head>
<title>Reference</title>
<link rel="stylesheet" href="../ldoc.css" type="text/css" />
</head>
<body>
<div id="container">
<div id="product">
<div id="product_logo"></div>
<div id="product_name"><big><b></b></big></div>
<div id="product_description"></div>
</div> <!-- id="product" -->
<div id="main">
<!-- Menu -->
<div id="navigation">
<br/>
<h1>ldoc</h1>
<ul>
<li><a href="../index.html">Index</a></li>
</ul>
<h2>Contents</h2>
<ul>
<li><a href="#Functions">Functions</a></li>
</ul>
<h2>Modules</h2>
<ul class="nowrap">
<li><a href="../modules/FSM.html">FSM</a></li>
<li><a href="../modules/modules.expgamingcore.commands.control.html">modules.expgamingcore.commands.control</a></li>
<li><a href="../modules/modules.expgamingcore.gui.guiparts.center.html">modules.expgamingcore.gui.guiparts.center</a></li>
<li><a href="../modules/modules.expgamingcore.gui.guiparts.inputs.html">modules.expgamingcore.gui.guiparts.inputs</a></li>
<li><a href="../modules/modules.expgamingcore.gui.guiparts.left.html">modules.expgamingcore.gui.guiparts.left</a></li>
<li><a href="../modules/modules.expgamingcore.gui.guiparts.popup.html">modules.expgamingcore.gui.guiparts.popup</a></li>
<li><a href="../modules/modules.expgamingcore.gui.guiparts.toolbar.html">modules.expgamingcore.gui.guiparts.toolbar</a></li>
<li><a href="../modules/modules.expgamingcore.gui.control.html">modules.expgamingcore.gui.control</a></li>
<li><a href="../modules/modules.expgamingcore.ranking.control.html">modules.expgamingcore.ranking.control</a></li>
<li><strong>modules.expgamingcore.server.control</strong></li>
<li><a href="../modules/ExpGamingCore.Sync.html">ExpGamingCore.Sync</a></li>
<li><a href="../modules/ExpGamingLib.html">ExpGamingLib</a></li>
<li><a href="../modules/StdLib.Color.html">StdLib.Color</a></li>
<li><a href="../modules/StdLib.Game.html">StdLib.Game</a></li>
<li><a href="../modules/StdLib.String.html">StdLib.String</a></li>
<li><a href="../modules/StdLib.Table.html">StdLib.Table</a></li>
<li><a href="../modules/StdLib.Time.html">StdLib.Time</a></li>
</ul>
</div>
<div id="content">
<h1>Module <code>modules.expgamingcore.server.control</code></h1>
<p>Returns a un-used uuid (better system needed)</p>
<p></p>
<h3>Usage:</h3>
<ul>
<pre class="example">obj.uuid = Server.new_uuid()
</pre>
</ul>
<h2><a href="#Functions">Functions</a></h2>
<table class="function_list">
<tr>
<td class="name" nowrap><a href="#Server.threads">Server.threads ([count=nil])</a></td>
<td class="summary">Returns either the number of threads or a able of threads</td>
</tr>
<tr>
<td class="name" nowrap><a href="#Server.get_thread">Server.get_thread (mixed)</a></td>
<td class="summary">Used to get a thread via it's uuid or by name if one is given</td>
</tr>
<tr>
<td class="name" nowrap><a href="#Server.queue_thread">Server.queue_thread (thread_to_queue)</a></td>
<td class="summary">Adds a thread into the resolve queue, can be used to lower lag</td>
</tr>
<tr>
<td class="name" nowrap><a href="#Server.close_all_threads">Server.close_all_threads (with_force)</a></td>
<td class="summary">Closes all active threads, can use force if it causes errors</td>
</tr>
<tr>
<td class="name" nowrap><a href="#Server.run_tick_threads">Server.run_tick_threads ()</a></td>
<td class="summary">Runs all the theads which have opened with an on_tick event</td>
</tr>
<tr>
<td class="name" nowrap><a href="#Server.check_timeouts">Server.check_timeouts ()</a></td>
<td class="summary">Checks the timeout on all active timeout threads</td>
</tr>
<tr>
<td class="name" nowrap><a href="#Server._thread_handler">Server._thread_handler (event)</a></td>
<td class="summary">Calles all threads on a certain game event (used with script.on_event)</td>
</tr>
<tr>
<td class="name" nowrap><a href="#Server.interface">Server.interface (callback[, use_thread[, ...]])</a></td>
<td class="summary">Given a string or function it will run that function and return any values</td>
</tr>
<tr>
<td class="name" nowrap><a href="#Server._thread:valid">Server._thread:valid (skip_location_check)</a></td>
<td class="summary">Test if the thread has all requied parts</td>
</tr>
<tr>
<td class="name" nowrap><a href="#Server._thread:open">Server._thread:open ()</a></td>
<td class="summary">Opens the thread by storing it in a place the server object can find it</td>
</tr>
<tr>
<td class="name" nowrap><a href="#Server._thread:close">Server._thread:close ()</a></td>
<td class="summary">Inverse of thread:open() - it removes the thread and calles on_close</td>
</tr>
<tr>
<td class="name" nowrap><a href="#Server._thread:resolve">Server._thread:resolve ([...])</a></td>
<td class="summary">Trigger the on_resolve function and closes the thread - error and success called based on result of pcall (useful for async)</td>
</tr>
<tr>
<td class="name" nowrap><a href="#Server._thread:check_timeout">Server._thread:check_timeout ()</a></td>
<td class="summary">Checks the timeout on a thread - if timedout then it calles on_timeout and closes</td>
</tr>
<tr>
<td class="name" nowrap><a href="#Server._thread:error">Server._thread:error (err)</a></td>
<td class="summary">Rasies an error on this thread</td>
</tr>
<tr>
<td class="name" nowrap><a href="#Server._thread:on_event">Server._thread:on_event (event, callback)</a></td>
<td class="summary">Set function to run then an event is called on a thread, none of them are 'needed' but you are advised to have atleast one</td>
</tr>
</table>
<br/>
<br/>
<h2 class="section-header "><a name="Functions"></a>Functions</h2>
<dl class="function">
<dt>
<a name = "Server.threads"></a>
<strong>Server.threads ([count=nil])</strong>
</dt>
<dd>
Returns either the number of threads or a able of threads
<h3>Parameters:</h3>
<ul>
<li><span class="parameter">count</span>
<span class="types"><span class="type">bolean</span></span>
true to return the number of threads
(<em>default</em> nil)
</li>
</ul>
<h3>Returns:</h3>
<ol>
either a list of threads or a number
</ol>
<h3>Usage:</h3>
<ul>
<pre class="example">Server.threads() <span class="comment">-- return {...}
</span> Server.threads(<span class="keyword">true</span>) <span class="comment">-- return int</span></pre>
</ul>
</dd>
<dt>
<a name = "Server.get_thread"></a>
<strong>Server.get_thread (mixed)</strong>
</dt>
<dd>
Used to get a thread via it's uuid or by name if one is given
<h3>Parameters:</h3>
<ul>
<li><span class="parameter">mixed</span>
either a uuid or the name given to a thread
</li>
</ul>
<h3>Returns:</h3>
<ol>
<span class="types"><a class="type" href="https://www.lua.org/manual/5.2/manual.html#6.5">table</a></span>
the thread by that name or uuid
</ol>
<h3>Usage:</h3>
<ul>
<pre class="example">Server.get_thread(<span class="string">'decon'</span>) <span class="comment">-- return thread</span></pre>
</ul>
</dd>
<dt>
<a name = "Server.queue_thread"></a>
<strong>Server.queue_thread (thread_to_queue)</strong>
</dt>
<dd>
Adds a thread into the resolve queue, can be used to lower lag
<h3>Parameters:</h3>
<ul>
<li><span class="parameter">thread_to_queue</span>
<span class="types"><a class="type" href="https://www.lua.org/manual/5.2/manual.html#6.5">table</a></span>
the thread to add to the queue must have a resolve function (must be open)
</li>
</ul>
<h3>Returns:</h3>
<ol>
<span class="types"><span class="type">boolean</span></span>
was the thread added
</ol>
<h3>Usage:</h3>
<ul>
<pre class="example">Server.queue_thread(thread) <span class="comment">-- return true/false</span></pre>
</ul>
</dd>
<dt>
<a name = "Server.close_all_threads"></a>
<strong>Server.close_all_threads (with_force)</strong>
</dt>
<dd>
Closes all active threads, can use force if it causes errors
<h3>Parameters:</h3>
<ul>
<li><span class="parameter">with_force</span>
<span class="types"><span class="type">bolean</span></span>
use force when closing
</li>
</ul>
<h3>Usage:</h3>
<ul>
<pre class="example">Server.close_all_threads()
Server.close_all_threads(<span class="keyword">true</span>) <span class="comment">-- use if no force makes errors</span></pre>
</ul>
</dd>
<dt>
<a name = "Server.run_tick_threads"></a>
<strong>Server.run_tick_threads ()</strong>
</dt>
<dd>
Runs all the theads which have opened with an on_tick event
<h3>Usage:</h3>
<ul>
<pre class="example">Server.run_tick_threads()</pre>
</ul>
</dd>
<dt>
<a name = "Server.check_timeouts"></a>
<strong>Server.check_timeouts ()</strong>
</dt>
<dd>
Checks the timeout on all active timeout threads
<h3>Usage:</h3>
<ul>
<pre class="example">Server.check_timeouts()</pre>
</ul>
</dd>
<dt>
<a name = "Server._thread_handler"></a>
<strong>Server._thread_handler (event)</strong>
</dt>
<dd>
Calles all threads on a certain game event (used with script.on_event)
<h3>Parameters:</h3>
<ul>
<li><span class="parameter">event</span>
<span class="types"><a class="type" href="https://www.lua.org/manual/5.2/manual.html#6.5">table</a></span>
the event that is called
</li>
</ul>
</dd>
<dt>
<a name = "Server.interface"></a>
<strong>Server.interface (callback[, use_thread[, ...]])</strong>
</dt>
<dd>
Given a string or function it will run that function and return any values
<h3>Parameters:</h3>
<ul>
<li><span class="parameter">callback</span>
either a function or string which will be ran via pcall
</li>
<li><span class="parameter">use_thread</span>
give a thread for the interface to run on (does not need to be open, but cant use on_resolve)
(<em>optional</em>)
</li>
<li><span class="parameter">...</span>
any args you want to pass to the function
(<em>optional</em>)
</li>
</ul>
<h3>Usage:</h3>
<ul>
<pre class="example">Server.interface(<span class="string">'local x = 1+1 print(x) return x'</span>) <span class="comment">-- return 2
</span> Server.interface(<span class="string">'local x = 1+1 print(x)'</span>,thread) <span class="comment">-- no return</span></pre>
</ul>
</dd>
<dt>
<a name = "Server._thread:valid"></a>
<strong>Server._thread:valid (skip_location_check)</strong>
</dt>
<dd>
Test if the thread has all requied parts
<h3>Parameters:</h3>
<ul>
<li><span class="parameter">skip_location_check</span>
<span class="types"><span class="type">bolean</span></span>
true to skip the location check
</li>
</ul>
<h3>Returns:</h3>
<ol>
<span class="types"><span class="type">bolean</span></span>
is the thread valid
</ol>
<h3>Usage:</h3>
<ul>
<pre class="example"><span class="keyword">if</span> thread:valid() <span class="keyword">then</span> <span class="keyword">end</span></pre>
</ul>
</dd>
<dt>
<a name = "Server._thread:open"></a>
<strong>Server._thread:open ()</strong>
</dt>
<dd>
Opens the thread by storing it in a place the server object can find it
<h3>Returns:</h3>
<ol>
<span class="types"><span class="type">bolean</span></span>
if the thread was opened
</ol>
<h3>Usage:</h3>
<ul>
<pre class="example">thread:open() <span class="comment">-- return true</span></pre>
</ul>
</dd>
<dt>
<a name = "Server._thread:close"></a>
<strong>Server._thread:close ()</strong>
</dt>
<dd>
Inverse of thread:open() - it removes the thread and calles on_close
<h3>Returns:</h3>
<ol>
<span class="types"><span class="type">bolean</span></span>
if the thread had a on_close function
</ol>
<h3>Usage:</h3>
<ul>
<pre class="example">thread:close() <span class="comment">-- return true</span></pre>
</ul>
</dd>
<dt>
<a name = "Server._thread:resolve"></a>
<strong>Server._thread:resolve ([...])</strong>
</dt>
<dd>
Trigger the on_resolve function and closes the thread - error and success called based on result of pcall (useful for async)
<h3>Parameters:</h3>
<ul>
<li><span class="parameter">...</span>
any arguments you want to pass to the resolve function
(<em>optional</em>)
</li>
</ul>
<h3>Returns:</h3>
<ol>
<span class="types"><span class="type">bolean</span></span>
true if the thread called on_success or on_error
</ol>
<h3>Usage:</h3>
<ul>
<pre class="example">thread:resolve(x,y,z) <span class="comment">-- return true</span></pre>
</ul>
</dd>
<dt>
<a name = "Server._thread:check_timeout"></a>
<strong>Server._thread:check_timeout ()</strong>
</dt>
<dd>
Checks the timeout on a thread - if timedout then it calles on_timeout and closes
<h3>Returns:</h3>
<ol>
<span class="types"><span class="type">bolean</span></span>
if the thread timedout
</ol>
<h3>Usage:</h3>
<ul>
<pre class="example">thread:check_timeout() <span class="comment">-- return true</span></pre>
</ul>
</dd>
<dt>
<a name = "Server._thread:error"></a>
<strong>Server._thread:error (err)</strong>
</dt>
<dd>
Rasies an error on this thread
<h3>Parameters:</h3>
<ul>
<li><span class="parameter">err</span>
the err to be rasied
</li>
</ul>
<h3>Returns:</h3>
<ol>
<span class="types"><span class="type">bolean</span></span>
did the thread handdle the error
</ol>
<h3>Usage:</h3>
<ul>
<pre class="example">thread:<span class="global">error</span>(err) <span class="comment">-- return true</span></pre>
</ul>
</dd>
<dt>
<a name = "Server._thread:on_event"></a>
<strong>Server._thread:on_event (event, callback)</strong>
</dt>
<dd>
Set function to run then an event is called on a thread, none of them are 'needed' but you are advised to have atleast one
<h3>Parameters:</h3>
<ul>
<li><span class="parameter">event</span>
<span class="types"><a class="type" href="https://www.lua.org/manual/5.2/manual.html#6.4">string</a></span>
the name of the event that it is called on
</li>
<li><span class="parameter">callback</span>
<span class="types"><span class="type">function</span></span>
the function which is called on the event
</li>
</ul>
<h3>Returns:</h3>
<ol>
<span class="types"><a class="type" href="https://www.lua.org/manual/5.2/manual.html#6.5">table</a></span>
returns self so that there can be chained
</ol>
<h3>Usage:</h3>
<ul>
<pre class="example">thread:on_event(<span class="string">'close'</span>,<span class="keyword">function</span>) <span class="comment">-- return true
</span>events = [<span class="string">'close'</span>,<span class="string">'timeout'</span>,<span class="string">'tick'</span>,<span class="string">'resolve'</span>,<span class="string">'success'</span>,<span class="string">'error'</span>]
<span class="keyword">if</span> event is a number <span class="keyword">then</span> it is asumed to be a game event</pre>
</ul>
</dd>
</dl>
</div> <!-- id="content" -->
</div> <!-- id="main" -->
<div id="about">
<i>generated by <a href="http://github.com/stevedonovan/LDoc">LDoc 1.4.6</a></i>
<i style="float:right;">Last updated 2018-05-31 00:41:31 </i>
</div> <!-- id="about" -->
</div> <!-- id="container" -->
</body>
</html>

View File

@@ -8,16 +8,25 @@ local Server = {}
--- Global Table
-- @table global
-- @field all a list of every thread (indexed by uuid)
-- @field queue an index for threads which will be resolved (contains uuids)
-- @field tick an index for threads which will run every tick (contains uuids)
-- @field timeout an index for threads which will timeout (contains uuids)
-- @field events an index of threads based on event ids (contains uuids)
-- @field paused an index of pasued threads (contains uuids)
-- @field named a name index for thread uuids
-- @field print_to contains players that event details will be printed to
-- @field uuid contains the random number generator for the uuid system
local global = global{
all={_n=0}, -- a list of every thread (indexed by uuid)
queue={}, -- an index for threads which will be resolved (contains uuids)
tick={}, -- an index for threads which will run every tick (contains uuids)
timeout={}, -- an index for threads which will timeout (contains uuids)
events={}, -- an index of threads based on event ids (contains uuids)
paused={}, -- an index of pasued threads (contains uuids)
named={}, -- a name index for thread uuids
print_to={}, -- contains players that event details will be printed to
uuid=nil -- contains the random number generator for the uuid system
all={_n=0},
queue={},
tick={},
timeout={},
events={},
paused={},
named={},
print_to={},
uuid=nil
}
--- Used to generate a new uuid for the thread system
@@ -220,7 +229,7 @@ function Server.interface(callback,use_thread,env,...)
end
--- The class for the server threads, allows abbilty to run async function
-- @class Thread
-- @type Thread
-- @alias Server._thread
Server._thread = {}

View File

@@ -7,6 +7,9 @@
--- This file will be loaded when ExpGamingCore.Commands is present
-- @function _comment
--- Runs the given input from the script
-- @command interface
-- @param code The code that will be ran
commands.add_command('interface', 'Runs the given input from the script', {'code',true}, function(event,args)
local callback = args.code
-- looks for spaces, if non the it will prefix the command with return

View File

@@ -6,30 +6,52 @@
local Sync = {}
local Sync_updates = {}
--- Global Table
-- @table global
-- @field server_name the server name
-- @field server_description a short description of the server
-- @field reset_time the reset time of the server
-- @field time the last knowen irl time
-- @field time_set the last in game time that the time was set
-- @field last_update the last time that this info was updated
-- @field time_period how often this infomation is updated
-- @field players a list of different player related states
-- @field ranks a list of player ranks
-- @field rockets the number of rockets launched
-- @field mods the mods which are loaded
local global = global{
server_name='Factorio Server', -- the server name
server_description='A factorio server for everyone', -- a short description of the server
reset_time='On Demand', -- the reset time of the server
time='Day Mth 00 00:00:00 UTC Year', -- the last knowen irl time
time_set={0,'0.00M'}, -- the last in game time that the time was set
last_update={0,'0.00M'}, -- the last time that this info was updated
time_period={18000,'5.00M'}, -- how often this infomation is updated
server_name='Factorio Server',
server_description='A factorio server for everyone',
reset_time='On Demand',
time='Day Mth 00 00:00:00 UTC Year',
time_set={0,'0.00M'},
last_update={0,'0.00M'},
time_period={18000,'5.00M'},
players={
online={'Offline'}, -- list of all players online
n_online=0, -- the number of players online
all={'Offline'}, -- list of all player on or offline
n_all=0, -- the number of players who have joined the server
admins_online=0, -- the number of admins online
afk_players=0, -- the number of afk players
times={'Offline'} -- the play times of every player
}, -- a sub list of players in the game
ranks={'Offline'}, -- a list of player ranks
rockets=0, -- the number of rockets launched
mods={'Offline'} -- the mods which are loaded
online={'Offline'},
n_online=0,
all={'Offline'},
n_all=0,
admins_online=0,
afk_players=0,
times={'Offline'}
},
ranks={'Offline'},
rockets=0,
mods={'Offline'}
}
--- Player sub-table
-- @table global.players
-- @field online list of all players online
-- @field n_online the number of players online
-- @field all list of all player on or offline
-- @field n_all the number of players who have joined the server
-- @field admins_online the number of admins online
-- @field afk_players the number of afk players
-- @field times the play times of every player
--- Used to standidise the tick format for any sync info
-- @usage Sync.tick_format(60) -- return {60,'1.00M'}
-- @treturn {number,string} table containg both the raw number and clean version of a time