Files
GS13NG/datum/thrownthing.html
2025-02-05 06:19:18 +00:00

1 line
15 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/thrownthing - /tg/ Station 13</title></head><body><header><a href="index.html">/tg/ Station 13</a> - <a href="index.html#modules">Modules</a> - <a href="index.html#types">Types</a><a href="datum/thrownthing.html#var">Var Details</a> - <a href="datum/thrownthing.html#proc">Proc Details</a></header><main><h1>thrownthing <aside>/<a href="datum.html">datum</a>/<a href="datum/thrownthing.html">thrownthing</a></aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L43"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 43"></a></h1><table class="summary" cellspacing="0"><tr><td colspan="2"><h2>Vars</h2></td></tr><tr><th><a href="datum/thrownthing.html#var/callback">callback</a></th><td>If a thrown thing has a callback, it can be invoked here within thrownthing.</td></tr><tr><th><a href="datum/thrownthing.html#var/delayed_time">delayed_time</a></th><td>How long an object has been paused for, to be added to the travel time.</td></tr><tr><th><a href="datum/thrownthing.html#var/diagonal_error">diagonal_error</a></th><td>How many tiles that need to be moved in order to travel to the target.</td></tr><tr><th><a href="datum/thrownthing.html#var/diagonals_first">diagonals_first</a></th><td>A variable that helps in describing objects thrown at an angle, if it should be moved diagonally first or last.</td></tr><tr><th><a href="datum/thrownthing.html#var/dist_travelled">dist_travelled</a></th><td>Tracks how far a thrownthing has traveled mid-throw for the purposes of maxrange</td></tr><tr><th><a href="datum/thrownthing.html#var/dist_x">dist_x</a></th><td>Distance to travel in the X axis/direction.</td></tr><tr><th><a href="datum/thrownthing.html#var/dist_y">dist_y</a></th><td>Distance to travel in the y axis/direction.</td></tr><tr><th><a href="datum/thrownthing.html#var/dx">dx</a></th><td>The Horizontal direction we're traveling (EAST or WEST)</td></tr><tr><th><a href="datum/thrownthing.html#var/dy">dy</a></th><td>The VERTICAL direction we're traveling (NORTH or SOUTH)</td></tr><tr><th><a href="datum/thrownthing.html#var/force">force</a></th><td>The movement force provided to a given object in transit. More info on these in move_force.dm</td></tr><tr><th><a href="datum/thrownthing.html#var/gentle">gentle</a></th><td>If the throw is gentle, then the thrownthing is harmless on impact.</td></tr><tr><th><a href="datum/thrownthing.html#var/init_dir">init_dir</a></th><td>The initial direction of the thrower of the thrownthing for building the trajectory of the throw.</td></tr><tr><th><a href="datum/thrownthing.html#var/initial_target">initial_target</a></th><td>Weakref to the original intended target of the throw, to prevent hardDels</td></tr><tr><th><a href="datum/thrownthing.html#var/last_move">last_move</a></th><td>The last world.time value stored when the thrownthing was moving.</td></tr><tr><th><a href="datum/thrownthing.html#var/maxrange">maxrange</a></th><td>The maximum number of turfs that the thrownthing will travel to reach it's target.</td></tr><tr><th><a href="datum/thrownthing.html#var/paused">paused</a></th><td>Mainly exists for things that would freeze a thrown object in place, like a timestop'd tile. Or a Tractor Beam.</td></tr><tr><th><a href="datum/thrownthing.html#var/pure_diagonal">pure_diagonal</a></th><td>Set to TRUE if the throw is exclusively diagonal (45 Degree angle throws for example)</td></tr><tr><th><a href="datum/thrownthing.html#var/speed">speed</a></th><td>The speed of the projectile thrownthing being thrown.</td></tr><tr><th><a href="datum/thrownthing.html#var/start_time">start_time</a></th><td>The start_time obtained via world.time for the purposes of tiles moved/tick.</td></tr><tr><th><a href="datum/thrownthing.html#var/target_turf">target_turf</a></th><td>The turf that the target was on, if it's not a turf itself.</td></tr><tr><th><a href="datum/thrownthing.html#var/target_zone">target_zone</a></th><td>If the target happens to be a carbon and that carbon has a body zone aimed at, this is carried on here.</td></tr><tr><th><a href="datum/thrownthing.html#var/thrower">thrower</a></th><td>If a mob is the one who has thrown the object, then it's moved here.</td></tr><tr><th><a href="datum/thrownthing.html#var/thrownthing">thrownthing</a></th><td>Defines the atom that has been thrown (Objects and Mobs, mostly.)</td></tr><tr><td colspan="2"><h2>Procs</h2></td></tr><tr><th><a href="datum/thrownthing.html#proc/on_thrownthing_qdel">on_thrownthing_qdel</a></th><td>Defines the datum behavior on the thrownthing's qdeletion event.</td></tr></table><h2 id="var">Var Details</h2><h3 id="var/callback"><aside class="declaration">var </aside>callback <aside> /<a href="datum.html">datum</a>/<a href="datum/callback.html">callback</a></aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L83"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 83"></a></h3><p>If a thrown thing has a callback, it can be invoked here within thrownthing.</p><h3 id="var/delayed_time"><aside class="declaration">var </aside>delayed_time <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L87"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 87"></a></h3><p>How long an object has been paused for, to be added to the travel time.</p><h3 id="var/diagonal_error"><aside class="declaration">var </aside>diagonal_error <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L81"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 81"></a></h3><p>How many tiles that need to be moved in order to travel to the target.</p><h3 id="var/diagonals_first"><aside class="declaration">var </aside>diagonals_first <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L61"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 61"></a></h3><p>A variable that helps in describing objects thrown at an angle, if it should be moved diagonally first or last.</p><h3 id="var/dist_travelled"><aside class="declaration">var </aside>dist_travelled <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L65"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 65"></a></h3><p>Tracks how far a thrownthing has traveled mid-throw for the purposes of maxrange</p><h3 id="var/dist_x"><aside class="declaration">var </aside>dist_x <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L69"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 69"></a></h3><p>Distance to travel in the X axis/direction.</p><h3 id="var/dist_y"><aside class="declaration">var </aside>dist_y <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L71"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 71"></a></h3><p>Distance to travel in the y axis/direction.</p><h3 id="var/dx"><aside class="declaration">var </aside>dx <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L73"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 73"></a></h3><p>The Horizontal direction we're traveling (EAST or WEST)</p><h3 id="var/dy"><aside class="declaration">var </aside>dy <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L75"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 75"></a></h3><p>The VERTICAL direction we're traveling (NORTH or SOUTH)</p><h3 id="var/force"><aside class="declaration">var </aside>force <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L77"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 77"></a></h3><p>The movement force provided to a given object in transit. More info on these in move_force.dm</p><h3 id="var/gentle"><aside class="declaration">var </aside>gentle <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L79"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 79"></a></h3><p>If the throw is gentle, then the thrownthing is harmless on impact.</p><h3 id="var/init_dir"><aside class="declaration">var </aside>init_dir <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L53"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 53"></a></h3><p>The initial direction of the thrower of the thrownthing for building the trajectory of the throw.</p><h3 id="var/initial_target"><aside class="declaration">var </aside>initial_target <aside> /<a href="datum.html">datum</a>/weakref</aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L47"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 47"></a></h3><p>Weakref to the original intended target of the throw, to prevent hardDels</p><h3 id="var/last_move"><aside class="declaration">var </aside>last_move <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L89"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 89"></a></h3><p>The last world.time value stored when the thrownthing was moving.</p><h3 id="var/maxrange"><aside class="declaration">var </aside>maxrange <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L55"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 55"></a></h3><p>The maximum number of turfs that the thrownthing will travel to reach it's target.</p><h3 id="var/paused"><aside class="declaration">var </aside>paused <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L85"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 85"></a></h3><p>Mainly exists for things that would freeze a thrown object in place, like a timestop'd tile. Or a Tractor Beam.</p><h3 id="var/pure_diagonal"><aside class="declaration">var </aside>pure_diagonal <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L63"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 63"></a></h3><p>Set to TRUE if the throw is exclusively diagonal (45 Degree angle throws for example)</p><h3 id="var/speed"><aside class="declaration">var </aside>speed <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L57"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 57"></a></h3><p>The speed of the projectile thrownthing being thrown.</p><h3 id="var/start_time"><aside class="declaration">var </aside>start_time <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L67"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 67"></a></h3><p>The start_time obtained via world.time for the purposes of tiles moved/tick.</p><h3 id="var/target_turf"><aside class="declaration">var </aside>target_turf <aside> /<a href="turf.html">turf</a></aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L49"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 49"></a></h3><p>The turf that the target was on, if it's not a turf itself.</p><h3 id="var/target_zone"><aside class="declaration">var </aside>target_zone <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L51"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 51"></a></h3><p>If the target happens to be a carbon and that carbon has a body zone aimed at, this is carried on here.</p><h3 id="var/thrower"><aside class="declaration">var </aside>thrower <aside> /<a href="mob.html">mob</a></aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L59"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 59"></a></h3><p>If a mob is the one who has thrown the object, then it's moved here.</p><h3 id="var/thrownthing"><aside class="declaration">var </aside>thrownthing <aside> /<a href="atom.html">atom</a>/<a href="atom/movable.html">movable</a></aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L45"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 45"></a></h3><p>Defines the atom that has been thrown (Objects and Mobs, mostly.)</p><h2 id="proc">Proc Details</h2><h3 id="proc/on_thrownthing_qdel"><aside class="declaration">proc </aside>on_thrownthing_qdel<aside>(/<a href="atom.html">atom</a>/<a href="atom/movable.html">movable</a>/source, force) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/controllers/subsystem/throwing.dm#L125"><img src="git.png" width="16" height="16" title="code/controllers/subsystem/throwing.dm 125"></a></aside></h3><p>Defines the datum behavior on the thrownthing's qdeletion event.</p></main><footer>tgstation.dme <a href="https://github.com/evilew/GS13-Citadel/tree/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e">e8e0068</a> (master) — <a href="https://github.com/SpaceManiac/SpacemanDMM/blob/master/crates/dmdoc/README.md">dmdoc 1.9.0</a></footer></body></html>