diff --git a/code/datums/uplink_item.dm b/code/datums/uplink_item.dm index aa60537828c..c6199e44a05 100644 --- a/code/datums/uplink_item.dm +++ b/code/datums/uplink_item.dm @@ -815,7 +815,7 @@ var/list/uplink_items = list() /datum/uplink_item/jobspecific/engineering/powercreeper_packet name = "Powercreep Packet" desc = "A packet that creates a dangerous mutated version of kudzu vines. The vines will repeatedly shock people and connect themselves to any cables near them, rapidly growing and spreading out of control if left unchecked." - item = /obj/item/powercreeper_packet + item = /obj/item/deployable_packet/powercreeper cost = 16 discounted_cost = 10 jobs_with_discount = list("Botanist", "Station Engineer", "Chief Engineer") @@ -1118,6 +1118,14 @@ var/list/uplink_items = list() discounted_cost = 4 jobs_with_discount = list("Assistant") +/datum/uplink_item/jobspecific/assistant/biomasspacket + name = "Biomass Packet" + desc = "A packet containing cryo-stabilized biomass tissue. Shake and throw for your very own interdimensional space barf." + item = /obj/item/deployable_packet/biomass + cost = 8 + discounted_cost = 5 + jobs_with_discount = list("Assistant", "Janitor") //There originally was a discount for mechanics too due to them being Assistant+, but it felt like a cheap joke + /datum/uplink_item/jobspecific/command category = "Command Specials" diff --git a/code/game/objects/items/deployable_packet.dm b/code/game/objects/items/deployable_packet.dm new file mode 100644 index 00000000000..df42dad1a26 --- /dev/null +++ b/code/game/objects/items/deployable_packet.dm @@ -0,0 +1,47 @@ +#define POWERCREEP_PACKET_ACTIVATION_TIME_IN_SECONDS 3 + +/obj/item/deployable_packet + desc = "" + w_class = W_CLASS_TINY + var/activated = 0 + var/deployeditem = null + +/obj/item/deployable_packet/attack_self(mob/user) + if(!istype(user)) + return + if(activated) + return + + to_chat(user, "You shake \the [src].") + to_chat(user, "It starts vibrating weirdly!") + activated = 1 + + spawn(POWERCREEP_PACKET_ACTIVATION_TIME_IN_SECONDS SECONDS) + new deployeditem(get_turf(src), packet_override = 1) //override for powercreep fast spawn + qdel(src) + +/obj/item/deployable_packet/biomass + name = "biomass packet" + icon = 'icons/obj/biomass.dmi' + icon_state = "packet" + deployeditem = /obj/effect/biomass_controller + +/obj/item/deployable_packet/biomass/examine(mob/user, size, show_name) + . = ..() + to_chat(user, "Derek Baum VII's latest innovation. Carries a cryo-stabilized sample of biomass tissue.") + to_chat(user, "It reads:\nStep 1: Shake to active.\nStep 2: Throw.\nStep 3: Enjoy.") + if(activated) + to_chat(user, "It's bubbling weirdly!") + +/obj/item/deployable_packet/powercreeper + name = "powercreeper packet" + icon = 'icons/obj/structures/powercreeper.dmi' + icon_state = "packet" + deployeditem = /obj/structure/cable/powercreeper + +/obj/item/deployable_packet/powercreeper/examine(mob/user, size, show_name) + . = ..() + to_chat(user, "Derek Baum VII's most popular creation. Carries a self-replicating sample of powercreeper.") + to_chat(user, "It reads:\nStep 1: Shake to active.\nStep 2: You have [POWERCREEP_PACKET_ACTIVATION_TIME_IN_SECONDS] seconds to run.") + if(activated) + to_chat(user, "It's sizzling weirdly!") diff --git a/code/game/objects/items/powercreeper_packet.dm b/code/game/objects/items/powercreeper_packet.dm deleted file mode 100644 index cb0754e57b0..00000000000 --- a/code/game/objects/items/powercreeper_packet.dm +++ /dev/null @@ -1,28 +0,0 @@ -#define POWERCREEP_PACKET_ACTIVATION_TIME_IN_SECONDS 3 - -/obj/item/powercreeper_packet - name = "powercreeper packet" - desc = "" - icon = 'icons/obj/structures/powercreeper.dmi' - icon_state = "packet" - var/activated = 0 - -/obj/item/powercreeper_packet/attack_self(mob/user) - if(!istype(user)) - return - if(activated) - return - - to_chat(user, "You shake \the [src].") - to_chat(user, "It starts sizzling weirdly!") //english people help me with these words - activated = 1 - - spawn(POWERCREEP_PACKET_ACTIVATION_TIME_IN_SECONDS SECONDS) - new /obj/structure/cable/powercreeper(get_turf(src), packet_override = 1) - qdel(src) - -/obj/item/powercreeper_packet/examine(mob/user, size, show_name) - . = ..() - to_chat(user, "It reads:\nStep 1: Shake to active.\nStep 2: You have [POWERCREEP_PACKET_ACTIVATION_TIME_IN_SECONDS] seconds to run.") - if(activated) - to_chat(user, "Its sizzling weirdly!") \ No newline at end of file diff --git a/icons/obj/biomass.dmi b/icons/obj/biomass.dmi index affa7c9a3fd..bf905a43314 100644 Binary files a/icons/obj/biomass.dmi and b/icons/obj/biomass.dmi differ diff --git a/vgstation13.dme b/vgstation13.dme index d2c80f01a82..45b0d8a2706 100644 --- a/vgstation13.dme +++ b/vgstation13.dme @@ -917,13 +917,13 @@ #include "code\game\objects\items\cookie_synth.dm" #include "code\game\objects\items\crayons.dm" #include "code\game\objects\items\debug.dm" +#include "code\game\objects\items\deployable_packet.dm" #include "code\game\objects\items\gum.dm" #include "code\game\objects\items\incense.dm" #include "code\game\objects\items\misc_items.dm" #include "code\game\objects\items\ornaments.dm" #include "code\game\objects\items\policetape.dm" #include "code\game\objects\items\potions.dm" -#include "code\game\objects\items\powercreeper_packet.dm" #include "code\game\objects\items\sec_lawplanner.dm" #include "code\game\objects\items\shooting_range.dm" #include "code\game\objects\items\slime_heart.dm"