From b880c5fa508a130f53bb2f2e982ffd4683de0ddc Mon Sep 17 00:00:00 2001 From: Duck- Date: Thu, 14 Aug 2014 22:57:18 -0400 Subject: [PATCH] Burstfire part two Burst toggles added. Added a burstfire x-ray laser that's only marginally deadlier than the normal laser. But. It is cool. --- aurora.dme | 1 + code/modules/projectiles/guns/energy/burst.dm | 54 +++++++++++++++++++ .../projectiles/guns/projectile/automatic.dm | 16 +++++- code/modules/projectiles/projectile/beams.dm | 6 +++ 4 files changed, 76 insertions(+), 1 deletion(-) create mode 100644 code/modules/projectiles/guns/energy/burst.dm diff --git a/aurora.dme b/aurora.dme index a879bfb6..698cc9dc 100644 --- a/aurora.dme +++ b/aurora.dme @@ -1219,6 +1219,7 @@ #include "code\modules\projectiles\guns\alien.dm" #include "code\modules\projectiles\guns\energy.dm" #include "code\modules\projectiles\guns\projectile.dm" +#include "code\modules\projectiles\guns\energy\burst.dm" #include "code\modules\projectiles\guns\energy\erifles.dm" #include "code\modules\projectiles\guns\energy\laser.dm" #include "code\modules\projectiles\guns\energy\nuclear.dm" diff --git a/code/modules/projectiles/guns/energy/burst.dm b/code/modules/projectiles/guns/energy/burst.dm new file mode 100644 index 00000000..b712eea5 --- /dev/null +++ b/code/modules/projectiles/guns/energy/burst.dm @@ -0,0 +1,54 @@ +/obj/item/weapon/gun/energy/automatic/ + name = "you shouldnt have spawned this" + desc = "this gun only exists to hold variables in the code. please delete." + icon_state = "xray" + fire_sound = 'sound/weapons/laser3.ogg' + origin_tech = "combat=5;materials=3;magnets=2" + projectile_type = "/obj/item/projectile/beam/xray/burst" + w_class = 3 + fire_delay = 2 + projectiles_per_shot = 3 //more than three and adminlogs will cry + fire_cooldown = 2 + +/* +/obj/item/weapon/gun/energy/automatic/verb/toggle_burst() + set name = "Toggle Burst" + set category = "Object" + + if (projectiles_per_shot == 3) + loc << "\red [src.name] is now set to single shot.." + projectiles_per_shot = 1 + fire_cooldown = 0 + else + loc << "\red [src.name] is now set to fire in bursts." + projectiles_per_shot = 3 + fire_cooldown = 2 + update_icon() +*/ +/obj/item/weapon/gun/energy/automatic/rapidlaser + name = "rapid laser gun" + desc = "A high-power laser gun capable of expelling rapid bursts of concentrated xray blasts." + icon_state = "xray" + fire_sound = 'sound/weapons/laser3.ogg' + origin_tech = "combat=5;materials=3;magnets=2" + projectile_type = "/obj/item/projectile/beam/xray/burst" + charge_cost = 33 + w_class = 3 + +/obj/item/weapon/gun/energy/automatic/destroyer + name = "pulse destroyer" + desc = "A heavy-duty, pulse-based energy weapon." + cell_type = "/obj/item/weapon/cell/infinite" + projectile_type = "/obj/item/projectile/beam/pulse" + fire_sound = 'sound/weapons/pulse.ogg' + icon_state = "pulse" + item_state = null + w_class = 4 + slot_flags = SLOT_BACK + force = 666 + charge_cost = 0 + projectiles_per_shot = 10 + fire_cooldown = 0 + fire_delay = 0 + attack_self(mob/living/user as mob) + user << "\red [src.name] has three settings, and they are all DESTROY." \ No newline at end of file diff --git a/code/modules/projectiles/guns/projectile/automatic.dm b/code/modules/projectiles/guns/projectile/automatic.dm index 84ce267c..7deef63e 100644 --- a/code/modules/projectiles/guns/projectile/automatic.dm +++ b/code/modules/projectiles/guns/projectile/automatic.dm @@ -9,8 +9,22 @@ ammo_type = "/obj/item/ammo_casing/c9mm" automatic = 1 fire_delay = 0 - projectiles_per_shot = 3 fire_cooldown = 1 + projectiles_per_shot = 1 + +/obj/item/weapon/gun/projectile/automatic/verb/toggle_burst() + set name = "Toggle Burst" + set category = "Object" + + if (projectiles_per_shot == 3) + loc << "\red [src.name] is now set to single shot.." + projectiles_per_shot = 1 + fire_cooldown = 0 + else + loc << "\red [src.name] is now set to fire in bursts." + projectiles_per_shot = 3 + fire_cooldown = 2 + update_icon() // isHandgun() diff --git a/code/modules/projectiles/projectile/beams.dm b/code/modules/projectiles/projectile/beams.dm index 9e877377..fc89e557 100644 --- a/code/modules/projectiles/projectile/beams.dm +++ b/code/modules/projectiles/projectile/beams.dm @@ -100,6 +100,12 @@ var/list/beam_master = list() icon_state = "xray" damage = 30 +/obj/item/projectile/beam/xray/burst + name = "xray beam" + icon_state = "xray" +// damage = 15 this makes rapidlasers kill almost exactly as fast as the rifle, but since they do a tripleburst, armor is much more effective. plus. rng miss. + damage = 20 //hence 20 damage. slight advantage over regular lasers. half-capacity for damage. use for coolness. use laser cannons for powergame. + /obj/item/projectile/beam/pulse name = "pulse" icon_state = "u_laser"