diff --git a/code/__HELPERS/unsorted.dm b/code/__HELPERS/unsorted.dm
index 51f52265cde..d866f3186fe 100644
--- a/code/__HELPERS/unsorted.dm
+++ b/code/__HELPERS/unsorted.dm
@@ -810,7 +810,7 @@ Turf and target are seperate in case you want to teleport some distance from a t
if(needhand)
//This might seem like an odd check, but you can still need a hand even when it's empty
//i.e the hand is used to insert some item/tool into the construction
- if(!holdingnull)
+ if(!holdingnull)
if(!holding)
return 0
if(user.get_active_hand() != holding)
@@ -1332,7 +1332,7 @@ var/list/WALLITEMS = list(
/obj/proc/atmosanalyzer_scan(var/datum/gas_mixture/air_contents, mob/user, var/obj/target = src)
var/obj/icon = target
- user.visible_message("[user] has used the analyzer on \icon[icon] [target].")
+ user.visible_message("[user] has used the analyzer on \icon[icon] [target].", "You use the analyzer on \icon[icon] [target].")
var/pressure = air_contents.return_pressure()
var/total_moles = air_contents.total_moles()
diff --git a/code/_onclick/item_attack.dm b/code/_onclick/item_attack.dm
index b2f0fd6fcdf..62a575b11d1 100644
--- a/code/_onclick/item_attack.dm
+++ b/code/_onclick/item_attack.dm
@@ -11,6 +11,8 @@
user.do_attack_animation(src)
if(W && !(W.flags&NOBLUDGEON))
visible_message("[user] has hit [src] with [W].")
+ user << "You hit [src] with [W]."
+ src << "[user] has hit you with [W]!"
/mob/living/attackby(obj/item/I, mob/user, params)
user.changeNext_move(CLICK_CD_MELEE)
diff --git a/code/game/objects/items/devices/flash.dm b/code/game/objects/items/devices/flash.dm
index 39957f1454b..8901d2dd0ad 100644
--- a/code/game/objects/items/devices/flash.dm
+++ b/code/game/objects/items/devices/flash.dm
@@ -66,13 +66,15 @@
M.confused += power
terrible_conversion_proc(M, user)
M.Stun(1)
- user.visible_message("[user] blinds [M] with the flash!", "You blind [M] with the flash!")
+ visible_message("[user] blinds [M] with the flash!")
+ user << "You blind [M] with the flash!"
M << "[user] blinds you with the flash!"
if(M.weakeyes)
M.Stun(2)
M.visible_message("[M] gasps and shields their eyes!", "You gasp and shields your eyes!")
else
- user.visible_message("[user] fails to blind [M] with the flash!", "You fail to blind [M] with the flash!")
+ visible_message("[user] fails to blind [M] with the flash!")
+ user << "You fail to blind [M] with the flash!"
M << "[user] fails to blind you with the flash!"
else
if(M.flash_eyes())
diff --git a/code/modules/surgery/xenomorph_removal.dm b/code/modules/surgery/xenomorph_removal.dm
index 55a7f499eda..15f83e82622 100644
--- a/code/modules/surgery/xenomorph_removal.dm
+++ b/code/modules/surgery/xenomorph_removal.dm
@@ -13,7 +13,7 @@
time = 64
/datum/surgery_step/xenomorph_removal/preop(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
- user.visible_message("[user] begins to search in [target]'s chest for a xenomorph embryo.", "You begin to search in [target]'s chest for a xenomorph embryo...")
+ user.visible_message("[user] begins to search in [target]'s chest for a xenomorph embryo.", "You begin to search in [target]'s chest for a xenomorph embryo...")
/datum/surgery_step/xenomorph_removal/success(mob/user, mob/living/carbon/target, target_zone, obj/item/tool, datum/surgery/surgery)
if(remove_xeno(user, target))
diff --git a/code/modules/telesci/bscrystal.dm b/code/modules/telesci/bscrystal.dm
index 7c64352ca8f..c006939d876 100644
--- a/code/modules/telesci/bscrystal.dm
+++ b/code/modules/telesci/bscrystal.dm
@@ -17,7 +17,7 @@
/obj/item/bluespace_crystal/attack_self(var/mob/user)
- user.visible_message("[user] crushes [src]!")
+ user.visible_message("[user] crushes [src]!", "You crush [src]!")
PoolOrNew(/obj/effect/effect/sparks, loc)
playsound(src.loc, "sparks", 50, 1)
blink_mob(user)
diff --git a/code/modules/telesci/telesci_computer.dm b/code/modules/telesci/telesci_computer.dm
index 36a63154d1a..6d602467fa1 100644
--- a/code/modules/telesci/telesci_computer.dm
+++ b/code/modules/telesci/telesci_computer.dm
@@ -61,14 +61,14 @@
user.drop_item()
crystals += W
W.loc = null
- user.visible_message("[user] inserts [W] into \the [src]'s crystal slot.")
+ user.visible_message("[user] inserts [W] into \the [src]'s crystal slot.", "You insert [W] into \the [src]'s crystal slot.")
updateDialog()
else if(istype(W, /obj/item/device/gps))
if(!inserted_gps)
inserted_gps = W
user.unEquip(W)
W.loc = src
- user.visible_message("[user] inserts [W] into \the [src]'s GPS device slot.")
+ user.visible_message("[user] inserts [W] into \the [src]'s GPS device slot.", "You insert [W] into \the [src]'s GPS device slot.")
else if(istype(W, /obj/item/device/multitool))
var/obj/item/device/multitool/M = W
if(M.buffer && istype(M.buffer, /obj/machinery/telepad))