/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