Commit Graph

99 Commits

Author SHA1 Message Date
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
018079beb5 Fixes gas mixture bugs, other bugs, and cleanup
In particular, gas_mixture/remove() was not accounting for
group_multiplier when determining the maximum amount of gas to remove
Also cleans up the interface for gas_mixture/heat_capacity().
2014-08-05 17:04:17 -04:00
mwerezak
b7c13bc4b6 Allows atmos helpers to be used with portable_atmos 2014-08-04 16:53:13 -04:00
mwerezak
c9f16ec665 Fixes freezer UI bug 2014-08-04 14:48:47 -04:00
mwerezak
a772d9094c Optimizes pipe network updating 2014-08-04 13:29:09 -04:00
mwerezak
c640729b4d Rewrite of passive gate, updates air injector 2014-08-04 13:28:48 -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
8d04a83e97 Updates gas coolers, upgrading of coolers/heaters 2014-08-03 14:34:31 -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
400c1b5cf6 Fixes mistake in scrubbing calculation 2014-08-01 19:33:57 -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
79d4c444c2 Merge remote-tracking branch 'upstream/dev' into power-net
Conflicts:
	code/ATMOSPHERICS/components/binary_devices/pump.dm
	code/game/machinery/alarm.dm
	code/game/machinery/spaceheater.dm
2014-07-24 16:04:41 -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
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
fb6c928c4d Atmos update tweaks
- Updated pump and volume pump icons
- Reverted air scrubber icon
- Fixed passive gate icon
- Updated pipe_item sprites
- Fixed an oversight in the pipe color check
- Cleaned up the map
2014-07-18 13:41:59 +00: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
46533d299c Merge remote-tracking branch 'loganbacca/atmosmerge' into power-net 2014-07-16 16:17:26 -04:00
mwerezak
5ca36fcadb Merge branch 'dev' into power-net
Conflicts:
	code/game/machinery/Freezer.dm
	code/ATMOSPHERICS/components/unary/heat_source.dm
	code/modules/organs/organ_external.dm

Also updated:
	code/ATMOSPHERICS/components/binary_devices/pump.dm
	nano/templates/gas_pump.tmpl
2014-07-16 16:14:52 -04:00
Loganbacca
0dd2397ef7 Atmos update tweaks
- Updated pump and volume pump icons
- Reverted air scrubber icon
- Fixed passive gate icon
- Updated pipe_item sprites
- Fixed an oversight in the pipe color check
- Cleaned up the map
2014-07-16 21:37:43 +12:00
mwerezak
3c65c7dda4 Vent pumps now draw power 2014-07-16 00:47:38 -04:00
mwerezak
1011800d78 Updates gas heaters
Gas heaters now draw power.
Removed the heat_resevoir base type because it was dumb and unused.
Adds a circuit board for gas heaters.
2014-07-15 20:34:48 -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
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
Ccomp5950
753a2ef08c Code Effeciency Project: Vent scrubbers have a bit more sanity.
No longer checking for 0.00000000000000000000000001 moles of toxins scrubers can only detect stuff worse then 0.001 moles.

Have a nice day.
2014-04-04 13:21:47 -05:00
Ccomp5950
63a0f1185e Merge branch 'master' of github.com:Baystation12/Baystation12 into dev-freeze
Conflicts:
	code/ATMOSPHERICS/pipes.dm
	code/game/dna/genes/powers.dm
	code/game/objects/items/devices/PDA/PDA.dm
2014-02-20 19:16:23 -06: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
Zuhayr
f1b77d0ed6 Master merge. 2014-02-05 18:34:23 +10:30
Segrain
83246df6d5 Fix for #4297. 2014-02-03 07:32:53 +03:00
Mark Aherne (Faerdan)
c0d5ffd022 Added no-network check to heat_source to fix a runtime if not connected to a network. 2014-01-24 09:56:02 +00: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
Mloc-Argent
a084f74c7d Expansion of every "icon = ''" path.
Supposed to help compilation times.  Who knows.

Signed-off-by: Mloc-Argent <colmohici@gmail.com>
2013-09-01 21:53:36 +01:00
Cael_Aislinn
bdeb96b7e5 Merge branch 'incremental_tg' r5514 (11/1/2013) into bs12_with_tgport
Conflicts:
	baystation12.dme
	code/ATMOSPHERICS/components/unary/vent_pump.dm
	code/ATMOSPHERICS/components/unary/vent_scrubber.dm
	code/__HELPERS/game.dm
	code/controllers/shuttle_controller.dm
	code/datums/datumvars.dm
	code/datums/supplypacks.dm
	code/defines/obj/storage.dm
	code/defines/obj/vending.dm
	code/defines/obj/weapon.dm
	code/defines/procs/command_alert.dm
	code/game/area/Space Station 13 areas.dm
	code/game/atoms.dm
	code/game/gamemodes/changeling/modularchangling.dm
	code/game/gamemodes/cult/runes.dm
	code/game/gamemodes/events.dm
	code/game/gamemodes/events/dust.dm
	code/game/gamemodes/events/miniblob.dm
	code/game/gamemodes/events/ninja_equipment.dm
	code/game/gamemodes/factions.dm
	code/game/gamemodes/game_mode.dm
	code/game/gamemodes/gameticker.dm
	code/game/jobs/access.dm
	code/game/jobs/job/assistant.dm
	code/game/jobs/job/captain.dm
	code/game/jobs/job/civilian.dm
	code/game/jobs/job/engineering.dm
	code/game/jobs/job/medical.dm
	code/game/jobs/job/science.dm
	code/game/jobs/job/security.dm
	code/game/jobs/job_controller.dm
	code/game/machinery/alarm.dm
	code/game/machinery/atmo_control.dm
	code/game/machinery/atmoalter/area_atmos_computer.dm
	code/game/machinery/bots/medbot.dm
	code/game/machinery/computer/HolodeckControl.dm
	code/game/machinery/computer/ai_core.dm
	code/game/machinery/computer/atmos_alert.dm
	code/game/machinery/computer/card.dm
	code/game/machinery/computer/cloning.dm
	code/game/machinery/computer/computer.dm
	code/game/machinery/computer/message.dm
	code/game/machinery/computer/pod.dm
	code/game/machinery/computer/prisoner.dm
	code/game/machinery/computer/syndicate_shuttle.dm
	code/game/machinery/constructable_frame.dm
	code/game/machinery/doors/door.dm
	code/game/machinery/doors/firedoor.dm
	code/game/machinery/newscaster.dm
	code/game/machinery/recharger.dm
	code/game/machinery/spaceheater.dm
	code/game/machinery/telecomms/broadcaster.dm
	code/game/machinery/telecomms/logbrowser.dm
	code/game/machinery/telecomms/machine_interactions.dm
	code/game/machinery/teleporter.dm
	code/game/machinery/wishgranter.dm
	code/game/mecha/mech_fabricator.dm
	code/game/mecha/working/ripley.dm
	code/game/objects/items.dm
	code/game/objects/items/blueprints.dm
	code/game/objects/items/devices/flashlight.dm
	code/game/objects/items/devices/radio/encryptionkey.dm
	code/game/objects/items/devices/uplinks.dm
	code/game/objects/items/stacks/medical.dm
	code/game/objects/items/weapons/cards_ids.dm
	code/game/objects/items/weapons/gift_wrappaper.dm
	code/game/objects/items/weapons/hydroponics.dm
	code/game/objects/items/weapons/manuals.dm
	code/game/objects/items/weapons/secstorage/secstorage.dm
	code/game/objects/items/weapons/storage/backpack.dm
	code/game/objects/items/weapons/storage/firstaid.dm
	code/game/objects/items/weapons/storage/kit.dm
	code/game/objects/items/weapons/storage/storage.dm
	code/game/objects/items/weapons/storage/toolbox.dm
	code/game/objects/items/weapons/storage/uplink_kits.dm
	code/game/objects/items/weapons/stunbaton.dm
	code/game/objects/items/weapons/surgery_tools.dm
	code/game/objects/items/weapons/tools.dm
	code/game/objects/structures/crates_lockers/closets/secure/cargo.dm
	code/game/objects/structures/crates_lockers/closets/secure/hydroponics.dm
	code/game/objects/structures/crates_lockers/closets/secure/scientist.dm
	code/game/objects/structures/crates_lockers/closets/secure/security.dm
	code/game/objects/structures/electricchair.dm
	code/game/objects/structures/extinguisher.dm
	code/game/objects/structures/watercloset.dm
	code/game/objects/weapons.dm
	code/game/turfs/turf.dm
	code/game/vehicles/airtight/airtight.dm
	code/game/vehicles/vehicle.dm
	code/global.dm
	code/modules/DetectiveWork/evidence.dm
	code/modules/admin/IsBanned.dm
	code/modules/admin/player_panel.dm
	code/modules/admin/verbs/diagnostics.dm
	code/modules/admin/verbs/getlogs.dm
	code/modules/client/preferences.dm
	code/modules/clothing/masks/miscellaneous.dm
	code/modules/clothing/spacesuits/rig.dm
	code/modules/clothing/suits/miscellaneous.dm
	code/modules/critters/critter_defenses.dm
	code/modules/detectivework/scanner.dm
	code/modules/flufftext/Hallucination.dm
	code/modules/food/recipes_microwave.dm
	code/modules/mining/mine_items.dm
	code/modules/mining/mine_turfs.dm
	code/modules/mining/satchel_ore_boxdm.dm
	code/modules/mob/dead/observer/observer.dm
	code/modules/mob/living/carbon/alien/humanoid/alien_powers.dm
	code/modules/mob/living/carbon/alien/special/facehugger.dm
	code/modules/mob/living/carbon/carbon.dm
	code/modules/mob/living/carbon/carbon_defines.dm
	code/modules/mob/living/carbon/human/human.dm
	code/modules/mob/living/carbon/human/human_attackhand.dm
	code/modules/mob/living/carbon/human/life.dm
	code/modules/mob/living/carbon/human/say.dm
	code/modules/mob/living/carbon/human/update_icons.dm
	code/modules/mob/living/carbon/metroid/metroid.dm
	code/modules/mob/living/living.dm
	code/modules/mob/living/silicon/ai/life.dm
	code/modules/mob/living/silicon/robot/robot.dm
	code/modules/mob/mob_cleanup.dm
	code/modules/mob/mob_defines.dm
	code/modules/mob/mob_transformation_simple.dm
	code/modules/paperwork/clipboard.dm
	code/modules/paperwork/folders.dm
	code/modules/paperwork/paper.dm
	code/modules/paperwork/paperbin.dm
	code/modules/paperwork/pen.dm
	code/modules/power/cable.dm
	code/modules/projectiles/guns/energy/special.dm
	code/modules/projectiles/guns/projectile/revolver.dm
	code/modules/projectiles/projectile/change.dm
	code/modules/projectiles/projectile/special.dm
	code/modules/reagents/Chemistry-Reagents.dm
	code/modules/reagents/reagent_containers/glass.dm
	code/modules/reagents/reagent_containers/hypospray.dm
	code/modules/recycling/sortingmachinery.dm
	code/modules/research/designs.dm
	config/config.txt
	html/changelog.html
	icons/mob/head.dmi
	icons/mob/hud.dmi
	icons/mob/items_lefthand.dmi
	icons/mob/items_righthand.dmi
	icons/mob/mask.dmi
	icons/mob/suit.dmi
	icons/mob/ties.dmi
	icons/mob/uniform.dmi
	icons/obj/clothing/hats.dmi
	icons/obj/clothing/masks.dmi
	icons/obj/clothing/suits.dmi
	icons/obj/clothing/ties.dmi
	icons/obj/grenade.dmi
	icons/obj/projectiles.dmi

Signed-off-by: Cael_Aislinn <cael_aislinn@yahoo.com.au>
2013-01-11 22:12:31 +10:00
SkyMarshal
93476a2c16 Finishing touches on Air Alarms, Firedoors, and Central Atmos Control 2013-01-04 22:00:56 -07: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
giacomand@gmail.com
74ac2b9611 -Fixed vent pumps/vent scrubbers runtiming on deletion when it is dragged and then consumed by a singularity.
-Fixed vents not correctly updating the area with their deletion.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@5329 316c924e-a436-60f5-8080-3fe189b3f50e
2012-12-15 16:54:36 +00:00
Kreastr
2faf9c7a9c The groups exist, but the lists do not. 2012-11-12 02:41:12 +02:00
Kreastr
dc396ddb57 Fix for Issue 1868 2012-11-12 02:24:28 +02:00