diff --git a/_maps/map_files/Delta/delta.dmm b/_maps/map_files/Delta/delta.dmm index 9b0e7b713f0..8b83d00431c 100644 --- a/_maps/map_files/Delta/delta.dmm +++ b/_maps/map_files/Delta/delta.dmm @@ -94537,12 +94537,12 @@ /area/engine/supermatter) "hTk" = ( /obj/structure/rack, -/obj/item/gun/energy/gun/advtaser{ +/obj/item/gun/energy/disabler{ pixel_x = -3; pixel_y = 3 }, -/obj/item/gun/energy/gun/advtaser, -/obj/item/gun/energy/gun/advtaser{ +/obj/item/gun/energy/disabler, +/obj/item/gun/energy/disabler{ pixel_x = 3; pixel_y = -3 }, diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm index ce9bba6d8ad..99a70cb1379 100644 --- a/_maps/map_files/MetaStation/MetaStation.dmm +++ b/_maps/map_files/MetaStation/MetaStation.dmm @@ -3238,12 +3238,12 @@ }) "aiM" = ( /obj/structure/rack, -/obj/item/gun/energy/gun/advtaser{ +/obj/item/gun/energy/disabler{ pixel_x = -3; pixel_y = 3 }, -/obj/item/gun/energy/gun/advtaser, -/obj/item/gun/energy/gun/advtaser{ +/obj/item/gun/energy/disabler, +/obj/item/gun/energy/disabler{ pixel_x = 3; pixel_y = -3 }, diff --git a/_maps/map_files/RandomZLevels/academy.dmm b/_maps/map_files/RandomZLevels/academy.dmm index 6e777650165..ec46d5de244 100644 --- a/_maps/map_files/RandomZLevels/academy.dmm +++ b/_maps/map_files/RandomZLevels/academy.dmm @@ -3487,7 +3487,6 @@ "jx" = ( /obj/structure/table, /obj/structure/window/reinforced, -/obj/item/batterer, /turf/simulated/floor/plasteel/airless{ dir = 4; icon_state = "whitered" diff --git a/_maps/map_files/cyberiad/cyberiad.dmm b/_maps/map_files/cyberiad/cyberiad.dmm index 5462a05cd80..c811cece0d9 100644 --- a/_maps/map_files/cyberiad/cyberiad.dmm +++ b/_maps/map_files/cyberiad/cyberiad.dmm @@ -2881,12 +2881,12 @@ "ajr" = ( /obj/structure/rack, /obj/structure/window/reinforced, -/obj/item/gun/energy/gun/advtaser{ +/obj/item/gun/energy/disabler{ pixel_x = -3; pixel_y = 3 }, -/obj/item/gun/energy/gun/advtaser, -/obj/item/gun/energy/gun/advtaser{ +/obj/item/gun/energy/disabler, +/obj/item/gun/energy/disabler{ pixel_x = 3; pixel_y = -3 }, diff --git a/_maps/map_files/generic/centcomm.dmm b/_maps/map_files/generic/centcomm.dmm index d7bf2abfaa2..ebf9675df67 100644 --- a/_maps/map_files/generic/centcomm.dmm +++ b/_maps/map_files/generic/centcomm.dmm @@ -4044,9 +4044,9 @@ /area/shuttle/gamma/space) "oC" = ( /obj/structure/closet/secure_closet/guncabinet, -/obj/item/gun/energy/sniperrifle, -/obj/item/gun/energy/sniperrifle, -/obj/item/gun/energy/sniperrifle, +/obj/item/gun/energy/ionrifle, +/obj/item/gun/energy/ionrifle, +/obj/item/gun/energy/ionrifle, /obj/machinery/light/spot{ dir = 4 }, diff --git a/_maps/map_files/shuttles/admin_armory.dmm b/_maps/map_files/shuttles/admin_armory.dmm index 766ce3e588c..2b9f33d03c8 100644 --- a/_maps/map_files/shuttles/admin_armory.dmm +++ b/_maps/map_files/shuttles/admin_armory.dmm @@ -786,11 +786,11 @@ /area/shuttle/administration) "PV" = ( /obj/structure/rack, -/obj/item/gun/energy/sniperrifle{ +/obj/item/gun/energy/ionrifle{ pixel_y = -4 }, -/obj/item/gun/energy/sniperrifle, -/obj/item/gun/energy/sniperrifle{ +/obj/item/gun/energy/ionrifle, +/obj/item/gun/energy/ionrifle{ pixel_y = 3 }, /obj/structure/window/reinforced{ @@ -882,11 +882,11 @@ /obj/structure/window/reinforced{ dir = 8 }, -/obj/item/gun/energy/gun/advtaser{ +/obj/item/gun/energy/disabler{ pixel_x = 3; pixel_y = -3 }, -/obj/item/gun/energy/gun/advtaser, +/obj/item/gun/energy/disabler, /turf/simulated/floor/mineral/plastitanium/red, /area/shuttle/administration) "WV" = ( diff --git a/code/datums/spells/mime.dm b/code/datums/spells/mime.dm index 79c4e796aa1..2ef54e6076f 100644 --- a/code/datums/spells/mime.dm +++ b/code/datums/spells/mime.dm @@ -93,11 +93,11 @@ /obj/effect/proc_holder/spell/targeted/mime/fingergun name = "Finger Gun" - desc = "Shoot stunning, invisible bullets out of your fingers! 6 bullets available per cast. Use your fingers to holster them manually." + desc = "Shoot stunning, invisible bullets out of your fingers! 3 bullets available per cast. Use your fingers to holster them manually." school = "mime" panel = "Mime" clothes_req = 0 - charge_max = 600 + charge_max = 300 range = -1 include_user = 1 human_req = 1 @@ -117,7 +117,7 @@ revert_cast(user) /obj/effect/proc_holder/spell/targeted/mime/fingergun/fake - desc = "Pretend you're shooting bullets out of your fingers! 6 bullets available per cast. Use your fingers to holster them manually." + desc = "Pretend you're shooting bullets out of your fingers! 3 bullets available per cast. Use your fingers to holster them manually." gun = /obj/item/gun/projectile/revolver/fingergun/fake // Mime Spellbooks diff --git a/code/datums/supplypacks.dm b/code/datums/supplypacks.dm index 6548c6f9200..c15b615fe0b 100644 --- a/code/datums/supplypacks.dm +++ b/code/datums/supplypacks.dm @@ -272,14 +272,6 @@ GLOBAL_LIST_INIT(all_supply_groups, list(SUPPLY_EMERGENCY,SUPPLY_SECURITY,SUPPLY cost = 15 containername = "laser crate" -/datum/supply_packs/security/taser - name = "Stun Guns Crate" - contains = list(/obj/item/gun/energy/gun/advtaser, - /obj/item/gun/energy/gun/advtaser, - /obj/item/gun/energy/gun/advtaser) - cost = 15 - containername = "stun gun crate" - /datum/supply_packs/security/disabler name = "Disabler Crate" contains = list(/obj/item/gun/energy/disabler, @@ -507,7 +499,7 @@ GLOBAL_LIST_INIT(all_supply_groups, list(SUPPLY_EMERGENCY,SUPPLY_SECURITY,SUPPLY /obj/item/reagent_containers/spray/pepper, /obj/item/flash, /obj/item/grenade/flashbang, - /obj/item/storage/belt/security/sec, + /obj/item/storage/belt/security, /obj/item/holosign_creator/security, /obj/item/clothing/mask/gas/sechailer, /obj/item/clothing/glasses/hud/security/sunglasses, diff --git a/code/datums/uplink_item.dm b/code/datums/uplink_item.dm index 65dbf0bf594..174fa3741f0 100644 --- a/code/datums/uplink_item.dm +++ b/code/datums/uplink_item.dm @@ -561,13 +561,6 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) item = /obj/item/twohanded/chainsaw cost = 13 -/datum/uplink_item/dangerous/batterer - name = "Mind Batterer" - desc = "A device that has a chance of knocking down people around you for a long amount of time. 50% chance per person. The user is unaffected. Has 5 charges." - reference = "BTR" - item = /obj/item/batterer - cost = 5 - // SUPPORT AND MECHAS /datum/uplink_item/support @@ -708,12 +701,12 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) cost = 2 gamemodes = list(/datum/game_mode/nuclear) -/datum/uplink_item/ammo/bullstun - name = "Bulldog - 12g Stun Slug Magazine" - desc = "An alternative 8-round stun slug magazine for use in the Bulldog shotgun. Saying that they're completely non-lethal would be lying." - reference = "12SS" - item = /obj/item/ammo_box/magazine/m12g/stun - cost = 3 +/datum/uplink_item/ammo/bullmeteor + name = "12g Meteorslug Shells" + desc = "An alternative 8-round meteorslug magazine for use in the Bulldog shotgun. Great for blasting airlocks off their frames and knocking down enemies." + reference = "12MS" + item = /obj/item/ammo_box/magazine/m12g/meteor + cost = 2 gamemodes = list(/datum/game_mode/nuclear) /datum/uplink_item/ammo/bulldragon diff --git a/code/game/jobs/job/security.dm b/code/game/jobs/job/security.dm index 407a932c3b8..ca3c7f379f0 100644 --- a/code/game/jobs/job/security.dm +++ b/code/game/jobs/job/security.dm @@ -80,7 +80,7 @@ glasses = /obj/item/clothing/glasses/hud/security/sunglasses id = /obj/item/card/id/security l_pocket = /obj/item/flash - suit_store = /obj/item/gun/energy/gun/advtaser + suit_store = /obj/item/gun/energy/disabler pda = /obj/item/pda/warden backpack_contents = list( /obj/item/restraints/handcuffs = 1 @@ -180,7 +180,7 @@ l_ear = /obj/item/radio/headset/headset_sec/alt id = /obj/item/card/id/security l_pocket = /obj/item/flash - suit_store = /obj/item/gun/energy/gun/advtaser + suit_store = /obj/item/gun/energy/disabler pda = /obj/item/pda/security backpack_contents = list( /obj/item/restraints/handcuffs = 1 diff --git a/code/game/mecha/combat/gygax.dm b/code/game/mecha/combat/gygax.dm index 0898936cbfb..abb9ebc6848 100644 --- a/code/game/mecha/combat/gygax.dm +++ b/code/game/mecha/combat/gygax.dm @@ -28,7 +28,7 @@ /obj/mecha/combat/gygax/loaded/New() ..() - var/obj/item/mecha_parts/mecha_equipment/ME = new /obj/item/mecha_parts/mecha_equipment/weapon/energy/taser + var/obj/item/mecha_parts/mecha_equipment/ME = new /obj/item/mecha_parts/mecha_equipment/weapon/energy/disabler ME.attach(src) ME = new /obj/item/mecha_parts/mecha_equipment/weapon/ballistic/missile_rack/flashbang ME.attach(src) diff --git a/code/game/mecha/equipment/weapons/weapons.dm b/code/game/mecha/equipment/weapons/weapons.dm index f5a2c003929..71a422899e6 100644 --- a/code/game/mecha/equipment/weapons/weapons.dm +++ b/code/game/mecha/equipment/weapons/weapons.dm @@ -77,12 +77,14 @@ fire_sound = 'sound/weapons/laser.ogg' harmful = TRUE -/obj/item/mecha_parts/mecha_equipment/weapon/energy/laser/disabler - name = "\improper CH-PD Disabler" - origin_tech = "combat=3" +/obj/item/mecha_parts/mecha_equipment/weapon/energy/disabler + equip_cooldown = 8 + name = "\improper CH-DS \"Peacemaker\" disabler" + desc = "A weapon for combat exosuits. Shoots basic disablers." + icon_state = "mecha_disabler" + energy_drain = 30 projectile = /obj/item/projectile/beam/disabler - projectiles_per_shot = 2 - projectile_delay = 1 + fire_sound = 'sound/weapons/taser2.ogg' harmful = FALSE /obj/item/mecha_parts/mecha_equipment/weapon/energy/laser/heavy diff --git a/code/game/objects/effects/spawners/random_spawners.dm b/code/game/objects/effects/spawners/random_spawners.dm index 803d4294110..1d680e6a02b 100644 --- a/code/game/objects/effects/spawners/random_spawners.dm +++ b/code/game/objects/effects/spawners/random_spawners.dm @@ -267,7 +267,6 @@ /obj/item/ammo_box/magazine/m10mm/hp = 1, /obj/item/rad_laser = 1, /obj/item/storage/box/syndie_kit/emp = 1, - /obj/item/batterer = 1, /obj/item/toy/carpplushie/dehy_carp = 1, /obj/item/clothing/glasses/hud/security/chameleon = 1) diff --git a/code/game/objects/items/devices/traitordevices.dm b/code/game/objects/items/devices/traitordevices.dm index 0fcd8d524a7..587212a96c1 100644 --- a/code/game/objects/items/devices/traitordevices.dm +++ b/code/game/objects/items/devices/traitordevices.dm @@ -1,65 +1,3 @@ -/* - -Miscellaneous traitor devices - -BATTERER - - -*/ - -/* - -The Batterer, like a flashbang but 50% chance to knock people over. Can be either very -effective or pretty fucking useless. - -*/ - -/obj/item/batterer - name = "mind batterer" - desc = "A strange device with twin antennas." - icon = 'icons/obj/device.dmi' - icon_state = "batterer" - throwforce = 5 - w_class = WEIGHT_CLASS_TINY - throw_speed = 4 - throw_range = 10 - flags = CONDUCT - item_state = "electronic" - origin_tech = "magnets=3;combat=3;syndicate=3" - - var/times_used = 0 //Number of times it's been used. - var/max_uses = 5 - -/obj/item/batterer/examine(mob/user) - . = ..() - if(times_used >= max_uses) - . += "[src] is out of charge." - if(times_used < max_uses) - . += "[src] has [max_uses-times_used] charges left." - -/obj/item/batterer/attack_self(mob/living/carbon/user, flag = 0, emp = 0) - if(!user) - return - if(times_used >= max_uses) - to_chat(user, "The mind batterer has been burnt out!") - return - - - for(var/mob/living/carbon/human/M in oview(7, user)) - if(prob(50)) - M.Weaken(rand(4,7)) - add_attack_logs(user, M, "Stunned with [src]") - to_chat(M, "You feel a tremendous, paralyzing wave flood your mind.") - else - to_chat(M, "You feel a sudden, electric jolt travel through your head.") - - playsound(loc, 'sound/misc/interference.ogg', 50, 1) - times_used++ - to_chat(user, "You trigger [src]. It has [max_uses-times_used] charges left.") - if(times_used >= max_uses) - icon_state = "battererburnt" - - /* The radioactive microlaser, a device disguised as a health analyzer used to irradiate people. diff --git a/code/game/objects/items/weapons/storage/belt.dm b/code/game/objects/items/weapons/storage/belt.dm index 27ce01bca9e..0ee753df992 100644 --- a/code/game/objects/items/weapons/storage/belt.dm +++ b/code/game/objects/items/weapons/storage/belt.dm @@ -233,8 +233,12 @@ /obj/item/restraints/legcuffs/bola, /obj/item/clothing/mask/gas/sechailer) -/obj/item/storage/belt/security/sec/populate_contents() - new /obj/item/flashlight/seclite(src) +/obj/item/storage/belt/security/full/populate_contents() + new /obj/item/reagent_containers/spray/pepper(src) + new /obj/item/restraints/handcuffs(src) + new /obj/item/grenade/flashbang(src) + new /obj/item/flash(src) + new /obj/item/melee/baton/loaded(src) update_icon() /obj/item/storage/belt/security/response_team/populate_contents() diff --git a/code/game/objects/structures/crates_lockers/closets/secure/security.dm b/code/game/objects/structures/crates_lockers/closets/secure/security.dm index d68fbb3c7f4..271923037d0 100644 --- a/code/game/objects/structures/crates_lockers/closets/secure/security.dm +++ b/code/game/objects/structures/crates_lockers/closets/secure/security.dm @@ -103,8 +103,7 @@ new /obj/item/storage/box/flashbangs(src) new /obj/item/holosign_creator/security(src) new /obj/item/shield/riot/tele(src) - new /obj/item/melee/baton/loaded(src) - new /obj/item/storage/belt/security/sec(src) + new /obj/item/storage/belt/security/full(src) new /obj/item/gun/energy/gun/hos(src) new /obj/item/door_remote/head_of_security(src) new /obj/item/reagent_containers/food/drinks/mug/hos(src) @@ -137,10 +136,8 @@ new /obj/item/clothing/mask/gas/sechailer/warden(src) new /obj/item/storage/box/zipties(src) new /obj/item/storage/box/flashbangs(src) - new /obj/item/reagent_containers/spray/pepper(src) - new /obj/item/melee/baton/loaded(src) - new /obj/item/gun/energy/gun/advtaser(src) - new /obj/item/storage/belt/security/sec(src) + new /obj/item/storage/belt/security/full(src) + new /obj/item/flashlight/seclite(src) new /obj/item/storage/box/holobadge(src) new /obj/item/clothing/gloves/color/black/krav_maga/sec(src) @@ -159,15 +156,11 @@ new /obj/item/clothing/suit/armor/vest/security(src) new /obj/item/radio/headset/headset_sec/alt(src) new /obj/item/clothing/head/soft/sec(src) - new /obj/item/reagent_containers/spray/pepper(src) - new /obj/item/flash(src) - new /obj/item/grenade/flashbang(src) - new /obj/item/storage/belt/security/sec(src) + new /obj/item/storage/belt/security/full(src) new /obj/item/holosign_creator/security(src) new /obj/item/clothing/mask/gas/sechailer(src) new /obj/item/clothing/glasses/hud/security/sunglasses(src) new /obj/item/clothing/head/helmet(src) - new /obj/item/melee/baton/loaded(src) new /obj/item/clothing/suit/armor/secjacket(src) @@ -207,11 +200,7 @@ new /obj/item/storage/briefcase(src) new /obj/item/storage/firstaid/adv(src) new /obj/item/pinpointer/crew(src) - new /obj/item/storage/belt/security/sec(src) - new /obj/item/grenade/flashbang(src) - new /obj/item/flash(src) - new /obj/item/restraints/handcuffs(src) - new /obj/item/melee/baton/loaded(src) + new /obj/item/storage/belt/security/full(src) new /obj/item/clothing/glasses/sunglasses(src) new /obj/item/clothing/glasses/hud/security/sunglasses/read_only(src) new /obj/item/clothing/glasses/hud/health/sunglasses(src) diff --git a/code/modules/crafting/recipes.dm b/code/modules/crafting/recipes.dm index d9ef3e9b075..ff614e749fe 100644 --- a/code/modules/crafting/recipes.dm +++ b/code/modules/crafting/recipes.dm @@ -76,7 +76,7 @@ /obj/item/robot_parts/r_leg = 1, /obj/item/stack/sheet/metal = 1, /obj/item/stack/cable_coil = 1, - /obj/item/gun/energy/gun/advtaser = 1, + /obj/item/gun/energy/disabler = 1, /obj/item/stock_parts/cell = 1, /obj/item/assembly/prox_sensor = 1) tools = list(TOOL_WELDER, TOOL_SCREWDRIVER) diff --git a/code/modules/mob/living/simple_animal/bot/construction.dm b/code/modules/mob/living/simple_animal/bot/construction.dm index 5abf3b185b5..56e4e190f76 100644 --- a/code/modules/mob/living/simple_animal/bot/construction.dm +++ b/code/modules/mob/living/simple_animal/bot/construction.dm @@ -155,9 +155,9 @@ return newname = "redtag ED-209 assembly" if("") - if(!istype(W, /obj/item/gun/energy/gun/advtaser)) + if(!istype(W, /obj/item/gun/energy/disabler)) return - newname = "taser ED-209 assembly" + newname = "disabler ED-209 assembly" else return if(!user.unEquip(W)) diff --git a/code/modules/mob/living/simple_animal/bot/ed209bot.dm b/code/modules/mob/living/simple_animal/bot/ed209bot.dm index 71405c1942f..45e3f76d0e2 100644 --- a/code/modules/mob/living/simple_animal/bot/ed209bot.dm +++ b/code/modules/mob/living/simple_animal/bot/ed209bot.dm @@ -40,7 +40,7 @@ var/weaponscheck = 1 //If true, arrest people for weapons if they don't have access var/check_records = 1 //Does it check security records? var/arrest_type = 0 //If true, don't handcuff - var/projectile = /obj/item/projectile/energy/electrode //Holder for projectile type + var/projectile = /obj/item/projectile/beam/disabler //Holder for projectile type var/shoot_sound = 'sound/weapons/taser.ogg' @@ -396,7 +396,7 @@ new /obj/item/assembly/prox_sensor(Tsec) if(!lasercolor) - var/obj/item/gun/energy/gun/advtaser/G = new /obj/item/gun/energy/gun/advtaser(Tsec) + var/obj/item/gun/energy/disabler/G = new /obj/item/gun/energy/disabler(Tsec) G.cell.charge = 0 G.update_icon() else if(lasercolor == "b") @@ -437,8 +437,7 @@ projectile = /obj/item/projectile/beam else if(!lasercolor) - shoot_sound = 'sound/weapons/taser.ogg' - projectile = /obj/item/projectile/energy/electrode + projectile = /obj/item/projectile/beam/disabler else if(lasercolor == "b") projectile = /obj/item/projectile/beam/lasertag/bluetag else if(lasercolor == "r") diff --git a/code/modules/power/cell.dm b/code/modules/power/cell.dm index eae1047d0e0..0d1e53c1b1d 100644 --- a/code/modules/power/cell.dm +++ b/code/modules/power/cell.dm @@ -206,6 +206,10 @@ charge = 0 update_icon() +/obj/item/stock_parts/cell/hos_gun + name = "\improper X-01 multiphase energy gun power cell" + maxcharge = 1200 + /obj/item/stock_parts/cell/pulse //200 pulse shots name = "pulse rifle power cell" maxcharge = 40000 diff --git a/code/modules/projectiles/ammunition/ammo_casings.dm b/code/modules/projectiles/ammunition/ammo_casings.dm index 59f46e440f0..66adcba616e 100644 --- a/code/modules/projectiles/ammunition/ammo_casings.dm +++ b/code/modules/projectiles/ammunition/ammo_casings.dm @@ -33,16 +33,16 @@ desc = "A .38 bullet casing." caliber = "38" icon_state = "r-casing" - projectile_type = /obj/item/projectile/bullet/weakbullet2 + projectile_type = /obj/item/projectile/bullet/c38 muzzle_flash_strength = MUZZLE_FLASH_STRENGTH_NORMAL muzzle_flash_range = MUZZLE_FLASH_RANGE_NORMAL /obj/item/ammo_casing/c38/invisible - projectile_type = /obj/item/projectile/bullet/weakbullet2/invisible + projectile_type = /obj/item/projectile/bullet/mime muzzle_flash_effect = null // invisible eh /obj/item/ammo_casing/c38/invisible/fake - projectile_type = /obj/item/projectile/bullet/weakbullet2/invisible/fake + projectile_type = /obj/item/projectile/bullet/mime/fake /obj/item/ammo_casing/c10mm desc = "A 10mm bullet casing." @@ -206,18 +206,12 @@ muzzle_flash_color = "#FFFF00" -/obj/item/ammo_casing/shotgun/meteorshot - name = "meteorshot shell" +/obj/item/ammo_casing/shotgun/meteorslug + name = "meteorslug shell" desc = "A shotgun shell rigged with CMC technology, which launches a massive slug when fired." icon_state = "mshell" projectile_type = /obj/item/projectile/bullet/meteorshot -/obj/item/ammo_casing/shotgun/breaching - name = "breaching shell" - desc = "An economic version of the meteorshot, utilizing similar technologies. Great for busting down doors." - icon_state = "mshell" - projectile_type = /obj/item/projectile/bullet/meteorshot/weak - /obj/item/ammo_casing/shotgun/pulseslug name = "pulse slug" desc = "A delicate device which can be loaded into a shotgun. The primer acts as a button which triggers the gain medium and fires a powerful \ diff --git a/code/modules/projectiles/ammunition/energy.dm b/code/modules/projectiles/ammunition/energy.dm index 049bf13c174..d52a74b7877 100644 --- a/code/modules/projectiles/ammunition/energy.dm +++ b/code/modules/projectiles/ammunition/energy.dm @@ -22,8 +22,8 @@ e_cost = 83 select_name = "kill" -/obj/item/ammo_casing/energy/laser/hos //allows balancing of HoS and blueshit guns seperately from other energy weapons - e_cost = 100 +/obj/item/ammo_casing/energy/laser/hos + e_cost = 120 /obj/item/ammo_casing/energy/laser/practice projectile_type = /obj/item/projectile/beam/practice @@ -102,22 +102,18 @@ select_name = "stun" fire_sound = 'sound/weapons/taser.ogg' e_cost = 200 - delay = 15 harmful = FALSE -/obj/item/ammo_casing/energy/electrode/gun - fire_sound = 'sound/weapons/gunshots/gunshot.ogg' - e_cost = 100 - -/obj/item/ammo_casing/energy/electrode/hos //allows balancing of HoS and blueshit guns seperately from other energy weapons - e_cost = 200 - /obj/item/ammo_casing/energy/ion projectile_type = /obj/item/projectile/ion muzzle_flash_color = LIGHT_COLOR_LIGHTBLUE select_name = "ion" fire_sound = 'sound/weapons/ionrifle.ogg' +/obj/item/ammo_casing/energy/ion/hos + projectile_type = /obj/item/projectile/ion/weak + e_cost = 300 + /obj/item/ammo_casing/energy/declone projectile_type = /obj/item/projectile/energy/declone muzzle_flash_color = LIGHT_COLOR_GREEN @@ -172,6 +168,9 @@ /obj/item/ammo_casing/energy/disabler/cyborg //seperate balancing for cyborg, again e_cost = 250 +/obj/item/ammo_casing/energy/disabler/hos + e_cost = 60 + /obj/item/ammo_casing/energy/plasma projectile_type = /obj/item/projectile/plasma muzzle_flash_color = LIGHT_COLOR_PURPLE @@ -216,12 +215,6 @@ projectile_type = /obj/item/projectile/energy/bolt/large select_name = "heavy bolt" -/obj/item/ammo_casing/energy/dart - projectile_type = /obj/item/projectile/energy/dart - fire_sound = 'sound/weapons/genhit.ogg' - e_cost = 500 - select_name = "toxic dart" - /obj/item/ammo_casing/energy/instakill projectile_type = /obj/item/projectile/beam/instakill muzzle_flash_color = LIGHT_COLOR_PURPLE @@ -264,13 +257,6 @@ fire_sound = 'sound/weapons/gunshots/gunshot_smg.ogg' select_name = "clown" -/obj/item/ammo_casing/energy/sniper - projectile_type = /obj/item/projectile/beam/sniper - muzzle_flash_color = LIGHT_COLOR_PINK - fire_sound = 'sound/weapons/marauder.ogg' - delay = 50 - select_name = "snipe" - /obj/item/ammo_casing/energy/emitter projectile_type = /obj/item/projectile/beam/emitter muzzle_flash_color = LIGHT_COLOR_GREEN diff --git a/code/modules/projectiles/ammunition/magazines.dm b/code/modules/projectiles/ammunition/magazines.dm index ef1d1b44be1..af42414c53c 100644 --- a/code/modules/projectiles/ammunition/magazines.dm +++ b/code/modules/projectiles/ammunition/magazines.dm @@ -64,6 +64,7 @@ /obj/item/ammo_box/magazine/internal/cylinder/rev38/invisible name = "finger gun cylinder" desc = "Wait, what?" + max_ammo = 3 ammo_type = /obj/item/ammo_casing/c38/invisible /obj/item/ammo_box/magazine/internal/cylinder/rev38/invisible/fake @@ -407,10 +408,10 @@ icon_state = "m12gt" ammo_type = /obj/item/ammo_casing/shotgun/dart/bioterror -/obj/item/ammo_box/magazine/m12g/breach - name = "shotgun magazine (12g breacher slugs)" +/obj/item/ammo_box/magazine/m12g/meteor + name = "shotgun magazine (12g meteor slugs)" icon_state = "m12gbc" - ammo_type = /obj/item/ammo_casing/shotgun/breaching + ammo_type = /obj/item/ammo_casing/shotgun/meteorslug /obj/item/ammo_box/magazine/m12g/XtrLrg name = "\improper XL shotgun magazine (12g slugs)" diff --git a/code/modules/projectiles/guns/energy/nuclear.dm b/code/modules/projectiles/guns/energy/nuclear.dm index b6f1aee729c..f27533cb212 100644 --- a/code/modules/projectiles/guns/energy/nuclear.dm +++ b/code/modules/projectiles/guns/energy/nuclear.dm @@ -51,22 +51,24 @@ /obj/item/gun/energy/gun/hos name = "\improper X-01 MultiPhase Energy Gun" desc = "This is an expensive, modern recreation of an antique laser gun. This gun has several unique firemodes, but lacks the ability to recharge over time." + cell_type = /obj/item/stock_parts/cell/hos_gun icon_state = "hoslaser" origin_tech = null force = 10 - ammo_type = list(/obj/item/ammo_casing/energy/electrode/hos, /obj/item/ammo_casing/energy/laser/hos, /obj/item/ammo_casing/energy/disabler) + ammo_type = list(/obj/item/ammo_casing/energy/disabler/hos, /obj/item/ammo_casing/energy/laser/hos, /obj/item/ammo_casing/energy/ion/hos) ammo_x_offset = 4 resistance_flags = INDESTRUCTIBLE | LAVA_PROOF | FIRE_PROOF | ACID_PROOF shaded_charge = FALSE can_holster = TRUE /obj/item/gun/energy/gun/blueshield - name = "advanced stun revolver" - desc = "An advanced stun revolver with the capacity to shoot both electrodes and lasers." + name = "advanced energy revolver" + desc = "An advanced energy revolver with the capacity to shoot both disablers and lasers." + cell_type = /obj/item/stock_parts/cell/hos_gun icon_state = "bsgun" item_state = "gun" force = 7 - ammo_type = list(/obj/item/ammo_casing/energy/electrode/hos, /obj/item/ammo_casing/energy/laser/hos) + ammo_type = list(/obj/item/ammo_casing/energy/disabler/hos, /obj/item/ammo_casing/energy/laser/hos) ammo_x_offset = 1 shaded_charge = TRUE can_holster = TRUE @@ -100,7 +102,7 @@ charge_delay = 5 can_charge = 0 ammo_x_offset = 1 - ammo_type = list(/obj/item/ammo_casing/energy/electrode, /obj/item/ammo_casing/energy/laser, /obj/item/ammo_casing/energy/disabler) + ammo_type = list(/obj/item/ammo_casing/energy/laser, /obj/item/ammo_casing/energy/disabler) selfcharge = 1 shaded_charge = FALSE diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm index a4b086bdfad..9f6ec48f831 100644 --- a/code/modules/projectiles/guns/energy/special.dm +++ b/code/modules/projectiles/guns/energy/special.dm @@ -315,26 +315,6 @@ shaded_charge = 1 can_holster = TRUE -// Energy Sniper // -/obj/item/gun/energy/sniperrifle - name = "\improper L.W.A.P. sniper rifle" - desc = "A rifle constructed of lightweight materials, fitted with a SMART aiming-system scope." - icon_state = "esniper" - origin_tech = "combat=6;materials=5;powerstorage=4" - ammo_type = list(/obj/item/ammo_casing/energy/sniper) - item_state = null - weapon_weight = WEAPON_HEAVY - slot_flags = SLOT_BACK - w_class = WEIGHT_CLASS_BULKY - can_holster = FALSE - zoomable = TRUE - zoom_amt = 7 //Long range, enough to see in front of you, but no tiles behind you. - shaded_charge = 1 - -/obj/item/gun/energy/sniperrifle/detailed_examine() - return "This is an energy weapon. Most energy weapons can fire through windows harmlessly. To recharge this weapon, use a weapon recharger. \ - To use the scope, use the appropriate verb in the object tab." - /obj/item/gun/energy/bsg name = "\improper B.S.G" desc = "The Blue Space Gun. Uses a flux anomaly core and a bluespace crystal to produce destructive bluespace energy blasts, inspired by Nanotrasen's BSA division." diff --git a/code/modules/projectiles/guns/energy/stun.dm b/code/modules/projectiles/guns/energy/stun.dm index 75b22634d99..555781b34aa 100644 --- a/code/modules/projectiles/guns/energy/stun.dm +++ b/code/modules/projectiles/guns/energy/stun.dm @@ -52,7 +52,10 @@ item_state = null origin_tech = "combat=3" ammo_type = list(/obj/item/ammo_casing/energy/disabler) - ammo_x_offset = 3 + ammo_x_offset = 2 + can_flashlight = TRUE + flight_x_offset = 15 + flight_y_offset = 10 can_holster = TRUE /obj/item/gun/energy/disabler/cyborg diff --git a/code/modules/projectiles/projectile/beams.dm b/code/modules/projectiles/projectile/beams.dm index 1be7bc9d95c..82374e5e453 100644 --- a/code/modules/projectiles/projectile/beams.dm +++ b/code/modules/projectiles/projectile/beams.dm @@ -117,16 +117,6 @@ suit_types = list(/obj/item/clothing/suit/redtag) light_color = LIGHT_COLOR_BLUE -/obj/item/projectile/beam/sniper - name = "sniper beam" - icon_state = "sniperlaser" - damage = 60 - stun = 5 - weaken = 5 - stutter = 5 - impact_effect_type = /obj/effect/temp_visual/impact_effect/purple_laser - light_color = LIGHT_COLOR_PINK - /obj/item/projectile/beam/immolator name = "immolation beam" diff --git a/code/modules/projectiles/projectile/bullets.dm b/code/modules/projectiles/projectile/bullets.dm index 16e7cec1537..2531e8b8da0 100644 --- a/code/modules/projectiles/projectile/bullets.dm +++ b/code/modules/projectiles/projectile/bullets.dm @@ -12,6 +12,10 @@ damage = 5 stamina = 80 +/obj/item/projectile/bullet/c38 + name = ".38 bullet" + damage = 25 + /obj/item/projectile/bullet/weakbullet/booze /obj/item/projectile/bullet/weakbullet/booze/on_hit(atom/target, blocked = 0) @@ -31,26 +35,12 @@ M.AdjustDrowsy(10) A.volume += 5 //Because we can -/obj/item/projectile/bullet/weakbullet2 //detective revolver +/obj/item/projectile/bullet/weakbullet2 name = "rubber bullet" damage = 5 stamina = 35 icon_state = "bullet-r" -/obj/item/projectile/bullet/weakbullet2/invisible //finger gun bullets - name = "invisible bullet" - damage = 0 - weaken = 3 - stamina = 60 - icon_state = null - hitsound_wall = null - -/obj/item/projectile/bullet/weakbullet2/invisible/fake - weaken = 0 - stamina = 0 - nodamage = 1 - log_override = TRUE - /obj/item/projectile/bullet/weakbullet3 damage = 20 @@ -165,7 +155,7 @@ /obj/item/projectile/bullet/heavybullet damage = 35 -/obj/item/projectile/bullet/stunshot//taser slugs for shotguns, nothing special +/obj/item/projectile/bullet/stunshot //taser slugs for shotguns, nothing special name = "stunshot" damage = 5 stun = 5 @@ -196,13 +186,13 @@ icon = 'icons/obj/meteor.dmi' icon_state = "dust" damage = 30 - weaken = 8 - stun = 8 + stun = 1 + weaken = 4 hitsound = 'sound/effects/meteorimpact.ogg' /obj/item/projectile/bullet/meteorshot/on_hit(atom/target, blocked = 0) ..() - if(istype(target, /atom/movable)) + if(ismovable(target)) var/atom/movable/M = target var/atom/throw_target = get_edge_target_turf(M, get_dir(src, get_step_away(M, src))) M.throw_at(throw_target, 3, 2) @@ -211,29 +201,28 @@ ..() SpinAnimation() -/obj/item/projectile/bullet/meteorshot/weak - damage = 10 - weaken = 4 - stun = 4 - /obj/item/projectile/bullet/mime - damage = 0 - stun = 5 - weaken = 5 - slur = 20 - stutter = 20 + damage = 40 + var/special_effects = TRUE /obj/item/projectile/bullet/mime/on_hit(atom/target, blocked = 0) ..(target, blocked) - if(iscarbon(target)) - var/mob/living/carbon/M = target - M.Silence(10) - else if(istype(target, /obj/mecha/combat/honker)) - var/obj/mecha/chassis = target - chassis.occupant_message("A mimetech anti-honk bullet has hit \the [chassis]!") - chassis.use_power(chassis.get_charge() / 2) - for(var/obj/item/mecha_parts/mecha_equipment/weapon/honker in chassis.equipment) - honker.set_ready_state(0) + if(special_effects) + if(iscarbon(target)) + var/mob/living/carbon/M = target + M.Silence(10) + else if(istype(target, /obj/mecha/combat/honker)) + var/obj/mecha/chassis = target + chassis.occupant_message("A mimetech anti-honk bullet has hit \the [chassis]!") + chassis.use_power(chassis.get_charge() / 2) + for(var/obj/item/mecha_parts/mecha_equipment/weapon/honker in chassis.equipment) + honker.set_ready_state(0) + +/obj/item/projectile/bullet/mime/fake + damage = 0 + nodamage = TRUE + special_effects = FALSE + log_override = TRUE /obj/item/projectile/bullet/dart name = "dart" diff --git a/code/modules/projectiles/projectile/energy.dm b/code/modules/projectiles/projectile/energy.dm index dc6f3fdf2da..638c6449d16 100644 --- a/code/modules/projectiles/projectile/energy.dm +++ b/code/modules/projectiles/projectile/energy.dm @@ -44,30 +44,16 @@ irradiate = 10 impact_effect_type = /obj/effect/temp_visual/impact_effect/green_laser -/obj/item/projectile/energy/dart - name = "dart" - icon_state = "toxin" - damage = 5 - damage_type = TOX - weaken = 5 - range = 7 - -/obj/item/projectile/energy/shuriken - name = "shuriken" - icon_state = "toxin" - damage = 10 - damage_type = TOX - weaken = 5 - stutter = 5 - /obj/item/projectile/energy/bolt name = "bolt" icon_state = "cbbolt" damage = 15 damage_type = TOX - nodamage = 0 - weaken = 5 - stutter = 5 + nodamage = FALSE + stamina = 60 + eyeblur = 10 + weaken = 1 + slur = 5 /obj/item/projectile/energy/bolt/large damage = 20 diff --git a/code/modules/projectiles/projectile/special.dm b/code/modules/projectiles/projectile/special.dm index 490878ea74d..07832967969 100644 --- a/code/modules/projectiles/projectile/special.dm +++ b/code/modules/projectiles/projectile/special.dm @@ -193,14 +193,14 @@ /obj/item/projectile/bullet/frag12 name ="explosive slug" - damage = 25 - weaken = 5 + damage = 15 + weaken = 1 alwayslog = TRUE /obj/item/projectile/bullet/frag12/on_hit(atom/target, blocked = 0) ..() explosion(target, -1, 0, 1) - return 1 + return TRUE /obj/item/projectile/plasma name = "plasma blast" diff --git a/code/modules/research/designs/mechfabricator_designs.dm b/code/modules/research/designs/mechfabricator_designs.dm index 806ee0d5068..77aa187ac04 100644 --- a/code/modules/research/designs/mechfabricator_designs.dm +++ b/code/modules/research/designs/mechfabricator_designs.dm @@ -672,12 +672,12 @@ construction_time = 100 category = list("Exosuit Equipment") -/datum/design/mech_taser - name = "Exosuit Weapon (PBT \"Pacifier\" Mounted Taser)" - id = "mech_taser" +/datum/design/mech_disabler + name = "Exosuit Weapon (CH-DS \"Peacemaker\" Disabler)" + id = "mech_disabler" build_type = MECHFAB req_tech = list("combat" = 3) - build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/taser + build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/disabler materials = list(MAT_METAL=10000) construction_time = 100 category = list("Exosuit Equipment") @@ -892,17 +892,6 @@ construction_time = 100 category = list("Exosuit Equipment") -/datum/design/mech_disabler - name = "Exosuit Weapon (CH-PD Disabler)" - desc = "Allows for the construction of CH-PD Disabler." - id = "mech_disabler" - build_type = MECHFAB - req_tech = list("combat" = 3) - build_path = /obj/item/mecha_parts/mecha_equipment/weapon/energy/laser/disabler - materials = list(MAT_METAL=10000) - construction_time = 100 - category = list("Exosuit Equipment") - /datum/design/mech_carbine name = "Exosuit Weapon (FNX-99 \"Hades\" Carbine)" desc = "Allows for the construction of FNX-99 \"Hades\" Carbine." diff --git a/code/modules/response_team/ert_outfits.dm b/code/modules/response_team/ert_outfits.dm index 029a53b64bc..412c48fc4bd 100644 --- a/code/modules/response_team/ert_outfits.dm +++ b/code/modules/response_team/ert_outfits.dm @@ -134,7 +134,7 @@ name = "RT Security (Amber)" shoes = /obj/item/clothing/shoes/combat suit = /obj/item/clothing/suit/armor/vest/ert/security - suit_store = /obj/item/gun/energy/gun/advtaser + suit_store = /obj/item/gun/energy/disabler glasses = /obj/item/clothing/glasses/hud/security/sunglasses mask = /obj/item/clothing/mask/gas/sechailer @@ -425,7 +425,7 @@ name = "RT Paranormal (Amber)" suit = /obj/item/clothing/suit/armor/vest/ert/security/paranormal head = /obj/item/clothing/head/helmet/ert/security/paranormal - suit_store = /obj/item/gun/energy/gun/advtaser + suit_store = /obj/item/gun/energy/disabler r_pocket = /obj/item/nullrod /datum/outfit/job/centcom/response_team/paranormal/red diff --git a/icons/mob/inhands/guns_lefthand.dmi b/icons/mob/inhands/guns_lefthand.dmi index f05497b5643..13a4dfc1ab5 100644 Binary files a/icons/mob/inhands/guns_lefthand.dmi and b/icons/mob/inhands/guns_lefthand.dmi differ diff --git a/icons/mob/inhands/guns_righthand.dmi b/icons/mob/inhands/guns_righthand.dmi index 32c27e7d57d..2b3d38589da 100644 Binary files a/icons/mob/inhands/guns_righthand.dmi and b/icons/mob/inhands/guns_righthand.dmi differ diff --git a/icons/obj/guns/energy.dmi b/icons/obj/guns/energy.dmi index f2a1917a06e..c436c99c729 100644 Binary files a/icons/obj/guns/energy.dmi and b/icons/obj/guns/energy.dmi differ