From ed7782ad4c2a7d9ef7059cd10a70809c3fd61d47 Mon Sep 17 00:00:00 2001 From: DGamerL <108773801+DGamerL@users.noreply.github.com> Date: Wed, 26 Jun 2024 22:38:53 +0200 Subject: [PATCH] Adds the oneuse autosurgeon (#25978) --- code/datums/uplink_items/uplink_general.dm | 6 +-- code/datums/uplink_items/uplink_traitor.dm | 2 +- .../effects/spawners/random_spawners.dm | 2 +- .../items/weapons/storage/uplink_kits.dm | 8 ++-- code/modules/surgery/organs/autosurgeon.dm | 40 +++++++++---------- 5 files changed, 27 insertions(+), 31 deletions(-) diff --git a/code/datums/uplink_items/uplink_general.dm b/code/datums/uplink_items/uplink_general.dm index a3d4870d291..68d4ef1c05e 100644 --- a/code/datums/uplink_items/uplink_general.dm +++ b/code/datums/uplink_items/uplink_general.dm @@ -884,7 +884,7 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) on use, and will be quite visual as you are emaging the object. \ Will not show on unupgraded body scanners. Incompatible with the Qani-Laaca Sensory Computer." reference = "HKR" - item = /obj/item/autosurgeon/organ/syndicate/hackerman_deck + item = /obj/item/autosurgeon/organ/syndicate/oneuse/hackerman_deck cost = 30 // Probably slightly less useful than an emag with heat / cooldown, but I am not going to make it cheaper or everyone picks it over emag /datum/uplink_item/cyber_implants/razorwire @@ -893,7 +893,7 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) Impossibly thin and flawlessly sharp, it should slice through organic materials with no trouble; \ even from a few steps away. However, results against anything more durable will heavily vary." reference = "RZR" - item = /obj/item/autosurgeon/organ/syndicate/razorwire + item = /obj/item/autosurgeon/organ/syndicate/oneuse/razorwire cost = 20 /datum/uplink_item/cyber_implants/scope_eyes @@ -902,7 +902,7 @@ GLOBAL_LIST_INIT(uplink_items, subtypesof(/datum/uplink_item)) Many users find it disorienting, and find it hard to interact with things near them when active. \ This pair has been hardened for special operations personnel." reference = "KOE" - item = /obj/item/autosurgeon/organ/syndicate/scope_eyes + item = /obj/item/autosurgeon/organ/syndicate/oneuse/scope_eyes cost = 20 diff --git a/code/datums/uplink_items/uplink_traitor.dm b/code/datums/uplink_items/uplink_traitor.dm index 9e821b15e31..0ddf13c8cc5 100644 --- a/code/datums/uplink_items/uplink_traitor.dm +++ b/code/datums/uplink_items/uplink_traitor.dm @@ -567,7 +567,7 @@ Overdosing will cause massive heart damage, but will allow the user to dodge bullets for a minute and attack even faster.\ Two minute normal uptime, 5 minute cooldown, unlimited uses. Incompatible with the Binyat Wireless Hacking System." reference = "QLSC" - item = /obj/item/autosurgeon/organ/syndicate/sensory_enhancer + item = /obj/item/autosurgeon/organ/syndicate/oneuse/sensory_enhancer cost = 40 excludefrom = list(UPLINK_TYPE_NUCLEAR, UPLINK_TYPE_SST) //No, nukies do not get to dodge bullets. diff --git a/code/game/objects/effects/spawners/random_spawners.dm b/code/game/objects/effects/spawners/random_spawners.dm index c911ea30120..00c4c943487 100644 --- a/code/game/objects/effects/spawners/random_spawners.dm +++ b/code/game/objects/effects/spawners/random_spawners.dm @@ -328,7 +328,7 @@ spawn_inside = /obj/structure/closet/secure_closet/syndicate/depot/armory // Combat orientated items that could give the player an advantage if an antag messes with them. result = list(/obj/item/melee/energy/sword/saber = 1, - /obj/item/autosurgeon/organ/syndicate/razorwire = 1, + /obj/item/autosurgeon/organ/syndicate/oneuse/razorwire = 1, /obj/item/chameleon = 1, /obj/item/CQC_manual = 1, /obj/item/reagent_containers/hypospray/autoinjector/stimulants = 1, diff --git a/code/game/objects/items/weapons/storage/uplink_kits.dm b/code/game/objects/items/weapons/storage/uplink_kits.dm index 34ff2ca5d7f..490c4213713 100644 --- a/code/game/objects/items/weapons/storage/uplink_kits.dm +++ b/code/game/objects/items/weapons/storage/uplink_kits.dm @@ -88,7 +88,7 @@ /obj/item/pinpointer/advpinpointer, // 4TC /obj/item/rcd/preloaded, // 0TC /obj/item/storage/box/syndie_kit/space, // 4TC - /obj/item/autosurgeon/organ/syndicate/meson_eyes, // 0TC + /obj/item/autosurgeon/organ/syndicate/oneuse/meson_eyes, // 0TC /obj/item/encryptionkey/syndicate) // 2TC /// 185TC @@ -130,7 +130,7 @@ desc = "A kit with everything you need to hack into and disrupt the Station, AI, its cyborgs and the Security team. HACK THE PLANET!" items = list( /obj/item/melee/energy/sword/saber/blue, // 40TC - /obj/item/autosurgeon/organ/syndicate/hackerman_deck, // 30TC + /obj/item/autosurgeon/organ/syndicate/oneuse/hackerman_deck, // 30TC /obj/item/door_remote/omni/access_tuner, // 30 TC, HACK EVERYTHING /obj/item/encryptionkey/syndicate, // 10TC /obj/item/encryptionkey/binary, // 25TC @@ -202,9 +202,9 @@ /obj/item/mod/module/stealth, // ?TC /obj/item/mod/module/power_kick, // ?TC /obj/item/mod/module/sphere_transform, // ?TC - /obj/item/autosurgeon/organ/syndicate/laser_arm, // ?TC + /obj/item/autosurgeon/organ/syndicate/oneuse/laser_arm, // ?TC /obj/item/pinpointer/advpinpointer, // 20TC - /obj/item/autosurgeon/organ/syndicate/hardened_heart, // Like adrenals but no speed / healing + /obj/item/autosurgeon/organ/syndicate/oneuse/hardened_heart, // Like adrenals but no speed / healing /obj/item/storage/belt/utility/full/multitool, // 15TC /obj/item/clothing/head/collectable/slime, // 0TC priceless /obj/item/encryptionkey/syndicate) // 10TC diff --git a/code/modules/surgery/organs/autosurgeon.dm b/code/modules/surgery/organs/autosurgeon.dm index b6f30d5e1cc..8ca45f7e023 100644 --- a/code/modules/surgery/organs/autosurgeon.dm +++ b/code/modules/surgery/organs/autosurgeon.dm @@ -19,10 +19,6 @@ var/starting_organ var/obj/item/organ/internal/storedorgan -/obj/item/autosurgeon/organ/syndicate - name = "suspicious implant autosurgeon" - icon_state = "syndicate_autoimplanter" - /obj/item/autosurgeon/organ/Initialize(mapload) . = ..() if(starting_organ) @@ -83,32 +79,35 @@ desc = "[initial(desc)] Looks like it's been used up." return TRUE -/obj/item/autosurgeon/organ/syndicate/laser_arm - desc = "A single use autosurgeon that contains a combat arms-up laser augment. A screwdriver can be used to remove it, but implants can't be placed back in." +/obj/item/autosurgeon/organ/syndicate + name = "suspicious implant autosurgeon" + icon_state = "syndicate_autoimplanter" + +/obj/item/autosurgeon/organ/syndicate/oneuse uses = 1 + +/obj/item/autosurgeon/organ/syndicate/oneuse/laser_arm + desc = "A single use autosurgeon that contains a combat arms-up laser augment. A screwdriver can be used to remove it, but implants can't be placed back in." starting_organ = /obj/item/organ/internal/cyberimp/arm/gun/laser -/obj/item/autosurgeon/organ/syndicate/meson_eyes +/obj/item/autosurgeon/organ/syndicate/oneuse/meson_eyes desc = "A single use autosurgeon that contains a pair of cybernetic meson eyes. A screwdriver can be used to remove it, but implants can't be placed back in." - uses = 1 starting_organ = /obj/item/organ/internal/eyes/cybernetic/meson -/obj/item/autosurgeon/organ/syndicate/razorwire +/obj/item/autosurgeon/organ/syndicate/oneuse/razorwire desc = "A single use autosurgeon that contains a Razorwire arm implant. A screwdriver can be used to remove it, but implants can't be placed back in." - uses = 1 starting_organ = /obj/item/organ/internal/cyberimp/arm/razorwire -/obj/item/autosurgeon/organ/syndicate/razorwire/examine_more(mob/user) +/obj/item/autosurgeon/organ/syndicate/oneuse/razorwire/examine_more(mob/user) . = ..() if(storedorgan) return storedorgan.examine_more() -/obj/item/autosurgeon/organ/syndicate/hackerman_deck +/obj/item/autosurgeon/organ/syndicate/oneuse/hackerman_deck desc = "A single use autosurgeon that contains a Binyat wireless hacking system. A screwdriver can be used to remove it, but implants can't be placed back in." - uses = 1 starting_organ = /obj/item/organ/internal/cyberimp/brain/hackerman_deck -/obj/item/autosurgeon/organ/syndicate/hackerman_deck/examine_more(mob/user) +/obj/item/autosurgeon/organ/syndicate/oneuse/hackerman_deck/examine_more(mob/user) . = ..() . += "Considered Cybersun Incorporated's most recent and developed implant system focused on hacking from a range while being undetectable from normal means. \ The Binyat Wireless Hacking System (BWHS) is a stealth-built implant that gives its user a rudimentary electronic interface on whatever can be perceived. \ @@ -121,23 +120,21 @@ . += "As of modern times, the BWHS is heavily vetted under Cybersun Inc. due to its dangerous nature and rather difficult detection. \ However, this hasn't stopped the flow of these implants from reaching the black market, whether by inside or outside influences." -/obj/item/autosurgeon/organ/syndicate/sensory_enhancer +/obj/item/autosurgeon/organ/syndicate/oneuse/sensory_enhancer desc = "A single use autosurgeon that contains a Qani-Laaca sensory computer. A screwdriver can be used to remove it, but implants can't be placed back in." - uses = 1 starting_organ = /obj/item/organ/internal/cyberimp/brain/sensory_enhancer -/obj/item/autosurgeon/organ/syndicate/sensory_enhancer/examine(mob/user) +/obj/item/autosurgeon/organ/syndicate/oneuse/sensory_enhancer/examine(mob/user) . = ..() . += "Epilepsy Warning: Drug has vibrant visual effects!" -/obj/item/autosurgeon/organ/syndicate/sensory_enhancer/examine_more(mob/user) +/obj/item/autosurgeon/organ/syndicate/oneuse/sensory_enhancer/examine_more(mob/user) . = ..() if(storedorgan) return storedorgan.examine_more() -/obj/item/autosurgeon/organ/syndicate/scope_eyes +/obj/item/autosurgeon/organ/syndicate/oneuse/scope_eyes desc = "A single use autosurgeon that contains Hardened Kaleido Optics eyes. A screwdriver can be used to remove it, but implants can't be placed back in." - uses = 1 starting_organ = /obj/item/organ/internal/eyes/cybernetic/scope/hardened /obj/item/autosurgeon/organ/syndicate/thermal_eyes @@ -152,8 +149,7 @@ /obj/item/autosurgeon/organ/syndicate/reviver starting_organ = /obj/item/organ/internal/cyberimp/chest/reviver/hardened -/obj/item/autosurgeon/organ/syndicate/hardened_heart - uses = 1 +/obj/item/autosurgeon/organ/syndicate/oneuse/hardened_heart starting_organ = /obj/item/organ/internal/heart/cybernetic/upgraded/hardened #undef INFINITE