From 1a1bf4a718ad7d56f3d6987f5108768b0cb0760b Mon Sep 17 00:00:00 2001 From: PsiOmega Date: Wed, 4 Feb 2015 09:48:30 +0100 Subject: [PATCH] Silicons can now be easily renamed. Moves the AI SetName proc down silicon level. --- code/modules/admin/admin_verbs.dm | 14 +++++++------- code/modules/mob/living/silicon/ai/ai.dm | 5 ++--- .../mob/living/silicon/robot/drone/drone.dm | 5 +++++ code/modules/mob/living/silicon/robot/robot.dm | 4 ++++ code/modules/mob/living/silicon/silicon.dm | 4 ++++ 5 files changed, 22 insertions(+), 10 deletions(-) diff --git a/code/modules/admin/admin_verbs.dm b/code/modules/admin/admin_verbs.dm index 73ab57cde8b..02ec9e9c5c5 100644 --- a/code/modules/admin/admin_verbs.dm +++ b/code/modules/admin/admin_verbs.dm @@ -46,7 +46,7 @@ var/list/admin_verbs_admin = list( /client/proc/cmd_admin_create_centcom_report, /client/proc/check_words, /*displays cult-words*/ /client/proc/check_ai_laws, /*shows AI and borg laws*/ - /client/proc/rename_ai, /*properly renames the AI*/ + /client/proc/rename_silicon, /*properly renames silicons*/ /client/proc/check_antagonists, /client/proc/admin_memo, /*admin memo system. show/delete/write. +SERVER needed to delete admin memos of others*/ /client/proc/dsay, /*talk in deadchat using our ckey/fakekey*/ @@ -693,15 +693,15 @@ var/list/admin_verbs_mentor = list( if(holder) src.holder.output_ai_laws() -/client/proc/rename_ai(mob/living/silicon/ai/AI in world) - set name = "Rename AI" +/client/proc/rename_silicon(mob/living/silicon/S in world) + set name = "Rename Silicon" set category = "Admin" if(holder) - var/new_name = trim_strip_input(src, "Enter new AI name. Leave blank or as is to cancel.", "Enter new AI Name", AI.name) - if(new_name && new_name != AI.name) - admin_log_and_message_admins("has renamed the AI '[AI.name]' to '[new_name]'") - AI.SetName(new_name) + var/new_name = trim_strip_input(src, "Enter new name. Leave blank or as is to cancel.", "Enter new silicon name", S.real_name) + if(new_name && new_name != S.real_name) + admin_log_and_message_admins("has renamed the silicon '[S.real_name]' to '[new_name]'") + S.SetName(new_name) feedback_add_details("admin_verb","RAI") //If you are copy-pasting this, ensure the 2nd parameter is unique to the new proc! diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm index c25e833c08c..6963e4c7259 100644 --- a/code/modules/mob/living/silicon/ai/ai.dm +++ b/code/modules/mob/living/silicon/ai/ai.dm @@ -211,9 +211,8 @@ var/list/ai_verbs_default = list( else stat(null, text("Systems nonfunctional")) -/mob/living/silicon/ai/proc/SetName(pickedName as text) - real_name = pickedName - name = pickedName +/mob/living/silicon/ai/SetName(pickedName as text) + ..() announcement.announcer = pickedName if(eyeobj) eyeobj.name = "[pickedName] (AI Eye)" diff --git a/code/modules/mob/living/silicon/robot/drone/drone.dm b/code/modules/mob/living/silicon/robot/drone/drone.dm index 7443bd7464d..bd89b867eec 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone.dm @@ -77,6 +77,11 @@ playsound(src.loc, 'sound/machines/twobeep.ogg', 50, 0) //Redefining some robot procs... +/mob/living/silicon/robot/drone/SetName(pickedName as text) + // Would prefer to call the grandparent proc but this isn't possible, so.. + real_name = pickedName + name = real_name + /mob/living/silicon/robot/drone/updatename() real_name = "maintenance drone ([rand(100,999)])" name = real_name diff --git a/code/modules/mob/living/silicon/robot/robot.dm b/code/modules/mob/living/silicon/robot/robot.dm index b72e822e57a..d6b35441a5c 100644 --- a/code/modules/mob/living/silicon/robot/robot.dm +++ b/code/modules/mob/living/silicon/robot/robot.dm @@ -184,6 +184,10 @@ var/list/robot_verbs_default = list( playsound(loc, 'sound/mecha/nominalsyndi.ogg', 75, 0) +/mob/living/silicon/robot/SetName(pickedName as text) + custom_name = pickedName + updatename() + /mob/living/silicon/robot/proc/sync() if(lawupdate && connected_ai) lawsync() diff --git a/code/modules/mob/living/silicon/silicon.dm b/code/modules/mob/living/silicon/silicon.dm index 4917c222e40..bda7d984e2f 100644 --- a/code/modules/mob/living/silicon/silicon.dm +++ b/code/modules/mob/living/silicon/silicon.dm @@ -30,6 +30,10 @@ ..() add_language("Galactic Common") +/mob/living/silicon/proc/SetName(pickedName as text) + real_name = pickedName + name = real_name + /mob/living/silicon/proc/show_laws() return