Changeset 57 for trunk/src/game

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

[svn] Update some Black Temple boss scripts.
Implement some Black Temple boss spells.
Update maiden of virtue and void reaver scripts. Patch provided by Blaymoira.

Original author: megamage
Date: 2008-10-18 16:25:58-05:00

Location:
trunk/src/game
Files:
2 modified

Legend:

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

    r44 r57  
    16511651//                    // Prismatic Shield 
    16521652//                    case 40879: break; 
    1653 //                    // Aura of Desire 
    1654 //                    case 41350: break; 
     1653                    // Aura of Desire 
     1654                    case 41350: 
     1655                    { 
     1656                        Unit::AuraList const& mMod = m_target->GetAurasByType(SPELL_AURA_MOD_INCREASE_ENERGY_PERCENT); 
     1657                        for(Unit::AuraList::const_iterator i = mMod.begin(); i != mMod.end(); ++i) 
     1658                        { 
     1659                            if ((*i)->GetId() == 41350) 
     1660                            { 
     1661                                (*i)->ApplyModifier(false); 
     1662                                (*i)->GetModifier()->m_amount -= 5; 
     1663                                (*i)->ApplyModifier(true); 
     1664                                break; 
     1665                            } 
     1666                        }                         
     1667                    }break; 
    16551668//                    // Dementia 
    16561669//                    case 41404: break; 
     
    56155628                        break; 
    56165629                    } 
     5630                    case 41337:// aura of anger 
     5631                    {                         
     5632                        Unit::AuraList const& mMod = m_target->GetAurasByType(SPELL_AURA_MOD_DAMAGE_PERCENT_DONE); 
     5633                        for(Unit::AuraList::const_iterator i = mMod.begin(); i != mMod.end(); ++i) 
     5634                        { 
     5635                            if ((*i)->GetId() == 41337) 
     5636                            { 
     5637                                (*i)->ApplyModifier(false); 
     5638                                (*i)->GetModifier()->m_amount += 5; 
     5639                                (*i)->ApplyModifier(true); 
     5640                                break; 
     5641                            } 
     5642                        }                         
     5643                        m_modifier.m_amount += 100; 
     5644                    }break; 
    56175645                    default: 
    56185646                        break; 
  • trunk/src/game/SpellEffects.cpp

    r56 r57  
    46664666        } 
    46674667 
    4668         // Dreaming Glory 
    4669         case 28698: 
    4670         { 
    4671             if(!unitTarget) 
    4672                 return; 
    4673             unitTarget->CastSpell(unitTarget, 28694, true); 
    4674             break; 
    4675         } 
    4676  
    46774668        // Netherbloom 
    46784669        case 28702: 
     
    47474738                } 
    47484739            } 
    4749             break; 
    4750         } 
    4751         case 41126:                                         // Flame Crash 
    4752         { 
    4753             if(!unitTarget) 
    4754                 return; 
    4755  
    4756            unitTarget->CastSpell(unitTarget, 41131, true); 
    4757            break; 
    4758         } 
    4759         case 44876:                                         // Force Cast - Portal Effect: Sunwell Isle 
    4760         { 
    4761             if(!unitTarget) 
    4762                 return; 
    4763  
    4764             unitTarget->CastSpell(unitTarget, 44870, true); 
    47654740            break; 
    47664741        } 
     
    47914766            break; 
    47924767        } 
     4768 
     4769    } 
     4770 
     4771    if(!unitTarget || !unitTarget->isAlive()) // can we remove this check? 
     4772    { 
     4773        sLog.outError("Spell %u in EffectScriptEffect does not have unitTarget", m_spellInfo->Id); 
     4774        return; 
     4775    } 
     4776 
     4777    switch(m_spellInfo->Id) 
     4778    { 
     4779        // Dreaming Glory 
     4780        case 28698: unitTarget->CastSpell(unitTarget, 28694, true); break; 
     4781        // Needle Spine 
     4782        case 39835: unitTarget->CastSpell(unitTarget, 39968, true); break; 
     4783        // Draw Soul 
     4784        case 40904: unitTarget->CastSpell(m_caster, 40903, true); break; 
     4785        // Flame Crash 
     4786        case 41126: unitTarget->CastSpell(unitTarget, 41131, true); break; 
     4787        // Force Cast - Portal Effect: Sunwell Isle 
     4788        case 44876: unitTarget->CastSpell(unitTarget, 44870, true); break; 
    47934789        //5,000 Gold 
    47944790        case 46642: 
    47954791        { 
    4796             if(!unitTarget || unitTarget->GetTypeId() != TYPEID_PLAYER) 
    4797                 return; 
    4798  
    4799             ((Player*)unitTarget)->ModifyMoney(50000000); 
    4800  
     4792            if(unitTarget->GetTypeId() == TYPEID_PLAYER) 
     4793                ((Player*)unitTarget)->ModifyMoney(50000000); 
    48014794            break; 
    48024795        } 
     
    48104803            case 0x800000: 
    48114804            { 
    4812                 if(!unitTarget || !unitTarget->isAlive()) 
    4813                     return; 
    48144805                uint32 spellId2 = 0; 
    48154806 
     
    48624853 
    48634854    // normal DB scripted effect 
    4864     if(!unitTarget) 
    4865         return; 
    4866  
    48674855    sLog.outDebug("Spell ScriptStart spellid %u in EffectScriptEffect ", m_spellInfo->Id); 
    48684856    sWorld.ScriptsStart(sSpellScripts, m_spellInfo->Id, m_caster, unitTarget);