diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm
index d866f3186fe..bbda5d2a03e 100644
--- a/code/__HELPERS/unsorted.dm
+++ b/code/__HELPERS/unsorted.dm
@@ -362,44 +362,44 @@ Turf and target are seperate in case you want to teleport some distance from a t
//Generalised helper proc for letting mobs rename themselves. Used to be clname() and ainame()
-//Last modified by Carn
+
/mob/proc/rename_self(var/role, var/allow_numbers=0)
- spawn(0)
- var/oldname = real_name
+ var/oldname = real_name
+ var/newname
+ var/loop = 1
+ var/safety = 0
- var/time_passed = world.time
- var/newname
+ while(loop && safety < 5)
+ if(client && client.prefs.custom_names[role] && !safety)
+ newname = client.prefs.custom_names[role]
+ else
+ switch(role)
+ if("clown")
+ newname = pick(clown_names)
+ if("mime")
+ newname = pick(mime_names)
+ if("ai")
+ newname = pick(ai_names)
+ else
+ return
- for(var/i=1,i<=3,i++) //we get 3 attempts to pick a suitable name.
- newname = input(src,"You are a [role]. Would you like to change your name to something else?", "Name change",oldname) as text
- if((world.time-time_passed)>300)
- return //took too long
- newname = reject_bad_name(newname,allow_numbers) //returns null if the name doesn't meet some basic requirements. Tidies up a few other things like bad-characters.
-
- for(var/mob/living/M in player_list)
- if(M == src)
- continue
- if(!newname || M.real_name == newname)
- newname = null
- break
- if(newname)
- break //That's a suitable name!
- src << "Sorry, that [role]-name wasn't appropriate, please try another. It's possibly too long/short, has bad characters or is already taken."
-
- if(!newname) //we'll stick with the oldname then
- return
-
- if(cmptext("ai",role))
- if(isAI(src))
- oldname = null//don't bother with the records update crap
-
- if(cmptext("cyborg",role))
- if(isrobot(src))
- var/mob/living/silicon/robot/A = src
- A.custom_name = newname
+ for(var/mob/living/M in player_list)
+ if(M == src)
+ continue
+ if(!newname || M.real_name == newname)
+ newname = null
+ loop++ // name is already taken so we roll again
+ break
+ loop--
+ safety++
+ if(isAI(src))
+ oldname = null//don't bother with the records update crap
+ if(newname)
fully_replace_character_name(oldname,newname)
-
+ if(isrobot(src))
+ var/mob/living/silicon/robot/A = src
+ A.custom_name = newname
//Picks a string of symbols to display as the law number for hacked or ion laws
diff --git a/code/_globalvars/lists/names.dm b/code/_globalvars/lists/names.dm
index ab101d76c6e..edaa74eab14 100644
--- a/code/_globalvars/lists/names.dm
+++ b/code/_globalvars/lists/names.dm
@@ -8,6 +8,7 @@ var/list/first_names_male = file2list("config/names/first_male.txt")
var/list/first_names_female = file2list("config/names/first_female.txt")
var/list/last_names = file2list("config/names/last.txt")
var/list/clown_names = file2list("config/names/clown.txt")
+var/list/mime_names = file2list("config/names/mime.txt")
var/list/verbs = file2list("config/names/verbs.txt")
diff --git a/code/game/jobs/job/civilian_chaplain.dm b/code/game/jobs/job/civilian_chaplain.dm
index 26225a71971..53d8be8e8ad 100644
--- a/code/game/jobs/job/civilian_chaplain.dm
+++ b/code/game/jobs/job/civilian_chaplain.dm
@@ -18,131 +18,50 @@ Chaplain
access = list(access_morgue, access_chapel_office, access_crematorium)
minimal_access = list(access_morgue, access_chapel_office, access_crematorium)
- //Pretty bible names
- var/global/list/biblenames = list("Bible", "Quran", "Scrapbook", "Burning Bible", "Clown Bible", "Banana Bible", "Creeper Bible", "White Bible", "Holy Light", "The God Delusion", "Tome", "The King in Yellow", "Ithaqua", "Scientology", "Melted Bible", "Necronomicon")
-
- //Bible iconstates
- var/global/list/biblestates = list("bible", "koran", "scrapbook", "burning", "honk1", "honk2", "creeper", "white", "holylight", "atheist", "tome", "kingyellow", "ithaqua", "scientology", "melted", "necronomicon")
-
- //Bible itemstates
- var/global/list/bibleitemstates = list("bible", "koran", "scrapbook", "bible", "bible", "bible", "syringe_kit", "syringe_kit", "syringe_kit", "syringe_kit", "syringe_kit", "kingyellow", "ithaqua", "scientology", "melted", "necronomicon")
-
-/datum/job/chaplain/proc/setupbiblespecifics(var/obj/item/weapon/storage/book/bible/B, var/mob/living/carbon/human/H)
- switch(B.icon_state)
- if("honk1","honk2")
- new /obj/item/weapon/grown/bananapeel(B)
- new /obj/item/weapon/grown/bananapeel(B)
-
- if(B.icon_state == "honk1")
- H.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/clown_hat(H), slot_wear_mask)
-
- if("bible")
- for(var/area/chapel/main/A in world)
- for(var/turf/T in A.contents)
- if(T.icon_state == "carpetsymbol")
- T.dir = 2
- if("koran")
- for(var/area/chapel/main/A in world)
- for(var/turf/T in A.contents)
- if(T.icon_state == "carpetsymbol")
- T.dir = 4
- if("scientology")
- for(var/area/chapel/main/A in world)
- for(var/turf/T in A.contents)
- if(T.icon_state == "carpetsymbol")
- T.dir = 8
- if("athiest")
- for(var/area/chapel/main/A in world)
- for(var/turf/T in A.contents)
- if(T.icon_state == "carpetsymbol")
- T.dir = 10
-
-/datum/job/chaplain/Topic(href, href_list)
- if(href_list["seticon"])
- var/iconi = text2num(href_list["seticon"])
-
- var/biblename = biblenames[iconi]
- var/obj/item/weapon/storage/book/bible/B = locate(href_list["bible"])
-
- B.icon_state = biblestates[iconi]
- B.item_state = bibleitemstates[iconi]
-
- //Set biblespecific chapels
- setupbiblespecifics(B, usr)
-
- usr.put_in_hands(B) // Update inhand icon
-
- if(ticker)
- ticker.Bible_icon_state = B.icon_state
- ticker.Bible_item_state = B.item_state
- ticker.Bible_name = B.name
- feedback_set_details("religion_book","[biblename]")
-
- usr << browse(null, "window=editicon") // Close window
-
/datum/job/chaplain/equip_items(var/mob/living/carbon/human/H)
H.equip_to_slot_or_del(new /obj/item/clothing/under/rank/chaplain(H), slot_w_uniform)
H.equip_to_slot_or_del(new /obj/item/clothing/shoes/sneakers/black(H), slot_shoes)
var/obj/item/weapon/storage/book/bible/B = new /obj/item/weapon/storage/book/bible/booze(H)
- spawn(0)
- var/religion_name = "Christianity"
- var/new_religion = copytext(sanitize(input(H, "You are the Chaplain. Would you like to change your religion? Default is Christianity, in SPACE.", "Name change", religion_name)),1,MAX_NAME_LEN)
+ var/new_religion = "Christianity"
+ if(H.client && H.client.prefs.custom_names["religion"])
+ new_religion = H.client.prefs.custom_names["religion"]
- if (!new_religion)
- new_religion = religion_name
+ switch(lowertext(new_religion))
+ if("christianity")
+ B.name = pick("The Holy Bible","The Dead Sea Scrolls")
+ if("satanism")
+ B.name = "The Unholy Bible"
+ if("cthulu")
+ B.name = "The Necronomicon"
+ if("islam")
+ B.name = "Quran"
+ if("scientology")
+ B.name = pick("The Biography of L. Ron Hubbard","Dianetics")
+ if("chaos")
+ B.name = "The Book of Lorgar"
+ if("imperium")
+ B.name = "Uplifting Primer"
+ if("toolboxia")
+ B.name = "Toolbox Manifesto"
+ if("homosexuality")
+ B.name = "Guys Gone Wild"
+ if("lol", "wtf", "gay", "penis", "ass", "poo", "badmin", "shitmin", "deadmin", "cock", "cocks")
+ B.name = pick("Woodys Got Wood: The Aftermath", "War of the Cocks", "Sweet Bro and Hella Jef: Expanded Edition")
+ H.setBrainLoss(100) // starts off retarded as fuck
+ if("science")
+ B.name = pick("Principle of Relativity", "Quantum Enigma: Physics Encounters Consciousness", "Programming the Universe", "Quantum Physics and Theology", "String Theory for Dummies", "How To: Build Your Own Warp Drive", "The Mysteries of Bluespace", "Playing God: Collector's Edition")
+ else
+ B.name = "The Holy Book of [new_religion]"
+ feedback_set_details("religion_name","[new_religion]")
+ ticker.Bible_name = B.name
- switch(lowertext(new_religion))
- if("christianity")
- B.name = pick("The Holy Bible","The Dead Sea Scrolls")
- if("satanism")
- B.name = "The Unholy Bible"
- if("cthulu")
- B.name = "The Necronomicon"
- if("islam")
- B.name = "Quran"
- if("scientology")
- B.name = pick("The Biography of L. Ron Hubbard","Dianetics")
- if("chaos")
- B.name = "The Book of Lorgar"
- if("imperium")
- B.name = "Uplifting Primer"
- if("toolboxia")
- B.name = "Toolbox Manifesto"
- if("homosexuality")
- B.name = "Guys Gone Wild"
- if("lol", "wtf", "gay", "penis", "ass", "poo", "badmin", "shitmin", "deadmin", "cock", "cocks")
- B.name = pick("Woodys Got Wood: The Aftermath", "War of the Cocks", "Sweet Bro and Hella Jef: Expanded Edition")
- H.setBrainLoss(100) // starts off retarded as fuck
- if("science")
- B.name = pick("Principle of Relativity", "Quantum Enigma: Physics Encounters Consciousness", "Programming the Universe", "Quantum Physics and Theology", "String Theory for Dummies", "How To: Build Your Own Warp Drive", "The Mysteries of Bluespace", "Playing God: Collector's Edition")
- else
- B.name = "The Holy Book of [new_religion]"
- feedback_set_details("religion_name","[new_religion]")
+ var/new_deity = "Space Jesus"
+ if(H.client && H.client.prefs.custom_names["deity"])
+ new_deity = H.client.prefs.custom_names["deity"]
+ B.deity_name = new_deity
- spawn(1)
- var/deity_name = "Space Jesus"
- var/new_deity = copytext(sanitize(input(H, "Would you like to change your deity? Default is Space Jesus.", "Name change", deity_name)),1,MAX_NAME_LEN)
-
- if ((length(new_deity) == 0) || (new_deity == "Space Jesus") )
- new_deity = deity_name
- B.deity_name = new_deity
-
- if(ticker)
- ticker.Bible_deity_name = B.deity_name
- feedback_set_details("religion_deity","[new_deity]")
-
- //Open bible selection
- var/dat = "
Pick Bible StylePick a bible style
"
-
- var/i
- for(i = 1, i < biblestates.len, i++)
- var/icon/bibleicon = icon('icons/obj/storage.dmi', biblestates[i])
-
- var/nicename = biblenames[i]
- H << browse_rsc(bibleicon, nicename)
- dat += {" | [nicename] |
"}
-
- dat += "
"
-
- H << browse(dat, "window=editicon;can_close=0;can_minimize=0;size=250x650")
\ No newline at end of file
+ if(ticker)
+ ticker.Bible_deity_name = B.deity_name
+ feedback_set_details("religion_deity","[new_deity]")
+ H.equip_to_slot_or_del(B, slot_in_backpack)
\ No newline at end of file
diff --git a/code/game/machinery/computer/ai_core.dm b/code/game/machinery/computer/ai_core.dm
index 48be900d0a9..2be45dacd4c 100644
--- a/code/game/machinery/computer/ai_core.dm
+++ b/code/game/machinery/computer/ai_core.dm
@@ -180,9 +180,7 @@
user << "You connect the monitor."
if(!laws.inherent.len) //If laws isn't set to null but nobody supplied a board, the AI would normally be created lawless. We don't want that.
laws = null
- var/mob/living/silicon/ai/A = new /mob/living/silicon/ai (loc, laws, brain)
- if(A) //if there's no brain, the mob is deleted and a structure/AIcore is created
- A.rename_self("ai", 1)
+ new /mob/living/silicon/ai (loc, laws, brain)
feedback_inc("cyborg_ais_created",1)
qdel(src)
diff --git a/code/game/objects/items/weapons/storage/book.dm b/code/game/objects/items/weapons/storage/book.dm
index 3be61c6ae42..9a71db5ab8d 100644
--- a/code/game/objects/items/weapons/storage/book.dm
+++ b/code/game/objects/items/weapons/storage/book.dm
@@ -35,8 +35,85 @@
new /obj/item/stack/spacecash(src)
new /obj/item/stack/spacecash(src)
-/obj/item/weapon/storage/book/bible/attack_self(mob/user)
- return
+//Pretty bible names
+var/global/list/biblenames = list("Bible", "Quran", "Scrapbook", "Burning Bible", "Clown Bible", "Banana Bible", "Creeper Bible", "White Bible", "Holy Light", "The God Delusion", "Tome", "The King in Yellow", "Ithaqua", "Scientology", "Melted Bible", "Necronomicon")
+
+//Bible iconstates
+var/global/list/biblestates = list("bible", "koran", "scrapbook", "burning", "honk1", "honk2", "creeper", "white", "holylight", "atheist", "tome", "kingyellow", "ithaqua", "scientology", "melted", "necronomicon")
+
+//Bible itemstates
+var/global/list/bibleitemstates = list("bible", "koran", "scrapbook", "bible", "bible", "bible", "syringe_kit", "syringe_kit", "syringe_kit", "syringe_kit", "syringe_kit", "kingyellow", "ithaqua", "scientology", "melted", "necronomicon")
+
+
+
+/obj/item/weapon/storage/book/bible/attack_self(mob/living/carbon/human/H)
+ if(!istype(H))
+ return
+ if(ticker && !ticker.Bible_icon_state && H.job == "Chaplain")
+ //Open bible selection
+ var/dat = "Pick Bible StylePick a bible style
"
+
+ var/i
+ for(i = 1, i < biblestates.len, i++)
+ var/icon/bibleicon = icon('icons/obj/storage.dmi', biblestates[i])
+
+ var/nicename = biblenames[i]
+ H << browse_rsc(bibleicon, nicename)
+ dat += {" | [nicename] |
"}
+
+ dat += "
"
+
+ H << browse(dat, "window=editicon;can_close=0;can_minimize=0;size=250x650")
+
+/obj/item/weapon/storage/book/bible/proc/setupbiblespecifics(var/obj/item/weapon/storage/book/bible/B, var/mob/living/carbon/human/H)
+ switch(B.icon_state)
+ if("honk1","honk2")
+ new /obj/item/weapon/grown/bananapeel(B)
+ new /obj/item/weapon/grown/bananapeel(B)
+
+ if(B.icon_state == "honk1")
+ H.equip_to_slot_or_del(new /obj/item/clothing/mask/gas/clown_hat(H), slot_wear_mask)
+
+ if("bible")
+ for(var/area/chapel/main/A in world)
+ for(var/turf/T in A.contents)
+ if(T.icon_state == "carpetsymbol")
+ T.dir = 2
+ if("koran")
+ for(var/area/chapel/main/A in world)
+ for(var/turf/T in A.contents)
+ if(T.icon_state == "carpetsymbol")
+ T.dir = 4
+ if("scientology")
+ for(var/area/chapel/main/A in world)
+ for(var/turf/T in A.contents)
+ if(T.icon_state == "carpetsymbol")
+ T.dir = 8
+ if("athiest")
+ for(var/area/chapel/main/A in world)
+ for(var/turf/T in A.contents)
+ if(T.icon_state == "carpetsymbol")
+ T.dir = 10
+
+/obj/item/weapon/storage/book/bible/Topic(href, href_list)
+ if(href_list["seticon"])
+ var/iconi = text2num(href_list["seticon"])
+
+ var/biblename = biblenames[iconi]
+ var/obj/item/weapon/storage/book/bible/B = locate(href_list["src"])
+
+ B.icon_state = biblestates[iconi]
+ B.item_state = bibleitemstates[iconi]
+
+ //Set biblespecific chapels
+ setupbiblespecifics(B, usr)
+
+ if(ticker)
+ ticker.Bible_icon_state = B.icon_state
+ ticker.Bible_item_state = B.item_state
+ feedback_set_details("religion_book","[biblename]")
+
+ usr << browse(null, "window=editicon") // Close window
/obj/item/weapon/storage/book/bible/proc/bless(mob/living/carbon/M as mob)
if(ishuman(M))
diff --git a/code/modules/client/preferences.dm b/code/modules/client/preferences.dm
index bd3044071c4..201dde00b62 100644
--- a/code/modules/client/preferences.dm
+++ b/code/modules/client/preferences.dm
@@ -62,6 +62,7 @@ datum/preferences
var/eye_color = "000" //Eye color
var/datum/species/pref_species = new /datum/species/human() //Mutant race
var/mutant_color = "FFF" //Mutant race skin color
+ var/list/custom_names = list("clown", "mime", "ai", "cyborg", "religion", "deity")
//Mob preview
var/icon/preview_icon_front = null
@@ -94,6 +95,10 @@ datum/preferences
/datum/preferences/New(client/C)
blood_type = random_blood_type()
ooccolor = normal_ooc_colour
+ custom_names["ai"] = pick(ai_names)
+ custom_names["cyborg"] = pick(ai_names)
+ custom_names["clown"] = pick(clown_names)
+ custom_names["mime"] = pick(mime_names)
if(istype(C))
if(!IsGuestKey(C.key))
load_path(C.ckey)
@@ -158,10 +163,18 @@ datum/preferences
dat += "[real_name]
"
dat += "Gender: [gender == MALE ? "Male" : "Female"]
"
- dat += "Age: [age]"
+ dat += "Age: [age]
"
+
+ dat += "Special Names:
"
+ dat += "Clown: [custom_names["clown"]] "
+ dat += "Mime:[custom_names["mime"]]
"
+ dat += "AI: [custom_names["ai"]] "
+ dat += "Cyborg: [custom_names["cyborg"]]
"
+ dat += "Chaplain religion: [custom_names["religion"]] "
+ dat += "Chaplain deity: [custom_names["deity"]]
"
- dat += ""
+ dat += " | "
dat += ""
@@ -182,11 +195,11 @@ datum/preferences
dat += "Underwear: [underwear] "
dat += "Undershirt: [undershirt] "
dat += "Socks: [socks] "
- dat += "Backpack: [backbaglist[backbag]] "
+ dat += "Backpack: [backbaglist[backbag]]
| "
if(pref_species.use_skintones)
- dat += ""
+ dat += " | "
dat += "Skin Tone"
@@ -304,7 +317,7 @@ datum/preferences
dat += ""
//user << browse(dat, "window=preferences;size=560x560")
- var/datum/browser/popup = new(user, "preferences", "Character Setup ", 640, 680)
+ var/datum/browser/popup = new(user, "preferences", "Character Setup ", 640, 750)
popup.set_content(dat)
popup.open(0)
@@ -752,6 +765,50 @@ datum/preferences
var/new_backbag = input(user, "Choose your character's style of bag:", "Character Preference") as null|anything in backbaglist
if(new_backbag)
backbag = backbaglist.Find(new_backbag)
+
+ if("clown_name")
+ var/new_clown_name = reject_bad_name( input(user, "Choose your character's clown name:", "Character Preference") as text|null )
+ if(new_clown_name)
+ custom_names["clown"] = new_clown_name
+ else
+ user << "Invalid name. Your name should be at least 2 and at most [MAX_NAME_LEN] characters long. It may only contain the characters A-Z, a-z, -, ' and ."
+
+ if("mime_name")
+ var/new_mime_name = reject_bad_name( input(user, "Choose your character's mime name:", "Character Preference") as text|null )
+ if(new_mime_name)
+ custom_names["mime"] = new_mime_name
+ else
+ user << "Invalid name. Your name should be at least 2 and at most [MAX_NAME_LEN] characters long. It may only contain the characters A-Z, a-z, -, ' and ."
+
+ if("ai_name")
+ var/new_ai_name = reject_bad_name( input(user, "Choose your character's AI name:", "Character Preference") as text|null, 1 )
+ if(new_ai_name)
+ custom_names["ai"] = new_ai_name
+ else
+ user << "Invalid name. Your name should be at least 2 and at most [MAX_NAME_LEN] characters long. It may only contain the characters A-Z, a-z, 0-9, -, ' and ."
+
+ if("cyborg_name")
+ var/new_cyborg_name = reject_bad_name( input(user, "Choose your character's cyborg name:", "Character Preference") as text|null, 1 )
+ if(new_cyborg_name)
+ custom_names["cyborg"] = new_cyborg_name
+ else
+ user << "Invalid name. Your name should be at least 2 and at most [MAX_NAME_LEN] characters long. It may only contain the characters A-Z, a-z, 0-9, -, ' and ."
+
+ if("religion_name")
+ var/new_religion_name = reject_bad_name( input(user, "Choose your character's mime name:", "Character Preference") as text|null )
+ if(new_religion_name)
+ custom_names["religion"] = new_religion_name
+ else
+ user << "Invalid name. Your name should be at least 2 and at most [MAX_NAME_LEN] characters long. It may only contain the characters A-Z, a-z, -, ' and ."
+
+ if("deity_name")
+ var/new_deity_name = reject_bad_name( input(user, "Choose your character's mime name:", "Character Preference") as text|null )
+ if(new_deity_name)
+ custom_names["deity"] = new_deity_name
+ else
+ user << "Invalid name. Your name should be at least 2 and at most [MAX_NAME_LEN] characters long. It may only contain the characters A-Z, a-z, -, ' and ."
+
+
else
switch(href_list["preference"])
if("publicity")
diff --git a/code/modules/client/preferences_savefile.dm b/code/modules/client/preferences_savefile.dm
index 604bbd57069..f2da84ddd52 100644
--- a/code/modules/client/preferences_savefile.dm
+++ b/code/modules/client/preferences_savefile.dm
@@ -187,6 +187,12 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
S["socks"] >> socks
S["backbag"] >> backbag
S["mutant_color"] >> mutant_color
+ S["clown_name"] >> custom_names["clown"]
+ S["mime_name"] >> custom_names["mime"]
+ S["ai_name"] >> custom_names["ai"]
+ S["cyborg_name"] >> custom_names["cyborg"]
+ S["religion_name"] >> custom_names["religion"]
+ S["deity_name"] >> custom_names["deity"]
//Jobs
S["userandomjob"] >> userandomjob
@@ -274,6 +280,12 @@ SAVEFILE UPDATING/VERSIONING - 'Simplified', or rather, more coder-friendly ~Car
S["backbag"] << backbag
S["species"] << pref_species.name
S["mutant_color"] << mutant_color
+ S["clown_name"] << custom_names["clown"]
+ S["mime_name"] << custom_names["mime"]
+ S["ai_name"] << custom_names["ai"]
+ S["cyborg_name"] << custom_names["cyborg"]
+ S["religion_name"] << custom_names["religion"]
+ S["deity_name"] << custom_names["deity"]
//Jobs
S["userandomjob"] << userandomjob
diff --git a/code/modules/mob/living/silicon/ai/ai.dm b/code/modules/mob/living/silicon/ai/ai.dm
index e03f3c5464d..2c7083a8206 100644
--- a/code/modules/mob/living/silicon/ai/ai.dm
+++ b/code/modules/mob/living/silicon/ai/ai.dm
@@ -63,17 +63,7 @@ var/list/ai_list = list()
var/apc_override = 0 //hack for letting the AI use its APC even when visionless
/mob/living/silicon/ai/New(loc, var/datum/ai_laws/L, var/obj/item/device/mmi/B, var/safety = 0)
- var/list/possibleNames = ai_names
-
- var/pickedName = null
- while(!pickedName)
- pickedName = pick(ai_names)
- for (var/mob/living/silicon/ai/A in mob_list)
- if (A.real_name == pickedName && possibleNames.len > 1) //fixing the theoretically possible infinite loop
- possibleNames -= pickedName
- pickedName = null
-
- real_name = pickedName
+ rename_self("ai", 1)
name = real_name
anchored = 1
canmove = 0
diff --git a/code/modules/mob/transform_procs.dm b/code/modules/mob/transform_procs.dm
index c9d1843bf78..3b8a4401cbd 100644
--- a/code/modules/mob/transform_procs.dm
+++ b/code/modules/mob/transform_procs.dm
@@ -308,9 +308,6 @@
var/mob/living/silicon/robot/O = new /mob/living/silicon/robot( loc )
- if (config.rename_cyborg)
- O.rename_self("cyborg", 1)
-
// cyborgs produced by Robotize get an automatic power cell
O.cell = new(O)
O.cell.maxcharge = 7500
@@ -330,6 +327,9 @@
O.update_pipe_vision()
+ if (config.rename_cyborg)
+ O.rename_self("cyborg", 1)
+
O.loc = loc
O.job = "Cyborg"
O.notify_ai(1)
diff --git a/config/names/mime.txt b/config/names/mime.txt
new file mode 100644
index 00000000000..14845a89b40
--- /dev/null
+++ b/config/names/mime.txt
@@ -0,0 +1,24 @@
+Mr. Beret
+Mime
+Mr. Mime
+Mr. Mute
+Silence
+Silencio
+Quiet
+Silent Sorrow
+Silent Knight
+Silent Night
+Untouchable
+Unspeakable
+Mute
+Marcel Mime
+Marcel
+Pantomime
+Omerta
+Lemon Mime
+Invisible Man
+Transparency
+Quiet Riot
+Silent Majority
+Wall Runner
+Oui Oui
\ No newline at end of file
diff --git a/html/changelogs/phil235-ClownNamePreferences.yml b/html/changelogs/phil235-ClownNamePreferences.yml
new file mode 100644
index 00000000000..7c393fee9fb
--- /dev/null
+++ b/html/changelogs/phil235-ClownNamePreferences.yml
@@ -0,0 +1,8 @@
+author: phil235
+
+delete-after: True
+
+changes:
+ - tweak: "Choosing your clown, mime, cyborg and AI name as well as religion and deity is now done in the preferences window. As a chaplain , your bible's icon is now chosen by clicking the bible."
+
+
|