diff --git a/code/_helpers/game.dm b/code/_helpers/game.dm index 9aa16f91b5..79b3aa6540 100644 --- a/code/_helpers/game.dm +++ b/code/_helpers/game.dm @@ -175,10 +175,12 @@ L |= I else if(istype(I,/obj/)) - if(!sight_check || isInSight(I, O)) - L |= recursive_content_check(I, L, recursion_limit - 1, client_check, sight_check, include_mobs, include_objects) - if(include_objects) - L |= I + var/obj/check_obj = I + if(check_obj.show_messages) + if(!sight_check || isInSight(I, O)) + L |= recursive_content_check(I, L, recursion_limit - 1, client_check, sight_check, include_mobs, include_objects) + if(include_objects) + L |= I return L @@ -203,7 +205,8 @@ hear += M else if(istype(I,/obj/)) hear |= recursive_content_check(I, hear, 3, 1, 0, include_mobs, include_objects) - if(include_objects) + var/obj/O = I + if(O.show_messages && include_objects) hear += I return hear diff --git a/code/game/objects/items/devices/aicard.dm b/code/game/objects/items/devices/aicard.dm index 356ee87f60..29c8377d43 100644 --- a/code/game/objects/items/devices/aicard.dm +++ b/code/game/objects/items/devices/aicard.dm @@ -5,6 +5,8 @@ item_state = "electronic" w_class = 2.0 slot_flags = SLOT_BELT + show_messages = 1 + var/flush = null origin_tech = list(TECH_DATA = 4, TECH_MATERIAL = 4) diff --git a/code/game/objects/items/devices/communicator/communicator.dm b/code/game/objects/items/devices/communicator/communicator.dm index 58457d55bd..11cc3a58a8 100644 --- a/code/game/objects/items/devices/communicator/communicator.dm +++ b/code/game/objects/items/devices/communicator/communicator.dm @@ -12,6 +12,7 @@ var/global/list/obj/item/device/communicator/all_communicators = list() icon_state = "communicator" w_class = 2.0 slot_flags = SLOT_ID | SLOT_BELT + show_messages = 1 origin_tech = list(TECH_ENGINEERING = 2, TECH_MAGNET = 2, TECH_BLUESPACE = 2, TECH_DATA = 2) matter = list(DEFAULT_WALL_MATERIAL = 30,"glass" = 10) diff --git a/code/game/objects/items/devices/paicard.dm b/code/game/objects/items/devices/paicard.dm index 67516404fd..fa2a8d4864 100644 --- a/code/game/objects/items/devices/paicard.dm +++ b/code/game/objects/items/devices/paicard.dm @@ -6,6 +6,8 @@ w_class = 2.0 slot_flags = SLOT_BELT origin_tech = list(TECH_DATA = 2) + show_messages = 1 + var/obj/item/device/radio/radio var/looking_for_personality = 0 var/mob/living/silicon/pai/pai diff --git a/code/game/objects/items/devices/taperecorder.dm b/code/game/objects/items/devices/taperecorder.dm index e59d3e993b..2740831046 100644 --- a/code/game/objects/items/devices/taperecorder.dm +++ b/code/game/objects/items/devices/taperecorder.dm @@ -15,10 +15,12 @@ var/list/storedinfo = new/list() var/list/timestamp = new/list() var/canprint = 1 + flags = CONDUCT throwforce = 2 throw_speed = 4 throw_range = 20 + show_messages = 1 /obj/item/device/taperecorder/hear_talk(mob/living/M as mob, msg, var/verb="says", datum/language/speaking=null) if(recording) diff --git a/code/game/objects/items/weapons/storage/storage.dm b/code/game/objects/items/weapons/storage/storage.dm index 78665633cf..fd5e6874d0 100644 --- a/code/game/objects/items/weapons/storage/storage.dm +++ b/code/game/objects/items/weapons/storage/storage.dm @@ -9,6 +9,8 @@ name = "storage" icon = 'icons/obj/storage.dmi' w_class = 3 + show_messages = 1 + var/list/can_hold = new/list() //List of objects which this item can store (if set, it can't store anything else) var/list/cant_hold = new/list() //List of objects which this item can't store (in effect only if can_hold isn't set) var/list/is_seeing = new/list() //List of mobs which are currently seeing the contents of this item's storage diff --git a/code/game/objects/objs.dm b/code/game/objects/objs.dm index 8b4e93ec4d..f94f2d5313 100644 --- a/code/game/objects/objs.dm +++ b/code/game/objects/objs.dm @@ -14,6 +14,7 @@ var/damtype = "brute" var/force = 0 var/armor_penetration = 0 + var/show_messages /obj/Destroy() processing_objects -= src diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index feb9ee8d01..d2f11e27a8 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -516,6 +516,8 @@ BLIND // can't see anything slot_flags = SLOT_ICLOTHING armor = list(melee = 0, bullet = 0, laser = 0,energy = 0, bomb = 0, bio = 0, rad = 0) w_class = 3 + show_messages = 1 + var/has_sensor = 1 //For the crew computer 2 = unable to change mode var/sensor_mode = 0 /* diff --git a/code/modules/clothing/under/accessories/storage.dm b/code/modules/clothing/under/accessories/storage.dm index a4877bb65d..2342010ce6 100644 --- a/code/modules/clothing/under/accessories/storage.dm +++ b/code/modules/clothing/under/accessories/storage.dm @@ -3,6 +3,8 @@ desc = "Used to hold things when you don't have enough hands." icon_state = "webbing" slot = "utility" + show_messages = 1 + var/slots = 3 var/obj/item/weapon/storage/internal/hold w_class = 3.0 diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index e6a0b277f6..6facb98164 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -88,10 +88,10 @@ for(var/I in see) if(isobj(I)) - spawn(0) - if(I) //It's possible that it could be deleted in the meantime. - var/obj/O = I - O.show_message( message, 1, blind_message, 2) + //spawn(0) + //if(I) //It's possible that it could be deleted in the meantime. + var/obj/O = I + O.show_message( message, 1, blind_message, 2) else if(ismob(I)) var/mob/M = I if(self_message && M==src)