Exemple #1
0
        void ChatSharedHandle(BasePlayer player, Dictionary <string, ulong> shared, string mode, string partNameOrUID, string addMsg, string removeMsg)
        {
            if (mode == "add")
            {
                partNameOrUID = partNameOrUID.ToLower();
                var target = core.FindOnline(partNameOrUID);
                if (target == null)
                {
                    SendReply(player, "Игрок не найден");
                    return;
                }
                if (shared.Count >= maxPlayers)
                {
                    SendReply(player, "Список переполнент!\nПопробуйте удалить кого-нибудь с помощью команды /cl remove НИК");
                    return;
                }
                if (shared.ContainsValue(target.userID))
                {
                    SendReply(player, "Такой игрок уже есть в списке!");
                    return;
                }
                shared.Add(target.displayName, target.userID);
                addMsg = string.Format(addMsg, target);
                ChatMessage(player, addMsg);
            }
            else if (mode == "remove")
            {
                partNameOrUID = partNameOrUID.ToLower();
                var removeUser = shared.FirstOrDefault(p => p.Key.Contains(partNameOrUID)).Key;
                if (string.IsNullOrEmpty(removeUser))
                {
                    SendReply(player, "Игрок не найден");
                    return;
                }

                shared.Remove(removeUser);
                ChatMessage(player, removeMsg);
            }
        }