void Update() { if (!begin) { startupTimer += 1 * Time.deltaTime; if (startupTimer >= startSetupTime) { //print("You hsould see me only once"); StartCoroutine(SpawnSpecificEnemies()); begin = true; slider.value = startSetupTime / startupTimer; CheckGoldReference(); GM.Started(); } } if (stillAlive && !currentlySpawning && begin) { waveTimer += 1 * Time.deltaTime; } slider.value = waveTimer; if (Input.GetKeyDown(KeyCode.Space) && !currentlySpawning) { if (begin) { CheckGoldReference(); GM.AddExtraGoldTimer((timeBetweenWaves - waveTimer)); } else { CheckGoldReference(); GM.Started(); } waveTimer = timeBetweenWaves; startupTimer = startSetupTime; } if (Input.GetKeyDown(KeyCode.S)) { FindObjectOfType <LoadNextArea>().LoadNextAreaPostBattle(Singleton.Instance.level); } }
IEnumerator ConversationPicker() { List <string> promptTexts = new List <string>(); List <Texture> prompImages = new List <Texture>(); switch (conversationTracker) { case 0: typingSpeed = .5f; personTalking.texture = soldierNeutral; talking = conversations[conversationTracker]; conversationTracker++; //testing //List<string> x = new List<string>() { "x", "y" }; //List<Texture> y = new List<Texture>() { soldierNeutral, soldierScared }; //var prompt = Instantiate(moreInformationPrompt, transform.position, Quaternion.identity, gameObject.transform); //prompt.GetComponentInChildren<MoreInformationPanel>().DelayedInitialization(y, x); break; case 1: typingSpeed = .02f; personTalking.texture = soldierNeutral; talking = conversations[conversationTracker]; conversationTracker++; break; case 2: personTalking.texture = soldierNeutral; talking = conversations[conversationTracker]; conversationTracker++; break; case 3: personTalking.texture = generalShouting; talking = conversations[conversationTracker]; conversationTracker++; break; case 4: // To make the character run in scene timeToRun = true; SpawnTheEnemiesAtScreem(); GM = FindObjectOfType <GoldManagement>(); GM.Started(); personTalking.texture = soldierScared; talking = conversations[conversationTracker]; conversationTracker++; break; case 5: personTalking.texture = general; talking = conversations[conversationTracker]; conversationTracker++; Time.timeScale = .2f; break; case 6: personTalking.texture = generalShouting; talking = conversations[conversationTracker]; conversationTracker++; Time.timeScale = 0f; break; case 7: personTalking.texture = general; talking = conversations[conversationTracker]; conversationTracker++; towerButton.gameObject.SetActive(true); spotLight.gameObject.SetActive(true); spotLight.transform.position = (waypoint1.transform.position + new Vector3(0f, lightHeight, 0f)); isLastChatSegment = true; towerButton.enabled = true; promptTexts = new List <string>() { waveExplanation, goldExplanation, towerButtonExplanation, enemyPathwayExplanation }; prompImages = new List <Texture>() { waveImage, goldImage, towerButtonImage, enemyPathwayImage }; prompt = Instantiate(moreInformationPrompt, transform.position, Quaternion.identity, gameObject.transform); prompt.DelayedInitialization(prompImages, promptTexts); break; case 8: personTalking.texture = general; talking = conversations[conversationTracker]; conversationTracker++; break; case 9: personTalking.texture = general; talking = conversations[conversationTracker]; conversationTracker++; isLastChatSegment = true; // SIGH maybe use this bool to make an if in the slowtalk function so IF this is enabled, it swaps the one that it looks at in the function to disable below... w/e break; case 10: personTalking.texture = general; talking = conversations[conversationTracker]; conversationTracker++; break; case 11: personTalking.texture = general; talking = conversations[conversationTracker]; conversationTracker++; isLastChatSegment = true; break; case 12: personTalking.texture = soldierNeutral; talking = conversations[conversationTracker]; conversationTracker++; Time.timeScale = .2f; break; case 13: personTalking.texture = soldierScared; talking = conversations[conversationTracker]; conversationTracker++; break; case 14: personTalking.texture = general; talking = conversations[conversationTracker]; conversationTracker++; spotLight.gameObject.SetActive(true); spotLight.transform.position = (waypoint2.transform.position + new Vector3(0f, lightHeight, 0f)); break; case 15: personTalking.texture = general; talking = conversations[conversationTracker]; conversationTracker++; Time.timeScale = 0f; isLastChatSegment = true; promptTexts = new List <string>() { enemyTypesExplanation }; prompImages = new List <Texture>() { enemyDoubleImage }; prompt = Instantiate(moreInformationPrompt, transform.position, Quaternion.identity, gameObject.transform); prompt.DelayedInitialization(prompImages, promptTexts); break; } yield break; }