diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index 8bd4381b195..9d3f8127977 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -611,6 +611,24 @@ GLOBAL_VAR_INIT(nologevent, 0) feedback_add_details("admin_verb","R") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! world.Reboot("Initiated by [usr.client.holder.fakekey ? "Admin" : usr.key].", "end_error", "admin reboot - by [usr.key] [usr.client.holder.fakekey ? "(stealth)" : ""]", delay) +/datum/admins/proc/smoothend() + set category = "Server" + set name = "Annouce game over" + set desc = "Instantly ends round and brings up objectives like shadowlings or slings dying." + + if(!check_rights(R_SERVER)) + return + + if(alert(usr, "Are you sure you want to admin end the round and bring up objectives?", "End the game", "Yes", "No") != "Yes") + return + + message_admins("[key_name_admin(usr)] has admin ended the round.") + log_admin("[key_name(usr)] has admin ended the round") + SSticker.force_ending = 1 + to_chat(world, "The administrators have declared the round over and have ended the round!") + feedback_add_details("admin_verb","S") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! + feedback_set_details("round_end_result","Admin ended") + /datum/admins/proc/announce() set category = "Admin" set name = "Announce" diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index 70476905971..9b6e828ad2a 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -123,6 +123,7 @@ GLOBAL_LIST_INIT(admin_verbs_server, list( /client/proc/Set_Holiday, /datum/admins/proc/startnow, /datum/admins/proc/restart, + /datum/admins/proc/smoothend, /datum/admins/proc/delay, /datum/admins/proc/toggleaban, /datum/admins/proc/toggleenter, /*toggles whether people can join the current game*/