[MIRROR] Various QoL (#12720)

Co-authored-by: Cameron Lennox <killer65311@gmail.com>
This commit is contained in:
CHOMPStation2StaffMirrorBot
2026-05-01 00:49:39 -04:00
committed by GitHub
co-authored by Cameron Lennox
parent 72d0a4f8ff
commit e763f2dff1
15 changed files with 60 additions and 26 deletions
+13 -6
View File
@@ -66,8 +66,12 @@
if(current_size >= STAGE_FIVE)
atom_deconstruct(TRUE)
/obj/machinery/disposal/MouseDrop_T(atom/dropping, mob/user, src_location, over_location, src_control, over_control, params)
if(Adjacent(user) && Adjacent(dropping) && isobj(dropping) && isturf(dropping.loc))
attackby(dropping, user, drag_dropped = TRUE)
// attack by item places it in to disposal
/obj/machinery/disposal/attackby(obj/item/I, mob/user)
/obj/machinery/disposal/attackby(obj/item/I, mob/user, attack_modifier, click_parameters, drag_dropped = FALSE)
if(stat & BROKEN || !I || !user)
return
@@ -143,12 +147,13 @@
add_attack_logs(user,GM,"Disposals dunked")
return
if(isrobot(user))
if(isrobot(user) && !drag_dropped) //Borgs are allowed to drag-drop items into the disposal unit.
return
if(!I || I.anchored || !I.canremove)
return
user.drop_item()
if(!drag_dropped)
user.drop_item()
if(I)
if(istype(I, /obj/item/holder))
var/obj/item/holder/holder = I
@@ -262,9 +267,11 @@
// mouse drop another mob or self
//
/obj/machinery/disposal/MouseDrop_T(mob/living/target, mob/living/user)
if(istype(target))
stuff_mob_in(target, user)
/obj/machinery/disposal/MouseDrop_T(atom/dropping, mob/user, src_location, over_location, src_control, over_control, params)
if(isliving(dropping))
stuff_mob_in(dropping, user)
else if(isobj(dropping) && isturf(dropping.loc))
attackby(dropping, user, drag_dropped = TRUE)
/obj/machinery/disposal/proc/stuff_mob_in(mob/living/target, mob/living/user)
//animals cannot put mobs other than themselves into disposal
+1 -1
View File
@@ -45,7 +45,7 @@
source.forceMove(src)
flush()
/obj/machinery/disposal/deliveryChute/attackby(var/obj/item/I, var/mob/user)
/obj/machinery/disposal/deliveryChute/attackby(obj/item/I, mob/user, attack_modifier, click_parameters, drag_dropped = FALSE)
if(!I || !user)
return