public void Clone(Critter originalCritter, Hex habitat) { name = "Bob " + num; num++; GameObject newCreature = originalCritter.gameObject; EvolutionList originList = originalCritter.GetComponent<EvolutionList>(); GameObject creature = Instantiate(newCreature, newCreature.transform.position, Quaternion.identity) as GameObject; critter = creature.GetComponent<Critter>(); creature.name = name; critter.SetName (name); critter.SetNumber(critterCount); critter.CloneStats(originalCritter); baseFoodValue = (size * size) * 10; critter.SetBaseFoodValue(baseFoodValue); critter.SetTokenSprite(SelectSprite()); critter.SetTokenColor(originalCritter.GetTokenColor()); critter.GenerateDiet(); critter.GenerateLocomotion(); critter.SetIsPlayer(false); critter.ResetAllXP(); critter.adultPopulations.Clear(); critter.cubPopulations.Clear(); critter.babyPopulations.Clear(); critter.ClearTokenList(); critter.habitats.Clear(); CreateCritterLists(critterCount); AddToLocalCritterList(critter, habitat); critter.adultPopulations.Add(.5f * startPop); critter.babyPopulations.Add(.2f * startPop); critter.cubPopulations.Add(.1f * startPop); critter.GenerateTokens(); creature.GetComponent<EvolutionList>().ClearChildren(); originList.AddNewChild(critter, TurnTimer.currentTurn); critter.SetSplinterEvoStart(); critter.InitializePopsList(); critterCount++; }