Adding tourist outfits for observer ghosts

This commit is contained in:
ZomgPonies
2013-12-18 00:22:32 -05:00
parent 6fe152b0ca
commit fa8f3abea5
3 changed files with 24 additions and 6 deletions
+12 -4
View File
@@ -1,3 +1,7 @@
#define GHOST_CAN_REENTER 1
#define GHOST_IS_OBSERVER 2
/mob/dead/observer
name = "ghost"
desc = "It's a g-g-g-g-ghooooost!" //jinkies!
@@ -19,11 +23,16 @@
universal_speak = 1
var/atom/movable/following = null
var/medHUD = 0
/mob/dead/observer/New(mob/body)
/mob/dead/observer/New(var/mob/body=null, var/flags=1)
sight |= SEE_TURFS | SEE_MOBS | SEE_OBJS | SEE_SELF
see_invisible = SEE_INVISIBLE_OBSERVER
see_in_dark = 100
verbs += /mob/dead/observer/proc/dead_tele
can_reenter_corpse = flags & GHOST_CAN_REENTER
started_as_observer = flags & GHOST_IS_OBSERVER
stat = DEAD
var/turf/T
@@ -183,10 +192,9 @@ Works together with spawning an observer, noted above.
U.client.images += image(tempHud,silicon_target,"hudmalai")
return 1
/mob/proc/ghostize(var/can_reenter_corpse = 1)
/mob/proc/ghostize(var/flags = GHOST_CAN_REENTER)
if(key)
var/mob/dead/observer/ghost = new(src) //Transfer safety to observer spawning proc.
ghost.can_reenter_corpse = can_reenter_corpse
var/mob/dead/observer/ghost = new(src, flags) //Transfer safety to observer spawning proc.
ghost.timeofdeath = src.timeofdeath //BS12 EDIT
respawnable_list -= src
if(ghost.can_reenter_corpse)
+1 -1
View File
@@ -125,7 +125,7 @@
src << "\blue Now teleporting."
observer.loc = O.loc
observer.timeofdeath = world.time // Set the time of death so that the respawn timer works correctly.
client.prefs.update_preview_icon()
client.prefs.update_preview_icon(1)
observer.icon = client.prefs.preview_icon
observer.alpha = 127
@@ -128,7 +128,7 @@ datum/preferences
b_eyes = blue
proc/update_preview_icon() //seriously. This is horrendous.
proc/update_preview_icon(var/for_observer=0) //seriously. This is horrendous.
del(preview_icon_front)
del(preview_icon_side)
del(preview_icon)
@@ -566,6 +566,16 @@ datum/preferences
if(disabilities & NEARSIGHTED)
preview_icon.Blend(new /icon('icons/mob/eyes.dmi', "glasses"), ICON_OVERLAY)
// Observers get tourist outfit.
if(for_observer)
clothes_s = new /icon(uniform_dmi, "tourist_s")
clothes_s.Blend(new /icon('icons/mob/feet.dmi', "black"), ICON_UNDERLAY)
if(backbag == 2)
clothes_s.Blend(new /icon('icons/mob/back.dmi', "backpack"), ICON_OVERLAY)
else if(backbag == 3 || backbag == 4)
clothes_s.Blend(new /icon('icons/mob/back.dmi', "satchel"), ICON_OVERLAY)
preview_icon.Blend(eyes_s, ICON_OVERLAY)
if(clothes_s)
preview_icon.Blend(clothes_s, ICON_OVERLAY)