public void PlayEffect(Vector3 position) { GameObject go = Pooler.GetPooledObject(PoolsNames[0]); ParticleSystem ps = go.GetComponent <ParticleSystem>(); go.SetActive(true); if (ps != null) { ps.transform.position = position; ps.Play(); } }
// Update is called once per frame void Update() { GameObject germ = germPool.GetPooledObject(); if (germ && (Time.fixedTime - lastSpawn) > spawnInterval) { float whichDir = Random.Range(0f, 1f); if (whichDir < 0.5f) { germ.transform.position = posOne; } else { germ.transform.position = posTwo; } germ.GetComponent <GermCont>().edison = edison; germ.SetActive(true); lastSpawn = Time.fixedTime; } if (Time.timeSinceLevelLoad - timeSinceLastCheck >= 10f) { spawnInterval = Mathf.Max(0.2f, spawnInterval - 0.2f); timeSinceLastCheck = Time.timeSinceLevelLoad; } }
private void SpawnObject() { _time = 0; BaseEnemy enemy = _pooler.GetPooledObject(_enemyToSpawn.name, transform.position, Quaternion.identity).GetComponent <BaseEnemy>(); enemy.Init(_player, _pooler, _cameraShake, _scoreManager, _soundPlayer); }
//bool moveLost(List<Ball> balls) //{ // bool allDisabled = false; // for (int i = 0; i < balls.Count; i++) // { // balls[i].Progress += Time.deltaTime * currentSpeed * ballSizePercent; // moveBall(balls[i]); // if (balls[i].Progress >= 1) // { // balls[i].gameObject.SetActive(false); // balls.RemoveAt(i); // } // } // if ( balls.Count==0) // allDisabled = true; // return allDisabled; //} public void GetNewBallPlace(Ray direction) { if (lost) { return; } string poolName = nextBallsPool.Dequeue(); string newPool = getRandomPrefab(); nextBallsPool.Enqueue(newPool); LevelDataView.SetData(nextBallsPool); Ball b = Pooler.GetPooledObject(poolName).GetComponent <Ball>(); b.gameObject.SetActive(true); b.ClearState(); b.OnBallReachedTarget += OnBallAdded; b.StartMove(direction); }
private void Killed() { _audioManager.Play(SoundNames.PlayerDeath); _pooler.GetPooledObject(_playerExplosion.name, transform.position, Quaternion.identity); _cameraShake.ShakeCameraOnce(2.2f); gameObject.SetActive(false); }
private IEnumerator Explode() { _spriteRenderer.enabled = false; _collider2D.enabled = false; _pooler.GetPooledObject(_explosionName.name, transform.position, Quaternion.identity); yield return(new WaitForSeconds(0.55f)); gameObject.SetActive(false); }
protected void Shoot() { if (!_isReloaded) { return; } _pooler.GetPooledObject(_bullet.name, _barrel.position, _barrel.rotation); StartCoroutine(Reload()); OnShoot?.Invoke(); }
public void ApplyDamage(int damage) { ShakeCamera(); _soundPlayer.Play(SoundNames.Hurt); _health -= damage; if (!(_health <= 0)) { return; } _soundPlayer.Play(SoundNames.EnemyDeath); _scoreManager.AddScore(ScoreWeight); _pooler.GetPooledObject(_enemyExplosion.name, transform.position, Quaternion.identity); gameObject.SetActive(false); }