Files

20 lines
45 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>/obj/vehicle/sealed/mecha - /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="obj/vehicle/sealed/mecha.html#var">Var Details</a> - <a href="obj/vehicle/sealed/mecha.html#proc">Proc Details</a></header><main><h1>mecha <aside>/<a href="obj.html">obj</a>/<a href="obj/vehicle.html">vehicle</a>/<a href="obj/vehicle/sealed/mecha.html">sealed/mecha</a></aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L20"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 20"></a></h1><p>WELCOME TO MECHA.DM, ENJOY YOUR STAY</p>
<p>Mechs are now (finally) vehicles, this means you can make them multicrew
They can also grant select ability buttons based on occupant bitflags</p>
<p>Movement is handled through vehicle_move() which is called by relaymove
Clicking is done by way of signals registering to the entering mob
NOTE: MMIS are NOT mobs but instead contain a brain that is, so you need special checks
AI also has special checks becaus it gets in and out of the mech differently
Always call remove_occupant(mob) when leaving the mech so the mob is removed properly</p>
<p>For multi-crew, you need to set how the occupants recieve ability bitflags corresponding to their status on the vehicle(i.e: driver, gunner etc)
Abilities can then be set to only apply for certain bitflags and are assigned as such automatically</p>
<p>Clicks are wither translated into mech_melee_attack (see mech_melee_attack.dm)
Or are used to call action() on equipped gear
Cooldown for gear is on the mech because exploits</p><table class="summary" cellspacing="0"><tr><td colspan="2"><h2>Vars</h2></td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/active_thrusters">active_thrusters</a></th><td>/Action vars
Ref to any active thrusters we might have</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/allow_diagonal_movement">allow_diagonal_movement</a></th><td>Whether this mech is allowed to move diagonally</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/bumpsmash">bumpsmash</a></th><td>Whether or not the mech destroys walls by running into it.</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/cabin_air">cabin_air</a></th><td>Internal air mix datum</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/capacitor">capacitor</a></th><td>Keeps track of the mech's capacitor</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/cell">cell</a></th><td>Keeps track of the mech's cell</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/completely_disabled">completely_disabled</a></th><td>Just stop the mech from doing anything</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/connected_port">connected_port</a></th><td>The connected air port, if we have one</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/construction_state">construction_state</a></th><td>Whether the mechs maintenance protocols are on or off</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/defense_mode">defense_mode</a></th><td>Bool for energy shield on/off</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/deflect_chance">deflect_chance</a></th><td>chance to deflect the incoming projectiles, hits, or lesser the effect of ex_act.</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/destruction_sleep_duration">destruction_sleep_duration</a></th><td>Time you get slept for if you get forcible ejected by the mech exploding</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/dir_in">dir_in</a></th><td>What direction will the mech face when entered/powered on? Defaults to South.</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/dna_lock">dna_lock</a></th><td>Stores the DNA enzymes of a carbon so tht only they can access the mech</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/equipment_disabled">equipment_disabled</a></th><td>if we cant use our equipment(such as due to EMP)</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/exit_delay">exit_delay</a></th><td>TIme taken to leave the mech</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/facing_modifiers">facing_modifiers</a></th><td>Modifiers for directional armor</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/internal_damage">internal_damage</a></th><td>Bitflags for internal damage</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/internal_damage_threshold">internal_damage_threshold</a></th><td>health percentage below which internal damage is possible</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/internal_tank">internal_tank</a></th><td>The internal air tank obj of the mech</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/internal_tank_valve">internal_tank_valve</a></th><td>The setting of the valve on the internal tank</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/internals_req_access">internals_req_access</a></th><td>required access to change internal components</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/is_currently_ejecting">is_currently_ejecting</a></th><td>Currently ejecting, and unable to do things</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/lavaland_only">lavaland_only</a></th><td>Bool for whether this mech can only be used on lavaland</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/leg_overload_coeff">leg_overload_coeff</a></th><td>Energy use modifier for leg overload</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/leg_overload_mode">leg_overload_mode</a></th><td>Bool for leg overload on/off</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/lights_power">lights_power</a></th><td>How powerful our lights are</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/max_equip">max_equip</a></th><td>Maximum amount of equipment we can have</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/mecha_flags">mecha_flags</a></th><td>Contains flags for the mecha</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/melee_cooldown">melee_cooldown</a></th><td>Cooldown duration between melee punches</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/melee_energy_drain">melee_energy_drain</a></th><td>How much energy we drain each time we mechpunch someone</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/normal_step_energy_drain">normal_step_energy_drain</a></th><td>How much energy the mech will consume each time it moves. This variable is a backup for when leg actuators affect the energy drain.</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/operation_req_access">operation_req_access</a></th><td>required access level for mecha operation</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/overload_step_energy_drain_min">overload_step_energy_drain_min</a></th><td>The minimum amount of energy charge consumed by leg overload</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/phase_state">phase_state</a></th><td>icon_state for flick() when phazing</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/phasing">phasing</a></th><td>Bool for if the mech is currently phasing</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/phasing_energy_drain">phasing_energy_drain</a></th><td>Power we use every time we phaze through something</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/radio">radio</a></th><td>Special version of the radio, which is unsellable</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/scanmod">scanmod</a></th><td>Keeps track of the mech's scanning module</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/selected">selected</a></th><td>Current active equipment</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/silicon_icon_state">silicon_icon_state</a></th><td>Whether outside viewers can see the pilot inside
In case theres a different iconstate for AI/MMI pilot(currently only used for ripley)</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/smashcooldown">smashcooldown</a></th><td>Cooldown length between bumpsmashes</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/smoke_charges">smoke_charges</a></th><td>Remaining smoke charges</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/smoke_cooldown">smoke_cooldown</a></th><td>Cooldown between using smoke</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/spark_system">spark_system</a></th><td>Spark effects are handled by this datum</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/step_energy_drain">step_energy_drain</a></th><td>How much energy the mech will consume each time it moves. this is the current active energy consumed</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/step_silent">step_silent</a></th><td>Whether our steps are silent, for example in zero-G</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/stepsound">stepsound</a></th><td>Sound played when the mech moves</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/strafe">strafe</a></th><td>Wether we are strafing</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/turnsound">turnsound</a></th><td>Sound played when the mech walks</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/use_internal_tank">use_internal_tank</a></th><td>////////ATMOS
Whether we are currrently drawing from the internal tank</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#var/wreckage">wreckage</a></th><td>Typepath for the wreckage it spawns when destroyed</td></tr><tr><td colspan="2"><h2>Procs</h2></td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#proc/Topic">Topic</a></th><td>Topic</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#proc/add_airtank">add_airtank</a></th><td>Helpers</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#proc/add_capacitor">add_capacitor</a></th><td>Adds a capacitor, for use in Map-spawned mechs, Nuke Ops mechs, and admin-spawned mechs. Mechs built by hand will replace this.</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#proc/add_cell">add_cell</a></th><td>Adds a cell, for use in Map-spawned mechs, Nuke Ops mechs, and admin-spawned mechs. Mechs built by hand will replace this.</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#proc/add_scanmod">add_scanmod</a></th><td>Adds a scanning module, for use in Map-spawned mechs, Nuke Ops mechs, and admin-spawned mechs. Mechs built by hand will replace this.</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#proc/aimob_enter_mech">aimob_enter_mech</a></th><td>Handles an actual AI (simple_animal mecha pilot) entering the mech</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#proc/aimob_exit_mech">aimob_exit_mech</a></th><td>Handles an actual AI (simple_animal mecha pilot) exiting the mech</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#proc/ammo_resupply">ammo_resupply</a></th><td>Ammo stuff</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#proc/attack_ai">attack_ai</a></th><td>AI piloting</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#proc/check_for_internal_damage">check_for_internal_damage</a></th><td>Internal damage</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#proc/generate_action_type">generate_action_type</a></th><td>MECHA ACTIONS</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#proc/get_actions">get_actions</a></th><td>Returns HTML for mech actions. Ideally, this proc would be empty for the base mecha. Segmented for easy refactoring.</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#proc/get_commands">get_commands</a></th><td>HTML for commands.</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#proc/get_equipment_list">get_equipment_list</a></th><td>HTML for list of equipment.</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#proc/get_stats_html">get_stats_html</a></th><td>Rendering stats window</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#proc/get_stats_part">get_stats_part</a></th><td>Returns the status of the mech.</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#proc/has_charge">has_charge</a></th><td>Power stuff</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#proc/on_mouseclick">on_mouseclick</a></th><td>Action processing</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#proc/operation_allowed">operation_allowed</a></th><td>Access stuff</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#proc/play_stepsound">play_stepsound</a></th><td>///// Movement procs ////////</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#proc/remove_air">remove_air</a></th><td>Atmospheric stuff</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#proc/report_internal_damage">report_internal_damage</a></th><td>HTML for internal damage.</td></tr><tr><th><a href="obj/vehicle/sealed/mecha.html#proc/stationary_repair">stationary_repair</a></th><td>Repairs internal damage if the mech hasn't moved.</td></tr></table><h2 id="var">Var Details</h2><h3 id="var/active_thrusters"><aside class="declaration">var </aside>active_thrusters <aside> /<a href="obj.html">obj</a>/<a href="obj/item.html">item</a>/<a href="obj/item/mecha_parts/mecha_equipment.html">mecha_parts/mecha_equipment</a>/thrusters</aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L132"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 132"></a></h3><p>/Action vars
Ref to any active thrusters we might have</p><h3 id="var/allow_diagonal_movement"><aside class="declaration">var </aside>allow_diagonal_movement <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L68"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 68"></a></h3><p>Whether this mech is allowed to move diagonally</p><h3 id="var/bumpsmash"><aside class="declaration">var </aside>bumpsmash <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L70"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 70"></a></h3><p>Whether or not the mech destroys walls by running into it.</p><h3 id="var/cabin_air"><aside class="declaration">var </aside>cabin_air <aside> /<a href="datum.html">datum</a>/<a href="datum/gas_mixture.html">gas_mixture</a></aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L80"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 80"></a></h3><p>Internal air mix datum</p><h3 id="var/capacitor"><aside class="declaration">var </aside>capacitor <aside> /<a href="obj.html">obj</a>/<a href="obj/item.html">item</a>/stock_parts/capacitor</aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L54"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 54"></a></h3><p>Keeps track of the mech's capacitor</p><h3 id="var/cell"><aside class="declaration">var </aside>cell <aside> /<a href="obj.html">obj</a>/<a href="obj/item.html">item</a>/<a href="obj/item/stock_parts/cell.html">stock_parts/cell</a></aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L50"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 50"></a></h3><p>Keeps track of the mech's cell</p><h3 id="var/completely_disabled"><aside class="declaration">var </aside>completely_disabled <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L66"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 66"></a></h3><p>Just stop the mech from doing anything</p><h3 id="var/connected_port"><aside class="declaration">var </aside>connected_port <aside> /<a href="obj.html">obj</a>/<a href="obj/machinery.html">machinery</a>/<a href="obj/machinery/atmospherics.html">atmospherics</a>/components/unary/portables_connector</aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L82"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 82"></a></h3><p>The connected air port, if we have one</p><h3 id="var/construction_state"><aside class="declaration">var </aside>construction_state <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L56"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 56"></a></h3><p>Whether the mechs maintenance protocols are on or off</p><h3 id="var/defense_mode"><aside class="declaration">var </aside>defense_mode <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L135"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 135"></a></h3><p>Bool for energy shield on/off</p><h3 id="var/deflect_chance"><aside class="declaration">var </aside>deflect_chance <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L44"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 44"></a></h3><p>chance to deflect the incoming projectiles, hits, or lesser the effect of ex_act.</p><h3 id="var/destruction_sleep_duration"><aside class="declaration">var </aside>destruction_sleep_duration <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L121"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 121"></a></h3><p>Time you get slept for if you get forcible ejected by the mech exploding</p><h3 id="var/dir_in"><aside class="declaration">var </aside>dir_in <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L34"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 34"></a></h3><p>What direction will the mech face when entered/powered on? Defaults to South.</p><h3 id="var/dna_lock"><aside class="declaration">var </aside>dna_lock <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L60"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 60"></a></h3><p>Stores the DNA enzymes of a carbon so tht only they can access the mech</p><h3 id="var/equipment_disabled"><aside class="declaration">var </aside>equipment_disabled <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L48"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 48"></a></h3><p>if we cant use our equipment(such as due to EMP)</p><h3 id="var/exit_delay"><aside class="declaration">var </aside>exit_delay <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L119"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 119"></a></h3><p>TIme taken to leave the mech</p><h3 id="var/facing_modifiers"><aside class="declaration">var </aside>facing_modifiers <aside> /list</aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L46"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 46"></a></h3><p>Modifiers for directional armor</p><h3 id="var/internal_damage"><aside class="declaration">var </aside>internal_damage <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L92"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 92"></a></h3><p>Bitflags for internal damage</p><h3 id="var/internal_damage_threshold"><aside class="declaration">var </aside>internal_damage_threshold <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L90"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 90"></a></h3><p>health percentage below which internal damage is possible</p><h3 id="var/internal_tank"><aside class="declaration">var </aside>internal_tank <aside> /<a href="obj.html">obj</a>/<a href="obj/machinery.html">machinery</a>/<a href="obj/machinery/portable_atmospherics/canister.html">portable_atmospherics/canister</a></aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L78"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 78"></a></h3><p>The internal air tank obj of the mech</p><h3 id="var/internal_tank_valve"><aside class="declaration">var </aside>internal_tank_valve <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L76"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 76"></a></h3><p>The setting of the valve on the internal tank</p><h3 id="var/internals_req_access"><aside class="declaration">var </aside>internals_req_access <aside> /list</aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L97"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 97"></a></h3><p>required access to change internal components</p><h3 id="var/is_currently_ejecting"><aside class="declaration">var </aside>is_currently_ejecting <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L126"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 126"></a></h3><p>Currently ejecting, and unable to do things</p><h3 id="var/lavaland_only"><aside class="declaration">var </aside>lavaland_only <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L164"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 164"></a></h3><p>Bool for whether this mech can only be used on lavaland</p><h3 id="var/leg_overload_coeff"><aside class="declaration">var </aside>leg_overload_coeff <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L140"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 140"></a></h3><p>Energy use modifier for leg overload</p><h3 id="var/leg_overload_mode"><aside class="declaration">var </aside>leg_overload_mode <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L138"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 138"></a></h3><p>Bool for leg overload on/off</p><h3 id="var/lights_power"><aside class="declaration">var </aside>lights_power <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L64"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 64"></a></h3><p>How powerful our lights are</p><h3 id="var/max_equip"><aside class="declaration">var </aside>max_equip <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L106"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 106"></a></h3><p>Maximum amount of equipment we can have</p><h3 id="var/mecha_flags"><aside class="declaration">var </aside>mecha_flags <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L58"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 58"></a></h3><p>Contains flags for the mecha</p><h3 id="var/melee_cooldown"><aside class="declaration">var </aside>melee_cooldown <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L116"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 116"></a></h3><p>Cooldown duration between melee punches</p><h3 id="var/melee_energy_drain"><aside class="declaration">var </aside>melee_energy_drain <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L40"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 40"></a></h3><p>How much energy we drain each time we mechpunch someone</p><h3 id="var/normal_step_energy_drain"><aside class="declaration">var </aside>normal_step_energy_drain <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L36"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 36"></a></h3><p>How much energy the mech will consume each time it moves. This variable is a backup for when leg actuators affect the energy drain.</p><h3 id="var/operation_req_access"><aside class="declaration">var </aside>operation_req_access <aside> /list</aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L95"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 95"></a></h3><p>required access level for mecha operation</p><h3 id="var/overload_step_energy_drain_min"><aside class="declaration">var </aside>overload_step_energy_drain_min <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L42"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 42"></a></h3><p>The minimum amount of energy charge consumed by leg overload</p><h3 id="var/phase_state"><aside class="declaration">var </aside>phase_state <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L155"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 155"></a></h3><p>icon_state for flick() when phazing</p><h3 id="var/phasing"><aside class="declaration">var </aside>phasing <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L151"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 151"></a></h3><p>Bool for if the mech is currently phasing</p><h3 id="var/phasing_energy_drain"><aside class="declaration">var </aside>phasing_energy_drain <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L153"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 153"></a></h3><p>Power we use every time we phaze through something</p><h3 id="var/radio"><aside class="declaration">var </aside>radio <aside> /<a href="obj.html">obj</a>/<a href="obj/item.html">item</a>/radio/mech</aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L85"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 85"></a></h3><p>Special version of the radio, which is unsellable</p><h3 id="var/scanmod"><aside class="declaration">var </aside>scanmod <aside> /<a href="obj.html">obj</a>/<a href="obj/item.html">item</a>/stock_parts/scanning_module</aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L52"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 52"></a></h3><p>Keeps track of the mech's scanning module</p><h3 id="var/selected"><aside class="declaration">var </aside>selected <aside> /<a href="obj.html">obj</a>/<a href="obj/item.html">item</a>/<a href="obj/item/mecha_parts/mecha_equipment.html">mecha_parts/mecha_equipment</a></aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L104"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 104"></a></h3><p>Current active equipment</p><h3 id="var/silicon_icon_state"><aside class="declaration">var </aside>silicon_icon_state <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L124"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 124"></a></h3><p>Whether outside viewers can see the pilot inside
In case theres a different iconstate for AI/MMI pilot(currently only used for ripley)</p><h3 id="var/smashcooldown"><aside class="declaration">var </aside>smashcooldown <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L161"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 161"></a></h3><p>Cooldown length between bumpsmashes</p><h3 id="var/smoke_charges"><aside class="declaration">var </aside>smoke_charges <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L146"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 146"></a></h3><p>Remaining smoke charges</p><h3 id="var/smoke_cooldown"><aside class="declaration">var </aside>smoke_cooldown <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L148"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 148"></a></h3><p>Cooldown between using smoke</p><h3 id="var/spark_system"><aside class="declaration">var </aside>spark_system <aside> /<a href="datum.html">datum</a>/effect_system/spark_spread</aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L62"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 62"></a></h3><p>Spark effects are handled by this datum</p><h3 id="var/step_energy_drain"><aside class="declaration">var </aside>step_energy_drain <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L38"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 38"></a></h3><p>How much energy the mech will consume each time it moves. this is the current active energy consumed</p><h3 id="var/step_silent"><aside class="declaration">var </aside>step_silent <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L109"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 109"></a></h3><p>Whether our steps are silent, for example in zero-G</p><h3 id="var/stepsound"><aside class="declaration">var </aside>stepsound <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L111"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 111"></a></h3><p>Sound played when the mech moves</p><h3 id="var/strafe"><aside class="declaration">var </aside>strafe <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L158"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 158"></a></h3><p>Wether we are strafing</p><h3 id="var/turnsound"><aside class="declaration">var </aside>turnsound <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L113"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 113"></a></h3><p>Sound played when the mech walks</p><h3 id="var/use_internal_tank"><aside class="declaration">var </aside>use_internal_tank <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L74"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 74"></a></h3><p>////////ATMOS
Whether we are currrently drawing from the internal tank</p><h3 id="var/wreckage"><aside class="declaration">var </aside>wreckage <aside> </aside> <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L100"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 100"></a></h3><p>Typepath for the wreckage it spawns when destroyed</p><h2 id="proc">Proc Details</h2><h3 id="proc/Topic"><aside class="parent"><a title="/datum" href="datum.html#proc/Topic"></a></aside>Topic<aside>(href, href_list) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/mecha_topic.dm#L225"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/mecha_topic.dm 225"></a></aside></h3><p>Topic</p><h3 id="proc/add_airtank"><aside class="declaration">proc </aside>add_airtank<aside>() <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L318"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 318"></a></aside></h3><p>Helpers</p><h3 id="proc/add_capacitor"><aside class="declaration">proc </aside>add_capacitor<aside>(/<a href="obj.html">obj</a>/<a href="obj/item.html">item</a>/stock_parts/capacitor/cap) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L341"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 341"></a></aside></h3><p>Adds a capacitor, for use in Map-spawned mechs, Nuke Ops mechs, and admin-spawned mechs. Mechs built by hand will replace this.</p><h3 id="proc/add_cell"><aside class="declaration">proc </aside>add_cell<aside>(/<a href="obj.html">obj</a>/<a href="obj/item.html">item</a>/<a href="obj/item/stock_parts/cell.html">stock_parts/cell</a>/C) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L323"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 323"></a></aside></h3><p>Adds a cell, for use in Map-spawned mechs, Nuke Ops mechs, and admin-spawned mechs. Mechs built by hand will replace this.</p><h3 id="proc/add_scanmod"><aside class="declaration">proc </aside>add_scanmod<aside>(/<a href="obj.html">obj</a>/<a href="obj/item.html">item</a>/stock_parts/scanning_module/sm) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L332"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 332"></a></aside></h3><p>Adds a scanning module, for use in Map-spawned mechs, Nuke Ops mechs, and admin-spawned mechs. Mechs built by hand will replace this.</p><h3 id="proc/aimob_enter_mech"><aside class="declaration">proc </aside>aimob_enter_mech<aside>(/<a href="mob.html">mob</a>/<a href="mob/living.html">living</a>/<a href="mob/living/simple_animal.html">simple_animal</a>/<a href="mob/living/simple_animal/hostile.html">hostile</a>/syndicate/mecha_pilot/pilot_mob) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L910"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 910"></a></aside></h3><p>Handles an actual AI (simple_animal mecha pilot) entering the mech</p><h3 id="proc/aimob_exit_mech"><aside class="declaration">proc </aside>aimob_exit_mech<aside>(/<a href="mob.html">mob</a>/<a href="mob/living.html">living</a>/<a href="mob/living/simple_animal.html">simple_animal</a>/<a href="mob/living/simple_animal/hostile.html">hostile</a>/syndicate/mecha_pilot/pilot_mob) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L921"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 921"></a></aside></h3><p>Handles an actual AI (simple_animal mecha pilot) exiting the mech</p><h3 id="proc/ammo_resupply"><aside class="declaration">proc </aside>ammo_resupply<aside>(/<a href="obj.html">obj</a>/<a href="obj/item.html">item</a>/mecha_ammo/A, /<a href="mob.html">mob</a>/user, fail_chat_override) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L1221"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 1221"></a></aside></h3><p>Ammo stuff</p><h3 id="proc/attack_ai">attack_ai<aside>(/<a href="mob.html">mob</a>/<a href="mob/living.html">living</a>/<a href="mob/living/silicon.html">silicon</a>/<a href="mob/living/silicon/ai.html">ai</a>/user) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L799"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 799"></a></aside></h3><p>AI piloting</p><h3 id="proc/check_for_internal_damage"><aside class="declaration">proc </aside>check_for_internal_damage<aside>(/list/possible_int_damage, ignore_threshold) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L759"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 759"></a></aside></h3><p>Internal damage</p><h3 id="proc/generate_action_type">generate_action_type<aside>() <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/mecha_actions.dm#L3"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/mecha_actions.dm 3"></a></aside></h3><p>MECHA ACTIONS</p><h3 id="proc/get_actions"><aside class="declaration">proc </aside>get_actions<aside>(/<a href="mob.html">mob</a>/user) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/mecha_topic.dm#L80"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/mecha_topic.dm 80"></a></aside></h3><p>Returns HTML for mech actions. Ideally, this proc would be empty for the base mecha. Segmented for easy refactoring.</p><h3 id="proc/get_commands"><aside class="declaration">proc </aside>get_commands<aside>() <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/mecha_topic.dm#L117"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/mecha_topic.dm 117"></a></aside></h3><p>HTML for commands.</p><h3 id="proc/get_equipment_list"><aside class="declaration">proc </aside>get_equipment_list<aside>() <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/mecha_topic.dm#L108"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/mecha_topic.dm 108"></a></aside></h3><p>HTML for list of equipment.</p><h3 id="proc/get_stats_html"><aside class="declaration">proc </aside>get_stats_html<aside>(/<a href="mob.html">mob</a>/user) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/mecha_topic.dm#L6"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/mecha_topic.dm 6"></a></aside></h3><p>Rendering stats window</p><h3 id="proc/get_stats_part"><aside class="declaration">proc </aside>get_stats_part<aside>(/<a href="mob.html">mob</a>/user) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/mecha_topic.dm#L55"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/mecha_topic.dm 55"></a></aside></h3><p>Returns the status of the mech.</p><h3 id="proc/has_charge"><aside class="declaration">proc </aside>has_charge<aside>(amount) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L1195"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 1195"></a></aside></h3><p>Power stuff</p><h3 id="proc/on_mouseclick"><aside class="declaration">proc </aside>on_mouseclick<aside>(/<a href="mob.html">mob</a>/user, /<a href="atom.html">atom</a>/target, params) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L539"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 539"></a></aside></h3><p>Action processing</p><h3 id="proc/operation_allowed"><aside class="declaration">proc </aside>operation_allowed<aside>(/<a href="mob.html">mob</a>/M) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L1180"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 1180"></a></aside></h3><p>Access stuff</p><h3 id="proc/play_stepsound"><aside class="declaration">proc </aside>play_stepsound<aside>() <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L611"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 611"></a></aside></h3><p>///// Movement procs ////////</p>
<p>Plays the mech step sound effect. Split from movement procs so that other mechs (HONK) can override this one specific part.</p><h3 id="proc/remove_air">remove_air<aside>(amount) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/_mecha.dm#L933"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/_mecha.dm 933"></a></aside></h3><p>Atmospheric stuff</p><h3 id="proc/report_internal_damage"><aside class="declaration">proc </aside>report_internal_damage<aside>() <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/mecha_topic.dm#L90"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/mecha_topic.dm 90"></a></aside></h3><p>HTML for internal damage.</p><h3 id="proc/stationary_repair"><aside class="declaration">proc </aside>stationary_repair<aside>(location) <a href="https://github.com/evilew/GS13-Citadel/blob/e8e0068531dd988f9e65b33ae7866d4fbf1fdd9e/code/modules/vehicles/mecha/mecha_topic.dm#L414"><img src="git.png" width="16" height="16" title="code/modules/vehicles/mecha/mecha_topic.dm 414"></a></aside></h3><p>Repairs internal damage if the mech hasn't moved.</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>