From 45fc223d4c77c909fab6b49e4e14101d0108bd3f Mon Sep 17 00:00:00 2001 From: VexingRaven Date: Tue, 15 Nov 2022 02:49:53 -0600 Subject: [PATCH] Fixes Soul Scythe being able to get to Centcom by moving down on the bottom Z-level (#71171) ## About The Pull Request `/obj/item/soulscythe/relaymove()` was using `get_step()` which doesn't understand our multi-z system and was happily trying to move Z - 1 which is Centcom. I'm still not really sure I understand why move() allowed the scythe to just move right through the floor in this case, I think moving to turfs with `density = 0` is also behaving strangely and just skipping some checks that should keep it from moving through the floor, but to be honest I don't fully understand the move chain and just changing to `get_step_multiz()` at least keeps the scythe from going to Z-levels it shouldn't. ## Why It's Good For The Game Whilst it is fun for the scythe to go on an adventure to forbidden Z-levels, admins probably don't appreciate these adventures so much. ## Changelog :cl: VexingRaven fix: Soul Scythes can no longer phase through the floor into Centcom. /:cl: --- code/modules/mining/lavaland/megafauna_loot.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/mining/lavaland/megafauna_loot.dm b/code/modules/mining/lavaland/megafauna_loot.dm index 8fe01bd4d1a..159e54ea883 100644 --- a/code/modules/mining/lavaland/megafauna_loot.dm +++ b/code/modules/mining/lavaland/megafauna_loot.dm @@ -439,7 +439,7 @@ return if(pixel_x != base_pixel_x || pixel_y != base_pixel_y) animate(src, 0.2 SECONDS, pixel_x = base_pixel_y, pixel_y = base_pixel_y, flags = ANIMATION_PARALLEL) - Move(get_step(src, direction), direction) + Move(get_step_multiz(src, direction), direction) COOLDOWN_START(src, move_cooldown, (direction in GLOB.cardinals) ? 0.1 SECONDS : 0.2 SECONDS) /obj/item/soulscythe/throw_impact(atom/hit_atom, datum/thrownthing/throwingdatum)