diff --git a/Content.Server/Communications/CommunicationsConsoleSystem.cs b/Content.Server/Communications/CommunicationsConsoleSystem.cs index 0fcac27c19..0cdcb3a47f 100644 --- a/Content.Server/Communications/CommunicationsConsoleSystem.cs +++ b/Content.Server/Communications/CommunicationsConsoleSystem.cs @@ -205,6 +205,10 @@ private bool CanCallOrRecall(CommunicationsConsoleComponent comp) || !comp.CanShuttle) return false; + // Calling shuttle checks + if (_roundEndSystem.ExpectedCountdownEnd is null) + return comp.CanShuttle; + // Recalling shuttle checks var recallThreshold = _cfg.GetCVar(CCVars.EmergencyRecallTurningPoint); diff --git a/Content.Server/Dragon/DragonRiftSystem.cs b/Content.Server/Dragon/DragonRiftSystem.cs index 776aa841d8..c0a81d0d24 100644 --- a/Content.Server/Dragon/DragonRiftSystem.cs +++ b/Content.Server/Dragon/DragonRiftSystem.cs @@ -72,9 +72,8 @@ public override void Update(float frameTime) comp.State = DragonRiftState.AlmostFinished; Dirty(comp); - var location = xform.LocalPosition; _announcer.SendAnnouncement(_announcer.GetAnnouncementId("CarpRift"), Filter.Broadcast(), - "carp-rift-warning", colorOverride: Color.Red, localeArgs: ("location", location)); + "carp-rift-warning", colorOverride: Color.Red, localeArgs: ("location", FormattedMessage.RemoveMarkupPermissive(_navMap.GetNearestBeaconString((uid, xform))))); _navMap.SetBeaconEnabled(uid, true); } diff --git a/Content.Server/Nuke/NukeSystem.cs b/Content.Server/Nuke/NukeSystem.cs index 2f62f9d674..9cd24b9af6 100644 --- a/Content.Server/Nuke/NukeSystem.cs +++ b/Content.Server/Nuke/NukeSystem.cs @@ -452,11 +452,6 @@ public void ArmBomb(EntityUid uid, NukeComponent? component = null) if (stationUid != null) _alertLevel.SetLevel(stationUid.Value, component.AlertLevelOnActivate, true, true, true, true); - var pos = nukeXform.MapPosition; - var x = (int) pos.X; - var y = (int) pos.Y; - var posText = $"({x}, {y})"; - // We are collapsing the randomness here, otherwise we would get separate random song picks for checking duration and when actually playing the song afterwards _selectedNukeSong = _audio.GetSound(component.ArmMusic); @@ -467,7 +462,7 @@ public void ArmBomb(EntityUid uid, NukeComponent? component = null) Color.Red, stationUid ?? uid, null, - ("time", (int) component.RemainingTime), ("position", posText) + ("time", (int) component.RemainingTime), ("position", FormattedMessage.RemoveMarkupPermissive(_navMap.GetNearestBeaconString((uid, nukeXform)))) ); _sound.PlayGlobalOnStation(uid, _audio.GetSound(component.ArmSound)); diff --git a/Content.Shared/Interaction/SharedInteractionSystem.cs b/Content.Shared/Interaction/SharedInteractionSystem.cs index 940d8ffbb0..4c22bcb14e 100644 --- a/Content.Shared/Interaction/SharedInteractionSystem.cs +++ b/Content.Shared/Interaction/SharedInteractionSystem.cs @@ -159,7 +159,7 @@ private void OnBoundInterfaceInteractAttempt(BoundUserInterfaceMessageAttempt ev if (uiComp == null) return; - if (uiComp.SingleUser && uiComp.CurrentSingleUser != ev.Actor) + if (uiComp.SingleUser && uiComp.CurrentSingleUser != null && uiComp.CurrentSingleUser != ev.Actor) { ev.Cancel(); return; diff --git a/Resources/Changelog/Changelog.yml b/Resources/Changelog/Changelog.yml index 789a4c1af2..bda90c06d4 100644 --- a/Resources/Changelog/Changelog.yml +++ b/Resources/Changelog/Changelog.yml @@ -7833,3 +7833,14 @@ Entries: id: 6512 time: '2024-11-08T19:33:53.0000000+00:00' url: https://github.com/Simple-Station/Einstein-Engines/pull/1187 +- author: VMSolidus + changes: + - type: Add + message: >- + Added Bloodstains, Body Dragging Marks, and Bloody Footprints to the + game. Characters that walk through puddles of blood will now leave + behind bloody footprints. Dragging a corpse leaves a trail of blood + wherever the corpse was moved. + id: 6513 + time: '2024-11-09T02:05:47.0000000+00:00' + url: https://github.com/Simple-Station/Einstein-Engines/pull/1190