Пример #1
0
        static void DoTerrateam()
        {
            // do some Console stuff
            Console.BackgroundColor = ConsoleColor.Black;
            Console.CursorVisible   = false;
            Console.Clear();
//          Console.SetWindowSize(cnGrootteY+1, cnGrootteX+1);
            //Console.SetBufferSize(cnGrootteY+1, cnGrootteX+1);

            // create speelveld and additional data
            Random    rnd       = new Random();
            Speelveld speelveld = new Speelveld(cnGrootteY, cnGrootteX, cnDisplayModel);

            int rndspeelveld      = speelveld.GrootteX * speelveld.GrootteY;
            int rndspeelveld1     = speelveld.GrootteX + speelveld.GrootteY;
            int rndValuePlant     = (cnGrootteX + cnGrootteY) / 2;
            int rndValueherbivoor = (cnGrootteX + cnGrootteY) / 2;
            int rndValueCarnivoor = cnGrootteX + cnGrootteY;
            int rndValueMens      = cnGrootteX + cnGrootteY;

            ////////int rndValuePlant = rnd.Next(1, ((rndspeelveld / rndspeelveld1) / 5)+1);
            ////////int rndValueherbivoor = rnd.Next(1, ((rndspeelveld / rndspeelveld1) / 4)+1);
            ////////int rndValueCarnivoor = rnd.Next(1, ((rndspeelveld / rndspeelveld1) / 4)+1);
            ////////int rndValueMens = rnd.Next(1, ((rndspeelveld / rndspeelveld1) / 4)+1);

            List <Plant> planten = Plant.CreatePlanten(rndValuePlant);

            speelveld.AddPlantenToSpeelveld(planten);

            List <Herbivoor> herbivoren = Herbivoor.CreateHerbivoren(rnd.Next(1, rndValueherbivoor));

            speelveld.AddHerbivorenToSpeelveld(herbivoren);

            List <Carnivoor> carnivoren = Carnivoor.CreateCarnivoren(rnd.Next(1, rndValueCarnivoor));

            speelveld.AddCarnivorenToSpeelveld(carnivoren);

            List <Mens> mensen = Mens.CreateMensen(rnd.Next(1, rndValueMens));

            speelveld.AddMensenToSpeelveld(mensen);

            speelveld.ToonSpeelveld();;
            while (!(Console.KeyAvailable && Console.ReadKey(true).Key == ConsoleKey.Escape))
            {
                int lnReturn = speelveld.DoActionsOf1Day(mensen, carnivoren, herbivoren, planten);

                speelveld.ToonSpeelveld();

                speelveld.ResetAllStappen(herbivoren, carnivoren);
                speelveld.RemoveDeletedCarnivoren(ref carnivoren);
                speelveld.RemoveDeletedHerbivoren(ref herbivoren);
                speelveld.RemoveDeletedMensen(ref mensen);

                if (lnReturn == -1)
                {
                    break;  // stop while loop
                }
            }
            Console.CursorVisible = true;
        }
Пример #2
0
        static void DoTest3()
        {
            Console.Clear();

            // test 1
            Speelveld speelveld = new Speelveld(3, 3, 0);

            // . . .
            // . . .
            // . . .

            List <Plant> planten = Plant.CreatePlanten(1);

            planten[0].PosX = 2;
            planten[0].PosY = 1;
            speelveld.AddPlantenToSpeelveld(planten, true);

            // . . .
            // . . .
            // P H .

            List <Herbivoor> herbivoren = Herbivoor.CreateHerbivoren(4);

            herbivoren[0].PosX = 0;
            herbivoren[0].PosY = 1;
            //herbivoren[1].PosX = 0;
            //herbivoren[1].PosY = 2;
            herbivoren[1].PosX = 1;
            herbivoren[1].PosY = 0;
            herbivoren[2].PosX = 1;
            herbivoren[2].PosY = 2;
            herbivoren[3].PosX = 2;
            herbivoren[3].PosY = 1;
            speelveld.AddHerbivorenToSpeelveld(herbivoren, true);

            // . H .
            // H . H
            // P H .

            List <Carnivoor> carnivoren = Carnivoor.CreateCarnivoren(3);

            carnivoren[0].PosX = 0;
            carnivoren[0].PosY = 0;
            carnivoren[1].PosX = 1;
            carnivoren[1].PosY = 1;
            carnivoren[2].PosX = 2;
            carnivoren[2].PosY = 2;
            speelveld.AddCarnivorenToSpeelveld(carnivoren, true);

            // C H .
            // H C H
            // H P C

            List <Mens> mensen = Mens.CreateMensen(1);

            mensen[0].PosX = 0;
            mensen[0].PosY = 2;
            speelveld.AddMensenToSpeelveld(mensen, true);

            speelveld.DoActionsOf1Day(mensen, carnivoren, herbivoren, planten, 10);

            Console.WriteLine("Press a key");
            Console.ReadLine();
        }
Пример #3
0
        static void DoTest1()
        {
            Console.Clear();

            // test 1
            Speelveld speelveld = new Speelveld(3, 3, 0);

            // . . .
            // . . .
            // . . .

            List <Plant> planten = Plant.CreatePlanten(2);

            planten[0].PosX = 1;
            planten[0].PosY = 2;
            planten[1].PosX = 2;
            planten[1].PosY = 1;
            speelveld.AddPlantenToSpeelveld(planten, true);

            // . . .
            // . . P
            // . P .

            List <Herbivoor> herbivoren = Herbivoor.CreateHerbivoren(2);

            herbivoren[0].PosX = 0;
            herbivoren[0].PosY = 1;
            herbivoren[1].PosX = 2;
            herbivoren[1].PosY = 0;
            speelveld.AddHerbivorenToSpeelveld(herbivoren, true);

            // . H .
            // . . P
            // H P .

            List <Carnivoor> carnivoren = Carnivoor.CreateCarnivoren(2);

            carnivoren[0].PosX         = 0;
            carnivoren[0].PosY         = 0;
            carnivoren[1].Levenskracht = 10;
            carnivoren[1].PosX         = 1;
            carnivoren[1].PosY         = 1;
            carnivoren[1].Levenskracht = 10;
            //carnivoren[1].PosX = 1;
            //carnivoren[1].PosY = 0;
            //carnivoren[1].Levenskracht = 10;
            speelveld.AddCarnivorenToSpeelveld(carnivoren, true);

            // C H .
            // . C P
            // H P .

            List <Mens> mensen = Mens.CreateMensen(2);

            mensen[0].PosX         = 1;
            mensen[0].PosY         = 0;
            mensen[0].Levenskracht = 10;
            mensen[1].PosX         = 1;
            mensen[1].PosY         = 1;
            mensen[1].Levenskracht = 15;
            speelveld.AddMensenToSpeelveld(mensen, true);

            // C H .
            // M C P
            // H P M

            speelveld.DoActionsOf1Day(mensen, carnivoren, herbivoren, planten, 10);

            Console.WriteLine("Press a key");
            Console.ReadLine();
        }
Пример #4
0
        public int LoadSpeelveld(string ecFilename, ref List <Mens> mensen, ref List <Carnivoor> carnivoren, ref List <Herbivoor> herbivoren, ref List <Plant> planten)
        {
            int lnAmAdded = 0;

            Console.Clear();
            using (StreamReader loBestand = new StreamReader(ecFilename))
            {
                mensen.Clear();
                carnivoren.Clear();
                herbivoren.Clear();
                planten.Clear();

                for (int x = 0; x < this.GrootteX; x++)
                {
                    for (int y = 0; y < this.GrootteY; y++)
                    {
                        this.Terrarium[x, y] = null;
                    }
                }

                String lcLine = loBestand.ReadLine();
                while (!String.IsNullOrEmpty(lcLine))
                {
                    String[] laCell = lcLine.Split(new[] { ',' });
                    string   lcType = "";
                    int      lnPosX = 0, lnPosY = 0, lnLevenskracht = 0;

                    if (laCell.Length > 0)
                    {
                        lcType = laCell[0];
                    }
                    else
                    {
                        lcType = "";
                    }
                    if (laCell.Length > 1 && Int32.TryParse(laCell[1], out lnPosX))
                    {
                    }
                    else
                    {
                        lnPosX = 0;
                    }
                    if (laCell.Length > 2 && Int32.TryParse(laCell[2], out lnPosY))
                    {
                    }
                    else
                    {
                        lnPosY = 0;
                    }
                    if (laCell.Length > 3 && Int32.TryParse(laCell[3], out lnLevenskracht))
                    {
                    }
                    else
                    {
                        lnLevenskracht = 0;
                    }

                    switch (lcType.ToUpper())
                    {
                    case "M":
                        Mens loMens = new Mens();
                        loMens.PosX         = lnPosX;
                        loMens.PosY         = lnPosY;
                        loMens.Levenskracht = lnLevenskracht;
                        mensen.Add(loMens);
                        lnAmAdded++;
                        break;

                    case "C":
                        Carnivoor loCarnivoor = new Carnivoor();
                        loCarnivoor.PosX         = lnPosX;
                        loCarnivoor.PosY         = lnPosY;
                        loCarnivoor.Levenskracht = lnLevenskracht;
                        carnivoren.Add(loCarnivoor);
                        lnAmAdded++;
                        break;

                    case "H":
                        Herbivoor loHerbivoor = new Herbivoor();
                        loHerbivoor.PosX         = lnPosX;
                        loHerbivoor.PosY         = lnPosY;
                        loHerbivoor.Levenskracht = lnLevenskracht;
                        herbivoren.Add(loHerbivoor);
                        lnAmAdded++;
                        break;

                    case "P":
                        Plant loPlant = new Plant();
                        loPlant.PosX         = lnPosX;
                        loPlant.PosY         = lnPosY;
                        loPlant.Levenskracht = lnLevenskracht;
                        planten.Add(loPlant);
                        lnAmAdded++;
                        break;

                    case "SIZE":
                        this.GrootteX  = lnPosX;
                        this.GrootteY  = lnPosY;
                        this.Terrarium = new IOrganismen[GrootteX, GrootteY];
                        break;
                    }

                    lcLine = loBestand.ReadLine();
                }

                this.AddPlantenToSpeelveld(planten, true);
                this.AddCarnivorenToSpeelveld(carnivoren, true);
                this.AddHerbivorenToSpeelveld(herbivoren, true);
                this.AddMensenToSpeelveld(mensen, true);
            }

            return(lnAmAdded);
        }