private void Converge() { Converged = true; Vector3 pos = CurrentPosition; Damage = baseDamageAfterConverge; Vector3 boostedVelocity = InitialWeaponDirection * boostedSpeed; Velocity = boostedVelocity; Vector3 convergePos = TargetConvergeLocation; Position = convergePos; Instantiate(sonicBoomEffect, convergePos, transform.rotation, null); AudioMngr.PlaySFX(sonicBoomSound, convergePos, null); sprRend.sprite = boostedBullet; }
// Use this for initialization void Awake() { if (instance == null) { instance = this; } else { Destroy(gameObject); } DontDestroyOnLoad(gameObject); foreach (Sound s in sounds) { s.src = gameObject.AddComponent <AudioSource>(); s.src.clip = s.clip; s.src.volume = s.volume; s.src.pitch = s.pitch; s.src.loop = s.loop; } }
public override void DestroySelf(Entity destroyer, float dropModifier) { bool explode = destroyer != null; if (explode) { //particle effect for (int i = 0; i < Random.Range(debrisAmount.x, debrisAmount.y); i++) { CreateDebris(transform.position); CreateDust(transform.position, alpha: 0.3f); } //sound effect if (AudioMngr != null) { AudioMngr.PlaySFX(shatterSounds[Random.Range(0, shatterSounds.Length)], transform.position, pitch: Random.Range(shatterPitchRange.x, shatterPitchRange.y), volume: 0.25f, parent: null); } } EjectFromAllDrillers(true); base.DestroySelf(destroyer, dropModifier); }