From e5822a0c4a12dd1912158fab4f5817740cf8deed Mon Sep 17 00:00:00 2001 From: "Michael Cook (mackal)" Date: Sat, 27 Sep 2014 21:37:14 -0400 Subject: [PATCH] Fix client SetAttackTimer issue Moved the call to the end of Client::CalcBonuses() since it depends on Client::CalcHaste() which requires a bunch of others to be called before it. --- changelog.txt | 1 + zone/bonuses.cpp | 4 ++-- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/changelog.txt b/changelog.txt index c0706ac74..ac69f9d00 100644 --- a/changelog.txt +++ b/changelog.txt @@ -6,6 +6,7 @@ Note: identifier is the stat field in spells_new, slot is used for certain effec Example $mob->GetSpellStat(121, "range"); //Returns spell range Example $mob->GetSpellStat(121, "effectid", 1); //Returns the the value of effectid1 This will allow you to pull almost all the data for any spell in quest files. +demonstar55: Move the client's SetAttackTimer to the end of Client::CalcBonuses to keep the haste in sync == 09/24/2014 == Uleat: Re-ordered server opcodes and handlers to give them some predictability of location (I need this for the inventory re-enumeration.) diff --git a/zone/bonuses.cpp b/zone/bonuses.cpp index f1105ce73..d14624f2d 100644 --- a/zone/bonuses.cpp +++ b/zone/bonuses.cpp @@ -104,6 +104,8 @@ void Client::CalcBonuses() CalcMaxMana(); CalcMaxEndurance(); + SetAttackTimer(); + rooted = FindType(SE_Root); XPRate = 100 + spellbonuses.XPRateMod; @@ -174,8 +176,6 @@ void Client::CalcItemBonuses(StatBonuses* newbon) { if(newbon->EnduranceRegen > CalcEnduranceRegenCap()) newbon->EnduranceRegen = CalcEnduranceRegenCap(); - - SetAttackTimer(); } void Client::AddItemBonuses(const ItemInst *inst, StatBonuses* newbon, bool isAug, bool isTribute) {