Files
vgstation13/code/modules/spells/changeling/changespecies.dm
gurfan bb8df69cce Changeling Spells + power datums rework (#28017)
* framework

* more worky

* more spells, iron out some errors

* start finishing the spells

* fix confligs

* last two spells, add spell paths to powers

* COMPILE

* runtime fixes part 1/infinity

* more fixes

* get things working!

* typo

* spell icons, spell name fixes, cost fixes

* Update absorb_dna.dm

* fix indents

* fixes, tweaks

* can you guess where I used find and replace

* typo

* better operators

* move hivemind bank to a faction variable

* remove extra )

* CRASH()

Co-authored-by: DamianX <DamianX@users.noreply.github.com>

* rework add_power to use IDs, add ID defines for ling powers, stack_trace if an ID wasnt set

* Revert "rework add_power to use IDs, add ID defines for ling powers, stack_trace if an ID wasnt set"

This reverts commit e4207fea78.

* tweak

* remove IDs from vampire powers, remove unnecessary role checks in the spells (done in cast_check), tweak power_holder purchased powers, ling evolution menu verb -> spell

* lesser form fixes, vamp grant spell fixes

* more cleanup, fix spell bases, fix travis hopefully

* remove that

* more fixes

* fix doublechek

* evolve spell icon

* use CRASH

* use locate

* remove comment

* comment, locate type not src

* locate, add a comment,  absorb wont steal ling spells

* use class danger, flesh sound when transforming

* target, not user

* extra )

* unfuck icon, correct faction adding

* fix faction for real

* whoops

* fix a bunch of spells

Co-authored-by: DamianX <DamianX@users.noreply.github.com>
2020-11-17 07:48:28 -06:00

40 lines
1.1 KiB
Plaintext

/spell/changeling/changespecies
name = "Change Species (5)"
desc = "We take on the apperance of a species that we have absorbed."
abbreviation = "CS"
hud_state = "changespecies"
spell_flags = NEEDSHUMAN
chemcost = 5
required_dna = 1
max_genedamage = 0
horrorallowed = 0
/spell/changeling/changespecies/cast(var/list/targets, var/mob/living/carbon/human/user)
var/datum/role/changeling/changeling = user.mind.GetRole(CHANGELING)
if(changeling.absorbed_species.len < 2)
to_chat(user, "<span class='warning'>We do not know of any other species genomes to use.</span>")
return
var/S = input("Select the target species: ", "Target Species", null) as null|anything in changeling.absorbed_species
if(!S)
return
domutcheck(user, null)
changeling.geneticdamage = 30
user.visible_message("<span class='danger'>[user] transforms!</span>")
user.set_species(S,1) //Until someone moves body colour into DNA, they're going to have to use the default.
user.regenerate_icons()
user.updateChangelingHUD()
user.changeling_update_languages(changeling.absorbed_languages)
feedback_add_details("changeling_powers","TR")
..()