mirror of
https://github.com/mangosfour/server.git
synced 2025-12-15 10:37:02 +00:00
[8179] Fill spell_check table by data for dummy effect (0 spell family), some code cleanups.
This commit is contained in:
parent
12ee5cdc08
commit
1363605cfc
3 changed files with 167 additions and 33 deletions
|
|
@ -775,7 +775,9 @@ void Spell::EffectDummy(uint32 i)
|
|||
if(!itemTarget && m_caster->GetTypeId()!=TYPEID_PLAYER)
|
||||
return;
|
||||
|
||||
uint32 spell_id = roll_chance_i(50) ? 17269 : 17270;
|
||||
uint32 spell_id = roll_chance_i(50)
|
||||
? 17269 // Create Resonating Skull
|
||||
: 17270; // Create Bone Dust
|
||||
|
||||
m_caster->CastSpell(m_caster, spell_id, true, NULL);
|
||||
return;
|
||||
|
|
@ -838,25 +840,25 @@ void Spell::EffectDummy(uint32 i)
|
|||
if (!m_CastItem) return;
|
||||
m_caster->CastSpell(m_caster, 13166, true, m_CastItem);
|
||||
return;
|
||||
case 23448: // Ultrasafe Transporter: Gadgetzan - backfires
|
||||
case 23448: // Transporter Arrival - Ultrasafe Transporter: Gadgetzan - backfires
|
||||
{
|
||||
int32 r = irand(0, 119);
|
||||
if ( r < 20 ) // 1/6 polymorph
|
||||
if ( r < 20 ) // Transporter Malfunction - 1/6 polymorph
|
||||
m_caster->CastSpell(m_caster, 23444, true);
|
||||
else if ( r < 100 ) // 4/6 evil twin
|
||||
else if ( r < 100 ) // Evil Twin - 4/6 evil twin
|
||||
m_caster->CastSpell(m_caster, 23445, true);
|
||||
else // 1/6 miss the target
|
||||
else // Transporter Malfunction - 1/6 miss the target
|
||||
m_caster->CastSpell(m_caster, 36902, true);
|
||||
return;
|
||||
}
|
||||
case 23453: // Ultrasafe Transporter: Gadgetzan
|
||||
if ( roll_chance_i(50) ) // success
|
||||
case 23453: // Gnomish Transporter - Ultrasafe Transporter: Gadgetzan
|
||||
if ( roll_chance_i(50) ) // Gadgetzan Transporter - success
|
||||
m_caster->CastSpell(m_caster, 23441, true);
|
||||
else // failure
|
||||
else // Gadgetzan Transporter Failure - failure
|
||||
m_caster->CastSpell(m_caster, 23446, true);
|
||||
return;
|
||||
case 23645: // Hourglass Sand
|
||||
m_caster->RemoveAurasDueToSpell(23170);
|
||||
m_caster->RemoveAurasDueToSpell(23170); // Brood Affliction: Bronze
|
||||
return;
|
||||
case 23725: // Gift of Life (warrior bwl trinket)
|
||||
m_caster->CastSpell(m_caster, 23782, true);
|
||||
|
|
@ -874,23 +876,30 @@ void Spell::EffectDummy(uint32 i)
|
|||
|
||||
//5 different spells used depending on mounted speed and if mount can fly or not
|
||||
if (flyspeed >= 4.1f)
|
||||
// Flying Reindeer
|
||||
m_caster->CastSpell(m_caster, 44827, true); //310% flying Reindeer
|
||||
else if (flyspeed >= 3.8f)
|
||||
// Flying Reindeer
|
||||
m_caster->CastSpell(m_caster, 44825, true); //280% flying Reindeer
|
||||
else if (flyspeed >= 1.6f)
|
||||
// Flying Reindeer
|
||||
m_caster->CastSpell(m_caster, 44824, true); //60% flying Reindeer
|
||||
else if (speed >= 2.0f)
|
||||
// Reindeer
|
||||
m_caster->CastSpell(m_caster, 25859, true); //100% ground Reindeer
|
||||
else
|
||||
// Reindeer
|
||||
m_caster->CastSpell(m_caster, 25858, true); //60% ground Reindeer
|
||||
|
||||
return;
|
||||
}
|
||||
//case 26074: // Holiday Cheer
|
||||
// return; -- implemented at client side
|
||||
case 26074: // Holiday Cheer
|
||||
// implemented at client side
|
||||
return;
|
||||
case 28006: // Arcane Cloaking
|
||||
{
|
||||
if (unitTarget && unitTarget->GetTypeId() == TYPEID_PLAYER )
|
||||
// Naxxramas Entry Flag Effect DND
|
||||
m_caster->CastSpell(unitTarget, 29294, true);
|
||||
return;
|
||||
}
|
||||
|
|
@ -910,7 +919,9 @@ void Spell::EffectDummy(uint32 i)
|
|||
if( m_caster->GetTypeId() != TYPEID_PLAYER )
|
||||
return;
|
||||
|
||||
uint32 spell_id = roll_chance_i(50) ? 29277 : 29278;
|
||||
uint32 spell_id = roll_chance_i(50)
|
||||
? 29277 // Summon Purified Helboar Meat
|
||||
: 29278; // Summon Toxic Helboar Meat
|
||||
|
||||
m_caster->CastSpell(m_caster,spell_id,true,NULL);
|
||||
return;
|
||||
|
|
@ -921,16 +932,16 @@ void Spell::EffectDummy(uint32 i)
|
|||
return;
|
||||
case 30458: // Nigh Invulnerability
|
||||
if (!m_CastItem) return;
|
||||
if(roll_chance_i(86)) // success
|
||||
if(roll_chance_i(86)) // Nigh-Invulnerability - success
|
||||
m_caster->CastSpell(m_caster, 30456, true, m_CastItem);
|
||||
else // backfire in 14% casts
|
||||
else // Complete Vulnerability - backfire in 14% casts
|
||||
m_caster->CastSpell(m_caster, 30457, true, m_CastItem);
|
||||
return;
|
||||
case 30507: // Poultryizer
|
||||
if (!m_CastItem) return;
|
||||
if(roll_chance_i(80)) // success
|
||||
if(roll_chance_i(80)) // Poultryized! - success
|
||||
m_caster->CastSpell(unitTarget, 30501, true, m_CastItem);
|
||||
else // backfire 20%
|
||||
else // Poultryized! - backfire 20%
|
||||
m_caster->CastSpell(unitTarget, 30504, true, m_CastItem);
|
||||
return;
|
||||
case 33060: // Make a Wish
|
||||
|
|
@ -942,23 +953,23 @@ void Spell::EffectDummy(uint32 i)
|
|||
|
||||
switch(urand(1,5))
|
||||
{
|
||||
case 1: spell_id = 33053; break;
|
||||
case 2: spell_id = 33057; break;
|
||||
case 3: spell_id = 33059; break;
|
||||
case 4: spell_id = 33062; break;
|
||||
case 5: spell_id = 33064; break;
|
||||
case 1: spell_id = 33053; break; // Mr Pinchy's Blessing
|
||||
case 2: spell_id = 33057; break; // Summon Mighty Mr. Pinchy
|
||||
case 3: spell_id = 33059; break; // Summon Furious Mr. Pinchy
|
||||
case 4: spell_id = 33062; break; // Tiny Magical Crawdad
|
||||
case 5: spell_id = 33064; break; // Mr. Pinchy's Gift
|
||||
}
|
||||
|
||||
m_caster->CastSpell(m_caster, spell_id, true, NULL);
|
||||
return;
|
||||
}
|
||||
case 35745:
|
||||
case 35745: // Socrethar's Stone
|
||||
{
|
||||
uint32 spell_id;
|
||||
switch(m_caster->GetAreaId())
|
||||
{
|
||||
case 3900: spell_id = 35743; break;
|
||||
case 3742: spell_id = 35744; break;
|
||||
case 3900: spell_id = 35743; break; // Socrethar Portal
|
||||
case 3742: spell_id = 35744; break; // Socrethar Portal
|
||||
default: return;
|
||||
}
|
||||
|
||||
|
|
@ -1070,9 +1081,9 @@ void Spell::EffectDummy(uint32 i)
|
|||
}
|
||||
case 55004: // Nitro Boosts
|
||||
if(!m_CastItem) return;
|
||||
if(roll_chance_i(95)) //success
|
||||
if(roll_chance_i(95)) // Nitro Boosts - success
|
||||
m_caster->CastSpell(m_caster, 54861, true, m_CastItem);
|
||||
else //backfire 5%
|
||||
else // Knocked Up - backfire 5%
|
||||
m_caster->CastSpell(m_caster, 46014, true, m_CastItem);
|
||||
return;
|
||||
case 50243: // Teach Language
|
||||
|
|
@ -1118,7 +1129,7 @@ void Spell::EffectDummy(uint32 i)
|
|||
return;
|
||||
|
||||
}
|
||||
case 52308:
|
||||
case 52308: // Take Sputum Sample
|
||||
{
|
||||
switch(i)
|
||||
{
|
||||
|
|
@ -1141,9 +1152,10 @@ void Spell::EffectDummy(uint32 i)
|
|||
return;
|
||||
m_caster->CastCustomSpell(unitTarget, 52752, &damage, NULL, NULL, true);
|
||||
return;
|
||||
case 53341:
|
||||
case 53343:
|
||||
case 53341: // Rune of Cinderglacier
|
||||
case 53343: // Rune of Razorice
|
||||
{
|
||||
// Runeforging Credit
|
||||
m_caster->CastSpell(m_caster, 54586, true);
|
||||
return;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue