From 684679cefbee4302bec777f7cc8b0509baf2b01d Mon Sep 17 00:00:00 2001 From: Chinsky Date: Sun, 18 Nov 2012 11:24:17 +0400 Subject: [PATCH] Fixes issue #1971 Lasertag and practice beams won't explode tanks anymore. --- code/game/machinery/bots/ed209bot.dm | 12 ++++++------ code/game/machinery/portable_turret.dm | 12 ++++++------ code/game/machinery/turrets.dm | 4 ++-- code/modules/projectiles/guns/energy/laser.dm | 4 ++-- code/modules/projectiles/projectile/beams.dm | 6 +++--- code/modules/reagents/reagent_dispenser.dm | 3 ++- code/modules/research/xenoarchaeology/artifact.dm | 2 -- 7 files changed, 21 insertions(+), 22 deletions(-) diff --git a/code/game/machinery/bots/ed209bot.dm b/code/game/machinery/bots/ed209bot.dm index 4fa8f095fe..f43b43ac07 100644 --- a/code/game/machinery/bots/ed209bot.dm +++ b/code/game/machinery/bots/ed209bot.dm @@ -820,14 +820,14 @@ Auto Patrol: []"}, projectile = /obj/item/projectile/energy/electrode else if(lasercolor == "b") if (src.emagged == 2) - projectile = /obj/item/projectile/beam/omnitag + projectile = /obj/item/projectile/beam/lastertag/omni else - projectile = /obj/item/projectile/beam/bluetag + projectile = /obj/item/projectile/beam/lastertag/blue else if(lasercolor == "r") if (src.emagged == 2) - projectile = /obj/item/projectile/beam/omnitag + projectile = /obj/item/projectile/beam/lastertag/omni else - projectile = /obj/item/projectile/beam/redtag + projectile = /obj/item/projectile/beam/lastertag/red if (!( istype(U, /turf) )) return @@ -1011,7 +1011,7 @@ Auto Patrol: []"}, /obj/machinery/bot/ed209/bullet_act(var/obj/item/projectile/Proj) if((src.lasercolor == "b") && (src.disabled == 0)) - if(istype(Proj, /obj/item/projectile/beam/redtag)) + if(istype(Proj, /obj/item/projectile/beam/lastertag/red)) src.disabled = 1 del (Proj) sleep(100) @@ -1019,7 +1019,7 @@ Auto Patrol: []"}, else ..() else if((src.lasercolor == "r") && (src.disabled == 0)) - if(istype(Proj, /obj/item/projectile/beam/bluetag)) + if(istype(Proj, /obj/item/projectile/beam/lastertag/blue)) src.disabled = 1 del (Proj) sleep(100) diff --git a/code/game/machinery/portable_turret.dm b/code/game/machinery/portable_turret.dm index 7be13d3d1e..a16b545c19 100644 --- a/code/game/machinery/portable_turret.dm +++ b/code/game/machinery/portable_turret.dm @@ -76,8 +76,8 @@ // All energy-based weapons are applicable switch(E.type) if(/obj/item/weapon/gun/energy/laser/bluetag) - projectile = /obj/item/projectile/beam/bluetag - eprojectile = /obj/item/projectile/beam/omnitag//This bolt will stun ERRYONE with a vest + projectile = /obj/item/projectile/beam/lastertag/blue + eprojectile = /obj/item/projectile/beam/lastertag/omni//This bolt will stun ERRYONE with a vest iconholder = null reqpower = 100 lasercolor = "b" @@ -90,8 +90,8 @@ shot_delay = 30 if(/obj/item/weapon/gun/energy/laser/redtag) - projectile = /obj/item/projectile/beam/redtag - eprojectile = /obj/item/projectile/beam/omnitag + projectile = /obj/item/projectile/beam/lastertag/red + eprojectile = /obj/item/projectile/beam/lastertag/omni iconholder = null reqpower = 100 lasercolor = "r" @@ -375,13 +375,13 @@ Status: []
"}, if (src.health <= 0) src.die() // the death process :( if((src.lasercolor == "b") && (src.disabled == 0)) - if(istype(Proj, /obj/item/projectile/beam/redtag)) + if(istype(Proj, /obj/item/projectile/beam/lastertag/red)) src.disabled = 1 del (Proj) sleep(100) src.disabled = 0 if((src.lasercolor == "r") && (src.disabled == 0)) - if(istype(Proj, /obj/item/projectile/beam/bluetag)) + if(istype(Proj, /obj/item/projectile/beam/lastertag/blue)) src.disabled = 1 del (Proj) sleep(100) diff --git a/code/game/machinery/turrets.dm b/code/game/machinery/turrets.dm index 990b823ef1..ae5dd51891 100644 --- a/code/game/machinery/turrets.dm +++ b/code/game/machinery/turrets.dm @@ -221,9 +221,9 @@ if(4) A = new /obj/item/projectile/change( loc ) if(5) - A = new /obj/item/projectile/beam/bluetag( loc ) + A = new /obj/item/projectile/beam/lastertag/blue( loc ) if(6) - A = new /obj/item/projectile/beam/redtag( loc ) + A = new /obj/item/projectile/beam/lastertag/red( loc ) A.original = target.loc use_power(500) else diff --git a/code/modules/projectiles/guns/energy/laser.dm b/code/modules/projectiles/guns/energy/laser.dm index b6afa3fbcd..d769acf00b 100644 --- a/code/modules/projectiles/guns/energy/laser.dm +++ b/code/modules/projectiles/guns/energy/laser.dm @@ -90,7 +90,7 @@ obj/item/weapon/gun/energy/laser/retro name = "laser tag gun" icon_state = "bluetag" desc = "Standard issue weapon of the Imperial Guard" - projectile_type = "/obj/item/projectile/beam/bluetag" + projectile_type = "/obj/item/projectile/beam/lastertag/blue" origin_tech = "combat=1;magnets=2" clumsy_check = 0 var/charge_tick = 0 @@ -127,7 +127,7 @@ obj/item/weapon/gun/energy/laser/retro name = "laser tag gun" icon_state = "redtag" desc = "Standard issue weapon of the Imperial Guard" - projectile_type = "/obj/item/projectile/beam/redtag" + projectile_type = "/obj/item/projectile/beam/lastertag/red" origin_tech = "combat=1;magnets=2" clumsy_check = 0 var/charge_tick = 0 diff --git a/code/modules/projectiles/projectile/beams.dm b/code/modules/projectiles/projectile/beams.dm index 8f2d39bf9d..924a8a7f20 100644 --- a/code/modules/projectiles/projectile/beams.dm +++ b/code/modules/projectiles/projectile/beams.dm @@ -111,7 +111,7 @@ var/list/beam_master = list() -/obj/item/projectile/beam/bluetag +/obj/item/projectile/beam/lastertag/blue name = "lasertag beam" icon_state = "bluelaser" pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE @@ -126,7 +126,7 @@ var/list/beam_master = list() M.Weaken(5) return 1 -/obj/item/projectile/beam/redtag +/obj/item/projectile/beam/lastertag/red name = "lasertag beam" icon_state = "laser" pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE @@ -141,7 +141,7 @@ var/list/beam_master = list() M.Weaken(5) return 1 -/obj/item/projectile/beam/omnitag//A laser tag bolt that stuns EVERYONE +/obj/item/projectile/beam/lastertag/omni//A laser tag bolt that stuns EVERYONE name = "lasertag beam" icon_state = "omnilaser" pass_flags = PASSTABLE | PASSGLASS | PASSGRILLE diff --git a/code/modules/reagents/reagent_dispenser.dm b/code/modules/reagents/reagent_dispenser.dm index 6887a35b08..63dba43d51 100644 --- a/code/modules/reagents/reagent_dispenser.dm +++ b/code/modules/reagents/reagent_dispenser.dm @@ -145,7 +145,8 @@ bullet_act(var/obj/item/projectile/Proj) if(istype(Proj ,/obj/item/projectile/beam)||istype(Proj,/obj/item/projectile/bullet)) - explode() + if(!istype(Proj ,/obj/item/projectile/beam/lastertag) && !istype(Proj ,/obj/item/projectile/beam/practice) ) + explode() blob_act() explode() diff --git a/code/modules/research/xenoarchaeology/artifact.dm b/code/modules/research/xenoarchaeology/artifact.dm index 06a3c9a6e9..53edfb54a0 100644 --- a/code/modules/research/xenoarchaeology/artifact.dm +++ b/code/modules/research/xenoarchaeology/artifact.dm @@ -153,8 +153,6 @@ if(istype(P,/obj/item/projectile/beam)) src.Artifact_Activate() else if(istype(P,/obj/item/projectile/ion)) src.Artifact_Activate() else if(istype(P,/obj/item/projectile/energy)) src.Artifact_Activate() - else if(istype(P,/obj/item/projectile/beam/bluetag)) src.Artifact_Activate() - else if(istype(P,/obj/item/projectile/beam/redtag)) src.Artifact_Activate() if (my_effect.trigger == "heat") if(istype(P,/obj/item/projectile/temp)) src.Artifact_Activate()