internal override void PriPouziti(SixBot bot, string odesilatel, string[] argumenty) { try { SearchResults vysledky = Searcher.Search(SearchType.Web, string.Join(" ", argumenty)); if (vysledky != null && vysledky.Items != null && vysledky.Items.Length > 0) { bot.ChatZprava(string.Format(@"{0} *** {1} *** {2} *** Dotaz položil: {3}", vysledky.Items[0].Title, vysledky.Items[0].Content, vysledky.Items[0].Url, odesilatel).Replace("<b>", "").Replace("</b>", "")); } } catch (WebException) { } }
internal override void PriPouziti(SixBot bot, string odesilatel, string[] argumenty) { if (m_Rozesila) { bot.PrivateZprava(odesilatel, "Dota spam se již rozesílá nìkým jiným!"); return; } m_Rozesila = true; List <string> list; lock (DotaRoster.Hraci) { if (DotaRoster.Hraci.Count < 2) { bot.PrivateZprava(odesilatel, "Dotaroster obsahuje pøíliš málo hráèù"); m_Rozesila = false; return; } else if (!DotaRoster.Hraci.Contains(odesilatel)) { bot.PrivateZprava(odesilatel, "Pouze hráèi kteøí jsou v dotarosteru mùžou používat tento pøíkaz. Pro pøidání napiš -addme"); m_Rozesila = false; return; } list = new List <string>(DotaRoster.Hraci.Count); foreach (string hrac in DotaRoster.Hraci) { list.Add(hrac); } } bot.PrivateZprava(odesilatel, "Rozesílám..."); ushort online = 0; foreach (string hrac in list) { if (hrac != odesilatel && bot.Hub.Userlist.ContainsKey(hrac)) { switch (m_Nahoda.Next(3)) { case 0: { if (argumenty == null) { bot.PrivateZprava(hrac, string.Format("= DotA zalaložena come on! Odesilatel: {0} =", odesilatel)); } else { bot.PrivateZprava(hrac, string.Format("= DotA zalaložena come on! Název hry: {0} Odesilatel: {1} =", string.Join(" ", argumenty), odesilatel)); } break; } case 1: { if (argumenty == null) { bot.PrivateZprava(hrac, string.Format("= Byla založena DotA! Odesilatel: {0} =", odesilatel)); } else { bot.PrivateZprava(hrac, string.Format("= Byla založena DotA! Název hry: {0} Odesilatel: {1} =", string.Join(" ", argumenty), odesilatel)); } break; } case 2: { if (argumenty == null) { bot.PrivateZprava(hrac, string.Format("= Založena DotA! Odesilatel: {0} =", odesilatel)); } else { bot.PrivateZprava(hrac, string.Format("= Založena DotA! Název hry: {0} Odesilatel: {1} =", string.Join(" ", argumenty), odesilatel)); } break; } } online++; Thread.Sleep(4000); } } bot.PrivateZprava(odesilatel, string.Format("Pozvánka na Dotu odeslána {0} online hráèùm", online)); online++; //i s tím co odesílá switch (m_Nahoda.Next(3)) { case 0: { if (argumenty == null) { bot.ChatZprava(string.Format("= DotA zalaložena come on! Odesilatel: {0} Online: {1} =", odesilatel, online)); } else { bot.ChatZprava(string.Format("= DotA zalaložena come on! Název hry: {0} Odesilatel: {1} Online: {2} =", string.Join(" ", argumenty), odesilatel, online)); } break; } case 1: { if (argumenty == null) { bot.ChatZprava(string.Format("= Byla založena DotA! Odesilatel: {0} Online: {1} =", odesilatel, online)); } else { bot.ChatZprava(string.Format("= Byla založena DotA! Název hry: {0} Odesilatel: {1} Online: {2} =", string.Join(" ", argumenty), odesilatel, online)); } break; } case 2: { if (argumenty == null) { bot.ChatZprava(string.Format("= Založena DotA! Odesilatel: {0} Online: {1} =", odesilatel, online)); } else { bot.ChatZprava(string.Format("= Založena DotA! Název hry: {0} Odesilatel: {1} Online: {2} =", string.Join(" ", argumenty), odesilatel, online)); } break; } } m_Rozesila = false; }
internal override void PriPouziti(SixBot bot, string odesilatel) { lock (CsServery) { if (m_CsServery.Count == 0) { return; } m_MereniCasu.Reset(); m_MereniCasu.Start(); m_OtestovanoIP = 0; if (m_Hlaska.Length != 0) { m_Hlaska.Remove(0, m_Hlaska.Length); } foreach (IPAddress ip in m_CsServery) { foreach (StatProtocol protokol in StatProtocol.Protokoly) { UdpClient client = new UdpClient(); UdpObjekt obj = new UdpObjekt(client, ip, odesilatel, protokol); client.Connect(ip, protokol.Port); client.Send(protokol.Dotaz, protokol.Dotaz.Length); try { client.BeginReceive(m_AsCallback, obj); obj.Timerek = new Timer(m_TimerekCallback, obj, 100, Timeout.Infinite); } catch (SocketException /*ex*/) { // Stávající pøipojení bylo vynucenì ukonèeno vzdáleným hostitelem // m_Bot.Gui.VypisRadek("CATCH: " + ex.ToString()); ZkontrolujStopku(); client.Close(); continue; } } } m_Stopka.WaitOne(); m_MereniCasu.Stop(); if (m_Hlaska.Length > 0) { m_Hlaska.AppendLine(string.Format("Doba testu: {0} ms Otestováno: {1} IP adres Odesilatel: {2} (pohodlnìjší verze http://www.findcs.wz.cz/ )", (Math.Round((1000.0 * 1000.0 * 1000.0 * m_MereniCasu.ElapsedTicks / Stopwatch.Frequency) / 1000000.0, 3)).ToString(), (m_OtestovanoIP / StatProtocol.Protokoly.Length).ToString(), odesilatel)); m_Bot.ChatZprava(m_Hlaska.ToString()); } else { m_Hlaska.AppendLine(string.Format("Pøikaz -findcs nenašel žádný bìžící server Odesilatel: {0} (pohodlnìjší verze http://www.findcs.wz.cz/ )", odesilatel)); m_Hlaska.AppendLine(string.Format("Doba testu: {0} ms Otestováno: {1} IP adres", (Math.Round((1000.0 * 1000.0 * 1000.0 * m_MereniCasu.ElapsedTicks / Stopwatch.Frequency) / 1000000.0, 3)), (m_OtestovanoIP / StatProtocol.Protokoly.Length).ToString())); m_Bot.ChatZprava(m_Hlaska.ToString()); } } }
internal override void PriPouziti(SixBot bot, string odesilatel) { bot.ChatZprava("OoOoOoOo ooOoOooO"); }
internal override void PriPouziti(SixBot bot, string odesilatel, string[] argumenty) { bot.ChatZprava(string.Join(HandlerPrikazu.Oddelovac[0], argumenty)); }