From 262b4d95fbdbc7af3e211c5e6fd34dbed94abe9d Mon Sep 17 00:00:00 2001 From: kevinz000 <2003111+kevinz000@users.noreply.github.com> Date: Sun, 16 Feb 2020 16:44:29 -0700 Subject: [PATCH] Update projectile.dm --- code/modules/projectiles/projectile.dm | 11 +++++------ 1 file changed, 5 insertions(+), 6 deletions(-) diff --git a/code/modules/projectiles/projectile.dm b/code/modules/projectiles/projectile.dm index 4521e4ea13..139f5a051c 100644 --- a/code/modules/projectiles/projectile.dm +++ b/code/modules/projectiles/projectile.dm @@ -52,7 +52,6 @@ var/hitscan = FALSE //Whether this is hitscan. If it is, speed is basically ignored. var/list/beam_segments //assoc list of datum/point or datum/point/vector, start = end. Used for hitscan effect generation. var/datum/point/beam_index - var/turf/hitscan_last //last turf touched during hitscanning. var/tracer_type var/muzzle_type var/impact_type @@ -492,8 +491,6 @@ process_homing() var/forcemoved = FALSE for(var/i in 1 to SSprojectiles.global_iterations_per_move) - if(QDELETED(src)) - return trajectory.increment(trajectory_multiplier) var/turf/T = trajectory.return_turf() if(!istype(T)) @@ -506,14 +503,16 @@ forceMove(T) trajectory_ignore_forcemove = FALSE after_z_change(old, loc) + forcemoved = TRUE + if(QDELETED(src)) + return if(!hitscanning) pixel_x = trajectory.return_px() pixel_y = trajectory.return_py() - forcemoved = TRUE - hitscan_last = loc else if(T != loc) step_towards(src, T) - hitscan_last = loc + if(QDELETED(src)) + return if(!hitscanning && !forcemoved) pixel_x = trajectory.return_px() - trajectory.mpx * trajectory_multiplier * SSprojectiles.global_iterations_per_move pixel_y = trajectory.return_py() - trajectory.mpy * trajectory_multiplier * SSprojectiles.global_iterations_per_move