From 82ae6f55ffcb565f032c9ef821d27b55b5f8322b Mon Sep 17 00:00:00 2001 From: Helg2 Date: Sat, 20 Jul 2024 12:17:03 +0300 Subject: [PATCH 1/2] eh --- code/game/turfs/space/transit.dm | 8 ++++++-- code/modules/mob/living/carbon/xenomorph/xenomorph.dm | 4 ++-- 2 files changed, 8 insertions(+), 4 deletions(-) diff --git a/code/game/turfs/space/transit.dm b/code/game/turfs/space/transit.dm index 7c889a5ef23..8903301bee3 100644 --- a/code/game/turfs/space/transit.dm +++ b/code/game/turfs/space/transit.dm @@ -39,7 +39,10 @@ return if(!isspaceturf(old_loc)) - var/turf/projected = get_ranged_target_turf(crosser.loc, dir, 10) + var/direction = dir + if(crosser.dir == REVERSE_DIR(dir)) // if mobs step in the reversed from transit turf direction, they will otherwise get smacked 2 times in a row. + direction = crosser.dir + var/turf/projected = get_ranged_target_turf(crosser.loc, direction, 10) INVOKE_ASYNC(crosser, TYPE_PROC_REF(/atom/movable, throw_at), projected, 50, 2, null, TRUE, targetted_throw = TRUE) addtimer(CALLBACK(src, PROC_REF(handle_crosser), crosser), 0.5 SECONDS) @@ -69,7 +72,7 @@ continue if(!istype(possible_turf) || is_blocked_turf(possible_turf) || isspaceturf(possible_turf)) - continue // couldnt find one in 10 loops, check another area + continue // couldn't find one in 10 loops, check another area // we found a good turf, lets drop em crosser.handle_airdrop(possible_turf) @@ -99,6 +102,7 @@ ex_act(2000) //Destroy it cell_explosion(target, 300, 100) flame_radius(6, target) + dump_mobs() /obj/structure/closet/handle_airdrop(turf/target_turf) // good idea but no if(!opened) diff --git a/code/modules/mob/living/carbon/xenomorph/xenomorph.dm b/code/modules/mob/living/carbon/xenomorph/xenomorph.dm index 5cc5ffd2856..40cdb6ce118 100644 --- a/code/modules/mob/living/carbon/xenomorph/xenomorph.dm +++ b/code/modules/mob/living/carbon/xenomorph/xenomorph.dm @@ -415,7 +415,7 @@ handle_weeds_on_movement() return ..() -/mob/living/carbon/xenomorph/Move(NewLoc, direct) +/mob/living/carbon/xenomorph/Move(NewLoc, direct, glide_size_override) . = ..() if(!.) return @@ -423,7 +423,7 @@ unset_interaction() /mob/living/carbon/xenomorph/CanAllowThrough(atom/movable/mover, turf/target) - if(mover.pass_flags & PASS_XENO) // RUTGMC ADDITION + if(mover.pass_flags & PASS_XENO) return TRUE if(mover.throwing && ismob(mover) && isxeno(mover.thrower)) //xenos can throw mobs past other xenos return TRUE From 500094c06b02b1854a74c8da0e3b85a7ab073cba Mon Sep 17 00:00:00 2001 From: Helg2 Date: Sat, 20 Jul 2024 15:19:22 +0300 Subject: [PATCH 2/2] Update transit.dm --- code/game/turfs/space/transit.dm | 1 - 1 file changed, 1 deletion(-) diff --git a/code/game/turfs/space/transit.dm b/code/game/turfs/space/transit.dm index 8903301bee3..787b5e8b7ab 100644 --- a/code/game/turfs/space/transit.dm +++ b/code/game/turfs/space/transit.dm @@ -102,7 +102,6 @@ ex_act(2000) //Destroy it cell_explosion(target, 300, 100) flame_radius(6, target) - dump_mobs() /obj/structure/closet/handle_airdrop(turf/target_turf) // good idea but no if(!opened)