public bool StartGame(Transform container) { Debug.Log("MiniGameManager.StartGame"); if (playing) { return(false); } if (container == null) { return(false); } while (container.childCount > 0) { Transform child = container.GetChild(0); child.parent = null; GameObject.Destroy(child.gameObject); } game = CreateGame(container); if (game == null || game.CheckFinish()) { return(false); } game.StartGame(); playing = true; return(true); }
void Awake() { ui = GameObject.Find("UICanvas/Canvas").GetComponent <Canvas>(); game = GameObject.Find("Game").GetComponent <IMiniGame>(); countDown = ui.transform.Find("CountDown").gameObject.GetComponent <CountDown>(); }
private void OnCollisionEnter2D(Collision2D collision) { if (collision.gameObject.tag == "minigame-bonus") { IMiniGameBonus miniGameBonus = collision.gameObject.GetComponent <IMiniGameBonus>(); IMiniGame miniGame = GameObject.FindGameObjectWithTag("minigame").GetComponent <IMiniGame>(); GameManager.instance.AddToTime(miniGameBonus.BonusValue); miniGameBonus.Destroy(); miniGame.Win(); } }
public void OnSceneLoaded(Scene scene, LoadSceneMode mode) { if (mode == LoadSceneMode.Additive) { MapController.instance.mapCamera.gameObject.SetActive(false); MapController.instance.SetUIEnabled(false); } if (scene.name == "CutScene") { CutSceneController.instance.SetCutScene(cutScenePath); currentMiniGame = CutSceneController.instance; } }
private void OnCollisionEnter2D(Collision2D collision) { if (collision.gameObject.tag == "minigame-bonus") { IMiniGameBonus miniGameBonus = collision.gameObject.GetComponent <IMiniGameBonus>(); IMiniGame miniGame = collision.gameObject.GetComponentInParent <IMiniGame>(); miniGameBonus.Destroy(); if (LoseOnCollision) { miniGame.Lose(); } } }
private void TryGetGameReward() { if (game != null) { game.TryGetGameReward(); game = null; } else { var miniGame = CreateGame(null); if (miniGame != null) { miniGame.TryGetGameReward(); } } }
private void OnCollisionEnter2D(Collision2D collision) { if (collision.gameObject.tag == "minigame-bonus") { transform.parent.GetComponent <SpriteRenderer>().sprite = Sprite; transform.parent.GetComponent <AudioSource>().Play(); GameObject miniGameBonusObject = collision.gameObject; Rigidbody2D rb = miniGameBonusObject.GetComponent <Rigidbody2D>(); rb.velocity = Vector2.zero; rb.isKinematic = true; collision.collider.enabled = false; IMiniGameBonus miniGameBonus = miniGameBonusObject.GetComponent <IMiniGameBonus>(); GameManager.instance.AddToTime(miniGameBonus.BonusValue); IMiniGame miniGame = GameObject.FindGameObjectWithTag("minigame").GetComponent <IMiniGame>(); miniGame.Win(); } }
// Update is called once per frame void Update() { if (currentMiniGame != null) { SceneManager.SetActiveScene(currentMiniGame.ControllerObject.scene); if (currentMiniGame.IsFinished()) { if (currentMiniGame.DidComplete()) { MapController.instance.CompleteNode(currentNodeID); } SceneManager.UnloadSceneAsync(currentMiniGame.ControllerObject.scene); currentMiniGame = null; SceneManager.SetActiveScene(MapController.instance.gameObject.scene); MapController.instance.mapCamera.gameObject.SetActive(true); MapController.instance.SetUIEnabled(true); } } }
public void SetMinigame(IMiniGame miniGame) { currentMiniGame = miniGame; }