Now safe allow this casts in like way after completed convertion to ObjectGuid use.
Also simplify code in result allowed auto cast to uint64.
Please _not_ add new uint64 storages (local and in structures) for guid values.
Also
* Fixed some amount wrong uses low guids as full player guids.
* Add private without body ObjectGuid(uint32 const&) for catch wrong assigns low guids to ObjectGuid.
In some cases need assign "0" guid, then use ObjectGuid() instead.
* Fixed .pdump commands work.
Also implement NEED_BEFORE_GREED disabling ROLL_VOTE_MASK_NEED
instead skip item as expected in recent client changes.
Thanks to TOM_RUS for help in understanding proper way work.
Hmm, maybe i still do wrong something... ^^
Also count disenchnt roll as greed in ACHIEVEMENT_CRITERIA_TYPE_ROLL_GREED
* Propertly send itemSlot field and use it with looted target for roll selection.
* Remove references to NumberOfPlayers useless data send in args
* Fixed long existed bug with roll show when single player from group can roll item.
* Fixed possible crash at player leave group while item roll
* Fixed wrong item amount in stack in rolls inreasult use non-initilized field as info source.
* Remove unused item guid field from Roll and not lost for nothing item guids for this.
Thanks for help in research to TOM_RUS and j4r0d.
* This must repolve problem with loot.
Before if some mob killed by group member and then leader changed
then group members can't loot this mob body.
* Possible resolve crashes at loot. Now group storage content not dependent from leader changes.
CHECK_PACKET_SIZE was pretty error prone; once it was forgotten mangosd
could crash due to the asserts in ByteBuffer.h. That was exploitable by
malicious players.
Furthermore, there were duplicate checks: Additionally to
CHECK_PACKET_SIZE, the ByteBuffer assertions keept an eye
on not exceeding the packet boundaries - just to crash the server for
sure in such a case.
To prevent memory leaks or other undesirable states, please read in
every handler all variables _before_ doing any concrete handling.
Patch is tested, but can cause problems / unexpected behaviour.
TODO: set raid leader of battleground raid to raid leader who entered BG
TODO: when player leaves group, he is removed from GroupQueueInfo, and for him is created new GroupQueueInfo in normal queue.
Signed-off-by: Triply <triply@getmangos.com>