From 06c7d91b1969197e23258dbe9afccd9978ff3587 Mon Sep 17 00:00:00 2001
From: SkyratBot <59378654+SkyratBot@users.noreply.github.com>
Date: Mon, 22 Mar 2021 00:12:29 +0100
Subject: [PATCH] [MIRROR] Added the N.E.R.D. (Nanotrasen Emergency Response
Drone) team as an admin ERT. (#4307)
* Added the N.E.R.D. (Nanotrasen Emergency Response Drone) team as an admin ERT. (#57766)
Added the ability to call a Nanotrasen Emergency Response Drone Team in the Create Antagonist.
* Added the N.E.R.D. (Nanotrasen Emergency Response Drone) team as an admin ERT.
Co-authored-by: Cimika/Lessie/KathyRyals <65850818+KathyRyals@users.noreply.github.com>
---
code/modules/admin/topic.dm | 7 +++++
code/modules/admin/verbs/one_click_antag.dm | 33 +++++++++++++++++++--
2 files changed, 37 insertions(+), 3 deletions(-)
diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm
index 9ca4e441ca3..122426ce7d3 100644
--- a/code/modules/admin/topic.dm
+++ b/code/modules/admin/topic.dm
@@ -154,6 +154,13 @@
else
message_admins("[key_name_admin(usr)] tried to create a revenant. Unfortunately, there were no candidates available.")
log_admin("[key_name(usr)] failed to create a revenant.")
+ if("nerd")
+ if(src.makeNerd())
+ message_admins("[key_name(usr)] created a nanotrasen emergency response drone.")
+ log_admin("[key_name(usr)] created a nanotrasen emergency response drone.")
+ else
+ message_admins("[key_name_admin(usr)] tried to create a nanotrasen emergency response drone. Unfortunately, there were no candidates available.")
+ log_admin("[key_name(usr)] failed to create a nanotrasen emergency response drone.")
else if(href_list["forceevent"])
if(!check_rights(R_FUN))
diff --git a/code/modules/admin/verbs/one_click_antag.dm b/code/modules/admin/verbs/one_click_antag.dm
index f1fb6009f00..0fd8d98e0d9 100644
--- a/code/modules/admin/verbs/one_click_antag.dm
+++ b/code/modules/admin/verbs/one_click_antag.dm
@@ -12,7 +12,6 @@
/datum/admins/proc/one_click_antag()
-
var/dat = {"
Make Traitors
Make Changelings
@@ -25,6 +24,7 @@
Make CentCom Response Team (Requires Ghosts)
Make Abductor Team (Requires Ghosts)
Make Revenant (Requires Ghost)
+ Make N.E.R.D. (Requires Ghost)
"}
//SKYRAT EDIT ADDITION - MAKE ASSAULT TEAM
var/datum/browser/popup = new(usr, "oneclickantag", "Quick-Create Antagonist", 400, 400)
@@ -456,10 +456,37 @@
//Abductors
/datum/admins/proc/makeAbductorTeam()
new /datum/round_event/ghost_role/abductor
- return 1
+ return TRUE
/datum/admins/proc/makeRevenant()
new /datum/round_event/ghost_role/revenant(TRUE, TRUE)
- return 1
+ return TRUE
+
+/datum/admins/proc/makeNerd()
+ var/spawnpoint = pick(GLOB.blobstart)
+ var/list/mob/dead/observer/candidates
+ var/mob/dead/observer/chosen_candidate
+ var/mob/living/simple_animal/drone/nerd
+ var/teamsize
+
+ teamsize = input(usr, "How many drones?", "N.E.R.D. team size", 2) as num|null
+
+ if(teamsize <= 0)
+ return FALSE
+
+ candidates = pollGhostCandidates("Do you wish to be considered for a Nanotrasen emergency response drone?", "Drone")
+
+ if(length(candidates) == 0)
+ return FALSE
+
+ while(length(candidates) && teamsize)
+ chosen_candidate = pick(candidates)
+ candidates -= chosen_candidate
+ nerd = new /mob/living/simple_animal/drone(spawnpoint)
+ nerd.key = chosen_candidate.key
+ log_game("[key_name(nerd)] has been selected as a Nanotrasen emergency response drone")
+ teamsize--
+
+ return TRUE
#undef ERT_EXPERIENCED_LEADER_CHOOSE_TOP