diff --git a/code/_onclick/hud/screen_objects.dm b/code/_onclick/hud/screen_objects.dm index e9caca75..54c36104 100644 --- a/code/_onclick/hud/screen_objects.dm +++ b/code/_onclick/hud/screen_objects.dm @@ -25,7 +25,7 @@ return ..() /obj/screen/examine(mob/user) - return + return list() /obj/screen/orbit() return diff --git a/code/_onclick/telekinesis.dm b/code/_onclick/telekinesis.dm index 71ef48bb..d0abf48f 100644 --- a/code/_onclick/telekinesis.dm +++ b/code/_onclick/telekinesis.dm @@ -102,9 +102,8 @@ /obj/item/tk_grab/examine(user) if (focus) - focus.examine(user) - else - ..() + return focus.examine(user) + return ..() /obj/item/tk_grab/attack_self(mob/user) if(!focus) diff --git a/code/datums/components/armor_plate.dm b/code/datums/components/armor_plate.dm index 53c8c280..975b52dc 100644 --- a/code/datums/components/armor_plate.dm +++ b/code/datums/components/armor_plate.dm @@ -29,21 +29,21 @@ var/obj/item/typecast = upgrade_item upgrade_name = initial(typecast.name) -/datum/component/armor_plate/proc/examine(datum/source, mob/user) +/datum/component/armor_plate/proc/examine(datum/source, mob/user, list/examine_list) //upgrade_item could also be typecast here instead if(ismecha(parent)) if(amount) if(amount < maxamount) - to_chat(user, "Its armor is enhanced with [amount] [upgrade_name].") + examine_list += "Its armor is enhanced with [amount] [upgrade_name]." else - to_chat(user, "It's wearing a fearsome carapace entirely composed of [upgrade_name] - its pilot must be an experienced monster hunter.") + examine_list += "It's wearing a fearsome carapace entirely composed of [upgrade_name] - its pilot must be an experienced monster hunter." else - to_chat(user, "It has attachment points for strapping monster hide on for added protection.") + examine_list += "It has attachment points for strapping monster hide on for added protection." else if(amount) - to_chat(user, "It has been strengthened with [amount]/[maxamount] [upgrade_name].") + examine_list += "It has been strengthened with [amount]/[maxamount] [upgrade_name]." else - to_chat(user, "It can be strengthened with up to [maxamount] [upgrade_name].") + examine_list += "It can be strengthened with up to [maxamount] [upgrade_name]." /datum/component/armor_plate/proc/applyplate(datum/source, obj/item/I, mob/user, params) if(!istype(I,upgrade_item)) diff --git a/code/datums/components/construction.dm b/code/datums/components/construction.dm index 3b64d684..01df4475 100644 --- a/code/datums/components/construction.dm +++ b/code/datums/components/construction.dm @@ -19,9 +19,9 @@ RegisterSignal(parent, COMSIG_PARENT_ATTACKBY,.proc/action) update_parent(index) -/datum/component/construction/proc/examine(datum/source, mob/user) +/datum/component/construction/proc/examine(datum/source, mob/user, list/examine_list) if(desc) - to_chat(user, desc) + examine_list += desc /datum/component/construction/proc/on_step() if(index > steps.len) diff --git a/code/datums/components/decal.dm b/code/datums/components/decal.dm index e5547ee0..5300493a 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, list/examine_list) + examine_list += description \ No newline at end of file diff --git a/code/datums/components/magnetic_catch.dm b/code/datums/components/magnetic_catch.dm index fb68b89e..c7e59e0e 100644 --- a/code/datums/components/magnetic_catch.dm +++ b/code/datums/components/magnetic_catch.dm @@ -15,8 +15,8 @@ for(var/i in parent) RegisterSignal(i, COMSIG_MOVABLE_PRE_THROW, .proc/throw_react) -/datum/component/magnetic_catch/proc/examine(datum/source, mob/user) - to_chat(user, "It has been installed with inertia dampening to prevent coffee spills.") +/datum/component/magnetic_catch/proc/examine(datum/source, mob/user, list/examine_list) + examine_list += "It has been installed with inertia dampening to prevent coffee spills." /datum/component/magnetic_catch/proc/crossed_react(datum/source, atom/movable/thing) RegisterSignal(thing, COMSIG_MOVABLE_PRE_THROW, .proc/throw_react, TRUE) diff --git a/code/datums/components/material_container.dm b/code/datums/components/material_container.dm index 48fa758d..25094518 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/datums/components/rotation.dm b/code/datums/components/rotation.dm index ff424dc0..72bf1c36 100644 --- a/code/datums/components/rotation.dm +++ b/code/datums/components/rotation.dm @@ -77,9 +77,9 @@ remove_verbs() . = ..() -/datum/component/simple_rotation/proc/ExamineMessage(datum/source, mob/user) +/datum/component/simple_rotation/proc/ExamineMessage(datum/source, mob/user, list/examine_list) if(rotation_flags & ROTATION_ALTCLICK) - to_chat(user, "Alt-click to rotate it clockwise.") + examine_list += "Alt-click to rotate it clockwise." /datum/component/simple_rotation/proc/HandRot(datum/source, mob/user, rotation = default_rotation_direction) if(!can_be_rotated.Invoke(user, rotation) || !can_user_rotate.Invoke(user, rotation)) diff --git a/code/game/atoms.dm b/code/game/atoms.dm index 7a024895..551a977a 100644 --- a/code/game/atoms.dm +++ b/code/game/atoms.dm @@ -254,18 +254,6 @@ return TRUE return FALSE -/atom/proc/get_examine_name(mob/user) - . = "\a [src]" - var/list/override = list(gender == PLURAL ? "some" : "a", " ", "[name]") - if(article) - . = "[article] [src]" - override[EXAMINE_POSITION_ARTICLE] = article - if(SEND_SIGNAL(src, COMSIG_ATOM_GET_EXAMINE_NAME, user, override) & COMPONENT_EXNAME_CHANGED) - . = override.Join("") - -/atom/proc/get_examine_string(mob/user, thats = FALSE) - . = "[icon2html(src, user)] [thats? "That's ":""][get_examine_name(user)]" - /atom/proc/update_icon_state() /atom/proc/update_overlaysb() @@ -288,33 +276,51 @@ managed_overlays = new_overlays add_overlay(new_overlays) +/atom/proc/get_examine_name(mob/user) + . = "\a [src]" + var/list/override = list(gender == PLURAL ? "some" : "a", " ", "[name]") + if(article) + . = "[article] [src]" + override[EXAMINE_POSITION_ARTICLE] = article + + var/should_override = FALSE + + if(SEND_SIGNAL(src, COMSIG_ATOM_GET_EXAMINE_NAME, user, override) & COMPONENT_EXNAME_CHANGED) + should_override = TRUE + + if(should_override) + . = override.Join("") + +///Generate the full examine string of this atom (including icon for goonchat) +/atom/proc/get_examine_string(mob/user, thats = FALSE) + return "[icon2html(src, user)] [thats? "That's ":""][get_examine_name(user)]" + /atom/proc/examine(mob/user) - to_chat(user, get_examine_string(user, TRUE)) + . = list("[get_examine_string(user, TRUE)].") if(desc) - to_chat(user, desc) + . += desc if(reagents) if(reagents.reagents_holder_flags & TRANSPARENT) - to_chat(user, "It contains:") - if(reagents.reagent_list.len) + . += "It contains:" + if(length(reagents.reagent_list)) if(user.can_see_reagents()) //Show each individual reagent for(var/datum/reagent/R in reagents.reagent_list) - to_chat(user, "[R.volume] units of [R.name]") + . += "[R.volume] units of [R.name]" else //Otherwise, just show the total volume var/total_volume = 0 for(var/datum/reagent/R in reagents.reagent_list) total_volume += R.volume - to_chat(user, "[total_volume] units of various reagents") + . += "[total_volume] units of various reagents" else - to_chat(user, "Nothing.") + . += "Nothing." else if(reagents.reagents_holder_flags & 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.") - - SEND_SIGNAL(src, COMSIG_PARENT_EXAMINE, user) + . += "It's empty." + SEND_SIGNAL(src, COMSIG_PARENT_EXAMINE, user, .) /atom/proc/relaymove(mob/user) if(buckle_message_cooldown <= world.time) diff --git a/code/game/gamemodes/meteor/meteors.dm b/code/game/gamemodes/meteor/meteors.dm index 426d23b4..78d79ea7 100644 --- a/code/game/gamemodes/meteor/meteors.dm +++ b/code/game/gamemodes/meteor/meteors.dm @@ -167,7 +167,7 @@ GLOBAL_LIST_INIT(meteorsC, list(/obj/effect/meteor/dust)) //for space dust event /obj/effect/meteor/examine(mob/user) if(!(flags_1 & ADMIN_SPAWNED_1) && isliving(user)) SSmedals.UnlockMedal(MEDAL_METEOR, user.client) - ..() + return ..() /obj/effect/meteor/attackby(obj/item/I, mob/user, params) if(I.tool_behaviour == TOOL_MINING) diff --git a/code/game/machinery/Sleeper.dm b/code/game/machinery/Sleeper.dm index aaf03ff1..9e99ed33 100644 --- a/code/game/machinery/Sleeper.dm +++ b/code/game/machinery/Sleeper.dm @@ -100,6 +100,10 @@ return return ..() +/obj/machinery/sleeper/examine(mob/user) + . = ..() + . += "Alt-click [src] to [state_open ? "close" : "open"] it." + /obj/machinery/sleeper/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ datum/tgui/master_ui = null, datum/ui_state/state = GLOB.notcontained_state) diff --git a/code/game/machinery/_machinery.dm b/code/game/machinery/_machinery.dm index 306280c8..33325e6b 100644 --- a/code/game/machinery/_machinery.dm +++ b/code/game/machinery/_machinery.dm @@ -444,22 +444,22 @@ Class Procs: to_chat(user, "[icon2html(C, user)] \A [C].") /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(resistance_flags & 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, TRUE) //called on machinery construction (i.e from frame to machinery) but not on initialization /obj/machinery/proc/on_construction() diff --git a/code/game/machinery/ai_slipper.dm b/code/game/machinery/ai_slipper.dm index 1a534953..4935c9d4 100644 --- a/code/game/machinery/ai_slipper.dm +++ b/code/game/machinery/ai_slipper.dm @@ -14,8 +14,8 @@ req_access = list(ACCESS_AI_UPLOAD) /obj/machinery/ai_slipper/examine(mob/user) - ..() - to_chat(user, "It has [uses] uses of foam remaining.") + . = ..() + . += "It has [uses] uses of foam remaining." /obj/machinery/ai_slipper/power_change() if(stat & BROKEN) diff --git a/code/game/machinery/aug_manipulator.dm b/code/game/machinery/aug_manipulator.dm index 99200e51..0bbb79e6 100644 --- a/code/game/machinery/aug_manipulator.dm +++ b/code/game/machinery/aug_manipulator.dm @@ -11,9 +11,9 @@ var/static/list/style_list_icons = list("standard" = 'icons/mob/augmentation/augments.dmi', "engineer" = 'icons/mob/augmentation/augments_engineer.dmi', "security" = 'icons/mob/augmentation/augments_security.dmi', "mining" = 'icons/mob/augmentation/augments_mining.dmi') /obj/machinery/aug_manipulator/examine(mob/user) - ..() + . = ..() if(storedpart) - to_chat(user, "Alt-click to eject the limb.") + . += "Alt-click to eject the limb." /obj/machinery/aug_manipulator/Initialize() initial_icon_state = initial(icon_state) diff --git a/code/game/machinery/cell_charger.dm b/code/game/machinery/cell_charger.dm index 2e5af34e..1969fe8b 100644 --- a/code/game/machinery/cell_charger.dm +++ b/code/game/machinery/cell_charger.dm @@ -24,10 +24,10 @@ add_overlay("ccharger-o[newlevel]") /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/W, mob/user, params) if(istype(W, /obj/item/stock_parts/cell) && !panel_open) diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm index 2dd1735e..82b58649 100644 --- a/code/game/machinery/cloning.dm +++ b/code/game/machinery/cloning.dm @@ -95,20 +95,20 @@ to_chat(user, "You flip the write-protect tab to [read_only ? "protected" : "unprotected"].") /obj/item/disk/data/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"]." //Clonepod /obj/machinery/clonepod/examine(mob/user) - ..() + . = ..() var/mob/living/mob_occupant = occupant 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(is_operational() && mob_occupant) if(mob_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() // We want to simulate the clone not being in contact with diff --git a/code/game/machinery/computer/arcade/orion_trail.dm b/code/game/machinery/computer/arcade/orion_trail.dm index 12941dea..eb36ee72 100644 --- a/code/game/machinery/computer/arcade/orion_trail.dm +++ b/code/game/machinery/computer/arcade/orion_trail.dm @@ -760,13 +760,13 @@ 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.") + . += "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.") + . += "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/card.dm b/code/game/machinery/computer/card.dm index ce0a9b2e..a46a1bb9 100644 --- a/code/game/machinery/computer/card.dm +++ b/code/game/machinery/computer/card.dm @@ -46,9 +46,9 @@ GLOBAL_VAR_INIT(time_last_changed_position, 0) light_color = LIGHT_COLOR_BLUE /obj/machinery/computer/card/examine(mob/user) - ..() + . = ..() if(scan || modify) - to_chat(user, "Alt-click to eject the ID card.") + . += "Alt-click to eject the ID card." /obj/machinery/computer/card/Initialize() . = ..() diff --git a/code/game/machinery/computer/dna_console.dm b/code/game/machinery/computer/dna_console.dm index 59c96299..018405df 100644 --- a/code/game/machinery/computer/dna_console.dm +++ b/code/game/machinery/computer/dna_console.dm @@ -99,11 +99,11 @@ stored_research = SSresearch.science_tech /obj/machinery/computer/scan_consolenew/examine(mob/user) - ..() + . = ..() if(jokerready < world.time) - to_chat(user, "JOKER algorithm available.") + . += "JOKER algorithm available." else - to_chat(user, "JOKER algorithm available in about [round(0.00166666667 * (jokerready - world.time))] minutes.") + . += "JOKER algorithm available in about [round(0.00166666667 * (jokerready - world.time))] minutes." /obj/machinery/computer/scan_consolenew/ui_interact(mob/user, last_change) . = ..() diff --git a/code/game/machinery/computer/security.dm b/code/game/machinery/computer/security.dm index ee4e5289..9a8e1280 100644 --- a/code/game/machinery/computer/security.dm +++ b/code/game/machinery/computer/security.dm @@ -24,9 +24,9 @@ light_color = LIGHT_COLOR_RED /obj/machinery/computer/secure_data/examine(mob/user) - ..() + . = ..() if(scan) - to_chat(user, "Alt-click to eject the ID card.") + . += "Alt-click to eject the ID card." /obj/machinery/computer/secure_data/syndie icon_keyboard = "syndie_key" diff --git a/code/game/machinery/constructable_frame.dm b/code/game/machinery/constructable_frame.dm index 43fb1e53..96487915 100644 --- a/code/game/machinery/constructable_frame.dm +++ b/code/game/machinery/constructable_frame.dm @@ -8,9 +8,9 @@ var/state = 1 /obj/structure/frame/examine(user) - ..() + . = ..() if(circuit) - to_chat(user, "It has \a [circuit] installed.") + . += "It has \a [circuit] installed." /obj/structure/frame/deconstruct(disassembled = TRUE) @@ -29,7 +29,7 @@ var/list/req_component_names = null // user-friendly names of components /obj/structure/frame/machine/examine(user) - ..() + . = ..() if(state == 3 && req_components && req_component_names) var/hasContent = 0 var/requires = "It requires" @@ -44,9 +44,9 @@ hasContent = 1 if(hasContent) - to_chat(user, requires + ".") + . += requires + "." else - to_chat(user, "It does not require any more components.") + . += "It does not require any more components." /obj/structure/frame/machine/proc/update_namelist() if(!req_components) diff --git a/code/game/machinery/defibrillator_mount.dm b/code/game/machinery/defibrillator_mount.dm index 4210435f..97cc0f57 100644 --- a/code/game/machinery/defibrillator_mount.dm +++ b/code/game/machinery/defibrillator_mount.dm @@ -24,13 +24,13 @@ . = ..() /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(GLOB.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." /obj/machinery/defibrillator_mount/process() if(defib && defib.cell && defib.cell.charge < defib.cell.maxcharge && is_operational()) diff --git a/code/game/machinery/deployable.dm b/code/game/machinery/deployable.dm index f4154eac..f07cf38a 100644 --- a/code/game/machinery/deployable.dm +++ b/code/game/machinery/deployable.dm @@ -148,8 +148,8 @@ var/mode = SINGLE /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.canUseTopic(src, BE_CLOSE)) diff --git a/code/game/machinery/dish_drive.dm b/code/game/machinery/dish_drive.dm index 66aa1347..3aad8d87 100644 --- a/code/game/machinery/dish_drive.dm +++ b/code/game/machinery/dish_drive.dm @@ -27,9 +27,9 @@ RefreshParts() /obj/machinery/dish_drive/examine(mob/user) - ..() + . = ..() if(user.Adjacent(src)) - to_chat(user, "Alt-click it to beam its contents to any nearby disposal bins.") + . += "Alt-click it to beam its contents to any nearby disposal bins." /obj/machinery/dish_drive/attack_hand(mob/living/user) if(!contents.len) diff --git a/code/game/machinery/doors/airlock.dm b/code/game/machinery/doors/airlock.dm index 11c6be02..7a2f1fd3 100644 --- a/code/game/machinery/doors/airlock.dm +++ b/code/game/machinery/doors/airlock.dm @@ -639,47 +639,47 @@ update_icon(AIRLOCK_CLOSED) /obj/machinery/door/airlock/examine(mob/user) - ..() + . = ..() if(obj_flags & EMAGGED) - to_chat(user, "Its access panel is smoking slightly.") + . += "Its access panel is smoking slightly." if(charge && !panel_open && in_range(user, src)) - to_chat(user, "The maintenance panel seems haphazardly fastened.") + . += "The maintenance panel seems haphazardly fastened." if(charge && panel_open) - to_chat(user, "Something is wired up to the airlock's electronics!") + . += "Something is wired up to the airlock's electronics!" if(note) if(!in_range(user, src)) - to_chat(user, "There's a [note.name] pinned to the front. You can't read it from here.") + . += "There's a [note.name] pinned to the front. You can't read it from here." else - to_chat(user, "There's a [note.name] pinned to the front...") - note.examine(user) + . += "There's a [note.name] pinned to the front..." + . += note.examine(user) 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." if(issilicon(user) && (!stat & BROKEN)) - to_chat(user, "Shift-click [src] to [ density ? "open" : "close"] it.") - to_chat(user, "Ctrl-click [src] to [ locked ? "raise" : "drop"] its bolts.") - to_chat(user, "Alt-click [src] to [ secondsElectrified ? "un-electrify" : "permanently electrify"] it.") - to_chat(user, "Ctrl-Shift-click [src] to [ emergency ? "disable" : "enable"] emergency access.") + . += "Shift-click [src] to [ density ? "open" : "close"] it." + . += "Ctrl-click [src] to [ locked ? "raise" : "drop"] its bolts." + . += "Alt-click [src] to [ secondsElectrified ? "un-electrify" : "permanently electrify"] it." + . += "Ctrl-Shift-click [src] to [ emergency ? "disable" : "enable"] emergency access." /obj/machinery/door/airlock/attack_ai(mob/user) if(!src.canAIControl(user)) diff --git a/code/game/machinery/doors/airlock_electronics.dm b/code/game/machinery/doors/airlock_electronics.dm index cfaa94b8..54774a8f 100644 --- a/code/game/machinery/doors/airlock_electronics.dm +++ b/code/game/machinery/doors/airlock_electronics.dm @@ -7,8 +7,8 @@ var/unres_sides = 0 //unrestricted sides, or sides of the airlock that will open regardless of access /obj/item/electronics/airlock/examine(mob/user) - ..() - to_chat(user, "Has a neat selection menu for modifying airlock access levels.") + . = ..() + . += "Has a neat selection menu for modifying airlock access levels." /obj/item/electronics/airlock/ui_interact(mob/user, ui_key = "main", datum/tgui/ui = null, force_open = FALSE, \ datum/tgui/master_ui = null, datum/ui_state/state = GLOB.hands_state) diff --git a/code/game/machinery/doors/airlock_types.dm b/code/game/machinery/doors/airlock_types.dm index 3243986f..3525742c 100644 --- a/code/game/machinery/doors/airlock_types.dm +++ b/code/game/machinery/doors/airlock_types.dm @@ -584,14 +584,12 @@ return ..() /obj/machinery/door/airlock/clockwork/examine(mob/user) - ..() - var/gear_text = "The cogwheel is flickering and twisting wildly. Report this to a coder." + . = ..() switch(construction_state) if(GEAR_SECURE) - gear_text = "The cogwheel is solidly wrenched to the brass around it." + . += "The cogwheel is solidly wrenched to the brass around it." if(GEAR_LOOSE) - gear_text = "The cogwheel has been loosened, but remains connected loosely to the door!" - to_chat(user, gear_text) + . += "The cogwheel has been loosened, but remains connected loosely to the door!" /obj/machinery/door/airlock/clockwork/emp_act(severity) if(prob(80/severity)) diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm index 0c99fc92..a7d62ea6 100644 --- a/code/game/machinery/doors/door.dm +++ b/code/game/machinery/doors/door.dm @@ -38,14 +38,14 @@ var/unres_sides = 0 //Unrestricted sides. A bitflag for which direction (if any) can open the door with no access /obj/machinery/door/examine(mob/user) - ..() + . = ..() if(red_alert_access) if(GLOB.security_level >= SEC_LEVEL_RED) - to_chat(user, "Due to a security threat, its access requirements have been lifted!") + . += "Due to a security threat, its access requirements have been lifted!" else - to_chat(user, "In the event of a red alert, its access requirements will automatically lift.") + . += "In the event of a red alert, its access requirements will automatically lift." if(!poddoor) - to_chat(user, "Its maintenance panel is screwed in place.") + . += "Its maintenance panel is screwed in place." /obj/machinery/door/check_access_list(list/access_list) if(red_alert_access && GLOB.security_level >= SEC_LEVEL_RED) diff --git a/code/game/machinery/doors/firedoor.dm b/code/game/machinery/doors/firedoor.dm index bbd692b8..f5bf8c8a 100644 --- a/code/game/machinery/doors/firedoor.dm +++ b/code/game/machinery/doors/firedoor.dm @@ -32,15 +32,15 @@ CalculateAffectingAreas() /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/proc/CalculateAffectingAreas() remove_from_areas() @@ -270,18 +270,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/doppler_array.dm b/code/game/machinery/doppler_array.dm index 8bc5bc7a..7baf5208 100644 --- a/code/game/machinery/doppler_array.dm +++ b/code/game/machinery/doppler_array.dm @@ -22,8 +22,8 @@ GLOBAL_LIST_EMPTY(doppler_arrays) return ..() /obj/machinery/doppler_array/examine(mob/user) - ..() - to_chat(user, "Its dish is facing to the [dir2text(dir)].") + . = ..() + . += "Its dish is facing to the [dir2text(dir)]." /obj/machinery/doppler_array/process() return PROCESS_KILL @@ -146,4 +146,4 @@ GLOBAL_LIST_EMPTY(doppler_arrays) /obj/machinery/doppler_array/research/science/Initialize() . = ..() - linked_techweb = SSresearch.science_tech \ No newline at end of file + linked_techweb = SSresearch.science_tech diff --git a/code/game/machinery/droneDispenser.dm b/code/game/machinery/droneDispenser.dm index 7c92c158..3e2a6183 100644 --- a/code/game/machinery/droneDispenser.dm +++ b/code/game/machinery/droneDispenser.dm @@ -129,9 +129,9 @@ break_message = "slowly falls dark, lights stuttering." /obj/machinery/droneDispenser/examine(mob/user) - ..() + . = ..() if((mode == DRONE_RECHARGING) && !stat && recharging_text) - to_chat(user, "[recharging_text]") + . += "[recharging_text]" /obj/machinery/droneDispenser/power_change() ..() diff --git a/code/game/machinery/flasher.dm b/code/game/machinery/flasher.dm index 530c72be..6f89ce0d 100644 --- a/code/game/machinery/flasher.dm +++ b/code/game/machinery/flasher.dm @@ -196,8 +196,8 @@ var/id = null /obj/item/wallframe/flasher/examine(mob/user) - ..() - to_chat(user, "Its channel ID is '[id]'.") + . = ..() + . += "Its channel ID is '[id]'." /obj/item/wallframe/flasher/after_attach(var/obj/O) ..() diff --git a/code/game/machinery/harvester.dm b/code/game/machinery/harvester.dm index 8be7becf..63321baa 100644 --- a/code/game/machinery/harvester.dm +++ b/code/game/machinery/harvester.dm @@ -181,10 +181,10 @@ container_resist(user) /obj/machinery/harvester/examine(mob/user) - ..() + . = ..() if(stat & BROKEN) return if(state_open) - to_chat(user, "[src] must be closed before harvesting.") + . += "[src] must be closed before harvesting." else if(!harvesting) - to_chat(user, "Alt-click [src] to start harvesting.") \ No newline at end of file + . += "Alt-click [src] to start harvesting." \ No newline at end of file diff --git a/code/game/machinery/iv_drip.dm b/code/game/machinery/iv_drip.dm index 54b42a14..f03c4bf6 100644 --- a/code/game/machinery/iv_drip.dm +++ b/code/game/machinery/iv_drip.dm @@ -201,21 +201,19 @@ update_icon() /obj/machinery/iv_drip/examine(mob/user) - ..() + . = ..() if(get_dist(user, src) > 2) return - - to_chat(user, "The IV drip is [mode ? "injecting" : "taking blood"].") - + . += "[src] is [mode ? "injecting" : "taking blood"].\n" if(beaker) if(beaker.reagents && beaker.reagents.reagent_list.len) - to_chat(user, "Attached is \a [beaker] with [beaker.reagents.total_volume] units of liquid.") + . += "\tAttached is \a [beaker] with [beaker.reagents.total_volume] units of liquid.\n" else - to_chat(user, "Attached is an empty [beaker.name].") + . += "\tAttached is an empty [beaker.name].\n" else - to_chat(user, "No chemicals are attached.") + . += "\tNo chemicals are attached.\n" - to_chat(user, "[attached ? attached : "No one"] is attached.") + . += "\t[attached ? attached : "No one"] is attached." #undef IV_TAKING #undef IV_INJECTING diff --git a/code/game/machinery/lightswitch.dm b/code/game/machinery/lightswitch.dm index 064328bb..20b59e7a 100644 --- a/code/game/machinery/lightswitch.dm +++ b/code/game/machinery/lightswitch.dm @@ -33,8 +33,8 @@ icon_state = "light0" /obj/machinery/light_switch/examine(mob/user) - ..() - to_chat(user, "It is [on? "on" : "off"].") + . = ..() + . += "It is [on? "on" : "off"]." /obj/machinery/light_switch/interact(mob/user) . = ..() diff --git a/code/game/machinery/porta_turret/portable_turret.dm b/code/game/machinery/porta_turret/portable_turret.dm index 4a060bdd..e20c991c 100644 --- a/code/game/machinery/porta_turret/portable_turret.dm +++ b/code/game/machinery/porta_turret/portable_turret.dm @@ -815,10 +815,10 @@ T.cp = src /obj/machinery/turretid/examine(mob/user) - ..() + . = ..() if(issilicon(user) && (!stat & BROKEN)) - to_chat(user, "Ctrl-click [src] to [ enabled ? "disable" : "enable"] turrets.") - to_chat(user, "Alt-click [src] to set turrets to [ lethal ? "stun" : "kill"].") + . += "Ctrl-click [src] to [ enabled ? "disable" : "enable"] turrets." + . += "Alt-click [src] to set turrets to [ lethal ? "stun" : "kill"]." /obj/machinery/turretid/attackby(obj/item/I, mob/user, params) if(stat & BROKEN) diff --git a/code/game/machinery/quantum_pad.dm b/code/game/machinery/quantum_pad.dm index b5ef38b4..f9fda50d 100644 --- a/code/game/machinery/quantum_pad.dm +++ b/code/game/machinery/quantum_pad.dm @@ -30,12 +30,12 @@ return ..() /obj/machinery/quantumpad/examine(mob/user) - ..() - to_chat(user, "It is [ linked_pad ? "currently" : "not"] linked to another pad.") + . = ..() + . += "It is [ linked_pad ? "currently" : "not"] linked to another pad." if(!panel_open) - to_chat(user, "The panel is screwed in, obstructing the linking device.") + . += "The panel is screwed in, obstructing the linking device." else - to_chat(user, "The linking device is now able to be scanned with a multitool.") + . += "The linking device is now able to be scanned with a multitool." /obj/machinery/quantumpad/RefreshParts() var/E = 0 diff --git a/code/game/machinery/recycler.dm b/code/game/machinery/recycler.dm index d91f3541..d6c73ce5 100644 --- a/code/game/machinery/recycler.dm +++ b/code/game/machinery/recycler.dm @@ -40,10 +40,10 @@ butchering.bonus_modifier = amount_produced/5 /obj/machinery/recycler/examine(mob/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 [obj_flags & 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 [obj_flags & EMAGGED ? "off" : "on"]." /obj/machinery/recycler/power_change() ..() diff --git a/code/game/machinery/spaceheater.dm b/code/game/machinery/spaceheater.dm index ce325505..984a911d 100644 --- a/code/game/machinery/spaceheater.dm +++ b/code/game/machinery/spaceheater.dm @@ -46,12 +46,12 @@ return ..() /obj/machinery/space_heater/examine(mob/user) - ..() - to_chat(user, "\The [src] is [on ? "on" : "off"], and the hatch is [panel_open ? "open" : "closed"].") + . = ..() + . += "\The [src] is [on ? "on" : "off"], and the hatch is [panel_open ? "open" : "closed"]." if(cell) - to_chat(user, "The charge meter reads [cell ? round(cell.percent(), 1) : 0]%.") + . += "The charge meter reads [cell ? round(cell.percent(), 1) : 0]%." else - to_chat(user, "There is no power cell installed.") + . += "There is no power cell installed." /obj/machinery/space_heater/update_icon() if(on) diff --git a/code/game/machinery/stasis.dm b/code/game/machinery/stasis.dm index 720e3e61..b674deb9 100644 --- a/code/game/machinery/stasis.dm +++ b/code/game/machinery/stasis.dm @@ -17,9 +17,9 @@ var/obj/effect/overlay/vis/mattress_on /obj/machinery/stasis/examine(mob/user) - ..() + . = ..() var/turn_on_or_off = stasis_enabled ? "turn off" : "turn on" - to_chat(user, "Alt-click to [turn_on_or_off] the machine.") + . += "Alt-click to [turn_on_or_off] the machine." /obj/machinery/stasis/proc/play_power_sound() var/_running = stasis_running() @@ -139,4 +139,4 @@ unbuckle_mob(occupant) else ..() -#undef STASIS_TOGGLE_COOLDOWN \ No newline at end of file +#undef STASIS_TOGGLE_COOLDOWN diff --git a/code/game/machinery/status_display.dm b/code/game/machinery/status_display.dm index 675c8bce..a722fcaf 100644 --- a/code/game/machinery/status_display.dm +++ b/code/game/machinery/status_display.dm @@ -114,12 +114,11 @@ /obj/machinery/status_display/examine(mob/user) . = ..() if (message1 || message2) - var/list/msg = list("The display says:") + . += "The display says:" if (message1) - msg += "
\t[html_encode(message1)]" + . += "\t[html_encode(message1)]" if (message2) - msg += "
\t[html_encode(message2)]" - to_chat(user, msg.Join()) + . += "\t[html_encode(message2)]" // Helper procs for child display types. /obj/machinery/status_display/proc/display_shuttle_status(obj/docking_port/mobile/shuttle) @@ -146,9 +145,9 @@ modestr = "
\t[modestr]: [shuttle.getTimerStr()]" else modestr = "
\t[modestr]" - to_chat(user, "The display says:
\t[shuttle.name][modestr]") + return "The display says:
\t[shuttle.name][modestr]" else - to_chat(user, "The display says:
\tShuttle missing!") + return "The display says:
\tShuttle missing!" /// Evac display which shows shuttle timer or message set by Command. @@ -195,9 +194,9 @@ /obj/machinery/status_display/evac/examine(mob/user) . = ..() if(mode == SD_EMERGENCY) - examine_shuttle(user, SSshuttle.emergency) + . += examine_shuttle(user, SSshuttle.emergency) else if(!message1 && !message2) - to_chat(user, "The display is blank.") + . += "The display is blank." /obj/machinery/status_display/evac/receive_signal(datum/signal/signal) switch(signal.data["command"]) @@ -257,9 +256,9 @@ else shuttleMsg = "[shuttle.getModeStr()]: [shuttle.getTimerStr()]" if (shuttleMsg) - to_chat(user, "The display says:
\t[shuttleMsg]") + . += "The display says:
\t[shuttleMsg]" else - to_chat(user, "The display is blank.") + . += "The display is blank." /// General-purpose shuttle status display. @@ -278,9 +277,9 @@ /obj/machinery/status_display/shuttle/examine(mob/user) . = ..() if(shuttle_id) - examine_shuttle(user, SSshuttle.getShuttle(shuttle_id)) + . += examine_shuttle(user, SSshuttle.getShuttle(shuttle_id)) else - to_chat(user, "The display is blank.") + . += "The display is blank." /obj/machinery/status_display/shuttle/vv_edit_var(var_name, var_value) . = ..() diff --git a/code/game/machinery/syndicatebomb.dm b/code/game/machinery/syndicatebomb.dm index d7c2a573..df1f2842 100644 --- a/code/game/machinery/syndicatebomb.dm +++ b/code/game/machinery/syndicatebomb.dm @@ -99,8 +99,8 @@ return ..() /obj/machinery/syndicatebomb/examine(mob/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/machinery/transformer.dm b/code/game/machinery/transformer.dm index 1ebe8cb4..3ff2424d 100644 --- a/code/game/machinery/transformer.dm +++ b/code/game/machinery/transformer.dm @@ -28,7 +28,7 @@ /obj/machinery/transformer/examine(mob/user) . = ..() if(cooldown && (issilicon(user) || isobserver(user))) - to_chat(user, "It will be ready in [DisplayTimeText(cooldown_timer - world.time)].") + . += "It will be ready in [DisplayTimeText(cooldown_timer - world.time)]." /obj/machinery/transformer/Destroy() QDEL_NULL(countdown) diff --git a/code/game/machinery/washing_machine.dm b/code/game/machinery/washing_machine.dm index 69e244a6..acc123b5 100644 --- a/code/game/machinery/washing_machine.dm +++ b/code/game/machinery/washing_machine.dm @@ -16,8 +16,8 @@ AddComponent(/datum/component/redirect, list(COMSIG_COMPONENT_CLEAN_ACT = CALLBACK(src, .proc/clean_blood))) /obj/machinery/washing_machine/examine(mob/user) - ..() - to_chat(user, "Alt-click it to start a wash cycle.") + . = ..() + . += "Alt-click it to start a wash cycle." /obj/machinery/washing_machine/AltClick(mob/user) if(!user.canUseTopic(src)) diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm index d3106d7b..4032f370 100644 --- a/code/game/mecha/mecha.dm +++ b/code/game/mecha/mecha.dm @@ -268,23 +268,23 @@ //////////////////////////////////////////////////////////////////////////////// /obj/mecha/examine(mob/user) - ..() + . = ..() var/integrity = obj_integrity*100/max_integrity 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, "[icon2html(ME, user)] \A [ME].") + . += "[icon2html(ME, user)] \A [ME]." if(!enclosed) if(silicon_pilot) to_chat(user, "[src] appears to be piloting itself...") diff --git a/code/game/mecha/mecha_wreckage.dm b/code/game/mecha/mecha_wreckage.dm index 652c9f31..af03e9ca 100644 --- a/code/game/mecha/mecha_wreckage.dm +++ b/code/game/mecha/mecha_wreckage.dm @@ -30,9 +30,9 @@ AI.remote_control = null /obj/structure/mecha_wreckage/examine(mob/user) - ..() + . = ..() if(AI) - to_chat(user, "The AI recovery beacon is active.") + . += "The AI recovery beacon is active." /obj/structure/mecha_wreckage/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/weldingtool)) diff --git a/code/game/objects/effects/countdown.dm b/code/game/objects/effects/countdown.dm index eea6b6ba..6017e8fc 100644 --- a/code/game/objects/effects/countdown.dm +++ b/code/game/objects/effects/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/game/objects/effects/decals/cleanable/humans.dm b/code/game/objects/effects/decals/cleanable/humans.dm index 07ce9871..439ae734 100644 --- a/code/game/objects/effects/decals/cleanable/humans.dm +++ b/code/game/objects/effects/decals/cleanable/humans.dm @@ -179,9 +179,7 @@ . += "You recognise the footprints as belonging to:\n" for(var/shoe in shoe_types) var/obj/item/clothing/shoes/S = shoe - . += "[icon2html(initial(S.icon), user)] Some [initial(S.name)].\n" - - to_chat(user, .) + . += "some [initial(S.name)] [icon2html(initial(S.icon), user)]" /obj/effect/decal/cleanable/blood/footprints/replace_decal(obj/effect/decal/cleanable/C) if(blood_state != C.blood_state) //We only replace footprints of the same type as us diff --git a/code/game/objects/effects/glowshroom.dm b/code/game/objects/effects/glowshroom.dm index c009d3ec..9a498c9a 100644 --- a/code/game/objects/effects/glowshroom.dm +++ b/code/game/objects/effects/glowshroom.dm @@ -36,7 +36,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() if(myseed) diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm index d24f4b07..ecae0d85 100644 --- a/code/game/objects/items.dm +++ b/code/game/objects/items.dm @@ -187,14 +187,21 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) src.loc = T /obj/item/examine(mob/user) //This might be spammy. Remove? - ..() - var/pronoun - if(src.gender == PLURAL) - pronoun = "They are" + . = ..() + + . += "[gender == PLURAL ? "They are" : "It is"] a [weightclass2text(w_class)] item." + + if(resistance_flags & INDESTRUCTIBLE) + . += "[src] seems extremely robust! It'll probably withstand anything that could happen to it!" else - pronoun = "It is" - var/size = weightclass2text(src.w_class) - to_chat(user, "[pronoun] a [size] item." ) + if(resistance_flags & LAVA_PROOF) + . += "[src] is made of an extremely heat-resistant material, it'd probably be able to withstand lava!" + if(resistance_flags & (ACID_PROOF | UNACIDABLE)) + . += "[src] looks pretty robust! It'd probably be able to withstand acid!" + if(resistance_flags & FREEZE_PROOF) + . += "[src] is made of cold-resistant materials." + if(resistance_flags & FIRE_PROOF) + . += "[src] is made of fire-retardant materials." if(!user.research_scanner) return @@ -229,7 +236,7 @@ GLOBAL_VAR_INIT(rpg_loot_items, FALSE) else research_msg += "None" research_msg += "." - to_chat(user, research_msg.Join()) + . += research_msg.Join() /obj/item/interact(mob/user) add_fingerprint(user) diff --git a/code/game/objects/items/AI_modules.dm b/code/game/objects/items/AI_modules.dm index 2fe5cf47..d1ac96ac 100644 --- a/code/game/objects/items/AI_modules.dm +++ b/code/game/objects/items/AI_modules.dm @@ -25,7 +25,7 @@ AI MODULES materials = list(MAT_GOLD=50) /obj/item/aiModule/examine(var/mob/user as mob) - ..() + . = ..() if(Adjacent(user)) show_laws(user) diff --git a/code/game/objects/items/RCD.dm b/code/game/objects/items/RCD.dm index 7bef90c0..c7af75a2 100644 --- a/code/game/objects/items/RCD.dm +++ b/code/game/objects/items/RCD.dm @@ -47,11 +47,11 @@ RLD /obj/item/construction/examine(mob/user) . = ..() - to_chat(user, "It currently holds [matter]/[max_matter] matter-units." ) + . += "\A [src]. It currently holds [matter]/[max_matter] matter-units." if(upgrade & RCD_UPGRADE_FRAMES) - to_chat(user, "It contains the design for machine frames, computer frames and deconstruction." ) + . += "It contains the design for machine frames, computer frames and deconstruction." if(upgrade & RCD_UPGRADE_SIMPLE_CIRCUITS) - to_chat(user, "It contains the design for firelock, air alarm, fire alarm, apc circuits and crap power cells.") + . += "It contains the design for firelock, air alarm, fire alarm, apc circuits and crap power cells." /obj/item/construction/Destroy() QDEL_NULL(spark_system) @@ -875,4 +875,4 @@ RLD #undef GLOW_MODE #undef LIGHT_MODE -#undef REMOVE_MODE \ No newline at end of file +#undef REMOVE_MODE diff --git a/code/game/objects/items/RCL.dm b/code/game/objects/items/RCL.dm index 63f460f9..16104f0b 100644 --- a/code/game/objects/items/RCL.dm +++ b/code/game/objects/items/RCL.dm @@ -79,9 +79,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/RSF.dm b/code/game/objects/items/RSF.dm index f0d15cc3..b6196b0c 100644 --- a/code/game/objects/items/RSF.dm +++ b/code/game/objects/items/RSF.dm @@ -20,8 +20,8 @@ RSF w_class = WEIGHT_CLASS_NORMAL /obj/item/rsf/examine(mob/user) - ..() - to_chat(user, "It currently holds [matter]/30 fabrication-units.") + . = ..() + . += "It currently holds [matter]/30 fabrication-units." /obj/item/rsf/cyborg matter = 30 @@ -127,8 +127,8 @@ RSF w_class = WEIGHT_CLASS_NORMAL /obj/item/cookiesynth/examine(mob/user) - ..() - to_chat(user, "It currently holds [matter]/10 cookie-units.") + . = ..() + . += "It currently holds [matter]/10 cookie-units." /obj/item/cookiesynth/attackby() return diff --git a/code/game/objects/items/airlock_painter.dm b/code/game/objects/items/airlock_painter.dm index 7257da56..1dac4df9 100644 --- a/code/game/objects/items/airlock_painter.dm +++ b/code/game/objects/items/airlock_painter.dm @@ -91,9 +91,9 @@ /obj/item/airlock_painter/examine(mob/user) - ..() + . = ..() if(!ink) - to_chat(user, "It doesn't have a toner cartridge installed.") + . += "It doesn't have a toner cartridge installed." return var/ink_level = "high" if(ink.charges < 1) @@ -102,8 +102,7 @@ ink_level = "low" else if((ink.charges/ink.max_charges) > 1) //Over 100% (admin var edit) ink_level = "dangerously high" - to_chat(user, "Its ink levels look [ink_level].") - + . += "Its ink levels look [ink_level]." /obj/item/airlock_painter/attackby(obj/item/W, mob/user, params) if(istype(W, /obj/item/toner)) diff --git a/code/game/objects/items/bodybag.dm b/code/game/objects/items/bodybag.dm index e53cc5ac..e93bfb99 100644 --- a/code/game/objects/items/bodybag.dm +++ b/code/game/objects/items/bodybag.dm @@ -46,10 +46,10 @@ /obj/item/bodybag/bluespace/examine(mob/user) - ..() + . = ..() if(contents.len) var/s = contents.len == 1 ? "" : "s" - to_chat(user, "You can make out the shape[s] of [contents.len] object[s] through the fabric.") + . += "You can make out the shape[s] of [contents.len] object[s] through the fabric." /obj/item/bodybag/bluespace/Destroy() for(var/atom/movable/A in contents) diff --git a/code/game/objects/items/cards_ids.dm b/code/game/objects/items/cards_ids.dm index f8d705fc..88d7b99a 100644 --- a/code/game/objects/items/cards_ids.dm +++ b/code/game/objects/items/cards_ids.dm @@ -122,6 +122,9 @@ user.visible_message("[src] fizzles and sparks. It seems like it's out of charges.") playsound(src, 'sound/effects/light_flicker.ogg', 100, 1) +/obj/item/card/emag/examine(mob/user) + . = ..() + . += "It has [uses ? uses : "no"] charges left." /obj/item/card/emagfake desc = "It's a card with a magnetic strip attached to some circuitry. Closer inspection shows that this card is a poorly made replica, with a \"DonkCo\" logo stamped on the back." @@ -173,9 +176,9 @@ return /obj/item/card/id/examine(mob/user) - ..() + . = ..() if(mining_points) - to_chat(user, "There's [mining_points] mining equipment redemption point\s loaded onto this card.") + . += "There's [mining_points] mining equipment redemption point\s loaded onto this card." /obj/item/card/id/GetAccess() return access diff --git a/code/game/objects/items/cigs_lighters.dm b/code/game/objects/items/cigs_lighters.dm index 939fe1a6..ebb8e120 100644 --- a/code/game/objects/items/cigs_lighters.dm +++ b/code/game/objects/items/cigs_lighters.dm @@ -951,18 +951,18 @@ CIGARETTE PACKETS ARE IN FANCY.DM user.show_message("You quench the flame.", 1) /obj/item/bong/examine(mob/user) - ..() + . = ..() if(!reagents.total_volume) - to_chat(user, "The bowl is empty.") + . += "The bowl is empty." else if (reagents.total_volume > 80) - to_chat(user, "The bowl is filled to the brim.") + . += "The bowl is filled to the brim." else if (reagents.total_volume > 40) - to_chat(user, "The bowl has plenty weed in it.") + . += "The bowl has plenty weed in it." else - to_chat(user, "The bowl has some weed in it.") + . += "The bowl has some weed in it." - to_chat(user, "Ctrl+Shift-click to empty.") - to_chat(user, "Alt-click to extinguish.") + . += "Ctrl+Shift-click to empty." + . += "Alt-click to extinguish." /obj/item/bong/ignition_effect(atom/A, mob/user) if(firecharges) diff --git a/code/game/objects/items/circuitboards/circuitboard.dm b/code/game/objects/items/circuitboards/circuitboard.dm index 26c13263..8106733a 100644 --- a/code/game/objects/items/circuitboards/circuitboard.dm +++ b/code/game/objects/items/circuitboards/circuitboard.dm @@ -56,7 +56,7 @@ micro-manipulator, console screen, beaker, Microlaser, matter bin, power cells. M.RefreshParts() /obj/item/circuitboard/machine/examine(mob/user) - ..() + . = ..() if(LAZYLEN(req_components)) var/list/nice_list = list() for(var/B in req_components) @@ -64,4 +64,4 @@ micro-manipulator, console screen, beaker, Microlaser, matter bin, power cells. 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)]." diff --git a/code/game/objects/items/circuitboards/computer_circuitboards.dm b/code/game/objects/items/circuitboards/computer_circuitboards.dm index afbf2630..81231eb7 100644 --- a/code/game/objects/items/circuitboards/computer_circuitboards.dm +++ b/code/game/objects/items/circuitboards/computer_circuitboards.dm @@ -73,8 +73,8 @@ return ..() /obj/item/circuitboard/computer/card/minor/examine(user) - ..() - to_chat(user, "Currently set to \"[dept_list[target_dept]]\".") + . = ..() + . += "Currently set to \"[dept_list[target_dept]]\"." //obj/item/circuitboard/computer/shield // name = "Shield Control (Computer Board)" diff --git a/code/game/objects/items/circuitboards/machine_circuitboards.dm b/code/game/objects/items/circuitboards/machine_circuitboards.dm index 64ec1883..c65c269a 100644 --- a/code/game/objects/items/circuitboards/machine_circuitboards.dm +++ b/code/game/objects/items/circuitboards/machine_circuitboards.dm @@ -434,8 +434,8 @@ return ..() /obj/item/circuitboard/machine/smartfridge/examine(mob/user) - ..() - to_chat(user, "[src] is set to [fridges_name_paths[build_path]]. You can use a screwdriver to reconfigure it.") + . = ..() + . += "[src] is set to [fridges_name_paths[build_path]]. You can use a screwdriver to reconfigure it." /obj/item/circuitboard/machine/biogenerator name = "Biogenerator (Machine Board)" @@ -780,7 +780,7 @@ /obj/item/circuitboard/machine/public_nanite_chamber/examine(mob/user) . = ..() - to_chat(user, "Cloud ID is currently set to [cloud_id].") + . += "Cloud ID is currently set to [cloud_id]." /obj/item/circuitboard/machine/nanite_program_hub name = "Nanite Program Hub (Machine Board)" @@ -941,9 +941,9 @@ needs_anchored = FALSE /obj/item/circuitboard/machine/dish_drive/examine(mob/user) - ..() - to_chat(user, "Its suction function is [suction ? "enabled" : "disabled"]. Use it in-hand to switch.") - to_chat(user, "Its disposal auto-transmit function is [transmit ? "enabled" : "disabled"]. Alt-click it to switch.") + . = ..() + . += "Its suction function is [suction ? "enabled" : "disabled"]. Use it in-hand to switch." + . += "Its disposal auto-transmit function is [transmit ? "enabled" : "disabled"]. Alt-click it to switch." /obj/item/circuitboard/machine/dish_drive/attack_self(mob/living/user) suction = !suction diff --git a/code/game/objects/items/crayons.dm b/code/game/objects/items/crayons.dm index 56b9a440..6e1bac03 100644 --- a/code/game/objects/items/crayons.dm +++ b/code/game/objects/items/crayons.dm @@ -667,10 +667,10 @@ /obj/item/toy/crayon/spraycan/examine(mob/user) . = ..() if(charges_left) - to_chat(user, "It has [charges_left] use\s left.") + . += "It has [charges_left] use\s left." else - to_chat(user, "It is empty.") - to_chat(user, "Alt-click [src] to [ is_capped ? "take the cap off" : "put the cap on"].") + . += "It is empty." + . += "Alt-click [src] to [ is_capped ? "take the cap off" : "put the cap on"]." /obj/item/toy/crayon/spraycan/afterattack(atom/target, mob/user, proximity, params) if(!proximity) @@ -831,7 +831,7 @@ /obj/item/toy/crayon/spraycan/gang/examine(mob/user) . = ..() if(user.mind && user.mind.has_antag_datum(/datum/antagonist/gang) || isobserver(user)) - to_chat(user, "This spraycan has been specially modified with a stage 2 nozzle kit, making it faster.") + . += "This spraycan has been specially modified with a stage 2 nozzle kit, making it faster." /obj/item/toy/crayon/spraycan/infinite name = "infinite spraycan" diff --git a/code/game/objects/items/devices/PDA/PDA.dm b/code/game/objects/items/devices/PDA/PDA.dm index 505d2c07..c4b86f04 100644 --- a/code/game/objects/items/devices/PDA/PDA.dm +++ b/code/game/objects/items/devices/PDA/PDA.dm @@ -103,12 +103,11 @@ GLOBAL_LIST_EMPTY(PDAs) /obj/item/pda/examine(mob/user) . = ..() - var/dat = id ? "Alt-click to remove the id." : "" + . += id ? "Alt-click to remove the id." : "" if(inserted_item && (!isturf(loc))) - dat += "\nCtrl-click to remove [inserted_item]." + . += "Ctrl-click to remove [inserted_item]." if(LAZYLEN(GLOB.pda_reskins)) - dat += "\nCtrl-shift-click it to reskin it." - to_chat(user, dat) + . += "Ctrl-shift-click it to reskin it." /obj/item/pda/Initialize() . = ..() @@ -1137,4 +1136,4 @@ GLOBAL_LIST_EMPTY(PDAs) #undef PDA_OVERLAY_ID #undef PDA_OVERLAY_ITEM #undef PDA_OVERLAY_LIGHT -#undef PDA_OVERLAY_PAI \ No newline at end of file +#undef PDA_OVERLAY_PAI diff --git a/code/game/objects/items/devices/compressionkit.dm b/code/game/objects/items/devices/compressionkit.dm index 4db815dc..73535b76 100644 --- a/code/game/objects/items/devices/compressionkit.dm +++ b/code/game/objects/items/devices/compressionkit.dm @@ -12,9 +12,9 @@ var/mode = 0 /obj/item/compressionkit/examine(mob/user) - ..() - to_chat(user, "It has [charges] charges left. Recharge with bluespace crystals.") - to_chat(user, "Use in-hand to swap toggle compress/expand mode (expand mode not yet implemented).") + . = ..() + . += "It has [charges] charges left. Recharge with bluespace crystals." + . += "Use in-hand to swap toggle compress/expand mode (expand mode not yet implemented)." /obj/item/compressionkit/attack_self(mob/user) if(mode == 0) diff --git a/code/game/objects/items/devices/doorCharge.dm b/code/game/objects/items/devices/doorCharge.dm index 9b009da7..8def1d5c 100644 --- a/code/game/objects/items/devices/doorCharge.dm +++ b/code/game/objects/items/devices/doorCharge.dm @@ -35,8 +35,8 @@ return ..() /obj/item/doorCharge/examine(mob/user) - ..() + . = ..() if(user.mind && user.mind.has_antag_datum(/datum/antagonist/traitor)) //No nuke ops because the device is excluded from nuclear - to_chat(user, "A small explosive device that can be used to sabotage airlocks to cause an explosion upon opening. To apply, remove the airlock's maintenance panel and place it within.") + . += "A small explosive device that can be used to sabotage airlocks to cause an explosion upon opening. To apply, remove the airlock's maintenance panel and place it within." else - to_chat(user, "A small, suspicious object that feels lukewarm when held.") + . += "A small, suspicious object that feels lukewarm when held." diff --git a/code/game/objects/items/devices/electroadaptive_pseudocircuit.dm b/code/game/objects/items/devices/electroadaptive_pseudocircuit.dm index b909e7a1..97392ca7 100644 --- a/code/game/objects/items/devices/electroadaptive_pseudocircuit.dm +++ b/code/game/objects/items/devices/electroadaptive_pseudocircuit.dm @@ -16,11 +16,11 @@ maptext = "[circuits]" /obj/item/electroadaptive_pseudocircuit/examine(mob/user) - ..() + . = ..() if(iscyborg(user)) - to_chat(user, "It has material for [circuits] circuit[circuits == 1 ? "" : "s"]. Use the pseudocircuit on existing circuits to gain material.") - to_chat(user, "Serves as a substitute for fire/air alarm, firelock, and APC electronics.") - to_chat(user, "It can also be used on an APC with no power cell to fabricate a low-capacity cell at a high power cost.") + . += "It has material for [circuits] circuit[circuits == 1 ? "" : "s"]. Use the pseudocircuit on existing circuits to gain material." + . += "Serves as a substitute for fire/air alarm, firelock, and APC electronics." + . += "It can also be used on an APC with no power cell to fabricate a low-capacity cell at a high power cost." /obj/item/electroadaptive_pseudocircuit/proc/adapt_circuit(mob/living/silicon/robot/R, circuit_cost = 0) if(QDELETED(R) || !istype(R)) diff --git a/code/game/objects/items/devices/forcefieldprojector.dm b/code/game/objects/items/devices/forcefieldprojector.dm index 73db32eb..bf9c5dac 100644 --- a/code/game/objects/items/devices/forcefieldprojector.dm +++ b/code/game/objects/items/devices/forcefieldprojector.dm @@ -52,9 +52,9 @@ qdel(F) /obj/item/forcefield_projector/examine(mob/user) - ..() + . = ..() var/percent_charge = round((shield_integrity/max_shield_integrity)*100) - to_chat(user, "It is currently sustaining [LAZYLEN(current_fields)]/[max_fields] fields, and it's [percent_charge]% charged.") + . += "It is currently sustaining [LAZYLEN(current_fields)]/[max_fields] fields, and it's [percent_charge]% charged." /obj/item/forcefield_projector/Initialize(mapload) . = ..() diff --git a/code/game/objects/items/devices/geiger_counter.dm b/code/game/objects/items/devices/geiger_counter.dm index fe6fecbb..9d03ab47 100644 --- a/code/game/objects/items/devices/geiger_counter.dm +++ b/code/game/objects/items/devices/geiger_counter.dm @@ -65,28 +65,28 @@ current_tick_amount = 0 /obj/item/geiger_counter/examine(mob/user) - ..() + . = ..() if(!scanning) - return 1 - to_chat(user, "Alt-click it to clear stored radiation levels.") + return + . += "Alt-click it to clear stored radiation levels." if(obj_flags & EMAGGED) - to_chat(user, "The display seems to be incomprehensible.") - return 1 + . += "The display seems to be incomprehensible." + return switch(radiation_count) if(-INFINITY to RAD_LEVEL_NORMAL) - to_chat(user, "Ambient radiation level count reports that all is well.") + . += "Ambient radiation level count reports that all is well." if(RAD_LEVEL_NORMAL + 1 to RAD_LEVEL_MODERATE) - to_chat(user, "Ambient radiation levels slightly above average.") + . += "Ambient radiation levels slightly above average." if(RAD_LEVEL_MODERATE + 1 to RAD_LEVEL_HIGH) - to_chat(user, "Ambient radiation levels above average.") + . += "Ambient radiation levels above average." if(RAD_LEVEL_HIGH + 1 to RAD_LEVEL_VERY_HIGH) - to_chat(user, "Ambient radiation levels highly above average.") + . += "Ambient radiation levels highly above average." if(RAD_LEVEL_VERY_HIGH + 1 to RAD_LEVEL_CRITICAL) - to_chat(user, "Ambient radiation levels nearing critical level.") + . += "Ambient radiation levels nearing critical level." if(RAD_LEVEL_CRITICAL + 1 to INFINITY) - to_chat(user, "Ambient radiation levels above critical level!") + . += "Ambient radiation levels above critical level!" - to_chat(user, "The last radiation amount detected was [last_tick_amount]") + . += "The last radiation amount detected was [last_tick_amount]" /obj/item/geiger_counter/update_icon() if(!scanning) diff --git a/code/game/objects/items/devices/gps.dm b/code/game/objects/items/devices/gps.dm index c08c19a8..7675e913 100644 --- a/code/game/objects/items/devices/gps.dm +++ b/code/game/objects/items/devices/gps.dm @@ -14,8 +14,8 @@ GLOBAL_LIST_EMPTY(GPS_list) var/global_mode = TRUE //If disabled, only GPS signals of the same Z level are shown /obj/item/gps/examine(mob/user) - ..() - to_chat(user, "Alt-click to switch it [tracking ? "off":"on"].") + . = ..() + . += "Alt-click to switch it [tracking ? "off":"on"]." /obj/item/gps/Initialize() . = ..() diff --git a/code/game/objects/items/devices/lightreplacer.dm b/code/game/objects/items/devices/lightreplacer.dm index c0fdf6a6..072aa173 100644 --- a/code/game/objects/items/devices/lightreplacer.dm +++ b/code/game/objects/items/devices/lightreplacer.dm @@ -73,8 +73,8 @@ ..() /obj/item/lightreplacer/examine(mob/user) - ..() - to_chat(user, status_string()) + . = ..() + . += status_string() /obj/item/lightreplacer/attackby(obj/item/W, mob/user, params) diff --git a/code/game/objects/items/devices/multitool.dm b/code/game/objects/items/devices/multitool.dm index 2cef4f41..87d7b5e5 100644 --- a/code/game/objects/items/devices/multitool.dm +++ b/code/game/objects/items/devices/multitool.dm @@ -33,11 +33,11 @@ var/mode = 0 /obj/item/multitool/examine(mob/user) - ..() + . = ..() if(selected_io) - to_chat(user, "Activate [src] to detach the data wire.") + . += "Activate [src] to detach the data wire." if(buffer) - to_chat(user, "Its buffer contains [buffer].") + . += "Its buffer contains [buffer]." /obj/item/multitool/suicide_act(mob/living/carbon/user) user.visible_message("[user] puts the [src] to [user.p_their()] chest. It looks like [user.p_theyre()] trying to pulse [user.p_their()] heart off!") diff --git a/code/game/objects/items/devices/pipe_painter.dm b/code/game/objects/items/devices/pipe_painter.dm index 567cb0c7..2d0af2cf 100644 --- a/code/game/objects/items/devices/pipe_painter.dm +++ b/code/game/objects/items/devices/pipe_painter.dm @@ -26,5 +26,5 @@ paint_color = input("Which colour do you want to use?","Pipe painter") in GLOB.pipe_paint_colors /obj/item/pipe_painter/examine(mob/user) - ..() - to_chat(user, "It is set to [paint_color].") + . = ..() + . += "It is set to [paint_color]." diff --git a/code/game/objects/items/devices/quantum_keycard.dm b/code/game/objects/items/devices/quantum_keycard.dm index 37079722..fc9ccdda 100644 --- a/code/game/objects/items/devices/quantum_keycard.dm +++ b/code/game/objects/items/devices/quantum_keycard.dm @@ -10,12 +10,12 @@ var/obj/machinery/quantumpad/qpad /obj/item/quantum_keycard/examine(mob/user) - ..() + . = ..() if(qpad) - to_chat(user, "It's currently linked to a quantum pad.") - to_chat(user, "Alt-click to unlink the keycard.") + . += "It's currently linked to a quantum pad." + . += "Alt-click to unlink the keycard." else - to_chat(user, "Insert [src] into an active quantum pad to link it.") + . += "Insert [src] into an active quantum pad to link it." /obj/item/quantum_keycard/AltClick(mob/living/user) if(!istype(user) || !user.canUseTopic(src, BE_CLOSE, ismonkey(user))) diff --git a/code/game/objects/items/devices/radio/encryptionkey.dm b/code/game/objects/items/devices/radio/encryptionkey.dm index 9adc0488..4d91fee9 100644 --- a/code/game/objects/items/devices/radio/encryptionkey.dm +++ b/code/game/objects/items/devices/radio/encryptionkey.dm @@ -21,7 +21,7 @@ for(var/i in channels) examine_text_list += "[GLOB.channel_tokens[i]] - [lowertext(i)]" - to_chat(user, "It can access the following channels; [jointext(examine_text_list, ", ")].") + . += "It can access the following channels; [jointext(examine_text_list, ", ")]." /obj/item/encryptionkey/syndicate name = "syndicate encryption key" diff --git a/code/game/objects/items/devices/radio/headset.dm b/code/game/objects/items/devices/radio/headset.dm index 3578ecd2..8bea8f4e 100644 --- a/code/game/objects/items/devices/radio/headset.dm +++ b/code/game/objects/items/devices/radio/headset.dm @@ -32,7 +32,7 @@ GLOBAL_LIST_INIT(channel_tokens, list( return TOXLOSS /obj/item/radio/headset/examine(mob/user) - ..() + . = ..() if(item_flags & IN_INVENTORY && loc == user) // construction of frequency description @@ -45,12 +45,12 @@ GLOBAL_LIST_INIT(channel_tokens, list( avail_chans += "use [MODE_TOKEN_DEPARTMENT] or [GLOB.channel_tokens[channels[i]]] for [lowertext(channels[i])]" else avail_chans += "use [GLOB.channel_tokens[channels[i]]] for [lowertext(channels[i])]" - to_chat(user, "A small screen on the headset displays the following available frequencies:\n[english_list(avail_chans)].") + . += "A small screen on the headset displays the following available frequencies:\n[english_list(avail_chans)]." if(command) - to_chat(user, "Alt-click to toggle the high-volume mode.") + . += "Alt-click to toggle the high-volume mode." else - to_chat(user, "A small screen on the headset flashes, it's too small to read without holding or wearing the headset.") + . += "A small screen on the headset flashes, it's too small to read without holding or wearing the headset." /obj/item/radio/headset/Initialize() . = ..() diff --git a/code/game/objects/items/devices/radio/intercom.dm b/code/game/objects/items/devices/radio/intercom.dm index 50116423..7be28be0 100644 --- a/code/game/objects/items/devices/radio/intercom.dm +++ b/code/game/objects/items/devices/radio/intercom.dm @@ -49,11 +49,11 @@ return ..() /obj/item/radio/intercom/examine(mob/user) - ..() + . = ..() if(!unfastened) - to_chat(user, "It's screwed and secured to the wall.") + . += "It's screwed and secured to the wall." else - to_chat(user, "It's unscrewed from the wall, and can be detached.") + . += "It's unscrewed from the wall, and can be detached." /obj/item/radio/intercom/attackby(obj/item/I, mob/living/user, params) if(istype(I, /obj/item/screwdriver)) diff --git a/code/game/objects/items/devices/radio/radio.dm b/code/game/objects/items/devices/radio/radio.dm index 9815ba0e..a1d032a2 100644 --- a/code/game/objects/items/devices/radio/radio.dm +++ b/code/game/objects/items/devices/radio/radio.dm @@ -319,11 +319,11 @@ /obj/item/radio/examine(mob/user) - ..() + . = ..() if (unscrewed) - to_chat(user, "It can be attached and modified.") + . += "It can be attached and modified." else - to_chat(user, "It cannot be modified or attached.") + . += "It cannot be modified or attached." /obj/item/radio/attackby(obj/item/W, mob/user, params) add_fingerprint(user) diff --git a/code/game/objects/items/devices/scanners.dm b/code/game/objects/items/devices/scanners.dm index 779aef86..22d2a2f8 100644 --- a/code/game/objects/items/devices/scanners.dm +++ b/code/game/objects/items/devices/scanners.dm @@ -533,7 +533,7 @@ GENE SCANNER /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/suicide_act(mob/living/carbon/user) user.visible_message("[user] begins to analyze [user.p_them()]self with [src]! The display shows that [user.p_theyre()] dead!") @@ -841,4 +841,4 @@ GENE SCANNER display += copytext(temp, 1 + i*DNA_MUTATION_BLOCKS, DNA_MUTATION_BLOCKS*(1+i) + 1) - to_chat(user, "- [mut_name] > [display]") \ No newline at end of file + to_chat(user, "- [mut_name] > [display]") diff --git a/code/game/objects/items/devices/taperecorder.dm b/code/game/objects/items/devices/taperecorder.dm index ae17100f..132888a7 100644 --- a/code/game/objects/items/devices/taperecorder.dm +++ b/code/game/objects/items/devices/taperecorder.dm @@ -29,9 +29,8 @@ /obj/item/taperecorder/examine(mob/user) - ..() - to_chat(user, "The wire panel is [open_panel ? "opened" : "closed"].") - + . = ..() + . += "The wire panel is [open_panel ? "opened" : "closed"]." /obj/item/taperecorder/attackby(obj/item/I, mob/user, params) if(!mytape && istype(I, /obj/item/tape)) diff --git a/code/game/objects/items/extinguisher.dm b/code/game/objects/items/extinguisher.dm index 2b60b343..d54cf4b1 100644 --- a/code/game/objects/items/extinguisher.dm +++ b/code/game/objects/items/extinguisher.dm @@ -106,11 +106,11 @@ return ..() /obj/item/extinguisher/examine(mob/user) - ..() - to_chat(user, "The safety is [safety ? "on" : "off"].") + . = ..() + . += "The safety is [safety ? "on" : "off"]." if(reagents.total_volume) - to_chat(user, "You can loose its screws to empty it.") + . += "You can loose its screws to empty it." /obj/item/extinguisher/proc/AttemptRefill(atom/target, mob/user) if(istype(target, tanktype) && target.Adjacent(user)) diff --git a/code/game/objects/items/flamethrower.dm b/code/game/objects/items/flamethrower.dm index fd51ecf2..d9525ab9 100644 --- a/code/game/objects/items/flamethrower.dm +++ b/code/game/objects/items/flamethrower.dm @@ -145,9 +145,9 @@ update_icon() /obj/item/flamethrower/examine(mob/user) - ..() + . = ..() if(ptank) - to_chat(user, "\The [src] has \a [ptank] attached. Alt-click to remove it.") + . += "\The [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/grenades/chem_grenade.dm b/code/game/objects/items/grenades/chem_grenade.dm index d4c843a3..75b6acfe 100644 --- a/code/game/objects/items/grenades/chem_grenade.dm +++ b/code/game/objects/items/grenades/chem_grenade.dm @@ -27,19 +27,19 @@ /obj/item/grenade/chem_grenade/examine(mob/user) display_timer = (stage == READY && !nadeassembly) //show/hide the timer based on assembly state - ..() + . = ..() if(user.can_see_reagents()) var/count = 0 if(beakers.len) - to_chat(user, "You scan the grenade and detect the following reagents:") + . += "You scan the grenade and detect the following reagents:" for(var/obj/item/reagent_containers/glass/G in beakers) var/textcount = thtotext(++count) for(var/datum/reagent/R in G.reagents.reagent_list) - to_chat(user, "[R.volume] units of [R.name] in the [textcount] beaker.") + . += "[R.volume] units of [R.name] in the [textcount] beaker." if(beakers.len == 1) - to_chat(user, "You detect no second beaker in the grenade.") + . += "You detect no second beaker in the grenade." else - to_chat(user, "You scan the grenade, but detect nothing.") + . += "You scan the grenade, but detect nothing." /obj/item/grenade/chem_grenade/attack_self(mob/user) diff --git a/code/game/objects/items/grenades/ghettobomb.dm b/code/game/objects/items/grenades/ghettobomb.dm index f5c4b14f..1725d84d 100644 --- a/code/game/objects/items/grenades/ghettobomb.dm +++ b/code/game/objects/items/grenades/ghettobomb.dm @@ -56,5 +56,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/grenades/grenade.dm b/code/game/objects/items/grenades/grenade.dm index f77def74..4f3dab80 100644 --- a/code/game/objects/items/grenades/grenade.dm +++ b/code/game/objects/items/grenades/grenade.dm @@ -47,12 +47,12 @@ /obj/item/grenade/examine(mob/user) - ..() + . = ..() if(display_timer) if(det_time > 1) - to_chat(user, "The timer is set to [DisplayTimeText(det_time)].") + . += "The timer is set to [DisplayTimeText(det_time)]." 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) diff --git a/code/game/objects/items/his_grace.dm b/code/game/objects/items/his_grace.dm index c6f246ab..b5c7af4b 100644 --- a/code/game/objects/items/his_grace.dm +++ b/code/game/objects/items/his_grace.dm @@ -52,23 +52,23 @@ return /obj/item/his_grace/examine(mob/user) - ..() + . = ..() if(awakened) switch(bloodthirst) if(HIS_GRACE_SATIATED to HIS_GRACE_PECKISH) - to_chat(user, "[src] isn't very hungry. Not yet.") + . += "[src] isn't very hungry. Not yet." if(HIS_GRACE_PECKISH to HIS_GRACE_HUNGRY) - to_chat(user, "[src] would like a snack.") + . += "[src] would like a snack." if(HIS_GRACE_HUNGRY to HIS_GRACE_FAMISHED) - to_chat(user, "[src] is quite hungry now.") + . += "[src] is quite hungry now." if(HIS_GRACE_FAMISHED to HIS_GRACE_STARVING) - to_chat(user, "[src] is openly salivating at the sight of you. Be careful.") + . += "[src] is openly salivating at the sight of you. Be careful." if(HIS_GRACE_STARVING to HIS_GRACE_CONSUME_OWNER) - to_chat(user, "You walk a fine line. [src] is very close to devouring you.") + . += "You walk a fine line. [src] is very close to devouring you." if(HIS_GRACE_CONSUME_OWNER to HIS_GRACE_FALL_ASLEEP) - to_chat(user, "[src] is shaking violently and staring directly at you.") + . += "[src] is shaking violently and staring directly at you." else - to_chat(user, "[src] is latched closed.") + . += "[src] is latched closed." /obj/item/his_grace/relaymove(mob/living/user) //Allows changelings, etc. to climb out of Him after they revive, provided He isn't active if(!awakened) diff --git a/code/game/objects/items/hot_potato.dm b/code/game/objects/items/hot_potato.dm index 5aae3b10..d74a611f 100644 --- a/code/game/objects/items/hot_potato.dm +++ b/code/game/objects/items/hot_potato.dm @@ -81,9 +81,9 @@ /obj/item/hot_potato/examine(mob/user) . = ..() if(active) - to_chat(user, "[src] is flashing red-hot! You should probably get rid of it!") + . += "[src] is flashing red-hot! You should probably get rid of it!" if(show_timer) - to_chat(user, "[src]'s timer looks to be at [DisplayTimeText(activation_time - world.time)]!") + . += "[src]'s timer looks to be at [DisplayTimeText(activation_time - world.time)]!" /obj/item/hot_potato/equipped(mob/user) . = ..() diff --git a/code/game/objects/items/inducer.dm b/code/game/objects/items/inducer.dm index bbd2e674..19dbf4fe 100644 --- a/code/game/objects/items/inducer.dm +++ b/code/game/objects/items/inducer.dm @@ -155,13 +155,13 @@ /obj/item/inducer/examine(mob/living/M) - ..() + . = ..() if(cell) - to_chat(M, "Its display shows: [DisplayEnergy(cell.charge)].") + . += "Its display shows: [DisplayEnergy(cell.charge)]." else - to_chat(M,"Its display is dark.") + . += "Its display is dark." if(opened) - to_chat(M,"Its battery compartment is open.") + . += "Its battery compartment is open." /obj/item/inducer/update_icon() cut_overlays() diff --git a/code/game/objects/items/mop.dm b/code/game/objects/items/mop.dm index 7524fc90..ac1e2848 100644 --- a/code/game/objects/items/mop.dm +++ b/code/game/objects/items/mop.dm @@ -118,8 +118,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/pet_carrier.dm b/code/game/objects/items/pet_carrier.dm index a73be6e1..41b6f052 100644 --- a/code/game/objects/items/pet_carrier.dm +++ b/code/game/objects/items/pet_carrier.dm @@ -43,17 +43,17 @@ ..() /obj/item/pet_carrier/examine(mob/user) - ..() + . = ..() if(occupants.len) for(var/V in occupants) var/mob/living/L = V - to_chat(user, "It has [L] inside.") + . += "It has [L] inside." else - to_chat(user, "It has nothing inside.") + . += "It has nothing inside." if(user.canUseTopic(src)) - to_chat(user, "Activate it in your hand to [open ? "close" : "open"] its door.") + . += "Activate it in your hand to [open ? "close" : "open"] its door." if(!open) - to_chat(user, "Alt-click to [locked ? "unlock" : "lock"] its door.") + . += "Alt-click to [locked ? "unlock" : "lock"] its door." /obj/item/pet_carrier/attack_self(mob/living/user) if(open) diff --git a/code/game/objects/items/pneumaticCannon.dm b/code/game/objects/items/pneumaticCannon.dm index bd301c36..72d27ae5 100644 --- a/code/game/objects/items/pneumaticCannon.dm +++ b/code/game/objects/items/pneumaticCannon.dm @@ -55,17 +55,15 @@ return automatic /obj/item/pneumatic_cannon/examine(mob/user) - ..() - var/list/out = list() + . = ..() if(!in_range(user, src)) - out += "You'll need to get closer to see any more." + . += "You'll need to get closer to see any more." return for(var/obj/item/I in loadedItems) - out += "[icon2html(I, user)] It has \a [I] loaded." + . += "[icon2html(I, user)] It has \a [I] loaded." CHECK_TICK if(tank) - out += "[icon2html(tank, user)] It has \a [tank] mounted onto it." - to_chat(user, out.Join("
")) + . += "[icon2html(tank, user)] It has \a [tank] mounted onto it." /obj/item/pneumatic_cannon/attackby(obj/item/W, mob/user, params) if(user.a_intent == INTENT_HARM) diff --git a/code/game/objects/items/powerfist.dm b/code/game/objects/items/powerfist.dm index f02e92bb..27ed0f82 100644 --- a/code/game/objects/items/powerfist.dm +++ b/code/game/objects/items/powerfist.dm @@ -20,12 +20,12 @@ /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.") + . += "You'll need to get closer to see any more." return if(tank) - to_chat(user, "[icon2html(tank, user)] It has \a [tank] mounted onto it.") + . += "[icon2html(tank, user)] It has \a [tank] mounted onto it." /obj/item/melee/powerfist/attackby(obj/item/W, mob/user, params) diff --git a/code/game/objects/items/religion.dm b/code/game/objects/items/religion.dm index 8582725c..c9dee6d6 100644 --- a/code/game/objects/items/religion.dm +++ b/code/game/objects/items/religion.dm @@ -16,9 +16,9 @@ var/warcry /obj/item/banner/examine(mob/user) - ..() + . = ..() if(inspiration_available) - to_chat(user, "Activate it in your hand to inspire nearby allies of this banner's allegiance!") + . += "Activate it in your hand to inspire nearby allies of this banner's allegiance!" /obj/item/banner/attack_self(mob/living/carbon/human/user) if(!inspiration_available) diff --git a/code/game/objects/items/stacks/stack.dm b/code/game/objects/items/stacks/stack.dm index ea944083..52064e05 100644 --- a/code/game/objects/items/stacks/stack.dm +++ b/code/game/objects/items/stacks/stack.dm @@ -76,23 +76,23 @@ . = ..() /obj/item/stack/examine(mob/user) - ..() + . = ..() if (is_cyborg) if(singular_name) - to_chat(user, "There is enough energy for [get_amount()] [singular_name]\s.") + . += "There is enough energy for [get_amount()] [singular_name]\s." else - to_chat(user, "There is enough energy for [get_amount()].") + . += "There is enough energy for [get_amount()]." return if(singular_name) if(get_amount()>1) - to_chat(user, "There are [get_amount()] [singular_name]\s in the stack.") + . += "There are [get_amount()] [singular_name]\s in the stack." else - to_chat(user, "There is [get_amount()] [singular_name] in the stack.") + . += "There is [get_amount()] [singular_name] in the stack." else if(get_amount()>1) - to_chat(user, "There are [get_amount()] in the stack.") + . += "There are [get_amount()] in the stack." else - to_chat(user, "There is [get_amount()] in the stack.") - to_chat(user, "Alt-click to take a custom amount.") + . += "There is [get_amount()] in the stack." + . += "Alt-click to take a custom amount." /obj/item/stack/proc/get_amount() if(is_cyborg) diff --git a/code/game/objects/items/storage/belt.dm b/code/game/objects/items/storage/belt.dm index 3a853865..127796be 100644 --- a/code/game/objects/items/storage/belt.dm +++ b/code/game/objects/items/storage/belt.dm @@ -764,9 +764,9 @@ obj/item/storage/belt/slut/ComponentInitialize() STR.can_hold = typecacheof(fitting_swords) /obj/item/storage/belt/sabre/examine(mob/user) - ..() + . = ..() if(length(contents)) - to_chat(user, "Alt-click it to quickly draw the blade.") + . += "Alt-click it to quickly draw the blade." /obj/item/storage/belt/sabre/AltClick(mob/user) if(!iscarbon(user) || !user.canUseTopic(src, BE_CLOSE, ismonkey(user))) diff --git a/code/game/objects/items/storage/fancy.dm b/code/game/objects/items/storage/fancy.dm index e3955fa2..408d8d55 100644 --- a/code/game/objects/items/storage/fancy.dm +++ b/code/game/objects/items/storage/fancy.dm @@ -37,12 +37,12 @@ icon_state = "[icon_type]box" /obj/item/storage/fancy/examine(mob/user) - ..() + . = ..() if(fancy_open) if(length(contents) == 1) - to_chat(user, "There is one [icon_type] left.") + . += "There is one [icon_type] left." else - to_chat(user, "There are [contents.len <= 0 ? "no" : "[contents.len]"] [icon_type]s left.") + . += "There are [contents.len <= 0 ? "no" : "[contents.len]"] [icon_type]s left." /obj/item/storage/fancy/attack_self(mob/user) fancy_open = !fancy_open @@ -144,8 +144,8 @@ STR.can_hold = typecacheof(list(/obj/item/clothing/mask/cigarette, /obj/item/lighter)) /obj/item/storage/fancy/cigarettes/examine(mob/user) - ..() - to_chat(user, "Alt-click to extract contents.") + . = ..() + . += "Alt-click to extract contents." /obj/item/storage/fancy/cigarettes/AltClick(mob/living/carbon/user) if(!istype(user) || !user.canUseTopic(src, BE_CLOSE, ismonkey(user))) diff --git a/code/game/objects/items/storage/lockbox.dm b/code/game/objects/items/storage/lockbox.dm index 7da0c000..b14cd852 100644 --- a/code/game/objects/items/storage/lockbox.dm +++ b/code/game/objects/items/storage/lockbox.dm @@ -106,10 +106,10 @@ STR.can_hold = typecacheof(list(/obj/item/clothing/accessory/medal)) /obj/item/storage/lockbox/medal/examine(mob/user) - ..() + . = ..() var/locked = SEND_SIGNAL(src, COMSIG_IS_STORAGE_LOCKED) if(!locked) - to_chat(user, "Alt-click to [open ? "close":"open"] it.") + . += "Alt-click to [open ? "close":"open"] it." /obj/item/storage/lockbox/medal/AltClick(mob/user) if(user.canUseTopic(src, BE_CLOSE)) @@ -195,4 +195,4 @@ /obj/item/storage/lockbox/medal/medical/PopulateContents() for(var/i in 1 to 3) - new /obj/item/clothing/accessory/medal/ribbon/medical_doctor(src) \ No newline at end of file + new /obj/item/clothing/accessory/medal/ribbon/medical_doctor(src) diff --git a/code/game/objects/items/storage/secure.dm b/code/game/objects/items/storage/secure.dm index a6ee4b92..20e9f0d3 100644 --- a/code/game/objects/items/storage/secure.dm +++ b/code/game/objects/items/storage/secure.dm @@ -31,8 +31,8 @@ STR.max_combined_w_class = 14 /obj/item/storage/secure/examine(mob/user) - ..() - to_chat(user, text("The service panel is currently [open ? "unscrewed" : "screwed shut"].")) + . = ..() + . += "The service panel is currently [open ? "unscrewed" : "screwed shut"]." /obj/item/storage/secure/attackby(obj/item/W, mob/user, params) if(SEND_SIGNAL(src, COMSIG_IS_STORAGE_LOCKED)) diff --git a/code/game/objects/items/stunbaton.dm b/code/game/objects/items/stunbaton.dm index 33a9fbef..a2435d6f 100644 --- a/code/game/objects/items/stunbaton.dm +++ b/code/game/objects/items/stunbaton.dm @@ -90,9 +90,9 @@ . = ..() var/obj/item/stock_parts/cell/copper_top = get_cell() if(copper_top) - to_chat(user, "\The [src] is [round(copper_top.percent())]% charged.") + . += "\The [src] is [round(copper_top.percent())]% charged." else - to_chat(user, "\The [src] does not have a power source installed.") + . += "\The [src] 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/tanks/tanks.dm b/code/game/objects/items/tanks/tanks.dm index d409e405..f763fe87 100644 --- a/code/game/objects/items/tanks/tanks.dm +++ b/code/game/objects/items/tanks/tanks.dm @@ -74,15 +74,15 @@ /obj/item/tank/examine(mob/user) var/obj/icon = src - ..() + . = ..() if (istype(src.loc, /obj/item/assembly)) icon = src.loc if(!in_range(src, user)) if (icon == src) - to_chat(user, "If you want any more information you'll need to get closer.") + . += "If you want any more information you'll need to get closer." return - to_chat(user, "The pressure gauge reads [round(src.air_contents.return_pressure(),0.01)] kPa.") + . += "The pressure gauge reads [round(src.air_contents.return_pressure(),0.01)] kPa." var/celsius_temperature = src.air_contents.temperature-T0C var/descriptive @@ -100,7 +100,7 @@ else descriptive = "furiously hot" - to_chat(user, "It feels [descriptive].") + . += "It feels [descriptive]." /obj/item/tank/blob_act(obj/structure/blob/B) if(B && B.loc == loc) diff --git a/code/game/objects/items/tools/weldingtool.dm b/code/game/objects/items/tools/weldingtool.dm index 9b622a14..9177602f 100644 --- a/code/game/objects/items/tools/weldingtool.dm +++ b/code/game/objects/items/tools/weldingtool.dm @@ -220,8 +220,8 @@ /obj/item/weldingtool/examine(mob/user) - ..() - to_chat(user, "It contains [get_fuel()] unit\s of fuel out of [max_fuel].") + . = ..() + . += "It contains [get_fuel()] unit\s of fuel out of [max_fuel]." /obj/item/weldingtool/is_hot() return welding * heat diff --git a/code/game/objects/items/toys.dm b/code/game/objects/items/toys.dm index 91c86cb9..5b58d186 100644 --- a/code/game/objects/items/toys.dm +++ b/code/game/objects/items/toys.dm @@ -148,8 +148,8 @@ var/bullets = 7 /obj/item/toy/gun/examine(mob/user) - ..() - to_chat(user, "There [bullets == 1 ? "is" : "are"] [bullets] cap\s left.") + . = ..() + . += "There [bullets == 1 ? "is" : "are"] [bullets] cap\s left." /obj/item/toy/gun/attackby(obj/item/toy/ammo/gun/A, mob/user, params) @@ -204,8 +204,8 @@ src.icon_state = text("357OLD-[]", src.amount_left) /obj/item/toy/ammo/gun/examine(mob/user) - ..() - to_chat(user, "There [amount_left == 1 ? "is" : "are"] [amount_left] cap\s left.") + . = ..() + . += "There [amount_left == 1 ? "is" : "are"] [amount_left] cap\s left." /* * Toy swords @@ -1098,8 +1098,8 @@ to_chat(user, "The cogwheels are already turning!") /obj/item/toy/clockwork_watch/examine(mob/user) - ..() - to_chat(user, "Station Time: [STATION_TIME_TIMESTAMP("hh:mm:ss")]") + . = ..() + . += "Station Time: [STATION_TIME_TIMESTAMP("hh:mm:ss")]" /* * Toy Dagger diff --git a/code/game/objects/items/twohanded.dm b/code/game/objects/items/twohanded.dm index 9c038f3e..46c1506f 100644 --- a/code/game/objects/items/twohanded.dm +++ b/code/game/objects/items/twohanded.dm @@ -521,9 +521,9 @@ AddComponent(/datum/component/jousting) /obj/item/twohanded/spear/examine(mob/user) - ..() + . = ..() if(explosive) - to_chat(user, "Use in your hands to activate the attached explosive.
Alt-click to set your war cry.
Right-click in combat mode to wield") + . += "Use in your hands to activate the attached explosive.
Alt-click to set your war cry.
Right-click in combat mode to wield" /obj/item/twohanded/spear/update_icon() if(explosive) diff --git a/code/game/objects/items/vending_items.dm b/code/game/objects/items/vending_items.dm index e13089d5..2964d312 100644 --- a/code/game/objects/items/vending_items.dm +++ b/code/game/objects/items/vending_items.dm @@ -30,14 +30,14 @@ name = "\improper [machine_name] restocking unit" /obj/item/vending_refill/examine(mob/user) - ..() + . = ..() 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/items/weaponry.dm b/code/game/objects/items/weaponry.dm index 4c716a4f..2fa53e04 100644 --- a/code/game/objects/items/weaponry.dm +++ b/code/game/objects/items/weaponry.dm @@ -125,10 +125,10 @@ for further reading, please see: https://github.com/tgstation/tgstation/pull/301 qdel(src) //If this ever happens, it's because you lost an arm /obj/item/claymore/highlander/examine(mob/user) - ..() - to_chat(user, "It has [!notches ? "nothing" : "[notches] notches"] scratched into the blade.") + . = ..() + . += "It has [!notches ? "nothing" : "[notches] notches"] scratched into the blade." if(nuke_disk) - to_chat(user, "It's holding the nuke disk!") + . += "It's holding the nuke disk!" /obj/item/claymore/highlander/attack(mob/living/target, mob/living/user) . = ..() diff --git a/code/game/objects/objs.dm b/code/game/objects/objs.dm index a31a5966..7b8fdbd5 100644 --- a/code/game/objects/objs.dm +++ b/code/game/objects/objs.dm @@ -224,11 +224,11 @@ .["Modify armor values"] = "?_src_=vars;[HrefToken()];modarmor=[REF(src)]" /obj/examine(mob/user) - ..() + . = ..() if(obj_flags & UNIQUE_RENAME) - to_chat(user, "Use a pen on it to rename it or change its description.") + . += "Use a pen on it to rename it or change its description." if(unique_reskin && (!current_skin || always_reskinnable)) - to_chat(user, "Alt-click it to reskin it.") + . += "Alt-click it to reskin it." /obj/AltClick(mob/user) . = ..() diff --git a/code/game/objects/structures.dm b/code/game/objects/structures.dm index 05b774b8..b25e5815 100644 --- a/code/game/objects/structures.dm +++ b/code/game/objects/structures.dm @@ -88,15 +88,15 @@ structureclimber = null /obj/structure/examine(mob/user) - ..() + . = ..() if(!(resistance_flags & INDESTRUCTIBLE)) if(resistance_flags & 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/ai_core.dm b/code/game/objects/structures/ai_core.dm index 8ec25845..5b9a7649 100644 --- a/code/game/objects/structures/ai_core.dm +++ b/code/game/objects/structures/ai_core.dm @@ -39,7 +39,7 @@ /obj/structure/AIcore/latejoin_inactive/examine(mob/user) . = ..() - to_chat(user, "Its transmitter seems to be [active? "on" : "off"].") + . += "Its transmitter seems to be [active? "on" : "off"]." /obj/structure/AIcore/latejoin_inactive/proc/is_available() //If people still manage to use this feature to spawn-kill AI latejoins ahelp them. if(!available) diff --git a/code/game/objects/structures/beds_chairs/bed.dm b/code/game/objects/structures/beds_chairs/bed.dm index 30c80a25..e7faf1e6 100644 --- a/code/game/objects/structures/beds_chairs/bed.dm +++ b/code/game/objects/structures/beds_chairs/bed.dm @@ -23,9 +23,9 @@ var/bolts = TRUE /obj/structure/bed/examine(mob/user) - ..() + . = ..() if(bolts) - to_chat(user, "It's held together by a couple of bolts.") + . += "It's held together by a couple of bolts." /obj/structure/bed/deconstruct(disassembled = TRUE) if(!(flags_1 & NODECONSTRUCT_1)) @@ -148,8 +148,8 @@ ..() /obj/item/roller/robo/examine(mob/user) - ..() - to_chat(user, "The dock is [loaded ? "loaded" : "empty"].") + . = ..() + . += "The dock is [loaded ? "loaded" : "empty"]." /obj/item/roller/robo/deploy_roller(mob/user, atom/location) if(loaded) diff --git a/code/game/objects/structures/beds_chairs/chair.dm b/code/game/objects/structures/beds_chairs/chair.dm index 88d141a9..74036dab 100644 --- a/code/game/objects/structures/beds_chairs/chair.dm +++ b/code/game/objects/structures/beds_chairs/chair.dm @@ -15,10 +15,10 @@ layer = OBJ_LAYER /obj/structure/chair/examine(mob/user) - ..() - to_chat(user, "It's held together by a couple of bolts.") + . = ..() + . += "It's held together by a couple of bolts." if(!has_buckled_mobs()) - to_chat(user, "Drag your sprite to sit in it.") + . += "Drag your sprite to sit in it." /obj/structure/chair/Initialize() . = ..() diff --git a/code/game/objects/structures/bedsheet_bin.dm b/code/game/objects/structures/bedsheet_bin.dm index 3008e98c..3eb9a933 100644 --- a/code/game/objects/structures/bedsheet_bin.dm +++ b/code/game/objects/structures/bedsheet_bin.dm @@ -292,13 +292,13 @@ LINEN BINS var/obj/item/hidden = null /obj/structure/bedsheetbin/examine(mob/user) - ..() + . = ..() if(amount < 1) - to_chat(user, "There are no bed sheets in the bin.") + . += "There are no sheets in the bin." else if(amount == 1) - to_chat(user, "There is one bed sheet in the bin.") + . += "There is one sheet in the bin." else - to_chat(user, "There are [amount] bed sheets in the bin.") + . += "There are [amount] sheets in the bin." /obj/structure/bedsheetbin/update_icon() diff --git a/code/game/objects/structures/crates_lockers/closets.dm b/code/game/objects/structures/crates_lockers/closets.dm index f097d290..dff74ef8 100644 --- a/code/game/objects/structures/crates_lockers/closets.dm +++ b/code/game/objects/structures/crates_lockers/closets.dm @@ -85,22 +85,22 @@ add_overlay("unlocked") /obj/structure/closet/examine(mob/user) - ..() + . = ..() if(welded) - to_chat(user, "It's welded shut.") + . += "It's welded shut." if(anchored) - to_chat(user, "It is bolted to the ground.") + . += "It is bolted to the ground." if(opened) - to_chat(user, "The parts are welded together.") + . += "The parts are welded together." else if(secure && !opened) else if(broken) - to_chat(user, "The lock is screwed in.") + . += "The lock is screwed in." else if(secure) - to_chat(user, "Alt-click to [locked ? "unlock" : "lock"].") + . += "Alt-click to [locked ? "unlock" : "lock"]." if(isliving(user)) var/mob/living/L = user if(HAS_TRAIT(L, TRAIT_SKITTISH)) - to_chat(user, "Ctrl-Shift-click [src] to jump inside.") + . += "Ctrl-Shift-click [src] to jump inside." /obj/structure/closet/CanPass(atom/movable/mover, turf/target) if(wall_mounted) diff --git a/code/game/objects/structures/crates_lockers/closets/secure/personal.dm b/code/game/objects/structures/crates_lockers/closets/secure/personal.dm index 563028e3..c84d97ab 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/personal.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/personal.dm @@ -5,9 +5,9 @@ var/registered_name = null /obj/structure/closet/secure_closet/personal/examine(mob/user) - ..() + . = ..() if(registered_name) - to_chat(user, "The display reads, \"Owned by [registered_name]\".") + . += "The display reads, \"Owned by [registered_name]\"." /obj/structure/closet/secure_closet/personal/check_access(obj/item/card/id/I) . = ..() diff --git a/code/game/objects/structures/displaycase.dm b/code/game/objects/structures/displaycase.dm index 77ab1acc..9493efa1 100644 --- a/code/game/objects/structures/displaycase.dm +++ b/code/game/objects/structures/displaycase.dm @@ -38,14 +38,14 @@ return ..() /obj/structure/displaycase/examine(mob/user) - ..() + . = ..() if(alert) - to_chat(user, "Hooked up with an anti-theft system.") + . += "Hooked up with an anti-theft system." if(showpiece) - to_chat(user, "There's [showpiece] inside.") + . += "There's [showpiece] inside." if(trophy_message) - to_chat(user, "The plaque reads:") - to_chat(user, trophy_message) + . += "The plaque reads:" + . += trophy_message /obj/structure/displaycase/proc/dump() diff --git a/code/game/objects/structures/door_assembly.dm b/code/game/objects/structures/door_assembly.dm index 31e8b347..0f7a4432 100644 --- a/code/game/objects/structures/door_assembly.dm +++ b/code/game/objects/structures/door_assembly.dm @@ -26,28 +26,28 @@ ..() /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 7d1b19d6..e9fdad3c 100644 --- a/code/game/objects/structures/extinguisher.dm +++ b/code/game/objects/structures/extinguisher.dm @@ -22,8 +22,8 @@ stored_extinguisher = new /obj/item/extinguisher(src) /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/Destroy() if(stored_extinguisher) diff --git a/code/game/objects/structures/femur_breaker.dm b/code/game/objects/structures/femur_breaker.dm index e3002a8f..73312851 100644 --- a/code/game/objects/structures/femur_breaker.dm +++ b/code/game/objects/structures/femur_breaker.dm @@ -23,24 +23,14 @@ var/current_action = 0 // What's currently happening to the femur breaker /obj/structure/femur_breaker/examine(mob/user) - ..() - - var/msg = "" - - msg += "It is [anchored ? "secured to the floor." : "unsecured."]
" - + . = ..() + . += "It is [anchored ? "secured to the floor." : "unsecured."]" if (slat_status == BREAKER_SLAT_RAISED) - msg += "The breaker slat is in a neutral position." + . += "The breaker slat is in a neutral position." else - msg += "The breaker slat is lowered, and must be raised." - + . += "The breaker slat is lowered, and must be raised." if (LAZYLEN(buckled_mobs)) - msg += "
" - msg += "Someone appears to be strapped in. You can help them unbuckle, or activate the femur breaker." - - to_chat(user, msg) - - return msg + . += "Someone appears to be strapped in. You can help them unbuckle, or activate the femur breaker." /obj/structure/femur_breaker/attack_hand(mob/user) add_fingerprint(user) diff --git a/code/game/objects/structures/fence.dm b/code/game/objects/structures/fence.dm index 19103c71..35891fa6 100644 --- a/code/game/objects/structures/fence.dm +++ b/code/game/objects/structures/fence.dm @@ -29,13 +29,12 @@ update_cut_status() /obj/structure/fence/examine(mob/user) - .=..() - + . = ..() switch(hole_size) if(MEDIUM_HOLE) - user.show_message("There is a large hole in \the [src].") + . += "There is a large hole in \the [src]." if(LARGE_HOLE) - user.show_message("\The [src] has been completely cut through.") + . += "\The [src] has been completely cut through." /obj/structure/fence/end icon_state = "end" diff --git a/code/game/objects/structures/girders.dm b/code/game/objects/structures/girders.dm index eba82a56..ce36d334 100644 --- a/code/game/objects/structures/girders.dm +++ b/code/game/objects/structures/girders.dm @@ -16,16 +16,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 wrenched in place.") + . += "The bolts are wrenched 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/attackby(obj/item/W, mob/user, params) add_fingerprint(user) diff --git a/code/game/objects/structures/grille.dm b/code/game/objects/structures/grille.dm index 460059ff..06673b32 100644 --- a/code/game/objects/structures/grille.dm +++ b/code/game/objects/structures/grille.dm @@ -37,11 +37,11 @@ icon_state = "grille50_[rand(0,3)]" /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.") - if(!anchored) - to_chat(user, "The anchoring screws are unscrewed. 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." + else + . += "The anchoring screws are unscrewed. The rods look like they could be cut through." /obj/structure/grille/rcd_vals(mob/user, obj/item/construction/rcd/the_rcd) switch(the_rcd.mode) diff --git a/code/game/objects/structures/guillotine.dm b/code/game/objects/structures/guillotine.dm index 8714722f..3b4bbea5 100644 --- a/code/game/objects/structures/guillotine.dm +++ b/code/game/objects/structures/guillotine.dm @@ -34,29 +34,22 @@ . = ..() /obj/structure/guillotine/examine(mob/user) - ..() - - var/msg = "" - - msg += "It is [anchored ? "wrenched to the floor." : "unsecured. A wrench should fix that."]
" + . = ..() + . += "It is [anchored ? "wrenched to the floor." : "unsecured. A wrench should fix that."]" if (blade_status == GUILLOTINE_BLADE_RAISED) - msg += "The blade is raised, ready to fall, and" + var/msg = "The blade is raised, ready to fall, and" if (blade_sharpness >= GUILLOTINE_DECAP_MIN_SHARP) msg += " looks sharp enough to decapitate without any resistance." else msg += " doesn't look particularly sharp. Perhaps a whetstone can be used to sharpen it." + . += msg else - msg += "The blade is hidden inside the stocks." + . += "The blade is hidden inside the stocks." if (LAZYLEN(buckled_mobs)) - 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 + . += "Someone appears to be strapped in. You can help them out, or you can harm them by activating the guillotine." /obj/structure/guillotine/attack_hand(mob/user) add_fingerprint(user) diff --git a/code/game/objects/structures/holosign.dm b/code/game/objects/structures/holosign.dm index b6ad8e27..6be29727 100644 --- a/code/game/objects/structures/holosign.dm +++ b/code/game/objects/structures/holosign.dm @@ -108,8 +108,8 @@ var/buzzcd = 0 /obj/structure/holosign/barrier/medical/examine(mob/user) - ..() - to_chat(user,"The biometric scanners are [force_allaccess ? "off" : "on"].") + . = ..() + . += "The biometric scanners are [force_allaccess ? "off" : "on"]." /obj/structure/holosign/barrier/medical/CanPass(atom/movable/mover, turf/target) icon_state = "holo_medical" diff --git a/code/game/objects/structures/lattice.dm b/code/game/objects/structures/lattice.dm index a6ba6424..bc4183f8 100644 --- a/code/game/objects/structures/lattice.dm +++ b/code/game/objects/structures/lattice.dm @@ -18,11 +18,11 @@ // flags = CONDUCT_1 /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/Initialize(mapload) . = ..() diff --git a/code/game/objects/structures/life_candle.dm b/code/game/objects/structures/life_candle.dm index e1480b32..0ae0e294 100644 --- a/code/game/objects/structures/life_candle.dm +++ b/code/game/objects/structures/life_candle.dm @@ -55,9 +55,9 @@ /obj/structure/life_candle/examine(mob/user) . = ..() if(linked_minds.len) - to_chat(user, "[src] is active, and linked to [linked_minds.len] souls.") + . += "[src] is active, and linked to [linked_minds.len] souls." else - to_chat(user, "It is static, still, unmoving.") + . += "It is static, still, unmoving." /obj/structure/life_candle/process() if(!linked_minds.len) diff --git a/code/game/objects/structures/medkit.dm b/code/game/objects/structures/medkit.dm index 4d063031..16137cf2 100644 --- a/code/game/objects/structures/medkit.dm +++ b/code/game/objects/structures/medkit.dm @@ -26,8 +26,8 @@ stored_medkit = new /obj/item/storage/firstaid/regular(src) /obj/structure/medkit_cabinet/examine(mob/user) - ..() - to_chat(user, "Alt-click to [opened ? "close":"open"] it.") + . = ..() + . += "Alt-click to [opened ? "close":"open"] it." /obj/structure/medkit_cabinet/Destroy() if(stored_medkit) diff --git a/code/game/objects/structures/morgue.dm b/code/game/objects/structures/morgue.dm index c590fcff..7230367c 100644 --- a/code/game/objects/structures/morgue.dm +++ b/code/game/objects/structures/morgue.dm @@ -161,8 +161,8 @@ GLOBAL_LIST_EMPTY(bodycontainers) //Let them act as spawnpoints for revenants an ..() /obj/structure/bodycontainer/morgue/examine(mob/user) - ..() - to_chat(user, "The speaker is [beeper ? "enabled" : "disabled"]. Alt-click to toggle it.") + . = ..() + . += "The speaker is [beeper ? "enabled" : "disabled"]. Alt-click to toggle it." /obj/structure/bodycontainer/morgue/AltClick(mob/user) ..() diff --git a/code/game/objects/structures/plasticflaps.dm b/code/game/objects/structures/plasticflaps.dm index e3862ed9..a4619050 100644 --- a/code/game/objects/structures/plasticflaps.dm +++ b/code/game/objects/structures/plasticflaps.dm @@ -15,9 +15,9 @@ /obj/structure/plasticflaps/examine(mob/user) . = ..() if(anchored) - to_chat(user, "[src] are screwed to the floor.") + . += "[src] are screwed to the floor." else - to_chat(user, "[src] are no longer screwed to the floor, and the flaps can be cut apart.") + . += "[src] are no longer screwed to the floor, and the flaps can be cut apart." /obj/structure/plasticflaps/screwdriver_act(mob/living/user, obj/item/W) if(..()) diff --git a/code/game/objects/structures/reflector.dm b/code/game/objects/structures/reflector.dm index 889cdab3..15de7e37 100644 --- a/code/game/objects/structures/reflector.dm +++ b/code/game/objects/structures/reflector.dm @@ -35,14 +35,14 @@ can_rotate = FALSE /obj/structure/reflector/examine(mob/user) - ..() + . = ..() if(finished) - to_chat(user, "It is set to [rotation_angle] degrees, and the rotation is [can_rotate ? "unlocked" : "locked"].") + . += "It is set to [rotation_angle] degrees, and the rotation is [can_rotate ? "unlocked" : "locked"]." if(!admin) if(can_rotate) - to_chat(user, "Alt-click to adjust its direction.") + . += "Alt-click to adjust its direction." else - to_chat(user, "Use screwdriver to unlock the rotation.") + . += "Use screwdriver to unlock the rotation." /obj/structure/reflector/proc/setAngle(new_angle) if(can_rotate) diff --git a/code/game/objects/structures/showcase.dm b/code/game/objects/structures/showcase.dm index 84a382c7..adb9984f 100644 --- a/code/game/objects/structures/showcase.dm +++ b/code/game/objects/structures/showcase.dm @@ -131,12 +131,11 @@ //Feedback is given in examine because showcases can basically have any sprite assigned to them /obj/structure/showcase/examine(mob/user) - ..() - + . = ..() switch(deconstruction_state) if(SHOWCASE_CONSTRUCTED) - to_chat(user, "The showcase is fully constructed.") + . += "The showcase is fully constructed." if(SHOWCASE_SCREWDRIVERED) - to_chat(user, "The showcase has its screws loosened.") + . += "The showcase has its screws loosened." else - to_chat(user, "If you see this, something is wrong.") + . += "If you see this, something is wrong." diff --git a/code/game/objects/structures/spirit_board.dm b/code/game/objects/structures/spirit_board.dm index c35d16ab..4a9a1bdc 100644 --- a/code/game/objects/structures/spirit_board.dm +++ b/code/game/objects/structures/spirit_board.dm @@ -12,7 +12,7 @@ /obj/structure/spirit_board/examine() desc = "[initial(desc)] The planchette is sitting at \"[planchette]\"." - ..() + return ..() /obj/structure/spirit_board/attack_hand(mob/user) . = ..() diff --git a/code/game/objects/structures/tables_racks.dm b/code/game/objects/structures/tables_racks.dm index 31b229a9..a2216580 100644 --- a/code/game/objects/structures/tables_racks.dm +++ b/code/game/objects/structures/tables_racks.dm @@ -35,11 +35,11 @@ canSmoothWith = list(/obj/structure/table, /obj/structure/table/reinforced) /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) @@ -486,8 +486,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) if(src.density == 0) //Because broken racks -Agouri |TODO: SPRITE!| @@ -591,4 +591,4 @@
", "You assemble \a [R].") R.add_fingerprint(user) qdel(src) - building = FALSE \ No newline at end of file + building = FALSE diff --git a/code/game/objects/structures/traps.dm b/code/game/objects/structures/traps.dm index ffc2c344..b3c19334 100644 --- a/code/game/objects/structures/traps.dm +++ b/code/game/objects/structures/traps.dm @@ -38,7 +38,7 @@ if(user.mind && user.mind in immune_minds) return if(get_dist(user, src) <= 1) - to_chat(user, "You reveal [src]!") + . += "You reveal [src]!" flare() /obj/structure/trap/proc/flare() diff --git a/code/game/objects/structures/window.dm b/code/game/objects/structures/window.dm index 5466775b..c5518842 100644 --- a/code/game/objects/structures/window.dm +++ b/code/game/objects/structures/window.dm @@ -31,21 +31,21 @@ /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." /obj/structure/window/Initialize(mapload, direct) . = ..() diff --git a/code/game/turfs/simulated/floor/fancy_floor.dm b/code/game/turfs/simulated/floor/fancy_floor.dm index 9553ff05..17b8d876 100644 --- a/code/game/turfs/simulated/floor/fancy_floor.dm +++ b/code/game/turfs/simulated/floor/fancy_floor.dm @@ -19,8 +19,8 @@ tiled_dirt = FALSE /turf/open/floor/wood/examine(mob/user) - ..() - to_chat(user, "There's a few screws and a small crack visible.") + . = ..() + . += "There's a few screws and a small crack visible." /turf/open/floor/wood/screwdriver_act(mob/living/user, obj/item/I) if(..()) @@ -183,8 +183,8 @@ tiled_dirt = FALSE /turf/open/floor/carpet/examine(mob/user) - ..() - to_chat(user, "There's a small crack on the edge of it.") + . = ..() + . += "There's a small crack on the edge of it." /turf/open/floor/carpet/Initialize() . = ..() diff --git a/code/game/turfs/simulated/floor/light_floor.dm b/code/game/turfs/simulated/floor/light_floor.dm index 6e896b5e..f9376c06 100644 --- a/code/game/turfs/simulated/floor/light_floor.dm +++ b/code/game/turfs/simulated/floor/light_floor.dm @@ -14,8 +14,8 @@ /turf/open/floor/light/examine(mob/user) - ..() - to_chat(user, "There's a small crack on the edge of it.") + . = ..() + . += "There's a small crack on the edge of it." /turf/open/floor/light/Initialize() . = ..() diff --git a/code/game/turfs/simulated/floor/plasteel_floor.dm b/code/game/turfs/simulated/floor/plasteel_floor.dm index 884e4c65..658c1a77 100644 --- a/code/game/turfs/simulated/floor/plasteel_floor.dm +++ b/code/game/turfs/simulated/floor/plasteel_floor.dm @@ -5,8 +5,8 @@ burnt_states = list("floorscorched1", "floorscorched2") /turf/open/floor/plasteel/examine(mob/user) - ..() - to_chat(user, "There's a small crack on the edge of it.") + . = ..() + . += "There's a small crack on the edge of it." /turf/open/floor/plasteel/update_icon() if(!..()) diff --git a/code/game/turfs/simulated/floor/plating.dm b/code/game/turfs/simulated/floor/plating.dm index 036f54c7..47db413e 100644 --- a/code/game/turfs/simulated/floor/plating.dm +++ b/code/game/turfs/simulated/floor/plating.dm @@ -20,14 +20,14 @@ var/attachment_holes = TRUE /turf/open/floor/plating/examine(mob/user) - ..() + . = ..() if(broken || burnt) - to_chat(user, "It looks like the dents could be welded smooth.") + . += "It looks like the dents could be welded smooth." return if(attachment_holes) - to_chat(user, "There are a few attachment holes for a new tile or reinforcement rods.") + . += "There are a few attachment holes for a new tile or reinforcement rods." else - to_chat(user, "You might be able to build ontop of it with some tiles...") + . += "You might be able to build ontop of it with some tiles..." /turf/open/floor/plating/Initialize() if (!broken_states) diff --git a/code/game/turfs/simulated/floor/reinf_floor.dm b/code/game/turfs/simulated/floor/reinf_floor.dm index 0c54a340..edc47ede 100644 --- a/code/game/turfs/simulated/floor/reinf_floor.dm +++ b/code/game/turfs/simulated/floor/reinf_floor.dm @@ -13,8 +13,8 @@ tiled_dirt = FALSE /turf/open/floor/engine/examine(mob/user) - ..() - to_chat(user, "The reinforcement rods are wrenched firmly in place.") + . = ..() + . += "The reinforcement rods are wrenched firmly in place." /turf/open/floor/engine/airless initial_gas_mix = "TEMP=2.7" diff --git a/code/game/turfs/simulated/wall/reinf_walls.dm b/code/game/turfs/simulated/wall/reinf_walls.dm index 4fd923dd..1b2e9801 100644 --- a/code/game/turfs/simulated/wall/reinf_walls.dm +++ b/code/game/turfs/simulated/wall/reinf_walls.dm @@ -17,19 +17,19 @@ /turf/closed/wall/r_wall/deconstruction_hints(mob/user) switch(d_state) if(INTACT) - to_chat(user, "The outer grille is fully intact.") + return "The outer grille is fully intact." if(SUPPORT_LINES) - to_chat(user, "The outer grille has been cut, and the support lines are screwed securely to the outer cover.") + return "The outer grille has been cut, and the support lines are screwed securely to the outer cover." if(COVER) - to_chat(user, "The support lines have been unscrewed, and the metal cover is welded firmly in place.") + return "The support lines have been unscrewed, and the metal cover is welded firmly in place." if(CUT_COVER) - to_chat(user, "The metal cover has been sliced through, and is connected loosely to the girder.") + return "The metal cover has been sliced through, and is connected loosely to the girder." if(ANCHOR_BOLTS) - to_chat(user, "The outer cover has been pried away, and the bolts anchoring the support rods are wrenched in place.") + return "The outer cover has been pried away, and the bolts anchoring the support rods are wrenched in place." if(SUPPORT_RODS) - to_chat(user, "The bolts anchoring the support rods have been loosened, but are still welded firmly to the girder.") + return "The bolts anchoring the support rods have been loosened, but are still welded firmly to the girder." if(SHEATH) - to_chat(user, "The support rods have been sliced through, and the outer sheath is connected loosely to the girder.") + return "The support rods have been sliced through, and the outer sheath is connected loosely to the girder." /turf/closed/wall/r_wall/devastate_wall() new sheet_type(src, sheet_amount) diff --git a/code/game/turfs/simulated/walls.dm b/code/game/turfs/simulated/walls.dm index 42bd0c61..53830fc2 100644 --- a/code/game/turfs/simulated/walls.dm +++ b/code/game/turfs/simulated/walls.dm @@ -73,11 +73,11 @@ var/list/dent_decals /turf/closed/wall/examine(mob/user) - ..() + . = ..() deconstruction_hints(user) /turf/closed/wall/proc/deconstruction_hints(mob/user) - to_chat(user, "The outer plating is welded firmly in place.") + return "The outer plating is welded firmly in place." /turf/closed/wall/attack_tk() return diff --git a/code/modules/admin/sound_emitter.dm b/code/modules/admin/sound_emitter.dm index 028af313..2901659c 100644 --- a/code/modules/admin/sound_emitter.dm +++ b/code/modules/admin/sound_emitter.dm @@ -34,15 +34,15 @@ return /obj/effect/sound_emitter/examine(mob/user) - ..() + . = ..() if(!isobserver(user)) return - to_chat(user, "Sound File: [sound_file ? sound_file : "None chosen"]") - to_chat(user, "Mode: [motus_operandi]
") - to_chat(user, "Range: [emitter_range]
") - to_chat(user, "Sound is playing at [sound_volume]% volume.") + . += "Sound File: [sound_file ? sound_file : "None chosen"]" + . += "Mode: [motus_operandi]
" + . += "Range: [emitter_range]
" + . += "Sound is playing at [sound_volume]% volume." if(user.client.holder) - to_chat(user, "Alt-click it to quickly activate it!") + . += "Alt-click it to quickly activate it!" //ATTACK GHOST IGNORING PARENT RETURN VALUE /obj/effect/sound_emitter/attack_ghost(mob/user) diff --git a/code/modules/antagonists/abductor/equipment/abduction_gear.dm b/code/modules/antagonists/abductor/equipment/abduction_gear.dm index b8bda0db..2f5ef65e 100644 --- a/code/modules/antagonists/abductor/equipment/abduction_gear.dm +++ b/code/modules/antagonists/abductor/equipment/abduction_gear.dm @@ -606,16 +606,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/modules/antagonists/blob/blob/overmind.dm b/code/modules/antagonists/blob/blob/overmind.dm index d32e38c1..33e8497e 100644 --- a/code/modules/antagonists/blob/blob/overmind.dm +++ b/code/modules/antagonists/blob/blob/overmind.dm @@ -170,9 +170,9 @@ GLOBAL_LIST_EMPTY(blob_nodes) add_points(0) /mob/camera/blob/examine(mob/user) - ..() + . = ..() if(blob_reagent_datum) - to_chat(user, "Its chemical is [blob_reagent_datum.name].") + . += "Its chemical is [blob_reagent_datum.name]." /mob/camera/blob/update_health_hud() if(blob_core) diff --git a/code/modules/antagonists/blob/blob/theblob.dm b/code/modules/antagonists/blob/blob/theblob.dm index dc7aa821..b37c0076 100644 --- a/code/modules/antagonists/blob/blob/theblob.dm +++ b/code/modules/antagonists/blob/blob/theblob.dm @@ -243,18 +243,19 @@ else return ..() -/obj/structure/blob/proc/chemeffectreport(mob/user) +/obj/structure/blob/proc/chemeffectreport() + . = list() if(overmind) - to_chat(user, "Material: [overmind.blob_reagent_datum.name].") - to_chat(user, "Material Effects: [overmind.blob_reagent_datum.analyzerdescdamage]") - to_chat(user, "Material Properties: [overmind.blob_reagent_datum.analyzerdesceffect]
") + . += "Material: [overmind.blob_reagent_datum.name]." + . += "Material Effects: [overmind.blob_reagent_datum.analyzerdescdamage]" + . += "Material Properties: [overmind.blob_reagent_datum.analyzerdesceffect]
" else - to_chat(user, "No Material Detected!
") + . += "No Material Detected!
" -/obj/structure/blob/proc/typereport(mob/user) - to_chat(user, "Blob Type: [uppertext(initial(name))]") - to_chat(user, "Health: [obj_integrity]/[max_integrity]") - to_chat(user, "Effects: [scannerreport()]") +/obj/structure/blob/proc/typereport() + . = list("Blob Type: [uppertext(initial(name))]") + . += "Health: [obj_integrity]/[max_integrity]" + . += "Effects: [scannerreport()]" /obj/structure/blob/attack_animal(mob/living/simple_animal/M) if(ROLE_BLOB in M.faction) //sorry, but you can't kill the blob as a blobbernaut @@ -310,20 +311,20 @@ return B /obj/structure/blob/examine(mob/user) - ..() + . = ..() var/datum/atom_hud/hud_to_check = GLOB.huds[DATA_HUD_MEDICAL_ADVANCED] if(user.research_scanner || hud_to_check.hudusers[user]) - to_chat(user, "Your HUD displays an extensive report...
") + . += "Your HUD displays an extensive report...
" if(overmind) - to_chat(user, "Progress to Critical Mass: [overmind.blobs_legit.len]/[overmind.blobwincount].") + . += "Progress to Critical Mass: [overmind.blobs_legit.len]/[overmind.blobwincount]." else - to_chat(user, "Core neutralized. Critical mass no longer attainable.") - chemeffectreport(user) - typereport(user) + . += "Core neutralized. Critical mass no longer attainable." + . += chemeffectreport() + . += typereport() else if(isobserver(user) && overmind) - to_chat(user, "Progress to Critical Mass: [overmind.blobs_legit.len]/[overmind.blobwincount].") - to_chat(user, "It seems to be made of [get_chem_name()].") + . += "Progress to Critical Mass: [overmind.blobs_legit.len]/[overmind.blobwincount]." + . += "It seems to be made of [get_chem_name()]." /obj/structure/blob/proc/scannerreport() return "A generic blob. Looks like someone forgot to override this proc, adminhelp this." diff --git a/code/modules/antagonists/clockcult/clock_effect.dm b/code/modules/antagonists/clockcult/clock_effect.dm index b9de95b0..5fbfa032 100644 --- a/code/modules/antagonists/clockcult/clock_effect.dm +++ b/code/modules/antagonists/clockcult/clock_effect.dm @@ -21,5 +21,5 @@ /obj/effect/clockwork/examine(mob/user) if((is_servant_of_ratvar(user) || isobserver(user)) && clockwork_desc) desc = clockwork_desc - ..() + . = ..() desc = initial(desc) \ No newline at end of file diff --git a/code/modules/antagonists/clockcult/clock_effects/clock_overlay.dm b/code/modules/antagonists/clockcult/clock_effects/clock_overlay.dm index 34a986aa..c18e4679 100644 --- a/code/modules/antagonists/clockcult/clock_effects/clock_overlay.dm +++ b/code/modules/antagonists/clockcult/clock_effects/clock_overlay.dm @@ -6,6 +6,7 @@ /obj/effect/clockwork/overlay/examine(mob/user) if(linked) linked.examine(user) + return ..() /obj/effect/clockwork/overlay/ex_act() return FALSE diff --git a/code/modules/antagonists/clockcult/clock_effects/clock_sigils.dm b/code/modules/antagonists/clockcult/clock_effects/clock_sigils.dm index 6eedffb1..b05fcad6 100644 --- a/code/modules/antagonists/clockcult/clock_effects/clock_sigils.dm +++ b/code/modules/antagonists/clockcult/clock_effects/clock_sigils.dm @@ -191,15 +191,15 @@ ..() /obj/effect/clockwork/sigil/transmission/examine(mob/user) - ..() + . = ..() if(is_servant_of_ratvar(user) || isobserver(user)) var/structure_number = 0 for(var/obj/structure/destructible/clockwork/powered/P in range(SIGIL_ACCESS_RANGE, src)) structure_number++ - to_chat(user, "It is storing [DisplayPower(get_clockwork_power())] of shared power, \ - and [structure_number] clockwork structure[structure_number == 1 ? " is":"s are"] in range.") + . += "It is storing [DisplayPower(get_clockwork_power())] of shared power, \ + and [structure_number] clockwork structure[structure_number == 1 ? " is":"s are"] in range." if(iscyborg(user)) - to_chat(user, "You can recharge from the [sigil_name] by crossing it.") + . += "You can recharge from the [sigil_name] by crossing it." /obj/effect/clockwork/sigil/transmission/sigil_effects(mob/living/L) if(is_servant_of_ratvar(L)) @@ -280,13 +280,13 @@ can_dust = FALSE /obj/effect/clockwork/sigil/vitality/examine(mob/user) - ..() + . = ..() if(is_servant_of_ratvar(user) || isobserver(user)) - to_chat(user, "It has access to [GLOB.ratvar_awakens ? "INFINITE":GLOB.clockwork_vitality] units of vitality.") + . += "It has access to [GLOB.ratvar_awakens ? "INFINITE":GLOB.clockwork_vitality] units of vitality." if(GLOB.ratvar_awakens) - to_chat(user, "It can revive Servants at no cost!") + . += "It can revive Servants at no cost!" else - to_chat(user, "It can revive Servants at a cost of [revive_cost] vitality.") + . += "It can revive Servants at a cost of [revive_cost] vitality." /obj/effect/clockwork/sigil/vitality/sigil_effects(mob/living/L) if((is_servant_of_ratvar(L) && L.suiciding) || sigil_active) diff --git a/code/modules/antagonists/clockcult/clock_effects/spatial_gateway.dm b/code/modules/antagonists/clockcult/clock_effects/spatial_gateway.dm index 5cf7ab79..36aaa277 100644 --- a/code/modules/antagonists/clockcult/clock_effects/spatial_gateway.dm +++ b/code/modules/antagonists/clockcult/clock_effects/spatial_gateway.dm @@ -53,9 +53,9 @@ return TRUE /obj/effect/clockwork/spatial_gateway/examine(mob/user) - ..() + . = ..() if(is_servant_of_ratvar(user) || isobserver(user)) - to_chat(user, "It has [uses] use\s remaining.") + . += "It has [uses] use\s remaining." //ATTACK GHOST IGNORING PARENT RETURN VALUE /obj/effect/clockwork/spatial_gateway/attack_ghost(mob/user) diff --git a/code/modules/antagonists/clockcult/clock_item.dm b/code/modules/antagonists/clockcult/clock_item.dm index f403b6f9..7c8e877f 100644 --- a/code/modules/antagonists/clockcult/clock_item.dm +++ b/code/modules/antagonists/clockcult/clock_item.dm @@ -20,5 +20,5 @@ /obj/item/clockwork/examine(mob/user) if((is_servant_of_ratvar(user) || isobserver(user)) && clockwork_desc) desc = clockwork_desc - ..() + . = ..() desc = initial(desc) diff --git a/code/modules/antagonists/clockcult/clock_items/clock_components.dm b/code/modules/antagonists/clockcult/clock_items/clock_components.dm index 561d49e9..a9307f15 100644 --- a/code/modules/antagonists/clockcult/clock_items/clock_components.dm +++ b/code/modules/antagonists/clockcult/clock_items/clock_components.dm @@ -12,7 +12,7 @@ /obj/item/clockwork/component/examine(mob/user) . = ..() if(is_servant_of_ratvar(user) || isobserver(user)) - to_chat(user, "You can activate this in your hand to break it down for power.") + . += "You can activate this in your hand to break it down for power." /obj/item/clockwork/component/attack_self(mob/living/user) if(is_servant_of_ratvar(user)) @@ -181,9 +181,9 @@ pixel_y = rand(-sprite_shift, sprite_shift) /obj/item/clockwork/alloy_shards/examine(mob/user) - ..() + . = ..() if(is_servant_of_ratvar(user) || isobserver(user)) - to_chat(user, "Can be consumed by a replica fabricator as a source of power.") + . += "Can be consumed by a replica fabricator as a source of power." /obj/item/clockwork/alloy_shards/proc/replace_name_desc() name = "replicant alloy shard" diff --git a/code/modules/antagonists/clockcult/clock_items/clock_weapons/ratvarian_spear.dm b/code/modules/antagonists/clockcult/clock_items/clock_weapons/ratvarian_spear.dm index a004714e..386a463a 100644 --- a/code/modules/antagonists/clockcult/clock_items/clock_weapons/ratvarian_spear.dm +++ b/code/modules/antagonists/clockcult/clock_items/clock_weapons/ratvarian_spear.dm @@ -27,11 +27,11 @@ armour_penetration = initial(armour_penetration) /obj/item/clockwork/weapon/ratvarian_spear/examine(mob/user) - ..() + . = ..() if(is_servant_of_ratvar(user) || isobserver(user)) - to_chat(user, "Attacks on living non-Servants will generate [bonus_burn] units of vitality.") + . += "Attacks on living non-Servants will generate [bonus_burn] units of vitality." if(!iscyborg(user)) - to_chat(user, "Throwing the spear will do massive damage, break the spear, and knock down the target.") + . += "Throwing the spear will do massive damage, break the spear, and knock down the target." /obj/item/clockwork/weapon/ratvarian_spear/attack(mob/living/target, mob/living/carbon/human/user) . = ..() diff --git a/code/modules/antagonists/clockcult/clock_items/clockwork_slab.dm b/code/modules/antagonists/clockcult/clock_items/clockwork_slab.dm index a4866751..d7646c55 100644 --- a/code/modules/antagonists/clockcult/clock_items/clockwork_slab.dm +++ b/code/modules/antagonists/clockcult/clock_items/clockwork_slab.dm @@ -139,15 +139,15 @@ adjust_clockwork_power(0.1) //Slabs serve as very weak power generators on their own (no, not enough to justify spamming them) /obj/item/clockwork/slab/examine(mob/user) - ..() + . = ..() if(is_servant_of_ratvar(user) || isobserver(user)) if(LAZYLEN(quickbound)) for(var/i in 1 to quickbound.len) if(!quickbound[i]) continue var/datum/clockwork_scripture/quickbind_slot = quickbound[i] - to_chat(user, "Quickbind button: [initial(quickbind_slot.name)].") - to_chat(user, "Available power: [DisplayPower(get_clockwork_power())].") + . += "Quickbind button: [initial(quickbind_slot.name)]." + . += "Available power: [DisplayPower(get_clockwork_power())]." //Slab actions; Hierophant, Quickbind /obj/item/clockwork/slab/ui_action_click(mob/user, action) diff --git a/code/modules/antagonists/clockcult/clock_items/construct_chassis.dm b/code/modules/antagonists/clockcult/clock_items/construct_chassis.dm index 12af249b..f5509289 100644 --- a/code/modules/antagonists/clockcult/clock_items/construct_chassis.dm +++ b/code/modules/antagonists/clockcult/clock_items/construct_chassis.dm @@ -28,7 +28,7 @@ /obj/item/clockwork/construct_chassis/examine(mob/user) clockwork_desc = "[clockwork_desc]
[construct_desc]" - ..() + . = ..() clockwork_desc = initial(clockwork_desc) //ATTACK HAND IGNORING PARENT RETURN VALUE diff --git a/code/modules/antagonists/clockcult/clock_items/replica_fabricator.dm b/code/modules/antagonists/clockcult/clock_items/replica_fabricator.dm index 741b251a..0365ae63 100644 --- a/code/modules/antagonists/clockcult/clock_items/replica_fabricator.dm +++ b/code/modules/antagonists/clockcult/clock_items/replica_fabricator.dm @@ -44,16 +44,16 @@ speed_multiplier = initial(speed_multiplier) /obj/item/clockwork/replica_fabricator/examine(mob/living/user) - ..() + . = ..() if(is_servant_of_ratvar(user) || isobserver(user)) - to_chat(user, "Can be used to replace walls, floors, tables, windows, windoors, and airlocks with Clockwork variants.") - to_chat(user, "Can construct Clockwork Walls on Clockwork Floors and deconstruct Clockwork Walls to Clockwork Floors.") + . += "Can be used to replace walls, floors, tables, windows, windoors, and airlocks with Clockwork variants." + . += "Can construct Clockwork Walls on Clockwork Floors and deconstruct Clockwork Walls to Clockwork Floors." if(uses_power) - to_chat(user, "It can consume floor tiles, rods, metal, and plasteel for power at rates of 2:[DisplayPower(POWER_ROD)], 1:[DisplayPower(POWER_ROD)], 1:[DisplayPower(POWER_METAL)], \ - and 1:[DisplayPower(POWER_PLASTEEL)], respectively.") - to_chat(user, "It can also consume brass sheets for power at a rate of 1:[DisplayPower(POWER_FLOOR)].") - to_chat(user, "Use it in-hand to produce 5 brass sheets at a cost of [DisplayPower(POWER_WALL_TOTAL)] power.") - to_chat(user, "It has access to [DisplayPower(get_clockwork_power())] of power.") + . += "It can consume floor tiles, rods, metal, and plasteel for power at rates of 2:[DisplayPower(POWER_ROD)], 1:[DisplayPower(POWER_ROD)], 1:[DisplayPower(POWER_METAL)], \ + and 1:[DisplayPower(POWER_PLASTEEL)], respectively." + . += "It can also consume brass sheets for power at a rate of 1:[DisplayPower(POWER_FLOOR)]." + . += "Use it in-hand to produce 5 brass sheets at a cost of [DisplayPower(POWER_WALL_TOTAL)] power." + . += "It has access to [DisplayPower(get_clockwork_power())] of power." /obj/item/clockwork/replica_fabricator/attack_self(mob/living/user) if(is_servant_of_ratvar(user)) diff --git a/code/modules/antagonists/clockcult/clock_items/soul_vessel.dm b/code/modules/antagonists/clockcult/clock_items/soul_vessel.dm index d47bf4f3..d84338fa 100644 --- a/code/modules/antagonists/clockcult/clock_items/soul_vessel.dm +++ b/code/modules/antagonists/clockcult/clock_items/soul_vessel.dm @@ -39,7 +39,7 @@ /obj/item/mmi/posibrain/soul_vessel/examine(mob/user) if((is_servant_of_ratvar(user) || isobserver(user)) && clockwork_desc) desc = clockwork_desc - ..() + . = ..() desc = initial(desc) /obj/item/mmi/posibrain/soul_vessel/transfer_personality(mob/candidate) diff --git a/code/modules/antagonists/clockcult/clock_mobs.dm b/code/modules/antagonists/clockcult/clock_mobs.dm index 6268d15d..9bdf03cb 100644 --- a/code/modules/antagonists/clockcult/clock_mobs.dm +++ b/code/modules/antagonists/clockcult/clock_mobs.dm @@ -57,7 +57,7 @@ msg += "[addendum]\n" msg += "*---------*
" - to_chat(user, msg) + return list(msg) /mob/living/simple_animal/hostile/clockwork/proc/examine_info() //Override this on a by-mob basis to have unique examine info return diff --git a/code/modules/antagonists/clockcult/clock_structure.dm b/code/modules/antagonists/clockcult/clock_structure.dm index 300e85e3..13da9c5a 100644 --- a/code/modules/antagonists/clockcult/clock_structure.dm +++ b/code/modules/antagonists/clockcult/clock_structure.dm @@ -43,10 +43,10 @@ var/can_see_clockwork = is_servant_of_ratvar(user) || isobserver(user) if(can_see_clockwork && clockwork_desc) desc = clockwork_desc - ..() + . = ..() desc = initial(desc) if(unanchored_icon) - to_chat(user, "[src] is [anchored ? "":"not "]secured to the floor.") + . += "[src] is [anchored ? "":"not "]secured to the floor." /obj/structure/destructible/clockwork/examine_status(mob/user) if(is_servant_of_ratvar(user) || isobserver(user)) @@ -155,12 +155,12 @@ var/inactive_icon = null //icon_state while process() isn't being called /obj/structure/destructible/clockwork/powered/examine(mob/user) - ..() + . = ..() if(is_servant_of_ratvar(user) || isobserver(user)) if(!can_access_clockwork_power(src)) - to_chat(user, "It has no access to the power network! Create a sigil of transmission nearby.") + . += "It has no access to the power network! Create a sigil of transmission nearby." else - to_chat(user, "It has access to [DisplayPower(get_clockwork_power())] of power.") + . += "It has access to [DisplayPower(get_clockwork_power())] of power." /obj/structure/destructible/clockwork/powered/Destroy() SSfastprocess.processing -= src diff --git a/code/modules/antagonists/clockcult/clock_structures/_trap_object.dm b/code/modules/antagonists/clockcult/clock_structures/_trap_object.dm index 00a3406d..d09e568f 100644 --- a/code/modules/antagonists/clockcult/clock_structures/_trap_object.dm +++ b/code/modules/antagonists/clockcult/clock_structures/_trap_object.dm @@ -16,16 +16,16 @@ return ..() /obj/structure/destructible/clockwork/trap/examine(mob/user) - ..() + . = ..() if(is_servant_of_ratvar(user) || isobserver(user)) - to_chat(user, "It's wired to:") + . += "It's wired to:" if(!wired_to.len) - to_chat(user, "Nothing.") + . += "Nothing." else for(var/V in wired_to) var/obj/O = V var/distance = get_dist(src, O) - to_chat(user, "[O] ([distance == 0 ? "same tile" : "[distance] tiles [dir2text(get_dir(src, O))]"])") + . += "[O] ([distance == 0 ? "same tile" : "[distance] tiles [dir2text(get_dir(src, O))]"])" /obj/structure/destructible/clockwork/trap/wrench_act(mob/living/user, obj/item/I) if(!is_servant_of_ratvar(user)) diff --git a/code/modules/antagonists/clockcult/clock_structures/ark_of_the_clockwork_justicar.dm b/code/modules/antagonists/clockcult/clock_structures/ark_of_the_clockwork_justicar.dm index 56b36d13..04da424f 100644 --- a/code/modules/antagonists/clockcult/clock_structures/ark_of_the_clockwork_justicar.dm +++ b/code/modules/antagonists/clockcult/clock_structures/ark_of_the_clockwork_justicar.dm @@ -223,34 +223,34 @@ /obj/structure/destructible/clockwork/massive/celestial_gateway/examine(mob/user) icon_state = "spatial_gateway" //cheat wildly by pretending to have an icon - ..() + . = ..() icon_state = initial(icon_state) if(is_servant_of_ratvar(user) || isobserver(user)) if(!active) - to_chat(user, "Time until the Ark's activation: [DisplayTimeText(get_arrival_time())]") + . += "Time until the Ark's activation: [DisplayTimeText(get_arrival_time())]" else if(grace_period) - to_chat(user, "Crew grace period time remaining: [DisplayTimeText(get_arrival_time())]") + . += "Crew grace period time remaining: [DisplayTimeText(get_arrival_time())]" else - to_chat(user, "Time until Ratvar's arrival: [DisplayTimeText(get_arrival_time())]") + . += "Time until Ratvar's arrival: [DisplayTimeText(get_arrival_time())]" switch(progress_in_seconds) if(-INFINITY to GATEWAY_REEBE_FOUND) - to_chat(user, "The Ark is feeding power into the bluespace field.") + . += "The Ark is feeding power into the bluespace field." if(GATEWAY_REEBE_FOUND to GATEWAY_RATVAR_COMING) - to_chat(user, "The field is ripping open a copy of itself in Ratvar's prison.") + . += "The field is ripping open a copy of itself in Ratvar's prison." if(GATEWAY_RATVAR_COMING to INFINITY) - to_chat(user, "With the bluespace field established, Ratvar is preparing to come through!") + . += "With the bluespace field established, Ratvar is preparing to come through!" else if(!active) - to_chat(user, "Whatever it is, it doesn't seem to be active.") + . += "Whatever it is, it doesn't seem to be active." else switch(progress_in_seconds) if(-INFINITY to GATEWAY_REEBE_FOUND) - to_chat(user, "You see a swirling bluespace anomaly steadily growing in intensity.") + . += "You see a swirling bluespace anomaly steadily growing in intensity." if(GATEWAY_REEBE_FOUND to GATEWAY_RATVAR_COMING) - to_chat(user, "The anomaly is stable, and you can see flashes of something from it.") + . += "The anomaly is stable, and you can see flashes of something from it." if(GATEWAY_RATVAR_COMING to INFINITY) - to_chat(user, "The anomaly is stable! Something is coming through!") + . += "The anomaly is stable! Something is coming through!" /obj/structure/destructible/clockwork/massive/celestial_gateway/process() if(seconds_until_activation == -1) //we never do anything diff --git a/code/modules/antagonists/clockcult/clock_structures/clockwork_obelisk.dm b/code/modules/antagonists/clockcult/clock_structures/clockwork_obelisk.dm index cb13fdd6..058bd9d2 100644 --- a/code/modules/antagonists/clockcult/clock_structures/clockwork_obelisk.dm +++ b/code/modules/antagonists/clockcult/clock_structures/clockwork_obelisk.dm @@ -21,9 +21,9 @@ toggle(1) /obj/structure/destructible/clockwork/powered/clockwork_obelisk/examine(mob/user) - ..() + . = ..() if(is_servant_of_ratvar(user) || isobserver(user)) - to_chat(user, "It requires [DisplayPower(hierophant_cost)] to broadcast over the Hierophant Network, and [DisplayPower(gateway_cost)] to open a Spatial Gateway.") + . += "It requires [DisplayPower(hierophant_cost)] to broadcast over the Hierophant Network, and [DisplayPower(gateway_cost)] to open a Spatial Gateway." /obj/structure/destructible/clockwork/powered/clockwork_obelisk/can_be_unfasten_wrench(mob/user, silent) if(active) diff --git a/code/modules/antagonists/clockcult/clock_structures/heralds_beacon.dm b/code/modules/antagonists/clockcult/clock_structures/heralds_beacon.dm index 7654c020..68f62035 100644 --- a/code/modules/antagonists/clockcult/clock_structures/heralds_beacon.dm +++ b/code/modules/antagonists/clockcult/clock_structures/heralds_beacon.dm @@ -47,16 +47,16 @@ STOP_PROCESSING(SSprocessing, src) /obj/structure/destructible/clockwork/heralds_beacon/examine(mob/user) - ..() + . = ..() if(isobserver(user) || is_servant_of_ratvar(user)) if(!available) if(!GLOB.ratvar_approaches) - to_chat(user, "It can no longer be activated.") + . += "It can no longer be activated." else - to_chat(user, "It has been activated!") + . += "It has been activated!" else - to_chat(user, "There are [time_remaining] second[time_remaining != 1 ? "s" : ""] remaining to vote.") - to_chat(user, "There are [voters.len]/[votes_needed] votes to activate the beacon!") + . += "There are [time_remaining] second[time_remaining != 1 ? "s" : ""] remaining to vote." + . += "There are [voters.len]/[votes_needed] votes to activate the beacon!" /obj/structure/destructible/clockwork/heralds_beacon/attack_hand(mob/living/user) . = ..() diff --git a/code/modules/antagonists/clockcult/clock_structures/mania_motor.dm b/code/modules/antagonists/clockcult/clock_structures/mania_motor.dm index df123144..9b4ac808 100644 --- a/code/modules/antagonists/clockcult/clock_structures/mania_motor.dm +++ b/code/modules/antagonists/clockcult/clock_structures/mania_motor.dm @@ -17,9 +17,9 @@ var/mania_cost = 150 /obj/structure/destructible/clockwork/powered/mania_motor/examine(mob/user) - ..() + . = ..() if(is_servant_of_ratvar(user) || isobserver(user)) - to_chat(user, "It requires [DisplayPower(mania_cost)] to run.") + . += "It requires [DisplayPower(mania_cost)] to run." /obj/structure/destructible/clockwork/powered/mania_motor/forced_disable(bad_effects) if(active) diff --git a/code/modules/antagonists/clockcult/clock_structures/ocular_warden.dm b/code/modules/antagonists/clockcult/clock_structures/ocular_warden.dm index df0083e8..bf50ed2b 100644 --- a/code/modules/antagonists/clockcult/clock_structures/ocular_warden.dm +++ b/code/modules/antagonists/clockcult/clock_structures/ocular_warden.dm @@ -25,8 +25,8 @@ return ..() /obj/structure/destructible/clockwork/ocular_warden/examine(mob/user) - ..() - to_chat(user, "[target ? "It's fixated on [target]!" : "Its gaze is wandering aimlessly."]") + . = ..() + . += "[target ? "It's fixated on [target]!" : "Its gaze is wandering aimlessly."]" /obj/structure/destructible/clockwork/ocular_warden/hulk_damage() return 25 diff --git a/code/modules/antagonists/clockcult/clock_structures/stargazer.dm b/code/modules/antagonists/clockcult/clock_structures/stargazer.dm index 57f83c55..fbaee799 100644 --- a/code/modules/antagonists/clockcult/clock_structures/stargazer.dm +++ b/code/modules/antagonists/clockcult/clock_structures/stargazer.dm @@ -25,11 +25,11 @@ . = ..() /obj/structure/destructible/clockwork/stargazer/examine(mob/user) - ..() + . = ..() if(is_servant_of_ratvar(user)) - to_chat(user, "Generates [DisplayPower(STARGAZER_POWER)] per second while viewing starlight within [STARGAZER_RANGE] tiles.") + . += "Generates [DisplayPower(STARGAZER_POWER)] per second while viewing starlight within [STARGAZER_RANGE] tiles." if(star_light_star_bright) - to_chat(user, "[is_servant_of_ratvar(user) ? "It can see starlight!" : "It's shining brilliantly!"]") + . += "[is_servant_of_ratvar(user) ? "It can see starlight!" : "It's shining brilliantly!"]" /obj/structure/destructible/clockwork/stargazer/process() star_light_star_bright = check_starlight() diff --git a/code/modules/antagonists/cult/blood_magic.dm b/code/modules/antagonists/cult/blood_magic.dm index 50d24821..eedc03c6 100644 --- a/code/modules/antagonists/cult/blood_magic.dm +++ b/code/modules/antagonists/cult/blood_magic.dm @@ -651,7 +651,7 @@ /obj/item/melee/blood_magic/manipulator/examine(mob/user) . = ..() if(iscultist(user)) - to_chat(user, "The [name] currently has [uses] blood charges left.") + . += "The [name] currently has [uses] blood charges left." /obj/item/melee/blood_magic/manipulator/afterattack(atom/target, mob/living/carbon/human/user, proximity) if(proximity) diff --git a/code/modules/antagonists/cult/cult_items.dm b/code/modules/antagonists/cult/cult_items.dm index 54f803a0..747cb4b4 100644 --- a/code/modules/antagonists/cult/cult_items.dm +++ b/code/modules/antagonists/cult/cult_items.dm @@ -134,10 +134,11 @@ AddComponent(/datum/component/butchering, 50, 80) /obj/item/twohanded/required/cult_bastard/examine(mob/user) + . = ..() if(contents.len) - desc+="
There are [contents.len] souls trapped within the sword's core." + . += "
There are [contents.len] souls trapped within the sword's core." else - desc+="
The sword appears to be quite lifeless." + . += "
The sword appears to be quite lifeless." /obj/item/twohanded/required/cult_bastard/can_be_pulled(user) return FALSE @@ -572,11 +573,11 @@ var/uses = 4 /obj/item/cult_shift/examine(mob/user) - ..() + . = ..() if(uses) - to_chat(user, "It has [uses] use\s remaining.") + . += "It has [uses] use\s 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/modules/antagonists/cult/cult_structures.dm b/code/modules/antagonists/cult/cult_structures.dm index 0dd6b08c..f38f379a 100644 --- a/code/modules/antagonists/cult/cult_structures.dm +++ b/code/modules/antagonists/cult/cult_structures.dm @@ -29,10 +29,10 @@ /obj/structure/destructible/cult/examine(mob/user) - ..() - to_chat(user, "\The [src] is [anchored ? "":"not "]secured to the floor.") + . = ..() + . += "\The [src] is [anchored ? "":"not "]secured to the floor." if((iscultist(user) || isobserver(user)) && cooldowntime > world.time) - to_chat(user, "The magic in [src] is too weak, [p_they()] will be ready to use again in [DisplayTimeText(cooldowntime - world.time)].") + . += "The magic in [src] is too weak, [p_they()] will be ready to use again in [DisplayTimeText(cooldowntime - world.time)]." /obj/structure/destructible/cult/examine_status(mob/user) if(iscultist(user) || isobserver(user)) diff --git a/code/modules/antagonists/cult/ritual.dm b/code/modules/antagonists/cult/ritual.dm index a9c77567..805b6f82 100644 --- a/code/modules/antagonists/cult/ritual.dm +++ b/code/modules/antagonists/cult/ritual.dm @@ -15,12 +15,12 @@ This file contains the cult dagger and rune list code GLOB.rune_types[initial(R.cultist_name)] = R //Uses the cultist name for displaying purposes /obj/item/melee/cultblade/dagger/examine(mob/user) - ..() + . = ..() if(iscultist(user) || isobserver(user)) - to_chat(user, "The scriptures of the Geometer. Allows the scribing of runes and access to the knowledge archives of the cult of Nar'Sie.") - to_chat(user, "Striking a cult structure will unanchor or reanchor it.") - to_chat(user, "Striking another cultist with it will purge holy water from them.") - to_chat(user, "Striking a noncultist, however, will tear their flesh.") + . += "The scriptures of the Geometer. Allows the scribing of runes and access to the knowledge archives of the cult of Nar'Sie." + . += "Striking a cult structure will unanchor or reanchor it." + . += "Striking another cultist with it will purge holy water from them." + . += "Striking a noncultist, however, will tear their flesh." /obj/item/melee/cultblade/dagger/attack(mob/living/M, mob/living/user) if(iscultist(M)) diff --git a/code/modules/antagonists/cult/runes.dm b/code/modules/antagonists/cult/runes.dm index df696a97..c878774d 100644 --- a/code/modules/antagonists/cult/runes.dm +++ b/code/modules/antagonists/cult/runes.dm @@ -48,13 +48,13 @@ Runes can either be invoked by one's self or with many different cultists. Each add_alt_appearance(/datum/atom_hud/alternate_appearance/basic/silicons, "cult_runes", I) /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_text ? "[req_cultists_text]":"[req_cultists]"]") + . += "Name: [cultist_name]" + . += "Effects: [capitalize(cultist_desc)]" + . += "Required Acolytes: [req_cultists_text ? "[req_cultists_text]":"[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/melee/cultblade/dagger) && iscultist(user)) @@ -530,10 +530,10 @@ structure_check() searches for nearby cultist structures required for the invoca var/static/revives_used = -SOULS_TO_REVIVE // Cultists get one "free" revive /obj/effect/rune/raise_dead/examine(mob/user) - ..() + . = ..() if(iscultist(user) || user.stat == DEAD) var/revive_number = LAZYLEN(GLOB.sacrificed) - revives_used - to_chat(user, "Revives Remaining: [revive_number]") + . += "Revives Remaining: [revive_number]" /obj/effect/rune/raise_dead/invoke(var/list/invokers) var/turf/T = get_turf(src) @@ -627,11 +627,11 @@ structure_check() searches for nearby cultist structures required for the invoca GLOB.wall_runes += src /obj/effect/rune/wall/examine(mob/user) - ..() + . = ..() if(density && iscultist(user)) var/datum/timedevent/TMR = active_timers[1] if(TMR) - to_chat(user, "The air above this rune has hardened into a barrier that will last [DisplayTimeText(TMR.timeToRun - world.time)].") + . += "The air above this rune has hardened into a barrier that will last [DisplayTimeText(TMR.timeToRun - world.time)]." /obj/effect/rune/wall/Destroy() GLOB.wall_runes -= src diff --git a/code/modules/antagonists/devil/true_devil/_true_devil.dm b/code/modules/antagonists/devil/true_devil/_true_devil.dm index 1df81a79..2c968d4b 100644 --- a/code/modules/antagonists/devil/true_devil/_true_devil.dm +++ b/code/modules/antagonists/devil/true_devil/_true_devil.dm @@ -64,26 +64,25 @@ /mob/living/carbon/true_devil/examine(mob/user) - var/msg = "*---------*\nThis is [icon2html(src, user)] [src]!\n" + . = list("*---------*\nThis is [icon2html(src, user)] [src]!") //Left hand items for(var/obj/item/I in held_items) if(!(I.item_flags & ABSTRACT)) - msg += "It is holding [I.get_examine_string(user)] in its [get_held_index_name(get_held_index_of_item(I))].\n" + . += "It is holding [I.get_examine_string(user)] in its [get_held_index_name(get_held_index_of_item(I))]." //Braindead if(!client && stat != DEAD) - msg += "The devil seems to be in deep contemplation.\n" + . += "The devil seems to be in deep contemplation." //Damaged if(stat == DEAD) - msg += "The hellfire seems to have been extinguished, for now at least.\n" + . += "The hellfire seems to have been extinguished, for now at least." else if(health < (maxHealth/10)) - msg += "You can see hellfire inside its gaping wounds.\n" + . += "You can see hellfire inside its gaping wounds." else if(health < (maxHealth/2)) - msg += "You can see hellfire inside its wounds.\n" - msg += "*---------*" - to_chat(user, msg) + . += "You can see hellfire inside its wounds." + . += "*---------*" /mob/living/carbon/true_devil/IsAdvancedToolUser() return 1 diff --git a/code/modules/antagonists/disease/disease_mob.dm b/code/modules/antagonists/disease/disease_mob.dm index 4d378af7..434ecabf 100644 --- a/code/modules/antagonists/disease/disease_mob.dm +++ b/code/modules/antagonists/disease/disease_mob.dm @@ -98,14 +98,14 @@ the new instance inside the host to be updated to the template's stats. /mob/camera/disease/examine(mob/user) - ..() + . = ..() if(isobserver(user)) - to_chat(user, "[src] has [points]/[total_points] adaptation points.") - to_chat(user, "[src] has the following unlocked:") + . += "[src] has [points]/[total_points] adaptation points." + . += "[src] has the following unlocked:" for(var/A in purchased_abilities) var/datum/disease_ability/B = A if(istype(B)) - to_chat(user, "[B.name]") + . += "[B.name]" /mob/camera/disease/say(message, bubble_type, var/list/spans = list(), sanitize = TRUE, datum/language/language = null, ignore_spam = FALSE, forced = null) return diff --git a/code/modules/antagonists/morph/morph.dm b/code/modules/antagonists/morph/morph.dm index 12f8d228..ad2eb479 100644 --- a/code/modules/antagonists/morph/morph.dm +++ b/code/modules/antagonists/morph/morph.dm @@ -52,12 +52,11 @@ /mob/living/simple_animal/hostile/morph/examine(mob/user) if(morphed) - form.examine(user) // Refactor examine to return desc so it's static? Not sure if worth it + . = form.examine(user) if(get_dist(user,src)<=3) - to_chat(user, "It doesn't look quite right...") + . += "It doesn't look quite right..." else - ..() - return + . = ..() /mob/living/simple_animal/hostile/morph/med_hud_set_health() if(morphed && !isliving(form)) diff --git a/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm b/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm index add3c1d9..69b4f7e9 100644 --- a/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm +++ b/code/modules/antagonists/nukeop/equipment/nuclearbomb.dm @@ -55,9 +55,9 @@ /obj/machinery/nuclearbomb/examine(mob/user) . = ..() if(exploding) - to_chat(user, "It is in the process of exploding. Perhaps reviewing your affairs is in order.") + . += "It is in the process of exploding. Perhaps reviewing your affairs is in order." if(timing) - to_chat(user, "There are [get_time_left()] seconds until detonation.") + . += "There are [get_time_left()] seconds until detonation." /obj/machinery/nuclearbomb/selfdestruct name = "station self-destruct terminal" @@ -472,9 +472,9 @@ /obj/machinery/nuclearbomb/beer/examine(mob/user) . = ..() if(keg.reagents.total_volume) - to_chat(user, "It has [keg.reagents.total_volume] unit\s left.") + . += "It has [keg.reagents.total_volume] unit\s left." else - to_chat(user, "It's empty.") + . += "It's empty." /obj/machinery/nuclearbomb/beer/attackby(obj/item/W, mob/user, params) if(W.is_refillable()) @@ -615,7 +615,7 @@ This is here to make the tiles around the station mininuke change when it's arme var/captain = user.mind && user.mind.assigned_role == "Captain" var/nukie = user.mind && user.mind.has_antag_datum(/datum/antagonist/nukeop) if(ghost || captain || nukie) - to_chat(user, "The serial numbers on [src] are incorrect.") + . += "The serial numbers on [src] are incorrect." /obj/item/disk/nuclear/attackby(obj/item/I, mob/living/user, params) if(istype(I, /obj/item/claymore/highlander) && !fake) diff --git a/code/modules/antagonists/nukeop/equipment/pinpointer.dm b/code/modules/antagonists/nukeop/equipment/pinpointer.dm index 538feba0..db9ff4e6 100644 --- a/code/modules/antagonists/nukeop/equipment/pinpointer.dm +++ b/code/modules/antagonists/nukeop/equipment/pinpointer.dm @@ -2,7 +2,7 @@ var/mode = TRACK_NUKE_DISK /obj/item/pinpointer/nuke/examine(mob/user) - ..() + . = ..() var/msg = "Its tracking indicator reads " switch(mode) if(TRACK_NUKE_DISK) @@ -13,10 +13,10 @@ msg += "\"vasvygengbefuvc\"." else msg = "Its tracking indicator is blank." - to_chat(user, msg) + . += msg for(var/obj/machinery/nuclearbomb/bomb in GLOB.machines) if(bomb.timing) - to_chat(user, "Extreme danger. Arming signal detected. Time remaining: [bomb.get_time_left()].") + . += "Extreme danger. Arming signal detected. Time remaining: [bomb.get_time_left()]." /obj/item/pinpointer/nuke/process() ..() diff --git a/code/modules/antagonists/revenant/revenant.dm b/code/modules/antagonists/revenant/revenant.dm index cea36186..74593190 100644 --- a/code/modules/antagonists/revenant/revenant.dm +++ b/code/modules/antagonists/revenant/revenant.dm @@ -368,11 +368,11 @@ scatter() /obj/item/ectoplasm/revenant/examine(mob/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(QDELETED(src) || QDELETED(revenant) || inert) diff --git a/code/modules/antagonists/wizard/equipment/soulstone.dm b/code/modules/antagonists/wizard/equipment/soulstone.dm index 02d78035..aba45b67 100644 --- a/code/modules/antagonists/wizard/equipment/soulstone.dm +++ b/code/modules/antagonists/wizard/equipment/soulstone.dm @@ -38,12 +38,12 @@ . = ..() if(usability || iscultist(user, TRUE) || iswizard(user) || isobserver(user)) if (old_shard) - to_chat(user, "A soulstone, used to capture a soul, either from dead humans or from freed shades.") + . += "A soulstone, used to capture a soul, either from dead humans or from freed shades." else - to_chat(user, "A soulstone, used to capture souls, either from unconscious or sleeping humans or from freed shades.") - to_chat(user, "The captured soul can be placed into a construct shell to produce a construct, or released from the stone as a shade.") + . += "A soulstone, used to capture souls, either from unconscious or sleeping humans or from freed shades." + . += "The captured soul can be placed into a construct shell to produce a construct, or released from the stone as a shade." if(spent) - to_chat(user, "This shard is spent; it is now just a creepy rock.") + . += "This shard is spent; it is now just a creepy rock." /obj/item/soulstone/Destroy() //Stops the shade from being qdel'd immediately and their ghost being sent back to the arrival shuttle. for(var/mob/living/simple_animal/shade/A in src) diff --git a/code/modules/antagonists/wizard/equipment/spellbook.dm b/code/modules/antagonists/wizard/equipment/spellbook.dm index 750c258c..338e50cc 100644 --- a/code/modules/antagonists/wizard/equipment/spellbook.dm +++ b/code/modules/antagonists/wizard/equipment/spellbook.dm @@ -549,11 +549,11 @@ var/list/categories = list() /obj/item/spellbook/examine(mob/user) - ..() + . = ..() if(owner) - to_chat(user, "There is a small signature on the front cover: \"[owner]\".") + . += "There is a small signature on the front cover: \"[owner]\"." else - to_chat(user, "It appears to have no author.") + . += "It appears to have no author." /obj/item/spellbook/Initialize() . = ..() diff --git a/code/modules/assembly/assembly.dm b/code/modules/assembly/assembly.dm index 2e4d877d..1348fcdf 100644 --- a/code/modules/assembly/assembly.dm +++ b/code/modules/assembly/assembly.dm @@ -112,9 +112,8 @@ return TRUE /obj/item/assembly/examine(mob/user) - ..() - to_chat(user, "\The [src] [secured? "is secured and ready to be used!" : "can be attached to other things."]") - + . = ..() + . += "\The [src] [secured? "is secured and ready to be used!" : "can be attached to other things."]" /obj/item/assembly/attack_self(mob/user) if(!user) diff --git a/code/modules/assembly/doorcontrol.dm b/code/modules/assembly/doorcontrol.dm index 04b4e3ed..1c9c1a02 100644 --- a/code/modules/assembly/doorcontrol.dm +++ b/code/modules/assembly/doorcontrol.dm @@ -8,9 +8,9 @@ var/cooldown = FALSE //Door cooldowns /obj/item/assembly/control/examine(mob/user) - ..() + . = ..() if(id) - to_chat(user, "Its channel ID is '[id]'.") + . += "Its channel ID is '[id]'." /obj/item/assembly/control/activate() cooldown = TRUE diff --git a/code/modules/assembly/health.dm b/code/modules/assembly/health.dm index 782d729c..3fca066f 100644 --- a/code/modules/assembly/health.dm +++ b/code/modules/assembly/health.dm @@ -11,8 +11,8 @@ var/alarm_health = HEALTH_THRESHOLD_CRIT /obj/item/assembly/health/examine(mob/user) - ..() - to_chat(user, "Use a multitool to swap between \"detect death\" mode and \"detect critical state\" mode.") + . = ..() + . += "Use a multitool to swap between \"detect death\" mode and \"detect critical state\" mode." /obj/item/assembly/health/activate() if(!..()) diff --git a/code/modules/assembly/infrared.dm b/code/modules/assembly/infrared.dm index fc60cf2f..a023e0e3 100644 --- a/code/modules/assembly/infrared.dm +++ b/code/modules/assembly/infrared.dm @@ -38,8 +38,8 @@ . = ..() /obj/item/assembly/infra/examine(mob/user) - ..() - to_chat(user, "The infrared trigger is [on?"on":"off"].") + . = ..() + . += "The infrared trigger is [on?"on":"off"]." /obj/item/assembly/infra/activate() if(!..()) diff --git a/code/modules/assembly/mousetrap.dm b/code/modules/assembly/mousetrap.dm index c87b4ba7..c67b7947 100644 --- a/code/modules/assembly/mousetrap.dm +++ b/code/modules/assembly/mousetrap.dm @@ -9,8 +9,8 @@ /obj/item/assembly/mousetrap/examine(mob/user) - ..() - to_chat(user, "The pressure plate is [armed?"primed":"safe"].") + . = ..() + . += "The pressure plate is [armed?"primed":"safe"]." /obj/item/assembly/mousetrap/activate() if(..()) diff --git a/code/modules/assembly/proximity.dm b/code/modules/assembly/proximity.dm index fc109f38..329ea85c 100644 --- a/code/modules/assembly/proximity.dm +++ b/code/modules/assembly/proximity.dm @@ -21,8 +21,8 @@ . = ..() /obj/item/assembly/prox_sensor/examine(mob/user) - ..() - to_chat(user, "The proximity sensor is [timing ? "arming" : (scanning ? "armed" : "disarmed")].") + . = ..() + . += "The proximity sensor is [timing ? "arming" : (scanning ? "armed" : "disarmed")]." /obj/item/assembly/prox_sensor/activate() if(!..()) diff --git a/code/modules/assembly/signaler.dm b/code/modules/assembly/signaler.dm index b4f35641..66da7c76 100644 --- a/code/modules/assembly/signaler.dm +++ b/code/modules/assembly/signaler.dm @@ -169,8 +169,8 @@ Code: return TRUE /obj/item/assembly/signaler/receiver/examine(mob/user) - ..() - to_chat(user, "The radio receiver is [on?"on":"off"].") + . = ..() + . += "The radio receiver is [on?"on":"off"]." /obj/item/assembly/signaler/receiver/receive_signal(datum/signal/signal) if(!on) @@ -206,4 +206,4 @@ Code: /obj/item/assembly/signaler/cyborg/attackby(obj/item/W, mob/user, params) return /obj/item/assembly/signaler/cyborg/screwdriver_act(mob/living/user, obj/item/I) - return \ No newline at end of file + return diff --git a/code/modules/assembly/timer.dm b/code/modules/assembly/timer.dm index 5e3a237c..a5c62989 100644 --- a/code/modules/assembly/timer.dm +++ b/code/modules/assembly/timer.dm @@ -31,8 +31,8 @@ . = ..() /obj/item/assembly/timer/examine(mob/user) - ..() - to_chat(user, "The timer is [timing ? "counting down from [time]":"set for [time] seconds"].") + . = ..() + . += "The timer is [timing ? "counting down from [time]":"set for [time] seconds"]." /obj/item/assembly/timer/activate() if(!..()) diff --git a/code/modules/assembly/voice.dm b/code/modules/assembly/voice.dm index e7b4932e..b54b18eb 100644 --- a/code/modules/assembly/voice.dm +++ b/code/modules/assembly/voice.dm @@ -22,8 +22,8 @@ "voice sensor") /obj/item/assembly/voice/examine(mob/user) - ..() - to_chat(user, "Use a multitool to swap between \"inclusive\", \"exclusive\", \"recognizer\", and \"voice sensor\" mode.") + . = ..() + . += "Use a multitool to swap between \"inclusive\", \"exclusive\", \"recognizer\", and \"voice sensor\" mode." /obj/item/assembly/voice/Hear(message, atom/movable/speaker, message_language, raw_message, radio_freq, list/spans, message_mode) . = ..() diff --git a/code/modules/atmospherics/machinery/airalarm.dm b/code/modules/atmospherics/machinery/airalarm.dm index 2db7d5f7..365cc738 100644 --- a/code/modules/atmospherics/machinery/airalarm.dm +++ b/code/modules/atmospherics/machinery/airalarm.dm @@ -222,11 +222,11 @@ . = ..() switch(buildstage) if(0) - to_chat(user, "It is missing air alarm electronics.") + . += "It is missing air alarm electronics." if(1) - to_chat(user, "It is missing wiring.") + . += "It is missing wiring." if(2) - to_chat(user, "Alt-click to [locked ? "unlock" : "lock"] the interface.") + . += "Alt-click to [locked ? "unlock" : "lock"] the interface." /obj/machinery/airalarm/ui_status(mob/user) if(user.has_unlimited_silicon_privilege && aidisabled) diff --git a/code/modules/atmospherics/machinery/atmosmachinery.dm b/code/modules/atmospherics/machinery/atmosmachinery.dm index 3c2b2007..e531be20 100644 --- a/code/modules/atmospherics/machinery/atmosmachinery.dm +++ b/code/modules/atmospherics/machinery/atmosmachinery.dm @@ -42,11 +42,11 @@ Pipelines + Other Objects -> Pipe network var/on = FALSE /obj/machinery/atmospherics/examine(mob/user) - ..() + . = ..() if(is_type_in_list(src, GLOB.ventcrawl_machinery) && isliving(user)) var/mob/living/L = user if(L.ventcrawler) - to_chat(L, "Alt-click to crawl through it.") + . += "Alt-click to crawl through it." /obj/machinery/atmospherics/New(loc, process = TRUE, setdir) if(!isnull(setdir)) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm index 1de5b933..b95b15ef 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/pump.dm @@ -30,8 +30,8 @@ Thus, the two variables affect pump operation are set in New(): /obj/machinery/atmospherics/components/binary/pump/examine(mob/user) . = ..() - to_chat(user,"You can hold Ctrl and click on it to toggle it on and off.") - to_chat(user,"You can hold Alt and click on it to maximize its pressure.") + . += "You can hold Ctrl and click on it to toggle it on and off." + . += "You can hold Alt and click on it to maximize its pressure." /obj/machinery/atmospherics/components/binary/pump/CtrlClick(mob/user) var/area/A = get_area(src) diff --git a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm index f2d13062..194231b1 100644 --- a/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm +++ b/code/modules/atmospherics/machinery/components/binary_devices/volume_pump.dm @@ -31,8 +31,8 @@ Thus, the two variables affect pump operation are set in New(): /obj/machinery/atmospherics/components/binary/volume_pump/examine(mob/user) . = ..() - to_chat(user,"You can hold Ctrl and click on it to toggle it on and off.") - to_chat(user,"You can hold Alt and click on it to maximize its pressure.") + . += "You can hold Ctrl and click on it to toggle it on and off." + . += "You can hold Alt and click on it to maximize its pressure." if(overclocked) to_chat(user,"Its warning light is on" + (on ? " and it's spewing gas!" : ".")) @@ -234,4 +234,4 @@ Thus, the two variables affect pump operation are set in New(): else overclocked = FALSE to_chat(user, "The pump quiets down as you turn its limiters back on.") - return TRUE \ No newline at end of file + return TRUE diff --git a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm index 6f8774c4..7ac329be 100644 --- a/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm +++ b/code/modules/atmospherics/machinery/components/trinary_devices/filter.dm @@ -14,8 +14,8 @@ /obj/machinery/atmospherics/components/trinary/filter/examine(mob/user) . = ..() - to_chat(user,"You can hold Ctrl and click on it to toggle it on and off.") - to_chat(user,"You can hold Alt and click on it to maximize its pressure.") + . += "You can hold Ctrl and click on it to toggle it on and off." + . += "You can hold Alt and click on it to maximize its pressure." /obj/machinery/atmospherics/components/trinary/filter/CtrlClick(mob/user) var/area/A = get_area(src) diff --git a/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm b/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm index fc866c3d..9e4deaf3 100644 --- a/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm +++ b/code/modules/atmospherics/machinery/components/trinary_devices/mixer.dm @@ -16,8 +16,8 @@ //node 3 is the outlet, nodes 1 & 2 are intakes /obj/machinery/atmospherics/components/trinary/mixer/examine(mob/user) . = ..() - to_chat(user,"You can hold Ctrl and click on it to toggle it on and off.") - to_chat(user,"You can hold Alt and click on it to maximize its pressure.") + . += "You can hold Ctrl and click on it to toggle it on and off." + . += "You can hold Alt and click on it to maximize its pressure." /obj/machinery/atmospherics/components/trinary/mixer/CtrlClick(mob/user) var/area/A = get_area(src) diff --git a/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm b/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm index f94e023b..2ec683e9 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/cryo.dm @@ -262,14 +262,14 @@ open_machine() /obj/machinery/atmospherics/components/unary/cryo_cell/examine(mob/user) - ..() + . = ..() if(occupant) if(on) - to_chat(user, "Someone's inside [src]!") + . += "Someone's inside [src]!" else - to_chat(user, "You can barely make out a form floating in [src].") + . += "You can barely make out a form floating in [src]." else - to_chat(user, "[src] seems empty.") + . += "[src] seems empty." /obj/machinery/atmospherics/components/unary/cryo_cell/MouseDrop_T(mob/target, mob/user) if(user.stat || user.lying || !Adjacent(user) || !user.Adjacent(target) || !iscarbon(target) || !user.IsAdvancedToolUser()) diff --git a/code/modules/atmospherics/machinery/components/unary_devices/vent_pump.dm b/code/modules/atmospherics/machinery/components/unary_devices/vent_pump.dm index 5b37242c..75f2a60f 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/vent_pump.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/vent_pump.dm @@ -424,9 +424,9 @@ return FALSE /obj/machinery/atmospherics/components/unary/vent_pump/examine(mob/user) - ..() + . = ..() if(welded) - to_chat(user, "It seems welded shut.") + . += "It seems welded shut." /obj/machinery/atmospherics/components/unary/vent_pump/power_change() ..() diff --git a/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm b/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm index 2a9f6d92..14b27bd4 100644 --- a/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm +++ b/code/modules/atmospherics/machinery/components/unary_devices/vent_scrubber.dm @@ -305,9 +305,9 @@ return FALSE /obj/machinery/atmospherics/components/unary/vent_scrubber/examine(mob/user) - ..() + . = ..() if(welded) - to_chat(user, "It seems welded shut.") + . += "It seems welded shut." /obj/machinery/atmospherics/components/unary/vent_scrubber/can_crawl_through() return !welded diff --git a/code/modules/atmospherics/machinery/other/meter.dm b/code/modules/atmospherics/machinery/other/meter.dm index 5a9f7fa4..f258eb64 100644 --- a/code/modules/atmospherics/machinery/other/meter.dm +++ b/code/modules/atmospherics/machinery/other/meter.dm @@ -111,8 +111,8 @@ . = "The connect error light is blinking." /obj/machinery/meter/examine(mob/user) - ..() - to_chat(user, status()) + . = ..() + . += status() /obj/machinery/meter/wrench_act(mob/user, obj/item/I) to_chat(user, "You begin to unfasten \the [src]...") diff --git a/code/modules/atmospherics/machinery/other/miner.dm b/code/modules/atmospherics/machinery/other/miner.dm index adb17b4e..c90d388a 100644 --- a/code/modules/atmospherics/machinery/other/miner.dm +++ b/code/modules/atmospherics/machinery/other/miner.dm @@ -33,9 +33,9 @@ set_active(active) //Force overlay update. /obj/machinery/atmospherics/miner/examine(mob/user) - ..() + . = ..() if(broken) - to_chat(user, "Its debug output is printing \"[broken_message]\".") + . += "Its debug output is printing \"[broken_message]\"." /obj/machinery/atmospherics/miner/proc/check_operation() if(!active) diff --git a/code/modules/atmospherics/machinery/portable/portable_atmospherics.dm b/code/modules/atmospherics/machinery/portable/portable_atmospherics.dm index 24f1e0b6..7e313fd7 100644 --- a/code/modules/atmospherics/machinery/portable/portable_atmospherics.dm +++ b/code/modules/atmospherics/machinery/portable/portable_atmospherics.dm @@ -88,10 +88,10 @@ 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.") - to_chat(user, "Click [src] with another gas tank to hot swap [holding].") + . += "\The [src] contains [holding]. Alt-click [src] to remove it." + . += "Click [src] with another gas tank to hot swap [holding]." /obj/machinery/portable_atmospherics/proc/replace_tank(mob/living/user, close_valve, obj/item/tank/new_tank) if(holding) diff --git a/code/modules/cargo/export_scanner.dm b/code/modules/cargo/export_scanner.dm index 6a294c9e..06173335 100644 --- a/code/modules/cargo/export_scanner.dm +++ b/code/modules/cargo/export_scanner.dm @@ -12,9 +12,9 @@ var/obj/machinery/computer/cargo/cargo_console = null /obj/item/export_scanner/examine(user) - ..() + . = ..() if(!cargo_console) - to_chat(user, "[src] is not currently linked to a cargo console.") + . += "[src] is not currently linked to a cargo console." /obj/item/export_scanner/afterattack(obj/O, mob/user, proximity) . = ..() diff --git a/code/modules/cargo/supplypod_beacon.dm b/code/modules/cargo/supplypod_beacon.dm index 3c82722f..915d671f 100644 --- a/code/modules/cargo/supplypod_beacon.dm +++ b/code/modules/cargo/supplypod_beacon.dm @@ -45,11 +45,11 @@ update_status() /obj/item/supplypod_beacon/examine(user) - ..() + . = ..() if(!express_console) - to_chat(user, "[src] is not currently linked to a Express Supply console.") + . += "[src] is not currently linked to a Express Supply console." else - to_chat(user, "Alt-click to unlink it from the Express Supply console.") + . += "Alt-click to unlink it from the Express Supply console." /obj/item/supplypod_beacon/Destroy() if(express_console) @@ -61,7 +61,7 @@ express_console.beacon = null express_console = null update_status(SP_UNLINK) - update_status(SP_UNREADY) + update_status(SP_UNREADY) /obj/item/supplypod_beacon/proc/link_console(obj/machinery/computer/cargo/express/C, mob/living/user) if (C.beacon)//if new console has a beacon, then... @@ -91,5 +91,5 @@ if(new_beacon_name) name += " ([tag])" return - else + else return ..() diff --git a/code/modules/clothing/clothing.dm b/code/modules/clothing/clothing.dm index 2492ef3e..0706f77e 100644 --- a/code/modules/clothing/clothing.dm +++ b/code/modules/clothing/clothing.dm @@ -136,9 +136,9 @@ user.vv_edit_var(variable, user_vars_to_edit[variable]) /obj/item/clothing/examine(mob/user) - ..() + . = ..() if(damaged_clothes) - to_chat(user, "It looks damaged!") + . += "It looks damaged!" GET_COMPONENT(pockets, /datum/component/storage) if(pockets) var/list/how_cool_are_your_threads = list("") @@ -153,7 +153,7 @@ if(pockets.silent) how_cool_are_your_threads += "Adding or removing items from [src] makes no noise.\n" how_cool_are_your_threads += "" - to_chat(user, how_cool_are_your_threads.Join()) + . += how_cool_are_your_threads.Join() /obj/item/clothing/obj_break(damage_flag) if(!damaged_clothes) @@ -405,4 +405,4 @@ BLIND // can't see anything to_chat(M, "Your species cannot wear [src].") return FALSE - return TRUE \ No newline at end of file + return TRUE diff --git a/code/modules/clothing/glasses/_glasses.dm b/code/modules/clothing/glasses/_glasses.dm index 513cfd3e..225d75f4 100644 --- a/code/modules/clothing/glasses/_glasses.dm +++ b/code/modules/clothing/glasses/_glasses.dm @@ -23,9 +23,9 @@ return BRUTELOSS /obj/item/clothing/glasses/examine(mob/user) - ..() + . = ..() if(glass_colour_type && ishuman(user)) - to_chat(user, "Alt-click to toggle its colors.") + . += "Alt-click to toggle its colors." /obj/item/clothing/glasses/visor_toggling() ..() @@ -335,7 +335,7 @@ desc = replacetext(desc, "person", "man") else if(user.gender == FEMALE) desc = replacetext(desc, "person", "woman") - ..() + . = ..() desc = desk /obj/item/clothing/glasses/thermal/eyepatch diff --git a/code/modules/clothing/head/jobs.dm b/code/modules/clothing/head/jobs.dm index 362e245f..fcac7874 100644 --- a/code/modules/clothing/head/jobs.dm +++ b/code/modules/clothing/head/jobs.dm @@ -90,8 +90,8 @@ new /obj/item/reagent_containers/food/drinks/flask/det(src) /obj/item/clothing/head/fedora/det_hat/examine(mob/user) - ..() - to_chat(user, "Alt-click to take a candy corn.") + . = ..() + . += "Alt-click to take a candy corn." /obj/item/clothing/head/fedora/det_hat/AltClick(mob/user) if(user.canUseTopic(src, BE_CLOSE, ismonkey(user))) diff --git a/code/modules/clothing/head/soft_caps.dm b/code/modules/clothing/head/soft_caps.dm index cdd506bd..a87b0f30 100644 --- a/code/modules/clothing/head/soft_caps.dm +++ b/code/modules/clothing/head/soft_caps.dm @@ -41,8 +41,8 @@ usr.update_inv_head() //so our mob-overlays update /obj/item/clothing/head/soft/examine(mob/user) - ..() - to_chat(user, "Alt-click the cap to flip it [flipped ? "forwards" : "backwards"].") + . = ..() + . += "Alt-click the cap to flip it [flipped ? "forwards" : "backwards"]." /obj/item/clothing/head/soft/red name = "red cap" diff --git a/code/modules/clothing/masks/breath.dm b/code/modules/clothing/masks/breath.dm index c1b2d9e2..bf98035b 100644 --- a/code/modules/clothing/masks/breath.dm +++ b/code/modules/clothing/masks/breath.dm @@ -30,8 +30,8 @@ adjustmask(user) /obj/item/clothing/mask/breath/examine(mob/user) - ..() - to_chat(user, "Alt-click [src] to adjust it.") + . = ..() + . += "Alt-click [src] to adjust it." /obj/item/clothing/mask/breath/medical desc = "A close-fitting sterile mask that can be connected to an air supply." diff --git a/code/modules/clothing/shoes/bananashoes.dm b/code/modules/clothing/shoes/bananashoes.dm index b6348948..979db7e0 100644 --- a/code/modules/clothing/shoes/bananashoes.dm +++ b/code/modules/clothing/shoes/bananashoes.dm @@ -38,8 +38,8 @@ to_chat(user, "You cannot retrieve any bananium from the prototype shoes.") /obj/item/clothing/shoes/clown_shoes/banana_shoes/examine(mob/user) - ..() - to_chat(user, "The shoes are [on ? "enabled" : "disabled"].") + . = ..() + . += "The shoes are [on ? "enabled" : "disabled"]." /obj/item/clothing/shoes/clown_shoes/banana_shoes/ui_action_click(mob/user) GET_COMPONENT(bananium, /datum/component/material_container) diff --git a/code/modules/clothing/shoes/magboots.dm b/code/modules/clothing/shoes/magboots.dm index 6e4833d4..53cdd733 100644 --- a/code/modules/clothing/shoes/magboots.dm +++ b/code/modules/clothing/shoes/magboots.dm @@ -40,9 +40,8 @@ return clothing_flags & NOSLIP /obj/item/clothing/shoes/magboots/examine(mob/user) - ..() - to_chat(user, "Its mag-pulse traction system appears to be [magpulse ? "enabled" : "disabled"].") - + . = ..() + . += "Its mag-pulse traction system appears to be [magpulse ? "enabled" : "disabled"]." /obj/item/clothing/shoes/magboots/advance desc = "Advanced magnetic boots that have a lighter magnetic pull, placing less burden on the wearer." diff --git a/code/modules/clothing/spacesuits/flightsuit.dm b/code/modules/clothing/spacesuits/flightsuit.dm index b105b722..123927bb 100644 --- a/code/modules/clothing/spacesuits/flightsuit.dm +++ b/code/modules/clothing/spacesuits/flightsuit.dm @@ -799,10 +799,10 @@ to_chat(targ, "[icon2html(src, targ)]|[message]") /obj/item/clothing/suit/space/hardsuit/flightsuit/examine(mob/user) - ..() - to_chat(user, "SUIT: [locked ? "LOCKED" : "UNLOCKED"]") - to_chat(user, "FLIGHTPACK: [deployedpack ? "ENGAGED" : "DISENGAGED"] FLIGHTSHOES : [deployedshoes ? "ENGAGED" : "DISENGAGED"] HELMET : [suittoggled ? "ENGAGED" : "DISENGAGED"]") - to_chat(user, "Its maintainence panel is [maint_panel ? "OPEN" : "CLOSED"]") + . = ..() + . += "SUIT: [locked ? "LOCKED" : "UNLOCKED"]" + . += "FLIGHTPACK: [deployedpack ? "ENGAGED" : "DISENGAGED"] FLIGHTSHOES : [deployedshoes ? "ENGAGED" : "DISENGAGED"] HELMET : [suittoggled ? "ENGAGED" : "DISENGAGED"]" + . += "Its maintainence panel is [maint_panel ? "OPEN" : "CLOSED"]" /obj/item/clothing/suit/space/hardsuit/flightsuit/Destroy() dropped() diff --git a/code/modules/clothing/suits/toggles.dm b/code/modules/clothing/suits/toggles.dm index 5d534e00..7d91b2f7 100644 --- a/code/modules/clothing/suits/toggles.dm +++ b/code/modules/clothing/suits/toggles.dm @@ -120,8 +120,8 @@ A.UpdateButtonIcon() /obj/item/clothing/suit/toggle/examine(mob/user) - ..() - to_chat(user, "Alt-click on [src] to toggle the [togglename].") + . = ..() + . += "Alt-click on [src] to toggle the [togglename]." //Hardsuit toggle code /obj/item/clothing/suit/space/hardsuit/Initialize() diff --git a/code/modules/clothing/under/_under.dm b/code/modules/clothing/under/_under.dm index 9692290b..422be6e3 100644 --- a/code/modules/clothing/under/_under.dm +++ b/code/modules/clothing/under/_under.dm @@ -137,23 +137,23 @@ /obj/item/clothing/under/examine(mob/user) - ..() + . = ..() if(can_adjust) if(adjusted == ALT_STYLE) - to_chat(user, "Alt-click on [src] to wear it normally.") + . += "Alt-click on [src] to wear it normally." else - to_chat(user, "Alt-click on [src] to wear it casually.") + . += "Alt-click on [src] to wear it casually." if (has_sensor == BROKEN_SENSORS) - to_chat(user, "Its sensors appear to be shorted out.") + . += "Its sensors appear to be shorted out." else if(has_sensor > NO_SENSORS) switch(sensor_mode) if(SENSOR_OFF) - to_chat(user, "Its sensors appear to be disabled.") + . += "Its sensors appear to be disabled." if(SENSOR_LIVING) - to_chat(user, "Its binary life sensors appear to be enabled.") + . += "Its binary life sensors appear to be enabled." if(SENSOR_VITALS) - to_chat(user, "Its vital tracker appears to be enabled.") + . += "Its vital tracker appears to be enabled." if(SENSOR_COORDS) - to_chat(user, "Its vital tracker and tracking beacon appear to be enabled.") + . += "Its vital tracker and tracking beacon appear to be enabled." if(attached_accessory) - to_chat(user, "\A [attached_accessory] is attached to it.") \ No newline at end of file + . += "\A [attached_accessory] is attached to it." diff --git a/code/modules/clothing/under/accessories.dm b/code/modules/clothing/under/accessories.dm index 6535e40d..dc5372cf 100644 --- a/code/modules/clothing/under/accessories.dm +++ b/code/modules/clothing/under/accessories.dm @@ -73,10 +73,10 @@ to_chat(user, "[src] will be worn [above_suit ? "above" : "below"] your suit.") /obj/item/clothing/accessory/examine(mob/user) - ..() - to_chat(user, "\The [src] can be attached to a uniform. Alt-click to remove it once attached.") + . = ..() + . += "\The [src] can be attached to a uniform. Alt-click to remove it once attached." if(initial(above_suit)) - to_chat(user, "\The [src] can be worn above or below your suit. Alt-click to toggle.") + . += "\The [src] can be worn above or below your suit. Alt-click to toggle." /obj/item/clothing/accessory/waistcoat name = "waistcoat" diff --git a/code/modules/clothing/under/miscellaneous.dm b/code/modules/clothing/under/miscellaneous.dm index 7b7b1f53..a65c23fe 100644 --- a/code/modules/clothing/under/miscellaneous.dm +++ b/code/modules/clothing/under/miscellaneous.dm @@ -612,8 +612,9 @@ var/extinguish_cooldown = 100 var/extinguishes_left = 5 /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)) return diff --git a/code/modules/detectivework/scanner.dm b/code/modules/detectivework/scanner.dm index b4782390..f9cd1256 100644 --- a/code/modules/detectivework/scanner.dm +++ b/code/modules/detectivework/scanner.dm @@ -193,9 +193,9 @@ log = list() /obj/item/detective_scanner/examine(mob/user) - ..() + . = ..() if(LAZYLEN(log) && !scanning) - to_chat(user, "Alt-click to clear scanner logs.") + . += "Alt-click to clear scanner logs." /obj/item/detective_scanner/proc/displayDetectiveScanResults(mob/living/user) // No need for can-use checks since the action button should do proper checks diff --git a/code/modules/events/holiday/vday.dm b/code/modules/events/holiday/vday.dm index 8f77af58..a95bd2fd 100644 --- a/code/modules/events/holiday/vday.dm +++ b/code/modules/events/holiday/vday.dm @@ -138,6 +138,7 @@ name = "valentine - To: [recipient] From: [sender]" /obj/item/valentine/examine(mob/user) + . = ..() if(in_range(user, src) || isobserver(user)) if( !(ishuman(user) || isobserver(user) || issilicon(user)) ) user << browse("[name][stars(message)]", "window=[name]") @@ -146,7 +147,7 @@ user << browse("[name][message]", "window=[name]") onclose(user, "[name]") else - to_chat(user, "It is too far away.") + . += "It is too far away." /obj/item/valentine/attack_self(mob/user) user.examinate(src) diff --git a/code/modules/events/spacevine.dm b/code/modules/events/spacevine.dm index c4372244..8b53d7df 100644 --- a/code/modules/events/spacevine.dm +++ b/code/modules/events/spacevine.dm @@ -292,7 +292,7 @@ add_atom_colour("#ffffff", FIXED_COLOUR_PRIORITY) /obj/structure/spacevine/examine(mob/user) - ..() + . = ..() var/text = "This one is a" if(mutations.len) for(var/A in mutations) @@ -301,7 +301,7 @@ else text += " normal" text += " vine." - to_chat(user, text) + . += text /obj/structure/spacevine/Destroy() for(var/datum/spacevine_mutation/SM in mutations) diff --git a/code/modules/food_and_drinks/food/customizables.dm b/code/modules/food_and_drinks/food/customizables.dm index 3eeb5b94..df5e6a87 100644 --- a/code/modules/food_and_drinks/food/customizables.dm +++ b/code/modules/food_and_drinks/food/customizables.dm @@ -22,7 +22,7 @@ var/customname = "custom" /obj/item/reagent_containers/food/snacks/customizable/examine(mob/user) - ..() + . = ..() var/ingredients_listed = "" for(var/obj/item/reagent_containers/food/snacks/ING in ingredients) ingredients_listed += "[ING.name], " @@ -33,7 +33,7 @@ size = "big" if(ingredients.len>8) size = "monster" - to_chat(user, "It contains [ingredients.len?"[ingredients_listed]":"no ingredient, "]making a [size]-sized [initial(name)].") + . += "It contains [ingredients.len?"[ingredients_listed]":"no ingredient, "]making a [size]-sized [initial(name)]." /obj/item/reagent_containers/food/snacks/customizable/attackby(obj/item/I, mob/user, params) if(!istype(I, /obj/item/reagent_containers/food/snacks/customizable) && istype(I, /obj/item/reagent_containers/food/snacks)) diff --git a/code/modules/food_and_drinks/food/snacks.dm b/code/modules/food_and_drinks/food/snacks.dm index 7eea6fb9..44cf59d2 100644 --- a/code/modules/food_and_drinks/food/snacks.dm +++ b/code/modules/food_and_drinks/food/snacks.dm @@ -151,15 +151,15 @@ All foods are distributed among various categories. Use common sense. return 0 /obj/item/reagent_containers/food/snacks/examine(mob/user) - ..() + . = ..() if(bitecount == 0) return else if(bitecount == 1) - to_chat(user, "[src] was bitten by someone!") + . += "[src] was bitten by someone!" else if(bitecount <= 3) - to_chat(user, "[src] was bitten [bitecount] times!") + . += "[src] was bitten [bitecount] times!" else - to_chat(user, "[src] was bitten multiple times!") + . += "[src] was bitten multiple times!" /obj/item/reagent_containers/food/snacks/attackby(obj/item/W, mob/user, params) diff --git a/code/modules/food_and_drinks/food/snacks_pastry.dm b/code/modules/food_and_drinks/food/snacks_pastry.dm index 9b870027..b8797783 100644 --- a/code/modules/food_and_drinks/food/snacks_pastry.dm +++ b/code/modules/food_and_drinks/food/snacks_pastry.dm @@ -449,11 +449,11 @@ if (pancakeCount) var/obj/item/reagent_containers/food/snacks/S = contents[pancakeCount] bitecount = S.bitecount - ..() + . = ..() if (pancakeCount) for(var/obj/item/reagent_containers/food/snacks/pancakes/ING in contents) ingredients_listed += "[ING.name], " - to_chat(user, "It contains [contents.len?"[ingredients_listed]":"no ingredient, "]on top of a [initial(name)].") + . += "It contains [contents.len?"[ingredients_listed]":"no ingredient, "]on top of a [initial(name)]." bitecount = originalBites /obj/item/reagent_containers/food/snacks/pancakes/attackby(obj/item/I, mob/living/user, params) diff --git a/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm b/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm index 0755fdc7..ff803b5f 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/deep_fryer.dm @@ -67,9 +67,9 @@ God bless America. fry_speed = oil_efficiency /obj/machinery/deepfryer/examine() - ..() + . = ..() if(frying) - to_chat(usr, "You can make out \a [frying] in the oil.") + . += "You can make out \a [frying] in the oil." /obj/machinery/deepfryer/attackby(obj/item/I, mob/user) if(istype(I, /obj/item/reagent_containers/pill)) diff --git a/code/modules/food_and_drinks/kitchen_machinery/microwave.dm b/code/modules/food_and_drinks/kitchen_machinery/microwave.dm index 6fcc5c9c..e67de927 100644 --- a/code/modules/food_and_drinks/kitchen_machinery/microwave.dm +++ b/code/modules/food_and_drinks/kitchen_machinery/microwave.dm @@ -53,20 +53,20 @@ /obj/machinery/microwave/examine(mob/user) . = ..() if(!operating) - to_chat(user, "Alt-click [src] to turn it on.") + . += "Alt-click [src] to turn it on." if(!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(operating) - to_chat(user, "\The [src] is operating.") + . += "\The [src] is operating." return if(length(ingredients)) if(issilicon(user)) - to_chat(user, "\The [src] camera shows:") + . += "\The [src] camera shows:" else - to_chat(user, "\The [src] contains:") + . += "\The [src] contains:" var/list/items_counts = new for(var/i in ingredients) if(istype(i, /obj/item/stack)) @@ -76,14 +76,14 @@ var/atom/movable/AM = i items_counts[AM.name]++ for(var/O in items_counts) - to_chat(user, "- [items_counts[O]]x [O].") + . += "- [items_counts[O]]x [O]." else - to_chat(user, "\The [src] is empty.") + . += "\The [src] is empty." if(!(stat & (NOPOWER|BROKEN))) - to_chat(user, "The status display reads:") - to_chat(user, "- Capacity: [max_n_of_items] items.") - to_chat(user, "- Cook time reduced by [(efficiency - 1) * 25]%.") + . += "The status display reads:" + . += "- Capacity: [max_n_of_items] items." + . += "- Cook time reduced by [(efficiency - 1) * 25]%." /obj/machinery/microwave/update_icon() if(broken) diff --git a/code/modules/food_and_drinks/pizzabox.dm b/code/modules/food_and_drinks/pizzabox.dm index d0bdbb8b..7c2b6719 100644 --- a/code/modules/food_and_drinks/pizzabox.dm +++ b/code/modules/food_and_drinks/pizzabox.dm @@ -319,9 +319,9 @@ pizza_preferences = list() /obj/item/pizzabox/infinite/examine(mob/user) - ..() + . = ..() if(isobserver(user)) - to_chat(user, "This pizza box is anomalous, and will produce infinite pizza.") + . += "This pizza box is anomalous, and will produce infinite pizza." /obj/item/pizzabox/infinite/attack_self(mob/living/user) QDEL_NULL(pizza) diff --git a/code/modules/games/cas.dm b/code/modules/games/cas.dm index 8953753a..fe038ce3 100644 --- a/code/modules/games/cas.dm +++ b/code/modules/games/cas.dm @@ -107,14 +107,14 @@ var/buffertext = "A funny bit of text." /obj/item/toy/cards/singlecard/cas/examine(mob/user) - ..() + . = ..() if (flipped) - to_chat(user, "The card is face down.") + . += "The card is face down." else if (blank) - to_chat(user, "The card is blank. Write on it with a pen.") + . += "The card is blank. Write on it with a pen." else - to_chat(user, "The card reads: [name]") - to_chat(user, "Alt-click to flip it.") + . += "The card reads: [name]" + . += "Alt-click to flip it." /obj/item/toy/cards/singlecard/cas/Flip() set name = "Flip Card" diff --git a/code/modules/goonchat/browserOutput.dm b/code/modules/goonchat/browserOutput.dm index ac3886b8..a0696e1f 100644 --- a/code/modules/goonchat/browserOutput.dm +++ b/code/modules/goonchat/browserOutput.dm @@ -1,3 +1,4 @@ + /********************************* For the main html chat area *********************************/ @@ -8,6 +9,8 @@ GLOBAL_DATUM_INIT(iconCache, /savefile, new("tmp/iconCache.sav")) //Cache of ico //On client, created on login /datum/chatOutput var/client/owner //client ref + var/total_checks = 0 + var/last_check = 0 var/loaded = FALSE // Has the client loaded the browser output area? var/list/messageQueue //If they haven't loaded chat, this is where messages will go until they do var/cookieSent = FALSE // Has the client sent a cookie for analysis @@ -150,6 +153,18 @@ GLOBAL_DATUM_INIT(iconCache, /savefile, new("tmp/iconCache.sav")) //Cache of ico //Called by client, sent data to investigate (cookie history so far) /datum/chatOutput/proc/analyzeClientData(cookie = "") + //Spam check + if(world.time > last_check + (3 SECONDS)) + last_check = world.time + total_checks = 0 + + total_checks += 1 + + if(total_checks > SPAM_TRIGGER_AUTOMUTE) + message_admins("[key_name(owner)] kicked for goonchat topic spam") + qdel(owner) + return + if(!cookie) return @@ -158,13 +173,22 @@ GLOBAL_DATUM_INIT(iconCache, /savefile, new("tmp/iconCache.sav")) //Cache of ico if (connData && islist(connData) && connData.len > 0 && connData["connData"]) connectionHistory = connData["connData"] //lol fuck var/list/found = new() - for(var/i in connectionHistory.len to 1 step -1) + if(connectionHistory.len > 5) + message_admins("[key_name(src.owner)] was kicked for an invalid ban cookie)") + qdel(owner) + return + + for(var/i in min(connectionHistory.len, 5) to 1 step -1) + if(QDELETED(owner)) + //he got cleaned up before we were done + return var/list/row = src.connectionHistory[i] if (!row || row.len < 3 || (!row["ckey"] || !row["compid"] || !row["ip"])) //Passed malformed history object return if (world.IsBanned(row["ckey"], row["ip"], row["compid"], real_bans_only=TRUE)) found = row break + CHECK_TICK //Uh oh this fucker has a history of playing on a banned account!! if (found.len > 0) @@ -253,4 +277,10 @@ GLOBAL_DATUM_INIT(iconCache, /savefile, new("tmp/iconCache.sav")) //Cache of ico if(Master.current_runlevel == RUNLEVEL_INIT || !SSchat?.initialized) to_chat_immediate(target, message, handle_whitespace) return - SSchat.queue(target, message, handle_whitespace) \ No newline at end of file + SSchat.queue(target, message, handle_whitespace) + +/datum/chatOutput/proc/swaptolightmode() //Dark mode light mode stuff. Yell at KMC if this breaks! (See darkmode.dm for documentation) + owner.force_white_theme() + +/datum/chatOutput/proc/swaptodarkmode() + owner.force_dark_theme() diff --git a/code/modules/goonchat/browserassets/js/browserOutput.js b/code/modules/goonchat/browserassets/js/browserOutput.js index 06e735d1..823ad107 100644 --- a/code/modules/goonchat/browserassets/js/browserOutput.js +++ b/code/modules/goonchat/browserassets/js/browserOutput.js @@ -30,7 +30,7 @@ var opts = { 'scrollSnapTolerance': 10, //If within x pixels of bottom 'clickTolerance': 10, //Keep focus if outside x pixels of mousedown position on mouseup 'imageRetryDelay': 50, //how long between attempts to reload images (in ms) - 'imageRetryLimit': 50, //how many attempts should we make? + 'imageRetryLimit': 50, //how many attempts should we make? 'popups': 0, //Amount of popups opened ever 'wasd': false, //Is the user in wasd mode? 'priorChatHeight': 0, //Thing for height-resizing detection @@ -173,7 +173,7 @@ function byondDecode(message) { // The replace for + is because FOR SOME REASON, BYOND replaces spaces with a + instead of %20, and a plus with %2b. // Marvelous. message = message.replace(/\+/g, "%20"); - try { + try { // This is a workaround for the above not always working when BYOND's shitty url encoding breaks. (byond bug id:2399401) if (decodeURIComponent) { message = decodeURIComponent(message); @@ -993,7 +993,7 @@ $(function() { $messages.empty(); opts.messageCount = 0; }); - + $('#changeColorPreset').click(function() { opts.colorPreset = (opts.colorPreset+1) % colorPresets.length; updateColorPreset(); diff --git a/code/modules/hydroponics/beekeeping/beebox.dm b/code/modules/hydroponics/beekeeping/beebox.dm index e26dab07..3c4ed776 100644 --- a/code/modules/hydroponics/beekeeping/beebox.dm +++ b/code/modules/hydroponics/beekeeping/beebox.dm @@ -123,26 +123,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 aBUZZ with activity... there are lots of bees!") + . += "This place is aBUZZ 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) if(istype(I, /obj/item/honey_frame)) diff --git a/code/modules/hydroponics/fermenting_barrel.dm b/code/modules/hydroponics/fermenting_barrel.dm index 83fc18dc..f253c06b 100644 --- a/code/modules/hydroponics/fermenting_barrel.dm +++ b/code/modules/hydroponics/fermenting_barrel.dm @@ -16,7 +16,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/fruit) if(fruit.reagents) diff --git a/code/modules/hydroponics/gene_modder.dm b/code/modules/hydroponics/gene_modder.dm index 8695bf2c..ec023728 100644 --- a/code/modules/hydroponics/gene_modder.dm +++ b/code/modules/hydroponics/gene_modder.dm @@ -440,7 +440,7 @@ to_chat(user, "You flip the write-protect tab to [src.read_only ? "protected" : "unprotected"].") /obj/item/disk/plantgene/examine(mob/user) - ..() + . = ..() if(gene && (istype(gene, /datum/plant_gene/core/potency))) - to_chat(user,"Percent is relative to potency, not maximum volume of the plant.") - to_chat(user, "The write-protect tab is set to [src.read_only ? "protected" : "unprotected"].") + . += "Percent is relative to potency, not maximum volume of the plant." + . += "The write-protect tab is set to [src.read_only ? "protected" : "unprotected"]." diff --git a/code/modules/hydroponics/grown.dm b/code/modules/hydroponics/grown.dm index 45df4ba8..6961a1cb 100644 --- a/code/modules/hydroponics/grown.dm +++ b/code/modules/hydroponics/grown.dm @@ -56,11 +56,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 6a02254d..3167c495 100644 --- a/code/modules/hydroponics/hydroponics.dm +++ b/code/modules/hydroponics/hydroponics.dm @@ -319,33 +319,31 @@ /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, "It's empty.") + . += "It's 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, "It's filled with weeds!") + . += "It's filled with weeds!" if(pestlevel >= 5) - to_chat(user, "It's filled with tiny worms!") - to_chat(user, "" ) - + . += "It's filled with tiny worms!" /obj/machinery/hydroponics/proc/weedinvasion() // If a weed growth is sufficient, this happens. dead = 0 diff --git a/code/modules/integrated_electronics/core/assemblies.dm b/code/modules/integrated_electronics/core/assemblies.dm index 6b620b48..c9d164c6 100644 --- a/code/modules/integrated_electronics/core/assemblies.dm +++ b/code/modules/integrated_electronics/core/assemblies.dm @@ -70,16 +70,16 @@ /obj/item/electronic_assembly/examine(mob/user) . = ..() if(can_anchor) - to_chat(user, "The anchoring bolts [anchored ? "are" : "can be"] wrenched in place and the maintenance panel [opened ? "can be" : "is"] screwed in place.") + . += "The anchoring bolts [anchored ? "are" : "can be"] wrenched in place and the maintenance panel [opened ? "can be" : "is"] screwed in place." else - to_chat(user, "The maintenance panel [opened ? "can be" : "is"] screwed in place.") + . += "The maintenance panel [opened ? "can be" : "is"] screwed in place." if((isobserver(user) && ckeys_allowed_to_scan[user.ckey]) || IsAdminGhost(user)) - to_chat(user, "You can scan this circuit.") + . += "You can scan this circuit." for(var/I in assembly_components) var/obj/item/integrated_circuit/IC = I - IC.external_examine(user) + . += IC.external_examine(user) if(opened) interact(user) diff --git a/code/modules/integrated_electronics/core/integrated_circuit.dm b/code/modules/integrated_electronics/core/integrated_circuit.dm index 60b2d048..cec3e234 100644 --- a/code/modules/integrated_electronics/core/integrated_circuit.dm +++ b/code/modules/integrated_electronics/core/integrated_circuit.dm @@ -26,8 +26,8 @@ var/displayed_name = "" var/demands_object_input = FALSE var/can_input_object_when_closed = FALSE - - + + /* Integrated circuits are essentially modular machines. Each circuit has a specific function, and combining them inside Electronic Assemblies allows a creative player the means to solve many problems. Circuits are held inside an electronic assembly, and are wired using special tools. @@ -35,8 +35,8 @@ a creative player the means to solve many problems. Circuits are held inside an /obj/item/integrated_circuit/examine(mob/user) interact(user) - external_examine(user) . = ..() + . += external_examine(user) // Can be called via electronic_assembly/attackby() /obj/item/integrated_circuit/proc/additem(var/obj/item/I, var/mob/living/user) @@ -62,7 +62,7 @@ a creative player the means to solve many problems. Circuits are held inside an // This should be used when someone is examining from an 'outside' perspective, e.g. reading a screen or LED. /obj/item/integrated_circuit/proc/external_examine(mob/user) - any_examine(user) + return any_examine(user) /obj/item/integrated_circuit/proc/any_examine(mob/user) return diff --git a/code/modules/integrated_electronics/subtypes/memory.dm b/code/modules/integrated_electronics/subtypes/memory.dm index 93d80080..34c36883 100644 --- a/code/modules/integrated_electronics/subtypes/memory.dm +++ b/code/modules/integrated_electronics/subtypes/memory.dm @@ -19,7 +19,7 @@ . = ..() /obj/item/integrated_circuit/memory/examine(mob/user) - ..() + . = ..() var/i for(i = 1, i <= outputs.len, i++) var/datum/integrated_io/O = outputs[i] @@ -30,7 +30,7 @@ data = "[d]" else if(!isnull(O.data)) data = O.data - to_chat(user, "\The [src] has [data] saved to address [i].") + . += "\The [src] has [data] saved to address [i]." /obj/item/integrated_circuit/memory/do_work() for(var/i = 1 to inputs.len) diff --git a/code/modules/integrated_electronics/subtypes/output.dm b/code/modules/integrated_electronics/subtypes/output.dm index 3975da18..6005709d 100644 --- a/code/modules/integrated_electronics/subtypes/output.dm +++ b/code/modules/integrated_electronics/subtypes/output.dm @@ -23,7 +23,7 @@ if(displayed_name && displayed_name != name) shown_label = " labeled '[displayed_name]'" - to_chat(user, "There is \a [src][shown_label], which displays [!isnull(stuff_to_display) ? "'[stuff_to_display]'" : "nothing"].") + return "There is \a [src][shown_label], which displays [!isnull(stuff_to_display) ? "'[stuff_to_display]'" : "nothing"]." /obj/item/integrated_circuit/output/screen/do_work() var/datum/integrated_io/I = inputs[1] @@ -345,14 +345,13 @@ set_pin_data(IC_INPUT, 1, FALSE) /obj/item/integrated_circuit/output/led/external_examine(mob/user) - var/text_output = "There is " + . = "There is " if(name == displayed_name) - text_output += "\an [name]" + . += "\an [name]" else - text_output += "\an ["\improper[name]"] labeled '[displayed_name]'" - text_output += " which is currently [get_pin_data(IC_INPUT, 1) ? "lit *" : "unlit"]." - to_chat(user, text_output) + . += "\an ["\improper[name]"] labeled '[displayed_name]'" + . += " which is currently [get_pin_data(IC_INPUT, 1) ? "lit *" : "unlit"]." /obj/item/integrated_circuit/output/diagnostic_hud name = "AR interface" diff --git a/code/modules/library/lib_items.dm b/code/modules/library/lib_items.dm index d4904069..e67ce367 100644 --- a/code/modules/library/lib_items.dm +++ b/code/modules/library/lib_items.dm @@ -25,18 +25,18 @@ var/list/allowed_books = list(/obj/item/book, /obj/item/spellbook, /obj/item/storage/book) //Things allowed in the bookcase /obj/structure/bookcase/examine(mob/user) - ..() + . = ..() if(!anchored) - to_chat(user, "The bolts on the bottom are unsecured.") + . += "The bolts on the bottom are unsecured." if(anchored) - to_chat(user, "It's secured in place with bolts.") + . += "It's secured in place with bolts." switch(state) if(0) - to_chat(user, "There's a small crack visible on the back panel.") + . += "There's a small crack visible on the back panel." if(1) - to_chat(user, "There's space inside for a wooden shelf.") + . += "There's space inside for a wooden shelf." if(2) - to_chat(user, "There's a small crack visible on the shelf.") + . += "There's a small crack visible on the shelf." /obj/structure/bookcase/Initialize(mapload) . = ..() diff --git a/code/modules/library/soapstone.dm b/code/modules/library/soapstone.dm index cf872cc8..84edffa4 100644 --- a/code/modules/library/soapstone.dm +++ b/code/modules/library/soapstone.dm @@ -16,7 +16,7 @@ /obj/item/soapstone/examine(mob/user) . = ..() if(remaining_uses != -1) - to_chat(user, "It has [remaining_uses] uses left.") + . += "It has [remaining_uses] uses left." /obj/item/soapstone/afterattack(atom/target, mob/user, proximity) . = ..() @@ -194,7 +194,7 @@ update_icon() /obj/structure/chisel_message/examine(mob/user) - ..() + . = ..() ui_interact(user) /obj/structure/chisel_message/Destroy() diff --git a/code/modules/mining/equipment/kinetic_crusher.dm b/code/modules/mining/equipment/kinetic_crusher.dm index eb70ab82..291db256 100644 --- a/code/modules/mining/equipment/kinetic_crusher.dm +++ b/code/modules/mining/equipment/kinetic_crusher.dm @@ -40,7 +40,7 @@ return ..() /obj/item/twohanded/kinetic_crusher/examine(mob/living/user) - . =..() + . = ..() . += "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) @@ -201,8 +201,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 b2a2e335..f8b155cb 100644 --- a/code/modules/mining/equipment/lazarus_injector.dm +++ b/code/modules/mining/equipment/lazarus_injector.dm @@ -59,8 +59,8 @@ malfunctioning = 1 /obj/item/lazarus_injector/examine(mob/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." diff --git a/code/modules/mining/equipment/marker_beacons.dm b/code/modules/mining/equipment/marker_beacons.dm index c735c9d6..00ce37b7 100644 --- a/code/modules/mining/equipment/marker_beacons.dm +++ b/code/modules/mining/equipment/marker_beacons.dm @@ -36,9 +36,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)]" @@ -93,8 +93,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 9b055519..1b659f47 100644 --- a/code/modules/mining/equipment/survival_pod.dm +++ b/code/modules/mining/equipment/survival_pod.dm @@ -33,8 +33,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 af8860c0..fd366670 100644 --- a/code/modules/mining/fulton.dm +++ b/code/modules/mining/fulton.dm @@ -15,7 +15,7 @@ GLOBAL_LIST_EMPTY(total_extraction_beacons) /obj/item/extraction_pack/examine() . = ..() - usr.show_message("It has [uses_left] use\s remaining.", 1) + . += "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/necropolis_chests.dm b/code/modules/mining/lavaland/necropolis_chests.dm index a25ce336..8790e171 100644 --- a/code/modules/mining/lavaland/necropolis_chests.dm +++ b/code/modules/mining/lavaland/necropolis_chests.dm @@ -664,10 +664,10 @@ total_mass_on = 5 /obj/item/melee/transforming/cleaving_saw/examine(mob/user) - ..() - to_chat(user, "It is [active ? "open, and will cleave enemies in a wide arc":"closed, and can be used for rapid consecutive attacks that cause beastly enemies to bleed"].
\ + . = ..() + . += "It is [active ? "open, and will cleave enemies in a wide arc":"closed, and can be used for rapid consecutive attacks that cause beastly enemies 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/transforming/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!") @@ -1103,8 +1103,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) say("Xverwpsgexmrk...", forced = "hierophant club suicide") diff --git a/code/modules/mining/machine_silo.dm b/code/modules/mining/machine_silo.dm index 8fdc50d2..65cac24d 100644 --- a/code/modules/mining/machine_silo.dm +++ b/code/modules/mining/machine_silo.dm @@ -181,8 +181,8 @@ GLOBAL_LIST_EMPTY(silo_access_logs) flick("silo_active", src) /obj/machinery/ore_silo/examine(mob/user) - ..() - to_chat(user, "[src] can be linked to techfabs, circuit printers and protolathes with a multitool.") + . = ..() + . += "[src] can be linked to techfabs, circuit printers and protolathes with a multitool." /datum/ore_silo_log var/name // for VV diff --git a/code/modules/mining/machine_vending.dm b/code/modules/mining/machine_vending.dm index 3a0d6e87..ca34d560 100644 --- a/code/modules/mining/machine_vending.dm +++ b/code/modules/mining/machine_vending.dm @@ -296,8 +296,8 @@ ..() /obj/item/card/mining_point_card/examine(mob/user) - ..() - to_chat(user, "There's [points] point\s on the card.") + . = ..() + . += "There's [points] point\s on the card." ///Conscript kit /obj/item/card/mining_access_card diff --git a/code/modules/mining/minebot.dm b/code/modules/mining/minebot.dm index 15ff372c..3834ffea 100644 --- a/code/modules/mining/minebot.dm +++ b/code/modules/mining/minebot.dm @@ -68,22 +68,22 @@ check_friendly_fire = 0 /mob/living/simple_animal/hostile/mining_drone/examine(mob/user) - ..() + . = ..() var/t_He = p_they(TRUE) var/t_him = p_them() var/t_s = p_s() if(health < maxHealth) if(health >= maxHealth * 0.5) - to_chat(user, "[t_He] look[t_s] slightly dented.") + . += "[t_He] look[t_s] slightly dented." else - to_chat(user, "[t_He] look[t_s] severely dented!") - to_chat(user, "Using a mining scanner on [t_him] will instruct [t_him] to drop stored ore. [max(0, LAZYLEN(contents) - 1)] Stored Ore\n\ - Field repairs can be done with a welder.") + . += "[t_He] look[t_s] severely dented!" + . += "Using a mining scanner on [t_him] will instruct [t_him] to drop stored ore. [max(0, LAZYLEN(contents) - 1)] Stored Ore\n\ + Field repairs can be done with a welder." if(stored_gun && stored_gun.max_mod_capacity) - to_chat(user, "[stored_gun.get_remaining_mod_capacity()]% mod capacity remaining.") + . += "[stored_gun.get_remaining_mod_capacity()]% mod capacity remaining." for(var/A in stored_gun.get_modkits()) var/obj/item/borg/upgrade/modkit/M = A - to_chat(user, "There is \a [M] installed, using [M.cost]% capacity.") + . += "There is \a [M] installed, using [M.cost]% capacity." /mob/living/simple_animal/hostile/mining_drone/welder_act(mob/living/user, obj/item/I) . = TRUE diff --git a/code/modules/mining/ores_coins.dm b/code/modules/mining/ores_coins.dm index 7028c42a..952b4992 100644 --- a/code/modules/mining/ores_coins.dm +++ b/code/modules/mining/ores_coins.dm @@ -348,9 +348,9 @@ GLOBAL_LIST_INIT(sand_recipes, list(\ pixel_y = rand(0,8)-8 /obj/item/coin/examine(mob/user) - ..() + . = ..() if(value) - to_chat(user, "It's worth [value] credit\s.") + . += "It's worth [value] credit\s." /obj/item/coin/gold name = "gold coin" diff --git a/code/modules/mining/satchel_ore_boxdm.dm b/code/modules/mining/satchel_ore_boxdm.dm index e8775482..ed104d9e 100644 --- a/code/modules/mining/satchel_ore_boxdm.dm +++ b/code/modules/mining/satchel_ore_boxdm.dm @@ -29,7 +29,7 @@ /obj/structure/ore_box/examine(mob/living/user) if(Adjacent(user) && istype(user)) show_contents(user) - . = ..() + return ..() /obj/structure/ore_box/attack_hand(mob/user) . = ..() diff --git a/code/modules/mob/dead/observer/observer.dm b/code/modules/mob/dead/observer/observer.dm index ae1cfc1b..bc4e5a0d 100644 --- a/code/modules/mob/dead/observer/observer.dm +++ b/code/modules/mob/dead/observer/observer.dm @@ -836,9 +836,9 @@ This is the proc mobs get to turn into a ghost. Forked from ghostize due to comp change_mob_type( /mob/living/carbon/human , null, null, TRUE) //always delmob, ghosts shouldn't be left lingering /mob/dead/observer/examine(mob/user) - ..() + . = ..() if(!invisibility) - to_chat(user, "It seems extremely obvious.") + . += "It seems extremely obvious." /mob/dead/observer/proc/set_invisibility(value) invisibility = value diff --git a/code/modules/mob/living/brain/MMI.dm b/code/modules/mob/living/brain/MMI.dm index d84ba0d7..aa3c2090 100644 --- a/code/modules/mob/living/brain/MMI.dm +++ b/code/modules/mob/living/brain/MMI.dm @@ -188,17 +188,17 @@ qdel(src) /obj/item/mmi/examine(mob/user) - ..() + . = ..() if(brainmob) var/mob/living/brain/B = brainmob if(!B.key || !B.mind || B.stat == DEAD) - to_chat(user, "The MMI indicates the brain is completely unresponsive.") + . += "The MMI indicates the brain is completely unresponsive." else if(!B.client) - to_chat(user, "The MMI indicates the brain is currently inactive; it might change.") + . += "The MMI indicates the brain is currently inactive; it might change." else - to_chat(user, "The MMI indicates the brain is active.") + . += "The MMI indicates the brain is active." /obj/item/mmi/relaymove(mob/user) return //so that the MMI won't get a warning about not being able to move if it tries to move diff --git a/code/modules/mob/living/brain/brain_item.dm b/code/modules/mob/living/brain/brain_item.dm index 1b421054..0451cf09 100644 --- a/code/modules/mob/living/brain/brain_item.dm +++ b/code/modules/mob/living/brain/brain_item.dm @@ -157,7 +157,7 @@ -/obj/item/organ/brain/examine(mob/user)//BUG_PROBABLE_CAUSE to_chats changed to . += +/obj/item/organ/brain/examine(mob/user) . = ..() if(user.suiciding) diff --git a/code/modules/mob/living/brain/posibrain.dm b/code/modules/mob/living/brain/posibrain.dm index 9e0bb042..0b5f6f75 100644 --- a/code/modules/mob/living/brain/posibrain.dm +++ b/code/modules/mob/living/brain/posibrain.dm @@ -147,7 +147,7 @@ GLOBAL_VAR(posibrain_notify_cooldown) else msg = "[dead_message]" - to_chat(user, msg) + . += msg /obj/item/mmi/posibrain/Initialize() . = ..() diff --git a/code/modules/mob/living/carbon/alien/special/facehugger.dm b/code/modules/mob/living/carbon/alien/special/facehugger.dm index 15f989b2..fedce4f5 100644 --- a/code/modules/mob/living/carbon/alien/special/facehugger.dm +++ b/code/modules/mob/living/carbon/alien/special/facehugger.dm @@ -71,16 +71,16 @@ Leap(M) /obj/item/clothing/mask/facehugger/examine(mob/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.") + . += "[src] is not moving." if(CONSCIOUS) - to_chat(user, "[src] seems to be active!") + . += "[src] seems to be active!" if (sterile) - to_chat(user, "It looks like the proboscis has been removed.") + . += "It looks like the proboscis has been removed." /obj/item/clothing/mask/facehugger/temperature_expose(datum/gas_mixture/air, exposed_temperature, exposed_volume) diff --git a/code/modules/mob/living/carbon/examine.dm b/code/modules/mob/living/carbon/examine.dm index b36a2b95..bef8895e 100644 --- a/code/modules/mob/living/carbon/examine.dm +++ b/code/modules/mob/living/carbon/examine.dm @@ -6,39 +6,39 @@ var/t_has = p_have() var/t_is = p_are() - var/msg = "*---------*\nThis is [icon2html(src, user)] \a [src]!\n" + . = list("*---------*\nThis is [icon2html(src, user)] \a [src]!") if (handcuffed) - msg += "[t_He] [t_is] [icon2html(handcuffed, user)] handcuffed!\n" + . += "[t_He] [t_is] [icon2html(handcuffed, user)] handcuffed!" if (head) - msg += "[t_He] [t_is] wearing [head.get_examine_string(user)] on [t_his] head. \n" + . += "[t_He] [t_is] wearing [head.get_examine_string(user)] on [t_his] head." if (wear_mask) - msg += "[t_He] [t_is] wearing [wear_mask.get_examine_string(user)] on [t_his] face.\n" + . += "[t_He] [t_is] wearing [wear_mask.get_examine_string(user)] on [t_his] face." if (wear_neck) - msg += "[t_He] [t_is] wearing [wear_neck.get_examine_string(user)] around [t_his] neck.\n" + . += "[t_He] [t_is] wearing [wear_neck.get_examine_string(user)] around [t_his] neck." for(var/obj/item/I in held_items) if(!(I.item_flags & ABSTRACT)) - msg += "[t_He] [t_is] holding [I.get_examine_string(user)] in [t_his] [get_held_index_name(get_held_index_of_item(I))].\n" + . += "[t_He] [t_is] holding [I.get_examine_string(user)] in [t_his] [get_held_index_name(get_held_index_of_item(I))]." if (back) - msg += "[t_He] [t_has] [back.get_examine_string(user)] on [t_his] back.\n" + . += "[t_He] [t_has] [back.get_examine_string(user)] on [t_his] back." var/appears_dead = 0 if (stat == DEAD) appears_dead = 1 if(getorgan(/obj/item/organ/brain)) - msg += "[t_He] [t_is] limp and unresponsive, with no signs of life.\n" + . += "[t_He] [t_is] limp and unresponsive, with no signs of life." else if(get_bodypart(BODY_ZONE_HEAD)) - msg += "It appears that [t_his] brain is missing...\n" + . += "It appears that [t_his] brain is missing..." var/list/missing = get_missing_limbs() for(var/t in missing) if(t==BODY_ZONE_HEAD) - msg += "[t_His] [parse_zone(t)] is missing!\n" + . += "[t_His] [parse_zone(t)] is missing!" continue - msg += "[t_His] [parse_zone(t)] is missing!\n" + . += "[t_His] [parse_zone(t)] is missing!" - msg += "" + var/list/msg = list("") var/temp = getBruteLoss() if(!(user == src && src.hal_screwyhud == SCREWYHUD_HEALTHY)) //fake healthy if(temp) @@ -80,34 +80,34 @@ msg += "" + . += msg.Join("") + if(!appears_dead) if(stat == UNCONSCIOUS) - msg += "[t_He] [t_is]n't responding to anything around [t_him] and seems to be asleep.\n" + . += "[t_He] [t_is]n't responding to anything around [t_him] and seems to be asleep." else if(InCritical()) - msg += "[t_His] breathing is shallow and labored.\n" + . += "[t_His] breathing is shallow and labored." if(digitalcamo) - msg += "[t_He] [t_is] moving [t_his] body in an unnatural and blatantly unsimian manner.\n" + . += "[t_He] [t_is] moving [t_his] body in an unnatural and blatantly unsimian manner." if(combatmode) - msg += "[t_He] [t_is] visibly tense[resting ? "." : ", and [t_is] standing in combative stance."]\n" + . += "[t_He] [t_is] visibly tense[resting ? "." : ", and [t_is] standing in combative stance."]" GET_COMPONENT_FROM(mood, /datum/component/mood, src) if(mood) switch(mood.shown_mood) if(-INFINITY to MOOD_LEVEL_SAD4) - msg += "[t_He] look[p_s()] depressed.\n" + . += "[t_He] look[p_s()] depressed." if(MOOD_LEVEL_SAD4 to MOOD_LEVEL_SAD3) - msg += "[t_He] look[p_s()] very sad.\n" + . += "[t_He] look[p_s()] very sad." if(MOOD_LEVEL_SAD3 to MOOD_LEVEL_SAD2) - msg += "[t_He] look[p_s()] a bit down.\n" + . += "[t_He] look[p_s()] a bit down." if(MOOD_LEVEL_HAPPY2 to MOOD_LEVEL_HAPPY3) - msg += "[t_He] look[p_s()] quite happy.\n" + . += "[t_He] look[p_s()] quite happy." if(MOOD_LEVEL_HAPPY3 to MOOD_LEVEL_HAPPY4) - msg += "[t_He] look[p_s()] very happy.\n" + . += "[t_He] look[p_s()] very happy." if(MOOD_LEVEL_HAPPY4 to INFINITY) - msg += "[t_He] look[p_s()] ecstatic.\n" - SEND_SIGNAL(src, COMSIG_PARENT_EXAMINE, user, msg) - msg += "*---------*" - to_chat(user, msg) - return msg + . += "[t_He] look[p_s()] ecstatic." + SEND_SIGNAL(src, COMSIG_PARENT_EXAMINE, user, .) + . += "*---------*" diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm index 03259bd2..f155ff62 100644 --- a/code/modules/mob/living/carbon/human/examine.dm +++ b/code/modules/mob/living/carbon/human/examine.dm @@ -13,7 +13,7 @@ if(HAS_TRAIT(L, TRAIT_PROSOPAGNOSIA)) obscure_name = TRUE - var/msg = "*---------*\nThis is [!obscure_name ? name : "Unknown"]!\n" + . = list("*---------*\nThis is [!obscure_name ? name : "Unknown"]!") var/list/obscured = check_obscured_slots() var/skipface = (wear_mask && (wear_mask.flags_inv & HIDEFACE)) || (head && (head.flags_inv & HIDEFACE)) @@ -22,11 +22,11 @@ var/mob/living/carbon/human/H = src var/datum/species/pref_species = H.dna.species if(get_visible_name() == "Unknown") // same as flavor text, but hey it works. - msg += "You can't make out what species they are.\n" + . += "You can't make out what species they are." else if(skipface) - msg += "You can't make out what species they are.\n" + . += "You can't make out what species they are." else - msg += "[t_He] [t_is] a [H.dna.custom_species ? H.dna.custom_species : pref_species.name]!\n" + . += "[t_He] [t_is] a [H.dna.custom_species ? H.dna.custom_species : pref_species.name]!" //uniform if(w_uniform && !(SLOT_W_UNIFORM in obscured)) @@ -37,126 +37,117 @@ if(U.attached_accessory) accessory_msg += " with [icon2html(U.attached_accessory, user)] \a [U.attached_accessory]" - msg += "[t_He] [t_is] wearing [w_uniform.get_examine_string(user)][accessory_msg].\n" + . += "[t_He] [t_is] wearing [w_uniform.get_examine_string(user)][accessory_msg]." //head if(head) - msg += "[t_He] [t_is] wearing [head.get_examine_string(user)] on [t_his] head.\n" + . += "[t_He] [t_is] wearing [head.get_examine_string(user)] on [t_his] head." //suit/armor if(wear_suit) - msg += "[t_He] [t_is] wearing [wear_suit.get_examine_string(user)].\n" + . += "[t_He] [t_is] wearing [wear_suit.get_examine_string(user)]." //suit/armor storage if(s_store) - msg += "[t_He] [t_is] carrying [s_store.get_examine_string(user)] on [t_his] [wear_suit.name].\n" + . += "[t_He] [t_is] carrying [s_store.get_examine_string(user)] on [t_his] [wear_suit.name]." //back if(back) - msg += "[t_He] [t_has] [back.get_examine_string(user)] on [t_his] back.\n" + . += "[t_He] [t_has] [back.get_examine_string(user)] on [t_his] back." //Hands for(var/obj/item/I in held_items) if(!(I.item_flags & ABSTRACT)) - msg += "[t_He] [t_is] holding [I.get_examine_string(user)] in [t_his] [get_held_index_name(get_held_index_of_item(I))].\n" + . += "[t_He] [t_is] holding [I.get_examine_string(user)] in [t_his] [get_held_index_name(get_held_index_of_item(I))]." GET_COMPONENT(FR, /datum/component/forensics) //gloves if(gloves && !(SLOT_GLOVES in obscured)) - msg += "[t_He] [t_has] [gloves.get_examine_string(user)] on [t_his] hands.\n" + . += "[t_He] [t_has] [gloves.get_examine_string(user)] on [t_his] hands." else if(FR && length(FR.blood_DNA)) var/hand_number = get_num_arms(FALSE) if(hand_number) - msg += "[t_He] [t_has] [hand_number > 1 ? "" : "a"] blood-stained hand[hand_number > 1 ? "s" : ""]!\n" - - //handcuffed? - + . += "[t_He] [t_has] [hand_number > 1 ? "" : "a"] blood-stained hand[hand_number > 1 ? "s" : ""]!" //handcuffed? if(handcuffed) if(istype(handcuffed, /obj/item/restraints/handcuffs/cable)) - msg += "[t_He] [t_is] [icon2html(handcuffed, user)] restrained with cable!\n" + . += "[t_He] [t_is] [icon2html(handcuffed, user)] restrained with cable!" else - msg += "[t_He] [t_is] [icon2html(handcuffed, user)] handcuffed!\n" + . += "[t_He] [t_is] [icon2html(handcuffed, user)] handcuffed!" //belt if(belt) - msg += "[t_He] [t_has] [belt.get_examine_string(user)] about [t_his] waist.\n" + . += "[t_He] [t_has] [belt.get_examine_string(user)] about [t_his] waist." //shoes if(shoes && !(SLOT_SHOES in obscured)) - msg += "[t_He] [t_is] wearing [shoes.get_examine_string(user)] on [t_his] feet.\n" + . += "[t_He] [t_is] wearing [shoes.get_examine_string(user)] on [t_his] feet." //mask if(wear_mask && !(SLOT_WEAR_MASK in obscured)) - msg += "[t_He] [t_has] [wear_mask.get_examine_string(user)] on [t_his] face.\n" + . += "[t_He] [t_has] [wear_mask.get_examine_string(user)] on [t_his] face." if (wear_neck && !(SLOT_NECK in obscured)) - msg += "[t_He] [t_is] wearing [wear_neck.get_examine_string(user)] around [t_his] neck.\n" + . += "[t_He] [t_is] wearing [wear_neck.get_examine_string(user)] around [t_his] neck." //eyes if(!(SLOT_GLASSES in obscured)) if(glasses) - msg += "[t_He] [t_has] [glasses.get_examine_string(user)] covering [t_his] eyes.\n" + . += "[t_He] [t_has] [glasses.get_examine_string(user)] covering [t_his] eyes." else if(eye_color == BLOODCULT_EYE && iscultist(src) && HAS_TRAIT(src, TRAIT_CULT_EYES)) - msg += "[t_His] eyes are glowing an unnatural red!\n" + . += "[t_His] eyes are glowing an unnatural red!" //ears if(ears && !(SLOT_EARS in obscured)) - msg += "[t_He] [t_has] [ears.get_examine_string(user)] on [t_his] ears.\n" + . += "[t_He] [t_has] [ears.get_examine_string(user)] on [t_his] ears." //ID if(wear_id) - msg += "[t_He] [t_is] wearing [wear_id.get_examine_string(user)].\n" + . += "[t_He] [t_is] wearing [wear_id.get_examine_string(user)]." //Status effects - msg += status_effect_examines() + var/effects_exam = status_effect_examines() + if(!isnull(effects_exam)) + . += effects_exam //Can be picked up? if(can_be_held) - msg += "[t_He] might be able to be picked up with Alt+Click!\n" + . += "[t_He] might be able to be picked up with Alt+Click!\n" //CIT CHANGES START HERE - adds genital details to examine text if(LAZYLEN(internal_organs)) for(var/obj/item/organ/genital/dicc in internal_organs) if(istype(dicc) && dicc.is_exposed()) - msg += "[dicc.desc]\n" + . += "[dicc.desc]" - msg += attempt_vr(src,"examine_bellies",args) //vore Code + var/cursed_stuff = attempt_vr(src,"examine_bellies",args) //vore Code + if(!isnull(cursed_stuff)) + . += cursed_stuff //END OF CIT CHANGES //Jitters switch(jitteriness) if(300 to INFINITY) - msg += "[t_He] [t_is] convulsing violently!\n" + . += "[t_He] [t_is] convulsing violently!" if(200 to 300) - msg += "[t_He] [t_is] extremely jittery.\n" + . += "[t_He] [t_is] extremely jittery." if(100 to 200) - msg += "[t_He] [t_is] twitching ever so slightly.\n" + . += "[t_He] [t_is] twitching ever so slightly." var/appears_dead = 0 if(stat == DEAD || (HAS_TRAIT(src, TRAIT_FAKEDEATH))) appears_dead = 1 if(suiciding) - msg += "[t_He] appear[p_s()] to have committed suicide... there is no hope of recovery.\n" + . += "[t_He] appear[p_s()] to have committed suicide... there is no hope of recovery." if(hellbound) - msg += "[t_His] soul seems to have been ripped out of [t_his] body. Revival is impossible.\n" - msg += "[t_He] [t_is] limp and unresponsive; there are no signs of life" - if(getorgan(/obj/item/organ/brain)) - if(!key) - var/foundghost = 0 - if(mind) - for(var/mob/dead/observer/G in GLOB.player_list) - if(G.mind == mind) - foundghost = 1 - if (G.can_reenter_corpse == 0) - foundghost = 0 - break - if(!foundghost) - msg += " and [t_his] soul has departed" - msg += "...\n" + . += "[t_His] soul seems to have been ripped out of [t_his] body. Revival is impossible." + if(getorgan(/obj/item/organ/brain) && !key && !get_ghost(FALSE, TRUE)) + . += "[t_He] [t_is] limp and unresponsive; there are no signs of life and [t_his] soul has departed..." + else + . += "[t_He] [t_is] limp and unresponsive; there are no signs of life..." if(get_bodypart(BODY_ZONE_HEAD) && !getorgan(/obj/item/organ/brain)) - msg += "It appears that [t_his] brain is missing...\n" + . += "It appears that [t_his] brain is missing..." var/temp = getBruteLoss() //no need to calculate each of these twice - msg += "" + var/list/msg = list() var/list/missing = list(BODY_ZONE_HEAD, BODY_ZONE_CHEST, BODY_ZONE_L_ARM, BODY_ZONE_R_ARM, BODY_ZONE_L_LEG, BODY_ZONE_R_LEG) var/list/disabled = list() @@ -176,8 +167,7 @@ if(!(BP.get_damage(include_stamina = FALSE) >= BP.max_damage)) //Stamina is disabling the limb damage_text = "limp and lifeless" else - var/more_brute = BP.brute_dam >= BP.burn_dam - damage_text = more_brute ? "broken and mangled" : "burnt and blistered" + damage_text = (BP.brute_dam >= BP.burn_dam) ? BP.heavy_brute_msg : BP.heavy_burn_msg msg += "[capitalize(t_his)] [BP.name] is [damage_text]!\n" //stores missing limbs @@ -341,6 +331,9 @@ if(digitalcamo) msg += "[t_He] [t_is] moving [t_his] body in an unnatural and blatantly inhuman manner.\n" + if (length(msg)) + . += "[msg.Join("")]" + var/traitstring = get_trait_string() if(ishuman(user)) var/mob/living/carbon/human/H = user @@ -350,29 +343,25 @@ if(perpname) var/datum/data/record/R = find_record("name", perpname, GLOB.data_core.general) if(R) - msg += "Rank: [R.fields["rank"]]
" - msg += "\[Front photo\] " - msg += "\[Side photo\]
" + . += "Rank: [R.fields["rank"]]\n\[Front photo\]\[Side photo\]" if(istype(H.glasses, /obj/item/clothing/glasses/hud/health) || istype(CIH, /obj/item/organ/cyberimp/eyes/hud/medical)) var/cyberimp_detect for(var/obj/item/organ/cyberimp/CI in internal_organs) if(CI.status == ORGAN_ROBOTIC && !CI.syndicate_implant) - cyberimp_detect += "[name] is modified with a [CI.name].
" + cyberimp_detect += "[name] is modified with a [CI.name]." if(cyberimp_detect) - msg += "Detected cybernetic modifications:
" - msg += cyberimp_detect + . += "Detected cybernetic modifications:" + . += cyberimp_detect if(R) var/health_r = R.fields["p_stat"] - msg += "\[[health_r]\]" + . += "\[[health_r]\]" health_r = R.fields["m_stat"] - msg += "\[[health_r]\]
" + . += "\[[health_r]\]" R = find_record("name", perpname, GLOB.data_core.medical) if(R) - msg += "\[Medical evaluation\]
" + . += "\[Medical evaluation\]" if(traitstring) - msg += "Detected physiological traits:
" - msg += "[traitstring]
" - + . += "Detected physiological traits:\n[traitstring]" if(istype(H.glasses, /obj/item/clothing/glasses/hud/security) || istype(CIH, /obj/item/organ/cyberimp/eyes/hud/security)) @@ -384,26 +373,23 @@ if(R) criminal = R.fields["criminal"] - msg += "Criminal status: \[[criminal]\]\n" - msg += "Security record: \[View\] " - msg += "\[Add crime\] " - msg += "\[View comment log\] " - msg += "\[Add comment\]\n" + . += jointext(list("Criminal status: \[[criminal]\]", + "Security record: \[View\]", + "\[Add crime\]", + "\[View comment log\]", + "\[Add comment\]"), "") else if(isobserver(user) && traitstring) - msg += "Traits: [traitstring]
" + . += "Traits: [traitstring]" if(print_flavor_text()) if(get_visible_name() == "Unknown") //Are we sure we know who this is? Don't show flavor text unless we can recognize them. Prevents certain metagaming with impersonation. - msg += "...?
" + . += "...?" else if(skipface) //Sometimes we're not unknown, but impersonating someone in a hardsuit, let's not reveal our flavor text then either. - msg += "...?
" + . += "...?" else - msg += "[print_flavor_text()]\n" + . += "[print_flavor_text()]" SEND_SIGNAL(src, COMSIG_PARENT_EXAMINE, user, msg) - msg += "*---------*
" - - to_chat(user, msg) - return msg + . += "*---------*
" /mob/living/proc/status_effect_examines(pronoun_replacement) //You can include this in any mob's examine() to show the examine texts of status effects! var/list/dat = list() diff --git a/code/modules/mob/living/silicon/ai/examine.dm b/code/modules/mob/living/silicon/ai/examine.dm index 62f2dbe9..15976394 100644 --- a/code/modules/mob/living/silicon/ai/examine.dm +++ b/code/modules/mob/living/silicon/ai/examine.dm @@ -1,26 +1,24 @@ /mob/living/silicon/ai/examine(mob/user) - var/msg = "*---------*\nThis is [icon2html(src, user)] [src]!\n" + . = list("*---------*\nThis is [icon2html(src, user)] [src]!") if (stat == DEAD) - msg += "It appears to be powered-down.\n" + . += "It appears to be powered-down." else - msg += "" + . += "" if (getBruteLoss()) if (getBruteLoss() < 30) - msg += "It looks slightly dented.\n" + . += "It looks slightly dented." else - msg += "It looks severely dented!\n" + . += "It looks severely dented!" if (getFireLoss()) if (getFireLoss() < 30) - msg += "It looks slightly charred.\n" + . += "It looks slightly charred." else - msg += "Its casing is melted and heat-warped!\n" - msg += "" + . += "Its casing is melted and heat-warped!" + . += "" if(deployed_shell) - msg += "The wireless networking light is blinking.\n" + . += "The wireless networking light is blinking." else if (!shunted && !client) - msg += "[src]Core.exe has stopped responding! NTOS is searching for a solution to the problem...\n" - msg += "*---------*" + . += "[src]Core.exe has stopped responding! NTOS is searching for a solution to the problem..." + . += "*---------*" + . += ..() - to_chat(user, msg) - ..() - return msg \ No newline at end of file diff --git a/code/modules/mob/living/silicon/examine.dm b/code/modules/mob/living/silicon/examine.dm index c26af70d..37107f2d 100644 --- a/code/modules/mob/living/silicon/examine.dm +++ b/code/modules/mob/living/silicon/examine.dm @@ -1,4 +1,6 @@ /mob/living/silicon/examine(mob/user) //Displays a silicon's laws to ghosts + . = ..() if(laws && isobserver(user)) - to_chat(user, "[src] has the following laws:") - laws.show_laws(user) \ No newline at end of file + . += "[src] has the following laws:" + for(var/law in laws.get_law_list(include_zeroth = TRUE)) + . += law \ No newline at end of file diff --git a/code/modules/mob/living/silicon/pai/pai.dm b/code/modules/mob/living/silicon/pai/pai.dm index c298d89c..f4859ab2 100644 --- a/code/modules/mob/living/silicon/pai/pai.dm +++ b/code/modules/mob/living/silicon/pai/pai.dm @@ -268,8 +268,8 @@ return TRUE /mob/living/silicon/pai/examine(mob/user) - ..() - to_chat(user, "A personal AI in holochassis mode. Its master ID string seems to be [master].") + . = ..() + . += "A personal AI in holochassis mode. Its master ID string seems to be [master]." /mob/living/silicon/pai/Life() if(stat == DEAD) diff --git a/code/modules/mob/living/silicon/robot/examine.dm b/code/modules/mob/living/silicon/robot/examine.dm index e12cbba0..c49ee6cc 100644 --- a/code/modules/mob/living/silicon/robot/examine.dm +++ b/code/modules/mob/living/silicon/robot/examine.dm @@ -1,55 +1,52 @@ /mob/living/silicon/robot/examine(mob/user) - var/msg = "*---------*\nThis is [icon2html(src, user)] \a [src]!\n" + . = list("*---------*\nThis is [icon2html(src, user)] \a [src], a [src.module.name] unit!") if(desc) - msg += "[desc]\n" + . += "[desc]" var/obj/act_module = get_active_held_item() if(act_module) - msg += "It is holding [icon2html(act_module, user)] \a [act_module].\n" - msg += status_effect_examines() - msg += "" - if (src.getBruteLoss()) - if (src.getBruteLoss() < maxHealth*0.5) - msg += "It looks slightly dented.\n" + . += "It is holding [icon2html(act_module, user)] \a [act_module]." + var/effects_exam = status_effect_examines() + if(!isnull(effects_exam)) + . += effects_exam + if (getBruteLoss()) + if (getBruteLoss() < maxHealth*0.5) + . += "It looks slightly dented." else - msg += "It looks severely dented!\n" + . += "It looks severely dented!" if (getFireLoss() || getToxLoss()) var/overall_fireloss = getFireLoss() + getToxLoss() if (overall_fireloss < maxHealth * 0.5) - msg += "It looks slightly charred.\n" + . += "It looks slightly charred." else - msg += "It looks severely burnt and heat-warped!\n" - if (src.health < -maxHealth*0.5) - msg += "It looks barely operational.\n" - if (src.fire_stacks < 0) - msg += "It's covered in water.\n" - else if (src.fire_stacks > 0) - msg += "It's coated in something flammable.\n" - msg += "" + . += "It looks slightly charred." + if (health < -maxHealth*0.5) + . += "It looks barely operational." + if (fire_stacks < 0) + . += "It's covered in water." + else if (fire_stacks > 0) + . += "It's coated in something flammable." if(opened) - msg += "Its cover is open and the power cell is [cell ? "installed" : "missing"].\n" + . += "Its cover is open and the power cell is [cell ? "installed" : "missing"]." else - msg += "Its cover is closed[locked ? "" : ", and looks unlocked"].\n" + . += "Its cover is closed[locked ? "" : ", and looks unlocked"]." if(cell && cell.charge <= 0) - msg += "Its battery indicator is blinking red!\n" + . += "Its battery indicator is blinking red!" if(is_servant_of_ratvar(src) && get_dist(user, src) <= 1 && !stat) //To counter pseudo-stealth by using headlamps - msg += "Its eyes are glowing a blazing yellow!\n" + . += "Its eyes are glowing a blazing yellow!" switch(stat) if(CONSCIOUS) if(shell) - msg += "It appears to be an [deployed ? "active" : "empty"] AI shell.\n" + . += "It appears to be an [deployed ? "active" : "empty"] AI shell." else if(!client) - msg += "It appears to be in stand-by mode.\n" //afk + . += "It appears to be in stand-by mode." //afk if(UNCONSCIOUS) - msg += "It doesn't seem to be responding.\n" + . += "It doesn't seem to be responding." if(DEAD) - msg += "It looks like its system is corrupted and requires a reset.\n" - msg += "*---------*" - - to_chat(user, msg) - ..() - return msg + . += "It looks like its system is corrupted and requires a reset." + . += "*---------*" + . += ..() diff --git a/code/modules/mob/living/simple_animal/bot/bot.dm b/code/modules/mob/living/simple_animal/bot/bot.dm index b1095b12..ef4d9aef 100644 --- a/code/modules/mob/living/simple_animal/bot/bot.dm +++ b/code/modules/mob/living/simple_animal/bot/bot.dm @@ -209,14 +209,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, forced = FALSE) 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 ae0592d7..a5223b47 100644 --- a/code/modules/mob/living/simple_animal/constructs.dm +++ b/code/modules/mob/living/simple_animal/constructs.dm @@ -69,18 +69,13 @@ /mob/living/simple_animal/hostile/construct/examine(mob/user) var/t_He = p_they(TRUE) var/t_s = p_s() - var/msg = "*---------*\nThis is [icon2html(src, user)] \a [src]!\n" - msg += "[desc]\n" + . = list("*---------*\nThis is [icon2html(src, user)] \a [src]!\n[desc]") if(health < maxHealth) - msg += "" if(health >= maxHealth/2) - msg += "[t_He] look[t_s] slightly dented.\n" + . += "[t_He] look[t_s] slightly dented." else - msg += "[t_He] look[t_s] severely dented!\n" - msg += "" - msg += "*---------*" - - to_chat(user, msg) + . += "[t_He] look[t_s] severely dented!" + . += "*---------*" /mob/living/simple_animal/hostile/construct/attack_animal(mob/living/simple_animal/M) if(isconstruct(M)) //is it a construct? diff --git a/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm b/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm index c9ac7377..f22e7b1d 100644 --- a/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm +++ b/code/modules/mob/living/simple_animal/friendly/drone/_drone.dm @@ -171,44 +171,43 @@ /mob/living/simple_animal/drone/examine(mob/user) - var/msg = "*---------*\nThis is [icon2html(src, user)] \a [src]!\n" + . = list("*---------*\nThis is [icon2html(src, user)] \a [src]!") //Hands for(var/obj/item/I in held_items) if(!(I.item_flags & ABSTRACT)) - msg += "It has [I.get_examine_string(user)] in its [get_held_index_name(get_held_index_of_item(I))].\n" + . += "It has [I.get_examine_string(user)] in its [get_held_index_name(get_held_index_of_item(I))]." //Internal storage if(internal_storage && !(internal_storage.item_flags & ABSTRACT)) - msg += "It is holding [internal_storage.get_examine_string(user)] in its internal storage.\n" + . += "It is holding [internal_storage.get_examine_string(user)] in its internal storage." //Cosmetic hat - provides no function other than looks if(head && !(head.item_flags & ABSTRACT)) - msg += "It is wearing [head.get_examine_string(user)] on its head.\n" + . += "It is wearing [head.get_examine_string(user)] on its head." //Braindead if(!client && stat != DEAD) - msg += "Its status LED is blinking at a steady rate.\n" + . += "Its status LED is blinking at a steady rate." //Hacked if(hacked) - msg += "Its display is glowing red!\n" + . += "Its display is glowing red!" //Damaged if(health != maxHealth) if(health > maxHealth * 0.33) //Between maxHealth and about a third of maxHealth, between 30 and 10 for normal drones - msg += "Its screws are slightly loose.\n" + . += "Its screws are slightly loose." else //otherwise, below about 33% - msg += "Its screws are very loose!\n" + . += "Its screws are very loose!" //Dead if(stat == DEAD) if(client) - msg += "A message repeatedly flashes on its display: \"REBOOT -- REQUIRED\".\n" + . += "A message repeatedly flashes on its display: \"REBOOT -- REQUIRED\"." else - msg += "A message repeatedly flashes on its display: \"ERROR -- OFFLINE\".\n" - msg += "*---------*" - to_chat(user, msg) + . += "A message repeatedly flashes on its display: \"ERROR -- OFFLINE\"." + . += "*---------*" /mob/living/simple_animal/drone/assess_threat(judgement_criteria, lasercolor = "", datum/callback/weaponcheck=null) //Secbots won't hunt maintenance drones. diff --git a/code/modules/mob/living/simple_animal/guardian/types/dextrous.dm b/code/modules/mob/living/simple_animal/guardian/types/dextrous.dm index a43d4b6d..019bcfd3 100644 --- a/code/modules/mob/living/simple_animal/guardian/types/dextrous.dm +++ b/code/modules/mob/living/simple_animal/guardian/types/dextrous.dm @@ -18,18 +18,16 @@ /mob/living/simple_animal/hostile/guardian/dextrous/examine(mob/user) if(dextrous) - var/msg = "*---------*\nThis is [icon2html(src)] \a [src]!\n" - msg += "[desc]\n" + . = list("*---------*\nThis is [icon2html(src)] \a [src]!\n[desc]") for(var/obj/item/I in held_items) if(!(I.item_flags & ABSTRACT)) - msg += "It has [I.get_examine_string(user)] in its [get_held_index_name(get_held_index_of_item(I))].\n" + . += "It has [I.get_examine_string(user)] in its [get_held_index_name(get_held_index_of_item(I))]." if(internal_storage && !(internal_storage.item_flags & ABSTRACT)) - msg += "It is holding [internal_storage.get_examine_string(user)] in its internal storage.\n" - msg += "*---------*" - to_chat(user, msg) + . += "It is holding [internal_storage.get_examine_string(user)] in its internal storage." + . += "*---------*" else - ..() + return ..() /mob/living/simple_animal/hostile/guardian/dextrous/Recall(forced) if(!summoner || loc == summoner || (cooldown > world.time && !forced)) diff --git a/code/modules/mob/living/simple_animal/guardian/types/explosive.dm b/code/modules/mob/living/simple_animal/guardian/types/explosive.dm index 531c5138..b1af34eb 100644 --- a/code/modules/mob/living/simple_animal/guardian/types/explosive.dm +++ b/code/modules/mob/living/simple_animal/guardian/types/explosive.dm @@ -90,6 +90,6 @@ detonate(user) /obj/guardian_bomb/examine(mob/user) - stored_obj.examine(user) + . = stored_obj.examine(user) if(get_dist(user,src)<=2) - to_chat(user, "It glows with a strange light!") + . += "It glows with a strange light!" diff --git a/code/modules/mob/living/simple_animal/hostile/bees.dm b/code/modules/mob/living/simple_animal/hostile/bees.dm index c7b46e6a..89c4f70f 100644 --- a/code/modules/mob/living/simple_animal/hostile/bees.dm +++ b/code/modules/mob/living/simple_animal/hostile/bees.dm @@ -77,11 +77,9 @@ /mob/living/simple_animal/hostile/poison/bees/examine(mob/user) - ..() - + . = ..() if(!beehome) - to_chat(user, "This bee is homeless!") - + . += "This bee is homeless!" /mob/living/simple_animal/hostile/poison/bees/proc/generate_bee_visuals() cut_overlays() @@ -295,7 +293,7 @@ forceMove(beehome.drop_location()) else ..() - + /mob/living/simple_animal/hostile/poison/bees/short desc = "These bees seem unstable and won't survive for long." diff --git a/code/modules/mob/living/simple_animal/hostile/bosses/paperwizard.dm b/code/modules/mob/living/simple_animal/hostile/bosses/paperwizard.dm index d31af79c..2b5b5236 100644 --- a/code/modules/mob/living/simple_animal/hostile/bosses/paperwizard.dm +++ b/code/modules/mob/living/simple_animal/hostile/bosses/paperwizard.dm @@ -130,7 +130,7 @@ qdel(copy) /mob/living/simple_animal/hostile/boss/paper_wizard/copy/examine(mob/user) - ..() + . = ..() qdel(src) //I see through your ruse! //fancy effects diff --git a/code/modules/mob/living/simple_animal/hostile/illusion.dm b/code/modules/mob/living/simple_animal/hostile/illusion.dm index f78f7f7d..5ee25490 100644 --- a/code/modules/mob/living/simple_animal/hostile/illusion.dm +++ b/code/modules/mob/living/simple_animal/hostile/illusion.dm @@ -44,9 +44,8 @@ /mob/living/simple_animal/hostile/illusion/examine(mob/user) if(parent_mob) - parent_mob.examine(user) - else - return ..() + return parent_mob.examine(user) + return ..() /mob/living/simple_animal/hostile/illusion/AttackingTarget() diff --git a/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm b/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm index b88db1fa..94339b6a 100644 --- a/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm +++ b/code/modules/mob/living/simple_animal/hostile/megafauna/colossus.dm @@ -375,8 +375,8 @@ Difficulty: Very Hard /obj/machinery/anomalous_crystal/examine(mob/user) . = ..() if(isobserver(user)) - to_chat(user, observer_desc) - to_chat(user, "It is activated by [activation_method].") + . += observer_desc + . += "It is activated by [activation_method]." /obj/machinery/anomalous_crystal/Hear(message, atom/movable/speaker, message_langs, raw_message, radio_freq, spans, message_mode) ..() diff --git a/code/modules/mob/living/simple_animal/hostile/mushroom.dm b/code/modules/mob/living/simple_animal/hostile/mushroom.dm index e488d68b..151e28d9 100644 --- a/code/modules/mob/living/simple_animal/hostile/mushroom.dm +++ b/code/modules/mob/living/simple_animal/hostile/mushroom.dm @@ -38,11 +38,11 @@ var/static/mutable_appearance/cap_dead /mob/living/simple_animal/hostile/mushroom/examine(mob/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() ..() diff --git a/code/modules/mob/living/simple_animal/parrot.dm b/code/modules/mob/living/simple_animal/parrot.dm index a588f1ca..487185e1 100644 --- a/code/modules/mob/living/simple_animal/parrot.dm +++ b/code/modules/mob/living/simple_animal/parrot.dm @@ -119,9 +119,9 @@ /mob/living/simple_animal/parrot/examine(mob/user) - ..() + . = ..() if(stat) - to_chat(user, pick("This parrot is no more.", "This is a late parrot.", "This is an ex-parrot.")) + . += pick("This parrot is no more.", "This is a late parrot.", "This is an ex-parrot.") /mob/living/simple_animal/parrot/death(gibbed) if(held_item) diff --git a/code/modules/mob/living/simple_animal/slime/slime.dm b/code/modules/mob/living/simple_animal/slime/slime.dm index 9bc274c2..023af30d 100644 --- a/code/modules/mob/living/simple_animal/slime/slime.dm +++ b/code/modules/mob/living/simple_animal/slime/slime.dm @@ -61,7 +61,7 @@ var/mood = "" // To show its face var/mutator_used = FALSE //So you can't shove a dozen mutators into a single slime var/force_stasis = FALSE - + do_footstep = TRUE var/static/regex/slime_name_regex = new("\\w+ (baby|adult) slime \\(\\d+\\)") @@ -411,37 +411,32 @@ return /mob/living/simple_animal/slime/examine(mob/user) - - var/msg = "*---------*\nThis is [icon2html(src, user)] \a [src]!\n" + . = list("*---------*\nThis is [icon2html(src, user)] \a [src]!") if (src.stat == DEAD) - msg += "It is limp and unresponsive.\n" + . += "It is limp and unresponsive." else if (stat == UNCONSCIOUS) // Slime stasis - msg += "It appears to be alive but unresponsive.\n" - if (src.getBruteLoss()) - msg += "" - if (src.getBruteLoss() < 40) - msg += "It has some punctures in its flesh!" + . += "It appears to be alive but unresponsive." + if (getBruteLoss()) + if (getBruteLoss() < 40) + . += "It has some punctures in its flesh!" else - msg += "It has severe punctures and tears in its flesh!" - msg += "\n" + . += "It has severe punctures and tears in its flesh!" switch(powerlevel) if(2 to 3) - msg += "It is flickering gently with a little electrical activity.\n" + . += "It is flickering gently with a little electrical activity." if(4 to 5) - msg += "It is glowing gently with moderate levels of electrical activity.\n" + . += "It is glowing gently with moderate levels of electrical activity." if(6 to 9) - msg += "It is glowing brightly with high levels of electrical activity.\n" + . += "It is glowing brightly with high levels of electrical activity." if(10) - msg += "It is radiating with massive levels of electrical activity!\n" + . += "It is radiating with massive levels of electrical activity!" - msg += "*---------*" - to_chat(user, msg) - return + . += "*---------*" /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 f8f94d3f..c7ce6577 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -319,9 +319,8 @@ face_atom(A) var/list/result = A.examine(src) - if(result != null) - to_chat(src, result.Join("\n")) - SEND_SIGNAL(src, COMSIG_MOB_EXAMINATE, A) + to_chat(src, result.Join("\n")) + SEND_SIGNAL(src, COMSIG_MOB_EXAMINATE, A) //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 580374c5..daaf8a9e 100644 --- a/code/modules/modular_computers/computers/item/computer.dm +++ b/code/modules/modular_computers/computers/item/computer.dm @@ -187,11 +187,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() cut_overlays() diff --git a/code/modules/modular_computers/computers/item/laptop.dm b/code/modules/modular_computers/computers/item/laptop.dm index 3106a9e5..4d4dee1b 100644 --- a/code/modules/modular_computers/computers/item/laptop.dm +++ b/code/modules/modular_computers/computers/item/laptop.dm @@ -22,9 +22,9 @@ var/slowdown_open = TRUE /obj/item/modular_computer/laptop/examine(mob/user) - ..() + . = ..() if(screen_on) - to_chat(user, "Alt-click to close it.") + . += "Alt-click to close it." /obj/item/modular_computer/laptop/Initialize() . = ..() diff --git a/code/modules/modular_computers/computers/machinery/console_presets.dm b/code/modules/modular_computers/computers/machinery/console_presets.dm index 8b70fd24..f83442b1 100644 --- a/code/modules/modular_computers/computers/machinery/console_presets.dm +++ b/code/modules/modular_computers/computers/machinery/console_presets.dm @@ -47,8 +47,8 @@ _has_ai = TRUE /obj/machinery/modular_computer/console/preset/research/examine(mob/user) - ..() - to_chat(user, "Alt-click to eject the intelliCard.") + . = ..() + . += "Alt-click to eject the intelliCard." /obj/machinery/modular_computer/console/preset/research/install_programs() var/obj/item/computer_hardware/hard_drive/hard_drive = cpu.all_components[MC_HDD] @@ -67,8 +67,8 @@ _has_printer = TRUE /obj/machinery/modular_computer/console/preset/command/examine(mob/user) - ..() - to_chat(user, "Alt-click [src] to eject the identification card.") + . = ..() + . += "Alt-click [src] to eject the identification card." /obj/machinery/modular_computer/console/preset/command/install_programs() var/obj/item/computer_hardware/hard_drive/hard_drive = cpu.all_components[MC_HDD] diff --git a/code/modules/modular_computers/hardware/_hardware.dm b/code/modules/modular_computers/hardware/_hardware.dm index 56efec37..744db157 100644 --- a/code/modules/modular_computers/hardware/_hardware.dm +++ b/code/modules/modular_computers/hardware/_hardware.dm @@ -76,11 +76,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 5dee1225..47cbbff4 100644 --- a/code/modules/modular_computers/hardware/ai_slot.dm +++ b/code/modules/modular_computers/hardware/ai_slot.dm @@ -11,9 +11,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 3952ac1a..7eef8eb1 100644 --- a/code/modules/modular_computers/hardware/card_slot.dm +++ b/code/modules/modular_computers/hardware/card_slot.dm @@ -106,6 +106,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 1e3c5173..4109b2c3 100644 --- a/code/modules/modular_computers/hardware/hard_drive.dm +++ b/code/modules/modular_computers/hardware/hard_drive.dm @@ -19,8 +19,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) ..() @@ -121,7 +121,7 @@ return ..() /obj/item/computer_hardware/hard_drive/Initialize() - . = ..() + . = ..() install_default_programs() diff --git a/code/modules/modular_computers/hardware/printer.dm b/code/modules/modular_computers/hardware/printer.dm index b000c353..44383822 100644 --- a/code/modules/modular_computers/hardware/printer.dm +++ b/code/modules/modular_computers/hardware/printer.dm @@ -13,8 +13,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/ninja/suit/gloves.dm b/code/modules/ninja/suit/gloves.dm index 276de652..e819fe55 100644 --- a/code/modules/ninja/suit/gloves.dm +++ b/code/modules/ninja/suit/gloves.dm @@ -78,6 +78,6 @@ candrain=!candrain /obj/item/clothing/gloves/space_ninja/examine(mob/user) - ..() + . = ..() if(HAS_TRAIT_FROM(src, TRAIT_NODROP, NINJA_SUIT_TRAIT)) - to_chat(user, "The energy drain mechanism is [candrain?"active":"inactive"].") + . += "The energy drain mechanism is [candrain?"active":"inactive"]." diff --git a/code/modules/ninja/suit/suit.dm b/code/modules/ninja/suit/suit.dm index ac1ef3b9..4976533a 100644 --- a/code/modules/ninja/suit/suit.dm +++ b/code/modules/ninja/suit/suit.dm @@ -148,12 +148,12 @@ Contents: /obj/item/clothing/suit/space/space_ninja/examine(mob/user) - ..() + . = ..() if(s_initialized && user == affecting) - to_chat(user, "All systems operational. Current energy capacity: [DisplayEnergy(cell.charge)].\n\ + . += "All systems operational. Current energy capacity: [DisplayEnergy(cell.charge)].\n\ The CLOAK-tech device is [stealth?"active":"inactive"].\n\ There are [s_bombs] smoke bomb\s remaining.\n\ - There are [a_boost] adrenaline booster\s remaining.") + There are [a_boost] adrenaline booster\s remaining." /obj/item/clothing/suit/space/space_ninja/ui_action_click(mob/user, action) if(istype(action, /datum/action/item_action/initialize_ninja_suit)) diff --git a/code/modules/paperwork/paper.dm b/code/modules/paperwork/paper.dm index 37877ffb..5da735d0 100644 --- a/code/modules/paperwork/paper.dm +++ b/code/modules/paperwork/paper.dm @@ -63,8 +63,8 @@ /obj/item/paper/examine(mob/user) - ..() - to_chat(user, "Alt-click to fold it.") + . = ..() + . += "Alt-click to fold it." var/datum/asset/assets = get_asset_datum(/datum/asset/spritesheet/simple/paper) assets.send(user) @@ -77,7 +77,7 @@ user << browse("[name][stars(info)]
[stamps]", "window=[name]") onclose(user, "[name]") else - to_chat(user, "You're too far away to read it!") + . += "You're too far away to read it!" /obj/item/paper/verb/rename() diff --git a/code/modules/paperwork/paperbin.dm b/code/modules/paperwork/paperbin.dm index 59c84b8c..088f695b 100644 --- a/code/modules/paperwork/paperbin.dm +++ b/code/modules/paperwork/paperbin.dm @@ -116,11 +116,11 @@ return ..() /obj/item/paper_bin/examine(mob/user) - ..() + . = ..() if(total_paper) - to_chat(user, "It contains " + (total_paper > 1 ? "[total_paper] papers" : " one paper")+".") + . += "It contains [total_paper > 1 ? "[total_paper] papers" : " one paper"]." else - to_chat(user, "It doesn't contain anything.") + . += "It doesn't contain anything." /obj/item/paper_bin/update_icon() diff --git a/code/modules/paperwork/paperplane.dm b/code/modules/paperwork/paperplane.dm index 40920cc1..849e8621 100644 --- a/code/modules/paperwork/paperplane.dm +++ b/code/modules/paperwork/paperplane.dm @@ -118,8 +118,8 @@ H.emote("scream") /obj/item/paper/examine(mob/user) - ..() - to_chat(user, "Alt-click [src] to fold it into a paper plane.") + . = ..() + . += "Alt-click [src] to fold it into a paper plane." /obj/item/paper/AltClick(mob/living/carbon/user, obj/item/I) if(!istype(user) || !user.canUseTopic(src, BE_CLOSE, ismonkey(user), NO_TK)) diff --git a/code/modules/photography/camera/camera.dm b/code/modules/photography/camera/camera.dm index 2b031fed..03d702cf 100644 --- a/code/modules/photography/camera/camera.dm +++ b/code/modules/photography/camera/camera.dm @@ -43,7 +43,7 @@ /obj/item/camera/examine(mob/user) . = ..() - to_chat(user, "Alt-click to change its focusing, allowing you to set how big of an area it will capture.") + . += "Alt-click to change its focusing, allowing you to set how big of an area it will capture." /obj/item/camera/AltClick(mob/user) if(!user.canUseTopic(src, BE_CLOSE)) @@ -81,8 +81,8 @@ ..() /obj/item/camera/examine(mob/user) - ..() - to_chat(user, "It has [pictures_left] photos left.") + . = ..() + . += "It has [pictures_left] photos left." //user can be atom or mob /obj/item/camera/proc/can_target(atom/target, mob/user, prox_flag) @@ -211,4 +211,4 @@ picture.caption = caption p.set_picture(picture, TRUE, TRUE) if(CONFIG_GET(flag/picture_logging_camera)) - picture.log_to_file() \ No newline at end of file + picture.log_to_file() diff --git a/code/modules/photography/photos/frame.dm b/code/modules/photography/photos/frame.dm index 081c6240..b7f3066a 100644 --- a/code/modules/photography/photos/frame.dm +++ b/code/modules/photography/photos/frame.dm @@ -40,8 +40,8 @@ /obj/item/wallframe/picture/examine(mob/user) if(user.is_holding(src) && displayed) displayed.show(user) - else - ..() + return list() + return ..() /obj/item/wallframe/picture/update_icon() cut_overlays() diff --git a/code/modules/photography/photos/photo.dm b/code/modules/photography/photos/photo.dm index b6a3f537..a061a270 100644 --- a/code/modules/photography/photos/photo.dm +++ b/code/modules/photography/photos/photo.dm @@ -62,12 +62,12 @@ ..() /obj/item/photo/examine(mob/user) - ..() + . = ..() if(in_range(src, user)) show(user) else - to_chat(user, "You need to get closer to get a good look at this photo!") + . += "You need to get closer to get a good look at this photo!" /obj/item/photo/proc/show(mob/user) if(!istype(picture) || !picture.picture_image) diff --git a/code/modules/power/apc.dm b/code/modules/power/apc.dm index 75b7fe51..ad59211f 100644 --- a/code/modules/power/apc.dm +++ b/code/modules/power/apc.dm @@ -243,33 +243,33 @@ addtimer(CALLBACK(src, .proc/update), 5) /obj/machinery/power/apc/examine(mob/user) - ..() + . = ..() if(stat & BROKEN) return if(opened) if(has_electronics && terminal) - to_chat(user, "The cover is [opened==APC_COVER_REMOVED?"removed":"open"] and the power cell is [ cell ? "installed" : "missing"].") + . += "The cover is [opened==APC_COVER_REMOVED?"removed":"open"] and the power cell is [ cell ? "installed" : "missing"]." else - to_chat(user, "It's [ !terminal ? "not" : "" ] wired up.") - to_chat(user, "The electronics are[!has_electronics?"n't":""] installed.") + . += "It's [ !terminal ? "not" : "" ] wired up." + . += "The electronics are[!has_electronics?"n't":""] installed." if(user.Adjacent(src) && integration_cog) - to_chat(user, "[src]'s innards have been replaced by strange brass machinery!") + . += "[src]'s innards have been replaced by strange brass machinery!" else if (stat & MAINT) - to_chat(user, "The cover is closed. Something is wrong with it. It doesn't work.") + . += "The cover is closed. Something is 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." if(integration_cog && is_servant_of_ratvar(user)) - to_chat(user, "There is an integration cog installed!") + . += "There is an integration cog installed!" - to_chat(user, "Alt-Click the APC to [ locked ? "unlock" : "lock"] the interface.") + . += "Alt-Click the APC to [ locked ? "unlock" : "lock"] the interface." if(issilicon(user)) - to_chat(user, "Ctrl-Click the APC to switch the breaker [ operating ? "off" : "on"].") + . += "Ctrl-Click the APC to switch the breaker [ operating ? "off" : "on"]." // update the APC icon to show the three base states // also add overlays for indicator lights diff --git a/code/modules/power/cell.dm b/code/modules/power/cell.dm index f30bafcd..e87adf58 100644 --- a/code/modules/power/cell.dm +++ b/code/modules/power/cell.dm @@ -93,11 +93,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(src.percent() )]%.") + . += "The charge meter reads [round(src.percent() )]%." /obj/item/stock_parts/cell/suicide_act(mob/user) user.visible_message("[user] is licking the electrodes of [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 f995993e..d4b3cbad 100644 --- a/code/modules/power/lighting.dm +++ b/code/modules/power/lighting.dm @@ -66,22 +66,21 @@ return cell /obj/structure/light_construct/examine(mob/user) - ..() + . = ..() switch(src.stage) if(1) - to_chat(user, "It's an empty frame.") + . += "It's an empty frame." if(2) - to_chat(user, "It's wired.") + . += "It's wired." if(3) - to_chat(user, "The casing is closed.") + . += "The casing is closed." if(cell_connectors) if(cell) - to_chat(user, "You see [cell] inside the casing.") + . += "You see [cell] inside the casing." else - to_chat(user, "The casing has no power cell for backup power.") + . += "The casing has no power cell for backup power." else - to_chat(user, "This casing doesn't support power cells for backup power.") - return + . += "This casing doesn't support power cells for backup power." /obj/structure/light_construct/attackby(obj/item/W, mob/user, params) add_fingerprint(user) @@ -394,18 +393,18 @@ // examine verb /obj/machinery/light/examine(mob/user) - ..() + . = ..() switch(status) if(LIGHT_OK) - to_chat(user, "It is turned [on? "on" : "off"].") + . += "It is turned [on? "on" : "off"]." if(LIGHT_EMPTY) - to_chat(user, "The [fitting] has been removed.") + . += "The [fitting] has been removed." if(LIGHT_BURNED) - to_chat(user, "The [fitting] is burnt out.") + . += "The [fitting] is burnt out." if(LIGHT_BROKEN) - to_chat(user, "The [fitting] has been smashed.") + . += "The [fitting] has been smashed." if(cell) - to_chat(user, "Its backup power charge meter reads [round((cell.charge / cell.maxcharge) * 100, 0.1)]%.") + . += "Its backup power charge meter reads [round((cell.charge / cell.maxcharge) * 100, 0.1)]%." diff --git a/code/modules/power/monitor.dm b/code/modules/power/monitor.dm index c0efe594..6b0ab6cb 100644 --- a/code/modules/power/monitor.dm +++ b/code/modules/power/monitor.dm @@ -27,8 +27,8 @@ is_secret_monitor = TRUE /obj/machinery/computer/monitor/secret/examine(mob/user) - ..() - to_chat(user, "It's operating system seems quite outdated... It doesn't seem like it'd be compatible with the latest remote NTOS monitoring systems.") + . = ..() + . += "It's operating system seems quite outdated... It doesn't seem like it'd be compatible with the latest remote NTOS monitoring systems." /obj/machinery/computer/monitor/Initialize() . = ..() diff --git a/code/modules/power/port_gen.dm b/code/modules/power/port_gen.dm index 5d4a31e9..d11acd02 100644 --- a/code/modules/power/port_gen.dm +++ b/code/modules/power/port_gen.dm @@ -56,8 +56,8 @@ soundloop.stop() /obj/machinery/power/port_gen/examine(mob/user) - ..() - to_chat(user, "It is[!active?"n't":""] running.") + . = ..() + . += "It is[!active?"n't":""] running." /obj/machinery/power/port_gen/pacman name = "\improper P.A.C.M.A.N.-type portable generator" @@ -99,10 +99,10 @@ consumption = consumption_coeff /obj/machinery/power/port_gen/pacman/examine(mob/user) - ..() - to_chat(user, "The generator has [sheets] units of [sheet_name] fuel left, producing [power_gen] per cycle.") + . = ..() + . += "The generator has [sheets] units of [sheet_name] fuel left, producing [power_gen] per cycle." if(crit_fail) - to_chat(user, "The generator seems to have broken down.") + . += "The generator seems to have broken down." /obj/machinery/power/port_gen/pacman/HasFuel() if(sheets >= 1 / (time_per_sheet / power_output) - sheet_left) diff --git a/code/modules/power/singularity/collector.dm b/code/modules/power/singularity/collector.dm index 07a5ce95..021b5fea 100644 --- a/code/modules/power/singularity/collector.dm +++ b/code/modules/power/singularity/collector.dm @@ -170,14 +170,14 @@ . = ..() if(active) if(!bitcoinmining) - to_chat(user, "[src]'s display states that it has stored [DisplayPower(stored_power)], and processing [DisplayPower(RAD_COLLECTOR_OUTPUT)].") + . += "[src]'s display states that it has stored [DisplayPower(stored_power)], and is processing [DisplayPower((RAD_COLLECTOR_OUTPUT)*((60 SECONDS)/SSmachines.wait))] per minute.
The plasma within it's tank is being irradiated into tritium.
" else - to_chat(user, "[src]'s display states that it has stored a total of [stored_power*RAD_COLLECTOR_MINING_CONVERSION_RATE], and producing [RAD_COLLECTOR_OUTPUT*RAD_COLLECTOR_MINING_CONVERSION_RATE] research points per minute.") + . += "[src]'s display states that it's producing a total of [(stored_power*RAD_COLLECTOR_MINING_CONVERSION_RATE)*((60 SECONDS)/SSmachines.wait)] research points per minute.
The tritium and oxygen within it's tank is being combusted into carbon dioxide.
" else if(!bitcoinmining) - to_chat(user,"[src]'s display displays the words: \"Power production mode. Please insert Plasma. Use a multitool to change production modes.\"") + . += "[src]'s display displays the words: \"Power production mode. Please insert Plasma. Use a multitool to change production modes.\"" else - to_chat(user,"[src]'s display displays the words: \"Research point production mode. Please insert Tritium and Oxygen. Use a multitool to change production modes.\"") + . += "[src]'s display displays the words: \"Research point production mode. Please insert Tritium and Oxygen. Use a multitool to change production modes.\"" /obj/machinery/power/rad_collector/obj_break(damage_flag) if(!(stat & BROKEN) && !(flags_1 & NODECONSTRUCT_1)) diff --git a/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm b/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm index ac2f2647..09fb3ad4 100644 --- a/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm +++ b/code/modules/power/singularity/particle_accelerator/particle_accelerator.dm @@ -36,15 +36,14 @@ var/strength = null /obj/structure/particle_accelerator/examine(mob/user) - ..() - + . = ..() switch(construction_state) if(PA_CONSTRUCTION_UNSECURED) - to_chat(user, "Looks like it's not attached to the flooring.") + . += "Looks like it's not attached to the flooring." if(PA_CONSTRUCTION_UNWIRED) - to_chat(user, "It is missing some cables.") + . += "It is missing some cables." if(PA_CONSTRUCTION_PANEL_OPEN) - to_chat(user, "The panel is open.") + . += "The panel is open." /obj/structure/particle_accelerator/Destroy() construction_state = PA_CONSTRUCTION_UNSECURED diff --git a/code/modules/power/singularity/particle_accelerator/particle_control.dm b/code/modules/power/singularity/particle_accelerator/particle_control.dm index 3748d8c7..73e09050 100644 --- a/code/modules/power/singularity/particle_accelerator/particle_control.dm +++ b/code/modules/power/singularity/particle_accelerator/particle_control.dm @@ -257,15 +257,14 @@ popup.open() /obj/machinery/particle_accelerator/control_box/examine(mob/user) - ..() + . = ..() switch(construction_state) if(PA_CONSTRUCTION_UNSECURED) - to_chat(user, "Looks like it's not attached to the flooring.") + . += "Looks like it's not attached to the flooring." if(PA_CONSTRUCTION_UNWIRED) - to_chat(user, "It is missing some cables.") + . += "It is missing some cables." if(PA_CONSTRUCTION_PANEL_OPEN) - to_chat(user, "The panel is open.") - + . += "The panel is open." /obj/machinery/particle_accelerator/control_box/attackby(obj/item/W, mob/user, params) var/did_something = FALSE diff --git a/code/modules/power/smes.dm b/code/modules/power/smes.dm index 3637bf38..774f7ba1 100644 --- a/code/modules/power/smes.dm +++ b/code/modules/power/smes.dm @@ -39,9 +39,9 @@ var/obj/machinery/power/terminal/terminal = null /obj/machinery/power/smes/examine(user) - ..() + . = ..() if(!terminal) - to_chat(user, "This SMES has no power terminal!") + . += "This SMES has no power terminal!" /obj/machinery/power/smes/Initialize() . = ..() diff --git a/code/modules/power/supermatter/supermatter.dm b/code/modules/power/supermatter/supermatter.dm index 31dda76e..4b983131 100644 --- a/code/modules/power/supermatter/supermatter.dm +++ b/code/modules/power/supermatter/supermatter.dm @@ -187,17 +187,11 @@ GLOBAL_DATUM(main_supermatter_engine, /obj/machinery/power/supermatter_crystal) return ..() /obj/machinery/power/supermatter_crystal/examine(mob/user) - ..() - if(!ishuman(user)) - return - - var/range = HALLUCINATION_RANGE(power) - for(var/mob/living/carbon/human/H in viewers(range, src)) - if(H != user) - continue - if(!istype(H.glasses, /obj/item/clothing/glasses/meson)) - to_chat(H, "You get headaches just from looking at it.") - return + . = ..() + if (iscarbon(user)) + var/mob/living/carbon/C = user + if (!istype(C.glasses, /obj/item/clothing/glasses/meson) && (get_dist(user, src) < HALLUCINATION_RANGE(power))) + . += "You get headaches just from looking at it." /obj/machinery/power/supermatter_crystal/proc/get_status() var/turf/T = get_turf(src) diff --git a/code/modules/power/tesla/energy_ball.dm b/code/modules/power/tesla/energy_ball.dm index bbad3e08..5ddbbc42 100644 --- a/code/modules/power/tesla/energy_ball.dm +++ b/code/modules/power/tesla/energy_ball.dm @@ -71,9 +71,9 @@ 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].") + . += "The amount of orbiting mini-balls is [orbiting_balls.len]." /obj/singularity/energy_ball/proc/move_the_basket_ball(var/move_amount) diff --git a/code/modules/projectiles/gun.dm b/code/modules/projectiles/gun.dm index b0f9a7b4..9d670a91 100644 --- a/code/modules/projectiles/gun.dm +++ b/code/modules/projectiles/gun.dm @@ -83,11 +83,11 @@ qdel(src) /obj/item/gun/examine(mob/user) - ..() + . = ..() if(pin) - to_chat(user, "It has \a [pin] installed.") + . += "It has \a [pin] installed." else - to_chat(user, "It doesn't have a firing pin installed, and won't fire.") + . += "It doesn't have a firing pin installed, and won't fire." /obj/item/gun/equipped(mob/living/user, slot) . = ..() diff --git a/code/modules/projectiles/guns/ballistic.dm b/code/modules/projectiles/guns/ballistic.dm index 1117bc10..31f6b3dd 100644 --- a/code/modules/projectiles/guns/ballistic.dm +++ b/code/modules/projectiles/guns/ballistic.dm @@ -140,8 +140,8 @@ /obj/item/gun/ballistic/examine(mob/user) - ..() - to_chat(user, "It has [get_ammo()] round\s remaining.") + . = ..() + . += "It has [get_ammo()] round\s remaining." /obj/item/gun/ballistic/proc/get_ammo(countchambered = 1) var/boolets = 0 //mature var names for mature people diff --git a/code/modules/projectiles/guns/ballistic/automatic.dm b/code/modules/projectiles/guns/ballistic/automatic.dm index c307a8db..7ac4c8cd 100644 --- a/code/modules/projectiles/guns/ballistic/automatic.dm +++ b/code/modules/projectiles/guns/ballistic/automatic.dm @@ -320,9 +320,9 @@ pin = /obj/item/firing_pin /obj/item/gun/ballistic/automatic/l6_saw/examine(mob/user) - ..() + . = ..() if(cover_open && magazine) - to_chat(user, "It seems like you could use an empty hand to remove the magazine.") + . += "It seems like you could use an empty hand to remove the magazine." /obj/item/gun/ballistic/automatic/l6_saw/attack_self(mob/user) cover_open = !cover_open diff --git a/code/modules/projectiles/guns/ballistic/revolver.dm b/code/modules/projectiles/guns/ballistic/revolver.dm index f455e0f1..3c0d2800 100644 --- a/code/modules/projectiles/guns/ballistic/revolver.dm +++ b/code/modules/projectiles/guns/ballistic/revolver.dm @@ -81,8 +81,8 @@ return boolets /obj/item/gun/ballistic/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/ballistic/revolver/detective name = "\improper .38 Mars Special" diff --git a/code/modules/projectiles/guns/ballistic/shotgun.dm b/code/modules/projectiles/guns/ballistic/shotgun.dm index 43295baf..ff51adfa 100644 --- a/code/modules/projectiles/guns/ballistic/shotgun.dm +++ b/code/modules/projectiles/guns/ballistic/shotgun.dm @@ -72,9 +72,9 @@ chambered = AC /obj/item/gun/ballistic/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/ballistic/shotgun/lethal mag_type = /obj/item/ammo_box/magazine/internal/shot/lethal @@ -139,8 +139,8 @@ . = ..() /obj/item/gun/ballistic/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/ballistic/shotgun/boltaction/enchanted name = "enchanted bolt action rifle" @@ -228,8 +228,8 @@ . = ..() /obj/item/gun/ballistic/shotgun/automatic/combat/compact/examine(mob/user) - ..() - to_chat(user, "Alt-click to toggle the stock.") + . = ..() + . += "Alt-click to toggle the stock." /obj/item/gun/ballistic/shotgun/automatic/combat/compact/proc/toggle_stock(mob/living/user) stock = !stock @@ -260,9 +260,8 @@ var/obj/item/ammo_box/magazine/internal/shot/alternate_magazine /obj/item/gun/ballistic/shotgun/automatic/dual_tube/examine(mob/user) - ..() - to_chat(user, "Alt-click to pump it.") . = ..() + . += "Alt-click to pump it." /obj/item/gun/ballistic/shotgun/automatic/dual_tube/Initialize() . = ..() diff --git a/code/modules/projectiles/guns/energy/kinetic_accelerator.dm b/code/modules/projectiles/guns/energy/kinetic_accelerator.dm index a4ec979a..6dd37062 100644 --- a/code/modules/projectiles/guns/energy/kinetic_accelerator.dm +++ b/code/modules/projectiles/guns/energy/kinetic_accelerator.dm @@ -61,12 +61,12 @@ cut_overlays() /obj/item/gun/energy/kinetic_accelerator/examine(mob/user) - ..() + . = ..() 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] installed, using [M.cost]% capacity.") + . += "There is \a [M] installed, using [M.cost]% capacity." /obj/item/gun/energy/kinetic_accelerator/crowbar_act(mob/living/user, obj/item/I) . = TRUE @@ -270,8 +270,8 @@ var/minebot_exclusive = FALSE /obj/item/borg/upgrade/modkit/examine(mob/user) - ..() - to_chat(user, "Occupies [cost]% of mod capacity.") + . = ..() + . += "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 eabdf50e..eeb272f8 100644 --- a/code/modules/projectiles/guns/energy/special.dm +++ b/code/modules/projectiles/guns/energy/special.dm @@ -135,9 +135,9 @@ AddComponent(/datum/component/butchering, 25, 105, 0, 'sound/weapons/plasma_cutter.ogg') /obj/item/gun/energy/plasmacutter/examine(mob/user) - ..() + . = ..() if(cell) - to_chat(user, "[src] is [round(cell.percent())]% charged.") + . += "[src] is [round(cell.percent())]% charged." /obj/item/gun/energy/plasmacutter/attackby(obj/item/I, mob/user) if(istype(I, /obj/item/stack/sheet/mineral/plasma)) diff --git a/code/modules/projectiles/guns/magic/wand.dm b/code/modules/projectiles/guns/magic/wand.dm index 465b8b64..d5815205 100644 --- a/code/modules/projectiles/guns/magic/wand.dm +++ b/code/modules/projectiles/guns/magic/wand.dm @@ -18,8 +18,8 @@ return ..() /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/misc/grenade_launcher.dm b/code/modules/projectiles/guns/misc/grenade_launcher.dm index 28a78be3..5a8c5a06 100644 --- a/code/modules/projectiles/guns/misc/grenade_launcher.dm +++ b/code/modules/projectiles/guns/misc/grenade_launcher.dm @@ -13,8 +13,8 @@ materials = list(MAT_METAL=2000) /obj/item/gun/grenadelauncher/examine(mob/user) - ..() - to_chat(user, "[grenades.len] / [max_grenades] grenades loaded.") + . = ..() + . += "[grenades.len] / [max_grenades] grenades loaded." /obj/item/gun/grenadelauncher/attackby(obj/item/I, mob/user, params) diff --git a/code/modules/projectiles/guns/misc/syringe_gun.dm b/code/modules/projectiles/guns/misc/syringe_gun.dm index 3e4b800b..15290c3a 100644 --- a/code/modules/projectiles/guns/misc/syringe_gun.dm +++ b/code/modules/projectiles/guns/misc/syringe_gun.dm @@ -30,8 +30,8 @@ recharge_newshot() /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) if(!syringes.len) diff --git a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm index b34ceb50..772fff94 100644 --- a/code/modules/reagents/chemistry/machinery/chem_dispenser.dm +++ b/code/modules/reagents/chemistry/machinery/chem_dispenser.dm @@ -88,20 +88,21 @@ 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 [(powerefficiency*1000)-100]%.") + . += "The status display reads:
Recharging [recharge_amount] power units per interval.
Power efficiency increased by [(powerefficiency*1000)-100]%." switch(macrotier) if(1) - to_chat(user, "Macro granularity at 5u.") + . += "Macro granularity at 5u." if(2) - to_chat(user, "Macro granularity at 3u.") + . += "Macro granularity at 3u." if(3) - to_chat(user, "Macro granularity at 2u.") + . += "Macro granularity at 2u." if(4) - to_chat(user, "Macro granularity at 1u.") + . += "Macro granularity at 1u." + /obj/machinery/chem_dispenser/process() if (recharge_counter >= 4) if(!is_operational()) diff --git a/code/modules/reagents/chemistry/machinery/reagentgrinder.dm b/code/modules/reagents/chemistry/machinery/reagentgrinder.dm index 1847f1f7..98cfd877 100644 --- a/code/modules/reagents/chemistry/machinery/reagentgrinder.dm +++ b/code/modules/reagents/chemistry/machinery/reagentgrinder.dm @@ -191,27 +191,27 @@ /obj/machinery/reagentgrinder/examine(mob/user) . = ..() if(!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(operating) - to_chat(user, "\The [src] is operating.") + . += "\The [src] is operating." return if(beaker || length(holdingitems)) - to_chat(user, "\The [src] contains:") + . += "\The [src] contains:" if(beaker) - to_chat(user, "- \A [beaker].") + . += "- \A [beaker]." for(var/i in holdingitems) var/obj/item/O = i - to_chat(user, "- \A [O.name].") + . += "- \A [O.name]." if(!(stat & (NOPOWER|BROKEN))) - to_chat(user, "The status display reads:") - to_chat(user, "- Grinding reagents at [speed*100]%.") + . += "The status display reads:" + . += "- Grinding reagents at [speed*100]%." if(beaker) for(var/datum/reagent/R in beaker.reagents.reagent_list) - to_chat(user, "- [R.volume] units of [R.name].") + . += "- [R.volume] units of [R.name]." /obj/machinery/reagentgrinder/proc/eject(mob/user) for(var/i in holdingitems) diff --git a/code/modules/reagents/chemistry/recipes/special.dm b/code/modules/reagents/chemistry/recipes/special.dm index 89380399..9dda7256 100644 --- a/code/modules/reagents/chemistry/recipes/special.dm +++ b/code/modules/reagents/chemistry/recipes/special.dm @@ -173,7 +173,7 @@ GLOBAL_LIST_INIT(food_reagents, build_reagents_to_food()) //reagentid = related /obj/item/paper/secretrecipe/examine(mob/user) //Extra secret if(isobserver(user)) - return + return list() . = ..() /obj/item/paper/secretrecipe/Initialize() diff --git a/code/modules/reagents/reagent_containers/borghydro.dm b/code/modules/reagents/reagent_containers/borghydro.dm index 828a4be6..cca05d66 100644 --- a/code/modules/reagents/reagent_containers/borghydro.dm +++ b/code/modules/reagents/reagent_containers/borghydro.dm @@ -124,9 +124,8 @@ Borg Hypospray return /obj/item/reagent_containers/borghypo/examine(mob/user) - usr = user - ..() - DescribeContents() //Because using the standardized reagents datum was just too cool for whatever fuckwit wrote this + . = ..() + . += DescribeContents() //Because using the standardized reagents datum was just too cool for whatever fuckwit wrote this /obj/item/reagent_containers/borghypo/proc/DescribeContents() var/empty = 1 @@ -134,11 +133,11 @@ Borg Hypospray for(var/datum/reagents/RS in reagent_list) var/datum/reagent/R = locate() in RS.reagent_list if(R) - to_chat(usr, "It currently has [R.volume] unit\s of [R.name] stored.") + . += "It currently has [R.volume] unit\s of [R.name] stored." empty = 0 if(empty) - to_chat(usr, "It is currently empty! Allow some time for the internal syntheszier to produce more.") + . += "It is currently empty! Allow some time for the internal syntheszier to produce more." /obj/item/reagent_containers/borghypo/hacked icon_state = "borghypo_s" diff --git a/code/modules/reagents/reagent_containers/hypospray.dm b/code/modules/reagents/reagent_containers/hypospray.dm index ef1e7c06..4381be1a 100644 --- a/code/modules/reagents/reagent_containers/hypospray.dm +++ b/code/modules/reagents/reagent_containers/hypospray.dm @@ -121,11 +121,11 @@ icon_state = "[initial(icon_state)]0" /obj/item/reagent_containers/hypospray/medipen/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/medipen/stimpack //goliath kiting name = "stimpack medipen" diff --git a/code/modules/reagents/reagent_containers/rags.dm b/code/modules/reagents/reagent_containers/rags.dm index 713b6a62..df895572 100644 --- a/code/modules/reagents/reagent_containers/rags.dm +++ b/code/modules/reagents/reagent_containers/rags.dm @@ -23,7 +23,7 @@ /obj/item/reagent_containers/rag/examine(mob/user) . = ..() if(reagents.total_volume) - to_chat(user, "Alt-Click to squeeze the liquids out of it.") + . += "Alt-Click to squeeze the liquids out of it." /obj/item/reagent_containers/rag/afterattack(atom/A as obj|turf|area, mob/user,proximity) . = ..() diff --git a/code/modules/reagents/reagent_dispenser.dm b/code/modules/reagents/reagent_dispenser.dm index 8c451c80..e34041ed 100644 --- a/code/modules/reagents/reagent_dispenser.dm +++ b/code/modules/reagents/reagent_dispenser.dm @@ -142,13 +142,13 @@ var/paper_cups = 25 //Paper cups left from the cooler /obj/structure/reagent_dispensers/water_cooler/examine(mob/user) - ..() + . = ..() if (paper_cups > 1) - to_chat(user, "There are [paper_cups] paper cups left.") + . += "There are [paper_cups] paper cups left." else if (paper_cups == 1) - to_chat(user, "There is one paper cup left.") + . += "There is one paper cup left." else - to_chat(user, "There are no paper cups left.") + . += "There are no paper cups left." /obj/structure/reagent_dispensers/water_cooler/attack_hand(mob/living/user) . = ..() diff --git a/code/modules/recycling/disposal/pipe_sorting.dm b/code/modules/recycling/disposal/pipe_sorting.dm index d85c4bca..2d40ec64 100644 --- a/code/modules/recycling/disposal/pipe_sorting.dm +++ b/code/modules/recycling/disposal/pipe_sorting.dm @@ -50,13 +50,13 @@ sortTypes |= n /obj/structure/disposalpipe/sorting/mail/examine(mob/user) - ..() + . = ..() if(sortTypes.len) - to_chat(user, "It is tagged with the following tags:") + . += "It is tagged with the following tags:" for(var/t in sortTypes) - to_chat(user, "\t[GLOB.TAGGERLOCATIONS[t]].") + . += "\t[GLOB.TAGGERLOCATIONS[t]]." else - to_chat(user, "It has no sorting tags set.") + . += "It has no sorting tags set." /obj/structure/disposalpipe/sorting/mail/attackby(obj/item/I, mob/user, params) diff --git a/code/modules/research/nanites/nanite_hijacker.dm b/code/modules/research/nanites/nanite_hijacker.dm index dba47a4a..88779df4 100644 --- a/code/modules/research/nanites/nanite_hijacker.dm +++ b/code/modules/research/nanites/nanite_hijacker.dm @@ -18,7 +18,7 @@ /obj/item/nanite_hijacker/examine(mob/user) . = ..() if(disk) - to_chat(user, "Alt-click [src] to eject the disk.") + . += "Alt-click [src] to eject the disk." /obj/item/nanite_hijacker/attackby(obj/item/I, mob/user) if(istype(I, /obj/item/disk/nanite_program)) diff --git a/code/modules/research/nanites/nanite_remote.dm b/code/modules/research/nanites/nanite_remote.dm index 60dd78cf..46d8f297 100644 --- a/code/modules/research/nanites/nanite_remote.dm +++ b/code/modules/research/nanites/nanite_remote.dm @@ -22,7 +22,7 @@ /obj/item/nanite_remote/examine(mob/user) . = ..() if(locked) - to_chat(user, "Alt-click to unlock.") + . += "Alt-click to unlock." /obj/item/nanite_remote/AltClick(mob/user) . = ..() diff --git a/code/modules/research/xenobiology/crossbreeding/industrial.dm b/code/modules/research/xenobiology/crossbreeding/industrial.dm index 4d39d956..a21fddb6 100644 --- a/code/modules/research/xenobiology/crossbreeding/industrial.dm +++ b/code/modules/research/xenobiology/crossbreeding/industrial.dm @@ -13,8 +13,8 @@ Industrial extracts: var/itemamount = 1 //How many items to spawn /obj/item/slimecross/industrial/examine(mob/user) - ..() - to_chat(user, "It currently has [plasmaabsorbed] units of plasma floating inside the outer shell, out of [plasmarequired] units.") + . = ..() + . += "It currently has [plasmaabsorbed] units of plasma floating inside the outer shell, out of [plasmarequired] units." /obj/item/slimecross/industrial/proc/do_after_spawn(obj/item/spawned) return diff --git a/code/modules/research/xenobiology/xenobiology.dm b/code/modules/research/xenobiology/xenobiology.dm index d7af9295..2299d5f5 100644 --- a/code/modules/research/xenobiology/xenobiology.dm +++ b/code/modules/research/xenobiology/xenobiology.dm @@ -18,9 +18,9 @@ var/recurring = FALSE /obj/item/slime_extract/examine(mob/user) - ..() + . = ..() if(Uses > 1) - to_chat(user,"It has [Uses] uses remaining.") + . += "It has [Uses] uses remaining." /obj/item/slime_extract/attackby(obj/item/O, mob/user) if(istype(O, /obj/item/slimepotion/enhancer)) diff --git a/code/modules/surgery/bodyparts/bodyparts.dm b/code/modules/surgery/bodyparts/bodyparts.dm index 24631f01..408133d2 100644 --- a/code/modules/surgery/bodyparts/bodyparts.dm +++ b/code/modules/surgery/bodyparts/bodyparts.dm @@ -76,13 +76,13 @@ var/heavy_burn_msg = "peeling away" /obj/item/bodypart/examine(mob/user) - ..() + . = ..() if(brute_dam > DAMAGE_PRECISION) - to_chat(user, "This limb has [brute_dam > 30 ? "severe" : "minor"] bruising.") + . += "This limb has [brute_dam > 30 ? "severe" : "minor"] bruising." if(burn_dam > DAMAGE_PRECISION) - to_chat(user, "This limb has [burn_dam > 30 ? "severe" : "minor"] burns.") + . += "This limb has [burn_dam > 30 ? "severe" : "minor"] burns." if(broken == TRUE) - to_chat(user, "This limb is broken.") + . += "This limb is broken." /obj/item/bodypart/blob_act() take_damage(max_damage) diff --git a/code/modules/surgery/organs/augments_arms.dm b/code/modules/surgery/organs/augments_arms.dm index 44864dd9..09ba9ca7 100644 --- a/code/modules/surgery/organs/augments_arms.dm +++ b/code/modules/surgery/organs/augments_arms.dm @@ -38,8 +38,8 @@ transform = matrix(-1, 0, 0, 0, 1, 0) /obj/item/organ/cyberimp/arm/examine(mob/user) - ..() - to_chat(user, "[src] is assembled in the [zone == BODY_ZONE_R_ARM ? "right" : "left"] arm configuration. You can use a screwdriver to reassemble it.") + . = ..() + . += "[src] is assembled in the [zone == BODY_ZONE_R_ARM ? "right" : "left"] arm configuration. You can use a screwdriver to reassemble it." /obj/item/organ/cyberimp/arm/screwdriver_act(mob/living/user, obj/item/I) . = ..() diff --git a/code/modules/vehicles/_vehicle.dm b/code/modules/vehicles/_vehicle.dm index 54bc03bc..e4cb0904 100644 --- a/code/modules/vehicles/_vehicle.dm +++ b/code/modules/vehicles/_vehicle.dm @@ -32,17 +32,17 @@ generate_actions() /obj/vehicle/examine(mob/user) - ..() + . = ..() if(resistance_flags & 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!" /obj/vehicle/proc/is_key(obj/item/I) return I? (key_type_exact? (I.type == key_type) : istype(I, key_type)) : FALSE diff --git a/code/modules/vehicles/pimpin_ride.dm b/code/modules/vehicles/pimpin_ride.dm index 9d313e9b..c398b528 100644 --- a/code/modules/vehicles/pimpin_ride.dm +++ b/code/modules/vehicles/pimpin_ride.dm @@ -29,9 +29,9 @@ icon_state = "upgrade" /obj/vehicle/ridden/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/ridden/janicart/attackby(obj/item/I, mob/user, params) if(istype(I, /obj/item/storage/bag/trash)) diff --git a/code/modules/vehicles/ridden.dm b/code/modules/vehicles/ridden.dm index 955f0671..25f54d88 100644 --- a/code/modules/vehicles/ridden.dm +++ b/code/modules/vehicles/ridden.dm @@ -15,9 +15,9 @@ . = ..() if(key_type) if(!inserted_key) - to_chat(user, "Put a key inside it by clicking it with the key.") + . += "Put a key inside it by clicking it with the key." else - to_chat(user, "Alt-click [src] to remove the key.") + . += "Alt-click [src] to remove the key." /obj/vehicle/ridden/generate_action_type(actiontype) var/datum/action/vehicle/ridden/A = ..() diff --git a/modular_citadel/code/game/gamemodes/gangs/dominator.dm b/modular_citadel/code/game/gamemodes/gangs/dominator.dm index 5ad740ed..38ac4567 100644 --- a/modular_citadel/code/game/gamemodes/gangs/dominator.dm +++ b/modular_citadel/code/game/gamemodes/gangs/dominator.dm @@ -67,18 +67,18 @@ icon_state = "dominator-broken" /obj/machinery/dominator/examine(mob/user) - ..() + . = ..() if(stat & BROKEN) return if(gang && gang.domination_time != NOT_DOMINATING) if(gang.domination_time > world.time) - to_chat(user, "Hostile Takeover in progress. Estimated [gang.domination_time_remaining()] seconds remain.") + . += "Hostile Takeover in progress. Estimated [gang.domination_time_remaining()] seconds remain." else - to_chat(user, "Hostile Takeover of [station_name()] successful. Have a great day.") + . += "Hostile Takeover of [station_name()] successful. Have a great day." else - to_chat(user, "System on standby.") - to_chat(user, "System Integrity: [round((obj_integrity/max_integrity)*100,1)]%") + . += "System on standby." + . += "System Integrity: [round((obj_integrity/max_integrity)*100,1)]%" /obj/machinery/dominator/process() ..() diff --git a/modular_citadel/code/game/objects/ids.dm b/modular_citadel/code/game/objects/ids.dm index 89a3c0f0..76469547 100644 --- a/modular_citadel/code/game/objects/ids.dm +++ b/modular_citadel/code/game/objects/ids.dm @@ -42,8 +42,8 @@ update_icon() /obj/item/card/id/knight/examine(mob/user) - ..() - to_chat(user, "Alt-click to recolor it.") + . = ..() + . += "Alt-click to recolor it." //================================================= diff --git a/modular_citadel/code/game/objects/items/melee/eutactic_blades.dm b/modular_citadel/code/game/objects/items/melee/eutactic_blades.dm index 033057ba..2be99436 100644 --- a/modular_citadel/code/game/objects/items/melee/eutactic_blades.dm +++ b/modular_citadel/code/game/objects/items/melee/eutactic_blades.dm @@ -101,8 +101,8 @@ update_light() /obj/item/melee/transforming/energy/sword/cx/examine(mob/user) - ..() - to_chat(user, "Alt-click to recolor it.") + . = ..() + . += "Alt-click to recolor it." /obj/item/melee/transforming/energy/sword/cx/worn_overlays(isinhands, icon_file) . = ..() @@ -231,8 +231,8 @@ return ..() /obj/item/toy/sword/cx/examine(mob/user) - ..() - to_chat(user, "Alt-click to recolor it.") + . = ..() + . += "Alt-click to recolor it." ///////////////////////////////////////////////////// // HYPEREUTACTIC Blades ///////////////////////// @@ -335,9 +335,9 @@ . += blade_inhand /obj/item/twohanded/dualsaber/hypereutactic/examine(mob/user) - ..() + . = ..() if(!hacked) - to_chat(user, "Alt-click to recolor it.") + . += "Alt-click to recolor it." /obj/item/twohanded/dualsaber/hypereutactic/rainbow_process() . = ..() @@ -389,4 +389,4 @@ /obj/item/twohanded/dualsaber/hypereutactic/toy/rainbow name = "\improper Hyper-Euclidean Reciprocating Trigonometric Zweihander" desc = "A custom-built toy with fancy rainbow lights built-in." - hacked = TRUE \ No newline at end of file + hacked = TRUE diff --git a/modular_citadel/code/modules/arousal/toys/dildos.dm b/modular_citadel/code/modules/arousal/toys/dildos.dm index db7f1217..55a41acc 100644 --- a/modular_citadel/code/modules/arousal/toys/dildos.dm +++ b/modular_citadel/code/modules/arousal/toys/dildos.dm @@ -93,9 +93,9 @@ pixel_x = rand(-7,7) /obj/item/dildo/examine(mob/user) - ..() + . = ..() if(can_customize) - user << "Alt-Click \the [src.name] to customize it." + . += "Alt-Click \the [src.name] to customize it." /obj/item/dildo/random//totally random name = "random dildo"//this name will show up in vendors and shit so you know what you're vending(or don't, i guess :^)) diff --git a/modular_citadel/code/modules/clothing/clothing.dm b/modular_citadel/code/modules/clothing/clothing.dm index 7f366ecf..b23e805f 100644 --- a/modular_citadel/code/modules/clothing/clothing.dm +++ b/modular_citadel/code/modules/clothing/clothing.dm @@ -80,9 +80,9 @@ user.regenerate_icons() /obj/item/clothing/examine(mob/user) - ..() + . = ..() if(hasprimary | hassecondary | hastertiary) - to_chat(user, "Alt-click to recolor it.") // so people don't "OOC how do you use polychromic clothes????" + . += "Alt-click to recolor it." /obj/item/clothing/Initialize() ..() diff --git a/modular_citadel/code/modules/clothing/glasses/phantomthief.dm b/modular_citadel/code/modules/clothing/glasses/phantomthief.dm index 49eb089a..b1b351b3 100644 --- a/modular_citadel/code/modules/clothing/glasses/phantomthief.dm +++ b/modular_citadel/code/modules/clothing/glasses/phantomthief.dm @@ -20,9 +20,9 @@ . = ..() if(combattoggle_redir) if(world.time >= nextadrenalinepop) - to_chat(user, "The built-in adrenaline injector is ready for use.") + . += "The built-in adrenaline injector is ready for use." else - to_chat(user, "[DisplayTimeText(nextadrenalinepop - world.time)] left before the adrenaline injector can be used again.") + . += "[DisplayTimeText(nextadrenalinepop - world.time)] left before the adrenaline injector can be used again." /obj/item/clothing/glasses/phantomthief/syndicate/proc/injectadrenaline(mob/user, combatmodestate) if(istype(user)) diff --git a/modular_citadel/code/modules/clothing/spacesuits/cydonian_armor.dm b/modular_citadel/code/modules/clothing/spacesuits/cydonian_armor.dm index 423bc536..d85b10fa 100644 --- a/modular_citadel/code/modules/clothing/spacesuits/cydonian_armor.dm +++ b/modular_citadel/code/modules/clothing/spacesuits/cydonian_armor.dm @@ -172,5 +172,5 @@ update_light() /obj/item/clothing/suit/space/hardsuit/lavaknight/examine(mob/user) - ..() - to_chat(user, "Alt-click to recolor it.") \ No newline at end of file + . = ..() + . += "Alt-click to recolor it." diff --git a/modular_citadel/code/modules/projectiles/guns/ballistic/magweapon_energy.dm b/modular_citadel/code/modules/projectiles/guns/ballistic/magweapon_energy.dm index 8786eb6d..2115c478 100644 --- a/modular_citadel/code/modules/projectiles/guns/ballistic/magweapon_energy.dm +++ b/modular_citadel/code/modules/projectiles/guns/ballistic/magweapon_energy.dm @@ -176,9 +176,9 @@ /obj/item/gun/ballistic/automatic/magrifle_e/examine(mob/user) . = ..() if(cell) - to_chat(user, "[src]'s cell is [round(cell.charge / cell.maxcharge, 0.1) * 100]% full.") + . += "[src]'s cell is [round(cell.charge / cell.maxcharge, 0.1) * 100]% full." else - to_chat(user, "[src] doesn't seem to have a cell!") + . += "[src] doesn't seem to have a cell!" /obj/item/gun/ballistic/automatic/magrifle_e/can_shoot() if(QDELETED(cell)) @@ -239,9 +239,9 @@ /obj/item/gun/ballistic/automatic/pistol/mag_e/examine(mob/user) . = ..() if(cell) - to_chat(user, "[src]'s cell is [round(cell.charge / cell.maxcharge, 0.1) * 100]% full.") + . += "[src]'s cell is [round(cell.charge / cell.maxcharge, 0.1) * 100]% full." else - to_chat(user, "[src] doesn't seem to have a cell!") + . += "[src] doesn't seem to have a cell!" /obj/item/gun/ballistic/automatic/pistol/mag_e/can_shoot() if(QDELETED(cell)) diff --git a/modular_citadel/code/modules/projectiles/guns/ballistic/rifles.dm b/modular_citadel/code/modules/projectiles/guns/ballistic/rifles.dm index 1e0e0afc..e40ccfe6 100644 --- a/modular_citadel/code/modules/projectiles/guns/ballistic/rifles.dm +++ b/modular_citadel/code/modules/projectiles/guns/ballistic/rifles.dm @@ -218,8 +218,8 @@ body_color = sanitize_hexcolor(body_color_input, desired_format=6, include_crunch=1) update_icon() /obj/item/gun/ballistic/automatic/AM4B/examine(mob/user) - ..() - to_chat(user, "Alt-click to recolor it.") + . = ..() + . += "Alt-click to recolor it." /obj/item/ammo_box/magazine/toy/AM4C name = "foam force AM4-C magazine" diff --git a/modular_citadel/code/modules/projectiles/guns/pumpenergy.dm b/modular_citadel/code/modules/projectiles/guns/pumpenergy.dm index fa0e6403..14773e19 100644 --- a/modular_citadel/code/modules/projectiles/guns/pumpenergy.dm +++ b/modular_citadel/code/modules/projectiles/guns/pumpenergy.dm @@ -94,8 +94,8 @@ update_icon() /obj/item/gun/energy/pumpaction/examine(mob/user) //so people don't ask HOW TO CHANGE FIRING MODE - ..() - to_chat(user, "Alt-click to change firing modes.") + . = ..() + . += "Alt-click to change firing modes." /obj/item/gun/energy/pumpaction/worn_overlays(isinhands, icon_file) //ammo counter for inhands . = ..() diff --git a/modular_citadel/code/modules/vore/resizing/holder_micro_vr.dm b/modular_citadel/code/modules/vore/resizing/holder_micro_vr.dm index 8eea2737..1f1aacf9 100644 --- a/modular_citadel/code/modules/vore/resizing/holder_micro_vr.dm +++ b/modular_citadel/code/modules/vore/resizing/holder_micro_vr.dm @@ -10,8 +10,9 @@ pixel_y = 0 // Override value from parent. /obj/item/holder/micro/examine(var/mob/user) + . = list() for(var/mob/living/M in contents) - M.examine(user) + . += M.examine(user) /obj/item/holder/MouseDrop(mob/M as mob) ..()