mirror of
https://github.com/Bubberstation/Bubberstation.git
synced 2026-01-18 13:04:45 +00:00
36 lines
966 B
Plaintext
36 lines
966 B
Plaintext
/datum/subsystem/objects/proc/setupGenetics()
|
|
var/list/avnums = new /list(DNA_STRUC_ENZYMES_BLOCKS)
|
|
for(var/i=1, i<=DNA_STRUC_ENZYMES_BLOCKS, i++)
|
|
avnums[i] = i
|
|
CHECK_TICK
|
|
|
|
for(var/A in subtypesof(/datum/mutation/human))
|
|
var/datum/mutation/human/B = new A()
|
|
if(B.dna_block == NON_SCANNABLE)
|
|
continue
|
|
B.dna_block = pick_n_take(avnums)
|
|
if(B.quality == POSITIVE)
|
|
good_mutations |= B
|
|
else if(B.quality == NEGATIVE)
|
|
bad_mutations |= B
|
|
else if(B.quality == MINOR_NEGATIVE)
|
|
not_good_mutations |= B
|
|
CHECK_TICK
|
|
|
|
/datum/subsystem/ticker/proc/setupFactions()
|
|
// Populate the factions list:
|
|
for(var/typepath in typesof(/datum/faction))
|
|
var/datum/faction/F = new typepath()
|
|
if(!F.name)
|
|
qdel(F)
|
|
continue
|
|
else
|
|
factions.Add(F)
|
|
availablefactions.Add(F)
|
|
CHECK_TICK
|
|
|
|
// Populate the syndicate coalition:
|
|
for(var/datum/faction/syndicate/S in factions)
|
|
syndicate_coalition.Add(S)
|
|
CHECK_TICK
|