public override void UsePrimary() { if (m_currentAmmo > 0 && m_fireMode.IsReady) { ProjectileBehaviour p = PoolManager.Instance.Next <ProjectileBehaviour>(); if (p == null) { Debug.Log("Projectile is null"); } p.Launch(transform.position + transform.TransformDirection(m_weaponProperties.projectileOrigin), transform.forward * m_weaponProperties.muzzleVelocity); m_currentAmmo--; base.UsePrimary(); StartCoroutine(m_fireMode.CooldownRoutine(0.015f)); } }