Merge remote branch 'origin/master' into 330

This commit is contained in:
tomrus88 2009-12-22 05:13:25 +03:00
commit c83b72da90
9 changed files with 57 additions and 10 deletions

View file

@ -24,7 +24,7 @@ CREATE TABLE `db_version` (
`version` varchar(120) default NULL,
`creature_ai_version` varchar(120) default NULL,
`cache_id` int(10) default '0',
`required_9034_01_mangos_spell_proc_event` bit(1) default NULL
`required_9045_02_mangos_spell_chain` bit(1) default NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Used DB version notes';
--
@ -13732,10 +13732,14 @@ CREATE TABLE `quest_template` (
`ReqItemId2` mediumint(8) unsigned NOT NULL default '0',
`ReqItemId3` mediumint(8) unsigned NOT NULL default '0',
`ReqItemId4` mediumint(8) unsigned NOT NULL default '0',
`ReqItemId5` mediumint(8) unsigned NOT NULL default '0',
`ReqItemId6` mediumint(8) unsigned NOT NULL default '0',
`ReqItemCount1` smallint(5) unsigned NOT NULL default '0',
`ReqItemCount2` smallint(5) unsigned NOT NULL default '0',
`ReqItemCount3` smallint(5) unsigned NOT NULL default '0',
`ReqItemCount4` smallint(5) unsigned NOT NULL default '0',
`ReqItemCount5` smallint(5) unsigned NOT NULL default '0',
`ReqItemCount6` smallint(5) unsigned NOT NULL default '0',
`ReqSourceId1` mediumint(8) unsigned NOT NULL default '0',
`ReqSourceId2` mediumint(8) unsigned NOT NULL default '0',
`ReqSourceId3` mediumint(8) unsigned NOT NULL default '0',
@ -13772,14 +13776,10 @@ CREATE TABLE `quest_template` (
`RewItemId2` mediumint(8) unsigned NOT NULL default '0',
`RewItemId3` mediumint(8) unsigned NOT NULL default '0',
`RewItemId4` mediumint(8) unsigned NOT NULL default '0',
`ReqItemId5` mediumint(8) unsigned NOT NULL default '0',
`ReqItemId6` mediumint(8) unsigned NOT NULL default '0',
`RewItemCount1` smallint(5) unsigned NOT NULL default '0',
`RewItemCount2` smallint(5) unsigned NOT NULL default '0',
`RewItemCount3` smallint(5) unsigned NOT NULL default '0',
`RewItemCount4` smallint(5) unsigned NOT NULL default '0',
`ReqItemCount5` smallint(5) unsigned NOT NULL default '0',
`ReqItemCount6` smallint(5) unsigned NOT NULL default '0',
`RewRepFaction1` smallint(5) unsigned NOT NULL default '0' COMMENT 'faction id from Faction.dbc in this case',
`RewRepFaction2` smallint(5) unsigned NOT NULL default '0' COMMENT 'faction id from Faction.dbc in this case',
`RewRepFaction3` smallint(5) unsigned NOT NULL default '0' COMMENT 'faction id from Faction.dbc in this case',
@ -16618,6 +16618,10 @@ INSERT INTO spell_chain VALUES
(26982,26981,774,13,0),
(48440,26982,774,14,0),
(48441,48440,774,15,0),
/*Revitalize*/
(48539,0,48539,1,0),
(48544,48539,48539,2,0),
(48545,48544,48539,3,0),
/*Revive*/
(50769,0,50769,1,0),
(50768,50769,50769,2,0),
@ -18263,6 +18267,7 @@ INSERT INTO `spell_proc_event` VALUES
(48516, 0x00000000, 7, 0x00000005, 0x00000000, 0x00000000, 0x00000000, 0x00000002, 0.000000, 0.000000, 30),
(48521, 0x00000000, 7, 0x00000005, 0x00000000, 0x00000000, 0x00000000, 0x00000002, 0.000000, 0.000000, 30),
(48525, 0x00000000, 7, 0x00000005, 0x00000000, 0x00000000, 0x00000000, 0x00000002, 0.000000, 0.000000, 30),
(48539, 0x00000000, 7, 0x00000010, 0x04000000, 0x00000000, 0x00040000, 0x00000000, 0.000000, 0.000000, 0),
(48833, 0x00000000, 7, 0x00000000, 0x00000440, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0),
(48835, 0x00000000, 10, 0x00000000, 0x00000008, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0),
(48837, 0x00000000, 11, 0x90100000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0),

View file

@ -0,0 +1,5 @@
ALTER TABLE db_version CHANGE COLUMN required_9034_01_mangos_spell_proc_event required_9045_01_mangos_spell_proc_event bit;
DELETE FROM spell_proc_event WHERE entry IN (48545,48544,48539);
INSERT INTO spell_proc_event (`entry`, `SchoolMask`, `SpellFamilyName`, `SpellFamilyMask0`, `SpellFamilyMask1`, `SpellFamilyMask2`, `procFlags`, `procEx`, `ppmRate`, `CustomChance`, `Cooldown`) VALUES
(48539, 0x00000000, 7, 0x00000010, 0x04000000, 0x00000000, 0x00040000, 0x00000000, 0.000000, 0.000000, 0);

View file

@ -0,0 +1,8 @@
ALTER TABLE db_version CHANGE COLUMN required_9045_01_mangos_spell_proc_event required_9045_02_mangos_spell_chain bit;
/*Revitalize*/
DELETE FROM spell_chain WHERE first_spell = 48539;
INSERT INTO spell_chain VALUES
(48539, 0, 48539, 1, 0),
(48544, 48539, 48539, 2, 0),
(48545, 48544, 48539, 3, 0);

View file

@ -217,6 +217,8 @@ pkgdata_DATA = \
9019_01_mangos_spell_threat.sql \
9025_01_mangos_spell_proc_event.sql \
9034_01_mangos_spell_proc_event.sql \
9045_01_mangos_spell_proc_event.sql \
9045_02_mangos_spell_chain.sql \
README
## Additional files to include when running 'make dist'
@ -414,4 +416,6 @@ EXTRA_DIST = \
9019_01_mangos_spell_threat.sql \
9025_01_mangos_spell_proc_event.sql \
9034_01_mangos_spell_proc_event.sql \
9045_01_mangos_spell_proc_event.sql \
9045_02_mangos_spell_chain.sql \
README

View file

@ -6756,6 +6756,11 @@ void Aura::PeriodicTick()
int32 gain = m_target->ModifyHealth(pdamage);
// Set trigger flag
uint32 procAttacker = PROC_FLAG_ON_DO_PERIODIC;
uint32 procVictim = PROC_FLAG_ON_TAKE_PERIODIC;
pCaster->ProcDamageAndSpell(m_target, procAttacker, procVictim, PROC_EX_NORMAL_HIT, gain, BASE_ATTACK, m_spellProto);
// add HoTs to amount healed in bgs
if( pCaster->GetTypeId() == TYPEID_PLAYER )
if( BattleGround *bg = ((Player*)pCaster)->GetBattleGround() )

View file

@ -2996,6 +2996,7 @@ void Spell::EffectEnergize(uint32 i)
level_multiplier = 4;
break;
case 31930: // Judgements of the Wise
case 48542: // Revitalize (mana restore case)
case 63375: // Improved Stormstrike
damage = damage * unitTarget->GetCreateMana() / 100;
break;

View file

@ -7601,6 +7601,9 @@ bool Unit::HandleOverrideClassScriptAuraProc(Unit *pVictim, uint32 damage, Aura
Item* castItem = triggeredByAura->GetCastItemGUID() && GetTypeId()==TYPEID_PLAYER
? ((Player*)this)->GetItemByGuid(triggeredByAura->GetCastItemGUID()) : NULL;
// Basepoints of trigger aura
int32 triggerAmount = triggeredByAura->GetModifier()->m_amount;
uint32 triggered_spell_id = 0;
switch(scriptId)
@ -7629,8 +7632,7 @@ bool Unit::HandleOverrideClassScriptAuraProc(Unit *pVictim, uint32 damage, Aura
case 4086: // Improved Mend Pet (Rank 1)
case 4087: // Improved Mend Pet (Rank 2)
{
int32 chance = triggeredByAura->GetSpellProto()->EffectBasePoints[triggeredByAura->GetEffIndex()];
if(!roll_chance_i(chance))
if(!roll_chance_i(triggerAmount))
return false;
triggered_spell_id = 24406;
@ -7661,6 +7663,23 @@ bool Unit::HandleOverrideClassScriptAuraProc(Unit *pVictim, uint32 damage, Aura
case 6953: // Warbringer
RemoveAurasAtMechanicImmunity(IMMUNE_TO_ROOT_AND_SNARE_MASK,0,true);
return true;
case 7010: // Revitalize (rank 1)
case 7011: // Revitalize (rank 2)
case 7012: // Revitalize (rank 3)
{
if(!roll_chance_i(triggerAmount))
return false;
switch( pVictim->getPowerType() )
{
case POWER_MANA: triggered_spell_id = 48542; break;
case POWER_RAGE: triggered_spell_id = 48541; break;
case POWER_ENERGY: triggered_spell_id = 48540; break;
case POWER_RUNIC_POWER: triggered_spell_id = 48543; break;
default: return false;
}
break;
}
}
// not processed
@ -12726,7 +12745,7 @@ bool Unit::IsTriggeredAtSpellProcEvent(Unit *pVictim, Aura* aura, SpellEntry con
}
// Aura added by spell can`t trogger from self (prevent drop charges/do triggers)
// But except periodic triggers (can triggered from self)
if(procSpell && procSpell->Id == spellProto->Id && !(spellProto->procFlags&PROC_FLAG_ON_TAKE_PERIODIC))
if(procSpell && procSpell->Id == spellProto->Id && !(spellProto->procFlags & PROC_FLAG_ON_TAKE_PERIODIC))
return false;
// Check if current equipment allows aura to proc

View file

@ -1,4 +1,4 @@
#ifndef __REVISION_NR_H__
#define __REVISION_NR_H__
#define REVISION_NR "9044"
#define REVISION_NR "9045"
#endif // __REVISION_NR_H__

View file

@ -1,6 +1,6 @@
#ifndef __REVISION_SQL_H__
#define __REVISION_SQL_H__
#define REVISION_DB_CHARACTERS "required_8874_01_characters_character_skills"
#define REVISION_DB_MANGOS "required_9034_01_mangos_spell_proc_event"
#define REVISION_DB_MANGOS "required_9045_02_mangos_spell_chain"
#define REVISION_DB_REALMD "required_9010_01_realmd_realmlist"
#endif // __REVISION_SQL_H__