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
Leon Friedrich
20f68d156e
Add some atmos logs for debugging ( #11970 )
2022-10-17 02:50:11 +11:00
Kognise
aba2462a97
Internals improvements ( #11677 )
2022-10-03 18:01:20 -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
Leon Friedrich
e5f968a7fb
Content changes for engine RotateEvent removal PR ( #11448 )
2022-09-23 13:57:30 +10:00
Leon Friedrich
42f080d665
Fix gas analyser error. ( #11386 )
2022-09-18 09:10:10 +10: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
868abaca5c
Gas Analyzer can now scan pipes/devices along with the environment ( #10976 )
2022-09-08 07:22:14 -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
Leon Friedrich
921e2ee57d
BUI changes required for Engine PR ( #10608 )
2022-08-21 03:38:30 +10:00
Visne
58769634c7
Fix a bunch of compiler warnings ( #10518 )
2022-08-13 22:28:34 -07: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
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
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
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
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
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
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
EmoGarbage404
1c7a09b736
Fire Axe [New syndie item] ( #9088 )
2022-06-23 18:27:28 -07: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
fa4c6f63f8
Nullable grid Uid ( #8798 )
2022-06-20 10:14:35 +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
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
wrexbe
1e0babbd50
Make AdminLogsSystem an IoC manager ( #8492 )
...
* Make log not entity system
* Fixes
2022-05-28 23:41:17 -07: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
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
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
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
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
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
Kevin Zheng
9df4f599f4
Gas analyzers now analyze gases in pipes ( #7112 )
2022-03-20 16:10:48 +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
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
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
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
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
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
706ac6af40
Revert "Revert "epic Respiration Rework"" ( #6527 )
2022-02-09 21:53:10 -07:00
Leon Friedrich
1c9ffdc78c
Replace VerbTypes with verb classes ( #6525 )
2022-02-10 13:30:59 +11: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
0da74b1bfb
misc optimization ( #6436 )
2022-02-02 22:40:22 -07: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
wrexbe
cea1b21832
Fixing some warnings ( #6250 )
...
Co-authored-by: Paul Ritter <ritter.paul1@googlemail.com>
2022-01-21 10:38:35 +01:00
Vera Aguilera Puerto
daef343c2c
Fires now play a sound effect. ( #6138 )
2022-01-14 01:18:17 +11:00
Vera Aguilera Puerto
c4bf0a9479
AdminManager can now load permissions for registered callback commands. ( #6025 )
2022-01-12 11:05:39 +01: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
Vera Aguilera Puerto
1882ad55af
Use ByRefEvent attribute in content. ( #5918 )
2021-12-27 18:50:43 +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
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
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
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
pointer-to-null
090e74792c
Status effects fix. Refresh the status effect cooldown. ( #5708 )
2021-12-06 23:18:07 -07: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
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
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
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
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
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
mirrorcult
07024f7c77
Severely nerf fires and severely buff fire protection ( #5396 )
...
* Make fires do less damage
* Severely nerf fires and severely buff temperature protection
* fuck it, i'll nerf it so hard and we can buff it later if we decide
* new scaling func
* fix
* unused
* reviews + balance metabolism heat + reduce atmos air temp transfer efficiency
* little more balance
* just a wee bit more
* slight adjustment
2021-11-18 23:08:30 -07:00
metalgearsloth
753d198c1a
Avoid unnecessary entitysystem resolve in atmos
2021-11-13 15:05:27 +11:00
Vera Aguilera Puerto
1b01247c5f
Fixes that annoying atmos zero pressure bug I've constantly been pinged and nagged about for like the past few days.
2021-11-11 16:15:49 +01:00
Vera Aguilera Puerto
d370142b80
Makes Grid Revalidation a step in the atmos update stages.
...
Fixes some atmos debug assert exceptions.
2021-11-09 16:50:15 +01:00
Vera Aguilera Puerto
48f8dd2284
ActionBlocker CanInteract uses EntityUid exclusively
...
ActionBlockerSystem fully uses EntityUid now!
2021-11-09 15:05:49 +01:00
Vera Aguilera Puerto
e6e15b3728
Replace all ITransformComponent by TransformComponent
2021-11-08 12:37:32 +01:00
Kara D
4abda4f7cf
Fix mobs taking damage on paused maps
2021-11-06 15:18:27 -07:00
mirrorcult
3ab4a30a0f
Generalize ReagentUnit into FixedPoint2 and use it for damage calculations ( #5151 )
...
* Damage units
* sum ext method
2021-11-03 16:48:03 -07:00
Flipp Syder
c7c651e3de
Refactors TemperatureComponent and AtmosExposed to ECS ( #4927 )
...
Co-authored-by: Vera Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
2021-10-29 10:18:43 +02:00
ShadowCommander
e7f352d6c2
Fix barotrauma damage total failing when damageable doesn't have the value
2021-10-23 12:16:08 -07:00
ShadowCommander
6c1ba187e3
Add maximum to barotrauma damage ( #4989 )
2021-10-23 11:45:57 -07:00
Vera Aguilera Puerto
bfdd0e055b
Fixes bad Flammable ECS conversion logic
2021-10-21 23:07:42 +02:00
mirrorcult
ae1ce0b31c
Status effect refactor ( #4868 )
...
* Oops! All Changes In One Commit
* try desperately to fix prediction issues and fail
* oops
* test
* actually fixes prediction issues
* port jittering to status effect
* default merge behavior + alert cooldown stuff
* silly test issue
* zabloing
* address reviews
2021-10-15 23:45:04 +02:00
Vera Aguilera Puerto
6eee256b11
Refactors stunnable to be ECS. ( #4819 )
...
Also cleans up StandingStatesystem.
2021-10-10 12:47:26 +02:00
Vera Aguilera Puerto
ef45db6811
Remove atmos assert, fix GridRevalidate adding virtual space tiles to list of active tiles on grid.
2021-10-07 16:51:36 +02:00
Ygg01
4eac32bd32
Change Offset to take AtmosDirection instead of Direction ( #4778 )
2021-10-06 15:02:50 +02:00
Leon Friedrich
6cb58e608b
ECS verbs and update context menu ( #4594 )
...
* Functioning ECS verbs
Currently only ID card console works.
* Changed verb types and allow ID card insertions
* Verb GUI sorting and verb networking
* More networking, and shared components
* Clientside verbs work now.
* Verb enums changed to bitmask flags
* Verb Categories redo
* Fix range check
* GasTank Verb
* Remove unnecessary bodypart verb
* Buckle Verb
* buckle & unbuckle verbs
* Updated range checks
* Item cabinet verbs
* Add range user override
* construction verb
* Chemistry machine verbs
* Climb Verb
* Generalise pulled entity verbs
* ViewVariables Verb
* rejuvenate, delete, sentient, control verbs
* Outfit verb
* inrangeunoccluded and tubedirection verbs
* attach-to verbs
* remove unused verbs and move VV
* Rename DebugVerbSystem
* Ghost role and pointing verbs
* Remove global verbs
* Allow verbs to raise events
* Changing categories and simplifying debug verbs
* Add rotate and flip verbs
* fix rejuvenate test
* redo context menu
* new Add Gas debug verb
* Add Set Temperature debug verb
* Uncuff verb
* Disposal unit verbs
* Add pickup verb
* lock/unlock verb
* Remove verb type, add specific verb events
* rename verb messages -> events
* Context menu displays verbs by interaction type
* Updated context menu HandleMove
previously, checked if entities moved 1 tile from click location.
Now checks if entities moved out of view.
Now you can actually right-click interact with yourself while walking!
* Misc Verb menu GUI changes
* Fix non-human/ghost verbs
* Update types and categories
* Allow non-ghost/human to open context menu
* configuration verb
* tagger verb
* Morgue Verbs
* Medical Scanner Verbs
* Fix solution refactor merge issues
* Fix context menu in-view check
* Remove prepare GUI
* Redo verb restrictions
* Fix context menu UI
* Disposal Verbs
* Spill verb
* Light verb
* Hand Held light verb
* power cell verbs
* storage verbs
and adding names to insert/eject
* Pulling verb
* Close context menu on verb execution
* Strip verb
* AmmoBox verb
* fix pull verb
* gun barrel verbs
revolver verb
energy weapon verbs
Bolt action verb
* Magazine gun barrel verbs
* Add charger verbs
* PDA verbs
* Transfer amount verb
* Add reagent verb
* make alt-click use ECS verbs
* Delete old verb files
* Magboot verb
* finalising tweaks
* context menu visibility changes
* code cleanup
* Update AdminAddReagentUI.cs
* Remove HasFlag
* Consistent verb keys
* Remove Linq, add comment
* Fix in-inventory check
* Update GUI text alignment and padding
* Added close-menu option
* Changed some "interaction" verbs to "activation"
* Remove verb keys, use sorted sets
* fix master merge
* update some verb text
* Undo Changes
Remove some new verbs that can be added later
undid some .ftl bugfixes, can and should be done separately
* fix merge
* Undo file rename
* fix merge
* Misc Cleanup
* remove contraction
* Fix keybinding issue
* fix comment
* merge fix
* fix merge
* fix merge
* fix merge
* fix merge
* fix open-close verbs
* adjust uncuff verb
* fix merge
and undo the renaming of SharedPullableComponent to PullableComponent. I'm tired of all of those merge conflicts
2021-10-04 20:29:03 -07:00
Vera Aguilera Puerto
665928cfcf
Make GasTileOverlaySystem slightly more resistant against non-existing grid entities.
2021-10-02 10:53:11 +02:00
Vera Aguilera Puerto
0be5ff829b
Gets rid of all ComponentManager usages. ( #4707 )
2021-09-28 13:35:29 +02:00
Vera Aguilera Puerto
0767bd3777
Popup ECS Refactor ( #4692 )
2021-09-26 15:18:45 +02:00
Vera Aguilera Puerto
246fda53c5
Refactor Barotrauma to be ECS. ( #4674 )
...
- Refactor IPressureProtection to be two different ECS events.
2021-09-22 21:02:25 +10:00
Vera Aguilera Puerto
6cea9cb973
Refactor Flammable to be ECS. ( #4671 )
...
- Refactor IHotItem into IsHotEvent.
- Refactor IFireAct into TileFireEvent.
2021-09-22 11:05:33 +02:00
Vera Aguilera Puerto
cda67df317
Fix some warnings relating to fields being unused.
2021-09-20 11:22:59 +02:00
Vera Aguilera Puerto
68a78e94b7
Slight explosively depressurize cleanup.
2021-09-06 17:30:38 +02:00
Vera Aguilera Puerto
9f4ea1e5a9
Fix rare atmos crash when explosively depressurizing too many tiles.
2021-09-06 17:16:27 +02:00
Vera Aguilera Puerto
a8e7fb4977
Optimize atmos debug assert.
...
Seems I missed this one.
2021-09-06 16:55:05 +02:00
Vera Aguilera Puerto
ad5f7bb71b
Subscribe TransformComponent events by-ref ( #4478 )
2021-08-21 11:49:31 +02:00
metalgearsloth
d61ff89dfc
Fix showatmos
2021-08-17 14:09:59 +10:00
Vera Aguilera Puerto
13ceae872b
Fixes not taking pressure damage in space.
...
Fixes #4415
2021-08-04 09:48:49 +02:00
Vera Aguilera Puerto
2205fef06a
Document a few atmos classes.
2021-08-03 14:29:56 +02:00
Vera Aguilera Puerto
611340e454
Enables nullables for atmos internals
2021-08-02 17:03:13 +02:00
Vera Aguilera Puerto
009087863f
AtmosDevices can optionally process in space. ( #4405 )
...
Refactors some misc atmos things, too.
2021-08-02 21:59:41 +10:00
mirrorcult
af2e21c355
Refactor IDoorCheck into entity events ( #4366 )
...
* IDoorCheck refactored to events
# Conflicts:
# Content.Server/Atmos/TileAtmosphere.cs
# Content.Server/Doors/Components/AirlockComponent.cs
# Content.Server/Doors/Components/FirelockComponent.cs
# Content.Server/Doors/Components/ServerDoorComponent.cs
# Content.Server/Doors/IDoorCheck.cs
* namespaces
* Fix mapinit bug with refreshautoclose
* ok i guess these just didnt feel like staging today
2021-08-02 21:57:06 +10:00
Vera Aguilera Puerto
1033d8bbe5
Use EntitySystem dependencies in a bunch of systems.
2021-07-26 13:01:47 +02:00
Vera Aguilera Puerto
5d929485ed
Hotspot passes MapManager to GetTileRef.
2021-07-26 11:28:43 +02:00
Vera Aguilera Puerto
86cecd3b5e
Add CVar for disabling/enabling excited groups.
2021-07-26 11:16:34 +02:00
Vera Aguilera Puerto
7fa10bd17b
Remove atmos archiving.
2021-07-26 11:06:44 +02:00
Vera Aguilera Puerto
8066eb196b
Remove Hotspot Start method.
2021-07-25 15:03:07 +02:00
Vera Aguilera Puerto
93acc565f0
Makes Airtight ECS. ( #4351 )
...
* Makes Airtight ECS.
* Remove atmos holdovers while at it!
2021-07-25 17:04:58 +10:00
Vera Aguilera Puerto
d8fe13af04
Further optimize atmos by reusing specific arrays instead of using a shared arraypool
2021-07-24 16:33:04 +02:00
Vera Aguilera Puerto
4ade87c040
Add atmos grid impulses, disabled by default.
2021-07-23 17:27:16 +02:00
Vera Aguilera Puerto
da25266dd5
CVar for explosive depressurization tile ripping.
2021-07-23 13:45:56 +02:00
Vera Aguilera Puerto
07c478afb6
Optimize atmos by not invalidating hotspot tiles every time they react.
2021-07-23 11:10:06 +02:00
Vera Aguilera Puerto
4112847142
ECS Atmos Part 5: Moves all logic from GridAtmosphereComponent to AtmosphereSystem. ( #4331 )
2021-07-23 11:09:01 +02:00
metalgearsloth
e93692245e
Remove IStartCollide from flammable ( #4314 )
...
I ported some stuff to be ECS but didn't feel like porting the rest, sue me.
2021-07-21 12:32:00 +02:00
Vera Aguilera Puerto
fcafa8f439
ECS Atmos Part 4: Moves all atmos logic from TileAtmosphere to AtmosphereSystem. ( #4295 )
...
* Moves all atmos logic from TileAtmosphere to AtmosphereSystem.
* Atmos uses grid anchoring to check for firelocks instead of grid tile lookups.
* CVar for space wind sound
* CVar for explosive depressurization
2021-07-20 18:03:49 +02:00
Vera Aguilera Puerto
c8ba345cdc
ECS Atmos Part 3: Removes AtmosHelpers, add many methods to AtmosphereSystem. ( #4285 )
...
* ECS Atmos Part 3: Removes AtmosHelpers, add many methods to AtmosphereSystem
* Adds API for adding/removing active tiles.
* Adds API for FixVacuum.
* Adds API for UpdateAdjacent.
* Adds API for IsTileAirBlocked.
* Re-organize hotspot code
* Adds API for IsTileSpace.
* RemoveGasCommand uses AtmosphereSystem
* AddGasCommand uses AtmosphereSystem.
* SetTemperatureCommand uses AtmosphereSystem.
* Adds API for IsSimulatedGrid.
* GasLeak uses AtmosphereSystem.
* Makes Spark method in GasLeak ALSO use AtmosphereSystem.
* GasPassiveVentSystem uses AtmosphereSystem.
* GasMinerSystem uses AtmosphereSystem.
* GasOutletInjectorSystem uses AtmosphereSystem.
* GasVentPumpSystem uses AtmosphereSystem.
* GasDualPortVentPumpSystem uses AtmosphereSystem.
* GasVolumePumpSystem uses AtmosphereSystem.
* GasAnalyzerComponent uses AtmosphereSystem.
* Add API for GetAdjacentTileMixtures.
* GasVentScrubberSystem uses AtmosphereSystem.
* AirtightComponent uses AtmosphereSystem.
* GasLeaks's TryFindRandomTile uses AtmosphereSystem.
* Adds API for GetAdjacentTiles.
* FirelockComponent's IsHoldingFire uses AtmosphereSystem.
* Adds API for GetAllTileMixtures.
* DeleteGasCommand uses AtmosphereSystem.
* FixGridAtmos uses AtmosphereSystem.
* FillGasCommand uses AtmosphereSystem.
* SetAtmosTemperatureCommand uses AtmosphereSystem.
2021-07-19 12:07:37 +02:00
Visne
b7dc3c81ae
Remove redundant #nullable enable ( #4275 )
2021-07-16 17:37:09 -07: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
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
bc7b315b18
Replace IResettingEntitySystem with RoundRestartCleanupEvent. ( #4245 )
...
* Replace IResettingEntitySystem with RoundRestartCleanupEvent.
* oops
2021-06-29 23:56:07 +10: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
263c9ef974
ECS Atmos Part 2: Moves a lot of Gas Mixture methods to AtmosphereSystem. ( #4218 )
2021-06-23 11:35:30 +02:00
Vera Aguilera Puerto
3f28a4d784
ECS Atmos Part 1: Move GridAtmosphere updating and processing to AtmosphereSystem.Processing ( #4206 )
2021-06-22 10:28:15 +02:00
metalgearsloth
4dc871b2be
Add cvar thresholds to gas overlays ( #3835 )
...
* Add cvar thresholds to gas overlays
Rather than having 256 thresholds it can now be reduced to whatever you want
* Address review
* Fix namespace
2021-06-21 17:08:37 +10:00
Vera Aguilera Puerto
f7b89daa74
Move ComputerUIActivatorSystem to Computer namespace.
2021-06-20 11:42:37 +02:00
Acruid
15fb554c28
Engine Entity Anchoring Changes ( #4195 )
...
* Converted all SnapGridPositionChangedEvent subscriptions to AnchorStateChangedEvent.
* Fixes power tests with new anchored requirements.
* Moved AnchorableComponent into construction.
AnchorableComponent now uses Transform.Anchored.
* Fixed bug with nodes, power works again.
* Adds lifetime stages to Component.
* Update Engine to v0.4.70.
2021-06-19 19:41:26 -07: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