diff --git a/code/ATMOSPHERICS/components/binary_devices/dp_vent_pump.dm b/code/ATMOSPHERICS/components/binary_devices/dp_vent_pump.dm
index 7709bb56580..710036b2b51 100644
--- a/code/ATMOSPHERICS/components/binary_devices/dp_vent_pump.dm
+++ b/code/ATMOSPHERICS/components/binary_devices/dp_vent_pump.dm
@@ -196,9 +196,9 @@
return 1
-/obj/machinery/atmospherics/binary/dp_vent_pump/examine(mob/user)
+/obj/machinery/atmospherics/binary/dp_vent_pump/examine(mob/user, distance, infix, suffix)
. = ..()
- if(Adjacent(user))
+ if(distance < 2)
. += "A small gauge in the corner reads [round(last_flow_rate, 0.1)] L/s; [round(last_power_draw)] W"
diff --git a/code/ATMOSPHERICS/components/shutoff.dm b/code/ATMOSPHERICS/components/shutoff.dm
index 7517cbd7efc..bbc9c4a905c 100644
--- a/code/ATMOSPHERICS/components/shutoff.dm
+++ b/code/ATMOSPHERICS/components/shutoff.dm
@@ -14,7 +14,7 @@ GLOBAL_LIST_EMPTY(shutoff_valves)
/obj/machinery/atmospherics/valve/shutoff/update_icon()
icon_state = "vclamp[open]"
-/obj/machinery/atmospherics/valve/shutoff/examine(var/mob/user)
+/obj/machinery/atmospherics/valve/shutoff/examine(mob/user, distance, infix, suffix)
. = ..()
. += "The automatic shutoff circuit is [close_on_leaks ? "enabled" : "disabled"]."
diff --git a/code/ATMOSPHERICS/components/unary/cold_sink.dm b/code/ATMOSPHERICS/components/unary/cold_sink.dm
index c842da2d50c..740353f1bf8 100644
--- a/code/ATMOSPHERICS/components/unary/cold_sink.dm
+++ b/code/ATMOSPHERICS/components/unary/cold_sink.dm
@@ -87,7 +87,7 @@
/obj/machinery/atmospherics/unary/freezer/tgui_act(action, params)
if(..())
return TRUE
-
+
. = TRUE
switch(action)
if("toggleStatus")
@@ -169,7 +169,7 @@
..()
-/obj/machinery/atmospherics/unary/freezer/examine(mob/user)
+/obj/machinery/atmospherics/unary/freezer/examine(mob/user, distance, infix, suffix)
. = ..()
if(panel_open)
. += "The maintenance hatch is open."
diff --git a/code/ATMOSPHERICS/components/unary/heat_source.dm b/code/ATMOSPHERICS/components/unary/heat_source.dm
index 5fcc679adfc..de3a33cce29 100644
--- a/code/ATMOSPHERICS/components/unary/heat_source.dm
+++ b/code/ATMOSPHERICS/components/unary/heat_source.dm
@@ -156,7 +156,7 @@
..()
-/obj/machinery/atmospherics/unary/heater/examine(mob/user)
+/obj/machinery/atmospherics/unary/heater/examine(mob/user, distance, infix, suffix)
. = ..()
if(panel_open)
. += "The maintenance hatch is open."
diff --git a/code/ATMOSPHERICS/components/unary/vent_pump.dm b/code/ATMOSPHERICS/components/unary/vent_pump.dm
index 7ed4040e66d..568f3bc383c 100644
--- a/code/ATMOSPHERICS/components/unary/vent_pump.dm
+++ b/code/ATMOSPHERICS/components/unary/vent_pump.dm
@@ -165,7 +165,7 @@
soundloop.stop()
return 0
if(!use_power)
- soundloop.stop()
+ soundloop.stop()
return 0
if(welded)
soundloop.stop()
@@ -400,9 +400,9 @@
else
..()
-/obj/machinery/atmospherics/unary/vent_pump/examine(mob/user)
+/obj/machinery/atmospherics/unary/vent_pump/examine(mob/user, distance, infix, suffix)
. = ..()
- if(Adjacent(user))
+ if(distance < 2)
. += "A small gauge in the corner reads [round(last_flow_rate, 0.1)] L/s; [round(last_power_draw)] W"
else
. += "You are too far away to read the gauge."
diff --git a/code/ATMOSPHERICS/components/unary/vent_scrubber.dm b/code/ATMOSPHERICS/components/unary/vent_scrubber.dm
index 9b049f95f57..b1088e206fc 100644
--- a/code/ATMOSPHERICS/components/unary/vent_scrubber.dm
+++ b/code/ATMOSPHERICS/components/unary/vent_scrubber.dm
@@ -286,9 +286,9 @@
"You hear a ratchet.")
deconstruct()
-/obj/machinery/atmospherics/unary/vent_scrubber/examine(mob/user)
+/obj/machinery/atmospherics/unary/vent_scrubber/examine(mob/user, distance, infix, suffix)
. = ..()
- if(Adjacent(user))
+ if(distance < 2)
. += "A small gauge in the corner reads [round(last_flow_rate, 0.1)] L/s; [round(last_power_draw)] W"
else
. += "You are too far away to read the gauge."
diff --git a/code/ATMOSPHERICS/components/valve.dm b/code/ATMOSPHERICS/components/valve.dm
index fd1cf3e6433..2b91662aad2 100644
--- a/code/ATMOSPHERICS/components/valve.dm
+++ b/code/ATMOSPHERICS/components/valve.dm
@@ -306,6 +306,6 @@
"You hear a ratchet.")
deconstruct()
-/obj/machinery/atmospherics/valve/examine(mob/user)
+/obj/machinery/atmospherics/valve/examine(mob/user, distance, infix, suffix)
. = ..()
. += "It is [open ? "open" : "closed"]."
diff --git a/code/__defines/dcs/signals.dm b/code/__defines/dcs/signals.dm
index 8bb95f0d899..a83b7957dc1 100644
--- a/code/__defines/dcs/signals.dm
+++ b/code/__defines/dcs/signals.dm
@@ -61,7 +61,7 @@
#define COMSIG_ATOM_HULK_ATTACK "hulk_attack"
///from base of atom/animal_attack(): (/mob/user)
#define COMSIG_ATOM_ATTACK_ANIMAL "attack_animal"
-///from base of atom/examine(): (/mob)
+///from base of atom/examine(mob/user, distance, infix, suffix): (/mob)
#define COMSIG_PARENT_EXAMINE "atom_examine"
///from base of atom/get_examine_name(): (/mob, list/overrides)
#define COMSIG_ATOM_GET_EXAMINE_NAME "atom_examine_name"
diff --git a/code/game/atoms.dm b/code/game/atoms.dm
index e63a02358aa..8cb8aeab7a3 100644
--- a/code/game/atoms.dm
+++ b/code/game/atoms.dm
@@ -215,7 +215,7 @@ var/global/list/pre_init_created_atoms // atom creation ordering means some stuf
/atom/proc/get_examine_desc()
return desc
-/atom/proc/examine(mob/user, infix = "", suffix = "")
+/atom/proc/examine(mob/user, distance, infix = "", suffix = "")
var/f_name = "\a [src][infix]."
if (blood_DNA && !istype(src, /obj/effect/decal))
if (gender == PLURAL)
diff --git a/code/game/gamemodes/cult/ritual.dm b/code/game/gamemodes/cult/ritual.dm
index a1c94348a3f..e4706786489 100644
--- a/code/game/gamemodes/cult/ritual.dm
+++ b/code/game/gamemodes/cult/ritual.dm
@@ -83,7 +83,7 @@ var/global/list/rnwords = list("ire","ego","nahlizet","certum","veri","jatkaa","
rune_list.Remove(src)
..()
-/obj/effect/rune/examine(mob/user)
+/obj/effect/rune/examine(mob/user, distance, infix, suffix)
. = ..()
if(iscultist(user))
. += "This spell circle reads: [word1] [word2] [word3]."
@@ -425,7 +425,7 @@ var/global/list/rnwords = list("ire","ego","nahlizet","certum","veri","jatkaa","
to_chat(user, "The book seems full of illegible scribbles. Is this a joke?")
return
-/obj/item/book/tome/examine(mob/user)
+/obj/item/book/tome/examine(mob/user, distance, infix, suffix)
. = ..()
if(!iscultist(user))
. += "An old, dusty tome with frayed edges and a sinister looking cover."
diff --git a/code/game/gamemodes/nuclear/pinpointer.dm b/code/game/gamemodes/nuclear/pinpointer.dm
index 1b7056f738f..b5d7c0941bd 100644
--- a/code/game/gamemodes/nuclear/pinpointer.dm
+++ b/code/game/gamemodes/nuclear/pinpointer.dm
@@ -33,15 +33,15 @@
/obj/item/pinpointer/process()
if(!active)
return PROCESS_KILL
-
+
if(!the_disk)
the_disk = locate()
if(!the_disk)
icon_state = "pinonnull"
return
-
+
set_dir(get_dir(src,the_disk))
-
+
switch(get_dist(src,the_disk))
if(0)
icon_state = "pinondirect"
@@ -52,7 +52,7 @@
if(16 to INFINITY)
icon_state = "pinonfar"
-/obj/item/pinpointer/examine(mob/user)
+/obj/item/pinpointer/examine(mob/user, distance, infix, suffix)
. = ..()
for(var/obj/machinery/nuclearbomb/bomb in machines)
if(bomb.timing)
@@ -299,10 +299,10 @@
if(loc.z != our_shuttle.z) //If you are on a different z-level from the shuttle
icon_state = "pinonnull"
-
+
else
set_dir(get_dir(src, our_shuttle))
-
+
switch(get_dist(src, our_shuttle))
if(0)
icon_state = "pinondirect"
@@ -318,4 +318,4 @@
shuttle_comp_id = "Mercenary"
/obj/item/pinpointer/shuttle/heist
- shuttle_comp_id = "Skipjack"
\ No newline at end of file
+ shuttle_comp_id = "Skipjack"
diff --git a/code/game/gamemodes/technomancer/devices/disposable_teleporter.dm b/code/game/gamemodes/technomancer/devices/disposable_teleporter.dm
index 814daf9bfa5..e0ac708dc06 100644
--- a/code/game/gamemodes/technomancer/devices/disposable_teleporter.dm
+++ b/code/game/gamemodes/technomancer/devices/disposable_teleporter.dm
@@ -24,7 +24,7 @@
one has been provided to allow you to leave your hideout."
uses = 1
-/obj/item/disposable_teleporter/examine(mob/user)
+/obj/item/disposable_teleporter/examine(mob/user, distance, infix, suffix)
. = ..()
. += "[uses] uses remaining."
diff --git a/code/game/machinery/CableLayer.dm b/code/game/machinery/CableLayer.dm
index ed99b6e72c8..68c35715872 100644
--- a/code/game/machinery/CableLayer.dm
+++ b/code/game/machinery/CableLayer.dm
@@ -48,7 +48,7 @@
else
to_chat(usr, "There's no more cable on the reel.")
-/obj/machinery/cablelayer/examine(mob/user)
+/obj/machinery/cablelayer/examine(mob/user, distance, infix, suffix)
. = ..()
. += "[src]'s cable reel has [cable.amount] length\s left."
diff --git a/code/game/machinery/atmoalter/meter.dm b/code/game/machinery/atmoalter/meter.dm
index 608a01ab298..68ddf26ef97 100644
--- a/code/game/machinery/atmoalter/meter.dm
+++ b/code/game/machinery/atmoalter/meter.dm
@@ -76,15 +76,12 @@
)
radio_connection.post_signal(src, signal)
-/obj/machinery/meter/examine(mob/user)
+/obj/machinery/meter/examine(mob/user, distance, infix, suffix)
. = ..()
-
- if(get_dist(user, src) > 3 && !(istype(user, /mob/living/silicon/ai) || istype(user, /mob/observer/dead)))
+ if(distance > 3 && !(istype(user, /mob/living/silicon/ai) || istype(user, /mob/observer/dead)))
. += "You are too far away to read it."
-
else if(stat & (NOPOWER|BROKEN))
. += "The display is off."
-
else if(target)
var/datum/gas_mixture/environment = target.return_air()
if(environment)
diff --git a/code/game/machinery/cell_charger.dm b/code/game/machinery/cell_charger.dm
index 3cf16e808e6..06f24f918cd 100644
--- a/code/game/machinery/cell_charger.dm
+++ b/code/game/machinery/cell_charger.dm
@@ -34,9 +34,9 @@
else
cut_overlays()
-/obj/machinery/cell_charger/examine(mob/user)
+/obj/machinery/cell_charger/examine(mob/user, distance, infix, suffix)
. = ..()
- if(get_dist(user, src) <= 5)
+ if(distance <= 5)
. += "[charging ? "[charging]" : "Nothing"] is in [src]."
if(charging)
. += "Current charge: [charging.charge] / [charging.maxcharge]"
@@ -128,4 +128,4 @@
var/E = 0
for(var/obj/item/stock_parts/capacitor/C in component_parts)
E += C.rating
- efficiency = active_power_usage * (1+ (E - 1)*0.5)
\ No newline at end of file
+ efficiency = active_power_usage * (1+ (E - 1)*0.5)
diff --git a/code/game/machinery/cloning.dm b/code/game/machinery/cloning.dm
index 51eb39765cf..98625bbacc2 100644
--- a/code/game/machinery/cloning.dm
+++ b/code/game/machinery/cloning.dm
@@ -535,7 +535,7 @@
read_only = !read_only
to_chat(user, "You flip the write-protect tab to [read_only ? "protected" : "unprotected"].")
-/obj/item/disk/data/examine(mob/user)
+/obj/item/disk/data/examine(mob/user, distance, infix, suffix)
. = ..()
. += "The write-protect tab is set to [read_only ? "protected" : "unprotected"]."
diff --git a/code/game/machinery/computer/arcade.dm b/code/game/machinery/computer/arcade.dm
index aa1b2152bb5..58673e2660f 100644
--- a/code/game/machinery/computer/arcade.dm
+++ b/code/game/machinery/computer/arcade.dm
@@ -1033,9 +1033,9 @@
w_class = ITEMSIZE_SMALL
var/active = 0 //if the ship is on
-/obj/item/orion_ship/examine(mob/user)
+/obj/item/orion_ship/examine(mob/user, distance, infix, suffix)
. = ..()
- if(in_range(user, src))
+ if(distance < 2)
if(!active)
. += span("notice", "There's a little switch on the bottom. It's flipped down.")
else
diff --git a/code/game/machinery/computer/guestpass.dm b/code/game/machinery/computer/guestpass.dm
index 53e97711cd6..db565944800 100644
--- a/code/game/machinery/computer/guestpass.dm
+++ b/code/game/machinery/computer/guestpass.dm
@@ -18,7 +18,7 @@
else
return temp_access
-/obj/item/card/id/guest/examine(mob/user)
+/obj/item/card/id/guest/examine(mob/user, distance, infix, suffix)
. = ..()
if (world.time < expiration_time)
. += "This pass expires at [worldtime2stationtime(expiration_time)]."
@@ -244,4 +244,4 @@
to_chat(usr, "Cannot issue pass without issuing ID.")
src.add_fingerprint(usr)
- SSnanoui.update_uis(src)
\ No newline at end of file
+ SSnanoui.update_uis(src)
diff --git a/code/game/machinery/doors/door.dm b/code/game/machinery/doors/door.dm
index 2d433f6b7de..84fd6f7694f 100644
--- a/code/game/machinery/doors/door.dm
+++ b/code/game/machinery/doors/door.dm
@@ -334,7 +334,7 @@
return
-/obj/machinery/door/examine(mob/user)
+/obj/machinery/door/examine(mob/user, distance, infix, suffix)
. = ..()
if(src.health <= 0)
. += "It is broken!"
diff --git a/code/game/machinery/doors/firedoor.dm b/code/game/machinery/doors/firedoor.dm
index addcf65b5d7..33b879a29a4 100644
--- a/code/game/machinery/doors/firedoor.dm
+++ b/code/game/machinery/doors/firedoor.dm
@@ -57,7 +57,7 @@
if(F != src)
log_debug("Duplicate firedoors at [x],[y],[z]")
return INITIALIZE_HINT_QDEL
-
+
var/area/A = get_area(src)
ASSERT(istype(A))
@@ -78,15 +78,12 @@
/obj/machinery/door/firedoor/get_material()
return get_material_by_name(DEFAULT_WALL_MATERIAL)
-/obj/machinery/door/firedoor/examine(mob/user)
+/obj/machinery/door/firedoor/examine(mob/user, distance, infix, suffix)
. = ..()
-
- if(!Adjacent(user))
+ if(distance > 1)
return .
-
if(pdiff >= FIREDOOR_MAX_PRESSURE_DIFF)
. += "WARNING: Current pressure differential is [pdiff]kPa! Opening door may result in injury!"
-
. += "Sensor readings:"
for(var/index = 1; index <= tile_info.len; index++)
var/o = " "
diff --git a/code/game/machinery/fire_alarm.dm b/code/game/machinery/fire_alarm.dm
index 908abef4bd0..1ce1e76c09a 100644
--- a/code/game/machinery/fire_alarm.dm
+++ b/code/game/machinery/fire_alarm.dm
@@ -26,7 +26,7 @@ FIRE ALARM
/obj/machinery/firealarm/alarms_hidden
alarms_hidden = TRUE
-/obj/machinery/firealarm/examine()
+/obj/machinery/firealarm/examine(mob/user, distance, infix, suffix)
. = ..()
. += "Current security level: [seclevel]"
diff --git a/code/game/machinery/floorlayer.dm b/code/game/machinery/floorlayer.dm
index 5dcfe90d6e0..5d9187d0f33 100644
--- a/code/game/machinery/floorlayer.dm
+++ b/code/game/machinery/floorlayer.dm
@@ -63,7 +63,7 @@
return
..()
-/obj/machinery/floorlayer/examine(mob/user)
+/obj/machinery/floorlayer/examine(mob/user, distance, infix, suffix)
. = ..()
var/dismantle = mode["dismantle"]
var/laying = mode["laying"]
@@ -107,4 +107,4 @@
/obj/machinery/floorlayer/proc/CollectTiles(var/turf/w_turf)
for(var/obj/item/stack/tile/tile in w_turf)
- TakeTile(tile)
\ No newline at end of file
+ TakeTile(tile)
diff --git a/code/game/machinery/frame.dm b/code/game/machinery/frame.dm
index c8370fb8ab8..bcf0f790b26 100644
--- a/code/game/machinery/frame.dm
+++ b/code/game/machinery/frame.dm
@@ -256,7 +256,7 @@
anchored = TRUE
density = TRUE
-/obj/structure/frame/examine(mob/user)
+/obj/structure/frame/examine(mob/user, distance, infix, suffix)
. = ..()
if(circuit)
. += "It has \a [circuit] installed."
diff --git a/code/game/machinery/iv_drip.dm b/code/game/machinery/iv_drip.dm
index 99efb2b3650..00162a847bd 100644
--- a/code/game/machinery/iv_drip.dm
+++ b/code/game/machinery/iv_drip.dm
@@ -164,12 +164,10 @@
mode = !mode
to_chat(usr, "The IV drip is now [mode ? "injecting" : "taking blood"].")
-/obj/machinery/iv_drip/examine(mob/user)
+/obj/machinery/iv_drip/examine(mob/user, distance, infix, suffix)
. = ..()
-
- if(get_dist(user, src) <= 2)
+ if(distance < 3)
. += "The IV drip is [mode ? "injecting" : "taking blood"]."
-
if(beaker)
if(beaker.reagents?.reagent_list?.len)
. += "Attached is \a [beaker] with [beaker.reagents.total_volume] units of liquid."
diff --git a/code/game/machinery/lightswitch.dm b/code/game/machinery/lightswitch.dm
index d87f8cc5804..1f12076a0ab 100644
--- a/code/game/machinery/lightswitch.dm
+++ b/code/game/machinery/lightswitch.dm
@@ -50,9 +50,9 @@
add_overlay(overlay)
set_light(2, 0.1, on ? "#82FF4C" : "#F86060")
-/obj/machinery/light_switch/examine(mob/user)
+/obj/machinery/light_switch/examine(mob/user, distance, infix, suffix)
. = ..()
- if(Adjacent(user))
+ if(distance < 2)
. += "A light switch. It is [on? "on" : "off"]."
/obj/machinery/light_switch/attack_hand(mob/user)
@@ -84,4 +84,4 @@
..(severity)
return
power_change()
- ..(severity)
\ No newline at end of file
+ ..(severity)
diff --git a/code/game/machinery/oxygen_pump.dm b/code/game/machinery/oxygen_pump.dm
index c848f15b94a..e388575700f 100644
--- a/code/game/machinery/oxygen_pump.dm
+++ b/code/game/machinery/oxygen_pump.dm
@@ -150,7 +150,7 @@
if(istype(W, /obj/item/tank) && !stat)
to_chat(user, "Please open the maintenance hatch first.")
-/obj/machinery/oxygen_pump/examine(var/mob/user)
+/obj/machinery/oxygen_pump/examine(mob/user, distance, infix, suffix)
. = ..()
if(tank)
. += "The meter shows [round(tank.air_contents.return_pressure())] kPa."
diff --git a/code/game/machinery/pipe/pipelayer.dm b/code/game/machinery/pipe/pipelayer.dm
index be5550e7960..3b9831c477c 100644
--- a/code/game/machinery/pipe/pipelayer.dm
+++ b/code/game/machinery/pipe/pipelayer.dm
@@ -114,7 +114,7 @@
..()
-/obj/machinery/pipelayer/examine(mob/user)
+/obj/machinery/pipelayer/examine(mob/user, distance, infix, suffix)
. = ..()
. += "[src] has [metal] sheet\s, is set to produce [P_type_t], and auto-dismantling is [!a_dis?"de":""]activated."
diff --git a/code/game/machinery/recharger.dm b/code/game/machinery/recharger.dm
index 87a993afd49..ed96812226b 100644
--- a/code/game/machinery/recharger.dm
+++ b/code/game/machinery/recharger.dm
@@ -21,10 +21,9 @@
. = ..()
default_apply_parts()
-/obj/machinery/recharger/examine(mob/user)
+/obj/machinery/recharger/examine(mob/user, distance, infix, suffix)
. = ..()
-
- if(get_dist(user, src) <= 5)
+ if(distance < 6)
. += "[charging ? "[charging]" : "Nothing"] is in [src]."
if(charging)
var/obj/item/cell/C = charging.get_cell()
@@ -171,4 +170,4 @@
icon_state_charging = "wrecharger1"
icon_state_idle = "wrecharger0"
portable = 0
- circuit = /obj/item/circuitboard/recharger/wrecharger
\ No newline at end of file
+ circuit = /obj/item/circuitboard/recharger/wrecharger
diff --git a/code/game/machinery/rechargestation.dm b/code/game/machinery/rechargestation.dm
index 18287be44c6..55953c37992 100644
--- a/code/game/machinery/rechargestation.dm
+++ b/code/game/machinery/rechargestation.dm
@@ -125,7 +125,7 @@
var/charge_used = cell.use(diff)
rigcell.give(charge_used)
-/obj/machinery/recharge_station/examine(mob/user)
+/obj/machinery/recharge_station/examine(mob/user, distance, infix, suffix)
. = ..()
. += "The charge meter reads: [round(chargepercentage())]%"
@@ -322,4 +322,4 @@
icon_state = "borg_pod_opened"
if(icon_update_tick == 0)
- build_overlays()
\ No newline at end of file
+ build_overlays()
diff --git a/code/game/machinery/spaceheater.dm b/code/game/machinery/spaceheater.dm
index 975a67a0155..b04a35285dd 100644
--- a/code/game/machinery/spaceheater.dm
+++ b/code/game/machinery/spaceheater.dm
@@ -40,15 +40,13 @@
add_overlay("sheater-open")
-/obj/machinery/space_heater/examine(mob/user)
+/obj/machinery/space_heater/examine(mob/user, distance, infix, suffix)
. = ..()
-
. += "The heater is [on ? "on" : "off"] and the hatch is [panel_open ? "open" : "closed"]."
if(panel_open)
. += "The power cell is [cell ? "installed" : "missing"]."
else
. += "The charge meter reads [cell ? round(cell.percent(),1) : 0]%"
- return
/obj/machinery/space_heater/powered()
if(cell && cell.charge)
diff --git a/code/game/machinery/status_display.dm b/code/game/machinery/status_display.dm
index 4ead0b6d15f..2a027c8a593 100644
--- a/code/game/machinery/status_display.dm
+++ b/code/game/machinery/status_display.dm
@@ -146,7 +146,7 @@
return 1
return 0
-/obj/machinery/status_display/examine(mob/user)
+/obj/machinery/status_display/examine(mob/user, distance, infix, suffix)
. = ..()
if(mode != STATUS_DISPLAY_BLANK && mode != STATUS_DISPLAY_ALERT)
. += "The display says:
\t[sanitize(message1)]
\t[sanitize(message2)]"
@@ -264,4 +264,4 @@
#undef FONT_SIZE
#undef FONT_COLOR
#undef FONT_STYLE
-#undef SCROLL_SPEED
\ No newline at end of file
+#undef SCROLL_SPEED
diff --git a/code/game/mecha/components/_component.dm b/code/game/mecha/components/_component.dm
index a12bf6c90f6..0f668ee5e42 100644
--- a/code/game/mecha/components/_component.dm
+++ b/code/game/mecha/components/_component.dm
@@ -25,7 +25,7 @@
var/internal_damage_flag // If set, the component will toggle the flag on or off if it is destroyed / severely damaged.
-/obj/item/mecha_parts/component/examine(mob/user)
+/obj/item/mecha_parts/component/examine(mob/user, distance, infix, suffix)
. = ..()
var/show_integrity = round(integrity/max_integrity*100, 0.1)
switch(show_integrity)
diff --git a/code/game/mecha/equipment/mecha_equipment.dm b/code/game/mecha/equipment/mecha_equipment.dm
index 64cc2e6d46a..f1483ea332b 100644
--- a/code/game/mecha/equipment/mecha_equipment.dm
+++ b/code/game/mecha/equipment/mecha_equipment.dm
@@ -35,7 +35,7 @@
return 1
return 0
-/obj/item/mecha_parts/mecha_equipment/examine(mob/user)
+/obj/item/mecha_parts/mecha_equipment/examine(mob/user, distance, infix, suffix)
. = ..()
. += "[src] will fill [equip_type?"a [equip_type]":"any"] slot."
diff --git a/code/game/mecha/mecha.dm b/code/game/mecha/mecha.dm
index 622b8f89d36..a71f67e9154 100644
--- a/code/game/mecha/mecha.dm
+++ b/code/game/mecha/mecha.dm
@@ -501,28 +501,21 @@
else
return 0
-/obj/mecha/examine(mob/user)
+/obj/mecha/examine(mob/user, distance, infix, suffix)
. = ..()
-
var/obj/item/mecha_parts/component/armor/AC = internal_components[MECH_ARMOR]
-
var/obj/item/mecha_parts/component/hull/HC = internal_components[MECH_HULL]
-
if(AC)
. += "It has [AC] attached. [AC.get_efficiency()<0.5?"It is severely damaged.":""]"
else
. += "It has no armor plating."
-
if(HC)
if(!AC || AC.get_efficiency() < 0.7)
. += "It has [HC] attached. [HC.get_efficiency()<0.5?"It is severely damaged.":""]"
else
. += "You cannot tell what type of hull it has."
-
else
. += "It does not seem to have a completed hull."
-
-
var/integrity = health/initial(health)*100
switch(integrity)
if(85 to 100)
diff --git a/code/game/objects/effects/decals/Cleanable/humans.dm b/code/game/objects/effects/decals/Cleanable/humans.dm
index cd2a5741162..13852cacd79 100644
--- a/code/game/objects/effects/decals/Cleanable/humans.dm
+++ b/code/game/objects/effects/decals/Cleanable/humans.dm
@@ -161,7 +161,7 @@ var/global/list/image/splatter_cache=list()
else
icon_state = "writing1"
-/obj/effect/decal/cleanable/blood/writing/examine(mob/user)
+/obj/effect/decal/cleanable/blood/writing/examine(mob/user, distance, infix, suffix)
. = ..()
. += "It reads: \"[message]\""
diff --git a/code/game/objects/items.dm b/code/game/objects/items.dm
index 249d0760b61..7f1e2e29677 100644
--- a/code/game/objects/items.dm
+++ b/code/game/objects/items.dm
@@ -200,20 +200,8 @@
src.loc = T
// See inventory_sizes.dm for the defines.
-/obj/item/examine(mob/user)
- var/size
- switch(src.w_class)
- if(ITEMSIZE_TINY)
- size = "tiny"
- if(ITEMSIZE_SMALL)
- size = "small"
- if(ITEMSIZE_NORMAL)
- size = "normal-sized"
- if(ITEMSIZE_LARGE)
- size = "bulky"
- if(ITEMSIZE_HUGE)
- size = "huge"
- . = ..(user, "", "It is a [size] item.")
+/obj/item/examine(mob/user, distance, infix, suffix)
+ . = ..(user, distance, infix, "It is a [w_class_to_name(w_class)] item.")
if(drying_wetness > 0 && drying_wetness != initial(drying_wetness))
. += "\The [src] is [get_dryness_text()]."
@@ -979,3 +967,20 @@ modules/mob/living/carbon/human/life.dm if you die, you will be zoomed out.
/obj/item/proc/handle_movement(var/turf/walking, var/running)
return FALSE
+
+
+/// Returns the item's w_class as text.
+/proc/w_class_to_name(w_class)
+ switch (w_class)
+ if (ITEMSIZE_TINY)
+ return "tiny"
+ if (ITEMSIZE_SMALL)
+ return "small"
+ if (ITEMSIZE_NORMAL)
+ return "normal"
+ if (ITEMSIZE_LARGE)
+ return "large"
+ if (ITEMSIZE_HUGE)
+ return "huge"
+ else
+ return "buggy"
diff --git a/code/game/objects/items/bells.dm b/code/game/objects/items/bells.dm
index 27ba85d9986..2c824ed34fd 100644
--- a/code/game/objects/items/bells.dm
+++ b/code/game/objects/items/bells.dm
@@ -13,7 +13,7 @@
var/static/radial_use = image(icon = 'icons/mob/radial.dmi', icon_state = "radial_use")
var/static/radial_pickup = image(icon = 'icons/mob/radial.dmi', icon_state = "radial_pickup")
-/obj/item/deskbell/examine(mob/user)
+/obj/item/deskbell/examine(mob/user, distance, infix, suffix)
. = ..()
if(broken)
. += "It looks damaged, the ringer is stuck firmly inside."
diff --git a/code/game/objects/items/bodybag.dm b/code/game/objects/items/bodybag.dm
index bbb111b5dc2..b342dace1d9 100644
--- a/code/game/objects/items/bodybag.dm
+++ b/code/game/objects/items/bodybag.dm
@@ -214,14 +214,14 @@
if(H.reagents)
syringe.reagents.trans_to_mob(H, 30, CHEM_BLOOD)
-/obj/structure/closet/body_bag/cryobag/examine(mob/user)
+/obj/structure/closet/body_bag/cryobag/examine(mob/user, distance, infix, suffix)
. = ..()
- if(Adjacent(user)) //The bag's rather thick and opaque from a distance.
+ if(distance < 2) //The bag's rather thick and opaque from a distance.
. += "You peer into \the [src]."
if(syringe)
. += "It has a syringe added to it."
for(var/mob/living/L in contents)
- . += L.examine(user)
+ . += L.examine(user, distance, infix, suffix)
/obj/structure/closet/body_bag/cryobag/attackby(obj/item/W, mob/user)
if(opened)
diff --git a/code/game/objects/items/contraband.dm b/code/game/objects/items/contraband.dm
index 3f4a7b002fc..3b240f033d0 100644
--- a/code/game/objects/items/contraband.dm
+++ b/code/game/objects/items/contraband.dm
@@ -69,9 +69,9 @@
color = reagents.get_color()
-/obj/item/reagent_containers/powder/examine(mob/user)
+/obj/item/reagent_containers/powder/examine(mob/user, distance, infix, suffix)
. = ..()
- if (isliving(user) && get_dist(user, src) > 2)
+ if (distance > 2 && isliving(user))
return
. += "It seems to be about [reagents.total_volume] units of [main_reagent_name]."
diff --git a/code/game/objects/items/devices/communicator/communicator.dm b/code/game/objects/items/devices/communicator/communicator.dm
index 55b889ef61c..5a656e7a18a 100644
--- a/code/game/objects/items/devices/communicator/communicator.dm
+++ b/code/game/objects/items/devices/communicator/communicator.dm
@@ -112,9 +112,9 @@ var/global/list/obj/item/communicator/all_communicators = list()
// Proc: examine()
// Parameters: user - the user doing the examining
// Description: Allows the user to click a link when examining to look at video if one is going.
-/obj/item/communicator/examine(mob/user)
+/obj/item/communicator/examine(mob/user, distance, infix, suffix)
. = ..()
- if(Adjacent(user) && video_source)
+ if(distance < 2 && video_source)
. += "It looks like it's on a video call: \[view\]"
// Proc: initialize_exonet()
@@ -135,12 +135,10 @@ var/global/list/obj/item/communicator/all_communicators = list()
// Proc: examine()
// Parameters: 1 (user - the person examining the device)
// Description: Shows all the voice mobs inside the device, and their status.
-/obj/item/communicator/examine(mob/user)
+/obj/item/communicator/examine(mob/user, distance, infix, suffix)
. = ..()
-
for(var/mob/living/voice/voice in contents)
. += "On the screen, you can see a image feed of [voice]."
-
if(voice && voice.key)
switch(voice.stat)
if(CONSCIOUS)
diff --git a/code/game/objects/items/devices/flashlight.dm b/code/game/objects/items/devices/flashlight.dm
index e53662893ce..3a543706305 100644
--- a/code/game/objects/items/devices/flashlight.dm
+++ b/code/game/objects/items/devices/flashlight.dm
@@ -82,7 +82,7 @@
icon_state = "[initial(icon_state)]"
set_light(0)
-/obj/item/flashlight/examine(mob/user)
+/obj/item/flashlight/examine(mob/user, distance, infix, suffix)
. = ..()
if(power_use && brightness_level)
. += "\The [src] is set to [brightness_level]."
diff --git a/code/game/objects/items/devices/floor_painter.dm b/code/game/objects/items/devices/floor_painter.dm
index e2c6e07917e..099884527ce 100644
--- a/code/game/objects/items/devices/floor_painter.dm
+++ b/code/game/objects/items/devices/floor_painter.dm
@@ -113,7 +113,7 @@
else if(choice == "Colour")
choose_colour()
-/obj/item/floor_painter/examine(mob/user)
+/obj/item/floor_painter/examine(mob/user, distance, infix, suffix)
. = ..()
. += "It is configured to produce the '[decal]' decal with a direction of '[paint_dir]' using [paint_colour] paint."
diff --git a/code/game/objects/items/devices/geiger.dm b/code/game/objects/items/devices/geiger.dm
index 06850322141..1b69bf5853b 100644
--- a/code/game/objects/items/devices/geiger.dm
+++ b/code/game/objects/items/devices/geiger.dm
@@ -34,7 +34,7 @@
update_icon()
update_sound()
-/obj/item/geiger/examine(mob/user)
+/obj/item/geiger/examine(mob/user, distance, infix, suffix)
. = ..()
get_radiation()
. += "[scanning ? "Ambient" : "Stored"] radiation level: [radiation_count ? radiation_count : "0"]Bq."
diff --git a/code/game/objects/items/devices/holowarrant.dm b/code/game/objects/items/devices/holowarrant.dm
index e3cef6166b1..ff71f3b39cc 100644
--- a/code/game/objects/items/devices/holowarrant.dm
+++ b/code/game/objects/items/devices/holowarrant.dm
@@ -13,11 +13,11 @@
var/datum/data/record/warrant/active
//look at it
-/obj/item/holowarrant/examine(mob/user)
+/obj/item/holowarrant/examine(mob/user, distance, infix, suffix)
. = ..()
if(active)
. += "It's a holographic warrant for '[active.fields["namewarrant"]]'."
- if(in_range(user, src) || istype(user, /mob/observer/dead))
+ if(distance < 2 || istype(user, /mob/observer/dead))
show_content(user) //Opens a browse window, not chatbox related
else
. += "You have to go closer if you want to read it."
@@ -110,4 +110,4 @@
Vessel or habitat: _[using_map.station_name]____