Added sanitize() to verb/me().

Enabled adminlogging of using robotic console.
Some admin messages are duplicated to log file now.
Fixed bug with ghosts sometimes not hearing people.
WIP stuff from Nikie:
a sprite for detective's armor
an alternative sprite for SWAT armor


git-svn-id: http://tgstation13.googlecode.com/svn/trunk@1391 316c924e-a436-60f5-8080-3fe189b3f50e
This commit is contained in:
rastaf.zero@gmail.com
2011-04-06 08:47:51 +00:00
parent e45b13ebd7
commit e074166845
18 changed files with 46 additions and 28 deletions
@@ -67,6 +67,7 @@
//Traitor's dead! Oh no!
if (ticker.mode.name == "traitor" && src.mind && src.mind.special_role == "traitor")
message_admins("\red Traitor [key_name_admin(src)] has died.")
log_game("Traitor [key_name(src)] has died.")
var/cancel
for (var/mob/M in world)
+11 -20
View File
@@ -245,13 +245,19 @@
var/list/V = view(message_range, T)
//find mobs in lockers, cryo and intellycards
for (var/mob/M in world)
if (isturf(M.loc))
continue //if M can hear us it was already found by hearers()
if (!M.client)
continue //skip monkeys and leavers
if (get_turf(M) in V) //this slow, but I don't think we'd have a lot of wardrobewhores every round --rastaf0
listening+=M
if (istype(M, /mob/new_player))
continue
if (M.stat <2) //is alive
if (isturf(M.loc))
continue //if M can hear us it was already found by hearers()
if (get_turf(M) in V) //this is slow, but I don't think we'd have a lot of wardrobewhores every round --rastaf0
listening+=M
else
if (M.ghost_ears && !(M in listening))
listening+=M
for (var/obj/O in ((V | src.contents)-used_radios)) //radio in pocket could work, radio in backpack wouldn't --rastaf0
spawn (0)
if (O)
@@ -305,19 +311,4 @@
for (var/mob/M in heard_b)
M.show_message(rendered, 2)
message = src.say_quote(message)
if (italics)
message = "<i>[message]</i>"
if (!istype(src, /mob/living/carbon/human) || istype(src.wear_mask, /obj/item/clothing/mask/gas/voice))
rendered = "<span class='game say'><span class='name'>[src.name]</span> <span class='message'>[message]</span></span>"
else
rendered = "<span class='game say'><span class='name'>[src.real_name]</span>[alt_name] <span class='message'>[message]</span></span>"
for (var/mob/M in world)
if (istype(M, /mob/new_player))
continue
if (M.stat >= 2 && !(M in heard_a) && M.ghost_ears)
M.show_message(rendered, 2)
log_say("[src.name]/[src.key] : [message]")
@@ -467,6 +467,7 @@
connected_ai = null
user << "You emag [src]'s interface."
message_admins("[key_name_admin(user)] emagged cyborg [key_name_admin(src)]. Laws overridden.")
log_game("[key_name(user)] emagged cyborg [key_name(src)]. Laws overridden.")
clear_supplied_laws()
clear_inherent_laws()
src.laws = new /datum/ai_laws/syndicate_override
+4
View File
@@ -1365,6 +1365,10 @@
set category = "OOC"
set desc = "Hear talks from everywhere"
src.ghost_ears = !src.ghost_ears
if (ghost_ears)
usr << "Now you hear all speech in world"
else
usr << "Now you hear speech only from nearest creatures."
/mob/verb/observe()
set name = "Observe"
+1
View File
@@ -14,6 +14,7 @@
/mob/verb/me_verb(message as text)
set name = "Me"
set category = "IC"
message = trim(copytext(sanitize(message), 1, MAX_MESSAGE_LEN))
usr.emote("me",1,message)
/mob/proc/say_dead(var/message)