Added a new variable to all mobs: var/original_name

This variable is set ONLY when you spawn. It is also only used for deadchat communication. This variable is not to be changed after mob creation.

the new deadchat format is:
http://www.kamletos.si/deadchat222.png

line before suicide = spoke alive just before I suicided (name = unknown; real_name = "Duncan Sagan"; original_name = "Duncan Sagan")
the 2nd to last line is me speaking from the human body (name = "Unknown"; real_name = "Duncan Sagan"; original_name = "Duncan Sagan")
the last line is me speaking after ghosting (name = "Duncan Sagan"; real_name = "Unknown"; original_name = "Duncan Sagan")

So when alive everything is as before,

When you speak as a dead human you get 
DEAD: Original_name says, "message"

When you speak as a ghost you get
DEAD: Original_name (as real_name) says, "message"
(the as real_name is skipped if the two are the same)

If there is some overlooked situation where new mobs are created and original names don't copy over, then real_name is used in all forms of deadcast communication.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@3066 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
baloh.matevz@gmail.com
2012-02-09 02:52:04 +00:00
parent e6f31fae1a
commit 0d7a944e50
5 changed files with 10 additions and 10 deletions

View File

@@ -12,8 +12,9 @@
else//Safety, in case a turf cannot be found.
loc = pick(latejoin)
if(!istype(body,/mob)) return//This needs to be recoded sometime so it has loc as its first arg
real_name = body.real_name
name = body.real_name
real_name = body.name
original_name = body.original_name //Original name is only used in ghost chat! It is not to be edited by anything!
name = body.original_name
if(!safety)
corpse = body
verbs += /mob/dead/observer/proc/reenter_corpse

View File

@@ -88,6 +88,7 @@
var/ear_damage = null//Carbon
var/stuttering = null//Carbon
var/real_name = null
var/original_name = null //Original name is only used in ghost chat! It is not to be edited by anything!
var/blinded = null
var/bhunger = 0//Carbon
var/ajourn = 0

View File

@@ -206,6 +206,7 @@
preferences.randomize_name()
observer.name = preferences.real_name
observer.real_name = observer.name
observer.original_name = observer.name //Original name is only used in ghost chat! It is not to be edited by anything!
del(src)
return 1

View File

@@ -596,6 +596,7 @@ datum/preferences
if(be_random_name)
randomize_name()
character.real_name = real_name
character.original_name = real_name //Original name is only used in ghost chat! It is not to be edited by anything!
character.gender = gender

View File

@@ -26,14 +26,10 @@
var/name = src.real_name
var/alt_name = ""
if (istype(src, /mob/living/carbon/human) && src.name != src.real_name)
var/mob/living/carbon/human/H = src
alt_name = " (as [H.get_authentification_name()])"
if (!istype(src, /mob/living/carbon/human))
name = src.name
if (istype(src, /mob/dead/observer))
name = "Ghost"
alt_name = " ([src.real_name])"
if(original_name) //Original name is only used in ghost chat! It is not to be edited by anything!
name = src.original_name
if( original_name != real_name )
alt_name = " (died as [src.real_name])"
message = src.say_quote(message)
var/rendered = "<span class='game deadsay'><span class='prefix'>DEAD:</span> <span class='name'>[name]</span>[alt_name] <span class='message'>[message]</span></span>"