From 2beaae7734e0f4d61631d2435407c41b797c07a7 Mon Sep 17 00:00:00 2001 From: ZomgPonies Date: Wed, 6 May 2015 02:33:58 -0400 Subject: [PATCH] Added admin commands to make people superheros --- code/datums/datumvars.dm | 14 ++++++++++++++ code/modules/admin/admin.dm | 1 + code/modules/admin/topic.dm | 10 ++++++++++ code/modules/admin/verbs/debug.dm | 19 +++++++++++++++++++ 4 files changed, 44 insertions(+) diff --git a/code/datums/datumvars.dm b/code/datums/datumvars.dm index 1320ca0a855..32aa784dbc0 100644 --- a/code/datums/datumvars.dm +++ b/code/datums/datumvars.dm @@ -269,6 +269,7 @@ client body += "" body += "" body += "" + body += "" body += "" body += "" if(isobj(D)) @@ -764,6 +765,19 @@ client return holder.Topic(href, list("makeslime"=href_list["makeslime"])) + else if(href_list["makesuper"]) + if(!check_rights(R_SPAWN)) return + + var/mob/living/carbon/human/H = locate(href_list["makesuper"]) + if(!istype(H)) + usr << "This can only be done to instances of type /mob/living/carbon/human" + return + + if(alert("Confirm mob type change?",,"Transform","Cancel") != "Transform") return + if(!H) + usr << "Mob doesn't exist anymore" + return + else if(href_list["makeai"]) if(!check_rights(R_SPAWN)) return diff --git a/code/modules/admin/admin.dm b/code/modules/admin/admin.dm index 1ea81011406..42849785723 100644 --- a/code/modules/admin/admin.dm +++ b/code/modules/admin/admin.dm @@ -116,6 +116,7 @@ var/global/nologevent = 0 Make Robot | Make Alien | Make slime + Make Superhero "} //Simple Animals diff --git a/code/modules/admin/topic.dm b/code/modules/admin/topic.dm index ebc48a70d0c..c0331ef1997 100644 --- a/code/modules/admin/topic.dm +++ b/code/modules/admin/topic.dm @@ -1397,6 +1397,16 @@ usr.client.cmd_admin_slimeize(H) + else if(href_list["makeslime"]) + if(!check_rights(R_SPAWN)) return + + var/mob/living/carbon/human/H = locate(href_list["makesuper"]) + if(!istype(H)) + usr << "This can only be used on instances of type /mob/living/carbon/human" + return + + usr.client.cmd_admin_super(H) + else if(href_list["makerobot"]) if(!check_rights(R_SPAWN)) return diff --git a/code/modules/admin/verbs/debug.dm b/code/modules/admin/verbs/debug.dm index c88f518766d..10102dd836c 100644 --- a/code/modules/admin/verbs/debug.dm +++ b/code/modules/admin/verbs/debug.dm @@ -281,6 +281,25 @@ But you can call procs that are of type /mob/living/carbon/human/proc/ for that else alert("Invalid mob") +/client/proc/cmd_admin_super(var/mob/M in mob_list) + set category = "Event" + set name = "Make Superhero" + + if(!ticker) + alert("Wait until the game starts") + return + if(ishuman(M)) + var/type = input("Pick the Superhero","Superhero") as null|anything in all_superheros + var/datum/superheros/S = all_superheros[type] + if(S) + S.assign_genes(M) + S.assign_spells(M) + S.equip(M) + log_admin("[key_name(src)] has turned [M.key] into a Superhero.") + message_admins("\blue [key_name_admin(usr)] made [key_name(M)] into a Superhero.", 1) + else + alert("Invalid mob") + /* /client/proc/cmd_admin_monkeyize(var/mob/M in world) set category = "Event"