// Make this reflect amount grown, can't do that currently /obj/effect/proc_holder/spell/alien_spell/evolve_larva name = "Evolve." desc = "Evolve into a fully grown Alien." action_icon_state = "alien_evolve_larva" /obj/effect/proc_holder/spell/alien_spell/evolve_larva/create_new_targeting() return new /datum/spell_targeting/self /obj/effect/proc_holder/spell/alien_spell/evolve_larva/cast(list/targets, mob/living/carbon/alien/larva/user) if(user.stat != CONSCIOUS) return if(user.handcuffed || user.legcuffed) to_chat(user, "You cannot evolve when you are cuffed.") return if(user.amount_grown < user.max_grown) to_chat(user, "You are not fully grown.") return //green is impossible to read, so i made these blue and changed the formatting slightly to_chat(user, "You are growing into a beautiful alien! It is time to choose a caste.") to_chat(user, "There are three to choose from:") to_chat(user, "Hunters are strong and agile, able to hunt away from the hive and rapidly move through ventilation shafts. Hunters generate plasma slowly and have low reserves.") to_chat(user, "Sentinels are tasked with protecting the hive and are deadly up close and at a range. They are not as physically imposing nor fast as the hunters.") to_chat(user, "Drones are the working class, offering the largest plasma storage and generation. They are the only caste which may evolve again, turning into the dreaded alien queen.") var/static/list/to_evolve = list("Hunter" = image(icon = 'icons/mob/alien.dmi', icon_state = "alienh_s"), "Sentinel" = image(icon = 'icons/mob/alien.dmi', icon_state = "aliens_s"), "Drone" = image(icon = 'icons/mob/alien.dmi', icon_state = "aliend_s")) var/new_xeno = show_radial_menu(user, user, to_evolve, src, radius = 40) var/turf/T = user.loc if(!new_xeno) return var/to_spawn switch(new_xeno) if("Hunter") to_spawn = new /mob/living/carbon/alien/humanoid/hunter(T) if("Sentinel") to_spawn = new /mob/living/carbon/alien/humanoid/sentinel(T) if("Drone") to_spawn = new /mob/living/carbon/alien/humanoid/drone(T) if(user.mind) user.mind.transfer_to(to_spawn) SSblackbox.record_feedback("tally", "alien_growth", 1, "[lowertext(new_xeno)]") qdel(user)