Changeset 87

Show
Ignore:
Timestamp:
11/19/08 13:33:03 (17 years ago)
Author:
yumileroy
Message:

[svn] Try to remove the big hack in SpellMgr::IsNoStackSpellDueToSpell?. Not sure if this works.

Original author: megamage
Date: 2008-10-21 11:22:12-05:00

Files:
1 modified

Legend:

Unmodified
Added
Removed
  • trunk/src/game/SpellMgr.cpp

    r79 r87  
    10341034        return false; 
    10351035 
    1036     if(spellInfo_1->Id == spellId_2) 
    1037         return false; 
     1036    if(spellInfo_1->Id == spellId_2) //checked before  
     1037        return false; 
     1038 
     1039    if(spellInfo_1->SpellFamilyName && spellInfo_1->SpellFamilyName == spellInfo_2->SpellFamilyName) //resurrection sickness 
     1040    { 
     1041        if(spellInfo_1->SpellFamilyFlags == spellInfo_2->SpellFamilyFlags) 
     1042            return true; 
     1043        //Corruption & Seed of corruption 
     1044        if(spellInfo_1->SpellFamilyName == SPELLFAMILY_WARLOCK) 
     1045            if( spellInfo_1->SpellIconID == 313 && spellInfo_2->SpellIconID == 1932 || 
     1046                spellInfo_2->SpellIconID == 313 && spellInfo_1->SpellIconID == 1932 ) 
     1047                if(spellInfo_1->SpellVisual != 0 && spellInfo_2->SpellVisual != 0) 
     1048                    return true;                        // can't be stacked 
     1049    } 
    10381050 
    10391051    //I think we don't check this correctly because i need a exception for spell: 
    10401052    //72,11327,18461...(called from 1856,1857...) Call Aura 16,31, after trigger another spell who call aura 77 and 77 remove 16 and 31, this should not happen. 
    1041     if(spellInfo_2->SpellFamilyFlags == 2048) 
    1042         return false; 
     1053    //if(spellInfo_2->SpellFamilyFlags == 2048) 
     1054    //    return false; 
    10431055 
    10441056    // Resurrection sickness 
    1045     if((spellInfo_1->Id == SPELL_ID_PASSIVE_RESURRECTION_SICKNESS) != (spellInfo_2->Id==SPELL_ID_PASSIVE_RESURRECTION_SICKNESS)) 
    1046         return false; 
     1057    //if((spellInfo_1->Id == SPELL_ID_PASSIVE_RESURRECTION_SICKNESS) != (spellInfo_2->Id==SPELL_ID_PASSIVE_RESURRECTION_SICKNESS)) 
     1058    //    return false; 
    10471059 
    10481060    // Specific spell family spells 
    1049     switch(spellInfo_1->SpellFamilyName) 
     1061    /*switch(spellInfo_1->SpellFamilyName) 
    10501062    { 
    10511063        case SPELLFAMILY_GENERIC: 
     
    13471359 
    13481360    if (IsRankSpellDueToSpell(spellInfo_1, spellId_2)) 
    1349         return true; 
    1350  
    1351     if (spellInfo_1->SpellIconID != spellInfo_2->SpellIconID || 
    1352         !spellInfo_1->SpellIconID) 
     1361        return true;*/ 
     1362 
     1363    if (spellInfo_1->SpellIconID != spellInfo_2->SpellIconID  
     1364        || !spellInfo_1->SpellIconID) 
    13531365        return false; 
    13541366