From eb3b6758a9f0095490c4c44fd3fbf665bba5a32e Mon Sep 17 00:00:00 2001 From: Qwertytoforty <52090703+Qwertytoforty@users.noreply.github.com> Date: Wed, 21 Jun 2023 17:45:52 -0400 Subject: [PATCH] Universal self assembling gun part kit (#21292) * Universal self assembling gun part kit * Update code/modules/crafting/guncrafting.dm Co-authored-by: GDN <96800819+GDNgit@users.noreply.github.com> * Update code/modules/crafting/guncrafting.dm Co-authored-by: GDN <96800819+GDNgit@users.noreply.github.com> * universally avalible --------- Co-authored-by: GDN <96800819+GDNgit@users.noreply.github.com> --- code/datums/uplink_items/uplink_general.dm | 7 +++++ code/datums/uplink_items/uplink_traitor.dm | 1 + code/modules/crafting/guncrafting.dm | 35 +++++++++++++++++++++ icons/obj/improvised.dmi | Bin 776 -> 881 bytes 4 files changed, 43 insertions(+) diff --git a/code/datums/uplink_items/uplink_general.dm b/code/datums/uplink_items/uplink_general.dm index d52fa14b090..f60a9aca9e4 100644 --- a/code/datums/uplink_items/uplink_general.dm +++ b/code/datums/uplink_items/uplink_general.dm @@ -208,6 +208,13 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) item = /obj/item/twohanded/chainsaw cost = 13 +/datum/uplink_item/dangerous/universal_gun_kit + name = "Universal Self Assembling Gun Kit" + desc = "A universal gun kit, that can be combined with any weapon kit to make a functioning RND gun of your own. Uses built in allen keys to self assemble, just combine the kits by hitting them together." + reference = "IKEA" + item = /obj/item/weaponcrafting/gunkit/universal_gun_kit + cost = 8 + // Ammunition diff --git a/code/datums/uplink_items/uplink_traitor.dm b/code/datums/uplink_items/uplink_traitor.dm index 4fb5d533b52..47fccd6761a 100644 --- a/code/datums/uplink_items/uplink_traitor.dm +++ b/code/datums/uplink_items/uplink_traitor.dm @@ -214,6 +214,7 @@ job = list("Roboticist") surplus = 0 + //Librarian /datum/uplink_item/jobspecific/etwenty name = "The E20" diff --git a/code/modules/crafting/guncrafting.dm b/code/modules/crafting/guncrafting.dm index 269bcffd2a6..4101471f51d 100644 --- a/code/modules/crafting/guncrafting.dm +++ b/code/modules/crafting/guncrafting.dm @@ -24,66 +24,101 @@ desc = "It's an empty gun parts container! Why do you have this?" icon = 'icons/obj/improvised.dmi' icon_state = "kitsuitcase" + ///What gun do we produce? Used by the universal gunkit. + var/outcome /obj/item/weaponcrafting/gunkit/nuclear name = "\improper advanced energy gun parts kit" desc = "A suitcase containing the necessary gun parts to tranform a standard energy gun into an advaned energy gun." origin_tech = "combat=4;magnets=4;powerstorage=4" + outcome = /obj/item/gun/energy/gun/nuclear /obj/item/weaponcrafting/gunkit/tesla name = "\improper arc revolver parts kit" desc = "A suitcase containing the necessary gun parts to construct a arc revolver around a laser rifle. Handle with care." origin_tech = "combat=5;materials=5;powerstorage=5" + outcome = /obj/item/gun/energy/arc_revolver /obj/item/weaponcrafting/gunkit/xray name = "\improper 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." origin_tech = "combat=6;materials=4;magnets=4;syndicate=1" + outcome = /obj/item/gun/energy/xray /obj/item/weaponcrafting/gunkit/ion name = "\improper ion carbine parts kit" desc = "A suitcase containing the necessary gun parts to transform a standard energy gun into a ion carbine." origin_tech = "combat=4;magnets=4" + outcome = /obj/item/gun/energy/ionrifle/carbine /obj/item/weaponcrafting/gunkit/temperature name = "\improper 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 Ash Walkers." origin_tech = "combat=4;materials=4;powerstorage=3;magnets=2" + outcome = /obj/item/gun/energy/temperature /obj/item/weaponcrafting/gunkit/decloner name = "\improper decloner parts kit" desc = "An uttery baffling array of gun parts and technology that somehow turns an energy gun into a decloner. Haircut not included." origin_tech = "combat=4;materials=4;biotech=5;plasmatech=6" + outcome = /obj/item/gun/energy/decloner /obj/item/weaponcrafting/gunkit/ebow name = "\improper energy crossbow parts kit" desc = "Highly illegal weapons refurbishment kit that allows you to turn a laser gun into a near-duplicate energy crossbow. Almost like the real thing!" origin_tech = "combat=4;magnets=4;syndicate=2" + outcome = /obj/item/gun/energy/kinetic_accelerator/crossbow/large /obj/item/weaponcrafting/gunkit/immolator name = "\improper immolator laser gun parts kit" desc = "Take a perfectly functioning laser gun. Butcher the inside of the gun so it runs hot and mean. You now have a immolator laser. You monster." origin_tech = "combat=4;magnets=4;powerstorage=3" + outcome = /obj/item/gun/energy/immolator /obj/item/weaponcrafting/gunkit/accelerator name = "\improper accelerator laser cannon parts kit" desc = "A suitcase containing the necessary gun parts to transform a standard laser gun into an accelerator laser cannon." origin_tech = "combat=4;magnets=4;powerstorage=3" + outcome = /obj/item/gun/energy/lasercannon /obj/item/weaponcrafting/gunkit/lwap name = "\improper lwap laser sniper parts kit" desc = "A suitcase containing the necessary gun parts to transform an laser gun into an advanced piercing laser sniper. Now with wall hacks!" origin_tech = "combat=6;magnets=6;powerstorage=4" + outcome = /obj/item/gun/energy/lwap /obj/item/weaponcrafting/gunkit/plasma name = "\improper plasma pistol parts kit" desc = "A suitcase containing the necessary gun parts to transform a standard laser gun into a plasma pistol. Wort, wort, wort!" origin_tech = "combat=4;magnets=4;powerstorage=3" + outcome = /obj/item/gun/energy/plasma_pistol /obj/item/weaponcrafting/gunkit/u_ionsilencer name = "\improper u-ion silencer parts kit" desc = "A suitcase containing the necessary gun parts to transform a standard disabler into a silenced and lethal disabling weapon. Look officer, he has no wounds from me!" origin_tech = "combat=6;magnets=6;syndicate=2" + outcome = /obj/item/gun/energy/disabler/silencer + +/obj/item/weaponcrafting/gunkit/universal_gun_kit + name = "\improper universal self assembling gun parts kit" + desc = "A suitcase containing the necessary gun parts to build a full gun, when combined with a gun kit. Use it directly on a gunkit to rapidly assemble it." + icon_state = "syndicase" + +/obj/item/weaponcrafting/gunkit/universal_gun_kit/afterattack(obj/item/weaponcrafting/gunkit/gunkit_to_use, mob/user, flag) + if(!istype(gunkit_to_use)) + return + if(!gunkit_to_use.outcome) + to_chat(user, "That gunkit can not be used to craft a weapon.") + return + playsound(user, 'sound/items/drill_use.ogg', 50, TRUE, SILENCED_SOUND_EXTRARANGE) + if(!do_after(user, 5 SECONDS, target = user)) + return + playsound(user, 'sound/items/drill_use.ogg', 50, TRUE, SILENCED_SOUND_EXTRARANGE) + var/obj/item/gun_produced = new gunkit_to_use.outcome + user.unEquip(src) + user.put_in_hands(gun_produced) + qdel(gunkit_to_use) + qdel(src) // CRAFTING // diff --git a/icons/obj/improvised.dmi b/icons/obj/improvised.dmi index 83d4d57a6348618e594ceac136e09f7d3316fe7a..2bee1892cd7358cbf0063291f50df83b7ae0ab09 100644 GIT binary patch delta 699 zcmV;s0!00Y2Jr@v7Y<+u0{{R3)kcR30002MktMHx0RI3O7$Q|!V|M`ola!l~2L~-N zJZ&l)g8%>k0d!JMQvg8b*k%9#0HAtQSad{Xb7OL8aCB*JZU6vyoR!eQ3c@fD1kiKx z6`{S0tzNxIOX
Lrk{K(wazitN8Z@3my&LX5bx$Db=~{`aw09UOpfa2Cq))xZ6wd
zM9VIJl|wCs1DqUhg;+DBSX>wF=RyjLky5Xu7^A+ymcI(g1)f$<4EO3UU1xO!1DIy#
zA&v_W2b14BBh!j(G(pzV%Uk>