// Use this for initialization private void Start() { _rigidbody = GetComponent <Rigidbody2D>(); _transform = GetComponent <Transform>(); _audioSource = GetComponent <AudioSource>(); _logger = Game.Container?.Resolve <Core.Loggers.ILoggerFactory>()?.Create(this); _messenger = Game.Container?.Resolve <Core.Mediators.IMessenger>(); _landerLandedSuccessfullyMessageToken = _messenger.Subscribe((LanderLandedSuccessfullyMessage landerLandedSuccessfullyMessage) => { _isLanded = true; }); }
private void Start() { _hasControlsMenuBeenShow = Game.HasControlsMenuBeenShow; _eventSystem = GameObject.FindObjectOfType <EventSystem>(); _audioSource = GetComponent <AudioSource>(); _messenger = Game.Container.Resolve <Core.Mediators.IMessenger>(); _fadeService = Game.Container.Resolve <Fading.IFadeService>(); _victoryMessageSubscriptionToken = _messenger.Subscribe <VictoryMessage>(vm => { StartCoroutine(nameof(HandleVictory), vm.VictoriousPlayerController); }); _fadeService.DoFade(FadeDirection.FromBlack, 1f); StartCoroutine(nameof(InitializeGame)); }
private void Start() { _logger = Game.Container?.Resolve <Core.Loggers.ILoggerFactory>()?.Create(this); _messenger = Game.Container?.Resolve <Core.Mediators.IMessenger>(); _landerEnteredLandingAreaMessageToken = _messenger.Subscribe((LanderEnteredLandingAreaMessage LanderEnteredLandingAreaMessage) => { _logger?.Log("LanderEnteredLandingAreaMessage"); CheckVictoryConditions(); }); _landerExitedLandingAreaMessageToken = _messenger.Subscribe((LanderExitedLandingAreaMessage LanderEnteredLandingAreaMessage) => { _logger?.Log("LanderExitedLandingAreaMessage"); }); _landerCrashedMessageToken = _messenger.Subscribe((LanderCrashedMessage landerCrashedMessage) => { if (!_hasLanded) { ShowMenu(_crashedMenu); _logger?.Log("LanderCrashedMessage"); } }); _landerLeftBoundsMessageToken = _messenger.Subscribe((LanderLeftBoundsMessage landerLeftBoundsMessage) => { if (!_hasLanded) { ShowMenu(_outOfBoundsMenu); _logger?.Log("LanderLeftBoundsMessage"); } }); StartCoroutine(StartIntroTextFadeOut()); }
// Use this for initialization private void Start() { _pipeTiles = new List <PipeTileScript>(); _logger = Game.Container?.Resolve <Core.Loggers.ILoggerFactory>()?.Create(this); _messenger = Game.Container?.Resolve <Core.Mediators.IMessenger>(); _pipeTiles.AddRange(GetComponentsInChildren <PipeTileScript>()); _pipeTiles = _pipeTiles.OrderBy(pt => pt.GetPosition().y).ThenBy(pt => pt.GetPosition().x).ToList(); StringBuilder sb = new StringBuilder(); sb.AppendLine($"Found {_pipeTiles.Count} tiles"); _startTile = _pipeTiles.First(); _endTile = _pipeTiles.Last(); sb.AppendLine(" Start tile " + _startTile.ToString()); sb.AppendLine(" End tile " + _endTile.ToString()); sb.AppendLine(""); foreach (PipeTileScript pipeTileScript in _pipeTiles) { sb.AppendLine(" " + pipeTileScript.ToString()); } _logger?.Log(sb.ToString()); _pipeTileRotatedMessageToken = _messenger?.Subscribe((PipeTileRotatedMessage pipeTileRotatedMessage) => { _logger?.Log("Rotated " + pipeTileRotatedMessage.PipeTile.ToString()); CheckForGameCompletion(); }); CheckForGameCompletion(); }