private void PrepareNewGame() { ChangeToPullArrowPhase(); roundNumber = 1; for (int i = 0; i < roundScore.Length; i++) { roundScore[i] = 0; } LevelEvents.RaiseLevelEvent(LevelEvents.LevelEventType.ContinueToNextLevel); }
private void SpawnObject() { if (currentObjectInstance != null) { Destroy(currentObjectInstance); } RaycastHit hitInfo = GetRandomSpawnHitRayPosition(); currentObjectInstance = Instantiate(spawnObject, hitInfo.point, Quaternion.identity); currentObjectInstance.transform.LookAt(GameObject.FindGameObjectWithTag("Player").transform); SpawnTargetDistanceOverlayUI(); LevelEvents.RaiseLevelEvent(LevelEvents.LevelEventType.SpawnTarget); }
IEnumerator WaitForSecondsContinueToNextLevelEnumerator() { yield return(new WaitForSeconds(secondsBeforeContinueToNextLevel)); roundNumber += 1; // go to next round if (roundNumber > 10) { LevelEvents.RaiseLevelEvent(LevelEvents.LevelEventType.GameOver); } else { ChangeToPullArrowPhase(); LevelEvents.RaiseLevelEvent(LevelEvents.LevelEventType.ContinueToNextLevel); } }
public void RetryGame() { ClearPrefabScoreList(); gameOverScreen.SetActive(false); LevelEvents.RaiseLevelEvent(LevelEvents.LevelEventType.RetryGame); }
public void AddScore(int addScore) { roundScore[roundNumber - 1] = addScore; LevelEvents.RaiseLevelEvent(LevelEvents.LevelEventType.AddScore); }