Commit Graph

76 Commits

Author SHA1 Message Date
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
mwerezak
bd59733fdb Fixes #9714
Fixes incorrect arguments to calculate_transfer_moles()
2015-07-05 01:18:38 -04:00
GinjaNinja32
81d23c85cc code/ATMOSPHERICS \red \blue etc to span classes 2015-05-29 19:36:15 +01:00
PsiOmega
9006419fcd Creates a default vent for atmospherics tanks. 2015-05-14 15:31:39 +02:00
Chinsky
ad67215b08 Merge pull request #9073 from PsiOmegaDelta/QDels
Implementing Destroy():s
2015-05-12 18:26:57 +03:00
Mloc
e602a7e286 remove the sub-area system
Removes area/list/related and area/master.
They were only used by the old lighting subarea system.

Signed-off-by: Mloc <colmohici@gmail.com>
2015-05-10 17:06:29 +01:00
PsiOmega
6f9da12276 Implementing Destroy():s
First out: APCs, security camera consoles, vents.
2015-05-03 10:45:35 +02:00
PsiOmega
fcfdcecd3a initialize() should now always be called, be it on game starting up or object being created after game start.
Partially fixes #9036.
2015-04-30 19:28:35 +02: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
PsiOmega
71a8ddf50e Merge remote-tracking branch 'upstream/dev-freeze' into dev
Conflicts:
	code/game/gamemodes/cult/runes.dm
	code/modules/paperwork/paper.dm
	code/modules/projectiles/projectile.dm
2015-04-08 10:55:26 +02:00
PsiOmega
d8a6576f36 Examination fixes.
Fixes #8491.
Fixes #8579.
2015-04-06 10:46:19 +02:00
Zuhayr
d26800d29c Preliminary work on converting all monkeys to a human subspecies. 2015-03-25 02:15:45 +10:30
Neerti
3f16754e89 Third refactor for examine system! This time we go back to atom-var based system, but because strings are tabled, it's apparently okay.
The entire system is now self-contained inside a module folder.
Also fixes a runtime I made because ghosts lack a mind (and so do I)
2015-02-20 08:04:17 -05:00
RavingManiac
71902cdca2 Tweaked descriptions and settings of various TEG components.
Maximum power of core vent and injector increased.
2015-02-13 16:08:52 +08:00
ccomp5950
27765f799f Merge branch 'dev-freeze' of github.com:Baystation12/Baystation12 into dev
Conflict resolution.

Conflicts:
	code/ATMOSPHERICS/components/unary/vent_pump.dm
2015-01-06 12:36:28 -05:00
mwerezak
f9344a5a2d Atmos machine update
Takes a pass at updating ATMOSPHERICS to take advantage of the new powernet changes.

Also removes var/on definitions from many atmos machines. Machines generally shouldn't
be doing "on" things if they aren't using power, and most players don't expect a machine
to use power if it isn't "on," so I guess this is fair game.

Also, further refactoring.
2015-01-02 01:46:18 -05:00
ccomp5950
a41b5bea52 Unary Vent Pump Optimizations.
We have like 250 of these on the map, each one calculates the atmospheric properties of the air around it each tick.
99% of the time this isn't even needed.  So...if it's not needed this tick we hibernate for 5 to 10 ticks before checking again.
2015-01-01 17:20:51 -05:00
mwerezak
d4a193808b Replaces awful connect type system with bitflags 2014-12-23 18:59:54 -05:00
PsiOmega
bc438e21ad All the relevant examine changes. 2014-11-05 12:44:23 +01:00
Zuhayr
223bd86f18 Merge branch 'organremoval' of https://github.com/Zuhayr/Baystation12 into dev
First pass on major conversion of xenomorphs to a human subspecies. Additional condensing of various redundant mob verbs.
Converted larva and diona to their own class, collapsed the rest of xenomorphs into a human species, other stuff.
Completely removed attack_alien(). Still have to reimplement some of the lost behavior for human/alien.
Reapplies lost attack_alien() functionality other than tackling/caressing.
Further alien/humanoid cleanup and xenospawn fix-ups. Also uncommented caste verbs.
Removed half-finished abilities system since species.dm handles it.
All xenomorphs functionality should be working now, other than the HUD, tackling and the xenomorph balance issues.
Added icons for xenomorph castes, moved broadcast languages into datums, removed alien_talk and robot_talk vars.
Merged with organ removal code.
Reapplied verbs to simple_animals/slimes. Updated species definitions to have appropriate organs.
Readded tackle as a human verb.
Borer changes regarding brain removal.
Working on moving the human HUD to the species datum a bit. Mixed results.
Moved Cortical Link to a language, added borer husks.
Tidied up the HUD stuff. Still need to make it rebuild properly when species is changed, but this will do for no
Compile fix, forgot the DME.
Fixed up ventcrawl, added new organ mechanics for dionaea.
Fixed up some overlooked sections causing mobs without brains to die immediately.
Fixed up plasma generation for queens, bugs with organs, force_organ issues with set_species().
2014-09-29 06:19:26 +09:30
Zuhayr
0c83a95b90 Large merge resultion. Used remote for map conflicts. 2014-09-23 21:41:54 +09:30
RavingManiac
9801dfa9a9 NewPipe
-Supply and scrubber pipes can be run in parallel without connecting to each other
-Supply pipes will only connect to supply pipes, vents and Universal Pipe Adapters(UPAs)
-Scrubber pipes will only connect to scrubber pipes, scrubbers and UPAs
-Supply and scrubber pipes are offset along the x and y axes to prevent sprite overlap
-UPAs will connect to regular, scrubber and supply pipes, as well as anything else that connects to a regular pipe. UPAs will be used to interface between the supply/scrubber loops and atmos
2014-09-05 00:18:33 +08:00
mwerezak
b381d46556 Adds engine core atmos control
Expands on the earlier engine pump fix to add proper control over the
engine core atmos. Adds core control computer that can set output
external pressure bound instead of output pressure, and special high
power vent pump type for the engine core.
2014-08-29 14:10:43 -04:00
mwerezak
9fea39dea2 Quick fix for engine core flow imbalance
A more thorough fix should probably involve providing a way for players
to control the flow rate.

Also tweaks emitters and allows collectors to be read using a multitool.
2014-08-25 20:37:07 -04:00
mwerezak
b7c13bc4b6 Allows atmos helpers to be used with portable_atmos 2014-08-04 16:53:13 -04:00
mwerezak
a772d9094c Optimizes pipe network updating 2014-08-04 13:29:09 -04:00
mwerezak
14b57e3560 Pipe networks now cache their total volume 2014-08-03 22:41:31 -04:00
mwerezak
6eb2fe3028 Device working volumes are configurable from setup 2014-08-03 22:11:45 -04:00
mwerezak
5d0ce492b7 Updates dual port vent pumps 2014-08-03 15:17:28 -04:00
mwerezak
3647fa4d7d Adds gas mixing proc and updates gas mixer
Also includes a whole bunch of fixes and updates for atmos machinery
2014-08-02 18:35:57 -04:00
mwerezak
d034511ee6 Updates gas filter 2014-08-01 22:59:13 -04:00
mwerezak
cb413454a3 Optimizes atmos machine power updates
Makes power usage but atmos machinery less accurate but reduces lag
somewhat.
2014-07-27 03:35:25 -04:00
mwerezak
293855c48e Generalizes pumping and filtering
So that people can pump and filter gasses without worrying about the
thermodynamics too much.
2014-07-26 16:15:40 -04:00
mwerezak
3f6c1ff622 Cleanup, adds setup parameters for atmos machinery
Allows atmos machinery efficiency to be adjusted in setup.dm
Limits flow rates when moving gas from a turf to avoid very high pressures being created when they shouldn't be.
Attempts to limit processing when there isn't much gas to be moved, for performance.
Reverts all changes to _gas_mixture.dm
2014-07-26 13:50:25 -04:00
mwerezak
11c9f3bb9b Updates scrubbers 2014-07-26 12:23:35 -04:00
mwerezak
ef4a740a02 Adds entropy, thermal energy procs to new gas mix 2014-07-24 17:36:57 -04:00
mwerezak
d49c005d9b Reverts vent status broadcast change 2014-07-21 20:44:59 -04:00
mwerezak
2ea947b15e Some cleanup for pumps and vent pumps 2014-07-19 17:01:28 -04:00
mwerezak
c46904a3b6 Merge remote-tracking branch 'upstream/dev' into power-net
Conflicts:
	code/ATMOSPHERICS/components/binary_devices/pump.dm
	code/ATMOSPHERICS/components/binary_devices/volume_pump.dm
	code/ATMOSPHERICS/components/unary/vent_pump.dm
	code/ATMOSPHERICS/pipes.dm
2014-07-18 15:02:07 -04:00
Loganbacca
e05b5c0bfb Pipe rendering rewrite
- Complete rewrite of pipe rendering code. It now selects icons from a shared cache.
- Manifolds and other devices (pumps, filters, etc.) now match the color of the connected pipes.
- Updated omni devices to use the shared cache.
- Set separate pipe color definitions.
- Cleaned up a lot of pipe code, converting it to absolute paths and removing old commented out code.
- Tweaked t-ray rendering code.
- Tweaked pipe painter.
- Enhanced pipe checking debug command.
- Expanded tank capacity and resprited them.
2014-07-18 13:39:39 +00:00
mwerezak
3c65c7dda4 Vent pumps now draw power 2014-07-16 00:47:38 -04:00
Loganbacca
6b64fb5e77 Pipe rendering rewrite
- Complete rewrite of pipe rendering code. It now selects icons from a shared cache.
- Manifolds and other devices (pumps, filters, etc.) now match the color of the connected pipes.
- Updated omni devices to use the shared cache.
- Set separate pipe color definitions.
- Cleaned up a lot of pipe code, converting it to absolute paths and removing old commented out code.
- Tweaked t-ray rendering code.
- Tweaked pipe painter.
- Enhanced pipe checking debug command.
- Expanded tank capacity and resprited them.
2014-07-14 19:12:22 +12:00
PsiOmega
2e08b1ad4a Fixes vents not properly resetting the pressure check correctly when the "default" value.
Copy-paste..
2014-07-01 23:04:08 +02:00
PsiOmega
596b71a4ff Adds support to better handle air alarms in sensitive areas and vents with custom settings.
Air alarms now have a new setting, breach_detection, which allows for disabling the automatic mode change when a breach occurs.

Vents now have three new settings. These are primarily for when air alarms request a mode change to ensure that custom pressure levels/checks (in terms of mapping, not set later in game)  are not lost.
external_pressure_bound_default
internal_pressure_bound_default
checks_default
2014-06-27 11:12:09 +02:00
Loganbacca
42946bd2ad Vent pump efficiency
- Tweaked the pressure delta check to "> 0.5", so pumps will stop transferring minor volumes of air every tick (because a delta of 3.05176e-005 is still greater than 0). This also reduces the calls to gas_mixture/merge() and gas_mixture/remove() significantly once the air in the environment has equalized.

The results after running the game for 10 minutes:
```
Proc Name												Self CPU	Total CPU	Real Time	Calls
/obj/machinery/atmospherics/unary/vent_pump/process		0.035		0.141		0.141		3808	<- before
/obj/machinery/atmospherics/unary/vent_pump/process		0.014		0.042		0.043		3808	<- after
```
2014-02-18 16:16:10 +13:00
Segrain
83246df6d5 Fix for #4297. 2014-02-03 07:32:53 +03:00
Mloc-Argent
a1f55a50b1 Massive click code rework by SuperSayu, ported from TG.
Full details at https://github.com/tgstation/-tg-station/pull/1206
Fixes #3648

Hopefully done right this time.

Signed-off-by: Mloc-Argent <colmohici@gmail.com>
2013-10-08 20:27:39 +01:00
giacomand@gmail.com
b9bb759cd8 -Multiple fixes for machinery not correctly updating their icons when depowered.
-Gave request consoles an off sprite.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5421 316c924e-a436-60f5-8080-3fe189b3f50e
2012-12-30 02:20:03 +00:00
giacomand@gmail.com
7caff5dd42 -Proper fix for the scrubber/vent runtimes.
I made the vents and scrubbers update the area scrubber/vent info themselves, meaning that an air alarm isn't required to initialize the area/vent info and to stop it from being null.

This will add more flexibility in the future.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5331 316c924e-a436-60f5-8080-3fe189b3f50e
2012-12-15 18:59:47 +00:00