Commit Graph

203 Commits

Author SHA1 Message Date
Cyantime
6b4c8b7b0e Fixes heater examining 2020-06-16 18:08:41 -04:00
Aronai Sieyes
ad75bb86bd Alter playsound paradigm 2020-05-19 11:06:28 -04:00
Aronai Sieyes
b7aae34335 Merge branch 'master' into pol-defaultparts 2020-05-05 22:51:02 -04:00
Aronai Sieyes
6c6644f86c Rewrite examine() to pass a list around (#7038) 2020-04-29 13:42:16 -07:00
Aronai Sieyes
b3e9960029 Move machines to use default_apply_parts() 2020-04-27 11:57:43 -04:00
Aronai Sieyes
c9086829ec Convert some telecomms constants into defines 2020-04-27 10:34:13 -04:00
Atermonera
974919151b Merge pull request #6967 from VOREStation/pol-pipes
Add 2 new pipe types
2020-04-12 23:00:41 -07:00
Leshana
6f5fb88922 Removed area.uid var and /area/New()
- var/uid was used in only a handful of places.  Because areas are singletons
  it is safe to replace the uid with \ref, areas don't get deleted.
- And with that /area/New() is empty, we can remove it!
2020-04-10 14:58:59 -04:00
Aronai Sieyes
1abf90b306 Add 2 new pipe types 2020-04-05 22:50:11 -04:00
Leshana
938384cb1b In fact lets use the constants instead of bare numbers for use_power everywhere. 2020-03-21 19:41:01 -04:00
Leshana
c2d16acdca Always call update_use_power() instead of directly setting the use_power var.
- This will let us react to the change appropriately.
- While we're here, lets define some constants so we can stop using bare numbers.
- Always use those constants when calling update_use_power()
2020-03-21 16:40:22 -04:00
Arokha Sieyes
5b15917d32 to_chat replacing stream operator 2020-02-17 13:14:08 -05:00
Rykka Stormheart
23cc197e4c Add Sounds to stuff! (Port from VOREStation) (#6494)
* Add Sounds to stuff! (Port from VOREStation)

* Port of https://github.com/VOREStation/VOREStation/pull/6119

* Adds to_chat as described

* Change << to , , not entirely sure what it does but it's the same as others
2019-10-29 13:30:56 -08:00
Kore
3ef99b8ff2 Fixed air injectors 2019-08-29 20:23:35 +01:00
kevinz000
46c79c7d3e [READY]Makes a bunch of processes subsystems instead (#5814
* Converts various New() definitions to Initialization()
* Adds absolute pathing
2019-01-15 22:58:06 -08:00
kevinz000
c2c688c4c8 caps 2018-12-06 18:34:37 -08:00
Anewbe
f452e66934 Scrubbers no longer automatically scrub phoron (#5512) 2018-09-06 15:51:58 -07:00
Atermonera
de65c3c643 NanoUI now processes again 2018-08-25 21:13:16 -07:00
Anewbe
729ce71aa0 Converts most istype(thing,tool) procs into an appropriate thing.is_tool() format 2018-08-02 21:45:15 -05:00
Leshana
1ae7f45f1f Merge branch 'master' into vplk-port-pipeland-theta 2018-03-28 17:47:21 -04:00
Aronai Sieyes
7d3aec96fd Arranges lots of things into planes (#5072)
* Rearranges a billion things into planes

* Make cryotubes fancy

* Update Travis

* Fix hiding logic
2018-03-28 12:59:12 -07:00
Leshana
131636c6b5 Fix pipe construction conflicting with existing pipes too much.
Bug in the init_dirs_cache was not setting direction of pipes, making all cached dirs be for south.
Because mapped in pipes didn't have piping layer set, mapped in pipes conflicted.
The full-tile check for unary machines forgot to exclude *itself*
2018-03-20 23:30:05 -04:00
Leshana
776b221828 Rewrite pipe construction
- Moved pipe construction defines into __defines/construction.dm
- Unified pipe *unwrenching* by creating a standard proc along with the `construction_type` var.
- Eliminated the pipe fitting name & icon_state lookup tables by adding `pipe_state` var on atmos machinery and referencing that.
    - Each pipe which can be made from a fitting object should override `pipe_state` with the icon state to be used on the pipe fitting object.
- Eliminated the giant switch statement of doom in pipe construction by delegating that work to `on_construction` proc.
    - To make this work, every pipe must implement `get_neighbor_nodes_for_init` which returns a list of nodes which should be re-initialized on that pipe's construction.
- Combined the SCRUBBERS, SUPPLY and REGULAR pipe fitting classes together by storing the `piping_layer` variable and using the `setPipingLayer` procs
- Standardized the code for searching for node neighbors into the `can_be_node` proc.
    - This proc is also improved in that is a mutual check, `check_connectable` is called on BOTH objects, so they have to mutually agree to connect as nodes. Eliminates lots of special edge case logic.
    - Updated all the `amos_init` procs to use `can_be_node`.  In the most common cases, even that boilerplate code is consolidated into the `STANDARD_ATMOS_CHOOSE_NODE` macro.
- Implemented `pipe_flags` which lets pipes declare (or override) certain requirements.
- Adds a "pipe_recipe" datum to help out things that construct pipes.  By taking it out of the dispenser, we open the road for multiple dispenser types.  No, no RPD yet.  Soon.
    - Enhances the pipe dispenser to operate on pipe recipe datums instead of hard coded lists of pipes it can construct.   These datums are also (partially) initialized from the pipe machine types themselves, reducing having to define stuff in multiple places.
    - Switched pipe dispenser UI to use browse().   Not a NanoUI, but makes it a bit prettier with low effort.
    - Changed pipe dispenser to use a button selector to switch between Regular/Scrubbers/Supply instead of having separate list items.
- Added icon states to HE pipes to support the "connected on neither side" state.
2018-03-20 23:29:27 -04:00
Leshana
5847319443 Update every initialize() proc to return an initialize hint.
* Yes, all of them.
* Also did a few corrections to redundant New() and broken Destroy() along the way
* Renamed the turf_initializer.initialize() proc to InitializeTurf to avoid confusion.
* Subsumed /area/proc/initialize into /atom/proc/initialize() - Made /area's LateInitialize to get same behavior as before.
2018-02-05 15:50:13 -05:00
Leshana
440141c054 Fixes #2820 - Vent pumps shutting down after some template loads
Specific situation happens when power_change() is called before atmos_init is called for the first time()
update_icons has no business modifying variables like use_power.  Just update the icon!
2018-01-23 13:24:31 -05:00
Leshana
ab87edeae9 Fix construction of HE pipes, Vents, and Scrubbers Plus qdel issues.
The initialize() routines of HE pipes, vents an scrubbers need to be atmos_init() after all.
If you register yourself with radio controller you need to de-register yourself too.
2018-01-19 23:45:40 -05:00
Leshana
224fe42e77 Prepare Atmospherics Machinery for SSatoms (#4501)
* to_chat() replacement.

* Revert calling target.init_dir() before connecting.

* This change was added in https://github.com/PolarisSS13/Polaris/pull/3775 to counteract `dir` not being set prior to New() for dynamically loaded maps.  The root cause was /atom/New() not calling _preloader.load().  Undoing the change now that /atom/New() is fixed.
* The addition of the init_dir() proc itself however, is useful, because there ARE other times some atmos machinery will want to re-initialize its dir, specifically whenever it is rotated.
* init_dir() must be called in the constructor of all atmospherics machines capable of connecting to another.   Since it has to happen for ALL machines, lets move that call to /obj/machinery/atmospherics/New()

* Rename /obj/machinery/atmospherics initialize() to atmos_init()

* These days `initialize()` is used to handle general object initialization that is moved outside of New().  The node connection discovery of atmos machinery needs to happen after all that, and so needs to be in a separate proc.
* Make sure to actually call atmos_init during system startup.
2018-01-06 10:52:56 -06:00
Anewbe
f3b989f33e Merge pull request #3809 from Cyantime/unwrench
Fixes pipe caps to always be removable
2017-09-11 17:21:10 -04:00
Cyantime
82626c6936 Removes pipe pressure check copypaste. Fixes pipe caps to always be removable. 2017-09-09 21:24:52 -04:00
Neerti
1bc28c07c0 Port's TG's Maploader 2017-09-08 12:49:26 -04:00
Cyantime
aaef8163be Fixes upgrading capacitors in unary freezers doing nothing. 2017-08-16 17:34:13 -04:00
Neerti
99eb6f9404 Updates Tools
Adds toolspeed var, which is a multiplier on how 'fast' the tool works.  0.5 means it goes twice as fast.
Adds usesound var, which determines what sound is used when a tool is being used.
Changes a lot of code to use those two vars instead.
Adds 'ayyy' tools, which are ported from /tg/'s abductor gamemode.  They're currently admin only but I might make them obtainable by xenoarch later.
Adds powertools, also from /tg/.  CE starts with them in a new toolbelt that spawns in their locker, ported from (you guessed it) /tg/.
Changes welder sprites to look nicer, ported yet again from /tg/.  Modified the blue welder slightly so it can be the electric welder sprite.
Adds various sounds from /tg/, for tools and welders.
2017-08-03 04:49:23 -04:00
silveryferret
de8619bb11 Lets scrubbers scrub volatile fuel 2017-07-29 21:54:49 -04:00
Leshana
8752999a14 Atmospherics Destroy() cleanup - return qdel hints. 2017-06-05 23:01:39 -04:00
Yoshax
91e060621d Fixes scrubber Phoron scrubbing 2017-04-13 22:32:40 +01:00
MagmaRam
38aa0217f9 No longer able to crawl through welded vents. 2016-11-15 20:56:58 -06:00
SinTwo
045c393683 Revert "Revert "Frame Cleanup""
This reverts commit 82722ba42f.
2016-08-13 19:55:57 -04:00
Yoshax
82722ba42f Revert "Frame Cleanup" 2016-08-06 00:27:03 +01:00
SinTwo
66c3a007a9 frame cleanup fixes 2016-07-23 23:45:24 -04:00
SinTwo
5d25d72593 Frame Fixes 2016-06-01 14:32:56 -04:00
SinTwo
5ae20ceb8b Buildables v1.2 (#1517)
* Removes text2path, adds constructability to a few things, adds a locker_painter.dm, and several fixes.

* Fixes Maps due to working on ancient versions.

* Path error.

* Adds a missing ..()
2016-05-03 22:18:12 +01:00
SinTwo
b356f5cf21 Construction Update 2016-03-25 16:02:36 -04:00
Kelenius
c9c9dde819 Removes old unticked code 2016-02-01 12:47:20 +03:00
mwerezak
5603884095 Removes #undefine 2015-08-18 17:20:39 -04:00
Zuhayr
a8dc3a282b Merge branch 'dev' of https://github.com/Baystation12/Baystation12 into turfs 2015-08-18 12:06:53 -07:00
Zuhayr
3b712adb5f Removed intact var in favour of is_plating() proc, fixed issues with invisible initialized pipes. 2015-08-16 17:51:19 -07:00
PsiOmegaDelta
7b5b7162d0 Merge pull request #10673 from Baystation12/master
Dev-freeze
2015-08-16 10:30:13 +02:00
mwerezak
176e4232ca Fixes #9155
Heaters and freezers now check if there are other machines in their turf that have the same connection dirs.
2015-08-15 18:28:09 -04:00
PsiOmega
cee5f1a057 Merge remote-tracking branch 'upstream/dev-freeze' into dev
Conflicts:
	code/game/objects/items.dm
2015-07-06 18:33:09 +02:00
PsiOmega
cdb4270f48 Merge remote-tracking branch 'upstream/master' into dev-freeze 2015-07-06 17:31:41 +02:00