Commit Graph

882 Commits

Author SHA1 Message Date
eclips_e 21fd9ddacf
Silly value change (#14180) 2023-02-19 23:12:26 +11:00
Leon Friedrich 210677ba4e
Fix bug in GasTileOverlay state logic (#14071) 2023-02-13 02:39:21 +00:00
Chief-Engineer 5df6c307e1
add filter change logs for gas filters (#13950) 2023-02-12 12:42:28 +00:00
Nemanja c6c319f7e4
move lockcomponent to shared (#13722)
* move lockcomponent to shared

* ajcm review
2023-02-12 01:12:29 +00:00
Visne 5a5a3afbb1
Remove some obsolete AppearanceComponent method usages (#13726) 2023-02-02 12:34:53 -04:00
Nemanja d87d8f2886
predict emag and make blessed record struct events (#13623) 2023-01-22 02:12:45 +11:00
Leon Friedrich b20b4b11cc
Wire action cleanup (#13496) 2023-01-21 10:51:02 +11:00
Visne c6d3e4f3bd
Fix warnings and code cleanup/fixes (#13570) 2023-01-19 13:56:45 +11:00
Chief-Engineer 3cfd814503
Add logging for hacking (#12861) 2023-01-16 08:14:46 +11:00
metalgearsloth bf79d76666
Content update for ECS physics (#13291) 2023-01-15 15:38:59 +11:00
Jezithyr eeb5b17b34
Mobstate Refactor (#13389)
Refactors mobstate and moves mob health thresholds to their own component

Co-authored-by: DrSmugleaf <drsmugleaf@gmail.com>
2023-01-13 16:57:10 -08:00
metalgearsloth 8900409956
Optimise spreadersystem (#13329)
* Optimise spreadersystem

It makes entity spawning slower.

* Remove redundant airtightchangedevent

* oop
2023-01-11 02:18:26 -06:00
metalgearsloth 243fd73db4
Update tilechangedevent to ref structs (#13383) 2023-01-09 13:45:21 +11:00
Kara 572b762f2c
Tile prying removes decals (#13363) 2023-01-07 02:24:50 -08:00
metalgearsloth 1769807366
Remove some explosion resolves (#13330) 2023-01-04 17:52:38 -08:00
metalgearsloth ab07944af8
Remove IPhysBody (#13297) 2023-01-03 17:45:18 +11:00
keronshb f6e1dc15ac
Adds delay to internals alert (#13195)
closes https://github.com/space-wizards/space-station-14/issues/12721
2023-01-01 16:03:19 -08:00
Vordenburg efb7e0cc22
Complete #5177 (#12724)
Resolves https://github.com/space-wizards/space-station-14/issues/4832
2022-12-31 22:21:26 -08:00
Pieter-Jan Briers a323671984
Changes for prototype load parallelization (#13066)
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2022-12-20 14:25:34 -08:00
Pieter-Jan Briers 4fa2920472
Remove IoCManager.InitThread calls from parallel code. (#13070) 2022-12-20 22:52:39 +11:00
Leon Friedrich 881a2b2ece
PopupSystem public methods rejig (#12830) 2022-12-19 08:41:47 +11:00
Leon Friedrich 2759ef009e
Gas tile overlay state handling changes (#12691) 2022-12-19 06:25:27 +11:00
metalgearsloth 3b3963083b
Replace GridEntityId with Owner (#12743) 2022-12-12 14:59:02 +11:00
Leon Friedrich 77683a95df
Add point light to burning entities (#12959) 2022-12-12 14:35:33 +11:00
Leon Friedrich 154aea05a0
Fix decal IoC exception (#12789) 2022-12-02 10:42:47 +11:00
Paul Ritter 3884c4d3db
serv4 + submodule update (#12740)
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2022-11-27 19:25:55 +01:00
Leon Friedrich 186b8e00da
Fix NoAirWhenFullyAirBlocked (#12709) 2022-11-24 12:45:08 +11:00
metalgearsloth 6c76061887
Content changes for mapgrid kill (#12567) 2022-11-22 13:12:04 +11:00
Leon Friedrich 6917b0fe17
Misc audio and related changes for replays (#12578) 2022-11-22 11:49:48 +11:00
Leon Friedrich 8ab849aec9
Fix gas overlay (#12692) 2022-11-20 20:50:01 -06:00
DrSmugleaf 7fbc2608e8
Remove redundant read-only VV from datafields (#12626) 2022-11-16 20:22:11 +01:00
DrSmugleaf f92f288047
Remove byte[] allocations for GasTileOverlaySystem.UpdateChunkTile (#12617) 2022-11-16 08:27:49 +01:00
Vera Aguilera Puerto 3fbe85416e
Rebuild excited groups if blocked airflow direction of tile has changed. (#12548) 2022-11-11 09:44:45 +01:00
Leon Friedrich 3a0c3b02b3
Firelock fixes (#12542)
* Firelock fixes

* review
2022-11-10 22:21:01 -06:00
Nemanja b0e7c6f2f4
machine upgrade for gas recycler (#12496) 2022-11-09 19:11:23 -06:00
Bright0 ecc969d8f4
Internals alert fix and adjustment (#12517)
* add low pressure data field

* resolve CheckSeverity bug, replace logic

* add configurable low pressure threshhold
2022-11-09 19:02:14 -06:00
AJCM-git c4438c7a94
Fix rotting examine (#12488)
* commit

* actually i think this is better
2022-11-09 10:59:15 -06:00
metalgearsloth fb3f6fa80f
Predicted stamina (#12413)
* Predicted stamina

Needed to do some semblence of predicted melee.

* Okay now done.

* Pause support

* Comment
2022-11-08 14:34:07 -06:00
corentt 37997d4dda
Stop reducing output pressure of gastank when low pressure (#11818)
* stop reducing output of gastank when low pressure

* fix display internal alert

* rephrase moles quantity check
2022-11-08 14:23:41 -06:00
rolfero 1151ca42e5
changing accumulators to timespan targets (#12407)
* changing accumulators to timespan targets

* Update Content.Server/Abilities/Mime/MimePowersSystem.cs

Co-authored-by: 0x6273 <0x40@keemail.me>

* Update MimePowersSystem.cs

* serializing timespans and adding pausetime where applicable

* remove nullable

Co-authored-by: CommieFlowers <rasmus.cedergren@hotmail.com>
Co-authored-by: 0x6273 <0x40@keemail.me>
2022-11-08 13:59:34 -06:00
Leon Friedrich 724074426e
Fix miasma error spam (#12458) 2022-11-08 13:58:07 -06:00
Leon Friedrich 8620899a4a
Fix firelock danger indicators (#12327)
* Fix firelock danger indicators

* remove unused arg
2022-11-08 13:55:45 -06:00
Alex Evgrashin 6913c77ab1
Quick fix for holofan and tiny fan (#12420)
Fixes https://github.com/space-wizards/space-station-14/issues/12411
2022-11-07 06:34:06 +11:00
0x6273 a201d777bc
Machine upgrade examine verb (#12119) 2022-11-04 14:27:47 +11:00
Vordenburg bf908512bd
Allow gas filters to not filter gases. (#12051) 2022-11-04 12:27:20 +11:00
metalgearsloth c0abea8047
Content side for removing IMap / IMapGrid comps (#12357) 2022-11-04 10:12:25 +11:00
Paul Ritter c5e5729bd4
removes beforeserialization hook (#12319) 2022-11-03 12:41:12 +11:00
Leon Friedrich 237b842d65
Parallelize gas and decal systems. (#12349) 2022-11-02 18:23:26 +11:00
metalgearsloth c9a2ab1cee
Remove transform methods from mapgrid (#12233) 2022-11-01 11:27:18 +11:00
Leon Friedrich 8c73cfb06d
Stop unnecessary airtight updates (#12310) 2022-10-31 16:07:00 +11:00
Nemanja 24a3c8aef6
portable scrubber machine upgrading (#12037) 2022-10-22 15:49:30 -07:00
Flipp Syder 6e108bd400
Surveillance camera listening/speaking (#11640) 2022-10-17 04:44:14 +11:00
Leon Friedrich 20f68d156e
Add some atmos logs for debugging (#11970) 2022-10-17 02:50:11 +11:00
Flipp Syder 26883a7ec9
Air alarm mode sent to all linked air alarms from a single air alarm (#11454)
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2022-10-16 21:18:14 +11:00
metalgearsloth 0b38589728
Raise power events by ref and not broadcast (#11923)
Also some other minor stuff.
2022-10-14 23:08:15 -05:00
Morb 063874183a
Fix exception with miasma system (#11484) 2022-10-09 12:47:42 -07:00
Paul Ritter 79854e59a4
adds a source uid to most damage & mobstate events (#11559)
Co-authored-by: Flipp Syder <76629141+vulppine@users.noreply.github.com>
2022-10-08 12:15:27 +02:00
Kognise aba2462a97
Internals improvements (#11677) 2022-10-03 18:01:20 -07:00
Flipp Syder 8389bde2c0
Clear and reregister devices for atmos alarms (#11391)
* deregister sensors upon device list update and re-register after clearing devices

* fire alarms, too

* adds the last set of known devices to the device list update event

* update UI upon clearing everything out

* addresses reviews
2022-10-01 09:36:59 -07:00
metalgearsloth f51248ecaa
Melee refactor (#10897)
Co-authored-by: metalgearsloth <metalgearsloth@gmail.com>
2022-09-29 15:51:59 +10:00
Vordenburg 636694e73d
Allow gas analyzers to continue operation after the user moves without a target. (#11555) 2022-09-28 09:55:44 +13: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
Francesco 3fcc87687a
fix: Show both port and internal gas when gas scanning a portable scrubber (#11495) 2022-09-24 12:46:27 -05:00
Leon Friedrich e5f968a7fb
Content changes for engine RotateEvent removal PR (#11448) 2022-09-23 13:57:30 +10:00
Leon Friedrich d2d35afd47
Fix miasma deletion error (#11385) 2022-09-18 09:10:32 +10:00
Leon Friedrich 42f080d665
Fix gas analyser error. (#11386) 2022-09-18 09:10:10 +10:00
metalgearsloth 4262f4685e
Fix miasma flies (#10580)
Looks like some of the exceptions still got through. Also had a redundant AttachParent.
2022-09-16 14:14:45 -07:00
Justin Trotter 6bf45709e9
Add access locks to gas canisters (#10575) 2022-09-16 07:06:29 -07:00
metalgearsloth bb0229e391
Add gas selling to tanks too (#11304) 2022-09-16 07:04:25 -07:00
Visne 356a6b8d2e
Event-ify Rejuvenate (#11145) 2022-09-15 03:30:56 +10:00
metalgearsloth 78a4ab6eb2
Update for collision events by-ref (#10933) 2022-09-14 17:26:26 +10: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
theashtronaut 6f9065a1de
Reimplement anchor/unanchor delay (#11128) 2022-09-10 23:30:10 -07:00
theashtronaut 868abaca5c
Gas Analyzer can now scan pipes/devices along with the environment (#10976) 2022-09-08 07:22:14 -07:00
Flipp Syder b7c08238e4
Fixes air alarm mode propagation when a mode is set from an air alarm (#11121) 2022-09-08 07:01:56 -07:00
Leon Friedrich 35a142965d
Firelock ECS + some other stuff. (#8366)
* firelock rejig

* dont error failed resolves

* fix

* less resolves

* switch fire and pressure messages

* update

Co-authored-by: wrexbe <wrexbe@protonmail.com>
2022-09-05 22:55:33 -07:00
Flipp Syder 0882d85176
Air alarm balancing (#11063)
* threshold balancing, restores none mode on atmos alarm

dear lord, panic mode with unbalanced thresholds was a nightmare

* that was 10%, not 1%

* adds widenet mode for scrubbers

* adds the vents to wide filter as well
2022-09-05 19:35:36 -07:00
Flipp Syder 8cbcf2d640
Fixes reset propagation for atmospheric alarm receivers, adds CVar for fire alarm all access (#11020)
* adds a check for if a firelock is powered before auto-opening

* fixes issue where resets would not propagate properly

* adds cvar bound for fire alarm access (defaults to all access)
2022-09-05 18:15:50 -07:00
Flipp Syder 9ace52a6c1
Device link visualizer (#11054)
* shuffles devicelist to shared, adds an overlay for devicelist

* adds space property to overlay

* moves networkconfigurator to shared, makes devicelistsystem clientside check activedevicelist

* dirties components upon change, adds networkedcomponent to sharednetworkconfigurator

* state handlers for networked components

* whoops

* lots of shuffling, renaming, and access changes

* randomizes color for every new entity added to the overlay

* adds a client-side action to clear all network overlays if they're active

* clones action (oops)

* localization, adds a command for clearing network link overlays (in case the action disappears)

* moves the entity manager up into the bui fields

* makes that a dependency

* attempts to just directly get the color from the dict when drawing, now

* fixes up a few comments

* adds dirty on init to devicelistcomponent

* hacky solution related to mapping with a networkconfigurator

* more stricter bound on that hacky solution

* just checks if the life stage is initialized instead of if the entity was initialized

* moves getalldevices to shared

* readds linq import

* tries to ensure that the show button is toggled on if the device we're trying to configure is currently being tracked by the overlay

* some reorganization
2022-09-05 19:55:44 -05:00
corentt 6301ac5147
AirAlarms fixes (#11062)
* modify airalarm thresholds

* display percentage, not ratio

* reopen doors on normal/warning state

* panic mode on danger state
2022-09-05 19:54:26 -05:00
Flipp Syder d447b0f80e
Air alarm patches (#11004) 2022-09-04 02:04:15 -07:00
Flipp Syder ba2995b7c8
Merge pull request #10721 from vulppine/air-alarm-fixup
Air sensors & air alarm fixup
2022-09-02 13:00:33 -07:00
vulppine fa8c16358f alarmables should now attempt to update appearance on init 2022-08-30 21:41:29 -07:00
Rane f36d278499
Biomass (#10313)
* Material

* good prototype

* Fix material storage

* You can insert biomass into the cloner

* ok, basic biomass subtraction works

* amogus

* ok chance works

* Alright, the biomass and genetic stuff works

* feedback for cloning

* more reclaimer polish

* ship it

* starting biomass + fix lathes

* I changed my mind on rat mass and these guys are definitely getting ground up

* Doafter

* clean up, sync the two

* fix naming, fix mass

* technology + construction

* additional logging, stop unanchoring when active

* fix event / logs

* dont gib dead salvage

* auto eject

* fix deconstruction behavior

* make warning message better, temporarily disable cancer scanner

* fix biomass stacks

* add easy mode CVAR

* stack cleanup, make biomass 2x as fast

* bugfix

* new sprite from hyenh

* fix tests

* hello? :smilethink:

* :smilethink:

* medical scanner gets antirotting

* fix cloner and medical scanner

Co-authored-by: Moony <moonheart08@users.noreply.github.com>
2022-08-29 21:31:27 -05:00
vulppine e0bf77490d number of things, fixing warnings, AtmosAlarmType instead of AtmosMonitorAlarmType 2022-08-29 07:37:26 -07:00
vulppine dd01189a6e changes how the emag function works in fire alarms 2022-08-23 14:47:09 -07:00
Flipp Syder f00a5cb17a
Merge branch 'master' into air-alarm-fixup 2022-08-23 13:21:05 -07:00
vulppine a8eb929d3c removes air alarm replace mode 2022-08-23 13:20:23 -07:00
vulppine e348a64423 air alarm now sends the count of known devices, rather than all types of devices 2022-08-23 12:04:45 -07:00
vulppine b3a4ef9997 file-scoped namespaces 2022-08-23 10:55:46 -07:00
vulppine df25715ed3 renames AtmosMonitorAlarmEvent to AtmosAlarmEvent 2022-08-23 10:42:03 -07:00
vulppine 83cac4de1e vv for tripped thresholds, device list update event for air alarms 2022-08-22 18:41:24 -07:00
vulppine b8d011f8f4 checks for validity now ensure that an alarm is reset to normal - only if it was known beforehand 2022-08-22 18:06:41 -07:00
vulppine 546e70730e or instead of and 2022-08-22 17:45:29 -07:00
vulppine 8de6193ff2 monitors will now always alarm if threshold types have been tripped/reset to normal on update 2022-08-22 17:42:47 -07:00
vulppine 7fd510d252 power check for firelocks, atmos monitor power cycle should now alert 2022-08-22 16:47:34 -07:00
vulppine ff9d9ab75c Revert "ResetAll no longer clears the alarm state for an atmos monitor"
This reverts commit d774741121.
2022-08-22 16:11:32 -07:00
vulppine f602ead768 power change should now update alarm on alarmables 2022-08-22 15:03:22 -07:00
vulppine a5cf4f9578 makes monitoralerttypes actually nullable 2022-08-22 12:06:30 -07:00
vulppine d774741121 ResetAll no longer clears the alarm state for an atmos monitor 2022-08-22 11:55:08 -07:00
vulppine 84027b4e67 alarmables now check if the type of alarm matches the alarms they can check (optional) 2022-08-22 11:30:37 -07:00
vulppine 160104bc2a Revert "oops!"
This reverts commit 1428a6d285.
2022-08-22 10:41:53 -07:00
vulppine 1428a6d285 oops! 2022-08-22 10:35:22 -07:00
vulppine 912b23e414 fire alarms (and anything that uses Reset/ForceAlert) should now update their appearance and play noises 2022-08-22 10:05:39 -07:00
vulppine 786bddff0a resetall now affects atmos monitor alerts 2022-08-22 09:19:02 -07:00
vulppine 2d22c37210 fire alarms will now attempt to register and sync against all connected devices whenever a device list is updated 2022-08-22 08:44:03 -07:00
vulppine a8bf2ccbb6 fixes firelock alarm sync, removes check condition for syncalerts packet receive when checking through the sent dictionary 2022-08-22 07:29:43 -07:00
vulppine a091e69635 should fix TryGetHighestAlert logic 2022-08-22 07:02:48 -07:00
vulppine 6be3265084 tag sync, replaces monitor references with alarmable references 2022-08-22 05:49:51 -07:00
vulppine 85effbd33d force alert on alarmable, enforces synchronization with alarmables to be bounded by the tags that it can sync with 2022-08-22 05:01:31 -07:00
vulppine 550ea771a7 sync alarms, reset all, etc 2022-08-22 04:21:20 -07:00
vulppine 25bb45aa98 atmosdevicenetworksystem for generic device network stuff for atmos devices 2022-08-22 01:14:39 -07:00
Leon Friedrich 921e2ee57d
BUI changes required for Engine PR (#10608) 2022-08-21 03:38:30 +10:00
vulppine a2d18e7a6d starts moving alarm sync logic to alarmables 2022-08-20 07:36:53 -07:00
vulppine fbab3cd5aa removes atmos alarmable from scrubbers and vents 2022-08-19 23:59:59 -07:00
vulppine 9b3df8740f sensor info is now wider, air alarm now actually updates the networked device state 2022-08-19 05:23:25 -07:00
vulppine b9b9b84bea fixes up air alarm modes 2022-08-19 04:40:50 -07:00
vulppine a0e9f4d0b8 UI changes 2022-08-19 04:06:09 -07:00
vulppine 327314b82f tab changing 2022-08-18 08:14:18 -07:00
vulppine b444c0bbbe whoops, forgot to actually sync monitor data in 2022-08-18 07:26:01 -07:00
vulppine e0ee36ad62 average calculation now returns 0 if there are no sensors 2022-08-18 07:10:39 -07:00
vulppine 531f0cb0e5 ui updates (no sensors yet) 2022-08-18 07:03:37 -07:00
vulppine 10e10b4bae set threshold on server, pressure/temperature average from all sensors sent with air alarm state 2022-08-18 06:44:43 -07:00
vulppine 024e301516 set thresholds from network, reset command, removes OnFire from sensor data 2022-08-18 03:15:13 -07:00
vulppine 068527b13c alert sounds from alarmables, sensor data ctor 2022-08-18 02:37:12 -07:00
vulppine 1c651f051f some backend stuff for air alarms
finally, some UI states!!!
2022-08-17 23:46:15 -07:00
vulppine 32e2686a4b threshold cloning 2022-08-17 20:52:04 -07:00
vulppine b075606f61 air sensor model (works well enough) 2022-08-17 20:32:31 -07:00
Leon Friedrich f47f8d5a1e
Fix miasma error (#10629) 2022-08-15 20:45:59 -07:00
Visne 58769634c7
Fix a bunch of compiler warnings (#10518) 2022-08-13 22:28:34 -07:00
Kevin Zheng 9cb7e0f6c4
Make atmos Turing-complete (#10520)
* Add pneumatic valves

Pneumatic valves permit bidirectional flow between the inlet and outlet
if the pressure at the control port is high enough.

* Add construction recipe
2022-08-11 16:19:31 -05:00
Rane 1e93dd1d1e
give more info in examine for rotting (#10493)
* give more info in examine for rotting

* remove line

* Update MiasmaSystem.cs

* Update MiasmaSystem.cs

Co-authored-by: wrexbe <81056464+wrexbe@users.noreply.github.com>
2022-08-10 19:43:19 -07:00
metalgearsloth 3fbc42aef0
Fix miasma crash (#10433) 2022-08-08 03:09:09 -07:00
Kevin Zheng e0836311f1
Add prices for gas canisters (#10129) 2022-08-08 11:49:06 +10:00
Leon Friedrich 193b9f467d
Remove string appearance keys (#10114) 2022-08-08 11:44:16 +10:00
Júlio César Ueti ee969c9799
Adds even more important Admin Logging (#10268) 2022-08-08 09:21:56 +10:00
metalgearsloth 45bd1edd5b
Revert "Update submodule to 0.34.0.0 (#10356)" (#10359) 2022-08-06 16:48:21 +10:00
Leon Friedrich e06ea56eb2
Content BUI changes for engine PR (#10308) 2022-08-06 14:59:02 +10:00
Leon Friedrich 55665766cf
Fix gas tank bug (#10197)
* Fix gas tank bug

* avoid partial connects

* Revert "avoid partial connects"

This reverts commit 598a871442b74bfe05948e3df8ed47722315722d.
2022-08-01 17:43:20 +10:00
Kevin Zheng da11acd8c3
Make passive gates great (#9816) 2022-07-30 20:00:34 -07:00
Leon Friedrich bae540ab2f
Fix gas tank and other hand-interaction bugs (#9700) 2022-07-30 19:56:26 -07:00
Rane 47e84d9d54
Make miasma start being visible later (#10128) 2022-07-28 20:13:56 -07:00
Leon Friedrich c7ad6b709e
Audio System Rejig (#9635) 2022-07-29 12:13:12 +10:00
Kara 6c30726c7b
freon fixes (#10076) 2022-07-27 03:17:33 -07:00
Kara 7a553781cc
Frezon (#9980)
* stuff i'll have to fix anyway when n2o gets merged

* everything except the finished reactions

* freon coolant reaction but with bad curve

* miasmic subsumation

* freon production

* nitrogen and diff temp scaling

* uhh meant to change that

* #

* hitting that frezon boof
2022-07-27 04:55:28 -05:00
Rane 1c8bdaf7c4
Sleeping (#9793) 2022-07-26 21:46:24 -07:00
Nemanja 6276bda4f4
Zombie Fixes and Tweaks (#9940) 2022-07-26 17:35:34 -07:00
metalgearsloth 40a7584c2f
Gas tank internals alerts (#9567) 2022-07-25 14:42:25 +10:00
Leon Friedrich ed068b166f
Gas tile overlay rejig (#9619) 2022-07-24 19:10:18 -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
Rane 188934a748
Portable scrubbers (#9417) 2022-07-15 05:46:30 -07:00
Kara fab331742a
Remove `IAfterInteract` (#9715)
* remove gas analyzer iafterinteract

* solution transfer + obsolete

* cuffable

* remove
2022-07-14 21:45:31 +10:00
Kara b9a0894d7c
Event refactor (#9589)
* Station event refactor

* Remove clientside `IStationEventManager`

we can just use prototypes

* Basic API idea

* Cruft

* first attempt at epicness

* okay yeah this shit is really clean

* sort out minor stuff

* Convert `BreakerFlip`

* `BureaucraticError` + general cleanup

* `DiseaseOutbreak`

* `FalseAlarm`

* `GasLeak`

* `KudzuGrowth`

* `MeteorSwarm`

* `MouseMigration`

* misc errors

* `PowerGridCheck`

* `RandomSentience`

* `VentClog`

* `VentCritters`

* `ZombieOutbreak`

* Rewrite basic event scheduler

* Minor fixes and logging

* ooooops

* errors + fix

* linter

* completions, `RuleStarted` property, update loop fixes

* Tweaks

* Fix #9462

* Basic scheduler update fix, and fixes #8174

* Add test

* UI cleanup

* really this was just for testing
2022-07-10 20:48:41 -05:00
Kara 50fc190f7f
Visual popup addendum (#9570) 2022-07-09 02:32:06 -07:00
Kara dc28b58468
Visual popup types (#9523)
* Visual popup types

* Pass over `PopupCoordinates` and `PopupCursor`

* `PopupEntity` pass

* Disease and reagent popup pass

* COLOUR
2022-07-09 04:09:52 -05:00
Vera Aguilera Puerto 4917943c3d
Fix adjacent tile atmosphere creation using the wrong coordinates. (#9539) 2022-07-08 14:30:45 +02:00
Vera Aguilera Puerto 520464e89b
FixVacuum does not replace tile air if there are no adjacent tiles. (#9535) 2022-07-08 12:41:59 +02:00
Leon Friedrich d9c247b310
Fix pipe net null error (#9508) 2022-07-06 20:36:07 -07:00
Jessica M 1be8efdffb
add tongue twister to the miasma pool (#9423) 2022-07-05 23:51:56 +10:00
Kara 33e1c77de2
Fix collisions passing firestacks between mobs (#9324) 2022-07-04 20:30:45 -05:00
Vera Aguilera Puerto aa9281d667
Refactors the AtmosphereSystem public-facing API to allow for multiple atmos backends. (#8134)
* Refactors the entirety of the AtmosphereSystem public-facing API to allow for multiple atmos backends.

* actually compiles

* Remove commented out code

* funny bracket

* Move archived moles, temperature from GasMixture to TileAtmosphere.

* WIP customizable map default mixture
still VERY buggy

* broken mess
aaaaaaaaaaaaa

* Fix lattice, etc not being considered space

* visualization for "IsSpace"

* help

* Update Content.Client/Atmos/Overlays/AtmosDebugOverlay.cs

Co-authored-by: Moony <moonheart08@users.noreply.github.com>

* Holy SHIT it compiles AGAIN

* Fix AtmosDeviceSystem crash at shutdown

* Fix immutable tiles on map blueprints not being fixed by fixgridatmos/revalidate.

* Use space instead of gasmixture immutable for heat capacity calculations

* Remove all LINDA-specific code from GasMixture, move it to TileAtmosphere/AtmosphereSystem instead.

* Fix roundstart tiles not processing

* Update Content.Server/Atmos/Commands/SetTemperatureCommand.cs

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* Update Content.Server/Atmos/EntitySystems/AtmosphereSystem.API.cs

Changed Files tab is so large I can't commit both suggestions at once mfw

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

Co-authored-by: Moony <moonheart08@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2022-07-04 09:51:34 -05:00
Rane b7e9e95567
Rotting fixes (#9338) 2022-07-02 19:46:24 -07:00
Rane 87cf078d42
Miasma outbreaks give every mob the same disease (#9232) 2022-07-02 19:25:31 -07:00
Rane 2e90b81910
Freezer fixatmos entity (#9314) 2022-07-02 19:13:52 -07:00
Leon Friedrich c13c0b8b0b
Remove implicit GridId conversions (#8975) 2022-06-28 22:56:02 +10:00
Pieter-Jan Briers 97c74d5903
Completions for fixgridatmos (#8983)
* Completions for fixgridatmos

* Fix stuff

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2022-06-28 19:08:29 +10:00
Rane f647c8a658
Quick miasma nerf (#9161) 2022-06-25 21:04:40 -05:00
Rane a1affccc84
Miasma improvements (#9022) 2022-06-24 01:20:52 -07:00
metalgearsloth 2b6c352aff
Jetpacks (#9023)
* Movement acceleration

* tweaks

* Weightless refactor coz fuck it

* CCVars

* weightless movement tweaks

* Some cleanup while I'm here

* dorkpacks

* thanks fork

* fixes

* zoomies

* toggles

* hmm

* yamls

* b

* so true

* Effects refactor

* namespace

* review
2022-06-24 17:44:30 +10:00
EmoGarbage404 1c7a09b736
Fire Axe [New syndie item] (#9088) 2022-06-23 18:27:28 -07:00
Vera Aguilera Puerto 9090460e0e
Cleans up the appearance and ambience of various atmos devices. (#9071) 2022-06-23 22:18:11 +10:00
metalgearsloth 77a8e16104
Add cargo shuttle (#8686) 2022-06-23 14:36:47 +10:00
metalgearsloth 8905996cfc
Make raiselocalevent not broadcast by default (#8998) 2022-06-22 09:53:41 +10:00
Júlio César Ueti 360a6b8b00
Fix fixgridatmos command (#9007) 2022-06-21 19:47:10 +02:00
Leon Friedrich 229627a934
Gas injector visuals & balance (#8963) 2022-06-20 19:04:55 -07:00
Leon Friedrich fa4c6f63f8
Nullable grid Uid (#8798) 2022-06-20 10:14:35 +10:00
Rane a527658f6d
Miasma update (#8943) 2022-06-18 22:51:55 -07:00
Rane 1dc78ec88a
Port miasma from nyano (#8926)
Co-authored-by: Kara <lunarautomaton6@gmail.com>
2022-06-17 00:00:23 -07:00
metalgearsloth 9fbc32ecea Fix addatmos from griduid artifact 2022-06-16 19:27:31 +10:00
metalgearsloth 1e82d0c7ed
Add docking window to shuttle consoles (#8756)
* lewd

* A

* Realtime

* Sleepy dork

* Draw radar position

* Accurate infiltrator

* experiments

* Better drawing

* Labels

* I need aan adult

* Cleanup

* Show toggles

* display I guess

* A

* fix

* fix

* cleanupsies

* Bit more polish

* Make sure mass scanners actually work

* Remove dummy state

* fren

* opposite

* aghost crash

* comment

* What's in a name

* woops

* Show docking ports

* Dock highlighting

* Drawing dock

* Shitty docks

* Lots of docking drawing

* Autodock working

* dork

* More graceful shutdown

* zoomies

* Lines and distance change

* revert

* Good enough

* cleanup

* Fix default range

* Dock UI and loc update

* Update on undock

* Loc fixes
2022-06-16 15:28:16 +10:00
keronshb f7b1bda3e5
Reorders Sound Systems signatures to match Popup Systems. (#8728) 2022-06-13 09:45:47 +10:00
Acruid 4f9be42f40
Remove Explicit GridId References (#8315)
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2022-06-12 11:54:41 +10: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 ca7960382b
Missing nullables (#8634) 2022-06-04 17:17:48 +10:00
Leon Friedrich f5dfba9db4
Fix pipe net conservation laws (#8540) 2022-06-03 03:09:51 -07:00
keronshb d5620aa833
AccessReader IsAllowed use resolve (#8527) 2022-06-01 08:26:50 -07:00
wrexbe 1e0babbd50
Make AdminLogsSystem an IoC manager (#8492)
* Make log not entity system

* Fixes
2022-05-28 23:41:17 -07:00
Leon Friedrich 2b2bef5947
Fix GasThermoMachine upgrading (#8313) 2022-05-29 05:10:37 +10:00
metalgearsloth 2d873a2cf2
Add static "IsPowered" method (#8434)
* Add static "IsPowered" method

* Use IsPowered in more places

Co-authored-by: wrexbe <wrexbe@protonmail.com>
2022-05-26 17:36:12 -07:00
metalgearsloth c3fa24ccd8
Add connect sound for gastank internals (#8318) 2022-05-22 12:31:37 +10:00
TheIntoxicatedCat 382da1f419
fixed pressure pump multiplying transferred moles by 8 (PEMDAS) (#8326) 2022-05-21 01:37:44 -07:00
Flipp Syder dcdda39048
Station alert levels (#8226) 2022-05-18 14:05:31 +10: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
wrexbe 61d147aea9
Fixing warnings (#8131) 2022-05-13 15:35:13 +10:00
Jacob Tong 8c853476fb
Rework CollisionGroups (#7656)
* Replace Mob, Vault, and Small impassable with Mid, High, Low

* Remove CollisionGroup.Underplating

* Remove CollisionGroup.Passable

* Fix constructed APCs not being interactable

* Change firelocks to occlude

* Make pipe inherit from BaseItem

* Clean up pipes

* Remove duplicate physics and fixtures from bucket

* Rework CollisionGroups on all entities

* Add SlipLayer

* Remove fixture from delta

* Fix maps

* Address reviews

* Add SubfloorMask

* Fix glass collisions for flying mobs

* Fix maps

* Update new items

* Fix bagel again

* Fix slug

* Fix maps

* Touchups

* Fix tables blocking high pressure movement

* Update StandingState to allow going under flaps

* Cleanup

* More formatting
2022-05-10 17:57:20 -07:00
Vera Aguilera Puerto e9d7c70373
Adds last pressure direction to atmos debug overlay. (#8083) 2022-05-10 17:03:00 +02:00
Tomeno 507d4af05f
New high pressure movement algorithm (#8086)
Co-authored-by: Tomeno <tomeno@lulzsec.co.uk>
2022-05-10 17:02:39 +02:00
Vera Aguilera Puerto f43e36eded
Fix pressure direction not being reset after high pressure movements happen. (#8078) 2022-05-10 13:24:51 +02:00
Vera Aguilera Puerto 8232d91ad4
Atmos high pressure movements cleanup (#8075)
* Fixes LINDA and monstermos clashing over high pressure difference direction

* Fix space wind CVar not disabling space wind entirely.

* Change 1 (one) variable name
2022-05-10 12:56:17 +02:00
Julian Giebel 1d0bf979fb
Adds the pressure medipen and adds the emergency suit to emergency lockers (#7880)
* Implement pressure medipen
Add the emergency suit to emergency lockers
Increase leporazine temperature change

* Fix typo in translation file

* Fix ignored component name

* Address reviews

* Revert changes to submodule commit
2022-05-06 14:44:29 -07:00
Flipp Syder 2c6158e115
Wires refactor (#7699)
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: Kara <lunarautomaton6@gmail.com>
2022-05-06 12:35:06 +10:00
Putnam3145 c342ed6240
Fixes gas pumps overpressurizing if already over (#7919) 2022-05-03 22:24:30 +02:00
metalgearsloth 72da2db62d
Content changes for grid splitting (#7645) (#7746)
Co-authored-by: Vera Aguilera Puerto <gradientvera@outlook.com>
2022-04-24 13:54:25 +10:00
Rane 6054c5bc53
Familiars respawn (#7640) 2022-04-23 19:27:19 -07:00
metalgearsloth ecaad9c349
Revert "Update submodule (again)" (#7730) 2022-04-24 02:26:00 +10:00
metalgearsloth 8c7772630c
Content changes for grid splitting (#7645)
Co-authored-by: Vera Aguilera Puerto <gradientvera@outlook.com>
2022-04-24 00:59:38 +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 f27bc94fc1
Fixes big issue with air alarms (#7714) 2022-04-22 21:07:40 -07:00
20kdc 4892b7960f
Add an atmos throw velocity cap, adjustible console variables, and fix throw directions for station rotation (#7631) 2022-04-18 09:42:32 -05:00
Leon Friedrich e73d80332e
Fix airtight init rotation. (#7629) 2022-04-18 19:51:01 +10:00
Leon Friedrich 6dc51589f4
Rejig pressure protection (#7560) 2022-04-15 15:41:47 -07:00
Leon Friedrich ba75934512
Re-add action prototypes (#7508)
Co-authored-by: DrSmugleaf <DrSmugleaf@users.noreply.github.com>
2022-04-14 06:17:34 +02:00
DrSmugleaf e0c63483c2
Revert "pvsrange vec2 + eyezoom" (#7487)
* Revert "pvsrange vec2 + eyezoom"

* Merge fixes

* Update RobustToolbox
2022-04-09 13:07:40 -05:00
Leon Friedrich 7057c7ca77
Reduce array resizing in GasTileOverlay (#7479) 2022-04-09 09:45:57 -07:00
mirrorcult 7573a4601a
Optimize vent/scrubber (#7473) 2022-04-09 12:52:44 +10:00
Rane 7900abb888
Literally Murder IExamine (#7352) 2022-04-08 14:17:25 -07:00
Leon Friedrich 66504f9630
Small gas tile overlay performance improvements (#7468) 2022-04-08 14:04:37 -07:00
Leon Friedrich a4d55235cc
Rejig Device networks (#7380) 2022-04-08 22:27:10 +10:00
mirrorcult d1c980fe41
Gas tank minor opts (#7424) 2022-04-05 15:08:41 +10:00
Paul Ritter 4b6ba817c2
pvsrange vec2 + eyezoom (#7392)
Co-authored-by: Paul <ritter.paul1+git@googlemail.com>
2022-04-04 20:30:12 +02:00
Paul Ritter 2ff40d5a1f
Serv3 rework content changes (#7145) 2022-04-03 02:01:22 +02:00
Leon Friedrich 39c4d8be1f
Move Anchorable to shared. (#7361)
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2022-04-02 14:52:44 +11:00
Leon Friedrich 56168e592e
Explosion refactor (#5230)
* Explosions

* fix yaml typo

and prevent silly UI inputs

* oop

* Use modified contains() checks

And remove IEnumerable

* Buff nuke, nerf meteors

* optimize the entity lookup stuff a bit

* fix tile (0,0) error

forgot to do an initial Enumerator.MoveNext(), so the first tile was always the "null" tile.

* remove celebration

* byte -> int

* remove diag edge tile dict

* fix one bug

but there is another

* fix the other bug

turns out dividing a ushort leads to rounding errors.  Why TF is the grid tile size even a ushort in the first place.

* improve edge map

* fix minor bug

If the initial-explosion tile had an airtight entity on it, the tile was processed twice.

* some reviews (transform queries, eye.mapid, and tilesizes in overlays)

* Apply suggestions from code review

Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>

* is map paused

* GetAllTiles ignores space by default

* WriteLine -> WriteError

* First -> FirstOrDefault()

* default prototype const string

* entity query

* misc review changes

* grid edge max distance

* fix fire texture defn

bad use of type serializer and ioc-resolves

* Remove ExplosionLaunched

And allow nukes to throw items towards the outer part of an explosion

* no hot-reload disclaimer

* replace prototype id string with int index

* optimise damage a tiiiiny bit.

* entity queries

* comments

* misc mirror comments

* cvars

* admin logs

* move intensity-per-state to prototype

* update tile event to ECS event

* git mv

* Tweak rpg & minibomb

also fix merge bug

* you don't exist anymore go away

* Fix build

Co-authored-by: moonheart08 <moonheart08@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2022-03-31 21:39:26 -05:00
Leon Friedrich a11e8b676c
Content changes for InContainer flag (#7003) 2022-03-31 13:28:36 +11:00
metalgearsloth b506fdcf65
Reduce atmos allocs a bunch (#7228) 2022-03-27 17:49:26 +11:00
Flipp Syder f748c4ccb8
Fixes scrubbers sharing the same set of gases to scrub (#7241) 2022-03-23 19:24:56 +11:00
Kevin Zheng 9df4f599f4
Gas analyzers now analyze gases in pipes (#7112) 2022-03-20 16:10:48 +11:00
Leon Friedrich bfd95c493b
hands ECS (#7081) 2022-03-17 18:13:31 +11:00
Leon Friedrich 25cf0eac08
fix gas tank UI (#7135) 2022-03-16 14:30:40 -07:00
Leon Friedrich e3ead6a3ba
Remove IDropped (#7075) 2022-03-13 19:47:28 +11:00
Moony f5c92caef4
Ambience enhancements. (#7073) 2022-03-12 15:20:31 -07:00
Rane 926e36d81d
Convert almost all IActivate instances that open UIs to ActivatableUI (#7028)
* Chem master

* Drone support for handhelds

* Vending machines, scanners

* Cloners, R&D computers

* make research a little less sussy

* Unfuck wires

* PA control computer

* Unfuck merge

* Clean up git gore for good

* Disposals

* Microwaves

* paper

* Magic mirror

* More vendors for drones

* Solar computer whitelist

* EFR review updates
2022-03-12 11:26:06 -07:00
ScalyChimp d691161542
Removes obsolete uses of IMapManager events. (#7036) 2022-03-09 17:39:03 +11:00
Moony 0d3498e8d9
Makes grids that pass a certain size airtight. (#6934)
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2022-03-07 23:09:54 +11:00
Leon Friedrich c95516e5b2
Revert "Explosion refactor TEST MERG (#6995)" (#7005) 2022-03-06 04:02:34 +11:00
Moony 4a466f4927
Explosion refactor TEST MERG (#6995)
* Explosions

* fix yaml typo

and prevent silly UI inputs

* oop

Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
2022-03-04 13:48:01 -06:00
Vera Aguilera Puerto 1ff687f482 FlammableComponent has an empty Damage field by default.
Prevents NRE exceptions when admemes are involved, etc?
2022-03-04 17:00:35 +01:00
Vera Aguilera Puerto 0b0de4fe10 FlammableSystem only calls TemperatureSystem.ChangeHeat if the entity has the appropriate component. 2022-03-04 16:25:32 +01:00
Vera Aguilera Puerto e292418766 Fix incorrect if statement in FlammableSystem.
Should fix the FlammableComponent resolve errors on live servers.
2022-03-03 11:48:27 +01:00
metalgearsloth 836930e733
EntityLookup as a system for content (#6931) 2022-03-03 21:18:35 +11:00
Leon Friedrich ee7d0440f3
Limit atmos device rates (#6533) 2022-03-01 01:39:30 +11:00
Leon Friedrich ff7d4ed9f6
Patched Actions Rework (#6899)
* Rejig Actions

* fix merge errors

* lambda-b-gon

* fix PAI, add innate actions

* Revert "fix PAI, add innate actions"

This reverts commit 4b501ac083e979e31ebd98d7b98077e0dbdd344b.

* Just fix by making nullable.

if only require: true actually did something somehow.

* Make AddActions() ensure an actions component

and misc comments

* misc cleanup

* Limit range even when not checking for obstructions

* remove old guardian code

* rename function and make EntityUid nullable

* fix magboot bug

* fix action search menu

* make targeting toggle all equivalent actions

* fix combat popups (enabling <-> disabling)

* fix networking

* Allow action locking

* prevent telepathy
2022-02-25 23:24:08 -06:00
Leon Friedrich 49ae383f06
Revert "Actions Rework" (#6888) 2022-02-25 16:55:18 +11:00
Leon Friedrich 5ac5dd6a64
Actions Rework (#6791)
* Rejig Actions

* fix merge errors

* lambda-b-gon

* fix PAI, add innate actions

* Revert "fix PAI, add innate actions"

This reverts commit 4b501ac083e979e31ebd98d7b98077e0dbdd344b.

* Just fix by making nullable.

if only require: true actually did something somehow.

* Make AddActions() ensure an actions component

and misc comments

* misc cleanup

* Limit range even when not checking for obstructions

* remove old guardian code

* rename function and make EntityUid nullable

* fix magboot bug

* fix action search menu

* make targeting toggle all equivalent actions

* fix combat popups (enabling <-> disabling)
2022-02-24 22:12:29 -06:00
mirrorcult 73ff1513de
Thermomachine UI (#6833) 2022-02-22 21:09:01 -07:00
mirrorcult d91f969451
Thermomachine fix + machine boards (#6803) 2022-02-20 17:17:45 -07:00
metalgearsloth 07b38e5acd
Minor atmos optimisations (#6625) 2022-02-20 17:43:20 +11:00
mirrorcult 3e6bf54727
Disposals air + new atmos expose event (#6798)
Co-authored-by: Vera Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
2022-02-19 17:42:01 -07:00
Leon Friedrich 56fc6011f1
Fix gas cannister slider log spam. (#6628) 2022-02-19 12:15:47 -07:00
Rane 8049a709e6
Emags (#6738) 2022-02-17 19:43:24 -07:00
Leon Friedrich 4a00d01ced
Remove ignore-inside-blocker (#6692)
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2022-02-16 19:40:03 -07:00
mirrorcult ec4d4688c7
Seal/abstract/virtual everything (#6739) 2022-02-16 18:23:23 +11:00
Leon Friedrich ad9ddf1552
Reduce action blocker uses and add target entity to CanInteract (#6655) 2022-02-15 15:06:52 +11:00
Leon Friedrich ac23899a39
Move pipe visualizers to systems. (#6565) 2022-02-13 20:20:35 -07:00
Leon Friedrich 706ac6af40
Revert "Revert "epic Respiration Rework"" (#6527) 2022-02-09 21:53:10 -07:00
Leon Friedrich b417c022bf
Disable mixer and filter on unanchor (#6577) 2022-02-10 14:28:11 +11:00
Leon Friedrich 1c9ffdc78c
Replace VerbTypes with verb classes (#6525) 2022-02-10 13:30:59 +11:00
Leon Friedrich 21e0cd4256
Optimize pipe net appearance updating. (#6469)
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2022-02-09 14:10:55 +11:00
wrexbe 425712adea
Removed extra comp name attributes (#6449) 2022-02-08 19:42:49 +11:00
Leon Friedrich dfc03d6871
Fix gas mixer visuals (#6534) 2022-02-07 13:42:07 -07:00
Leon Friedrich 6e8c92d13e
Revert "epic Respiration Rework" (#6524) 2022-02-07 18:13:14 +11:00
mirrorcult 4ae1c4e332
epic Respiration Rework (#6022) 2022-02-06 21:48:15 -07:00
metalgearsloth 03a5a71243
Gas Thermo ECS (#6442) 2022-02-07 13:10:43 +11:00
Leon Friedrich 32ada7de7a
Reduce atmos system resolves (#6465) 2022-02-05 21:57:26 +11:00
Leon Friedrich 0da74b1bfb
misc optimization (#6436) 2022-02-02 22:40:22 -07:00
wrexbe 17db0775c8
Auto comp (#6416) 2022-02-02 14:35:40 +11:00
Leon Friedrich 83d29ce38d
Raise an attempt-event when receiving client BUI messages. (#6113) 2022-01-31 02:26:07 +11:00
ScalyChimp 004c678853
Incediary Shells (#6208)
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2022-01-31 00:44:45 +11:00
metalgearsloth 26b6175a4b
ECS atmos plaque (#6349) 2022-01-30 17:23:37 +11:00
metalgearsloth 48e075b67e
Optimise high pressure movements slightly (#6287) 2022-01-26 22:17:15 +11:00
metalgearsloth 3f7f3baa16
Remove component.Paused (#6285) 2022-01-26 17:57:48 +11:00
Vera Aguilera Puerto f917c18ff8
Fix air alarm system keeping deleted entity UIDs around. (#6307) 2022-01-25 16:37:34 -07:00
wrexbe cea1b21832
Fixing some warnings (#6250)
Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>
2022-01-21 10:38:35 +01:00
Leon Friedrich 65eeae7188
Required air alarm offset changes for engine PR (#6216) 2022-01-18 19:39:39 +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
Paul Ritter 9e1607722d
removes componentdependencies (#6160) 2022-01-15 13:26:37 +11:00
Vera Aguilera Puerto daef343c2c
Fires now play a sound effect. (#6138) 2022-01-14 01:18:17 +11:00
Leon Friedrich 21480c716a
Correct anchor events (#6140) 2022-01-12 18:49:28 +01:00
Vera Aguilera Puerto c4bf0a9479
AdminManager can now load permissions for registered callback commands. (#6025) 2022-01-12 11:05:39 +01:00
Leon Friedrich 013edcc545
Prevent inventory events from being relayed to pockets (#6074)
Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
2022-01-10 15:37:20 +11:00
wrexbe 5ceb2372bf
Clean up some warnings (#6088)
* Clean up some warnings

* Remove nullable enable

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>

Co-authored-by: ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
2022-01-09 22:10:36 -06:00
metalgearsloth 64de4bbed9
Nuke gridtilelookup (#6030) 2022-01-09 23:47:01 +11:00
Acruid 5b1cd2dd96
ECSatize AlertsSystem (#5559) 2022-01-05 19:19:23 +11:00
Leon Friedrich f13f743c51
Make use-in-hand default to activation interactions. (#5951) 2022-01-05 00:23:01 +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
Paul Ritter 512d6a38c3
get that crap outta here (completely rewrites inventorysystem) (#5807)
* some work

* equip: done
unequip: todo

* unequipping done & refactored events

* workin

* movin

* reee namespaces

* stun

* mobstate

* fixes

* some work on events

* removes serverside itemcomp & misc fixes

* work

* smol merge fix

* ports template to prototype & finishes ui

* moves relay & adds containerenumerator

* actions & cuffs

* my god what is actioncode

* more fixes

* im loosing my grasp on reality

* more fixes

* more work

* explosions

* yes

* more work

* more fixes

* merge master & misc fixed because i forgot to commit before merging master

* more fixes

* fixes

* moar

* more work

* moar fixes

* suffixmap

* more work on client

* motivation low

* no. no containers

* mirroring client to server

* fixes

* move serverinvcomp

* serverinventorycomponent is dead

* gaming

* only strippable & ai left...

* only ai and richtext left

* fixes ai

* fixes

* fixes sprite layers

* more fixes

* resolves optional

* yes

* stable™️

* fixes

* moar fixes

* moar

* fix some tests

* lmao

* no comment

* good to merge™️

* fixes build but for real

* adresses some reviews

* adresses some more reviews

* nullables, yo

* fixes lobbyscreen

* timid refactor to differentiate actor & target

* adresses more reviews

* more

* my god what a mess

* removed the rest of duplicates

* removed duplicate slotflags and renamed shoes to feet

* removes another unused one

* yes

* fixes lobby & makes tryunequip return unequipped item

* fixes

* some funny renames

* fixes

* misc improvements to attemptevents

* fixes

* merge fixes

Co-authored-by: Paul Ritter <ritter.paul1@gmail.com>
2021-12-30 22:56:10 +01:00
Vera Aguilera Puerto 1882ad55af
Use ByRefEvent attribute in content. (#5918) 2021-12-27 18:50:43 +01:00
wrexbe 40278353d3
Salvage (#5686)
Co-authored-by: 20kdc <asdd2808@gmail.com>
Co-authored-by: Vera Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
2021-12-23 13:14:01 +01:00
Pieter-Jan Briers ebdd6e817c Use float.IsFinite in some appropriate places previously using IsNan || IsInfinity 2021-12-23 01:22:07 +01:00
metalgearsloth caf28d09b3
Optimise air + cable shutdowns for grid deletion (#5847)
Co-authored-by: Vera Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
2021-12-21 17:17:21 +11:00
Paul 97e47178d7 Revert "fixes a bunch of warnings"
This reverts commit d4d85b663f.
2021-12-20 15:20:27 +01:00
Paul d4d85b663f fixes a bunch of warnings 2021-12-20 13:58:30 +01:00
Paul Ritter cc57d1380c
Revert Rich text (#5848) 2021-12-20 12:42:42 +01:00
Vera Aguilera Puerto 0517e12efd Slight AtmosphereSystem cleanup.
- AtmosExposed query now queries transform as well instead of getting it twice.
- Use Proxy methods instead.
2021-12-16 12:10:51 +01:00
Leon Friedrich 7f81f0b8b8
Add more pretty strings to logs (#5768) 2021-12-13 12:22:58 +01:00
E F R b2da936848
Everything: Rich text redux (#5625)
* lord save me

* UI/ChatBox: Use the new `defStyle` param for `RenderMarkup`

The previous iteration didn't work because `AddMessage` can't inherit
its color from the PushColor (since we're not doing actual tag stacks
anymore).

* rebase touchup
2021-12-12 18:25:42 -08:00
Vera Aguilera Puerto f6371c6e62 Make all current admin logs use ToPrettyString 2021-12-11 16:00:10 +01:00
Moony 7bc656bf4d
Add atmos device logs (#5743) 2021-12-10 19:23:18 +01:00
Vera Aguilera Puerto 8b09d55b10 Fix weird lifestage autorefactors. 2021-12-09 12:39:51 +01:00
Vera Aguilera Puerto cdc8336695 Even more resolve removals. 2021-12-08 17:41:14 +01:00
Vera Aguilera Puerto ba736f70df Remove many resolves on Content.Server 2021-12-08 17:04:21 +01:00
Vera Aguilera Puerto c8b65be747 Replace IEntityManager resolves in systems for cached EntityManager 2021-12-08 13:00:43 +01:00
Bingo Johnson 268b2602b3
Critical and urgent change to atmos.
Extensive and comprehensive refactor spanning over 104 lines, improving performance and cleaning up the code.
2021-12-07 21:49:19 +00:00
Vera Aguilera Puerto 3f79e3754f Merge branch 'master' into 2021-12-03-remove-IEntity-komm-süsser-todd
# Conflicts:
#	Content.Client/Crayon/CrayonDecalVisualizer.cs
#	Content.Client/Tabletop/TabletopSystem.cs
#	Content.IntegrationTests/Tests/InventoryHelpersTest.cs
#	Content.Server/AI/EntitySystems/AiSystem.cs
#	Content.Server/AI/Utility/AiLogic/UtilityAI.cs
#	Content.Server/AME/AMENodeGroup.cs
#	Content.Server/Administration/AdminVerbSystem.cs
#	Content.Server/Body/Systems/RespiratorSystem.cs
#	Content.Server/Chemistry/Components/InjectorComponent.cs
#	Content.Server/Chemistry/TileReactions/CleanTileReaction.cs
#	Content.Server/Chemistry/TileReactions/SpillTileReaction.cs
#	Content.Server/Crayon/CrayonComponent.cs
#	Content.Server/Doors/Components/ServerDoorComponent.cs
#	Content.Server/Explosion/EntitySystems/TriggerSystem.cs
#	Content.Server/Fluids/Components/MopComponent.cs
#	Content.Server/Fluids/Components/SpillExtensions.cs
#	Content.Server/Fluids/EntitySystems/PuddleSystem.cs
#	Content.Server/Instruments/InstrumentSystem.cs
#	Content.Server/Nutrition/EntitySystems/DrinkSystem.cs
#	Content.Server/Nutrition/EntitySystems/FoodSystem.cs
#	Content.Server/PneumaticCannon/PneumaticCannonSystem.cs
#	Content.Server/Storage/Components/EntityStorageComponent.cs
#	Content.Server/Storage/Components/StorageFillComponent.cs
#	Content.Server/Stunnable/StunbatonSystem.cs
#	Content.Server/Throwing/ThrowHelper.cs
#	Content.Server/Weapon/Ranged/Barrels/BarrelSystem.cs
#	Content.Server/Weapon/Ranged/Barrels/Components/ServerBatteryBarrelComponent.cs
#	Content.Server/Weapon/Ranged/ServerRangedWeaponComponent.cs
#	Content.Shared/Containers/ItemSlot/ItemSlotsSystem.cs
#	Content.Shared/Damage/Components/DamageableComponent.cs
#	Content.Shared/Damage/Systems/DamageableSystem.cs
#	Content.Shared/MobState/Components/MobStateComponent.cs
#	Content.Shared/Slippery/SharedSlipperySystem.cs
2021-12-07 17:48:49 +01:00
metalgearsloth 16e1bed678 Random IoCManager.Resolve<IEntityManager> removals moment 2021-12-07 23:48:34 +11:00
metalgearsloth 8af335097f More (IComponent) shenanigans and also some contaminated IoCManager.Resolve<IEntityManager>() very long yes calls 2021-12-07 22:22:34 +11:00
metalgearsloth 373b5988d7 Remove redundant IComponent casts 2021-12-07 21:54:00 +11:00
pointer-to-null 090e74792c
Status effects fix. Refresh the status effect cooldown. (#5708) 2021-12-06 23:18:07 -07:00
Vera Aguilera Puerto c57b07a4d0 Goes in-game now 2021-12-06 15:34:46 +01:00
metalgearsloth 525297c5fe A bunch of AttachedEntity bullshit 2021-12-06 15:39:46 +11:00
DrSmugleaf 215cae5655 Fix more errors 2021-12-06 00:52:58 +01:00
Wrexbe b9dd3be061 More Changes 2021-12-05 10:56:17 -08:00
DrSmugleaf 2a3b7d809d Fix 3000 errors 2021-12-05 18:09:01 +01:00
Ygg01 d1ab9592aa
Minor spill refactors (#5569) 2021-12-05 14:18:30 +11:00
Vera Aguilera Puerto 2bfec7ec62 Some more fixes 2021-12-04 14:14:22 +01:00
Paul Ritter e4defccd33
Revert "Salvage 0.1" (#5684) 2021-12-03 23:42:38 +01:00
20kdc 0205846ab2
Salvage 0.1 (#5662) 2021-12-03 23:24:19 +01:00
Vera Aguilera Puerto f386b57148 Inline OwnerUid 2021-12-03 16:30:34 +01:00
Vera Aguilera Puerto 5cd42c9ad6 Inline UID 2021-12-03 15:53:09 +01:00
Vera Aguilera Puerto 2654775bf0 Inline GetComponentOrNull 2021-12-03 15:32:05 +01:00
Vera Aguilera Puerto ee4ff9cfe8 Inline Name 2021-12-03 15:25:51 +01:00
Vera Aguilera Puerto a5b57c8e10 Inline Transform 2021-12-03 14:20:34 +01:00
Vera Aguilera Puerto 69b270017b Inline TryGetComponent completely, for real 2021-12-03 14:17:01 +01:00
Vera Aguilera Puerto 2ff4ec65d5 Inline TryGetComponent completely 2021-12-03 14:05:27 +01:00
Vera Aguilera Puerto 0feebbff00 Inline HasComponent entirely 2021-12-03 12:23:18 +01:00
Vera Aguilera Puerto b835bea086 Inline GetComponent 2021-12-03 11:55:25 +01:00
Vera Aguilera Puerto c2e6da1e54 Inline QueueDelete 2021-12-03 11:43:22 +01:00
Vera Aguilera Puerto f64df117be Inline AddComponent 2021-12-03 11:33:40 +01:00
Vera Aguilera Puerto b2035543e2 Inline Deleted 2021-12-03 11:30:03 +01:00
Vera Aguilera Puerto f06bfc22ce Inline Description 2021-12-03 11:18:05 +01:00
Vera Aguilera Puerto 5e177ae734 Inline EntityManager 2021-12-03 11:18:05 +01:00
Vera Aguilera Puerto 3f8f4c818e
Fixes admin logs and tests to not depend on IEntity caching (#5657)
Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>
2021-12-03 10:25:07 +01:00
Paul Ritter fbcb53dcc0
pvs content (#5484)
Co-authored-by: Paul <ritter.paul1+git@googlemail.com>
2021-11-30 15:20:38 +01:00
Vera Aguilera Puerto bc7463f744 Add GetTileHeatCapacity methods to AtmosphereSystem, makes TemperatureSystem use them. 2021-11-30 12:00:25 +01:00
Vera Aguilera Puerto 94fa6efefb
Misc Atmos Improvements (#5613)
* Revert "Remove atmos archiving."

This reverts commit 7fa10bd17b.

* Explosive Depressurization now brings tiles down to TCMB.

* Tiles now specify heat capacity.

* Do not serialize archived gas mixture values.

* Remove bad idea

* dumb typo

* Space gas mixtures now have a harcoded heat capacity.
This is a bit of a hack, but rooms exposed to space now cool down properly when monstermos is disabled.
Huge thanks to @LemonInTheDark for helping me with this!

* Clean up heat capacity methods

* Better logging based on the original monstermos' logging

* Comment explosive depressurization hack better
2021-11-30 11:42:48 +01:00
Moony 9075cf6163
Space Kudzu (#5472) 2021-11-28 19:25:36 -07:00
Pieter-Jan Briers 64861ff034
Add Content.Shared.Database (#5588) 2021-11-28 14:56:53 +01:00
Leon Friedrich 0de4b7bc9f
Modify damage logging. (#5579) 2021-11-28 14:34:44 +01:00
Moony c576eb91d3
Adds like 17 new logs (#5499)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
2021-11-24 23:52:31 +01:00
Moony 355625bded
OH GOD NO PLASMA PLEASE (#5494)
* OH GOD NO PLASMA PLEASE

* fuck
2021-11-23 21:08:17 -07:00
20kdc f6d44be34f
Activatable UI component (#5184)
* Transfer most Instrument UI logic to a new component, ActivatableUIComponent

* Move more ActivatableUIComponent stuff to ECS

* ActivatableUI component ignore on client

* ActivatableUI: Get rid of component interfaces where possible

* Add in adminOnly attribute for activatable UIs

This is so that porting #4926 to this will be easier

* Transition Solar Control Computer to ActivatableUI

* Move communications console to ActivatableUI

* Move cargo console to ActivatableUI

* Move ID card console to ActivatableUI

* ActivatableUI: Make things more amiable to entity tests adding components weirdly

* ActivatableUI: Use handling or lack thereof of events properly

* ActivatableUI: component dependency issue resolution stuffs

* ActivatableUISystem: Fix #5258

* More fixes because master did stuffo

* Check for HandDeselectedEvent again because otherwise active-hand check doesn't work

* Move just a bit more code into the system, introduce a workaround for #5258

* Purge the player status detection stuff

* Oh and some obsolete stuff too
2021-11-23 19:19:08 +01:00
metalgearsloth 32c36ad221
Give pried tiles a random rotation (#5482)
Also made it so they start with a random offset to avoid the additional MoveEvent going out.
2021-11-23 10:15:49 -07:00
Vera Aguilera Puerto af86378995
Log explosive depressurization. (#5474) 2021-11-23 12:22:18 +01:00
Acruid fa0ec5cbd9
AppearanceComponent API Changes (#5446) 2021-11-23 18:22:59 +11:00
20kdc 1e061094ca
Direct pressure and asphyxiation damage do not interrupt DoAfters anymore (#5459) 2021-11-22 17:34:56 -07:00
Tomeno 8c71099fa2
Fix thermoregulation + rebalance/refactor FlammableComponent (#5406)
Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>
Co-authored-by: Tomeno <tomeno@lulzsec.co.uk>
2021-11-19 17:54:01 +01:00