From f31df38f839c96de586b7e4649465c9460fc71ba Mon Sep 17 00:00:00 2001 From: Dax Dupont Date: Sat, 17 Feb 2018 20:17:11 +0100 Subject: [PATCH] Reflectors now reset the range of a projectile like before! (#35726) * Reflectors now reset the range of a projectile. * how about dem apples --- code/game/objects/structures/reflector.dm | 2 ++ code/modules/projectiles/projectile.dm | 2 ++ 2 files changed, 4 insertions(+) diff --git a/code/game/objects/structures/reflector.dm b/code/game/objects/structures/reflector.dm index a6e8135dc5..35cb82c697 100644 --- a/code/game/objects/structures/reflector.dm +++ b/code/game/objects/structures/reflector.dm @@ -72,6 +72,8 @@ /obj/structure/reflector/proc/auto_reflect(obj/item/projectile/P, pdir, turf/ploc, pangle) P.ignore_source_check = TRUE + P.range = P.decayedRange + P.decayedRange = max(P.decayedRange--, 0) return -1 /obj/structure/reflector/attackby(obj/item/W, mob/user, params) diff --git a/code/modules/projectiles/projectile.dm b/code/modules/projectiles/projectile.dm index 3c8092307a..6da6f8629f 100644 --- a/code/modules/projectiles/projectile.dm +++ b/code/modules/projectiles/projectile.dm @@ -65,6 +65,7 @@ var/flag = "bullet" //Defines what armor to use when it hits things. Must be set to bullet, laser, energy,or bomb var/projectile_type = /obj/item/projectile var/range = 50 //This will de-increment every step. When 0, it will deletze the projectile. + var/decayedRange var/is_reflectable = FALSE // Can it be reflected or not? //Effects var/stun = 0 @@ -85,6 +86,7 @@ /obj/item/projectile/Initialize() . = ..() permutated = list() + decayedRange = range /obj/item/projectile/proc/Range() range--