예제 #1
0
void WorldSession::HandlePetitionShowListOpcode(WorldPacket & recvData)
{
    sLog->outDebug(LOG_FILTER_NETWORKIO, "Received CMSG_PETITION_SHOWLIST");
     
	ObjectGuid guid;
	
    guid[1] = recvData.ReadBit();
    guid[7] = recvData.ReadBit();
    guid[2] = recvData.ReadBit();
    guid[5] = recvData.ReadBit();
    guid[4] = recvData.ReadBit();
    guid[0] = recvData.ReadBit();
    guid[3] = recvData.ReadBit();
    guid[6] = recvData.ReadBit();

    recvData.ReadByteSeq(guid[6]);
    recvData.ReadByteSeq(guid[3]);
    recvData.ReadByteSeq(guid[2]);
    recvData.ReadByteSeq(guid[4]);
    recvData.ReadByteSeq(guid[1]);
    recvData.ReadByteSeq(guid[7]);
    recvData.ReadByteSeq(guid[5]);
    recvData.ReadByteSeq(guid[0]);

    Creature* unit = GetPlayer()->GetNPCIfCanInteractWith(guid, UNIT_NPC_FLAG_PETITIONER);
    if (!unit)
    {
        return;
    }

    SendPetitionShowList(guid);
}
예제 #2
0
void WorldSession::HandlePetitionShowListOpcode(WorldPacket& recvData)
{
    sLog->outDebug(LOG_FILTER_NETWORKIO, "Received CMSG_PETITION_SHOWLIST");

    ObjectGuid PetitionGuid;
    
    PetitionGuid[4] = recvData.ReadBit();
    PetitionGuid[3] = recvData.ReadBit();
    PetitionGuid[2] = recvData.ReadBit();
    PetitionGuid[7] = recvData.ReadBit();
    PetitionGuid[6] = recvData.ReadBit();
    PetitionGuid[1] = recvData.ReadBit();
    PetitionGuid[0] = recvData.ReadBit();
    PetitionGuid[5] = recvData.ReadBit();

    recvData.FlushBits();

    recvData.ReadByteSeq(PetitionGuid[5]);
    recvData.ReadByteSeq(PetitionGuid[0]);
    recvData.ReadByteSeq(PetitionGuid[6]);
    recvData.ReadByteSeq(PetitionGuid[2]);
    recvData.ReadByteSeq(PetitionGuid[1]);
    recvData.ReadByteSeq(PetitionGuid[7]);
    recvData.ReadByteSeq(PetitionGuid[3]);
    recvData.ReadByteSeq(PetitionGuid[4]);

    SendPetitionShowList(PetitionGuid);
}
예제 #3
0
void WorldSession::HandlePetitionShowListOpcode(WorldPacket& recvData)
{
    sLog->outDebug(LOG_FILTER_NETWORKIO, "Received CMSG_PETITION_SHOWLIST");

    uint64 guid;
    recvData >> guid;

    SendPetitionShowList(guid);
}
예제 #4
0
void WorldSession::HandlePetitionShowListOpcode(WorldPacket& recvData)
{
    TC_LOG_DEBUG("network", "Received CMSG_PETITION_SHOWLIST");

    ObjectGuid guid;
    recvData >> guid;

    SendPetitionShowList(guid);
}
예제 #5
0
void WorldSession::HandlePetitionShowListOpcode(WorldPacket& recv_data)
{
    DEBUG_LOG("Received CMSG_PETITION_SHOWLIST");
    // recv_data.hexlike();

    ObjectGuid guid;
    recv_data >> guid;

    SendPetitionShowList(guid);
}
예제 #6
0
void WorldSession::HandlePetitionShowListOpcode(WorldPacket & recv_data)
{
    sLog.outDebug("Received CMSG_PETITION_SHOWLIST");       // ok
    //recv_data.hexlike();

    uint64 guid;
    recv_data >> guid;

    SendPetitionShowList(guid);
}
예제 #7
0
void WorldSession::HandlePetitionShowListOpcode(WorldPacket& recvData)
{
    TC_LOG_DEBUG("network", "Received CMSG_PETITION_SHOWLIST");

    ObjectGuid guid;

    recvData.ReadGuidMask(guid, 1, 7, 2, 5, 4, 0, 3, 6);

    recvData.ReadGuidBytes(guid, 6, 3, 2, 4, 1, 7, 5, 0);

    Creature* unit = GetPlayer()->GetNPCIfCanInteractWith(guid, UNIT_NPC_FLAG_PETITIONER);
    if (!unit)
    {
        TC_LOG_DEBUG("network", "WORLD: HandlePetitionerShowListOpcode - Unit (GUID: %u) not found or you can't interact with him.", uint32(GUID_LOPART(guid)));
        return;
    }

    SendPetitionShowList(guid);
}
예제 #8
0
void WorldSession::HandlePetitionShowList(WorldPackets::Petition::PetitionShowList& packet)
{
    SendPetitionShowList(packet.PetitionUnit);
}