/** * Set the tints for all parts of the fish * * @param genome FishGenome The genome that will determine what tints are applied */ private void SetTints(FishGenome genome) { // Temporary colors to indicate sex and size Color color1 = genome.IsMale() ? Color.blue : Color.magenta; Color color2; if (genome[FishGenome.GeneType.Size].dadGene != genome[FishGenome.GeneType.Size].momGene) { color2 = Color.yellow; } else if (genome[FishGenome.GeneType.Size].momGene == FishGenome.B) { color2 = Color.red; } else { color2 = Color.green; } rend.material.SetColor("_Color", color1); rend.material.SetColor("_Color2", color2); //rend.material.SetColor("_Color3", GetAColor()); //rend.material.SetColor("_Color4", GetAColor()); }
/** * Determine which fish prefab should be used given a fish's genome * * @param genome FishGenome The genome that determines which prefab we should use */ public GameObject GetFishPrefab(FishGenome genome) { // gameobject we will return at end GameObject toReturn; // get the size gene for the fish FishGenePair sizeGenePair = genome[FishGenome.GeneType.Size]; // different prefabs for each sex if (genome.IsMale()) { // different prefabs for each male size if (sizeGenePair.momGene == FishGenome.b && sizeGenePair.dadGene == FishGenome.b) { toReturn = smallMale; } else if (sizeGenePair.momGene == FishGenome.B && sizeGenePair.dadGene == FishGenome.B) { toReturn = largeMale; } else { toReturn = mediumMale; } } else { // different prefabs for each female size if (sizeGenePair.momGene == FishGenome.b && sizeGenePair.dadGene == FishGenome.b) { toReturn = smallFemale; } else if (sizeGenePair.momGene == FishGenome.B && sizeGenePair.dadGene == FishGenome.B) { toReturn = largeFemale; } else { toReturn = mediumFemale; } } return(toReturn); }