Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- void Unit::CastSpell(Unit* Victim,SpellEntry const *spellInfo, bool triggered, Item *castItem, AuraEffect const * triggeredByAura, uint64 originalCaster)
- {
- if (!spellInfo)
- {
- sLog.outError("CastSpell: unknown spell by caster: %s %u)", (GetTypeId() == TYPEID_PLAYER ? "player (GUID:" : "creature (Entry:"),(GetTypeId() == TYPEID_PLAYER ? GetGUIDLow() : GetEntry()));
- return;
- }
- if (!originalCaster && GetTypeId() == TYPEID_UNIT && this->ToCreature()->isTotem() && IsControlledByPlayer())
- if (Unit * owner = GetOwner())
- originalCaster=owner->GetGUID();
- SpellCastTargets targets;
- targets.setUnitTarget(Victim);
- if (castItem)
- sLog.outStaticDebug("WORLD: cast Item spellId - %i", spellInfo->Id);
- if (!originalCaster && triggeredByAura)
- originalCaster = triggeredByAura->GetCasterGUID();
- Spell *spell = new Spell(this, spellInfo, triggered, originalCaster);
- spell->m_CastItem = castItem;
- spell->prepare(&targets, triggeredByAura);
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement