示例#1
0
 public void Init()
 {
     _score.GetComponent <Text>().text = "Score: " + 0;
     _lvl.GetComponent <Text>().text   = "Lvl: " + _seaEnemy.GetSeaEnemiesCount();
     _xn.GetComponent <Text>().text    = "Xn: " + _player.GetCountLives();
     _full.GetComponent <Text>().text  = "Full: " + 0 + "%";
     _time.GetComponent <Text>().text  = "Time: " + _timer.GetTime();
 }
示例#2
0
    public void GameIsOver()
    {
        if (_player.IsSelfCrosed() || _seaEnemy.EnemiesHitTrackOrXonix() || _landEnemy.IsHitXonix() || _timer.TimeIsOver())
        {
            openPanel();
            _player.DecreaseLives();

            if (_player.GetCountLives() < 1)
            {
                _panel.GetComponentInChildren <Text>().text = "Game Over";
            }
            else
            {
                _panel.GetComponentInChildren <Text>().text = "Tap to retry";
            }
        }
    }
示例#3
0
    public void ClosePanel()
    {
        if (_gameOver.activeSelf)
        {
            if (_playerObj.GetCountLives() > 0)
            {
                _fieldObj.DeleteTrack();
                _gameOverObj.ClosePanel();

                _playerObj.Destroy();
                _playerObj.Init();
                _playerObj.UpdateSelfCrosed();

                _landEnemyObj.Destroy();
                _landEnemyObj.Init();

                _timerObj.UpdateTime();
            }
            else
            {
                _gameOverObj.ClosePanel();

                _fieldObj.Destroy();
                _fieldObj.Init();
                _fieldObj.FillTrackArea(_seaEnemies);

                _playerObj.Destroy();
                _playerObj.Init();
                _playerObj.UpdateSelfCrosed();
                _playerObj.SetCountLives(3);

                _landEnemyObj.Destroy();
                _landEnemyObj.Init();

                for (int i = _seaEnemies.Count - 1; i >= 0; i--)
                {
                    _seaEnemies[i].IsHitTrackOrXonix();
                    if (_seaEnemies.Count > 1)
                    {
                        _seaEnemies[i].Destroy();
                        _seaEnemies.RemoveAt(i);
                    }
                }

                _timerObj.UpdateTime();
                _fieldObj.SetScore(0);
            }
        }

        if (_nextLevel.activeSelf)
        {
            _fieldObj.Destroy();
            _fieldObj.Init();
            _fieldObj.FillTrackArea(_seaEnemies);

            _playerObj.Destroy();
            _playerObj.Init();
            _playerObj.AddCountLives(1);

            _landEnemyObj.Destroy();
            _landEnemyObj.Init();

            SeaEnemy seaEnemyObj = new SeaEnemy(_seaEnemy, _fieldObj);
            _seaEnemies.Add(seaEnemyObj);
            foreach (SeaEnemy seaEnemy in _seaEnemies)
            {
                seaEnemy.Destroy();
                seaEnemy.Init(_playerObj);
            }

            _nextLevelObj.ClosePanel();

            _timerObj.UpdateTime();
        }
    }