public int CountVisiblePlayers( [NotNull] Player observer ) { if ( observer == null ) throw new ArgumentNullException( "observer" ); return Players.Count( observer.CanSee ); }