public void Init(Gamefield gamefield) { Gamefield = gamefield; ManaManagerSystem = Gamefield.ManaManagerSystem; Reset(); OnDestroy(); OnInit(); InvokeTurnsChanged(); }
public void Init(GameMode gameMode) { _gameMode = gameMode; _gameMode.TurnsChanged += OnTurnsChanged; _manaManager = _gameMode.ManaManagerSystem; _manaManager.PointChanged -= OnPointsChanged; _manaManager.PointChanged += OnPointsChanged; if (_gameMode is TargetScoreGameMode) { MissionProgress.text = "0"; var targetScoreGameMode = (_gameMode as TargetScoreGameMode); MissionTarget.text = targetScoreGameMode.TargetScore.ToString(CultureInfo.InvariantCulture); } OnTurnsChanged(_gameMode.Turns, _gameMode.StartTurns); }
public void Init() { //Debug.Log("Init"); _currentState = null; ChuzzleMover.Instance = new ChuzzleMover(); PowerUpAnalyzeState = new PowerUpAnalyzeState(this); CreateState = new CreateState(this); RemoveState = new DeleteState(this); GameOverState = new GameOverState(this); WinState = new WinState(this); FieldState = new FieldState(this); GameMode = GameModeFactory.CreateGameMode(LevelDescription.Condition.GameMode); if (!ManaManagerSystem) { ManaManagerSystem = FindObjectOfType<ManaManager>(); } ManaManagerSystem.Reset(); ManaManagerSystem.TargetPoints = GameMode.TargetPoints; GameMode.Init(this); Level.Gamefield = this; Level.InitFromFile(LevelDescription.Field); //Level.Gamefield.transform.localScale = Vector3.zero; //iTween.ScaleTo(Level.Gamefield.gameObject, Vector3.one, 0.5f); AddEventHandlers(); InvokeGameStarted(); if (CenterCameraOnField.Instance) { CenterCameraOnField.Instance.CenterCameraOnChuzzles(Level.Chuzzles,true); } SwitchStateTo(PowerUpAnalyzeState); }