Commit Graph

310 Commits

Author SHA1 Message Date
LordCarve f8ea31a192
Obsolete `Logger` cleanup for `EntitySystem`s part 2 (#26159)
* Kill the static InRangeUnOccluded

* Adjusted 4 more EntitySystems that were missed.

(cherry picked from commit 7d275a4b5e)
2024-03-17 15:11:33 +01:00
LordCarve 60f2c8376d
Obsolete `Logger` cleanup for `EntitySystem`s (#25941)
* Small obsolete Logger cleanup

* Fixed three EntitySystem logs that weren't doing it right.

(cherry picked from commit aafe815122)
2024-03-17 14:46:35 +01:00
LankLTE e7d8f5e080
Diona Nymphs & Splitting (#24630)
* Porting & implementation

* Fix two stupid errors

* Human not humans

* fix audio path

* Fix test fails & update cooldown

* Work on reviews & test fail

* Rework nymph organ system.

* Make the nymph organs nospawn.

* IsDeadIC

(cherry picked from commit 407d4aed58)
2024-02-18 23:34:45 +01:00
Nemanja c3f420815f
Add events for TemperatureProtection and PressureProtection (#25165)
(cherry picked from commit 8ed32a1e42)
2024-02-18 23:11:15 +01:00
Pieter-Jan Briers ccea85136b
Random spontaneous cleanup PR (#25131)
* Use new Subs.CVar helper

Removes manual config OnValueChanged calls, removes need to remember to manually unsubscribe.

This both reduces boilerplate and fixes many issues where subscriptions weren't removed on entity system shutdown.

* Fix a bunch of warnings

* More warning fixes

* Use new DateTime serializer to get rid of ISerializationHooks in changelog code.

* Get rid of some more ISerializationHooks for enums

* And a little more

* Apply suggestions from code review

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

---------

Co-authored-by: 0x6273 <0x40@keemail.me>
(cherry picked from commit 68ce53ae17)
2024-02-18 23:02:29 +01:00
metalgearsloth 2a839fcb94
Remove obsolete transform call (#24217)
* Remove obsolete transform call

Shrimple PR also fixed bad flatpack call that would break on non-standard tilesizes.

* Update calls

* weh

(cherry picked from commit 52808694e0)
2024-02-08 12:23:11 +01:00
Ed 25dbae8f9c
Lock Anomaly generator to research access (#24464)
* small patch

* fix

* remove garbage

* fix

* moved to shared events

* fix

* LocId

---------

Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
(cherry picked from commit 498ad2d5d7)
2024-02-08 12:11:07 +01:00
metalgearsloth 36e28ecfcf
Firestarter fixes (#24647)
* Firestarter fixes

- Actually networks the action.
- Namespace fixes.

* No networky for you

(cherry picked from commit a6ea8b210d)
2024-02-08 12:04:52 +01:00
Pieter-Jan Briers bc2f079029
Make some damage sources not cancel do afters (#24635)
- poison chemicals (HealthChange effect)
- being on fire
- guardians transferring damage to owner

(cherry picked from commit 3e3cb10a96)
2024-02-08 11:49:23 +01:00
Nemanja 48ad5ea014
fix radiators leaking heat into atmos blocked tiles (#24124)
* fix radiators leaking heat into atmos blocked tiles

* Fix the fix

Pointyhat to: emogarbage

* Remove unused imports

---------

Co-authored-by: Kevin Zheng <kevinz5000@gmail.com>
(cherry picked from commit c29896f505)
2024-01-26 22:55:53 +01:00
Pieter-Jan Briers 1c54b75da5
Dependency update / fixes / skrungle bungle (#23745)
* Give .props files 2-space indents.

* Move to Central Package Management.

Allows us to store NuGet package versions all in one place. Yay!

* Update NuGet packages and fix code for changes.

Notable:

Changes to ILVerify.
Npgsql doesn't need hacks for inet anymore, now we need hacks to make the old code work with this new reality.
NUnit's analyzers are already complaining and I didn't even update it to 4.x yet.
TerraFX changed to GetLastSystemError so error handling had to be changed.
Buncha APIs have more NRT annotations.

* Remove dotnet-eng NuGet package source.

I genuinely don't know what this was for, and Central Package Management starts throwing warnings about it, so YEET.

* Remove Robust.Physics project.

Never used.

* Remove erroneous NVorbis reference.

Should be VorbisPizza and otherwise wasn't used.

* Sandbox fixes

* Remove unused unit test package references.

Castle.Core and NUnit.ConsoleRunner.

* Update NUnit to 4.0.1

This requires replacing all the old assertion methods because they removed them 🥲

* Oh so that's what dotnet-eng was used for. Yeah ok that makes sense.

* Add Robust.Analyzers.Test

* Update submodule

* commit to re-run CI

(cherry picked from commit a6c9c36b68)
2024-01-26 22:33:46 +01:00
Arendian 0bb967bcfd
Incendiary projectiles and lava firestack reduction (#23479)
* Firestack reduction and FireStackOnHit added

* Slight lava tweak

* Remove component and tweaked incendiary pellets

* Incendiary grenade tweak

* Now ignites on projectile fixture or ignition fixture + incendiary grenade tweak

* flare shells now  ignite entities again

* Comment

* undo flare gun ignite

(cherry picked from commit 6bf6994298)
2024-01-26 22:11:45 +01:00
Kara 03b3e36d43
Examine prediction (#23565)
* Initial prediction

* new group handling

* groups for all examines that use multiple rn

* compile

* why was it doing this??

* handle newlines with sorting properly

(cherry picked from commit 0ae3858b69)
2024-01-26 21:48:02 +01:00
metalgearsloth 5fd454608f
Small adjustment for elookup api (#22447)
* Small adjustment for elookup api

* fix

(cherry picked from commit a3516e60e7)
2024-01-26 21:35:47 +01:00
AJCM-git 6b7e8b4f5b
UseDelay + ItemCooldown merge (#22502)
(cherry picked from commit 9c522c8b19)
2024-01-26 21:32:09 +01:00
Nemanja 150c8cd817
Buff heat and flame damage (#23238)
(cherry picked from commit cfb129c5a4)
2024-01-22 21:07:51 +01:00
qwerltaz 2028184ee2
flammable entities hotfix (#23113)
* flammable fix

* move air check and ignition to if statement

(cherry picked from commit 2fe1164a03)
2024-01-22 18:57:52 +01:00
qwerltaz cd5c92d818
Fix flammables air ignition (#23063)
* Fix welder ignition

* fix mobs on fire hotspot expose frequency

* fix shotgun pellets ignition

* ensure ignitionComp on flammable init

* \n

* Revert "ensure ignitionComp on flammable init"

This reverts commit 6915dcdc

(cherry picked from commit 3f91028395)
2024-01-22 18:45:42 +01:00
Debug 6afde59998
Hopefully fix atmos issues (#656)
* Check for divide by near zero (#22876)

* Clamp after AdjustMoles() (#22907)

Clamping is needed because x - x can be negative with floating point
numbers. If we don't clamp here, the caller always has to call
GetMoles(), clamp, then SetMoles(), which makes this function not very
useful.

* Add maximum atmos temperature limit (#22882)

* Add Tmax

* Increase Tmax

* Revert "Add YAML gas reactions (#22803)" (#22939)

This reverts commit 054321d2c2.

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

---------

Co-authored-by: Kevin Zheng <kevinz5000@gmail.com>
Co-authored-by: Kara <lunarautomaton6@gmail.com>
2024-01-07 22:10:35 +00:00
Kevin Zheng 67d3f2b94d Add YAML gas reactions (#22803)
* Add YAML gas reactions

* Convert more reactions

* Use enum names

* Convert more names

* Add migration for MiasmaCanister

* Prevent reactants from going negative

* Fix energy conservation, lift energy calculation

* Fix comment

* Comment

* Add rate multiplier
2023-12-22 23:25:34 +01:00
Kara 7decaa29e7 Convert atmos device events to ref events (#22843) 2023-12-22 23:25:05 +01:00
qwerltaz 8e25e7a1f4 Improve gas analyzer interface (#22779) 2023-12-22 23:04:49 +01:00
Leon Friedrich c51891c65f Fix index out of range exception in atmosphere system (#22770) 2023-12-22 23:04:49 +01:00
Leon Friedrich 6cefcb9930 Stop AtmosphereSystem from logging errors if an atmosphere gets deleted. (#22761)
Stop AtmosphereSystem from logging errors if a atmosphere gets deleted.
2023-12-22 23:04:47 +01:00
Leon Friedrich 05ed1723fa Rebalance fireaxe (#22731)
* Rebalance Fireaxe

* Nerf it a bit
2023-12-22 22:59:07 +01:00
Leon Friedrich e1edf78308 Add more centcomm spawning logs (#22726) 2023-12-22 22:57:03 +01:00
Leon Friedrich 23b09d6b33 Add atmos error log (#22696) 2023-12-22 22:55:22 +01:00
Leon Friedrich d0ea0a8b31 Improve atmos debug overlay (#22520) 2023-12-16 20:31:51 +01:00
Leon Friedrich b065a0a817 Atmos scaling cvar changes (#22501) 2023-12-16 20:31:51 +01:00
tgrkzus f2258e2611 tanks only produce noise with sufficient valve pressure (#22401) 2023-12-16 20:30:32 +01:00
Kevin Zheng a85bad56bc Fix heat capacity scaling (#22464)
* Correctly apply HeatScale

* Apply HeatScale on InitializeGases()

* Re-add conservative heat scaling and speedup
2023-12-16 20:19:56 +01:00
Kevin Zheng 548b6f4368 Split up atmos speedup from heat scaling (#22372) 2023-12-16 19:58:19 +01:00
Kevin Zheng b4802757c2 Add atmos time compression (#21954)
Add atmos.speedup which is effectively a atmos-only time compression
CVar. This adjusts heat capacities and transfer rates to effectively
globally speed up the time constants of atmos.

This allows faster response to heating/cooling changes and faster
cleanups (by buffing scrubbers, pumps, and everything else) that is
tunable through one global time compression CVar.

It also achieves this without any thermodynamic unsoundness.
2023-12-16 19:56:01 +01:00
Vyacheslav Kovalevsky e4ec612f62 Add gas tanks throw damage (#20035)
Co-authored-by: metalgearsloth <comedian_vs_clown@hotmail.com>
2023-12-16 19:13:50 +01:00
metalgearsloth 122d6f01a7 Update content to new ParallelManager (#21813) 2023-12-02 20:27:37 +01:00
Leon Friedrich 99f9583a3e Adds a new `AtmosphereSystem.GetTileMixture()` override (#21804) 2023-12-02 20:26:02 +01:00
metalgearsloth b1ee2d48ff Unrevert audio (#21330)
Co-authored-by: Pieter-Jan Briers <pieterjan.briers@gmail.com>
2023-12-02 20:16:36 +01:00
Leon Friedrich 945a00e385 Re-use atmos queues (#21803) 2023-12-02 18:59:48 +01:00
Leon Friedrich 82aa1d6a0f Flammable system bug fixes. (#21594) 2023-11-19 22:07:43 +01:00
deltanedas 21923cb2e6 mech nitrogen filtering 2 (#19868)
* target oxygen logic

* filter out nitrogen when low on oxygen

* vvrw and datafield for everything

* :trollface:

* bruh does work

* tagless chicken

* move into atmos, make it not depend on mech

* update mech prototype

---------

Co-authored-by: deltanedas <@deltanedas:kde.org>
2023-11-12 20:45:18 +01:00
Ed 6995cd257f Candles (#21087)
Co-authored-by: faint <46868845+ficcialfaint@users.noreply.github.com>
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
Co-authored-by: ElectroJr <leonsfriedrich@gmail.com>
2023-11-12 20:35:48 +01:00
themias 58eb6420dd Fix negative tank pressure (#21401) 2023-11-12 20:31:38 +01:00
Leon Friedrich 1465c02a77 Move ActorComponent to shared (#21293) 2023-10-31 19:12:44 +01:00
Leon Friedrich e66c0b5035 Un-revert IPlayerManager refactor (#21244) 2023-10-31 19:00:44 +01:00
metalgearsloth 4cf7f4f1c9 Predict tile-prying (#21167) 2023-10-23 23:54:01 +02:00
DrSmugleaf 9cc8a7fc81 Remove 700 usages of Component.Owner (#21100) 2023-10-20 15:31:13 +02:00
Kara add503c97c Kill `SharedEntityExtensions` and all popup extensions (#20909)
Co-authored-by: metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
2023-10-20 15:29:43 +02:00
Leon Friedrich ff872bec6a Remove SpreaderNodeGroup (#20230)
* Remove SpreaderNodeGroup

* Fix airtight updates

* more smoke stuff

* more smoke fixes

* wtf is smoke code

* Fix merge

* Fix divide by zero
2023-10-08 19:52:10 +02:00
Kevin Zheng 80b92c33e5 Make slow spacing variables CCVars (#19862) 2023-09-27 21:59:12 +02:00
metalgearsloth c9648da984 Content update for NetEntities (#18935) 2023-09-27 21:59:12 +02:00