//internal void Serialize(ServerMessage Message) //{ // Message.Append(Id); // Message.Append(0); // if (mBaseItem == null) // Logging.LogException("Unknown base: " + BaseItem); // Message.Append(mBaseItem.Type.ToString().ToUpper()); // Message.Append(Id); // Message.Append(mBaseItem.SpriteId); // if (mBaseItem.Name.Contains("a2")) // Message.Append(3); // else if (mBaseItem.Name.Contains("wallpaper")) // Message.Append(2); // else if (mBaseItem.Name.Contains("landscape")) // Message.Append(4); // else // Message.Append(0); // Message.Append(ExtraData); // Message.Append(mBaseItem.AllowRecycle); // Message.Append(mBaseItem.AllowTrade); // Message.Append(mBaseItem.AllowInventoryStack); // Message.Append(Marketplace.CanSellItem(this)); // Message.Append(-1); // if (mBaseItem.Type == 's') // { // Message.Append(""); // Message.Append(-1); // } //} internal void SerializeWall(ServerMessage Message, Boolean Inventory) { Message.AppendUInt(Id); Message.AppendStringWithBreak(mBaseItem.Type.ToString().ToUpper()); Message.AppendUInt(Id); Message.AppendInt32(GetBaseItem().SpriteId); if (GetBaseItem().Name.Contains("a2")) { Message.AppendInt32(3); } else if (GetBaseItem().Name.Contains("wallpaper")) { Message.AppendInt32(2); } else if (GetBaseItem().Name.Contains("landscape")) { Message.AppendInt32(4); } else { Message.AppendInt32(1); } Message.AppendStringWithBreak(ExtraData); Message.AppendBoolean(GetBaseItem().AllowRecycle); Message.AppendBoolean(GetBaseItem().AllowTrade); Message.AppendBoolean(GetBaseItem().AllowInventoryStack); Message.AppendBoolean(Marketplace.CanSellItem(this)); Message.AppendInt32(-1); }
internal void SerializeFloor(ServerMessage Message, Boolean Inventory) { Message.AppendUInt(Id); Message.AppendStringWithBreak(mBaseItem.Type.ToString().ToUpper()); Message.AppendUInt(Id); Message.AppendInt32(GetBaseItem().SpriteId); Message.AppendInt32(1); Message.AppendStringWithBreak(ExtraData); Message.AppendBoolean(GetBaseItem().AllowRecycle); Message.AppendBoolean(GetBaseItem().AllowTrade); Message.AppendBoolean(GetBaseItem().AllowInventoryStack); Message.AppendBoolean(Marketplace.CanSellItem(this)); Message.AppendInt32(-1); Message.AppendStringWithBreak(""); Message.AppendInt32(0); }
internal void SerializeWall(ServerMessage Message, Boolean Inventory) { try { Message.AppendUInt(Id); Message.AppendString(mBaseItem.Type.ToString().ToUpper()); Message.AppendUInt(Id); Message.AppendInt32(mBaseItem.SpriteId); if (mBaseItem.Name.Contains("a2") || mBaseItem.Name.Contains("floor")) { Message.AppendInt32(3); } else if (mBaseItem.Name.Contains("wallpaper") && mBaseItem.Name != "wildwest_wallpaper") { Message.AppendInt32(2); } else if (mBaseItem.Name.Contains("landscape")) { Message.AppendInt32(4); } else { Message.AppendInt32(1); } Message.AppendInt32(0); Message.AppendString(ExtraData); Message.AppendBoolean(mBaseItem.AllowRecycle); Message.AppendBoolean(mBaseItem.AllowTrade); Message.AppendBoolean(mBaseItem.AllowInventoryStack); Message.AppendBoolean(Marketplace.CanSellItem(this)); Message.AppendInt32(-1); Message.AppendBoolean(false); Message.AppendInt32(-1); if (mBaseItem.InteractionType == InteractionType.photo) { } } catch (Exception e) { Logging.LogPacketException("Error al serializar un item de pared en el inventario: <" + Id + "> : ", e.ToString()); } }
//internal void Serialize(ServerMessage Message) //{ // Message.AppendUInt(Id); // Message.AppendInt32(0); // if (mBaseItem == null) // Logging.LogException("Unknown base: " + BaseItem); // Message.AppendString(mBaseItem.Type.ToString().ToUpper()); // Message.AppendUInt(Id); // Message.AppendInt32(mBaseItem.SpriteId); // if (mBaseItem.Name.Contains("a2")) // Message.AppendInt32(3); // else if (mBaseItem.Name.Contains("wallpaper")) // Message.AppendInt32(2); // else if (mBaseItem.Name.Contains("landscape")) // Message.AppendInt32(4); // else // Message.AppendInt32(0); // Message.AppendString(ExtraData); // Message.AppendBoolean(mBaseItem.AllowRecycle); // Message.AppendBoolean(mBaseItem.AllowTrade); // Message.AppendBoolean(mBaseItem.AllowInventoryStack); // Message.AppendBoolean(Marketplace.CanSellItem(this)); // Message.AppendInt32(-1); // if (mBaseItem.Type == 's') // { // Message.AppendString(""); // Message.AppendInt32(-1); // } //} internal void SerializeWall(ServerMessage Message, Boolean Inventory) { Message.AppendUInt(Id); Message.AppendString(mBaseItem.Type.ToString().ToUpper()); Message.AppendUInt(Id); Message.AppendInt32(GetBaseItem().SpriteId); if (GetBaseItem().Name.Contains("floor")) { Message.AppendInt32(3); } else if (GetBaseItem().Name.Contains("wallpaper")) { Message.AppendInt32(2); } else if (GetBaseItem().Name.Contains("landscape")) { Message.AppendInt32(4); } else { Message.AppendInt32(1); } int result = 0; //if (this.GetBaseItem().InteractionType == InteractionType.gift && ExtraData.Contains(Convert.ToChar(5).ToString())) //{ // int color = int.Parse(ExtraData.Split((char)5)[1]); // int lazo = int.Parse(ExtraData.Split((char)5)[2]); // result = color * 1000 + lazo; //} Message.AppendInt32(result); Message.AppendString(Data.ToString()); Message.AppendBoolean(GetBaseItem().AllowRecycle); Message.AppendBoolean(GetBaseItem().AllowTrade); Message.AppendBoolean(GetBaseItem().AllowInventoryStack); Message.AppendBoolean(Marketplace.CanSellItem(this)); Message.AppendInt32(-1); }
internal void SerializeFloor(ServerMessage Message, Boolean Inventory) { Message.AppendUInt(Id); Message.AppendString(mBaseItem.Type.ToString().ToUpper()); Message.AppendUInt(Id); Message.AppendInt32(mBaseItem.SpriteId); var result = 1; if (mBaseItem.InteractionType == InteractionType.gift) { result = 9; } else if (mBaseItem.InteractionType == InteractionType.seed) { result = 19; } Message.AppendInt32(result); // category if (mBaseItem.IsGroupItem) { try { uint GroupID = uint.Parse(ExtraData.Split(';')[1]); var Group = OtanixEnvironment.GetGame().GetGroup().LoadGroup(GroupID); Message.AppendInt32(2); Message.AppendInt32(5); Message.AppendString(ExtraData.Split(';')[0]); Message.AppendString(GroupID.ToString()); Message.AppendString(Group == null ? "" : Group.GroupImage); Message.AppendString(ExtraData.Split(';')[2]); Message.AppendString(ExtraData.Split(';')[3]); } catch { Message.AppendInt32(2); Message.AppendInt32(0); } } else if (mBaseItem.LimitedStack > 0) { Message.AppendString(""); Message.AppendBoolean(true); Message.AppendBoolean(false); } else if (mBaseItem.InteractionType == InteractionType.badge_display) { Message.AppendInt32(2); } else if (mBaseItem.InteractionType == InteractionType.maniqui || mBaseItem.InteractionType == InteractionType.yttv || mBaseItem.InteractionType == InteractionType.seed) { Message.AppendInt32(1); } else { Message.AppendInt32(0); } if (mBaseItem.InteractionType == InteractionType.maniqui) { if (ExtraData.Length <= 0 || !ExtraData.Contains(";") || ExtraData.Split(';').Length < 3) { Message.AppendInt32(3); // Coun Of Values Message.AppendString("GENDER"); Message.AppendString("m"); Message.AppendString("FIGURE"); Message.AppendString(""); Message.AppendString("OUTFIT_NAME"); Message.AppendString(""); } else { var Extradatas = ExtraData.Split(';'); Message.AppendInt32(3); // Count Of Values Message.AppendString("GENDER"); Message.AppendString(Extradatas[0]); Message.AppendString("FIGURE"); Message.AppendString(Extradatas[1]); Message.AppendString("OUTFIT_NAME"); Message.AppendString(Extradatas[2]); } } else if (mBaseItem.InteractionType == InteractionType.yttv) { Message.AppendInt32(1); Message.AppendString("THUMBNAIL_URL"); Message.AppendString(ExtraData); } else if (mBaseItem.InteractionType == InteractionType.badge_display) { Message.AppendInt32(4); // Count of Values Message.AppendString("0"); if (ExtraData.Split(';').Length == 3) { Message.AppendString(ExtraData.Split(';')[0]); // BadgeCode Message.AppendString(ExtraData.Split(';')[1]); // OwnerName Message.AppendString(ExtraData.Split(';')[2]); // DateBuyed } else { Message.AppendString(ExtraData); // BadgeCode Message.AppendString(""); // OwnerName Message.AppendString(""); // DateBuyed } } else if (mBaseItem.InteractionType == InteractionType.seed) { Message.AppendInt32(1); Message.AppendString("rarity"); Message.AppendString(ExtraData); } else if (mBaseItem.IsGroupItem) { } else { Message.AppendString(ExtraData); } if (mBaseItem.LimitedStack > 0) { Message.AppendInt32(LimitedValue); Message.AppendInt32(mBaseItem.LimitedStack); } Message.AppendBoolean(mBaseItem.AllowRecycle); Message.AppendBoolean(mBaseItem.AllowTrade); Message.AppendBoolean(mBaseItem.AllowInventoryStack); Message.AppendBoolean(Marketplace.CanSellItem(this)); Message.AppendInt32(-1); Message.AppendBoolean(false); Message.AppendInt32(-1); Message.AppendString(""); int giftValue = 0; if (mBaseItem.InteractionType == InteractionType.gift) { int.TryParse(ExtraData.Split(';')[1], out giftValue); } Message.AppendInt32(giftValue); }