public void OnSceneResultReceived(object data) { if (data is MazeSceneController.MazeSceneData) { MazeSceneController.MazeSceneData mazeSceneData = (MazeSceneController.MazeSceneData)data; mazeSceneData.Terminal.OnHackAttemptResultReceived(mazeSceneData); } }
public void OnHackAttemptResultReceived(MazeSceneController.MazeSceneData mazeSceneData) { if (Fading.Instance) { Fading.Instance.FadeSpeed = 0.8f; Fading.Instance.BeginFade(Fading.FadeIn); } if (mazeSceneData.Result) { _interactiveObject.enabled = false; OnHacked.Invoke(); Debug.Log("Hacked"); } else { Debug.Log("Couldn't hack"); OnFailed.Invoke(); } }
public void AttemptHacking() { MazeSceneController.MazeSceneData mazeSceneData = new MazeSceneController.MazeSceneData() { MazeLevelKey = MazeLevelKey, Terminal = this }; Action loadMazeScene = () => { _sceneSwitcher.SwitchScene("MazeScene-Final", true, mazeSceneData); }; if (Fading.Instance) { Fading.Instance.FadeSpeed = 0.7f; Fading.Instance.BeginFade(Fading.FadeOut, loadMazeScene); } else { loadMazeScene(); } }