Files

11 lines
13 KiB
HTML
Raw Permalink 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"><base href="../../../"><link rel="stylesheet" href="dmdoc.css"><title>/datum/controller/subsystem/pathfinder - 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/pathfinder.html#var">Var Details</a> - <a href="datum/controller/subsystem/pathfinder.html#proc">Proc Details</a></header><main><h1>pathfinder <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/pathfinder.html">pathfinder</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/776b9861f70566b1e6a0763a465ef22f7920a3d6/code/controllers/subsystem/non_firing/SSpathfinder.dm#L2"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/non_firing/SSpathfinder.dm 2"></a></h1><table class="summary" cellspacing="0"><tr><td colspan="2"><h2>Vars</h2></td></tr><tr><th><a href="datum/controller/subsystem/pathfinder.html#var/active_pathing">active_pathing</a></th><td>List of pathfind datums we are currently trying to process</td></tr><tr><th><a href="datum/controller/subsystem/pathfinder.html#var/currentmaps">currentmaps</a></th><td>List of uncheccked source_to_map entries</td></tr><tr><th><a href="datum/controller/subsystem/pathfinder.html#var/currentrun">currentrun</a></th><td>List of pathfind datums being ACTIVELY processed. exists to make subsystem stats readable</td></tr><tr><th><a href="datum/controller/subsystem/pathfinder.html#var/source_to_maps">source_to_maps</a></th><td>Assoc list of target turf -&gt; list(/datum/path_map) centered on the turf</td></tr><tr><td colspan="2"><h2>Procs</h2></td></tr><tr><th><a href="datum/controller/subsystem/pathfinder.html#proc/build_map">build_map</a></th><td>Initiates a SSSP run. Returns true if we're good, FALSE if something's failed</td></tr><tr><th><a href="datum/controller/subsystem/pathfinder.html#proc/can_pass_build_map">can_pass_build_map</a></th><td>Initiates a SSSP run from a pass_info datum. Returns true if we're good, FALSE if something's failed</td></tr><tr><th><a href="datum/controller/subsystem/pathfinder.html#proc/get_valid_map">get_valid_map</a></th><td>Takes a set of pathfind info, returns the first valid pathmap that would work if one exists
Optionally takes a max age to accept (defaults to 0 seconds) and a minimum acceptable range
If include_building is true and we can only find a building path, ew'll use that instead. tho we will wait for it to finish first</td></tr><tr><th><a href="datum/controller/subsystem/pathfinder.html#proc/get_valid_maps">get_valid_maps</a></th><td>Takes a set of pathfind info, returns all valid pathmaps that would work
Takes an optional minimum range arg</td></tr><tr><th><a href="datum/controller/subsystem/pathfinder.html#proc/path_map_cache">path_map_cache</a></th><td>Caches the passed in path_map, allowing for reuse in future</td></tr><tr><th><a href="datum/controller/subsystem/pathfinder.html#proc/pathfind">pathfind</a></th><td>Initiates a pathfind. Returns true if we're good, FALSE if something's failed</td></tr><tr><th><a href="datum/controller/subsystem/pathfinder.html#proc/run_pathfind">run_pathfind</a></th><td>Begins to handle a pathfinding run based off the input /datum/pathfind datum
You should not use this, it exists to allow for shenanigans. You do not know how to do shenanigans</td></tr><tr><th><a href="datum/controller/subsystem/pathfinder.html#proc/swarmed_pathfind">swarmed_pathfind</a></th><td>Initiates a swarmed pathfind. Returns TRUE if we're good, FALSE if something's failed
If a valid pathmap exists for the TARGET turf we'll use that, otherwise we have to build a new one</td></tr><tr><th><a href="datum/controller/subsystem/pathfinder.html#proc/ventcrawl_pathfind">ventcrawl_pathfind</a></th><td>Initiates a pathfind. Returns true if we're good, FALSE if something's failed</td></tr></table><h2 id="var">Var Details</h2><h3 id="var/active_pathing"><aside class="declaration">var </aside>active_pathing <aside> /list/<a href="datum.html">datum</a>/<a href="datum/pathfind.html">pathfind</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/776b9861f70566b1e6a0763a465ef22f7920a3d6/code/controllers/subsystem/non_firing/SSpathfinder.dm#L8"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/non_firing/SSpathfinder.dm 8"></a></h3><p>List of pathfind datums we are currently trying to process</p><h3 id="var/currentmaps"><aside class="declaration">var </aside>currentmaps <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/776b9861f70566b1e6a0763a465ef22f7920a3d6/code/controllers/subsystem/non_firing/SSpathfinder.dm#L12"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/non_firing/SSpathfinder.dm 12"></a></h3><p>List of uncheccked source_to_map entries</p><h3 id="var/currentrun"><aside class="declaration">var </aside>currentrun <aside> /list/<a href="datum.html">datum</a>/<a href="datum/pathfind.html">pathfind</a></aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/776b9861f70566b1e6a0763a465ef22f7920a3d6/code/controllers/subsystem/non_firing/SSpathfinder.dm#L10"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/non_firing/SSpathfinder.dm 10"></a></h3><p>List of pathfind datums being ACTIVELY processed. exists to make subsystem stats readable</p><h3 id="var/source_to_maps"><aside class="declaration">var </aside>source_to_maps <aside> /list</aside> <a href="https://github.com/ParadiseSS13/Paradise/blob/776b9861f70566b1e6a0763a465ef22f7920a3d6/code/controllers/subsystem/non_firing/SSpathfinder.dm#L14"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/non_firing/SSpathfinder.dm 14"></a></h3><p>Assoc list of target turf -&gt; list(/datum/path_map) centered on the turf</p><h2 id="proc">Proc Details</h2><h3 id="proc/build_map"><aside class="declaration">proc </aside>build_map<aside>(/<a href="atom.html">atom</a>/<a href="atom/movable.html">movable</a>/pathfind_caller, /<a href="turf.html">turf</a>/source, max_distance, access, simulated_only, /<a href="turf.html">turf</a>/exclude, /list/<a href="datum.html">datum</a>/callback/on_finish) <a href="https://github.com/ParadiseSS13/Paradise/blob/776b9861f70566b1e6a0763a465ef22f7920a3d6/code/controllers/subsystem/non_firing/SSpathfinder.dm#L135"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/non_firing/SSpathfinder.dm 135"></a></aside></h3><p>Initiates a SSSP run. Returns true if we're good, FALSE if something's failed</p><h3 id="proc/can_pass_build_map"><aside class="declaration">proc </aside>can_pass_build_map<aside>(/<a href="datum.html">datum</a>/<a href="datum/can_pass_info.html">can_pass_info</a>/pass_info, /<a href="turf.html">turf</a>/source, max_distance, simulated_only, /<a href="turf.html">turf</a>/exclude, /list/<a href="datum.html">datum</a>/callback/on_finish) <a href="https://github.com/ParadiseSS13/Paradise/blob/776b9861f70566b1e6a0763a465ef22f7920a3d6/code/controllers/subsystem/non_firing/SSpathfinder.dm#L144"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/non_firing/SSpathfinder.dm 144"></a></aside></h3><p>Initiates a SSSP run from a pass_info datum. Returns true if we're good, FALSE if something's failed</p><h3 id="proc/get_valid_map"><aside class="declaration">proc </aside>get_valid_map<aside>(/<a href="datum.html">datum</a>/<a href="datum/can_pass_info.html">can_pass_info</a>/pass_info, /<a href="turf.html">turf</a>/target, simulated_only, /<a href="turf.html">turf</a>/exclude, age, min_range, include_building) <a href="https://github.com/ParadiseSS13/Paradise/blob/776b9861f70566b1e6a0763a465ef22f7920a3d6/code/controllers/subsystem/non_firing/SSpathfinder.dm#L161"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/non_firing/SSpathfinder.dm 161"></a></aside></h3><p>Takes a set of pathfind info, returns the first valid pathmap that would work if one exists
Optionally takes a max age to accept (defaults to 0 seconds) and a minimum acceptable range
If include_building is true and we can only find a building path, ew'll use that instead. tho we will wait for it to finish first</p><h3 id="proc/get_valid_maps"><aside class="declaration">proc </aside>get_valid_maps<aside>(/<a href="datum.html">datum</a>/<a href="datum/can_pass_info.html">can_pass_info</a>/pass_info, /<a href="turf.html">turf</a>/target, simulated_only, /<a href="turf.html">turf</a>/exclude, age, min_range, include_building) <a href="https://github.com/ParadiseSS13/Paradise/blob/776b9861f70566b1e6a0763a465ef22f7920a3d6/code/controllers/subsystem/non_firing/SSpathfinder.dm#L190"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/non_firing/SSpathfinder.dm 190"></a></aside></h3><p>Takes a set of pathfind info, returns all valid pathmaps that would work
Takes an optional minimum range arg</p><h3 id="proc/path_map_cache"><aside class="declaration">proc </aside>path_map_cache<aside>(/<a href="turf.html">turf</a>/target, /<a href="datum.html">datum</a>/<a href="datum/path_map.html">path_map</a>/hand_back) <a href="https://github.com/ParadiseSS13/Paradise/blob/776b9861f70566b1e6a0763a465ef22f7920a3d6/code/controllers/subsystem/non_firing/SSpathfinder.dm#L107"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/non_firing/SSpathfinder.dm 107"></a></aside></h3><p>Caches the passed in path_map, allowing for reuse in future</p><h3 id="proc/pathfind"><aside class="declaration">proc </aside>pathfind<aside>(/<a href="atom.html">atom</a>/<a href="atom/movable.html">movable</a>/pathfind_caller, /<a href="atom.html">atom</a>/end, max_distance, mintargetdist, access, simulated_only, /<a href="turf.html">turf</a>/exclude, skip_first, diagonal_handling, /list/<a href="datum.html">datum</a>/callback/on_finish) <a href="https://github.com/ParadiseSS13/Paradise/blob/776b9861f70566b1e6a0763a465ef22f7920a3d6/code/controllers/subsystem/non_firing/SSpathfinder.dm#L63"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/non_firing/SSpathfinder.dm 63"></a></aside></h3><p>Initiates a pathfind. Returns true if we're good, FALSE if something's failed</p><h3 id="proc/run_pathfind"><aside class="declaration">proc </aside>run_pathfind<aside>(/<a href="datum.html">datum</a>/<a href="datum/pathfind.html">pathfind</a>/run) <a href="https://github.com/ParadiseSS13/Paradise/blob/776b9861f70566b1e6a0763a465ef22f7920a3d6/code/controllers/subsystem/non_firing/SSpathfinder.dm#L154"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/non_firing/SSpathfinder.dm 154"></a></aside></h3><p>Begins to handle a pathfinding run based off the input /datum/pathfind datum
You should not use this, it exists to allow for shenanigans. You do not know how to do shenanigans</p><h3 id="proc/swarmed_pathfind"><aside class="declaration">proc </aside>swarmed_pathfind<aside>(/<a href="atom.html">atom</a>/<a href="atom/movable.html">movable</a>/pathfind_caller, /<a href="atom.html">atom</a>/end, max_distance, mintargetdist, age, access, simulated_only, /<a href="turf.html">turf</a>/exclude, skip_first, /list/<a href="datum.html">datum</a>/callback/on_finish) <a href="https://github.com/ParadiseSS13/Paradise/blob/776b9861f70566b1e6a0763a465ef22f7920a3d6/code/controllers/subsystem/non_firing/SSpathfinder.dm#L73"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/non_firing/SSpathfinder.dm 73"></a></aside></h3><p>Initiates a swarmed pathfind. Returns TRUE if we're good, FALSE if something's failed
If a valid pathmap exists for the TARGET turf we'll use that, otherwise we have to build a new one</p><h3 id="proc/ventcrawl_pathfind"><aside class="declaration">proc </aside>ventcrawl_pathfind<aside>(/<a href="atom.html">atom</a>/<a href="atom/movable.html">movable</a>/pathfind_caller, /<a href="atom.html">atom</a>/end, skip_first, /list/<a href="datum.html">datum</a>/callback/on_finish) <a href="https://github.com/ParadiseSS13/Paradise/blob/776b9861f70566b1e6a0763a465ef22f7920a3d6/code/controllers/subsystem/non_firing/SSpathfinder.dm#L209"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/non_firing/SSpathfinder.dm 209"></a></aside></h3><p>Initiates a pathfind. Returns true if we're good, FALSE if something's failed</p></main><footer>paradise.dme <a href="https://github.com/ParadiseSS13/Paradise/tree/776b9861f70566b1e6a0763a465ef22f7920a3d6">776b986</a> (master) — <a href="https://github.com/SpaceManiac/SpacemanDMM/blob/master/crates/dmdoc/README.md">dmdoc 1.11.0</a></footer></body></html>