Esempio n. 1
0
        public override ISector BuildDecorator()
        {
            int fireDamage = GenerateRandomValue.GetRandom(101);
            int temp       = GenerateRandomValue.GetRandom(30, 45);
            int windSpeed  = GenerateRandomValue.GetRandom(80, 250);

            ISector sector = new Sector(fireDamage);

            if (GenerateRandomValue.NextDouble() < chanceOfDecorate)
            {
                sector = FactoryDecorator.CreateDecorator(sector, DecoratorTypeEnum.DryGrass);
            }

            if (GenerateRandomValue.NextDouble() < chanceOfDecorate)
            {
                sector = FactoryDecorator.CreateDecorator(sector, DecoratorTypeEnum.BigTrees);
            }

            if (GenerateRandomValue.NextDouble() < chanceOfDecorate)
            {
                sector = FactoryDecorator.CreateDecorator(sector, DecoratorTypeEnum.ScaredPeople);
            }

            if (temp > 30)
            {
                sector = FactoryDecorator.CreateDecorator(sector, DecoratorTypeEnum.HotDay, temp);
            }

            if (windSpeed > 80)
            {
                sector = FactoryDecorator.CreateDecorator(sector, DecoratorTypeEnum.WindyDay, windSpeed);
            }

            return(sector);
        }
Esempio n. 2
0
        static List <IPatrol> CreateMockPlaces(int howMany)
        {
            var list = new List <IPatrol>();

            for (int i = 0; i < howMany; i++)
            {
                var option = GenerateRandomValue.GetRandom(0, 3);

                IPatrol place;
                switch (option)
                {
                case 0:
                    place = new StreetCorner(GenerateRandomValue.GetRandom(0, 5));
                    list.Add(place);
                    break;

                case 1:
                    place = new House(GenerateRandomValue.GetRandom(0, 999), GenerateRandomValue.GetRandom(0, 65), GenerateRandomValue.GetRandom(0, 9));
                    list.Add(place);
                    break;

                case 2:
                    place = new Square("", GenerateRandomValue.GetRandom(), GenerateRandomValue.GetRandom(0, 65), GenerateRandomValue.GetRandom(0, 9));
                    list.Add(place);
                    break;
                }
            }

            return(list);
        }
Esempio n. 3
0
        public override ISector BuildDecorator()
        {
            int fireDamage = GenerateRandomValue.GetRandom(101);
            var sector     = new Sector(fireDamage);

            return(FactoryDecorator.CreateDecorator(sector, DecoratorTypeEnum.Basic));
        }
        public override ISector BuildDecorator()
        {
            int fireDamage = GenerateRandomValue.GetRandom(101);
            int rain       = GenerateRandomValue.GetRandom(1, 500);

            ISector sector = new Sector(fireDamage);

            if (rain > 50)
            {
                sector = FactoryDecorator.CreateDecorator(sector, DecoratorTypeEnum.RainingDay, rain);
            }

            return(sector);
        }
        public static ISector CreateDecorator(ISector sector, DecoratorTypeEnum type, int value = 0)
        {
            FactoryDecorator sectorFactory = null;

            switch (type)
            {
            case DecoratorTypeEnum.BigTrees:
                sectorFactory = new BigTreesFactory(sector);
                break;

            case DecoratorTypeEnum.DryGrass:
                sectorFactory = new DryGrassFactory(sector);
                break;

            case DecoratorTypeEnum.HotDay:
                sectorFactory = new HotDayFactory(sector, value);
                break;

            case DecoratorTypeEnum.RainingDay:
                sectorFactory = new RainingDayFactory(sector, value);
                break;

            case DecoratorTypeEnum.ScaredPeople:
                var scaredPeople = GenerateRandomValue.GetRandom(0, 6);
                sectorFactory = new ScaredPeopleFactory(sector, scaredPeople);
                break;

            case DecoratorTypeEnum.WindyDay:
                sectorFactory = new WindyDayFactory(sector, value);
                break;

            case DecoratorTypeEnum.Basic:
                sectorFactory = new BasicFactory(sector);
                break;
            }

            return(sectorFactory.CreateSector());
        }
Esempio n. 6
0
        public void Drive()
        {
            Console.WriteLine("The doctor got into the vehicle.");
            for (int i = 0; i < 5; i++)
            {
                var chance = GenerateRandomValue.GetRandom(0, 11);

                if (chance <= 1)
                {
                    this.MotorEngine.TurnOff();
                    continue;
                }
                else if (this.MotorEngine.GetType() == typeof(TurnedOff))
                {
                    this.MotorEngine.TurnOn();
                }

                if (chance >= 4)
                {
                    this.MotorEngine.Accelerate();
                }
                else
                {
                    this.MotorEngine.Decelerate();
                }

                if (chance >= 9)
                {
                    this.MotorEngine.Brake();
                }

                if (chance > 1 && this.MotorEngine.GetType() == typeof(Broken))
                {
                    this.MotorEngine.Fix();
                }
            }
        }
Esempio n. 7
0
 public bool ThereIsSomethingOutOfOrdinary()
 {
     return(GenerateRandomValue.GetRandom(101) >= 50 ? true : false);
 }
Esempio n. 8
0
        public bool ItHasHeartRhythm()
        {
            var response = GenerateRandomValue.GetRandom(11) > Probability ? true : false;

            return(response);
        }
Esempio n. 9
0
        public bool IsBreathing()
        {
            var response = GenerateRandomValue.GetRandom(11) > Probability ? true : false;

            return(response);
        }