Commit Graph

308 Commits

Author SHA1 Message Date
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 407d4aed586a5143dc1dd0d31e7898f6df07a411)
2024-02-18 23:34:45 +01:00
Nemanja
c3f420815f Add events for TemperatureProtection and PressureProtection (#25165)
(cherry picked from commit 8ed32a1e42d768322ccb6dc6f5311bd58fd0dea3)
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 68ce53ae17985876d6d112b764b2144964a9f42e)
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 52808694e0a479c162930a0aae20e91b68bc67a4)
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 498ad2d5d714c73d9212bda9d3d89d53b2001e04)
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 a6ea8b210db079d30823e7b4d8faa32aefa17582)
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 3e3cb10a96993b711ea8aeb696f157f40c728e49)
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 c29896f505db28bf3dca9af9e6f0430dcf0f4629)
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 a6c9c36b688a1ba78ff4c12502e81661cf607b6c)
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 6bf699429818c15a72ea5bb073a98ca0559b59a7)
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 0ae3858b69b695697ea9300609460f8ddb70ebbf)
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 a3516e60e753d9b05982a00b4c9be6b737dec43f)
2024-01-26 21:35:47 +01:00
AJCM-git
6b7e8b4f5b UseDelay + ItemCooldown merge (#22502)
(cherry picked from commit 9c522c8b19f7a6f6b396c66342413572a22d7845)
2024-01-26 21:32:09 +01:00
Nemanja
150c8cd817 Buff heat and flame damage (#23238)
(cherry picked from commit cfb129c5a4fcdf996ab16defd35e24ed909ca663)
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 2fe1164a03c212095aa383461335b016f9d7fb47)
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 3f9102839579506e8bf71f5fbf48c92328104e58)
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 054321d2c2c17eb55a1640150131c61c29a3eb2b.

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
Kevin Zheng
1be963cfa5 Add method for real atmos tick rate (#19861)
Atmos takes a variable number of atmos sub-ticks to complete processing depending on the configuration options.
2023-09-09 10:48:34 -08:00
DrSmugleaf
c71f97e3a2 Refactor actions to be entities with components (#19900) 2023-09-08 18:16:05 -07:00