diff --git a/code/game/objects/items/devices/flash.dm b/code/game/objects/items/devices/flash.dm
index 3d37f120bc6..955ee1c312c 100644
--- a/code/game/objects/items/devices/flash.dm
+++ b/code/game/objects/items/devices/flash.dm
@@ -109,10 +109,16 @@
return 1
else if(issilicon(M))
- M.Weaken(rand(5,10))
- add_logs(M, user, "flashed", object="[src.name]")
- user.visible_message("[user] overloads [M]'s sensors with the [src.name]!", "You overload [M]'s sensors with the [src.name]!")
- return 1
+ var/mob/living/silion/robot/R = M
+ if(R.module_active && istype(R.module_active,/obj/item/borg/combat/shield))
+ add_logs(M, user, "flashed", object="[src.name]")
+ user.visible_message("[user] tries to overloads [M]'s sensors with the [src.name], but if blocked by [M]'s shield!", "You try to overload [M]'s sensors with the [src.name], but are blocked by his shield!")
+ return 1
+ else
+ M.Weaken(rand(5,10))
+ add_logs(M, user, "flashed", object="[src.name]")
+ user.visible_message("[user] overloads [M]'s sensors with the [src.name]!", "You overload [M]'s sensors with the [src.name]!")
+ return 1
user.visible_message("[user] fails to blind [M] with the [src.name]!", "You fail to blind [M] with the [src.name]!")