Adds the Technocracy Advanced Cloning System Kit (#23420)

* Adds the Technocracy Advanced Cloning System Kit

* no bad no cheap illegals

* as funny as it would be for admins to receive fries are done

* Apply suggestions from code review

Co-authored-by: GDN <96800819+GDNgit@users.noreply.github.com>

* Update code/game/objects/structures/grey_autocloner.dm

Co-authored-by: GDN <96800819+GDNgit@users.noreply.github.com>

* Update code/datums/uplink_items/uplink_traitor.dm

Co-authored-by: 1080pCat <96908085+1080pCat@users.noreply.github.com>

* Apply suggestions from code review

Co-authored-by: Ryan <80364400+Sirryan2002@users.noreply.github.com>
Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>

* requested changes

* Update code/game/objects/structures/grey_autocloner.dm

Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>

---------

Co-authored-by: GDN <96800819+GDNgit@users.noreply.github.com>
Co-authored-by: 1080pCat <96908085+1080pCat@users.noreply.github.com>
Co-authored-by: Ryan <80364400+Sirryan2002@users.noreply.github.com>
Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
This commit is contained in:
Qwertytoforty
2024-01-06 21:38:12 +00:00
committed by GitHub
co-authored by GDN 1080pCat Ryan Luc DGamerL
parent 860eee773e
commit c44231e9e1
8 changed files with 214 additions and 14 deletions
@@ -131,6 +131,11 @@
desc = "A label on it reads: <i>Warning: Activating this device will send a high-ordinance EMP explosive to your location</i>."
bomb = /obj/machinery/syndicatebomb/emp
/obj/item/radio/beacon/syndicate/bomb/grey_autocloner
desc = "A label on it reads: <i>Warning: Activating this device will send an expensive cloner to your location</i>."
origin_tech = "bluespace=2;syndicate=2"
bomb = /obj/machinery/grey_autocloner
/obj/item/radio/beacon/engine
desc = "A label on it reads: <i>Warning: This device is used for transportation of high-density objects used for high-yield power generation. Stay away!</i>."
anchored = TRUE //Let's not move these around. Some folk might get the idea to use these for assassinations
@@ -0,0 +1,48 @@
/obj/item/implant/grey_autocloner
name = "technocracy cloning bio-chip"
desc = "Allows for advanced instantanious cloning!"
icon_state = "generic"
origin_tech = "materials=3;combat=5;syndicate=2"
activated = FALSE
trigger_causes = BIOCHIP_TRIGGER_DEATH_ANY
implant_state = "implant-alien"
var/obj/machinery/grey_autocloner/linked
var/datum/dna2/record/our_record
/obj/item/implant/grey_autocloner/Destroy()
linked = null
our_record = null
return ..()
/obj/item/implant/grey_autocloner/death_trigger(mob/source, gibbed)
imp_in.ghostize(TRUE)
if(linked)
linked.growclone(our_record)
/obj/item/implant/grey_autocloner/implant(mob/source, mob/user, force)
if(!linked)
to_chat(user, "<span class='warning'>Please link the implanter with a Technocracy cloning pod!</span>")
return FALSE
. = ..()
if(!. || !ishuman(imp_in))
return FALSE
our_record = new /datum/dna2/record()
our_record.ckey = imp_in.ckey
var/obj/item/organ/B = imp_in.get_int_organ(/obj/item/organ/internal/brain)
B.dna.check_integrity()
our_record.dna = B.dna.Clone()
our_record.id = copytext(md5(B.dna.real_name), 2, 6)
our_record.name = B.dna.real_name
our_record.types = DNA2_BUF_UI|DNA2_BUF_UE|DNA2_BUF_SE
our_record.languages = imp_in.languages
if(imp_in.mind) //Save that mind so traitors can continue traitoring after cloning.
our_record.mind = imp_in.mind.UID()
/obj/item/implanter/grey_autocloner
name = "bio-chip implanter (Technocracy cloning)"
implant_type = /obj/item/implant/grey_autocloner
/obj/item/implantcase/grey_autocloner
name = "bio-chip case - 'Technocracy cloning'"
desc = "A glass case containing an Technocracy bio-chip."
implant_type = /obj/item/implant/grey_autocloner
@@ -433,6 +433,13 @@
for(var/i in 1 to 5)
new /obj/item/wall_bug(src, camera)
/obj/item/storage/box/syndie_kit/prescan
name = "\improper Technocracy Advanced Cloning System Kit"
/obj/item/storage/box/syndie_kit/prescan/populate_contents()
new /obj/item/implanter/grey_autocloner(src)
new /obj/item/radio/beacon/syndicate/bomb/grey_autocloner(src)
/obj/item/storage/box/syndie_kit/pen_bomb
name = "\improper Pen bomb"