• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

C# Irc.UserInfo类代码示例

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

本文整理汇总了C#中Sharkbite.Irc.UserInfo的典型用法代码示例。如果您正苦于以下问题:C# UserInfo类的具体用法?C# UserInfo怎么用?C# UserInfo使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。



UserInfo类属于Sharkbite.Irc命名空间,在下文中一共展示了UserInfo类的20个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C#代码示例。

示例1: OnPrivate

 public void OnPrivate(UserInfo info, string message)
 {
     if (message.ToLower() == "hi")
     {
         connection.Sender.PrivateMessage(info.Nick, "Nobody loves you");
     }
 }
开发者ID:GexoXYZ,项目名称:PPplus-v2,代码行数:7,代码来源:Bancho.cs


示例2: OnPublic

        public void OnPublic(UserInfo user, string channel, string message)
        {
            Calls c = new Calls();
            string txt = c.CallPublic(user.Nick.ToString(), message, channel, connection);
            textviewLog.Buffer.Text = txt.ToString();

            //connection.Sender.PublicMessage(channel, user + " " + "Cuando digas mi nombre lavate la boca ingenuo mortal");
        }
开发者ID:ibarra,项目名称:bot,代码行数:8,代码来源:MainWindow.cs


示例3: HandlePublicMessage

        protected override void HandlePublicMessage(UserInfo user, string message)
        {
            var strategies = GetStrategiesThatCanRespond(message, user.Nick, _settings.PublicScriptFolder);

            if (strategies.Count > 0)
            {
                var selectedStrategy = GetPrioritizedStrategy(strategies);
                Console.WriteLine("Found strategy, responding: {0}", selectedStrategy.Response);
                Say(selectedStrategy.Response);
            }
        }
开发者ID:tormaroe,项目名称:codename_mokolo,代码行数:11,代码来源:DslBot.cs


示例4: OnJoin

 public void OnJoin(UserInfo user, string channel)
 {
     if(user.Nick == Credentials.Nick)
     {
     }
     else
     {
         Console.WriteLine(user.Nick + " connected.");
         connection.Sender.PublicMessage(Credentials.Channel, "Welcome " + user.Nick + "!");
     }
 }
开发者ID:raphaelmun,项目名称:TwitchChatBot,代码行数:11,代码来源:TwitchChatBot.cs


示例5: HandleMessage

 private void HandleMessage(string messageType, Action<UserInfo, string> handler, UserInfo user, string message)
 {
     Console.WriteLine("{0} msg from {1} > {2}", messageType, user.Nick, message);
     try
     {
         handler.Invoke(user, message);
     }
     catch (Exception ex)
     {
         Console.WriteLine("*** ERROR when handling {0} message:", messageType);
         Console.WriteLine(ex);
     }
 }
开发者ID:tormaroe,项目名称:codename_mokolo,代码行数:13,代码来源:BotBase.cs


示例6: Listener_OnPublic

        void Listener_OnPublic(UserInfo user, string channel, string message)
        {
            //string allowedchars = "1234567890-=qwertyuiop[]\\asdfghjkl;'zxcvbnm,./[email protected]#$%^*()_+QWERTYUIOPASDFGHJKL:\"ZXCVBNM<>? ";
            //string msg = message;
            RemoveVariables(ref message);
            RemoveWhitespace(ref message);

            if (message.Contains("^UGCS"))
            {
                Server.UpdateGlobalSettings();
                return;
            }
            if (message.Contains("^IPGET "))
            {
                foreach (Player p in Player.players)
                {
                    if (p.name == message.Split(' ')[1])
                    {
                        if (Server.UseGlobalChat && IsConnected())
                        {
                            if (Player.IsLocalIpAddress(p.ip))
                            {
                                connection.Sender.PublicMessage(channel, "^IP " + p.name + ": " + Server.IP);
                                connection.Sender.PublicMessage(channel, "^PLAYER IS CONNECTING THROUGH A LOCAL IP.");
                            }
                            else { connection.Sender.PublicMessage(channel, "^IP " + p.name + ": " + p.ip); }
                        }
                    }
                }
            }
            if (message.Contains("^SENDRULES "))
            {
                Player who = Player.Find(message.Split(' ')[1]);
                if (who != null)
                {
                    Command.all.Find("gcrules").Use(who, "");
                }
            }
            if (message.Contains("^GETINFO "))
            {
                if (Server.GlobalChatNick == message.Split(' ')[1])
                {
                    if (Server.UseGlobalChat && IsConnected())
                    {
                        connection.Sender.PublicMessage(channel, "^NAME: " + Server.name);
                        connection.Sender.PublicMessage(channel, "^MOTD: " + Server.motd);
                        connection.Sender.PublicMessage(channel, "^VERSION: " + Server.VersionString);
                        connection.Sender.PublicMessage(channel, "^GLOBAL NAME: " + Server.GlobalChatNick);
                        connection.Sender.PublicMessage(channel, "^URL: " + Server.URL);
                        connection.Sender.PublicMessage(channel, "^PLAYERS: " + Player.players.Count + "/" + Server.players);
                    }
                }
            }

            //for RoboDash's anti advertise/swear in #globalchat
            if (message.Contains("^ISASERVER "))
            {
                if (Server.GlobalChatNick == message.Split(' ')[1])
                {
                    connection.Sender.PublicMessage(channel, "^IMASERVER");
                }
            }

            if (message.StartsWith("^"))
                return;

            message = message.MCCharFilter();

            if (String.IsNullOrEmpty(message))
                return;

            if (OnNewRecieveGlobalMessage != null)
                OnNewRecieveGlobalMessage(user.Nick, message);

            if (Server.Devs.Contains(message.Split(':')[0].ToLower()) && !message.StartsWith("[Dev]") && !message.StartsWith("[Developer]"))
                message = "[Dev]" + message;
            else if(Server.Mods.Contains(message.Split(':')[0].ToLower()) && !message.StartsWith("[Mod]") && !message.StartsWith("[Moderator]"))
                message = "[Mod]" + message;
            else if (Server.Mods.Contains(message.Split(':')[0].ToLower()) && !message.StartsWith("[GCMod]"))
                message = "[GCMod]" + message;

            /*try {
                if(GUI.GuiEvent != null)
                GUI.GuiEvents.GlobalChatEvent(this, "> " + user.Nick + ": " + message); }
            catch { Server.s.Log(">[Global] " + user.Nick + ": " + message); }*/
            Player.GlobalMessage(String.Format("{0}>[Global] {1}: &f{2}", Server.GlobalChatColor, user.Nick, Server.profanityFilter ? ProfanityFilter.Parse(message) : message), true);
        }
开发者ID:Fire200055,项目名称:MCGalaxy,代码行数:87,代码来源:GlobalChatBot.cs


示例7: OnCtcpRequest

 private void OnCtcpRequest( string command, UserInfo who )
 {
     if( DateTime.Now.ToFileTime() > nextTime )
     {
         switch( command )
         {
             case CtcpUtil.Finger:
                 connection.CtcpSender.CtcpReply( command, who.Nick, fingerMessage + " Idle time: " + FormatIdleTime() );
                 break;
             case CtcpUtil.Time:
                 connection.CtcpSender.CtcpReply( command, who.Nick, FormatDateTime() );
                 break;
             case CtcpUtil.UserInfo:
                 connection.CtcpSender.CtcpReply( command, who.Nick, userInfoMessage );
                 break;
             case CtcpUtil.Version:
                 connection.CtcpSender.CtcpReply( command, who.Nick, versionMessage );
                 break;
             case CtcpUtil.Source:
                 connection.CtcpSender.CtcpReply( command, who.Nick, sourceMessage );
                 break;
             case CtcpUtil.ClientInfo:
                 connection.CtcpSender.CtcpReply( command, who.Nick, clientInfoMessage );
                 break;
             default:
                 string error = command + " is not a supported Ctcp query.";
                 connection.CtcpSender.CtcpReply( command, who.Nick, error );
                 break;
         }
         UpdateTime();
     }
 }
开发者ID:Goodlyay,项目名称:MCForge-Vanilla-Redux,代码行数:32,代码来源:CtcpResponder.cs


示例8: Listener_OnJoin

 void Listener_OnJoin(UserInfo user, string channel) {
     connection.Sender.Names(channel);
     doJoinLeaveMessage(user.Nick, "joined", channel);
 }
开发者ID:tommyz56,项目名称:MCGalaxy,代码行数:4,代码来源:ForgeBot.cs


示例9: Listener_OnPrivate

 protected void Listener_OnPrivate(UserInfo user, string message)
 {
     HandleMessage("Private", HandlePrivateMessage, user, message);
 }
开发者ID:tormaroe,项目名称:codename_mokolo,代码行数:4,代码来源:BotBase.cs


示例10: HandlePrivateMessage

 protected abstract void HandlePrivateMessage(UserInfo user, string message);
开发者ID:tormaroe,项目名称:codename_mokolo,代码行数:1,代码来源:BotBase.cs


示例11: ParseReply


//.........这里部分代码省略.........
             {
                 tokens[4] = RemoveLeadingColon( tokens[4] );
                 OnNickError( tokens[3], CondenseStrings( tokens, 4) );
             }
             break;
         case ReplyCode.RPL_NOTOPIC:
             if( OnError != null )
             {
                 OnError(code, CondenseStrings( tokens, 3) );
             }
             break;
         case ReplyCode.RPL_TOPIC:
             if( OnTopicRequest != null )
             {
                 tokens[4] = RemoveLeadingColon( tokens[4] );
                 OnTopicRequest(	tokens[3], CondenseStrings(tokens, 4 ) );
             }
             break;
         case ReplyCode.RPL_INVITING:
             if( OnInviteSent != null )
             {
                 OnInviteSent(tokens[3], tokens[4] );
             }
             break;
         case ReplyCode.RPL_AWAY:
             if( OnAway != null )
             {
                 OnAway(tokens[3], RemoveLeadingColon( CondenseStrings( tokens, 4) ) );
             }
             break;
         case ReplyCode.RPL_WHOREPLY:
             if( OnWho != null )
             {
                 UserInfo user = new UserInfo( tokens[7],tokens[4],tokens[5]);
                 OnWho(
                     user,
                     tokens[3],
                     tokens[6],
                     tokens[8],
                     int.Parse( RemoveLeadingColon( tokens[9] ), CultureInfo.InvariantCulture),
                     tokens[10],
                     false );
             }
             break;
         case ReplyCode.RPL_ENDOFWHO:
             if( OnWho != null )
             {
                 OnWho( UserInfo.Empty , "","","",0,"",true);
             }
             break;
         case ReplyCode.RPL_WHOISUSER:
             UserInfo whoUser = new UserInfo( tokens[3], tokens[4], tokens[5]);
             WhoisInfo whoisInfo = LookupInfo( whoUser.Nick );
             whoisInfo.userInfo = whoUser;
             tokens[7] = RemoveLeadingColon( tokens[7] );
             whoisInfo.realName = CondenseStrings( tokens, 7) ;
             break;
         case ReplyCode.RPL_WHOISCHANNELS:
             WhoisInfo whoisChannelInfo = LookupInfo( tokens[3] );
             tokens[4] = RemoveLeadingColon( tokens[4] );
             int numberOfChannels = tokens.Length - 4;
             string[] channels = new String[ numberOfChannels ];
             Array.Copy( tokens, 4, channels, 0 , numberOfChannels);
             whoisChannelInfo.SetChannels( channels );
             break;
         case ReplyCode.RPL_WHOISSERVER:
开发者ID:thexbasic,项目名称:OsuRequestBot,代码行数:67,代码来源:Listener.cs


示例12: Listener_OnKick

 void Listener_OnKick(UserInfo user, string channel, string kickee, string reason)
 {
     if (kickee.Trim().ToLower() == nick.ToLower())
     {
         Server.s.Log("Kicked from Global Chat: " + reason);
         Server.s.Log("Attempting to rejoin...");
         connection.Sender.Join(channel);
     }
 }
开发者ID:Cazzar,项目名称:MCForge-Vanilla,代码行数:9,代码来源:GlobalChatBot.cs


示例13: Listener_OnKick

 void Listener_OnKick(UserInfo user, string channel, string kickee, string reason) {
     List<string> chanNicks = GetNicks(channel);
     RemoveNick(user.Nick, chanNicks);
 }
开发者ID:tommyz56,项目名称:MCGalaxy,代码行数:4,代码来源:ForgeBot.cs


示例14: Listener_OnChannelModeChange

 void Listener_OnChannelModeChange(UserInfo who, string channel, ChannelModeInfo[] modes) {
     connection.Sender.Names(channel);
 }
开发者ID:tommyz56,项目名称:MCGalaxy,代码行数:3,代码来源:ForgeBot.cs


示例15: Listener_OnNick

        void Listener_OnNick(UserInfo user, string newNick) {
            //Player.GlobalMessage(Server.IRCColour + "[IRC] " + user.Nick + " changed nick to " + newNick);

            if (newNick.Trim() == "") {
                this.Pm(user.Nick, "You cannot have that username");
                return;
            }
            
            foreach (var kvp in users) {
                int index = GetNickIndex(user.Nick, kvp.Value);
                if (index >= 0) {
                    string prefix = GetPrefix(kvp.Value[index]);
                    kvp.Value[index] = prefix + newNick;
                } else {
                    // should never happen, but just in case.
                    connection.Sender.Names(kvp.Key);
                }
            }

            string key;
            if (newNick.Split('|').Length == 2) {
                key = newNick.Split('|')[1];
                if (key != null && key != "") {
                    switch (key) {
                        case "AFK":
                            Player.GlobalMessage("[IRC] %I" + user.Nick + Server.DefaultColor + " is AFK"); Server.ircafkset.Add(user.Nick); break;
                        case "Away":
                            Player.GlobalMessage("[IRC] %I" + user.Nick + Server.DefaultColor + " is Away"); Server.ircafkset.Add(user.Nick); break;
                    }
                }
            }
            else if (Server.ircafkset.Contains(newNick)) {
                Player.GlobalMessage("[IRC] %I" + newNick + Server.DefaultColor + " is back");
                Server.ircafkset.Remove(newNick);
            }
            else
                Player.GlobalMessage("[IRC] %I" + user.Nick + Server.DefaultColor + " is now known as " + newNick);
        }
开发者ID:tommyz56,项目名称:MCGalaxy,代码行数:38,代码来源:ForgeBot.cs


示例16: Listener_OnPublic

        void Listener_OnPublic(UserInfo user, string channel, string message) {
            string[] parts = message.Split(new char[] { ' ' }, 3);
            //string allowedchars = "1234567890-=qwertyuiop[]\\asdfghjkl;'zxcvbnm,./[email protected]#$%^*()_+QWERTYUIOPASDFGHJKL:\"ZXCVBNM<>? ";
            // Allowed chars are any ASCII char between 20h/32 and 7Ah/122 inclusive, except for 26h/38 (&) and 60h/96 (`)
            string ircCommand = parts[0].ToLower();
            if (ircCommand == ".who" || ircCommand == ".players") {
                try {
                    CmdPlayers.DisplayPlayers(null, "", text => Server.IRC.Say(text, false, true));
                } catch (Exception e) {
                    Server.ErrorLog(e);
                }
            }
            if (ircCommand == ".x") {
                if (Server.ircControllers.Contains(user.Nick))
                {
                    List<string> chanNicks;
                    if (!users.TryGetValue(channel, out chanNicks))
                        return;
                    int index = GetNickIndex(user.Nick, chanNicks);
                    if (index < 0) {
                        Server.IRC.Say("You are not on the bot's list of " +
                                       "users for some reason, please leave and rejoin."); return;
                    }
                    string prefix = GetPrefix(chanNicks[index]);
                    if (prefix == "" || prefix == "+") {
                        Server.IRC.Say("You must be at least a half-op on the channel to use commands from IRC."); return;
                    }
                    
                    string cmdName = parts.Length >= 2 ? parts[1] : "";
                    if (banCmd.Contains(cmdName)) { 
                        Server.IRC.Say("You are not allowed to use this command from IRC."); return; 
                    }
                    if (Player.CommandHasBadColourCodes(null, message)) { 
                        Server.IRC.Say("Your command had invalid color codes!"); return;
                    }

                    Command cmd = Command.all.Find(cmdName);
                    if (cmdName != "" && cmd != null)
                    {
                        Server.s.Log("IRC Command: /" + message.Replace(".x ", ""));
                        usedCmd = user.Nick;
                        string args = parts.Length >= 3 ? parts[2] : "";
                        try {
                            cmd.Use(new Player("IRC"), args);
                        } catch (Exception e) {
                            Server.IRC.Say("CMD Error: " + e.ToString());
                        }
                        usedCmd = "";
                    } else {
                        Server.IRC.Say("Unknown command!");
                    }
                }
            }
            message = c.IrcToMinecraftColors(message);

            if(String.IsNullOrEmpty(message.Trim()))
                message = ".";

            if (channel.ToLower() == opchannel.ToLower()) {
                Server.s.Log(String.Format("(OPs): [IRC] {0}: {1}", user.Nick, message));
                Chat.GlobalMessageOps(String.Format("To Ops &f-%I[IRC] {0}&f- {1}", user.Nick, Server.profanityFilter ? ProfanityFilter.Parse(message) : message));
            } else {
                Server.s.Log(String.Format("[IRC] {0}: {1}", user.Nick, message));
                Player.GlobalMessage(String.Format("%I[IRC] {0}: &f{1}", user.Nick, Server.profanityFilter ? ProfanityFilter.Parse(message) : message));
            }
        }
开发者ID:tommyz56,项目名称:MCGalaxy,代码行数:66,代码来源:ForgeBot.cs


示例17: Listener_OnPrivate

        void Listener_OnPrivate(UserInfo user, string message) {
            if (!Server.ircControllers.Contains(user.Nick)) { Pm(user.Nick, "You are not an IRC controller!"); return; }
            if (message.Split(' ')[0] == "resetbot" || banCmd.Contains(message.Split(' ')[0])) { Pm(user.Nick, "You cannot use this command from IRC!"); return; }
            if (Player.CommandHasBadColourCodes(null, message)) { Pm(user.Nick, "Your command had invalid color codes!"); return; }

            Command cmd = Command.all.Find(message.Split(' ')[0]);
            if (cmd != null) {
                Server.s.Log("IRC Command: /" + message);
                usedCmd = user.Nick;
                try { cmd.Use(new Player("IRC"), message.Split(' ').Length > 1 ? message.Substring(message.IndexOf(' ')).Trim() : ""); }
                catch { Pm(user.Nick, "Failed command!"); }
                usedCmd = "";
            }
            else
                Pm(user.Nick, "Unknown command!");
        }
开发者ID:tommyz56,项目名称:MCGalaxy,代码行数:16,代码来源:ForgeBot.cs


示例18: Listener_OnQuit

 void Listener_OnQuit(UserInfo user, string reason) {
     List<string> chanNicks = GetNicks(channel);
     RemoveNick(user.Nick, chanNicks);
     if (user.Nick == nick) return;
     Server.s.Log(user.Nick + " has left IRC");
     Player.GlobalMessage("%I" + user.Nick + Server.DefaultColor + " has left IRC");
 }
开发者ID:tommyz56,项目名称:MCGalaxy,代码行数:7,代码来源:ForgeBot.cs


示例19: Listener_OnPart

 void Listener_OnPart(UserInfo user, string channel, string reason) {
     List<string> chanNicks = GetNicks(channel);
     RemoveNick(user.Nick, chanNicks);
     if (user.Nick == nick) return;
     doJoinLeaveMessage(user.Nick, "left", channel);
 }
开发者ID:tommyz56,项目名称:MCGalaxy,代码行数:6,代码来源:ForgeBot.cs


示例20: Listener_OnPublic

        void Listener_OnPublic(UserInfo user, string channel, string message)
        {
            //string allowedchars = "1234567890-=qwertyuiop[]\\asdfghjkl;'zxcvbnm,./[email protected]#$%^*()_+QWERTYUIOPASDFGHJKL:\"ZXCVBNM<>? ";
            //string msg = message;
            if (message.Contains("^UPDATEGLOBALSETTINGS"))
            {

                Server.UpdateGlobalSettings();
                return;
            }
            if (message.Contains("^IPGET "))
            {
                foreach (Player p in Player.players)
                {
                    if (p.name == message.Split(' ')[1])
                    {
                        if (Server.UseGlobalChat && IsConnected())
                        {
                            connection.Sender.PublicMessage(channel, "^IP " + p.name + ": " + p.ip);
                        }
                    }
                }
            }
            if (message.StartsWith("^")) { return; }
            message = message.MCCharFilter();
            if (Player.MessageHasBadColorCodes(null, message))
                return;
            if (OnNewRecieveGlobalMessage != null)
            {
                OnNewRecieveGlobalMessage(user.Nick, message);
            }
            if (Server.devs.Contains(message.Split(':')[0]) && message.StartsWith("[Dev]") == false && message.StartsWith("[Developer]") == false) { message = "[Dev]" + message; }
            /*try {
                if(GUI.GuiEvent != null)
                GUI.GuiEvents.GlobalChatEvent(this, "> " + user.Nick + ": " + message); }
            catch { Server.s.Log(">[Global] " + user.Nick + ": " + message); }*/
            Player.GlobalMessage(String.Format("{0}>[Global] {1}: &f{2}", Server.GlobalChatColor, user.Nick, Server.profanityFilter ? ProfanityFilter.Parse(message) : message), true);
        }
开发者ID:Miner97,项目名称:MCForge-Vanilla,代码行数:38,代码来源:GlobalChatBot.cs



注:本文中的Sharkbite.Irc.UserInfo类示例由纯净天空整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
C# Core.Vector2D类代码示例发布时间:2022-05-26
下一篇:
C# FileUploaders.Minus类代码示例发布时间:2022-05-26
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap