BRPED provides user feedback for out-of-range exchanges and prevents false-positive logs (#17527)

* feedback change

* better fix

* even better fix

* Update code/game/objects/items/weapons/stock_parts.dm

Co-authored-by: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com>

Co-authored-by: SteelSlayer <42044220+SteelSlayer@users.noreply.github.com>
This commit is contained in:
Sirryan2002
2022-03-27 11:27:00 +01:00
committed by GitHub
co-authored by SteelSlayer
parent 35d3758a9f
commit 8c0ea90d19
@@ -24,12 +24,14 @@
/obj/item/storage/part_replacer/afterattack(obj/machinery/M, mob/user, flag, params)
if(!flag && works_from_distance && istype(M))
// Make sure its in range
if(M in view(user))
if(get_dist(src, M) <= (user.client.view + 2))
if(M.component_parts)
M.exchange_parts(user, src)
user.Beam(M,icon_state="rped_upgrade", icon='icons/effects/effects.dmi', time=5)
else
message_admins("\[EXPLOIT] [key_name_admin(user)] attempted to upgrade machinery with a BRPED via a camera console. (Attempted range exploit)")
playsound(src, 'sound/machines/synth_no.ogg', 15, TRUE)
to_chat(user, "<span class='notice'>ERROR: [M] is out of [src]'s range!</span>")
/obj/item/storage/part_replacer/bluespace
name = "bluespace rapid part exchange device"