Commit Graph

4 Commits

Author SHA1 Message Date
Leshana
364c0253dc Tweak Tesla Grounding Rods
Grounding rods that are anchored can be struck two turfs farther away than unanchored.  This makes it possible to leapfrog towards a tesla because an unanchored one can be protected in the "shadow" of the anchored one.
2018-02-22 15:32:31 -05:00
Cyantime
2cf7149607 Makes containment fields and tesla bolts bypass gloves 2018-02-04 02:22:35 -05:00
Leshana
c8929d5bdb Add checks to allow Tesla to fully dissipate once it runs out of energy. 2018-01-21 22:48:45 -05:00
Leshana
db0ba60f64 Implements the Tesla engine and supporting features (#4539)
* Adds "typecache" utility functions. A fast way to filter lists by type.

Ported from TG

* Ports the "orbit" feature and subsystem from TG

* Adds a feature that allows mobs and objs to "orbit" around some atom.  They literally are moved around in circles.  See the `orbit` proc in orbit.dm.
* Adds a subsystem that processes the actual movement of orbiting items.

* Adds utility methods for common machinery behavior.

* Adds default_unfasten_wrench which handles the standard anchor/unanchor behavior of wrenches being used on machines.  Together with the other default_x_tool machinery procs we can eliminate having that code duplicated in dozens of places!
* Adds is_wire_tool proc to easily detect when a machine is hit with a tool that should open its wires UI (if it has one).

Based on ideas from Paradise, with improvements for us.

* Implements the Tesla Engine

Ported from a mixture of TG and Paradise code and assets: Edison's Bane

Includes the tesla energy ball itself, the generator that makes it, tesla coils, grounding rods, the circuits and frames to build them.

* Switch dusting to zapping on impact and spin better

Ported /tg SpinAnimation which supports more than triangles.
2018-01-19 14:56:08 -06:00