cast the shooter of projectiles
because projectile.getShooter() returns ProjectileSource now