Prevent minigun from freezing Garbage Collector if it's spawned by itself; (#19666)

Also actually prevents minigun from firing if it's overheater;
This commit is contained in:
Igors Rjabcevs
2016-08-03 00:34:15 -05:00
committed by KorPhaeron
parent 7f4395e6ba
commit a88da69f66
@@ -124,11 +124,11 @@
else
qdel(src)
/obj/item/weapon/gun/projectile/minigun/shoot_live_shot(mob/living/user as mob|obj, pointblank = 0, mob/pbtarget = null, message = 1)
/obj/item/weapon/gun/projectile/minigun/process_fire(atom/target as mob|obj|turf, mob/living/user as mob|obj, message = 1, params, zone_override)
if(ammo_pack)
if(ammo_pack.overheat < ammo_pack.overheat_max)
. = ..()
ammo_pack.overheat++
ammo_pack.overheat += burst_size
..()
else
user << "The gun's heat sensor locked the trigger to prevent lens damage."
@@ -141,9 +141,9 @@
if(!ammo_pack)
if(istype(loc,/obj/item/weapon/minigunpack)) //We should spawn inside a ammo pack so let's use that one.
ammo_pack = loc
..()
else
qdel(src)//No pack, no gun
..()
/obj/item/weapon/gun/projectile/minigun/dropped(mob/living/user)
ammo_pack.attach_gun(user)