diff --git a/code/controllers/subsystem/throwing.dm b/code/controllers/subsystem/throwing.dm index de58c1a0d7..77ad712b99 100644 --- a/code/controllers/subsystem/throwing.dm +++ b/code/controllers/subsystem/throwing.dm @@ -116,7 +116,7 @@ SUBSYSTEM_DEF(throwing) return dist_travelled++ - + if (dist_travelled > MAX_THROWING_DIST) finalize() return @@ -154,7 +154,7 @@ SUBSYSTEM_DEF(throwing) /datum/thrownthing/proc/hitcheck() for (var/thing in get_turf(thrownthing)) var/atom/movable/AM = thing - if (AM == thrownthing) + if (AM == thrownthing || (AM == thrower && !ismob(thrownthing))) continue if (AM.density && !(AM.pass_flags & LETPASSTHROW) && !(AM.flags_1 & ON_BORDER_1)) finalize(hit=TRUE, target=AM) diff --git a/code/modules/antagonists/cult/cult_items.dm b/code/modules/antagonists/cult/cult_items.dm index 263d4b623e..6bef6fd021 100644 --- a/code/modules/antagonists/cult/cult_items.dm +++ b/code/modules/antagonists/cult/cult_items.dm @@ -990,6 +990,6 @@ continue throw_at(Next, 3, 1, D.thrower) return - throw_at(D.thrower, 7, 1, D.thrower) + throw_at(D.thrower, 7, 1, null) else ..() diff --git a/code/modules/mob/mob_movement.dm b/code/modules/mob/mob_movement.dm index cb532e4d5e..db08aa9376 100644 --- a/code/modules/mob/mob_movement.dm +++ b/code/modules/mob/mob_movement.dm @@ -8,7 +8,7 @@ if(ismob(mover)) if (mover in buckled_mobs) return TRUE - return (!mover.density || !density || lying) + return (!mover.density || !density || lying || (mover.throwing.thrower == src && !ismob(mover))) //DO NOT USE THIS UNLESS YOU ABSOLUTELY HAVE TO. THIS IS BEING PHASED OUT FOR THE MOVESPEED MODIFICATION SYSTEM. //See mob_movespeed.dm