Refactors DNA Mutations; Refactors Mutations to use Traits (#15483)

* Refactors Mutations

* traits

* more work

* styling fix

* yet even more work

* oh hush

* almost there

* it continues yet further

* and that's genetics done

* and that's it folks

* last bit and golem fixup

* oof

* oops

* tweaks and fixes

* styling
This commit is contained in:
Fox McCloud
2021-02-21 21:25:19 +00:00
committed by GitHub
parent 324af7454c
commit 02b9445b9b
223 changed files with 2908 additions and 3049 deletions
@@ -28,14 +28,16 @@
var/mob/living/carbon/human/slave_mob = owner.current
if(slave_mob && istype(slave_mob))
to_chat(slave_mob, "Your training has allowed you to overcome your clownish nature, allowing you to wield weapons without harming yourself.")
slave_mob.mutations.Remove(CLUMSY)
slave_mob.dna.SetSEState(GLOB.clumsyblock, FALSE)
singlemutcheck(slave_mob, GLOB.clumsyblock, MUTCHK_FORCED)
/datum/antagonist/mindslave/remove_innate_effects()
. = ..()
if(owner.assigned_role == "Clown")
var/mob/living/carbon/human/slave_mob = owner.current
if(slave_mob && istype(slave_mob))
slave_mob.mutations.Add(CLUMSY)
slave_mob.dna.SetSEState(GLOB.clumsyblock, TRUE)
singlemutcheck(slave_mob, GLOB.clumsyblock, MUTCHK_FORCED)
/datum/antagonist/mindslave/proc/add_objective(datum/objective/O)
owner.objectives += O
@@ -68,7 +68,8 @@
var/mob/living/carbon/human/traitor_mob = owner.current
if(traitor_mob && istype(traitor_mob))
to_chat(traitor_mob, "<span class='warning'>Your training has allowed you to overcome your clownish nature, allowing you to wield weapons without harming yourself.</span>")
traitor_mob.mutations.Remove(CLUMSY)
traitor_mob.dna.SetSEState(GLOB.clumsyblock, FALSE)
singlemutcheck(traitor_mob, GLOB.clumsyblock, MUTCHK_FORCED)
var/datum/action/innate/toggle_clumsy/A = new
A.Grant(traitor_mob)
@@ -79,7 +80,8 @@
var/mob/living/carbon/human/traitor_mob = owner.current
if(traitor_mob && istype(traitor_mob))
to_chat(traitor_mob, "<span class='warning'>You lose your syndicate training and return to your own clumsy, clownish self.</span>")
traitor_mob.mutations.Add(CLUMSY)
traitor_mob.dna.SetSEState(GLOB.clumsyblock, TRUE)
singlemutcheck(traitor_mob, GLOB.clumsyblock, MUTCHK_FORCED)
for(var/datum/action/innate/A in traitor_mob.actions)
if(istype(A, /datum/action/innate/toggle_clumsy))
A.Remove(traitor_mob)
@@ -23,56 +23,56 @@
return
H.ignore_gene_stability = TRUE
H.dna.SetSEState(GLOB.hulkblock, TRUE)
genemutcheck(H, GLOB.hulkblock, null, MUTCHK_FORCED)
singlemutcheck(H, GLOB.hulkblock, MUTCHK_FORCED)
H.dna.SetSEState(GLOB.xrayblock, TRUE)
genemutcheck(H, GLOB.xrayblock, null, MUTCHK_FORCED)
singlemutcheck(H, GLOB.xrayblock, MUTCHK_FORCED)
H.dna.SetSEState(GLOB.fireblock, TRUE)
genemutcheck(H, GLOB.fireblock, null, MUTCHK_FORCED)
singlemutcheck(H, GLOB.fireblock, MUTCHK_FORCED)
H.dna.SetSEState(GLOB.coldblock, TRUE)
genemutcheck(H, GLOB.coldblock, null, MUTCHK_FORCED)
singlemutcheck(H, GLOB.coldblock, MUTCHK_FORCED)
H.dna.SetSEState(GLOB.teleblock, TRUE)
genemutcheck(H, GLOB.teleblock, null, MUTCHK_FORCED)
singlemutcheck(H, GLOB.teleblock, MUTCHK_FORCED)
H.dna.SetSEState(GLOB.increaserunblock, TRUE)
genemutcheck(H, GLOB.increaserunblock, null, MUTCHK_FORCED)
singlemutcheck(H, GLOB.increaserunblock, MUTCHK_FORCED)
H.dna.SetSEState(GLOB.breathlessblock, TRUE)
genemutcheck(H, GLOB.breathlessblock, null, MUTCHK_FORCED)
singlemutcheck(H, GLOB.breathlessblock, MUTCHK_FORCED)
H.dna.SetSEState(GLOB.regenerateblock, TRUE)
genemutcheck(H, GLOB.regenerateblock, null, MUTCHK_FORCED)
singlemutcheck(H, GLOB.regenerateblock, MUTCHK_FORCED)
H.dna.SetSEState(GLOB.shockimmunityblock, TRUE)
genemutcheck(H, GLOB.shockimmunityblock, null, MUTCHK_FORCED)
singlemutcheck(H, GLOB.shockimmunityblock, MUTCHK_FORCED)
H.dna.SetSEState(GLOB.smallsizeblock, TRUE)
genemutcheck(H, GLOB.smallsizeblock, null, MUTCHK_FORCED)
singlemutcheck(H, GLOB.smallsizeblock, MUTCHK_FORCED)
H.dna.SetSEState(GLOB.soberblock, TRUE)
genemutcheck(H, GLOB.soberblock, null, MUTCHK_FORCED)
singlemutcheck(H, GLOB.soberblock, MUTCHK_FORCED)
H.dna.SetSEState(GLOB.psyresistblock, TRUE)
genemutcheck(H, GLOB.psyresistblock, null, MUTCHK_FORCED)
singlemutcheck(H, GLOB.psyresistblock, MUTCHK_FORCED)
H.dna.SetSEState(GLOB.shadowblock, TRUE)
genemutcheck(H, GLOB.shadowblock, null, MUTCHK_FORCED)
singlemutcheck(H, GLOB.shadowblock, MUTCHK_FORCED)
H.dna.SetSEState(GLOB.cryoblock, TRUE)
genemutcheck(H, GLOB.cryoblock, null, MUTCHK_FORCED)
singlemutcheck(H, GLOB.cryoblock, MUTCHK_FORCED)
H.dna.SetSEState(GLOB.eatblock, TRUE)
genemutcheck(H, GLOB.eatblock, null, MUTCHK_FORCED)
singlemutcheck(H, GLOB.eatblock, MUTCHK_FORCED)
H.dna.SetSEState(GLOB.jumpblock, TRUE)
genemutcheck(H, GLOB.jumpblock, null, MUTCHK_FORCED)
singlemutcheck(H, GLOB.jumpblock, MUTCHK_FORCED)
H.dna.SetSEState(GLOB.immolateblock, TRUE)
genemutcheck(H, GLOB.immolateblock, null, MUTCHK_FORCED)
singlemutcheck(H, GLOB.immolateblock, MUTCHK_FORCED)
H.mutations.Add(LASER)
ADD_TRAIT(H, TRAIT_LASEREYES, "wishgranter")
H.update_mutations()
H.update_body()