[8131] Some anti-cheating server side checks. Author: Lightguard
* Loot in ghost state
* Apply duplicate glyphs.
--HG--
branch : trunk
This commit is contained in:
@@ -259,6 +259,10 @@ void WorldSession::HandleLootOpcode( WorldPacket & recv_data )
|
||||
uint64 guid;
|
||||
recv_data >> guid;
|
||||
|
||||
// Check possible cheat
|
||||
if(!_player->isAlive())
|
||||
return;
|
||||
|
||||
GetPlayer()->SendLoot(guid, LOOT_CORPSE);
|
||||
}
|
||||
|
||||
|
||||
@@ -4713,6 +4713,14 @@ SpellCastResult Spell::CheckCast(bool strict)
|
||||
|
||||
break;
|
||||
}
|
||||
case SPELL_EFFECT_APPLY_GLYPH:
|
||||
{
|
||||
uint32 glyphId = m_spellInfo->EffectMiscValue[i];
|
||||
if(GlyphPropertiesEntry const *gp = sGlyphPropertiesStore.LookupEntry(glyphId))
|
||||
if(m_caster->HasAura(gp->SpellId))
|
||||
return SPELL_FAILED_UNIQUE_GLYPH;
|
||||
break;
|
||||
}
|
||||
case SPELL_EFFECT_FEED_PET:
|
||||
{
|
||||
if (m_caster->GetTypeId() != TYPEID_PLAYER)
|
||||
|
||||
Reference in New Issue
Block a user