Add more DNA interactions (#21989)

* Add more DNA interactions

* remove unused import

* update based on feedback

* Add event for chemistrysystem.injector

* move event to shared; transfer dna to implanter

* doafter and interaction event fixes

* add BreakOnHandChange

* doh

* use events instead of updating component directly

* Add DataFields to ForensicScannerComponent fields

* Convert most events to system api call
This commit is contained in:
themias
2023-12-15 04:52:55 -05:00
committed by GitHub
parent 2455980090
commit 9cc4a50692
20 changed files with 291 additions and 26 deletions

View File

@@ -28,6 +28,7 @@ namespace Content.Server.Medical
[Dependency] private readonly SolutionContainerSystem _solutionContainer = default!;
[Dependency] private readonly StunSystem _stun = default!;
[Dependency] private readonly ThirstSystem _thirst = default!;
[Dependency] private readonly ForensicsSystem _forensics = default!;
/// <summary>
/// Make an entity vomit, if they have a stomach.
@@ -85,9 +86,7 @@ namespace Content.Server.Medical
if (_puddle.TrySpillAt(uid, solution, out var puddle, false))
{
var forensics = EnsureComp<ForensicsComponent>(puddle);
if (TryComp<DnaComponent>(uid, out var dna))
forensics.DNAs.Add(dna.DNA);
_forensics.TransferDna(puddle, uid, false);
}
// Force sound to play as spill doesn't work if solution is empty.