Exemplo n.º 1
0
        //Create Flower
        //paint flower
        //update lifecycle Flower
        //remove flower
        public void CreateFlower()
        {
            _landscapeDimmensions = _landscape.GetLandscapeDimmensions();
            Point randomFlowerLocationPoint = GetRandomLocation(_landscapeDimmensions.Height, _landscapeDimmensions.Width);
            Size  flowerSize = new Size(_defaultFlowerWidth, _defaultFlowerHeight);

            IFlower    flower       = (IFlower)_lifeFactory.CreateLivingBeing(Enums.LivingEntityEnum.Flower);
            List <int> availableIds = GetAllFlowers().Select(a => a.FlowerID).ToList();

            flower.FlowerID                     = _utilitiesResolver.GetMinimumNumberFromASequenceOfNumbers(availableIds);
            flower.FlowerLocation               = new Rectangle(randomFlowerLocationPoint, flowerSize);
            flower.FlowerImageStage             = Properties.Resource.plant01;
            flower.FlowerStage                  = FlowerLifeCycleEnum.Birth1;
            flower.FlowerPollenContainer        = rand.Next(_minPollenCount, _maxPollenCount);
            flower.MinimumCountsToDisplayFlower = SetMinimumCounterToDisplayFlower();
            flower.CountsToDisplayFlower        = 0;
            flower.FlowerIsOnDisplay            = false;
            flower.FlowerPollenArea             = new Rectangle(0, 0, 0, 0);
            flowers.Add(flower);
        }