void PopFloatingText() { if (floatingTextQueue.Count == 0 || Time.time - lastFloatingTextTime < GameManager.S.floatingTextInterval) { return; } FloatingTextInfo fti = floatingTextQueue.Dequeue(); GameObject floatingText = (GameObject)Instantiate(GameManager.S.floatingTextPrefab, transform.position, Quaternion.identity); floatingText.GetComponent <TextMesh>().text = fti.message; floatingText.GetComponent <TextMesh>().color = fti.color; lastFloatingTextTime = Time.time; }
IEnumerator AddFloatingTextToQueue(FloatingTextInfo info) { float readyTextTimeout = 0.4f; if (floatingTextIsOut) yield return new WaitForSeconds(readyTextTimeout); CreateFloatingText(info.value,info.resource); floatingTextIsOut = true; yield return new WaitForSeconds(readyTextTimeout); floatingTextIsOut = false; yield break; }