コード例 #1
0
 public static bool CanEat(AnimalSize size, Diet diet, AnimalSize foodSize, Diet foodDiet)
 {
     if (diet.type == DietType.Herbivores)
     {
         if (foodDiet.type == DietType.None)
         {
             return(true);
         }
         else
         {
             return(false);
         }
     }
     if (diet.type == DietType.Carnivorous)
     {
         if (foodDiet.type == DietType.Herbivores && foodSize.value <= (size.value - 1.5f))
         {
             return(true);
         }
         if (foodDiet.type == DietType.Carnivorous && foodSize.value <= (size.value - 2))
         {
             return(true);
         }
         else
         {
             return(false);
         }
     }
     return(false);
 }
コード例 #2
0
 //Constructor
 public Animal(AnimalDiet diet, AnimalSize size)
 {
     this.Diet = diet;
     this.Size = size;
     n         = nCounter;
     nCounter++;
 }
コード例 #3
0
 public Animal(AnimalSize size, AnimalEater eater)
 {
     Size   = size;
     Eater  = eater;
     Points = (int)size;
     Name   = GetName(size, eater);
 }
コード例 #4
0
        private string GetName(AnimalSize size, AnimalEater eater)
        {
            string adjective = size == AnimalSize.Small ? "Kleine" : size == AnimalSize.Medium ? "Gemiddelde" : "Grote";

            string noun = eater == AnimalEater.MeatEater ? "vleeseter" : "planteneter";

            return($"{adjective} {noun}");
        }
コード例 #5
0
        public void buttonAddAnimal_Click(object sender, EventArgs e)
        {
            AnimalType foodType = (AnimalType)Enum.Parse(typeof(AnimalType), comboBoxFoodType.Text);
            AnimalSize size     = (AnimalSize)Enum.Parse(typeof(AnimalSize), comboBoxSize.Text);

            train.AddAnimalToTrain(foodType, size);
            UpdateInterface();
        }
コード例 #6
0
        private void BtnSave_Click(object sender, EventArgs e)
        {
            double     weight, length, height;
            AnimalSize temp = null;

            if (TryParse.Double(tbxWeight, out weight) && TryParse.Double(tbxLength, out length) && TryParse.Double(tbxHeight, out height))
            {
                temp = new AnimalSize((float)weight, (float)length, (float)height);
            }
            animal.size = temp;
            Close();
        }
コード例 #7
0
 private bool WontEatOrGetEaten(bool smallestAnimalIsCarnivore, AnimalSize smallestAnimal)
 {
     if (AnimalSize > smallestAnimal && smallestAnimalIsCarnivore == true)
     {
         return(true);
     }
     else if (AnimalSize > smallestAnimal)
     {
         return(true);
     }
     return(false);
 }
コード例 #8
0
 private bool WontEatOrGetEaten(AnimalSize smallestAnimal)
 {
     if (FoodType == AnimalType.Carnivore)
     {
         if (AnimalSize < smallestAnimal || smallestAnimal == AnimalSize.Nothing)
         {
             return(true);
         }
     }
     else if (FoodType != AnimalType.Carnivore)
     {
         return(true);
     }
     return(false);
 }
コード例 #9
0
        public ActionResult New(AnimalSizeNewViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                return(View(viewModel));
            }

            AnimalSize newAnimalType = new AnimalSize()
            {
                Name     = viewModel.Name,
                StatusId = viewModel.StatusId
            };

            _animalSizeService.New(newAnimalType);
            return(RedirectToAction("Index"));
        }
コード例 #10
0
        //Takes the info and puts it into a list of animals. After that, it adds the data to a ListView.
        private void BAddAnimal_Click(object sender, EventArgs e)
        {
            AnimalSize size     = (AnimalSize)Enum.Parse(typeof(AnimalSize), CBAnimalSize.SelectedValue.ToString());
            AnimalType foodtype = (AnimalType)Enum.Parse(typeof(AnimalType), CBanimalType.SelectedValue.ToString());
            int        points   = (int)size;

            //Create animal
            Animal a = new Animal(size, foodtype, points);

            animals.Add(a);

            //Add animal to table
            var item = new ListViewItem(new[] { CBAnimalSize.SelectedValue.ToString(), CBanimalType.SelectedValue.ToString(), points.ToString() });

            LVanimals.Items.Add(item);
            LVanimals.Visible = true;
        }
コード例 #11
0
        private void AddAnimal_Click(object sender, EventArgs e)
        {
            string name = TxtName.Text;

            //AnimalSize size = (AnimalSize)Enum.Parse(typeof(AnimalSize), CmbSize.SelectedItem.ToString());
            //AnimalSpecies species = (AnimalSpecies)Enum.Parse(typeof(AnimalSpecies), CmbSpecies.SelectedItem.ToString());
            AnimalSize    size    = (AnimalSize)CmbSize.SelectedItem;
            AnimalSpecies species = (AnimalSpecies)CmbSpecies.SelectedItem;
            Animal        animal  = new Animal(name, size, species);

            train.animals.Add(animal);
            LstAnimals.Items.Clear();
            foreach (var i in train.animals)
            {
                LstAnimals.Items.Add(i);
            }
        }
コード例 #12
0
        public ActionResult Edit(AnimalSizeEditViewModel viewModel)
        {
            if (!ModelState.IsValid)
            {
                return(View(viewModel));
            }

            // viewModel to AnimalType entity
            AnimalSize editedAnimalSize = new AnimalSize()
            {
                Id       = viewModel.Id,
                Name     = viewModel.Name,
                StatusId = viewModel.StatusId,
            };

            _animalSizeService.Edit(editedAnimalSize);
            return(RedirectToAction("Index"));
        }
コード例 #13
0
        private void AnimalSizeComboBox_SelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            var value = AnimalSizeComboBox.SelectedValue.ToString();

            if (value.ToLower().Contains("small"))
            {
                _size = AnimalSize.Small;
            }

            if (value.ToLower().Contains("medium"))
            {
                _size = AnimalSize.Medium;
            }

            if (value.ToLower().Contains("large"))
            {
                _size = AnimalSize.Large;
            }
        }
コード例 #14
0
        public static List <Animal> CreateRandomAnimals(int Amount)
        {
            var Animals = new List <Animal>();

            for (int i = 0; i < Amount; i++)
            {
                Random random = new Random();

                var        Values     = Enum.GetValues(typeof(AnimalSize));
                AnimalSize RandomSize = (AnimalSize)Values.GetValue(random.Next(Values.Length));

                Values = Enum.GetValues(typeof(AnimalDiet));
                AnimalDiet RandomDiet = (AnimalDiet)Values.GetValue(random.Next(Values.Length));

                Animals.Add(new Animal($"Animal #{i}", RandomDiet, RandomSize));
            }

            return(Animals);
        }
コード例 #15
0
        public Animal(AnimalSize size, AnimalType animalType)
        {
            isInWagon = false;
            switch (size)
            {
            case AnimalSize.small:
                points = 1;
                break;

            case AnimalSize.medium:
                points = 3;
                break;

            case AnimalSize.large:
                points = 5;
                break;
            }

            Type = animalType;
        }
コード例 #16
0
ファイル: Form1.cs プロジェクト: justinvandelaar/S2-Fontys
        private void AddAnimalBTN_Click(object sender, EventArgs e)
        {
            //Check wich radiobutton is selected in both the group boxes and make a new animal size int
            var sizeButton = AnimalSizeGB.Controls.OfType <RadioButton>()
                             .FirstOrDefault(r => r.Checked);
            var dietButton = AnimalDietGB.Controls.OfType <RadioButton>()
                             .FirstOrDefault(r => r.Checked);


            //Cast the given strings from the radiobuttons in to a diet and size enum
            Diet       dietName   = (Diet)Diet.Parse(typeof(Diet), dietButton.Text);
            AnimalSize animalSize = (AnimalSize)Enum.Parse(typeof(AnimalSize), sizeButton.Text);

            //Make a new animal and add it to the List View/List Box
            Animal animal = new Animal(animalSize, dietName);

            //AnimalLV.Items.Add($"Animal size: {animal.AnimalSize} and diet: {animal.Diet}");
            AnimalLB.Items.Add($"Animal size: {animal.AnimalSize} and diet: {animal.Diet}");
            Animals.Add(animal);
        }
コード例 #17
0
        public Animal(AnimalType type, AnimalSize size)
        {
            animalSize  = size;
            animalType  = type;
            animalValue = Convert.ToInt32(size);

            switch (GetAnimalSize)
            {
            case AnimalSize.Small:
                PointsToAdd = 1;
                break;

            case AnimalSize.Medium:
                PointsToAdd = 3;
                break;

            case AnimalSize.Large:
                PointsToAdd = 5;
                break;
            }
        }
コード例 #18
0
ファイル: Form1.cs プロジェクト: RageMouse/Circustrein
        private void btnAddAnimals_Click(object sender, EventArgs e)
        {
            if (numAmountOfAnimals.Value > 0)
            {
                AnimalSize size     = (AnimalSize)Enum.Parse(typeof(AnimalSize), cbSize.SelectedValue.ToString());
                FoodType   foodtype = (FoodType)Enum.Parse(typeof(FoodType), cbFood.SelectedValue.ToString());
                int        points   = (int)size;

                //Aantal animals aanmaken
                for (int i = 0; i < numAmountOfAnimals.Value; i++)
                {
                    Animal a = new Animal();
                    a.animalSize = size;
                    a.foodType   = foodtype;
                    a.points     = points;
                    _wagonContext.AddAnimal(a);

                    //Toevoegen aan listview
                    var item = new ListViewItem(new[] { cbSize.SelectedValue.ToString(), cbFood.SelectedValue.ToString(), points.ToString() });
                    lvAnimals.Items.Add(item);
                }
            }
        }
コード例 #19
0
        // methods

        /// <summary>
        /// Try adding an animal to a wagon. Refuse to do so if the animal
        /// doesn't fit with the others or if adding the animal results
        /// in eating conflicts with the other animals.
        /// </summary>
        /// <param name="_animal"></param>
        /// <returns>Wheather adding the animal succeeded</returns>
        public bool addAnimal(Animal _animal)
        {
            // capacity check
            int capacityUsed = 0; // Counts the space that has been used by other animals

            foreach (Animal animal in animals)
            {
                capacityUsed += (int)animal.Size;
            }
            if (capacityUsed + (int)_animal.Size > 10) // check if the new animal will fit
            {
                return(false);
            }

            // eating check
            foreach (Animal animal in animals)
            {
                if (animal.Carnivore && _animal.Carnivore)
                {
                    // There can be no two carnivores in the same wagon
                    return(false);
                }
                else if (animal.Carnivore || _animal.Carnivore)
                {
                    AnimalSize CarnSize = animal.Carnivore ? animal.Size : _animal.Size;
                    AnimalSize herbSize = animal.Carnivore ? _animal.Size : animal.Size;
                    if (CarnSize >= herbSize)
                    {
                        return(false);
                    }
                }
            }

            animals.Add(_animal); // Add the animal
            return(true);         // Animal didn't fit
        }
コード例 #20
0
 public Animal(int _id, AnimalSize _size, bool _meateater)
 {
     ID        = _id;
     MeatEater = _meateater;
     Size      = _size;
 }
コード例 #21
0
ファイル: Animal.cs プロジェクト: Rick-jpg/CircusTrein
 public Animal(AnimalType type, AnimalSize size)
 {
     this.type = type;
     this.size = size;
 }
コード例 #22
0
 public Animal(string name, Diet diet, AnimalSize size)
 {
     Name       = name;
     Diet       = diet;
     AnimalSize = size;
 }
コード例 #23
0
ファイル: Animals.cs プロジェクト: Luca-Bulles/CircusTrein
 //Class Constructors
 public Animal(string name, AnimalSize size, AnimalDiet diet)
 {
     this.Name = name;
     this.Size = size;
     this.Diet = diet;
 }
コード例 #24
0
ファイル: Animal.cs プロジェクト: gelebus/circustrein
 public Animal(AnimalSize size, Diet diet)
 {
     Size   = size;
     Diet   = diet;
     Points = Convert.ToInt32(size);
 }
コード例 #25
0
ファイル: Animal.cs プロジェクト: Njols/Circustrain
 public Animal(AnimalSize size)
 {
     Size = size;
 }
コード例 #26
0
 // constructor
 public Animal(bool _carnivore, AnimalSize _size)
 {
     Carnivore = _carnivore;
     Size      = _size;
 }
コード例 #27
0
 public Carnivore(AnimalSize Size)
 {
     this.size = Size;
 }
コード例 #28
0
        public void CreateAndAddAnimal(AnimalSize size, AnimalEatOptions eat)
        {
            Animal animal = new Animal(size, eat);

            AnimalList.Add(animal);
        }
コード例 #29
0
 public Herbivore(AnimalSize Size)
 {
     this.size = Size;
 }
コード例 #30
0
 public Crab(AnimalSize size) : base(size)
 {
 }