diff --git a/src/js/generateGenetics.js b/src/js/generateGenetics.js index 343c9a3505d6f70db5b2d61d1a9e681a8983cb5a..0499f985f84a2550f1b7aa608519055df9d26fe7 100644 --- a/src/js/generateGenetics.js +++ b/src/js/generateGenetics.js @@ -1063,7 +1063,6 @@ window.generateGenetics = (function() { */ window.generateChild = function(mother, ova, destination) { let genes = ova.genetics; // maybe just argument this? We'll see. - let pregUpgrade = V.pregnancyMonitoringUpgrade; let child = {}; function setSurname() { @@ -1107,7 +1106,7 @@ window.generateChild = function(mother, ova, destination) { function setSlaveName() { const relString = child.genes === "XX" ? "daughter" : "son"; - if (!pregUpgrade || genes.name.indexOf("ovum") === 0) { + if (!(V.pregnancyMonitoringUpgrade) || genes.name.indexOf("ovum") === 0) { if (genes.clone) { if (genes.cloneID === -1) { child.slaveName = `Your clone`; @@ -1132,6 +1131,36 @@ window.generateChild = function(mother, ova, destination) { } } + function makeAlbinismOverride(race) { + let albinismOverride = { + skin: 0, + eyeColor: "red", + hColor: "white" + }; + switch (race) { + case "black": + case "indo-aryan": + case "malay": + case "pacific islander": + case "amerindian": + albinismOverride.skin = "very fair"; + break; + case "latina": + albinismOverride.skin = "extremely fair"; + break; + case "asian": + case "middle eastern": + case "semitic": + case "southern european": + case "white": + albinismOverride.skin = "pure white"; + break; + default: + albinismOverride.skin = "pure white"; + } + return albinismOverride; + } + if (!destination) { // does extra work for the incubator if defined, otherwise builds a simple object child.genes = genes.gender; setSlaveName(); @@ -1157,32 +1186,7 @@ window.generateChild = function(mother, ova, destination) { child.fetish = genes.fetish; child.geneticQuirks = clone(genes.geneticQuirks); if (child.geneticQuirks.albinism === 2) { - child.albinismOverride = { - skin: 0, - eyeColor: "red", - hColor: "white" - }; - switch (child.race) { - case "black": - case "indo-aryan": - case "malay": - case "pacific islander": - case "amerindian": - child.albinismOverride.skin = "very fair"; - break; - case "latina": - child.albinismOverride.skin = "extremely fair"; - break; - case "asian": - case "middle eastern": - case "semitic": - case "southern european": - case "white": - child.albinismOverride.skin = "pure white"; - break; - default: - child.albinismOverride.skin = "pure white"; - } + child.albinismOverride = makeAlbinismOverride(child.race); } child.origSkin = genes.skin; child.eye.origColor = genes.eyeColor; @@ -1209,15 +1213,17 @@ window.generateChild = function(mother, ova, destination) { } } } else { - V.activeSlaveOneTimeMinAge = V.targetAge; - V.activeSlaveOneTimeMaxAge = V.targetAge; - // eslint-disable-next-line camelcase - V.one_time_age_overrides_pedo_mode = 1; + const fixedAge = { + minAge: V.targetAge, + maxAge: V.targetAge, + ageOverridesPedoMode: 1, + mature: 0 + }; if (genes.gender === "XX") { - child = GenerateNewSlave("XX", {mature: 0}); + child = GenerateNewSlave("XX", fixedAge); } else { - child = GenerateNewSlave("XY", {mature: 0}); + child = GenerateNewSlave("XY", fixedAge); } setSlaveName(); setSurname(); @@ -1234,32 +1240,7 @@ window.generateChild = function(mother, ova, destination) { child.origRace = child.race; child.geneticQuirks = clone(genes.geneticQuirks); if (child.geneticQuirks.albinism === 2) { - child.albinismOverride = { - skin: 0, - eyeColor: "red", - hColor: "white" - }; - switch (child.race) { - case "black": - case "indo-aryan": - case "malay": - case "pacific islander": - case "amerindian": - child.albinismOverride.skin = "very fair"; - break; - case "latina": - child.albinismOverride.skin = "extremely fair"; - break; - case "asian": - case "middle eastern": - case "semitic": - case "southern european": - case "white": - child.albinismOverride.skin = "pure white"; - break; - default: - child.albinismOverride.skin = "pure white"; - } + child.albinismOverride = makeAlbinismOverride(child.race); } child.origSkin = genes.skin; child.eye.origColor = genes.eyeColor;