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); } }