From de0187e9ce67c2ebdbd32496e22fb735dec0ff16 Mon Sep 17 00:00:00 2001 From: ynot01 Date: Sat, 25 Feb 2023 15:02:37 -0500 Subject: [PATCH 1/3] replace stun arm --- code/game/objects/items/flamethrower.dm | 16 ++++++++++++++++ .../mob/living/silicon/robot/robot_modules.dm | 4 ++-- .../projectiles/ammunition/energy/plasma.dm | 4 ++++ code/modules/projectiles/guns/energy/special.dm | 17 +++++++++++++++++ .../projectiles/projectile/special/plasma.dm | 3 +++ 5 files changed, 42 insertions(+), 2 deletions(-) diff --git a/code/game/objects/items/flamethrower.dm b/code/game/objects/items/flamethrower.dm index 0aee0cf8037d..bcc5c75c3b7b 100644 --- a/code/game/objects/items/flamethrower.dm +++ b/code/game/objects/items/flamethrower.dm @@ -325,3 +325,19 @@ /obj/item/assembly/igniter/proc/ignite_turf(obj/item/flamethrower/F,turf/open/location,release_amount = 0.05) return F.default_ignite(location,release_amount) + +///////////////////// Flamethrower as an energy weapon ///////////////////// +// Currently used exclusively in /obj/item/gun/energy/printer/flamethrower +/obj/item/ammo_casing/energy/flamethrower + projectile_type = /obj/item/projectile/bullet/incendiary/flamethrower + select_name = "fire" + fire_sound = null + firing_effect_type = null + e_cost = 50 + +/obj/item/projectile/bullet/incendiary/flamethrower + name = "waft of flames" + icon_state = null + damage = 0 + sharpness = SHARP_NONE + range = 6 diff --git a/code/modules/mob/living/silicon/robot/robot_modules.dm b/code/modules/mob/living/silicon/robot/robot_modules.dm index 5a158e18e043..6fbe1d041ddb 100644 --- a/code/modules/mob/living/silicon/robot/robot_modules.dm +++ b/code/modules/mob/living/silicon/robot/robot_modules.dm @@ -348,7 +348,7 @@ /obj/item/stack/cable_coil/cyborg, /obj/item/barrier_taperoll/engineering) radio_channels = list(RADIO_CHANNEL_ENGINEERING) - emag_modules = list(/obj/item/borg/stun) + emag_modules = list(/obj/item/gun/energy/printer/flamethrower) ratvar_modules = list( /obj/item/clockwork/slab/cyborg/engineer, /obj/item/clockwork/replica_fabricator/cyborg) @@ -582,7 +582,7 @@ /obj/item/gps/cyborg, /obj/item/stack/marker_beacon) radio_channels = list(RADIO_CHANNEL_SCIENCE, RADIO_CHANNEL_SUPPLY) - emag_modules = list(/obj/item/borg/stun) + emag_modules = list(/obj/item/gun/energy/plasmacutter/adv/malf) ratvar_modules = list( /obj/item/clockwork/slab/cyborg/miner, /obj/item/clockwork/weapon/ratvarian_spear, diff --git a/code/modules/projectiles/ammunition/energy/plasma.dm b/code/modules/projectiles/ammunition/energy/plasma.dm index a72020f7d9bf..49003ac79b3b 100644 --- a/code/modules/projectiles/ammunition/energy/plasma.dm +++ b/code/modules/projectiles/ammunition/energy/plasma.dm @@ -45,3 +45,7 @@ projectile_type = /obj/item/projectile/plasma/adv delay = 10 e_cost = 15 // Might need nerfing + +/obj/item/ammo_casing/energy/plasma/adv/cyborg/malf + projectile_type = /obj/item/projectile/plasma/adv/malf + e_cost = 100 diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm index 701cf7e32827..e9a11b716ffe 100644 --- a/code/modules/projectiles/guns/energy/special.dm +++ b/code/modules/projectiles/guns/energy/special.dm @@ -255,6 +255,14 @@ selfcharge = 1 ammo_type = list(/obj/item/ammo_casing/energy/plasma/adv/cyborg) +/obj/item/gun/energy/plasmacutter/adv/malf // Can't be subtype of cyborg or it will interfere with upgrades + name = "cyborg malfunctioning plasma cutter" + desc = "A mining tool capable o=#9v@3-M!a%R=KILLING AND MURDERING ORGANICS." + color = "red" + force = 15 + selfcharge = 1 + ammo_type = list(/obj/item/ammo_casing/energy/plasma/adv/cyborg/malf) + // Upgrades for plasma cutters /obj/item/upgrade/plasmacutter name = "generic upgrade kit" @@ -366,6 +374,15 @@ can_charge = FALSE use_cyborg_cell = TRUE +/obj/item/gun/energy/printer/flamethrower + name = "cyborg flame projector" + desc = "Originally intended for cyborgs to assist in atmospherics projects, was soon scrapped due to safety concerns." + icon = 'yogstation/icons/obj/flamethrower.dmi' + icon_state = "flamethrowerbase" + ammo_type = list(/obj/item/ammo_casing/energy/flamethrower) + can_charge = FALSE + use_cyborg_cell = TRUE + /obj/item/gun/energy/printer/update_icon() return diff --git a/code/modules/projectiles/projectile/special/plasma.dm b/code/modules/projectiles/projectile/special/plasma.dm index b03e476fac1a..8c05b968577c 100644 --- a/code/modules/projectiles/projectile/special/plasma.dm +++ b/code/modules/projectiles/projectile/special/plasma.dm @@ -41,6 +41,9 @@ range = 5 mine_range = 5 +/obj/item/projectile/plasma/adv/malf + damage = 20 + /obj/item/projectile/plasma/adv/mega range = 7 mine_range = 7 From a34f50eb90e8871ff9dc8c281fca738429f4275c Mon Sep 17 00:00:00 2001 From: ynot01 Date: Sat, 25 Feb 2023 15:30:01 -0500 Subject: [PATCH 2/3] Update plasma.dm --- code/modules/projectiles/ammunition/energy/plasma.dm | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/code/modules/projectiles/ammunition/energy/plasma.dm b/code/modules/projectiles/ammunition/energy/plasma.dm index 49003ac79b3b..03b1f711088b 100644 --- a/code/modules/projectiles/ammunition/energy/plasma.dm +++ b/code/modules/projectiles/ammunition/energy/plasma.dm @@ -48,4 +48,4 @@ /obj/item/ammo_casing/energy/plasma/adv/cyborg/malf projectile_type = /obj/item/projectile/plasma/adv/malf - e_cost = 100 + e_cost = 50 From fbfc814e9e49d110dd9b6e7ede3b83d8d99acd65 Mon Sep 17 00:00:00 2001 From: ynot01 Date: Sat, 25 Feb 2023 22:23:03 -0500 Subject: [PATCH 3/3] flames penetrate --- code/game/objects/items/flamethrower.dm | 1 + 1 file changed, 1 insertion(+) diff --git a/code/game/objects/items/flamethrower.dm b/code/game/objects/items/flamethrower.dm index bcc5c75c3b7b..95d4eddb1059 100644 --- a/code/game/objects/items/flamethrower.dm +++ b/code/game/objects/items/flamethrower.dm @@ -341,3 +341,4 @@ damage = 0 sharpness = SHARP_NONE range = 6 + penetration_type = 2