[8382] Implement ByteArray functions for skip read of fields not needed for server in received packets. Author: VladimirMangos

* Use this fucntions in some case.
    * Change some packets to form: read fields first check later for better control recieved packets structure.
    * Fix CMSG_STAND_STATE_CHANGE packet structure to more correct.

--HG--
branch : trunk
This commit is contained in:
megamage
2009-08-19 16:54:52 -05:00
parent 012d6fa865
commit edc05f2c19
8 changed files with 76 additions and 40 deletions

View File

@@ -608,8 +608,6 @@ void WorldSession::HandleGuildRankOpcode(WorldPacket& recvPacket)
std::string rankname;
uint32 rankId;
uint32 rights, MoneyPerDay;
uint32 BankRights;
uint32 BankSlotPerDay;
//sLog.outDebug("WORLD: Received CMSG_GUILD_RANK");
@@ -633,10 +631,14 @@ void WorldSession::HandleGuildRankOpcode(WorldPacket& recvPacket)
for (int i = 0; i < GUILD_BANK_MAX_TABS; ++i)
{
uint32 BankRights;
uint32 BankSlotPerDay;
recvPacket >> BankRights;
recvPacket >> BankSlotPerDay;
guild->SetBankRightsAndSlots(rankId, uint8(i), uint16(BankRights & 0xFF), uint16(BankSlotPerDay), true);
}
sLog.outDebug("WORLD: Changed RankName to %s , Rights to 0x%.4X", rankname.c_str(), rights);
guild->SetBankMoneyPerDay(rankId, MoneyPerDay);