*Check movementflag to interrupt casting instead of checking position.

*Also some other fixes about movement flags.

--HG--
branch : trunk
This commit is contained in:
megamage
2009-06-15 12:02:55 -05:00
parent 4d6fb6c8b2
commit b9610f27dd
19 changed files with 120 additions and 118 deletions

View File

@@ -299,9 +299,6 @@ void WorldSession::HandleMovementOpcodes( WorldPacket & recv_data )
plMover->SetPosition(movementInfo.x, movementInfo.y, movementInfo.z, movementInfo.o);
plMover->UpdateFallInformationIfNeed(movementInfo, recv_data.GetOpcode());
if(plMover->isMovingOrTurning())
plMover->RemoveAurasByType(SPELL_AURA_FEIGN_DEATH);
if(movementInfo.z < -500.0f)
{
if(plMover->InBattleGround()
@@ -339,6 +336,13 @@ void WorldSession::HandleMovementOpcodes( WorldPacket & recv_data )
if(mover->m_Vehicle)
return;
mover->GetMap()->CreatureRelocation((Creature*)mover, movementInfo.x, movementInfo.y, movementInfo.z, movementInfo.o);
/*if(mover->canFly())
{
bool flying = mover->IsFlying();
if(flying != ((mover->GetByteValue(UNIT_FIELD_BYTES_1, 3) & 0x02) ? true : false))
mover->SetFlying(flying);
}*/
}
//sLog.outString("Receive Movement Packet %s:", opcodeTable[recv_data.GetOpcode()]);