Some 308 changes

This commit is contained in:
tomrus88 2008-12-26 14:21:42 +03:00
parent 5eddba260e
commit a38078d0c2
3 changed files with 69 additions and 32 deletions

View file

@ -170,7 +170,7 @@ bool SpellCastTargets::read ( WorldPacket * data, Unit *caster )
if(!readGUID(*data, m_unitTargetGUID))
return false;
if( m_targetMask & ( TARGET_FLAG_OBJECT | TARGET_FLAG_OBJECT_UNK ))
if( m_targetMask & ( TARGET_FLAG_OBJECT ))
if(!readGUID(*data, m_GOTargetGUID))
return false;
@ -178,6 +178,10 @@ bool SpellCastTargets::read ( WorldPacket * data, Unit *caster )
if(!readGUID(*data, m_itemTargetGUID))
return false;
if( m_targetMask & (TARGET_FLAG_CORPSE | TARGET_FLAG_PVP_CORPSE ) )
if(!readGUID(*data, m_CorpseTargetGUID))
return false;
if( m_targetMask & TARGET_FLAG_SOURCE_LOCATION )
{
if(data->rpos()+4+4+4 > data->size())
@ -190,7 +194,10 @@ bool SpellCastTargets::read ( WorldPacket * data, Unit *caster )
if( m_targetMask & TARGET_FLAG_DEST_LOCATION )
{
if(data->rpos()+4+4+4 > data->size())
if(data->rpos()+1+4+4+4 > data->size())
return false;
if(!readGUID(*data, m_unitTargetGUID))
return false;
*data >> m_destX >> m_destY >> m_destZ;
@ -206,10 +213,6 @@ bool SpellCastTargets::read ( WorldPacket * data, Unit *caster )
*data >> m_strTarget;
}
if( m_targetMask & (TARGET_FLAG_CORPSE | TARGET_FLAG_PVP_CORPSE ) )
if(!readGUID(*data, m_CorpseTargetGUID))
return false;
// find real units/GOs
Update(caster);
return true;
@ -219,7 +222,7 @@ void SpellCastTargets::write ( WorldPacket * data )
{
*data << uint32(m_targetMask);
if( m_targetMask & ( TARGET_FLAG_UNIT | TARGET_FLAG_PVP_CORPSE | TARGET_FLAG_OBJECT | TARGET_FLAG_OBJECT_UNK | TARGET_FLAG_CORPSE | TARGET_FLAG_UNK2 ) )
if( m_targetMask & ( TARGET_FLAG_UNIT | TARGET_FLAG_PVP_CORPSE | TARGET_FLAG_OBJECT | TARGET_FLAG_CORPSE | TARGET_FLAG_UNK2 ) )
{
if(m_targetMask & TARGET_FLAG_UNIT)
{
@ -228,7 +231,7 @@ void SpellCastTargets::write ( WorldPacket * data )
else
*data << uint8(0);
}
else if( m_targetMask & ( TARGET_FLAG_OBJECT | TARGET_FLAG_OBJECT_UNK ) )
else if( m_targetMask & TARGET_FLAG_OBJECT )
{
if(m_GOTarget)
data->append(m_GOTarget->GetPackGUID());
@ -253,7 +256,14 @@ void SpellCastTargets::write ( WorldPacket * data )
*data << m_srcX << m_srcY << m_srcZ;
if( m_targetMask & TARGET_FLAG_DEST_LOCATION )
{
if(m_unitTarget)
data->append(m_unitTarget->GetPackGUID());
else
*data << uint8(0);
*data << m_destX << m_destY << m_destZ;
}
if( m_targetMask & TARGET_FLAG_STRING )
*data << m_strTarget;