From 354b1978ea53aabdd622a129fb8b9b3ac7eb762d Mon Sep 17 00:00:00 2001 From: Fira Date: Sat, 4 Jan 2014 13:22:06 +0100 Subject: [PATCH 1/6] Partial fix for pAI emotes (they still can't hear beyond one container level, will require a say/emote code hack) --- code/modules/mob/emote.dm | 6 +++++- code/modules/mob/living/silicon/pai/pai.dm | 3 ++- code/modules/mob/mob_defines.dm | 1 + code/modules/mob/say.dm | 2 +- 4 files changed, 9 insertions(+), 3 deletions(-) diff --git a/code/modules/mob/emote.dm b/code/modules/mob/emote.dm index 416528d3fc..8a9f2a3b90 100644 --- a/code/modules/mob/emote.dm +++ b/code/modules/mob/emote.dm @@ -36,11 +36,15 @@ M.show_message(message) + // Type 1 (Visual) emotes are sent to anyone in view of the item if (m_type & 1) for (var/mob/O in viewers(src, null)) O.show_message(message, m_type) + + // Type 2 (Audible) emotes are sent to anyone in hear range + // of the *LOCATION* -- this is important for pAIs to be heard else if (m_type & 2) - for (var/mob/O in hearers(src.loc, null)) + for (var/mob/O in hearers(get_turf(src), null)) O.show_message(message, m_type) /mob/proc/emote_dead(var/message) diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index 863708d18c..02c8ea0422 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -4,6 +4,7 @@ icon_state = "shadow" robot_talk_understand = 0 + emote_type = 2 // pAIs emotes are heard, not seen, so they can be seen through a container (eg. person) var/network = "SS13" var/obj/machinery/camera/current = null @@ -268,4 +269,4 @@ pai.key = src.key card.setPersonality(pai) -*/ \ No newline at end of file +*/ diff --git a/code/modules/mob/mob_defines.dm b/code/modules/mob/mob_defines.dm index 2452db5abc..2e5a65c7c3 100644 --- a/code/modules/mob/mob_defines.dm +++ b/code/modules/mob/mob_defines.dm @@ -89,6 +89,7 @@ var/list/languages = list() // For speaking/listening. var/list/abilities = list() // For species-derived or admin-given powers. var/list/speak_emote = list("says") // Verbs used when speaking. Defaults to 'say' if speak_emote is null. + var/emote_type = 1 // Define emote default type, 1 for seen emotes, 2 for heard emotes var/name_archive //For admin things like possession diff --git a/code/modules/mob/say.dm b/code/modules/mob/say.dm index 040c1615c5..1f2d5c2845 100644 --- a/code/modules/mob/say.dm +++ b/code/modules/mob/say.dm @@ -25,7 +25,7 @@ message = trim(copytext(sanitize(message), 1, MAX_MESSAGE_LEN)) if(use_me) - usr.emote("me",1,message) + usr.emote("me",usr.emote_type,message) else usr.emote(message) From c8beb399449e3d8b3c79df376fb5483a23b4a300 Mon Sep 17 00:00:00 2001 From: Ccomp5950 Date: Sun, 5 Jan 2014 19:17:26 -0600 Subject: [PATCH 2/6] Dirt Fixes. Pass ALL the attack_by's to the floor. --- code/game/objects/effects/decals/Cleanable/misc.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/game/objects/effects/decals/Cleanable/misc.dm b/code/game/objects/effects/decals/Cleanable/misc.dm index d94d4670be..0b999cb0bb 100644 --- a/code/game/objects/effects/decals/Cleanable/misc.dm +++ b/code/game/objects/effects/decals/Cleanable/misc.dm @@ -41,7 +41,7 @@ icon_state = "dirt" /obj/effect/decal/cleanable/attackby(obj/item/weapon/W as obj, mob/user as mob) - if(istype(W,/obj/item/weapon/crowbar)) + if(!istype(W,/obj/item/weapon/mop) && !istype(W,/obj/item/weapon/soap)) var/turf/T = get_turf(src) if(T) T.attackby(W,user) From cd4ef7a1b712f1fd1c41f033c9af49ea3a4c7a87 Mon Sep 17 00:00:00 2001 From: Ccomp5950 Date: Sun, 5 Jan 2014 19:30:52 -0600 Subject: [PATCH 3/6] Ghost chat unicode support...removed unneeded sanitize() --- code/modules/mob/dead/observer/say.dm | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/code/modules/mob/dead/observer/say.dm b/code/modules/mob/dead/observer/say.dm index db9cd2129c..acf6c887d7 100644 --- a/code/modules/mob/dead/observer/say.dm +++ b/code/modules/mob/dead/observer/say.dm @@ -1,5 +1,5 @@ /mob/dead/observer/say(var/message) - message = trim(copytext(sanitize(message), 1, MAX_MESSAGE_LEN)) + message = trim(copytext(message, 1, MAX_MESSAGE_LEN)) if (!message) return @@ -18,7 +18,7 @@ /mob/dead/observer/emote(var/act, var/type, var/message) - message = trim(copytext(sanitize(message), 1, MAX_MESSAGE_LEN)) + message = trim(copytext(message, 1, MAX_MESSAGE_LEN)) if(!message) return @@ -62,4 +62,4 @@ M.show_message("You hear muffled speech... you can almost make out some words...", 2) // M.show_message("[stutter(message)]", 2) playsound(src.loc, pick('sound/effects/ghost.ogg','sound/effects/ghost2.ogg'), 10, 1) -*/ \ No newline at end of file +*/ From 0798c7f4c32d9be90ec48c92e3d7dd38275d360f Mon Sep 17 00:00:00 2001 From: Ccomp5950 Date: Mon, 6 Jan 2014 23:11:09 -0600 Subject: [PATCH 4/6] Cleanbots are now created unlocked. Allows roboticist to set up cleanbots and if they patrol or not. Requires janitor access to lock them (Captain, HoP, Janitor) Should probably have a proc that checks you have either of the access listed but for now this fixes this minor problem. --- code/game/machinery/bots/cleanbot.dm | 2 ++ 1 file changed, 2 insertions(+) diff --git a/code/game/machinery/bots/cleanbot.dm b/code/game/machinery/bots/cleanbot.dm index 7b5e18413f..1050466849 100644 --- a/code/game/machinery/bots/cleanbot.dm +++ b/code/game/machinery/bots/cleanbot.dm @@ -54,6 +54,8 @@ src.botcard = new /obj/item/weapon/card/id(src) var/datum/job/janitor/J = new/datum/job/janitor src.botcard.access = J.get_access() + + src.locked = 0 // Start unlocked so roboticist can set them to patrol. if(radio_controller) radio_controller.add_object(src, beacon_freq, filter = RADIO_NAVBEACONS) From 1575db63203345f4a8fbc5c76c6e33a99a57e2ce Mon Sep 17 00:00:00 2001 From: Ccomp5950 Date: Mon, 6 Jan 2014 23:33:48 -0600 Subject: [PATCH 5/6] Fixed placing ID's into PDA's that are on the ground. Removed useless can_use check, no reason that is needed there. --- code/game/objects/items/devices/PDA/PDA.dm | 7 +++---- 1 file changed, 3 insertions(+), 4 deletions(-) diff --git a/code/game/objects/items/devices/PDA/PDA.dm b/code/game/objects/items/devices/PDA/PDA.dm index 2750af1b05..cd3368b941 100755 --- a/code/game/objects/items/devices/PDA/PDA.dm +++ b/code/game/objects/items/devices/PDA/PDA.dm @@ -943,10 +943,9 @@ var/global/list/obj/item/device/pda/PDAs = list() else //Basic safety check. If either both objects are held by user or PDA is on ground and card is in hand. if(((src in user.contents) && (C in user.contents)) || (istype(loc, /turf) && in_range(src, user) && (C in user.contents)) ) - if( can_use(user) )//If they can still act. - id_check(user, 2) - user << "You put the ID into \the [src]'s slot." - updateSelfDialog()//Update self dialog on success. + id_check(user, 2) + user << "You put the ID into \the [src]'s slot." + updateSelfDialog()//Update self dialog on success. return //Return in case of failed check or when successful. updateSelfDialog()//For the non-input related code. else if(istype(C, /obj/item/device/paicard) && !src.pai) From 912c04b9d61873313b4f57934c293dbb1a6e0a37 Mon Sep 17 00:00:00 2001 From: Mloc Date: Tue, 7 Jan 2014 21:50:16 +0000 Subject: [PATCH 6/6] Another year gone. --- COPYING | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/COPYING b/COPYING index 5005fcd90f..77e1d829ff 100644 --- a/COPYING +++ b/COPYING @@ -1,5 +1,5 @@ Baystation12 -Copyright (C) 2010-2013 Baystation12 and tgstation13. +Copyright (C) 2010-2014 Baystation12 and tgstation13. This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by