Merge
--HG-- branch : trunk
This commit is contained in:
@@ -55,12 +55,12 @@ INSERT INTO spell_ranks (`first_spell_id`, `spell_id`, `rank`) VALUES
|
||||
(19434, 49049, 8),
|
||||
(19434, 49050, 9),
|
||||
-- Alchemy
|
||||
(3101, 3101, 1),
|
||||
(3101, 2259, 2),
|
||||
(3101, 3464, 3),
|
||||
(3101, 11611, 4),
|
||||
(3101, 28596, 5),
|
||||
(3101, 51304, 6),
|
||||
(2259, 2259, 1),
|
||||
(2259, 3101, 2),
|
||||
(2259, 3464, 3),
|
||||
(2259, 11611, 4),
|
||||
(2259, 28596, 5),
|
||||
(2259, 51304, 6),
|
||||
-- Ambush
|
||||
(8676, 8676, 1),
|
||||
(8676, 8724, 2),
|
||||
@@ -424,12 +424,12 @@ INSERT INTO spell_ranks (`first_spell_id`, `spell_id`, `rank`) VALUES
|
||||
(49140, 49663, 4),
|
||||
(49140, 49664, 5),
|
||||
-- Blacksmithing
|
||||
(3100, 3100, 1),
|
||||
(3100, 2018, 2),
|
||||
(3100, 3538, 3),
|
||||
(3100, 9785, 4),
|
||||
(3100, 29844, 5),
|
||||
(3100, 51300, 6),
|
||||
(2018, 2018, 1),
|
||||
(2018, 3100, 2),
|
||||
(2018, 3538, 3),
|
||||
(2018, 9785, 4),
|
||||
(2018, 29844, 5),
|
||||
(2018, 51300, 6),
|
||||
-- Blade Barrier
|
||||
(51789, 51789, 1),
|
||||
(51789, 64855, 2),
|
||||
@@ -850,12 +850,12 @@ INSERT INTO spell_ranks (`first_spell_id`, `spell_id`, `rank`) VALUES
|
||||
(20117, 20120, 4),
|
||||
(20117, 20121, 5),
|
||||
-- Cooking
|
||||
(3102, 3102, 1),
|
||||
(3102, 2550, 2),
|
||||
(3102, 3413, 3),
|
||||
(3102, 18260, 4),
|
||||
(3102, 33359, 5),
|
||||
(3102, 51296, 6),
|
||||
(2550, 2550, 1),
|
||||
(2550, 3102, 2),
|
||||
(2550, 3413, 3),
|
||||
(2550, 18260, 4),
|
||||
(2550, 33359, 5),
|
||||
(2550, 51296, 6),
|
||||
-- Cornered
|
||||
(52234, 52234, 1),
|
||||
(52234, 53497, 2),
|
||||
@@ -1496,12 +1496,12 @@ INSERT INTO spell_ranks (`first_spell_id`, `spell_id`, `rank`) VALUES
|
||||
(33879, 33879, 1),
|
||||
(33879, 33880, 2),
|
||||
-- Enchanting
|
||||
(7412, 7412, 1),
|
||||
(7412, 7411, 2),
|
||||
(7412, 7413, 3),
|
||||
(7412, 13920, 4),
|
||||
(7412, 28029, 5),
|
||||
(7412, 51313, 6),
|
||||
(7411, 7411, 1),
|
||||
(7411, 7412, 2),
|
||||
(7411, 7413, 3),
|
||||
(7411, 13920, 4),
|
||||
(7411, 28029, 5),
|
||||
(7411, 51313, 6),
|
||||
-- Endless Winter
|
||||
(49137, 49137, 1),
|
||||
(49137, 49657, 2),
|
||||
@@ -1519,12 +1519,12 @@ INSERT INTO spell_ranks (`first_spell_id`, `spell_id`, `rank`) VALUES
|
||||
(44557, 44560, 2),
|
||||
(44557, 44561, 3),
|
||||
-- Engineering
|
||||
(4037, 4037, 1),
|
||||
(4037, 4036, 2),
|
||||
(4037, 4038, 3),
|
||||
(4037, 12656, 4),
|
||||
(4037, 30350, 5),
|
||||
(4037, 51306, 6),
|
||||
(4036, 4036, 1),
|
||||
(4036, 4037, 2),
|
||||
(4036, 4038, 3),
|
||||
(4036, 12656, 4),
|
||||
(4036, 30350, 5),
|
||||
(4036, 51306, 6),
|
||||
-- Enhancing Totems
|
||||
(16259, 16259, 1),
|
||||
(16259, 16295, 2),
|
||||
@@ -1864,12 +1864,12 @@ INSERT INTO spell_ranks (`first_spell_id`, `spell_id`, `rank`) VALUES
|
||||
(44442, 44442, 1),
|
||||
(44442, 44443, 2),
|
||||
-- First Aid
|
||||
(3274, 3274, 1),
|
||||
(3274, 3273, 2),
|
||||
(3274, 7924, 3),
|
||||
(3274, 10846, 4),
|
||||
(3274, 27028, 5),
|
||||
(3274, 45542, 6),
|
||||
(3273, 3273, 1),
|
||||
(3273, 3274, 2),
|
||||
(3273, 7924, 3),
|
||||
(3273, 10846, 4),
|
||||
(3273, 27028, 5),
|
||||
(3273, 45542, 6),
|
||||
-- Flame Shock
|
||||
(8050, 8050, 1),
|
||||
(8050, 8052, 2),
|
||||
@@ -2462,12 +2462,12 @@ INSERT INTO spell_ranks (`first_spell_id`, `spell_id`, `rank`) VALUES
|
||||
(16511, 26864, 4),
|
||||
(16511, 48660, 5),
|
||||
-- Herb Gathering
|
||||
(2368, 2368, 1),
|
||||
(2368, 2366, 2),
|
||||
(2368, 3570, 3),
|
||||
(2368, 11993, 4),
|
||||
(2368, 28695, 5),
|
||||
(2368, 50300, 6),
|
||||
(2366, 2366, 1),
|
||||
(2366, 2368, 2),
|
||||
(2366, 3570, 3),
|
||||
(2366, 11993, 4),
|
||||
(2366, 28695, 5),
|
||||
(2366, 50300, 6),
|
||||
-- Heroic Strike
|
||||
(78, 78, 1),
|
||||
(78, 284, 2),
|
||||
@@ -3152,12 +3152,12 @@ INSERT INTO spell_ranks (`first_spell_id`, `spell_id`, `rank`) VALUES
|
||||
(588, 48040, 8),
|
||||
(588, 48168, 9),
|
||||
-- Inscription
|
||||
(45358, 45358, 1),
|
||||
(45358, 45357, 2),
|
||||
(45358, 45359, 3),
|
||||
(45358, 45360, 4),
|
||||
(45358, 45361, 5),
|
||||
(45358, 45363, 6),
|
||||
(45357, 45357, 1),
|
||||
(45357, 45358, 2),
|
||||
(45357, 45359, 3),
|
||||
(45357, 45360, 4),
|
||||
(45357, 45361, 5),
|
||||
(45357, 45363, 6),
|
||||
-- Insect Swarm
|
||||
(5570, 5570, 1),
|
||||
(5570, 24974, 2),
|
||||
@@ -3197,12 +3197,12 @@ INSERT INTO spell_ranks (`first_spell_id`, `spell_id`, `rank`) VALUES
|
||||
(12300, 12959, 2),
|
||||
(12300, 12960, 3),
|
||||
-- Jewelcrafting
|
||||
(25230, 25230, 1),
|
||||
(25230, 25229, 2),
|
||||
(25230, 28894, 3),
|
||||
(25230, 28895, 4),
|
||||
(25230, 28897, 5),
|
||||
(25230, 51311, 6),
|
||||
(25229, 25229, 1),
|
||||
(25229, 25230, 2),
|
||||
(25229, 28894, 3),
|
||||
(25229, 28895, 4),
|
||||
(25229, 28897, 5),
|
||||
(25229, 51311, 6),
|
||||
-- Judgements of the Just
|
||||
(53695, 53695, 1),
|
||||
(53695, 53696, 2),
|
||||
@@ -3283,12 +3283,12 @@ INSERT INTO spell_ranks (`first_spell_id`, `spell_id`, `rank`) VALUES
|
||||
(633, 27154, 4),
|
||||
(633, 48788, 5),
|
||||
-- Leatherworking
|
||||
(3104, 3104, 1),
|
||||
(3104, 2108, 2),
|
||||
(3104, 3811, 3),
|
||||
(3104, 10662, 4),
|
||||
(3104, 32549, 5),
|
||||
(3104, 51302, 6),
|
||||
(2108, 2108, 1),
|
||||
(2108, 3104, 2),
|
||||
(2108, 3811, 3),
|
||||
(2108, 10662, 4),
|
||||
(2108, 32549, 5),
|
||||
(2108, 51302, 6),
|
||||
-- Lesser Heal
|
||||
(2050, 2050, 1),
|
||||
(2050, 2052, 2),
|
||||
@@ -3403,9 +3403,9 @@ INSERT INTO spell_ranks (`first_spell_id`, `spell_id`, `rank`) VALUES
|
||||
(56342, 56343, 2),
|
||||
(56342, 56344, 3),
|
||||
-- Lockpicking
|
||||
(1810, 1810, 1),
|
||||
(1810, 1809, 2),
|
||||
(1810, 6460, 3),
|
||||
(1809, 1809, 1),
|
||||
(1809, 1810, 2),
|
||||
(1809, 6460, 3),
|
||||
-- Longevity
|
||||
(53262, 53262, 1),
|
||||
(53262, 53263, 2),
|
||||
@@ -3690,12 +3690,12 @@ INSERT INTO spell_ranks (`first_spell_id`, `spell_id`, `rank`) VALUES
|
||||
(2096, 2096, 1),
|
||||
(2096, 10909, 2),
|
||||
-- Mining
|
||||
(2576, 2576, 1),
|
||||
(2576, 2575, 2),
|
||||
(2576, 3564, 3),
|
||||
(2576, 10248, 4),
|
||||
(2576, 29354, 5),
|
||||
(2576, 50310, 6),
|
||||
(2575, 2575, 1),
|
||||
(2575, 2576, 2),
|
||||
(2575, 3564, 3),
|
||||
(2575, 10248, 4),
|
||||
(2575, 29354, 5),
|
||||
(2575, 50310, 6),
|
||||
-- Missile Barrage
|
||||
(44404, 44404, 1),
|
||||
(44404, 54486, 2),
|
||||
@@ -4891,12 +4891,12 @@ INSERT INTO spell_ranks (`first_spell_id`, `spell_id`, `rank`) VALUES
|
||||
(1752, 48637, 11),
|
||||
(1752, 48638, 12),
|
||||
-- Skinning
|
||||
(8617, 8617, 1),
|
||||
(8617, 8613, 2),
|
||||
(8617, 8618, 3),
|
||||
(8617, 10768, 4),
|
||||
(8617, 32678, 5),
|
||||
(8617, 50305, 6),
|
||||
(8613, 8613, 1),
|
||||
(8613, 8617, 2),
|
||||
(8613, 8618, 3),
|
||||
(8613, 10768, 4),
|
||||
(8613, 32678, 5),
|
||||
(8613, 50305, 6),
|
||||
-- Slam
|
||||
(1464, 1464, 1),
|
||||
(1464, 8820, 2),
|
||||
@@ -5300,12 +5300,12 @@ INSERT INTO spell_ranks (`first_spell_id`, `spell_id`, `rank`) VALUES
|
||||
(12295, 12676, 2),
|
||||
(12295, 12677, 3),
|
||||
-- Tailoring
|
||||
(3909, 3909, 1),
|
||||
(3909, 3908, 2),
|
||||
(3909, 3910, 3),
|
||||
(3909, 12180, 4),
|
||||
(3909, 26790, 5),
|
||||
(3909, 51309, 6),
|
||||
(3908, 3908, 1),
|
||||
(3908, 3909, 2),
|
||||
(3908, 3910, 3),
|
||||
(3908, 12180, 4),
|
||||
(3908, 26790, 5),
|
||||
(3908, 51309, 6),
|
||||
-- Taste for Blood
|
||||
(56636, 56636, 1),
|
||||
(56636, 56637, 2),
|
||||
@@ -6503,12 +6503,12 @@ INSERT INTO spell_ranks (`first_spell_id`, `spell_id`, `rank`) VALUES
|
||||
(30165, 29177, 2),
|
||||
(30165, 29178, 3),
|
||||
-- Fishing
|
||||
(7731, 7731, 1),
|
||||
(7731, 7620, 2),
|
||||
(7731, 7732, 3),
|
||||
(7731, 18248, 4),
|
||||
(7731, 33095, 5),
|
||||
(7731, 51294, 6),
|
||||
(7620, 7620, 1),
|
||||
(7620, 7731, 2),
|
||||
(7620, 7732, 3),
|
||||
(7620, 18248, 4),
|
||||
(7620, 33095, 5),
|
||||
(7620, 51294, 6),
|
||||
-- Icy Touch
|
||||
(45477, 45477, 1),
|
||||
(45477, 49896, 2),
|
||||
@@ -6614,11 +6614,11 @@ INSERT INTO spell_ranks (`first_spell_id`, `spell_id`, `rank`) VALUES
|
||||
-- Anesthetic Poison
|
||||
(26785, 26785, 1),
|
||||
(26785, 57982, 2),
|
||||
-- Journeyman Riding
|
||||
(33391, 33391, 1),
|
||||
(33391, 33388, 2),
|
||||
(33391, 34090, 3),
|
||||
(33391, 34091, 4),
|
||||
-- Apprentice Riding
|
||||
(33388, 33388, 1),
|
||||
(33388, 33391, 2),
|
||||
(33388, 34090, 3),
|
||||
(33388, 34091, 4),
|
||||
-- Primal Fury
|
||||
(16958, 16958, 1),
|
||||
(16958, 16961, 2),
|
||||
@@ -18,6 +18,8 @@ class WDBThreadStartReq1 : public ACE_Method_Request
|
||||
call (void)
|
||||
{
|
||||
WorldDatabase.ThreadStart();
|
||||
CharacterDatabase.ThreadStart();
|
||||
loginDatabase.ThreadStart();
|
||||
return 0;
|
||||
}
|
||||
};
|
||||
@@ -31,6 +33,8 @@ class WDBThreadEndReq1 : public ACE_Method_Request
|
||||
call (void)
|
||||
{
|
||||
WorldDatabase.ThreadEnd();
|
||||
CharacterDatabase.ThreadEnd();
|
||||
loginDatabase.ThreadEnd();
|
||||
return 0;
|
||||
}
|
||||
};
|
||||
|
||||
@@ -3256,7 +3256,7 @@ void SpellMgr::LoadSpellRanks()
|
||||
do
|
||||
{
|
||||
// spellid, rank
|
||||
std::list<std::pair<int32, int32>> rankChain;
|
||||
std::list < std::pair < int32, int32 > > rankChain;
|
||||
int32 currentSpell = -1;
|
||||
int32 lastSpell = -1;
|
||||
|
||||
@@ -3299,7 +3299,7 @@ void SpellMgr::LoadSpellRanks()
|
||||
int32 curRank = 0;
|
||||
bool valid = true;
|
||||
// check spells in chain
|
||||
for (std::list<std::pair<int32, int32>>::iterator itr = rankChain.begin() ; itr!= rankChain.end(); ++itr)
|
||||
for (std::list<std::pair<int32, int32> >::iterator itr = rankChain.begin() ; itr!= rankChain.end(); ++itr)
|
||||
{
|
||||
SpellEntry const * spell = sSpellStore.LookupEntry(itr->first);
|
||||
if (!spell)
|
||||
@@ -3320,7 +3320,7 @@ void SpellMgr::LoadSpellRanks()
|
||||
continue;
|
||||
int32 prevRank = 0;
|
||||
// insert the chain
|
||||
std::list<std::pair<int32, int32>>::iterator itr = rankChain.begin();
|
||||
std::list<std::pair<int32, int32> >::iterator itr = rankChain.begin();
|
||||
do
|
||||
{
|
||||
int32 addedSpell = itr->first;
|
||||
|
||||
@@ -4300,6 +4300,10 @@ void Unit::RemoveAurasWithMechanic(uint32 mechanic_mask, AuraRemoveMode removemo
|
||||
|
||||
void Unit::RemoveAreaAurasDueToLeaveWorld()
|
||||
{
|
||||
bool cleanRun;
|
||||
do
|
||||
{
|
||||
cleanRun = true;
|
||||
// make sure that all area auras not applied on self are removed - prevent access to deleted pointer later
|
||||
for (AuraMap::iterator iter = m_ownedAuras.begin(); iter != m_ownedAuras.end();)
|
||||
{
|
||||
@@ -4314,6 +4318,7 @@ void Unit::RemoveAreaAurasDueToLeaveWorld()
|
||||
if (target == this)
|
||||
continue;
|
||||
target->RemoveAura(aurApp);
|
||||
cleanRun = false;
|
||||
// things linked on aura remove may apply new area aura - so start from the beginning
|
||||
iter = m_ownedAuras.begin();
|
||||
}
|
||||
@@ -4323,10 +4328,15 @@ void Unit::RemoveAreaAurasDueToLeaveWorld()
|
||||
for (AuraApplicationMap::iterator iter = m_appliedAuras.begin(); iter != m_appliedAuras.end();)
|
||||
{
|
||||
if (iter->second->GetBase()->GetOwner()!=this)
|
||||
{
|
||||
RemoveAura(iter);
|
||||
cleanRun = false;
|
||||
}
|
||||
else
|
||||
++iter;
|
||||
}
|
||||
}
|
||||
while (!cleanRun);
|
||||
}
|
||||
|
||||
void Unit::RemoveAllAuras()
|
||||
|
||||
@@ -154,7 +154,9 @@ class ReactorRunnable : protected ACE_Task_Base
|
||||
{
|
||||
DEBUG_LOG ("Network Thread Starting");
|
||||
|
||||
WorldDatabase.ThreadStart ();
|
||||
WorldDatabase.ThreadStart();
|
||||
CharacterDatabase.ThreadStart();
|
||||
loginDatabase.ThreadStart();
|
||||
|
||||
ACE_ASSERT (m_Reactor);
|
||||
|
||||
@@ -187,7 +189,9 @@ class ReactorRunnable : protected ACE_Task_Base
|
||||
}
|
||||
}
|
||||
|
||||
WorldDatabase.ThreadEnd ();
|
||||
WorldDatabase.ThreadEnd();
|
||||
CharacterDatabase.ThreadEnd();
|
||||
loginDatabase.ThreadEnd();
|
||||
|
||||
DEBUG_LOG ("Network Thread Exitting");
|
||||
|
||||
|
||||
@@ -369,6 +369,8 @@ void CliRunnable::run()
|
||||
{
|
||||
///- Init new SQL thread for the world database (one connection call enough)
|
||||
WorldDatabase.ThreadStart(); // let thread do safe mySQL requests
|
||||
CharacterDatabase.ThreadStart();
|
||||
loginDatabase.ThreadStart();
|
||||
|
||||
char commandbuf[256];
|
||||
bool canflush = true;
|
||||
@@ -438,4 +440,6 @@ void CliRunnable::run()
|
||||
|
||||
///- End the database thread
|
||||
WorldDatabase.ThreadEnd(); // free mySQL thread resources
|
||||
CharacterDatabase.ThreadEnd();
|
||||
loginDatabase.ThreadEnd();
|
||||
}
|
||||
|
||||
@@ -47,6 +47,7 @@ void WorldRunnable::run()
|
||||
WorldDatabase.ThreadStart(); // let thread do safe mySQL requests (one connection call enough)
|
||||
CharacterDatabase.ThreadStart();
|
||||
loginDatabase.ThreadStart();
|
||||
|
||||
sWorld.InitResultQueue();
|
||||
|
||||
uint32 realCurrTime = 0;
|
||||
|
||||
Reference in New Issue
Block a user