Esempio n. 1
0
 /// <summary>
 /// Serializes the update.
 /// </summary>
 /// <param name="friend">The friend.</param>
 /// <returns>ServerMessage.</returns>
 internal ServerMessage SerializeUpdate(MessengerBuddy friend)
 {
     var serverMessage = new ServerMessage(LibraryParser.OutgoingRequest("FriendUpdateMessageComposer"));
     serverMessage.AppendInteger(0);
     serverMessage.AppendInteger(1);
     serverMessage.AppendInteger(0);
     friend.Serialize(serverMessage, GetClient());
     serverMessage.AppendBool(false);
     return serverMessage;
 }
Esempio n. 2
0
 /// <summary>
 /// Called when [new friendship].
 /// </summary>
 /// <param name="friendId">The friend identifier.</param>
 internal void OnNewFriendship(uint friendId)
 {
     var clientByUserId = AzureEmulator.GetGame().GetClientManager().GetClientByUserId(friendId);
     MessengerBuddy messengerBuddy;
     if (clientByUserId == null || clientByUserId.GetHabbo() == null)
     {
         DataRow row;
         using (var queryReactor = AzureEmulator.GetDatabaseManager().GetQueryReactor())
         {
             queryReactor.SetQuery(
                 string.Format(
                     "SELECT id,username,motto,look,last_online,hide_inroom,hide_online FROM users WHERE id = {0}",
                     friendId));
             row = queryReactor.GetRow();
         }
         messengerBuddy = new MessengerBuddy(friendId, (string)row["Username"], (string)row["look"],
             (string)row["motto"], (int)row["last_online"], AzureEmulator.EnumToBool(row["hide_online"].ToString()),
             AzureEmulator.EnumToBool(row["hide_inroom"].ToString()));
     }
     else
     {
         var habbo = clientByUserId.GetHabbo();
         messengerBuddy = new MessengerBuddy(friendId, habbo.UserName, habbo.Look, habbo.Motto, 0,
             habbo.AppearOffline, habbo.HideInRoom);
         messengerBuddy.UpdateUser();
     }
     if (!Friends.ContainsKey(friendId))
         Friends.Add(friendId, messengerBuddy);
     GetClient().SendMessage(SerializeUpdate(messengerBuddy));
 }