static void Main(string[] args)
        {
            IRenderer renderer = new ConsoleRenderer(WorldRows, WorldCols);
            IUserInterface keyboard = new KeyboardInterface();

            ShootingEngine gameEngine = new ShootingEngine(renderer, keyboard, 120);

            keyboard.OnLeftPressed += (sender, eventInfo) =>
            {
                gameEngine.MovePlayerRacketLeft();
            };

            keyboard.OnRightPressed += (sender, eventInfo) =>
            {
                gameEngine.MovePlayerRacketRight();
            };
            keyboard.OnActionPressed += (sender, eventInfo) =>
            {
                gameEngine.ShootPlayerRacket();
            };

            Initialize(gameEngine);

            //

            gameEngine.Run();
        }
        static void Main(string[] args)
        {
            IRenderer      renderer = new ConsoleRenderer(WorldRows, WorldCols);
            IUserInterface keyboard = new KeyboardInterface();

            ShootingEngine gameEngine = new ShootingEngine(renderer, keyboard);

            keyboard.OnLeftPressed += (sender, eventInfo) =>
            {
                gameEngine.MovePlayerRacketLeft();
            };

            keyboard.OnRightPressed += (sender, eventInfo) =>
            {
                gameEngine.MovePlayerRacketRight();
            };

            // TASK 13
            // Allows shooting
            keyboard.OnActionPressed += (sender, eventInfo) =>
            {
                gameEngine.ShootPlayerRacket();
            };
            // END TASK 13
            Initialize(gameEngine);

            //

            gameEngine.Run();
        }
        static void Main(string[] args)
        {
            IRenderer      renderer = new ConsoleRenderer(WorldRows, WorldCols);
            IUserInterface keyboard = new KeyboardInterface();

            int sleep = 300;

            Engine gameEngine = new Engine(renderer, keyboard, sleep);

            keyboard.OnLeftPressed += (sender, eventInfo) =>
            {
                gameEngine.MovePlayerRacketLeft();
            };

            keyboard.OnRightPressed += (sender, eventInfo) =>
            {
                gameEngine.MovePlayerRacketRight();
            };

            ShootingEngine gameShootingEngine = new ShootingEngine(renderer, keyboard, 200);

            keyboard.OnActionPressed += (sender, eventInfo) =>
            {
                gameShootingEngine.ShootRacket();
            };

            Initialize(gameEngine);

            gameEngine.Run();
        }
        static void Main(string[] args)
        {
            IRenderer renderer = new ConsoleRenderer(WorldRows, WorldCols);
            IUserInterface keyboard = new KeyboardInterface();

            //Engine gameEngine = new Engine(renderer, keyboard);
            ShootingEngine gameEngine = new ShootingEngine(renderer, keyboard, 400);

            //Task 01
            for (int i = 0; i < WorldRows; i++)
            {
                gameEngine.AddObject(new IndestructibleBlock(new MatrixCoords(i, 0)));
                gameEngine.AddObject(new IndestructibleBlock(new MatrixCoords(i, WorldCols - 1)));
            }
            for (int i = 0; i < WorldCols; i++)
            {
                gameEngine.AddObject(new IndestructibleBlock(new MatrixCoords(0, i)));
            }

            keyboard.OnLeftPressed += (sender, eventInfo) =>
            {
                gameEngine.MovePlayerRacketLeft();
            };

            keyboard.OnRightPressed += (sender, eventInfo) =>
            {
                gameEngine.MovePlayerRacketRight();
            };

            keyboard.OnActionPressed += (sender, eventInfo) =>
            {
                gameEngine.ShootPlayerRacket();
            };

            Initialize(gameEngine);

            gameEngine.Run();

           
        }
        static void Main(string[] args)
        {
            IRenderer renderer = new ConsoleRenderer(WorldRows, WorldCols);
            IUserInterface keyboard = new KeyboardInterface();

            // Engine gameEngine = new Engine(renderer, keyboard);
            // Implementing Engine that have shooting capability
            ShootingEngine gameEngine = new ShootingEngine(renderer, keyboard);

            keyboard.OnLeftPressed += (sender, eventInfo) =>
            {
                gameEngine.MovePlayerRacketLeft();
            };

            keyboard.OnRightPressed += (sender, eventInfo) =>
            {
                gameEngine.MovePlayerRacketRight();
            };

            // attaches shooting ability as keybord event (using spacebar)
            keyboard.OnActionPressed += (sender, eventInfo) =>
            {
                gameEngine.ShootPlayerRacket();
            };
            Initialize(gameEngine);

            //

            gameEngine.Run();
        }
Example #6
0
        static void Main()
        {
            Console.BufferWidth = Console.WindowWidth = WorldCols + InfofieldWidth;
            Console.BufferHeight = Console.WindowHeight = WorldRows;

            IRenderer renderer = new ConsoleRenderer(WorldRows, WorldCols);
            IUserInterface keyboard = new KeyboardInterface();

            ShootingEngine gameEngine = new ShootingEngine(renderer, keyboard, 80);

            keyboard.OnLeftPressed += (sender, eventInfo) => { gameEngine.MovePlayerRacketLeft(WallGap + WallWidth); };
            keyboard.OnRightPressed += (sender, eventInfo) => { gameEngine.MovePlayerRacketRight(3 * WallGap - RacketLength); };
            keyboard.OnActionPressed += (sender, eventInfo) => { gameEngine.ShootPlayerRacket(); };

            Initialize(gameEngine);

            List<dynamic> infoList = new List<dynamic>();
            infoList.Add("Balls:");
            infoList.Add(String.Empty);
            infoList.Add("o Normal ball");
            infoList.Add(String.Empty);
            infoList.Add("O Unstoppable");
            infoList.Add(String.Empty);
            infoList.Add("♦ Meteorite");
            infoList.Add(String.Empty);
            infoList.Add(String.Empty);
            infoList.Add("Blocks:");
            infoList.Add(String.Empty);
            infoList.Add("▒ Normal block");
            infoList.Add(String.Empty);
            infoList.Add("▓ Unpassable");
            infoList.Add(String.Empty);
            infoList.Add("█ Indestructible");
            infoList.Add(String.Empty);
            infoList.Add("☼ Bomb");
            infoList.Add(String.Empty);
            infoList.Add("♥ Gift");

            gameEngine.Run(infoList, new MatrixCoords(1, WorldCols + 2));
        }