private static void HandleOpenShop(GameSession session, PacketReader packet) { MeretMarketCategory category = (MeretMarketCategory)packet.ReadInt(); MeretMarketCategoryMetadata metadata = MeretMarketCategoryMetadataStorage.GetMetadata((int)category); if (metadata is null) { return; } switch (metadata.Section) { case MeretMarketSection.PremiumMarket: HandleOpenPremiumMarket(session, category); break; case MeretMarketSection.RedMeretMarket: HandleOpenRedMeretMarket(); break; case MeretMarketSection.UGCMarket: HandleOpenUGCMarket(session, packet, metadata); break; } }
private static void HandleOpenUGCMarket(GameSession session, PacketReader packet, MeretMarketCategoryMetadata metadata) { GenderFlag gender = (GenderFlag)packet.ReadByte(); JobFlag job = (JobFlag)packet.ReadInt(); short sortBy = packet.ReadByte(); List <UGCMarketItem> items = GameServer.UGCMarketManager.FindItemsByCategory(metadata.ItemCategories, gender, job, sortBy); session.Send(MeretMarketPacket.LoadUGCShopCategory(items)); }