Split NO_SCAN into two flags (#17226)

* Split NO_SCAN into two flags

* traits

* species flags applied correctly by traits

* fixed species flag toggling for traits

* bold of you

---------

Co-authored-by: Willburd <7099514+Willburd@users.noreply.github.com>
This commit is contained in:
Cameron Lennox
2025-03-14 17:34:03 -04:00
committed by GitHub
parent 5788fd6e21
commit f48f89f1db
37 changed files with 99 additions and 68 deletions
@@ -71,16 +71,16 @@
L.apply_effect(rand(5,20), IRRADIATE, check_protection = 0)
L.apply_damage(max(2,L.getCloneLoss()), CLONE)
// Traitgenes edit begin - NO_SCAN and Synthetics cannot be mutated
// Traitgenes edit begin - NO_DNA and Synthetics cannot be mutated
var/allow = TRUE
if(M.isSynthetic())
allow = FALSE
if(ishuman(M))
var/mob/living/carbon/human/H = M
if(!H.species || H.species.flags & NO_SCAN)
if(!H.species || H.species.flags & NO_DNA)
allow = FALSE
// Traitgenes edit end
if (!(NOCLONE in M.mutations) && allow) // prevents drained people from having their DNA changed, Traitgenes edit - NO_SCAN and Synthetics cannot be mutated
if (!(NOCLONE in M.mutations) && allow) // prevents drained people from having their DNA changed, Traitgenes edit - NO_DNA and Synthetics cannot be mutated
if(buf)
if (buf.types & DNA2_BUF_UI)
if (!block) //isolated block?