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

public AutoKick ( string status, string nick, string _channel ) : bool
status string
nick string
_channel string
Результат bool
Пример #1
0
        /// <summary>
        ///     Ha a szobában a köszönés funkció be van kapcsolva,
        ///     akkor köszön az éppen belépőnek.
        /// </summary>
        public void HandleJoin(IRCMessage sIRCMessage)
        {
            if (sIRCMessage.Nick == sIrcBase.Networks[sIRCMessage.ServerName].sMyNickInfo.NickStorage)
            {
                return;
            }

            if (sFunctions.AutoKick("join", sIRCMessage.Nick, sIRCMessage.Channel))
            {
                return;
            }

            if (sIrcBase.Networks[sIRCMessage.ServerName].sIgnoreNickName.IsIgnore(sIRCMessage.Nick))
            {
                return;
            }

            var sMyChannelInfo = sIrcBase.Networks[sIRCMessage.ServerName].sMyChannelInfo;
            var sSendMessage   = sIrcBase.Networks[sIRCMessage.ServerName].sSendMessage;
            var sSender        = sIrcBase.Networks[sIRCMessage.ServerName].sSender;

            sIRCMessage.Channel = sIRCMessage.Channel.Remove(0, 1, SchumixBase.Colon);
            sNameList.Add(sIRCMessage.Channel, sIRCMessage.Nick);

            if (sMyChannelInfo.FSelect(IFunctions.Automode) && sMyChannelInfo.FSelect(IChannelFunctions.Automode, sIRCMessage.Channel))
            {
                AutoMode    = true;
                ModeChannel = sIRCMessage.Channel;
                sSender.NickServStatus(sIRCMessage.Nick);
            }

            if (sMyChannelInfo.FSelect(IFunctions.Greeter) && sMyChannelInfo.FSelect(IChannelFunctions.Greeter, sIRCMessage.Channel))
            {
                var    rand    = new Random();
                string greeter = string.Empty;
                var    text    = sLManager.GetCommandTexts("handlejoin", sIRCMessage.Channel, sIRCMessage.ServerName);
                if (text.Length < 3)
                {
                    sSendMessage.SendChatMessage(sIRCMessage, sLConsole.Translations("NoFound2", sLManager.GetChannelLocalization(sIRCMessage.Channel, sIRCMessage.ServerName)));
                    return;
                }

                var text2 = sLManager.GetCommandTexts("handlejoin/random", sIRCMessage.Channel, sIRCMessage.ServerName);
                greeter = text2[rand.Next(0, text2.Length - 1)];

                if (DateTime.Now.Hour >= 3 && DateTime.Now.Hour <= 9)
                {
                    sSendMessage.SendChatMessage(sIRCMessage, text[0], sIRCMessage.Nick);
                }
                else if (DateTime.Now.Hour >= 20 && DateTime.Now.Hour < 3)
                {
                    sSendMessage.SendChatMessage(sIRCMessage, text[1], sIRCMessage.Nick);
                }
                else
                {
                    if (IsAdmin(sIRCMessage.Nick, sIRCMessage.Host))
                    {
                        sSendMessage.SendChatMessage(sIRCMessage, text[2]);
                    }
                    else
                    {
                        sSendMessage.SendChatMessage(sIRCMessage, "{0} {1}", greeter, sIRCMessage.Nick);
                    }
                }
            }
        }