Ejemplo n.º 1
0
        public void BuildItemsResponse(BlackMarketRequestItemsResult packet, Player player)
        {
            packet.LastUpdateID = (int)_lastUpdate;
            foreach (var pair in _auctions)
            {
                BlackMarketTemplate templ = pair.Value.GetTemplate();

                BlackMarketItem item = new();
                item.MarketID  = pair.Value.GetMarketId();
                item.SellerNPC = templ.SellerNPC;
                item.Item      = templ.Item;
                item.Quantity  = templ.Quantity;

                // No bids yet
                if (pair.Value.GetNumBids() == 0)
                {
                    item.MinBid       = templ.MinBid;
                    item.MinIncrement = 1;
                }
                else
                {
                    item.MinIncrement = pair.Value.GetMinIncrement(); // 5% increment minimum
                    item.MinBid       = pair.Value.GetCurrentBid() + item.MinIncrement;
                }

                item.CurrentBid       = pair.Value.GetCurrentBid();
                item.SecondsRemaining = pair.Value.GetSecondsRemaining();
                item.HighBid          = (pair.Value.GetBidder() == player.GetGUID().GetCounter());
                item.NumBids          = pair.Value.GetNumBids();

                packet.Items.Add(item);
            }
        }
Ejemplo n.º 2
0
        void HandleBlackMarketRequestItems(BlackMarketRequestItems blackMarketRequestItems)
        {
            if (!Global.BlackMarketMgr.IsEnabled())
            {
                return;
            }

            Creature unit = GetPlayer().GetNPCIfCanInteractWith(blackMarketRequestItems.Guid, NPCFlags.BlackMarket, NPCFlags2.BlackMarketView);

            if (!unit)
            {
                Log.outDebug(LogFilter.Network, "WORLD: HandleBlackMarketRequestItems - {0} not found or you can't interact with him.", blackMarketRequestItems.Guid.ToString());
                return;
            }

            BlackMarketRequestItemsResult result = new BlackMarketRequestItemsResult();

            Global.BlackMarketMgr.BuildItemsResponse(result, GetPlayer());
            SendPacket(result);
        }