private void SuckUpDroplet(DropletController dropletController) { size += 1; SetScale(); AudioSource.PlayClipAtPoint(dropletController.GetComponent <AudioSource>().clip, new Vector3(0, 0, 1)); DropletPool.Instance.ReturnToPool(dropletController); }
private void OnTriggerEnter2D(Collider2D collision) { DropletController dropletController = collision.GetComponent <DropletController>(); if (dropletController != null) { SuckUpDroplet(dropletController); } BirdController birdController = collision.GetComponent <BirdController>(); if (birdController != null) { if (isAcid) { birdController.AcidDeath(); } else { EnemyHit(); } } UFOController ufoController = collision.GetComponent <UFOController>(); if (ufoController != null) { if (isAcid) { ufoController.AcidDeath(); } else { EnemyHit(); } } LightningController lightningController = collision.GetComponent <LightningController>(); if (lightningController != null) { EnemyHit(); } AcidDropletController acidDropletController = collision.GetComponent <AcidDropletController>(); if (acidDropletController != null) { SuckUpAcidDroplet(acidDropletController); } }
private void GenerateDrops() { if (dropGenerateTimer <= 0) { dropGenerateTimer = Random.Range(spawnRate.dropletsMinTimeBetween, spawnRate.dropletsMaxTimeBetween); /* Get droplet from pool and set to active */ DropletController droplet = DropletPool.Instance.Get(); droplet.SetIsFromAbove(spawnRate.isDropletsFromAbove); droplet.gameObject.SetActive(true); } dropGenerateTimer -= Time.deltaTime; }