/proc/getAssignedBlock(name, list/blocksLeft, activity_bounds=DNA_DEFAULT_BOUNDS, good=0) if(!length(blocksLeft)) warning("[name]: No more blocks left to assign!") return 0 var/assigned = pick(blocksLeft) blocksLeft.Remove(assigned) if(good) GLOB.good_blocks += assigned else GLOB.bad_blocks += assigned GLOB.assigned_blocks[assigned]=name GLOB.dna_activity_bounds[assigned]=activity_bounds //Debug message_admins("[name] assigned to block #[assigned].") // testing("[name] assigned to block #[assigned].") return assigned /proc/setupgenetics() //Thanks to nexis for the fancy code // BITCH I AIN'T DONE YET // SE blocks to assign. var/list/numsToAssign=new() for(var/i=1;i