protected virtual void AddExplosionOn(ExplosionTypes explosionType, Sprite sprite) { if (Explosion == null) { return; } var explosion = Explosion.Clone() as Explosion; explosion.Position = sprite.Position + sprite.Velocity; explosion.Animation = (int)explosionType; Children.Add(explosion); }
private void AddExplosion(ExplosionTypes explosionType) { if (Explosion == null) { return; } var explosion = Explosion.Clone() as Explosion; explosion.Position = this.Position + this._velocity; explosion.Animation = (int)explosionType; Children.Add(explosion); }
protected virtual void AddExplosion(ExplosionTypes explosionType) { if (Explosion == null) { return; } var explosion = Explosion.Clone() as Explosion; explosion.Position = this.Position; explosion.Animation = (int)explosionType; Children.Add(explosion); }
protected override void AddExplosion(ExplosionTypes explosionType) { if (Explosion == null) { return; } var explosion = Explosion.Clone() as Explosion; explosion.Position = this.Position + this._velocity; explosion.Animation = (int)explosionType; explosion.Scale = 0.5f * (float)Math.Sqrt(Value); Children.Add(explosion); }
public Explosion Copy(ExplosionTypes explosionType) { Explosion output = new Explosion(); output._explosionType = explosionType; output.CollisionType = CollisionType; output._fixedExplosionType = true; output._explosionCross = _explosionCross; output._explosionDown = _explosionDown; output._explosionDownEnd = _explosionDownEnd; output._explosionLeft = _explosionLeft; output._explosionLeftEnd = _explosionLeftEnd; output._explosionRight = _explosionRight; output._explosionRightEnd = _explosionRightEnd; output._explosionUp = _explosionUp; output._explosionUpEnd = _explosionUpEnd; output._explosionTime = _explosionTime; return output; }
protected virtual void AddExplosion(ExplosionTypes explosionType) { if (Explosion == null) { return; } var explosion = Explosion.Clone() as Explosion; if (!(Parent is Spirit)) { explosion.Position = this.Position + this._velocity * 2; } else { explosion.Position = this.Position; } explosion.Animation = (int)explosionType; Children.Add(explosion); }
public static Explosion RequestExplosion(ExplosionTypes type) { if (!pools.ContainsKey(type)) { return(null); } Pool pool = pools[type]; Explosion e = null; if (pool.pooledExplosions.Count > 0) { e = pool.pooledExplosions.Dequeue(); } else { e = GameObject.Instantiate(library.explosionPrefabs[type]).GetComponent <Explosion>(); } e.gameObject.SetActive(true); return(e); }
//MakeExplosion method takes in two parameters: Transform of where the explosion should occur //ExplosionType takes in an ExplosionTypes enum so it plays the appropriate explosion: public void MakeExplosion(Transform explosionLocation, ExplosionTypes explosionTypes) { //a Switch case to Instantiate the Explosion object on the specified location, then destroy it after 2 seconds:s switch (explosionTypes) { case ExplosionTypes.BigExplosion: //Plays the small explosionSound using audio source with a volume of 0.35: audioSource.PlayOneShot(smallExplosionSound, 0.35f); Destroy(Instantiate(bigExplosion, explosionLocation.position, Quaternion.identity), 2f); break; case ExplosionTypes.SmallExplosion: Destroy(Instantiate(smallExplosion, explosionLocation.position, Quaternion.identity), 2f); break; case ExplosionTypes.UfoExplosion: //Plays the large explosionSound using audio source with a volume of 1: audioSource.PlayOneShot(bigExplosionSounds, 1); Destroy(Instantiate(ufoExplosion, explosionLocation.position, Quaternion.identity), 2f); break; } }