/// <summary> /// Create body with parent genes /// </summary> /// <param name="parent1"></param> /// <param name="parent2"></param> public void CreateBody(Horse parent1, Horse parent2) { // Create punnet square quadrants Body[] quad1 = new Body[2] { parent1.GetBodyAllele1(), parent2.GetBodyAllele1() }; Body[] quad2 = new Body[2] { parent1.GetBodyAllele1(), parent2.GetBodyAllele2() }; Body[] quad3 = new Body[2] { parent1.GetBodyAllele2(), parent2.GetBodyAllele1() }; Body[] quad4 = new Body[2] { parent1.GetBodyAllele2(), parent2.GetBodyAllele2() }; int gene = Random.Range(0, 4); switch (gene) { case 0: _bodyAllele1 = quad1[0]; _bodyAllele2 = quad1[1]; break; case 1: _bodyAllele1 = quad2[0]; _bodyAllele2 = quad2[1]; break; case 2: _bodyAllele1 = quad3[0]; _bodyAllele2 = quad3[1]; break; case 3: _bodyAllele1 = quad4[0]; _bodyAllele2 = quad4[1]; break; } SelectBody(); }
/// <summary> /// Create the resulting horse button and attributes /// </summary> private void CreateResultHorseButton() { resultHorseButton = Instantiate(horseButton, uiCanvas); resultHorseButton.transform.localPosition = new Vector3(-235.5611f, 90.79448f, 0); resultHorseButton.transform.Find("Horse Button").GetComponent <Button>().enabled = false; bodyAlleles.text = _resultHorse.GetBodyAllele1().toString() + " " + _resultHorse.GetBodyAllele2().toString(); headAlleles.text = _resultHorse.GetHeadAllele1().toString() + " " + _resultHorse.GetHeadAllele2().toString(); tailAlleles.text = _resultHorse.GetTailAllele1().toString() + " " + _resultHorse.GetTailAllele2().toString(); SetUpHorseButton(_resultHorse, resultHorseButton); }