Esempio n. 1
0
        protected override void InstantiateParticleSystems()
        {
            _bodyHolder = Object.Instantiate(_body, _transform);
            _bodyHolder.transform.localPosition = _origin;

            _muzzleFXHolder = Object.Instantiate(_spark, _bodyHolder.transform);
            _muzzleFXHolder.transform.localPosition = Vector3.zero;

            _muzzleFX = _muzzleFXHolder.transform.GetChild(0).GetComponent <ParticleSystem>();
            _muzzleFX.Stop();

            _bulletFXHolder = Object.Instantiate(_bullet, _bodyHolder.transform);
            _bulletFXHolder.transform.localPosition = Vector3.zero;

            _bulletFX              = _bulletFXHolder.transform.GetChild(0).GetComponent <ParticleCollisionHandler>();
            _bulletFX.OnCollision += OnParticleCollision;

            if (_bulletFX.Particle == null)
            {
                _bulletFX.Particle = _bulletFX.GetComponent <ParticleSystem>();
            }

            _bulletFX.Particle.Stop();
            _main = _bulletFX.Particle.main;
        }
 void Start()
 {
     particleCollision = GetComponentInChildren <ParticleCollisionHandler>();
     lastShot          = Time.time;
 }