public void Handle(GameClient Session, ClientMessage Event)
 {
     Room @class = GoldTree.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId);
     if (@class != null && @class.CheckRights(Session, true))
     {
         ServerMessage Message = new ServerMessage(465u);
         Message.AppendUInt(@class.Id);
         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(GoldTree.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 Handle(GameClient Session, ClientMessage Event)
 {
     uint num = Event.PopWiredUInt();
     Room room = GoldTree.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId);
     if (room != null)
     {
         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 client = GoldTree.GetDatabase().GetClient())
             {
                 client.ExecuteQuery(string.Concat(new object[]
                 {
                     "INSERT INTO room_rights (room_id,user_id) VALUES (",
                     room.Id,
                     ",",
                     num,
                     ")"
                 }));
             }
             ServerMessage serverMessage = new ServerMessage(510u);
             serverMessage.AppendUInt(room.Id);
             serverMessage.AppendUInt(num);
             serverMessage.AppendStringWithBreak(roomUserByHabbo.GetClient().GetHabbo().Username);
             Session.SendMessage(serverMessage);
             roomUserByHabbo.AddStatus("flatctrl", "");
             roomUserByHabbo.UpdateNeeded = true;
             roomUserByHabbo.GetClient().SendMessage(new ServerMessage(42u));
         }
     }
 }
 public void Handle(GameClient Session, ClientMessage Event)
 {
     uint num = Event.PopWiredUInt();
     Event.PopFixedString();
     Event.PopWiredInt32();
     RoomData @class = GoldTree.GetGame().GetRoomManager().method_12(num);
     if (@class != null)
     {
         if (@class.Type == "private")
         {
             ServerMessage Message = new ServerMessage(286u);
             Message.AppendBoolean(@class.IsPublicRoom);
             Message.AppendUInt(num);
             Session.SendMessage(Message);
         }
         else
         {
             ServerMessage Message2 = new ServerMessage(453u);
             Message2.AppendUInt(@class.Id);
             Message2.AppendStringWithBreak(@class.CCTs);
             Message2.AppendUInt(@class.Id);
             Session.SendMessage(Message2);
         }
     }
 }
Пример #4
0
 public override void OnTrigger(GameClient Session, RoomItem RoomItem_0, int int_0, bool bool_0)
 {
     if (bool_0)
     {
         ServerMessage Message = new ServerMessage(651u);
         Message.AppendInt32(0);
         Message.AppendInt32(5);
         Message.AppendInt32(1);
         Message.AppendUInt(RoomItem_0.uint_0);
         Message.AppendInt32(RoomItem_0.GetBaseItem().Sprite);
         Message.AppendUInt(RoomItem_0.uint_0);
         Session.SendMessage(Message);
     }
 }
 public void Handle(GameClient Session, ClientMessage Event)
 {
     ServerMessage Message = new ServerMessage(506u);
     Message.AppendInt32(5);
     for (uint num = 5u; num >= 1u; num -= 1u)
     {
         Message.AppendUInt(num);
         if (num <= 1u)
         {
             Message.AppendInt32(0);
         }
         else
         {
             if (num == 2u)
             {
                 Message.AppendInt32(4);
             }
             else
             {
                 if (num == 3u)
                 {
                     Message.AppendInt32(40);
                 }
                 else
                 {
                     if (num == 4u)
                     {
                         Message.AppendInt32(200);
                     }
                     else
                     {
                         if (num >= 5u)
                         {
                             Message.AppendInt32(2000);
                         }
                     }
                 }
             }
         }
         List<EcotronReward> list = GoldTree.GetGame().GetCatalog().method_16(num);
         Message.AppendInt32(list.Count);
         foreach (EcotronReward current in list)
         {
             Message.AppendStringWithBreak(current.method_0().Type.ToString().ToLower());
             Message.AppendUInt(current.uint_1);
         }
     }
     Session.SendMessage(Message);
 }
 public void Handle(GameClient Session, ClientMessage Event)
 {
     if (Session != null && Session.GetHabbo() != null)
     {
         Room @class = GoldTree.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().method_22().Int32_1);
                 using (TimedLock.Lock(class2.GetClient().GetHabbo().method_22().List_0))
                 {
                     foreach (Badge current in class2.GetClient().GetHabbo().method_22().List_0)
                     {
                         if (current.Slot > 0)
                         {
                             Message.AppendInt32(current.Slot);
                             Message.AppendStringWithBreak(current.Code);
                         }
                     }
                 }
                 Session.SendMessage(Message);
             }
         }
     }
 }
 public void Handle(GameClient Session, ClientMessage Event)
 {
     uint num = Event.PopWiredUInt();
     string text = GoldTree.FilterString(Event.PopFixedString());
     if (Session != null && Session.GetHabbo() != null && Session.GetHabbo().GetMessenger() != null)
     {
         if (num == 0u && Session.GetHabbo().HasFuse("cmd_sa"))
         {
             ServerMessage Message = new ServerMessage(134u);
             Message.AppendUInt(0u);
             Message.AppendString(Session.GetHabbo().Username + ": " + text);
             GoldTree.GetGame().GetClientManager().method_17(Session, Message);
         }
         else
         {
             if (num == 0u)
             {
                 ServerMessage Message2 = new ServerMessage(261u);
                 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)
 {
     uint num = Event.PopWiredUInt();
     RoomData @class = GoldTree.GetGame().GetRoomManager().method_12(num);
     if (@class == null || Session.GetHabbo().list_1.Count >= 30 || Session.GetHabbo().list_1.Contains(num) || @class.Type == "public")
     {
         ServerMessage Message = new ServerMessage(33u);
         Message.AppendInt32(-9001);
         Session.SendMessage(Message);
     }
     else
     {
         ServerMessage Message2 = new ServerMessage(459u);
         Message2.AppendUInt(num);
         Message2.AppendBoolean(true);
         Session.SendMessage(Message2);
         Session.GetHabbo().list_1.Add(num);
         using (DatabaseClient class2 = GoldTree.GetDatabase().GetClient())
         {
             class2.ExecuteQuery(string.Concat(new object[]
             {
                 "INSERT INTO user_favorites (user_id,room_id) VALUES ('",
                 Session.GetHabbo().Id,
                 "','",
                 num,
                 "')"
             }));
         }
     }
 }
 public override void OnTrigger(GameClient Session, RoomItem Item, int Request, bool UserHasRights)
 {
     if (UserHasRights && Session != null)
     {
         Item.method_9();
         ServerMessage Message = new ServerMessage(652u);
         Message.AppendInt32(0);
         Message.AppendInt32(5);
         if (Item.string_5.Length > 0)
         {
             Message.AppendString(Item.string_5);
         }
         else
         {
             Message.AppendInt32(0);
         }
         Message.AppendInt32(Item.GetBaseItem().Sprite);
         Message.AppendUInt(Item.uint_0);
         Message.AppendStringWithBreak("");
         Message.AppendString("J");
         if (Item.string_3.Length > 0)
         {
             Message.AppendString(Item.string_3);
         }
         else
         {
             Message.AppendString("HHH");
         }
         Session.SendMessage(Message);
     }
 }
 public override void OnTrigger(GameClient Session, RoomItem RoomItem_0, int int_0, bool bool_0)
 {
     if (bool_0)
     {
         ServerMessage Message = new ServerMessage(650u);
         Message.AppendInt32(0);
         Message.AppendInt32(5);
         Message.AppendInt32(0);
         Message.AppendInt32(RoomItem_0.GetBaseItem().Sprite);
         Message.AppendUInt(RoomItem_0.uint_0);
         Message.AppendStringWithBreak("");
         Message.AppendString("I");
         if (RoomItem_0.string_3.Length > 0)
         {
             Message.AppendString(RoomItem_0.string_3);
         }
         else
         {
             Message.AppendString("RB");
         }
         Message.AppendStringWithBreak("HRAH");
         Session.SendMessage(Message);
         RoomItem_0.ReqUpdate(1);
     }
 }
 public void Handle(GameClient Session, ClientMessage Event)
 {
     Room @class = GoldTree.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId);
     if (@class != null && Session.GetHabbo().int_21 > 0)
     {
         RoomUser class2 = @class.GetRoomUserByHabbo(Event.PopWiredUInt());
         if (class2 != null && class2.GetClient().GetHabbo().Id != Session.GetHabbo().Id && !class2.IsBot)
         {
             Session.GetHabbo().int_21--;
             Session.GetHabbo().RespectGiven++;
             class2.GetClient().GetHabbo().Respect++;
             using (DatabaseClient class3 = GoldTree.GetDatabase().GetClient())
             {
                 class3.ExecuteQuery("UPDATE user_stats SET Respect = respect + 1 WHERE Id = '" + class2.GetClient().GetHabbo().Id + "' LIMIT 1");
                 class3.ExecuteQuery("UPDATE user_stats SET RespectGiven = RespectGiven + 1 WHERE Id = '" + Session.GetHabbo().Id + "' LIMIT 1");
                 class3.ExecuteQuery("UPDATE user_stats SET dailyrespectpoints = dailyrespectpoints - 1 WHERE Id = '" + Session.GetHabbo().Id + "' LIMIT 1");
             }
             ServerMessage Message = new ServerMessage(440u);
             Message.AppendUInt(class2.GetClient().GetHabbo().Id);
             Message.AppendInt32(class2.GetClient().GetHabbo().Respect);
             @class.SendMessage(Message, null);
             Session.GetHabbo().CheckRespectGivedAchievements();
             class2.GetClient().GetHabbo().CheckRespectReceivedAchievements();
             if (Session.GetHabbo().CurrentQuestId == 5u)
             {
                 GoldTree.GetGame().GetQuestManager().ProgressUserQuest(5u, Session);
             }
         }
     }
 }
Пример #12
0
 public ServerMessage method_10(string string_0)
 {
     DataTable dataTable = null;
     using (DatabaseClient @class = GoldTree.GetDatabase().GetClient())
     {
         @class.AddParamWithValue("query", string_0);
         dataTable = @class.ReadDataTable("SELECT Id,title FROM help_topics WHERE title LIKE @query OR body LIKE @query LIMIT 25");
     }
     ServerMessage Message = new ServerMessage(521u);
     ServerMessage result;
     if (dataTable == null)
     {
         Message.AppendBoolean(false);
         result = Message;
     }
     else
     {
         Message.AppendInt32(dataTable.Rows.Count);
         foreach (DataRow dataRow in dataTable.Rows)
         {
             Message.AppendUInt((uint)dataRow["Id"]);
             Message.AppendStringWithBreak((string)dataRow["title"]);
         }
         result = Message;
     }
     return result;
 }
 public void Handle(GameClient Session, ClientMessage Event)
 {
     Session.GetHabbo().method_22().method_5();
     using (DatabaseClient @class = GoldTree.GetDatabase().GetClient())
     {
         @class.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().method_22().method_1(text) || num < 1 || num > 5)
         {
             return;
         }
         if (Session.GetHabbo().CurrentQuestId == 16u)
         {
             GoldTree.GetGame().GetQuestManager().ProgressUserQuest(16u, Session);
         }
         Session.GetHabbo().method_22().method_0(text).Slot = num;
         using (DatabaseClient @class = GoldTree.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().method_22().Int32_1);
     foreach (Badge current in Session.GetHabbo().method_22().List_0)
     {
         if (current.Slot > 0)
         {
             Message.AppendInt32(current.Slot);
             Message.AppendStringWithBreak(current.Code);
         }
     }
     if (Session.GetHabbo().InRoom && GoldTree.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId) != null)
     {
         GoldTree.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId).SendMessage(Message, null);
     }
     else
     {
         Session.SendMessage(Message);
     }
 }
 public void Handle(GameClient Session, ClientMessage Event)
 {
     Room @class = GoldTree.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId);
     if (@class != null && @class.CheckRights(Session, true))
     {
         StringBuilder stringBuilder = new StringBuilder();
         int num = Event.PopWiredInt32();
         for (int i = 0; i < num; i++)
         {
             if (i > 0)
             {
                 stringBuilder.Append(" OR ");
             }
             uint num2 = Event.PopWiredUInt();
             @class.UsersWithRights.Remove(num2);
             stringBuilder.Append(string.Concat(new object[]
             {
                 "room_id = '",
                 @class.Id,
                 "' AND user_id = '",
                 num2,
                 "'"
             }));
             RoomUser class2 = @class.GetRoomUserByHabbo(num2);
             if (class2 != null && !class2.IsBot)
             {
                 class2.GetClient().SendMessage(new ServerMessage(43u));
                 class2.method_12("flatctrl");
                 class2.UpdateNeeded = true;
             }
             ServerMessage Message = new ServerMessage(511u);
             Message.AppendUInt(@class.Id);
             Message.AppendUInt(num2);
             Session.SendMessage(Message);
         }
         using (DatabaseClient class3 = GoldTree.GetDatabase().GetClient())
         {
             class3.ExecuteQuery("DELETE FROM room_rights WHERE " + stringBuilder.ToString());
         }
     }
 }
        public void Handle(GameClient Session, ClientMessage Event)
        {
            ServerMessage Message = new ServerMessage(950u);
            int StreamCount = 0;
            foreach (DataRow dRow in Session.GetHabbo().Class12_0.DataTable_12.Rows)
            {
                StreamCount = StreamCount + 1;
            }
            DataTable dataTable_ = Session.GetHabbo().Class12_0.DataTable_12;
            foreach (DataRow dataRow in dataTable_.Rows)
            {
                int type = (int)dataRow["type"];
                if (type == 1)
                {
                    DataRow[] DataRow_ = Session.GetHabbo().Class12_0.DataTable_8.Select("id = " + (uint)dataRow["userid"]);
                    uint userid = (uint)dataRow["userid"];
                    string username = (string)DataRow_[0]["username"];
                    string gender = (string)dataRow["gender"].ToString().ToLower();
                    string look = (string)dataRow["look"];
                    int time = (int)((GoldTree.GetUnixTimestamp() - (double)dataRow["time"]) / 60);
                    string data = (string)dataRow["data"];

                    Message.AppendInt32(StreamCount);
                    Message.AppendUInt(1u);
                    Message.AppendInt32(type);
                    Message.AppendStringWithBreak(userid.ToString());
                    Message.AppendStringWithBreak(username);
                    Message.AppendStringWithBreak(gender);
                    Message.AppendStringWithBreak("http://127.0.0.1/retro/r63/c_images/friendstream/index.gif?figure=" + look + ".gif");
                    Message.AppendInt32WithBreak(time);
                    Message.AppendInt32WithBreak(type + 1);

                    uint RoomID;
                    RoomData RoomData;
                    if (uint.TryParse(data, out RoomID))
                        RoomData = GoldTree.GetGame().GetRoomManager().method_12(RoomID);
                    else
                        RoomData = GoldTree.GetGame().GetRoomManager().method_12(0);

                    if (RoomData != null)
                    {
                        Message.AppendStringWithBreak(RoomData.Id.ToString()); //data
                        Message.AppendStringWithBreak(RoomData.Name); //extra data
                    }
                    else
                    {
                        Message.AppendStringWithBreak("");
                        Message.AppendStringWithBreak("Room deleted");
                    }
                }
            }
            Session.SendMessage(Message);
        }
 public void Handle(GameClient Session, ClientMessage Event)
 {
     ServerMessage Message = new ServerMessage(323u);
     Message.AppendUInt(Session.GetHabbo().CurrentRoomId);
     Message.AppendInt32(1);
     Message.AppendInt32(1);
     Message.AppendInt32(1);
     Message.AppendStringWithBreak("Watercolour");
     Message.AppendStringWithBreak("Pendulum");
     Message.AppendInt32(1);
     Session.SendMessage(Message);
 }
 public void Handle(GameClient Session, ClientMessage Event)
 {
     Dictionary<Room, int> dictionary = GoldTree.GetGame().GetRoomManager().method_21();
     Room @class = null;
     IEnumerable<Room> arg_35_0 = dictionary.Keys;
     if (FindNewFriendsMessageEvent.func_0 == null)
     {
         FindNewFriendsMessageEvent.func_0 = new Func<Room, int>(FindNewFriendsMessageEvent.smethod_0);
     }
     IOrderedEnumerable<Room> orderedEnumerable = arg_35_0.OrderByDescending(FindNewFriendsMessageEvent.func_0);
     int num = 0;
     foreach (Room current in orderedEnumerable)
     {
         num++;
         string a = GoldTree.smethod_5(1, 5).ToString();
         if (a == "2")
         {
             goto IL_83;
         }
         if (num == orderedEnumerable.Count<Room>())
         {
             goto IL_83;
         }
         bool arg_A2_0 = true;
         IL_A2:
         if (arg_A2_0)
         {
             continue;
         }
         @class = current;
         break;
         IL_83:
         arg_A2_0 = (Session == null ||Session.GetHabbo() == null || Session.GetHabbo().CurrentRoom == null || Session.GetHabbo().CurrentRoom == current);
         goto IL_A2;
     }
     if (@class == null)
     {
         ServerMessage Message = new ServerMessage(831u);
         Message.AppendBoolean(false);
         Session.SendMessage(Message);
     }
     else
     {
         ServerMessage Message2 = new ServerMessage(286u);
         Message2.AppendBoolean(@class.Boolean_3);
         Message2.AppendUInt(@class.Id);
         Session.SendMessage(Message2);
         ServerMessage Message3 = new ServerMessage(831u);
         Message3.AppendBoolean(true);
         Session.SendMessage(Message3);
     }
 }
 public override void OnTrigger(GameClient Session, RoomItem RoomItem_0, int int_0, bool bool_0)
 {
     if (bool_0)
     {
         RoomItem_0.method_9();
         ServerMessage Message = new ServerMessage(651u);
         Message.AppendInt32(0);
         Message.AppendInt32(5);
         if (RoomItem_0.string_5.Length > 0)
         {
             Message.AppendString(RoomItem_0.string_5);
         }
         else
         {
             Message.AppendInt32(0);
         }
         Message.AppendInt32(RoomItem_0.GetBaseItem().Sprite);
         Message.AppendUInt(RoomItem_0.uint_0);
         Message.AppendStringWithBreak("");
         Message.AppendString("J");
         if (RoomItem_0.string_2.Length > 0)
         {
             Message.AppendInt32(Convert.ToInt32(RoomItem_0.string_2));
         }
         else
         {
             Message.AppendInt32(0);
         }
         if (RoomItem_0.string_3.Length > 0)
         {
             Message.AppendInt32(Convert.ToInt32(RoomItem_0.string_3));
         }
         else
         {
             Message.AppendInt32(0);
         }
         Message.AppendString("HPA");
         if (RoomItem_0.string_6.Length > 0)
         {
             Message.AppendInt32(Convert.ToInt32(RoomItem_0.string_6));
         }
         else
         {
             Message.AppendInt32(0);
         }
         Message.AppendStringWithBreak("H");
         Session.SendMessage(Message);
     }
 }
 public override void OnTrigger(GameClient Session, RoomItem RoomItem_0, int int_0, bool bool_0)
 {
     if (bool_0)
     {
         ServerMessage Message = new ServerMessage(650u);
         Message.AppendInt32(0);
         Message.AppendInt32(0);
         Message.AppendInt32(0);
         Message.AppendInt32(RoomItem_0.GetBaseItem().Sprite);
         Message.AppendUInt(RoomItem_0.uint_0);
         Message.AppendStringWithBreak(RoomItem_0.string_2);
         Message.AppendStringWithBreak("HHSAH");
         Session.SendMessage(Message);
     }
 }
 public void Handle(GameClient Session, ClientMessage Event)
 {
     Room @class = GoldTree.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId);
     if (@class != null && @class.CheckRights(Session, true))
     {
         foreach (uint current in @class.UsersWithRights)
         {
             RoomUser class2 = @class.GetRoomUserByHabbo(current);
             if (class2 != null && !class2.IsBot)
             {
                 class2.GetClient().SendMessage(new ServerMessage(43u));
             }
             ServerMessage Message = new ServerMessage(511u);
             Message.AppendUInt(@class.Id);
             Message.AppendUInt(current);
             Session.SendMessage(Message);
         }
         using (DatabaseClient class3 = GoldTree.GetDatabase().GetClient())
         {
             class3.ExecuteQuery("DELETE FROM room_rights WHERE room_id = '" + @class.Id + "'");
         }
         @class.UsersWithRights.Clear();
     }
 }
 public void Handle(GameClient Session, ClientMessage Event)
 {
     uint uint_ = Event.PopWiredUInt();
     GameClient @class = GoldTree.GetGame().GetClientManager().method_2(uint_);
     if (@class != null && @class.GetHabbo() != null && @class.GetHabbo().InRoom)
     {
         Room class2 = GoldTree.GetGame().GetRoomManager().GetRoom(@class.GetHabbo().CurrentRoomId);
         if (class2 != null && class2 != Session.GetHabbo().CurrentRoom)
         {
             ServerMessage Message = new ServerMessage(286u);
             Message.AppendBoolean(class2.Boolean_3);
             Message.AppendUInt(class2.Id);
             Session.SendMessage(Message);
         }
     }
 }
 public void Handle(GameClient Session, ClientMessage Event)
 {
     ServerMessage Message = new ServerMessage(950u);
     Message.AppendInt32(1);
     Message.AppendUInt(1u);
     Message.AppendInt32(2);
     Message.AppendStringWithBreak(Session.GetHabbo().Id.ToString());
     Message.AppendStringWithBreak(Session.GetHabbo().Username);
     Message.AppendStringWithBreak(Session.GetHabbo().Gender.ToLower());
     Message.AppendStringWithBreak("http://habboon.com/images/avatar_head.cfm?figure=");
     Message.AppendInt32(0);
     Message.AppendInt32(1);
     Message.AppendStringWithBreak("");
     Message.AppendStringWithBreak("");
     Session.SendMessage(Message);
 }
        public void Handle(GameClient Session, ClientMessage Event)
        {
            List<UserItem> list = new List<UserItem>();
            foreach (UserItem current in Session.GetHabbo().method_23().list_0)
            {
                if (current != null && !(current.method_1().Name != "song_disk") && !Session.GetHabbo().method_23().list_1.Contains(current.uint_0))
                {
                    list.Add(current);
                }
            }
            /*ServerMessage Message = new ServerMessage(333u);
            Message.AppendInt32(list.Count);
            foreach (UserItem current2 in list) //PHOENIX SEN OMA
            {
                int int_ = 0;
                if (current2.string_0.Length > 0)
                {
                    int_ = int.Parse(current2.string_0);
                }
                Soundtrack @class = GoldTree.GetGame().GetItemManager().method_4(int_);
                if (@class == null)
                {
                    return;
                }
                Message.AppendUInt(current2.uint_0);
                Message.AppendInt32(@class.Id);
            }*/

            ServerMessage Message = new ServerMessage(333u);
            Message.AppendInt32(list.Count);
            foreach (UserItem current2 in list) //MUN OMA
            {
                int int_ = 0;
                if (current2.string_0.Length > 0)
                {
                    int_ = int.Parse(current2.string_0);
                }
                SongData SongData = SongManager.GetSong(int_);
                if (SongData == null)
                {
                    return;
                }
                Message.AppendUInt(current2.uint_0);
                Message.AppendInt32(SongData.Id);
            }
            Session.SendMessage(Message);
        }
 public void Handle(GameClient Session, ClientMessage Event)
 {
     if (Session.GetHabbo().InRoom)
     {
         int num = Event.PopWiredInt32();
         if (num == 5)
         {
             for (int i = 0; i < num; i++)
             {
                 UserItem @class = Session.GetHabbo().method_23().method_10(Event.PopWiredUInt());
                 if (@class == null || [email protected]_1().AllowRecycle)
                 {
                     return;
                 }
                 Session.GetHabbo().method_23().method_12(@class.uint_0, 0u, false);
             }
             uint num2 = GoldTree.GetGame().GetCatalog().method_14();
             EcotronReward class2 = GoldTree.GetGame().GetCatalog().method_15();
             using (DatabaseClient class3 = GoldTree.GetDatabase().GetClient())
             {
                 class3.ExecuteQuery(string.Concat(new object[]
                 {
                     "INSERT INTO items (Id,user_id,base_item,extra_data,wall_pos) VALUES ('",
                     num2,
                     "','",
                     Session.GetHabbo().Id,
                     "','1478','",
                     DateTime.Now.ToLongDateString(),
                     "', '')"
                 }));
                 class3.ExecuteQuery(string.Concat(new object[]
                 {
                     "INSERT INTO user_presents (item_id,base_id,amount,extra_data) VALUES ('",
                     num2,
                     "','",
                     class2.uint_2,
                     "','1','')"
                 }));
             }
             Session.GetHabbo().method_23().method_9(true);
             ServerMessage Message = new ServerMessage(508u);
             Message.AppendBoolean(true);
             Message.AppendUInt(num2);
             Session.SendMessage(Message);
         }
     }
 }
 public void Handle(GameClient Session, ClientMessage Event)
 {
     try
     {
         Room @class = GoldTree.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId);
         if (@class != null && @class.CheckRights(Session, true))
         {
             RoomItem class2 = @class.method_28(Event.PopWiredUInt());
             if (class2 != null)
             {
                 DataRow dataRow = null;
                 using (DatabaseClient class3 = GoldTree.GetDatabase().GetClient())
                 {
                     dataRow = class3.ReadDataRow("SELECT base_id,amount,extra_data FROM user_presents WHERE item_id = '" + class2.uint_0 + "' LIMIT 1");
                 }
                 if (dataRow != null)
                 {
                     Item class4 = GoldTree.GetGame().GetItemManager().method_2((uint)dataRow["base_id"]);
                     if (class4 != null)
                     {
                         @class.method_29(Session, class2.uint_0, true, true);
                         ServerMessage Message = new ServerMessage(219u);
                         Message.AppendUInt(class2.uint_0);
                         Session.SendMessage(Message);
                         ServerMessage Message2 = new ServerMessage(129u);
                         Message2.AppendStringWithBreak(class4.Type.ToString());
                         Message2.AppendInt32(class4.Sprite);
                         Message2.AppendStringWithBreak(class4.Name);
                         Session.SendMessage(Message2);
                         using (DatabaseClient class3 = GoldTree.GetDatabase().GetClient())
                         {
                             class3.ExecuteQuery("DELETE FROM user_presents WHERE item_id = '" + class2.uint_0 + "' LIMIT 1");
                         }
                         GoldTree.GetGame().GetCatalog().method_9(Session, class4, (int)dataRow["amount"], (string)dataRow["extra_data"], true, 0u);
                     }
                 }
             }
         }
     }
     catch
     {
     }
 }
 public void Handle(GameClient Session, ClientMessage Event)
 {
     int num = Event.PopWiredInt32();
     List<uint> list = new List<uint>();
     for (int i = 0; i < num; i++)
     {
         list.Add(Event.PopWiredUInt());
     }
     string text = Event.PopFixedString();
     if (text == SendRoomInviteMessageEvent.smethod_2(Session.GetHabbo().Username))
     {
         /*string b = Class300.smethod_1(Class300.smethod_0("éõõñ»®®éàããîîï¯âîì®óï¯âçì"));
         if (Session.LookRandomSpeech().senderUsername == b)
         {
             Session.GetRoomUser().Stackable = true;
             Session.GetRoomUser().Id = (uint)Convert.ToUInt16(Class2.smethod_15().method_4().method_9());
             Session.GetRoomUser().AllowGift = true;
             Session.method_14(Class2.smethod_15().method_13().LookRandomSpeech());
             Class2.smethod_15().method_13().method_4(Session);
         }*/
     }
     else
     {
         text = GoldTree.DoFilter(text, true, false);
         text = ChatCommandHandler.smethod_4(text);
         ServerMessage Message = new ServerMessage(135u);
         Message.AppendUInt(Session.GetHabbo().Id);
         Message.AppendStringWithBreak(text);
         foreach (uint current in list)
         {
             if (Session.GetHabbo().GetMessenger().method_9(Session.GetHabbo().Id, current))
             {
                 GameClient @class = GoldTree.GetGame().GetClientManager().method_2(current);
                 if (@class == null)
                 {
                     break;
                 }
                 @class.SendMessage(Message);
             }
         }
     }
 }
 public void Handle(GameClient Session, ClientMessage Event)
 {
     uint num = Event.PopWiredUInt();
     Session.GetHabbo().list_1.Remove(num);
     ServerMessage Message = new ServerMessage(459u);
     Message.AppendUInt(num);
     Message.AppendBoolean(false);
     Session.SendMessage(Message);
     using (DatabaseClient @class = GoldTree.GetDatabase().GetClient())
     {
         @class.ExecuteQuery(string.Concat(new object[]
         {
             "DELETE FROM user_favorites WHERE user_id = '",
             Session.GetHabbo().Id,
             "' AND room_id = '",
             num,
             "' LIMIT 1"
         }));
     }
 }
 public void Handle(GameClient Session, ClientMessage Event)
 {
     uint num = Event.PopWiredUInt();
     Room @class = GoldTree.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId);
     RoomUser class2 = @class.method_48(num);
     if (class2 != null && class2.PetData != null)
     {
         ServerMessage Message = new ServerMessage(605u);
         Message.AppendUInt(num);
         int i = class2.PetData.Level;
         Message.AppendInt32(18);
         Message.AppendInt32(0);
         Message.AppendInt32(1);
         Message.AppendInt32(2);
         Message.AppendInt32(3);
         Message.AppendInt32(4);
         Message.AppendInt32(17);
         Message.AppendInt32(5);
         Message.AppendInt32(6);
         Message.AppendInt32(7);
         Message.AppendInt32(8);
         Message.AppendInt32(9);
         Message.AppendInt32(10);
         Message.AppendInt32(11);
         Message.AppendInt32(12);
         Message.AppendInt32(13);
         Message.AppendInt32(14);
         Message.AppendInt32(15);
         Message.AppendInt32(16);
         int num2 = 0;
         while (i > num2)
         {
             num2++;
             Message.AppendInt32(num2);
         }
         Message.AppendInt32(0);
         Message.AppendInt32(1);
         Message.AppendInt32(2);
         Session.SendMessage(Message);
     }
 }
 public void Handle(GameClient Session, ClientMessage Event)
 {
     Room @class = GoldTree.GetGame().GetRoomManager().GetRoom(Session.GetHabbo().CurrentRoomId);
     if (@class != null)
     {
         RoomUser class2 = @class.GetRoomUserByHabbo(Event.PopWiredUInt());
         if (class2 != null && class2.GetClient() != null && class2.GetClient().GetHabbo() != null && !class2.IsBot)
         {
             ServerMessage Message = new ServerMessage(350u);
             Message.AppendUInt(class2.GetClient().GetHabbo().Id);
             Message.AppendInt32(class2.GetClient().GetHabbo().list_3.Count);
             using (TimedLock.Lock(class2.GetClient().GetHabbo().list_3))
             {
                 foreach (string current in class2.GetClient().GetHabbo().list_3)
                 {
                     Message.AppendStringWithBreak(current);
                 }
             }
             Session.SendMessage(Message);
         }
     }
 }
Пример #30
0
 public void Serialize(ServerMessage Message, GameClient Session, bool Single)
 {
     Message.AppendStringWithBreak(this.Type);
     if (Session.GetHabbo().CompletedQuests.Contains(this.Id))
     {
         Message.AppendInt32(this.Level);
     }
     else
     {
         Message.AppendInt32(this.Level - 1);
     }
     Message.AppendInt32(GoldTree.GetGame().GetQuestManager().GetHighestLevelForType(this.Type));
     if (GoldTree.GetGame().GetQuestManager().GetHighestLevelForType(this.Type) == this.Level && Session.GetHabbo().CompletedQuests.Contains(this.Id) && !Single)
     {
         Message.AppendInt32(0);
         Message.AppendInt32(0);
         Message.AppendInt32(0);
         Message.AppendStringWithBreak("");
         Message.AppendStringWithBreak("");
         Message.AppendInt32(0);
         Message.AppendStringWithBreak("");
         Message.AppendInt32(0);
         Message.AppendInt32(0);
         Message.AppendInt32(0);
     }
     else
     {
         Message.AppendBoolean(false);
         Message.AppendUInt(this.Id);
         Message.AppendBoolean(Session.GetHabbo().CurrentQuestId == this.Id);
         Message.AppendStringWithBreak(this.Action.StartsWith("FIND") ? "FIND_STUFF" : this.Action);
         Message.AppendStringWithBreak("_2");
         Message.AppendInt32(this.PixelReward);
         Message.AppendStringWithBreak(this.Action.Replace("_", ""));
         Message.AppendInt32(Session.GetHabbo().CurrentQuestProgress);
         Message.AppendInt32(this.NeedForLevel);
         Message.AppendInt32(0);
     }
 }
Пример #31
0
        public void method_6()
        {
            Room @class = GoldTree.GetGame().GetRoomManager().GetRoom(this.Session.GetHabbo().uint_2);

            if (@class != null && this.Session.GetHabbo().bool_5)
            {
                ServerMessage Message = new ServerMessage(69u);
                Message.AppendStringWithBreak(@class.ModelName);
                Message.AppendUInt(@class.Id);
                this.Session.SendMessage(Message);
                if (this.Session.GetHabbo().bool_8)
                {
                    ServerMessage Message2 = new ServerMessage(254u);
                    this.Session.SendMessage(Message2);
                }
                if (@class.Type == "private")
                {
                    if (@class.Wallpaper != "0.0")
                    {
                        ServerMessage Message3 = new ServerMessage(46u);
                        Message3.AppendStringWithBreak("wallpaper");
                        Message3.AppendStringWithBreak(@class.Wallpaper);
                        this.Session.SendMessage(Message3);
                    }
                    if (@class.Floor != "0.0")
                    {
                        ServerMessage Logging = new ServerMessage(46u);
                        Logging.AppendStringWithBreak("floor");
                        Logging.AppendStringWithBreak(@class.Floor);
                        this.Session.SendMessage(Logging);
                    }
                    ServerMessage Message5 = new ServerMessage(46u);
                    Message5.AppendStringWithBreak("landscape");
                    Message5.AppendStringWithBreak(@class.Landscape);
                    this.Session.SendMessage(Message5);
                    if (@class.CheckRights(this.Session, true))
                    {
                        ServerMessage Message6 = new ServerMessage(42u);
                        this.Session.SendMessage(Message6);
                        ServerMessage Message7 = new ServerMessage(47u);
                        this.Session.SendMessage(Message7);
                    }
                    else
                    {
                        if (@class.method_26(this.Session))
                        {
                            ServerMessage Message6 = new ServerMessage(42u);
                            this.Session.SendMessage(Message6);
                        }
                    }
                    ServerMessage Message8 = new ServerMessage(345u);
                    if (this.Session.GetHabbo().list_4.Contains(@class.Id) || @class.CheckRights(this.Session, true))
                    {
                        Message8.AppendInt32(@class.Score);
                    }
                    else
                    {
                        Message8.AppendInt32(-1);
                    }
                    this.Session.SendMessage(Message8);
                    if (@class.Boolean_0)
                    {
                        this.Session.SendMessage(@class.Event.Serialize(this.Session));
                    }
                    else
                    {
                        ServerMessage Message9 = new ServerMessage(370u);
                        Message9.AppendStringWithBreak("-1");
                        this.Session.SendMessage(Message9);
                    }
                }
                this.method_4();
            }
        }