Commit Graph

24 Commits

Author SHA1 Message Date
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
Nemanja 823c8204c9
Simplifying Machine Upgrading (#15802) 2023-04-29 13:23:49 +10:00
deltanedas 3cd30c408b
add signal valve (#14830)
Co-authored-by: deltanedas <@deltanedas:kde.org>
2023-03-25 16:16:27 -07:00
DrSmugleaf 7fbc2608e8
Remove redundant read-only VV from datafields (#12626) 2022-11-16 20:22:11 +01:00
Nemanja b0e7c6f2f4
machine upgrade for gas recycler (#12496) 2022-11-09 19:11:23 -06:00
Kevin Zheng 45349e3c0d
Add gas recyclers (#9934)
* Add RemoveVolume()

RemoveVolume(vol) captures the common pattern of:

    air.RemoveRatio(vol / air.Volume)

Change existing code to use this method where appropriate.

* Add gas recyclers

Gas recyclers catalyze the conversion of CO2 and N2O to O2 and N2. The
gas recycler component takes waste gas from the input net and releases
the result into the output net.

To make things more fun, the input net must be pressurized to 3 MPa and
heated to at least 300 C; otherwise, no reaction will occur.

Game-mechanic wise, gas recyclers contain the catalyst for the
conversion reaction, and therefore, requires no external power. However,
the external pumps and heaters required to make the reaction happen
still do.

* Fix gas recyclers

Fix negative sqrt, fix pressure check after remove.
2022-09-11 18:02:01 -05:00
Kevin Zheng da11acd8c3
Make passive gates great (#9816) 2022-07-30 20:00:34 -07:00
Leon Friedrich c7ad6b709e
Audio System Rejig (#9635) 2022-07-29 12:13:12 +10:00
Leon Friedrich 229627a934
Gas injector visuals & balance (#8963) 2022-06-20 19:04:55 -07:00
Leon Friedrich cbae005d08
Fix dual port vents 2: Electric Boogaloo (#8396) 2022-06-06 01:38:20 -07:00
20kdc 2899dbf2f5
Map-disablable pumps (for fixing Delta) (#8164) 2022-05-14 16:08:27 -04:00
wrexbe bc68ac96dd
Cleanup the namespaces (#8132) 2022-05-13 17:59:03 +10:00
Leon Friedrich ee7d0440f3
Limit atmos device rates (#6533) 2022-03-01 01:39:30 +11:00
mirrorcult ec4d4688c7
Seal/abstract/virtual everything (#6739) 2022-02-16 18:23:23 +11:00
wrexbe 17db0775c8
Auto comp (#6416) 2022-02-02 14:35:40 +11:00
wrexbe 94207a42e9
Make manual valves work (#6121)
* Make manual valves work

* Change some GasValveSystem lookups
2022-01-15 05:18:45 -08: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
Swept b46957e0d8
Initial (#5193) 2021-11-06 17:32:33 -07:00
Vera Aguilera Puerto 45643c633d
Adds dual-port vent pump. (#4270)
* Adds dual-port vent pump.

* stop being lazy and do the flag check manually

* disable vent pump behavior
2021-07-15 23:24:45 +10:00
Vera Aguilera Puerto 6bbcf305bd Makes GasValveComponent ECS. 2021-07-12 09:47:59 +02:00
Pieter-Jan Briers 103bc19508
Pow3r: stage 1 (#4208)
Co-authored-by: 20kdc <asdd2808@gmail.com>
2021-07-04 18:11:52 +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