Exemplo n.º 1
0
        public void split(int x, int y)
        {
            Organism next = new Organism(species, sightDistance, ferocity, maxValue, speed, currValue / 2);

            currValue -= currValue / 2;
            next.posX  = x;
            next.posY  = y;

            next.mutate();
            this.mutate();

            Simulation.simulationGrid.Add(next.key(), next);
        }
Exemplo n.º 2
0
        public static Organism newRandomOrganism(Species spec)
        {
            Organism temp = new Organism(spec, spec.seeRange, spec.power, spec.maxValue, spec.speed, spec.maxValue / 2);
            int      key  = 0;

            do
            {
                temp.posX = Simulation.random.Next(Settings.xResolution - 1);
                temp.posY = Simulation.random.Next(Settings.yResolution - 1);
                key       = temp.key();
            }while (Simulation.simulationGrid.ContainsKey(key));
            Simulation.simulationGrid.Add(key, temp);
            return(temp);
        }