diff options
-rw-r--r-- | sql/mangos.sql | 25 | ||||
-rw-r--r-- | src/game/ObjectMgr.cpp | 6 | ||||
-rw-r--r-- | src/game/QuestDef.cpp | 13 | ||||
-rw-r--r-- | src/game/SpellMgr.cpp | 10 | ||||
-rw-r--r-- | src/game/Unit.cpp | 8 | ||||
-rw-r--r-- | src/shared/revision_nr.h | 2 |
6 files changed, 15 insertions, 49 deletions
diff --git a/sql/mangos.sql b/sql/mangos.sql index 453debf44dd..2c4d418f13a 100644 --- a/sql/mangos.sql +++ b/sql/mangos.sql @@ -22,7 +22,7 @@ DROP TABLE IF EXISTS `db_version`; CREATE TABLE `db_version` ( `version` varchar(120) default NULL, - `required_7199_02_mangos_spell_proc_event` bit(1) default NULL + `required_7205_01_mangos_spell_chain` bit(1) default NULL ) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Used DB version notes'; -- @@ -13962,12 +13962,6 @@ INSERT INTO spell_chain VALUES (34120,56641,56641,2,0), (49051,34120,56641,3,0), (49052,49051,56641,4,0), -/*ViperSting*/ -(3034,0,3034,1,0), -(14279,3034,3034,2,0), -(14280,14279,3034,3,0), -(27018,14280,3034,4,0), -(49008,27018,3034,5,0), /*Volley*/ (1510,0,1510,1,0), (14294,1510,1510,2,0), @@ -14894,14 +14888,6 @@ INSERT INTO spell_chain VALUES (27219,11700,689,7,0), (27220,27219,689,8,0), (47857,27220,689,9,0), -/*DrainMana*/ -(5138,0,5138,1,0), -(6226,5138,5138,2,0), -(11703,6226,5138,3,0), -(11704,11703,5138,4,0), -(27221,11704,5138,5,0), -(30908,27221,5138,6,0), -(47858,30908,5138,7,0), /*DrainSoul*/ (1120,0,1120,1,0), (8288,1120,1120,2,0), @@ -15700,15 +15686,6 @@ INSERT INTO spell_chain VALUES (25431,10952,588,7,0), (48040,25431,588,8,0), (48168,48040,588,9,0), -/*ManaBurn*/ -(8129,0,8129,1,0), -(8131,8129,8129,2,0), -(10874,8131,8129,3,0), -(10875,10874,8129,4,0), -(10876,10875,8129,5,0), -(25379,10876,8129,6,0), -(25380,25379,8129,7,0), -(48128,25380,8129,8,0), /*Penance*/ (47540,0,47540,1,0), (53005,47540,47540,2,0), diff --git a/src/game/ObjectMgr.cpp b/src/game/ObjectMgr.cpp index 4a5c0bbdf0b..898299dc076 100644 --- a/src/game/ObjectMgr.cpp +++ b/src/game/ObjectMgr.cpp @@ -5513,11 +5513,6 @@ void ObjectMgr::SetHighestGuids() delete result; } - // pet guids are not saved to DB, set to 0 (pet guid != pet id) - m_hiPetGuid = 0; - // same for vehicles - m_hiVehicleGuid = 0; - result = CharacterDatabase.Query( "SELECT MAX(guid) FROM item_instance" ); if( result ) { @@ -5671,7 +5666,6 @@ uint32 ObjectMgr::GenerateLowGuid(HighGuid guidhigh) } return m_hiPetGuid++; case HIGHGUID_VEHICLE: - ++m_hiVehicleGuid; if(m_hiVehicleGuid>=0x00FFFFFF) { sLog.outError("Vehicle guid overflow!! Can't continue, shutting down server. "); diff --git a/src/game/QuestDef.cpp b/src/game/QuestDef.cpp index e56a3a4c982..42ff15e1679 100644 --- a/src/game/QuestDef.cpp +++ b/src/game/QuestDef.cpp @@ -166,18 +166,19 @@ uint32 Quest::XPValue( Player *pPlayer ) const uint32 pLevel = pPlayer->getLevel(); uint32 qLevel = QuestLevel; float fullxp = 0; - if (qLevel >= 65) + if (qLevel >= 75) fullxp = RewMoneyMaxLevel / 6.0f; - else if (qLevel == 64) + else if (qLevel == 74) fullxp = RewMoneyMaxLevel / 4.8f; - else if (qLevel == 63) + else if (qLevel == 73) fullxp = RewMoneyMaxLevel / 3.6f; - else if (qLevel == 62) + else if (qLevel == 72) fullxp = RewMoneyMaxLevel / 2.4f; - else if (qLevel == 61) + else if (qLevel == 71) fullxp = RewMoneyMaxLevel / 1.2f; - else if (qLevel > 0 && qLevel <= 60) + else if (qLevel > 0 && qLevel <= 70) fullxp = RewMoneyMaxLevel / 0.6f; + // FIXME: for <=65 need possible additional cases if( pLevel <= qLevel + 5 ) return (uint32)fullxp; diff --git a/src/game/SpellMgr.cpp b/src/game/SpellMgr.cpp index 3172a47ca38..39ed6f6b77d 100644 --- a/src/game/SpellMgr.cpp +++ b/src/game/SpellMgr.cpp @@ -346,8 +346,8 @@ SpellSpecific GetSpellSpecific(uint32 spellId) if (spellInfo->Dispel == DISPEL_CURSE) return SPELL_CURSE; - // family flag 37 (only part spells have family name) - if (spellInfo->SpellFamilyFlags & 0x2000000000LL) + // Warlock (Demon Armor | Demon Skin | Fel Armor) + if (spellInfo->SpellFamilyFlags & 0x2000002000000000LL || spellInfo->SpellFamilyFlags2 & 0x00000010) return SPELL_WARLOCK_ARMOR; //seed of corruption and corruption @@ -406,12 +406,6 @@ SpellSpecific GetSpellSpecific(uint32 spellId) break; } - // only warlock armor/skin have this (in additional to family cases) - if( spellInfo->SpellVisual[0] == 130 && spellInfo->SpellIconID == 89) - { - return SPELL_WARLOCK_ARMOR; - } - // elixirs can have different families, but potion most ofc. if(SpellSpecific sp = spellmgr.GetSpellElixirSpecific(spellInfo->Id)) return sp; diff --git a/src/game/Unit.cpp b/src/game/Unit.cpp index f47eb78bbf7..e6497e13505 100644 --- a/src/game/Unit.cpp +++ b/src/game/Unit.cpp @@ -8040,7 +8040,7 @@ uint32 Unit::SpellDamageBonus(Unit *pVictim, SpellEntry const *spellProto, uint3 break; } } - int DotTicks = 6; + int32 DotTicks = 6; if(spellProto->EffectAmplitude[x] != 0) DotTicks = DotDuration / spellProto->EffectAmplitude[x]; if(DotTicks) @@ -8524,13 +8524,13 @@ uint32 Unit::SpellHealingBonus(Unit *pVictim, SpellEntry const *spellProto, uint break; } } - int DotTicks = 6; + int32 DotTicks = 6; if(spellProto->EffectAmplitude[x] != 0) DotTicks = DotDuration / spellProto->EffectAmplitude[x]; if(DotTicks) { - DoneAdvertisedBenefit /= DotTicks; - TakenAdvertisedBenefit /= DotTicks; + DoneAdvertisedBenefit /= DotTicks*int32(stack); + TakenAdvertisedBenefit /= DotTicks*int32(stack); } } } diff --git a/src/shared/revision_nr.h b/src/shared/revision_nr.h index d542e8dd61d..760e6b5108b 100644 --- a/src/shared/revision_nr.h +++ b/src/shared/revision_nr.h @@ -1,4 +1,4 @@ #ifndef __REVISION_NR_H__ #define __REVISION_NR_H__ - #define REVISION_NR "7200" + #define REVISION_NR "7205" #endif // __REVISION_NR_H__ |