diff --git a/code/datums/components/crafting/guncrafting.dm b/code/datums/components/crafting/guncrafting.dm index ec2481366fe..8ff1fac16f4 100644 --- a/code/datums/components/crafting/guncrafting.dm +++ b/code/datums/components/crafting/guncrafting.dm @@ -14,3 +14,49 @@ custom_materials = list(/datum/material/wood = MINERAL_MATERIAL_AMOUNT * 6) icon = 'icons/obj/improvised.dmi' icon_state = "riflestock" + +///These gun kits are printed from the security protolathe to then be used in making new weapons + +// GUN PART KIT // + +/obj/item/weaponcrafting/gunkit/ + name = "generic gun parts kit" + desc = "It's an empty gun parts container! Why do you have this?" + icon = 'icons/obj/improvised.dmi' + icon_state = "kitsuitcase" + +/obj/item/weaponcrafting/gunkit/nuclear + name = "advanced energy gun parts kit" + desc = "A suitcase containing the necessary gun parts to tranform a standard energy gun into an advaned energy gun." + +/obj/item/weaponcrafting/gunkit/tesla + name = "tesla revolver parts kit" + desc = "A suitcase containing the necessary gun parts to construct a tesla revolver around a stabilized flux anomaly. Handle with care." + +/obj/item/weaponcrafting/gunkit/xray + name = "x-ray laser gun parts kit" + desc = "A suitcase containing the necessary gun parts to turn a laser gun into a x-ray laser gun. Do not point most parts directly towards face." + +/obj/item/weaponcrafting/gunkit/ion + name = "generic gun parts kit" + desc = "A suitcase containing the necessary gun parts to transform a standard laser gun into a ion carbine." + +/obj/item/weaponcrafting/gunkit/temperature + name = "temperature gun parts kit" + desc = "A suitcase containing the necessary gun parts to tranform a standard energy gun into a temperature gun. Fantastic at birthday parties and killing indigenious populations of lizardpeople." + +/obj/item/weaponcrafting/gunkit/beam_rifle + name = "particle acceleration rifle part kit" + desc = "The coup de grace of guncrafting. This suitcase contains the highly experimental rig for a particle acceleration rifle. Requires an energy gun, a stabilized flux anomaly and a stabilized gravity anomaly." + +/obj/item/weaponcrafting/gunkit/decloner + name = "decloner part kit" + desc = "An uttery baffling array of gun parts and technology that somehow turns a laser gun into a decloner. Haircut not included." + +/obj/item/weaponcrafting/gunkit/ebow + name = "energy crossbow part kit" + desc = "Highly illegal weapons refurbishment kit that allows you to turn the standard proto-kinetic accelerator into a near-duplicate energy crossbow. Almost like the real thing!" + +/obj/item/weaponcrafting/gunkit/hellgun + name = "hellfire laser gun degradation kit" + desc = "Take a perfectly functioning laser gun. Butcher the inside of the gun so it runs hot and mean. You now have a hellfire laser. You monster." diff --git a/code/datums/components/crafting/recipes.dm b/code/datums/components/crafting/recipes.dm index d6b6f354842..8b104de0144 100644 --- a/code/datums/components/crafting/recipes.dm +++ b/code/datums/components/crafting/recipes.dm @@ -142,6 +142,142 @@ category = CAT_WEAPONRY subcategory = CAT_WEAPON +/datum/crafting_recipe/advancedegun + name = "Advanced Energy Gun" + tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER) + result = /obj/item/gun/energy/e_gun/nuclear + reqs = list(/obj/item/gun/energy/e_gun = 1, + /obj/item/stack/cable_coil = 5, + /obj/item/weaponcrafting/gunkit/nuclear = 1) + time = 200 + category = CAT_WEAPONRY + subcategory = CAT_WEAPON + +/datum/crafting_recipe/advancedegun/New() + ..() + blacklist += subtypesof(/obj/item/gun/energy/e_gun) + +/datum/crafting_recipe/tempgun + name = "Temperature Gun" + tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER) + result = /obj/item/gun/energy/temperature + reqs = list(/obj/item/gun/energy/e_gun = 1, + /obj/item/stack/cable_coil = 5, + /obj/item/weaponcrafting/gunkit/temperature = 1) + time = 200 + category = CAT_WEAPONRY + subcategory = CAT_WEAPON + +/datum/crafting_recipe/tempgun/New() + ..() + blacklist += subtypesof(/obj/item/gun/energy/e_gun) + +/datum/crafting_recipe/beam_rifle + name = "Particle Acceleration Rifle" + tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER) + result = /obj/item/gun/energy/beam_rifle + reqs = list(/obj/item/gun/energy/e_gun = 1, + /obj/item/assembly/signaler/anomaly/flux = 1, + /obj/item/assembly/signaler/anomaly/grav = 1, + /obj/item/stack/cable_coil = 5, + /obj/item/weaponcrafting/gunkit/beam_rifle = 1) + time = 200 + category = CAT_WEAPONRY + subcategory = CAT_WEAPON + +/datum/crafting_recipe/beam_rifle/New() + ..() + blacklist += subtypesof(/obj/item/gun/energy/e_gun) + +/datum/crafting_recipe/ebow + name = "Energy Crossbow" + tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER) + result = /obj/item/gun/energy/kinetic_accelerator/crossbow/large + reqs = list(/obj/item/gun/energy/kinetic_accelerator = 1, + /obj/item/stack/cable_coil = 5, + /obj/item/weaponcrafting/gunkit/ebow = 1, + /datum/reagent/uranium/radium = 15) + time = 200 + category = CAT_WEAPONRY + subcategory = CAT_WEAPON + +/datum/crafting_recipe/ebow/New() + ..() + blacklist += subtypesof(/obj/item/gun/energy/kinetic_accelerator) + +/datum/crafting_recipe/xraylaser + name = "X-ray Laser Gun" + tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER) + result = /obj/item/gun/energy/xray + reqs = list(/obj/item/gun/energy/laser = 1, + /obj/item/stack/cable_coil = 5, + /obj/item/weaponcrafting/gunkit/xray = 1) + time = 200 + category = CAT_WEAPONRY + subcategory = CAT_WEAPON + +/datum/crafting_recipe/xraylaser/New() + ..() + blacklist += subtypesof(/obj/item/gun/energy/laser) + +/datum/crafting_recipe/hellgun + name = "Hellfire Laser Gun" + tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER) + result = /obj/item/gun/energy/laser/hellgun + reqs = list(/obj/item/gun/energy/laser = 1, + /obj/item/stack/cable_coil = 5, + /obj/item/weaponcrafting/gunkit/hellgun = 1) + time = 200 + category = CAT_WEAPONRY + subcategory = CAT_WEAPON + +/datum/crafting_recipe/hellgun/New() + ..() + blacklist += subtypesof(/obj/item/gun/energy/laser) + +/datum/crafting_recipe/ioncarbine + name = "Ion Carbine" + tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER) + result = /obj/item/gun/energy/ionrifle/carbine + reqs = list(/obj/item/gun/energy/laser = 1, + /obj/item/stack/cable_coil = 5, + /obj/item/weaponcrafting/gunkit/ion = 1) + time = 200 + category = CAT_WEAPONRY + subcategory = CAT_WEAPON + +/datum/crafting_recipe/ioncarbine/New() + ..() + blacklist += subtypesof(/obj/item/gun/energy/laser) + +/datum/crafting_recipe/decloner + name = "Biological Demolecularisor" + tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER) + result = /obj/item/gun/energy/decloner + reqs = list(/obj/item/gun/energy/laser = 1, + /obj/item/stack/cable_coil = 5, + /obj/item/weaponcrafting/gunkit/decloner = 1, + /datum/reagent/baldium = 30, + /datum/reagent/toxin/mutagen = 40) + time = 200 + category = CAT_WEAPONRY + subcategory = CAT_WEAPON + +/datum/crafting_recipe/decloner/New() + ..() + blacklist += subtypesof(/obj/item/gun/energy/laser) + +/datum/crafting_recipe/teslarevolver + name = "Tesla Revolver" + tools = list(TOOL_SCREWDRIVER, TOOL_WIRECUTTER) + result = /obj/item/gun/energy/tesla_revolver + reqs = list(/obj/item/assembly/signaler/anomaly/flux = 1, + /obj/item/stack/cable_coil = 5, + /obj/item/weaponcrafting/gunkit/tesla = 1) + time = 200 + category = CAT_WEAPONRY + subcategory = CAT_WEAPON + /datum/crafting_recipe/ed209 name = "ED209" result = /mob/living/simple_animal/bot/secbot/ed209 diff --git a/code/modules/cargo/goodies.dm b/code/modules/cargo/goodies.dm index 99597499c00..b33a5e95d01 100644 --- a/code/modules/cargo/goodies.dm +++ b/code/modules/cargo/goodies.dm @@ -53,11 +53,11 @@ contains = list(/obj/item/gun/energy/e_gun) /datum/supply_pack/goody/hell_single - name = "Hellgun Single-Pack" - desc = "Contains one hellgun, an old pattern of laser gun infamous for its ability to horribly disfigure targets with burns. Technically violates the Space Geneva Convention when used on humanoids." - cost = PAYCHECK_HARD * 18 + name = "Hellgun Kit Single-Pack" + desc = "Contains one hellgun degradation kit, an old pattern of laser gun infamous for its ability to horribly disfigure targets with burns. Technically violates the Space Geneva Convention when used on humanoids." + cost = PAYCHECK_MEDIUM * 2 access_view = ACCESS_ARMORY - contains = list(/obj/item/gun/energy/laser/hellgun) + contains = list(/obj/item/weaponcrafting/gunkit/hellgun) /datum/supply_pack/goody/wt550_single name = "WT-550 Auto Rifle Single-Pack" diff --git a/code/modules/projectiles/guns/energy/energy_gun.dm b/code/modules/projectiles/guns/energy/energy_gun.dm index 699353613f7..e3263faa5ad 100644 --- a/code/modules/projectiles/guns/energy/energy_gun.dm +++ b/code/modules/projectiles/guns/energy/energy_gun.dm @@ -97,7 +97,6 @@ icon_state = "nucgun" inhand_icon_state = "nucgun" charge_delay = 10 - pin = null can_charge = FALSE ammo_x_offset = 1 ammo_type = list(/obj/item/ammo_casing/energy/laser, /obj/item/ammo_casing/energy/disabler) diff --git a/code/modules/projectiles/guns/energy/laser.dm b/code/modules/projectiles/guns/energy/laser.dm index 1dfac20396e..cf7cd48a6d1 100644 --- a/code/modules/projectiles/guns/energy/laser.dm +++ b/code/modules/projectiles/guns/energy/laser.dm @@ -117,7 +117,6 @@ inhand_icon_state = null w_class = WEIGHT_CLASS_BULKY ammo_type = list(/obj/item/ammo_casing/energy/xray) - pin = null ammo_x_offset = 3 ////////Laser Tag//////////////////// diff --git a/code/modules/projectiles/guns/energy/special.dm b/code/modules/projectiles/guns/energy/special.dm index 7979dd46872..11ca54e4c28 100644 --- a/code/modules/projectiles/guns/energy/special.dm +++ b/code/modules/projectiles/guns/energy/special.dm @@ -22,7 +22,6 @@ icon_state = "ioncarbine" w_class = WEIGHT_CLASS_NORMAL slot_flags = ITEM_SLOT_BELT - pin = null flight_x_offset = 18 flight_y_offset = 11 @@ -31,7 +30,6 @@ desc = "A gun that discharges high amounts of controlled radiation to slowly break a target into component elements." icon_state = "decloner" ammo_type = list(/obj/item/ammo_casing/energy/declone) - pin = null ammo_x_offset = 1 /obj/item/gun/energy/decloner/update_overlays() @@ -112,11 +110,10 @@ name = "energy crossbow" desc = "A reverse engineered weapon using syndicate technology." icon_state = "crossbowlarge" - w_class = WEIGHT_CLASS_NORMAL + w_class = WEIGHT_CLASS_BULKY custom_materials = list(/datum/material/iron=4000) suppressed = null ammo_type = list(/obj/item/ammo_casing/energy/bolt/large) - pin = null /obj/item/gun/energy/plasmacutter diff --git a/code/modules/projectiles/guns/energy/stun.dm b/code/modules/projectiles/guns/energy/stun.dm index 8859611240c..4eea745ba71 100644 --- a/code/modules/projectiles/guns/energy/stun.dm +++ b/code/modules/projectiles/guns/energy/stun.dm @@ -13,7 +13,6 @@ inhand_icon_state = "tesla" ammo_type = list(/obj/item/ammo_casing/energy/tesla_revolver) can_flashlight = FALSE - pin = null shaded_charge = 1 /obj/item/gun/energy/e_gun/advtaser diff --git a/code/modules/projectiles/guns/misc/beam_rifle.dm b/code/modules/projectiles/guns/misc/beam_rifle.dm index db1f3a1325c..9d925540481 100644 --- a/code/modules/projectiles/guns/misc/beam_rifle.dm +++ b/code/modules/projectiles/guns/misc/beam_rifle.dm @@ -31,7 +31,6 @@ ammo_type = list(/obj/item/ammo_casing/energy/beam_rifle/hitscan) cell_type = /obj/item/stock_parts/cell/beam_rifle canMouseDown = TRUE - pin = null var/aiming = FALSE var/aiming_time = 12 var/aiming_time_fire_threshold = 5 diff --git a/code/modules/research/designs/weapon_designs.dm b/code/modules/research/designs/weapon_designs.dm index f5a0801a9b0..6fe3094f7b7 100644 --- a/code/modules/research/designs/weapon_designs.dm +++ b/code/modules/research/designs/weapon_designs.dm @@ -93,22 +93,22 @@ departmental_flags = DEPARTMENTAL_FLAG_SECURITY /datum/design/stunrevolver - name = "Tesla Revolver" - desc = "A high-tech revolver that fires internal, reusable shock cartridges in a revolving cylinder. The cartridges can be recharged using conventional rechargers." + name = "Tesla Revolver Part Kit" + desc = "The kit for a high-tech revolver that fires internal, reusable shock cartridges in a revolving cylinder. The cartridges can be recharged using conventional rechargers." id = "stunrevolver" build_type = PROTOLATHE materials = list(/datum/material/iron = 10000, /datum/material/glass = 10000, /datum/material/silver = 10000) - build_path = /obj/item/gun/energy/tesla_revolver + build_path = /obj/item/weaponcrafting/gunkit/tesla category = list("Weapons") departmental_flags = DEPARTMENTAL_FLAG_SECURITY /datum/design/nuclear_gun - name = "Advanced Energy Gun" - desc = "An energy gun with an experimental miniaturized reactor." + name = "Advanced Energy Gun Part Kit" + desc = "The kit for an energy gun with an experimental miniaturized reactor." id = "nuclear_gun" build_type = PROTOLATHE materials = list(/datum/material/iron = 10000, /datum/material/glass = 2000, /datum/material/uranium = 3000, /datum/material/titanium = 1000) - build_path = /obj/item/gun/energy/e_gun/nuclear + build_path = /obj/item/weaponcrafting/gunkit/nuclear category = list("Weapons") departmental_flags = DEPARTMENTAL_FLAG_SECURITY @@ -123,23 +123,22 @@ departmental_flags = DEPARTMENTAL_FLAG_SECURITY /datum/design/beamrifle - name = "Beam Marksman Rifle" - desc = "A powerful long ranged anti-material rifle that fires charged particle beams to obliterate targets." + name = "Beam Marksman Rifle Part Kit" + desc = "The gunkit for a powerful long ranged anti-material rifle that fires charged particle beams to obliterate targets." id = "beamrifle" build_type = PROTOLATHE materials = list(/datum/material/iron = 10000, /datum/material/glass = 5000, /datum/material/diamond = 5000, /datum/material/uranium = 8000, /datum/material/silver = 4500, /datum/material/gold = 5000) - build_path = /obj/item/gun/energy/beam_rifle + build_path = /obj/item/weaponcrafting/gunkit/beam_rifle category = list("Weapons") departmental_flags = DEPARTMENTAL_FLAG_SECURITY /datum/design/decloner - name = "Decloner" + name = "Decloner Part Kit" desc = "Your opponent will bubble into a messy pile of goop." id = "decloner" build_type = PROTOLATHE materials = list(/datum/material/gold = 5000,/datum/material/uranium = 10000) - reagents_list = list(/datum/reagent/toxin/mutagen = 40) - build_path = /obj/item/gun/energy/decloner + build_path = /obj/item/weaponcrafting/gunkit/decloner category = list("Weapons") departmental_flags = DEPARTMENTAL_FLAG_SECURITY @@ -154,12 +153,12 @@ departmental_flags = DEPARTMENTAL_FLAG_MEDICAL //uwu /datum/design/temp_gun - name = "Temperature Gun" + name = "Temperature Gun Part Kit" desc = "A gun that shoots temperature bullet energythings to change temperature."//Change it if you want id = "temp_gun" build_type = PROTOLATHE materials = list(/datum/material/iron = 5000, /datum/material/glass = 500, /datum/material/silver = 3000) - build_path = /obj/item/gun/energy/temperature + build_path = /obj/item/weaponcrafting/gunkit/temperature category = list("Weapons") departmental_flags = DEPARTMENTAL_FLAG_SECURITY @@ -214,22 +213,22 @@ departmental_flags = DEPARTMENTAL_FLAG_SECURITY | DEPARTMENTAL_FLAG_MEDICAL /datum/design/xray - name = "X-ray Laser Gun" + name = "X-ray Laser Gun Part Kit" desc = "Not quite as menacing as it sounds" id = "xray_laser" build_type = PROTOLATHE materials = list(/datum/material/gold = 5000, /datum/material/uranium = 4000, /datum/material/iron = 5000, /datum/material/titanium = 2000, /datum/material/bluespace = 2000) - build_path = /obj/item/gun/energy/xray + build_path = /obj/item/weaponcrafting/gunkit/xray category = list("Weapons") departmental_flags = DEPARTMENTAL_FLAG_SECURITY /datum/design/ioncarbine - name = "Ion Carbine" + name = "Ion Carbine Part Kit" desc = "How to dismantle a cyborg : The gun." id = "ioncarbine" build_type = PROTOLATHE materials = list(/datum/material/silver = 6000, /datum/material/iron = 8000, /datum/material/uranium = 2000) - build_path = /obj/item/gun/energy/ionrifle/carbine + build_path = /obj/item/weaponcrafting/gunkit/ion category = list("Weapons") departmental_flags = DEPARTMENTAL_FLAG_SECURITY @@ -312,12 +311,12 @@ departmental_flags = DEPARTMENTAL_FLAG_SCIENCE /datum/design/largecrossbow - name = "Energy Crossbow" - desc = "A reverse-engineered energy crossbow favored by syndicate infiltration teams and carp hunters." + name = "Energy Crossbow Part Kit" + desc = "A kit to reverse-engineer a proto-kinetic acceleratr into an energy crossbow, favored by syndicate infiltration teams and carp hunters." id = "largecrossbow" build_type = PROTOLATHE materials = list(/datum/material/iron = 5000, /datum/material/glass = 1500, /datum/material/uranium = 1500, /datum/material/silver = 1500) - build_path = /obj/item/gun/energy/kinetic_accelerator/crossbow/large + build_path = /obj/item/weaponcrafting/gunkit/ebow category = list("Weapons") departmental_flags = DEPARTMENTAL_FLAG_SECURITY diff --git a/icons/obj/improvised.dmi b/icons/obj/improvised.dmi index a6dfa330e8c..b2ef58f7088 100644 Binary files a/icons/obj/improvised.dmi and b/icons/obj/improvised.dmi differ