internal void HandleSpeech(GameClient Session, string str, bool bool_13) { if (!this.IsBot) { if (Session.GetHabbo().jail == 1 && Session.GetHabbo().jailtime > 10 * 60) { Session.GetHabbo().Whisper("Du bist mehr als 10 Minuten gebannt und kannst deswegen nicht chatten!"); return; } } string object_ = str; string linkRegex = "((http|https):\\/\\/|www.)?[a-zA-Z0-9\\-\\.]+\\b(com|co\\.uk|org|net|eu|cf|info|ml|nl|ca|es|fi)\\b"; if (Session == null || Session.GetHabbo().HasFuse("ignore_roommute") || !this.GetRoom().bool_4) { this.Unidle(); if (!this.IsBot && this.GetClient().GetHabbo().IsMuted) { this.GetClient().GetHabbo().Whisper(HabboIMEnvironment.GetExternalText("error_muted")); } else if (!str.StartsWith(":") || Session == null || !ChatCommandHandler.smethod_5(Session, str.Substring(1))) { uint num = 24u; if (bool_13) { num = 26u; } if (!this.IsBot && Session.GetHabbo().method_4() > 0) { TimeSpan timeSpan = DateTime.Now - Session.GetHabbo().dateTime_0; if (timeSpan.Seconds > 4) { Session.GetHabbo().int_23 = 0; } if (timeSpan.Seconds < 4 && Session.GetHabbo().int_23 > 5 && !this.IsBot) { ServerMessage Message = new ServerMessage(27u); Message.AppendInt32(Session.GetHabbo().method_4()); this.GetClient().SendMessage(Message); this.GetClient().GetHabbo().IsMuted = true; this.GetClient().GetHabbo().int_4 = Session.GetHabbo().method_4(); this.GetClient().GetHabbo().GetEffectsInventoryComponent().method_2(620, true); this.GetClient().GetHabbo().Whisper("Du wurdest stumm geschaltet, da du zu schnell getippt hast!"); return; } Session.GetHabbo().dateTime_0 = DateTime.Now; Session.GetHabbo().int_23++; } bool aws = false; if (!this.IsBot && HabboIM.GetGame().AntiWerberStatus) { str = ChatCommandHandler.smethod_4b(Session, object_, "Raum"); str = ChatCommandHandler.amina_zikki(Session, str, "Raum"); if (str != object_) { aws = true; } } if (!this.IsBot) { str = ChatCommandHandler.smethod_4(str); } if (!this.GetRoom().method_9(this, str)) { ServerMessage Message2 = new ServerMessage(num); Message2.AppendInt32(this.VirtualId); if (!this.IsBot && !this.IsPet) { try { if (HabboIM.GetConfig().data.ContainsKey("anti.ads.enable") && HabboIM.GetConfig().data["anti.ads.enable"] == "1") { if (Session.GetHabbo().Rank <= uint.Parse(HabboIM.GetConfig().data["anti.ads.rank"])) { if (Regex.IsMatch(str, linkRegex, RegexOptions.IgnoreCase)) { Session.SendNotification(HabboIM.GetConfig().data["anti.ads.msg"]); return; } } } } catch { } } if (str.Contains("http://") || str.Contains("www.") || str.Contains("https://")) { string[] array = str.Split(new char[] { ' ' }); int num2 = 0; string text = ""; string text2 = ""; string[] array2 = array; for (int i = 0; i < array2.Length; i++) { string text3 = array2[i]; if (ChatCommandHandler.InitLinks(text3)) { if (num2 > 0) { text += ","; } text += text3; object obj = text2; text2 = string.Concat(new object[] { obj, " {", num2, "}" }); num2++; } else { text2 = text2 + " " + text3; } } text = text2; string[] array3 = text.Split(new char[] { ',' }); Message2.AppendStringWithBreak(text); if (array3.Length > 0) { Message2.AppendBoolean(false); Message2.AppendInt32(num2); array2 = array3; for (int i = 0; i < array2.Length; i++) { string text4 = array2[i]; string text5 = ChatCommandHandler.smethod_3(text4.Replace("http://", "").Replace("https://", "")); Message2.AppendStringWithBreak(text5.Replace("http://", "").Replace("https://", "")); Message2.AppendStringWithBreak(text4); Message2.AppendBoolean(false); } } } else { Message2.AppendStringWithBreak(str); } Message2.AppendInt32(this.ParseEmoticon(str)); try { if (this.ParseSmileys(str) != 0 && Session.GetHabbo().GetEffectsInventoryComponent().int_0 == 0) { Session.GetHabbo().GetEffectsInventoryComponent().method_2(this.ParseSmileys(str), true); Thread thread = new Thread(delegate() { try { Thread.Sleep(3000); Session.GetHabbo().GetEffectsInventoryComponent().method_2(0, true); } catch { } }); thread.Start(); } } catch { Console.WriteLine("Error in Smiley to Enable Function."); } Message2.AppendBoolean(false); if (!this.IsBot) { if (aws == false) { this.GetRoom().method_58(Message2, Session.GetHabbo().list_2, Session.GetHabbo().Id); } } else { this.GetRoom().SendMessage(Message2, null); } } else if (!this.IsBot) { Session.GetHabbo().Whisper(str); } if (!this.IsBot) { this.GetRoom().method_7(this, str, bool_13); if (Session.GetHabbo().CurrentQuestId > 0u && HabboIM.GetGame().GetQuestManager().GetQuestAction(Session.GetHabbo().CurrentQuestId) == "CHAT_WITH_SOMEONE") { HabboIM.GetGame().GetQuestManager().ProgressUserQuest(Session.GetHabbo().CurrentQuestId, Session); } } if (ServerConfiguration.EnableChatlog && !this.IsBot) { using (DatabaseClient @class = HabboIM.GetDatabase().GetClient()) { @class.AddParamWithValue("message", object_); @class.ExecuteQuery(string.Concat(new object[] { "INSERT INTO chatlogs (user_id,room_id,hour,minute,timestamp,message,user_name,full_date) VALUES ('", Session.GetHabbo().Id, "','", this.GetRoom().Id, "','", DateTime.Now.Hour, "','", DateTime.Now.Minute, "',UNIX_TIMESTAMP(),@message,'", Session.GetHabbo().Username, "','", DateTime.Now.ToLongDateString(), "')" }), 30); } } } } }