diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm
index d57d20ff823..30936910d8c 100644
--- a/code/modules/admin/topic.dm
+++ b/code/modules/admin/topic.dm
@@ -343,13 +343,12 @@
if("2")
if(SSshuttle.emergency.mode >= SHUTTLE_DOCKED)
return
+ SSshuttle.emergency.cancel(byCC = TRUE)
switch(SSshuttle.emergency.mode)
if(SHUTTLE_CALL)
- SSshuttle.emergency.cancel()
log_admin("[key_name(usr)] sent the Emergency Shuttle back")
message_admins("[key_name_admin(usr)] sent the Emergency Shuttle back")
else
- SSshuttle.emergency.cancel()
log_admin("[key_name(usr)] called the Emergency Shuttle")
message_admins("[key_name_admin(usr)] called the Emergency Shuttle to the station")
diff --git a/code/modules/admin/verbs/randomverbs.dm b/code/modules/admin/verbs/randomverbs.dm
index 444213f9466..e22f03a8b23 100644
--- a/code/modules/admin/verbs/randomverbs.dm
+++ b/code/modules/admin/verbs/randomverbs.dm
@@ -868,11 +868,11 @@ Traitors and the like can also be revived with the previous role mostly intact.
else
var/keepStatus = alert("Maintain recall status on future shuttle calls?", "Maintain Status?", "Yes", "No") == "Yes" //Keeps or drops recallability
SSshuttle.emergency.canRecall = TRUE // must be true for cancel proc to work
- SSshuttle.emergency.cancel()
+ SSshuttle.emergency.cancel(byCC = TRUE)
if(keepStatus)
SSshuttle.emergency.canRecall = FALSE // restores original status
else
- SSshuttle.emergency.cancel()
+ SSshuttle.emergency.cancel(byCC = TRUE)
SSblackbox.record_feedback("tally", "admin_verb", 1, "Cancel Shuttle") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc!
log_admin("[key_name(usr)] admin-recalled the emergency shuttle.")
diff --git a/code/modules/shuttle/emergency.dm b/code/modules/shuttle/emergency.dm
index 715d130f01c..10a708a107c 100644
--- a/code/modules/shuttle/emergency.dm
+++ b/code/modules/shuttle/emergency.dm
@@ -274,7 +274,7 @@
new_sound = sound('sound/AI/cshuttle.ogg')
)
-/obj/docking_port/mobile/emergency/cancel(area/signalOrigin)
+/obj/docking_port/mobile/emergency/cancel(area/signalOrigin, byCC = FALSE)
if(!canRecall)
return
@@ -289,7 +289,7 @@
else
SSshuttle.emergencyLastCallLoc = null
GLOB.major_announcement.Announce(
- "The emergency shuttle has been recalled.[SSshuttle.emergencyLastCallLoc ? " Recall signal traced. Results can be viewed on any communications console." : "" ]",
+ "The emergency shuttle has been recalled[byCC ? " by Central Command." : SSshuttle.emergencyLastCallLoc ? ". Recall signal traced. Results can be viewed on any communications console." : "." ]",
new_title = "Priority Announcement",
new_sound = sound('sound/AI/eshuttle_recall.ogg')
)