Exemple #1
0
        static void Main(string[] args)
        {
            List     myList     = new List();
            Elephant myElephant = new Elephant();
            Giraffe  myGiraffe  = new Giraffe();
            Coyote   myCoyote   = new Coyote();
            Seals    mySeals    = new Seals();
            Bear     myBear     = new Bear();

            myList.ShowAnimalList();
            Console.ReadKey();

            // Day loop
            int day = 0;

            while (true)
            {
                Console.Clear();
                day++;

                Console.WriteLine("Det är dag " + day + ":");
                System.Console.WriteLine("Vegetarisk kost volym: " + nrOfVeggiesLeft + "\nAnimalisk kost volym: " + nrOfMeatLeft);
                Console.WriteLine("-------");


                // LÄGG TILL DIN NYA KOD HÄR

                myBear.BearHunger();

                myElephant.ElephantHunger();

                myGiraffe.GiraffeHunger();

                myCoyote.CoyoteHunger();

                mySeals.SealHunger();

                if (nrOfMeatLeft == 0 || nrOfVeggiesLeft == 0)
                {
                    Console.Clear();
                    System.Console.WriteLine("Maten är s**t och det måste köpas in mer, ASP!");

                    Console.ReadKey();
                    break;
                }



                Console.ReadKey();
            }
        }
        public static void MoreAnimals()
        {
            Program list = new Program();

            Elephant myElephant = new Elephant();

            myElephant.species = "Elefant";
            myElephant.name    = "Jonas";
            myElephant.hungry  = 0;
            Program.myZoo.Add(myElephant);

            Coyote myCoyote = new Coyote();

            myCoyote.species = "Prärievarg";
            myCoyote.name    = "Martin";
            myCoyote.hungry  = 0;
            Program.myZoo.Add(myCoyote);

            Seal mySeal = new Seal();

            mySeal.species = "Säl";
            mySeal.name    = "Malin";
            mySeal.hungry  = 0;
            Program.myZoo.Add(mySeal);

            Bear myBear = new Bear();

            myBear.species = "Björn";
            myBear.name    = "Lucas";
            myBear.hungry  = 0;
            Program.myZoo.Add(myBear);

            Giraffe myGiraffe = new Giraffe();

            myGiraffe.species = "Giraff";
            myGiraffe.name    = "Viktor";
            myGiraffe.hungry  = 0;
            Program.myZoo.Add(myGiraffe);
        }
Exemple #3
0
        static void Main(string[] args)
        {
            Console.Clear();
            //Skapar listan animalsList av klassen Animal.
            List <Animal> animalsList = new List <Animal>();

            //Skapar ett antal djur av olka klasser och lägger in dom i listan animalsList.
            Elephant elephant = new Elephant("Dolores");

            animalsList.Add(elephant);
            elephant = new Elephant("Flores");
            animalsList.Add(elephant);
            Giraffe giraffe = new Giraffe("Charlie");

            animalsList.Add(giraffe);
            Coyote coyote = new Coyote("Huff");

            animalsList.Add(coyote);
            coyote = new Coyote("Puff");
            animalsList.Add(coyote);
            Seal seal = new Seal("Bobby");

            animalsList.Add(seal);
            Bear bear = new Bear("Bobo");

            animalsList.Add(bear);

            //Skapar ett objekt av klassen Leaf respektive Meat med vardera värdet 50.
            Leaf leaf = new Leaf(50);
            Meat meat = new Meat(50);

            Console.WriteLine("Välkommen till djurparken!\nHär finns följande djur:\n");

            if (animalsList.Count != 0)
            {
                //loopar igenom listan animallist.
                // Indexerar listan och kör metoden content på varje element i listan.
                // Metoden content ligger i varje klass.
                for (int i = 0; i < animalsList.Count; i++)
                {
                    Console.WriteLine(animalsList[i].Content());
                    // Viktors version av ovanstående.
                    // Console.WriteLine(animalsList[i].ToString());
                }
            }
            Console.ReadKey();

            // Day loop
            int day = 0;

            while (true)
            {
                Console.Clear();
                day++;
                Console.WriteLine("Det är dag " + day + ":");
                //Kontrollerar om det finns några blad kvar.
                if (leaf.Level == 0)
                {
                    Console.WriteLine("Det är s**t på blad. Alla växtätare kommer nu att dö. Köttätarna kan dock äta de döda växtätarna och klara sig ett tag till...");
                    Console.WriteLine("Programmet avslutas");
                    Console.ReadKey();
                    break;
                }
                //Kontrollerar om det finns några köttbitar kvar.
                if (meat.Level == 0)
                {
                    Console.WriteLine("Det är s**t på kött. Alla köttätare komer nu att dö.");
                    Console.WriteLine("Programmet avslutas");
                    break;
                }

                //Går igenom animalsList och ökar hungernivån på samtliga djur med 1.
                foreach (Animal animal in animalsList)
                {
                    animal.HungerLevel++;

                    //Om djurens hungernivå och nivån då dom är hungriga är lika så ändras djurens (objektets) bool Is.Hungry till "true".
                    if (animal.HungryAt == animal.HungerLevel)
                    {
                        animal.IsHungry = true;
                    }
                }

                //Går igenom animalsList och jämför vilka djur vars hunger nivå INTE är lika stor som om dom är hungriga.
                //Text skrivs ut om att dessa inte behöver äta.
                foreach (Animal animal in animalsList)
                {
                    if (animal.HungryAt != animal.HungerLevel)
                    {
                        Console.WriteLine(animal.Type + "en " + animal.Name + " behöver inte äta.");
                    }
                }

                //loopar anialsList.
                foreach (Animal animal in animalsList)
                {
                    //Om djurens bool IsHungry är true (djuren måste äta).
                    if (animal.IsHungry == true)
                    {
                        //Om djuret i fråga äter kött.
                        if (animal.FoodType == "meat")
                        {
                            //Kör metoder Eat(meat) samt skriver ut djurets typ, namne, att den åt en bit kött samt hur mycket kött som finns kvar.
                            animal.Eat(meat);
                            Console.WriteLine(animal.Type + "en " + animal.Name + " var hungrig och åt en köttbit." + meat);
                        }
                        //Om djuret i fråga äter blad.
                        else if (animal.FoodType == "leaf")
                        {
                            //Kör metoder Eat(leaf) samt skriver ut djurets typ, namne, att den åt ett blad samt hur många blad som finns kvar.
                            animal.Eat(leaf);
                            Console.WriteLine(animal.Type + "en " + animal.Name + " var hungrig och åt ett löv." + leaf);
                        }
                        //Om djuret i fråga äter både kött och blad (björn).
                        else
                        {
                            //Om antalet kvarvarande blad är högre än 0.
                            if (leaf.Level > 0)
                            {
                                //Funktionen Eat(leaf) körs. Skriver ut djurets typ, namne, att den åt ett blad samt hur många blad som finns kvar.
                                animal.Eat(leaf);
                                Console.WriteLine(animal.Type + "en " + animal.Name + " var hungrig och åt ett blad." + leaf);
                            }
                            else
                            {
                                //Funktionen Eat(meat) körs. Skriver ut djurets typ, namne, att den åt en bit kött samt hur mycket kött som finns kvar.
                                animal.Eat(meat);
                                Console.WriteLine(animal.Type + "en " + animal.Name + " var hungrig och åt en köttbit." + meat);
                            }
                        }
                        //Efter att djuret har ätit sätts djurets bool IsHungry till false.
                        animal.IsHungry = false;
                    }
                }



                Console.ReadKey();
            }
        }
        static void Main(string[] args)
        {
            List <Animal> zoo = new List <Animal>();

            //Skapar och lägger till djur med namn och hungernivå i zoo
            Bear zooBear1 = new Bear("Berit", 0);

            zoo.Add(zooBear1);

            Bear zooBear2 = new Bear("Bert", 0);

            zoo.Add(zooBear2);

            Coyote zooCoyote1 = new Coyote("Calle", 0);

            zoo.Add(zooCoyote1);

            Coyote zooCoyote2 = new Coyote("Cissi", 0);

            zoo.Add(zooCoyote2);

            Elephant zooElephant1 = new Elephant("Erik", 0);

            zoo.Add(zooElephant1);

            Elephant zooElephant2 = new Elephant("Evert", 0);

            zoo.Add(zooElephant2);

            Giraffe zooGiraffe1 = new Giraffe("Gillian", 0);

            zoo.Add(zooGiraffe1);

            Giraffe zooGiraffe2 = new Giraffe("Gurly", 0);

            zoo.Add(zooGiraffe2);

            Seal zooSeal1 = new Seal("Sven", 0);

            zoo.Add(zooSeal1);

            Seal zooSeal2 = new Seal("Svea", 0);

            zoo.Add(zooSeal2);
            int nrOfMeatLeft    = 50;
            int nrOfVeggiesLeft = 50;

            int day = 0;

            // En loop för att göra ny dag
            while (true)
            {
                Console.Clear();
                day++;
                Console.WriteLine("Det är dag " + day + ":");

                foreach (Animal animals in zoo)
                {
                    animals.ListOfAnimals(ref nrOfVeggiesLeft, ref nrOfMeatLeft);
                }
                if (nrOfVeggiesLeft == 0 || nrOfMeatLeft == 0)
                {
                    Console.WriteLine("Det är nu dag {0} och maten är s**t!", day);
                    Console.WriteLine("Välkommen tillbaka näst år!");
                    return;
                }
                Console.WriteLine("Det finns nu, {0} köttbitar kvar och {1} blad kvar", nrOfMeatLeft, nrOfVeggiesLeft);
                Console.WriteLine("-------");


                // Wait for the next day
                Console.ReadKey();
            }
        }
        static void Main(string[] args)
        {
            List <Animal> animalList = new List <Animal>();
            Seal          mySeals    = new Seal("Sälis", 0, "kött", 13);

            animalList.Add(mySeals);
            Bear myBears = new Bear("Björne", 0, "kött & blad", 3);

            animalList.Add(myBears);
            Coyote myCoyote = new Coyote("Cajsa", 0, "kött", 15);

            animalList.Add(myCoyote);
            Elephant myElephant = new Elephant("Elias", 0, "blad", 10);

            animalList.Add(myElephant);
            Giraffe myGiraffe = new Giraffe("Gifflan", 0, "blad", 7);

            animalList.Add(myGiraffe);
            Giraffe myGiraffe2 = new Giraffe("Henrik", 0, "blad", 7);

            animalList.Add(myGiraffe2);

            /*for (int i =0; i < animalList.Count; i++)
             * {
             *  Console.WriteLine("Animal: {0} |Name: {1} | Diet: {2} | Hungerlevel: {3}",animalList[i].Type, animalList[i].Name, animalList[i].Diet, animalList[i].HungerLvl);
             * }*/
            foreach (var animal in animalList)
            {
                Console.WriteLine("Animal: {0} |Name: {1} | Diet: {2} | Hungerlevel: {3}", animal.Type, animal.Name, animal.Diet, animal.HungerLvl);
            }

            // Day loop
            int nrOfMeatLeft    = 50;
            int nrOfVeggiesLeft = 50;
            int day             = 0;


            while (true)
            {
                day++;
                Console.WriteLine("_______________");
                Console.WriteLine("Det är dag " + day + ":");
                Console.WriteLine();

                // LÄGG TILL DIN NYA KOD HÄR
                foreach (var animal in animalList)
                {
                    animal.HungerLvl++;
                    //Console.WriteLine("Animal: {0} |Name: {1} | Diet: {2} | Hungerlevel: {3}",animal.Type, animal.Name, animal.Diet, animal.HungerLvl);


                    if (animal.HungerLvl >= animal.FeedTime)
                    {
                        if (animal.Diet == "kött" && nrOfMeatLeft > 0)
                        {
                            animal.HungerLvl = 0;
                            nrOfMeatLeft--;
                            Console.WriteLine("{0}en {1} fick äta {2}. Det finns {3} {4}bitar kvar", animal.Type, animal.Name, animal.Diet, nrOfMeatLeft, animal.Diet);
                        }
                        else if (animal.Diet == "blad" && nrOfVeggiesLeft > 0)
                        {
                            animal.HungerLvl = 0;
                            nrOfVeggiesLeft--;
                            Console.WriteLine("{0}en {1} fick äta {2}. Det finns {3} {4} kvar", animal.Type, animal.Name, animal.Diet, nrOfVeggiesLeft, animal.Diet);
                        }
                        else if (animal.Diet == "kött & blad")
                        {
                            if (nrOfMeatLeft > 0 || nrOfVeggiesLeft > 0)
                            {
                                if (nrOfVeggiesLeft > nrOfMeatLeft)
                                {
                                    animal.HungerLvl = 0;
                                    nrOfVeggiesLeft--;
                                    Console.WriteLine("{0}en {1} fick äta blad. Det finns {3} blad kvar", animal.Type, animal.Name, animal.Diet, nrOfVeggiesLeft);
                                }
                                else if (nrOfMeatLeft > nrOfVeggiesLeft)
                                {
                                    animal.HungerLvl = 0;
                                    nrOfMeatLeft--;
                                    Console.WriteLine("{0}en {1} fick äta kött. Det finns {3} köttbitar kvar", animal.Type, animal.Name, animal.Diet, nrOfMeatLeft);
                                }
                                else
                                {
                                    Random oneOrTwo = new Random();
                                    int    twoOrOne = oneOrTwo.Next(1, 3);

                                    if (twoOrOne == 1)
                                    {
                                        animal.HungerLvl = 0;
                                        nrOfVeggiesLeft--;
                                        Console.WriteLine("{0}en {1} fick äta blad. Det finns {3} blad kvar", animal.Type, animal.Name, animal.Diet, nrOfVeggiesLeft);
                                    }
                                    else if (twoOrOne == 2)
                                    {
                                        animal.HungerLvl = 0;
                                        nrOfMeatLeft--;
                                        Console.WriteLine("{0}en {1} fick äta kött. Det finns {3} köttbitar kvar", animal.Type, animal.Name, animal.Diet, nrOfMeatLeft);
                                    }
                                }
                            }
                            else
                            {
                                break;
                            }
                        }
                        else
                        {
                            Console.WriteLine("{0}en {1} behövde äta idag men det finns ingen mat kvar");
                        }
                    }
                    else if (animal.HungerLvl < animal.FeedTime)
                    {
                        Console.WriteLine("{0}en {1} behöver inte äta idag", animal.Type, animal.Name);
                    }
                }

                // Wait for the next day
                Console.ReadKey();
            }
        }