diff --git a/code/_onclick/hud/ability_screen_objects.dm b/code/_onclick/hud/ability_screen_objects.dm
index 0deaba35fe7..5b97cf46c0c 100644
--- a/code/_onclick/hud/ability_screen_objects.dm
+++ b/code/_onclick/hud/ability_screen_objects.dm
@@ -328,6 +328,7 @@
/obj/screen/ability/obj_based/psionic/examine(mob/user)
to_chat(user, SPAN_NOTICE("This ability is [connected_power.name]."))
to_chat(user, SPAN_NOTICE("[connected_power.desc]"))
+ return TRUE
/// Technomancer.
/obj/screen/ability/obj_based/technomancer
diff --git a/code/game/gamemodes/technomancer/spell_objs.dm b/code/game/gamemodes/technomancer/spell_objs.dm
index afc75728d5f..3d61420f082 100644
--- a/code/game/gamemodes/technomancer/spell_objs.dm
+++ b/code/game/gamemodes/technomancer/spell_objs.dm
@@ -44,7 +44,7 @@
var/psi_cost = 0 // Psi complexus cost to use this spell.
/obj/item/spell/examine(mob/user, distance) // Nothing on examine.
- return
+ return TRUE
// Proc: on_use_cast()
// Parameters: 1 (user - the technomancer casting the spell)
diff --git a/code/game/machinery/cell_charger.dm b/code/game/machinery/cell_charger.dm
index cb248ed35d8..d189e9da19d 100644
--- a/code/game/machinery/cell_charger.dm
+++ b/code/game/machinery/cell_charger.dm
@@ -42,7 +42,7 @@
/obj/machinery/cell_charger/examine(mob/user, distance, is_adjacent)
. = ..()
if(distance > 5)
- return
+ return TRUE
if(charging)
to_chat(user, "There's \a [charging.name] in the charger. Current charge: [charging.percent()]%.")
diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm
index 2ca6594e149..511324e3c82 100644
--- a/code/game/machinery/cloning.dm
+++ b/code/game/machinery/cloning.dm
@@ -434,7 +434,6 @@
/obj/item/disk/data/examine(mob/user)
. = ..()
to_chat(user, text("The write-protect tab is set to [read_only ? "protected" : "unprotected"]."))
- return
/*
* Diskette Box
diff --git a/code/game/objects/items/holomenu.dm b/code/game/objects/items/holomenu.dm
index eb91198ca36..05a55443f53 100644
--- a/code/game/objects/items/holomenu.dm
+++ b/code/game/objects/items/holomenu.dm
@@ -73,11 +73,12 @@
return TRUE
return ..()
-/obj/item/holomenu/examine(mob/user, distance)
- if(anchored && length(menu_text))
+/obj/item/holomenu/examine(mob/user, distance, is_adjacent)
+ if(anchored && length(menu_text) && is_adjacent)
interact(user)
- return
- return ..()
+ return TRUE
+ else
+ . = ..()
/obj/item/holomenu/attack_hand(mob/user)
if(anchored)
diff --git a/code/game/objects/items/stacks/stack.dm b/code/game/objects/items/stacks/stack.dm
index 777d2e69d16..c46c080d864 100644
--- a/code/game/objects/items/stacks/stack.dm
+++ b/code/game/objects/items/stacks/stack.dm
@@ -69,7 +69,7 @@
/obj/item/stack/examine(mob/user, distance, is_adjacent)
. = ..()
- if(distance <= 1)
+ if(is_adjacent)
if(!iscoil())
if(!uses_charge)
to_chat(user, "There [src.amount == 1 ? "is" : "are"] [src.amount] [src.singular_name]\s in the stack.")
diff --git a/code/game/objects/items/stacks/wrap.dm b/code/game/objects/items/stacks/wrap.dm
index 1b6a0400e26..df7f5f46575 100644
--- a/code/game/objects/items/stacks/wrap.dm
+++ b/code/game/objects/items/stacks/wrap.dm
@@ -101,6 +101,7 @@
icon_state = "deliveryPaper"
desc = "A roll of paper used to enclose an object for delivery."
desc_info = "To package wrap the object for delivery, use the package wrapper on the object."
+ singular_name = "length"
w_class = ITEMSIZE_NORMAL
amount = 30
var/wrapping_tag = "Sorting Office"
@@ -199,10 +200,6 @@
return
return
-/obj/item/stack/packageWrap/examine(mob/user, distance, is_adjacent)
- if(distance <= 1)
- to_chat(user, "There [amount == 1 ? "is" : "are"] about [amount] units of package wrap left!")
-
/obj/item/c_tube
name = "cardboard tube"
desc = "A tube of cardboard."
diff --git a/code/game/objects/items/weapons/implants/implants/circuit.dm b/code/game/objects/items/weapons/implants/implants/circuit.dm
index 09c2a77c20b..0f33e7eec09 100644
--- a/code/game/objects/items/weapons/implants/implants/circuit.dm
+++ b/code/game/objects/items/weapons/implants/implants/circuit.dm
@@ -37,7 +37,7 @@
IC.emp_act(severity)
/obj/item/implant/integrated_circuit/examine(mob/user, distance, is_adjacent)
- IC.examine(user, distance, is_adjacent)
+ return IC.examine(user, distance, is_adjacent)
/obj/item/implant/integrated_circuit/attackby(var/obj/item/O, var/mob/user)
if(O.iscrowbar() || istype(O, /obj/item/device/integrated_electronics) || istype(O, /obj/item/integrated_circuit) || O.isscrewdriver() || istype(O, /obj/item/cell/device) )
diff --git a/code/game/objects/items/weapons/tanks/jetpack.dm b/code/game/objects/items/weapons/tanks/jetpack.dm
index 6fa774c1c0e..4ed94a43876 100644
--- a/code/game/objects/items/weapons/tanks/jetpack.dm
+++ b/code/game/objects/items/weapons/tanks/jetpack.dm
@@ -189,7 +189,7 @@
/obj/item/tank/jetpack/rig/examine()
to_chat(usr, "It's a jetpack. If you can see this, report it on the bug tracker.")
- return 0
+ return TRUE
/obj/item/tank/jetpack/rig/allow_thrust(num, mob/living/user as mob)
diff --git a/code/game/objects/items/weapons/tanks/tank_types.dm b/code/game/objects/items/weapons/tanks/tank_types.dm
index 7ebae64ac3c..0b2f552ca14 100644
--- a/code/game/objects/items/weapons/tanks/tank_types.dm
+++ b/code/game/objects/items/weapons/tanks/tank_types.dm
@@ -21,8 +21,9 @@
/obj/item/tank/oxygen/adjust_initial_gas()
air_contents.adjust_gas(GAS_OXYGEN, (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C))
-/obj/item/tank/oxygen/examine(mob/user)
- if(..(user, 0) && air_contents.gas[GAS_OXYGEN] < 10)
+/obj/item/tank/oxygen/examine(mob/user, distance, is_adjacent)
+ . = ..()
+ if((is_adjacent) && air_contents.gas[GAS_OXYGEN] < 10)
to_chat(user, text("The meter on \the [src] indicates you are almost out of oxygen!"))
/obj/item/tank/oxygen/yellow
@@ -76,7 +77,8 @@
air_contents.adjust_multi(GAS_OXYGEN, (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * O2STANDARD, GAS_NITROGEN, (6*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C) * N2STANDARD)
/obj/item/tank/air/examine(mob/user, distance, is_adjacent)
- if((distance <= 0) && air_contents.gas[GAS_OXYGEN] < 1 && loc==user)
+ . = ..()
+ if((is_adjacent) && air_contents.gas[GAS_OXYGEN] < 1 && loc==user)
to_chat(user, "The meter on the [src.name] indicates you are almost out of air!")
/*
@@ -147,7 +149,8 @@
air_contents.adjust_gas(GAS_OXYGEN, (3*ONE_ATMOSPHERE)*volume/(R_IDEAL_GAS_EQUATION*T20C))
/obj/item/tank/emergency_oxygen/examine(mob/user, distance, is_adjacent)
- if((distance <= 0) && air_contents.gas[GAS_OXYGEN] < 0.2 && loc==user)
+ . = ..()
+ if((is_adjacent) && air_contents.gas[GAS_OXYGEN] < 0.2 && loc==user)
to_chat(user, text("The meter on the [src.name] indicates you are almost out of air!"))
/obj/item/tank/emergency_oxygen/engi
diff --git a/code/game/objects/structures/noticeboard.dm b/code/game/objects/structures/noticeboard.dm
index 771d12ad210..44ea88f3efc 100644
--- a/code/game/objects/structures/noticeboard.dm
+++ b/code/game/objects/structures/noticeboard.dm
@@ -34,16 +34,16 @@
// Since Topic() never seems to interact with usr on more than a superficial
// level, it should be fine to let anyone mess with the board other than ghosts.
-/obj/structure/noticeboard/examine(var/mob/user)
- . = ..()
- if(user.Adjacent(src))
+/obj/structure/noticeboard/examine(mob/user, distance, is_adjacent)
+ if(is_adjacent)
var/dat = "Noticeboard
"
for(var/obj/item/paper/P in src)
dat += "[P.name] Write Remove
"
user << browse("
Notices[dat]","window=noticeboard")
onclose(user, "noticeboard")
+ return TRUE
else
- ..()
+ . = ..()
/obj/structure/noticeboard/Topic(href, href_list)
..()
diff --git a/code/modules/clothing/head/helmet.dm b/code/modules/clothing/head/helmet.dm
index 2993e93ee6f..ad2c8b20d0a 100644
--- a/code/modules/clothing/head/helmet.dm
+++ b/code/modules/clothing/head/helmet.dm
@@ -97,6 +97,7 @@
to_chat(usr, SPAN_NOTICE("Camera deactivated."))
/obj/item/clothing/head/helmet/space/examine(mob/user, distance, is_adjacent)
+ . = ..()
if((distance <= 1) && camera)
to_chat(user, FONT_SMALL(SPAN_NOTICE("To toggle the helmet camera, right click the helmet and press Toggle Helmet Camera.")))
to_chat(user, "This helmet has a built-in camera. It's [!ispath(camera) && camera.status ? "" : "in"]active.")
diff --git a/code/modules/heavy_vehicle/mecha.dm b/code/modules/heavy_vehicle/mecha.dm
index e208854030b..1cc56b8c740 100644
--- a/code/modules/heavy_vehicle/mecha.dm
+++ b/code/modules/heavy_vehicle/mecha.dm
@@ -136,7 +136,7 @@
/mob/living/heavy_vehicle/examine(var/mob/user)
if(!user || !user.client)
- return
+ return TRUE
to_chat(user, "That's \a [src].")
to_chat(user, desc)
if(LAZYLEN(pilots) && (!hatch_closed || body.pilot_coverage < 100 || body.transparent_cabin))
diff --git a/code/modules/integrated_electronics/core/assemblies/clothing.dm b/code/modules/integrated_electronics/core/assemblies/clothing.dm
index 567d8edf4ff..780ebccffaa 100644
--- a/code/modules/integrated_electronics/core/assemblies/clothing.dm
+++ b/code/modules/integrated_electronics/core/assemblies/clothing.dm
@@ -58,8 +58,8 @@
/obj/item/clothing/examine(mob/user)
if(IC)
- IC.examine(user)
- ..()
+ examinate(user, IC)
+ . = ..()
/obj/item/clothing/attackby(obj/item/I, mob/user)
if(IC)
diff --git a/code/modules/mob/abstract/freelook/eye.dm b/code/modules/mob/abstract/freelook/eye.dm
index 11fde71de57..5b4c9c7b2e9 100644
--- a/code/modules/mob/abstract/freelook/eye.dm
+++ b/code/modules/mob/abstract/freelook/eye.dm
@@ -66,7 +66,7 @@
return 0
/mob/abstract/eye/examine(mob/user)
- return
+ return TRUE
/mob/abstract/eye/proc/possess(var/mob/user)
if(owner && owner != user)
diff --git a/code/modules/mob/examinations.dm b/code/modules/mob/examinations.dm
index b8ed50555a4..0663b6ddc17 100644
--- a/code/modules/mob/examinations.dm
+++ b/code/modules/mob/examinations.dm
@@ -1,5 +1,5 @@
/proc/examinate(mob/user, atom/target, show_extended = FALSE)
- if((user.is_blind() || user.stat) && isobserver(user))
+ if(user.is_blind() || user.stat)
to_chat(user, SPAN_NOTICE("Something is there, but you cannot see it."))
user.face_atom(target)
diff --git a/code/modules/mob/holder.dm b/code/modules/mob/holder.dm
index 68440d96748..2eedee78f24 100644
--- a/code/modules/mob/holder.dm
+++ b/code/modules/mob/holder.dm
@@ -53,8 +53,8 @@ var/list/holder_mob_icon_cache = list()
return ..()
/obj/item/holder/examine(mob/user)
- if (contained)
- contained.examine(user)
+ if(contained)
+ return contained.examine(user)
/obj/item/holder/attack_self()
for(var/mob/M in contents)
diff --git a/code/modules/mob/living/carbon/brain/posibrain.dm b/code/modules/mob/living/carbon/brain/posibrain.dm
index 47f9f8b124c..074b08f055e 100644
--- a/code/modules/mob/living/carbon/brain/posibrain.dm
+++ b/code/modules/mob/living/carbon/brain/posibrain.dm
@@ -92,7 +92,7 @@
msg += "It appears to be completely inactive.\n"
msg += "*---------*"
to_chat(user, msg)
- return
+ return TRUE
/obj/item/device/mmi/digital/posibrain/ready_for_use(var/mob/user)
if(!brainmob)
diff --git a/code/modules/mob/living/carbon/human/examine.dm b/code/modules/mob/living/carbon/human/examine.dm
index 0978cd76c41..354c4794aa8 100644
--- a/code/modules/mob/living/carbon/human/examine.dm
+++ b/code/modules/mob/living/carbon/human/examine.dm
@@ -32,7 +32,7 @@
else
to_chat(user, "[get_pronoun("He")] [get_pronoun("has")] a pulse!")
-/mob/living/carbon/human/examine(mob/user)
+/mob/living/carbon/human/examine(mob/user, distance, is_adjacent)
var/skipbody = get_covered_body_parts()
var/skipbody_thick = get_covered_body_parts(TRUE)
var/skipitems = get_covered_clothes()
@@ -241,10 +241,6 @@
if(is_berserk())
msg += "[get_pronoun("He")] [get_pronoun("has")] engorged veins, which appear a vibrant red!\n"
- var/distance = get_dist(user,src)
- if(istype(user, /mob/abstract/observer) || user.stat == DEAD) // ghosts can see anything
- distance = 1
-
if((src.stat || (status_flags & FAKEDEATH)) && !(src.species.flags & NO_BLOOD)) // No point checking pulse of a species that doesn't have one.
msg += "[get_pronoun("He")] [get_pronoun("is")]n't responding to anything around [get_pronoun("him")] and seems to be unconscious.\n"
if(distance <= 3 && ((stat == DEAD || is_asystole() || src.losebreath) || (status_flags & FAKEDEATH)))
@@ -412,6 +408,8 @@
if(Adjacent(user))
INVOKE_ASYNC(src, PROC_REF(examine_pulse), user)
+ return TRUE
+
//Helper procedure. Called by /mob/living/carbon/human/examine() and /mob/living/carbon/human/Topic() to determine HUD access to security and medical records.
/proc/hasHUD(mob/M, hudtype)
if(ishuman(M))
@@ -457,7 +455,7 @@
var/output_text = color_map[supplied_color] || "fluid"
return output_text
-/mob/living/carbon/human/assemble_height_string(mob/examiner)
+/mob/living/carbon/human/proc/assemble_height_string(mob/examiner)
var/height_string = ""
var/height_descriptor
if(height == HEIGHT_NOT_USED)
diff --git a/code/modules/mob/living/silicon/ai/examine.dm b/code/modules/mob/living/silicon/ai/examine.dm
index 89fe2f2dd1e..2a13f2428bd 100644
--- a/code/modules/mob/living/silicon/ai/examine.dm
+++ b/code/modules/mob/living/silicon/ai/examine.dm
@@ -1,6 +1,6 @@
/mob/living/silicon/ai/examine(mob/user)
if(!..(user))
- return
+ return TRUE
var/msg = ""
if (src.stat == DEAD)
@@ -34,7 +34,7 @@
msg += hardware.get_examine_desc()
to_chat(user, msg)
user.showLaws(src)
- return
+ return TRUE
/mob/proc/showLaws(var/mob/living/silicon/S)
return
diff --git a/code/modules/mob/living/simple_animal/hostile/morph.dm b/code/modules/mob/living/simple_animal/hostile/morph.dm
index deff382f10a..0ff7b8ea8fe 100644
--- a/code/modules/mob/living/simple_animal/hostile/morph.dm
+++ b/code/modules/mob/living/simple_animal/hostile/morph.dm
@@ -102,9 +102,8 @@
/mob/living/simple_animal/hostile/morph/examine(mob/user, distance, is_adjacent)
if(morphed)
. = form.examine(user)
- if(distance > 2)
- return
- to_chat(user, SPAN_WARNING("It doesn't look quite right..."))
+ if(distance <= 2)
+ to_chat(user, SPAN_WARNING("It doesn't look quite right..."))
else
return ..()
diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm
index 15d0625acbd..999f4db0b1b 100644
--- a/code/modules/mob/mob.dm
+++ b/code/modules/mob/mob.dm
@@ -1363,29 +1363,29 @@
toggle_zone_sel(list(BP_R_ARM,BP_R_HAND))
/client/verb/body_l_arm()
- set name = "body-l-arm"
- set hidden = 1
- toggle_zone_sel(list(BP_L_ARM,BP_L_HAND))
+ set name = "body-l-arm"
+ set hidden = 1
+ toggle_zone_sel(list(BP_L_ARM,BP_L_HAND))
/client/verb/body_chest()
- set name = "body-chest"
- set hidden = 1
- toggle_zone_sel(list(BP_CHEST))
+ set name = "body-chest"
+ set hidden = 1
+ toggle_zone_sel(list(BP_CHEST))
/client/verb/body_groin()
- set name = "body-groin"
- set hidden = 1
- toggle_zone_sel(list(BP_GROIN))
+ set name = "body-groin"
+ set hidden = 1
+ toggle_zone_sel(list(BP_GROIN))
/client/verb/body_r_leg()
- set name = "body-r-leg"
- set hidden = 1
- toggle_zone_sel(list(BP_R_LEG,BP_R_FOOT))
+ set name = "body-r-leg"
+ set hidden = 1
+ toggle_zone_sel(list(BP_R_LEG,BP_R_FOOT))
/client/verb/body_l_leg()
- set name = "body-l-leg"
- set hidden = 1
- toggle_zone_sel(list(BP_L_LEG,BP_L_FOOT))
+ set name = "body-l-leg"
+ set hidden = 1
+ toggle_zone_sel(list(BP_L_LEG,BP_L_FOOT))
/client/verb/cycle_target_zone()
set name = "cycle-zone"
@@ -1398,40 +1398,6 @@
var/obj/screen/zone_sel/selector = mob.zone_sel
selector.set_selected_zone(next_in_list(mob.zone_sel.selecting,zones))
-/mob/examine(mob/user, var/distance = -1, var/infix = "", var/suffix = "")
- ..()
- if(assemble_height_string(user))
- to_chat(user, SPAN_NOTICE(assemble_height_string(user)))
-
-//Height String for examine - Runs on the mob being examined.
-/mob/proc/assemble_height_string(mob/examiner)
- var/height_string = null
- var/height_descriptor
- if(height == HEIGHT_NOT_USED)
- return height_string
-
- if(examiner.height == HEIGHT_NOT_USED)
- return height_string
-
- switch(height - examiner.height)
- if(-999 to -100)
- height_descriptor = "absolutely tiny compared to"
- if(-99 to -50)
- height_descriptor = "much smaller than"
- if(-49 to -11)
- height_descriptor = "shorter than"
- if(-10 to 10)
- height_descriptor = "about the same height as"
- if(11 to 50)
- height_descriptor = "taller than"
- if(51 to 100)
- height_descriptor = "much larger than"
- else
- height_descriptor = "to tower over"
- if(height_string)
- return height_string + " [get_pronoun("He")] seem[get_pronoun("end")] [height_descriptor] you."
- return "[get_pronoun("He")] seem[get_pronoun("end")] [height_descriptor] you."
-
/mob/proc/get_speech_bubble_state_modifier()
return "normal"
diff --git a/code/modules/organs/subtypes/vaurca.dm b/code/modules/organs/subtypes/vaurca.dm
index 005ca680ec4..fcf4f32a034 100644
--- a/code/modules/organs/subtypes/vaurca.dm
+++ b/code/modules/organs/subtypes/vaurca.dm
@@ -327,7 +327,7 @@
/obj/item/organ/internal/vaurca/preserve/examine(mob/user, distance, is_adjacent)
. = ..()
- if(distance <= 0)
+ if(is_adjacent)
var/celsius_temperature = air_contents.temperature - T0C
var/descriptive
switch(celsius_temperature)
diff --git a/code/modules/overmap/ship_weaponry/_ship_gun.dm b/code/modules/overmap/ship_weaponry/_ship_gun.dm
index 000d35a09d8..3745fa348e6 100644
--- a/code/modules/overmap/ship_weaponry/_ship_gun.dm
+++ b/code/modules/overmap/ship_weaponry/_ship_gun.dm
@@ -12,10 +12,10 @@
var/light_firing_sound = 'sound/effects/explosionfar.ogg' //The sound played when you're a few walls away. Kind of loud.
var/projectile_type = /obj/item/projectile/ship_ammo
var/special_firing_mechanism = FALSE //If set to TRUE, the gun won't show up on normal controls.
- var/charging_sound //The sound played when the gun is charging up.
+ var/charging_sound //The sound played when the gun is charging up.
var/caliber = SHIP_CALIBER_NONE
- var/use_ammunition = TRUE //If we use physical ammo or not. Note that the creation of ammunition in pre_fire() is still REQUIRED!
- //This just skips the initial check for ammunition.
+ var/use_ammunition = TRUE //If we use physical ammo or not. Note that the creation of ammunition in pre_fire() is still REQUIRED!
+ //This just skips the initial check for ammunition.
var/list/obj/item/ship_ammunition/ammunition = list()
var/ammo_per_shot = 1
var/max_ammo = 1
@@ -274,16 +274,22 @@
. = ..()
/obj/structure/ship_weapon_dummy/examine(mob/user)
- connected.examine(user)
+ if(connected)
+ return connected.examine(user)
+ else
+ return TRUE
/obj/structure/ship_weapon_dummy/attack_hand(mob/user)
- connected.attack_hand(user)
+ if(connected)
+ connected.attack_hand(user)
/obj/structure/ship_weapon_dummy/attackby(obj/item/W, mob/user)
- connected.attackby(W, user)
+ if(connected)
+ connected.attackby(W, user)
/obj/structure/ship_weapon_dummy/hitby(atom/movable/AM, var/speed = THROWFORCE_SPEED_DIVISOR)
- connected.hitby(AM)
+ if(connected)
+ connected.hitby(AM)
if(ismob(AM))
if(isliving(AM))
var/mob/living/M = AM
diff --git a/code/modules/paperwork/paperbin.dm b/code/modules/paperwork/paperbin.dm
index b16f0432c5c..51ff8daffaf 100644
--- a/code/modules/paperwork/paperbin.dm
+++ b/code/modules/paperwork/paperbin.dm
@@ -84,22 +84,22 @@
to_chat(user, "You put [i] in [src].")
papers.Add(i)
amount++
- /* if(istype(O, /obj/item/paper_pack)) WIP written in.
- var/obj/item/paper_bundle/j = O
- amount += j.amount
- to_chat(user, "You add paper from [j] into [src].")
- user.drop_from_inventory(j,get_turf(src))
+ /* if(istype(O, /obj/item/paper_pack)) WIP written in.
+ var/obj/item/paper_bundle/j = O
+ amount += j.amount
+ to_chat(user, "You add paper from [j] into [src].")
+ user.drop_from_inventory(j,get_turf(src))
qdel(j)
- */
+ */
/obj/item/paper_bin/examine(mob/user, distance, is_adjacent)
- if(distance <= 1)
+ . = ..()
+ if(is_adjacent)
if(amount)
to_chat(user, "There " + (amount > 1 ? "are [amount] papers" : "is one paper") + " in the bin.")
else
to_chat(user, "There are no papers in the bin.")
- return
/obj/item/paper_bin/update_icon()
diff --git a/code/modules/power/lights/construction.dm b/code/modules/power/lights/construction.dm
index 696e3d07d24..6ff19a67afa 100644
--- a/code/modules/power/lights/construction.dm
+++ b/code/modules/power/lights/construction.dm
@@ -29,24 +29,23 @@
return ..()
/obj/machinery/light_construct/examine(mob/user, distance, is_adjacent)
- if(distance > 2)
- return
+ . = ..()
+ if(is_adjacent)
+ switch(stage)
+ if(1)
+ to_chat(user, SPAN_NOTICE("It's an empty frame."))
+ if(2)
+ to_chat(user, SPAN_NOTICE("It's wired."))
+ if(3)
+ to_chat(user, SPAN_NOTICE("The casing is closed."))
- switch(stage)
- if(1)
- to_chat(user, SPAN_NOTICE("It's an empty frame."))
- if(2)
- to_chat(user, SPAN_NOTICE("It's wired."))
- if(3)
- to_chat(user, SPAN_NOTICE("The casing is closed."))
-
- if (cell_connectors)
- if (cell)
- to_chat(user, SPAN_NOTICE("You see [cell] inside the casing."))
+ if (cell_connectors)
+ if (cell)
+ to_chat(user, SPAN_NOTICE("You see [cell] inside the casing."))
+ else
+ to_chat(user, SPAN_NOTICE("The casing has no power cell installed."))
else
- to_chat(user, SPAN_NOTICE("The casing has no power cell installed."))
- else
- to_chat(user, SPAN_WARNING("This casing doesn't support a backup power cell."))
+ to_chat(user, SPAN_WARNING("This casing doesn't support a backup power cell."))
/obj/machinery/light_construct/attackby(obj/item/W, mob/living/user)
add_fingerprint(user)
diff --git a/code/modules/power/portgen.dm b/code/modules/power/portgen.dm
index e2f086e5f88..70b5d597f81 100644
--- a/code/modules/power/portgen.dm
+++ b/code/modules/power/portgen.dm
@@ -67,12 +67,12 @@
return ..()
/obj/machinery/power/portgen/examine(mob/user, distance, is_adjacent)
- if(distance > 1)
- return
- if(active)
- to_chat(user, SPAN_NOTICE("The generator is on."))
- else
- to_chat(user, SPAN_NOTICE("The generator is off."))
+ . = ..()
+ if(is_adjacent)
+ if(active)
+ to_chat(user, SPAN_NOTICE("The generator is on."))
+ else
+ to_chat(user, SPAN_NOTICE("The generator is off."))
/obj/machinery/power/portgen/emp_act(severity)
var/duration = 6000 //ten minutes
diff --git a/code/modules/projectiles/guns/energy/mining.dm b/code/modules/projectiles/guns/energy/mining.dm
index d0c48af2562..a9181445189 100644
--- a/code/modules/projectiles/guns/energy/mining.dm
+++ b/code/modules/projectiles/guns/energy/mining.dm
@@ -22,7 +22,7 @@
needspin = FALSE
/obj/item/gun/energy/plasmacutter/examine(mob/user, distance, is_adjacent)
- ..()
+ . = ..()
if(is_adjacent)
if(power_supply)
to_chat(user, FONT_SMALL(SPAN_NOTICE("It has a [capitalize_first_letters(power_supply.name)] installed as its power supply.")))
diff --git a/code/modules/projectiles/guns/launcher/rocket.dm b/code/modules/projectiles/guns/launcher/rocket.dm
index bd98357e65e..fd87659631c 100644
--- a/code/modules/projectiles/guns/launcher/rocket.dm
+++ b/code/modules/projectiles/guns/launcher/rocket.dm
@@ -20,9 +20,9 @@
var/list/rockets = new/list()
/obj/item/gun/launcher/rocket/examine(mob/user, distance, is_adjacent)
- if(distance > 2)
- return
- to_chat(user, "[rockets.len] / [max_rockets] rockets.")
+ . = ..()
+ if(is_adjacent)
+ to_chat(user, "[rockets.len] / [max_rockets] rockets.")
/obj/item/gun/launcher/rocket/attackby(obj/item/I as obj, mob/user as mob)
if(istype(I, /obj/item/ammo_casing/rocket))
diff --git a/code/modules/reagents/reagent_containers/spray.dm b/code/modules/reagents/reagent_containers/spray.dm
index 0e6989dd421..65078ec6921 100644
--- a/code/modules/reagents/reagent_containers/spray.dm
+++ b/code/modules/reagents/reagent_containers/spray.dm
@@ -111,9 +111,9 @@
to_chat(user, SPAN_NOTICE("You adjusted the pressure nozzle. You'll now use [amount_per_transfer_from_this] units per spray, with a [spray_size] lane spray."))
/obj/item/reagent_containers/spray/examine(mob/user, distance, is_adjacent)
+ . = ..()
if(is_adjacent)
to_chat(user, "[round(reagents.total_volume)] units left.")
- return
/obj/item/reagent_containers/spray/verb/empty()
@@ -170,7 +170,7 @@
/obj/item/reagent_containers/spray/pepper/examine(mob/user, distance, is_adjacent)
. = ..()
- if(distance <= 1)
+ if(is_adjacent)
to_chat(user, "The safety is [safety ? "on" : "off"].")
/obj/item/reagent_containers/spray/pepper/AltClick()
diff --git a/code/modules/recycling/sortingmachinery.dm b/code/modules/recycling/sortingmachinery.dm
index fa030072674..97cd3418689 100755
--- a/code/modules/recycling/sortingmachinery.dm
+++ b/code/modules/recycling/sortingmachinery.dm
@@ -110,12 +110,12 @@
add_overlay(I)
/obj/structure/bigDelivery/examine(mob/user, distance, is_adjacent)
+ . = ..()
if(distance <= 4)
if(sortTag)
to_chat(user, "It is labeled \"[sortTag]\"")
if(examtext)
to_chat(user, "It has a note attached which reads, \"[examtext]\"")
- return
/obj/item/smallDelivery
desc = "A small wrapped package."
@@ -230,12 +230,12 @@
add_overlay(I)
/obj/item/smallDelivery/examine(mob/user, distance, is_adjacent)
+ . = ..()
if(distance <= 4)
if(sortTag)
to_chat(user, "It is labeled \"[sortTag]\"")
if(examtext)
to_chat(user, "It has a note attached which reads, \"[examtext]\"")
- return
/obj/structure/bigDelivery/Destroy()
if(wrapped) //sometimes items can disappear. For example, bombs. --rastaf0
diff --git a/html/changelogs/wezzy_fixes_examine_crashes.yml b/html/changelogs/wezzy_fixes_examine_crashes.yml
new file mode 100644
index 00000000000..c20eb0cdacb
--- /dev/null
+++ b/html/changelogs/wezzy_fixes_examine_crashes.yml
@@ -0,0 +1,41 @@
+################################
+# Example Changelog File
+#
+# Note: This file, and files beginning with ".", and files that don't end in ".yml" will not be read. If you change this file, you will look really dumb.
+#
+# Your changelog will be merged with a master changelog. (New stuff added only, and only on the date entry for the day it was merged.)
+# When it is, any changes listed below will disappear.
+#
+# Valid Prefixes:
+# bugfix
+# wip (For works in progress)
+# tweak
+# soundadd
+# sounddel
+# rscadd (general adding of nice things)
+# rscdel (general deleting of nice things)
+# imageadd
+# imagedel
+# maptweak
+# spellcheck (typo fixes)
+# experiment
+# balance
+# admin
+# backend
+# security
+# refactor
+#################################
+
+# Your name.
+author: Wowzewow (Wezzy)
+
+# Optional: Remove this file after generating master changelog. Useful for PR changelogs that won't get used again.
+delete-after: True
+
+# Any changes you've made. See valid prefix list above.
+# INDENT WITH TWO SPACES. NOT TABS. SPACES.
+# SCREW THIS UP AND IT WON'T WORK.
+# Also, all entries are changed into a single [] after a master changelog generation. Just remove the brackets when you add new entries.
+# Please surround your changes in double quotes ("), as certain characters otherwise screws up compiling. The quotes will not show up in the changelog.
+changes:
+ - bugfix: "Fixes crashes relating to examining things."