Esempio n. 1
0
        static void Main(string[] args)
        {
            MazeGame game = new MazeGame();
            Maze     maze = game.CreateMazeByFactoyrMethod();

            maze.RoomNo(1).Enter();

            BombedMazeGame bomb     = new BombedMazeGame();
            Maze           bombMaze = bomb.CreateMazeByFactoyrMethod();

            bombMaze.RoomNo(1).Enter();
        }
Esempio n. 2
0
        static void Main(string[] args)
        {
            MazeGame             game             = new MazeGame();
            MazePrototypeFactory protoTypeFactory = new MazePrototypeFactory(new Maze(), new Wall(), new Room(1), new Door());
            Maze maze = game.CreateMazeByAbstractFactory(protoTypeFactory);

            maze.RoomNo(1).Enter();

            MazeGame             game2             = new MazeGame();
            MazePrototypeFactory protoTyprFactory2 = new MazePrototypeFactory(new Maze(), new WallWithBomb(), new RoomWithABomb(1), new Door());
            Maze maze2 = game.CreateMazeByAbstractFactory(protoTyprFactory2);

            maze2.RoomNo(1).Enter();
        }
Esempio n. 3
0
        static void Main(string[] args)
        {
            //change factory, change kind of maze.
            MazeFactory mazeFactory = new MazeFactory();
            MazeGame    game        = new MazeGame();
            Maze        maze        = game.CreateMase(mazeFactory);

            maze.RoomNo(1).Enter();

            EnchantedMazeFactory enchante = new EnchantedMazeFactory();
            Maze enchantedMaze            = game.CreateMase(enchante);

            enchantedMaze.RoomNo(1).Enter();
        }
Esempio n. 4
0
        static void Main(string[] args)
        {
            MazeBuilder builder = new StandardMazeBuilder();
            MazeGame    game    = new MazeGame();
            Maze        maze    = game.CreateMaseByBuilder(builder);

            CountingMazeBuilder CountingBuilder = new CountingMazeBuilder();

            game.CreateMaseByBuilder(CountingBuilder);
            int roomCount;
            int doorCount;

            CountingBuilder.GetCounts(out roomCount, out doorCount);
            Console.WriteLine("RoomCount: {0}\nDoorCount: {1}", roomCount, doorCount);
        }