Schumix.ExtraAddon.Commands.NameList.Change C# (CSharp) Метод

Change() публичный Метод

public Change ( string Name, string NewName, bool Identify = false ) : void
Name string
NewName string
Identify bool
Результат void
        public void Change(string Name, string NewName, bool Identify = false)
        {
            var sSender = sIrcBase.Networks[_servername].sSender;
            var channel = new Dictionary<string, string>();

            foreach(var chan in _names)
            {
                if(chan.Value.Contains(Name.ToLower(), SchumixBase.Comma))
                    channel.Add(chan.Key, chan.Value);
            }

            if(channel.Count.IsNull())
            {
                channel.Clear();
                return;
            }

            foreach(var chan in channel)
            {
                _names.Remove(chan.Key);
                string names = string.Empty;
                var split = chan.Value.Split(SchumixBase.Comma);

                foreach(var name in split)
                {
                    if(name != Name.ToLower())
                        names += SchumixBase.Comma + name;
                    else
                        names += SchumixBase.Comma + NewName.ToLower();
                }

                _names.Add(chan.Key, names.Remove(0, 1, SchumixBase.Comma));
            }

            channel.Clear();
            RandomVhost(Name.ToLower());

            // Azt ellenőrzi le felszabadult-e az elsődleges nick neve.
            if(IRCConfig.List[_servername].NickName.ToLower() == Name.ToLower() && !Identify)
            {
                sIrcBase.Networks[_servername].sMyNickInfo.ChangeIdentifyStatus(false);
                sFunctions.IsOnline = true;
                sSender.NickServInfo(Name);
            }
        }