diff --git a/code/modules/mining/ores_coins.dm b/code/modules/mining/ores_coins.dm
index b54b990c77..f6b7110803 100644
--- a/code/modules/mining/ores_coins.dm
+++ b/code/modules/mining/ores_coins.dm
@@ -102,7 +102,22 @@ GLOBAL_LIST_INIT(sand_recipes, list(\
/obj/item/stack/ore/glass/throw_impact(atom/hit_atom, datum/thrownthing/throwingdatum)
if(..() || !ishuman(hit_atom))
return
- var/mob/living/carbon/human/C = hit_atom
+ var/mob/living/carbon/human/poorsod = hit_atom
+ eyesand(poorsod)
+
+/obj/item/stack/ore/glass/attack(mob/living/M, mob/living/user)
+ if(!ishuman(M))
+ return ..()
+ if(user.zone_selected != BODY_ZONE_PRECISE_EYES && user.zone_selected != BODY_ZONE_HEAD)
+ return ..()
+ var/mob/living/carbon/human/poorsod = M
+ visible_message("[user] throws the sand at [poorsod]'s face!")
+ if(ishuman(user))
+ var/mob/living/carbon/human/sayer = user
+ sayer.forcesay("POCKET SAAND!!")
+ eyesand(poorsod)
+
+/obj/item/stack/ore/glass/proc/eyesand(mob/living/carbon/human/C)
if(C.head && C.head.flags_cover & HEADCOVERSEYES)
visible_message("[C]'s headgear blocks the sand!")
return
@@ -116,8 +131,10 @@ GLOBAL_LIST_INIT(sand_recipes, list(\
C.adjustStaminaLoss(15)//the pain from your eyes burning does stamina damage
C.confused += 5
to_chat(C, "\The [src] gets into your eyes! The pain, it burns!")
+ C.forcesay("*scream")
qdel(src)
+
/obj/item/stack/ore/glass/ex_act(severity, target)
if (severity == EXPLODE_NONE)
return