diff --git a/src/npc/generate/generateGenetics.js b/src/npc/generate/generateGenetics.js index 292a41b52e21040dcb735e7e9faf0b71059b765b..4cb2f91ea5bc8f5e003e207220625a40f7983f00 100644 --- a/src/npc/generate/generateGenetics.js +++ b/src/npc/generate/generateGenetics.js @@ -970,19 +970,12 @@ globalThis.generateGenetics = (function() { quirks.albinism = genes(father !== 0 ? father.geneticQuirks.albinism : 0, mother.geneticQuirks.albinism); // heterochromia - // FIXME heterochromia is a string when active, this is not respected here. - if (father !== 0) { - fatherGenes = father.geneticQuirks.heterochromia; - } - geneTarget = Math.pow(2, mother.geneticQuirks.heterochromia + fatherGenes); - if (geneTarget >= 2) { - chance = jsRandom(1, 16); - if (chance <= geneTarget) { - quirks.heterochromia = 2; - } else if (chance <= 3 * geneTarget) { - quirks.heterochromia = 1; - } - } + quirks.heterochromia = genes( + father === 0 ? 0 : + typeof father.geneticQuirks.heterochromia === "string" ? 2 : + father.geneticQuirks.heterochromia, + typeof mother.geneticQuirks.heterochromia === "string" ? 2 : + mother.geneticQuirks.heterochromia); // rear lipedema quirks.rearLipedema = genes(father !== 0 ? father.geneticQuirks.rearLipedema : 0, mother.geneticQuirks.rearLipedema);