Emergency Field Generators are now live!

- Now have an emp_act
- Can now be (un)locked by engineering IDs

Reverted ghosts getting mob attack logs and moving the ghost verb to clients
- This should fix the ghosting issues, but it's possible I've missed something. If there's any problems ping me(Nodrak) in #coderbus on IRC and I'll fix it.
- Attack logs moving to ghosts would be an amazing feature, it's not that admins can't get that information already but it makes it much easier. If it can be implemented without all of these bugs, it'd defiantly be an asset
- Fixes Issue 647

Removed logging from the cremator as it was causing runtimes and the cremator to lock up. Fixes Issue 649

Fixed an issue with unjobbanning players.

git-svn-id: http://tgstation13.googlecode.com/svn/trunk@4044 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
johnsonmt88@gmail.com
2012-07-11 19:55:20 +00:00
parent 906a2c417e
commit ba18f631c0
22 changed files with 82 additions and 40 deletions

View File

@@ -576,8 +576,8 @@ var/global/BSACooldown = 0
if (href_list["removejobban"])
if ((src.rank in list("Game Admin", "Game Master" )))
var/t = href_list["removejobban"]
if(input(alert("Do you want to unjobban [t]?","Unjobban confirmation", "Yes", "No") == "Yes")) //No more misclicks! Unless you do it twice.
if(t)
if(t)
if(input(alert("Do you want to unjobban [t]?","Unjobban confirmation", "Yes", "No") == "Yes") && t) //No more misclicks! Unless you do it twice.
log_admin("[key_name(usr)] removed [t]")
message_admins("\blue [key_name_admin(usr)] removed [t]", 1)
jobban_remove(t)

View File

@@ -36,7 +36,6 @@ Works together with spawning an observer, noted above.
if(client)
client.screen.len = null//Clear the hud, just to be sure.
var/mob/dead/observer/ghost = new(src,transfer_mind)//Transfer safety to observer spawning proc.
ghost.attack_log |= attack_log
if(transfer_mind)//When a body is destroyed.
if(mind)
mind.transfer_to(ghost)
@@ -45,7 +44,7 @@ Works together with spawning an observer, noted above.
else//Else just modify their key and connect them.
ghost.key = key
verbs -= /client/proc/ghost
verbs -= /mob/proc/ghost
if (ghost.client)
ghost.client.eye = ghost
@@ -60,7 +59,7 @@ Works together with spawning an observer, noted above.
/*
This is the proc mobs get to turn into a ghost. Forked from ghostize due to compatibility issues.
*/
/client/proc/ghost()
/mob/proc/ghost()
set category = "Ghost"
set name = "Ghost"
set desc = "You cannot be revived as a ghost."
@@ -69,11 +68,9 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
src << "Only dead people and admins get to ghost, and admins don't use this verb to ghost while alive."
return*/
if(key)
var/mob/dead/observer/ghost = new(mob) //Duh.
ghost.loc = get_turf(mob) //This is to prevent ghosts from appearing at the arrival shuttle.
ghost.attack_log |= mob.attack_log //THE LEGACY MUST LIVE ON
var/mob/dead/observer/ghost = new(src)
ghost.key = key
verbs -= /client/proc/ghost
verbs -= /mob/proc/ghost
if (ghost.client)
ghost.client.eye = ghost
return
@@ -148,10 +145,9 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp
return
if(corpse.ajourn)
corpse.ajourn=0
corpse.attack_log |= attack_log //copy the ghost's attack log to the corpse. THE LEGACY MUST LIVE ON
client.mob = corpse
if (corpse.stat==2)
verbs += /client/proc/ghost
verbs += /mob/proc/ghost
del(src)
/mob/dead/observer/proc/dead_tele()

View File

@@ -25,7 +25,7 @@
if (src.key)
spawn(10)
if(src.key && src.stat == 2)
src.client.verbs += /client/proc/ghost
src.verbs += /mob/proc/ghost
tod = worldtime2text() //weasellos time of death patch
if (mind) mind.store_memory("Time of death: [tod]", 0)

View File

@@ -7,7 +7,7 @@
src.client.eye = src.loc
src.client.perspective = EYE_PERSPECTIVE
if (src.stat == DEAD)
src.verbs += /client/proc/ghost
src.verbs += /mob/proc/ghost
return
/*
@@ -99,7 +99,7 @@
src.client.eye = src.loc
src.client.perspective = EYE_PERSPECTIVE
if (src.stat == 2)
src.verbs += /client/proc/ghost
src.verbs += /mob/proc/ghost
return

View File

@@ -23,7 +23,7 @@
if (src.client)
spawn(10)
if(src.client && src.stat == 2)
src.client.verbs += /client/proc/ghost
src.verbs += /mob/proc/ghost
if(mind) // Skie - Added check that there's someone controlling the alien
tod = worldtime2text() //weasellos time of death patch

View File

@@ -5,6 +5,6 @@
src.client.eye = src.loc
src.client.perspective = EYE_PERSPECTIVE
if (src.stat == 2)
src.verbs += /client/proc/ghost
src.verbs += /mob/proc/ghost
return

View File

@@ -40,7 +40,7 @@
src.client.eye = src.loc
src.client.perspective = EYE_PERSPECTIVE
if (!container || !istype(container, /obj/item/device/mmi))
src.verbs += /client/proc/ghost
src.verbs += /mob/proc/ghost
return

View File

@@ -20,5 +20,5 @@
if (key)
spawn(50)
if(key && stat == 2)
src.client.verbs += /client/proc/ghost
src.verbs += /mob/proc/ghost
return ..(gibbed)

View File

@@ -79,11 +79,9 @@
//This is where the suicide assemblies checks would go
if (client)
//world <<"Woo, there's a client!"
spawn(10)
if(client && src.stat == 2)
//world <<"You're sooooooo dead, let's ghost!"
client.verbs += /client/proc/ghost
verbs += /mob/proc/ghost
tod = worldtime2text() //weasellos time of death patch
if(mind)

View File

@@ -7,6 +7,6 @@
src.client.eye = src.loc
src.client.perspective = EYE_PERSPECTIVE
if (src.stat == DEAD)
src.verbs += /client/proc/ghost
src.verbs += /mob/proc/ghost
return

View File

@@ -37,6 +37,6 @@
if (src.key)
spawn(50)
if(src.key && src.stat == 2)
src.client.verbs += /client/proc/ghost
src.verbs += /mob/proc/ghost
return ..(gibbed)

View File

@@ -7,6 +7,6 @@
src.client.eye = src.loc
src.client.perspective = EYE_PERSPECTIVE
if (src.stat == DEAD)
src.verbs += /client/proc/ghost
src.verbs += /mob/proc/ghost
return

View File

@@ -67,6 +67,6 @@
if (src.key)
spawn(50)
if(src.key && src.stat == 2)
src.client.verbs += /client/proc/ghost
src.verbs += /mob/proc/ghost
return ..(gibbed)

View File

@@ -7,5 +7,5 @@
src.client.eye = src.loc
src.client.perspective = EYE_PERSPECTIVE
if (src.stat == DEAD)
src.verbs += /client/proc/ghost
src.verbs += /mob/proc/ghost
return

View File

@@ -13,16 +13,22 @@
var/callshuttle = 0
for(var/obj/machinery/computer/communications/commconsole in world)
if(commconsole.z == 2)
continue
if(istype(commconsole.loc,/turf))
break
callshuttle++
for(var/obj/item/weapon/circuitboard/communications/commboard in world)
if(commboard.z == 2)
continue
if(istype(commboard.loc,/turf) || istype(commboard.loc,/obj/item/weapon/storage))
break
callshuttle++
for(var/mob/living/silicon/ai/shuttlecaller in world)
if(shuttlecaller.z == 2)
continue
if(!shuttlecaller.stat && shuttlecaller.client && istype(shuttlecaller.loc,/turf))
break
callshuttle++
@@ -53,5 +59,5 @@
if (key)
spawn(50)
if(key && stat == 2)
client.verbs += /client/proc/ghost
client.verbs += /mob/proc/ghost
return ..(gibbed)

View File

@@ -22,7 +22,7 @@
src.client.eye = src.loc
src.client.perspective = EYE_PERSPECTIVE
if (src.stat == 2)
src.verbs += /client/proc/ghost
src.verbs += /mob/proc/ghost
else
for(var/obj/machinery/ai_status_display/O in world) //change status
spawn(0)

View File

@@ -8,5 +8,5 @@
src.client.eye = src.loc
src.client.perspective = EYE_PERSPECTIVE
if (src.stat == 2)
src.verbs += /client/proc/ghost
src.verbs += /mob/proc/ghost
return

View File

@@ -72,5 +72,5 @@
if (src.key)
spawn(50)
if(src.key && src.stat == 2)
src.verbs += /client/proc/ghost
src.verbs += /mob/proc/ghost
return ..(gibbed)

View File

@@ -7,7 +7,7 @@
src.client.eye = src.loc
src.client.perspective = EYE_PERSPECTIVE
if (src.stat == 2)
src.verbs += /client/proc/ghost
src.verbs += /mob/proc/ghost
if(src.real_name == "Cyborg")
src.ident = rand(1, 999)
src.real_name += " "