Beispiel #1
0
        private void setTheOptionsFromFile()
        {
            if (_gamemodel != null)
            {
                _gamemodel.SnakeMoved   -= new EventHandler <SnakeEventArgs>(SnakeMoved);
                _gamemodel.GameOver     -= gameOver;
                _gamemodel.OnMoveChange -= SetupTable;
            }

            //adatelérés példányosítása
            _dataAccess = new SnakeFileDataAccess();
            // Játék model példányosítása
            _gamemodel = new SnakeGameModel(_dataAccess, _mapsize);
            // Snake mozgásának esemény kezelőjének és a játék vége eseménykezelőjének felvétele
            _gamemodel.SnakeMoved   += new EventHandler <SnakeEventArgs>(SnakeMoved);
            _gamemodel.GameOver     += gameOver;
            _gamemodel.OnMoveChange += SetupTable;
            // Generálom a táblát a kiválasztott mérettel a játék indul.
            generateTable(_mapsize);
            _gamestarted       = true;
            progressLabel.Text = "A játék folyik!";
            // felveszem a megjelenített pályára a nyomógombokat és aktiválom is őket.
            gameTableBox.KeyUp += new KeyEventHandler(keyPressed);
            gameTableBox.Focus();
        }
Beispiel #2
0
        public void Initialize()
        {
            _model = new SnakeGameModel(null, 15);
            //perzisztencia nélküli modellt hozunk létre

            _model.GameOver   += new EventHandler <SnakeEventArgs>(Model_GameOver);
            _model.SnakeMoved += new EventHandler <SnakeEventArgs>(Model_SnakeMoved);
        }
Beispiel #3
0
        private void App_Startup(object sender, StartupEventArgs e)
        {
            _model           = new SnakeGameModel(10);
            _model.GameOver += new EventHandler <SnakeEventArgs>(Model_GameOver);

            // nézemodell létrehozása
            _viewModel           = new SnakeViewModel(10, _model);
            _viewModel.NewGame  += new EventHandler(ViewModel_NewGame);
            _viewModel.ExitGame += new EventHandler(ViewModel_ExitGame);
            _viewModel.LoadGame += new EventHandler(ViewModel_LoadGame);
            _viewModel.SaveGame += new EventHandler(ViewModel_SaveGame);
            //_model = _viewModel.GameModel;
            _mapSize = 10;

            // nézet létrehozása
            _view             = new MainWindow();
            _view.DataContext = _viewModel;
            _view.Closing    += new System.ComponentModel.CancelEventHandler(View_Closing); // eseménykezelés a bezáráshoz
            _view.Show();
        }
Beispiel #4
0
        private async void GameForm_Load(Object sender, EventArgs e)
        {
            // adatelérés példányosítása
            _dataAccess = new SnakeFileDataAccess();

            // modell létrehozása és az eseménykezelők társítása
            _model = new SnakeGameModel(_dataAccess);
            _model.GameAdvanced += new EventHandler <SnakeEventArgs>(Game_GameAdvanced);
            _model.GameOver     += new EventHandler <SnakeEventArgs>(Game_GameOver);

            // játéktábla és menük inicializálása
            await _model.NewGame();

            GenerateTable();
            SetupMenus();

            // új játék indítása

            SetupTable();

            //_timer.Start();
        }
Beispiel #5
0
        /// <summary>
        /// Sudoku nézetmodell példányosítása.
        /// </summary>
        /// <param name="model">A modell típusa.</param>
        public SnakeViewModel(Int32 size, SnakeGameModel model)
        {
            NewGameCommand       = new DelegateCommand(param => { OnNewGame(); GenerateTable(); });
            LoadGameCommand      = new DelegateCommand(param => { OnLoadGame(); GenerateTable(); });
            SaveGameCommand      = new DelegateCommand(param => OnSaveGame());
            ExitGameCommand      = new DelegateCommand(param => OnExitGame());
            NewEasyGameCommand   = new DelegateCommand(param => { changeDifficulty(10); });
            NewMediumGameCommand = new DelegateCommand(param => { changeDifficulty(15); });
            NewHardGameCommand   = new DelegateCommand(param => { changeDifficulty(20); });
            MoveCommand          = new DelegateCommand(param => StepGame(param.ToString()));
            PauseCommand         = new DelegateCommand(param => { PauseGame(); });

            // játék csatlakoztatása
            _model = model;

            _model.SnakeMoved   += new EventHandler <SnakeEventArgs>(Model_SnakeMoved);
            _model.GameOver     += new EventHandler <SnakeEventArgs>(Model_GameOver);
            _model.OnMoveChange += RefreshTable;
            gameStarted          = false;

            changeDifficulty(size);
        }
Beispiel #6
0
 public GameOverBox(SnakeGameModel model)
 {
     InitializeComponent();
     _model = model;
 }