diff --git a/code/ATMOSPHERICS/components/unary_devices/vent_pump.dm b/code/ATMOSPHERICS/components/unary_devices/vent_pump.dm index 8de40b636b6..736137e7b55 100644 --- a/code/ATMOSPHERICS/components/unary_devices/vent_pump.dm +++ b/code/ATMOSPHERICS/components/unary_devices/vent_pump.dm @@ -393,9 +393,9 @@ /obj/machinery/atmospherics/unary/vent_pump/examine(mob/user) - ..(user) + . = ..() if(welded) - to_chat(user, "It seems welded shut.") + . += "It seems welded shut." /obj/machinery/atmospherics/unary/vent_pump/power_change() var/old_stat = stat diff --git a/code/ATMOSPHERICS/components/unary_devices/vent_scrubber.dm b/code/ATMOSPHERICS/components/unary_devices/vent_scrubber.dm index 20218f7f2d0..5844407e777 100644 --- a/code/ATMOSPHERICS/components/unary_devices/vent_scrubber.dm +++ b/code/ATMOSPHERICS/components/unary_devices/vent_scrubber.dm @@ -65,9 +65,9 @@ return ..() /obj/machinery/atmospherics/unary/vent_pump/examine(mob/user) - ..(user) + . = ..() if(welded) - to_chat(user, "It seems welded shut.") + . += "It seems welded shut." /obj/machinery/atmospherics/unary/vent_scrubber/auto_use_power() if(!powered(power_channel)) diff --git a/code/__DEFINES/components.dm b/code/__DEFINES/components.dm index b3b86ac13e1..df957eaa11e 100644 --- a/code/__DEFINES/components.dm +++ b/code/__DEFINES/components.dm @@ -40,7 +40,7 @@ #define COMSIG_PARENT_ATTACKBY "atom_attackby" //from base of atom/attackby(): (/obj/item, /mob/living, params) #define COMPONENT_NO_AFTERATTACK 1 //Return this in response if you don't want afterattack to be called #define COMSIG_ATOM_HULK_ATTACK "hulk_attack" //from base of atom/attack_hulk(): (/mob/living/carbon/human) -#define COMSIG_PARENT_EXAMINE "atom_examine" //from base of atom/examine(): (/mob) +#define COMSIG_PARENT_EXAMINE "atom_examine" //from base of atom/examine(): (/mob, result) #define COMSIG_ATOM_GET_EXAMINE_NAME "atom_examine_name" //from base of atom/get_examine_name(): (/mob, list/overrides) //Positions for overrides list #define EXAMINE_POSITION_ARTICLE 1 diff --git a/code/datums/components/decal.dm b/code/datums/components/decal.dm index bdc1d3a2f6f..26d4653b25a 100644 --- a/code/datums/components/decal.dm +++ b/code/datums/components/decal.dm @@ -71,5 +71,5 @@ if(strength >= cleanable) qdel(src) -/datum/component/decal/proc/examine(datum/source, mob/user) - to_chat(user, description) \ No newline at end of file +/datum/component/decal/proc/examine(datum/source, mob/user, var/list/examine_list) + examine_list += description \ No newline at end of file diff --git a/code/datums/components/ducttape.dm b/code/datums/components/ducttape.dm index 5bbf99198fd..85568f7a09c 100644 --- a/code/datums/components/ducttape.dm +++ b/code/datums/components/ducttape.dm @@ -17,8 +17,8 @@ if(I.loc == user) RT.Grant(user) -/datum/component/proc/add_tape_text(datum/source, mob/user) - to_chat(user, "There's some sticky tape attached to [source].") +/datum/component/proc/add_tape_text(datum/source, mob/user, list/examine_list) + examine_list += "There's some sticky tape attached to [source]." /datum/component/ducttape/proc/add_tape_overlay(obj/item/O) tape_overlay = new('icons/obj/bureaucracy.dmi', "tape") diff --git a/code/datums/components/material_container.dm b/code/datums/components/material_container.dm index 92c8c6b108d..8d44679fa4a 100644 --- a/code/datums/components/material_container.dm +++ b/code/datums/components/material_container.dm @@ -49,13 +49,13 @@ var/mat_path = possible_mats[id] materials[id] = new mat_path() -/datum/component/material_container/proc/OnExamine(datum/source, mob/user) +/datum/component/material_container/proc/OnExamine(datum/source, mob/user, list/examine_list) if(show_on_examine) for(var/I in materials) var/datum/material/M = materials[I] var/amt = amount(M.id) if(amt) - to_chat(user, "It has [amt] units of [lowertext(M.name)] stored.") + examine_list += "It has [amt] units of [lowertext(M.name)] stored." /datum/component/material_container/proc/OnAttackBy(datum/source, obj/item/I, mob/living/user) var/list/tc = allowed_typecache diff --git a/code/game/atoms.dm b/code/game/atoms.dm index dc84c1836dd..da1ce847e54 100644 --- a/code/game/atoms.dm +++ b/code/game/atoms.dm @@ -272,7 +272,7 @@ //All atoms -/atom/proc/examine(mob/user, var/distance = -1, var/infix = "", var/suffix = "") +/atom/proc/examine(mob/user, infix = "", suffix = "") //This reformat names to get a/an properly working on item descriptions when they are bloody var/f_name = "\a [src][infix]." if(src.blood_DNA && !istype(src, /obj/effect/decal)) @@ -284,33 +284,30 @@ f_name += "blood-stained [name][infix]!" else f_name += "oil-stained [name][infix]." - - to_chat(user, "[bicon(src)] That's [f_name] [suffix]") + . = list("[bicon(src)] That's [f_name] [suffix]") if(desc) - to_chat(user, desc) + . += desc if(reagents) if(container_type & TRANSPARENT) - to_chat(user, "It contains:") + . += "It contains:" if(reagents.reagent_list.len) if(user.can_see_reagents()) //Show each individual reagent for(var/I in reagents.reagent_list) var/datum/reagent/R = I - to_chat(user, "[R.volume] units of [R.name]") + . += "[R.volume] units of [R.name]" else //Otherwise, just show the total volume if(reagents && reagents.reagent_list.len) - to_chat(user, "[reagents.total_volume] units of various reagents.") + . += "[reagents.total_volume] units of various reagents." else - to_chat(user, "Nothing. ") + . += "Nothing." else if(container_type & AMOUNT_VISIBLE) if(reagents.total_volume) - to_chat(user, "It has [reagents.total_volume] unit\s left.") + . += "It has [reagents.total_volume] unit\s left." else - to_chat(user, "It's empty.") + . += "It's empty." - SEND_SIGNAL(src, COMSIG_PARENT_EXAMINE, user) - - return distance == -1 || (get_dist(src, user) <= distance) || isobserver(user) //observers do not have a range limit + SEND_SIGNAL(src, COMSIG_PARENT_EXAMINE, user, .) /atom/proc/relaymove() return diff --git a/code/game/gamemodes/blob/theblob.dm b/code/game/gamemodes/blob/theblob.dm index ed06ec4086d..890728d9069 100644 --- a/code/game/gamemodes/blob/theblob.dm +++ b/code/game/gamemodes/blob/theblob.dm @@ -207,8 +207,8 @@ return /obj/structure/blob/examine(mob/user) - ..(user) - to_chat(user, "It looks like it's made of [get_chem_name()].") + . = ..() + . += "It looks like it's made of [get_chem_name()]." /obj/structure/blob/proc/get_chem_name() diff --git a/code/game/gamemodes/cult/cult_items.dm b/code/game/gamemodes/cult/cult_items.dm index 7ef5baced97..0d70822dd01 100644 --- a/code/game/gamemodes/cult/cult_items.dm +++ b/code/game/gamemodes/cult/cult_items.dm @@ -281,9 +281,9 @@ /obj/item/cult_shift/examine(mob/user) . = ..() if(uses) - to_chat(user, "It has [uses] uses remaining.") + . += "It has [uses] uses remaining." else - to_chat(user, "It seems drained.") + . += "It seems drained." /obj/item/cult_shift/proc/handle_teleport_grab(turf/T, mob/user) var/mob/living/carbon/C = user diff --git a/code/game/gamemodes/cult/cult_structures.dm b/code/game/gamemodes/cult/cult_structures.dm index c6a6a3b7490..0620b97718a 100644 --- a/code/game/gamemodes/cult/cult_structures.dm +++ b/code/game/gamemodes/cult/cult_structures.dm @@ -50,8 +50,8 @@ /obj/structure/cult/functional/examine(mob/user) . = ..() if(iscultist(user) && cooldowntime > world.time) - to_chat(user, "The magic in [src] is weak, it will be ready to use again in [getETA()].") - to_chat(user, "\The [src] is [anchored ? "":"not "]secured to the floor.") + . += "The magic in [src] is weak, it will be ready to use again in [getETA()]." + . += "\The [src] is [anchored ? "":"not "]secured to the floor." /obj/structure/cult/functional/attackby(obj/I, mob/user, params) if(HULK in user.mutations) diff --git a/code/game/gamemodes/cult/ritual.dm b/code/game/gamemodes/cult/ritual.dm index fb6bb95a4a8..24db67c952b 100644 --- a/code/game/gamemodes/cult/ritual.dm +++ b/code/game/gamemodes/cult/ritual.dm @@ -46,11 +46,11 @@ ..() /obj/item/tome/examine(mob/user) - ..() + . = ..() if(iscultist(user) || user.stat == DEAD) - to_chat(user, "The scriptures of [SSticker.cultdat.entity_title3]. Allows the scribing of runes and access to the knowledge archives of the cult of [SSticker.cultdat.entity_name].") - to_chat(user, "Striking another cultist with it will purge holy water from them.") - to_chat(user, "Striking a noncultist, however, will sear their flesh.") + . += "The scriptures of [SSticker.cultdat.entity_title3]. Allows the scribing of runes and access to the knowledge archives of the cult of [SSticker.cultdat.entity_name]." + . += "Striking another cultist with it will purge holy water from them." + . += "Striking a noncultist, however, will sear their flesh." /obj/item/tome/attack(mob/living/M, mob/living/user) if(!istype(M)) diff --git a/code/game/gamemodes/cult/runes.dm b/code/game/gamemodes/cult/runes.dm index 56f07d52826..4f647e2d576 100644 --- a/code/game/gamemodes/cult/runes.dm +++ b/code/game/gamemodes/cult/runes.dm @@ -50,13 +50,13 @@ To draw a rune, use an arcane tome. AI.client.images += blood /obj/effect/rune/examine(mob/user) - ..() + . = ..() if(iscultist(user) || user.stat == DEAD) //If they're a cultist or a ghost, tell them the effects - to_chat(user, "Name: [cultist_name]") - to_chat(user, "Effects: [capitalize(cultist_desc)]") - to_chat(user, "Required Acolytes: [req_cultists]") + . += "Name: [cultist_name]" + . += "Effects: [capitalize(cultist_desc)]" + . += "Required Acolytes: [req_cultists]" if(req_keyword && keyword) - to_chat(user, "Keyword: [keyword]") + . += "Keyword: [keyword]" /obj/effect/rune/attackby(obj/I, mob/user, params) if(istype(I, /obj/item/tome) && iscultist(user)) @@ -754,9 +754,9 @@ var/list/teleport_runes = list() var/mob/living/affecting = null /obj/effect/rune/astral/examine(mob/user) - ..() + . = ..() if(affecting) - to_chat(user, "A translucent field encases [user] above the rune!") + . += "A translucent field encases [user] above the rune!" /obj/effect/rune/astral/can_invoke(mob/living/user) if(rune_in_use) @@ -826,9 +826,9 @@ var/list/teleport_runes = list() invoke_damage = 2 /obj/effect/rune/wall/examine(mob/user) - ..() + . = ..() if(density) - to_chat(user, "There is a barely perceptible shimmering of the air above [src].") + . += "There is a barely perceptible shimmering of the air above [src]." /obj/effect/rune/wall/invoke(var/list/invokers) var/mob/living/user = invokers[1] diff --git a/code/game/gamemodes/cult/talisman.dm b/code/game/gamemodes/cult/talisman.dm index 179425d320d..f7aaf2c1ebd 100644 --- a/code/game/gamemodes/cult/talisman.dm +++ b/code/game/gamemodes/cult/talisman.dm @@ -12,12 +12,13 @@ SEND_SIGNAL(src, COMSIG_OBJ_UPDATE_ICON) /obj/item/paper/talisman/examine(mob/user) + . = ..() if(iscultist(user) || user.stat == DEAD) - to_chat(user, "Name: [cultist_name]") - to_chat(user, "Effect: [cultist_desc]") - to_chat(user, "Uses Remaining: [uses]") + . += "Name: [cultist_name]" + . += "Effect: [cultist_desc]" + . += "Uses Remaining: [uses]" else - to_chat(user, "You see strange symbols on the paper. Are they supposed to mean something?") + . += "You see strange symbols on the paper. Are they supposed to mean something?" /obj/item/paper/talisman/attack_self(mob/living/user) if(!iscultist(user)) diff --git a/code/game/gamemodes/devil/true_devil/_true_devil.dm b/code/game/gamemodes/devil/true_devil/_true_devil.dm index 93b307f0105..197524c0e38 100644 --- a/code/game/gamemodes/devil/true_devil/_true_devil.dm +++ b/code/game/gamemodes/devil/true_devil/_true_devil.dm @@ -93,7 +93,7 @@ else if(health < (maxHealth/2)) msg += "You can see hellfire inside of it's wounds.\n" msg += "*---------*" - to_chat(user, msg) + . = list(msg) /mob/living/carbon/true_devil/IsAdvancedToolUser() diff --git a/code/game/gamemodes/miniantags/abduction/abduction_gear.dm b/code/game/gamemodes/miniantags/abduction/abduction_gear.dm index 232396d951a..539df377b71 100644 --- a/code/game/gamemodes/miniantags/abduction/abduction_gear.dm +++ b/code/game/gamemodes/miniantags/abduction/abduction_gear.dm @@ -563,16 +563,16 @@ Congratulations! You are now trained for invasive xenobiology research!"} . = ..() /obj/item/abductor_baton/examine(mob/user) - ..() + . = ..() switch(mode) if(BATON_STUN) - to_chat(user, "The baton is in stun mode.") + . += "The baton is in stun mode." if(BATON_SLEEP) - to_chat(user, "The baton is in sleep inducement mode.") + . += "The baton is in sleep inducement mode." if(BATON_CUFF) - to_chat(user, "The baton is in restraining mode.") + . += "The baton is in restraining mode." if(BATON_PROBE) - to_chat(user, "The baton is in probing mode.") + . += "The baton is in probing mode." /obj/item/radio/headset/abductor name = "alien headset" diff --git a/code/game/gamemodes/miniantags/guardian/guardian.dm b/code/game/gamemodes/miniantags/guardian/guardian.dm index fc7fcce72e0..a527f055466 100644 --- a/code/game/gamemodes/miniantags/guardian/guardian.dm +++ b/code/game/gamemodes/miniantags/guardian/guardian.dm @@ -309,7 +309,7 @@ /obj/item/guardiancreator/examine(mob/user, distance) . = ..() if(used) - to_chat(user, "[used_message]") + . += "[used_message]" /obj/item/guardiancreator/proc/spawn_guardian(mob/living/user, key) var/guardian_type = "Standard" diff --git a/code/game/gamemodes/miniantags/guardian/types/bomb.dm b/code/game/gamemodes/miniantags/guardian/types/bomb.dm index fbe4458693f..b69487644f0 100644 --- a/code/game/gamemodes/miniantags/guardian/types/bomb.dm +++ b/code/game/gamemodes/miniantags/guardian/types/bomb.dm @@ -82,6 +82,6 @@ return FALSE // Disarm or blow up. No picking up /obj/item/guardian_bomb/examine(mob/user) - stored_obj.examine(user) - if(get_dist(user,src) <= 2) - to_chat(user, "Looks odd!") + . = stored_obj.examine(user) + if(get_dist(user, src) <= 2) + . += "Looks odd!" diff --git a/code/game/gamemodes/miniantags/morph/morph.dm b/code/game/gamemodes/miniantags/morph/morph.dm index 1da936b64ee..ef90f44f4a0 100644 --- a/code/game/gamemodes/miniantags/morph/morph.dm +++ b/code/game/gamemodes/miniantags/morph/morph.dm @@ -38,6 +38,8 @@ var/atom/movable/form = null var/morph_time = 0 + var/list/examine_text_list + var/playstyle_string = "You are a morph.
As an abomination created primarily with changeling cells, \ you may take the form of anything nearby by shift-clicking it. This process will alert any nearby \ observers, and can only be performed once every five seconds.
While morphed, you move faster, but do \ @@ -57,16 +59,11 @@ /mob/living/simple_animal/hostile/morph/examine(mob/user) if(morphed) - if(form) - form.examine(user) // Refactor examine to return desc so it's static? Not sure if worth it - // If the object you've disguised as has been deleted, your cover's probably blown - else - ..() - if(get_dist(user,src)<=3) - to_chat(user, "It doesn't look quite right...") + . = examine_text_list.Copy() + if(get_dist(user, src) <= 3) + . += "It doesn't look quite right..." else - ..() - return + . = ..() /mob/living/simple_animal/hostile/morph/proc/allowed(atom/movable/A) // make it into property/proc ? not sure if worth it if(istype(A,/obj/screen)) @@ -109,7 +106,7 @@ melee_damage_lower = 5 melee_damage_upper = 5 speed = 0 - + examine_text_list = form.examine(src) morph_time = world.time + MORPH_COOLDOWN return @@ -118,7 +115,7 @@ return morphed = 0 form = null - + examine_text_list = null // Free that memory visible_message("[src] suddenly collapses in on itself, dissolving into a pile of green flesh!", \ "You reform to your normal body.") name = initial(name) diff --git a/code/game/gamemodes/miniantags/revenant/revenant.dm b/code/game/gamemodes/miniantags/revenant/revenant.dm index f0d8ede6634..e363c849eb9 100644 --- a/code/game/gamemodes/miniantags/revenant/revenant.dm +++ b/code/game/gamemodes/miniantags/revenant/revenant.dm @@ -374,11 +374,11 @@ qdel(src) /obj/item/ectoplasm/revenant/examine(mob/user) - ..(user) + . = ..() if(inert) - to_chat(user, "It seems inert.") + . += "It seems inert." else if(reforming) - to_chat(user, "It is shifting and distorted. It would be wise to destroy this.") + . += "It is shifting and distorted. It would be wise to destroy this." /obj/item/ectoplasm/revenant/proc/reform() if(inert || !src) diff --git a/code/game/gamemodes/nuclear/pinpointer.dm b/code/game/gamemodes/nuclear/pinpointer.dm index 07ee2219157..57be7349aa7 100644 --- a/code/game/gamemodes/nuclear/pinpointer.dm +++ b/code/game/gamemodes/nuclear/pinpointer.dm @@ -77,13 +77,11 @@ .() /obj/item/pinpointer/examine(mob/user) - ..(user) - if(!shows_nuke_timer) - return - - for(var/obj/machinery/nuclearbomb/bomb in GLOB.machines) - if(bomb.timing) - to_chat(user, "Extreme danger. Arming signal detected. Time remaining: [bomb.timeleft]") + . = ..() + if(shows_nuke_timer) + for(var/obj/machinery/nuclearbomb/bomb in GLOB.machines) + if(bomb.timing) + . += "Extreme danger. Arming signal detected. Time remaining: [bomb.timeleft]" /obj/item/pinpointer/advpinpointer name = "advanced pinpointer" @@ -310,12 +308,12 @@ return 0 /obj/item/pinpointer/operative/examine(mob/user) - ..() + . = ..() if(active) if(nearest_op) - to_chat(user, "Nearest operative detected is [nearest_op.real_name].") + . += "Nearest operative detected is [nearest_op.real_name]." else - to_chat(user, "No operatives detected within scanning range.") + . += "No operatives detected within scanning range." /obj/item/pinpointer/crew name = "crew pinpointer" @@ -395,9 +393,6 @@ spawn(5) .() -/obj/item/pinpointer/crew/examine(mob/user) - ..(user) - /obj/item/pinpointer/crew/centcom name = "centcom pinpointer" desc = "A handheld tracking device that tracks crew based on remote centcom sensors." diff --git a/code/game/gamemodes/wizard/soulstone.dm b/code/game/gamemodes/wizard/soulstone.dm index a71b51c58f0..f67a8f28a5d 100644 --- a/code/game/gamemodes/wizard/soulstone.dm +++ b/code/game/gamemodes/wizard/soulstone.dm @@ -181,13 +181,13 @@ desc = "A wicked machine used by those skilled in magical arts. It is inactive" /obj/structure/constructshell/examine(mob/user) - if(..(user, 0)) - if(iscultist(user) || iswizard(user) || user.stat == DEAD) - to_chat(user, "A construct shell, used to house bound souls from a soulstone.") - to_chat(user, "Placing a soulstone with a soul into this shell allows you to produce your choice of the following:") - to_chat(user, "An Artificer, which can produce more shells and soulstones, as well as fortifications.") - to_chat(user, "A Wraith, which does high damage and can jaunt through walls, though it is quite fragile.") - to_chat(user, "A Juggernaut, which is very hard to kill and can produce temporary walls, but is slow.") + . = ..() + if(in_range(user, src) && (iscultist(user) || iswizard(user) || user.stat == DEAD)) + . += "A construct shell, used to house bound souls from a soulstone." + . += "Placing a soulstone with a soul into this shell allows you to produce your choice of the following:" + . += "An Artificer, which can produce more shells and soulstones, as well as fortifications." + . += "A Wraith, which does high damage and can jaunt through walls, though it is quite fragile." + . += "A Juggernaut, which is very hard to kill and can produce temporary walls, but is slow." /obj/structure/constructshell/attackby(obj/item/O as obj, mob/user as mob, params) if(istype(O, /obj/item/soulstone)) diff --git a/code/game/machinery/alarm.dm b/code/game/machinery/alarm.dm index 0fc8581cd2d..8a445814ca2 100644 --- a/code/game/machinery/alarm.dm +++ b/code/game/machinery/alarm.dm @@ -1033,11 +1033,11 @@ update_icon() /obj/machinery/alarm/examine(mob/user) - ..(user) + . = ..() if(buildstage < 2) - to_chat(user, "It is not wired.") + . += "It is not wired." if(buildstage < 1) - to_chat(user, "The circuit is missing.") + . += "The circuit is missing." /obj/machinery/alarm/all_access name = "all-access air alarm" diff --git a/code/game/machinery/atmoalter/meter.dm b/code/game/machinery/atmoalter/meter.dm index 4777cdcc5f2..f7e1dc15240 100644 --- a/code/game/machinery/atmoalter/meter.dm +++ b/code/game/machinery/atmoalter/meter.dm @@ -113,7 +113,7 @@ else t += "The connect error light is blinking." - to_chat(user, t) + . = list(t) /obj/machinery/meter/Click() if(istype(usr, /mob/living/silicon/ai)) // ghosts can call ..() for examine diff --git a/code/game/machinery/atmoalter/portable_atmospherics.dm b/code/game/machinery/atmoalter/portable_atmospherics.dm index 71e1310f96b..eabd81c8e04 100644 --- a/code/game/machinery/atmoalter/portable_atmospherics.dm +++ b/code/game/machinery/atmoalter/portable_atmospherics.dm @@ -95,9 +95,9 @@ replace_tank(user, TRUE) /obj/machinery/portable_atmospherics/examine(mob/user) - ..() + . = ..() if(holding) - to_chat(user, "\The [src] contains [holding]. Alt-click [src] to remove it.") + . += "\The [src] contains [holding]. Alt-click [src] to remove it." /obj/machinery/portable_atmospherics/proc/replace_tank(mob/living/user, close_valve, obj/item/tank/new_tank) if(holding) diff --git a/code/game/machinery/cell_charger.dm b/code/game/machinery/cell_charger.dm index 0d4455399b0..813120b7c42 100644 --- a/code/game/machinery/cell_charger.dm +++ b/code/game/machinery/cell_charger.dm @@ -32,10 +32,10 @@ overlays.Cut() /obj/machinery/cell_charger/examine(mob/user) - ..() - to_chat(user, "There's [charging ? "a" : "no"] cell in the charger.") + . = ..() + . += "There's [charging ? "a" : "no"] cell in the charger." if(charging) - to_chat(user, "Current charge: [round(charging.percent(), 1)]%") + . += "Current charge: [round(charging.percent(), 1)]%" /obj/machinery/cell_charger/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/stock_parts/cell)) diff --git a/code/game/machinery/chiller.dm b/code/game/machinery/chiller.dm index d2f76a7c42a..afb17f3c90a 100644 --- a/code/game/machinery/chiller.dm +++ b/code/game/machinery/chiller.dm @@ -25,12 +25,12 @@ return /obj/machinery/space_heater/air_conditioner/examine(mob/user) - ..(user) - to_chat(user, "The air conditioner is [on ? "on" : "off"] and the hatch is [open ? "open" : "closed"].") + . = ..() + . += "The air conditioner is [on ? "on" : "off"] and the hatch is [open ? "open" : "closed"]." if(open) - to_chat(user, "The power cell is [cell ? "installed" : "missing"].") + . += "The power cell is [cell ? "installed" : "missing"]." else - to_chat(user, "The charge meter reads [cell ? round(cell.percent(),1) : 0]%") + . += "The charge meter reads [cell ? round(cell.percent(),1) : 0]%" /obj/machinery/space_heater/air_conditioner/emp_act(severity) diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm index ca0eff0aa95..26e6b8f4d7f 100644 --- a/code/game/machinery/cloning.dm +++ b/code/game/machinery/cloning.dm @@ -164,19 +164,19 @@ to_chat(user, "You flip the write-protect tab to [read_only ? "protected" : "unprotected"].") /obj/item/disk/data/examine(mob/user) - ..(user) - to_chat(user, "The write-protect tab is set to [read_only ? "protected" : "unprotected"].") + . = ..() + . += "The write-protect tab is set to [read_only ? "protected" : "unprotected"]." //Clonepod /obj/machinery/clonepod/examine(mob/user) - ..() + . = ..() if(mess) - to_chat(user, "It's filled with blood and viscera. You swear you can see it moving...") + . += "It's filled with blood and viscera. You swear you can see it moving..." if(!occupant || stat & (NOPOWER|BROKEN)) return if(occupant && occupant.stat != DEAD) - to_chat(user, "Current clone cycle is [round(get_completion())]% complete.") + . += "Current clone cycle is [round(get_completion())]% complete." /obj/machinery/clonepod/return_air() //non-reactive air var/datum/gas_mixture/GM = new diff --git a/code/game/machinery/computer/arcade.dm b/code/game/machinery/computer/arcade.dm index 695e01103ea..a56d5c40236 100644 --- a/code/game/machinery/computer/arcade.dm +++ b/code/game/machinery/computer/arcade.dm @@ -980,13 +980,12 @@ var/active = 0 //if the ship is on /obj/item/orion_ship/examine(mob/user) - ..() - if(!(in_range(user, src))) - return - if(!active) - to_chat(user, "There's a little switch on the bottom. It's flipped down.") - else - to_chat(user, "There's a little switch on the bottom. It's flipped up.") + . = ..() + if(in_range(user, src)) + if(!active) + . += "There's a little switch on the bottom. It's flipped down." + else + . += "There's a little switch on the bottom. It's flipped up." /obj/item/orion_ship/attack_self(mob/user) //Minibomb-level explosion. Should probably be more because of how hard it is to survive the machine! Also, just over a 5-second fuse if(active) diff --git a/code/game/machinery/computer/buildandrepair.dm b/code/game/machinery/computer/buildandrepair.dm index a34a49ca051..c0384e63b94 100644 --- a/code/game/machinery/computer/buildandrepair.dm +++ b/code/game/machinery/computer/buildandrepair.dm @@ -57,7 +57,7 @@ board_type = "machine" /obj/item/circuitboard/examine(mob/user) - ..() + . = ..() if(LAZYLEN(req_components)) var/list/nice_list = list() for(var/B in req_components) @@ -65,7 +65,7 @@ if(!ispath(A)) continue nice_list += list("[req_components[A]] [initial(A.name)]") - to_chat(user,"Required components: [english_list(nice_list)].") + . += "Required components: [english_list(nice_list)]." /obj/item/circuitboard/message_monitor name = "Circuit board (Message Monitor)" diff --git a/code/game/machinery/defib_mount.dm b/code/game/machinery/defib_mount.dm index 77d68590efa..4f27dfa4be5 100644 --- a/code/game/machinery/defib_mount.dm +++ b/code/game/machinery/defib_mount.dm @@ -42,15 +42,15 @@ return ..() /obj/machinery/defibrillator_mount/examine(mob/user) - ..() + . = ..() if(defib) - to_chat(user, "There is a defib unit hooked up. Alt-click to remove it.") + . += "There is a defib unit hooked up. Alt-click to remove it." if(security_level >= SEC_LEVEL_RED) - to_chat(user, "Due to a security situation, its locking clamps can be toggled by swiping any ID.") + . += "Due to a security situation, its locking clamps can be toggled by swiping any ID." else - to_chat(user, "Its locking clamps can be [clamps_locked ? "dis" : ""]engaged by swiping an ID with access.") + . += "Its locking clamps can be [clamps_locked ? "dis" : ""]engaged by swiping an ID with access." else - to_chat(user, "There are a pair of bolts in the defib unit housing securing the [src] to the wall.") + . += "There are a pair of bolts in the defib unit housing securing the [src] to the wall." /obj/machinery/defibrillator_mount/process() if(defib && defib.bcell && defib.bcell.charge < defib.bcell.maxcharge && is_operational()) diff --git a/code/game/machinery/deployable.dm b/code/game/machinery/deployable.dm index 6785c5ed8ff..4d8b3280599 100644 --- a/code/game/machinery/deployable.dm +++ b/code/game/machinery/deployable.dm @@ -183,7 +183,7 @@ /obj/item/grenade/barrier/examine(mob/user) . = ..() - to_chat(user, "Alt-click to toggle modes.") + . += "Alt-click to toggle modes." /obj/item/grenade/barrier/AltClick(mob/living/carbon/user) if(!istype(user) || !user.Adjacent(src) || user.incapacitated()) diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index a80209dea65..5b4742de317 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -501,38 +501,38 @@ About the new airlock wires panel: update_icon(AIRLOCK_CLOSED) /obj/machinery/door/airlock/examine(mob/user) - ..() + . = ..() if(emagged) - to_chat(user, "Its access panel is smoking slightly.") + . += "Its access panel is smoking slightly." if(note) if(!in_range(user, src)) - to_chat(user, "There's a [note.name] pinned to the front. You can't [note_type() == "note" ? "read" : "see"] it from here.") + . += "There's a [note.name] pinned to the front. You can't [note_type() == "note" ? "read" : "see"] it from here." else - to_chat(user, "There's a [note.name] pinned to the front...") + . += "There's a [note.name] pinned to the front..." note.examine(user) - to_chat(user, "Use an empty hand on the airlock on grab mode to remove [note.name].") + . += "Use an empty hand on the airlock on grab mode to remove [note.name]." if(panel_open) switch(security_level) if(AIRLOCK_SECURITY_NONE) - to_chat(user, "Its wires are exposed!") + . += "Its wires are exposed!" if(AIRLOCK_SECURITY_METAL) - to_chat(user, "Its wires are hidden behind a welded metal cover.") + . += "Its wires are hidden behind a welded metal cover." if(AIRLOCK_SECURITY_PLASTEEL_I_S) - to_chat(user, "There is some shredded plasteel inside.") + . += "There is some shredded plasteel inside." if(AIRLOCK_SECURITY_PLASTEEL_I) - to_chat(user, "Its wires are behind an inner layer of plasteel.") + . += "Its wires are behind an inner layer of plasteel." if(AIRLOCK_SECURITY_PLASTEEL_O_S) - to_chat(user, "There is some shredded plasteel inside.") + . += "There is some shredded plasteel inside." if(AIRLOCK_SECURITY_PLASTEEL_O) - to_chat(user, "There is a welded plasteel cover hiding its wires.") + . += "There is a welded plasteel cover hiding its wires." if(AIRLOCK_SECURITY_PLASTEEL) - to_chat(user, "There is a protective grille over its panel.") + . += "There is a protective grille over its panel." else if(security_level) if(security_level == AIRLOCK_SECURITY_METAL) - to_chat(user, "It looks a bit stronger.") + . += "It looks a bit stronger." else - to_chat(user, "It looks very robust.") + . += "It looks very robust." /obj/machinery/door/airlock/attack_ghost(mob/user) if(panel_open) diff --git a/code/game/machinery/doors/firedoor.dm b/code/game/machinery/doors/firedoor.dm index 773c54d2808..ee304b8eca1 100644 --- a/code/game/machinery/doors/firedoor.dm +++ b/code/game/machinery/doors/firedoor.dm @@ -33,15 +33,15 @@ var/active_alarm = FALSE /obj/machinery/door/firedoor/examine(mob/user) - ..() + . = ..() if(!density) - to_chat(user, "It is open, but could be pried closed.") + . += "It is open, but could be pried closed." else if(!welded) - to_chat(user, "It is closed, but could be pried open. Deconstruction would require it to be welded shut.") + . += "It is closed, but could be pried open. Deconstruction would require it to be welded shut." else if(boltslocked) - to_chat(user, "It is welded shut. The floor bolts have been locked by screws.") + . += "It is welded shut. The floor bolts have been locked by screws." else - to_chat(user, "The bolt locks have been unscrewed, but the bolts themselves are still wrenched to the floor.") + . += "The bolt locks have been unscrewed, but the bolts themselves are still wrenched to the floor." /obj/machinery/door/firedoor/closed icon_state = "door_closed" @@ -289,18 +289,18 @@ var/reinforced = 0 /obj/structure/firelock_frame/examine(mob/user) - ..() + . = ..() switch(constructionStep) if(CONSTRUCTION_PANEL_OPEN) - to_chat(user, "It is unbolted from the floor. A small loosely connected metal plate is covering the wires.") + . += "It is unbolted from the floor. A small loosely connected metal plate is covering the wires." if(!reinforced) - to_chat(user, "It could be reinforced with plasteel.") + . += "It could be reinforced with plasteel." if(CONSTRUCTION_WIRES_EXPOSED) - to_chat(user, "The maintenance plate has been pried away, and wires are trailing.") + . += "The maintenance plate has been pried away, and wires are trailing." if(CONSTRUCTION_GUTTED) - to_chat(user, "The maintenance panel is missing wires and the circuit board is loosely connected.") + . += "The maintenance panel is missing wires and the circuit board is loosely connected." if(CONSTRUCTION_NOCIRCUIT) - to_chat(user, "There are no firelock electronics in the frame. The frame could be cut apart.") + . += "There are no firelock electronics in the frame. The frame could be cut apart." /obj/structure/firelock_frame/update_icon() ..() diff --git a/code/game/machinery/doors/windowdoor.dm b/code/game/machinery/doors/windowdoor.dm index 549b5be3929..84a3fba6632 100644 --- a/code/game/machinery/doors/windowdoor.dm +++ b/code/game/machinery/doors/windowdoor.dm @@ -54,9 +54,9 @@ icon_state = "[base_state]open" /obj/machinery/door/window/examine(mob/user) - ..() + . = ..() if(emagged) - to_chat(user, "Its access panel is smoking slightly.") + . += "Its access panel is smoking slightly." /obj/machinery/door/window/proc/open_and_close() open() diff --git a/code/game/machinery/guestpass.dm b/code/game/machinery/guestpass.dm index 450260f5f79..4bc080fca67 100644 --- a/code/game/machinery/guestpass.dm +++ b/code/game/machinery/guestpass.dm @@ -17,15 +17,15 @@ return temp_access /obj/item/card/id/guest/examine(mob/user) - ..(user) + . = ..() if(world.time < expiration_time) - to_chat(user, "This pass expires at [station_time_timestamp("hh:mm:ss", expiration_time)].") + . += "This pass expires at [station_time_timestamp("hh:mm:ss", expiration_time)]." else - to_chat(user, "It expired at [station_time_timestamp("hh:mm:ss", expiration_time)].") - to_chat(user, "It grants access to following areas:") + . += "It expired at [station_time_timestamp("hh:mm:ss", expiration_time)]." + . += "It grants access to following areas:" for(var/A in temp_access) - to_chat(user, "[get_access_desc(A)].") - to_chat(user, "Issuing reason: [reason].") + . += "[get_access_desc(A)]." + . += "Issuing reason: [reason]." ///////////////////////////////////////////// //Guest pass terminal//////////////////////// diff --git a/code/game/machinery/hologram.dm b/code/game/machinery/hologram.dm index e6d967c8eb4..fc23507d73b 100644 --- a/code/game/machinery/hologram.dm +++ b/code/game/machinery/hologram.dm @@ -479,8 +479,9 @@ For the other part of the code, check silicon say.dm. Particularly robot talk.*/ /obj/effect/overlay/holo_pad_hologram/examine(mob/user) if(Impersonation) - return Impersonation.examine(user) - return ..() + . = Impersonation.examine(user) + else + . = ..() /obj/effect/overlay/holoray diff --git a/code/game/machinery/iv_drip.dm b/code/game/machinery/iv_drip.dm index f3be556a184..144b441d2de 100644 --- a/code/game/machinery/iv_drip.dm +++ b/code/game/machinery/iv_drip.dm @@ -56,9 +56,9 @@ return ..() /obj/machinery/iv_drip/examine(mob/user) - ..(user) + . = ..() if(bag) - bag.examine(user) + . += bag.examine(user) /obj/machinery/iv_drip/Move(NewLoc, direct) . = ..() diff --git a/code/game/machinery/lightswitch.dm b/code/game/machinery/lightswitch.dm index ee6bd060c16..b1e335c1ce9 100644 --- a/code/game/machinery/lightswitch.dm +++ b/code/game/machinery/lightswitch.dm @@ -70,8 +70,8 @@ icon_state = "light0" /obj/machinery/light_switch/examine(mob/user) - if(..(user, 1)) - to_chat(user, "A light switch. It is [on? "on" : "off"].") + . = ..() + . += "A light switch. It is [on? "on" : "off"]." /obj/machinery/light_switch/attack_ghost(mob/user) if(user.can_advanced_admin_interact()) diff --git a/code/game/machinery/machinery.dm b/code/game/machinery/machinery.dm index fad3f21c3fc..4129af82a5d 100644 --- a/code/game/machinery/machinery.dm +++ b/code/game/machinery/machinery.dm @@ -490,27 +490,27 @@ Class Procs: return 0 /obj/machinery/proc/display_parts(mob/user) - to_chat(user, "Following parts detected in the machine:") + . = list("Following parts detected in the machine:") for(var/obj/item/C in component_parts) - to_chat(user, "[bicon(C)] [C.name]") + . += "[bicon(C)] [C.name]" /obj/machinery/examine(mob/user) - ..() + . = ..() if(stat & BROKEN) - to_chat(user, "It looks broken and non-functional.") + . += "It looks broken and non-functional." if(!(resistance_flags & INDESTRUCTIBLE)) if(burn_state == ON_FIRE) - to_chat(user, "It's on fire!") + . += "It's on fire!" var/healthpercent = (obj_integrity/max_integrity) * 100 switch(healthpercent) if(50 to 99) - to_chat(user, "It looks slightly damaged.") + . += "It looks slightly damaged." if(25 to 50) - to_chat(user, "It appears heavily damaged.") + . += "It appears heavily damaged." if(0 to 25) - to_chat(user, "It's falling apart!") + . += "It's falling apart!" if(user.research_scanner && component_parts) - display_parts(user) + . += display_parts(user) /obj/machinery/proc/on_assess_perp(mob/living/carbon/human/perp) return 0 diff --git a/code/game/machinery/recharger.dm b/code/game/machinery/recharger.dm index 5abfc313047..ff5410f6953 100644 --- a/code/game/machinery/recharger.dm +++ b/code/game/machinery/recharger.dm @@ -177,21 +177,21 @@ icon_state = icon_state_idle /obj/machinery/recharger/examine(mob/user) - ..() + . = ..() if(charging && (!in_range(user, src) && !issilicon(user) && !isobserver(user))) - to_chat(user, "You're too far away to examine [src]'s contents and display!") + . += "You're too far away to examine [src]'s contents and display!" return if(charging) - to_chat(user, "\The [src] contains:") - to_chat(user, "- \A [charging].") + . += "\The [src] contains:" + . += "- \A [charging]." if(!(stat & (NOPOWER|BROKEN))) var/obj/item/stock_parts/cell/C = charging.get_cell() - to_chat(user, "The status display reads:") + . += "The status display reads:" if(using_power) - to_chat(user, "- Recharging [(C.chargerate/C.maxcharge)*100]% cell charge per cycle.") + . += "- Recharging [(C.chargerate/C.maxcharge)*100]% cell charge per cycle." if(charging) - to_chat(user, "- \The [charging]'s cell is at [C.percent()]%.") + . += "- \The [charging]'s cell is at [C.percent()]%." // Atlantis: No need for that copy-pasta code, just use var to store icon_states instead. /obj/machinery/recharger/wallcharger diff --git a/code/game/machinery/recycler.dm b/code/game/machinery/recycler.dm index 99d3b135a08..eb3052dd909 100644 --- a/code/game/machinery/recycler.dm +++ b/code/game/machinery/recycler.dm @@ -41,10 +41,10 @@ var/const/SAFETY_COOLDOWN = 100 amount_produced = min(100, amt_made) /obj/machinery/recycler/examine(mob/user) - ..(user) - to_chat(user, "The power light is [(stat & NOPOWER) ? "off" : "on"].") - to_chat(user, "The safety-mode light is [safety_mode ? "on" : "off"].") - to_chat(user, "The safety-sensors status light is [emagged ? "off" : "on"].") + . = ..() + . += "The power light is [(stat & NOPOWER) ? "off" : "on"]." + . += "The safety-mode light is [safety_mode ? "on" : "off"]." + . += "The safety-sensors status light is [emagged ? "off" : "on"]." /obj/machinery/recycler/power_change() ..() diff --git a/code/game/machinery/snow_machine.dm b/code/game/machinery/snow_machine.dm index 2ae3bf22977..cc59f0a3017 100644 --- a/code/game/machinery/snow_machine.dm +++ b/code/game/machinery/snow_machine.dm @@ -25,8 +25,8 @@ RefreshParts() /obj/machinery/snow_machine/examine(mob/user) - ..() - to_chat(user, "The internal reservoir indicates it is [infinite_snow ? "100" : round(reagents.total_volume / reagents.maximum_volume * 100)]% full.") + . = ..() + . += "The internal reservoir indicates it is [infinite_snow ? "100" : round(reagents.total_volume / reagents.maximum_volume * 100)]% full." /obj/machinery/snow_machine/RefreshParts() power_efficiency = 0 diff --git a/code/game/machinery/spaceheater.dm b/code/game/machinery/spaceheater.dm index ccba902b058..3fde4116fa3 100644 --- a/code/game/machinery/spaceheater.dm +++ b/code/game/machinery/spaceheater.dm @@ -35,12 +35,12 @@ return /obj/machinery/space_heater/examine(mob/user) - ..(user) - to_chat(user, "The heater is [on ? "on" : "off"] and the hatch is [open ? "open" : "closed"].") + . = ..() + . += "The heater is [on ? "on" : "off"] and the hatch is [open ? "open" : "closed"]." if(open) - to_chat(user, "The power cell is [cell ? "installed" : "missing"].") + . += "The power cell is [cell ? "installed" : "missing"]." else - to_chat(user, "The charge meter reads [cell ? round(cell.percent(),1) : 0]%") + . += "The charge meter reads [cell ? round(cell.percent(),1) : 0]%" /obj/machinery/space_heater/emp_act(severity) if(stat & (BROKEN|NOPOWER)) diff --git a/code/game/machinery/status_display.dm b/code/game/machinery/status_display.dm index 642676c6eff..94d1162349f 100644 --- a/code/game/machinery/status_display.dm +++ b/code/game/machinery/status_display.dm @@ -136,9 +136,9 @@ return 0 /obj/machinery/status_display/examine(mob/user) - . = ..(user) + . = ..() if(mode != STATUS_DISPLAY_BLANK && mode != STATUS_DISPLAY_ALERT) - to_chat(user, "The display says:
\t[sanitize(message1)]
\t[sanitize(message2)]") + . += "The display says:
\t[sanitize(message1)]
\t[sanitize(message2)]" /obj/machinery/status_display/proc/set_message(m1, m2) if(m1) diff --git a/code/game/machinery/syndicatebomb.dm b/code/game/machinery/syndicatebomb.dm index 3630beb1f6c..b2692b6621b 100644 --- a/code/game/machinery/syndicatebomb.dm +++ b/code/game/machinery/syndicatebomb.dm @@ -90,8 +90,8 @@ return ..() /obj/machinery/syndicatebomb/examine(mob/user) - ..(user) - to_chat(user, "A digital display on it reads \"[seconds_remaining()]\".") + . = ..() + . += "A digital display on it reads \"[seconds_remaining()]\"." /obj/machinery/syndicatebomb/update_icon() icon_state = "[initial(icon_state)][active ? "-active" : "-inactive"][open_panel ? "-wires" : ""]" diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index 517d6dd4019..8e6afaf0a20 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -169,23 +169,23 @@ radio.subspace_transmission = 1 /obj/mecha/examine(mob/user) - ..(user) + . = ..() var/integrity = health/initial(health)*100 switch(integrity) if(85 to 100) - to_chat(user, "It's fully intact.") + . += "It's fully intact." if(65 to 85) - to_chat(user, "It's slightly damaged.") + . += "It's slightly damaged." if(45 to 65) - to_chat(user, "It's badly damaged.") + . += "It's badly damaged." if(25 to 45) - to_chat(user, "It's heavily damaged.") + . += "It's heavily damaged." else - to_chat(user, "It's falling apart.") + . += "It's falling apart." if(equipment && equipment.len) - to_chat(user, "It's equipped with:") + . += "It's equipped with:" for(var/obj/item/mecha_parts/mecha_equipment/ME in equipment) - to_chat(user, "[bicon(ME)] [ME]") + . += "[bicon(ME)] [ME]" /obj/mecha/hear_talk(mob/M, list/message_pieces) if(M == occupant && radio.broadcasting) diff --git a/code/game/objects/effects/decals/Cleanable/humans.dm b/code/game/objects/effects/decals/Cleanable/humans.dm index c5e3417d89d..3308acffcd8 100644 --- a/code/game/objects/effects/decals/Cleanable/humans.dm +++ b/code/game/objects/effects/decals/Cleanable/humans.dm @@ -142,8 +142,8 @@ var/global/list/image/splatter_cache = list() icon_state = "writing1" /obj/effect/decal/cleanable/blood/writing/examine(mob/user) - ..(user) - to_chat(user, "It reads: \"[message]\"") + . = ..() + . += "It reads: \"[message]\"" /obj/effect/decal/cleanable/blood/gibs name = "gibs" diff --git a/code/game/objects/effects/glowshroom.dm b/code/game/objects/effects/glowshroom.dm index 464d5c277fd..fa64bedd2ac 100644 --- a/code/game/objects/effects/glowshroom.dm +++ b/code/game/objects/effects/glowshroom.dm @@ -33,7 +33,7 @@ /obj/structure/glowshroom/examine(mob/user) . = ..() - to_chat(user, "This is a [generation]\th generation [name]!") + . += "This is a [generation]\th generation [name]!" /obj/structure/glowshroom/Destroy() QDEL_NULL(myseed) diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index 25c39c3e9f1..a618a57076f 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -168,7 +168,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/goonstation/effects/fire.d src.loc = T -/obj/item/examine(mob/user, var/distance = -1) +/obj/item/examine(mob/user) var/size switch(src.w_class) if(WEIGHT_CLASS_TINY) @@ -184,7 +184,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/goonstation/effects/fire.d if(WEIGHT_CLASS_GIGANTIC) size = "gigantic" - . = ..(user, distance, "", "It is a [size] item.") + . = ..(user, "", "It is a [size] item.") if(user.research_scanner) //Mob has a research scanner active. var/msg = "*--------*
" @@ -205,7 +205,7 @@ var/global/image/fire_overlay = image("icon" = 'icons/goonstation/effects/fire.d else msg += "No extractable materials detected.
" msg += "*--------*" - to_chat(user, msg) + . += msg /obj/item/afterattack(atom/target, mob/user, proximity, params) SEND_SIGNAL(src, COMSIG_ITEM_AFTERATTACK, target, user, proximity, params) diff --git a/code/game/objects/items/devices/lightreplacer.dm b/code/game/objects/items/devices/lightreplacer.dm index f331ff72f94..e9cb80f398c 100644 --- a/code/game/objects/items/devices/lightreplacer.dm +++ b/code/game/objects/items/devices/lightreplacer.dm @@ -68,8 +68,8 @@ /obj/item/lightreplacer/examine(mob/user) - ..() - to_chat(user, status_string()) + . = ..() + . += status_string() /obj/item/lightreplacer/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/stack/sheet/glass)) diff --git a/code/game/objects/items/devices/pipe_painter.dm b/code/game/objects/items/devices/pipe_painter.dm index 35074718862..69beb04f67c 100644 --- a/code/game/objects/items/devices/pipe_painter.dm +++ b/code/game/objects/items/devices/pipe_painter.dm @@ -29,5 +29,5 @@ mode = input("Which colour do you want to use?", "Pipe Painter", mode) in modes /obj/item/pipe_painter/examine(mob/user) - ..(user) - to_chat(user, "It is in [mode] mode.") + . = ..() + . += "It is in [mode] mode." diff --git a/code/game/objects/items/devices/radio/headset.dm b/code/game/objects/items/devices/radio/headset.dm index bf7ee23eed0..0ef3b0b0728 100644 --- a/code/game/objects/items/devices/radio/headset.dm +++ b/code/game/objects/items/devices/radio/headset.dm @@ -48,12 +48,11 @@ /obj/item/radio/headset/list_channels(var/mob/user) return list_secure_channels() -/obj/item/radio/headset/examine(mob/user, var/distance = -1) - if(!(..(user, 1) && radio_desc)) - return - - to_chat(user, "The following channels are available:") - to_chat(user, radio_desc) +/obj/item/radio/headset/examine(mob/user) + . = ..() + if(in_range(src, user) && radio_desc) + . += "The following channels are available:" + . += radio_desc /obj/item/radio/headset/handle_message_mode(mob/living/M as mob, list/message_pieces, channel) if(channel == "special") diff --git a/code/game/objects/items/devices/radio/radio.dm b/code/game/objects/items/devices/radio/radio.dm index 73c5dc8b41f..aab926f768e 100644 --- a/code/game/objects/items/devices/radio/radio.dm +++ b/code/game/objects/items/devices/radio/radio.dm @@ -595,14 +595,13 @@ var/global/list/default_medbay_channels = list( return null -/obj/item/radio/examine(mob/user, var/distance = -1) - . = ..(user, distance) - if((in_range(src, user) || loc == user)) +/obj/item/radio/examine(mob/user) + . = ..() + if(in_range(src, user) || loc == user) if(b_stat) - user.show_message("\the [src] can be attached and modified!") + . += "\the [src] can be attached and modified!" else - user.show_message("\the [src] can not be modified or attached!") - return . + . += "\the [src] can not be modified or attached!" /obj/item/radio/attackby(obj/item/W as obj, mob/user as mob, params) ..() diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm index 6c5b9cae2d6..dbe22162b57 100644 --- a/code/game/objects/items/devices/scanners.dm +++ b/code/game/objects/items/devices/scanners.dm @@ -339,8 +339,8 @@ proc/healthscan(mob/user, mob/living/M, mode = 1, upgraded = FALSE) var/accuracy // 0 is the best accuracy. /obj/item/analyzer/examine(mob/user) - .=..() - to_chat(user, "Alt-click [src] to activate the barometer function.") + . = ..() + . += "Alt-click [src] to activate the barometer function." /obj/item/analyzer/attack_self(mob/user as mob) diff --git a/code/game/objects/items/devices/taperecorder.dm b/code/game/objects/items/devices/taperecorder.dm index d3d0a2fe6bb..ed8dfebba23 100644 --- a/code/game/objects/items/devices/taperecorder.dm +++ b/code/game/objects/items/devices/taperecorder.dm @@ -26,8 +26,9 @@ return ..() /obj/item/taperecorder/examine(mob/user) - if(..(user, 1)) - to_chat(user, "The wire panel is [open_panel ? "opened" : "closed"].") + . = ..() + if(in_range(user, src)) + . += "The wire panel is [open_panel ? "opened" : "closed"]." /obj/item/taperecorder/attackby(obj/item/I, mob/user) diff --git a/code/game/objects/items/devices/traitordevices.dm b/code/game/objects/items/devices/traitordevices.dm index a738b6f03d4..61561131219 100644 --- a/code/game/objects/items/devices/traitordevices.dm +++ b/code/game/objects/items/devices/traitordevices.dm @@ -31,11 +31,11 @@ effective or pretty fucking useless. var/max_uses = 5 /obj/item/batterer/examine(mob/user) - ..(user) + . = ..() if(times_used >= max_uses) - to_chat(user, "[src] is out of charge.") + . += "[src] is out of charge." if(times_used < max_uses) - to_chat(user, "[src] has [max_uses-times_used] charges left.") + . += "[src] has [max_uses-times_used] charges left." /obj/item/batterer/attack_self(mob/living/carbon/user, flag = 0, emp = 0) if(!user) diff --git a/code/game/objects/items/stacks/stack.dm b/code/game/objects/items/stacks/stack.dm index f0830f34c40..20b1c64f61d 100644 --- a/code/game/objects/items/stacks/stack.dm +++ b/code/game/objects/items/stacks/stack.dm @@ -49,12 +49,13 @@ return ..() /obj/item/stack/examine(mob/user) - if(..(user, 1)) + . = ..() + if(in_range(user, src)) if(singular_name) - to_chat(user, "There are [amount] [singular_name]\s in the stack.") + . += "There are [amount] [singular_name]\s in the stack." else - to_chat(user, "There are [amount] [name]\s in the stack.") - to_chat(user,"Alt-click to take a custom amount.") + . += "There are [amount] [name]\s in the stack." + . +="Alt-click to take a custom amount." /obj/item/stack/proc/add(newamount) amount += newamount diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index edc7b855c99..41476b9453c 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -641,13 +641,14 @@ obj/item/toy/cards/singlecard obj/item/toy/cards/singlecard/examine(mob/user) - if(..(user, 0)) + . = ..() + if(get_dist(user, src) <= 0) if(ishuman(user)) var/mob/living/carbon/human/cardUser = user if(cardUser.get_item_by_slot(slot_l_hand) == src || cardUser.get_item_by_slot(slot_r_hand) == src) cardUser.visible_message("[cardUser] checks [cardUser.p_their()] card.", "The card reads: [src.cardname]") else - to_chat(cardUser, "You need to have the card in your hand to check it.") + . += "You need to have the card in your hand to check it." obj/item/toy/cards/singlecard/verb/Flip() @@ -1470,9 +1471,9 @@ obj/item/toy/cards/deck/syndicate/black fake_bullets = rand(2, 7) /obj/item/toy/russian_revolver/trick_revolver/examine(mob/user) //Sneaky sneaky - ..() - to_chat(user, "Has [fake_bullets] round\s remaining.") - to_chat(user, "[fake_bullets] of those are live rounds.") + . = ..() + . += "Has [fake_bullets] round\s remaining." + . += "[fake_bullets] of those are live rounds." /obj/item/toy/russian_revolver/trick_revolver/post_shot(user) to_chat(user, "[src] did look pretty dodgey!") diff --git a/code/game/objects/items/weapons/RCD.dm b/code/game/objects/items/weapons/RCD.dm index ec916a4a228..c386e4feba0 100644 --- a/code/game/objects/items/weapons/RCD.dm +++ b/code/game/objects/items/weapons/RCD.dm @@ -82,8 +82,8 @@ GLOBAL_LIST_INIT(rcd_door_types, list( /obj/item/rcd/examine(mob/user) . = ..() - to_chat(user, "MATTER: [matter]/[max_matter] matter-units.") - to_chat(user, "MODE: [mode].") + . += "MATTER: [matter]/[max_matter] matter-units." + . += "MODE: [mode]." /obj/item/rcd/Destroy() QDEL_NULL(spark_system) diff --git a/code/game/objects/items/weapons/RCL.dm b/code/game/objects/items/weapons/RCL.dm index befe979078c..10e52fc716a 100644 --- a/code/game/objects/items/weapons/RCL.dm +++ b/code/game/objects/items/weapons/RCL.dm @@ -57,9 +57,9 @@ ..() /obj/item/twohanded/rcl/examine(mob/user) - ..() + . = ..() if(loaded) - to_chat(user, "It contains [loaded.amount]/[max_amount] cables.") + . += "It contains [loaded.amount]/[max_amount] cables." /obj/item/twohanded/rcl/Destroy() QDEL_NULL(loaded) diff --git a/code/game/objects/items/weapons/bee_briefcase.dm b/code/game/objects/items/weapons/bee_briefcase.dm index f370e186bcf..157868e3db4 100644 --- a/code/game/objects/items/weapons/bee_briefcase.dm +++ b/code/game/objects/items/weapons/bee_briefcase.dm @@ -23,12 +23,12 @@ return ..() /obj/item/bee_briefcase/examine(mob/user) - ..() + . = ..() if(loc == user) if(bees_left) - to_chat(user, "There are [bees_left] bees still inside in briefcase!") + . += "There are [bees_left] bees still inside in briefcase!" else - to_chat(user, "The bees are gone... Colony collapse disorder?") + . += "The bees are gone... Colony collapse disorder?" /obj/item/bee_briefcase/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/reagent_containers/syringe)) diff --git a/code/game/objects/items/weapons/cards_ids.dm b/code/game/objects/items/weapons/cards_ids.dm index 917bf7f032c..055986dff30 100644 --- a/code/game/objects/items/weapons/cards_ids.dm +++ b/code/game/objects/items/weapons/cards_ids.dm @@ -118,20 +118,21 @@ SetOwnerInfo(H) /obj/item/card/id/examine(mob/user) - if(..(user, 1)) + . = ..() + if(in_range(user, src)) show(usr) else - to_chat(user, "It is too far away.") + . += "It is too far away." if(guest_pass) - to_chat(user, "There is a guest pass attached to this ID card") + . += "There is a guest pass attached to this ID card" if(world.time < guest_pass.expiration_time) - to_chat(user, "It expires at [station_time_timestamp("hh:mm:ss", guest_pass.expiration_time)].") + . += "It expires at [station_time_timestamp("hh:mm:ss", guest_pass.expiration_time)]." else - to_chat(user, "It expired at [station_time_timestamp("hh:mm:ss", guest_pass.expiration_time)].") - to_chat(user, "It grants access to following areas:") + . += "It expired at [station_time_timestamp("hh:mm:ss", guest_pass.expiration_time)]." + . += "It grants access to following areas:" for(var/A in guest_pass.temp_access) - to_chat(user, "[get_access_desc(A)].") - to_chat(user, "Issuing reason: [guest_pass.reason].") + . += "[get_access_desc(A)]." + . += "Issuing reason: [guest_pass.reason]." /obj/item/card/id/proc/show(mob/user as mob) var/datum/asset/assets = get_asset_datum(/datum/asset/simple/paper) @@ -141,7 +142,6 @@ popup.set_content(dat) popup.set_title_image(usr.browse_rsc_icon(src.icon, src.icon_state)) popup.open() - return /obj/item/card/id/attack_self(mob/user as mob) user.visible_message("[user] shows you: [bicon(src)] [src.name]. The assignment on the card: [src.assignment]",\ diff --git a/code/game/objects/items/weapons/defib.dm b/code/game/objects/items/weapons/defib.dm index 45309b381c0..4eeee2c81c9 100644 --- a/code/game/objects/items/weapons/defib.dm +++ b/code/game/objects/items/weapons/defib.dm @@ -44,8 +44,8 @@ update_charge() /obj/item/defibrillator/examine(mob/user) - ..(user) - to_chat(user, "Ctrl-click to remove the paddles from the defibrillator.") + . = ..() + . += "Ctrl-click to remove the paddles from the defibrillator." /obj/item/defibrillator/proc/update_power() if(bcell) diff --git a/code/game/objects/items/weapons/extinguisher.dm b/code/game/objects/items/weapons/extinguisher.dm index 674329abacb..f0f8af4e0d3 100644 --- a/code/game/objects/items/weapons/extinguisher.dm +++ b/code/game/objects/items/weapons/extinguisher.dm @@ -40,7 +40,7 @@ /obj/item/extinguisher/examine(mob/user) . = ..() - to_chat(user, "The safety is [safety ? "on" : "off"].") + . += "The safety is [safety ? "on" : "off"]." /obj/item/extinguisher/New() diff --git a/code/game/objects/items/weapons/flamethrower.dm b/code/game/objects/items/weapons/flamethrower.dm index d7038fcd752..701b72c1821 100644 --- a/code/game/objects/items/weapons/flamethrower.dm +++ b/code/game/objects/items/weapons/flamethrower.dm @@ -141,9 +141,9 @@ update_icon() /obj/item/flamethrower/examine(mob/user) - ..() + . = ..() if(ptank) - to_chat(user, "[src] has \a [ptank] attached. Alt-click to remove it.") + . += "[src] has \a [ptank] attached. Alt-click to remove it." /obj/item/flamethrower/proc/toggle_igniter(mob/user) if(!ptank) diff --git a/code/game/objects/items/weapons/grenades/chem_grenade.dm b/code/game/objects/items/weapons/grenades/chem_grenade.dm index 10bbb7c7cb5..91c6252d9b2 100644 --- a/code/game/objects/items/weapons/grenades/chem_grenade.dm +++ b/code/game/objects/items/weapons/grenades/chem_grenade.dm @@ -37,7 +37,7 @@ return ..() /obj/item/grenade/chem_grenade/examine(mob/user) - ..(user) + . = ..() display_timer = (stage == READY && !nadeassembly) //show/hide the timer based on assembly state diff --git a/code/game/objects/items/weapons/grenades/ghettobomb.dm b/code/game/objects/items/weapons/grenades/ghettobomb.dm index ca6177c04fa..b58330a248b 100644 --- a/code/game/objects/items/weapons/grenades/ghettobomb.dm +++ b/code/game/objects/items/weapons/grenades/ghettobomb.dm @@ -62,5 +62,5 @@ qdel(src) /obj/item/grenade/iedcasing/examine(mob/user) - ..() - to_chat(user, "You can't tell when it will explode!") + . = ..() + . += "You can't tell when it will explode!" diff --git a/code/game/objects/items/weapons/grenades/grenade.dm b/code/game/objects/items/weapons/grenades/grenade.dm index 09fdfe5a27f..b8372f18a1e 100644 --- a/code/game/objects/items/weapons/grenades/grenade.dm +++ b/code/game/objects/items/weapons/grenades/grenade.dm @@ -48,12 +48,12 @@ /obj/item/grenade/examine(mob/user) - ..(user) + . = ..() if(display_timer) if(det_time > 1) - to_chat(user, "The timer is set to [det_time/10] second\s.") + . += "The timer is set to [det_time/10] second\s." else - to_chat(user, "\The [src] is set for instant detonation.") + . += "\The [src] is set for instant detonation." /obj/item/grenade/attack_self(mob/user as mob) if(!active) diff --git a/code/game/objects/items/weapons/holy_weapons.dm b/code/game/objects/items/weapons/holy_weapons.dm index d496d7a9f01..33d72c1ebb5 100644 --- a/code/game/objects/items/weapons/holy_weapons.dm +++ b/code/game/objects/items/weapons/holy_weapons.dm @@ -47,7 +47,7 @@ /obj/item/nullrod/examine(mob/living/user) . = ..() if(sanctify_force) - to_chat(user, "It bears the inscription: 'Sanctified weapon of the inquisitors. Only the worthy may wield. Nobody shall expect us.'") + . += "It bears the inscription: 'Sanctified weapon of the inquisitors. Only the worthy may wield. Nobody shall expect us.'" /obj/item/nullrod/proc/reskin_holy_weapon(mob/M) var/list/holy_weapons_list = typesof(/obj/item/nullrod) diff --git a/code/game/objects/items/weapons/melee/energy.dm b/code/game/objects/items/weapons/melee/energy.dm index 52e0b24ec4d..a2e5791851d 100644 --- a/code/game/objects/items/weapons/melee/energy.dm +++ b/code/game/objects/items/weapons/melee/energy.dm @@ -330,10 +330,10 @@ add_fingerprint(user) /obj/item/melee/energy/cleaving_saw/examine(mob/user) - ..() - to_chat(user, "It is [active ? "open, will cleave enemies in a wide arc and deal additional damage to fauna":"closed, and can be used for rapid consecutive attacks that cause fauna to bleed"].
\ + . = ..() + . += "It is [active ? "open, will cleave enemies in a wide arc and deal additional damage to fauna":"closed, and can be used for rapid consecutive attacks that cause fauna to bleed"].
\ Both modes will build up existing bleed effects, doing a burst of high damage if the bleed is built up high enough.
\ - Transforming it immediately after an attack causes the next attack to come out faster.
") + Transforming it immediately after an attack causes the next attack to come out faster.
" /obj/item/melee/energy/cleaving_saw/suicide_act(mob/user) user.visible_message("[user] is [active ? "closing [src] on [user.p_their()] neck" : "opening [src] into [user.p_their()] chest"]! It looks like [user.p_theyre()] trying to commit suicide!") diff --git a/code/game/objects/items/weapons/mop.dm b/code/game/objects/items/weapons/mop.dm index 7c5c6f9421f..a98ebed84da 100644 --- a/code/game/objects/items/weapons/mop.dm +++ b/code/game/objects/items/weapons/mop.dm @@ -106,8 +106,8 @@ reagents.add_reagent(refill_reagent, refill_rate) /obj/item/mop/advanced/examine(mob/user) - ..() - to_chat(user, "The condenser switch is set to [refill_enabled ? "ON" : "OFF"].") + . = ..() + . += "The condenser switch is set to [refill_enabled ? "ON" : "OFF"]." /obj/item/mop/advanced/Destroy() if(refill_enabled) diff --git a/code/game/objects/items/weapons/pneumaticCannon.dm b/code/game/objects/items/weapons/pneumaticCannon.dm index 503228e58d7..a73bb3249d4 100644 --- a/code/game/objects/items/weapons/pneumaticCannon.dm +++ b/code/game/objects/items/weapons/pneumaticCannon.dm @@ -22,16 +22,14 @@ return ..() /obj/item/pneumatic_cannon/examine(mob/user) - ..() + . = ..() if(!in_range(user, src)) - to_chat(user, "You'll need to get closer to see any more.") - return - for(var/obj/item/I in loadedItems) - spawn(0) - to_chat(user, "[bicon(I)] It has \the [I] loaded.") - if(tank) - to_chat(user, "[bicon(tank)] It has \the [tank] mounted onto it.") - + . += "You'll need to get closer to see any more." + else + if(tank) + . += "[bicon(tank)] It has \the [tank] mounted onto it." + for(var/obj/item/I in loadedItems) + . += "[bicon(I)] It has \the [I] loaded." /obj/item/pneumatic_cannon/attackby(obj/item/W, mob/user, params) ..() diff --git a/code/game/objects/items/weapons/powerfist.dm b/code/game/objects/items/weapons/powerfist.dm index a2315544d35..7dbe16a668a 100644 --- a/code/game/objects/items/weapons/powerfist.dm +++ b/code/game/objects/items/weapons/powerfist.dm @@ -21,12 +21,11 @@ return ..() /obj/item/melee/powerfist/examine(mob/user) - ..() + . = ..() if(!in_range(user, src)) - to_chat(user, "You'll need to get closer to see any more.") - return - if(tank) - to_chat(user, "[bicon(tank)] It has [tank] mounted onto it.") + . += "You'll need to get closer to see any more." + else if(tank) + . += "[bicon(tank)] It has [tank] mounted onto it." /obj/item/melee/powerfist/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/tank)) diff --git a/code/game/objects/items/weapons/storage/backpack.dm b/code/game/objects/items/weapons/storage/backpack.dm index 0fefed4323a..32d8c4d14fa 100644 --- a/code/game/objects/items/weapons/storage/backpack.dm +++ b/code/game/objects/items/weapons/storage/backpack.dm @@ -29,20 +29,20 @@ /obj/item/storage/backpack/examine(mob/user) var/space_used = 0 - if(!..(user, 1)) - return - for(var/obj/item/I in contents) - space_used += I.w_class - if(!space_used) - to_chat(user, " [src] is empty.") - else if(space_used <= max_combined_w_class*0.6) - to_chat(user, " [src] still has plenty of remaining space.") - else if(space_used <= max_combined_w_class*0.8) - to_chat(user, " [src] is beginning to run out of space.") - else if(space_used < max_combined_w_class) - to_chat(user, " [src] doesn't have much space left.") - else - to_chat(user, " [src] is full.") + . = ..() + if(in_range(user, src)) + for(var/obj/item/I in contents) + space_used += I.w_class + if(!space_used) + . += " [src] is empty." + else if(space_used <= max_combined_w_class*0.6) + . += " [src] still has plenty of remaining space." + else if(space_used <= max_combined_w_class*0.8) + . += " [src] is beginning to run out of space." + else if(space_used < max_combined_w_class) + . += " [src] doesn't have much space left." + else + . += " [src] is full." /* * Backpack Types diff --git a/code/game/objects/items/weapons/storage/fancy.dm b/code/game/objects/items/weapons/storage/fancy.dm index 603a86b072b..027910ebcb4 100644 --- a/code/game/objects/items/weapons/storage/fancy.dm +++ b/code/game/objects/items/weapons/storage/fancy.dm @@ -26,15 +26,15 @@ return /obj/item/storage/fancy/examine(mob/user) - if(!..(user, 1)) - return - - if(contents.len <= 0) - to_chat(user, "There are no [src.icon_type]s left in the box.") - else if(contents.len == 1) - to_chat(user, "There is one [src.icon_type] left in the box.") - else - to_chat(user, "There are [src.contents.len] [src.icon_type]s in the box.") + . = ..() + if(in_range(user, src)) + var/len = LAZYLEN(contents) + if(len <= 0) + . += "There are no [src.icon_type]s left in the box." + else if(len == 1) + . += "There is one [src.icon_type] left in the box." + else + . += "There are [src.contents.len] [src.icon_type]s in the box." diff --git a/code/game/objects/items/weapons/storage/secure.dm b/code/game/objects/items/weapons/storage/secure.dm index aeaa7991420..a91d1e10f62 100644 --- a/code/game/objects/items/weapons/storage/secure.dm +++ b/code/game/objects/items/weapons/storage/secure.dm @@ -28,8 +28,9 @@ max_combined_w_class = 14 /obj/item/storage/secure/examine(mob/user) - if(..(user, 1)) - to_chat(user, text("The service panel is [open ? "open" : "closed"].")) + . = ..() + if(in_range(user, src)) + . += "The service panel is [open ? "open" : "closed"]." /obj/item/storage/secure/attackby(obj/item/W as obj, mob/user as mob, params) if(locked) diff --git a/code/game/objects/items/weapons/stunbaton.dm b/code/game/objects/items/weapons/stunbaton.dm index 6d81cdd2dac..6fba277ec35 100644 --- a/code/game/objects/items/weapons/stunbaton.dm +++ b/code/game/objects/items/weapons/stunbaton.dm @@ -73,13 +73,13 @@ icon_state = "[base_icon]" /obj/item/melee/baton/examine(mob/user) - ..(user) + . = ..() if(isrobot(loc)) - to_chat(user, "This baton is drawing power directly from your own internal charge.") + . += "This baton is drawing power directly from your own internal charge." if(bcell) - to_chat(user, "The baton is [round(bcell.percent())]% charged.") + . += "The baton is [round(bcell.percent())]% charged." if(!bcell) - to_chat(user, "The baton does not have a power source installed.") + . += "The baton does not have a power source installed." /obj/item/melee/baton/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/stock_parts/cell)) diff --git a/code/game/objects/items/weapons/tanks/jetpack.dm b/code/game/objects/items/weapons/tanks/jetpack.dm index 21f43073b73..d7da7044d7c 100644 --- a/code/game/objects/items/weapons/tanks/jetpack.dm +++ b/code/game/objects/items/weapons/tanks/jetpack.dm @@ -35,11 +35,9 @@ /obj/item/tank/jetpack/examine(mob/user) - if(!..(user, 0)) - return - - if(air_contents.oxygen < 10) - to_chat(user, "The meter on [src] indicates you are almost out of air!") + . = ..() + if(get_dist(user, src) <= 0 && air_contents.oxygen < 10) + . += "The meter on [src] indicates you are almost out of air!" playsound(user, 'sound/effects/alert.ogg', 50, 1) @@ -156,11 +154,9 @@ air_contents.carbon_dioxide = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) /obj/item/tank/jetpack/carbondioxide/examine(mob/user) - if(!..(user, 0)) - return - - if(air_contents.carbon_dioxide < 10) - to_chat(user, "The meter on [src] indicates you are almost out of air!") + . = ..() + if(get_dist(user, src) <= 0 && air_contents.carbon_dioxide < 10) + . += "The meter on [src] indicates you are almost out of air!" playsound(user, 'sound/effects/alert.ogg', 50, 1) /obj/item/tank/jetpack/suit @@ -229,8 +225,7 @@ actions_types = list(/datum/action/item_action/toggle_jetpack, /datum/action/item_action/jetpack_stabilization) /obj/item/tank/jetpack/rig/examine() - to_chat(usr, "It's a jetpack. If you can see this, report it on the bug tracker.") - return 0 + . = list("It's a jetpack. If you can see this, report it on the bug tracker.") /obj/item/tank/jetpack/rig/allow_thrust(num, mob/living/user) if(!on) diff --git a/code/game/objects/items/weapons/tanks/tank_types.dm b/code/game/objects/items/weapons/tanks/tank_types.dm index fc4f3438aa1..55b0225bc2d 100644 --- a/code/game/objects/items/weapons/tanks/tank_types.dm +++ b/code/game/objects/items/weapons/tanks/tank_types.dm @@ -23,10 +23,9 @@ air_contents.oxygen = (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) /obj/item/tank/oxygen/examine(mob/user) - if(..(user, 0)) - if(air_contents.oxygen < 10) - to_chat(user, text("The meter on the [src.name] indicates you are almost out of air!")) - //playsound(usr, 'sound/effects/alert.ogg', 50, 1) + . = ..() + if(get_dist(user, src) <= 0 && air_contents.oxygen < 10) + . += "The meter on [src] indicates you are almost out of air!" obj/item/tank/oxygen/empty/New() ..() @@ -72,10 +71,10 @@ obj/item/tank/oxygen/empty/New() item_state = "air" /obj/item/tank/air/examine(mob/user) - if(..(user, 0)) - if(air_contents.oxygen < 1 && loc==usr) - to_chat(user, "The meter on the [src.name] indicates you are almost out of air!") - user << sound('sound/effects/alert.ogg') + . = ..() + if(get_dist(user, src) <= 0 && air_contents.oxygen < 1) + . += "The meter on [src] indicates you are almost out of air!" + playsound(user, 'sound/effects/alert.ogg', 50, 1) /obj/item/tank/air/New() ..() @@ -121,10 +120,10 @@ obj/item/tank/oxygen/empty/New() distribute_pressure = TANK_DEFAULT_RELEASE_PRESSURE /obj/item/tank/plasma/plasmaman/examine(mob/user) - if(..(user, 0)) - if(air_contents.toxins < 0.2 && loc==usr) - to_chat(user, text("The meter on the [src.name] indicates you are almost out of plasma!")) - user << sound('sound/effects/alert.ogg') + . = ..() + if(get_dist(user, src) <= 0 && air_contents.toxins < 0.2) + . += "The meter on [src] indicates you are almost out of plasma!" + playsound(user, 'sound/effects/alert.ogg', 50, 1) /obj/item/tank/plasma/plasmaman/belt @@ -159,10 +158,10 @@ obj/item/tank/oxygen/empty/New() air_contents.oxygen = (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) /obj/item/tank/emergency_oxygen/examine(mob/user) - if(..(user, 0)) - if(air_contents.oxygen < 0.2 && loc==usr) - to_chat(user, text("The meter on the [src.name] indicates you are almost out of air!")) - user << sound('sound/effects/alert.ogg') + . = ..() + if(get_dist(user, src) <= 0 && air_contents.oxygen < 0.2) + . += "The meter on [src] indicates you are almost out of air!" + playsound(user, 'sound/effects/alert.ogg', 50, 1) obj/item/tank/emergency_oxygen/empty/New() ..() @@ -215,10 +214,9 @@ obj/item/tank/emergency_oxygen/double/empty/New() air_contents.nitrogen = (3*ONE_ATMOSPHERE)*70/(R_IDEAL_GAS_EQUATION*T20C) /obj/item/tank/nitrogen/examine(mob/user) - if(..(user, 0)) - if(air_contents.nitrogen < 10) - to_chat(user, text("The meter on the [src.name] indicates you are almost out of air!")) - //playsound(usr, 'sound/effects/alert.ogg', 50, 1) + . = ..() + if(get_dist(user, src) <= 0 && air_contents.nitrogen < 10) + . += "The meter on the [src.name] indicates you are almost out of air!" /obj/item/tank/emergency_oxygen/vox name = "vox specialized nitrogen tank" diff --git a/code/game/objects/items/weapons/tanks/tanks.dm b/code/game/objects/items/weapons/tanks/tanks.dm index a155cd5c053..bf69b8e8804 100644 --- a/code/game/objects/items/weapons/tanks/tanks.dm +++ b/code/game/objects/items/weapons/tanks/tanks.dm @@ -76,8 +76,7 @@ /obj/item/tank/examine(mob/user) - if(!..(user, 0)) - return + . = ..() var/obj/icon = src if(istype(loc, /obj/item/assembly)) @@ -85,7 +84,7 @@ if(!in_range(src, user)) if(icon == src) - to_chat(user, "It's \a [bicon(icon)][src]! If you want any more information you'll need to get closer.") + . += "It's \a [bicon(icon)][src]! If you want any more information you'll need to get closer." return var/celsius_temperature = air_contents.temperature-T0C @@ -104,9 +103,7 @@ else descriptive = "furiously hot" - to_chat(user, "\The [bicon(icon)][src] feels [descriptive]") - - return + . += "\The [bicon(icon)][src] feels [descriptive]" /obj/item/tank/blob_act() if(prob(50)) diff --git a/code/game/objects/items/weapons/tools.dm b/code/game/objects/items/weapons/tools.dm index 7afb1885ea2..ec821a753a9 100644 --- a/code/game/objects/items/weapons/tools.dm +++ b/code/game/objects/items/weapons/tools.dm @@ -344,8 +344,9 @@ update_icon() /obj/item/weldingtool/examine(mob/user) - if(..(user, 0)) - to_chat(user, "It contains [get_fuel()] unit\s of fuel out of [max_fuel].") + . = ..() + if(get_dist(user, src) <= 0) + . += "It contains [get_fuel()] unit\s of fuel out of [max_fuel]." /obj/item/weldingtool/suicide_act(mob/user) user.visible_message("[user] welds [user.p_their()] every orifice closed! It looks like [user.p_theyre()] trying to commit suicide!") diff --git a/code/game/objects/items/weapons/vending_items.dm b/code/game/objects/items/weapons/vending_items.dm index c3773ccf5ed..46d43320f92 100644 --- a/code/game/objects/items/weapons/vending_items.dm +++ b/code/game/objects/items/weapons/vending_items.dm @@ -28,11 +28,11 @@ . = ..() var/num = get_part_rating() if (num == INFINITY) - to_chat(user, "It's sealed tight, completely full of supplies.") + . += "It's sealed tight, completely full of supplies." else if (num == 0) - to_chat(user, "It's empty!") + . += "It's empty!" else - to_chat(user, "It can restock [num] item\s.") + . += "It can restock [num] item\s." /obj/item/vending_refill/get_part_rating() if (!products || !contraband || !premium) diff --git a/code/game/objects/structures.dm b/code/game/objects/structures.dm index 58a2d0464fc..54cdda2a80b 100644 --- a/code/game/objects/structures.dm +++ b/code/game/objects/structures.dm @@ -160,15 +160,15 @@ return 1 /obj/structure/examine(mob/user) - ..() + . = ..() if(!(resistance_flags & INDESTRUCTIBLE)) if(burn_state == ON_FIRE) - to_chat(user, "It's on fire!") + . += "It's on fire!" if(broken) - to_chat(user, "It appears to be broken.") + . += "It appears to be broken." var/examine_status = examine_status(user) if(examine_status) - to_chat(user, examine_status) + . += examine_status /obj/structure/proc/examine_status(mob/user) //An overridable proc, mostly for falsewalls. var/healthpercent = (obj_integrity/max_integrity) * 100 diff --git a/code/game/objects/structures/bedsheet_bin.dm b/code/game/objects/structures/bedsheet_bin.dm index af57fb360f3..e942215b6cd 100644 --- a/code/game/objects/structures/bedsheet_bin.dm +++ b/code/game/objects/structures/bedsheet_bin.dm @@ -244,14 +244,13 @@ LINEN BINS /obj/structure/bedsheetbin/examine(mob/user) - ..(user) + . = ..() if(amount < 1) - to_chat(user, "There are no bed sheets in the bin.") - return - if(amount == 1) - to_chat(user, "There is one bed sheet in the bin.") - return - to_chat(user, "There are [amount] bed sheets in the bin.") + . += "There are no bed sheets in the bin." + else if(amount == 1) + . += "There is one bed sheet in the bin." + else + . += "There are [amount] bed sheets in the bin." /obj/structure/bedsheetbin/update_icon() diff --git a/code/game/objects/structures/crates_lockers/closets/fireaxe.dm b/code/game/objects/structures/crates_lockers/closets/fireaxe.dm index d22f0a59a61..affc44cc09d 100644 --- a/code/game/objects/structures/crates_lockers/closets/fireaxe.dm +++ b/code/game/objects/structures/crates_lockers/closets/fireaxe.dm @@ -17,7 +17,7 @@ /obj/structure/closet/fireaxecabinet/examine(mob/user) . = ..() - to_chat(user, "Use a multitool to lock/unlock it.") + . += "Use a multitool to lock/unlock it." /obj/structure/closet/fireaxecabinet/attackby(var/obj/item/O as obj, var/mob/living/user as mob) //Marker -Agouri if(isrobot(user) || locked) diff --git a/code/game/objects/structures/displaycase.dm b/code/game/objects/structures/displaycase.dm index 497644a1926..623ead7bc62 100644 --- a/code/game/objects/structures/displaycase.dm +++ b/code/game/objects/structures/displaycase.dm @@ -148,12 +148,12 @@ GLOBAL_LIST_INIT(captain_display_cases, list()) start_showpiece_type = /obj/item/gun/projectile/automatic/pistol /obj/structure/displaycase/examine(mob/user) - ..(user) - to_chat(user, "Peering through the glass, you see that it contains:") + . = ..() + . += "Peering through the glass, you see that it contains:" if(occupant) - to_chat(user, "[bicon(occupant)] \A [occupant].") + . += "[bicon(occupant)] \A [occupant]." else - to_chat(user, "Nothing.") + . += "Nothing." /obj/structure/displaycase/proc/dump() if(occupant) diff --git a/code/game/objects/structures/door_assembly.dm b/code/game/objects/structures/door_assembly.dm index b21754cae96..c2c11356d60 100644 --- a/code/game/objects/structures/door_assembly.dm +++ b/code/game/objects/structures/door_assembly.dm @@ -30,28 +30,28 @@ return ..() /obj/structure/door_assembly/examine(mob/user) - ..() + . = ..() var/doorname = "" if(created_name) doorname = ", written on it is '[created_name]'" switch(state) if(AIRLOCK_ASSEMBLY_NEEDS_WIRES) if(anchored) - to_chat(user, "The anchoring bolts are wrenched in place, but the maintenance panel lacks wiring.") + . += "The anchoring bolts are wrenched in place, but the maintenance panel lacks wiring." else - to_chat(user, "The assembly is welded together, but the anchoring bolts are unwrenched.") + . += "The assembly is welded together, but the anchoring bolts are unwrenched." if(AIRLOCK_ASSEMBLY_NEEDS_ELECTRONICS) - to_chat(user, "The maintenance panel is wired, but the circuit slot is empty.") + . += "The maintenance panel is wired, but the circuit slot is empty." if(AIRLOCK_ASSEMBLY_NEEDS_SCREWDRIVER) - to_chat(user, "The circuit is connected loosely to its slot, but the maintenance panel is unscrewed and open.") + . += "The circuit is connected loosely to its slot, but the maintenance panel is unscrewed and open." if(!mineral && !glass && !noglass) - to_chat(user, "There is a small paper placard on the assembly[doorname]. There are empty slots for glass windows and mineral covers.") + . += "There is a small paper placard on the assembly[doorname]. There are empty slots for glass windows and mineral covers." else if(!mineral && glass && !noglass) - to_chat(user, "There is a small paper placard on the assembly[doorname]. There are empty slots for mineral covers.") + . += "There is a small paper placard on the assembly[doorname]. There are empty slots for mineral covers." else if(mineral && !glass && !noglass) - to_chat(user, "There is a small paper placard on the assembly[doorname]. There are empty slots for glass windows.") + . += "There is a small paper placard on the assembly[doorname]. There are empty slots for glass windows." else - to_chat(user, "There is a small paper placard on the assembly[doorname].") + . += "There is a small paper placard on the assembly[doorname]." /obj/structure/door_assembly/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/pen)) diff --git a/code/game/objects/structures/extinguisher.dm b/code/game/objects/structures/extinguisher.dm index 303862ff66f..1bd5ef9546d 100644 --- a/code/game/objects/structures/extinguisher.dm +++ b/code/game/objects/structures/extinguisher.dm @@ -29,8 +29,8 @@ has_extinguisher = new/obj/item/extinguisher /obj/structure/extinguisher_cabinet/examine(mob/user) - ..() - to_chat(user, "Alt-click to [opened ? "close":"open"] it.") + . = ..() + . += "Alt-click to [opened ? "close":"open"] it." /obj/structure/extinguisher_cabinet/AltClick(mob/living/user) if(!istype(user) || user.incapacitated()) diff --git a/code/game/objects/structures/girders.dm b/code/game/objects/structures/girders.dm index b3468668f5a..11c0038632f 100644 --- a/code/game/objects/structures/girders.dm +++ b/code/game/objects/structures/girders.dm @@ -14,16 +14,16 @@ . = ..() switch(state) if(GIRDER_REINF) - to_chat(user, "The support struts are screwed in place.") + . += "The support struts are screwed in place." if(GIRDER_REINF_STRUTS) - to_chat(user, "The support struts are unscrewed and the inner grille is intact.") + . += "The support struts are unscrewed and the inner grille is intact." if(GIRDER_NORMAL) if(can_displace) - to_chat(user, "The bolts are lodged in place.") + . += "The bolts are lodged in place." if(GIRDER_DISPLACED) - to_chat(user, "The bolts are loosened, but the screws are holding [src] together.") + . += "The bolts are loosened, but the screws are holding [src] together." if(GIRDER_DISASSEMBLED) - to_chat(user, "[src] is disassembled! You probably shouldn't be able to see this examine message.") + . += "[src] is disassembled! You probably shouldn't be able to see this examine message." /obj/structure/girder/proc/refundMetal(metalAmount) //refunds metal used in construction when deconstructed for(var/i=0;i < metalAmount;i++) diff --git a/code/game/objects/structures/grille.dm b/code/game/objects/structures/grille.dm index 1e3cb331cd1..7635ee49598 100644 --- a/code/game/objects/structures/grille.dm +++ b/code/game/objects/structures/grille.dm @@ -54,11 +54,11 @@ obj_break() /obj/structure/grille/examine(mob/user) - ..() + . = ..() if(anchored) - to_chat(user, "It's secured in place with screws. The rods look like they could be cut through.") + . += "It's secured in place with screws. The rods look like they could be cut through." if(!anchored) - to_chat(user, "The anchoring screws are unscrewed. The rods look like they could be cut through.") + . += "The anchoring screws are unscrewed. The rods look like they could be cut through." /obj/structure/grille/ratvar_act() if(broken) diff --git a/code/game/objects/structures/guillotine.dm b/code/game/objects/structures/guillotine.dm index 6d32aec248e..eba923d5ea4 100644 --- a/code/game/objects/structures/guillotine.dm +++ b/code/game/objects/structures/guillotine.dm @@ -33,7 +33,7 @@ return ..() /obj/structure/guillotine/examine(mob/user) - ..() + . = ..() var/msg = "" @@ -53,9 +53,7 @@ msg += "
" msg += "Someone appears to be strapped in. You can help them out, or you can harm them by activating the guillotine." - to_chat(user, msg) - - return msg + . += msg /obj/structure/guillotine/attack_hand(mob/user) add_fingerprint(user) diff --git a/code/game/objects/structures/lattice.dm b/code/game/objects/structures/lattice.dm index c1233aaee0c..5aab6610f8c 100644 --- a/code/game/objects/structures/lattice.dm +++ b/code/game/objects/structures/lattice.dm @@ -22,11 +22,11 @@ QDEL_IN(LAT, 0) /obj/structure/lattice/examine(mob/user) - ..() - deconstruction_hints(user) + . = ..() + . += deconstruction_hints(user) /obj/structure/lattice/proc/deconstruction_hints(mob/user) - to_chat(user, "The rods look like they could be cut. There's space for more rods or a tile.") + return "The rods look like they could be cut. There's space for more rods or a tile." /obj/structure/lattice/attackby(obj/item/C, mob/user, params) if(resistance_flags & INDESTRUCTIBLE) diff --git a/code/game/objects/structures/mop_bucket.dm b/code/game/objects/structures/mop_bucket.dm index f01cc8c41ca..948a39ba93e 100644 --- a/code/game/objects/structures/mop_bucket.dm +++ b/code/game/objects/structures/mop_bucket.dm @@ -21,8 +21,9 @@ return ..() /obj/structure/mopbucket/examine(mob/user) - if(..(user, 1)) - to_chat(usr, "[bicon(src)] [src] contains [reagents.total_volume] units of water left!") + . = ..() + if(in_range(user, src)) + . += "[bicon(src)] [src] contains [reagents.total_volume] units of water left!" /obj/structure/mopbucket/attackby(obj/item/W as obj, mob/user as mob, params) if(istype(W, /obj/item/mop)) diff --git a/code/game/objects/structures/plasticflaps.dm b/code/game/objects/structures/plasticflaps.dm index c175dca567b..12586dc742c 100644 --- a/code/game/objects/structures/plasticflaps.dm +++ b/code/game/objects/structures/plasticflaps.dm @@ -13,9 +13,9 @@ . = ..() switch(state) if(PLASTIC_FLAPS_NORMAL) - to_chat(user, "[src] are screwed to the floor.") + . += "[src] are screwed to the floor." if(PLASTIC_FLAPS_DETACHED) - to_chat(user, "[src] are no longer screwed to the floor, and the flaps can be sliced apart.") + . += "[src] are no longer screwed to the floor, and the flaps can be sliced apart." /obj/structure/plasticflaps/attackby(obj/item/W, mob/user, params) add_fingerprint(user) diff --git a/code/game/objects/structures/safe.dm b/code/game/objects/structures/safe.dm index 68a3081fc22..d847601de18 100644 --- a/code/game/objects/structures/safe.dm +++ b/code/game/objects/structures/safe.dm @@ -79,9 +79,9 @@ GLOBAL_LIST_EMPTY(safes) /obj/structure/safe/examine(mob/user) . = ..() - to_chat(user, "This model appears to have [number_of_tumblers] tumblers.") + . += "This model appears to have [number_of_tumblers] tumblers." if(open) - to_chat(user, "The inside of the the door has numbers written on it: [get_combination()]") + . += "The inside of the the door has numbers written on it: [get_combination()]" /obj/structure/safe/blob_act() return diff --git a/code/game/objects/structures/spirit_board.dm b/code/game/objects/structures/spirit_board.dm index b6f66350f1f..dc82b824e34 100644 --- a/code/game/objects/structures/spirit_board.dm +++ b/code/game/objects/structures/spirit_board.dm @@ -11,8 +11,8 @@ var/lastuser = null /obj/structure/spirit_board/examine(mob/user) - ..(user) - to_chat(user, "[initial(desc)] The planchette is sitting at \"[planchette]\".") + . = ..() + . += "[initial(desc)] The planchette is sitting at \"[planchette]\"." /obj/structure/spirit_board/attack_hand(mob/user as mob) if(..()) diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm index d4296e1df2f..ba2a80b945f 100644 --- a/code/game/objects/structures/tables_racks.dm +++ b/code/game/objects/structures/tables_racks.dm @@ -41,11 +41,11 @@ update_icon() /obj/structure/table/examine(mob/user) - ..() - deconstruction_hints(user) + . = ..() + . += deconstruction_hints(user) /obj/structure/table/proc/deconstruction_hints(mob/user) - to_chat(user, "The top is screwed on, but the main bolts are also visible.") + return "The top is screwed on, but the main bolts are also visible." /obj/structure/table/update_icon() if(smooth && !flipped) @@ -648,8 +648,8 @@ max_integrity = 20 /obj/structure/rack/examine(mob/user) - ..() - to_chat(user, "It's held together by a couple of bolts.") + . = ..() + . += "It's held together by a couple of bolts." /obj/structure/rack/CanPass(atom/movable/mover, turf/target, height=0) if(height==0) diff --git a/code/game/objects/structures/windoor_assembly.dm b/code/game/objects/structures/windoor_assembly.dm index 1124745d8b3..0eee91ee068 100644 --- a/code/game/objects/structures/windoor_assembly.dm +++ b/code/game/objects/structures/windoor_assembly.dm @@ -28,8 +28,8 @@ var/state = "01" //How far the door assembly has progressed /obj/structure/windoor_assembly/examine(mob/user) - ..() - to_chat(user, "Alt-click to rotate it clockwise.") + . = ..() + . += "Alt-click to rotate it clockwise." obj/structure/windoor_assembly/New(loc, set_dir) ..() diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm index 4090420525d..a083ec96af0 100644 --- a/code/game/objects/structures/window.dm +++ b/code/game/objects/structures/window.dm @@ -49,23 +49,23 @@ var/global/wcCommon = pick(list("#379963", "#0d8395", "#58b5c3", "#49e46e", "#8f var/hitsound = 'sound/effects/Glasshit.ogg' /obj/structure/window/examine(mob/user) - ..() + . = ..() if(reinf) if(anchored && state == WINDOW_SCREWED_TO_FRAME) - to_chat(user, "The window is screwed to the frame.") + . += "The window is screwed to the frame." else if(anchored && state == WINDOW_IN_FRAME) - to_chat(user, "The window is unscrewed but pried into the frame.") + . += "The window is unscrewed but pried into the frame." else if(anchored && state == WINDOW_OUT_OF_FRAME) - to_chat(user, "The window is out of the frame, but could be pried in. It is screwed to the floor.") + . += "The window is out of the frame, but could be pried in. It is screwed to the floor." else if(!anchored) - to_chat(user, "The window is unscrewed from the floor, and could be deconstructed by wrenching.") + . += "The window is unscrewed from the floor, and could be deconstructed by wrenching." else if(anchored) - to_chat(user, "The window is screwed to the floor.") + . += "The window is screwed to the floor." else - to_chat(user, "The window is unscrewed from the floor, and could be deconstructed by wrenching.") + . += "The window is unscrewed from the floor, and could be deconstructed by wrenching." if(!anchored && !fulltile) - to_chat(user, "Alt-click to rotate it.") + . += "Alt-click to rotate it." /obj/structure/window/New(Loc, direct) ..() diff --git a/code/game/turfs/simulated/floor/plating.dm b/code/game/turfs/simulated/floor/plating.dm index 7fabcb0b957..b446625a9e9 100644 --- a/code/game/turfs/simulated/floor/plating.dm +++ b/code/game/turfs/simulated/floor/plating.dm @@ -37,7 +37,7 @@ . = ..() if(unfastened) - to_chat(user, "It has been unfastened.") + . += "It has been unfastened." /turf/simulated/floor/plating/attackby(obj/item/C, mob/user, params) if(..()) diff --git a/code/game/turfs/simulated/walls.dm b/code/game/turfs/simulated/walls.dm index c0a4aa928d2..ed72fb88993 100644 --- a/code/game/turfs/simulated/walls.dm +++ b/code/game/turfs/simulated/walls.dm @@ -56,21 +56,21 @@ //Appearance /turf/simulated/wall/examine(mob/user) - . = ..(user) + . = ..() if(!damage) - to_chat(user, "It looks fully intact.") + . += "It looks fully intact." else var/dam = damage / damage_cap if(dam <= 0.3) - to_chat(user, "It looks slightly damaged.") + . += "It looks slightly damaged." else if(dam <= 0.6) - to_chat(user, "It looks moderately damaged.") + . += "It looks moderately damaged." else - to_chat(user, "It looks heavily damaged.") + . += "It looks heavily damaged." if(rotting) - to_chat(user, "There is fungus growing on [src].") + . += "There is fungus growing on [src]." /turf/simulated/wall/proc/update_icon() if(!damage_overlays[1]) //list hasn't been populated diff --git a/code/game/turfs/simulated/walls_reinforced.dm b/code/game/turfs/simulated/walls_reinforced.dm index 1ae3332e9b3..ae4d7588b97 100644 --- a/code/game/turfs/simulated/walls_reinforced.dm +++ b/code/game/turfs/simulated/walls_reinforced.dm @@ -17,22 +17,22 @@ var/can_be_reinforced = 1 /turf/simulated/wall/r_wall/examine(mob/user) - ..() + . = ..() switch(d_state) if(RWALL_INTACT) - to_chat(user, "The outer grille is fully intact.") + . += "The outer grille is fully intact." if(RWALL_SUPPORT_LINES) - to_chat(user, "The outer grille has been cut, and the support lines are screwed securely to the outer cover.") + . += "The outer grille has been cut, and the support lines are screwed securely to the outer cover." if(RWALL_COVER) - to_chat(user, "The support lines have been unscrewed, and the metal cover is welded firmly in place.") + . += "The support lines have been unscrewed, and the metal cover is welded firmly in place." if(RWALL_CUT_COVER) - to_chat(user, "The metal cover has been sliced through, and is connected loosely to the girder.") + . += "The metal cover has been sliced through, and is connected loosely to the girder." if(RWALL_BOLTS) - to_chat(user, "The outer cover has been pried away, and the bolts anchoring the support rods are wrenched in place.") + . += "The outer cover has been pried away, and the bolts anchoring the support rods are wrenched in place." if(RWALL_SUPPORT_RODS) - to_chat(user, "The bolts anchoring the support rods have been loosened, but are still welded firmly to the girder.") + . += "The bolts anchoring the support rods have been loosened, but are still welded firmly to the girder." if(RWALL_SHEATH) - to_chat(user, "The support rods have been sliced through, and the outer sheath is connected loosely to the girder.") + . += "The support rods have been sliced through, and the outer sheath is connected loosely to the girder." /turf/simulated/wall/r_wall/attackby(obj/item/I, mob/user, params) if(try_repair(I, user, params)) diff --git a/code/modules/arcade/arcade_base.dm b/code/modules/arcade/arcade_base.dm index c3158e9ccba..38c034927bc 100644 --- a/code/modules/arcade/arcade_base.dm +++ b/code/modules/arcade/arcade_base.dm @@ -22,18 +22,18 @@ qdel(src) /obj/machinery/arcade/examine(mob/user) - ..(user) + . = ..() if(freeplay) - to_chat(user, "Someone enabled freeplay on this machine!") + . += "Someone enabled freeplay on this machine!" else if(token_price) - to_chat(user, "\The [src.name] costs [token_price] credits per play.") + . += "\The [src.name] costs [token_price] credits per play." if(!tokens) - to_chat(user, "\The [src.name] has no available play credits. Better feed the machine!") + . += "\The [src.name] has no available play credits. Better feed the machine!" else if(tokens == 1) - to_chat(user, "\The [src.name] has only 1 play credit left!") + . += "\The [src.name] has only 1 play credit left!" else - to_chat(user, "\The [src.name] has [tokens] play credits!") + . += "\The [src.name] has [tokens] play credits!" /obj/machinery/arcade/attack_hand(mob/user as mob) if(..()) diff --git a/code/modules/assembly/assembly.dm b/code/modules/assembly/assembly.dm index 5e0b463af30..d8ee727f2f8 100644 --- a/code/modules/assembly/assembly.dm +++ b/code/modules/assembly/assembly.dm @@ -128,12 +128,12 @@ STOP_PROCESSING(SSobj, src) /obj/item/assembly/examine(mob/user) - ..() + . = ..() if(in_range(src, user) || loc == user) if(secured) - to_chat(user, "[src] is ready!") + . += "[src] is ready!" else - to_chat(user, "[src] can be attached!") + . += "[src] can be attached!" /obj/item/assembly/attack_self(mob/user) if(!user) diff --git a/code/modules/assembly/bomb.dm b/code/modules/assembly/bomb.dm index 058dd4cd0f2..e0454d5f5ea 100644 --- a/code/modules/assembly/bomb.dm +++ b/code/modules/assembly/bomb.dm @@ -13,8 +13,8 @@ origin_tech = "materials=1;engineering=1" /obj/item/onetankbomb/examine(mob/user) - ..(user) - user.examinate(bombtank) + . = ..() + . += bombtank.examine(user) /obj/item/onetankbomb/update_icon() if(bombtank) diff --git a/code/modules/assembly/holder.dm b/code/modules/assembly/holder.dm index d19682d1eb9..ac4613575e8 100644 --- a/code/modules/assembly/holder.dm +++ b/code/modules/assembly/holder.dm @@ -70,12 +70,12 @@ /obj/item/assembly_holder/examine(mob/user) - ..(user) + . = ..() if(in_range(src, user) || loc == user) if(secured) - to_chat(user, "[src] is ready!") + . += "[src] is ready!" else - to_chat(user, "[src] can be attached!") + . += "[src] can be attached!" /obj/item/assembly_holder/HasProximity(atom/movable/AM) diff --git a/code/modules/assembly/infrared.dm b/code/modules/assembly/infrared.dm index 37f5916d535..b9d3ee2afc1 100644 --- a/code/modules/assembly/infrared.dm +++ b/code/modules/assembly/infrared.dm @@ -29,8 +29,8 @@ return "The assembly is [secured ? "secure" : "not secure"]. The infrared trigger is [on ? "on" : "off"]." /obj/item/assembly/infra/examine(mob/user) - ..() - to_chat(user, describe()) + . = ..() + . += describe() /obj/item/assembly/infra/activate() if(!..()) diff --git a/code/modules/assembly/mousetrap.dm b/code/modules/assembly/mousetrap.dm index 3610ec8b451..912eff95981 100644 --- a/code/modules/assembly/mousetrap.dm +++ b/code/modules/assembly/mousetrap.dm @@ -9,9 +9,9 @@ bomb_name = "contact mine" /obj/item/assembly/mousetrap/examine(mob/user) - ..(user) + . = ..() if(armed) - to_chat(user, "It looks like it's armed.") + . += "It looks like it's armed." /obj/item/assembly/mousetrap/activate() if(..()) diff --git a/code/modules/awaymissions/mission_code/spacehotel.dm b/code/modules/awaymissions/mission_code/spacehotel.dm index d2fda046d7e..e9c74d73ea9 100644 --- a/code/modules/awaymissions/mission_code/spacehotel.dm +++ b/code/modules/awaymissions/mission_code/spacehotel.dm @@ -121,8 +121,8 @@ return ..() /obj/machinery/door/unpowered/hotel_door/examine(mob/user) - ..() - to_chat(user, "This room is currently [occupant ? "" : "un"]occupied.") + . = ..() + . += "This room is currently [occupant ? "" : "un"]occupied." /obj/machinery/door/unpowered/hotel_door/allowed(mob/living/carbon/user) for(var/obj/item/card/hotel_card/C in user.get_all_slots()) diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index d37c6fe9807..a65f6819d81 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -710,19 +710,19 @@ BLIND // can't see anything return FALSE /obj/item/clothing/under/examine(mob/user) - ..(user) - switch(src.sensor_mode) + . = ..() + switch(sensor_mode) if(0) - to_chat(user, "Its sensors appear to be disabled.") + . += "Its sensors appear to be disabled." if(1) - to_chat(user, "Its binary life sensors appear to be enabled.") + . += "Its binary life sensors appear to be enabled." if(2) - to_chat(user, "Its vital tracker appears to be enabled.") + . += "Its vital tracker appears to be enabled." if(3) - to_chat(user, "Its vital tracker and tracking beacon appear to be enabled.") + . += "Its vital tracker and tracking beacon appear to be enabled." if(accessories.len) for(var/obj/item/clothing/accessory/A in accessories) - to_chat(user, "\A [A] is attached to it.") + . += "\A [A] is attached to it." /obj/item/clothing/under/verb/rollsuit() diff --git a/code/modules/clothing/gloves/rings.dm b/code/modules/clothing/gloves/rings.dm index 9a512ca2cd5..6bef80bfe6d 100644 --- a/code/modules/clothing/gloves/rings.dm +++ b/code/modules/clothing/gloves/rings.dm @@ -21,11 +21,11 @@ icon_state = initial(icon_state) /obj/item/clothing/gloves/ring/examine(mob/user) - ..(user) + . = ..() if(!fluff_material) - to_chat(user, "This one is made of [material].") + . += "This one is made of [material]." if(stud) - to_chat(user, "It is adorned with a single gem.") + . += "It is adorned with a single gem." /obj/item/clothing/gloves/ring/attackby(obj/item/I as obj, mob/user as mob, params) if(istype(I, /obj/item/stack/sheet/mineral/diamond)) diff --git a/code/modules/clothing/shoes/magboots.dm b/code/modules/clothing/shoes/magboots.dm index 7a5bd2255da..b029f180fa7 100644 --- a/code/modules/clothing/shoes/magboots.dm +++ b/code/modules/clothing/shoes/magboots.dm @@ -33,8 +33,8 @@ return flags & NOSLIP /obj/item/clothing/shoes/magboots/examine(mob/user) - ..(user) - to_chat(user, "Its [magpulse_name] appears to be [magpulse ? "enabled" : "disabled"].") + . = ..() + . += "Its [magpulse_name] appears to be [magpulse ? "enabled" : "disabled"]." /obj/item/clothing/shoes/magboots/advance diff --git a/code/modules/clothing/spacesuits/alien.dm b/code/modules/clothing/spacesuits/alien.dm index 620ed257a09..c52fe271966 100644 --- a/code/modules/clothing/spacesuits/alien.dm +++ b/code/modules/clothing/spacesuits/alien.dm @@ -233,6 +233,6 @@ flags &= ~NODROP /obj/item/clothing/shoes/magboots/vox/examine(mob/user) - ..(user) + . = ..() if(magpulse) - to_chat(user, "It would be hard to take these off without relaxing your grip first.")//theoretically this message should only be seen by the wearer when the claws are equipped. + . += "It would be hard to take these off without relaxing your grip first."//theoretically this message should only be seen by the wearer when the claws are equipped. diff --git a/code/modules/clothing/spacesuits/breaches.dm b/code/modules/clothing/spacesuits/breaches.dm index d47f06b125b..c8891fde00d 100644 --- a/code/modules/clothing/spacesuits/breaches.dm +++ b/code/modules/clothing/spacesuits/breaches.dm @@ -215,7 +215,7 @@ var/global/list/breach_burn_descriptors = list( ..() /obj/item/clothing/suit/space/examine(mob/user) - ..(user) + . = ..() if(can_breach && breaches && breaches.len) for(var/datum/breach/B in breaches) - to_chat(user, "It has \a [B.descriptor].") + . += "It has \a [B.descriptor]." diff --git a/code/modules/clothing/spacesuits/ert.dm b/code/modules/clothing/spacesuits/ert.dm index 416aaace5a3..9f4590038be 100644 --- a/code/modules/clothing/spacesuits/ert.dm +++ b/code/modules/clothing/spacesuits/ert.dm @@ -26,8 +26,9 @@ to_chat(user, "User scanned as [camera.c_tag]. Camera activated.") /obj/item/clothing/head/helmet/space/hardsuit/ert/examine(mob/user) - if(..(user, 1) && has_camera) - to_chat(user, "This helmet has a built-in camera. It's [camera ? "" : "in"]active.") + . = ..() + if(in_range(user, src) && has_camera) + . += "This helmet has a built-in camera. It's [camera ? "" : "in"]active." /obj/item/clothing/suit/space/hardsuit/ert name = "emergency response team suit" diff --git a/code/modules/clothing/spacesuits/rig/modules/modules.dm b/code/modules/clothing/spacesuits/rig/modules/modules.dm index 12df59f70d7..19c10a31c58 100644 --- a/code/modules/clothing/spacesuits/rig/modules/modules.dm +++ b/code/modules/clothing/spacesuits/rig/modules/modules.dm @@ -55,15 +55,15 @@ var/list/stat_rig_module/stat_modules = new() -/obj/item/rig_module/examine() - ..() +/obj/item/rig_module/examine(mob/user) + . = ..() switch(damage) if(0) - to_chat(usr, "It is undamaged.") + . += "It is undamaged." if(1) - to_chat(usr, "It is badly damaged.") + . += "It is badly damaged." if(2) - to_chat(usr, "It is almost completely destroyed.") + . += "It is almost completely destroyed." /obj/item/rig_module/attackby(obj/item/W as obj, mob/user as mob) diff --git a/code/modules/clothing/spacesuits/rig/rig.dm b/code/modules/clothing/spacesuits/rig/rig.dm index b463a513764..dd1a6a895c3 100644 --- a/code/modules/clothing/spacesuits/rig/rig.dm +++ b/code/modules/clothing/spacesuits/rig/rig.dm @@ -84,18 +84,18 @@ var/datum/wires/rig/wires var/datum/effect_system/spark_spread/spark_system -/obj/item/rig/examine() - to_chat(usr, "This is [bicon(src)][src.name].") - to_chat(usr, "[src.desc]") +/obj/item/rig/examine(mob/user) + . = list("This is [src].") + . += "[desc]" if(wearer) for(var/obj/item/piece in list(helmet,gloves,chest,boots)) if(!piece || piece.loc != wearer) continue - to_chat(usr, "[bicon(piece)] \The [piece] [piece.gender == PLURAL ? "are" : "is"] deployed.") + . += "[bicon(piece)] \The [piece] [piece.gender == PLURAL ? "are" : "is"] deployed." - if(src.loc == usr) - to_chat(usr, "The maintenance panel is [open ? "open" : "closed"].") - to_chat(usr, "Hardsuit systems are [offline ? "offline" : "online"].") + if(loc == usr) + . += "The maintenance panel is [open ? "open" : "closed"]." + . += "Hardsuit systems are [offline ? "offline" : "online"]." /obj/item/rig/get_cell() return cell diff --git a/code/modules/clothing/under/accessories/accessory.dm b/code/modules/clothing/under/accessories/accessory.dm index 9b1a0dbc146..216ac78f450 100644 --- a/code/modules/clothing/under/accessories/accessory.dm +++ b/code/modules/clothing/under/accessories/accessory.dm @@ -665,9 +665,9 @@ return access_id ? access_id.GetAccess() : ..() /obj/item/clothing/accessory/petcollar/examine(mob/user) - ..() + . = ..() if(access_id) - to_chat(user, "There is [bicon(access_id)] \a [access_id] clipped onto it.") + . += "There is [bicon(access_id)] \a [access_id] clipped onto it." /obj/item/clothing/accessory/petcollar/equipped(mob/living/simple_animal/user) if(istype(user)) diff --git a/code/modules/clothing/under/accessories/holster.dm b/code/modules/clothing/under/accessories/holster.dm index 29b89e8418d..9da7223be0c 100644 --- a/code/modules/clothing/under/accessories/holster.dm +++ b/code/modules/clothing/under/accessories/holster.dm @@ -87,11 +87,11 @@ ..() /obj/item/clothing/accessory/holster/examine(mob/user) - ..(user) + . = ..() if(holstered) - to_chat(user, "A [holstered] is holstered here.") + . += "A [holstered] is holstered here." else - to_chat(user, "It is empty.") + . += "It is empty." /obj/item/clothing/accessory/holster/on_attached(obj/item/clothing/under/S, mob/user as mob) ..() diff --git a/code/modules/clothing/under/jobs/plasmamen/_plasmamen.dm b/code/modules/clothing/under/jobs/plasmamen/_plasmamen.dm index 5c38361e0b2..617e0284848 100644 --- a/code/modules/clothing/under/jobs/plasmamen/_plasmamen.dm +++ b/code/modules/clothing/under/jobs/plasmamen/_plasmamen.dm @@ -15,8 +15,8 @@ item_color = "plasmaman" /obj/item/clothing/under/plasmaman/examine(mob/user) - ..() - to_chat(user, "There are [extinguishes_left] extinguisher charges left in this suit.") + . = ..() + . += "There are [extinguishes_left] extinguisher charges left in this suit." /obj/item/clothing/under/plasmaman/proc/Extinguish(mob/living/carbon/human/H) if(!istype(H)) diff --git a/code/modules/countdown/countdown.dm b/code/modules/countdown/countdown.dm index 8769e5e321a..d8094f5bdf3 100644 --- a/code/modules/countdown/countdown.dm +++ b/code/modules/countdown/countdown.dm @@ -20,7 +20,7 @@ /obj/effect/countdown/examine(mob/user) . = ..() - to_chat(user, "This countdown is displaying: [displayed_text]") + . += "This countdown is displaying: [displayed_text]" /obj/effect/countdown/proc/attach(atom/A) attached_to = A diff --git a/code/modules/events/spacevine.dm b/code/modules/events/spacevine.dm index c7330151b00..ef02ce39b1a 100644 --- a/code/modules/events/spacevine.dm +++ b/code/modules/events/spacevine.dm @@ -423,7 +423,7 @@ color = "#ffffff" /obj/structure/spacevine/examine(mob/user) - ..() + . = ..() var/text = "This one is a" if(mutations.len) for(var/A in mutations) @@ -432,7 +432,7 @@ else text += " normal" text += " vine." - to_chat(user, text) + . += text /obj/structure/spacevine/proc/wither() for(var/datum/spacevine_mutation/SM in mutations) diff --git a/code/modules/fish/fishtank.dm b/code/modules/fish/fishtank.dm index 33acde9861d..f827b061b93 100644 --- a/code/modules/fish/fishtank.dm +++ b/code/modules/fish/fishtank.dm @@ -369,7 +369,7 @@ ////////////////////////////// Feel free to try cleaning it up if you think of a better way to do it. /obj/machinery/fishtank/examine(mob/user) - ..(user) + . = ..() var/examine_message = "" //Approximate water level @@ -474,8 +474,7 @@ //Finally, report the full examine_message constructed from the above reports - to_chat(user, "[examine_message]") - return examine_message + . += "[examine_message]" ////////////////////////////// // ATACK PROCS // diff --git a/code/modules/food_and_drinks/drinks/drinks.dm b/code/modules/food_and_drinks/drinks/drinks.dm index d85b882e7db..57a4e4e9bcc 100644 --- a/code/modules/food_and_drinks/drinks/drinks.dm +++ b/code/modules/food_and_drinks/drinks/drinks.dm @@ -108,19 +108,19 @@ return FALSE /obj/item/reagent_containers/food/drinks/examine(mob/user) - if(!..(user, 1)) - return - if(!reagents || reagents.total_volume == 0) - to_chat(user, " \The [src] is empty!") - else if(reagents.total_volume <= volume/4) - to_chat(user, " \The [src] is almost empty!") - else if(reagents.total_volume <= volume*0.66) - to_chat(user, " \The [src] is half full!")// We're all optimistic, right?! + . = ..() + if(in_range(user, src)) + if(!reagents || reagents.total_volume == 0) + . += " \The [src] is empty!" + else if(reagents.total_volume <= volume/4) + . += " \The [src] is almost empty!" + else if(reagents.total_volume <= volume*0.66) + . += " \The [src] is half full!"// We're all optimistic, right?! - else if(reagents.total_volume <= volume*0.90) - to_chat(user, " \The [src] is almost full!") - else - to_chat(user, " \The [src] is full!") + else if(reagents.total_volume <= volume*0.90) + . += " \The [src] is almost full!" + else + . += " \The [src] is full!" //////////////////////////////////////////////////////////////////////////////// /// Drinks. END diff --git a/code/modules/food_and_drinks/food/customizables.dm b/code/modules/food_and_drinks/food/customizables.dm index bebef085297..ef2ad5f777b 100644 --- a/code/modules/food_and_drinks/food/customizables.dm +++ b/code/modules/food_and_drinks/food/customizables.dm @@ -387,10 +387,10 @@ return ..() /obj/item/reagent_containers/food/snacks/customizable/examine(mob/user) - ..(user) + . = ..() if(LAZYLEN(ingredients)) var/whatsinside = pick(ingredients) - to_chat(user, " You think you can see [whatsinside] in there.") + . += " You think you can see [whatsinside] in there." /obj/item/reagent_containers/food/snacks/customizable/proc/newname() diff --git a/code/modules/food_and_drinks/food/snacks.dm b/code/modules/food_and_drinks/food/snacks.dm index 672285b84d3..b2f0f5eb690 100644 --- a/code/modules/food_and_drinks/food/snacks.dm +++ b/code/modules/food_and_drinks/food/snacks.dm @@ -71,15 +71,15 @@ return /obj/item/reagent_containers/food/snacks/examine(mob/user) - if(..(user, 0)) - if(bitecount==0) - return - else if(bitecount==1) - to_chat(user, "[src] was bitten by someone!") - else if(bitecount<=3) - to_chat(user, "[src] was bitten [bitecount] times!") - else - to_chat(user, "[src] was bitten multiple times!") + . = ..() + if(in_range(user, src)) + if(bitecount > 0) + if(bitecount==1) + . += "[src] was bitten by someone!" + else if(bitecount<=3) + . += "[src] was bitten [bitecount] times!" + else + . += "[src] was bitten multiple times!" /obj/item/reagent_containers/food/snacks/attackby(obj/item/W, mob/user, params) @@ -180,7 +180,7 @@ /obj/item/reagent_containers/food/snacks/sliceable/examine(mob/user) . = ..() - to_chat(user, "Alt-click to put something small inside.") + . += "Alt-click to put something small inside." /obj/item/reagent_containers/food/snacks/sliceable/AltClick(mob/user) var/obj/item/I = user.get_active_hand() diff --git a/code/modules/games/cards.dm b/code/modules/games/cards.dm index 872bdc8e327..7be44052729 100644 --- a/code/modules/games/cards.dm +++ b/code/modules/games/cards.dm @@ -39,8 +39,8 @@ ..() /obj/item/deck/examine(mob/user) - ..() - to_chat(user,"It contains [cards.len ? cards.len : "no"] cards") + . = ..() + . +="It contains [cards.len ? cards.len : "no"] cards" /obj/item/deck/attack_hand(mob/user as mob) draw_card(user) @@ -313,11 +313,11 @@ user.visible_message("[user] [concealed ? "conceals" : "reveals"] their hand.") /obj/item/cardhand/examine(mob/user) - ..(user) + . = ..() if((!concealed) && cards.len) - to_chat(user,"It contains:") + . +="It contains:" for(var/datum/playingcard/P in cards) - to_chat(user,"the [P.name].") + . +="the [P.name]." // Datum action here diff --git a/code/modules/hydroponics/beekeeping/beebox.dm b/code/modules/hydroponics/beekeeping/beebox.dm index 21ba7cb89e2..ef1a10cd85f 100644 --- a/code/modules/hydroponics/beekeeping/beebox.dm +++ b/code/modules/hydroponics/beekeeping/beebox.dm @@ -127,25 +127,25 @@ /obj/structure/beebox/examine(mob/user) - ..() + . = ..() if(!queen_bee) - to_chat(user, "There is no queen bee! There won't bee any honeycomb without a queen!") + . += "There is no queen bee! There won't bee any honeycomb without a queen!" var/half_bee = get_max_bees()*0.5 if(half_bee && (bees.len >= half_bee)) - to_chat(user, "This place is a BUZZ with activity... there are lots of bees!") + . += "This place is a BUZZ with activity... there are lots of bees!" - to_chat(user, "[bee_resources]/100 resource supply.") - to_chat(user, "[bee_resources]% towards a new honeycomb.") - to_chat(user, "[bee_resources*2]% towards a new bee.") + . += "[bee_resources]/100 resource supply." + . += "[bee_resources]% towards a new honeycomb." + . += "[bee_resources*2]% towards a new bee." if(honeycombs.len) var/plural = honeycombs.len > 1 - to_chat(user, "There [plural? "are" : "is"] [honeycombs.len] uncollected honeycomb[plural ? "s":""] in the apiary.") + . += "There [plural? "are" : "is"] [honeycombs.len] uncollected honeycomb[plural ? "s":""] in the apiary." if(honeycombs.len >= get_max_honeycomb()) - to_chat(user, "there's no room for more honeycomb!") + . += "there's no room for more honeycomb!" /obj/structure/beebox/attackby(obj/item/I, mob/user, params) diff --git a/code/modules/hydroponics/fermenting_barrel.dm b/code/modules/hydroponics/fermenting_barrel.dm index e701406897c..f194c48e019 100644 --- a/code/modules/hydroponics/fermenting_barrel.dm +++ b/code/modules/hydroponics/fermenting_barrel.dm @@ -17,7 +17,7 @@ /obj/structure/fermenting_barrel/examine(mob/user) . = ..() - to_chat(user, "It is currently [open ? "open, letting you pour liquids in." : "closed, letting you draw liquids from the tap."] ") + . += "It is currently [open ? "open, letting you pour liquids in." : "closed, letting you draw liquids from the tap."] " /obj/structure/fermenting_barrel/proc/makeWine(obj/item/reagent_containers/food/snacks/grown/G) if(G.reagents) diff --git a/code/modules/hydroponics/gene_modder.dm b/code/modules/hydroponics/gene_modder.dm index 87c98f211f6..17246d6cba1 100644 --- a/code/modules/hydroponics/gene_modder.dm +++ b/code/modules/hydroponics/gene_modder.dm @@ -479,8 +479,8 @@ to_chat(user, "You flip the write-protect tab to [read_only ? "protected" : "unprotected"].") /obj/item/disk/plantgene/examine(mob/user) - ..() - to_chat(user, "The write-protect tab is set to [read_only ? "protected" : "unprotected"].") + . = ..() + . += "The write-protect tab is set to [read_only ? "protected" : "unprotected"]." /* diff --git a/code/modules/hydroponics/grown.dm b/code/modules/hydroponics/grown.dm index 63d21bced03..c64faba07ad 100644 --- a/code/modules/hydroponics/grown.dm +++ b/code/modules/hydroponics/grown.dm @@ -55,11 +55,11 @@ return 0 /obj/item/reagent_containers/food/snacks/grown/examine(user) - ..() + . = ..() if(seed) for(var/datum/plant_gene/trait/T in seed.genes) if(T.examine_line) - to_chat(user, T.examine_line) + . += T.examine_line /obj/item/reagent_containers/food/snacks/grown/attackby(obj/item/O, mob/user, params) ..() diff --git a/code/modules/hydroponics/hydroponics.dm b/code/modules/hydroponics/hydroponics.dm index 2d3adacefbf..7e31c1a7b7e 100644 --- a/code/modules/hydroponics/hydroponics.dm +++ b/code/modules/hydroponics/hydroponics.dm @@ -339,32 +339,32 @@ /obj/machinery/hydroponics/examine(user) - ..() + . = ..() if(myseed) - to_chat(user, "It has [myseed.plantname] planted.") + . += "It has [myseed.plantname] planted." if (dead) - to_chat(user, "It's dead!") + . += "It's dead!" else if (harvest) - to_chat(user, "It's ready to harvest.") + . += "It's ready to harvest." else if (plant_health <= (myseed.endurance / 2)) - to_chat(user, "It looks unhealthy.") + . += "It looks unhealthy." else - to_chat(user, "[src] is empty.") + . += "[src] is empty." if(!self_sustaining) - to_chat(user, "Water: [waterlevel]/[maxwater]") - to_chat(user, "Nutrient: [nutrilevel]/[maxnutri]") + . += "Water: [waterlevel]/[maxwater]" + . += "Nutrient: [nutrilevel]/[maxnutri]" if(self_sufficiency_progress > 0) var/percent_progress = round(self_sufficiency_progress * 100 / self_sufficiency_req) - to_chat(user, "Treatment for self-sustenance are [percent_progress]% complete.") + . += "Treatment for self-sustenance are [percent_progress]% complete." else - to_chat(user, "It doesn't require any water or nutrients.") + . += "It doesn't require any water or nutrients." if(weedlevel >= 5) - to_chat(user, "[src] is filled with weeds!") + . += "[src] is filled with weeds!" if(pestlevel >= 5) - to_chat(user, "[src] is filled with tiny worms!") - to_chat(user, "") // Empty line for readability. + . += "[src] is filled with tiny worms!" + . += "" // Empty line for readability. /obj/machinery/hydroponics/proc/weedinvasion() // If a weed growth is sufficient, this happens. diff --git a/code/modules/mining/equipment/kinetic_crusher.dm b/code/modules/mining/equipment/kinetic_crusher.dm index d340e6069cc..df943d6f30d 100644 --- a/code/modules/mining/equipment/kinetic_crusher.dm +++ b/code/modules/mining/equipment/kinetic_crusher.dm @@ -32,12 +32,12 @@ return ..() /obj/item/twohanded/kinetic_crusher/examine(mob/living/user) - ..() - to_chat(user, "Mark a large creature with the destabilizing force, then hit them in melee to do [force + detonation_damage] damage.") - to_chat(user, "Does [force + detonation_damage + backstab_bonus] damage if the target is backstabbed, instead of [force + detonation_damage].") + . = ..() + . += "Mark a large creature with the destabilizing force, then hit them in melee to do [force + detonation_damage] damage." + . += "Does [force + detonation_damage + backstab_bonus] damage if the target is backstabbed, instead of [force + detonation_damage]." for(var/t in trophies) var/obj/item/crusher_trophy/T = t - to_chat(user, "It has \a [T] attached, which causes [T.effect_desc()].") + . += "It has \a [T] attached, which causes [T.effect_desc()]." /obj/item/twohanded/kinetic_crusher/attackby(obj/item/I, mob/living/user) if(iscrowbar(I)) @@ -191,8 +191,8 @@ var/denied_type = /obj/item/crusher_trophy /obj/item/crusher_trophy/examine(mob/living/user) - ..() - to_chat(user, "Causes [effect_desc()] when attached to a kinetic crusher.") + . = ..() + . += "Causes [effect_desc()] when attached to a kinetic crusher." /obj/item/crusher_trophy/proc/effect_desc() return "errors" diff --git a/code/modules/mining/equipment/lazarus_injector.dm b/code/modules/mining/equipment/lazarus_injector.dm index 0f174ff748f..e2a7c192153 100644 --- a/code/modules/mining/equipment/lazarus_injector.dm +++ b/code/modules/mining/equipment/lazarus_injector.dm @@ -59,11 +59,11 @@ malfunctioning = 1 /obj/item/lazarus_injector/examine(mob/user) - ..(user) + . = ..() if(!loaded) - to_chat(user, "[src] is empty.") + . += "[src] is empty." if(malfunctioning) - to_chat(user, "The display on [src] seems to be flickering.") + . += "The display on [src] seems to be flickering." /*********************Mob Capsule*************************/ diff --git a/code/modules/mining/equipment/marker_beacons.dm b/code/modules/mining/equipment/marker_beacons.dm index 3a31e59cd55..9ae6bb19fa0 100644 --- a/code/modules/mining/equipment/marker_beacons.dm +++ b/code/modules/mining/equipment/marker_beacons.dm @@ -35,9 +35,9 @@ GLOBAL_LIST_INIT(marker_beacon_colors, list( update_icon() /obj/item/stack/marker_beacon/examine(mob/user) - ..() - to_chat(user, "Use in-hand to place a [singular_name].") - to_chat(user, "Alt-click to select a color. Current color is [picked_color].") + . = ..() + . += "Use in-hand to place a [singular_name]." + . += "Alt-click to select a color. Current color is [picked_color]." /obj/item/stack/marker_beacon/update_icon() icon_state = "[initial(icon_state)][lowertext(picked_color)]" @@ -92,8 +92,8 @@ GLOBAL_LIST_INIT(marker_beacon_colors, list( qdel(src) /obj/structure/marker_beacon/examine(mob/user) - ..() - to_chat(user, "Alt-click to select a color. Current color is [picked_color].") + . = ..() + . += "Alt-click to select a color. Current color is [picked_color]." /obj/structure/marker_beacon/update_icon() while(!picked_color || !GLOB.marker_beacon_colors[picked_color]) diff --git a/code/modules/mining/equipment/survival_pod.dm b/code/modules/mining/equipment/survival_pod.dm index 972ca9af868..5e71a4438b2 100644 --- a/code/modules/mining/equipment/survival_pod.dm +++ b/code/modules/mining/equipment/survival_pod.dm @@ -27,8 +27,8 @@ /obj/item/survivalcapsule/examine(mob/user) . = ..() get_template() - to_chat(user, "This capsule has the [template.name] stored.") - to_chat(user, template.description) + . += "This capsule has the [template.name] stored." + . += template.description /obj/item/survivalcapsule/attack_self() // Can't grab when capsule is New() because templates aren't loaded then diff --git a/code/modules/mining/fulton.dm b/code/modules/mining/fulton.dm index 2d09c6a8e7a..06f543c5907 100644 --- a/code/modules/mining/fulton.dm +++ b/code/modules/mining/fulton.dm @@ -14,8 +14,8 @@ GLOBAL_LIST_EMPTY(total_extraction_beacons) var/max_force_fulton = MOVE_FORCE_STRONG /obj/item/extraction_pack/examine(mob/user) - ..() - to_chat(user, "It has [uses_left] use\s remaining.") + . = ..() + . += "It has [uses_left] use\s remaining." /obj/item/extraction_pack/attack_self(mob/user) var/list/possible_beacons = list() diff --git a/code/modules/mining/lavaland/loot/hierophant_loot.dm b/code/modules/mining/lavaland/loot/hierophant_loot.dm index d86226943a2..a25d822af8c 100644 --- a/code/modules/mining/lavaland/loot/hierophant_loot.dm +++ b/code/modules/mining/lavaland/loot/hierophant_loot.dm @@ -27,8 +27,8 @@ var/friendly_fire_check = FALSE //if the blasts we make will consider our faction against the faction of hit targets /obj/item/hierophant_club/examine(mob/user) - ..() - to_chat(user, "The[beacon ? " beacon is not currently":"re is a beacon"] attached.") + . = ..() + . += "The[beacon ? " beacon is not currently":"re is a beacon"] attached." /obj/item/hierophant_club/suicide_act(mob/living/user) atom_say("Xverwpsgexmrk...") diff --git a/code/modules/mining/machine_vending.dm b/code/modules/mining/machine_vending.dm index 8f85908a995..b20bcb347de 100644 --- a/code/modules/mining/machine_vending.dm +++ b/code/modules/mining/machine_vending.dm @@ -275,8 +275,8 @@ ..() /obj/item/card/mining_point_card/examine(mob/user) - ..(user) - to_chat(user, "There's [points] points on the card.") + . = ..() + . += "There's [points] points on the card." /**********************Conscription Kit**********************/ diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm index fc4a14c6e6d..b00883c4cdd 100644 --- a/code/modules/mob/dead/observer/observer.dm +++ b/code/modules/mob/dead/observer/observer.dm @@ -97,9 +97,9 @@ GLOBAL_VAR_INIT(observer_default_invisibility, INVISIBILITY_OBSERVER) return ..() /mob/dead/observer/examine(mob/user) - ..() + . = ..() if(!invisibility) - to_chat(user, "It seems extremely obvious.") + . += "It seems extremely obvious." // This seems stupid, but it's the easiest way to avoid absolutely ridiculous shit from happening // Copying an appearance directly from a mob includes it's verb list, it's invisibility, it's alpha, and it's density diff --git a/code/modules/mob/living/carbon/alien/special/facehugger.dm b/code/modules/mob/living/carbon/alien/special/facehugger.dm index e5bea0357eb..1d39eb03c88 100644 --- a/code/modules/mob/living/carbon/alien/special/facehugger.dm +++ b/code/modules/mob/living/carbon/alien/special/facehugger.dm @@ -43,16 +43,15 @@ var/const/MAX_ACTIVE_TIME = 400 Attach(M) /obj/item/clothing/mask/facehugger/examine(mob/user) - ..(user) - if(!real)//So that giant red text about probisci doesn't show up. - return - switch(stat) - if(DEAD,UNCONSCIOUS) - to_chat(user, "[src] is not moving.") - if(CONSCIOUS) - to_chat(user, "[src] seems to be active!") - if(sterile) - to_chat(user, "It looks like the proboscis has been removed.") + . = ..() + if(real)//So that giant red text about probisci doesn't show up for fake ones + switch(stat) + if(DEAD,UNCONSCIOUS) + . += "[src] is not moving." + if(CONSCIOUS) + . += "[src] seems to be active!" + if(sterile) + . += "It looks like the proboscis has been removed." /obj/item/clothing/mask/facehugger/attackby(obj/item/O,mob/m, params) if(O.force) diff --git a/code/modules/mob/living/carbon/brain/MMI.dm b/code/modules/mob/living/carbon/brain/MMI.dm index 6b194315f1d..ffe70211a37 100644 --- a/code/modules/mob/living/carbon/brain/MMI.dm +++ b/code/modules/mob/living/carbon/brain/MMI.dm @@ -169,7 +169,7 @@ /obj/item/mmi/examine(mob/user) . = ..() if(radio) - to_chat(user, "A radio is installed on [src].") + . += "A radio is installed on [src]." /obj/item/mmi/proc/install_radio() radio = new(src) diff --git a/code/modules/mob/living/carbon/brain/brain_item.dm b/code/modules/mob/living/carbon/brain/brain_item.dm index af1d7680aca..3017257069a 100644 --- a/code/modules/mob/living/carbon/brain/brain_item.dm +++ b/code/modules/mob/living/carbon/brain/brain_item.dm @@ -50,11 +50,11 @@ to_chat(brainmob, "You feel slightly disoriented. That's normal when you're just a [initial(src.name)].") /obj/item/organ/internal/brain/examine(mob/user) // -- TLE - ..(user) + . = ..() if(brainmob && brainmob.client)//if thar be a brain inside... the brain. - to_chat(user, "You can feel the small spark of life still left in this one.") + . += "You can feel the small spark of life still left in this one." else - to_chat(user, "This one seems particularly lifeless. Perhaps it will regain some of its luster later..") + . += "This one seems particularly lifeless. Perhaps it will regain some of its luster later.." /obj/item/organ/internal/brain/remove(var/mob/living/user,special = 0) if(dna) diff --git a/code/modules/mob/living/carbon/brain/robotic_brain.dm b/code/modules/mob/living/carbon/brain/robotic_brain.dm index 6528d9c252e..320152a7bee 100644 --- a/code/modules/mob/living/carbon/brain/robotic_brain.dm +++ b/code/modules/mob/living/carbon/brain/robotic_brain.dm @@ -166,12 +166,9 @@ /obj/item/mmi/robotic_brain/examine(mob/user) - to_chat(user, "Its speaker is turned [silenced ? "off" : "on"].") - to_chat(user, "*---------*") + . += "Its speaker is turned [silenced ? "off" : "on"]." + . += "*---------*" . = ..() - if(!.) - to_chat(user, "*---------*") - return var/list/msg = list("") @@ -187,7 +184,7 @@ else msg += "It appears to be completely inactive.\n" msg += "*---------*" - to_chat(user, msg.Join("")) + . += msg.Join("") /obj/item/mmi/robotic_brain/emp_act(severity) if(!brainmob) diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index 1862fe5cffa..7a18e881eb6 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -374,7 +374,7 @@ pose = addtext(pose,".") //Makes sure all emotes end with a period. msg += "\n[p_they(TRUE)] [p_are()] [pose]" - to_chat(user, msg) + . = list(msg) //Helper procedure. Called by /mob/living/carbon/human/examine() and /mob/living/carbon/human/Topic() to determine HUD access to security and medical records. /proc/hasHUD(mob/M as mob, hudtype) diff --git a/code/modules/mob/living/silicon/ai/examine.dm b/code/modules/mob/living/silicon/ai/examine.dm index c519ba0846a..1b8a4fa43c3 100644 --- a/code/modules/mob/living/silicon/ai/examine.dm +++ b/code/modules/mob/living/silicon/ai/examine.dm @@ -1,9 +1,5 @@ /mob/living/silicon/ai/examine(mob/user) - to_chat(user, "*---------*") - if(!..(user)) - to_chat(user, "*---------*") - return - + . = ..() var/msg = "" if(src.stat == DEAD) msg += "It appears to be powered-down.\n" @@ -26,7 +22,7 @@ msg += "" msg += "*---------*
" - to_chat(user, msg) + . += msg user.showLaws(src) diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index d2e52c39197..cb6b3eaa104 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -525,8 +525,7 @@ density = 0 //this is reset every canmove update otherwise /mob/living/silicon/pai/examine(mob/user) - to_chat(user, "*---------*") - ..(user) + . = ..() var/msg = "" @@ -544,7 +543,7 @@ msg += "\nIt is [pose]" msg += "\n*---------*" - to_chat(user, msg) + . += msg /mob/living/silicon/pai/bullet_act(var/obj/item/projectile/Proj) ..(Proj) diff --git a/code/modules/mob/living/silicon/robot/drone/drone_manufacturer.dm b/code/modules/mob/living/silicon/robot/drone/drone_manufacturer.dm index 35bbad68b6a..50463b17bec 100644 --- a/code/modules/mob/living/silicon/robot/drone/drone_manufacturer.dm +++ b/code/modules/mob/living/silicon/robot/drone/drone_manufacturer.dm @@ -46,9 +46,9 @@ visible_message("\The [src] voices a strident beep, indicating a drone chassis is prepared.") /obj/machinery/drone_fabricator/examine(mob/user) - ..(user) + . = ..() if(produce_drones && drone_progress >= 100 && istype(user,/mob/dead) && config.allow_drone_spawn && count_drones() < config.max_maint_drones) - to_chat(user, "
A drone is prepared. Select 'Join As Drone' from the Ghost tab to spawn as a maintenance drone.") + . += "
A drone is prepared. Select 'Join As Drone' from the Ghost tab to spawn as a maintenance drone." /obj/machinery/drone_fabricator/proc/count_drones() var/drones = 0 diff --git a/code/modules/mob/living/silicon/robot/examine.dm b/code/modules/mob/living/silicon/robot/examine.dm index 98b540347ac..56d01fea839 100644 --- a/code/modules/mob/living/silicon/robot/examine.dm +++ b/code/modules/mob/living/silicon/robot/examine.dm @@ -1,6 +1,5 @@ /mob/living/silicon/robot/examine(mob/user) - to_chat(user, "*---------*") - ..(user) + . = ..() var/msg = "" if(module) @@ -55,5 +54,5 @@ pose = addtext(pose,".") //Makes sure all emotes end with a period. msg += "\nIt is [pose]" - to_chat(user, msg) + . += msg user.showLaws(src) \ No newline at end of file diff --git a/code/modules/mob/living/simple_animal/bot/bot.dm b/code/modules/mob/living/simple_animal/bot/bot.dm index 76f88220eda..1fba341fd59 100644 --- a/code/modules/mob/living/simple_animal/bot/bot.dm +++ b/code/modules/mob/living/simple_animal/bot/bot.dm @@ -232,14 +232,14 @@ to_chat(user, "You need to open maintenance panel first!") /mob/living/simple_animal/bot/examine(mob/user) - ..() + . = ..() if(health < maxHealth) if(health > maxHealth/3) - to_chat(user, "[src]'s parts look loose.") + . += "[src]'s parts look loose." else - to_chat(user, "[src]'s parts look very loose!") + . += "[src]'s parts look very loose!" else - to_chat(user, "[src] is in pristine condition.") + . += "[src] is in pristine condition." /mob/living/simple_animal/bot/adjustHealth(amount, updating_health = TRUE) if(amount > 0 && prob(10)) diff --git a/code/modules/mob/living/simple_animal/constructs.dm b/code/modules/mob/living/simple_animal/constructs.dm index 218693b7dc3..35fde25b202 100644 --- a/code/modules/mob/living/simple_animal/constructs.dm +++ b/code/modules/mob/living/simple_animal/constructs.dm @@ -48,8 +48,7 @@ updateglow() /mob/living/simple_animal/hostile/construct/examine(mob/user) - to_chat(user, "*---------*") - ..(user) + . = ..() var/msg = "" if(src.health < src.maxHealth) @@ -61,7 +60,7 @@ msg += "" msg += "*---------*
" - to_chat(user, msg) + . += msg /mob/living/simple_animal/hostile/construct/attack_animal(mob/living/simple_animal/M) if(istype(M, /mob/living/simple_animal/hostile/construct/builder)) diff --git a/code/modules/mob/living/simple_animal/hostile/bees.dm b/code/modules/mob/living/simple_animal/hostile/bees.dm index 540e4bbf28e..6349c50851d 100644 --- a/code/modules/mob/living/simple_animal/hostile/bees.dm +++ b/code/modules/mob/living/simple_animal/hostile/bees.dm @@ -79,9 +79,9 @@ beehome = null /mob/living/simple_animal/hostile/poison/bees/examine(mob/user) - ..() + . = ..() if(!bee_syndicate && !beehome) - to_chat(user, "This bee is homeless!") + . += "This bee is homeless!" /mob/living/simple_animal/hostile/poison/bees/proc/generate_bee_visuals() overlays.Cut() diff --git a/code/modules/mob/living/simple_animal/hostile/headslug.dm b/code/modules/mob/living/simple_animal/hostile/headslug.dm index 99c11431695..d2329162da7 100644 --- a/code/modules/mob/living/simple_animal/hostile/headslug.dm +++ b/code/modules/mob/living/simple_animal/hostile/headslug.dm @@ -24,9 +24,9 @@ var/egg_lain = 0 /mob/living/simple_animal/hostile/headslug/examine(mob/user) - ..() + . = ..() if(stat == DEAD) - to_chat(desc = "It appears to be dead.") + . += "It appears to be dead." /mob/living/simple_animal/hostile/headslug/proc/Infect(mob/living/carbon/victim) var/obj/item/organ/internal/body_egg/changeling_egg/egg = new(victim) diff --git a/code/modules/mob/living/simple_animal/hostile/hellhound.dm b/code/modules/mob/living/simple_animal/hostile/hellhound.dm index 2f149fbf3ee..d83ca04d6c4 100644 --- a/code/modules/mob/living/simple_animal/hostile/hellhound.dm +++ b/code/modules/mob/living/simple_animal/hostile/hellhound.dm @@ -72,7 +72,7 @@ msgs += "It is currently licking its wounds, regenerating the damage to its body!" else msgs += "It is currently resting." - to_chat(usr,msgs.Join("
")) + . += msgs.Join("
") /mob/living/simple_animal/hostile/hellhound/Life(seconds, times_fired) . = ..() diff --git a/code/modules/mob/living/simple_animal/hostile/illusion.dm b/code/modules/mob/living/simple_animal/hostile/illusion.dm index 29739a9d867..3756fabf522 100644 --- a/code/modules/mob/living/simple_animal/hostile/illusion.dm +++ b/code/modules/mob/living/simple_animal/hostile/illusion.dm @@ -40,9 +40,9 @@ /mob/living/simple_animal/hostile/illusion/examine(mob/user) if(parent_mob) - parent_mob.examine(user) + . = parent_mob.examine(user) else - return ..() + . = ..() /mob/living/simple_animal/hostile/illusion/AttackingTarget() diff --git a/code/modules/mob/living/simple_animal/hostile/mushroom.dm b/code/modules/mob/living/simple_animal/hostile/mushroom.dm index 99689bf5040..927056c29db 100644 --- a/code/modules/mob/living/simple_animal/hostile/mushroom.dm +++ b/code/modules/mob/living/simple_animal/hostile/mushroom.dm @@ -36,11 +36,11 @@ var/image/cap_dead = null /mob/living/simple_animal/hostile/mushroom/examine(mob/user) - ..(user) + . = ..() if(health >= maxHealth) - to_chat(user, "It looks healthy.") + . += "It looks healthy." else - to_chat(user, "It looks like it's been roughed up.") + . += "It looks like it's been roughed up." /mob/living/simple_animal/hostile/mushroom/Life(seconds, times_fired) ..() diff --git a/code/modules/mob/living/simple_animal/hostile/netherworld.dm b/code/modules/mob/living/simple_animal/hostile/netherworld.dm index 8f4ef5c7810..92c01d7d72b 100644 --- a/code/modules/mob/living/simple_animal/hostile/netherworld.dm +++ b/code/modules/mob/living/simple_animal/hostile/netherworld.dm @@ -81,11 +81,11 @@ START_PROCESSING(SSprocessing, src) /obj/structure/spawner/nether/examine(mob/user) - ..() + . = ..() if(isskeleton(user) || iszombie(user)) - to_chat(user, "A direct link to another dimension full of creatures very happy to see you. You can see your house from here!") + . += "A direct link to another dimension full of creatures very happy to see you. You can see your house from here!" else - to_chat(user, "A direct link to another dimension full of creatures not very happy to see you. Entering the link would be a very bad idea.") + . += "A direct link to another dimension full of creatures not very happy to see you. Entering the link would be a very bad idea." /obj/structure/spawner/nether/attack_hand(mob/user) . = ..() diff --git a/code/modules/mob/living/simple_animal/hostile/terror_spiders/terror_spiders.dm b/code/modules/mob/living/simple_animal/hostile/terror_spiders/terror_spiders.dm index 23d7b30691b..d6d64096ff1 100644 --- a/code/modules/mob/living/simple_animal/hostile/terror_spiders/terror_spiders.dm +++ b/code/modules/mob/living/simple_animal/hostile/terror_spiders/terror_spiders.dm @@ -220,7 +220,7 @@ var/global/list/ts_spiderling_list = list() // -------------------------------------------------------------------------------- /mob/living/simple_animal/hostile/poison/terror_spider/examine(mob/user) - ..() + . = ..() var/list/msgs = list() if(stat == DEAD) msgs += "It appears to be dead.\n" @@ -241,7 +241,7 @@ var/global/list/ts_spiderling_list = list() msgs += "It appears to be regenerating quickly." if(killcount >= 1) msgs += "It has blood dribbling from its mouth." - to_chat(usr,msgs.Join("
")) + . += msgs.Join("
") /mob/living/simple_animal/hostile/poison/terror_spider/New() ..() diff --git a/code/modules/mob/living/simple_animal/posessed_object.dm b/code/modules/mob/living/simple_animal/posessed_object.dm index f290dd7f2ef..acd71fdcaff 100644 --- a/code/modules/mob/living/simple_animal/posessed_object.dm +++ b/code/modules/mob/living/simple_animal/posessed_object.dm @@ -20,11 +20,11 @@ var/obj/item/possessed_item /mob/living/simple_animal/possessed_object/examine(mob/user) - possessed_item.examine(user) + . = possessed_item.examine(user) if(health > (maxHealth / 30)) - to_chat(usr, "[src] appears to be floating without any support!") + . += "[src] appears to be floating without any support!" else - to_chat(usr, "[src] appears to be having trouble staying afloat!") + . += "[src] appears to be having trouble staying afloat!" /mob/living/simple_animal/possessed_object/do_attack_animation(atom/A, visual_effect_icon, used_item, no_effect, end_pixel_y) diff --git a/code/modules/mob/living/simple_animal/simple_animal.dm b/code/modules/mob/living/simple_animal/simple_animal.dm index 502adb937e3..da08f257268 100644 --- a/code/modules/mob/living/simple_animal/simple_animal.dm +++ b/code/modules/mob/living/simple_animal/simple_animal.dm @@ -140,7 +140,7 @@ /mob/living/simple_animal/examine(mob/user) . = ..() if(stat == DEAD) - to_chat(user, "Upon closer examination, [p_they()] appear[p_s()] to be dead.") + . += "Upon closer examination, [p_they()] appear[p_s()] to be dead." /mob/living/simple_animal/updatehealth(reason = "none given") ..(reason) diff --git a/code/modules/mob/living/simple_animal/slime/slime.dm b/code/modules/mob/living/simple_animal/slime/slime.dm index a325ecfdefe..d9326b78ab3 100644 --- a/code/modules/mob/living/simple_animal/slime/slime.dm +++ b/code/modules/mob/living/simple_animal/slime/slime.dm @@ -427,34 +427,35 @@ ++Discipline /mob/living/simple_animal/slime/examine(mob/user) - to_chat(user, "*---------*\nThis is [bicon(src)] \a [src]!") + . = ..() + . += "*---------*\nThis is [bicon(src)] \a [src]!" if(stat == DEAD) - to_chat(user, "It is limp and unresponsive.") + . += "It is limp and unresponsive." else if(stat == UNCONSCIOUS) // Slime stasis - to_chat(user, "It appears to be alive but unresponsive.") + . += "It appears to be alive but unresponsive." if(getBruteLoss()) - to_chat(user, "") + . += "" if (getBruteLoss() < 40) - to_chat(user, "It has some punctures in its flesh!") + . += "It has some punctures in its flesh!" else - to_chat(user, "It has severe punctures and tears in its flesh!") - to_chat(user, "\n") + . += "It has severe punctures and tears in its flesh!" + . += "\n" switch(powerlevel) if(2 to 3) - to_chat(user, "It is flickering gently with a little electrical activity.") + . += "It is flickering gently with a little electrical activity." if(4 to 5) - to_chat(user, "It is glowing gently with moderate levels of electrical activity.") + . += "It is glowing gently with moderate levels of electrical activity." if(6 to 9) - to_chat(user, "It is glowing brightly with high levels of electrical activity.") + . += "It is glowing brightly with high levels of electrical activity." if(10) - to_chat(user, "It is radiating with massive levels of electrical activity!") + . += "It is radiating with massive levels of electrical activity!" - to_chat(user, "*---------*") + . += "*---------*" /mob/living/simple_animal/slime/proc/discipline_slime(mob/user) if(stat) diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index 8e35233be06..c9e77e294d2 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -580,7 +580,8 @@ var/list/slot_equipment_priority = list( \ client.update_description_holders(A, is_antag) face_atom(A) - A.examine(src) + var/list/result = A.examine(src) + to_chat(src, result.Join("\n")) //same as above //note: ghosts can point, this is intended diff --git a/code/modules/modular_computers/computers/item/computer.dm b/code/modules/modular_computers/computers/item/computer.dm index 75aa563dd86..bed0533e2d8 100644 --- a/code/modules/modular_computers/computers/item/computer.dm +++ b/code/modules/modular_computers/computers/item/computer.dm @@ -178,11 +178,11 @@ return 1 /obj/item/modular_computer/examine(mob/user) - ..() + . = ..() if(obj_integrity <= integrity_failure) - to_chat(user, "It is heavily damaged!") + . += "It is heavily damaged!" else if(obj_integrity < max_integrity) - to_chat(user, "It is damaged.") + . += "It is damaged." /obj/item/modular_computer/update_icon() overlays.Cut() diff --git a/code/modules/modular_computers/hardware/_hardware.dm b/code/modules/modular_computers/hardware/_hardware.dm index fd75987c948..9752cbf3149 100644 --- a/code/modules/modular_computers/hardware/_hardware.dm +++ b/code/modules/modular_computers/hardware/_hardware.dm @@ -82,11 +82,11 @@ /obj/item/computer_hardware/examine(var/mob/user) . = ..() if(damage > damage_failure) - to_chat(user, "It seems to be severely damaged!") + . += "It seems to be severely damaged!" else if(damage > damage_malfunction) - to_chat(user, "It seems to be damaged!") + . += "It seems to be damaged!" else if(damage) - to_chat(user, "It seems to be slightly damaged.") + . += "It seems to be slightly damaged." // Component-side compatibility check. /obj/item/computer_hardware/proc/can_install(obj/item/modular_computer/M, mob/living/user = null) diff --git a/code/modules/modular_computers/hardware/ai_slot.dm b/code/modules/modular_computers/hardware/ai_slot.dm index 0c9abdf352f..1a112b248a5 100644 --- a/code/modules/modular_computers/hardware/ai_slot.dm +++ b/code/modules/modular_computers/hardware/ai_slot.dm @@ -16,9 +16,9 @@ /obj/item/computer_hardware/ai_slot/examine(mob/user) - ..() + . = ..() if(stored_card) - to_chat(user, "There appears to be an intelliCard loaded. There appears to be a pinhole protecting a manual eject button. A screwdriver could probably press it") + . += "There appears to be an intelliCard loaded. There appears to be a pinhole protecting a manual eject button. A screwdriver could probably press it" /obj/item/computer_hardware/ai_slot/on_install(obj/item/modular_computer/M, mob/living/user = null) M.add_verb(device_type) diff --git a/code/modules/modular_computers/hardware/card_slot.dm b/code/modules/modular_computers/hardware/card_slot.dm index 2872007b998..fc1abc207a5 100644 --- a/code/modules/modular_computers/hardware/card_slot.dm +++ b/code/modules/modular_computers/hardware/card_slot.dm @@ -107,6 +107,6 @@ return /obj/item/computer_hardware/card_slot/examine(mob/user) - ..() + . = ..() if(stored_card || stored_card2) - to_chat(user, "There appears to be something loaded in the card slots.") + . += "There appears to be something loaded in the card slots." diff --git a/code/modules/modular_computers/hardware/hard_drive.dm b/code/modules/modular_computers/hardware/hard_drive.dm index 172092fd2e2..82c4aa5f62c 100644 --- a/code/modules/modular_computers/hardware/hard_drive.dm +++ b/code/modules/modular_computers/hardware/hard_drive.dm @@ -20,8 +20,8 @@ store_file(new/datum/computer_file/program/filemanager(src)) // File manager, allows text editor functions and basic file manipulation. /obj/item/computer_hardware/hard_drive/examine(user) - ..() - to_chat(user, "It has [max_capacity] GQ of storage capacity.") + . = ..() + . += "It has [max_capacity] GQ of storage capacity." /obj/item/computer_hardware/hard_drive/diagnostics(var/mob/user) ..() diff --git a/code/modules/modular_computers/hardware/printer.dm b/code/modules/modular_computers/hardware/printer.dm index 60f711ad960..0db45f33e6e 100644 --- a/code/modules/modular_computers/hardware/printer.dm +++ b/code/modules/modular_computers/hardware/printer.dm @@ -14,8 +14,8 @@ to_chat(user, "Paper level: [stored_paper]/[max_paper]") /obj/item/computer_hardware/printer/examine(mob/user) - ..() - to_chat(user, "Paper level: [stored_paper]/[max_paper]") + . = ..() + . += "Paper level: [stored_paper]/[max_paper]" /obj/item/computer_hardware/printer/proc/print_text(var/text_to_print, var/paper_title = "") diff --git a/code/modules/paperwork/clipboard.dm b/code/modules/paperwork/clipboard.dm index dc16101eac7..efd1df29a5d 100644 --- a/code/modules/paperwork/clipboard.dm +++ b/code/modules/paperwork/clipboard.dm @@ -38,8 +38,9 @@ toppaper = locate(/obj/item/paper_bundle) in src /obj/item/clipboard/examine(mob/user) - if(..(user, 1) && toppaper) - toppaper.examine(user) + . = ..() + if(in_range(user, src) && toppaper) + . += toppaper.examine(user) obj/item/clipboard/proc/penPlacement(mob/user, obj/item/pen/P, placing) if(placing) diff --git a/code/modules/paperwork/frames.dm b/code/modules/paperwork/frames.dm index 3aa4cc3d148..5270da810be 100644 --- a/code/modules/paperwork/frames.dm +++ b/code/modules/paperwork/frames.dm @@ -137,10 +137,10 @@ playsound(PF.loc, usesound, 100, 1) -/obj/item/picture_frame/examine(mob/user, var/distance = -1, var/infix = "", var/suffix = "") - ..() +/obj/item/picture_frame/examine(mob/user, var/infix = "", var/suffix = "") + . = ..() if(displayed) - displayed.examine(user, distance, infix, suffix) + . += displayed.examine(user, infix, suffix) /obj/item/picture_frame/attack_self(mob/user) if(displayed) @@ -245,11 +245,11 @@ else return ..() -/obj/structure/sign/picture_frame/examine(mob/user, var/distance = -1, var/infix = "", var/suffix = "") +/obj/structure/sign/picture_frame/examine(mob/user, var/infix = "", var/suffix = "") if(frame) - frame.examine(user, distance, infix, suffix) + . += frame.examine(user, infix, suffix) else - ..() + . = ..() /obj/structure/sign/picture_frame/attack_hand(mob/user) if(frame) diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index d7ea9db01ea..1586870013e 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -60,13 +60,14 @@ icon_state = "paper" /obj/item/paper/examine(mob/user) + . = ..() if(user.is_literate()) if(in_range(user, src) || istype(user, /mob/dead/observer)) show_content(user) else - to_chat(user, "You have to go closer if you want to read it.") + . += "You have to go closer if you want to read it." else - to_chat(user, "You don't know how to read.") + . += "You don't know how to read." /obj/item/paper/proc/show_content(var/mob/user, var/forceshow = 0, var/forcestars = 0, var/infolinks = 0, var/view = 1) var/datum/asset/assets = get_asset_datum(/datum/asset/simple/paper) diff --git a/code/modules/paperwork/paper_bundle.dm b/code/modules/paperwork/paper_bundle.dm index 704ec5b5819..ecc26ba0cff 100644 --- a/code/modules/paperwork/paper_bundle.dm +++ b/code/modules/paperwork/paper_bundle.dm @@ -100,10 +100,11 @@ to_chat(user, "You must hold \the [P] steady to burn \the [src].") /obj/item/paper_bundle/examine(mob/user) - if(..(user, 1)) - src.show_content(user) + . = ..() + if(in_range(user, src)) + show_content(user) else - to_chat(user, "It is too far away.") + . += "It is too far away." /obj/item/paper_bundle/proc/show_content(mob/user as mob) var/dat diff --git a/code/modules/paperwork/paperbin.dm b/code/modules/paperwork/paperbin.dm index c9169a09757..4ee6974f076 100644 --- a/code/modules/paperwork/paperbin.dm +++ b/code/modules/paperwork/paperbin.dm @@ -100,11 +100,12 @@ /obj/item/paper_bin/examine(mob/user) - if(..(user, 1)) + . = ..() + if(in_range(user, src)) if(amount) - to_chat(usr, "There " + (amount > 1 ? "are [amount] papers" : "is one paper") + " in the bin.") + . += "There " + (amount > 1 ? "are [amount] papers" : "is one paper") + " in the bin." else - to_chat(usr, "There are no papers in the bin.") + . += "There are no papers in the bin." /obj/item/paper_bin/update_icon() diff --git a/code/modules/paperwork/photography.dm b/code/modules/paperwork/photography.dm index de3f2ad52d6..c7d79655870 100644 --- a/code/modules/paperwork/photography.dm +++ b/code/modules/paperwork/photography.dm @@ -74,10 +74,11 @@ to_chat(user, "You must hold \the [P] steady to burn \the [src].") /obj/item/photo/examine(mob/user) - if(..(user, 1) || isobserver(user)) + . = ..() + if(in_range(user, src) || isobserver(user)) show(user) else - to_chat(user, "It is too far away.") + . += "It is too far away." /obj/item/photo/proc/show(mob/user as mob) usr << browse_rsc(img, "tmp_photo.png") @@ -539,8 +540,9 @@ var/list/SpookyGhosts = list("ghost","shade","shade2","ghost-narsie","horror","s to_chat(user, "You switch the camera [on ? "on" : "off"].") /obj/item/videocam/examine(mob/user) - if(..(user, 1)) - to_chat(user, "This video camera can send live feeds to the entertainment network. It's [camera ? "" : "in"]active.") + . = ..() + if(in_range(user, src)) + . += "This video camera can send live feeds to the entertainment network. It's [camera ? "" : "in"]active." /obj/item/videocam/hear_talk(mob/M as mob, list/message_pieces) var/msg = multilingual_to_message(message_pieces) diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index 2942ace8ee2..12e8ba163f2 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -229,27 +229,26 @@ addtimer(CALLBACK(src, .proc/update), 5) /obj/machinery/power/apc/examine(mob/user) - if(..(user, 1)) + . = ..() + if(in_range(user, src)) if(stat & BROKEN) - to_chat(user, "Looks broken.") - return - if(opened) + . += "Looks broken." + else if(opened) if(has_electronics && terminal) - to_chat(user, "The cover is [opened==2?"removed":"open"] and the power cell is [ cell ? "installed" : "missing"].") + . += "The cover is [opened==2?"removed":"open"] and the power cell is [ cell ? "installed" : "missing"]." else if(!has_electronics && terminal) - to_chat(user, "There are some wires but no electronics.") + . += "There are some wires but no electronics." else if(has_electronics && !terminal) - to_chat(user, "Electronics installed but not wired.") + . += "Electronics installed but not wired." else /* if(!has_electronics && !terminal) */ - to_chat(user, "There is no electronics nor connected wires.") - + . += "There is no electronics nor connected wires." else if(stat & MAINT) - to_chat(user, "The cover is closed. Something wrong with it: it doesn't work.") + . += "The cover is closed. Something wrong with it: it doesn't work." else if(malfhack) - to_chat(user, "The cover is broken. It may be hard to force it open.") + . += "The cover is broken. It may be hard to force it open." else - to_chat(user, "The cover is closed.") + . += "The cover is closed." // update the APC icon to show the three base states // also add overlays for indicator lights diff --git a/code/modules/power/cable.dm b/code/modules/power/cable.dm index 68eaec16040..198c5f64356 100644 --- a/code/modules/power/cable.dm +++ b/code/modules/power/cable.dm @@ -595,15 +595,14 @@ GLOBAL_LIST_INIT(cable_coil_recipes, list (new/datum/stack_recipe("cable restrai w_class = WEIGHT_CLASS_SMALL /obj/item/stack/cable_coil/examine(mob/user) - if(!..(user, 1)) - return - - if(get_amount() == 1) - to_chat(user, "A short piece of power cable.") - else if(get_amount() == 2) - to_chat(user, "A piece of power cable.") - else - to_chat(user, "A coil of power cable. There are [get_amount()] lengths of cable in the coil.") + . = ..() + if(in_range(user, src)) + if(get_amount() == 1) + . += "A short piece of power cable." + else if(get_amount() == 2) + . += "A piece of power cable." + else + . += "A coil of power cable. There are [get_amount()] lengths of cable in the coil." // Items usable on a cable coil : // - Wirecutters : cut them duh ! diff --git a/code/modules/power/cell.dm b/code/modules/power/cell.dm index 33b423c6360..c1429ebdee9 100644 --- a/code/modules/power/cell.dm +++ b/code/modules/power/cell.dm @@ -85,11 +85,11 @@ return power_used /obj/item/stock_parts/cell/examine(mob/user) - ..() + . = ..() if(rigged) - to_chat(user, "This power cell seems to be faulty!") + . += "This power cell seems to be faulty!" else - to_chat(user, "The charge meter reads [round(percent() )]%.") + . += "The charge meter reads [round(percent() )]%." /obj/item/stock_parts/cell/suicide_act(mob/user) to_chat(viewers(user), "[user] is licking the electrodes of the [src]! It looks like [user.p_theyre()] trying to commit suicide.") diff --git a/code/modules/power/lighting.dm b/code/modules/power/lighting.dm index 7aa21b1974a..3e272f43091 100644 --- a/code/modules/power/lighting.dm +++ b/code/modules/power/lighting.dm @@ -28,14 +28,15 @@ icon_state = "bulb-construct-stage1" /obj/machinery/light_construct/examine(mob/user) - if(..(user, 2)) - switch(src.stage) + . = ..() + if(get_dist(user, src) <= 2) + switch(stage) if(1) - to_chat(usr, "It's an empty frame.") + . += "It's an empty frame." if(2) - to_chat(usr, "It's wired.") + . += "It's wired." if(3) - to_chat(usr, "The casing is closed.") + . += "The casing is closed." /obj/machinery/light_construct/attackby(obj/item/W as obj, mob/living/user as mob, params) src.add_fingerprint(user) @@ -284,16 +285,17 @@ // examine verb /obj/machinery/light/examine(mob/user) - if(..(user, 1)) + . = ..() + if(in_range(user, src)) switch(status) if(LIGHT_OK) - to_chat(user, "[desc] It is turned [on? "on" : "off"].") + . += "[desc] It is turned [on? "on" : "off"]." if(LIGHT_EMPTY) - to_chat(user, "[desc] The [fitting] has been removed.") + . += "[desc] The [fitting] has been removed." if(LIGHT_BURNED) - to_chat(user, "[desc] The [fitting] is burnt out.") + . += "[desc] The [fitting] is burnt out." if(LIGHT_BROKEN) - to_chat(user, "[desc] The [fitting] has been smashed.") + . += "[desc] The [fitting] has been smashed." diff --git a/code/modules/power/port_gen.dm b/code/modules/power/port_gen.dm index bf2563fe310..203fbd9b734 100644 --- a/code/modules/power/port_gen.dm +++ b/code/modules/power/port_gen.dm @@ -52,12 +52,12 @@ return /obj/machinery/power/port_gen/examine(mob/user) - if(!..(user,1 )) - return - if(active) - to_chat(usr, "The generator is on.") - else - to_chat(usr, "The generator is off.") + . = ..() + if(!in_range(user, src)) + if(active) + . += "The generator is on." + else + . += "The generator is off." /obj/machinery/power/port_gen/emp_act(severity) var/duration = 6000 //ten minutes @@ -154,13 +154,13 @@ power_gen = round(initial(power_gen) * (max(2, temp_rating) / 2)) /obj/machinery/power/port_gen/pacman/examine(mob/user) - ..(user) - to_chat(user, "\The [src] appears to be producing [power_gen*power_output] W.") - to_chat(user, "There [sheets == 1 ? "is" : "are"] [sheets] sheet\s left in the hopper.") + . = ..() + . += "\The [src] appears to be producing [power_gen*power_output] W." + . += "There [sheets == 1 ? "is" : "are"] [sheets] sheet\s left in the hopper." if(IsBroken()) - to_chat(user, "\The [src] seems to have broken down.") + . += "\The [src] seems to have broken down." if(overheating) - to_chat(user, "\The [src] is overheating!") + . += "\The [src] is overheating!" /obj/machinery/power/port_gen/pacman/HasFuel() var/needed_sheets = power_output / time_per_sheet diff --git a/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm b/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm index 62d52c587c9..d58d800b77e 100644 --- a/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm +++ b/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm @@ -133,7 +133,7 @@ So, hopefully this is helpful if any more icons are to be added/changed/wonderin desc = text("The [name] is assembled") if(powered) desc = desc_holder - ..(user) + . = ..() /obj/structure/particle_accelerator/attackby(obj/item/W, mob/user, params) if(istool(W)) diff --git a/code/modules/power/tesla/energy_ball.dm b/code/modules/power/tesla/energy_ball.dm index 19948c94a36..754479a69ca 100644 --- a/code/modules/power/tesla/energy_ball.dm +++ b/code/modules/power/tesla/energy_ball.dm @@ -57,9 +57,10 @@ energy = 0 // ensure we dont have miniballs of miniballs /obj/singularity/energy_ball/examine(mob/user) - ..() - if(orbiting_balls.len) - to_chat(user, "The amount of orbiting mini-balls is [orbiting_balls.len].") + . = ..() + var/len = LAZYLEN(orbiting_balls) + if(len) + . += "The amount of orbiting mini-balls is [len]." /obj/singularity/energy_ball/proc/move_the_basket_ball(var/move_amount) diff --git a/code/modules/power/treadmill.dm b/code/modules/power/treadmill.dm index 36f3ac15df4..5a1cc12c701 100644 --- a/code/modules/power/treadmill.dm +++ b/code/modules/power/treadmill.dm @@ -168,8 +168,8 @@ update_icon() /obj/machinery/treadmill_monitor/examine(mob/user) - ..() - to_chat(user, "The display reads:
[line1]
[line2]
") + . = ..() + . += "The display reads:
[line1]
[line2]
" /obj/machinery/treadmill_monitor/update_icon() overlays.Cut() diff --git a/code/modules/projectiles/ammunition/magazines.dm b/code/modules/projectiles/ammunition/magazines.dm index bf6df41006a..2f422e227b3 100644 --- a/code/modules/projectiles/ammunition/magazines.dm +++ b/code/modules/projectiles/ammunition/magazines.dm @@ -236,10 +236,10 @@ if(ammo && is_rubber()) overlays += image('icons/obj/ammo.dmi', icon_state = "enforcer-r") -/obj/item/ammo_box/magazine/enforcer/examine(mob/user, var/distance) - ..() - if(distance <= 2) - to_chat(user, "It seems to be loaded with [is_rubber() ? "rubber" : "lethal"] bullets.")//only can see the topmost one. +/obj/item/ammo_box/magazine/enforcer/examine(mob/user) + . = ..() + if(get_dist(user, src) <= 2) + . += "It seems to be loaded with [is_rubber() ? "rubber" : "lethal"] bullets."//only can see the topmost one. /obj/item/ammo_box/magazine/enforcer/proc/is_rubber()//if the topmost bullet is a rubber one var/ammo = ammo_count() diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index fbc29da0391..510e8f60264 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -85,17 +85,17 @@ return ..() /obj/item/gun/examine(mob/user) - ..() + . = ..() if(unique_reskin && !current_skin) - to_chat(user, "Alt-click it to reskin it.") + . += "Alt-click it to reskin it." if(unique_rename) - to_chat(user, "Use a pen on it to rename it.") + . += "Use a pen on it to rename it." if(bayonet) - to_chat(user, "It has \a [bayonet] [can_bayonet ? "" : "permanently "]affixed to it.") + . += "It has \a [bayonet] [can_bayonet ? "" : "permanently "]affixed to it." if(can_bayonet) //if it has a bayonet and this is false, the bayonet is permanent. - to_chat(user, "[bayonet] looks like it can be unscrewed from [src].") + . += "[bayonet] looks like it can be unscrewed from [src]." else if(can_bayonet) - to_chat(user, "It has a bayonet lug on it.") + . += "It has a bayonet lug on it." /obj/item/gun/proc/process_chamber() return 0 diff --git a/code/modules/projectiles/guns/dartgun.dm b/code/modules/projectiles/guns/dartgun.dm index 97f4eaebf1c..0a50b844f4a 100644 --- a/code/modules/projectiles/guns/dartgun.dm +++ b/code/modules/projectiles/guns/dartgun.dm @@ -56,13 +56,14 @@ update_icon() /obj/item/gun/dartgun/examine(mob/user) - if(..(user, 2)) + . = ..() + if(get_dist(user, src) <= 2) if(beakers.len) - to_chat(user, "[src] contains:") + . += "[src] contains:" for(var/obj/item/reagent_containers/glass/beaker/B in beakers) if(B.reagents && B.reagents.reagent_list.len) for(var/datum/reagent/R in B.reagents.reagent_list) - to_chat(user, "[R.volume] units of [R.name]") + . += "[R.volume] units of [R.name]" /obj/item/gun/dartgun/attackby(obj/item/I as obj, mob/user as mob, params) if(istype(I, /obj/item/dart_cartridge)) diff --git a/code/modules/projectiles/guns/energy/kinetic_accelerator.dm b/code/modules/projectiles/guns/energy/kinetic_accelerator.dm index 9c1ea1a7a9f..f64cba9632c 100644 --- a/code/modules/projectiles/guns/energy/kinetic_accelerator.dm +++ b/code/modules/projectiles/guns/energy/kinetic_accelerator.dm @@ -28,12 +28,13 @@ var/empty_state = "kineticgun_empty" /obj/item/gun/energy/kinetic_accelerator/examine(mob/user) - if(..(user, 1)) + . = ..() + if(in_range(user, src)) if(max_mod_capacity) - to_chat(user, "[get_remaining_mod_capacity()]% mod capacity remaining.") + . += "[get_remaining_mod_capacity()]% mod capacity remaining." for(var/A in get_modkits()) var/obj/item/borg/upgrade/modkit/M = A - to_chat(user, "There is a [M.name] mod installed, using [M.cost]% capacity.") + . += "There is a [M.name] mod installed, using [M.cost]% capacity." /obj/item/gun/energy/kinetic_accelerator/attackby(obj/item/I, mob/user) if(iscrowbar(I)) @@ -257,8 +258,9 @@ var/minebot_exclusive = FALSE /obj/item/borg/upgrade/modkit/examine(mob/user) - if(..(user, 1)) - to_chat(user, "Occupies [cost]% of mod capacity.") + . = ..() + if(in_range(user, src)) + . += "Occupies [cost]% of mod capacity." /obj/item/borg/upgrade/modkit/attackby(obj/item/A, mob/user) if(istype(A, /obj/item/gun/energy/kinetic_accelerator) && !issilicon(user)) diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm index d51f9446b49..5a9e87aa119 100644 --- a/code/modules/projectiles/guns/energy/special.dm +++ b/code/modules/projectiles/guns/energy/special.dm @@ -159,9 +159,9 @@ can_charge = 0 /obj/item/gun/energy/plasmacutter/examine(mob/user) - ..() + . = ..() if(power_supply) - to_chat(user, "[src] is [round(power_supply.percent())]% charged.") + . += "[src] is [round(power_supply.percent())]% charged." /obj/item/gun/energy/plasmacutter/attackby(obj/item/A, mob/user) if(istype(A, /obj/item/stack/sheet/mineral/plasma)) diff --git a/code/modules/projectiles/guns/grenade_launcher.dm b/code/modules/projectiles/guns/grenade_launcher.dm index 81b8451eb77..af7cffbe7c8 100644 --- a/code/modules/projectiles/guns/grenade_launcher.dm +++ b/code/modules/projectiles/guns/grenade_launcher.dm @@ -14,8 +14,9 @@ materials = list(MAT_METAL=2000) /obj/item/gun/grenadelauncher/examine(mob/user) - if(..(user, 2)) - to_chat(user, "[grenades.len] / [max_grenades] grenades.") + . = ..() + if(get_dist(user, src) <= 2) + . += "[grenades.len] / [max_grenades] grenades." /obj/item/gun/grenadelauncher/attackby(obj/item/I as obj, mob/user as mob, params) if((istype(I, /obj/item/grenade))) diff --git a/code/modules/projectiles/guns/magic/wand.dm b/code/modules/projectiles/guns/magic/wand.dm index 1a5ecc178d1..544ca67a361 100644 --- a/code/modules/projectiles/guns/magic/wand.dm +++ b/code/modules/projectiles/guns/magic/wand.dm @@ -18,8 +18,8 @@ ..() /obj/item/gun/magic/wand/examine(mob/user) - ..() - to_chat(user, "Has [charges] charge\s remaining.") + . = ..() + . += "Has [charges] charge\s remaining." /obj/item/gun/magic/wand/update_icon() icon_state = "[initial(icon_state)][charges ? "" : "-drained"]" diff --git a/code/modules/projectiles/guns/projectile.dm b/code/modules/projectiles/guns/projectile.dm index 15efee700d2..133331f8e44 100644 --- a/code/modules/projectiles/guns/projectile.dm +++ b/code/modules/projectiles/guns/projectile.dm @@ -149,8 +149,8 @@ return /obj/item/gun/projectile/examine(mob/user) - ..() - to_chat(user, "Has [get_ammo()] round\s remaining.") + . = ..() + . += "Has [get_ammo()] round\s remaining." /obj/item/gun/projectile/proc/get_ammo(countchambered = 1) var/boolets = 0 //mature var names for mature people diff --git a/code/modules/projectiles/guns/projectile/revolver.dm b/code/modules/projectiles/guns/projectile/revolver.dm index 6f977f2e024..99ec51f9fdd 100644 --- a/code/modules/projectiles/guns/projectile/revolver.dm +++ b/code/modules/projectiles/guns/projectile/revolver.dm @@ -84,8 +84,8 @@ return boolets /obj/item/gun/projectile/revolver/examine(mob/user) - ..() - to_chat(user, "[get_ammo(0,0)] of those are live rounds.") + . = ..() + . += "[get_ammo(0,0)] of those are live rounds." /obj/item/gun/projectile/revolver/detective desc = "A cheap Martian knock-off of a classic law enforcement firearm. Uses .38-special rounds." @@ -467,7 +467,7 @@ f_name = "a " f_name += "blood-stained [name]!" - to_chat(user, "[bicon(src)] That's [f_name]") + . = list("[bicon(src)] That's [f_name]") if(desc) - to_chat(user, desc) + . += desc diff --git a/code/modules/projectiles/guns/projectile/shotgun.dm b/code/modules/projectiles/guns/projectile/shotgun.dm index 8b658911b3b..ee6b013af0d 100644 --- a/code/modules/projectiles/guns/projectile/shotgun.dm +++ b/code/modules/projectiles/guns/projectile/shotgun.dm @@ -66,9 +66,9 @@ chambered = AC /obj/item/gun/projectile/shotgun/examine(mob/user) - ..() + . = ..() if(chambered) - to_chat(user, "A [chambered.BB ? "live" : "spent"] one is in the chamber.") + . += "A [chambered.BB ? "live" : "spent"] one is in the chamber." /obj/item/gun/projectile/shotgun/isHandgun() //You cannot, in fact, holster a shotgun. return 0 @@ -239,8 +239,8 @@ . = ..() /obj/item/gun/projectile/shotgun/boltaction/examine(mob/user) - ..() - to_chat(user, "The bolt is [bolt_open ? "open" : "closed"].") + . = ..() + . += "The bolt is [bolt_open ? "open" : "closed"]." /obj/item/gun/projectile/shotgun/boltaction/enchanted name = "enchanted bolt action rifle" diff --git a/code/modules/projectiles/guns/rocket.dm b/code/modules/projectiles/guns/rocket.dm index 983c6f319fd..53de1a16854 100644 --- a/code/modules/projectiles/guns/rocket.dm +++ b/code/modules/projectiles/guns/rocket.dm @@ -16,8 +16,8 @@ var/list/rockets = new/list() /obj/item/gun/rocketlauncher/examine(mob/user) - ..() - to_chat(user, "[rockets.len] / [max_rockets] rockets.") + . = ..() + . += "[rockets.len] / [max_rockets] rockets." /obj/item/gun/rocketlauncher/Destroy() QDEL_LIST(rockets) diff --git a/code/modules/projectiles/guns/syringe_gun.dm b/code/modules/projectiles/guns/syringe_gun.dm index ca18cdcd82e..04cf2d248d3 100644 --- a/code/modules/projectiles/guns/syringe_gun.dm +++ b/code/modules/projectiles/guns/syringe_gun.dm @@ -46,8 +46,8 @@ ..() /obj/item/gun/syringe/examine(mob/user) - ..() - to_chat(user, "Can hold [max_syringes] syringe\s. Has [syringes.len] syringe\s remaining.") + . = ..() + . += "Can hold [max_syringes] syringe\s. Has [syringes.len] syringe\s remaining." /obj/item/gun/syringe/attack_self(mob/living/user as mob) if(!syringes.len) diff --git a/code/modules/projectiles/guns/throw.dm b/code/modules/projectiles/guns/throw.dm index 97bb65f5d02..58f3db026e1 100644 --- a/code/modules/projectiles/guns/throw.dm +++ b/code/modules/projectiles/guns/throw.dm @@ -12,7 +12,7 @@ var/projectile_speed = 1 var/projectile_range = 1 -/obj/item/gun/throw/proc/notify_ammo_count(mob/user) +/obj/item/gun/throw/proc/notify_ammo_count() return /obj/item/gun/throw/proc/get_throwrange() @@ -31,9 +31,9 @@ return count /obj/item/gun/throw/examine(mob/user) - ..() - to_chat(user, "It is [to_launch ? "loaded with \a [to_launch]" : "not loaded"].") - notify_ammo_count(user) + . = ..() + . += "It is [to_launch ? "loaded with \a [to_launch]" : "not loaded"]." + . += notify_ammo_count() /obj/item/gun/throw/Destroy() QDEL_NULL(to_launch) @@ -53,7 +53,7 @@ to_chat(user, "You load [I] into [src].") if(!to_launch) process_chamber() - notify_ammo_count(user) + to_chat(user, notify_ammo_count()) else to_chat(user, "[src] cannot hold any more projectiles.") else diff --git a/code/modules/projectiles/guns/throw/crossbow.dm b/code/modules/projectiles/guns/throw/crossbow.dm index 9c87f7949a9..ca626534320 100644 --- a/code/modules/projectiles/guns/throw/crossbow.dm +++ b/code/modules/projectiles/guns/throw/crossbow.dm @@ -39,11 +39,11 @@ icon_state = "[initial(icon_state)]-drawn" /obj/item/gun/throw/crossbow/examine(mob/user) - ..() + . = ..() if(cell) - to_chat(user, "\A [cell] is mounted onto [src]. Battery cell charge: [cell.charge]/[cell.maxcharge]") + . += "\A [cell] is mounted onto [src]. Battery cell charge: [cell.charge]/[cell.maxcharge]" else - to_chat(user, "It has an empty mount for a battery cell.") + . += "It has an empty mount for a battery cell." /obj/item/gun/throw/crossbow/modify_projectile(obj/item/I, on_chamber = 0) if(cell && on_chamber && istype(I, /obj/item/arrow/rod)) diff --git a/code/modules/projectiles/guns/throw/pielauncher.dm b/code/modules/projectiles/guns/throw/pielauncher.dm index ed3a70ad032..69dcc166aae 100644 --- a/code/modules/projectiles/guns/throw/pielauncher.dm +++ b/code/modules/projectiles/guns/throw/pielauncher.dm @@ -21,8 +21,8 @@ loaded_projectiles += P process_chamber() -/obj/item/gun/throw/piecannon/notify_ammo_count(mob/user) - to_chat(user, "[src] has [get_ammocount()] of [max_capacity] pies left.") +/obj/item/gun/throw/piecannon/notify_ammo_count() + return "[src] has [get_ammocount()] of [max_capacity] pies left." /obj/item/gun/throw/piecannon/update_icon() if(to_launch) diff --git a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm index 7c53761a70f..3719ac81776 100644 --- a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm +++ b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm @@ -105,11 +105,11 @@ return ..() /obj/machinery/chem_dispenser/examine(mob/user) - ..() + . = ..() if(panel_open) - to_chat(user, "[src]'s maintenance hatch is open!") + . += "[src]'s maintenance hatch is open!" if(in_range(user, src) || isobserver(user)) - to_chat(user, "The status display reads:
Recharging [recharge_amount] power units per interval.
Power efficiency increased by [round((powerefficiency * 1000) - 100, 1)]%.") + . += "The status display reads:
Recharging [recharge_amount] power units per interval.
Power efficiency increased by [round((powerefficiency * 1000) - 100, 1)]%." /obj/machinery/chem_dispenser/process() diff --git a/code/modules/reagents/reagent_containers/borghydro.dm b/code/modules/reagents/reagent_containers/borghydro.dm index e15e6316cb1..fa86a25f11c 100644 --- a/code/modules/reagents/reagent_containers/borghydro.dm +++ b/code/modules/reagents/reagent_containers/borghydro.dm @@ -102,16 +102,15 @@ return /obj/item/reagent_containers/borghypo/examine(mob/user) - if(!..(user, 2)) - return + . = ..() + if(get_dist(user, src) <= 2) + var/empty = TRUE - var/empty = 1 + for(var/datum/reagents/RS in reagent_list) + var/datum/reagent/R = locate() in RS.reagent_list + if(R) + . += "It currently has [R.volume] units of [R.name] stored." + empty = FALSE - for(var/datum/reagents/RS in reagent_list) - var/datum/reagent/R = locate() in RS.reagent_list - if(R) - to_chat(user, "It currently has [R.volume] units of [R.name] stored.") - empty = 0 - - if(empty) - to_chat(user, "It is currently empty. Allow some time for the internal syntheszier to produce more.") + if(empty) + . += "It is currently empty. Allow some time for the internal syntheszier to produce more." diff --git a/code/modules/reagents/reagent_containers/glass_containers.dm b/code/modules/reagents/reagent_containers/glass_containers.dm index 5221ae5e600..edf1624ea3a 100644 --- a/code/modules/reagents/reagent_containers/glass_containers.dm +++ b/code/modules/reagents/reagent_containers/glass_containers.dm @@ -51,10 +51,9 @@ base_name = name /obj/item/reagent_containers/glass/examine(mob/user) - if(!..(user, 2)) - return - if(!is_open_container()) - to_chat(user, "Airtight lid seals it completely.") + . = ..() + if(get_dist(user, src) <= 2 && !is_open_container()) + . += "Airtight lid seals it completely." /obj/item/reagent_containers/glass/attack(mob/M, mob/user, def_zone) if(!is_open_container()) diff --git a/code/modules/reagents/reagent_containers/hypospray.dm b/code/modules/reagents/reagent_containers/hypospray.dm index 0309f3e2e7e..de0b8c3bae6 100644 --- a/code/modules/reagents/reagent_containers/hypospray.dm +++ b/code/modules/reagents/reagent_containers/hypospray.dm @@ -122,11 +122,11 @@ icon_state = "[initial(icon_state)]0" /obj/item/reagent_containers/hypospray/autoinjector/examine() - ..() + . = ..() if(reagents && reagents.reagent_list.len) - to_chat(usr, "It is currently loaded.") + . += "It is currently loaded." else - to_chat(usr, "It is spent.") + . += "It is spent." /obj/item/reagent_containers/hypospray/autoinjector/teporone //basilisks name = "teporone autoinjector" diff --git a/code/modules/reagents/reagent_containers/spray.dm b/code/modules/reagents/reagent_containers/spray.dm index d8ee5d88309..482b8b20ccd 100644 --- a/code/modules/reagents/reagent_containers/spray.dm +++ b/code/modules/reagents/reagent_containers/spray.dm @@ -83,8 +83,9 @@ to_chat(user, "You [amount_per_transfer_from_this == 10 ? "remove" : "fix"] the nozzle. You'll now use [amount_per_transfer_from_this] units per spray.") /obj/item/reagent_containers/spray/examine(mob/user) - if(..(user, 0) && user == loc) - to_chat(user, "[round(reagents.total_volume)] units left.") + . = ..() + if(get_dist(user, src) && user == loc) + . += "[round(reagents.total_volume)] units left." /obj/item/reagent_containers/spray/verb/empty() diff --git a/code/modules/reagents/reagent_dispenser.dm b/code/modules/reagents/reagent_dispenser.dm index fc9d5d56134..41fa898905d 100644 --- a/code/modules/reagents/reagent_dispenser.dm +++ b/code/modules/reagents/reagent_dispenser.dm @@ -116,10 +116,9 @@ boom() /obj/structure/reagent_dispensers/fueltank/examine(mob/user) - if(!..(user, 2)) - return - if(rig) - to_chat(usr, "There is some kind of device rigged to the tank.") + . = ..() + if(get_dist(user, src) <= 2 && rig) + . += "There is some kind of device rigged to the tank." /obj/structure/reagent_dispensers/fueltank/attack_hand() if(rig) @@ -224,9 +223,9 @@ var/paper_cups = 25 //Paper cups left from the cooler /obj/structure/reagent_dispensers/water_cooler/examine(mob/user) - if(!..(user, 2)) - return - to_chat(user, "There are [paper_cups ? paper_cups : "no"] paper cups left.") + . = ..() + if(get_dist(user, src) <= 2) + . += "There are [paper_cups ? paper_cups : "no"] paper cups left." /obj/structure/reagent_dispensers/water_cooler/attack_hand(mob/living/user) if(!paper_cups) diff --git a/code/modules/ruins/lavalandruin_code/dead_ratvar.dm b/code/modules/ruins/lavalandruin_code/dead_ratvar.dm index cde2007d643..fa30c9eb273 100644 --- a/code/modules/ruins/lavalandruin_code/dead_ratvar.dm +++ b/code/modules/ruins/lavalandruin_code/dead_ratvar.dm @@ -23,7 +23,7 @@ /obj/effect/clockwork/overlay/examine(mob/user) if(linked) - linked.examine(user) + return linked.examine(user) /obj/effect/clockwork/overlay/ex_act() return FALSE diff --git a/code/modules/surgery/organs/augments_arms.dm b/code/modules/surgery/organs/augments_arms.dm index 44f27b5deb4..219753d4524 100644 --- a/code/modules/surgery/organs/augments_arms.dm +++ b/code/modules/surgery/organs/augments_arms.dm @@ -30,8 +30,8 @@ transform = matrix(-1, 0, 0, 0, 1, 0) /obj/item/organ/internal/cyberimp/arm/examine(mob/user) - ..() - to_chat(user, "[src] is assembled in the [parent_organ == "r_arm" ? "right" : "left"] arm configuration. You can use a screwdriver to reassemble it.") + . = ..() + . += "[src] is assembled in the [parent_organ == "r_arm" ? "right" : "left"] arm configuration. You can use a screwdriver to reassemble it." /obj/item/organ/internal/cyberimp/arm/attackby(obj/item/I, mob/user, params) if(isscrewdriver(I)) diff --git a/code/modules/surgery/organs/organ.dm b/code/modules/surgery/organs/organ.dm index 29a13cf1e08..5b82fdf8c23 100644 --- a/code/modules/surgery/organs/organ.dm +++ b/code/modules/surgery/organs/organ.dm @@ -145,12 +145,12 @@ return 0 /obj/item/organ/examine(mob/user) - ..(user) + . = ..() if(status & ORGAN_DEAD) if(!is_robotic()) - to_chat(user, "The decay has set in.") + . += "The decay has set in." else - to_chat(user, "It looks in need of repairs.") + . += "It looks in need of repairs." /obj/item/organ/proc/handle_germ_effects() //** Handle the effects of infections diff --git a/code/modules/telesci/telepad.dm b/code/modules/telesci/telepad.dm index 893e9719fb4..8ff937eea6f 100644 --- a/code/modules/telesci/telepad.dm +++ b/code/modules/telesci/telepad.dm @@ -136,8 +136,8 @@ rcell = new(src) /obj/item/rcs/examine(mob/user) - ..(user) - to_chat(user, "There are [round(rcell.charge/chargecost)] charge\s left.") + . = ..() + . += "There are [round(rcell.charge/chargecost)] charge\s left." /obj/item/rcs/Destroy() QDEL_NULL(rcell) diff --git a/code/modules/telesci/telesci_computer.dm b/code/modules/telesci/telesci_computer.dm index 1deedc434a9..0f737823d5b 100644 --- a/code/modules/telesci/telesci_computer.dm +++ b/code/modules/telesci/telesci_computer.dm @@ -42,8 +42,8 @@ return ..() /obj/machinery/computer/telescience/examine(mob/user) - ..(user) - to_chat(user, "There are [crystals ? crystals : "no"] bluespace crystal\s in the crystal slots.") + . = ..() + . += "There are [crystals ? crystals : "no"] bluespace crystal\s in the crystal slots." /obj/machinery/computer/telescience/Initialize() ..() diff --git a/code/modules/vehicle/ambulance.dm b/code/modules/vehicle/ambulance.dm index f10f9d9769c..29fb4e0108f 100644 --- a/code/modules/vehicle/ambulance.dm +++ b/code/modules/vehicle/ambulance.dm @@ -107,7 +107,7 @@ /obj/structure/bed/amb_trolley/examine(mob/user) . = ..() - to_chat(user, "Drag [src]'s sprite over the ambulance to (de)attach it.") + . += "Drag [src]'s sprite over the ambulance to (de)attach it." /obj/structure/bed/amb_trolley/MouseDrop(obj/over_object as obj) ..() diff --git a/code/modules/vehicle/janicart.dm b/code/modules/vehicle/janicart.dm index 0f4382c92d1..2445e983fd3 100644 --- a/code/modules/vehicle/janicart.dm +++ b/code/modules/vehicle/janicart.dm @@ -56,9 +56,9 @@ /obj/vehicle/janicart/examine(mob/user) - ..() + . = ..() if(floorbuffer) - to_chat(user, "It has been upgraded with a floor buffer.") + . += "It has been upgraded with a floor buffer." /obj/vehicle/janicart/attackby(obj/item/I, mob/user, params)