mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-27 05:57:24 +01:00
16 lines
9.1 KiB
HTML
16 lines
9.1 KiB
HTML
<!DOCTYPE html><html lang="en"><head><meta charset="utf-8"><base href="../../../"><link rel="stylesheet" href="dmdoc.css"><title>/datum/controller/subsystem/verb_manager - Space Station 13</title></head><body><header><a href="index.html">Space Station 13</a> - <a href="index.html#modules">Modules</a> - <a href="index.html#types">Types</a> — <a href="datum/controller/subsystem/verb_manager.html#var">Var Details</a> - <a href="datum/controller/subsystem/verb_manager.html#proc">Proc Details</a></header><main><h1>verb_manager <aside>/<a href="datum.html">datum</a>/<a href="datum/controller.html">controller</a>/<a href="datum/controller/subsystem.html">subsystem</a>/<a href="datum/controller/subsystem/verb_manager.html">verb_manager</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/controllers/subsystem/SSverb_manager.dm#L22"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/SSverb_manager.dm 22"></a></h1><table class="summary" cellspacing="0"><tr><td colspan="2"><h2>Vars</h2></td></tr><tr><th><a href="datum/controller/subsystem/verb_manager.html#var/FOR_ADMINS_IF_VERBS_FUCKED_immediately_execute_all_verbs">FOR_ADMINS_IF_VERBS_FUCKED_immediately_execute_all_verbs</a></th><td>if this is true all verbs immediately execute and dont queue. in case the mc is fucked or something</td></tr><tr><th><a href="datum/controller/subsystem/verb_manager.html#var/always_queue">always_queue</a></th><td>always queue if possible. overides can_queue_admin_verbs but not FOR_ADMINS_IF_VERBS_FUCKED_immediately_execute_all_verbs</td></tr><tr><th><a href="datum/controller/subsystem/verb_manager.html#var/can_queue_admin_verbs">can_queue_admin_verbs</a></th><td>if TRUE we treat usr's with holders just like usr's without holders. otherwise they always execute immediately</td></tr><tr><th><a href="datum/controller/subsystem/verb_manager.html#var/message_admins_on_queue">message_admins_on_queue</a></th><td>if TRUE this will... message admins every time a verb is queued to this subsystem for the next tick with stats.
|
||
for obvious reasons dont make this be TRUE on the code level this is for admins to turn on</td></tr><tr><th><a href="datum/controller/subsystem/verb_manager.html#var/verb_queue">verb_queue</a></th><td>list of callbacks to procs called from verbs or verblike procs that were executed when the server was overloaded and had to delay to the next tick.
|
||
this list is ran through every tick, and the subsystem does not yield until this queue is finished.</td></tr><tr><th><a href="datum/controller/subsystem/verb_manager.html#var/verbs_executed_per_second">verbs_executed_per_second</a></th><td>running average of how many verb callbacks are executed every second. used for the stat entry</td></tr><tr><td colspan="2"><h2>Procs</h2></td></tr><tr><th><a href="datum/controller/subsystem/verb_manager.html#proc/can_queue_verb">can_queue_verb</a></th><td>subsystem-specific check for whether a callback can be queued.
|
||
intended so that subsystem subtypes can verify whether</td></tr><tr><th><a href="datum/controller/subsystem/verb_manager.html#proc/queue_verb">queue_verb</a></th><td>queue a callback for the given proc, so that it is invoked in the next tick.
|
||
intended to only work with verbs or verblike procs called directly from client input, use as part of TRY_QUEUE_VERB()</td></tr><tr><th><a href="datum/controller/subsystem/verb_manager.html#proc/run_verb_queue">run_verb_queue</a></th><td>runs through all of this subsystems queue of verb callbacks.
|
||
goes through the entire verb queue without yielding.
|
||
used so you can flush the queue outside of fire() without interfering with anything else subtype subsystems might do in fire().</td></tr></table><h2 id="var">Var Details</h2><h3 id="var/FOR_ADMINS_IF_VERBS_FUCKED_immediately_execute_all_verbs"><aside class="declaration">var </aside>FOR_ADMINS_IF_VERBS_FUCKED_immediately_execute_all_verbs <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/controllers/subsystem/SSverb_manager.dm#L40"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/SSverb_manager.dm 40"></a></h3><p>if this is true all verbs immediately execute and dont queue. in case the mc is fucked or something</p><h3 id="var/always_queue"><aside class="declaration">var </aside>always_queue <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/controllers/subsystem/SSverb_manager.dm#L47"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/SSverb_manager.dm 47"></a></h3><p>always queue if possible. overides can_queue_admin_verbs but not FOR_ADMINS_IF_VERBS_FUCKED_immediately_execute_all_verbs</p><h3 id="var/can_queue_admin_verbs"><aside class="declaration">var </aside>can_queue_admin_verbs <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/controllers/subsystem/SSverb_manager.dm#L37"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/SSverb_manager.dm 37"></a></h3><p>if TRUE we treat usr's with holders just like usr's without holders. otherwise they always execute immediately</p><h3 id="var/message_admins_on_queue"><aside class="declaration">var </aside>message_admins_on_queue <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/controllers/subsystem/SSverb_manager.dm#L44"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/SSverb_manager.dm 44"></a></h3><p>if TRUE this will... message admins every time a verb is queued to this subsystem for the next tick with stats.
|
||
for obvious reasons dont make this be TRUE on the code level this is for admins to turn on</p><h3 id="var/verb_queue"><aside class="declaration">var </aside>verb_queue <aside>– /list/<a href="datum.html">datum</a>/<a href="datum/callback/verb_callback.html">callback/verb_callback</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/controllers/subsystem/SSverb_manager.dm#L31"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/SSverb_manager.dm 31"></a></h3><p>list of callbacks to procs called from verbs or verblike procs that were executed when the server was overloaded and had to delay to the next tick.
|
||
this list is ran through every tick, and the subsystem does not yield until this queue is finished.</p><h3 id="var/verbs_executed_per_second"><aside class="declaration">var </aside>verbs_executed_per_second <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/controllers/subsystem/SSverb_manager.dm#L34"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/SSverb_manager.dm 34"></a></h3><p>running average of how many verb callbacks are executed every second. used for the stat entry</p><h2 id="proc">Proc Details</h2><h3 id="proc/can_queue_verb"><aside class="declaration">proc </aside>can_queue_verb<aside>(/<a href="datum.html">datum</a>/<a href="datum/callback/verb_callback.html">callback/verb_callback</a>/incoming_callback) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/controllers/subsystem/SSverb_manager.dm#L113"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/SSverb_manager.dm 113"></a></aside></h3><p>subsystem-specific check for whether a callback can be queued.
|
||
intended so that subsystem subtypes can verify whether</p>
|
||
<p>subtypes may include additional arguments here if they need them! you just need to include them properly
|
||
in TRY_QUEUE_VERB() and co.</p><h3 id="proc/queue_verb"><aside class="declaration">proc </aside>queue_verb<aside>(/<a href="datum.html">datum</a>/<a href="datum/callback/verb_callback.html">callback/verb_callback</a>/incoming_callback) <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/controllers/subsystem/SSverb_manager.dm#L131"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/SSverb_manager.dm 131"></a></aside></h3><p>queue a callback for the given proc, so that it is invoked in the next tick.
|
||
intended to only work with verbs or verblike procs called directly from client input, use as part of TRY_QUEUE_VERB()</p>
|
||
<p>returns TRUE if the queuing was successful, FALSE otherwise.</p><h3 id="proc/run_verb_queue"><aside class="declaration">proc </aside>run_verb_queue<aside>() <a href="https://github.com/ParadiseSS13/Paradise/blob/8a8a00a2a9bec485351e5f219982b7315d3504fa/code/controllers/subsystem/SSverb_manager.dm#L144"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/SSverb_manager.dm 144"></a></aside></h3><p>runs through all of this subsystems queue of verb callbacks.
|
||
goes through the entire verb queue without yielding.
|
||
used so you can flush the queue outside of fire() without interfering with anything else subtype subsystems might do in fire().</p></main><footer>paradise.dme <a href="https://github.com/ParadiseSS13/Paradise/tree/8a8a00a2a9bec485351e5f219982b7315d3504fa">8a8a00a</a> (master) — <a href="https://github.com/SpaceManiac/SpacemanDMM/blob/master/crates/dmdoc/README.md">dmdoc 1.11.0</a></footer></body></html> |