Fix modsuits and defibs (#93373)

## About The Pull Request

Fixes #93359

Caused by #93165

Inventory screen elements were no longer considered reachable, which
broke mousedrop handing on objects that check "is dragging into
inventory slot"

I don't know the best way to fix this yet but I figured the next best
thing would be to make all of these use the `drag_pickup` element, which
skips this reach-ability check

Thus I refactored it slightly to accommodate for items which should
contextually not be drag-pick-up-abble and bam, works like a charm

## Changelog

🆑 Melbert
fix: Dragging defibs and modsuits off your back works again
/🆑

---------

Co-authored-by: ArcaneMusic <41715314+ArcaneMusic@users.noreply.github.com>
Co-authored-by: Xander3359 <66163761+Xander3359@users.noreply.github.com>
This commit is contained in:
MrMelbert
2025-10-11 18:17:23 -04:00
committed by GitHub
co-authored by ArcaneMusic Xander3359
parent 4bdce87fee
commit da10322dc1
16 changed files with 73 additions and 130 deletions
+4 -2
View File
@@ -611,7 +611,7 @@
if(throwing)
throwing.finalize(FALSE)
if(loc == user && outside_storage)
if(!allow_attack_hand_drop(user) || !user.temporarilyRemoveItemFromInventory(src))
if(!can_mob_unequip(user) || !user.temporarilyRemoveItemFromInventory(src))
return
. = FALSE
@@ -621,7 +621,9 @@
user.dropItemToGround(src)
return TRUE
/obj/item/proc/allow_attack_hand_drop(mob/user)
/// Called when a mob is manually attempting to unequip the item
/// Returning FALSE will prevent the unequip from happening
/obj/item/proc/can_mob_unequip(mob/user)
return TRUE
/obj/item/attack_paw(mob/user, list/modifiers)