using System; using System.Collections.Generic; using System.Linq; using System.Text; using Chop.Game.Messages.IDs; using Chop.Game.Messenger; using Chop.User; namespace Chop.Game.Messages.Incoming.Friendlist { class MessengerInitEvent: IMessageHandler { public void Handle(GameClient client, RequestParser parser) { //ResponseBuilder message = new ResponseBuilder(OutgoingMessages.HotelMergeNameChangeEvent); //client.SendMessage(message); client.mConsole = new HabboConsole(client.mHabbo); client.mConsole.LoadBuddies(false); ResponseBuilder message = new ResponseBuilder(OutgoingMessages.MessengerInitEvent); if (client.mHabbo.mRank == 1) message.AppendInt32(50); else if (client.mHabbo.mRank == 2) message.AppendInt32(100); else message.AppendInt32(200); message.AppendInt32(50); message.AppendInt32(100); message.AppendInt32(200); message.AppendInt32(0); message.AppendInt32(client.mConsole.mBuddies.Count); foreach (Habbo habbo in client.mConsole.mBuddies.Values) { message.AppendInt32(habbo.mID); message.AppendString(habbo.mName); message.AppendInt32(habbo.mGender == 'M' ? 1 : 0); message.AppendBoolean(Core.ClientManager.GetClientByHabbo(habbo.mID) != null); message.AppendBoolean(true); // TODO: no hardcode message.AppendString(client.mHabbo.mFigure); message.AppendInt32(0); // TODO: no hardcore, this is category message.AppendString(habbo.mMotto); //message.AppendInt32(0); //message.AppendBoolean(false); message.AppendString(habbo.mLastVisit); message.AppendString(habbo.mRealName); message.AppendString(habbo.mFacebookID); } client.SendMessage(message); // ID 12 // int userFriendLimit // int normalFriendLimit // int extendedFriendLimit // int evenMoreExtendedFriendLimit // category count // foreach FriendCategoryData: // int id // string name // friend count // foreach FriendData: // int id // string name // int gender // bool online // bool followingAllowed // string figure // int categoryId // string motto // string lastAccess // string realName // string facebookId //throw new NotImplementedException(); } } }