339 {
341
344 if (!caster || !target)
345 return;
346
347
349 return;
350
352
353
354
355
358
359
361 if (isIncreasedChanceOfFailure)
362 {
363 backfire = 20;
364 failure = 45;
365 }
366
368 if (roll < backfire)
370 else if (roll < backfire + failure)
371 {
374 else
376 }
377 else
379 }
std::int32_t int32
Definition Define.h:103
std::uint32_t uint32
Definition Define.h:107
int32 irand(int32 min, int32 max)
Definition Random.cpp:37
bool roll_chance_i(int chance)
Definition Random.h:63
@ CREATURE_ELITE_NORMAL
Definition SharedDefines.h:2964
CreatureTemplate const * GetCreatureTemplate() const
Definition Creature.h:207
Creature * ToCreature()
Definition Object.h:206
uint32 Id
Definition SpellInfo.h:344
SpellInfo const * GetSpellInfo()
Definition SpellScript.cpp:411
void PreventHitDefaultEffect(SpellEffIndex effIndex)
Definition SpellScript.cpp:590
Item * GetCastItem()
Definition SpellScript.cpp:620
Unit * GetHitUnit()
Definition SpellScript.cpp:448
Unit * GetCaster()
Definition SpellScript.cpp:401
SpellCastResult CastSpell(SpellCastTargets const &targets, SpellInfo const *spellInfo, CustomSpellValues const *value, TriggerCastFlags triggerFlags=TRIGGERED_NONE, Item *castItem=nullptr, AuraEffect const *triggeredByAura=nullptr, ObjectGuid originalCaster=ObjectGuid::Empty)
Definition Unit.cpp:1389
uint8 GetLevel() const
Definition Unit.h:1103
@ SPELL_MIND_CONTROL_CAP
Definition spell_item.cpp:316
@ SPELL_MIND_CONTROL_CAP_CHARM_10S
Definition spell_item.cpp:320
@ SPELL_MIND_CONTROL_CAP_CHARM_30S
Definition spell_item.cpp:319
@ SPELL_DULLARD
Definition spell_item.cpp:321
@ SPELL_MENTAL_BATTLE
Definition spell_item.cpp:318
@ SPELL_AMPLIFICATION_DISH
Definition spell_item.cpp:317
uint32 rank
Definition CreatureData.h:206