/// <summary> /// Játék betöltésének eseménykezelője. /// </summary> private async void loadGameOption_Click(Object sender, EventArgs e) { setTheOptionsFromFile(); Boolean restartTimer = _gamemodel.GameTimer.Enabled; _gamemodel.GameTimer.Stop(); if (openFileDialog.ShowDialog() == DialogResult.OK) // ha kiválasztottunk egy fájlt { try { // játék betöltése await _gamemodel.LoadGameAsync(openFileDialog.FileName); saveGameOption.Enabled = true; } catch (SnakeDataException) { MessageBox.Show("Játék betöltése sikertelen!" + Environment.NewLine + "Hibás az elérési út, vagy a fájlformátum.", "Hiba!", MessageBoxButtons.OK, MessageBoxIcon.Error); _gamemodel.NewGame(_mapsize); saveGameOption.Enabled = true; } SetupTable(); } if (restartTimer) { _gamemodel.GameTimer.Start(); } }
public void SnakeGameModelTestNewGameEasyTest() { _model.NewGame(11); Assert.AreEqual(0, _model.GameScore); Int32 emptyFields = 0; for (Int32 i = 0; i < 11; i++) { for (Int32 j = 0; j < 11; j++) { if (_model.Table.GetValue(i, j) == 0) { emptyFields++; } } } Assert.AreEqual(119, emptyFields); }
private async void MenuFileNewGame_Click(Object sender, EventArgs e) { _model.ChangeTimers(false); await _model.NewGame(); Debug.WriteLine("Tábla mérete: " + _model.Table.Size); DeleteTable(); GenerateTable(); SetupTable(); SetupMenus(); }
private void setTheOptions() { //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(); _gamemodel.NewGame(_mapsize); }
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(); }
/// <summary> /// Új játék indításának eseménykezelője. /// </summary> private void ViewModel_NewGame(object sender, EventArgs e) { _model.NewGame(_viewModel.MapSize); }