Commit Graph

38 Commits

Author SHA1 Message Date
Menshin 7e6a8ef6e5
Allow thermomachines to exchange with air instead of inlet (#25247)
Add purely atmospheric heat exchange to the gas thermomachine component (in preparation for space heaters).

(cherry picked from commit ce4bd8568c)
2024-02-18 23:13:12 +01:00
Nemanja 77bd303603
Hellfire Thermomachines (#23543)
* hellfire thermomachines

* slight nerf? idk

* ilya review

* Improve clarity

* Update Content.Server/Atmos/Piping/Unary/EntitySystems/GasThermoMachineSystem.cs

Co-authored-by: Kevin Zheng <kevinz5000@gmail.com>

---------

Co-authored-by: Kevin Zheng <kevinz5000@gmail.com>
(cherry picked from commit a78e9a854e)
2024-01-26 22:07:36 +01:00
TemporalOroboros ce27944275
Revert 'Revert 'Solution Entities'' (#23168)
(cherry picked from commit d23c8d5c19)
2024-01-23 23:00:42 +01:00
Kara bb57cfb2b4 Change gas canisters to use ItemSlots (#22561) 2023-12-16 20:37:41 +01:00
Nemanja 58bc3430f5 Gas Condensers (#22436)
Co-authored-by: Kevin Zheng <kevinz5000@gmail.com>
2023-12-16 20:19:56 +01:00
metalgearsloth db1ff07821
Weldable cleanup (#19809) 2023-09-05 00:07:01 +10:00
DrSmugleaf a88e747a0b
Refactor serialization copying to use source generators (#19412) 2023-08-22 18:14:33 -07:00
Kevin Zheng bb7a19d32e
Make thermomachines more thermodynamically sound (#18984)
Co-authored-by: Ilya246 <ilyukarno@gmail.com>
2023-08-22 00:34:45 -07:00
Pieter-Jan Briers a242af506e
Adds the thermo-electric generator (#18840)
* Basic TEG start.

Connects via node group.

* Basic TEG test map

* Sensor monitoring basics, TEG circulator flow

* Basic power generation (it doesn't work)

* More sensor monitoring work

* Battery (SMES) monitoring system.

* Sensor monitoring fixes

Make it work properly when mapped.

* Test map improvements

* Revise TEG power output mechanism.

Now uses a fixed supplier with a custom ramping system.

* TEG test map fixes

* Make air alarms and pumps open UI on activate.

* Clean up thermo machines power switch.

Removed separate Enabled bool from the component that always matched the power receiver's state.

This enables adding a PowerSwitch component to give us alt click/verb menu.

* TEG but now fancy

* Make sensor monitoring console obviously WiP to mappers.

* Vending machine sound, because of course.

* Terrible, terrible graph background color

* Examine improvements for the TEG.

* Account for electrical power when equalizing gas mixtures.

* Get rid of the TegCirculatorArrow logic.

Use TimedDespawn instead. The "no show in right-click menuu" goes into a new general-purpose component.

Thanks Julian.

* Put big notice of "not ready, here's why" on the sensor monitoring console.

* TryGetComponent -> TryComp

* Lol there's a HideContextMenu tag

* Test fixes

* Guidebook for TEG

Fixed rotation on GuideEntityEmbed not working correctly.

Added Margin property to GuideEntityEmbed

* Make TEG power bar default to invisible.

So it doesn't appear in the guidebook and spawn menu.
2023-08-12 15:41:55 -05:00
Leon Friedrich f2bfdd8e17
Remove superseded machine linking code (#18244) 2023-07-24 12:07:35 +10:00
Tom Leys c3f9b5c74d
[tweak] Vents leak slowly, limit their max pressure (#15931)
* Vents leak slowly, limit their max pressure

* Set leak rate low enough that auto pressurize takes 30 minutes
2023-05-04 18:34:15 -06:00
Dawid Bla 217b8a5a38
Fix heater and freezer temperature range and wrong unit (#15904) 2023-04-30 01:31:15 +10:00
Nemanja 823c8204c9
Simplifying Machine Upgrading (#15802) 2023-04-29 13:23:49 +10:00
Menshin fd973be10c
Thermomachines code cleaning + some QoL (#14772) 2023-04-23 13:05:32 +10:00
Visne c6d3e4f3bd
Fix warnings and code cleanup/fixes (#13570) 2023-01-19 13:56:45 +11:00
Nemanja 3774a00a5c
Machine upgrading framework [NO CONTENT YET] (#11528)
* upgrading parts baseline

* don't hardcode prototypes

* 0xsomethingsomething review i sorry i forgot your name
2022-09-26 15:18:31 -05:00
Justin Trotter 6bf45709e9
Add access locks to gas canisters (#10575) 2022-09-16 07:06:29 -07:00
Kevin Zheng 546d708c40
Add under-pressure lockout to air vents (#9824)
* Add under-pressure lockout to vent pumps

* Add examine text showing UPLO
2022-07-19 21:23:23 -07:00
Leon Friedrich d9c247b310
Fix pipe net null error (#9508) 2022-07-06 20:36:07 -07:00
Leon Friedrich 229627a934
Gas injector visuals & balance (#8963) 2022-06-20 19:04:55 -07:00
Pieter-Jan Briers a323ba8223
Revert "Revert "Fix some friend access violations by allowing others access. (#8594) (#8703)" (working this time) (#8704) 2022-06-07 15:26:28 +02:00
Pieter-Jan Briers cecf87997b
Revert "Fix some friend access violations by allowing others access. (#8594) (#8703) 2022-06-07 13:44:31 +02:00
Vera Aguilera Puerto c5f7c61041
Fix some friend access violations by allowing others access. (#8594)
Rename Friend attribute to Access attribute.
Updates submodule to v0.21.0.0 as well.
2022-06-07 11:30:27 +02:00
Leon Friedrich cbae005d08
Fix dual port vents 2: Electric Boogaloo (#8396) 2022-06-06 01:38:20 -07:00
Leon Friedrich 2b2bef5947
Fix GasThermoMachine upgrading (#8313) 2022-05-29 05:10:37 +10:00
wrexbe bc68ac96dd
Cleanup the namespaces (#8132) 2022-05-13 17:59:03 +10:00
Flipp Syder 565bfa86a4
Air alarm fixes (again, oops) (#7715)
* fixes critical issue

* alright, this might be the actual fix

* removes useless null checks

* couple more

* removes default functions from unary device data
2022-04-22 23:21:00 -07:00
Flipp Syder f748c4ccb8
Fixes scrubbers sharing the same set of gases to scrub (#7241) 2022-03-23 19:24:56 +11:00
Leon Friedrich ee7d0440f3
Limit atmos device rates (#6533) 2022-03-01 01:39:30 +11:00
mirrorcult 73ff1513de
Thermomachine UI (#6833) 2022-02-22 21:09:01 -07:00
mirrorcult ec4d4688c7
Seal/abstract/virtual everything (#6739) 2022-02-16 18:23:23 +11:00
metalgearsloth 03a5a71243
Gas Thermo ECS (#6442) 2022-02-07 13:10:43 +11:00
wrexbe 17db0775c8
Auto comp (#6416) 2022-02-02 14:35:40 +11:00
Flipp Syder b1584793bf
Adds fire/air alarms (#5018)
Co-authored-by: Vera Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
Co-authored-by: E F R <602406+Efruit@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2022-01-02 15:56:24 +11:00
moonheart08 f1ad199dca
MAPS IN ATMOS (#4909)
* COLORIZE!

* ATMOS!

* FUCK

* fix occluders. also supply rates snuck in, broken serv3.
2021-10-17 01:11:06 +02:00
Vera Aguilera Puerto d8e353742c
Canister fixes and rework (#4266)
* Kills PipeNode ConnectToContainedEntities and EnvironmentalAir with fire.

* Reaction IGasMixtureHolder is nullable.

* Reworks canisters

* Adds PortablePipeNode and PortPipeNode, which connect to each other.
2021-07-12 10:00:50 +02:00
Vera Aguilera Puerto 34e457b854 Gas Tanks no longer use NodeContainer, Gas Canisters no longer use passive gates. 2021-06-23 12:02:28 +02:00
Vera Aguilera Puerto a2b737d945
Atmos pipe rework (#3833)
* Initial

* Cleanup a bunch of things

* some changes dunno

* RequireAnchored

* a

* stuff

* more work

* Lots of progress

* delete pipe visualizer

* a

* b

* pipenet and pipenode cleanup

* Fixes

* Adds GasValve

* Adds GasMiner

* Fix stuff, maybe?

* More fixes

* Ignored components on the client

* Adds thermomachine behavior, change a bunch of stuff

* Remove Anchored

* some work, but it's shitcode

* significantly more ECS

* ECS AtmosDevices

* Cleanup

* fix appearance

* when the pipe direction is sus

* Gas tanks and canisters

* pipe anchoring and stuff

* coding is my passion

* Unsafe pipes take longer to unanchor

* turns out we're no longer using eris canisters

* Gas canister inserted tank appearance, improvements

* Work on a bunch of appearances

* Scrubber appearance

* Reorganize AtmosphereSystem.Piping into a bunch of different systems

* Appearance for vent/scrubber/pump turns off when leaving atmosphere

* ThermoMachine appearance

* Cleanup gas tanks

* Remove passive gate unused imports

* remove old canister UI functionality

* PipeNode environment air, make everything use AssumeAir instead of merging manually

* a

* Reorganize atmos to follow new structure

* ?????

* Canister UI, restructure client

* Restructure shared

* Fix build tho

* listen, at least the canister UI works entirely...

* fix build : )

* Atmos device prototypes have names and descriptions

* gas canister ui slider doesn't jitter

* trinary prototypes

* sprite for miners

* ignore components

* fix YAML

* Fix port system doing useless thing

* Fix build

* fix thinking moment

* fix build again because

* canister direction

* pipenode is a word

* GasTank Air will throw on invalid states

* fix build....

* Unhardcode volume pump thresholds

* Volume pump and filter take time into account

* Rename Join/Leave atmosphere events to AtmosDeviceEnabled/Disabled Event

* Gas tank node volume is set by initial mixtuer

* I love node container
2021-06-19 13:25:05 +02:00