diff options
Diffstat (limited to 'src/game/AuctionHouseHandler.cpp')
-rw-r--r-- | src/game/AuctionHouseHandler.cpp | 205 |
1 files changed, 103 insertions, 102 deletions
diff --git a/src/game/AuctionHouseHandler.cpp b/src/game/AuctionHouseHandler.cpp index becf541a1c5..52790526dd7 100644 --- a/src/game/AuctionHouseHandler.cpp +++ b/src/game/AuctionHouseHandler.cpp @@ -36,7 +36,7 @@ //post-incrementation is always slower than pre-incrementation ! //void called when player click on auctioneer npc -void WorldSession::HandleAuctionHelloOpcode( WorldPacket & recv_data ) +void WorldSession::HandleAuctionHelloOpcode(WorldPacket & recv_data) { uint64 guid; //NPC guid recv_data >> guid; @@ -44,44 +44,44 @@ void WorldSession::HandleAuctionHelloOpcode( WorldPacket & recv_data ) Creature *unit = GetPlayer()->GetNPCIfCanInteractWith(guid,UNIT_NPC_FLAG_AUCTIONEER); if (!unit) { - sLog.outDebug( "WORLD: HandleAuctionHelloOpcode - Unit (GUID: %u) not found or you can't interact with him.", uint32(GUID_LOPART(guid)) ); + sLog.outDebug("WORLD: HandleAuctionHelloOpcode - Unit (GUID: %u) not found or you can't interact with him.", uint32(GUID_LOPART(guid))); return; } // remove fake death - if(GetPlayer()->hasUnitState(UNIT_STAT_DIED)) + if (GetPlayer()->hasUnitState(UNIT_STAT_DIED)) GetPlayer()->RemoveAurasByType(SPELL_AURA_FEIGN_DEATH); SendAuctionHello(guid, unit); } //this void causes that auction window is opened -void WorldSession::SendAuctionHello( uint64 guid, Creature* unit ) +void WorldSession::SendAuctionHello(uint64 guid, Creature* unit) { AuctionHouseEntry const* ahEntry = AuctionHouseMgr::GetAuctionHouseEntry(unit->getFaction()); - if(!ahEntry) + if (!ahEntry) return; - WorldPacket data( MSG_AUCTION_HELLO, 12 ); + WorldPacket data(MSG_AUCTION_HELLO, 12); data << (uint64) guid; data << (uint32) ahEntry->houseId; - SendPacket( &data ); + SendPacket(&data); } //call this method when player bids, creates, or deletes auction -void WorldSession::SendAuctionCommandResult(uint32 auctionId, uint32 Action, uint32 ErrorCode, uint32 bidError ) +void WorldSession::SendAuctionCommandResult(uint32 auctionId, uint32 Action, uint32 ErrorCode, uint32 bidError) { - WorldPacket data( SMSG_AUCTION_COMMAND_RESULT, 16 ); + WorldPacket data(SMSG_AUCTION_COMMAND_RESULT, 16); data << auctionId; data << Action; data << ErrorCode; - if ( !ErrorCode && Action ) + if (!ErrorCode && Action) data << bidError; //when bid, then send 0, once... SendPacket(&data); } //this function sends notification, if bidder is online -void WorldSession::SendAuctionBidderNotification( uint32 location, uint32 auctionId, uint64 bidder, uint32 bidSum, uint32 diff, uint32 item_template) +void WorldSession::SendAuctionBidderNotification(uint32 location, uint32 auctionId, uint64 bidder, uint32 bidSum, uint32 diff, uint32 item_template) { WorldPacket data(SMSG_AUCTION_BIDDER_NOTIFICATION, (8*4)); data << uint32(location); @@ -95,7 +95,7 @@ void WorldSession::SendAuctionBidderNotification( uint32 location, uint32 auctio } //this void causes on client to display: "Your auction sold" -void WorldSession::SendAuctionOwnerNotification( AuctionEntry* auction) +void WorldSession::SendAuctionOwnerNotification(AuctionEntry* auction) { WorldPacket data(SMSG_AUCTION_OWNER_NOTIFICATION, (7*4)); data << auction->Id; @@ -115,37 +115,37 @@ void WorldSession::SendAuctionOutbiddedMail(AuctionEntry *auction, uint32 newPri Player *oldBidder = objmgr.GetPlayer(oldBidder_guid); uint32 oldBidder_accId = 0; - if(!oldBidder) + if (!oldBidder) oldBidder_accId = objmgr.GetPlayerAccountIdByGUID(oldBidder_guid); // old bidder exist - if(oldBidder || oldBidder_accId) + if (oldBidder || oldBidder_accId) { std::ostringstream msgAuctionOutbiddedSubject; msgAuctionOutbiddedSubject << auction->item_template << ":0:" << AUCTION_OUTBIDDED; if (oldBidder && !_player) - oldBidder->GetSession()->SendAuctionBidderNotification( auction->GetHouseId(), auction->Id, auctionbot.GetAHBplayerGUID(), newPrice, auction->GetAuctionOutBid(), auction->item_template); + oldBidder->GetSession()->SendAuctionBidderNotification(auction->GetHouseId(), auction->Id, auctionbot.GetAHBplayerGUID(), newPrice, auction->GetAuctionOutBid(), auction->item_template); if (oldBidder && _player) - oldBidder->GetSession()->SendAuctionBidderNotification( auction->GetHouseId(), auction->Id, _player->GetGUID(), newPrice, auction->GetAuctionOutBid(), auction->item_template); + oldBidder->GetSession()->SendAuctionBidderNotification(auction->GetHouseId(), auction->Id, _player->GetGUID(), newPrice, auction->GetAuctionOutBid(), auction->item_template); WorldSession::SendMailTo(oldBidder, MAIL_AUCTION, MAIL_STATIONERY_AUCTION, auction->GetHouseId(), auction->bidder, msgAuctionOutbiddedSubject.str(), 0, NULL, auction->bid, 0, MAIL_CHECK_MASK_NONE); } } //this function sends mail, when auction is cancelled to old bidder -void WorldSession::SendAuctionCancelledToBidderMail( AuctionEntry* auction ) +void WorldSession::SendAuctionCancelledToBidderMail(AuctionEntry* auction) { uint64 bidder_guid = MAKE_NEW_GUID(auction->bidder, 0, HIGHGUID_PLAYER); Player *bidder = objmgr.GetPlayer(bidder_guid); uint32 bidder_accId = 0; - if(!bidder) + if (!bidder) bidder_accId = objmgr.GetPlayerAccountIdByGUID(bidder_guid); // bidder exist - if(bidder || bidder_accId) + if (bidder || bidder_accId) { std::ostringstream msgAuctionCancelledSubject; msgAuctionCancelledSubject << auction->item_template << ":0:" << AUCTION_CANCELLED_TO_BIDDER; @@ -155,7 +155,7 @@ void WorldSession::SendAuctionCancelledToBidderMail( AuctionEntry* auction ) } //this void creates new auction and adds auction to some auctionhouse -void WorldSession::HandleAuctionSellItem( WorldPacket & recv_data ) +void WorldSession::HandleAuctionSellItem(WorldPacket & recv_data) { uint64 auctioneer, item; uint32 etime, bid, buyout; @@ -169,21 +169,24 @@ void WorldSession::HandleAuctionSellItem( WorldPacket & recv_data ) Creature *pCreature = GetPlayer()->GetNPCIfCanInteractWith(auctioneer,UNIT_NPC_FLAG_AUCTIONEER); if (!pCreature) { - sLog.outDebug( "WORLD: HandleAuctionSellItem - Unit (GUID: %u) not found or you can't interact with him.", uint32(GUID_LOPART(auctioneer)) ); + sLog.outDebug("WORLD: HandleAuctionSellItem - Unit (GUID: %u) not found or you can't interact with him.", uint32(GUID_LOPART(auctioneer))); return; } AuctionHouseEntry const* auctionHouseEntry = AuctionHouseMgr::GetAuctionHouseEntry(pCreature->getFaction()); - if(!auctionHouseEntry) + if (!auctionHouseEntry) { - sLog.outDebug( "WORLD: HandleAuctionSellItem - Unit (GUID: %u) has wrong faction.", uint32(GUID_LOPART(auctioneer)) ); + sLog.outDebug("WORLD: HandleAuctionSellItem - Unit (GUID: %u) has wrong faction.", uint32(GUID_LOPART(auctioneer))); return; } + sLog.outDebug("WORLD: HandleAuctionSellItem - ETIME: %u", etime); // client send time in minutes, convert to common used sec time etime *= MINUTE; + sLog.outDebug("WORLD: HandleAuctionSellItem - ETIME: %u", etime); + // client understand only 3 auction time switch(etime) { @@ -196,25 +199,25 @@ void WorldSession::HandleAuctionSellItem( WorldPacket & recv_data ) } // remove fake death - if(GetPlayer()->hasUnitState(UNIT_STAT_DIED)) + if (GetPlayer()->hasUnitState(UNIT_STAT_DIED)) GetPlayer()->RemoveAurasByType(SPELL_AURA_FEIGN_DEATH); - Item *it = pl->GetItemByGuid( item ); + Item *it = pl->GetItemByGuid(item); //do not allow to sell already auctioned items - if(auctionmgr.GetAItem(GUID_LOPART(item))) + if (auctionmgr.GetAItem(GUID_LOPART(item))) { sLog.outError("AuctionError, player %s is sending item id: %u, but item is already in another auction", pl->GetName(), GUID_LOPART(item)); SendAuctionCommandResult(0, AUCTION_SELL_ITEM, AUCTION_INTERNAL_ERROR); return; } // prevent sending bag with items (cheat: can be placed in bag after adding equiped empty bag to auction) - if(!it) + if (!it) { SendAuctionCommandResult(0, AUCTION_SELL_ITEM, AUCTION_ITEM_NOT_FOUND); return; } - if(!it->CanBeTraded()) + if (!it->CanBeTraded()) { SendAuctionCommandResult(0, AUCTION_SELL_ITEM, AUCTION_INTERNAL_ERROR); return; @@ -226,29 +229,29 @@ void WorldSession::HandleAuctionSellItem( WorldPacket & recv_data ) return; } - AuctionHouseObject* auctionHouse = auctionmgr.GetAuctionsMap( pCreature->getFaction() ); + AuctionHouseObject* auctionHouse = auctionmgr.GetAuctionsMap(pCreature->getFaction()); //we have to take deposit : - uint32 deposit = auctionmgr.GetAuctionDeposit( auctionHouseEntry, etime, it ); - if ( pl->GetMoney() < deposit ) + uint32 deposit = auctionmgr.GetAuctionDeposit(auctionHouseEntry, etime, it); + if (pl->GetMoney() < deposit) { SendAuctionCommandResult(0, AUCTION_SELL_ITEM, AUCTION_NOT_ENOUGHT_MONEY); return; } - if( GetSecurity() > SEC_PLAYER && sWorld.getConfig(CONFIG_GM_LOG_TRADE) ) + if (GetSecurity() > SEC_PLAYER && sWorld.getConfig(CONFIG_GM_LOG_TRADE)) { sLog.outCommand(GetAccountId(),"GM %s (Account: %u) create auction: %s (Entry: %u Count: %u)", GetPlayerName(),GetAccountId(),it->GetProto()->Name1,it->GetEntry(),it->GetCount()); } - pl->ModifyMoney( -int32(deposit) ); + pl->ModifyMoney(-int32(deposit)); uint32 auction_time = uint32(etime * sWorld.getRate(RATE_AUCTION_TIME)); AuctionEntry *AH = new AuctionEntry; AH->Id = objmgr.GenerateAuctionID(); - if(sWorld.getConfig(CONFIG_ALLOW_TWO_SIDE_INTERACTION_AUCTION)) + if (sWorld.getConfig(CONFIG_ALLOW_TWO_SIDE_INTERACTION_AUCTION)) AH->auctioneer = 23442; else AH->auctioneer = GUID_LOPART(auctioneer); @@ -264,10 +267,10 @@ void WorldSession::HandleAuctionSellItem( WorldPacket & recv_data ) AH->auctionHouseEntry = auctionHouseEntry; sLog.outDetail("selling item %u to auctioneer %u with initial bid %u with buyout %u and with time %u (in sec) in auctionhouse %u", GUID_LOPART(item), AH->auctioneer, bid, buyout, auction_time, AH->GetHouseId()); + auctionmgr.AddAItem(it); auctionHouse->AddAuction(AH); - auctionmgr.AddAItem(it); - pl->MoveItemFromInventory( it->GetBagSlot(), it->GetSlot(), true); + pl->MoveItemFromInventory(it->GetBagSlot(), it->GetSlot(), true); CharacterDatabase.BeginTransaction(); it->DeleteFromInventoryDB(); @@ -280,7 +283,7 @@ void WorldSession::HandleAuctionSellItem( WorldPacket & recv_data ) } //this function is called when client bids or buys out auction -void WorldSession::HandleAuctionPlaceBid( WorldPacket & recv_data ) +void WorldSession::HandleAuctionPlaceBid(WorldPacket & recv_data) { uint64 auctioneer; uint32 auctionId; @@ -294,37 +297,37 @@ void WorldSession::HandleAuctionPlaceBid( WorldPacket & recv_data ) Creature *pCreature = GetPlayer()->GetNPCIfCanInteractWith(auctioneer,UNIT_NPC_FLAG_AUCTIONEER); if (!pCreature) { - sLog.outDebug( "WORLD: HandleAuctionPlaceBid - Unit (GUID: %u) not found or you can't interact with him.", uint32(GUID_LOPART(auctioneer)) ); + sLog.outDebug("WORLD: HandleAuctionPlaceBid - Unit (GUID: %u) not found or you can't interact with him.", uint32(GUID_LOPART(auctioneer))); return; } // remove fake death - if(GetPlayer()->hasUnitState(UNIT_STAT_DIED)) + if (GetPlayer()->hasUnitState(UNIT_STAT_DIED)) GetPlayer()->RemoveAurasByType(SPELL_AURA_FEIGN_DEATH); - AuctionHouseObject* auctionHouse = auctionmgr.GetAuctionsMap( pCreature->getFaction() ); + AuctionHouseObject* auctionHouse = auctionmgr.GetAuctionsMap(pCreature->getFaction()); AuctionEntry *auction = auctionHouse->GetAuction(auctionId); Player *pl = GetPlayer(); - if( !auction || auction->owner == pl->GetGUIDLow() ) + if (!auction || auction->owner == pl->GetGUIDLow()) { //you cannot bid your own auction: - SendAuctionCommandResult( 0, AUCTION_PLACE_BID, CANNOT_BID_YOUR_AUCTION_ERROR ); + SendAuctionCommandResult(0, AUCTION_PLACE_BID, CANNOT_BID_YOUR_AUCTION_ERROR); return; } // impossible have online own another character (use this for speedup check in case online owner) Player* auction_owner = objmgr.GetPlayer(MAKE_NEW_GUID(auction->owner, 0, HIGHGUID_PLAYER)); - if( !auction_owner && objmgr.GetPlayerAccountIdByGUID(MAKE_NEW_GUID(auction->owner, 0, HIGHGUID_PLAYER)) == pl->GetSession()->GetAccountId()) + if (!auction_owner && objmgr.GetPlayerAccountIdByGUID(MAKE_NEW_GUID(auction->owner, 0, HIGHGUID_PLAYER)) == pl->GetSession()->GetAccountId()) { //you cannot bid your another character auction: - SendAuctionCommandResult( 0, AUCTION_PLACE_BID, CANNOT_BID_YOUR_AUCTION_ERROR ); + SendAuctionCommandResult(0, AUCTION_PLACE_BID, CANNOT_BID_YOUR_AUCTION_ERROR); return; } // cheating - if(price <= auction->bid) + if (price <= auction->bid) return; // price too low for next bid if not buyout @@ -346,20 +349,20 @@ void WorldSession::HandleAuctionPlaceBid( WorldPacket & recv_data ) { if (auction->bidder > 0) { - if ( auction->bidder == pl->GetGUIDLow() ) + if (auction->bidder == pl->GetGUIDLow()) { - pl->ModifyMoney( -int32(price - auction->bid)); + pl->ModifyMoney(-int32(price - auction->bid)); } else { // mail to last bidder and return money - SendAuctionOutbiddedMail( auction , price ); - pl->ModifyMoney( -int32(price) ); + SendAuctionOutbiddedMail(auction , price); + pl->ModifyMoney(-int32(price)); } } else { - pl->ModifyMoney( -int32(price) ); + pl->ModifyMoney(-int32(price)); } auction->bidder = pl->GetGUIDLow(); auction->bid = price; @@ -368,38 +371,36 @@ void WorldSession::HandleAuctionPlaceBid( WorldPacket & recv_data ) // after this update we should save player's money ... CharacterDatabase.PExecute("UPDATE auctionhouse SET buyguid = '%u',lastbid = '%u' WHERE id = '%u'", auction->bidder, auction->bid, auction->Id); - SendAuctionCommandResult(auction->Id, AUCTION_PLACE_BID, AUCTION_OK, 0 ); + SendAuctionCommandResult(auction->Id, AUCTION_PLACE_BID, AUCTION_OK, 0); } else { //buyout: - if (pl->GetGUIDLow() == auction->bidder ) + if (pl->GetGUIDLow() == auction->bidder) { pl->ModifyMoney(-int32(auction->buyout - auction->bid)); } else { pl->ModifyMoney(-int32(auction->buyout)); - if ( auction->bidder ) //buyout for bidded auction .. + if (auction->bidder) //buyout for bidded auction .. { - SendAuctionOutbiddedMail( auction, auction->buyout ); + SendAuctionOutbiddedMail(auction, auction->buyout); } } auction->bidder = pl->GetGUIDLow(); auction->bid = auction->buyout; GetPlayer()->GetAchievementMgr().UpdateAchievementCriteria(ACHIEVEMENT_CRITERIA_TYPE_HIGHEST_AUCTION_BID, auction->buyout); - auctionmgr.SendAuctionSalePendingMail( auction ); - auctionmgr.SendAuctionSuccessfulMail( auction ); - auctionmgr.SendAuctionWonMail( auction ); + auctionmgr.SendAuctionSalePendingMail(auction); + auctionmgr.SendAuctionSuccessfulMail(auction); + auctionmgr.SendAuctionWonMail(auction); SendAuctionCommandResult(auction->Id, AUCTION_PLACE_BID, AUCTION_OK); - - auctionmgr.RemoveAItem(auction->item_guidlow); - auctionHouse->RemoveAuction(auction->Id); auction->DeleteFromDB(); - - delete auction; + uint32 item_template = auction->item_template; + auctionmgr.RemoveAItem(auction->item_guidlow); + auctionHouse->RemoveAuction(auction, item_template); } CharacterDatabase.BeginTransaction(); pl->SaveInventoryAndGoldToDB(); @@ -407,26 +408,26 @@ void WorldSession::HandleAuctionPlaceBid( WorldPacket & recv_data ) } //this void is called when auction_owner cancels his auction -void WorldSession::HandleAuctionRemoveItem( WorldPacket & recv_data ) +void WorldSession::HandleAuctionRemoveItem(WorldPacket & recv_data) { uint64 auctioneer; uint32 auctionId; recv_data >> auctioneer; recv_data >> auctionId; - //sLog.outDebug( "Cancel AUCTION AuctionID: %u", auctionId); + //sLog.outDebug("Cancel AUCTION AuctionID: %u", auctionId); Creature *pCreature = GetPlayer()->GetNPCIfCanInteractWith(auctioneer,UNIT_NPC_FLAG_AUCTIONEER); if (!pCreature) { - sLog.outDebug( "WORLD: HandleAuctionRemoveItem - Unit (GUID: %u) not found or you can't interact with him.", uint32(GUID_LOPART(auctioneer)) ); + sLog.outDebug("WORLD: HandleAuctionRemoveItem - Unit (GUID: %u) not found or you can't interact with him.", uint32(GUID_LOPART(auctioneer))); return; } // remove fake death - if(GetPlayer()->hasUnitState(UNIT_STAT_DIED)) + if (GetPlayer()->hasUnitState(UNIT_STAT_DIED)) GetPlayer()->RemoveAurasByType(SPELL_AURA_FEIGN_DEATH); - AuctionHouseObject* auctionHouse = auctionmgr.GetAuctionsMap( pCreature->getFaction() ); + AuctionHouseObject* auctionHouse = auctionmgr.GetAuctionsMap(pCreature->getFaction()); AuctionEntry *auction = auctionHouse->GetAuction(auctionId); Player *pl = GetPlayer(); @@ -439,11 +440,11 @@ void WorldSession::HandleAuctionRemoveItem( WorldPacket & recv_data ) if (auction->bidder > 0) // If we have a bidder, we have to send him the money he paid { uint32 auctionCut = auction->GetAuctionCut(); - if ( pl->GetMoney() < auctionCut ) //player doesn't have enough money, maybe message needed + if (pl->GetMoney() < auctionCut) //player doesn't have enough money, maybe message needed return; //some auctionBidderNotification would be needed, but don't know that parts.. - SendAuctionCancelledToBidderMail( auction ); - pl->ModifyMoney( -int32(auctionCut) ); + SendAuctionCancelledToBidderMail(auction); + pl->ModifyMoney(-int32(auctionCut)); } // Return the item by mail std::ostringstream msgAuctionCanceledOwner; @@ -458,32 +459,32 @@ void WorldSession::HandleAuctionRemoveItem( WorldPacket & recv_data ) else { sLog.outError("Auction id: %u has non-existed item (item guid : %u)!!!", auction->Id, auction->item_guidlow); - SendAuctionCommandResult( 0, AUCTION_CANCEL, AUCTION_INTERNAL_ERROR ); + SendAuctionCommandResult(0, AUCTION_CANCEL, AUCTION_INTERNAL_ERROR); return; } } else { - SendAuctionCommandResult( 0, AUCTION_CANCEL, AUCTION_INTERNAL_ERROR ); + SendAuctionCommandResult(0, AUCTION_CANCEL, AUCTION_INTERNAL_ERROR); //this code isn't possible ... maybe there should be assert - sLog.outError("CHEATER : %u, he tried to cancel auction (id: %u) of another player, or auction is NULL", pl->GetGUIDLow(), auctionId ); + sLog.outError("CHEATER : %u, he tried to cancel auction (id: %u) of another player, or auction is NULL", pl->GetGUIDLow(), auctionId); return; } //inform player, that auction is removed - SendAuctionCommandResult( auction->Id, AUCTION_CANCEL, AUCTION_OK ); + SendAuctionCommandResult(auction->Id, AUCTION_CANCEL, AUCTION_OK); // Now remove the auction CharacterDatabase.BeginTransaction(); - auction->DeleteFromDB(); pl->SaveInventoryAndGoldToDB(); CharacterDatabase.CommitTransaction(); - auctionmgr.RemoveAItem( auction->item_guidlow ); - auctionHouse->RemoveAuction( auction->Id ); - delete auction; + auction->DeleteFromDB(); + uint32 item_template = auction->item_template; + auctionmgr.RemoveAItem(auction->item_guidlow); + auctionHouse->RemoveAuction(auction, item_template); } //called when player lists his bids -void WorldSession::HandleAuctionListBidderItems( WorldPacket & recv_data ) +void WorldSession::HandleAuctionListBidderItems(WorldPacket & recv_data) { uint64 guid; //NPC guid uint32 listfrom; //page of auctions @@ -492,37 +493,37 @@ void WorldSession::HandleAuctionListBidderItems( WorldPacket & recv_data ) recv_data >> guid; recv_data >> listfrom; // not used in fact (this list not have page control in client) recv_data >> outbiddedCount; - if (recv_data.size() != (16 + outbiddedCount * 4 )) + if (recv_data.size() != (16 + outbiddedCount * 4)) { - sLog.outError("Client sent bad opcode!!! with count: %u and size : %lu (must be: %u)", outbiddedCount, (unsigned long)recv_data.size(),(16 + outbiddedCount * 4 )); + sLog.outError("Client sent bad opcode!!! with count: %u and size : %lu (must be: %u)", outbiddedCount, (unsigned long)recv_data.size(),(16 + outbiddedCount * 4)); outbiddedCount = 0; } Creature *pCreature = GetPlayer()->GetNPCIfCanInteractWith(guid,UNIT_NPC_FLAG_AUCTIONEER); if (!pCreature) { - sLog.outDebug( "WORLD: HandleAuctionListBidderItems - Unit (GUID: %u) not found or you can't interact with him.", uint32(GUID_LOPART(guid)) ); + sLog.outDebug("WORLD: HandleAuctionListBidderItems - Unit (GUID: %u) not found or you can't interact with him.", uint32(GUID_LOPART(guid))); return; } // remove fake death - if(GetPlayer()->hasUnitState(UNIT_STAT_DIED)) + if (GetPlayer()->hasUnitState(UNIT_STAT_DIED)) GetPlayer()->RemoveAurasByType(SPELL_AURA_FEIGN_DEATH); - AuctionHouseObject* auctionHouse = auctionmgr.GetAuctionsMap( pCreature->getFaction() ); + AuctionHouseObject* auctionHouse = auctionmgr.GetAuctionsMap(pCreature->getFaction()); - WorldPacket data( SMSG_AUCTION_BIDDER_LIST_RESULT, (4+4+4) ); + WorldPacket data(SMSG_AUCTION_BIDDER_LIST_RESULT, (4+4+4)); Player *pl = GetPlayer(); data << (uint32) 0; //add 0 as count uint32 count = 0; uint32 totalcount = 0; - while ( outbiddedCount > 0) //add all data, which client requires + while (outbiddedCount > 0) //add all data, which client requires { --outbiddedCount; uint32 outbiddedAuctionId; recv_data >> outbiddedAuctionId; - AuctionEntry * auction = auctionHouse->GetAuction( outbiddedAuctionId ); - if ( auction && auction->BuildAuctionInfo(data)) + AuctionEntry * auction = auctionHouse->GetAuction(outbiddedAuctionId); + if (auction && auction->BuildAuctionInfo(data)) { ++totalcount; ++count; @@ -530,14 +531,14 @@ void WorldSession::HandleAuctionListBidderItems( WorldPacket & recv_data ) } auctionHouse->BuildListBidderItems(data,pl,count,totalcount); - data.put<uint32>( 0, count ); // add count to placeholder + data.put<uint32>(0, count); // add count to placeholder data << totalcount; data << (uint32)300; //unk 2.3.0 SendPacket(&data); } //this void sends player info about his auctions -void WorldSession::HandleAuctionListOwnerItems( WorldPacket & recv_data ) +void WorldSession::HandleAuctionListOwnerItems(WorldPacket & recv_data) { uint32 listfrom; uint64 guid; @@ -548,17 +549,17 @@ void WorldSession::HandleAuctionListOwnerItems( WorldPacket & recv_data ) Creature *pCreature = GetPlayer()->GetNPCIfCanInteractWith(guid,UNIT_NPC_FLAG_AUCTIONEER); if (!pCreature) { - sLog.outDebug( "WORLD: HandleAuctionListOwnerItems - Unit (GUID: %u) not found or you can't interact with him.", uint32(GUID_LOPART(guid)) ); + sLog.outDebug("WORLD: HandleAuctionListOwnerItems - Unit (GUID: %u) not found or you can't interact with him.", uint32(GUID_LOPART(guid))); return; } // remove fake death - if(GetPlayer()->hasUnitState(UNIT_STAT_DIED)) + if (GetPlayer()->hasUnitState(UNIT_STAT_DIED)) GetPlayer()->RemoveAurasByType(SPELL_AURA_FEIGN_DEATH); - AuctionHouseObject* auctionHouse = auctionmgr.GetAuctionsMap( pCreature->getFaction() ); + AuctionHouseObject* auctionHouse = auctionmgr.GetAuctionsMap(pCreature->getFaction()); - WorldPacket data( SMSG_AUCTION_OWNER_LIST_RESULT, (4+4+4) ); + WorldPacket data(SMSG_AUCTION_OWNER_LIST_RESULT, (4+4+4)); data << (uint32) 0; // amount place holder uint32 count = 0; @@ -572,7 +573,7 @@ void WorldSession::HandleAuctionListOwnerItems( WorldPacket & recv_data ) } //this void is called when player clicks on search button -void WorldSession::HandleAuctionListItems( WorldPacket & recv_data ) +void WorldSession::HandleAuctionListItems(WorldPacket & recv_data) { std::string searchedname; uint8 levelmin, levelmax, usable; @@ -590,27 +591,27 @@ void WorldSession::HandleAuctionListItems( WorldPacket & recv_data ) Creature *pCreature = GetPlayer()->GetNPCIfCanInteractWith(guid,UNIT_NPC_FLAG_AUCTIONEER); if (!pCreature) { - sLog.outDebug( "WORLD: HandleAuctionListItems - Unit (GUID: %u) not found or you can't interact with him.", uint32(GUID_LOPART(guid)) ); + sLog.outDebug("WORLD: HandleAuctionListItems - Unit (GUID: %u) not found or you can't interact with him.", uint32(GUID_LOPART(guid))); return; } // remove fake death - if(GetPlayer()->hasUnitState(UNIT_STAT_DIED)) + if (GetPlayer()->hasUnitState(UNIT_STAT_DIED)) GetPlayer()->RemoveAurasByType(SPELL_AURA_FEIGN_DEATH); - AuctionHouseObject* auctionHouse = auctionmgr.GetAuctionsMap( pCreature->getFaction() ); + AuctionHouseObject* auctionHouse = auctionmgr.GetAuctionsMap(pCreature->getFaction()); //sLog.outDebug("Auctionhouse search (GUID: %u TypeId: %u)", , list from: %u, searchedname: %s, levelmin: %u, levelmax: %u, auctionSlotID: %u, auctionMainCategory: %u, auctionSubCategory: %u, quality: %u, usable: %u", // GUID_LOPART(guid),GuidHigh2TypeId(GUID_HIPART(guid)), listfrom, searchedname.c_str(), levelmin, levelmax, auctionSlotID, auctionMainCategory, auctionSubCategory, quality, usable); - WorldPacket data( SMSG_AUCTION_LIST_RESULT, (4+4+4) ); + WorldPacket data(SMSG_AUCTION_LIST_RESULT, (4+4+4)); uint32 count = 0; uint32 totalcount = 0; data << (uint32) 0; // converting string that we try to find to lower case std::wstring wsearchedname; - if(!Utf8toWStr(searchedname,wsearchedname)) + if (!Utf8toWStr(searchedname,wsearchedname)) return; wstrToLower(wsearchedname); @@ -626,7 +627,7 @@ void WorldSession::HandleAuctionListItems( WorldPacket & recv_data ) SendPacket(&data); } -void WorldSession::HandleAuctionListPendingSales( WorldPacket & recv_data ) +void WorldSession::HandleAuctionListPendingSales(WorldPacket & recv_data) { sLog.outDebug("CMSG_AUCTION_LIST_PENDING_SALES"); recv_data.hexlike(); @@ -635,7 +636,7 @@ void WorldSession::HandleAuctionListPendingSales( WorldPacket & recv_data ) WorldPacket data(SMSG_AUCTION_LIST_PENDING_SALES, 4); data << uint32(count); // count - /*for(uint32 i = 0; i < count; ++i) + /*for (uint32 i = 0; i < count; ++i) { data << ""; // string data << ""; // string |