public SecurityCheckResult CheckDetailed( [NotNull] PlayerInfo info )
{
// ReSharper disable LoopCanBeConvertedToQuery
if ( info == null )
throw new ArgumentNullException( "info" );
PlayerExceptions listCache = ExceptionList;
for ( int i = 0; i < listCache.Excluded.Length; i++ ) {
if ( listCache.Excluded[i] == info ) {
return SecurityCheckResult.BlackListed;
}
}
if ( info.Rank >= MinRank /*&& player.info.rank <= maxRank*/ ) // TODO: implement maxrank
return SecurityCheckResult.Allowed;
for ( int i = 0; i < listCache.Included.Length; i++ ) {
if ( listCache.Included[i] == info ) {
return SecurityCheckResult.WhiteListed;
}
}
return SecurityCheckResult.RankTooLow;
// ReSharper restore LoopCanBeConvertedToQuery
}