public void Handle(GameClient Session, ClientMessage Event) { string message = Essential.FilterString(Event.PopFixedString()); if (string.IsNullOrEmpty(message.Trim())) { return; } if (Essential.GetAntiAd().ContainsIllegalWord(message)) { ServerMessage Message2 = new ServerMessage(Outgoing.InstantChat); Message2.AppendUInt(0u); Message2.AppendString("[AWS] " + Session.GetHabbo().Username + ": " + message); Message2.AppendString(Essential.GetUnixTimestamp() + string.Empty); Essential.GetGame().GetClientManager().SendToStaffs(Session, Message2); Session.SendNotification(Essential.GetGame().GetRoleManager().GetConfiguration().getData("antiad.alert")); return; } // I don't "bobba" filter the word.. I just check if the message contains a Illegal word. And if, // I "close" the Event! Essential.GetGame().GetGuideManager().GetTicket(Session.GetHabbo().Id).StoreMessage(message, Session.GetHabbo().Id); ServerMessage Message = new ServerMessage(Outgoing.GuideSessionMessage); //Rootkit Message.AppendString(message); Message.AppendInt32(Session.GetHabbo().Id); Essential.GetGame().GetGuideManager().GetTicket(Session.GetHabbo().Id).SendToTicket(Message); }
public void Handle(GameClient Session, ClientMessage Event) { uint num = Event.PopWiredUInt(); string text = Essential.FilterString(Event.PopFixedString()); if (Session != null && Session.GetHabbo() != null && Session.GetHabbo().GetMessenger() != null && Session.GetHabbo().PassedSafetyQuiz) { Session.GetHabbo().CheckForUnmute(); if (num == 0u && Session.GetHabbo().HasFuse("cmd_sa")) { ServerMessage Message = new ServerMessage(Outgoing.InstantChat); Message.AppendUInt(0u); Message.AppendString(Session.GetHabbo().Username + ": " + text); Message.AppendString(Essential.GetUnixTimestamp() + string.Empty); Essential.GetGame().GetClientManager().SendToStaffs(Session, Message, false); } else { if (num == 0u) { /* ServerMessage Message2 = new ServerMessage(1133); * Message2.AppendInt32(4); * Message2.AppendUInt(0u); * Session.SendMessage(Message2);*/ } else { if (Session != null && Session.GetHabbo() != null) { Session.GetHabbo().GetMessenger().method_18(num, text); } } } } }
public void Handle(GameClient Session, ClientMessage Event) { string string_ = Essential.FilterString(Event.PopFixedString()); GuideTicket gt = Essential.GetGame().GetGuideManager().GetTicket(Session.GetHabbo().Id); Essential.GetGame().GetGuideManager().GetGuideById(gt.GuideId).IsInUse = false; gt.SendToTicket(Essential.GetGame().GetGuideManager().DetachedMessage); Essential.GetGame().GetGuideManager().RemoveTicket(Session.GetHabbo().Id); Essential.GetGame().GetModerationTool().method_3(Session, 0, gt.GetOtherClient(Session.GetHabbo().Id).GetHabbo().Id, string_); }
public void Handle(GameClient Session, ClientMessage Event) { Room @class = Essential.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId); if (@class != null) { Session.GetHabbo().CheckForUnmute(); RoomUser class2 = @class.GetRoomUserByHabbo(Session.GetHabbo().Id); if (class2 != null && Session.GetHabbo().PassedSafetyQuiz) { class2.HandleSpeech(Session, Essential.FilterString(Event.PopFixedString()), true, Event.PopWiredInt32()); } } }
public RoomData CreateRoom(GameClient Session, string Name, string Model) { Name = Essential.FilterString(Name); RoomData result; if (!this.Models.ContainsKey(Model)) { Session.SendNotification("Sorry, this room model has not been added yet. Try again later."); result = null; } else { if (this.Models[Model].bool_0 && !Session.GetHabbo().GetSubscriptionManager().HasSubscription("habbo_club") && !Session.GetHabbo().GetSubscriptionManager().HasSubscription("habbo_vip")) { Session.SendNotification("You must be an Essential Club member to use that room layout."); result = null; } else { if (Name.Length < 3) { Session.SendNotification("Room name is too short for room creation!"); result = null; } else { uint uint_ = 0u; using (DatabaseClient dbClient = Essential.GetDatabase().GetClient()) { dbClient.AddParamWithValue("caption", Name); dbClient.AddParamWithValue("model", Model); dbClient.AddParamWithValue("username", Session.GetHabbo().Username); dbClient.ExecuteQuery("INSERT INTO rooms (roomtype,caption,owner,model_name) VALUES ('private',@caption,@username,@model)"); Session.GetHabbo().GetUserDataFactory().SetRooms(dbClient.ReadDataTable("SELECT * FROM rooms WHERE owner = @username ORDER BY Id ASC")); uint_ = (uint)dbClient.ReadDataRow("SELECT Id FROM rooms WHERE owner = @username AND caption = @caption ORDER BY Id DESC")[0]; Session.GetHabbo().method_1(dbClient); } result = this.method_12(uint_); } } } return(result); }
public void Handle(GameClient Session, ClientMessage Event) { if (!Essential.GetGame().GetModerationTool().method_9(Session.GetHabbo().Id)) { string string_ = Essential.FilterString(Event.PopFixedString()); Event.PopWiredInt32(); int int_ = Event.PopWiredInt32(); uint uint_ = Event.PopWiredUInt(); Essential.GetGame().GetModerationTool().method_3(Session, int_, uint_, string_); } ServerMessage Message = new ServerMessage(Outgoing.HelpRequestAlert); // 321 old UPDATED Message.AppendInt32(0); Session.SendMessage(Message); }
public ServerMessage SerializeRoomSearch(string string_0) { DataTable dataTable = null; using (DatabaseClient @class = Essential.GetDatabase().GetClient()) { string_0 = Essential.FilterString(string_0.ToLower()).Trim(); if (string_0.Length > 0) { if (string_0.StartsWith("owner:")) { string_0 = string_0.Replace(" ", ""); @class.AddParamWithValue("query", string_0.Substring(6)); dataTable = @class.ReadDataTable("SELECT * FROM rooms WHERE owner = @query AND roomtype = 'private' ORDER BY users_now DESC LIMIT " + ServerConfiguration.RoomUserLimit); } else { string_0 = string_0.Replace("%", "\\%"); string_0 = string_0.Replace("_", "\\_"); @class.AddParamWithValue("query", string_0 + "%"); @class.AddParamWithValue("tags_query", "%" + string_0 + "%"); dataTable = @class.ReadDataTable("SELECT * FROM rooms WHERE caption LIKE @query AND roomtype = 'private' OR owner LIKE @query AND roomtype = 'private' ORDER BY users_now DESC LIMIT 40"); } } } List <RoomData> list = new List <RoomData>(); if (dataTable != null) { foreach (DataRow dataRow in dataTable.Rows) { RoomData item = Essential.GetGame().GetRoomManager().method_17((uint)dataRow["Id"], dataRow); list.Add(item); } } ServerMessage Message = new ServerMessage(Outgoing.NavigatorPacket); Message.AppendInt32(8); Message.AppendStringWithBreak(string_0); Message.AppendInt32(list.Count); foreach (RoomData current in list) { current.Serialize(Message, false, false); } Message.AppendBoolean(false); return(Message); }
public void Handle(GameClient Session, ClientMessage Event) { if (Session.GetHabbo().OwnedRooms.Count <= ServerConfiguration.RoomUserLimit) { string Name = Essential.FilterString(Event.PopFixedString()); string Model = Event.PopFixedString(); // Event.PopFixedString(); RoomData NewRoom = Essential.GetGame().GetRoomManager().CreateRoom(Session, Name, Model); if (NewRoom != null) { ServerMessage Message = new ServerMessage(Outgoing.OnCreateRoomInfo); // Update Message.AppendUInt(NewRoom.Id); Message.AppendStringWithBreak(NewRoom.Name); Session.SendMessage(Message); } } }
public void Handle(GameClient Session, ClientMessage Event) { if (Session != null && Session.GetHabbo() != null) { Session.GetHabbo().CheckForUnmute(); Room room = Essential.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId); if (room != null) { RoomUser user = room.GetRoomUserByHabbo(Session.GetHabbo().Id); if (user != null && Session.GetHabbo().PassedSafetyQuiz) { user.HandleSpeech(Session, Essential.FilterString(Event.PopFixedString()), false, Event.PopWiredInt32()); } } } }
public void Handle(GameClient Session, ClientMessage Event) { try { int pageId = Event.PopWiredInt32(); uint itemId = Event.PopWiredUInt(); string extraData = Event.PopFixedString(); string giftUser = Essential.FilterString(Event.PopFixedString()); string giftMessage = Essential.FilterString(Event.PopFixedString()); int giftSpriteId = Event.PopWiredInt32(); int giftLazo = Event.PopWiredInt32(); int giftColor = Event.PopWiredInt32(); bool undef = Event.PopWiredBoolean(); Essential.GetGame().GetCatalog().HandlePurchase(Session, pageId, itemId, extraData, true, giftUser, giftMessage, true, 0, undef); }catch (Exception ex) { Console.WriteLine(ex.ToString()); } }
public void Handle(GameClient Session, ClientMessage Event) { string text = Essential.FilterString(Event.PopFixedString()); if (text.Length <= 50 && !(text != ChatCommandHandler.ApplyFilter(text)) && !(text == Session.GetHabbo().Motto)) { Session.GetHabbo().Motto = text; using (DatabaseClient @class = Essential.GetDatabase().GetClient()) { @class.AddParamWithValue("motto", text); @class.ExecuteQuery("UPDATE users SET motto = @motto WHERE Id = '" + Session.GetHabbo().Id + "' LIMIT 1"); } if (Session.GetHabbo().CurrentQuestId > 0 && Essential.GetGame().GetQuestManager().GetQuestAction(Session.GetHabbo().CurrentQuestId) == "CHANGEMOTTO") { Essential.GetGame().GetQuestManager().ProgressUserQuest(Session.GetHabbo().CurrentQuestId, Session); } if (Session.GetHabbo().InRoom) { Room class14_ = Session.GetHabbo().CurrentRoom; if (class14_ == null) { return; } RoomUser class2 = class14_.GetRoomUserByHabbo(Session.GetHabbo().Id); if (class2 == null) { return; } ServerMessage Message2 = new ServerMessage(Outgoing.UpdateUserInformation); //Rootkit Message2.AppendInt32(class2.VirtualId); Message2.AppendStringWithBreak(Session.GetHabbo().Figure); Message2.AppendStringWithBreak(Session.GetHabbo().Gender.ToLower()); Message2.AppendStringWithBreak(Session.GetHabbo().Motto); Message2.AppendInt32(Session.GetHabbo().AchievementScore); // Message2.AppendStringWithBreak(""); class14_.SendMessage(Message2, null); } Session.GetHabbo().MottoAchievementsCompleted(); } }
public void Handle(GameClient Session, ClientMessage Event) { Room @class = Essential.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId); if (@class != null && @class.CheckRights(Session, true) && @class.Event != null) { int int_ = Event.PopWiredInt32(); string string_ = Essential.FilterString(Event.PopFixedString()); string string_2 = Essential.FilterString(Event.PopFixedString()); int num = Event.PopWiredInt32(); @class.Event.Category = int_; @class.Event.Name = string_; @class.Event.Description = string_2; @class.Event.Tags = new List <string>(); for (int i = 0; i < num; i++) { @class.Event.Tags.Add(Essential.FilterString(Event.PopFixedString())); } @class.SendMessage(@class.Event.Serialize(Session), null); } }
public void Handle(GameClient Session, ClientMessage Event) { Room @class = Essential.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId); if (@class != null && @class.CheckRights(Session, true) && @class.Event == null && @class.State == 0) { int int_ = Event.PopWiredInt32(); string text = Essential.FilterString(Event.PopFixedString()); string string_ = Essential.FilterString(Event.PopFixedString()); int num = Event.PopWiredInt32(); if (text.Length >= 1) { @class.Event = new RoomEvent(@class.Id, text, string_, int_, null); @class.Event.Tags = new List <string>(); for (int i = 0; i < num; i++) { @class.Event.Tags.Add(Essential.FilterString(Event.PopFixedString())); } @class.SendMessage(@class.Event.Serialize(Session), null); } } }
public void Handle(GameClient Session, ClientMessage Event) { Room @class = Essential.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId); if (@class != null && @class.method_26(Session)) { uint num = Event.PopWiredUInt(); string a = Event.PopFixedString().ToUpper(); string text = Essential.FilterString(Event.PopFixedString()); text = text.Replace("hd-99999-99999", ""); text += "."; RoomItem class2 = @class.Hashtable_0[num] as RoomItem; if (class2 != null) { if (class2.ExtraData.Contains(',')) { class2.string_2 = class2.ExtraData.Split(new char[] { ',' })[0]; class2.string_3 = class2.ExtraData.Split(new char[] { ',' })[1]; } if (a == "M") { class2.string_2 = text; } else { class2.string_3 = text; } class2.ExtraData = class2.string_2 + "," + class2.string_3; class2.UpdateState(true, true); } } }
internal void tryLogin(string AuthTicket) { try { UserDataFactory @class = new UserDataFactory(AuthTicket, this.GetConnection().String_0, true); if ([email protected]) { @class = new UserDataFactory(AuthTicket, this.GetConnection().String_0, true); } if ([email protected]) { string str = ""; if (ServerConfiguration.EnableSSO) { str = EssentialEnvironment.GetExternalText("emu_sso_wrong_secure") + "(" + this.GetConnection().String_0 + ")"; } SendNotifWithScroll(EssentialEnvironment.GetExternalText("emu_sso_wrong") + str); return; } Habbo class2 = Authenticator.CreateHabbo(AuthTicket, this, @class, @class); Essential.GetGame().GetClientManager().Disconnect(class2.Id, "New Session"); this.Habbo = class2; this.Habbo.method_2(@class); } catch (Exception ex) { Console.WriteLine("Logging login error because you are on alpha test!"); Logging.LogException(ex.ToString()); if (this != null) { this.SendNotification(ex.ToString()); this.Disconnect("Login Error"); } return; } try { Essential.GetGame().GetBanManager().method_1(this); } catch (ModerationBanException gException) { this.NotifyBan(gException.Message); this.Disconnect("Banned!"); return; } #region "AKS" if (this.MachineId != "" && !Essential.StringToBoolean(this.GetHabbo().GetUserDataFactory().GetUserData()["staff_inacc"].ToString())) { using (DatabaseClient dbClient = Essential.GetDatabase().GetClient()) { string oldMachineId = dbClient.SpecialString("SELECT machineId FROM user_machineids WHERE userid=" + this.GetHabbo().Id); dbClient.AddParamWithValue("machineid", this.MachineId); if ((oldMachineId == "" || oldMachineId != this.MachineId)) { dbClient.AddParamWithValue("username", this.GetHabbo().Username); dbClient.ExecuteQuery("INSERT INTO user_machineids (username,userid,timestamp,machineId) VALUES (@username," + this.GetHabbo().Id + ",'" + Convert.ToInt32(Essential.GetUnixTimestamp()) + "',@machineid)"); } } } #endregion ServerMessage Message2 = new ServerMessage(Outgoing.Fuserights); if (this == null || this.GetHabbo() == null) { return; } if (this.GetHabbo().IsVIP || ServerConfiguration.HabboClubForClothes) { Message2.AppendInt32(2); } else { if (this.GetHabbo().GetSubscriptionManager().HasSubscription("habbo_club")) { Message2.AppendInt32(1); } else { Message2.AppendInt32(0); } } if (this.GetHabbo().HasFuse("acc_anyroomowner")) { Message2.AppendInt32(7); } else { if (this.GetHabbo().HasFuse("acc_anyroomrights")) { Message2.AppendInt32(5); } else { if (this.GetHabbo().HasFuse("acc_supporttool")) { Message2.AppendInt32(4); } else { if (this.GetHabbo().IsVIP || ServerConfiguration.HabboClubForClothes || this.GetHabbo().GetSubscriptionManager().HasSubscription("habbo_club")) { Message2.AppendInt32(2); } else { Message2.AppendInt32(0); } } } } this.SendMessage(Message2); this.SendMessage(this.GetHabbo().GetEffectsInventoryComponent().method_6()); ServerMessage Message3 = new ServerMessage(Outgoing.AvailabilityStatus); Message3.AppendBoolean(true); Message3.AppendBoolean(false); this.SendMessage(Message3); ServerMessage message = new ServerMessage(Outgoing.UniqueID); message.AppendString(this.MachineId); this.SendMessage(message); ServerMessage Message5_ = new ServerMessage(Outgoing.AuthenticationOK); this.SendMessage(Message5_); if (GetHabbo().HomeRoomId <= 0) { GetHabbo().HomeRoomId = 64259; } ServerMessage Message5 = new ServerMessage(Outgoing.HomeRoom); Message5.AppendUInt(this.GetHabbo().HomeRoomId); Message5.AppendUInt(this.GetHabbo().HomeRoomId); this.SendMessage(Message5); Console.WriteLine("[" + this.GetConnection().UInt32_0 + "] [" + this.GetHabbo().Username + "] [" + this.GetHabbo().Id + "] [" + this.GetConnection().String_0 + "] [" + DateTime.Now.Hour + ":" + DateTime.Now.Minute + "]"); GetHabbo().UpdateCredits(false); GetHabbo().UpdateActivityPoints(false); if (this.GetHabbo().HasFuse("acc_supporttool")) { this.SendMessage(Essential.GetGame().GetModerationTool().SerializeTool()); Essential.GetGame().GetModerationTool().method_4(this); } if (Essential.GetGame().GetPixelManager().CanHaveReward(this)) { Essential.GetGame().GetPixelManager().UpdateNeeded(this); } ServerMessage Message6 = new ServerMessage(Outgoing.FavouriteRooms); Message6.AppendInt32(30); Message6.AppendInt32(this.GetHabbo().list_1.Count); foreach (uint current in this.GetHabbo().list_1) { Message6.AppendUInt(current); } this.SendMessage(Message6); try { this.GetHabbo().CheckTotalTimeOnlineAchievements(); this.GetHabbo().CheckHappyHourAchievements(); this.GetHabbo().CheckTrueHabboAchievements(); this.GetHabbo().CheckRegularVisitorAchievements(); this.GetHabbo().CheckFootballGoalHostScoreAchievements(); this.GetHabbo().CheckStaffPicksAchievement(); } catch { } if (ServerConfiguration.MOTD != "") { this.SendNotification(ServerConfiguration.MOTD, 2); } for (uint num = (uint)Essential.GetGame().GetRoleManager().GetRankCount(); num > 1u; num -= 1u) { if (Essential.GetGame().GetRoleManager().GetBadgeByRank(num).Length > 0) { if (!this.GetHabbo().GetBadgeComponent().HasBadge(Essential.GetGame().GetRoleManager().GetBadgeByRank(num)) && this.GetHabbo().Rank == num) { this.GetHabbo().GetBadgeComponent().SendBadge(this, Essential.GetGame().GetRoleManager().GetBadgeByRank(num), true); } else { if (this.GetHabbo().GetBadgeComponent().HasBadge(Essential.GetGame().GetRoleManager().GetBadgeByRank(num)) && this.GetHabbo().Rank < num) { this.GetHabbo().GetBadgeComponent().RemoveBadge(Essential.GetGame().GetRoleManager().GetBadgeByRank(num)); } } } } if (this.GetHabbo().GetSubscriptionManager().HasSubscription("habbo_club")) { this.GetHabbo().CheckHCAchievements(); } if (this.GetHabbo().IsVIP&& !this.GetHabbo().GetBadgeComponent().HasBadge("VIP")) { this.GetHabbo().GetBadgeComponent().SendBadge(this, "VIP", true); } else { if (!this.GetHabbo().IsVIP&& this.GetHabbo().GetBadgeComponent().HasBadge("VIP")) { this.GetHabbo().GetBadgeComponent().RemoveBadge("VIP"); } } if (this.GetHabbo().CurrentQuestId > 0u) { Essential.GetGame().GetQuestManager().ActivateQuest(this.GetHabbo().CurrentQuestId, this); } if (!Regex.IsMatch(this.GetHabbo().Username, "^[-a-zA-Z0-9._:,]+$")) { ServerMessage Message5_2 = new ServerMessage(Outgoing.Disconnect); this.SendMessage(Message5_2); } this.GetHabbo().Motto = Essential.FilterString(this.GetHabbo().Motto); DataTable dataTable = null; using (DatabaseClient class3 = Essential.GetDatabase().GetClient()) { dataTable = class3.ReadDataTable("SELECT achievement,achlevel FROM achievements_owed WHERE user = '******'"); } if (dataTable != null) { foreach (DataRow dataRow in dataTable.Rows) { Essential.GetGame().GetAchievementManager().addAchievement(this, (uint)dataRow["achievement"], (int)dataRow["achlevel"]); using (DatabaseClient class3 = Essential.GetDatabase().GetClient()) { class3.ExecuteQuery(string.Concat(new object[] { "DELETE FROM achievements_owed WHERE achievement = '", (uint)dataRow["achievement"], "' AND user = '******' LIMIT 1" })); } } } if (this.GetHabbo().list_2 != null && this.GetHabbo().list_2.Count > 0) { ServerMessage IgnoringList = new ServerMessage(Outgoing.IgnoringList); IgnoringList.AppendInt32(this.GetHabbo().list_2.Count); foreach (uint userId in this.GetHabbo().list_2) { IgnoringList.AppendString(Essential.GetGame().GetClientManager().GetNameById(userId)); } this.SendMessage(IgnoringList); } //this.GetClientMessageHandler().method_5(this.GetHabbo().HomeRoomId, ""); }
public void Handle(GameClient Session, ClientMessage Event) { Room @class = Essential.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId); if (@class != null && Session != null && Session.GetHabbo().PassedSafetyQuiz) { Session.GetHabbo().CheckForUnmute(); if (Session.GetHabbo().IsMuted) { Session.SendNotification(EssentialEnvironment.GetExternalText("error_muted")); } else { if (Session.GetHabbo().HasFuse("ignore_roommute") || [email protected]_4) { string text = Essential.FilterString(Event.PopFixedString()); if (!String.IsNullOrEmpty(text) || !String.IsNullOrWhiteSpace(text)) { string text2 = text.Split(new char[] { ' ' })[0]; string text3 = text.Substring(text2.Length + 1); text3 = ChatCommandHandler.ApplyFilter(text3); RoomUser class2 = @class.GetRoomUserByHabbo(Session.GetHabbo().Id); RoomUser class3 = @class.method_56(text2); if (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 && !class2.IsBot) { ServerMessage Message = new ServerMessage(Outgoing.FloodFilter); Message.AppendInt32(Session.GetHabbo().method_4()); Session.SendMessage(Message); Session.GetHabbo().IsMuted = true; Session.GetHabbo().int_4 = Session.GetHabbo().method_4(); return; } Session.GetHabbo().dateTime_0 = DateTime.Now; Session.GetHabbo().int_23++; } ServerMessage Message2 = new ServerMessage(Outgoing.Whisp); // OLD 25 UPDATED Message2.AppendInt32(class2.VirtualId); Message2.AppendStringWithBreak(text3); Message2.AppendInt32(0); Message2.AppendInt32(Event.PopWiredInt32()); Message2.AppendInt32(0); Message2.AppendInt32(-1); if (class2 != null && !class2.IsBot && !Essential.GetAntiAd().ContainsIllegalWord(text3)) { class2.GetClient().SendMessage(Message2); } class2.Unidle(); if (class3 != null && !class3.IsBot && (class3.GetClient().GetHabbo().list_2.Count <= 0 || !class3.GetClient().GetHabbo().list_2.Contains(Session.GetHabbo().Id))) { if (!Essential.GetAntiAd().ContainsIllegalWord(text3)) { class3.GetClient().SendMessage(Message2); } if (ServerConfiguration.EnableChatlog) { using (DatabaseClient class4 = Essential.GetDatabase().GetClient()) { class4.AddParamWithValue("message", "<Whisper to " + class3.GetClient().GetHabbo().Username + ">: " + text3); class4.ExecuteQuery(string.Concat(new object[] { "INSERT INTO chatlogs (user_id,room_id,hour,minute,timestamp,message,user_name,full_date) VALUES ('", Session.GetHabbo().Id, "','", @class.Id, "','", DateTime.Now.Hour, "','", DateTime.Now.Minute, "',UNIX_TIMESTAMP(),@message,'", Session.GetHabbo().Username, "','", DateTime.Now.ToLongDateString(), "')" })); } } if (Essential.GetAntiAd().ContainsIllegalWord(text3)) { ServerMessage Message3 = new ServerMessage(Outgoing.InstantChat); Message3.AppendUInt(0u); Message3.AppendString("[AWS] " + Session.GetHabbo().Username + ": " + text3); Message3.AppendString(Essential.GetUnixTimestamp() + string.Empty); Essential.GetGame().GetClientManager().SendToStaffs(Session, Message3); Session.SendNotification(Essential.GetGame().GetRoleManager().GetConfiguration().getData("antiad.alert")); } } } } } } }
public void ParsePacket(string data) { string text = data.Split(new char[] { Convert.ToChar(1) })[0]; string text2 = data.Split(new char[] { Convert.ToChar(1) })[1]; GameClient client = null; DataRow dataRow = null; string text3 = text.ToLower(); if (text3 != null) { if (MusCommands.dictionary_0 == null) { MusCommands.dictionary_0 = new Dictionary <string, int>(29) { { "update_items", 0 }, { "update_catalogue", 1 }, { "update_catalog", 2 }, { "updateusersrooms", 3 }, { "senduser", 4 }, { "updatevip", 5 }, { "giftitem", 6 }, { "giveitem", 7 }, { "unloadroom", 8 }, { "roomalert", 9 }, { "updategroup", 10 }, { "updateusersgroups", 11 }, { "shutdown", 12 }, { "update_filter", 13 }, { "refresh_filter", 14 }, { "updatecredits", 15 }, { "updatesettings", 16 }, { "updatepixels", 17 }, { "updatepoints", 18 }, { "reloadbans", 19 }, { "update_bots", 20 }, { "signout", 21 }, { "exe", 22 }, { "alert", 23 }, { "sa", 24 }, { "ha", 25 }, { "hal", 26 }, { "updatemotto", 27 }, { "update_badges", 29 }, { "update_navigator", 40 }, { "startquestion", 31 }, { "roomkick", 37 }, { "setinapp", 38 }, { "lockroom", 39 }, { "updatelook", 28 }, { "infobuspoll", 34 }, { "givebadge", 32 }, { "update_permissions", 33 }, { "update_catalogid", 35 }, { "addFriend", 36 }, { "ref_websocket", 50 }, { "eventha", 51 } }; } int num; if (MusCommands.dictionary_0.TryGetValue(text3, out num)) { uint num2; uint uint_2; Room class4; uint num3; string text5; switch (num) { case 0: using (DatabaseClient class2 = Essential.GetDatabase().GetClient()) { Essential.GetGame().GetItemManager().Initialize(class2); goto IL_C70; } case 1: case 2: break; case 3: { Habbo class3 = Essential.GetGame().GetClientManager().GetClient(Convert.ToUInt32(text2)).GetHabbo(); if (class3 != null) { using (DatabaseClient class2 = Essential.GetDatabase().GetClient()) { class3.method_1(class2); goto IL_C70; } } goto IL_C70; } case 4: goto IL_34E; case 5: { Habbo class3 = Essential.GetGame().GetClientManager().GetClient(Convert.ToUInt32(text2)).GetHabbo(); if (class3 != null) { class3.UpdateRights(); goto IL_C70; } goto IL_C70; } case 6: case 7: { num2 = uint.Parse(text2.Split(new char[] { ' ' })[0]); uint uint_ = uint.Parse(text2.Split(new char[] { ' ' })[1]); int int_ = int.Parse(text2.Split(new char[] { ' ' })[2]); string string_ = text2.Substring(num2.ToString().Length + uint_.ToString().Length + int_.ToString().Length + 3); Essential.GetGame().GetCatalog().CreateGift(string_, num2, uint_, int_); goto IL_C70; } case 8: uint_2 = uint.Parse(text2); class4 = Essential.GetGame().GetRoomManager().GetRoom(uint_2); Essential.GetGame().GetRoomManager().method_16(class4); goto IL_C70; case 37: num3 = uint.Parse(text2.Split(new char[] { ' ' })[0]); class4 = Essential.GetGame().GetRoomManager().GetRoom(num3); if (class4 != null) { Essential.GetGame().GetModerationTool().ClearRoomFromUsers(num3); goto IL_C70; } goto IL_C70; case 38: num3 = uint.Parse(text2.Split(new char[] { ' ' })[0]); class4 = Essential.GetGame().GetRoomManager().GetRoom(num3); if (class4 != null) { Essential.GetGame().GetModerationTool().SetInApp(num3); goto IL_C70; } goto IL_C70; case 39: num3 = uint.Parse(text2.Split(new char[] { ' ' })[0]); class4 = Essential.GetGame().GetRoomManager().GetRoom(num3); if (class4 != null) { Essential.GetGame().GetModerationTool().LockRoom(num3); goto IL_C70; } goto IL_C70; case 40: using (DatabaseClient dbClient = Essential.GetDatabase().GetClient()) { Essential.GetGame().GetNavigator().Initialize(dbClient); Essential.GetGame().GetRoomManager().method_8(dbClient); Essential.GetGame().GetRoomManager().LoadMagicTiles(dbClient); Essential.GetGame().GetRoomManager().LoadBillboards(dbClient); } goto IL_C70; case 9: num3 = uint.Parse(text2.Split(new char[] { ' ' })[0]); class4 = Essential.GetGame().GetRoomManager().GetRoom(num3); if (class4 != null) { string string_2 = text2.Substring(num3.ToString().Length + 1); for (int i = 0; i < class4.RoomUsers.Length; i++) { RoomUser class5 = class4.RoomUsers[i]; if (class5 != null && !class5.IsBot && !class5.IsPet) { class5.GetClient().SendNotification(string_2); } } goto IL_C70; } goto IL_C70; case 10: { int int_2 = int.Parse(text2.Split(new char[] { ' ' })[0]); using (DatabaseClient class2 = Essential.GetDatabase().GetClient()) { Groups.UpdateGroup(class2, int_2); goto IL_C70; } } case 11: goto IL_5BF; case 12: goto IL_602; case 13: case 14: using (DatabaseClient class2 = Essential.GetDatabase().GetClient()) { ChatCommandHandler.InitWords(class2); goto IL_C70; } case 15: goto IL_633; case 16: using (DatabaseClient class2 = Essential.GetDatabase().GetClient()) { Essential.GetGame().LoadServerSettings(class2); goto IL_C70; } case 17: goto IL_6F7; case 18: client = Essential.GetGame().GetClientManager().GetClient(uint.Parse(text2)); if (client != null) { client.GetHabbo().UpdateVipPoints(true, false); goto IL_C70; } goto IL_C70; case 19: using (DatabaseClient class2 = Essential.GetDatabase().GetClient()) { Essential.GetGame().GetBanManager().Initialise(class2); } Essential.GetGame().GetClientManager().UpdateBans(); goto IL_C70; case 20: using (DatabaseClient class2 = Essential.GetDatabase().GetClient()) { Essential.GetGame().GetBotManager().Initialize(class2); goto IL_C70; } case 21: goto IL_839; case 22: using (DatabaseClient class2 = Essential.GetDatabase().GetClient()) { class2.ExecuteQuery(text2); goto IL_C70; } case 23: goto IL_880; case 24: { ServerMessage Message = new ServerMessage(Outgoing.InstantChat); Message.AppendUInt(0u); Message.AppendString("Habbo: " + text2); Message.AppendString(Essential.GetUnixTimestamp() + string.Empty); Essential.GetGame().GetClientManager().SendToStaffs(Message, Message); goto IL_C70; } case 25: { ServerMessage Message2 = new ServerMessage(Outgoing.BroadcastMessage); Message2.AppendStringWithBreak(EssentialEnvironment.GetExternalText("mus_ha_title") + "\n\n" + text2); Message2.AppendStringWithBreak(""); /*ServerMessage Message3 = new ServerMessage(161u); * Message3.AppendStringWithBreak(text2); */ Essential.GetGame().GetClientManager().SendToHotel(Message2, Message2); goto IL_C70; } case 26: { string text4 = text2.Split(new char[] { ' ' })[0]; text5 = text2.Substring(text4.Length + 1); ServerMessage Message4 = new ServerMessage(Outgoing.SendNotif); // Updated Message4.AppendStringWithBreak(string.Concat(new string[] { EssentialEnvironment.GetExternalText("mus_hal_title"), "\r\n", text5, "\r\n-", EssentialEnvironment.GetExternalText("mus_hal_tail") })); Message4.AppendStringWithBreak(text4); Essential.GetGame().GetClientManager().BroadcastMessage(Message4); goto IL_C70; } case 29: { num3 = uint.Parse(text2.Split(new char[] { ' ' })[0]); uint UserIidu3 = num3; client = Essential.GetGame().GetClientManager().GetClient(UserIidu3); if (client != null) { client.GetHabbo().GetBadgeComponent().AddBadge(text2.Split(new char[] { ' ' })[1], 0, false); } ServerMessage Message = new ServerMessage(Outgoing.AddBadge); Message.AppendInt32(1); Message.AppendInt32(4); Message.AppendInt32(1); Message.AppendUInt(0); client.SendMessage(Message); client.SendMessage(client.GetHabbo().GetBadgeComponent().ComposeBadgeListMessage()); goto IL_C70; } case 30: { uint UserIidu = uint.Parse(text2); client = Essential.GetGame().GetClientManager().GetClient(UserIidu); if (client != null) { if (client.GetHabbo().InRoom) { if (client.GetHabbo().CurrentRoom.CCTs.Contains("park")) { if (!client.GetHabbo().CurrentRoom.IsInfobusOpen) { client.GetHabbo().CurrentRoom.IsInfobusOpen = true; } else { client.GetHabbo().CurrentRoom.IsInfobusOpen = false; } for (int i = 0; i < client.GetHabbo().CurrentRoom.RoomUsers.Length; i++) { RoomUser RoomiUser = client.GetHabbo().CurrentRoom.RoomUsers[i]; if (RoomiUser != null) { ServerMessage ParkBusDoorMessage = new ServerMessage(Outgoing.ParkBusDoor); ParkBusDoorMessage.AppendBoolean(client.GetHabbo().CurrentRoom.IsInfobusOpen); RoomiUser.GetClient().SendMessage(ParkBusDoorMessage); } } } else { // client.SendNotification("Sinun täytyy olla puistossa avataksesi tietolinjurin oven!"); } } } goto IL_C70; } case 355: { uint UserIidu2 = uint.Parse(text2.Split(';')[0]); client = Essential.GetGame().GetClientManager().GetClient(UserIidu2); if (client != null) { if (client.GetHabbo().InRoom) { Room Room = Essential.GetGame().GetRoomManager().GetRoom(client.GetHabbo().CurrentRoomId); DataTable Data = null; int QuestionId = int.Parse(text2.Split(';')[1]); Room.CurrentPollId = QuestionId; string Question; using (DatabaseClient dbClient = Essential.GetDatabase().GetClient()) { Question = dbClient.ReadString("SELECT question FROM infobus_questions WHERE id = '" + QuestionId + "' LIMIT 1"); Data = dbClient.ReadDataTable("SELECT * FROM infobus_answers WHERE question_id = '" + QuestionId + "'"); } ServerMessage InfobusQuestion = new ServerMessage(Outgoing.InfobusPoll3); // Updated InfobusQuestion.AppendStringWithBreak(Question); InfobusQuestion.AppendInt32(Data.Rows.Count); if (Data != null) { foreach (DataRow Row in Data.Rows) { InfobusQuestion.AppendInt32((int)Row["id"]); InfobusQuestion.AppendStringWithBreak((string)Row["answer_text"]); } } Room.SendMessage(InfobusQuestion, null); Thread Infobus = new Thread(delegate() { Room.ShowResults(Room, QuestionId, client); }); Infobus.Start(); } } goto IL_C70; } case 27: case 28: { uint_2 = uint.Parse(text2); client = Essential.GetGame().GetClientManager().GetClient(uint_2); using (DatabaseClient class2 = Essential.GetDatabase().GetClient()) { dataRow = class2.ReadDataRow("SELECT look,gender,motto,mutant_penalty,block_newfriends FROM users WHERE id = '" + client.GetHabbo().Id + "' LIMIT 1"); } client.GetHabbo().Figure = (string)dataRow["look"]; client.GetHabbo().Gender = dataRow["gender"].ToString().ToLower(); client.GetHabbo().Motto = Essential.FilterString((string)dataRow["motto"]); client.GetHabbo().BlockNewFriends = Essential.StringToBoolean(dataRow["block_newfriends"].ToString()); /*ServerMessage Message5 = new ServerMessage(Outgoing.UpdateUserInformation); * Message5.AppendInt32(-1); * Message5.AppendStringWithBreak(client.GetHabbo().Figure); * Message5.AppendStringWithBreak(client.GetHabbo().Gender.ToLower()); * Message5.AppendStringWithBreak(client.GetHabbo().Motto); * client.SendMessage(Message5);*/ if (client.GetHabbo().InRoom) { class4 = Essential.GetGame().GetRoomManager().GetRoom(client.GetHabbo().CurrentRoomId); RoomUser class6 = class4.GetRoomUserByHabbo(client.GetHabbo().Id); ServerMessage Message6 = new ServerMessage(Outgoing.UpdateUserInformation); Message6.AppendInt32(class6.VirtualId); Message6.AppendStringWithBreak(client.GetHabbo().Figure); Message6.AppendStringWithBreak(client.GetHabbo().Gender.ToLower()); Message6.AppendStringWithBreak(client.GetHabbo().Motto); Message6.AppendInt32(client.GetHabbo().AchievementScore); class4.SendMessage(Message6, null); } text3 = text.ToLower(); if (text3 == null) { goto IL_C70; } if (text3 == "updatemotto") { class4 = Essential.GetGame().GetRoomManager().GetRoom(client.GetHabbo().CurrentRoomId); RoomUser class6 = class4.GetRoomUserByHabbo(client.GetHabbo().Id); ServerMessage Message6 = new ServerMessage(Outgoing.UpdateUserInformation); Message6.AppendInt32(class6.VirtualId); Message6.AppendStringWithBreak(client.GetHabbo().Figure); Message6.AppendStringWithBreak(client.GetHabbo().Gender.ToLower()); Message6.AppendStringWithBreak(client.GetHabbo().Motto); Message6.AppendInt32(client.GetHabbo().AchievementScore); class4.SendMessage(Message6, null); client.GetHabbo().MottoAchievementsCompleted(); goto IL_C70; } if (text3 == "updatelook") { ServerMessage serverMessage = new ServerMessage(Outgoing.UpdateUserInformation); serverMessage.AppendInt32(-1); serverMessage.AppendStringWithBreak(client.GetHabbo().Figure); serverMessage.AppendStringWithBreak(client.GetHabbo().Gender.ToLower()); serverMessage.AppendStringWithBreak(client.GetHabbo().Motto); serverMessage.AppendInt32(client.GetHabbo().AchievementScore); // serverMessage.AppendStringWithBreak(""); client.SendMessage(serverMessage); class4 = Essential.GetGame().GetRoomManager().GetRoom(client.GetHabbo().CurrentRoomId); RoomUser class6 = class4.GetRoomUserByHabbo(client.GetHabbo().Id); ServerMessage Message6 = new ServerMessage(Outgoing.UpdateUserInformation); Message6.AppendInt32(class6.VirtualId); Message6.AppendStringWithBreak(client.GetHabbo().Figure); Message6.AppendStringWithBreak(client.GetHabbo().Gender.ToLower()); Message6.AppendStringWithBreak(client.GetHabbo().Motto); Message6.AppendInt32(client.GetHabbo().AchievementScore); class4.SendMessage(Message6, null); client.GetHabbo().AvatarLookAchievementsCompleted(); goto IL_C70; } goto IL_C70; } case 31: { int QuestionID = int.Parse(text2.Split(';')[1]); using (DatabaseClient dbClient = Essential.GetDatabase().GetClient()) { DataRow QuestionRow = dbClient.ReadDataRow("SELECT * FROM infobus_questions WHERE id='" + QuestionID + "' LIMIT 1"); DataTable AnswersTable = dbClient.ReadDataTable("SELECT * FROM infobus_answers WHERE question_id='" + QuestionID + "'"); Room PollRoom = Essential.GetGame().GetClientManager().GetClientByHabbo(QuestionRow["owner"].ToString()).GetHabbo().CurrentRoom; if (PollRoom.Owner == QuestionRow["owner"].ToString() || Essential.GetGame().GetClientManager().GetClientByHabbo(QuestionRow["owner"].ToString()).GetHabbo().Rank < 5) { PollRoom.GetPollManager().SetCurrentPoll(PollRoom.GetPollManager().CreateNewRoomPoll(QuestionRow, AnswersTable)); PollRoom.SendMessage(PollRoom.GetPollManager().GetCurrentPoll().PollToServerMessage(new ServerMessage(Outgoing.InfobusPoll3)), null); Thread Poll = new Thread(delegate() { PollRoom.GetPollManager().GetCurrentPoll().ShowResults(); }); Poll.Start(); } } goto IL_C70; } case 32: { uint UserId = uint.Parse(text2.Split(new char[] { ' ' })[0]); string BadgeCode = text2.Split(new char[] { ' ' })[1]; GameClient Session = Essential.GetGame().GetClientManager().GetClientByHabbo(Essential.GetGame().GetClientManager().GetNameById(UserId)); if (Session != null) { Session.GetHabbo().GetBadgeComponent().SendBadge(Session, BadgeCode, true); } else { using (DatabaseClient dbClient = Essential.GetDatabase().GetClient()) { DataRow dr = dbClient.ReadDataRow("SELECT username FROM users WHERE id=" + UserId + " LIMIT 1"); if (dr != null) { dbClient.AddParamWithValue("badge", BadgeCode); DataRow dr2 = dbClient.ReadDataRow("SELECT * FROM user_badges WHERE user_id=" + UserId + " AND badge_id=@badge LIMIT 1"); if (dr2 == null) { dbClient.AddParamWithValue("badge", BadgeCode); dbClient.ExecuteQuery(string.Concat(new object[] { "INSERT INTO user_badges (user_id,badge_id,badge_slot) VALUES ('", UserId, "',@badge,'0')" })); } } } } } goto IL_C70; case 33: using (DatabaseClient class5 = Essential.GetDatabase().GetClient()) { Essential.GetGame().GetRoleManager().Initialize(class5); } goto IL_C70; case 35: { using (DatabaseClient class2 = Essential.GetDatabase().GetClient()) { Essential.GetGame().GetCatalog().Initialize(class2); } Essential.GetGame().GetCatalog().InitializeCache(); goto IL_C70; } case 36: { uint sender = uint.Parse(text2.Split(new char[] { ' ' })[0]); uint reciever = uint.Parse(text2.Split(new char[] { ' ' })[1]); if (!this.FriendshipExists(reciever, sender)) { using (DatabaseClient @class = Essential.GetDatabase().GetClient()) { @class.AddParamWithValue("toid", reciever); @class.AddParamWithValue("userid", sender); @class.ExecuteQuery("INSERT INTO messenger_friendships (user_one_id,user_two_id) VALUES (@userid,@toid)"); @class.ExecuteQuery("INSERT INTO messenger_friendships (user_one_id,user_two_id) VALUES (@toid,@userid)"); } GameClient SenderClient = Essential.GetGame().GetClientManager().GetClient(sender); GameClient RecieverClient = Essential.GetGame().GetClientManager().GetClient(reciever); if (RecieverClient != null) { RecieverClient.GetHabbo().GetMessenger().method_14(sender); } if (SenderClient != null) { SenderClient.GetHabbo().GetMessenger().method_14(reciever); } } goto IL_C70; } case 50: { Essential.getWebSocketManager().Dispose(); Essential.InitWebsocketManager(); goto IL_C70; } case 51: { Room room = Essential.GetGame().GetRoomManager().GetRoom(uint.Parse(text2.Split(';')[0])); string Eventname = text2.Split(';')[1]; if (Eventname.Length > 1) { Eventname = AntiAd.Utf8ToUtf16(Eventname); string toSend = "5|" + Eventname + "|" + room.Owner + "|" + room.Id; Essential.getWebSocketManager().SendMessageToEveryConnection(toSend); using (DatabaseClient dbClient = Essential.GetDatabase().GetClient()) { dbClient.AddParamWithValue("param1", room.Id); dbClient.AddParamWithValue("param2", Eventname); dbClient.ExecuteQuery("INSERT INTO hp_aktivitaetenstream (`user_id`,`type`,`extra_data`,`extra_data2`,`timestamp`) VALUES ('" + room.OwnerId + "','makeevent',@param1,@param2,'" + Convert.ToInt32(Essential.GetUnixTimestamp()) + "');"); } } goto IL_C70; } default: goto IL_C70; } using (DatabaseClient class2 = Essential.GetDatabase().GetClient()) { Essential.GetGame().GetCatalog().Initialize(class2); } Essential.GetGame().GetCatalog().InitializeCache(); Essential.GetGame().GetClientManager().BroadcastMessage(new ServerMessage(Outgoing.UpdateShop)); // Updated goto IL_C70; IL_34E: num2 = uint.Parse(text2.Split(new char[] { ' ' })[0]); num3 = uint.Parse(text2.Split(new char[] { ' ' })[1]); GameClient class7 = Essential.GetGame().GetClientManager().GetClient(num2); class4 = Essential.GetGame().GetRoomManager().GetRoom(num3); if (class7 != null) { ServerMessage Message = new ServerMessage(Outgoing.RoomForward); Message.AppendBoolean(class4.IsPublic); Message.AppendUInt(class4.Id); class7.SendMessage(Message); goto IL_C70; } goto IL_C70; IL_5BF: uint_2 = uint.Parse(text2); using (DatabaseClient class2 = Essential.GetDatabase().GetClient()) { Essential.GetGame().GetClientManager().GetClient(uint_2).GetHabbo().method_0(class2); goto IL_C70; } IL_602: Essential.Close(); goto IL_C70; IL_633: client = Essential.GetGame().GetClientManager().GetClient(uint.Parse(text2)); if (client != null) { int int_3 = 0; using (DatabaseClient class2 = Essential.GetDatabase().GetClient()) { int_3 = (int)class2.ReadDataRow("SELECT credits FROM users WHERE id = '" + client.GetHabbo().Id + "' LIMIT 1")[0]; } client.GetHabbo().SetCredits(int_3, "MUS UPDATE", ""); client.GetHabbo().UpdateCredits(false); goto IL_C70; } goto IL_C70; IL_6F7: client = Essential.GetGame().GetClientManager().GetClient(uint.Parse(text2)); if (client != null) { int int_4 = 0; using (DatabaseClient class2 = Essential.GetDatabase().GetClient()) { int_4 = (int)class2.ReadDataRow("SELECT activity_points FROM users WHERE id = '" + client.GetHabbo().Id + "' LIMIT 1")[0]; } client.GetHabbo().ActivityPoints = int_4; client.GetHabbo().UpdateActivityPoints(false); goto IL_C70; } goto IL_C70; IL_839: Essential.GetGame().GetClientManager().GetClient(uint.Parse(text2)).Disconnect("MUS"); goto IL_C70; IL_880: string text6 = text2.Split(new char[] { ' ' })[0]; text5 = text2.Substring(text6.Length + 1); Essential.GetGame().GetClientManager().GetClient(uint.Parse(text6)).SendNotification(text5); } } IL_C70: try { ServerMessage Message9 = new ServerMessage(Outgoing.MusAnswer); Message9.AppendString("Essential 5"); Message9.AppendString("MUS Handler"); this.ClientSocket.Send(Message9.GetBytes()); } catch {} }
public void Handle(GameClient Session, ClientMessage Event) { Room room = Session.GetHabbo().CurrentRoom; RoomData roomData = room.RoomData; if ((room != null) && room.CheckRights(Session, true)) { int num = Event.PopWiredInt32(); string str = Essential.FilterString(Event.PopFixedString()); string str2 = Essential.FilterString(Event.PopFixedString()); int num2 = Event.PopWiredInt32(); string str3 = Essential.FilterString(Event.PopFixedString()); int num3 = Event.PopWiredInt32(); int id = Event.PopWiredInt32(); int num5 = Event.PopWiredInt32(); List <string> tags = new List <string>(); StringBuilder builder = new StringBuilder(); for (int i = 0; i < num5; i++) { if (i > 0) { builder.Append(","); } string item = Essential.FilterString(Event.PopFixedString().ToLower()); tags.Add(item); builder.Append(item); } int num7 = Event.PopWiredInt32(); bool k = Event.PopWiredBoolean(); bool flag2 = Event.PopWiredBoolean(); bool flag3 = Event.PopWiredBoolean(); bool flag4 = Event.PopWiredBoolean(); int num8 = Event.PopWiredInt32(); int num9 = Event.PopWiredInt32(); if ((num8 < -2) || (num8 > 1)) { num8 = 0; } if ((num9 < -2) || (num9 > 1)) { num9 = 0; } if (((str.Length >= 1) && ((num2 >= 0) && (num2 <= 2))) && ((num3 >= 10) && (num3 <= 500))) { FlatCat flatCat = Essential.GetGame().GetNavigator().GetFlatCat(id); if (flatCat != null) { if (flatCat.MinRank > Session.GetHabbo().Rank) { Session.SendNotification("Du hast nicht die dafür vorgegebene Rechte!"); id = 0; } room.AllowPet = k; room.AllowPetsEating = flag2; room.AllowWalkthrough = flag3; room.Hidewall = flag4; room.RoomData.AllowPet = k; room.RoomData.AllowPetsEating = flag2; room.RoomData.AllowWalkthrough = flag3; room.RoomData.Hidewall = flag4; room.Name = str; room.State = num2; room.Description = str2; room.Category = id; room.Password = str3; room.RoomData.Name = str; room.RoomData.State = num2; room.RoomData.Description = str2; room.RoomData.Category = id; room.RoomData.Password = str3; room.Tags.Clear(); room.Tags.AddRange(tags); room.UsersMax = num3; room.RoomData.Tags.Clear(); room.RoomData.Tags.AddRange(tags); room.RoomData.UsersMax = num3; room.Wallthick = num8; room.Floorthick = num9; room.RoomData.Wallthick = num8; room.RoomData.Floorthick = num9; string str5 = "open"; if (room.State == 1) { str5 = "locked"; } else if (room.State > 1) { str5 = "password"; } using (DatabaseClient adapter = Essential.GetDatabase().GetClient()) { adapter.AddParamWithValue("caption", room.Name); adapter.AddParamWithValue("description", room.Description); adapter.AddParamWithValue("password", room.Password); adapter.AddParamWithValue("tags", builder.ToString()); adapter.ExecuteQuery(string.Concat(new object[] { "UPDATE rooms SET caption = @caption, description = @description, password = @password, category = '", id, "', state = '", str5, "', tags = @tags, users_max = '", num3, "', allow_pets = '", (k ? 1 : 0), "', allow_pets_eat = '", (flag2 ? 1 : 0), "', allow_walkthrough = '", (flag3 ? 1 : 0), "', allow_hidewall = '", (room.Hidewall ? 1 : 0), "', floorthick = '", room.Floorthick, "', wallthick = '", room.Wallthick, "' WHERE id = ", room.Id })); } ServerMessage UpdateRoomOne = new ServerMessage(Outgoing.UpdateRoomOne); UpdateRoomOne.AppendInt32(room.Id); Session.SendMessage(UpdateRoomOne); ServerMessage WallAndFloor = new ServerMessage(Outgoing.ConfigureWallandFloor); WallAndFloor.AppendBoolean(room.Hidewall); WallAndFloor.AppendInt32(room.Wallthick); WallAndFloor.AppendInt32(room.Floorthick); Session.GetHabbo().CurrentRoom.SendMessage(WallAndFloor, null); RoomData data2 = room.RoomData; ServerMessage RoomDataa = new ServerMessage(Outgoing.RoomData); RoomDataa.AppendBoolean(false); RoomDataa.AppendInt32(room.Id); RoomDataa.AppendString(room.Name); RoomDataa.AppendBoolean(true); RoomDataa.AppendInt32(room.OwnerId); RoomDataa.AppendString(room.Owner); RoomDataa.AppendInt32(room.State); RoomDataa.AppendInt32(room.UsersNow); RoomDataa.AppendInt32(room.UsersMax); RoomDataa.AppendString(room.Description); RoomDataa.AppendInt32(0); RoomDataa.AppendInt32((room.Category == 0x34) ? 2 : 0); RoomDataa.AppendInt32(room.Score); RoomDataa.AppendInt32(0); RoomDataa.AppendInt32(room.Category); if (room.RoomData.GuildId == 0) { RoomDataa.AppendInt32(0); RoomDataa.AppendInt32(0); } else { GroupsManager guild = Groups.GetGroupById(room.RoomData.GuildId); RoomDataa.AppendInt32(guild.Id); RoomDataa.AppendString(guild.Name); RoomDataa.AppendString(guild.Badge); } RoomDataa.AppendString(""); RoomDataa.AppendInt32(room.Tags.Count); foreach (string str6 in room.Tags) { RoomDataa.AppendString(str6); } RoomDataa.AppendInt32(0); RoomDataa.AppendInt32(0); RoomDataa.AppendInt32(0); RoomDataa.AppendBoolean(true); RoomDataa.AppendBoolean(true); RoomDataa.AppendInt32(0); RoomDataa.AppendInt32(0); RoomDataa.AppendBoolean(false); RoomDataa.AppendBoolean(false); RoomDataa.AppendBoolean(false); RoomDataa.AppendInt32(0); RoomDataa.AppendInt32(0); RoomDataa.AppendInt32(0); RoomDataa.AppendBoolean(false); RoomDataa.AppendBoolean(true); Session.GetHabbo().CurrentRoom.SendMessage(RoomDataa, null); } } } }
public void Handle(GameClient Session, ClientMessage Event) { string text = Event.PopFixedString().ToUpper(); if (!(text == "M" || text == "F")) { return; } string text2 = Essential.FilterString(Event.PopFixedString()); if (AntiMutant.ValidateLook(text2, text)) { if (Session.GetHabbo().CurrentQuestId > 0 && Essential.GetGame().GetQuestManager().GetQuestAction(Session.GetHabbo().CurrentQuestId) == "CHANGE_FIGURE") { Essential.GetGame().GetQuestManager().ProgressUserQuest(Session.GetHabbo().CurrentQuestId, Session); } Session.GetHabbo().Figure = text2; Session.GetHabbo().Gender = text.ToLower(); using (DatabaseClient client = Essential.GetDatabase().GetClient()) { client.AddParamWithValue("look", text2); client.AddParamWithValue("gender", text); client.ExecuteQuery("UPDATE users SET look = @look, gender = @gender WHERE id = " + Session.GetHabbo().Id + " LIMIT 1;"); } Essential.GetGame().GetAchievementManager().addAchievement(Session, 1u, 1); ServerMessage serverMessage = new ServerMessage(Outgoing.UpdateUserInformation); serverMessage.AppendInt32(-1); serverMessage.AppendStringWithBreak(Session.GetHabbo().Figure); serverMessage.AppendStringWithBreak(Session.GetHabbo().Gender.ToLower()); serverMessage.AppendStringWithBreak(Session.GetHabbo().Motto); serverMessage.AppendInt32(Session.GetHabbo().AchievementScore); // serverMessage.AppendStringWithBreak(""); Session.SendMessage(serverMessage); if (Session.GetHabbo().InRoom) { Room currentRoom = Session.GetHabbo().CurrentRoom; if (currentRoom != null) { RoomUser roomUserByHabbo = currentRoom.GetRoomUserByHabbo(Session.GetHabbo().Id); if (roomUserByHabbo != null) { roomUserByHabbo.string_0 = ""; if (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) { ServerMessage serverMessage2 = new ServerMessage(Outgoing.FigureData); serverMessage2.AppendInt32(Session.GetHabbo().method_4()); Session.SendMessage(serverMessage2); return; } Session.GetHabbo().dateTime_0 = DateTime.Now; Session.GetHabbo().int_23++; } ServerMessage serverMessage3 = new ServerMessage(Outgoing.UpdateUserInformation); serverMessage3.AppendInt32(roomUserByHabbo.VirtualId); serverMessage3.AppendStringWithBreak(Session.GetHabbo().Figure); serverMessage3.AppendStringWithBreak(Session.GetHabbo().Gender.ToLower()); serverMessage3.AppendStringWithBreak(Session.GetHabbo().Motto); serverMessage3.AppendInt32(Session.GetHabbo().AchievementScore); // serverMessage3.AppendStringWithBreak(""); currentRoom.SendMessage(serverMessage3, null); } } } } }