diff --git a/code/game/machinery/autolathe.dm b/code/game/machinery/autolathe.dm index e56e7a3fcf..5901148603 100644 --- a/code/game/machinery/autolathe.dm +++ b/code/game/machinery/autolathe.dm @@ -149,7 +149,7 @@ if(istype(O,/obj/item/ammo_magazine/clip) || istype(O,/obj/item/ammo_magazine/a357) || istype(O,/obj/item/ammo_magazine/c38)) // Prevents ammo recycling exploit with speedloaders. user << "\The [O] is too hazardous to recycle with the autolathe!" return - /* ToDo: Make this actually check for ammo and let me recycle if the ammo is spent or gone. -Spades + /* ToDo: Make this actually check for ammo and change the value of the magazine if it's empty. -Spades var/obj/item/ammo_magazine/speedloader = O if(speedloader.stored_ammo) user << "\The [speedloader] is too hazardous to put back into the autolathe while there's ammunition inside of it!" diff --git a/code/game/machinery/autolathe_datums.dm b/code/game/machinery/autolathe_datums.dm index 0fab954712..12379e79af 100644 --- a/code/game/machinery/autolathe_datums.dm +++ b/code/game/machinery/autolathe_datums.dm @@ -371,8 +371,7 @@ /*Ammo magazines*/ ////////////////// -// These should always be /empty! The idea is to fill them up manually with ammo clips. - +/////// 5mm /datum/autolathe/recipe/pistol_5mm name = "pistol magazine (5mm)" path = /obj/item/ammo_magazine/c5mm @@ -385,6 +384,178 @@ category = "Arms and Ammunition" hidden = 1 +/////// .45 +/datum/autolathe/recipe/pistol_45 + name = "pistol magazine (.45)" + path = /obj/item/ammo_magazine/c45m + category = "Arms and Ammunition" + hidden = 1 + +/datum/autolathe/recipe/pistol_45p + name = "pistol magazine (.45 practice)" + path = /obj/item/ammo_magazine/c45m/practice + category = "Arms and Ammunition" + +/datum/autolathe/recipe/pistol_45r + name = "pistol magazine (.45 rubber)" + path = /obj/item/ammo_magazine/c45m/rubber + category = "Arms and Ammunition" + +/datum/autolathe/recipe/pistol_45f + name = "pistol magazine (.45 flash)" + path = /obj/item/ammo_magazine/c45m/flash + category = "Arms and Ammunition" + +/datum/autolathe/recipe/pistol_45uzi + name = "uzi magazine (.45)" + path = /obj/item/ammo_magazine/c45uzi + category = "Arms and Ammunition" + hidden = 1 + +/datum/autolathe/recipe/tommymag + name = "Tommygun magazine (.45)" + path = /obj/item/ammo_magazine/tommymag + category = "Arms and Ammunition" + hidden = 1 + +/datum/autolathe/recipe/tommydrum + name = "Tommygun drum magazine (.45)" + path = /obj/item/ammo_magazine/tommydrum + category = "Arms and Ammunition" + hidden = 1 + +/////// 9mm + +/obj/item/ammo_magazine/mc9mm/flash + ammo_type = /obj/item/ammo_casing/c9mmf + +/obj/item/ammo_magazine/mc9mm/rubber + name = "magazine (9mm rubber)" + ammo_type = /obj/item/ammo_casing/c9mmr + +/obj/item/ammo_magazine/mc9mm/practice + name = "magazine (9mm practice)" + ammo_type = /obj/item/ammo_casing/c9mmp + +/datum/autolathe/recipe/pistol_9mm + name = "pistol magazine (9mm)" + path = /obj/item/ammo_magazine/mc9mm + category = "Arms and Ammunition" + hidden = 1 + +/datum/autolathe/recipe/pistol_9mmr + name = "pistol magazine (9mm rubber)" + path = /obj/item/ammo_magazine/mc9mm/rubber + category = "Arms and Ammunition" + +/datum/autolathe/recipe/pistol_9mmp + name = "pistol magazine (9mm practice)" + path = /obj/item/ammo_magazine/mc9mm/practice + category = "Arms and Ammunition" + +/datum/autolathe/recipe/pistol_9mmf + name = "pistol magazine (9mm flash)" + path = /obj/item/ammo_magazine/mc9mm/flash + category = "Arms and Ammunition" + +/datum/autolathe/recipe/smg_9mm + name = "top-mounted SMG magazine (9mm)" + path = /obj/item/ammo_magazine/mc9mmt + category = "Arms and Ammunition" + hidden = 1 + +/datum/autolathe/recipe/smg_9mmr + name = "top-mounted SMG magazine (9mm rubber)" + path = /obj/item/ammo_magazine/mc9mmt/rubber + category = "Arms and Ammunition" + +/datum/autolathe/recipe/smg_9mmp + name = "top-mounted SMG magazine (9mm practice)" + path = /obj/item/ammo_magazine/mc9mmt/practice + category = "Arms and Ammunition" + +/datum/autolathe/recipe/smg_9mmf + name = "top-mounted SMG magazine (9mm flash)" + path = /obj/item/ammo_magazine/mc9mmt/flash + category = "Arms and Ammunition" + +/////// 10mm +/datum/autolathe/recipe/smg_10mm + name = "SMG magazine (10mm)" + path = /obj/item/ammo_magazine/a10mm + category = "Arms and Ammunition" + hidden = 1 + +/datum/autolathe/recipe/pistol_50 + name = "pistol magazine (.50AE)" + path = /obj/item/ammo_magazine/a50 + category = "Arms and Ammunition" + hidden = 1 + +/////// 5.56mm +/datum/autolathe/recipe/rifle_556 + name = "10rnd rifle magazine (5.56mm)" + path = /obj/item/ammo_magazine/a556/empty + category = "Arms and Ammunition" + hidden = 1 + +/datum/autolathe/recipe/rifle_556p + name = "10rnd rifle magazine (5.56mm practice)" + path = /obj/item/ammo_magazine/a556/practice + category = "Arms and Ammunition" + +/datum/autolathe/recipe/rifle_556m + name = "20rnd rifle magazine (5.56mm)" + path = /obj/item/ammo_magazine/a556m + category = "Arms and Ammunition" + hidden = 1 + +/datum/autolathe/recipe/rifle_556mp + name = "20rnd rifle magazine (5.56mm practice)" + path = /obj/item/ammo_magazine/a556m/practice + category = "Arms and Ammunition" + hidden = 1 + +/////// 7.62 +/datum/autolathe/recipe/rifle_SVD + name = "10rnd rifle magazine (7.62mm)" + path = /obj/item/ammo_magazine/SVD + category = "Arms and Ammunition" + hidden = 1 + +/datum/autolathe/recipe/rifle_762 + name = "20rnd rifle magazine (7.62mm)" + path = /obj/item/ammo_magazine/c762 + category = "Arms and Ammunition" + hidden = 1 + +/datum/autolathe/recipe/machinegun_762 + name = "machinegun box magazine (7.62)" + path = /obj/item/ammo_magazine/a762 + category = "Arms and Ammunition" + hidden = 1 + +/datum/autolathe/recipe/shotgun_magazine + name = "24rnd shotgun magazine (12g)" + path = /obj/item/ammo_magazine/g12 + category = "Arms and Ammunition" + hidden = 1 + +/* Commented out until autolathe stuff is decided/fixed. Will probably remove these entirely. -Spades +// These should always be /empty! The idea is to fill them up manually with ammo clips. + +/datum/autolathe/recipe/pistol_5mm + name = "pistol magazine (5mm)" + path = /obj/item/ammo_magazine/c5mm/empty + category = "Arms and Ammunition" + hidden = 1 + +/datum/autolathe/recipe/smg_5mm + name = "top-mounted SMG magazine (5mm)" + path = /obj/item/ammo_magazine/c5mmt/empty + category = "Arms and Ammunition" + hidden = 1 + /datum/autolathe/recipe/pistol_45 name = "pistol magazine (.45)" path = /obj/item/ammo_magazine/c45m/empty @@ -426,17 +597,17 @@ /datum/autolathe/recipe/pistol_50 name = "pistol magazine (.50AE)" - path = /obj/item/ammo_magazine/a50 + path = /obj/item/ammo_magazine/a50/empty category = "Arms and Ammunition" hidden = 1 /datum/autolathe/recipe/rifle_556 - name = "10rnd rifle magazine (5.56)" + name = "10rnd rifle magazine (5.56mm)" path = /obj/item/ammo_magazine/a556/empty category = "Arms and Ammunition" /datum/autolathe/recipe/rifle_556m - name = "20rnd rifle magazine (5.56)" + name = "20rnd rifle magazine (5.56mm)" path = /obj/item/ammo_magazine/a556m/empty category = "Arms and Ammunition" hidden = 1 @@ -463,7 +634,7 @@ name = "24rnd shotgun magazine (12g)" path = /obj/item/ammo_magazine/g12/empty category = "Arms and Ammunition" - hidden = 1 + hidden = 1*/ /////////////////////////////// /*Ammo clips and Speedloaders*/ @@ -486,8 +657,8 @@ path = /obj/item/ammo_magazine/c38/rubber category = "Arms and Ammunition" - -/datum/autolathe/recipe/pistol_clip_45 +// Commented out until metal exploits with autolathe is fixed. +/*/datum/autolathe/recipe/pistol_clip_45 name = "ammo clip (.45)" path = /obj/item/ammo_magazine/clip/c45 category = "Arms and Ammunition" @@ -547,17 +718,6 @@ category = "Arms and Ammunition" hidden = 1 -/datum/autolathe/recipe/rifle_clip_762 - name = "ammo clip (7.62mm)" - path = /obj/item/ammo_magazine/clip/a762 - category = "Arms and Ammunition" - hidden = 1 - -/datum/autolathe/recipe/rifle_clip_762_practice - name = "ammo clip (7.62mm practice)" - path = /obj/item/ammo_magazine/clip/a762/practice - category = "Arms and Ammunition" - /datum/autolathe/recipe/rifle_clip_556 name = "ammo clip (5.56mm)" path = /obj/item/ammo_magazine/clip/a556 @@ -568,6 +728,18 @@ name = "ammo clip (5.56mm practice)" path = /obj/item/ammo_magazine/clip/a556/practice category = "Arms and Ammunition" +*/ + +/datum/autolathe/recipe/rifle_clip_762 + name = "ammo clip (7.62mm)" + path = /obj/item/ammo_magazine/clip/a762 + category = "Arms and Ammunition" + hidden = 1 + +/datum/autolathe/recipe/rifle_clip_762_practice + name = "ammo clip (7.62mm practice)" + path = /obj/item/ammo_magazine/clip/a762/practice + category = "Arms and Ammunition" ////////////// diff --git a/code/modules/projectiles/ammunition/boxes.dm b/code/modules/projectiles/ammunition/boxes.dm index 89aa3bf3c6..24ff711f93 100644 --- a/code/modules/projectiles/ammunition/boxes.dm +++ b/code/modules/projectiles/ammunition/boxes.dm @@ -1,5 +1,3 @@ -// Don't set DEFAULT_WALL_MATERIAL under 75 or you'll risk giving away free ammo on the autolathe. - ///////// .357 ///////// /obj/item/ammo_magazine/a357 @@ -8,7 +6,7 @@ icon_state = "38" caliber = "357" ammo_type = /obj/item/ammo_casing/a357 - matter = list(DEFAULT_WALL_MATERIAL = 1080) + matter = list(DEFAULT_WALL_MATERIAL = 1260) max_ammo = 6 multiple_sprites = 1 @@ -35,7 +33,7 @@ icon_state = "45" mag_type = MAGAZINE ammo_type = /obj/item/ammo_casing/c45 - matter = list(DEFAULT_WALL_MATERIAL = 100) // Only cost of the magazine its self. + matter = list(DEFAULT_WALL_MATERIAL = 525) //metal costs are very roughly based around 1 .45 casing = 75 metal caliber = ".45" max_ammo = 7 multiple_sprites = 1 @@ -60,7 +58,7 @@ icon_state = "uzi45" mag_type = MAGAZINE ammo_type = /obj/item/ammo_casing/c45 - matter = list(DEFAULT_WALL_MATERIAL = 150) + matter = list(DEFAULT_WALL_MATERIAL = 1200) caliber = ".45" max_ammo = 16 multiple_sprites = 1 @@ -73,7 +71,7 @@ icon_state = "tommy-mag" mag_type = MAGAZINE ammo_type = /obj/item/ammo_casing/c45 - matter = list(DEFAULT_WALL_MATERIAL = 200) + matter = list(DEFAULT_WALL_MATERIAL = 1500) caliber = ".45" max_ammo = 20 @@ -86,7 +84,7 @@ w_class = 3 // Bulky ammo doesn't fit in your pockets! mag_type = MAGAZINE ammo_type = /obj/item/ammo_casing/c45 - matter = list(DEFAULT_WALL_MATERIAL = 500) + matter = list(DEFAULT_WALL_MATERIAL = 3750) caliber = ".45" max_ammo = 50 @@ -122,7 +120,7 @@ icon_state = "9x19p" origin_tech = list(TECH_COMBAT = 2) mag_type = MAGAZINE - matter = list(DEFAULT_WALL_MATERIAL = 100) + matter = list(DEFAULT_WALL_MATERIAL = 480) caliber = "9mm" ammo_type = /obj/item/ammo_casing/c9mm max_ammo = 8 @@ -138,12 +136,16 @@ name = "magazine (9mm rubber)" ammo_type = /obj/item/ammo_casing/c9mmr +/obj/item/ammo_magazine/mc9mm/practice + name = "magazine (9mm practice)" + ammo_type = /obj/item/ammo_casing/c9mmp + /obj/item/ammo_magazine/mc9mmt name = "top mounted magazine (9mm)" icon_state = "9mmt" mag_type = MAGAZINE ammo_type = /obj/item/ammo_casing/c9mm - matter = list(DEFAULT_WALL_MATERIAL = 250) + matter = list(DEFAULT_WALL_MATERIAL = 1200) caliber = "9mm" max_ammo = 20 multiple_sprites = 1 @@ -181,7 +183,7 @@ name = "ammo clip (.45 flash)" ammo_type = /obj/item/ammo_casing/c9mmf -/obj/item/ammo_magazine/c9mm // Exclusively for Prototype SMG and should probably be removed because why does it require DIAMONDS to make bullets? +/obj/item/ammo_magazine/c9mm // Made by RnD for Prototype SMG and should probably be removed because why does it require DIAMONDS to make bullets? name = "ammunition Box (9mm)" icon_state = "9mm" origin_tech = list(TECH_COMBAT = 2) @@ -200,7 +202,7 @@ icon_state = "p90" mag_type = MAGAZINE ammo_type = /obj/item/ammo_casing/c5mm - matter = list(DEFAULT_WALL_MATERIAL = 500) + matter = list(DEFAULT_WALL_MATERIAL = 3000) caliber = "5mm" max_ammo = 50 multiple_sprites = 1 @@ -210,7 +212,7 @@ icon_state = "fiveseven" mag_type = MAGAZINE ammo_type = /obj/item/ammo_casing/c5mm - matter = list(DEFAULT_WALL_MATERIAL = 200) + matter = list(DEFAULT_WALL_MATERIAL = 1200) caliber = "5mm" max_ammo = 20 //multiple_sprites = 1 @@ -233,7 +235,7 @@ origin_tech = list(TECH_COMBAT = 2) mag_type = MAGAZINE caliber = "10mm" - matter = list(DEFAULT_WALL_MATERIAL = 250) + matter = list(DEFAULT_WALL_MATERIAL = 1500) ammo_type = /obj/item/ammo_casing/a10mm max_ammo = 20 multiple_sprites = 1 @@ -259,7 +261,7 @@ origin_tech = list(TECH_COMBAT = 2) mag_type = MAGAZINE caliber = "a556" - matter = list(DEFAULT_WALL_MATERIAL = 150) + matter = list(DEFAULT_WALL_MATERIAL = 1800) ammo_type = /obj/item/ammo_casing/a556 max_ammo = 10 multiple_sprites = 1 @@ -281,7 +283,7 @@ origin_tech = list(TECH_COMBAT = 2) mag_type = MAGAZINE caliber = "a556" - matter = list(DEFAULT_WALL_MATERIAL = 300) + matter = list(DEFAULT_WALL_MATERIAL = 3600) ammo_type = /obj/item/ammo_casing/a556 max_ammo = 20 multiple_sprites = 1 @@ -302,17 +304,16 @@ icon_state = "clip_rifle" caliber = "a556" ammo_type = /obj/item/ammo_casing/a556 - matter = list(DEFAULT_WALL_MATERIAL = 450) - // metal costs are very roughly based around one 10mm casing = 180 metal + matter = list(DEFAULT_WALL_MATERIAL = 450) // metal costs are very roughly based around one 10mm casing = 180 metal max_ammo = 5 multiple_sprites = 1 /obj/item/ammo_magazine/clip/a556/ap - name = "rifle clip (7.62mm armor-piercing)" + name = "rifle clip (5.56mm armor-piercing)" ammo_type = /obj/item/ammo_casing/a556/ap /obj/item/ammo_magazine/clip/a556/practice - name = "rifle clip (7.62mm practice)" + name = "rifle clip (5.56mm practice)" ammo_type = /obj/item/ammo_casing/a556 ///////// .50 AE ///////// @@ -323,7 +324,7 @@ origin_tech = list(TECH_COMBAT = 2) mag_type = MAGAZINE caliber = ".50" - matter = list(DEFAULT_WALL_MATERIAL = 150) + matter = list(DEFAULT_WALL_MATERIAL = 1260) ammo_type = /obj/item/ammo_casing/a50 max_ammo = 7 multiple_sprites = 1 @@ -420,7 +421,7 @@ icon_state = "12g" mag_type = MAGAZINE caliber = "shotgun" - matter = list(DEFAULT_WALL_MATERIAL = 200) + matter = list(DEFAULT_WALL_MATERIAL = 2200) ammo_type = /obj/item/ammo_casing/shotgun max_ammo = 24 multiple_sprites = 1