Files
Polaris/code/modules/xenobio2/controller.dm
spookerton 7eedbedba5 removes some legacy procs, adds some other procs
NUFC

removed add_lspace — unused
removed add_tspace — unused
removed invertHTML — unused
removed hsl2rgb — unimplemented

removed hex2num — replaced with define
removed num2hex — replaced with define
removed add_zero — replaced with pad_left
removed add_zero2 — replaced with pad_left
removes hex2rgb — replaced with behavior of rgb2num()
removes hex2rgb_r — replaced with behavior of rgb2num()
removes hex2rgb_g — replaced with behavior of rgb2num()
removes hex2rgb_b — replaced with behavior of rgb2num()
removes assorted inline list(rgb) > hex — replaced with behavior of rgb()
removes assorted inline rand > hex — replace with random_hex_text

added hex2num define
added num2hex define
added random_hex_text
added generate_padding
added pad_left
added pad_right
2022-04-03 14:19:45 +01:00

43 lines
1.2 KiB
Plaintext

//Used to create the gene mask. Shamelessly stolen from the plant controller and cut down.
/client/proc/show_xenobio_genes()
set category = "Debug"
set name = "Show Xenobio Genes"
set desc = "Prints the round's plant xenobio masks."
if(!holder) return
if(!xenobio_controller || !xenobio_controller.gene_tag_masks)
to_chat(usr, "Gene masks not set.")
return
for(var/mask in xenobio_controller.gene_tag_masks)
to_chat(usr, "[mask]: [xenobio_controller.gene_tag_masks[mask]]")
var/global/datum/controller/xenobio/xenobio_controller // Set in New().
/datum/controller/xenobio
var/list/gene_tag_masks = list() // Gene obfuscation for delicious trial and error goodness.
/datum/controller/xenobio/New()
if(xenobio_controller && xenobio_controller != src)
log_debug("Rebuilding xenobio controller.")
qdel(xenobio_controller)
xenobio_controller = src
setup()
/datum/controller/xenobio/proc/setup()
var/list/used_masks = list()
var/list/xenobio_traits = ALL_XENO_GENES
while(xenobio_traits && xenobio_traits.len)
var/gene_tag = pick(xenobio_traits)
var/gene_mask
do
gene_mask = random_hex_text(2, TRUE)
while (gene_mask in used_masks)
used_masks += gene_mask
xenobio_traits -= gene_tag
gene_tag_masks[gene_tag] = gene_mask