Пример #1
0
 /// <summary>
 /// Snake játék példányosítása.
 /// </summary>
 /// <param name="dataAccess">Az adatelérés.</param>
 public SnakeGameModel(ISnakeDataAccess dataAccess, Int32 size)
 {
     _gameTableSize      = size;
     _dataAccess         = dataAccess;
     _table              = new SnakeGameTable(_gameTableSize);
     _gameTimer          = new Timer();
     _gameTimer.Elapsed += new ElapsedEventHandler(Moving);
     _gameTimer.Interval = 1000;
 }
Пример #2
0
 /// <summary>
 /// Új játék kezdése.
 /// </summary>
 public void NewGame(Int32 size)
 {
     _snake         = new Snake((size / 2) + 1, (size / 2) + 1);
     _gameScore     = _snake.Size() - 1; // pontok 0
     _gameTableSize = size;              // pályaméret beállítása
     _table         = new SnakeGameTable(_gameTableSize);
     GenerateFields(size);               // generáljuk a mezőket
     _gamePaused = false;
     _gameOver   = false;
     _gameTimer.Start();
 }
Пример #3
0
        /// <summary>
        /// Játék betöltése.
        /// </summary>
        /// <param name="path">Elérési útvonal.</param>
        public async Task LoadGameAsync(String path)
        {
            if (_dataAccess == null)
            {
                throw new InvalidOperationException("No data access is provided.");
            }

            _table = await _dataAccess.LoadAsync(path);

            _snake = _table.getSnake();


            _gameScore = _table.Score;
            _gameTimer.Start();
            _gamePaused    = false;
            _gameTableSize = _table.Size;
        }