diff --git a/code/game/atoms_movable.dm b/code/game/atoms_movable.dm index d5b3443cc01..d60959706d3 100644 --- a/code/game/atoms_movable.dm +++ b/code/game/atoms_movable.dm @@ -3,7 +3,7 @@ appearance_flags = TILE_BOUND glide_size = 8 // Default, adjusted when mobs move based on their movement delays var/last_move = null - var/anchored = 0 + var/anchored = FALSE var/move_resist = MOVE_RESIST_DEFAULT var/move_force = MOVE_FORCE_DEFAULT var/pull_force = PULL_FORCE_DEFAULT @@ -13,13 +13,15 @@ var/datum/thrownthing/throwing = null var/throw_speed = 2 //How many tiles to move per ds when being thrown. Float values are fully supported var/throw_range = 7 - var/no_spin = 0 - var/no_spin_thrown = 0 - var/moved_recently = 0 + var/no_spin = FALSE + var/no_spin_thrown = FALSE + var/moved_recently = FALSE var/mob/pulledby = null var/atom/movable/pulling + /// Face towards the atom while pulling it + var/face_while_pulling = FALSE var/throwforce = 0 - var/canmove = 1 + var/canmove = TRUE var/inertia_dir = 0 var/atom/inertia_last_loc diff --git a/code/game/objects/structures.dm b/code/game/objects/structures.dm index bd8ca8c024b..0ded1e60ced 100644 --- a/code/game/objects/structures.dm +++ b/code/game/objects/structures.dm @@ -2,6 +2,7 @@ icon = 'icons/obj/structures.dmi' pressure_resistance = 8 max_integrity = 300 + face_while_pulling = TRUE var/climbable var/mob/climber var/broken = FALSE diff --git a/code/modules/mob/mob_movement.dm b/code/modules/mob/mob_movement.dm index 8b2ba3ff5d3..ed75caa8f39 100644 --- a/code/modules/mob/mob_movement.dm +++ b/code/modules/mob/mob_movement.dm @@ -169,7 +169,7 @@ n = get_step(mob, direct) . = mob.SelfMove(n, direct, delay) - if(mob.pulling && isstructure(mob.pulling)) + if(mob.pulling?.face_while_pulling) mob.setDir(get_dir(mob, mob.pulling)) // Face welding tanks and stuff when pulling else mob.setDir(direct)