bool CheckThreatLevel (PresenceInfo info, out string message)
{
message = "";
if ((info.Flags & PresenceInfo.PresenceInfoFlags.Banned) == PresenceInfo.PresenceInfoFlags.Banned) {
message = "Banned agent.";
return false;
}
if (GrieferAllowLevel == AllowLevel.AllowKnown)
return true; //Allow all
if (GrieferAllowLevel == AllowLevel.AllowCleanOnly) {
//Allow people with only clean flag or suspected alt
if ((info.Flags & PresenceInfo.PresenceInfoFlags.Suspected) == PresenceInfo.PresenceInfoFlags.Suspected ||
(info.Flags & PresenceInfo.PresenceInfoFlags.Known) == PresenceInfo.PresenceInfoFlags.Known ||
(info.Flags & PresenceInfo.PresenceInfoFlags.SuspectedAltAccountOfKnown) ==
PresenceInfo.PresenceInfoFlags.SuspectedAltAccountOfKnown ||
(info.Flags & PresenceInfo.PresenceInfoFlags.KnownAltAccountOfKnown) ==
PresenceInfo.PresenceInfoFlags.KnownAltAccountOfKnown ||
(info.Flags & PresenceInfo.PresenceInfoFlags.Banned) == PresenceInfo.PresenceInfoFlags.Banned) {
message = "Not a Clean agent and have been denied access.";
return false;
}
} else if (GrieferAllowLevel == AllowLevel.AllowSuspected) {
//Block all alts of known, and suspected alts of known
if ((info.Flags & PresenceInfo.PresenceInfoFlags.Known) == PresenceInfo.PresenceInfoFlags.Known ||
(info.Flags & PresenceInfo.PresenceInfoFlags.SuspectedAltAccountOfKnown) ==
PresenceInfo.PresenceInfoFlags.SuspectedAltAccountOfKnown ||
(info.Flags & PresenceInfo.PresenceInfoFlags.KnownAltAccountOfKnown) ==
PresenceInfo.PresenceInfoFlags.KnownAltAccountOfKnown ||
(info.Flags & PresenceInfo.PresenceInfoFlags.Banned) == PresenceInfo.PresenceInfoFlags.Banned) {
message = "Not a Clean agent and have been denied access.";
return false;
}
}
return true;
}