diff --git a/code/datums/autolathe/arms_ch.dm b/code/datums/autolathe/arms_ch.dm index b4599501ba..39f7c1be87 100644 --- a/code/datums/autolathe/arms_ch.dm +++ b/code/datums/autolathe/arms_ch.dm @@ -72,6 +72,7 @@ path =/obj/item/flamethrower/full hidden = 1 +// anti material rifle rounds /datum/category_item/autolathe/arms/rifle_145 name = "14.5mm round" path = /obj/item/ammo_casing/a145 @@ -81,6 +82,8 @@ name = "14.5mm round (sabot)" path = /obj/item/ammo_casing/a145/highvel hidden = 1 + +// foam darts /datum/category_item/autolathe/arms/foamdart name = "foam dart" path = /obj/item/ammo_casing/afoam_dart @@ -90,3 +93,247 @@ name = "riot foam dart" path = /obj/item/ammo_casing/afoam_dart/riot hidden = 1 + +/datum/category_item/autolathe/arms/foambox + name = "box of foam darts" + path = /obj/item/ammo_magazine/ammo_box/foam + hidden = 0 + +/datum/category_item/autolathe/arms/foamboxriot + name = "box of riot foam darts" + path = /obj/item/ammo_magazine/ammo_box/foam/riot + hidden = 1 + +// Revolver speedloaders +/datum/category_item/autolathe/arms/speedloader_357 + name = "speedloader (.357)" + path =/obj/item/ammo_magazine/s357 + hidden = 1 + +/datum/category_item/autolathe/arms/speedloader_38 + name = "speedloader (.38)" + path =/obj/item/ammo_magazine/s38 + hidden = 1 + +/datum/category_item/autolathe/arms/speedloader_38r + name = "speedloader (.38 rubber)" + path =/obj/item/ammo_magazine/s38/rubber + +/datum/category_item/autolathe/arms/speedloader_45 + name = "speedloader (.45)" + path = /obj/item/ammo_magazine/s45 + hidden = 1 + +/datum/category_item/autolathe/arms/speedloader_45r + name = "speedloader (.45 rubber)" + path = /obj/item/ammo_magazine/s45/rubber + +// 10mm +/datum/category_item/autolathe/arms/b10mm + name = "ammo box (10mm)" + path = /obj/item/ammo_magazine/ammo_box/b10mm + hidden = 1 + +/datum/category_item/autolathe/arms/b10mm/practice + name = "ammo box (10mm practice)" + path = /obj/item/ammo_magazine/ammo_box/b10mm/practice + +/datum/category_item/autolathe/arms/b10mm/rubber + name = "ammo box (10mm rubber)" + path = /obj/item/ammo_magazine/ammo_box/b10mm/rubber + +/datum/category_item/autolathe/arms/b10mm/emp + name = "ammo box (10mm haywire)" + path = /obj/item/ammo_magazine/ammo_box/b10mm/emp + hidden = 1 + +// .44 + +/datum/category_item/autolathe/arms/b44 + name = "ammo box (.44)" + path = /obj/item/ammo_magazine/ammo_box/b44 + hidden = 1 + +/datum/category_item/autolathe/arms/b44/rubber + name = "ammo box (.44 rubber)" + path = /obj/item/ammo_magazine/ammo_box/b44/rubber + +// .45 + +/datum/category_item/autolathe/arms/b45 + name = "ammo box (.45)" + path = /obj/item/ammo_magazine/ammo_box/b45 + hidden = 1 + +/datum/category_item/autolathe/arms/b45/practice + name = "ammo box (.45 Practice)" + path = /obj/item/ammo_magazine/ammo_box/b45/practice + +/datum/category_item/autolathe/arms/b45/ap + name = "ammo box (.45 AP)" + path = /obj/item/ammo_magazine/ammo_box/b45/ap + hidden = 1 + +/datum/category_item/autolathe/arms/b45/hp + name = "ammo box (.45 HP)" + path = /obj/item/ammo_magazine/ammo_box/b45/hp + hidden = 1 + +/datum/category_item/autolathe/arms/b45/rubber + name = "ammo box (.45 rubber)" + path = /obj/item/ammo_magazine/ammo_box/b45/rubber + hidden = 1 + +/datum/category_item/autolathe/arms/b45/emp + name = "ammo box (.45 haywire)" + path = /obj/item/ammo_magazine/ammo_box/b45/emp + hidden = 1 + +//12g +/datum/category_item/autolathe/arms/b12g + name = "ammo box (12 gauge slug)" + path = /obj/item/ammo_magazine/ammo_box/b12g + hidden = 1 + +/datum/category_item/autolathe/arms/b12g/pellet + name = "ammo box (12 gauge buckshot)" + path = /obj/item/ammo_magazine/ammo_box/b12g/pellet + hidden = 1 + +/datum/category_item/autolathe/arms/b12g/beanbag + name = "ammo box (12 gauge beanbag)" + path = /obj/item/ammo_magazine/ammo_box/b12g/beanbag + hidden = 1 + +/datum/category_item/autolathe/arms/b12g/stunshell + name = "ammo box (12 gauge stun)" + path = /obj/item/ammo_magazine/ammo_box/b12g/stunshell + hidden = 1 + +/datum/category_item/autolathe/arms/b12g/emp + name = "ammo box (12 gauge EMP)" + path = /obj/item/ammo_magazine/ammo_box/b12g/beanbag + hidden = 1 + +/datum/category_item/autolathe/arms/b12g/flechette + name = "ammo box (12 gauge flechette)" + path = /obj/item/ammo_magazine/ammo_box/b12g/flechette + hidden = 1 + +/datum/category_item/autolathe/arms/b12g/practice + name = "ammo box (12 gauge practice)" + path = /obj/item/ammo_magazine/ammo_box/b12g/practice + +/datum/category_item/autolathe/arms/b12g/blank + name = "ammo box (12 gauge blank)" + path = /obj/item/ammo_magazine/ammo_box/b12g/blank + +/datum/category_item/autolathe/arms/b12g/flash + name = "ammo box (12 gauge flash)" + path = /obj/item/ammo_magazine/ammo_box/b12g/flash + hidden = 1 + +/datum/category_item/autolathe/arms/b762 + name = "ammo box (7.62mm)" + path = /obj/item/ammo_magazine/ammo_box/b762 + hidden = 1 + +/datum/category_item/autolathe/arms/b762/hp + name = "ammo box (7.62mm HP)" + path = /obj/item/ammo_magazine/ammo_box/b762/hp + hidden = 1 + +/datum/category_item/autolathe/arms/b762/ap + name = "ammo box (7.62mm AP)" + path = /obj/item/ammo_magazine/ammo_box/b762/ap + hidden = 1 + +/datum/category_item/autolathe/arms/b762/practice + name = "ammo box (7.62mm practice)" + path = /obj/item/ammo_magazine/ammo_box/b762/practice + hidden = 1 + +/datum/category_item/autolathe/arms/b762/hunter + name = "ammo box (7.62mm hunter)" + path = /obj/item/ammo_magazine/ammo_box/b762/hunter + hidden = 0 + +/datum/category_item/autolathe/arms/b545 + name = "ammo box (5.45mm)" + path = /obj/item/ammo_magazine/ammo_box/b545 + hidden = 1 + +/datum/category_item/autolathe/arms/b545/ap + name = "ammo box (5.45mm AP)" + path = /obj/item/ammo_magazine/ammo_box/b545/ap + hidden = 1 + +/datum/category_item/autolathe/arms/b545/hp + name = "ammo box (5.45mm HP)" + path = /obj/item/ammo_magazine/ammo_box/b545/hp + hidden = 1 + +/datum/category_item/autolathe/arms/b545/practice + name = "ammo box (5.45mm practice)" + path = /obj/item/ammo_magazine/ammo_box/b545/practice + +/datum/category_item/autolathe/arms/b545/hunter + name = "ammo box (5.45mm hunter)" + path = /obj/item/ammo_magazine/ammo_box/b545/hunter + +/datum/category_item/autolathe/arms/b545/blank + name = "ammo box (5.45mm blank)" + path = /obj/item/ammo_magazine/ammo_box/b545/blank + +/datum/category_item/autolathe/arms/b545/large + name = "large ammo box (5.45mm)" + path = /obj/item/ammo_magazine/ammo_box/b545/large + hidden = 1 + +/datum/category_item/autolathe/arms/b545/large/ap + name = "large ammo box (5.45mm AP)" + path = /obj/item/ammo_magazine/ammo_box/b545/large/ap + hidden = 1 + +/datum/category_item/autolathe/arms/b545/large/hp + name = "large ammo box (5.45mm HP)" + path = /obj/item/ammo_magazine/ammo_box/b545/large/hp + hidden = 1 + +/datum/category_item/autolathe/arms/b545/large/practice + name = "large ammo box (5.45mm practice)" + path = /obj/item/ammo_magazine/ammo_box/b545/large/practice + +/datum/category_item/autolathe/arms/b545/large/hunter + name = "large ammo box (5.45mm hunter)" + path = /obj/item/ammo_magazine/ammo_box/b545/large/hunter + hidden = 1 + +//9mm +/datum/category_item/autolathe/arms/b9mm + name = "ammo box (9mm)" + path = /obj/item/ammo_magazine/ammo_box/b9mm + hidden = 1 + +/datum/category_item/autolathe/arms/b9mm/practice + name = "ammo box (9mm practice)" + path = /obj/item/ammo_magazine/ammo_box/b9mm/practice + +/datum/category_item/autolathe/arms/b9mm/ap + name = "ammo box (9mm AP)" + path = /obj/item/ammo_magazine/ammo_box/b9mm/ap + hidden = 1 + +/datum/category_item/autolathe/arms/b9mm/hp + name = "ammo box (9mm HP)" + path = /obj/item/ammo_magazine/ammo_box/b9mm/hp + hidden = 1 + +/datum/category_item/autolathe/arms/b9mm/rubber + name = "ammo box (9mm rubber)" + path = /obj/item/ammo_magazine/ammo_box/b9mm/rubber + +/datum/category_item/autolathe/arms/b9mm/flash + name = "ammo box (9mm flash)" + path = /obj/item/ammo_magazine/ammo_box/b9mm/flash + hidden = 1 diff --git a/code/game/objects/random/guns_and_ammo.dm b/code/game/objects/random/guns_and_ammo.dm index 6a44530868..bd465e6608 100644 --- a/code/game/objects/random/guns_and_ammo.dm +++ b/code/game/objects/random/guns_and_ammo.dm @@ -277,7 +277,7 @@ ), prob(1);list( /obj/item/gun/projectile/automatic/p90, - /obj/item/ammo_magazine/a57p90 //CHOMPedit: new P90 magazine. + /obj/item/ammo_magazine/m9mmp90 ), prob(3);list( /obj/item/gun/projectile/automatic/combatsmg, diff --git a/code/game/objects/random/mob_vr.dm b/code/game/objects/random/mob_vr.dm index 50b338aaa5..ba4548b554 100644 --- a/code/game/objects/random/mob_vr.dm +++ b/code/game/objects/random/mob_vr.dm @@ -109,9 +109,7 @@ prob(4);/obj/item/ammo_magazine/m45uzi,\ prob(4);/obj/item/ammo_magazine/m9mml,\ prob(4);/obj/item/ammo_magazine/m9mmt,\ -//CHOMPedit start: new P90 magazine. - prob(4);/obj/item/ammo_magazine/a57p90,\ -//CHOMPedit end. + prob(4);/obj/item/ammo_magazine/m9mmp90,\ prob(4);/obj/item/ammo_magazine/m10mm,\ prob(4);/obj/item/ammo_magazine/m545/small,\ prob(3);/obj/item/ammo_magazine/clip/c44,\ diff --git a/code/modules/awaymissions/loot_vr.dm b/code/modules/awaymissions/loot_vr.dm index b54d4cbd1b..e3125f4c67 100644 --- a/code/modules/awaymissions/loot_vr.dm +++ b/code/modules/awaymissions/loot_vr.dm @@ -195,9 +195,7 @@ prob(4);/obj/item/ammo_magazine/m9mmt,\ prob(4);/obj/item/ammo_magazine/m9mmt/rubber,\ prob(4);/obj/item/ammo_magazine/m10mm,\ -//CHOMPedit start: new P90 magazine. - prob(4);/obj/item/ammo_magazine/a57p90,\ -//CHOMPedit end. + prob(4);/obj/item/ammo_magazine/m9mmp90,\ prob(4);/obj/item/ammo_magazine/m545/ext, prob(4);/obj/item/ammo_magazine/m762,\ prob(4);/obj/item/ammo_magazine/ammo_box/b762/surplus/hunter,\ diff --git a/code/modules/projectiles/ammunition/magazines.dm b/code/modules/projectiles/ammunition/magazines.dm index 069a2c751b..31cd17d906 100644 --- a/code/modules/projectiles/ammunition/magazines.dm +++ b/code/modules/projectiles/ammunition/magazines.dm @@ -427,8 +427,6 @@ ammo_type = /obj/item/ammo_casing/a9mm/ap matter = list(MAT_STEEL = 1000, MAT_PLASTEEL = 2000) -// P90 -/* CHOMPEDIT Commented out, moved to zz_magazines_ch.dm * /obj/item/ammo_magazine/m9mmp90 name = "large capacity top mounted magazine (9mm armor-piercing)" icon_state = "p90" @@ -441,7 +439,13 @@ /obj/item/ammo_magazine/m9mmp90/empty initial_ammo = 0 -* CHOMPEDIT Commented out, moved to zz_magazines_ch.dm */ + +//CHOMPadd begin +/obj/item/ammo_magazine/m9mmp90/rubber + name = "large capacity top mounted magazine (9mm rubber)" + ammo_type = /obj/item/ammo_casing/a9mm/rubber + matter = list(MAT_STEEL = 2000, MAT_PLASTIC = 1000) +//CHOMPadd end // Stripper Clip /obj/item/ammo_magazine/clip/c9mm diff --git a/code/modules/projectiles/guns/projectile/automatic.dm b/code/modules/projectiles/guns/projectile/automatic.dm index fe3eec8338..26e2f408d4 100644 --- a/code/modules/projectiles/guns/projectile/automatic.dm +++ b/code/modules/projectiles/guns/projectile/automatic.dm @@ -306,8 +306,8 @@ firemodes = list( list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), - list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-15,-15), dispersion=list(0.0, 0.6, 1.0)), - list(mode_name="short bursts", burst=5, move_delay=6, burst_accuracy = list(0,-15,-15,-30,-30), dispersion = list(0.6, 1.0, 1.0, 1.0, 1.2)) + list(mode_name="3-round bursts", burst=3,burst_delay=1 ,fire_delay=null, move_delay=4, burst_accuracy=list(0,-15,-15), dispersion=list(0.0, 0.6, 1.0)), //CHOMPedit, firerate buff + list(mode_name="short bursts", burst=5,burst_delay=1 ,move_delay=3, burst_accuracy = list(0,-15,-15,-30,-30), dispersion = list(0.6, 1.0, 1.0, 1.0, 1.2)) //CHOMPedit, firerate buff ) /obj/item/gun/projectile/automatic/l6_saw/special_check(mob/user) diff --git a/code/modules/projectiles/guns/projectile/automatic_ch.dm b/code/modules/projectiles/guns/projectile/automatic_ch.dm index f67bf2b2d9..bff31b6bf5 100644 --- a/code/modules/projectiles/guns/projectile/automatic_ch.dm +++ b/code/modules/projectiles/guns/projectile/automatic_ch.dm @@ -13,7 +13,7 @@ /obj/item/gun/projectile/automatic/p90 name = "\improper P90K PDW" - desc = "The P90K Personal Defense Weapon is a MarsTech-assembled modernized variation of the ancient FN P90, a compact, high-capacity submachine gun of human origin. Its fierce reputation owes to its minimal recoil and ergonomic design. Chambered in 5.7x28mm caseless rounds." + desc = "The P90K Personal Defense Weapon is a MarsTech-assembled modernized variation of the ancient FN P90, a compact, high-capacity submachine gun of human origin. Its fierce reputation owes to its minimal recoil and ergonomic design. Chambered in 9mm rounds." description_fluff = "The leading civilian-sector high-quality small arms subsidiary of Hephaestus Industries, MarsTech has been the provider of choice for law enforcement and security forces for over 300 years." icon = 'icons/obj/gun_ch.dmi' @@ -34,11 +34,11 @@ auto_eject = 1 // Auto-ejects magazine when it's empty. auto_eject_sound = 'sound/weapons/smg_empty_alarm.ogg' - caliber = "5.7x28mm" // The type of caliber the gun accepts. Will not accept magazines loaded with the wrong caliber, even if they're listed in allowed_magazines. - ammo_type = /obj/item/ammo_casing/a57 // Should always be an ammo casing that uses the same caliber as the gun's listed for. + caliber = "9mm" // The type of caliber the gun accepts. Will not accept magazines loaded with the wrong caliber, even if they're listed in allowed_magazines. + ammo_type = /obj/item/ammo_casing/a9mm // Should always be an ammo casing that uses the same caliber as the gun's listed for. load_method = MAGAZINE - magazine_type = /obj/item/ammo_magazine/a57p90 // The magazine type it spawns with. - allowed_magazines = list(/obj/item/ammo_magazine/a57p90) // What kind of magazine(s) it can load. + magazine_type = /obj/item/ammo_magazine/m9mmp90 // The magazine type it spawns with. + allowed_magazines = list(/obj/item/ammo_magazine/m9mmp90, /obj/item/ammo_magazine/m9mmt) // What kind of magazine(s) it can load. fire_sound = "sound/weapons/Gunshot1.ogg" firemodes = list( diff --git a/modular_chomp/code/modules/datums/supplypacks/munitions.dm b/modular_chomp/code/modules/datums/supplypacks/munitions.dm index 1d2131d4d1..8559633d1f 100644 --- a/modular_chomp/code/modules/datums/supplypacks/munitions.dm +++ b/modular_chomp/code/modules/datums/supplypacks/munitions.dm @@ -6,10 +6,10 @@ /obj/item/clothing/accessory/holster/hip, /obj/item/clothing/accessory/badge/sheriff, /obj/item/clothing/accessory/cowboy_vest, - /obj/item/ammo_magazine/s45lc = 2, + /obj/item/ammo_magazine/s45 = 2, ) cost = 134 // yee haw, also damn you serdy for making me want to add this. containertype = /obj/structure/closet/crate/secure containername = "Cowboy Crate" access = access_armory - contraband = 1 \ No newline at end of file + contraband = 1 diff --git a/modular_chomp/code/modules/mob/living/simple_mob/subtypes/vore/syndimobs.dm b/modular_chomp/code/modules/mob/living/simple_mob/subtypes/vore/syndimobs.dm index f9c10dcc69..4f4cc16db3 100644 --- a/modular_chomp/code/modules/mob/living/simple_mob/subtypes/vore/syndimobs.dm +++ b/modular_chomp/code/modules/mob/living/simple_mob/subtypes/vore/syndimobs.dm @@ -291,7 +291,7 @@ var/explosion_delay_upper = 1 SECONDS // Upper bound. - loot_list = list(/obj/item/gun/projectile/automatic/serdy/type901 = 1) + loot_list = list(/obj/item/gun/projectile/automatic/z8 = 1) projectiletype = /obj/item/projectile/bullet/rifle/a545 projectilesound = 'sound/weapons/serdy/type901.ogg' diff --git a/modular_chomp/code/modules/projectiles/guns/bullet.dm b/modular_chomp/code/modules/projectiles/guns/bullet.dm index 6dc1d183c0..727244319d 100644 --- a/modular_chomp/code/modules/projectiles/guns/bullet.dm +++ b/modular_chomp/code/modules/projectiles/guns/bullet.dm @@ -1,6 +1,8 @@ /obj/item/projectile/bullet damage = 25 //seems many bullets use this value for some reason +/* Old balance stuff, check the modular_chomp/zBallisticPort folder for the new stuff + //These are projectiles that do not have damage defined anywhere. Gonna follow laser weapons sorta with a extra kick, 25/35/60 /obj/item/projectile/bullet/a38 //These projectiles are used but dont exist, revolvers were super underpowered forever damage = 25 //.38 pretty bwoomp @@ -167,3 +169,4 @@ /obj/item/projectile/bullet/pellet/fragment/strong damage = 7 */ +*/ diff --git a/modular_chomp/code/modules/projectiles/guns/projectile/ammunition/ammo_boxes.dm b/modular_chomp/code/modules/projectiles/guns/projectile/ammunition/ammo_boxes.dm new file mode 100644 index 0000000000..8b57542447 --- /dev/null +++ b/modular_chomp/code/modules/projectiles/guns/projectile/ammunition/ammo_boxes.dm @@ -0,0 +1,59 @@ +/obj/item/ammo_magazine/ammo_box/b9mm + name = "ammo box (9mm)" + desc = "A box of 9mm rounds" + icon_state = "pistol_s" + caliber = "9mm" + ammo_type = /obj/item/ammo_casing/a9mm + matter = list(MAT_STEEL = 1500) + max_ammo = 24 + multiple_sprites = 1 + +/obj/item/ammo_magazine/ammo_box/b9mm/practice + name = "ammo box (9mm practice)" + desc = "A box of 9mm practice rounds" + icon_state = "pistol_p" + caliber = "9mm" + ammo_type = /obj/item/ammo_casing/a9mm/practice + matter = list(MAT_STEEL = 1100) + max_ammo = 24 + multiple_sprites = 1 + +/obj/item/ammo_magazine/ammo_box/b9mm/ap + name = "ammo box (9mm AP)" + desc = "A box of 9mm armor-piercing rounds" + icon_state = "pistol_ap" + caliber = "9mm" + ammo_type = /obj/item/ammo_casing/a9mm/ap + matter = list(MAT_STEEL = 1200, MAT_PLASTEEL = 600) + max_ammo = 24 + multiple_sprites = 1 + +/obj/item/ammo_magazine/ammo_box/b9mm/hp + name = "ammo box (9mm HP)" + desc = "A box of 9mm hollow-point rounds" + icon_state = "pistol_hp" + caliber = "9mm" + ammo_type = /obj/item/ammo_casing/a9mm/hp + matter = list(MAT_STEEL = 1100) + max_ammo = 24 + multiple_sprites = 1 + +/obj/item/ammo_magazine/ammo_box/b9mm/rubber + name = "ammo box (9mm rubber)" + desc = "A box of 9mm rubber rounds" + icon_state = "pistol_r" + caliber = "9mm" + ammo_type = /obj/item/ammo_casing/a9mm/rubber + matter = list(MAT_STEEL = 1100, MAT_PLASTIC = 360) + max_ammo = 24 + multiple_sprites = 1 + +/obj/item/ammo_magazine/ammo_box/b9mm/flash + name = "ammo box (9mm flash)" + desc = "A box of 9mm flash rounds" + icon_state = "pistol_r" + caliber = "9mm" + ammo_type = /obj/item/ammo_casing/a9mm/flash + matter = list(MAT_STEEL = 1100) + max_ammo = 24 + multiple_sprites = 1 diff --git a/modular_chomp/code/modules/projectiles/guns/zBallisticPort/bullet.dm b/modular_chomp/code/modules/projectiles/guns/zBallisticPort/bullet.dm new file mode 100644 index 0000000000..0532b248a1 --- /dev/null +++ b/modular_chomp/code/modules/projectiles/guns/zBallisticPort/bullet.dm @@ -0,0 +1,1549 @@ +////////////////////////////////// +// // +// SERDY GUNS // +// // +////////////////////////////////// +/obj/item/gun/projectile/automatic/serdy + name = "I AM NOT SUPPOSED TO EXIST" + desc = "Yes hello I'm not supposed to exist, I'm just a weird code artefact thing please contact a developer." + icon = 'icons/obj/64x32guns_ch.dmi' + icon_state = "asval" + icon_expected_height = 32 + icon_expected_width = 64 + firemodes = list() + var/is_picked_up = FALSE + var/is_long = TRUE + +/obj/item/gun/projectile/automatic/serdy/Initialize() + . = ..() + update_transform() + update_icon() + +/obj/item/gun/projectile/automatic/serdy/update_transform() + . = ..() + if(is_picked_up && is_long) + transform = transform.Turn(-45) + transform = transform.Translate(-16,0) + +/obj/item/gun/projectile/automatic/serdy/equipped() + . = ..() + is_picked_up = TRUE + update_transform() + +/obj/item/gun/projectile/automatic/serdy/pickup() + . = ..() + is_picked_up = TRUE + update_transform() + +/obj/item/gun/projectile/automatic/serdy/dropped() + . = ..() + is_picked_up = FALSE + update_transform() + +/obj/item/gun/projectile/automatic/serdy/update_icon() + . = ..() + if(load_method == MAGAZINE) + icon_state = ammo_magazine ? "[initial(icon_state)]" : "[initial(icon_state)]-e" + else + icon_state = bolt_open ? "[initial(icon_state)]-e" : "[initial(icon_state)]" + +/obj/item/gun/projectile/automatic/serdy/asval + name = "AS-VAL" + desc = "A somewhat competent remake of an ancient russian assault rifle. Commonly found in the hands of criminals, and on pan-slavic rimworlds. Integrally suppressed, chambered in 7.62mm." + caliber = "9x39mm" + magazine_type = /obj/item/ammo_magazine/asval + allowed_magazines = list(/obj/item/ammo_magazine/asval) + icon_state = "asval" + projectile_type = /obj/item/projectile/bullet/rifle/a9x39 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + auto_loading_type = CLOSED_BOLT + w_class = ITEMSIZE_HUGE + one_handed_penalty = 50 + fire_sound = "sound/weapons/serdy/ak74.ogg" + +/obj/item/gun/projectile/automatic/serdy/krinkov + name = "Krinkov" + desc = "A professionally cut down AKM made to be easily concealable. With a 12 inch barrel, this is a very loud short barrel rifle. Illegal pretty much everywhere, and easy to get a hold of, these classic russian firearms are a mainstay amidst the various criminal organizations across the galaxy." + caliber = "7.62mm" + item_icons = list( + slot_l_hand_str = 'icons/mob/items/lefthand_guns_ch.dmi', + slot_r_hand_str = 'icons/mob/items/righthand_guns_ch.dmi', + ) + item_state = "krink" + wielded_item_state = "krink-wielded" + magazine_type = /obj/item/ammo_magazine/akm + allowed_magazines = list(/obj/item/ammo_magazine/akm) + icon_state = "krinkov" + projectile_type = /obj/item/projectile/bullet/rifle/a762 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + auto_loading_type = CLOSED_BOLT + is_long = FALSE + fire_sound = "sound/weapons/serdy/ak74.ogg" + +/obj/item/gun/projectile/automatic/serdy/akm + name = "AKM" + desc = "The tried and true, old fashioned chatterbox. Ivan's favorite. Best used while at least somewhat inebriated. Chambered in 7.62mm." + caliber = "7.62mm" + item_icons = list( + slot_l_hand_str = 'icons/mob/items/lefthand_guns_ch.dmi', + slot_r_hand_str = 'icons/mob/items/righthand_guns_ch.dmi', + ) + item_state = "akm" + wielded_item_state = "akm-wielded" + magazine_type = /obj/item/ammo_magazine/akm + allowed_magazines = list(/obj/item/ammo_magazine/akm) + icon_state = "akm" + projectile_type = /obj/item/projectile/bullet/rifle/a762 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + auto_loading_type = CLOSED_BOLT + w_class = ITEMSIZE_HUGE + one_handed_penalty = 60 + fire_sound = "sound/weapons/serdy/ak74.ogg" + +/obj/item/gun/projectile/automatic/serdy/scrapak + name = "AKM" + desc = "The 'Stalingrad Special'. This rickety old AKM has seen better days. Better bring some vodka, because every shot this gun manages to squeeze off without blowing up in your face is worthy of celebration. Chambered in 7.62mm" + caliber = "7.62mm" + item_icons = list( + slot_l_hand_str = 'icons/mob/items/lefthand_guns_ch.dmi', + slot_r_hand_str = 'icons/mob/items/righthand_guns_ch.dmi', + ) + item_state = "akm" + wielded_item_state = "akm-wielded" + magazine_type = /obj/item/ammo_magazine/akm + allowed_magazines = list(/obj/item/ammo_magazine/akm) + icon_state = "scrapak" + projectile_type = /obj/item/projectile/bullet/rifle/a762 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + auto_loading_type = CLOSED_BOLT + w_class = ITEMSIZE_HUGE + one_handed_penalty = 70 + fire_sound = "sound/weapons/serdy/ak74.ogg" + +/obj/item/gun/projectile/automatic/serdy/ak74 + name = "AK-74" + desc = "The tried and true, old fashioned chatterbox. Ivan's favorite. Best used while at least somewhat inebriated. Chambered in 5.45mm." + caliber = "5.45mm" + item_icons = list( + slot_l_hand_str = 'icons/mob/items/lefthand_guns_ch.dmi', + slot_r_hand_str = 'icons/mob/items/righthand_guns_ch.dmi', + ) + item_state = "akm" + wielded_item_state = "akm-wielded" + magazine_type = /obj/item/ammo_magazine/ak74 + allowed_magazines = list(/obj/item/ammo_magazine/ak74) + icon_state = "ak74" + projectile_type = /obj/item/projectile/bullet/rifle/a545 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + auto_loading_type = CLOSED_BOLT + w_class = ITEMSIZE_HUGE + one_handed_penalty = 50 + fire_sound = "sound/weapons/serdy/ak74.ogg" + +/obj/item/gun/projectile/automatic/serdy/ak74/update_icon() + . = ..() + if(ammo_magazine) + icon_state = istype(ammo_magazine,/obj/item/ammo_magazine/ak74/plum) ? "[initial(icon_state)]plum" : "[initial(icon_state)]" + +/obj/item/gun/projectile/automatic/serdy/ak74/variantu + name = "AKS-74U" + desc = "A shorter version of the classic AK-74, the AKS-74U. The same reliability of the AK platform, in a smaller package. Chambered in 5.45mm." + icon_state = "aks74u" + w_class = ITEMSIZE_LARGE + one_handed_penalty = 25 + +/obj/item/gun/projectile/automatic/serdy/ak74/variantun + name = "AKS-74UN" + desc = "A shorter version of the classic AK-74, the AKS-74UN. The same reliability of the AK platform, in a smaller package. Now with a classic triangle side folder. Chambered in 5.45mm." + icon_state = "aks74un" + one_handed_penalty = 35 + +/obj/item/gun/projectile/automatic/serdy/ak74/variantm + name = "AK-74M" + desc = "A modernized AK-74, lightweight, with very nice plum furniture. Perfect for the modern ICCG soldier, or Pan-slav PMC. Chambered in 5.45mm." + one_handed_penalty = 40 + icon_state = "ak74m" + magazine_type = /obj/item/ammo_magazine/ak74/plum + +// These are more of AK Pattern rifles than AK Variants. + +/obj/item/gun/projectile/automatic/serdy/hunter + name = "SOK-94" + desc = "Otherwise known as a Vepr Super. An AK pattern rifle, based on the beefier RPK chassis, to handle larger caliber rounds. Like an SVD but cooler. Chambered in 7.62mm." + caliber = "7.62mm" + item_icons = list( + slot_l_hand_str = 'icons/mob/items/lefthand_guns_ch.dmi', + slot_r_hand_str = 'icons/mob/items/righthand_guns_ch.dmi', + ) + item_state = "akm" + wielded_item_state = "akm-wielded" + magazine_type = /obj/item/ammo_magazine/m762svd + allowed_magazines = list(/obj/item/ammo_magazine/m762svd) + icon_state = "hunter" + projectile_type = /obj/item/projectile/bullet/rifle/a762 + load_method = MAGAZINE + auto_loading_type = CLOSED_BOLT + w_class = ITEMSIZE_HUGE + actions_types = list(/datum/action/item_action/use_scope) + accuracy = -30 + scoped_accuracy = 50 + one_handed_penalty = 70 + fire_sound = "sound/weapons/serdy/sks.ogg" + +/obj/item/gun/projectile/automatic/serdy/hunter/ui_action_click() + scope() + +/obj/item/gun/projectile/automatic/serdy/hunter/verb/scope() + set category = "Object" + set name = "Use Scope" + set popup_menu = 1 + + toggle_scope(2.0) + +// AR Variants + +/obj/item/gun/projectile/automatic/serdy/m16a2 + name = "M16A2" + desc = "A favorite service rifle everywhere, even today. It might be a reproduction, but Eugene Stoner smiles upon every man or woman who wields this beautiful democracy dispensing machine, even if it's never seen the soil of Terra, and never will. Chambered in 5.56mm." + caliber = "5.56mm" + item_icons = list( + slot_l_hand_str = 'icons/mob/items/lefthand_guns_ch.dmi', + slot_r_hand_str = 'icons/mob/items/righthand_guns_ch.dmi', + ) + item_state = "m16" + wielded_item_state = "m16-wielded" + magazine_type = /obj/item/ammo_magazine/m16 + allowed_magazines = list(/obj/item/ammo_magazine/m16) + icon_state="m16" + projectile_type = /obj/item/projectile/bullet/rifle/a556 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY | LOCK_SLAPPABLE + w_class = ITEMSIZE_HUGE + +/obj/item/gun/projectile/automatic/serdy/m4a1 + name = "M4A1" + desc = "The M16's shorter, more lightweight little brother. An old terran flag is stamped into the receiver. These guns can be found just about everywhere. A favorite on the rimworlds due to its simplicity to produce, and reliability. Chambered in 5.56mm." + caliber = "5.56mm" + item_icons = list( + slot_l_hand_str = 'icons/mob/items/lefthand_guns_ch.dmi', + slot_r_hand_str = 'icons/mob/items/righthand_guns_ch.dmi', + ) + item_state = "m4" + wielded_item_state = "m4-wielded" + magazine_type = /obj/item/ammo_magazine/m16 + allowed_magazines = list(/obj/item/ammo_magazine/m16) + icon_state="m4" + projectile_type = /obj/item/projectile/bullet/rifle/a556 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY | LOCK_SLAPPABLE + load_method = MAGAZINE + w_class = ITEMSIZE_HUGE + one_handed_penalty = 50 + +/obj/item/gun/projectile/automatic/serdy/patriot + name = "Patriot" + desc = "I raised you, and loved you, I've given you weapons, taught you techniques, endowed you with knowledge. There's nothing more for me to give you. All that's left for you to take is my life. 'Still in a dream' is stamped into the receiver, and it has no serial number. Chambered in 5.56mm." + caliber = "5.56mm" + item_icons = list( + slot_l_hand_str = 'icons/mob/items/lefthand_guns_ch.dmi', + slot_r_hand_str = 'icons/mob/items/righthand_guns_ch.dmi', + ) + item_state = "m16" + wielded_item_state = "m16-wielded" + magazine_type = /obj/item/ammo_magazine/m16/patriot + allowed_magazines = list(/obj/item/ammo_magazine/m16) + icon_state="patriot" + projectile_type = /obj/item/projectile/bullet/rifle/a556 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY | LOCK_SLAPPABLE + load_method = MAGAZINE + w_class = ITEMSIZE_LARGE + one_handed_penalty = 40 + +/obj/item/gun/projectile/automatic/serdy/ar10 + name = "AR-10" + desc = "A semi-auto replica of an original AR-10. The precursor to the M16 and the M4 that everyone loves. Chambered in 7.62x51mm." + caliber = "7.62mm" + magazine_type = /obj/item/ammo_magazine/ar10 + allowed_magazines = list(/obj/item/ammo_magazine/ar10) + icon_state = "ar10" + projectile_type = /obj/item/projectile/bullet/rifle/a762 + load_method = MAGAZINE + auto_loading_type = CLOSED_BOLT + w_class = ITEMSIZE_HUGE + one_handed_penalty = 60 + fire_sound = "sound/weapons/serdy/sks.ogg" + +//Other rifles + +/obj/item/gun/projectile/automatic/serdy/m41ab //This gun is pretty overpowered. Leaving it as an admin spawn. Might even interfere with lore. + name = "M41A/2" + desc = "The Armat M41A Pulse Rifle is a pulse-action assault rifle chambered for 10×24mm Caseless ammunition. This one is a rare, and fairly competent replica of the original by Scarborough Arms, with some minor design improvements over the original. The aluminium chassis is painted steel blue, and it has 'Scarborough Arms - Per falcis, per pravitas' inscribed on the stock." + caliber = "10x24mm" + item_icons = list( + slot_l_hand_str = 'icons/mob/items/lefthand_guns_ch.dmi', + slot_r_hand_str = 'icons/mob/items/righthand_guns_ch.dmi', + ) + item_state = "m41ab" + wielded_item_state = "m41ab-wielded" + magazine_type = /obj/item/ammo_magazine/m41 + allowed_magazines = list(/obj/item/ammo_magazine/m41) + icon_state="m41b" + projectile_type = /obj/item/projectile/bullet/rifle/a10x24 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + w_class = ITEMSIZE_HUGE + one_handed_penalty = 50 + fire_sound = "sound/weapons/serdy/m41a.ogg" + +/obj/item/gun/projectile/automatic/serdy/m41a //This gun is pretty overpowered. Leaving it as an admin spawn. Might even interfere with lore. + name = "M41A" + desc = "A tried and true original. The Armat M41A Pulse Rifle is a pulse-action assault rifle chambered for 10×24mm Caseless ammunition. 'PEACE THROUGH SUPERIOR FIREPOWER' is stamped into the side of the aluminium chassis." + caliber = "10x24mm" + item_icons = list( + slot_l_hand_str = 'icons/mob/items/lefthand_guns_ch.dmi', + slot_r_hand_str = 'icons/mob/items/righthand_guns_ch.dmi', + ) + item_state = "m41a" + wielded_item_state = "m41a-wielded" + magazine_type = /obj/item/ammo_magazine/m41 + allowed_magazines = list(/obj/item/ammo_magazine/m41) + icon_state="m41a" + projectile_type = /obj/item/projectile/bullet/rifle/a10x24 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + w_class = ITEMSIZE_HUGE + one_handed_penalty = 50 + fire_sound = "sound/weapons/serdy/m41a.ogg" + +/obj/item/gun/projectile/automatic/serdy/t12 //This gun is pretty overpowered. Leaving it as an admin spawn. + name = "T-12" + desc = "The standard issue rifle of both the SGC and the USDF nowadays, alongside the newer versions of the M41A/2. A caseless version of the classic G36E. Some folk call it the lego gun because of how light it is, even when loaded. Chambered in 10x24mm Caseless." + caliber = "10x24mm" + magazine_type = /obj/item/ammo_magazine/t12 + allowed_magazines = list(/obj/item/ammo_magazine/t12) + icon_state="t12" + projectile_type = /obj/item/projectile/bullet/rifle/a10x24 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + w_class = ITEMSIZE_HUGE + one_handed_penalty = 50 + fire_sound = "sound/weapons/serdy/type901.ogg" + +/obj/item/gun/projectile/automatic/serdy/fal + name = "FN-FAL" + desc = "The right arm of the free galaxy. Chambered in 7.62x51mm." + caliber = "7.62mm" + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY + load_method = MAGAZINE + magazine_type = /obj/item/ammo_magazine/fal + allowed_magazines = list(/obj/item/ammo_magazine/fal) + icon_state = "fal" + projectile_type = /obj/item/projectile/bullet/rifle/a762 + w_class = ITEMSIZE_HUGE + one_handed_penalty = 40 + fire_sound = "sound/weapons/serdy/sks.ogg" + +/obj/item/gun/projectile/automatic/serdy/keltec + name = "RDB-S" + desc = "A snazzy survival rifle, small enough to fit into a backpack. Despite it's odd shape, it's pretty comfortable in the hands. This one is OD green. Chambered in 5.56mm." + caliber = "5.56mm" + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY + load_method = MAGAZINE + magazine_type = /obj/item/ammo_magazine/m16 + allowed_magazines = list(/obj/item/ammo_magazine/m16) + icon_state = "keltecG" + projectile_type = /obj/item/projectile/bullet/rifle/a556 + w_class = ITEMSIZE_LARGE + one_handed_penalty = 40 + fire_sound = "sound/weapons/serdy/sks.ogg" + +/obj/item/gun/projectile/automatic/serdy/keltec/black + icon_state = "keltecB" + desc = "A snazzy survival rifle, small enough to fit into a backpack. Despite it's odd shape, it's pretty comfortable in the hands. This one is black. Chambered in 5.56mm." + +/obj/item/gun/projectile/automatic/serdy/keltec/blue + icon_state = "keltecN" + desc = "A snazzy survival rifle, small enough to fit into a backpack. Despite it's odd shape, it's pretty comfortable in the hands. This one is Sif-blue. Chambered in 5.56mm." + +/obj/item/gun/projectile/automatic/serdy/keltec/white + icon_state = "keltecW" + desc = "A snazzy survival rifle, small enough to fit into a backpack. Despite it's odd shape, it's pretty comfortable in the hands. This one is snow white. Chambered in 5.56mm." + +/obj/item/gun/projectile/automatic/serdy/keltec/tan + icon_state = "keltecD" + desc = "A snazzy survival rifle, small enough to fit into a backpack. Despite it's odd shape, it's pretty comfortable in the hands. This one is coyote tan. Chambered in 5.56mm." + +/obj/item/gun/projectile/automatic/serdy/sks //Reminder to myself to make sure this works and also to make sure that people are able to empty the internal mag + name = "SKS" + desc = "Just looking at it makes you want to buy a tacticool turtleneck, go into the woods, and -operate-. Chambered in 7.62mm." + caliber = "7.62mm" + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY + load_method = SINGLE_CASING|SPEEDLOADER + icon_state = "sks" + projectile_type = /obj/item/projectile/bullet/rifle/a762 + max_shells = 10 + ammo_type = /obj/item/ammo_casing/a762 + w_class = ITEMSIZE_HUGE + one_handed_penalty = 60 + fire_sound = "sound/weapons/serdy/sks.ogg" + +/obj/item/gun/projectile/automatic/serdy/mosin + name = "Mosin Nagant" + desc = "A reproduction of some old russian bolt-action rifle from some backwater rimworld. Smells strongly of cosmoline. The inscriptions on it are in pan-slavic. Chambered in 7.62mm." + caliber = "7.62mm" + auto_loading_type = NO_AUTO_LOAD + load_method = SINGLE_CASING|SPEEDLOADER + only_open_load = TRUE + icon_state = "mosin" + projectile_type = /obj/item/projectile/bullet/rifle/a762 + max_shells = 5 + ammo_type = /obj/item/ammo_casing/a762 + w_class = ITEMSIZE_HUGE + one_handed_penalty = 70 + bolt_name = "bolt" + sound_eject = 'sound/weapons/ballistics/boltactionopen.ogg' + sound_chamber = 'sound/weapons/ballistics/boltactionclose.ogg' + fire_sound = "sound/weapons/serdy/sks.ogg" + +/obj/item/gun/projectile/automatic/serdy/mosin/scoped + name = "Scoped Mosin Nagant" + icon_state = "scopedmosin" + desc = "A reproduction of some old russian bolt-action rifle from some backwater rimworld. Smells strongly of cosmoline. The inscriptions on it are in pan-slavic. This one has a scope attached to it. Chambered in 7.62mm." + actions_types = list(/datum/action/item_action/use_scope) + accuracy = -15 + scoped_accuracy = 50 + one_handed_penalty = 70 + +/obj/item/gun/projectile/automatic/serdy/mosin/scoped/ui_action_click() + scope() + +/obj/item/gun/projectile/automatic/serdy/mosin/scoped/verb/scope() + set category = "Object" + set name = "Use Scope" + set popup_menu = 1 + + toggle_scope(2.0) + +/obj/item/gun/projectile/automatic/serdy/type901 + name = "Type 901 Assault rifle" + desc = "A heavy bullpup assault rifle of unknown make, with a very high muzzle velocity and fair accuracy. A favorite of scum and villainy everywhere due to its complete lack of identification markings. Popularized by the 2541 movie, 'Boarding Party'. Chambered in 7.62x51mm." + caliber = "7.62mm" + item_icons = list( + slot_l_hand_str = 'icons/mob/items/lefthand_guns_ch.dmi', + slot_r_hand_str = 'icons/mob/items/righthand_guns_ch.dmi', + ) + item_state = "t901" + wielded_item_state = "t901-wielded" + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY | LOCK_SLAPPABLE + magazine_type = /obj/item/ammo_magazine/type901 + allowed_magazines = list(/obj/item/ammo_magazine/type901) + icon_state = "type901" + projectile_type = /obj/item/projectile/bullet/rifle/a762 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + w_class = ITEMSIZE_HUGE + one_handed_penalty = 60 + fire_sound = "sound/weapons/serdy/type901.ogg" + +/obj/item/gun/projectile/automatic/serdy/type901/carbine + name = "Type 901-C Carbine" + desc = "A lightweight bullpup assault carbine of unknown make, with a very high muzzle velocity and fair accuracy. A favorite of scum and villainy everywhere due to its complete lack of identification markings. Popularized by the 2541 movie, 'Boarding Party'. This one is smaller and more compact than its larger counterpart. Chambered in 7.62mm." + icon_state = "type901b" + w_class = ITEMSIZE_LARGE + one_handed_penalty = 30 + +/obj/item/gun/projectile/automatic/serdy/awp + name = "AWP" + desc = "A galaxy-wide favorite for hunting, target shooting, and rushing B. Legend has it, this rifle originated from three guys in a garage. This one is a reproduction. It has 'Scarborough Arms - Per falcis, per pravitas' inscribed on the stock. Chambered in .338 Lapua." + caliber = ".338" + item_icons = list( + slot_l_hand_str = 'icons/mob/items/lefthand_guns_ch.dmi', + slot_r_hand_str = 'icons/mob/items/righthand_guns_ch.dmi', + ) + item_state = "awp" + wielded_item_state = "awp-wielded" + auto_loading_type = NO_AUTO_LOAD + magazine_type = /obj/item/ammo_magazine/awp + allowed_magazines = list(/obj/item/ammo_magazine/awp) + icon_state = "awp" + projectile_type = /obj/item/projectile/bullet/rifle/a338 + load_method = MAGAZINE + actions_types = list(/datum/action/item_action/use_scope) + accuracy = -30 + scoped_accuracy = 50 + w_class = ITEMSIZE_HUGE + one_handed_penalty = 90 + bolt_name = "bolt" + sound_eject = 'sound/weapons/ballistics/boltactionopen.ogg' + sound_chamber = 'sound/weapons/ballistics/boltactionclose.ogg' + fire_sound = "sound/weapons/serdy/sks.ogg" + +/obj/item/gun/projectile/automatic/serdy/awp/ui_action_click() + scope() + +/obj/item/gun/projectile/automatic/serdy/awp/verb/scope() + set category = "Object" + set name = "Use Scope" + set popup_menu = 1 + + toggle_scope(2.0) + +/obj/item/gun/projectile/automatic/serdy/hectate + name = "Hectate II" + desc = "An old world anti material rifle. Ideal for dealing with mechs, armored personnel, and space dragons. Chambered in .50 BMG." + caliber = ".50 BMG" + item_icons = list( + slot_l_hand_str = 'icons/mob/items/lefthand_guns_ch.dmi', + slot_r_hand_str = 'icons/mob/items/righthand_guns_ch.dmi', + ) + item_state = "hectate" + wielded_item_state = "hectate-wielded" + auto_loading_type = NO_AUTO_LOAD + magazine_type = /obj/item/ammo_magazine/hectate + allowed_magazines = list(/obj/item/ammo_magazine/hectate) + icon_state = "hectate" + projectile_type = /obj/item/projectile/bullet/rifle/a145 //the old round type was ass + load_method = MAGAZINE + actions_types = list(/datum/action/item_action/use_scope) + accuracy = -60 + scoped_accuracy = 15 + w_class = ITEMSIZE_HUGE + one_handed_penalty = 120 + bolt_name = "bolt" + sound_eject = 'sound/weapons/ballistics/boltactionopen.ogg' + sound_chamber = 'sound/weapons/ballistics/boltactionclose.ogg' + fire_sound = "sound/weapons/serdy/sks.ogg" + + +/obj/item/gun/projectile/automatic/serdy/hectate/ui_action_click() + scope() + +/obj/item/gun/projectile/automatic/serdy/hectate/verb/scope() + set category = "Object" + set name = "Use Scope" + set popup_menu = 1 + + toggle_scope(2.0) + +/obj/item/gun/projectile/automatic/serdy/memegun + name = "Hardbass Special" + desc = "Три полоски, три по три полоски Три полоски, три по три полоски Три полоски, три по три полоски Три полоски, три по три полоски Три полоски, три по три полоски Три полоски, три по три полоски. Chambered in 7.62mm" + caliber = "7.62mm" + item_icons = list( + slot_l_hand_str = 'icons/mob/items/lefthand_guns_ch.dmi', + slot_r_hand_str = 'icons/mob/items/righthand_guns_ch.dmi', + ) + item_state = "akm" + wielded_item_state = "akm-wielded" + magazine_type = /obj/item/ammo_magazine/akm + allowed_magazines = list(/obj/item/ammo_magazine/akm) + icon_state = "memegun" + projectile_type = /obj/item/projectile/bullet/rifle/a762 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + auto_loading_type = CLOSED_BOLT | LOCK_MANUAL_LOCK + w_class = ITEMSIZE_HUGE + one_handed_penalty = 40 + fire_sound = "sound/weapons/serdy/ak74.ogg" + +/obj/item/gun/projectile/automatic/serdy/tkb408 + name = "TKB-408" + desc ="An odd, bullpup, slavic assault rifle from some distant rimworld. Very sturdy, unbeleivably reliable. Chambered in 7.62mm." + caliber = "7.62mm" + magazine_type = /obj/item/ammo_magazine/akm + allowed_magazines = list(/obj/item/ammo_magazine/akm) + icon_state = "tkb" + projectile_type = /obj/item/projectile/bullet/rifle/a762 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + auto_loading_type = CLOSED_BOLT | LOCK_MANUAL_LOCK + w_class = ITEMSIZE_HUGE + one_handed_penalty = 60 + fire_sound = "sound/weapons/serdy/ak74.ogg" + +/obj/item/gun/projectile/automatic/serdy/groza + name = "OTs-14" + desc = "A strangely ergonomic bullpup version of an AK. Commonly found in Pan-slavic speaking regions of space. All of the inscriptions on this thing are in pan-slavic. Chambered in 7.62mm." + caliber = "7.62mm" + magazine_type = /obj/item/ammo_magazine/akm + allowed_magazines = list(/obj/item/ammo_magazine/akm) + icon_state = "groza" + projectile_type = /obj/item/projectile/bullet/rifle/a762 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + auto_loading_type = CLOSED_BOLT | LOCK_MANUAL_LOCK + fire_sound = "sound/weapons/serdy/ak74.ogg" + +/obj/item/gun/projectile/automatic/serdy/plamya + name = "WKHM 'Plamya' Mk. 1" + desc = "The original Plamya assault rifle, produced by WKHM back in the 2330's. Highly sought after for their collectability, and their superb reliability. They don't quite make them like they used to. It may not fire as fast as the newer ones, but these old models haven't survived this long for no reason. This one has a classic walnut thumbhole stock and foregrip. It has a heavy titanium chassis, durasteel bolt, and the original style 'PPSh' heatshield. The gun is dated 2336, and bears the 'WKHM Endurance' arkship's production stamp on the buttstock. 'A light in the dark' is stamped into the receiver. Chambered in 9x39mm." + description_fluff = "WKHM, is a minor arms company that has been around for quite some time, established in 2408. Known for being one of the many suppliers of weapons to dangerous worlds on the rim, and a part of the FTU. They produce a large variety of firearms, strike craft, and armored vehicles to fufill various their various contracts, and are largely migrant, moving wherever the money is. Found almost entirely on mobile production ships and various escort craft. Identifiable by their logo, a red Omega symbol with a black or white W in the middle. The sheer quantity of their firearms produced ensures they can be found.. just about anywhere, and they are very sought after by pirates for their reliability." + caliber = "9mm" + magazine_type = /obj/item/ammo_magazine/plamya + allowed_magazines = list(/obj/item/ammo_magazine/plamya) + icon_state = "plamyab" + projectile_type = /obj/item/projectile/bullet/rifle/a9x39 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="5-round bursts", burst=5, fire_delay=0.5, move_delay=3.5, burst_accuracy=list(0,-10,-15,-20,-25), dispersion=list(0.0, 0.3, 0.6, 0.9, 1.1)) + ) + load_method = MAGAZINE + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY | LOCK_SLAPPABLE + w_class = ITEMSIZE_HUGE + one_handed_penalty = 50 + fire_sound = "sound/weapons/serdy/plamya.ogg" + +/obj/item/gun/projectile/automatic/serdy/plamya/mk2 + name = "WKHM 'Plamya' Mk. 2" + icon_state = "plamya" + desc = "An old school assault rifle. A favorite on the rimworld for it's blisteringly high rate of fire. One of the best selling products of W-K Heavy Manufacturing. Virtually impossible to break. The gold standard, with a rosewood thumbhole stock, a full length barrel, and an improved heatshield. The most mass produced firearm in WKHM's lineup. This one bears the 'WKHM Adamant' arkship's production stamp. Chambered in 9x39mm." + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="5-round bursts", burst=5, fire_delay=0.5, move_delay=3.5, burst_accuracy=list(0,-5,-10,-10,-15), dispersion=list(0.0, 0.2, 0.35, 0.5, 0.6)) + ) + +/obj/item/gun/projectile/automatic/serdy/plamya/mk3 + name = "WKHM 'Plamya' Mk. 3" + icon_state = "plamyac" + desc = "An old school assault rifle with a modern twist. A favorite on the rimworld for it's blisteringly high rate of fire. One of the best selling products of W-K Heavy Manufacturing. Virtually impossible to break. This is a newer variant, with a fully synthetic stock, and a shorter barrel. The serial number and production stamp has been sanded off. Chambered in 9x39mm." + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="5-round bursts", burst=5, fire_delay=0.5, move_delay=3.5, burst_accuracy=list(0,-7.5,-10,-15,-20), dispersion=list(0.0, 0.2, 0.4, 0.6, 0.7)) + ) + +//shotguns + +/obj/item/gun/projectile/automatic/serdy/strela + name = "WKHM 'Strela'" + desc = "A fully automatic, 12 gauge assault shotgun, that goes by many names. The Strela, The Bear, The Mule- The list goes on. If the Plamya is the scalpel, This heavy chunk of forged steel and titanium is the sledgehammer. Bring a shoulder pad and some tramadol. This one has a nice walnut thumbhole stock, and an AK style fore end. It also bears the 'WKHM Endurance' arkship's production stamp. Chambered in 12 gauge." + description_fluff = "WKHM, is a minor arms company that has been around for quite some time, established in 2408. Known for being one of the many suppliers of weapons to dangerous worlds on the rim, and a part of the FTU. They produce a large variety of firearms, strike craft, and armored vehicles to fufill various their various contracts, and are largely migrant, moving wherever the money is. Found almost entirely on mobile production ships and various escort craft. Identifiable by their logo, a red Omega symbol with a black or white W in the middle. The sheer quantity of their firearms produced ensures they can be found.. just about anywhere, and they are very sought after by pirates for their reliability." + caliber = "12g" + magazine_type = /obj/item/ammo_magazine/strela + allowed_magazines = list(/obj/item/ammo_magazine/strela) + icon_state = "strela" + projectile_type = /obj/item/projectile/bullet/shotgun + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="2-round bursts", burst=2, fire_delay=null, move_delay=3, burst_accuracy=list(0,-5), dispersion=list(0.0, 0.2)), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY | LOCK_SLAPPABLE + w_class = ITEMSIZE_HUGE + one_handed_penalty = 50 + fire_sound = "sound/weapons/serdy/strela.ogg" + +/obj/item/gun/projectile/automatic/serdy/spas35 + name = "Spas-35" + desc = "A complex pump shotgun, modelled after the classic Spas-12. Upgraded with durable parts to fix the flaws of the classic. Also sometimes called the T-35, if you're with the SGC or the USDF. The absolute king of CQC encounters. 8 round capacity, chambered in 12 gauge." + caliber = "12g" + item_icons = list( + slot_l_hand_str = 'icons/mob/items/lefthand_guns_ch.dmi', + slot_r_hand_str = 'icons/mob/items/righthand_guns_ch.dmi', + ) + item_state = "spas12" + wielded_item_state = "spas12-wielded" + icon_state = "spas12" + ammo_type = /obj/item/ammo_casing/a12g/pellet + projectile_type = /obj/item/projectile/bullet/shotgun + max_shells = 7 + bolt_name = "bolt" + bolt_release = null //No bolt release on spas-12 + load_method = SINGLE_CASING | SPEEDLOADER + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY | LOCK_MANUAL_LOCK + misc_loading_flags = INTERNAL_MAG_SEPARATE + var/semiauto_mode = TRUE + w_class = ITEMSIZE_HUGE + one_handed_penalty = 50 + +//SMGs + +/obj/item/gun/projectile/automatic/serdy/ppsh + name = "PPSh-17b" + desc = "A cheap remake of the venerable russian PPSh-41. Empties a 71 round magazine in less than 10 seconds. Compensates for poor accuracy with volume of bullet. Every inscription on this thing is in pan-slavic. Chambered in 7.62x25mm Tokarev." + caliber = ".45" //Lets just make it a c20 alt + item_icons = list( + slot_l_hand_str = 'icons/mob/items/lefthand_guns_ch.dmi', + slot_r_hand_str = 'icons/mob/items/righthand_guns_ch.dmi', + ) + item_state = "ppsh" + wielded_item_state = "ppsh-wielded" + magazine_type = /obj/item/ammo_magazine/ppsh + allowed_magazines = list(/obj/item/ammo_magazine/ppsh) + icon_state="ppsh" + projectile_type = /obj/item/projectile/bullet/a762x25 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + auto_loading_type = OPEN_BOLT + load_method = MAGAZINE + fire_sound = "sound/weapons/Gunshot1.ogg" + +/obj/item/gun/projectile/automatic/serdy/mp5 + name = "MP5" + desc = "A favorite of law enforcement and corporate security across the galaxy for centuries. This old H&K design has survived the test of time. And while in many places it has been replaced long ago, it still stands as a reliable weapon platform. No need to fix what isn't broken. Chambered in 9mm." + caliber = "9mm" + item_icons = list( + slot_l_hand_str = 'icons/mob/items/lefthand_guns_ch.dmi', + slot_r_hand_str = 'icons/mob/items/righthand_guns_ch.dmi', + ) + item_state = "mp5" + wielded_item_state = "mp5-wielded" + magazine_type = /obj/item/ammo_magazine/mp5mag + allowed_magazines = list(/obj/item/ammo_magazine/mp5mag) + icon_state="mp5" + projectile_type = /obj/item/projectile/bullet/pistol + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + is_long = FALSE + fire_sound = "sound/weapons/Gunshot1.ogg" + +/obj/item/gun/projectile/automatic/serdy/pitchgun + name = "Pitch-gun" + desc = "A home-made submachine gun, affectionately called by those who use it, the 'Pitch-gun.' It's light, it shoots fast, and it's chambered in .44 magnum. The classy killer, or the rim-world tank crewman's weapon of choice. Mind the recoil." + caliber = ".44" + magazine_type = /obj/item/ammo_magazine/pitchmag + allowed_magazines = list(/obj/item/ammo_magazine/pitchmag) + icon_state="pitchgun" + projectile_type = /obj/item/projectile/bullet/pistol/strong + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + is_long = FALSE + +/obj/item/gun/projectile/automatic/serdy/vityaz + name = "WKHM 'Vityaz'" + desc = "A swarm of angry bees. The Plamya's baby brother. With 12 total moving parts, including the trigger mechanism, this gun was built with one purpose. Longevity and reliability. Commonly found in the hands of private security, criminals, and law enforcement alike across many worlds. This one is unmarked. Chambered in 10mm." + description_fluff = "WKHM, is a minor arms company that has been around for quite some time, established in 2408. Known for being one of the many suppliers of weapons to dangerous worlds on the rim, and a part of the FTU. They produce a large variety of firearms, strike craft, and armored vehicles to fufill various their various contracts, and are largely migrant, moving wherever the money is. Found almost entirely on mobile production ships and various escort craft. Identifiable by their logo, a red Omega symbol with a black or white W in the middle. The sheer quantity of their firearms produced ensures they can be found.. just about anywhere, and they are very sought after by pirates for their reliability." + caliber = "10mm" + magazine_type = /obj/item/ammo_magazine/m10mm + allowed_magazines = list(/obj/item/ammo_magazine/m10mm) + icon_state = "vityaz" + projectile_type = /obj/item/projectile/bullet/a10mm + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY | LOCK_SLAPPABLE + is_long = FALSE + fire_sound = "sound/weapons/serdy/vityaz.ogg" + move_delay = 0 // CHOMPEdit: Pistols have move_delay of 0 + +/obj/item/gun/projectile/automatic/serdy/vityazb + name = "WKHM 'Vityaz-B'" + desc = "A swarm of angry bees. The Plamya's baby brother. With 12 total moving parts, including the trigger mechanism, this gun was built with one purpose. Longevity and reliability. Commonly found in the hands of private security, criminals, and law enforcement alike across many worlds. This one is a B model, made to fire faster, at the expense of reliability. Chambered in 10mm." + description_fluff = "WKHM, is a minor arms company that has been around for quite some time, established in 2408. Known for being one of the many suppliers of weapons to dangerous worlds on the rim, and a part of the FTU. They produce a large variety of firearms, strike craft, and armored vehicles to fufill various their various contracts, and are largely migrant, moving wherever the money is. Found almost entirely on mobile production ships and various escort craft. Identifiable by their logo, a red Omega symbol with a black or white W in the middle. The sheer quantity of their firearms produced ensures they can be found.. just about anywhere, and they are very sought after by pirates for their reliability." + caliber = "10mm" + magazine_type = /obj/item/ammo_magazine/m10mm + allowed_magazines = list(/obj/item/ammo_magazine/m10mm) + icon_state = "vityaz" + burst_delay = 1 + projectile_type = /obj/item/projectile/bullet/a10mm + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-10,-10), dispersion=list(0.0, 0.3, 0.6)) + ) + load_method = MAGAZINE + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY | LOCK_SLAPPABLE + is_long = FALSE + fire_sound = "sound/weapons/serdy/vityaz.ogg" + move_delay = 0 // CHOMPEdit: Pistols have move_delay of 0 + + +//LMGs + +/obj/item/gun/projectile/automatic/serdy/molniya //this is essentially a space MG42 + name = "WKHM 'Molniya'" + desc = "A light machinegun manufactured by WKHM for various paramilitaries, private security companies, and rimworld governments. Big, heavy, and with a fire rate similar to that of an MG42. Often used in emplacements and on top of armored vehicles, or as a squad support weapon. Nicknamed the 'Pig' or the 'Sawzall', this one has a solid oak stock, and bears the 'WKHM Adamant' arkship's production stamp. If you ever see this gun, there is no doubt shit's about to go down. Chambered in 7.62x51mm." + description_fluff = "WKHM, is a minor arms company that has been around for quite some time, established in 2408. Known for being one of the many suppliers of weapons to dangerous worlds on the rim, and a part of the FTU. They produce a large variety of firearms, strike craft, and armored vehicles to fufill various their various contracts, and are largely migrant, moving wherever the money is. Found almost entirely on mobile production ships and various escort craft. Identifiable by their logo, a red Omega symbol with a black or white W in the middle. The sheer quantity of their firearms produced ensures they can be found.. just about anywhere, and they are very sought after by pirates for their reliability." + caliber = "7.62mm" + burst_delay = 1 + magazine_type = /obj/item/ammo_magazine/molniya + allowed_magazines = list(/obj/item/ammo_magazine/molniya) + icon_state = "molniya" + projectile_type = /obj/item/projectile/bullet/rifle/a762 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-15,-15), dispersion=list(0.0, 0.6, 1.0)), + list(mode_name="short bursts", burst=5, move_delay=6, burst_accuracy = list(0,-15,-15,-30,-30), dispersion = list(0.6, 1.0, 1.0, 1.0, 1.2)), + list(mode_name="long bursts", burst=15, move_delay=8, burst_accuracy = list(0,-15,-15,-30,-30,0,-15,-15,-30,-30,0,-15,-15,-30,-30), dispersion = list(0.6, 1.0, 1.0, 1.0, 1.2,0.6, 1.0, 1.0, 1.0, 1.2,0.6, 1.0, 1.0, 1.0, 1.2)) + ) + w_class = ITEMSIZE_HUGE + load_method = MAGAZINE + auto_loading_type = OPEN_BOLT + one_handed_penalty = 90 + fire_sound = "sound/weapons/serdy/molniyab.ogg" + +/obj/item/gun/projectile/automatic/serdy/pkm + name = "PKM" + desc = "A traditional russian machinegun. A classic Pan-slav weapon. Chambered in 7.62mm." + caliber = "7.62mm" + magazine_type = /obj/item/ammo_magazine/pkm + allowed_magazines = list(/obj/item/ammo_magazine/pkm) + icon_state = "pkm" + projectile_type = /obj/item/projectile/bullet/rifle/a762 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-15,-15), dispersion=list(0.0, 0.6, 1.0)), + list(mode_name="short bursts", burst=5, move_delay=6, burst_accuracy = list(0,-15,-15,-30,-30), dispersion = list(0.6, 1.0, 1.0, 1.0, 1.2)) + ) + w_class = ITEMSIZE_HUGE + load_method = MAGAZINE + auto_loading_type = OPEN_BOLT + one_handed_penalty = 90 + fire_sound = "sound/weapons/serdy/molniyab.ogg" + +/obj/item/gun/projectile/automatic/serdy/rpd + name = "RPDM" + desc = "An unusual LMG that shares similarities with both the AK and the PKM. Perfect for storming the Reichstag. Chambered in 7.62mm." + caliber = "7.62mm" + magazine_type = /obj/item/ammo_magazine/rpd + allowed_magazines = list(/obj/item/ammo_magazine/rpd) + icon_state = "rpd" + projectile_type = /obj/item/projectile/bullet/rifle/a762 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-15,-15), dispersion=list(0.0, 0.6, 1.0)), + list(mode_name="short bursts", burst=5, move_delay=6, burst_accuracy = list(0,-15,-15,-30,-30), dispersion = list(0.6, 1.0, 1.0, 1.0, 1.2)) + ) + w_class = ITEMSIZE_HUGE + load_method = MAGAZINE + auto_loading_type = OPEN_BOLT + one_handed_penalty = 90 + fire_sound = "sound/weapons/serdy/molniyab.ogg" + +/obj/item/gun/projectile/automatic/serdy/rpk //RPK is the imposter of the LMGs, not a true LMG! Close enough to be in this section, though. + name = "RPK" + desc = "The AK's bigger brother, and the PKM's little brother. More of an LSW than an LMG. Chambered in 7.62mm." + caliber = "7.62mm" + magazine_type = /obj/item/ammo_magazine/akm/drum + allowed_magazines = list(/obj/item/ammo_magazine/akm) //Yes it is intercompatible with AK magazines. + icon_state = "rpk47" + projectile_type = /obj/item/projectile/bullet/rifle/a762 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-15,-15), dispersion=list(0.0, 0.6, 1.0)), + list(mode_name="short bursts", burst=5, move_delay=6, burst_accuracy = list(0,-15,-15,-30,-30), dispersion = list(0.6, 1.0, 1.0, 1.0, 1.2)) + ) + w_class = ITEMSIZE_HUGE + load_method = MAGAZINE + auto_loading_type = CLOSED_BOLT + one_handed_penalty = 90 + fire_sound = "sound/weapons/serdy/molniyab.ogg" + +/obj/item/gun/projectile/automatic/serdy/rpk/update_icon() + . = ..() + if(ammo_magazine) + icon_state = istype(ammo_magazine,/obj/item/ammo_magazine/akm/drum) ? "[initial(icon_state)]drum" : "[initial(icon_state)]" + +/obj/item/gun/projectile/automatic/serdy/kord //ADMINSPAWN ONLY. This gun is-- absurd. BE CAREFUL. IT WILL HURT MICROS. + name = "Kord 6P50" + desc = "This is what Ivan uses when he sees lots of things he doesn't like. This thing belongs on a mount, but some madlad took it off. Capable of causing great harm to anything infront of it, and you, if you're too small. Chambered in 12.7x108mm." + caliber = "12.7x108mm" + magazine_type = /obj/item/ammo_magazine/kord + allowed_magazines = list(/obj/item/ammo_magazine/kord) + icon_state = "kord" + projectile_type = /obj/item/projectile/bullet/rifle/a127x108 + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-15,-15), dispersion=list(0.0, 0.6, 1.0)), + list(mode_name="short bursts", burst=5, move_delay=6, burst_accuracy = list(0,-15,-15,-30,-30), dispersion = list(0.6, 1.0, 1.0, 1.0, 1.2)) + ) + w_class = ITEMSIZE_HUGE + load_method = MAGAZINE + auto_loading_type = OPEN_BOLT + one_handed_penalty = 90 + fire_sound = 'sound/weapons/serdy/strela.ogg' + +//commented this out because it seems to be breaking the Kord -- Ocelot +/* +/obj/item/gun/projectile/automatic/serdy/kord/afteratt(atom/A, mob/living/user, adjacent, params) + if(user.size_multiplier <= 0.5) //They're 50% or lower. If they fire this gun, they're gonna get obliterated. + to_chat(user,span_warning("You struggle to reach the trigger. Maybe shooting such a big gun isn't such a good idea...")) + if(do_after(user, 5 SECONDS)) //Give them a chance to take it back. + . = ..() //RIP + +/obj/item/gun/projectile/automatic/serdy/kord/handle_post_fire(mob/living/user, atom/target, var/pointblank=0, var/reflex=0) + . = ..() + var/unhappy_factor = 1.3333333*(user.size_multiplier - 0.5) //Unhappy factor based on size. Below 50% is a really bad day, and above 125% is fine, everything inbetween is varying. + if(unhappy_factor >= 1) //They're fine + return + + if(unhappy_factor <= 0) //RIP them + var/is_human = FALSE + var/mob/living/carbon/human/H = user + if(istype(H)) + is_human = TRUE + var/deafening = FALSE + if(user.get_ear_protection() < 2 && is_human) + deafening = TRUE + if(is_human && H.eyecheck() < 1) + user.flash_eyes() //Flashbang effect + + user.visible_message(/*What other people experience*/span_notice("[user] manages to pull the trigger on the [src], causing a large bang and a big flash before [src] recoils backwards, crashing violently into [user] and causing them to go flying!"), \ + /*What you experience*/ span_warning("As you pull the trigger, you suddenly see a flash of bright white light and a loud bang which immediately triggers ringing in your ears. Before you can even react, you feel the giant gun crashing into you and propelling you backwards, and then everything goes black!")) + if(user.organs && user.organs.len) //You are going to break a lot of bones. + user.apply_damage(15, BRUTE, BP_L_ARM) + user.apply_damage(15, BRUTE, BP_R_ARM) + user.apply_damage(7, BRUTE, BP_L_HAND) + user.apply_damage(8, BRUTE, BP_R_HAND) + user.apply_damage(25, BRUTE, BP_TORSO) + //70 damage total + for(var/def_zone in list(BP_L_ARM, BP_R_ARM, BP_L_HAND, BP_R_HAND, BP_TORSO)) + var/obj/item/organ/external/hit_organ = user.get_organ(def_zone) + if(hit_organ) + hit_organ.fracture() //Bone crunching noises intensifies + else + user.apply_damage(80, BRUTE) + user.drop_item() //Yea you're not holding onto it for long + + if(deafening) //Very loud, ears go ouch. Should not make you permanently deaf, though. + H.ear_damage += 60 + H.ear_deaf += 80 + + user.apply_damage(150, HALLOSS) //That hurt a lot. + user.AdjustSleeping(50) //Knocked out + var/recoil_dir = turn(user.dir,180) + var/turf/target_turf = get_step(get_step(user,recoil_dir),recoil_dir) + user.throw_at(target_turf,3,3) //Yeet + else //They're not gonna have a fun time, but they'll be fine. For between 50% and 125% size + var/damage_factor = (1 - unhappy_factor) //Unhappy factor is 0 at max unhappiness. Damage_factor is 1 at max unhappiness. + var/prob_to_drop = (33 + damage_factor*66) //100% if just above 50%, 33% if just below 125% + var/damage_taken = 5 + 10 * damage_factor //15 damage if just above 50%, 5 if just below 125% + var/message_on_fire = span_notice("As you pull the trigger, you feel the gun painfully slam into your shoulder, leaving a painful bruise!") + var/in_left_hand = TRUE + if(user.r_hand == src) + in_left_hand = FALSE + var/damaged_body_part = in_left_hand ? pick(list(BP_L_ARM,BP_TORSO)) : pick(list(BP_R_ARM,BP_TORSO)) //50/50 whether your arm holding the gun gets damaged, or your chest. + user.apply_damage(damage_taken,BRUTE,damaged_body_part) //Bruise + user.apply_damage(damage_taken * 3,HALLOSS) //Ouchie juice + if(prob(prob_to_drop)) + message_on_fire += span_notice(" The force causes you to stumble backwards, dropping the gun and falling to the ground.") + user.drop_item() + user.apply_effect(25,WEAKEN) +*/ + +//Pistols + +/obj/item/gun/projectile/automatic/serdy/ssp4_silenced + name = "WKHM SSP4-S" + desc = "A unique, high end service pistol carried by W-K security personnel in the outer rim, and various law enforcement agencies across the galaxy. Features a hidden ejector port, and an integral laser sight. Surprisingly reliable despite its unorthodox design. This one is unmarked and is suppressed. Due to the minimal amount of moving parts, this gun is almost completely silent when used with subsonic ammunition. Chambered in 10mm." + caliber = "10mm" + magazine_type = /obj/item/ammo_magazine/ssp4 + allowed_magazines = list(/obj/item/ammo_magazine/ssp4) + projectile_type = /obj/item/projectile/bullet/a10mm + load_method = MAGAZINE + bolt_name="slide" + bolt_release = "slide release" + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY + is_long = FALSE + silenced = 1 + icon_state = "ssp4s" + move_delay = 0 + +/obj/item/gun/projectile/serdy_pistols + icon = 'icons/obj/gun_ch.dmi' + bolt_name="slide" + bolt_release = "slide release" + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY + load_method = MAGAZINE + move_delay = 0 // CHOMPEdit: Pistols have move_delay of 0 + +/obj/item/gun/projectile/serdy_pistols/ssp4 + name = "WKHM SSP4" + desc = "A unique, high end service pistol carried by W-K security personnel in the outer rim, and various law enforcement agencies across the galaxy. Features a hidden ejector port, and an integral laser sight. Surprisingly reliable despite its unorthodox design. This one bears the 'WKHM Obsidian' arkship's production stamp. Chambered in 10mm." + description_fluff = "WKHM, is a minor arms company that has been around for quite some time, established in 2408. Known for being one of the many suppliers of weapons to dangerous worlds on the rim, and a part of the FTU. They produce a large variety of firearms, strike craft, and armored vehicles to fufill various their various contracts, and are largely migrant, moving wherever the money is. Found almost entirely on mobile production ships and various escort craft. Identifiable by their logo, a red Omega symbol with a black or white W in the middle. The sheer quantity of their firearms produced ensures they can be found.. just about anywhere, and they are very sought after by pirates for their reliability." + caliber = "10mm" + magazine_type = /obj/item/ammo_magazine/ssp4 + allowed_magazines = list(/obj/item/ammo_magazine/ssp4) + icon_state = "ssp4" + projectile_type = /obj/item/projectile/bullet/a10mm + move_delay = 0 // CHOMPEdit: Pistols have move_delay of 0 + +/obj/item/gun/projectile/serdy_pistols/makarov + name = "Makarov PM" + desc = "The venerable Makarov. An easily concealable 9x18mm pistol design from Russia. This one is old and worn, but still reliable as ever. Chambered in 9x18mm makarov." + icon_state = "makarov" + caliber = "9mm" + magazine_type = /obj/item/ammo_magazine/makarov + allowed_magazines = list(/obj/item/ammo_magazine/makarov) + projectile_type = /obj/item/projectile/bullet/a9x18 + +/obj/item/gun/projectile/serdy_pistols/vp70m + name = "VP70M" + desc = "Old Matilda. An ancient design, one of the first, if not the first entirely polymer framed pistols. Can commonly be found in the hands of.. well, anybody with access to a 3d printer. The designs for this pistol are absolutely everywhere, and it's still a favorite to this day, 500 some-odd years later. Chambered in 9mm." + icon_state = "vp70" + caliber = "9mm" + magazine_type = /obj/item/ammo_magazine/m9mm/vp70 + allowed_magazines = list(/obj/item/ammo_magazine/m9mm) + firemodes = list( + list(mode_name="semiauto", burst=1, fire_delay=0, move_delay=null, burst_accuracy=null, dispersion=null), + list(mode_name="3-round bursts", burst=3, fire_delay=null, move_delay=4, burst_accuracy=list(0,-20,-40), dispersion=list(0.0, 0.9, 1.8)) + ) + projectile_type = /obj/item/projectile/bullet/pistol + fire_sound = "sound/weapons/serdy/40pistol.ogg" + +/obj/item/gun/projectile/serdy_pistols/glock71 + name = "Glock 71" + desc = "Following the same design for centuries, the Glock 71 is one of the most reliable sidearms you can buy for cheap these days. These things are everywhere, and for good reason. Chambered in 9mm." + icon_state = "glock" + caliber = "9mm" + magazine_type = /obj/item/ammo_magazine/m9mm/large + allowed_magazines = list(/obj/item/ammo_magazine/m9mm) + projectile_type = /obj/item/projectile/bullet/pistol + fire_sound = "sound/weapons/serdy/9mmpistol.ogg" + +/obj/item/gun/projectile/serdy_pistols/tp23s + name = "TP-23 Terran Special" + desc = "A high end service pistol, that outclasses most of its type, due to its slick operation, ease of concealment, and its built in laser/flashlight combo, and its unusual choice of caliber. Spits some pretty nasty fireballs from the muzzle. Most often seen in the holsters of high ranking SGC, or NT officials. Chambered in .44 magnum." + icon_state = "tp23b" + caliber = ".44" + magazine_type = /obj/item/ammo_magazine/tp23s + allowed_magazines = list(/obj/item/ammo_magazine/tp23s) + projectile_type = /obj/item/projectile/bullet/pistol/strong + fire_sound = "sound/weapons/serdy/deagle.ogg" + +/obj/item/gun/projectile/serdy_pistols/tp23 + name = "TP-23" + desc = "A classic service pistol, that outclasses most of its type, due to its slick operation, ease of concealment, and its built in laser/flashlight combo, and its unusual choice of caliber. Most often seen in the holsters of SGC and USDF troops and peacekeepers, or in the hands of NT security personnel with money to spend, and officers. Chambered in .45 ACP." + icon_state = "tp23" + caliber = ".45" + magazine_type = /obj/item/ammo_magazine/tp23/rubber + allowed_magazines = list(/obj/item/ammo_magazine/tp23) + projectile_type = /obj/item/projectile/bullet/pistol/medium + fire_sound = "sound/weapons/serdy/pistol_service.ogg" + + +/obj/item/gun/projectile/revolver/nagant + name = "nagant revolver" + desc = "A 7 shot, gas-seal revolver designed to have increased muzzle velocity by not allowing excess gasses to escape out of the sides of the cylinder. One of the few revolvers that can be suppressed. Good luck finding a suppressor for one, though. Chambered in .357." + icon = 'icons/obj/gun_ch.dmi' + icon_state = "nagant" + max_shells = 7 + move_delay = 0 // CHOMPEdit: Pistols have move_delay of 0 + +/obj/item/gun/projectile/revolver/saa + name = "Colt Single Action Army" + desc = "A Colt Single Action Army. The greatest handgun ever made. Six shots. More than enough to kill anything that moves... Chambered in .45 Long-Colt." //sue me -- Ocelot + icon = 'icons/obj/gun_ch.dmi' + caliber = ".45" + icon_state = "saa" + fire_delay = 0 //fastest gun in the west + ammo_type = /obj/item/ammo_casing/a45 + max_shells = 6 + move_delay = 0 + fire_sound = "sound/weapons/serdy/44mag.ogg" + +/obj/item/gun/projectile/revolver/nagant/skinned + name = "nagant revolver" + icon_state = "nagantb" + +//Time to give all these existing guns some new properties. +//automatic.dm +/obj/item/gun/projectile/automatic + bolt_name="charging handle" + sound_ejectchamber = 'sound/weapons/ballistics/rifle_ejectchamber.ogg' + sound_eject = 'sound/weapons/ballistics/rifle_eject.ogg' + sound_chamber = 'sound/weapons/ballistics/rifle_chamber.ogg' + +/obj/item/gun/projectile/automatic/c20r + icon = 'icons/obj/64x32guns_ch.dmi' + icon_state = "c20r-20" + icon_expected_height = 32 + icon_expected_width = 64 + +/obj/item/gun/projectile/automatic/c20r/update_icon() + ..() + if(ammo_magazine) + icon_state = "c20r-[round(ammo_magazine.stored_ammo.len,4)]" + else + icon_state = "c20r" + return + +/obj/item/gun/projectile/automatic/c20r/Initialize() + . = ..() + update_transform() + +/obj/item/gun/projectile/automatic/c20r/update_transform() + . = ..() + transform = transform.Translate(-16,0) + +/obj/item/gun/projectile/automatic/sts35 + icon = 'icons/obj/64x32guns_ch.dmi' + icon_state = "sts35" + icon_expected_height = 32 + icon_expected_width = 64 + +/obj/item/gun/projectile/automatic/sts35/update_icon() + . = ..() + icon_state = ammo_magazine ? "[initial(icon_state)]" : "[initial(icon_state)]-e" + +/obj/item/gun/projectile/automatic/sts35/Initialize() + . = ..() + update_transform() + +/obj/item/gun/projectile/automatic/sts35/update_transform() + . = ..() + transform = transform.Translate(-16,0) + +/obj/item/gun/projectile/automatic/wt550 + icon = 'icons/obj/64x32guns_ch.dmi' + icon_state = "wt550-20" + icon_expected_height = 32 + icon_expected_width = 64 + +/* //Dont need it +/obj/item/gun/projectile/automatic/wt550/update_icon() + . = ..() + icon_state = ammo_magazine ? "[initial(icon_state)]" : "[initial(icon_state)]-e" +*/ +/obj/item/gun/projectile/automatic/wt550/Initialize() + . = ..() + update_transform() + +/obj/item/gun/projectile/automatic/wt550/update_transform() + . = ..() + transform = transform.Translate(-16,0) + +/obj/item/gun/projectile/automatic/z8 + icon = 'icons/obj/64x32guns_ch.dmi' + icon_state = "carbine-10" + icon_expected_height = 32 + icon_expected_width = 64 + +/obj/item/gun/projectile/automatic/z8/update_icon() + ..() + if(ammo_magazine) + icon_state = "carbine-[round(CLAMP(ammo_magazine.stored_ammo.len/2,0,10),2)]" + else + icon_state = "carbine-e" + return + +/obj/item/gun/projectile/automatic/z8/Initialize() + . = ..() + update_transform() + +/obj/item/gun/projectile/automatic/z8/update_transform() + . = ..() + transform = transform.Translate(-16,0) + +/obj/item/gun/projectile/automatic/l6_saw + bolt_name = "charging handle" + auto_loading_type = OPEN_BOLT + +/obj/item/gun/projectile/automatic/mini_uzi + auto_loading_type = OPEN_BOLT + icon = 'icons/obj/64x32guns_ch.dmi' + icon_state = "mini-uzi" + icon_expected_height = 32 + icon_expected_width = 64 + +/obj/item/gun/projectile/automatic/mini_uzi/update_icon() + . = ..() + icon_state = ammo_magazine ? "[initial(icon_state)]" : "[initial(icon_state)]-empty" + +/obj/item/gun/projectile/automatic/mini_uzi/Initialize() + . = ..() + update_transform() + +/obj/item/gun/projectile/automatic/mini_uzi/update_transform() + . = ..() + transform = transform.Translate(-16,0) + + +//automatic_yw.dm +/obj/item/gun/projectile/automatic/mg42 + bolt_name="charging handle" + auto_loading_type = OPEN_BOLT + bolt_release = null + +//boltaction.dm +/obj/item/gun/projectile/shotgun/pump/rifle + is64x32 = FALSE + icon_expected_height = 32 + icon_expected_width = 32 + icon = 'icons/obj/gun.dmi' + +//caseless.dm +/obj/item/gun/projectile/caseless + bolt_name="charging handle" + +//contender.dm +/obj/item/gun/projectile/contender //To be updated to use .357 + manual_chamber = FALSE + +//dartgun.dm +/obj/item/gun/projectile/dartgun + manual_chamber = FALSE + +//pistol.dm +/obj/item/gun/projectile/colt + bolt_name="slide" + bolt_release = "slide release" + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY + icon = 'icons/obj/gun_ch.dmi' + icon_state = "m1911" + +/obj/item/gun/projectile/colt/Initialize() + .=..() + update_icon() + +/obj/item/gun/projectile/colt/update_icon() + if(ammo_magazine) + if(unique_reskin) + icon = 'icons/obj/gun.dmi' + icon_state = unique_reskin + else + icon_state = initial(icon_state) + else + if(unique_reskin) + icon = 'icons/obj/gun.dmi' + icon_state = "[unique_reskin]-e" + else + icon_state = "[initial(icon_state)]-e" + +/obj/item/gun/projectile/sec + bolt_name="slide" + bolt_release = "slide release" + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY + move_delay = 0 // CHOMPEdit: Pistols have move_delay of 0 + +/obj/item/gun/projectile/silenced + bolt_name="slide" + bolt_release = "slide release" + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY + move_delay = 0 // CHOMPEdit: Pistols have move_delay of 0 + +/obj/item/gun/projectile/deagle + bolt_name="slide" + bolt_release = "slide release" + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY + move_delay = 0 // CHOMPEdit: Pistols have move_delay of 0 + +/obj/item/gun/projectile/gyropistol + bolt_name="slide" + bolt_release = "slide release" + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY + move_delay = 0 // CHOMPEdit: Pistols have move_delay of 0 + +/obj/item/gun/projectile/pistol + bolt_name="slide" + bolt_release = "slide release" + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY + move_delay = 0 // CHOMPEdit: Pistols have move_delay of 0 + +/obj/item/gun/projectile/pirate + manual_chamber = FALSE + move_delay = 0 // CHOMPEdit: Pistols have move_delay of 0 + +/obj/item/gun/projectile/derringer + manual_chamber = FALSE + move_delay = 0 // CHOMPEdit: Pistols have move_delay of 0 + +/obj/item/gun/projectile/luger + bolt_name="slide" + bolt_release = "slide release" + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY + move_delay = 0 // CHOMPEdit: Pistols have move_delay of 0 + +/obj/item/gun/projectile/p92x + bolt_name="slide" + bolt_release = "slide release" + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY + move_delay = 0 // CHOMPEdit: Pistols have move_delay of 0 + +//pistol_vr.dm +/obj/item/gun/projectile/lamia + bolt_name="slide" + bolt_release = "slide release" + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY + move_delay = 0 // CHOMPEdit: Pistols have move_delay of 0 + + +/obj/item/gun/projectile/giskard //To be updated to .380 + bolt_name="slide" + bolt_release = "slide release" + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY + move_delay = 0 // CHOMPEdit: Pistols have move_delay of 0 + +//pistol_yw.dm +/obj/item/gun/projectile/automatic/glock + bolt_name="slide" + bolt_release = "slide release" + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY + move_delay = 0 // CHOMPEdit: Pistols have move_delay of 0 + +/obj/item/gun/projectile/ppk + bolt_name="slide" + bolt_release = "slide release" + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY + move_delay = 0 // CHOMPEdit: Pistols have move_delay of 0 + +/obj/item/gun/projectile/m2024 + bolt_name="slide" + bolt_release = "slide release" + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY + +/obj/item/gun/projectile/fluff/m1911 + bolt_name="slide" + bolt_release = "slide release" + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY + +//revolver.dm +/obj/item/gun/projectile/revolver //To be updated to use .375 + manual_chamber = FALSE + move_delay = 0 // CHOMPEdit: Pistols have move_delay of 0 + + +//semiauto.dm +/obj/item/gun/projectile/garand //To be updated to use .30 springfield. //Leaving it as 7.62 for the purpose of making rounds more available. + bolt_name="charging handle" + auto_loading_type = CLOSED_BOLT | LOCK_OPEN_EMPTY | CHAMBER_ON_RELOAD + bolt_release = null + sound_ejectchamber = 'sound/weapons/ballistics/rifle_ejectchamber.ogg' + sound_eject = 'sound/weapons/ballistics/rifle_eject.ogg' + sound_chamber = 'sound/weapons/ballistics/rifle_chamber.ogg' + only_open_load = TRUE + +/obj/item/gun/projectile/revolvingrifle + manual_chamber = FALSE + +//shotgun.dm +/obj/item/gun/projectile/shotgun + +/obj/item/gun/projectile/shotgun/pump + manual_chamber = FALSE + icon = 'icons/obj/64x32guns_ch.dmi' + icon_state = "winchester" + icon_expected_height = 32 + icon_expected_width = 64 + pump_animation = "winchester-pump" + var/is64x32 = TRUE + var/is_picked_up = FALSE + +/obj/item/gun/projectile/shotgun/pump/Initialize() + . = ..() + if(is64x32) + update_transform() + +/obj/item/gun/projectile/shotgun/pump/equipped() + . = ..() + is_picked_up = TRUE + update_transform() + +/obj/item/gun/projectile/shotgun/pump/pickup() + . = ..() + is_picked_up = TRUE + update_transform() + +/obj/item/gun/projectile/shotgun/pump/dropped() + . = ..() + is_picked_up = FALSE + update_transform() + +/obj/item/gun/projectile/shotgun/pump/update_transform() + . = ..() + if(is64x32) + if(is_picked_up) + transform = transform.Turn(-45) + transform = transform.Translate(-16,0) + +/obj/item/gun/projectile/shotgun/pump/combat + icon = 'icons/obj/64x32guns_ch.dmi' + +/obj/item/gun/projectile/shotgun/pump/shorty + name = "sawn-off pump shotgun" + desc = "A professionally cut down pump-action shotgun, with a checkered pistol grip, and a 6 round tube. Come with me if you want to live. Chambered in 12 gauge." + icon = 'icons/obj/64x32guns_ch.dmi' + icon_state = "shorty" + max_shells = 6 + pump_animation = "shorty-pump" + +/obj/item/gun/projectile/shotgun/doublebarrel + desc = "A classic, external hammer double barrel shotgun. This one has Sif-blue furniture. Chambered in 12 gauge." + sawn_off = FALSE + var/shotgun_variant = "N" + manual_chamber = FALSE + icon = 'icons/obj/64x32guns_ch.dmi' + icon_state = "dshotgunN" + icon_expected_height = 32 + icon_expected_width = 64 + var/is_picked_up = FALSE + +/obj/item/gun/projectile/shotgun/doublebarrel/process_accuracy(obj/projectile, mob/living/user, atom/target, var/burst, var/held_twohanded) + . = ..() + var/obj/item/projectile/bullet/P = projectile + if(!istype(P)) + return + if(sawn_off) + P.submunition_spread_max = 100 //More spread when sawn off + +/obj/item/gun/projectile/shotgun/doublebarrel/attackby(var/obj/item/A as obj, mob/user as mob) + if(istype(A, /obj/item/surgical/circular_saw) || istype(A, /obj/item/melee/energy) || istype(A, /obj/item/pickaxe/plasmacutter)) + if(sawn_off) //Don't do anything if we were already sawed off. + return + to_chat(user, span_notice("You begin to shorten the barrel of \the [src].")) + if(loaded.len) + var/burstsetting = burst + burst = 2 + user.visible_message(span_danger("The shotgun goes off!"), span_danger("The shotgun goes off in your face!")) + Fire_userless(user) + burst = burstsetting + return + if(do_after(user, 30)) //SHIT IS STEALTHY EYYYYY + icon_state = "sawnshotgun" + item_state = "sawnshotgun" + + desc = "Omar's coming!" + to_chat(user, span_warning("You shorten the barrel of \the [src]!")) + else + ..() + +/obj/item/gun/projectile/shotgun/doublebarrel/proc/saw_off() + sawn_off = TRUE + w_class = ITEMSIZE_NORMAL + force = 5 + slot_flags &= ~SLOT_BACK //you can't sling it on your back + slot_flags |= (SLOT_BELT|SLOT_HOLSTER) //but you can wear it on your belt (poorly concealed under a trenchcoat, ideally) - or in a holster, why not. + name = "sawn-off shotgun" + desc += " The barrel seems to be crudely sawn in half." + icon = 'icons/obj/gun_ch.dmi' + icon_state = "sawnshotgun[shotgun_variant]" + icon_expected_width = 32 + update_icon() + update_transform() + +/obj/item/gun/projectile/shotgun/doublebarrel/sawn //Default sawn shotgun needs it's old icon path back + icon = 'icons/obj/gun.dmi' + +/obj/item/gun/projectile/shotgun/doublebarrel/Initialize() + . = ..() + update_transform() + update_icon() + +/obj/item/gun/projectile/shotgun/doublebarrel/update_transform() + . = ..() + if(!sawn_off) + if(is_picked_up) + transform = transform.Turn(-45) + transform = transform.Translate(-16,0) + +/obj/item/gun/projectile/shotgun/doublebarrel/equipped() + . = ..() + is_picked_up = TRUE + update_transform() + +/obj/item/gun/projectile/shotgun/doublebarrel/pickup() + . = ..() + is_picked_up = TRUE + update_transform() + +/obj/item/gun/projectile/shotgun/doublebarrel/dropped() + . = ..() + is_picked_up = FALSE + update_transform() + +/obj/item/gun/projectile/shotgun/doublebarrel/rosewood + desc = "A classic, external hammer double barrel shotgun. This one has pristine rosewood furniture. Chambered in 12 gauge." + icon_state = "dshotgunR" + shotgun_variant = "R" + +/obj/item/gun/projectile/shotgun/doublebarrel/black + desc = "A classic, external hammer double barrel shotgun. This one has lame polymer black furniture. Chambered in 12 gauge." + icon_state = "dShotgunB" + shotgun_variant = "B" + +/obj/item/gun/projectile/shotgun/doublebarrel/oak + desc = "A classic, external hammer double barrel shotgun. This one has classic oak furniture. Chambered in 12 gauge." + icon_state = "dshotgunW" + shotgun_variant = "W" + +/obj/item/gun/projectile/shotgun/doublebarrel/rosewood_weathered + desc = "A classic, external hammer double barrel shotgun. This one has weathered rosewood furniture. Chambered in 12 gauge." + icon_state = "dshotgunPR" + shotgun_variant = "PR" + +/obj/item/gun/projectile/shotgun/doublebarrel/rosewood_weathered + desc = "A classic, external hammer double barrel shotgun. This one has weathered oak furniture. Chambered in 12 gauge." + icon_state = "dshotgunPW" + shotgun_variant = "PW" + +//shotgun_vr.dm +/obj/item/gun/projectile/shotgun/pump/USDF + is64x32 = FALSE + icon_expected_height = 32 + icon_expected_width = 32 + +//shotgun_yw.dm +/obj/item/gun/projectile/revolvershotgun + manual_chamber = FALSE + +//sniper.dm +/obj/item/gun/projectile/heavysniper + manual_chamber = FALSE + +/obj/item/gun/projectile/SVD + bolt_name = "charging handle" + desc = "The PCA S19 Jalgarr, also known by its translated name the 'Dragon', is mass produced with an Optical Sniper Sight so simple that even a Tajaran can use it. Too bad for you that the inscriptions are written in Siik. Uses 7.62mm rounds." + sound_ejectchamber = 'sound/weapons/ballistics/rifle_ejectchamber.ogg' + sound_eject = 'sound/weapons/ballistics/rifle_eject.ogg' + sound_chamber = 'sound/weapons/ballistics/rifle_chamber.ogg' diff --git a/modular_chomp/code/modules/projectiles/guns/zBallisticPort/magazines.dm b/modular_chomp/code/modules/projectiles/guns/zBallisticPort/magazines.dm new file mode 100644 index 0000000000..520fc9f8a4 --- /dev/null +++ b/modular_chomp/code/modules/projectiles/guns/zBallisticPort/magazines.dm @@ -0,0 +1,547 @@ +//This enables you to load mag to mag too. This includes from box to mag. +/obj/item/ammo_magazine/attackby(obj/item/W as obj, mob/user as mob) + if(istype(W, /obj/item/ammo_magazine)) + var/obj/item/ammo_magazine/L = W + if(L.caliber != caliber) + to_chat(user, span_warning("The ammo in [L] does not fit into [src].")) + return + if(!L.stored_ammo.len) + to_chat(user, span_warning("There's no more ammo [L]!")) + return + if(stored_ammo.len >= max_ammo) + to_chat(user, span_warning("[src] is full!")) + return + while(L.stored_ammo.len && stored_ammo.len < max_ammo) + var/obj/item/ammo_casing/AC = L.stored_ammo[1] //select the next casing. + L.stored_ammo -= AC //Remove this casing from loaded list of the clip. + AC.forceMove(src) + stored_ammo.Insert(1, AC) //add it to the head of our magazine's list + L.update_icon() + ..() + +/obj/item/ammo_magazine/asval + name = "AS-Val magazine(9mm)" + icon = 'icons/obj/ammo_ch.dmi' + icon_state = "asval" + max_ammo = 20 + mag_type = MAGAZINE + caliber = "9mm" + matter = list(MAT_STEEL = 1000) + multiple_sprites = 1 + ammo_type = /obj/item/ammo_casing/a9mm + +/obj/item/ammo_magazine/asval/ap + name = "AS-Val magazine(9mm armor-piercing)" + matter = list(MAT_STEEL = 1200) + ammo_type = /obj/item/ammo_casing/a9mm/ap + +/obj/item/ammo_magazine/asval/rubber + name = "AS-Val magazine(9mm less-lethal)" + icon_state = "asvalrubber" + matter = list(MAT_STEEL = 1000) + ammo_type = /obj/item/ammo_casing/a9mm/rubber +/obj/item/ammo_magazine/akm + name = "AKM magazine (7.62mm)" + icon = 'icons/obj/ammo_ch.dmi' + icon_state = "762mag" + max_ammo = 30 + mag_type = MAGAZINE + caliber = "7.62mm" + matter = list(MAT_STEEL = 1600) + multiple_sprites = 1 + ammo_type = /obj/item/ammo_casing/a762 + +/obj/item/ammo_magazine/akm/ap + name = "AKM magazine (7.62mm armor-piercing)" + matter = list(MAT_STEEL = 2000) + ammo_type = /obj/item/ammo_casing/a762/ap + +/obj/item/ammo_magazine/akm/hp + name = "AKM magazine (7.62mm hollow-point)" + matter = list(MAT_STEEL = 2000) + ammo_type = /obj/item/ammo_casing/a762/hp + +/obj/item/ammo_magazine/akm/rubber + name = "AKM magazine (7.62mm less-lethal)" + icon = 'icons/obj/ammo_ch.dmi' + icon_state = "762rubbermag" + max_ammo = 30 + mag_type = MAGAZINE + caliber = "7.62mm" + matter = list(MAT_STEEL = 1200) + multiple_sprites = 1 + ammo_type = /obj/item/ammo_casing/a762/rubber + +/obj/item/ammo_magazine/ak74 + name = "AK74 magazine (5.45mm)" + icon = 'icons/obj/ammo_ch.dmi' + icon_state = "545bake" + max_ammo = 30 + mag_type = MAGAZINE + caliber = "5.45mm" + matter = list(MAT_STEEL = 1400) + multiple_sprites = 1 + ammo_type = /obj/item/ammo_casing/a545 + +/obj/item/ammo_magazine/ak74/ap + name = "AK74 magazine (5.45mm armor-piercing)" + matter = list(MAT_STEEL = 1800) + ammo_type = /obj/item/ammo_casing/a545/ap + +/obj/item/ammo_magazine/ak74/hp + name = "AK74 magazine (5.45mm hollow-point)" + matter = list(MAT_STEEL = 1800) + ammo_type = /obj/item/ammo_casing/a545/hp + +/obj/item/ammo_magazine/ak74/rubber + name = "AK74 magazine (5.45mm less-lethal)" + icon_state = "545bakerubber" + matter = list(MAT_STEEL = 1200) + ammo_type = /obj/item/ammo_casing/a545/rubber + +/obj/item/ammo_magazine/ak74/plum + icon_state = "545plum" + +/obj/item/ammo_magazine/ak74/plum/rubber + name = "AK74 magazine (5.45mm less-lethal)" + icon_state = "545plumrubber" + matter = list(MAT_STEEL = 1200) + ammo_type = /obj/item/ammo_casing/a545/rubber + +/obj/item/ammo_magazine/m16 + name = "M16 magazine (5.56mm)" + icon = 'icons/obj/ammo_ch.dmi' + icon_state = "556mag" + max_ammo = 30 + mag_type = MAGAZINE + caliber = "5.56mm" + matter = list(MAT_STEEL = 1400) + multiple_sprites = 1 + ammo_type = /obj/item/ammo_casing/a556 + +/obj/item/ammo_magazine/m16/ap + name = "M16 magazine (5.56mm armor-piercing)" + matter = list(MAT_STEEL = 1700) + ammo_type = /obj/item/ammo_casing/a556/ap + +/obj/item/ammo_magazine/m16/rubber + name = "M16 magazine (5.56mm less-lethal)" + icon_state = "556rubbermag" + matter = list(MAT_STEEL = 1700) + ammo_type = /obj/item/ammo_casing/a556/rubber + + +/obj/item/ammo_magazine/m16/hp + name = "M16 magazine (5.56mm hollow-point)" + matter = list(MAT_STEEL = 1700) + ammo_type = /obj/item/ammo_casing/a556/hp + +/obj/item/ammo_magazine/m16/patriot + name = "Patriot magazine (5.56mm)" + matter = list(MAT_STEEL = 5000) + max_ammo = 100 + icon_state = "patriotmag" + +/obj/item/ammo_magazine/m41 + name = "M41A magazine (10x24mm)" + icon = 'icons/obj/ammo_ch.dmi' + icon_state = "m41mag" + max_ammo = 40 + mag_type = MAGAZINE + caliber = "10x24mm" + matter = list(MAT_STEEL = 10000) + multiple_sprites = 1 + ammo_type = /obj/item/ammo_casing/a10x24 + +/obj/item/ammo_magazine/m41/rubber + name = "M41A magazine (10x24mm)" + icon = 'icons/obj/ammo_ch.dmi' + icon_state = "m41rubbermag" + max_ammo = 40 + matter = list(MAT_STEEL = 7000) + ammo_type = /obj/item/ammo_casing/a10x24/rubber + +/obj/item/ammo_magazine/t12 + name = "T-12 magazine (10x24mm)" + icon = 'icons/obj/ammo_ch.dmi' + icon_state = "t12" + max_ammo = 40 + mag_type = MAGAZINE + caliber = "10x24mm" + matter = list(MAT_STEEL = 10000) + multiple_sprites = 1 + ammo_type = /obj/item/ammo_casing/a10x24 + +/obj/item/ammo_magazine/clip/sks + name = "Ammo clip(7.62mm)" + icon_state = "gclip" + max_ammo = 10 + caliber = "7.62mm" + multiple_sprites = 1 + matter = list(MAT_STEEL = 400) + ammo_type = /obj/item/ammo_casing/a762 + +/obj/item/ammo_magazine/clip/sks/ap + name = "Ammo clip(7.62mm armor-piercing)" + matter = list(MAT_STEEL = 700) + ammo_type = /obj/item/ammo_casing/a762/ap + +/obj/item/ammo_magazine/clip/mosin + name = "Ammo clip(7.62mm)" + icon_state = "clip_rifle" + max_ammo = 5 + caliber = "7.62mm" + multiple_sprites = 1 + matter = list(MAT_STEEL = 300) + ammo_type = /obj/item/ammo_casing/a762 + +/obj/item/ammo_magazine/clip/mosin/ap + name = "Ammo clip(7.62mm armor-piercing)" + matter = list(MAT_STEEL = 600) + ammo_type = /obj/item/ammo_casing/a762/ap + +/obj/item/ammo_magazine/type901 + name = "Type-901 magazine(7.62mm)" + icon = 'icons/obj/ammo_ch.dmi' + caliber = "7.62mm" + icon_state = "762mag" + max_ammo = 30 + mag_type = MAGAZINE + multiple_sprites = 1 + matter = list(MAT_STEEL = 2400) + ammo_type = /obj/item/ammo_casing/a762 + +/obj/item/ammo_magazine/type901/ap + name = "Type-901 magazine(7.62mm armor-piercing)" + matter = list(MAT_STEEL = 3000) + ammo_type = /obj/item/ammo_casing/a762/ap + +/obj/item/ammo_magazine/ar10 + name = "AR-10 magazine(7.62mm)" + icon = 'icons/obj/ammo_ch.dmi' + caliber = "7.62mm" + icon_state = "t12" + max_ammo = 20 + mag_type = MAGAZINE + multiple_sprites = 1 + matter = list(MAT_STEEL = 1800) + ammo_type = /obj/item/ammo_casing/a762 + +/obj/item/ammo_magazine/ar10/ap + name = "AR-10 magazine(7.62mm armor-piercing)" + matter = list(MAT_STEEL = 2400) + ammo_type = /obj/item/ammo_casing/a762/ap + +/obj/item/ammo_magazine/fal + name = "FAL magazine(7.62mm)" + icon = 'icons/obj/ammo_ch.dmi' + caliber = "7.62mm" + icon_state = "t12" + max_ammo = 20 + mag_type = MAGAZINE + multiple_sprites = 1 + matter = list(MAT_STEEL = 1800) + ammo_type = /obj/item/ammo_casing/a762 + +/obj/item/ammo_magazine/fal/ap + name = "FAL magazine(7.62mm armor-piercing)" + matter = list(MAT_STEEL = 2400) + ammo_type = /obj/item/ammo_casing/a762/ap + +/obj/item/ammo_magazine/awp + name = "AWP magazine(.338 Lapua)" + icon = 'icons/obj/ammo_ch.dmi' + caliber = ".338" + icon_state = "awp" + max_ammo = 5 + mag_type = MAGAZINE + multiple_sprites = 1 + matter = list(MAT_STEEL = 2400) + ammo_type = /obj/item/ammo_casing/a338 + +/obj/item/ammo_magazine/awp/ap + name = "AWP magazine(.338 Lapua armor-piercing)" + matter = list(MAT_STEEL = 3000) + ammo_type = /obj/item/ammo_casing/a338/ap + +/obj/item/ammo_magazine/hectate + name = "Hectate II magazine(.50 BMG)" + icon = 'icons/obj/ammo_ch.dmi' + caliber = ".50 BMG" + icon_state = "hectate" + max_ammo = 7 + mag_type = MAGAZINE + multiple_sprites = 1 + matter = list(MAT_STEEL = 4000) + ammo_type = /obj/item/ammo_casing/a50bmg + +/obj/item/ammo_magazine/hectate/ap + name = "Hectate II magazine(.50 BMG armor-piercing)" + matter = list(MAT_STEEL = 5000) + ammo_type = /obj/item/ammo_casing/a50bmg/ap + +/obj/item/ammo_magazine/ppsh + name = "PPSH-17b drum magazine(.45)" + icon = 'icons/obj/ammo_ch.dmi' + caliber = ".45" + icon_state = "ppshmag" + max_ammo = 71 + mag_type = MAGAZINE + multiple_sprites = 1 + matter = list(MAT_STEEL = 1500) + ammo_type = /obj/item/ammo_casing/a45 + +/obj/item/ammo_magazine/plamya + name = "Plamya drum magazine(9mm)" + icon = 'icons/obj/ammo_ch.dmi' + caliber = "9mm" + icon_state = "plamyamag" + max_ammo = 50 + mag_type = MAGAZINE + multiple_sprites = 1 + matter = list(MAT_STEEL = 2500) + ammo_type = /obj/item/ammo_casing/a9mm + +/obj/item/ammo_magazine/plamya/ap + name = "Plamya drum magazine(9mm armor-piercing)" + matter = list(MAT_STEEL = 3000) + ammo_type = /obj/item/ammo_casing/a9mm/ap + +/obj/item/ammo_magazine/plamya/rubber + name = "Plamya drum magazine(9mm less-lethal)" + matter = list(MAT_STEEL = 2000) + ammo_type = /obj/item/ammo_casing/a9mm/rubber + icon_state = "plamyarubbermag" + +/obj/item/ammo_magazine/strela + name = "Strela magazine(12 gauge buckshot)" + icon = 'icons/obj/ammo_ch.dmi' + caliber = "12g" + icon_state = "strelamag" + max_ammo = 7 + mag_type = MAGAZINE + multiple_sprites = 1 + matter = list(MAT_STEEL = 800) + ammo_type = /obj/item/ammo_casing/a12g/pellet + +/obj/item/ammo_magazine/strela/slug + name = "Strela magazine(12 gauge slug)" + ammo_type = /obj/item/ammo_casing/a12g + +/obj/item/ammo_magazine/molniya + name = "Molniya magazine box(7.62mm)" + icon = 'icons/obj/ammo_ch.dmi' + caliber = "7.62mm" + icon_state = "molniyamag" + max_ammo = 100 + mag_type = MAGAZINE + multiple_sprites = 1 + matter = list(MAT_STEEL = 8000) + ammo_type = /obj/item/ammo_casing/a762 + +/obj/item/ammo_magazine/molniya/ap + name = "Molniya magazine box(7.62mm armor-piercing)" + matter = list(MAT_STEEL = 10000) + ammo_type = /obj/item/ammo_casing/a762/ap + +/obj/item/ammo_magazine/kord + name = "Kord magazine box(12.7x108mm)" + icon = 'icons/obj/ammo_ch.dmi' + caliber = "12.7x108mm" + icon_state = "kordmag" + max_ammo = 100 + mag_type = MAGAZINE + multiple_sprites = 1 + matter = list(MAT_STEEL = 20000) + ammo_type = /obj/item/ammo_casing/a127x108 + +/obj/item/ammo_magazine/pkm + name = "PKM magazine box(7.62mm)" + icon = 'icons/obj/ammo_ch.dmi' + caliber = "7.62mm" + icon_state = "molniyamag" + max_ammo = 100 + mag_type = MAGAZINE + multiple_sprites = 1 + matter = list(MAT_STEEL = 8000) + ammo_type = /obj/item/ammo_casing/a762 + +/obj/item/ammo_magazine/pkm/ap + name = "PKM magazine box(7.62mm armor-piercing)" + matter = list(MAT_STEEL = 10000) + ammo_type = /obj/item/ammo_casing/a762/ap + +/obj/item/ammo_magazine/rpd + name = "RPD Drum magazine(7.62mm)" //Lil side note. These mags don't work with the AK, because the rounds inside are actually on a belt, but they might still fit inside an AK and just break it? Couldn't find any more details on what happens if you try. + icon = 'icons/obj/ammo_ch.dmi' + caliber = "7.62mm" + icon_state = "rpdmag" + max_ammo = 100 + mag_type = MAGAZINE + multiple_sprites = 1 + matter = list(MAT_STEEL = 8000) + ammo_type = /obj/item/ammo_casing/a762 + +/obj/item/ammo_magazine/rpd/ap + name = "PPD Drum magazine(7.62mm armor-piercing)" + matter = list(MAT_STEEL = 10000) + ammo_type = /obj/item/ammo_casing/a762/ap + +/obj/item/ammo_magazine/akm/drum + name = "RPK Drum magazine(7.62mm)" //These ARE interchangeable with AK magazines in the same caliber + icon = 'icons/obj/ammo_ch.dmi' + caliber = "7.62mm" + icon_state = "rpdmag" + max_ammo = 75 + mag_type = MAGAZINE + multiple_sprites = 1 + matter = list(MAT_STEEL = 6000) + ammo_type = /obj/item/ammo_casing/a762 + +/obj/item/ammo_magazine/akm/drum/ap + name = "RPK magazine box(7.62mm armor-piercing)" + matter = list(MAT_STEEL = 7500) + ammo_type = /obj/item/ammo_casing/a762/ap + +/obj/item/ammo_magazine/ssp4 + name = "SSP4 magazine(10mm)" + icon = 'icons/obj/ammo_ch.dmi' + caliber = "10mm" + icon_state = "10mmmag" + max_ammo = 8 + mag_type = MAGAZINE + multiple_sprites = 1 + matter = list(MAT_STEEL = 400) + ammo_type = /obj/item/ammo_casing/a10mm + +/obj/item/ammo_magazine/ssp4/rubber + name = "SSP4 magazine(10mm)" + ammo_type = /obj/item/ammo_casing/a10mm/rubber + icon_state = "10mmrubbermag" + matter = list(MAT_STEEL = 300) + +/obj/item/ammo_magazine/makarov + name = "Makarov magazine(9mm)" + icon = 'icons/obj/ammo_ch.dmi' + caliber = "9mm" + icon_state = "9mmmag" + max_ammo = 8 + mag_type = MAGAZINE + multiple_sprites = 1 + matter = list(MAT_STEEL = 400) + ammo_type = /obj/item/ammo_casing/a9mm + +/obj/item/ammo_magazine/makarov/rubber + name = "Makarov magazine(9mm Makarov rubber)" + ammo_type = /obj/item/ammo_casing/a9mm/rubber + icon_state = "9mmrubbermag" + +/obj/item/ammo_magazine/m9mm/vp70 + name = "VP70 magazine (9mm)" + icon = 'icons/obj/ammo_ch.dmi' + icon_state = "9mmmag" + ammo_type = /obj/item/ammo_casing/a9mm + max_ammo = 18 + +/obj/item/ammo_magazine/m9mm/vp70/ap + name = "VP70 magazine (9x19mm armor-piercing)" + ammo_type = /obj/item/ammo_casing/a9mm/ap + +/obj/item/ammo_magazine/m9mm/vp70/hp + name = "VP70 magazine (9x19mm hollow-point)" + ammo_type = /obj/item/ammo_casing/a9mm/ap + +/obj/item/ammo_magazine/m9mm/vp70/rubber + name = "VP70 magazine (9x19mm rubber)" + ammo_type = /obj/item/ammo_casing/a9mm/rubber + icon_state = "9mmrubbermag" + +/obj/item/ammo_magazine/m9mm/vp70/flash + name = "VP70 magazine (9x19mm flash)" + ammo_type = /obj/item/ammo_casing/a9mm/flash + icon_state = "9mmrubbermag" + +/obj/item/ammo_magazine/tp23s + name = "TP-23 TS magazine (.44 magnum)" + icon = 'icons/obj/ammo_ch.dmi' + icon_state = "45mag" + max_ammo = 10 + mag_type = MAGAZINE + caliber = ".44" + matter = list(MAT_STEEL = 800) + multiple_sprites = 1 + ammo_type = /obj/item/ammo_casing/a44 + +/obj/item/ammo_magazine/tp23s/rubber + name = "TP-23 TS magazine (.44 magnum less-lethal)" + ammo_type = /obj/item/ammo_casing/a44/rubber + +/obj/item/ammo_magazine/tp23s/highpower + name = "TP-23 TS magazine (.44 magnum +P)" + desc = "This will probably void your warranty... If you have one." + ammo_type = /obj/item/ammo_casing/a44/rifle + +/obj/item/ammo_magazine/tp23 + name = "TP-23 magazine (.45 ACP)" + icon = 'icons/obj/ammo_ch.dmi' + icon_state = "45mag" + max_ammo = 14 + mag_type = MAGAZINE + caliber = ".45" + matter = list(MAT_STEEL = 800) + multiple_sprites = 1 + ammo_type = /obj/item/ammo_casing/a45 + +/obj/item/ammo_magazine/tp23/rubber + name = "TP-23 magazine (.45 ACP rubber)" + ammo_type = /obj/item/ammo_casing/a45/rubber + +/obj/item/ammo_magazine/tp23/flash + name = "TP-23 magazine (.45 ACP flash)" + ammo_type = /obj/item/ammo_casing/a45/flash + +/obj/item/ammo_magazine/tp23/hp + name = "TP-23 magazine (.45 ACP hollow-point)" + ammo_type = /obj/item/ammo_casing/a45/hp + +/obj/item/ammo_magazine/tp23/ap + name = "TP-23 magazine (.45 ACP armor piercing)" + ammo_type = /obj/item/ammo_casing/a45/ap + +/obj/item/ammo_magazine/tp23/emp + name = "TP-23 magazine (.45 ACP low-yield EMP)" + ammo_type = /obj/item/ammo_casing/a45/emp + +/obj/item/ammo_magazine/mp5mag + name = "mp5 magazine(9mm)" + icon = 'icons/obj/ammo_ch.dmi' + icon_state = "mp5mag" + max_ammo = 30 + mag_type = MAGAZINE + caliber = "9mm" + matter = list(MAT_STEEL = 800) + multiple_sprites = 1 + ammo_type = /obj/item/ammo_casing/a9mm + +/obj/item/ammo_magazine/mp5mag/rubber + name = "mp5 magazine(9x19mm rubber)" + ammo_type = /obj/item/ammo_casing/a9mm/rubber + +/obj/item/ammo_magazine/mp5mag/ap + name = "mp5 magazine(9x19mm AP)" + ammo_type = /obj/item/ammo_casing/a9mm/ap + +/obj/item/ammo_magazine/mp5mag/hp + name = "mp5 magazine(9x19mm HP)" + ammo_type = /obj/item/ammo_casing/a9mm/hp + +/obj/item/ammo_magazine/pitchmag + name = "pitchgun magazine(.44)" + icon = 'icons/obj/ammo_ch.dmi' + icon_state = "pitchmag" + max_ammo = 30 + mag_type = MAGAZINE + caliber = ".44" + matter = list(MAT_STEEL = 800) + multiple_sprites = 1 + ammo_type = /obj/item/ammo_casing/a44 diff --git a/modular_chomp/code/modules/projectiles/guns/zBallisticPort/projectiles.dm b/modular_chomp/code/modules/projectiles/guns/zBallisticPort/projectiles.dm new file mode 100644 index 0000000000..5b174e940b --- /dev/null +++ b/modular_chomp/code/modules/projectiles/guns/zBallisticPort/projectiles.dm @@ -0,0 +1,149 @@ +//Bullets from z-ballistic ported over with simplified calibers, only porting whatever isnt inside of the base game + +////////////////////////////////// +// // +// CASINGS // +// // +////////////////////////////////// + +/obj/item/ammo_casing/a9x39 + desc = "A 9x39mm round" + caliber = "9x39mm" + icon_state = "rifle-casing" + projectile_type = /obj/item/projectile/bullet/rifle/a9x39 + +/obj/item/ammo_casing/a9x39/ap + desc = "An armor piercing 9x39mm round" + projectile_type = /obj/item/projectile/bullet/rifle/a9x39/ap + +/obj/item/ammo_casing/a9x39/rubber + desc = "A less-lethal 9x39mm round" + projectile_type = /obj/item/projectile/bullet/rifle/a9x39/rubber + +/obj/item/ammo_casing/a762/rubber + desc = "A less-lethal 7.62mm round" + projectile_type = /obj/item/projectile/bullet/rifle/a762/rubber + +/obj/item/ammo_casing/a545/rubber + desc = "A 5.45mm less-lethal bullet casing." + projectile_type = /obj/item/projectile/bullet/rifle/a545/rubber + +/obj/item/ammo_casing/a556 + desc = "A 5.56mm round" + caliber = "5.56mm" + icon_state = "rifle-casing" + projectile_type = /obj/item/projectile/bullet/rifle/a556 + +/obj/item/ammo_casing/a556/ap + desc = "An armor piercing 5.56mm round" + projectile_type = /obj/item/projectile/bullet/rifle/a556/ap + +/obj/item/ammo_casing/a556/hp + desc = "A hollow point 5.56mm round" + projectile_type = /obj/item/projectile/bullet/rifle/a556/hp + +/obj/item/ammo_casing/a556/rubber + desc = "A less-lethal 5.56mm round" + projectile_type = /obj/item/projectile/bullet/rifle/a556/rubber + +/obj/item/ammo_casing/a10x24 + desc = "A 10x24mm caseless round" + caliber = "10x24mm" + icon_state = "rifle-casing" + caseless = 1 + projectile_type = /obj/item/projectile/bullet/rifle/a10x24 + +/obj/item/ammo_casing/a10x24/rubber + desc = "A less-lethal 10x24mm caseless round" + icon_state = "rifle-casing" + caseless = 1 + projectile_type = /obj/item/projectile/bullet/rifle/a10x24/rubber + +/obj/item/ammo_casing/a338 + desc = "A .338 Lapua round" + caliber = ".338" + icon_state = "lcasing" + projectile_type = /obj/item/projectile/bullet/rifle/a338 + +/obj/item/ammo_casing/a338/ap + desc = "An armor piercing .338 Lapua round" + projectile_type = /obj/item/projectile/bullet/rifle/a338/ap + +/obj/item/ammo_casing/a50bmg + desc = "A .50 BMG round" + caliber = ".50 BMG" + icon_state = "lcasing" + projectile_type = /obj/item/projectile/bullet/rifle/a145 + +/obj/item/ammo_casing/a50bmg/ap + desc = "An armor piercing .50 BMG round" + projectile_type = /obj/item/projectile/bullet/rifle/a145 + +/obj/item/ammo_casing/a127x108 + desc = "A 12.7x108mm round. This looks scary." + caliber = "12.7x108mm" + icon_state = "lcasing" + projectile_type = /obj/item/projectile/bullet/rifle/a127x108 + +/obj/item/ammo_casing/a127x108/hv + desc = "A high velocity 12.7x108mm round" + caliber = "12.7x108mm" + icon_state = "lcasing" + projectile_type = /obj/item/projectile/bullet/rifle/a145 +////////////////////////////////// +// // +// PROJECTILES // +// // +////////////////////////////////// +/obj/item/projectile/bullet/rifle/a556 //5.56mm NATO + damage = 30 + hud_state = "rifle" + +/obj/item/projectile/bullet/rifle/a556/ap + damage = 20 + armor_penetration = 25 + hud_state = "rifle_ap" + +/obj/item/projectile/bullet/rifle/a556/hp + damage = 40 + hollow_point = TRUE + armor_penetration = -10 + hud_state = "hivelo_iff" + +/obj/item/projectile/bullet/rifle/a556/rubber + armor_penetration = -10 + damage = 15 + agony = 60 + embed_chance = 0 + sharp = FALSE + check_armour = "melee" + +/obj/item/projectile/bullet/rifle/a10x24 + damage = 30 + hud_state = "rifle" + +/obj/item/projectile/bullet/rifle/a10x24/rubber + armor_penetration = -10 + damage = 20 + agony = 80 + embed_chance = 0 + sharp = FALSE + check_armour = "melee" + +/obj/item/projectile/bullet/rifle/a338 + fire_sound = 'sound/weapons/ballistics/a762x54.ogg' + damage = 45 + hitscan = 1 + penetrating = 2 + hud_state = "sniper_crude" + +/obj/item/projectile/bullet/rifle/a338/ap + armor_penetration = 50 + hud_state = "sniper_supersonic" + +/obj/item/projectile/bullet/rifle/a127x108 //Bigass fuckoff LMG round, bigger than 50 BMG + fire_sound = 'sound/weapons/serdy/strela.ogg' + damage = 60 + penetrating = 2 + armor_penetration=30 + hud_state = "sniper_fire" diff --git a/modular_chomp/maps/overmap/om_ships/cybershuttle-10x11.dmm b/modular_chomp/maps/overmap/om_ships/cybershuttle-10x11.dmm index a43b17c7c0..cf1131c42b 100644 --- a/modular_chomp/maps/overmap/om_ships/cybershuttle-10x11.dmm +++ b/modular_chomp/maps/overmap/om_ships/cybershuttle-10x11.dmm @@ -15,10 +15,10 @@ /obj/item/gps/explorer, /obj/structure/closet/walllocker_double/east, /obj/item/gun/projectile/garand, -/obj/item/ammo_magazine/clip/medium, -/obj/item/ammo_magazine/clip/medium, -/obj/item/ammo_magazine/clip/medium, /obj/item/storage/firstaid/regular, +/obj/item/ammo_magazine/clip/c762, +/obj/item/ammo_magazine/clip/c762, +/obj/item/ammo_magazine/clip/c762, /turf/simulated/floor/tiled/techfloor, /area/shuttle/cybershuttle) "e" = ( diff --git a/modular_chomp/maps/overmap/om_ships/sdf_corvette-10x17.dmm b/modular_chomp/maps/overmap/om_ships/sdf_corvette-10x17.dmm index fa0a34d3e5..55b0f0c21f 100644 --- a/modular_chomp/maps/overmap/om_ships/sdf_corvette-10x17.dmm +++ b/modular_chomp/maps/overmap/om_ships/sdf_corvette-10x17.dmm @@ -333,11 +333,12 @@ /obj/item/clothing/suit/armor/pcarrier/light, /obj/item/clothing/head/helmet, /obj/item/gun/projectile/automatic/p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/ammo_box/b9mm, +/obj/item/ammo_magazine/ammo_box/b9mm, +/obj/item/ammo_magazine/ammo_box/b9mm, +/obj/item/ammo_magazine/ammo_box/b9mm, /turf/simulated/floor/tiled/techfloor, /area/shuttle/sdf_corvette2) "tt" = ( diff --git a/modular_chomp/maps/overmap/om_ships/sdf_corvette.dmm b/modular_chomp/maps/overmap/om_ships/sdf_corvette.dmm index 3db52bbc70..55dd7620ba 100644 --- a/modular_chomp/maps/overmap/om_ships/sdf_corvette.dmm +++ b/modular_chomp/maps/overmap/om_ships/sdf_corvette.dmm @@ -333,22 +333,20 @@ req_one_access = null }, /obj/item/gun/projectile/automatic/serdy/m4a1, -/obj/item/ammo_magazine/medium, -/obj/item/ammo_magazine/medium, -/obj/item/ammo_magazine/medium, -/obj/item/ammo_magazine/medium, -/obj/item/ammo_magazine/medium, /obj/item/clothing/suit/armor/pcarrier/medium, /obj/item/clothing/suit/armor/pcarrier/medium, /obj/item/clothing/suit/armor/pcarrier/medium, /obj/item/gun/projectile/automatic/serdy/m4a1, /obj/item/gun/projectile/automatic/serdy/m4a1, -/obj/item/ammo_magazine/medium, -/obj/item/ammo_magazine/medium, -/obj/item/ammo_magazine/medium, /obj/item/clothing/head/helmet/combat, /obj/item/clothing/head/helmet/combat, /obj/item/clothing/head/helmet/combat, +/obj/item/ammo_magazine/m16, +/obj/item/ammo_magazine/m16, +/obj/item/ammo_magazine/m16, +/obj/item/ammo_magazine/m16, +/obj/item/ammo_magazine/m16, +/obj/item/ammo_magazine/m16, /turf/simulated/floor/tiled/techfloor, /area/shuttle/sdf_corvette) "tt" = ( diff --git a/modular_chomp/maps/overmap/om_ships/whiteship-26x33.dmm b/modular_chomp/maps/overmap/om_ships/whiteship-26x33.dmm index 764add84dc..fb7b298abb 100644 --- a/modular_chomp/maps/overmap/om_ships/whiteship-26x33.dmm +++ b/modular_chomp/maps/overmap/om_ships/whiteship-26x33.dmm @@ -333,11 +333,12 @@ /obj/structure/closet/secure_closet/guncabinet{ req_one_access = null }, -/obj/item/ammo_magazine/speedloader_six, -/obj/item/ammo_magazine/speedloader_six, /obj/item/gun/projectile/revolver/mateba, -/obj/item/ammo_magazine/clip/medium, -/obj/item/ammo_magazine/clip/medium, +/obj/item/ammo_magazine/clip/c762, +/obj/item/ammo_magazine/clip/c762, +/obj/item/ammo_magazine/s357, +/obj/item/ammo_magazine/s357, +/obj/item/ammo_magazine/ammo_box/b762, /turf/simulated/floor/tiled/techfloor, /area/shuttle/whiteshipOM2) "lM" = ( diff --git a/modular_chomp/maps/relic_base/relicbase-12.dmm b/modular_chomp/maps/relic_base/relicbase-12.dmm index 7e6d1fc576..35e26797bc 100644 --- a/modular_chomp/maps/relic_base/relicbase-12.dmm +++ b/modular_chomp/maps/relic_base/relicbase-12.dmm @@ -1277,61 +1277,61 @@ /obj/item/ammo_magazine/m16/rubber, /obj/item/ammo_magazine/m16/rubber, /obj/item/ammo_magazine/m16/rubber, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90/rubber, -/obj/item/ammo_magazine/a57p90/rubber, -/obj/item/ammo_magazine/a57p90/rubber, -/obj/item/ammo_magazine/a57p90/rubber, -/obj/item/ammo_magazine/a57p90/rubber, -/obj/item/ammo_magazine/a57p90/rubber, -/obj/item/ammo_magazine/a57p90/rubber, -/obj/item/ammo_magazine/a57p90/rubber, -/obj/item/ammo_magazine/a57p90/rubber, -/obj/item/ammo_magazine/a57p90/rubber, -/obj/item/ammo_magazine/a57p90/rubber, -/obj/item/ammo_magazine/a57p90/rubber, -/obj/item/ammo_magazine/a57p90/rubber, -/obj/item/ammo_magazine/a57p90/rubber, -/obj/item/ammo_magazine/a57p90/rubber, -/obj/item/ammo_magazine/a57p90/rubber, -/obj/item/ammo_magazine/a57p90/rubber, -/obj/item/ammo_magazine/a57p90/rubber, -/obj/item/ammo_magazine/a57p90/rubber, -/obj/item/ammo_magazine/a57p90/rubber, -/obj/item/ammo_magazine/a57p90/rubber, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90/rubber, +/obj/item/ammo_magazine/m9mmp90/rubber, +/obj/item/ammo_magazine/m9mmp90/rubber, +/obj/item/ammo_magazine/m9mmp90/rubber, +/obj/item/ammo_magazine/m9mmp90/rubber, +/obj/item/ammo_magazine/m9mmp90/rubber, +/obj/item/ammo_magazine/m9mmp90/rubber, +/obj/item/ammo_magazine/m9mmp90/rubber, +/obj/item/ammo_magazine/m9mmp90/rubber, +/obj/item/ammo_magazine/m9mmp90/rubber, +/obj/item/ammo_magazine/m9mmp90/rubber, +/obj/item/ammo_magazine/m9mmp90/rubber, +/obj/item/ammo_magazine/m9mmp90/rubber, +/obj/item/ammo_magazine/m9mmp90/rubber, +/obj/item/ammo_magazine/m9mmp90/rubber, +/obj/item/ammo_magazine/m9mmp90/rubber, +/obj/item/ammo_magazine/m9mmp90/rubber, +/obj/item/ammo_magazine/m9mmp90/rubber, +/obj/item/ammo_magazine/m9mmp90/rubber, +/obj/item/ammo_magazine/m9mmp90/rubber, +/obj/item/ammo_magazine/m9mmp90/rubber, /obj/item/cell/vepr, /obj/item/cell/vepr, /obj/item/cell/vepr, @@ -15965,50 +15965,50 @@ /obj/item/gun/projectile/revolver/saa, /obj/item/gun/projectile/revolver/saa, /obj/item/gun/projectile/revolver/saa, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, -/obj/item/ammo_magazine/s45lc/rifle, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, +/obj/item/ammo_magazine/s45, /turf/simulated/floor/redgrid/animated, /area/centcom/specops) "rQe" = ( diff --git a/modular_chomp/maps/soluna_nexus/soluna_nexus-2.dmm b/modular_chomp/maps/soluna_nexus/soluna_nexus-2.dmm index 178dc3cf51..b8db55faf9 100644 --- a/modular_chomp/maps/soluna_nexus/soluna_nexus-2.dmm +++ b/modular_chomp/maps/soluna_nexus/soluna_nexus-2.dmm @@ -12637,26 +12637,26 @@ pixel_y = -5; pixel_x = 2 }, -/obj/item/ammo_magazine/s45lc/rifle{ +/obj/item/ammo_magazine/s45{ pixel_y = 9; pixel_x = -4 }, -/obj/item/ammo_magazine/s45lc/rifle{ +/obj/item/ammo_magazine/s45{ pixel_y = 6; pixel_x = -4 }, -/obj/item/ammo_magazine/s45lc/rifle{ +/obj/item/ammo_magazine/s45{ pixel_y = 3; pixel_x = -4 }, -/obj/item/ammo_magazine/s45lc/rifle{ +/obj/item/ammo_magazine/s45{ pixel_x = -4 }, -/obj/item/ammo_magazine/s45lc/rifle{ +/obj/item/ammo_magazine/s45{ pixel_y = -3; pixel_x = -4 }, -/obj/item/ammo_magazine/s45lc/rifle{ +/obj/item/ammo_magazine/s45{ pixel_y = -6; pixel_x = -4 }, diff --git a/modular_chomp/maps/southern_cross/southern_cross-3.dmm b/modular_chomp/maps/southern_cross/southern_cross-3.dmm index 8b424feecb..b9b53a2159 100644 --- a/modular_chomp/maps/southern_cross/southern_cross-3.dmm +++ b/modular_chomp/maps/southern_cross/southern_cross-3.dmm @@ -4318,10 +4318,10 @@ /obj/machinery/door/window/brigdoor/westleft{ name = "Ammo" }, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, -/obj/item/ammo_magazine/a57p90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, +/obj/item/ammo_magazine/m9mmp90, /turf/simulated/floor/tiled/dark, /area/security/tactical) "alH" = ( diff --git a/modular_chomp/maps/southern_cross/southern_cross-8.dmm b/modular_chomp/maps/southern_cross/southern_cross-8.dmm index 954e8a2849..c2aa67d3fb 100644 --- a/modular_chomp/maps/southern_cross/southern_cross-8.dmm +++ b/modular_chomp/maps/southern_cross/southern_cross-8.dmm @@ -5825,21 +5825,6 @@ icon_state = "wood" }, /area/skipjack_station) -"eQB" = ( -/obj/structure/table/rack, -/obj/item/ammo_magazine/hectate/ap, -/obj/item/ammo_magazine/hectate/ap, -/obj/item/ammo_magazine/hectate/ap, -/obj/item/ammo_magazine/hectate/ap, -/obj/item/ammo_magazine/hectate/ap, -/obj/item/ammo_magazine/hectate/ap, -/obj/item/ammo_magazine/hectate/ap, -/obj/item/ammo_magazine/hectate/ap, -/turf/unsimulated/floor{ - dir = 5; - icon_state = "vault" - }, -/area/centcom/specops) "eQT" = ( /obj/structure/closet/crate/medical, /obj/item/surgical/circular_saw, @@ -19733,10 +19718,6 @@ /area/ninja_dojo/dojo) "shL" = ( /obj/structure/table/rack, -/obj/item/gun/projectile/automatic/serdy/hectate, -/obj/item/gun/projectile/automatic/serdy/hectate, -/obj/item/gun/projectile/automatic/serdy/hectate, -/obj/item/gun/projectile/automatic/serdy/hectate, /turf/unsimulated/floor{ dir = 5; icon_state = "vault" @@ -46393,7 +46374,7 @@ vFi vFi vFi nZC -eQB +shL eos eos eos diff --git a/modular_chomp/maps/southern_cross/submaps/gateway/snowfield.dmm b/modular_chomp/maps/southern_cross/submaps/gateway/snowfield.dmm index 95e9e1572e..2ad54a4691 100644 --- a/modular_chomp/maps/southern_cross/submaps/gateway/snowfield.dmm +++ b/modular_chomp/maps/southern_cross/submaps/gateway/snowfield.dmm @@ -2383,7 +2383,7 @@ pixel_x = -5; pixel_y = 3 }, -/obj/item/ammo_casing/a762x54{ +/obj/item/ammo_casing/a762{ pixel_x = -3; pixel_y = -8 }, @@ -13349,7 +13349,7 @@ /turf/simulated/floor/tiled/monotile, /area/awaymission/snowfield/security/lobby) "lIw" = ( -/obj/item/ammo_casing/a762x54, +/obj/item/ammo_casing/a762, /obj/item/ammo_casing/spent{ pixel_x = -4; pixel_y = -7 @@ -17139,8 +17139,8 @@ /turf/simulated/floor/tiled/techfloor, /area/awaymission/snowfield/command/bridge) "pnD" = ( -/obj/item/ammo_casing/a762x54, -/obj/item/ammo_casing/a762x54, +/obj/item/ammo_casing/a762, +/obj/item/ammo_casing/a762, /obj/item/tool/crowbar/red{ pixel_x = -10; pixel_y = -15 diff --git a/vorestation.dme b/vorestation.dme index e508d5d8df..68a2aa16be 100644 --- a/vorestation.dme +++ b/vorestation.dme @@ -4094,9 +4094,6 @@ #include "code\modules\projectiles\ammunition\rounds_ch.dm" #include "code\modules\projectiles\ammunition\rounds_yw.dm" #include "code\modules\projectiles\ammunition\smartmag.dm" -#include "code\modules\projectiles\ammunition\zz_autolathe_ch.dm" -#include "code\modules\projectiles\ammunition\zz_magazines_ch.dm" -#include "code\modules\projectiles\ammunition\zz_rounds_ch.dm" #include "code\modules\projectiles\brokenguns\energy.dm" #include "code\modules\projectiles\brokenguns\launcher.dm" #include "code\modules\projectiles\brokenguns\magnetic.dm" @@ -4180,7 +4177,6 @@ #include "code\modules\projectiles\guns\projectile\shotgun_yw.dm" #include "code\modules\projectiles\guns\projectile\smartgun.dm" #include "code\modules\projectiles\guns\projectile\sniper.dm" -#include "code\modules\projectiles\guns\projectile\zz_ballistics_ch.dm" #include "code\modules\projectiles\guns\projectile\sniper\collapsible_sniper.dm" #include "code\modules\projectiles\projectile\arc.dm" #include "code\modules\projectiles\projectile\beams.dm" @@ -5131,13 +5127,6 @@ #include "modular_chomp\code\modules\projectiles\gun.dm" #include "modular_chomp\code\modules\projectiles\mob.dm" #include "modular_chomp\code\modules\projectiles\projectile.dm" -#include "modular_chomp\code\modules\projectiles\ammo_refactor\_ammo_defines.dm" -#include "modular_chomp\code\modules\projectiles\ammo_refactor\ammo_autolathe.dm" -#include "modular_chomp\code\modules\projectiles\ammo_refactor\ammo_magazine_override.dm" -#include "modular_chomp\code\modules\projectiles\ammo_refactor\ammo_magazines.dm" -#include "modular_chomp\code\modules\projectiles\ammo_refactor\ammo_overrides.dm" -#include "modular_chomp\code\modules\projectiles\ammo_refactor\ammo_types.dm" -#include "modular_chomp\code\modules\projectiles\ammo_refactor\gun_overrides.dm" #include "modular_chomp\code\modules\projectiles\clockwork\clockwork_guns_ch.dm" #include "modular_chomp\code\modules\projectiles\guns\alts.dm" #include "modular_chomp\code\modules\projectiles\guns\beam.dm" @@ -5150,6 +5139,10 @@ #include "modular_chomp\code\modules\projectiles\guns\energy\laser.dm" #include "modular_chomp\code\modules\projectiles\guns\energy\special.dm" #include "modular_chomp\code\modules\projectiles\guns\projectile\revolver.dm" +#include "modular_chomp\code\modules\projectiles\guns\projectile\ammunition\ammo_boxes.dm" +#include "modular_chomp\code\modules\projectiles\guns\zBallisticPort\bullet.dm" +#include "modular_chomp\code\modules\projectiles\guns\zBallisticPort\magazines.dm" +#include "modular_chomp\code\modules\projectiles\guns\zBallisticPort\projectiles.dm" #include "modular_chomp\code\modules\projectiles\precursor\eclipse.dm" #include "modular_chomp\code\modules\projectiles\precursor\tyr.dm" #include "modular_chomp\code\modules\reagents\machinery\dispenser\chem_synthesizer_ch.dm"