public static void NavigatorFrontpage(Message Msg, Session Session) { fuseResponse.New(Opcodes.OpcodesOut.SendNavigatorFrontpage); fuseResponse.Append <int>(Engine.GetHabboHotel.getFrontpage.getCount()); foreach (var Item in Engine.GetHabboHotel.getFrontpage.getList().Values) { fuseResponse.Append <int>(Item.ID); fuseResponse.Append <string>(Item.Name); fuseResponse.Append <string>(Item.Description); fuseResponse.Append <int>(Item.BannerLength); fuseResponse.Append <string>(Item.Name); fuseResponse.Append <string>(Item.Image); fuseResponse.Append <int>(Item.Category_ID); fuseResponse.Append <int>(0); fuseResponse.Append <int>(Item.Type); switch (Item.Type) { case 1: { fuseResponse.Append <string>(Item.TypeExtraData); break; } case 2: { FluentRooms.Serialize(fuseResponse, FluentRooms.GetById(int.Parse(Item.TypeExtraData))[0]); break; } case 4: { fuseResponse.Append <bool>(false); break; } } } fuseResponse.Append <int>(0); fuseResponse.Append <int>(0); fuseResponse.Send(Session); }
public static void OwnRooms(Message Msg, Session Session) { var All = FluentRooms.GetByOwner(Session.User.Username); var RoomsEnum = All.GetEnumerator(); fuseResponse.New(Opcodes.OpcodesOut.SendRoomDataNavigator); fuseResponse.Append <int>(5); fuseResponse.Append <string>(""); fuseResponse.Append <int>(All.Count); while (RoomsEnum.MoveNext()) { var Room = (rooms)RoomsEnum.Current; FluentRooms.Serialize(fuseResponse, Room); } fuseResponse.Append <bool>(false); fuseResponse.Send(Session); }
public static void SearchedRooms(Message Msg, Session Session) { string Keywords = Msg.NextString(); var Rooms = FluentRooms.GetByQry(Keywords); var All = Rooms.GetEnumerator(); fuseResponse.New(Opcodes.OpcodesOut.SendRoomDataNavigator); fuseResponse.Append <int>(8); fuseResponse.Append <string>(Keywords); fuseResponse.Append <int>(Rooms.Count); while (All.MoveNext()) { rooms Row = (rooms)All.Current; FluentRooms.Serialize(fuseResponse, Row); } fuseResponse.Append <bool>(false); fuseResponse.Send(Session); }
public static void GetEndEnterRoom(Message Msg, Session Session) { fuseResponse.New(537); fuseResponse.Append <int>(1); fuseResponse.Append <int>(1); fuseResponse.Append <string>("lol"); fuseResponse.Append <int>(1); fuseResponse.Append <bool>(true); fuseResponse.Send(Session); fuseResponse.New(632); fuseResponse.Append <int>(1); fuseResponse.Append <bool>(true); fuseResponse.Append <int>(1); fuseResponse.Append <string>("lol"); fuseResponse.Append <string>("uhaveshittyballs"); fuseResponse.Append <string>(""); fuseResponse.Append <int>(1); fuseResponse.Append <string>("lolroom"); fuseResponse.Append <int>(1); fuseResponse.Append <int>(1); fuseResponse.Append <bool>(false); fuseResponse.Append <string>("now"); fuseResponse.Append <bool>(true); fuseResponse.Append <bool>(true); fuseResponse.Append <string>("tehowner"); fuseResponse.Append <bool>(false); fuseResponse.Append <bool>(true); fuseResponse.Append <int>(0); fuseResponse.Send(Session); Session.User.RoomUser = new RoomUser() { CoordX = Session.Room.Model.DoorX, CoordY = Session.Room.Model.DoorY, CoordZ = Session.Room.Model.DoorZ, Dance = 0, Effect = 0, Idle = false, RotationBody = 2, RotationHead = 2 }; if (Engine.RoomsLoaded.ContainsKey(Session.Room.ID)) { Engine.RoomsLoaded[Session.Room.ID].Add(Session); } else { Engine.RoomsLoaded.Add(Session.Room.ID, new List <Session>()); Engine.RoomsLoaded[Session.Room.ID].Add(Session); } fuseResponse.New(Opcodes.OpcodesOut.SendRoomUser); fuseResponse.Append <int>(Engine.RoomsLoaded[Session.Room.ID].Count); foreach (var User in Engine.RoomsLoaded[Session.Room.ID]) { fuseResponse.Append <int>(User.User.ID); fuseResponse.Append <string>(User.User.Username); fuseResponse.Append <string>(User.User.Motto); fuseResponse.Append <string>(User.User.Figure); fuseResponse.Append <int>(User.User.ID); fuseResponse.Append <int>(User.User.RoomUser.CoordX); fuseResponse.Append <int>(User.User.RoomUser.CoordY); fuseResponse.Append <string>(User.User.RoomUser.CoordZ.ToString()); fuseResponse.Append <int>(2); fuseResponse.Append <int>(1); fuseResponse.Append <string>(User.User.Gender); fuseResponse.Append <int>(User.User.favouritegroup); fuseResponse.Append <int>(3); // ?? fuseResponse.Append <string>(Engine.GetHabboHotel.getGroups.Groups[User.User.favouritegroup].Name); fuseResponse.Append <string>(""); fuseResponse.Append <int>(0); } fuseResponse.Send(Session); fuseResponse.New(Opcodes.OpcodesOut.SendRoomUser); fuseResponse.Append <int>(1); fuseResponse.Append <int>(Session.User.ID); fuseResponse.Append <string>(Session.User.Username); fuseResponse.Append <string>(Session.User.Motto); fuseResponse.Append <string>(Session.User.Figure); fuseResponse.Append <int>(Session.User.ID); fuseResponse.Append <int>(Session.User.RoomUser.CoordX); fuseResponse.Append <int>(Session.User.RoomUser.CoordY); fuseResponse.Append <string>(Session.User.RoomUser.CoordZ.ToString()); fuseResponse.Append <int>(2); fuseResponse.Append <int>(1); fuseResponse.Append <string>(Session.User.Gender); fuseResponse.Append <int>(Session.User.favouritegroup); fuseResponse.Append <int>(3); // ?? fuseResponse.Append <string>(Engine.GetHabboHotel.getGroups.Groups[Session.User.favouritegroup].Name); fuseResponse.Append <string>(""); fuseResponse.Append <int>(0); Session.Room.SendData(fuseResponse); fuseResponse.New(Opcodes.OpcodesOut.SendUserStatus); fuseResponse.Append <int>(Engine.RoomsLoaded[Session.Room.ID].Count); foreach (Session S in Engine.RoomsLoaded[Session.Room.ID]) { fuseResponse.Append <int>(S.User.ID); fuseResponse.Append <int>(S.User.RoomUser.CoordX); fuseResponse.Append <int>(S.User.RoomUser.CoordY); fuseResponse.Append <string>(S.User.RoomUser.CoordZ); fuseResponse.Append <int>(2); fuseResponse.Append <int>(2); fuseResponse.Append <string>("//"); } Session.Room.SendData(fuseResponse); fuseResponse.New(Opcodes.OpcodesOut.SendRoomStatus); fuseResponse.Append <bool>(true); fuseResponse.Append <uint>(Session.Room.ID); fuseResponse.Append <bool>(Session.Room.Owner == Session.User.Username); fuseResponse.Send(Session); fuseResponse.New(Opcodes.OpcodesOut.SendInRoomDetails); fuseResponse.Append <bool>(true); FluentRooms.Serialize(fuseResponse, Session.Room); fuseResponse.Append <bool>(false); fuseResponse.Append <bool>(false); fuseResponse.Append <bool>(false); fuseResponse.Send(Session); }