Projectile refactor and shooting