ChangesP1

This commit is contained in:
Eric6426-Blossom
2023-07-15 13:53:00 +02:00
parent 368d57ae36
commit 91d340dc95
@@ -5,6 +5,7 @@
item_state = "syringe_0"
icon_state = "lepopen"
var/used = FALSE
var/choice
/obj/item/dnascrambler/update_icon_state()
if(used)
@@ -31,16 +32,35 @@
injected(user, user)
else
user.visible_message("<span class='danger'>[user] is trying to inject [M] with [src]!</span>")
if(do_mob(user,M,30))
if(do_mob(user,M, 10 SECONDS))
user.visible_message("<span class='danger'>[user] injects [M] with [src].</span>")
injected(M, user)
else
to_chat(user, "<span class='warning'>You failed to inject [M].</span>")
//To-do: Organs change, visual bugs, default set if nothing selected
/obj/item/dnascrambler/AltClick(mob/user)
var/list/specieschange = list("Diona" = image(icon = 'icons/mob/human_races/r_diona.dmi', icon_state = "preview"),
"Human" = image(icon = 'icons/mob/human_races/r_human.dmi', icon_state = "preview"),
"Skrell" = image(icon = 'icons/mob/human_races/r_skrell.dmi', icon_state = "preview"),
"Tajaran" = image(icon = 'icons/mob/human_races/r_tajaran.dmi', icon_state = "preview"),
"Unathi" = image(icon = 'icons/mob/human_races/r_lizard.dmi', icon_state = "preview"),
"Vulp" = image(icon = 'icons/mob/human_races/r_vulpkanin.dmi', icon_state = "preview"),
"Nian" = image(icon = 'icons/mob/human_races/r_moth.dmi', icon_state = "preview"),
)
specieschange["Grey"] = image(icon = 'icons/mob/human_races/r_grey.dmi', icon_state = "preview")
specieschange["Kidan"] = image(icon = 'icons/mob/human_races/r_kidan.dmi', icon_state = "preview")
specieschange["Plasmaman"] = image(icon = 'icons/mob/human_races/r_plasmaman_sb.dmi', icon_state = "body")
specieschange["Slime"] = image(icon = 'icons/mob/human_races/r_slime.dmi', icon_state = "preview")
specieschange["Vox"] = image(icon = 'icons/mob/human_races/vox/r_vox.dmi', icon_state = "preview")
specieschange["Drask"] = image(icon = 'icons/mob/human_races/r_drask.dmi', icon_state = "template")
choice = show_radial_menu(user, src, specieschange, radius = 40)
/obj/item/dnascrambler/proc/injected(mob/living/carbon/human/target, mob/living/carbon/user)
if(istype(target))
var/mob/living/carbon/human/H = target
scramble(1, H, 100)
if(isnull(choice))
return
scramble(H, choice)
H.real_name = random_name(H.gender, H.dna.species.name) //Give them a name that makes sense for their species.
H.sync_organ_dna(assimilate = 1)
H.update_body()
@@ -54,3 +74,41 @@
used = TRUE
update_icon(UPDATE_ICON_STATE)
name = "used " + name
/obj/item/dnascrambler/proc/scramble(mob/living/carbon/human/M, choice)
if(!M || !M.dna)
return
switch(choice)
if("Grey")
M.dna.species = new /datum/species/grey()
if("Human")
M.dna.species = new /datum/species/human()
if("Diona")
M.dna.species = new /datum/species/diona()
if("Kidan")
M.dna.species = new /datum/species/kidan()
if("Plasmaman")
M.dna.species = new /datum/species/plasmaman()
if("Skrell")
M.dna.species = new /datum/species/skrell()
if("Slime")
M.dna.species = new /datum/species/slime()
if("Tajaran")
M.dna.species = new /datum/species/tajaran()
if("Unathi")
M.dna.species = new /datum/species/unathi()
if("Vox")
M.dna.species = new /datum/species/vox()
if("Vulp")
M.dna.species = new /datum/species/vulpkanin()
if("Drask")
M.dna.species = new /datum/species/drask()
if("Nian")
M.dna.species = new /datum/species/moth()
M.dna.check_integrity()
for(var/i = 1, i <= DNA_UI_LENGTH - 1, i++)
M.dna.SetUIValue(i, rand(1, 4095), 1)
M.dna.UpdateUI()
M.dna.UpdateSE()
M.UpdateAppearance()
domutcheck(M)