@ -25,67 +25,61 @@ namespace mwmp
void Do ( PlayerPacket & packet , Player & player ) override
{
LOG_MESSAGE_SIMPLE ( Log : : LOG_INFO , " Received %s from %s " , strPacketID . c_str ( ) , player . npc . mName . c_str ( ) ) ;
LOG_APPEND ( Log : : LOG_INFO , " - Moved to %s " , player . cell . getDescription ( ) . c_str ( ) ) ;
if ( ! player . creatureStats . mDead )
{
LOG_APPEND ( Log : : LOG_INFO , " - Moved to %s " , player . cell . getDescription ( ) . c_str ( ) ) ;
Script : : Call < Script : : CallbackIdentity ( " OnPlayerCellChange " ) > ( player . getId ( ) ) ;
player . exchangeFullInfo = true ;
player . exchangeFullInfo = true ;
player . forEachLoaded ( [ this ] ( Player * pl , Player * other ) {
player . forEachLoaded ( [ this ] ( Player * pl , Player * other ) {
LOG_APPEND ( Log : : LOG_INFO , " - Started information exchange with %s " , other - > npc . mName . c_str ( ) ) ;
LOG_APPEND ( Log : : LOG_INFO , " - Started information exchange with %s " , other - > npc . mName . c_str ( ) ) ;
other - > exchangeFullInfo = true ;
other - > exchangeFullInfo = true ;
playerController - > GetPacket ( ID_PLAYER_STATS_DYNAMIC ) - > setPlayer ( other ) ;
playerController - > GetPacket ( ID_PLAYER_ATTRIBUTE ) - > setPlayer ( other ) ;
playerController - > GetPacket ( ID_PLAYER_POSITION ) - > setPlayer ( other ) ;
playerController - > GetPacket ( ID_PLAYER_SKILL ) - > setPlayer ( other ) ;
playerController - > GetPacket ( ID_PLAYER_EQUIPMENT ) - > setPlayer ( other ) ;
playerController - > GetPacket ( ID_PLAYER_ANIM_FLAGS ) - > setPlayer ( other ) ;
playerController - > GetPacket ( ID_PLAYER_SHAPESHIFT ) - > setPlayer ( other ) ;
playerController - > GetPacket ( ID_PLAYER_STATS_DYNAMIC ) - > setPlayer ( other ) ;
playerController - > GetPacket ( ID_PLAYER_ATTRIBUTE ) - > setPlayer ( other ) ;
playerController - > GetPacket ( ID_PLAYER_POSITION ) - > setPlayer ( other ) ;
playerController - > GetPacket ( ID_PLAYER_SKILL ) - > setPlayer ( other ) ;
playerController - > GetPacket ( ID_PLAYER_EQUIPMENT ) - > setPlayer ( other ) ;
playerController - > GetPacket ( ID_PLAYER_ANIM_FLAGS ) - > setPlayer ( other ) ;
playerController - > GetPacket ( ID_PLAYER_SHAPESHIFT ) - > setPlayer ( other ) ;
playerController - > GetPacket ( ID_PLAYER_STATS_DYNAMIC ) - > Send ( pl - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_ATTRIBUTE ) - > Send ( pl - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_POSITION ) - > Send ( pl - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_SKILL ) - > Send ( pl - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_EQUIPMENT ) - > Send ( pl - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_ANIM_FLAGS ) - > Send ( pl - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_SHAPESHIFT ) - > Send ( pl - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_STATS_DYNAMIC ) - > Send ( pl - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_ATTRIBUTE ) - > Send ( pl - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_POSITION ) - > Send ( pl - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_SKILL ) - > Send ( pl - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_EQUIPMENT ) - > Send ( pl - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_ANIM_FLAGS ) - > Send ( pl - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_SHAPESHIFT ) - > Send ( pl - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_STATS_DYNAMIC ) - > setPlayer ( pl ) ;
playerController - > GetPacket ( ID_PLAYER_ATTRIBUTE ) - > setPlayer ( pl ) ;
playerController - > GetPacket ( ID_PLAYER_SKILL ) - > setPlayer ( pl ) ;
playerController - > GetPacket ( ID_PLAYER_EQUIPMENT ) - > setPlayer ( pl ) ;
playerController - > GetPacket ( ID_PLAYER_ANIM_FLAGS ) - > setPlayer ( pl ) ;
playerController - > GetPacket ( ID_PLAYER_SHAPESHIFT ) - > setPlayer ( pl ) ;
playerController - > GetPacket ( ID_PLAYER_STATS_DYNAMIC ) - > setPlayer ( pl ) ;
playerController - > GetPacket ( ID_PLAYER_ATTRIBUTE ) - > setPlayer ( pl ) ;
playerController - > GetPacket ( ID_PLAYER_SKILL ) - > setPlayer ( pl ) ;
playerController - > GetPacket ( ID_PLAYER_EQUIPMENT ) - > setPlayer ( pl ) ;
playerController - > GetPacket ( ID_PLAYER_ANIM_FLAGS ) - > setPlayer ( pl ) ;
playerController - > GetPacket ( ID_PLAYER_SHAPESHIFT ) - > setPlayer ( pl ) ;
playerController - > GetPacket ( ID_PLAYER_STATS_DYNAMIC ) - > Send ( other - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_ATTRIBUTE ) - > Send ( other - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_SKILL ) - > Send ( other - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_EQUIPMENT ) - > Send ( other - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_ANIM_FLAGS ) - > Send ( other - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_SHAPESHIFT ) - > Send ( other - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_STATS_DYNAMIC ) - > Send ( other - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_ATTRIBUTE ) - > Send ( other - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_SKILL ) - > Send ( other - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_EQUIPMENT ) - > Send ( other - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_ANIM_FLAGS ) - > Send ( other - > guid ) ;
playerController - > GetPacket ( ID_PLAYER_SHAPESHIFT ) - > Send ( other - > guid ) ;
other - > exchangeFullInfo = false ;
other - > exchangeFullInfo = false ;
LOG_APPEND ( Log : : LOG_INFO , " - Finished information exchange with %s " , other - > npc . mName . c_str ( ) ) ;
} ) ;
LOG_APPEND ( Log : : LOG_INFO , " - Finished information exchange with %s " , other - > npc . mName . c_str ( ) ) ;
} ) ;
playerController - > GetPacket ( ID_PLAYER_POSITION ) - > setPlayer ( & player ) ;
playerController - > GetPacket ( ID_PLAYER_POSITION ) - > Send ( ) ;
packet . setPlayer ( & player ) ;
packet . Send ( true ) ; //send to other clients
playerController - > GetPacket ( ID_PLAYER_POSITION ) - > setPlayer ( & player ) ;
playerController - > GetPacket ( ID_PLAYER_POSITION ) - > Send ( ) ;
packet . setPlayer ( & player ) ;
packet . Send ( true ) ; //send to other clients
Script : : Call < Script : : CallbackIdentity ( " OnPlayerCellChange " ) > ( player . getId ( ) ) ;
LOG_APPEND ( Log : : LOG_INFO , " - Finished processing ID_PLAYER_CELL_CHANGE " , player . cell . getDescription ( ) . c_str ( ) ) ;
LOG_APPEND ( Log : : LOG_INFO , " - Finished processing ID_PLAYER_CELL_CHANGE " , player . cell . getDescription ( ) . c_str ( ) ) ;
player . exchangeFullInfo = false ;
}
else
LOG_APPEND ( Log : : LOG_INFO , " - Ignored because %s is dead " , player . npc . mName . c_str ( ) ) ;
player . exchangeFullInfo = false ;
}
} ;
}