Add hostage ops (Nuke ops alternative objective) (#2545)

* first commit

* Some fixes

* final fixes

* Partly working

* More fixes + you can now win

* More fixes

* Forget

* Final fixes

* Update the number of hostages to 4

* Add feedback popups

* Use mind rolls like a cool person

* bruh

* NOW I'm mad

* Bruh

* :trollface:

Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>

* :trollface:

Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>

* Bruh I forget

---------

Signed-off-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
Co-authored-by: deltanedas <@deltanedas:kde.org>
Co-authored-by: deltanedas <39013340+deltanedas@users.noreply.github.com>
This commit is contained in:
beck-thompson
2025-01-25 01:29:41 +00:00
committed by GitHub
co-authored by deltanedas deltanedas
parent 2324562671
commit 13ccf597c2
29 changed files with 763 additions and 6 deletions
@@ -1,4 +1,5 @@
using System.Diagnostics.CodeAnalysis;
using Content.Server._DV.Antag; // DeltaV
using Content.Server.Chat.Systems;
using Content.Server.Fax;
using Content.Shared.Fax.Components;
@@ -35,6 +36,16 @@ namespace Content.Server.Nuke
if (!Resolve(uid, ref component))
return;
// DeltaV - Not the best way of doing this
var evnt = new GetNukeCodePaperWriting();
RaiseLocalEvent(ref evnt);
if (evnt.ToWrite != null)
{
if (TryComp<PaperComponent>(uid, out var deltavpaperComp))
_paper.SetContent((uid, deltavpaperComp), evnt.ToWrite);
return;
}
// DeltaV - End
if (TryGetRelativeNukeCode(uid, out var paperContent, station, onlyCurrentStation: component.AllNukesAvailable))
{
if (TryComp<PaperComponent>(uid, out var paperComp))