Beispiel #1
0
        public GameOverView(IRenderProxy render,
                            IGamePlayfieldView playfieldView)
        {
            this.render        = render;
            this.playfieldView = playfieldView;

            GameOverMessage = PrepareGameOverMessage();
        }
Beispiel #2
0
        public StartPlayView(IRenderProxy render,
                             IGamePlayfieldView playfieldView)
        {
            this.render        = render;
            this.playfieldView = playfieldView;

            PressButtonToPlayMessage = PreparePressButtonToPlayMessage();
        }
Beispiel #3
0
        public StopPlayView(IRenderProxy render,
                            IGamePlayfieldView playfieldView)
        {
            this.render        = render;
            this.playfieldView = playfieldView;

            StopPlayMessage = PrepareStopPlayMessage();
        }
Beispiel #4
0
 public GameBeginView(IRenderProxy render,
                      IGamePlayfieldView playfieldView,
                      IMenuView menuView)
 {
     this.render        = render;
     this.menuView      = menuView;
     this.playfieldView = playfieldView;
     TitleMessage       = render.PrepareTextLine(model.GetTitle(), 0);
 }
Beispiel #5
0
 public GamePlayView(IRenderProxy render,
                     IGamePlayfieldView playfieldView,
                     IInfoPanelView infoView,
                     IPadManager padManager,
                     IBallManager ballManager,
                     ITailManager tailManager
                     )
 {
     this.render        = render;
     this.playfieldView = playfieldView;
     this.infoView      = infoView;
     this.padManager    = padManager;
     this.ballManager   = ballManager;
     this.tailManager   = tailManager;
 }
Beispiel #6
0
        public Window(IGameEngine game)
        {
            this.game = game; // GAME ENGINE

            settings = Settings.LoadSettings() ?? new Settings();
            Settings.ValidateSettings(settings);
            game.GameConfig.Players = settings.Players.PlayersAmount;

            remotePadMovement = new RemotePadMovement(settings);

            managerScope = game.ManagerScope;

            manyMouseDispatcher = new ManyMouseDispatcher(game.GameConfig.Mouses);

            game.GetScreenSize(out int width, out int height);

            app = new RenderWindow(new VideoMode((uint)width, (uint)height), Name);
            app.SetVerticalSyncEnabled(true);

            app.Closed += OnClose;
            manyMouseDispatcher.MouseMoved += OnManyMouseMove;
            app.MouseButtonPressed         += OnMouseButtonPressed;
            app.KeyPressed += OnKeyPressed;
            app.Resized    += OnResized;

            viewScope = viewScopeFactory.Create(
                app,
                game,
                StartPlayAction,
                managerScope);

            menuViewModel     = viewScope.Resolve <IMenuViewModel>();
            gamePlayfieldView = viewScope.Resolve <IGamePlayfieldView>();
            viewStateMachine  = viewScope.Resolve <IViewStateMachine>();

            viewStateMachine.Initialize(viewScope);
        }