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; }
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); }