Commit Graph

13 Commits

Author SHA1 Message Date
Leshana
a97a574278 Transformed the machinery processor into an StonedMC subsystem
* This is PHASE 1 of a multi-phase conversion.  In this first phase we implement the subsystem, but leave it processing the existing global list variables.  In the next phase we will switch to use datum variables in the subsystem.  The main reason for splitting into two phases is ease of code review; change the meaningful code without the hundreds of machines -> SSmachines.machinery substitutions.
* We did declare macros for adding/removing things to the processing lists, and convert everywhere to use the macros.
* Added var/is_processing to /datum to keep track of whether an instance is already in a processing list (prevents it being in the list twice!) and also debugging, making sure its not in two lists etc.
* NOTE: The global machines list is **no longer sorted** for performance reasons.  As far as I know, the only module that actually ever cared was cameras.   Our camera system already handles its own sorting in the cameranets anyway, so it should no longer be needed.
2017-12-29 15:31:59 -05:00
Leshana
010cca1d44 Pipe network datum Destroy() cleanup
* Every pipe in a pipeline has a reference to the pipeline.  This needs to be cleared, both so the pipeline can be gc'd, and also so the pipes don't try and keep using the qdel'd pipeline.
* Same story for each pipeline in a pipe network, and each machine in a pipe network.
* Pipe networks are also in the pipe_networks global list.  While the controller would detect and remove it from the list on the next tick, cleaning up ourselves is the responsible thing to do.
2017-06-05 23:01:39 -04:00
PsiOmega
1ae0ad6d92 Updates the atom_pool, now datum_pool, to handle any datum object.
Makes the garbage collector similarly robust. Continues the whole Destroy/qdel porting.
2015-04-24 09:59:05 +02:00
mwerezak
14b57e3560 Pipe networks now cache their total volume 2014-08-03 22:41:31 -04:00
Mloc-Argent
d5e9851b62 integrate XGM into the code
New turf proc: assume_gas().  Maps to air.adjust_gas_temp().
Lots of optimizations to processing, fire, lighting, HasEntered() and
 more.
Zones now process all fire data and existance in one go, fire objects
 only handle spreading.
Most code has been ported straight so some of it mightn't be ideally
 structured for the new gas_mixtures.

Signed-off-by: Mloc-Argent <colmohici@gmail.com>
2014-07-22 19:52:12 +01:00
Ravensdale
68eda5201b Merge branch 'master' of https://github.com/Baystation12/Baystation12 into phoron
Conflicts:
	code/ATMOSPHERICS/components/unary/vent_scrubber.dm
	code/modules/paperwork/paper.dm
	html/changelog.html
	icons/mob/uniform.dmi
	maps/tgstation2.dmm
2014-04-16 21:44:26 -07:00
Ravensdale
1d6655850f Changes all appropriate instances of toxins to phoron 2014-04-10 15:11:26 -07:00
Mloc-Argent
9b19d7dacf atmos: remove a few force-deletes in merge code
Removes del(giver) from pipeline/merge(), turf/assume_air() and
atom/assume_air().
Thanks to valzargaming on reddit/github for pointing it out.
fixes #4717

Signed-off-by: Mloc-Argent <colmohici@gmail.com>
2014-04-07 17:28:09 +01:00
SkyMarshal
5e45382ded Fuck atmospherics code. Actually, Fuck BYOND @.@ 2012-05-13 14:32:59 -07:00
SkyMarshal
ec593612a9 Made pipes update right. 2012-05-12 17:59:48 -07:00
SkyMarshal
15d72e3b0e Improves how gas mixture datums are handled, reduces proc calls, commenting. Removed ghost-heating from cryo and "oxygen_agent_b" gas type. 2012-05-11 18:02:30 -07:00
mport2004@gmail.com
0f15fd1567 Few changes to how round start works.
Station Roles are picked before Syndie Roles unless it is nuke or wizard
People should no longer spawn in space because they did not get a job.
Heads and such should no longer get a role they should not have.
Rounds now have a minimum number of players required for it to start up.
Also the atmos pipes should stop exploding all over the place.


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1974 316c924e-a436-60f5-8080-3fe189b3f50e
2011-08-03 05:59:10 +00:00
only.lurking
662c08272a git-svn-id: http://tgstation13.googlecode.com/svn/trunk@2 316c924e-a436-60f5-8080-3fe189b3f50e 2010-08-23 14:29:20 +00:00