protected virtual IEnumerator FinishBuildingEnumerator(List <TetrisTileScript> list, int i) { float waitTime; waitTime = 0.2f; if (list[i].isOnTheBlueprint) { if (list[i].thing != null) { pointsCounter.AddPoints(50); list[i].tileAudio.PlayPoints(); } else { list[i].tileAudio.PlayEmpty(); } list[i].ClearTile(); } else if (list[i].thing != null) { pointsCounter.AddPoints(-35); list[i].thing.GetComponent <SpriteRenderer>().color = Color.white; list[i].tileAudio.PlayBad(); } yield return(new WaitForSeconds(waitTime)); i++; if (i < list.Count) { StartCoroutine(FinishBuildingEnumerator(list, i)); } else { wave++; UpdateSpeed(); if (wave >= 3) { StartCoroutine(DelayBetwenStates(GameState.PAUSED)); } else { StartCoroutine(DelayBetwenStates(GameState.DRAWING)); } } }
public void AddPoints(int amount) { if (!isPlaying) { return; } points += amount; pointsCounter.AddPoints(amount, Vector3.zero); }
public void PlantWaterd(Transform plant) { FindObjectOfType <AudioManager>().Play("PlantReady"); plantsToWater--; pointsCounter.AddPoints(pointsPerWaterdPlant, plant.position); if (plantsToWater <= 0) { Invoke("Win", 0.3f); } }
public void Done(float time, int points) { if (isDone) { return; } isDone = true; Instantiate(doneEffect, transform); GetComponent <Rigidbody2D>().bodyType = RigidbodyType2D.Dynamic; FindObjectOfType <AudioManager>().Play("Note" + Random.Range(1, 10)); if (time <= .5f) { _pointsCounter.AddCombo(); } else { _pointsCounter.DecreaseCombo(); } _pointsCounter.AddPoints(points, Vector3.zero); }