public void parse(GameClient Session, ClientMessage Event) { Room class14_ = Session.GetHabbo().CurrentRoom; if (class14_ != null) { Event.PopWiredUInt(); string string_ = Event.PopFixedString(); RoomUser @class = class14_.GetRoomUserByHabbo(string_); if (@class != null && @class.GetClient().GetHabbo().Rank <= 2u) { uint uint_ = @class.GetClient().GetHabbo().Id; if (!Session.GetHabbo().MutedUsers.Contains(uint_)) { Session.GetHabbo().MutedUsers.Add(uint_); using (DatabaseClient class2 = PhoenixEnvironment.GetDatabase().GetClient()) { class2.ExecuteQuery(string.Concat(new object[] { "INSERT INTO user_ignores(user_id, ignore_id) VALUES (", Session.GetHabbo().Id, ", ", uint_, ");" })); } ServerMessage Message = new ServerMessage(419u); Message.AppendInt32(1); Session.SendMessage(Message); } } } }
public void parse(GameClient Session, ClientMessage Event) { int num = Event.PopWiredInt32(); ServerMessage Message = new ServerMessage(300); Message.AppendInt32(num); if (num > 0) { for (int i = 0; i < num; i++) { int num2 = Event.PopWiredInt32(); if (num2 > 0) { /*Soundtrack @class = GoldTree.GetGame().GetItemManager().method_4(num2); Message.AppendInt32(@class.Id); Message.AppendStringWithBreak(@class.Name); Message.AppendStringWithBreak(@class.Track); Message.AppendInt32(@class.Length); Message.AppendStringWithBreak(@class.Author);*/ Message.AppendInt32(SongManager.GetSong(num2).Id); Message.AppendStringWithBreak(SongManager.GetSong(num2).Name); Message.AppendStringWithBreak(SongManager.GetSong(num2).Track); Message.AppendInt32(SongManager.GetSong(num2).Length); Message.AppendStringWithBreak(SongManager.GetSong(num2).Author); } } } Session.SendMessage(Message); }
public void parse(GameClient Session, ClientMessage Event) { ServerMessage Message = new ServerMessage(308); Message.AppendInt32(Session.GetHabbo().Volume); Message.AppendBoolean(false); Session.SendMessage(Message); }
public override void OnTrigger(GameClient Session, RoomItem Item, int Request, bool UserHasRight) { if (UserHasRight && Session != null) { Item.method_10(); ServerMessage Message = new ServerMessage(651); Message.AppendInt32(0); Message.AppendInt32(5); if (Item.Extra1.Length > 0) { Message.AppendString(Item.Extra1); } else { Message.AppendInt32(0); } Message.AppendInt32(Item.GetBaseItem().SpriteId); Message.AppendUInt(Item.Id); Message.AppendStringWithBreak(""); Message.AppendInt32(0); Message.AppendInt32(0); Message.AppendInt32(0); Message.AppendInt32(0); Message.AppendInt32(0); Message.AppendStringWithBreak(""); Session.SendMessage(Message); } }
public void parse(GameClient Session, ClientMessage Event) { ServerMessage Message = new ServerMessage(611); Message.AppendBoolean(true); Message.AppendInt32(2); Session.SendMessage(Message); }
public void parse(GameClient Session, ClientMessage Event) { if (Session.GetHabbo() == null) { Session.Login(Event.PopFixedString()); if (Session.GetHabbo() != null && Session.GetHabbo().MutedUsers != null && Session.GetHabbo().MutedUsers.Count > 0) { using (DatabaseClient adapter = PhoenixEnvironment.GetDatabase().GetClient()) { try { ServerMessage Message = new ServerMessage(420); Message.AppendInt32(Session.GetHabbo().MutedUsers.Count); foreach (uint Id in Session.GetHabbo().MutedUsers) { string string_ = adapter.ReadString("SELECT username FROM users WHERE Id = " + Id + " LIMIT 1;"); Message.AppendStringWithBreak(string_); } Session.SendMessage(Message); } catch { Console.ForegroundColor = ConsoleColor.Red; Logging.WriteLine("Login error: User is ignoring a user that no longer exists"); Console.ForegroundColor = ConsoleColor.Gray; } } } } }
public void parse(GameClient Session, ClientMessage Event) { ServerMessage Message = new ServerMessage(443); Message.AppendInt32(Session.GetHabbo().AchievementScore); Message.AppendStringWithBreak(""); Session.SendMessage(Message); }
public void parse(GameClient Session, ClientMessage Event) { uint Id = Event.PopWiredUInt(); Event.PopFixedString(); Event.PopWiredInt32(); RoomData Data = PhoenixEnvironment.GetGame().GetRoomManager().GenerateRoomData(Id); if (Data != null) { if (Data.Type == "private") { ServerMessage Message = new ServerMessage(286); Message.AppendBoolean(Data.IsPublicRoom); Message.AppendUInt(Id); Session.SendMessage(Message); } else { ServerMessage Message2 = new ServerMessage(453); Message2.AppendUInt(Data.Id); Message2.AppendStringWithBreak(Data.CCTs); Message2.AppendUInt(Data.Id); Session.SendMessage(Message2); } } }
public Trade(uint mUserOneId, uint mUserTwoId, uint mRoomId) { this.oneId = mUserOneId; this.twoId = mUserTwoId; this.Users = new TradeUser[2]; this.Users[0] = new TradeUser(mUserOneId, mRoomId); this.Users[1] = new TradeUser(mUserTwoId, mRoomId); this.TradeStage = 1; this.RoomId = mRoomId; foreach (TradeUser User in Users) { if (!User.GetRoomUser().Statusses.ContainsKey("trd")) { User.GetRoomUser().AddStatus("trd", ""); User.GetRoomUser().UpdateNeeded = true; } } ServerMessage Message = new ServerMessage(104); Message.AppendUInt(mUserOneId); Message.AppendBoolean(true); Message.AppendUInt(mUserTwoId); Message.AppendBoolean(true); this.SendMessageToUsers(Message); }
public void Destroy() { this.Session = null; this.RequestHandlers = null; this.Request = null; this.Response = null; }
public void parse(GameClient Session, ClientMessage Event) { Room room = PhoenixEnvironment.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId); RoomUser roomUserByHabbo = room.GetRoomUserByHabbo(Session.GetHabbo().Id); roomUserByHabbo.Unidle(); int i = Event.PopWiredInt32(); if (i < 0 || i > 4 || (!Session.GetHabbo().GetSubscriptionManager().HasSubscription("habbo_club") && i > 1)) { i = 0; } if (i > 0 && roomUserByHabbo.CarryItemID > 0) { roomUserByHabbo.CarryItem(0); } roomUserByHabbo.DanceId = i; ServerMessage Message = new ServerMessage(480); Message.AppendInt32(roomUserByHabbo.VirtualId); Message.AppendInt32(i); room.SendMessage(Message, null); if (Session.GetHabbo().CurrentQuestId == 6) { PhoenixEnvironment.GetGame().GetQuestManager().ProgressUserQuest(6, Session); } }
public void parse(GameClient Session, ClientMessage Event) { if (Session != null && Session.GetHabbo() != null) { Room @class = PhoenixEnvironment.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId); if (@class != null) { RoomUser class2 = @class.GetRoomUserByHabbo(Event.PopWiredUInt()); if (class2 != null && !class2.IsBot && class2.GetClient() != null) { ServerMessage Message = new ServerMessage(228u); Message.AppendUInt(class2.GetClient().GetHabbo().Id); Message.AppendInt32(class2.GetClient().GetHabbo().GetBadgeComponent().EquippedCount); using (TimedLock.Lock(class2.GetClient().GetHabbo().GetBadgeComponent().BadgeList)) { foreach (Badge current in class2.GetClient().GetHabbo().GetBadgeComponent().BadgeList) { if (current.Slot > 0) { Message.AppendInt32(current.Slot); Message.AppendStringWithBreak(current.Code); } } } Session.SendMessage(Message); } } } }
public void parse(GameClient Session, ClientMessage Event) { string text = Event.PopFixedString(); ServerMessage Message = new ServerMessage(7u); Message.AppendStringWithBreak(text.ToLower()); if (Session.GetHabbo().GetSubscriptionManager().HasSubscription("habbo_vip")) { double num = (double)Session.GetHabbo().GetSubscriptionManager().GetSubscription("habbo_vip").ExpireTime; double num2 = num - PhoenixEnvironment.GetUnixTimestamp(); int num3 = (int)Math.Ceiling(num2 / 86400.0); int num4 = num3 / 31; if (num4 >= 1) { num4--; } Message.AppendInt32(num3 - num4 * 31); Message.AppendBoolean(true); Message.AppendInt32(num4); Message.AppendBoolean(true); Message.AppendBoolean(true); Message.AppendBoolean(Session.GetHabbo().Vip); Message.AppendInt32(0); Message.AppendInt32(0); } else { if (Session.GetHabbo().GetSubscriptionManager().HasSubscription(text)) { double num = (double)Session.GetHabbo().GetSubscriptionManager().GetSubscription(text).ExpireTime; double num2 = num - PhoenixEnvironment.GetUnixTimestamp(); int num3 = (int)Math.Ceiling(num2 / 86400.0); int num4 = num3 / 31; if (num4 >= 1) { num4--; } Message.AppendInt32(num3 - num4 * 31); Message.AppendBoolean(true); Message.AppendInt32(num4); if (Session.GetHabbo().Rank >= 2u) { Message.AppendInt32(1); Message.AppendInt32(1); Message.AppendInt32(2); } else { Message.AppendInt32(1); } } else { for (int i = 0; i < 3; i++) { Message.AppendInt32(0); } } } Session.SendMessage(Message); }
public override void OnTrigger(GameClient Session, RoomItem Item, int Request, bool UserHasRight) { if (UserHasRight) { ServerMessage Message = new ServerMessage(650); Message.AppendInt32(0); Message.AppendInt32(5); Message.AppendInt32(0); Message.AppendInt32(Item.GetBaseItem().SpriteId); Message.AppendUInt(Item.Id); Message.AppendStringWithBreak(""); Message.AppendString("I"); if (Item.Extra2.Length > 0) { Message.AppendString(Item.Extra2); } else { Message.AppendString("RB"); } Message.AppendStringWithBreak("HRAH"); Session.SendMessage(Message); Item.ReqUpdate(1); } }
public void parse(GameClient Session, ClientMessage Event) { try { Room @class = PhoenixEnvironment.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId); if (@class != null && @class.CheckRights(Session, true) && @class.MoodlightData != null) { ServerMessage Message = new ServerMessage(365u); Message.AppendInt32(@class.MoodlightData.Presets.Count); Message.AppendInt32(@class.MoodlightData.CurrentPreset); int num = 0; foreach (MoodlightPreset current in @class.MoodlightData.Presets) { num++; Message.AppendInt32(num); Message.AppendInt32(int.Parse(PhoenixEnvironment.BoolToEnum(current.BackgroundOnly)) + 1); Message.AppendStringWithBreak(current.ColorCode); Message.AppendInt32(current.ColorIntensity); } Session.SendMessage(Message); } } catch { } }
public void parse(GameClient Session, ClientMessage Event) { Room @class = PhoenixEnvironment.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId); if (@class != null && @class.CheckRights(Session, true)) { ServerMessage Message = new ServerMessage(465u); Message.AppendUInt(@class.RoomId); Message.AppendStringWithBreak(@class.Name); Message.AppendStringWithBreak(@class.Description); Message.AppendInt32(@class.State); Message.AppendInt32(@class.Category); Message.AppendInt32(@class.UsersMax); Message.AppendInt32(100); Message.AppendInt32(@class.Tags.Count); foreach (string current in @class.Tags) { Message.AppendStringWithBreak(current); } Message.AppendInt32(@class.UsersWithRights.Count); foreach (uint current2 in @class.UsersWithRights) { Message.AppendUInt(current2); Message.AppendStringWithBreak(PhoenixEnvironment.GetGame().GetClientManager().GetNameById(current2)); } Message.AppendInt32(@class.UsersWithRights.Count); Message.AppendBoolean(@class.AllowPet); Message.AppendBoolean(@class.AllowPetsEating); Message.AppendBoolean(@class.AllowWalkthrough); Message.AppendBoolean(@class.Hidewall); Message.AppendInt32(@class.Wallthick); Message.AppendInt32(@class.Floorthick); Session.SendMessage(Message); } }
public void parse(GameClient Session, ClientMessage Event) { DataTable dataTable_ = Session.GetHabbo().GroupMemberships; if (dataTable_ != null) { ServerMessage Message = new ServerMessage(915u); Message.AppendInt32(dataTable_.Rows.Count); foreach (DataRow dataRow in dataTable_.Rows) { Group @class = GroupManager.GetGroup((int)dataRow["groupid"]); Message.AppendInt32(@class.Id); Message.AppendStringWithBreak(@class.Name); Message.AppendStringWithBreak(@class.Badge); if (Session.GetHabbo().GroupID == @class.Id) // is favorite group? { Message.AppendBoolean(true); } else { Message.AppendBoolean(false); } } Session.SendMessage(Message); } }
public void parse(GameClient Session, ClientMessage Event) { uint num = Event.PopWiredUInt(); string text = PhoenixEnvironment.FilterInjectionChars(Event.PopFixedString()); if (Session.GetHabbo().GetMessenger() != null) { if (num == 0 && Session.GetHabbo().HasRole("cmd_sa")) { ServerMessage Message = new ServerMessage(134); Message.AppendUInt(0); Message.AppendString(Session.GetHabbo().Username + ": " + text); PhoenixEnvironment.GetGame().GetClientManager().SendStaffChat(Session, Message); } else { if (num == 0) { ServerMessage Message2 = new ServerMessage(261); Message2.AppendInt32(4); Message2.AppendUInt(0); Session.SendMessage(Message2); } else { Session.GetHabbo().GetMessenger().method_18(num, text); } } } }
public void parse(GameClient Session, ClientMessage Event) { Room class14_ = Session.GetHabbo().CurrentRoom; if (class14_ != null) { Event.PopWiredUInt(); string string_ = Event.PopFixedString(); RoomUser @class = class14_.GetRoomUserByHabbo(string_); if (@class != null) { uint uint_ = @class.GetClient().GetHabbo().Id; if (Session.GetHabbo().MutedUsers.Contains(uint_)) { Session.GetHabbo().MutedUsers.Remove(uint_); using (DatabaseClient class2 = PhoenixEnvironment.GetDatabase().GetClient()) { class2.ExecuteQuery(string.Concat(new object[] { "DELETE FROM user_ignores WHERE user_id = ", Session.GetHabbo().Id, " AND ignore_id = ", uint_, " LIMIT 1;" })); } ServerMessage Message = new ServerMessage(419u); Message.AppendInt32(3); Session.SendMessage(Message); } } } }
public void parse(GameClient Session, ClientMessage Event) { uint num = Event.PopWiredUInt(); Room room = PhoenixEnvironment.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId); RoomUser roomUserByHabbo = room.GetRoomUserByHabbo(num); if (room != null && room.CheckRights(Session, true) && roomUserByHabbo != null && !roomUserByHabbo.IsBot && !room.UsersWithRights.Contains(num)) { room.UsersWithRights.Add(num); using (DatabaseClient adapter = PhoenixEnvironment.GetDatabase().GetClient()) { adapter.ExecuteQuery(string.Concat(new object[] { "INSERT INTO room_rights (room_id,user_id) VALUES ('", room.RoomId, "','", num, "')" })); } ServerMessage Message = new ServerMessage(510); Message.AppendUInt(room.RoomId); Message.AppendUInt(num); Message.AppendStringWithBreak(roomUserByHabbo.GetClient().GetHabbo().Username); Session.SendMessage(Message); roomUserByHabbo.AddStatus("flatctrl", ""); roomUserByHabbo.UpdateNeeded = true; roomUserByHabbo.GetClient().SendMessage(new ServerMessage(42)); } }
public void parse(GameClient Session, ClientMessage Event) { if (Session.GetHabbo().LoadingRoom > 0u) { ServerMessage Message = new ServerMessage(297u); Message.AppendInt32(0); Session.SendMessage(Message); } }
public void parse(GameClient Session, ClientMessage Event) { if (PhoenixEnvironment.GetGame().GetModerationTool().UsersHasPendingTicket(Session.GetHabbo().Id)) { PhoenixEnvironment.GetGame().GetModerationTool().DeletePendingTicketForUser(Session.GetHabbo().Id); ServerMessage Message = new ServerMessage(320); Session.SendMessage(Message); } }
public void parse(GameClient Session, ClientMessage Event) { try { Room @class = PhoenixEnvironment.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId); if (@class != null) { if (@class.method_72("stickiepole") > 0 || @class.CheckRights(Session)) { uint uint_ = Event.PopWiredUInt(); string text = Event.PopFixedString(); string[] array = text.Split(new char[] { ' ' }); if (array[0].Contains("-")) { array[0] = array[0].Replace("-", ""); } UserItem class2 = Session.GetHabbo().GetInventoryComponent().GetItem(uint_); if (class2 != null) { if (array[0].StartsWith(":")) { string text2 = @class.method_98(text); if (text2 == null) { ServerMessage Message = new ServerMessage(516u); Message.AppendInt32(11); Session.SendMessage(Message); return; } RoomItem RoomItem_ = new RoomItem(class2.Id, @class.RoomId, class2.BaseItem, class2.ExtraData, 0, 0, 0.0, 0, text2, @class); if (@class.method_82(Session, RoomItem_, true, null)) { Session.GetHabbo().GetInventoryComponent().RemoveItem(uint_, 1u, false); } } using (DatabaseClient class3 = PhoenixEnvironment.GetDatabase().GetClient()) { class3.ExecuteQuery(string.Concat(new object[] { "UPDATE items SET room_id = '", @class.RoomId, "' WHERE Id = '", class2.Id, "' LIMIT 1" })); } } } } } catch { } }
public void parse(GameClient Session, ClientMessage Event) { Room Room = PhoenixEnvironment.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId); if (Room != null && Room.CheckRights(Session, true)) { Event.PopWiredInt32(); Dictionary<int, int> Items = new Dictionary<int, int>(); int BackgroundImage = Event.PopWiredInt32(); int ForegroundImage = Event.PopWiredInt32(); int num3 = Event.PopWiredInt32(); for (int i = 0; i < num3; i++) { int num4 = Event.PopWiredInt32(); int num5 = Event.PopWiredInt32(); if (num4 < 0 || num4 > 10 || (num5 < 1 || num5 > 27) || Items.ContainsKey(num4)) { return; } Items.Add(num4, num5); } if (BackgroundImage >= 1 && BackgroundImage <= 24 && (ForegroundImage >= 0 && ForegroundImage <= 11)) { StringBuilder stringBuilder = new StringBuilder(); int num6 = 0; foreach (KeyValuePair<int, int> Item in Items) { if (num6 > 0) { stringBuilder.Append("|"); } stringBuilder.Append(Item.Key + "," + Item.Value); num6++; } using (DatabaseClient adapter = PhoenixEnvironment.GetDatabase().GetClient()) { adapter.ExecuteQuery("UPDATE rooms SET icon_bg = '" + BackgroundImage + "', icon_fg = '" + ForegroundImage + "', icon_items = '" + stringBuilder.ToString() + "' WHERE Id = '" + Room.RoomId + "' LIMIT 1"); } Room.myIcon = new RoomIcon(BackgroundImage, ForegroundImage, Items); ServerMessage Message = new ServerMessage(457); Message.AppendUInt(Room.RoomId); Message.AppendBoolean(true); Session.SendMessage(Message); ServerMessage Message2 = new ServerMessage(456); Message2.AppendUInt(Room.RoomId); Session.SendMessage(Message2); RoomData Data = Room.RoomData; ServerMessage Message3 = new ServerMessage(454); Message3.AppendBoolean(false); Data.Serialize(Message3, false, false); Session.SendMessage(Message3); } } }
public void GiveBadge(GameClient Session, string Badge, Boolean InDatabase) { this.GiveBadge(Badge, 0, InDatabase); ServerMessage Message = new ServerMessage(832); Message.AppendInt32(1); Message.AppendInt32(4); Message.AppendInt32(1); Message.AppendUInt(PhoenixEnvironment.GetGame().GetAchievementManager().BadgeID(Badge)); Session.SendMessage(Message); }
public void parse(GameClient Session, ClientMessage Event) { Session.GetHabbo().GetBadgeComponent().ResetSlots(); using (DatabaseClient adapter = PhoenixEnvironment.GetDatabase().GetClient()) { adapter.ExecuteQuery("UPDATE user_badges SET badge_slot = '0' WHERE user_id = '" + Session.GetHabbo().Id + "'"); goto IL_131; } IL_52: int num = Event.PopWiredInt32(); string text = Event.PopFixedString(); if (text.Length != 0) { if (!Session.GetHabbo().GetBadgeComponent().HasBadge(text) || num < 1 || num > 5) { return; } if (Session.GetHabbo().CurrentQuestId == 16u) { PhoenixEnvironment.GetGame().GetQuestManager().ProgressUserQuest(16u, Session); } Session.GetHabbo().GetBadgeComponent().GetBadge(text).Slot = num; using (DatabaseClient @class = PhoenixEnvironment.GetDatabase().GetClient()) { @class.AddParamWithValue("slotid", num); @class.AddParamWithValue("badge", text); @class.AddParamWithValue("userid", Session.GetHabbo().Id); @class.ExecuteQuery("UPDATE user_badges SET badge_slot = @slotid WHERE badge_id = @badge AND user_id = @userid LIMIT 1"); } } IL_131: if (Event.RemainingLength > 0) { goto IL_52; } ServerMessage Message = new ServerMessage(228u); Message.AppendUInt(Session.GetHabbo().Id); Message.AppendInt32(Session.GetHabbo().GetBadgeComponent().EquippedCount); foreach (Badge current in Session.GetHabbo().GetBadgeComponent().BadgeList) { if (current.Slot > 0) { Message.AppendInt32(current.Slot); Message.AppendStringWithBreak(current.Code); } } if (Session.GetHabbo().InRoom && PhoenixEnvironment.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId) != null) { PhoenixEnvironment.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId).SendMessage(Message, null); } else { Session.SendMessage(Message); } }
public void Serialize(ServerMessage Message) { Message.AppendInt32(BackgroundImage); Message.AppendInt32(ForegroundImage); Message.AppendInt32(Items.Count); foreach (KeyValuePair<int, int> Item in Items) { Message.AppendInt32(Item.Key); Message.AppendInt32(Item.Value); } }
public void parse(GameClient Session, ClientMessage Event) { Room Room = PhoenixEnvironment.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId); if (Room != null && Room.CheckRights(Session, true) && Room.Event != null) { Room.Event = null; ServerMessage Message = new ServerMessage(370); Message.AppendStringWithBreak("-1"); Room.SendMessage(Message, null); } }
public static ServerMessage SerializeSongInventory(Hashtable songs) { ServerMessage message = new ServerMessage(258); message.AppendInt32(songs.Count); foreach (UserItem item in songs.Values) { int i = Convert.ToInt32(item.ExtraData); message.AppendInt32((int)item.Id); message.AppendInt32(i); } return message; }
public void AddEffect(int EffectId, int Duration) { using (DatabaseClient adapter = PhoenixEnvironment.GetDatabase().GetClient()) { adapter.ExecuteQuery("INSERT INTO user_effects (user_id,effect_id,total_duration,is_activated,activated_stamp) VALUES ('" + UserId + "','" + EffectId + "','" + Duration + "','0','0')"); } this.Effects.Add(new AvatarEffect(EffectId, Duration, false, 0.0)); ServerMessage Message = new ServerMessage(461); Message.AppendInt32(EffectId); Message.AppendInt32(Duration); this.GetClient().SendMessage(Message); }
public void LoadRoomForUser() { Room room = PhoenixEnvironment.GetGame().GetRoomManager().GetRoom(this.Session.GetHabbo().LoadingRoom); if (room != null && this.Session.GetHabbo().LoadingChecksPassed) { ServerMessage Message = new ServerMessage(69); Message.AppendStringWithBreak(room.ModelName); Message.AppendUInt(room.RoomId); this.Session.SendMessage(Message); if (this.Session.GetHabbo().SpectatorMode) { ServerMessage Message2 = new ServerMessage(254); this.Session.SendMessage(Message2); } if (room.Type == "private") { if (room.Wallpaper != "0.0") { ServerMessage Message3 = new ServerMessage(46); Message3.AppendStringWithBreak("wallpaper"); Message3.AppendStringWithBreak(room.Wallpaper); this.Session.SendMessage(Message3); } if (room.Floor != "0.0") { ServerMessage Logging = new ServerMessage(46); Logging.AppendStringWithBreak("floor"); Logging.AppendStringWithBreak(room.Floor); this.Session.SendMessage(Logging); } ServerMessage Message5 = new ServerMessage(46); Message5.AppendStringWithBreak("landscape"); Message5.AppendStringWithBreak(room.Landscape); this.Session.SendMessage(Message5); if (room.CheckRights(this.Session, true)) { ServerMessage Message6 = new ServerMessage(42); this.Session.SendMessage(Message6); ServerMessage Message7 = new ServerMessage(47); this.Session.SendMessage(Message7); } else { if (room.CheckRights(this.Session)) { ServerMessage Message6 = new ServerMessage(42); this.Session.SendMessage(Message6); } } ServerMessage Message8 = new ServerMessage(345); if (this.Session.GetHabbo().RatedRooms.Contains(room.RoomId) || room.CheckRights(this.Session, true)) { Message8.AppendInt32(room.Score); } else { Message8.AppendInt32(-1); } this.Session.SendMessage(Message8); if (room.HasOngoingEvent) { this.Session.SendMessage(room.Event.Serialize(this.Session)); } else { ServerMessage Message9 = new ServerMessage(370); Message9.AppendStringWithBreak("-1"); this.Session.SendMessage(Message9); } } this.GetAdvertisement(); } }
public GameClientMessageHandler(GameClient Session) { this.Session = Session; this.RequestHandlers = new RequestHandler[HIGHEST_MESSAGE_ID]; this.Response = new ServerMessage(0); }
public void PrepareRoomForUser(uint Id, string Password) { this.ClearRoomLoading(); if (PhoenixEnvironment.GetGame().GetRoomManager().GenerateRoomData(Id) != null) { if (this.Session.GetHabbo().InRoom) { Room room = PhoenixEnvironment.GetGame().GetRoomManager().GetRoom(this.Session.GetHabbo().CurrentRoomId); if (room != null) { room.RemoveUserFromRoom(this.Session, false, false); } } Room room2 = PhoenixEnvironment.GetGame().GetRoomManager().LoadRoom(Id); if (room2 != null) { this.Session.GetHabbo().LoadingRoom = Id; if (room2.UserIsBanned(this.Session.GetHabbo().Id)) { if (!room2.HasBanExpired(this.Session.GetHabbo().Id)) { ServerMessage Message = new ServerMessage(224); Message.AppendInt32(4); this.Session.SendMessage(Message); ServerMessage Message2 = new ServerMessage(18); this.Session.SendMessage(Message2); return; } room2.RemoveBan(this.Session.GetHabbo().Id); } if (room2.UsersNow >= room2.UsersMax && !PhoenixEnvironment.GetGame().GetRoleManager().RankHasRight(this.Session.GetHabbo().Rank, "acc_enter_fullrooms") && !this.Session.GetHabbo().Vip) { ServerMessage Message = new ServerMessage(224); Message.AppendInt32(1); this.Session.SendMessage(Message); ServerMessage Message2 = new ServerMessage(18u); this.Session.SendMessage(Message2); } else { if (room2.Type == "public") { if ((room2.State > 0) && !this.Session.GetHabbo().HasRole("acc_restrictedrooms")) { this.Session.SendNotif("This public room is accessible to Phoenix staff only."); ServerMessage Message2 = new ServerMessage(18); this.Session.SendMessage(Message2); return; } ServerMessage Message3 = new ServerMessage(166); Message3.AppendStringWithBreak("/client/public/" + room2.ModelName + "/0"); this.Session.SendMessage(Message3); } else if (room2.Type == "private") { ServerMessage Logging = new ServerMessage(19); this.Session.SendMessage(Logging); if (this.Session.GetHabbo().IsTeleporting&& (room2.GetItem(this.Session.GetHabbo().TeleporterId) == null)) { this.Session.GetHabbo().IsTeleporting = false; this.Session.GetHabbo().TeleporterId = 0; ServerMessage Message5 = new ServerMessage(131); this.Session.SendMessage(Message5); return; } if (!this.Session.GetHabbo().HasRole("acc_enter_anyroom") && !room2.CheckRights(this.Session, true) && !this.Session.GetHabbo().IsTeleporting) { if (room2.State == 1) { if (room2.UserCount == 0) { ServerMessage Message5 = new ServerMessage(131); this.Session.SendMessage(Message5); return; } ServerMessage Message6 = new ServerMessage(91); Message6.AppendStringWithBreak(""); this.Session.SendMessage(Message6); this.Session.GetHabbo().Waitingfordoorbell = true; ServerMessage Message7 = new ServerMessage(91); Message7.AppendStringWithBreak(this.Session.GetHabbo().Username); room2.method_61(Message7); return; } if (room2.State == 2 && Password.ToLower() != room2.Password.ToLower()) { ServerMessage Message8 = new ServerMessage(33); Message8.AppendInt32(-100002); this.Session.SendMessage(Message8); ServerMessage Message2 = new ServerMessage(18); this.Session.SendMessage(Message2); return; } } ServerMessage Message3 = new ServerMessage(166); Message3.AppendStringWithBreak("/client/private/" + room2.RoomId + "/Id"); this.Session.SendMessage(Message3); } this.Session.GetHabbo().LoadingChecksPassed = true; this.LoadRoomForUser(); } } } }