lavinelu
Members-
Posts
15 -
Joined
-
Last visited
Never -
Donations
0.00 GBP
lavinelu's Achievements
Member (2/3)
0
Reputation
-
For example, consuming the normal guardian elixir 'Elixir of Mighty Fortitude' (http://www.wowhead.com/item=40078) removes the battle elixir 'Elixir of Mighty Strength' (http://www.wowhead.com/item=40073) and vice-versa. i think the problem is from this function IsNoStackAuraDueToAura and should be something like this if (spellInfo_1->Effect[i] == spellInfo_2->Effect[j] && spellInfo_1->EffectApplyAuraName[i] == spellInfo_2->EffectApplyAuraName[j] && spellInfo_1->EffectMiscValue[i] == spellInfo_2->EffectMiscValue[j] && spellInfo_1->EffectItemType[i] == spellInfo_2->EffectItemType[j] && (spellInfo_1->Effect[i] != 0 || spellInfo_1->EffectApplyAuraName[i] != 0 || spellInfo_1->EffectMiscValue[i] != 0 || spellInfo_1->EffectItemType[i] != 0)) return true;
-
Restores 2700 to 4500 health. Increased effect for engineers! What bug does the patch fix? What features does the patch add? Increased effect for engineers! with 25% For which repository revision was the patch created? 10401 Is there a thread in the bug report section or at lighthouse? If yes, please add a link to the thread. No Who has been writing this patch? Please include either forum user names or email addresses. me diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp index 99e74fe..470f309 100644 --- a/src/game/SpellEffects.cpp +++ b/src/game/SpellEffects.cpp @@ -3352,6 +3352,13 @@ void Spell::EffectHeal(SpellEffectIndex /*eff_idx*/) addhealth += tickheal * tickcount; } + // Runic Healing Injector + else if (m_spellInfo->Id == 67489 && unitTarget->GetTypeId() == TYPEID_PLAYER) + { + Player* player = (Player*)unitTarget; + if (player->HasSkill(SKILL_ENGINERING)) + addhealth *= 1.25; + } // Chain Healing if (m_spellInfo->SpellFamilyName == SPELLFAMILY_SHAMAN && m_spellInfo->SpellFamilyFlags & UI64LIT(0x0000000000000100))
-
thanks for answer, i asked because i put this modification on server and now uptime is 16h, didn't crashed since then and before every 1 - 2 hours was a crash.
-
Lunx3d, here target->AddAuraToModList(Aur); it's ok to have same aura added 2 times or more? if not can something go wrong if i modify it like this? @@ -4116,11 +4116,22 @@ bool Unit::AddSpellAuraHolder(SpellAuraHolder *holder) } void Unit::AddAuraToModList(Aura *aura) { if (aura->GetModifier()->m_auraname < TOTAL_AURAS) + { + AuraList::const_iterator iter; + for (iter = m_modAuras[aura->GetModifier()->m_auraname].begin(); iter != m_modAuras[aura->GetModifier()->m_auraname].end(); ++iter) + { + if (aura->GetId() == (*iter)->GetId()) + { + m_modAuras[aura->GetModifier()->m_auraname].remove((*iter)); + break; + } + } m_modAuras[aura->GetModifier()->m_auraname].push_back(aura); + } }
-
i did it in this way but i dont know how the spell system is working and maybe will broke other spells i think the same spell should not be added 2 times here target->AddAuraToModList(Aur); @@ -4116,11 +4116,22 @@ bool Unit::AddSpellAuraHolder(SpellAuraHolder *holder) } void Unit::AddAuraToModList(Aura *aura) { if (aura->GetModifier()->m_auraname < TOTAL_AURAS) + { + AuraList::const_iterator iter; + for (iter = m_modAuras[aura->GetModifier()->m_auraname].begin(); iter != m_modAuras[aura->GetModifier()->m_auraname].end(); ++iter) + { + if (aura->GetId() == (*iter)->GetId()) + { + m_modAuras[aura->GetModifier()->m_auraname].remove((*iter)); + break; + } + } m_modAuras[aura->GetModifier()->m_auraname].push_back(aura); + } }
-
it's not removed but it should be removed when you call this function target->RemoveAurasDueToSpellByCancel(aurSpellInfo->Id);
-
i think that when aura is removed it should be remove form slowingAuras list too because this is a pointer or maybe i am wrong
-
should be checked why this aura is not removed, this code is ok how it is right now.
-
here is the problem for (Unit::AuraList::const_iterator iter = slowingAuras.begin(); iter != slowingAuras.end() { SpellEntry const* aurSpellInfo = (*iter)->GetSpellProto(); uint32 aurMechMask = GetAllSpellMechanicMask(aurSpellInfo); // If spell that caused this aura has Croud Control or Daze effect if((aurMechMask & MECHANIC_NOT_REMOVED_BY_SHAPESHIFT) || // some Daze spells have these parameters instead of MECHANIC_DAZE (skip snare spells) aurSpellInfo->SpellIconID == 15 && aurSpellInfo->Dispel == 0 && (aurMechMask & (1 << (MECHANIC_SNARE-1)))==0) { ++iter; continue; } // All OK, remove aura now target->RemoveAurasDueToSpellByCancel(aurSpellInfo->Id); iter = slowingAuras.begin(); } its an infinite loop because target->RemoveAurasDueToSpellByCancel(aurSpellInfo->Id); is not removing aura i think
-
When you try to loot the gameobject it says "YOU CAN'T OPEN THAT" if i remove this line pGameObj->SetUInt32Value(GAMEOBJECT_LEVEL, m_caster->getLevel() ); it will work but i don't know if this is the right way to fix it thats why i post it on bug reports section diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp index 5ccab32..6c922a1 100644 --- a/src/game/SpellEffects.cpp +++ b/src/game/SpellEffects.cpp @@ -954,7 +954,6 @@ void Spell::EffectDummy(SpellEffectIndex eff_idx) pGameObj->SetRespawnTime(creatureTarget->GetRespawnTime()-time(NULL)); pGameObj->SetOwnerGUID(m_caster->GetGUID() ); - pGameObj->SetUInt32Value(GAMEOBJECT_LEVEL, m_caster->getLevel() ); pGameObj->SetSpellId(m_spellInfo->Id); creatureTarget->ForcedDespawn();
-
at least can someone tell me if this crash dump is how it should be?
-
hi, i just installed dbg and i have a crash really often and i don't know where can be the problem or even if this crash dump is how it should be . If someone can help me i will appreciate it. i have patches from insider42 repo. http://pastebin.com/vXFq1s3J thank you
-
in windows only
-
for me if(GetAllSpellMechanicMask(m_spellProto) & (1 << MECHANIC_BLEED)) didn't worked. function GetAllSpellMechanicMask is: inline uint32 GetAllSpellMechanicMask(SpellEntry const* spellInfo) { uint32 mask = 0; if (spellInfo->Mechanic) mask |= 1 << (spellInfo->Mechanic - 1); for (int i=0; i< 3; ++i) if (spellInfo->EffectMechanic) mask |= 1 << (spellInfo->EffectMechanic-1); return mask; } so i used if(GetAllSpellMechanicMask(m_spellProto) & (1 << (MECHANIC_BLEED - 1))) it's ok like this?
-
it's ok if i use it like this? i'm begginer with mangos that i ask + // Mechanic bleed aura state + if(GetAllSpellMechanicMask(m_spellProto) & (1 << MECHANIC_BLEED)) + m_target->ModifyAuraState(AURA_STATE_MECHANIC_BLEED, true); // Mechanic bleed aura state if (m_spellProto->Mechanic == MECHANIC_BLEED) m_target->ModifyAuraState(AURA_STATE_MECHANIC_BLEED, true);
Contact Us
To contact us
click here
You can also email us at [email protected]
Privacy Policy | Terms & Conditions
You can also email us at [email protected]
Privacy Policy | Terms & Conditions
Copyright © getMaNGOS. All rights Reserved.
This website is in no way associated with or endorsed by Blizzard Entertainment®
This website is in no way associated with or endorsed by Blizzard Entertainment®