Exemplo n.º 1
0
        public static bool SetGroup(this Entity player, string groupname, LAdmin.GroupsDatabase database)
        {
            groupname = groupname.ToLowerInvariant();
            player.setLogged(false);
            if (database.GetGroup(groupname) == null)
            {
                return(false);
            }
            var matchedplayerinfo = database.FindEntryFromPlayersAND(player.GetInfo());

            if (matchedplayerinfo != null)
            {
                if (groupname == "default")
                {
                    database.Players.Remove(matchedplayerinfo.Value.Key);
                }
                else
                {
                    database.Players[matchedplayerinfo.Value.Key] = groupname;
                }
            }
            else if (groupname != "default")
            {
                database.Players[player.GetInfo()] = groupname;
            }
            return(true);
        }
Exemplo n.º 2
0
        public static LAdmin.GroupsDatabase.Group GetGroup(this Entity entity, LAdmin.GroupsDatabase database)
        {
            KeyValuePair <LAdmin.PlayerInfo, string>?playerFromGroups = database.FindEntryFromPlayersAND(entity.GetInfo());

            if (playerFromGroups == null)
            {
                return(database.GetGroup("default"));
            }
            LAdmin.GroupsDatabase.Group grp = database.GetGroup(playerFromGroups.Value.Value);
            if (grp != null)
            {
                return(grp);
            }
            else
            {
                LAdmin.WriteLog.Error("# Player " + entity.Name + ": GUID=" + entity.GUID + ", HWID = " + entity.GetHWID().ToString() + ", IP:" + entity.IP.ToString());
                LAdmin.WriteLog.Error("# Is in nonexistent group: " + playerFromGroups);
                return(database.GetGroup("default"));
            }
        }