mirror of
https://github.com/mangosfour/server.git
synced 2025-12-14 16:37:01 +00:00
[7033] Add some dummy triggers
DK - 49015 and ranks, 51459 and ranks, 48979 and ranks Druid - 48516 and ranks, 48496 and ranks Shaman - 55440 glyph Also fix send AttackStateUpdate on block Add some spell_proc_event data Fix sql update for 7031 Signed-off-by: DiSlord <dislord@nomail.com>
This commit is contained in:
parent
5bf32dd62a
commit
675a90b267
6 changed files with 184 additions and 4 deletions
|
|
@ -22,7 +22,7 @@
|
|||
DROP TABLE IF EXISTS `db_version`;
|
||||
CREATE TABLE `db_version` (
|
||||
`version` varchar(120) default NULL,
|
||||
`required_7026_01_mangos_battleground_template` bit(1) default NULL
|
||||
`required_7033_01_mangos_spell_proc_event` bit(1) default NULL
|
||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Used DB version notes';
|
||||
|
||||
--
|
||||
|
|
@ -16707,7 +16707,26 @@ INSERT INTO `spell_proc_event` VALUES
|
|||
(60572, 0x00000000, 11, 0x0000000090100000, 0x00000000, 0x00000000, 0, 0, 0),
|
||||
(60617, 0x00000000, 0, 0x0000000000000000, 0x00000000, 0x00000020, 0, 0, 0),
|
||||
(60826, 0x00000000, 15, 0x0000000001400000, 0x00000000, 0x00000000, 0, 0, 0),
|
||||
(61324, 0x00000000, 10, 0x0002000000000000, 0x00000000, 0x00000000, 0, 0, 0);
|
||||
(61324, 0x00000000, 10, 0x0002000000000000, 0x00000000, 0x00000000, 0, 0, 0),
|
||||
(48516, 0x00000000, 7, 0x0000000000000005, 0x00000000, 0x00000002, 0, 0, 30),
|
||||
(48521, 0x00000000, 7, 0x0000000000000005, 0x00000000, 0x00000002, 0, 0, 30),
|
||||
(48525, 0x00000000, 7, 0x0000000000000005, 0x00000000, 0x00000002, 0, 0, 30),
|
||||
(48496, 0x00000000, 7, 0x0200000200000060, 0x00000000, 0x00000002, 0, 0, 0),
|
||||
(48499, 0x00000000, 7, 0x0200000200000060, 0x00000000, 0x00000002, 0, 0, 0),
|
||||
(48500, 0x00000000, 7, 0x0200000200000060, 0x00000000, 0x00000002, 0, 0, 0),
|
||||
(53228, 0x00000000, 9, 0x0000000000000020, 0x00000000, 0x00000000, 0, 0, 0),
|
||||
(53232, 0x00000000, 9, 0x0000000000000020, 0x00000000, 0x00000000, 0, 0, 0),
|
||||
(55440, 0x00000000, 11, 0x0000000000000040, 0x00000000, 0x00000000, 0, 0, 0),
|
||||
(52795, 0x00000000, 6, 0x0000000000000001, 0x00000000, 0x00000000, 0, 0, 0),
|
||||
(52797, 0x00000000, 6, 0x0000000000000001, 0x00000000, 0x00000000, 0, 0, 0),
|
||||
(52798, 0x00000000, 6, 0x0000000000000001, 0x00000000, 0x00000000, 0, 0, 0),
|
||||
(52799, 0x00000000, 6, 0x0000000000000001, 0x00000000, 0x00000000, 0, 0, 0),
|
||||
(52800, 0x00000000, 6, 0x0000000000000001, 0x00000000, 0x00000000, 0, 0, 0),
|
||||
(55677, 0x00000000, 6, 0x0000000100000000, 0x00000000, 0x00000000, 0, 0, 0),
|
||||
(55680, 0x00000000, 6, 0x0000000000000200, 0x00000000, 0x00000000, 0, 0, 0),
|
||||
(47572, 0x00000000, 6, 0x0000000000010000, 0x00000000, 0x00000000, 0, 0, 0),
|
||||
(48159, 0x00000020, 6, 0x0000000000000000, 0x00000000, 0x00000000, 0, 0, 0),
|
||||
(48160, 0x00000020, 6, 0x0000000000000000, 0x00000000, 0x00000000, 0, 0, 0);
|
||||
/*!40000 ALTER TABLE `spell_proc_event` ENABLE KEYS */;
|
||||
UNLOCK TABLES;
|
||||
|
||||
|
|
|
|||
|
|
@ -1,3 +1,5 @@
|
|||
ALTER TABLE db_version CHANGE COLUMN required_7026_01_mangos_battleground_template required_7031_01_mangos_spell_proc_event bit;
|
||||
|
||||
-- (44445) Hot Streak (Rank 1)
|
||||
DELETE FROM `spell_proc_event` WHERE `entry` IN (44445);
|
||||
INSERT INTO `spell_proc_event` VALUES (44445, 0x00, 3, 0x0000100000000013, 0x00000000, 0x00000000, 0.000000, 0.000000, 0);
|
||||
|
|
|
|||
78
sql/updates/7033_01_mangos_spell_proc_event.sql
Normal file
78
sql/updates/7033_01_mangos_spell_proc_event.sql
Normal file
|
|
@ -0,0 +1,78 @@
|
|||
ALTER TABLE db_version CHANGE COLUMN required_7031_01_mangos_spell_proc_event required_7033_01_mangos_spell_proc_event bit;
|
||||
|
||||
-- (48516) Eclipse (Rank 1)
|
||||
DELETE FROM `spell_proc_event` WHERE `entry` IN (48516);
|
||||
INSERT INTO `spell_proc_event` VALUES (48516, 0x00, 7, 0x0000000000000005, 0x00000000, 0x00000002, 0.000000, 0.000000, 30);
|
||||
|
||||
-- (48521) Eclipse (Rank 2)
|
||||
DELETE FROM `spell_proc_event` WHERE `entry` IN (48521);
|
||||
INSERT INTO `spell_proc_event` VALUES (48521, 0x00, 7, 0x0000000000000005, 0x00000000, 0x00000002, 0.000000, 0.000000, 30);
|
||||
|
||||
-- (48525) Eclipse (Rank 3)
|
||||
DELETE FROM `spell_proc_event` WHERE `entry` IN (48525);
|
||||
INSERT INTO `spell_proc_event` VALUES (48525, 0x00, 7, 0x0000000000000005, 0x00000000, 0x00000002, 0.000000, 0.000000, 30);
|
||||
|
||||
-- (48496) Living Seed (Rank 1)
|
||||
DELETE FROM `spell_proc_event` WHERE `entry` IN (48496);
|
||||
INSERT INTO `spell_proc_event` VALUES (48496, 0x00, 7, 0x0200000200000060, 0x00000000, 0x00000002, 0.000000, 0.000000, 0);
|
||||
|
||||
-- (48499) Living Seed (Rank 2)
|
||||
DELETE FROM `spell_proc_event` WHERE `entry` IN (48499);
|
||||
INSERT INTO `spell_proc_event` VALUES (48499, 0x00, 7, 0x0200000200000060, 0x00000000, 0x00000002, 0.000000, 0.000000, 0);
|
||||
|
||||
-- (48500) Living Seed (Rank 3)
|
||||
DELETE FROM `spell_proc_event` WHERE `entry` IN (48500);
|
||||
INSERT INTO `spell_proc_event` VALUES (48500, 0x00, 7, 0x0200000200000060, 0x00000000, 0x00000002, 0.000000, 0.000000, 0);
|
||||
|
||||
-- (53228) Rapid Recuperation (Rank 1)
|
||||
DELETE FROM `spell_proc_event` WHERE `entry` IN (53228);
|
||||
INSERT INTO `spell_proc_event` VALUES (53228, 0x00, 9, 0x0000000000000020, 0x00000000, 0x00000000, 0.000000, 0.000000, 0);
|
||||
|
||||
-- (53232) Rapid Recuperation (Rank 2)
|
||||
DELETE FROM `spell_proc_event` WHERE `entry` IN (53232);
|
||||
INSERT INTO `spell_proc_event` VALUES (53232, 0x00, 9, 0x0000000000000020, 0x00000000, 0x00000000, 0.000000, 0.000000, 0);
|
||||
|
||||
-- (55440) Glyph of Healing Wave ()
|
||||
DELETE FROM `spell_proc_event` WHERE `entry` IN (55440);
|
||||
INSERT INTO `spell_proc_event` VALUES (55440, 0x00, 11, 0x0000000000000040, 0x00000000, 0x00000000, 0.000000, 0.000000, 0);
|
||||
|
||||
-- (52795) Borrowed Time (Rank 1)
|
||||
DELETE FROM `spell_proc_event` WHERE `entry` IN (52795);
|
||||
INSERT INTO `spell_proc_event` VALUES (52795, 0x00, 6, 0x0000000000000001, 0x00000000, 0x00000000, 0.000000, 0.000000, 0);
|
||||
|
||||
-- (52797) Borrowed Time (Rank 2)
|
||||
DELETE FROM `spell_proc_event` WHERE `entry` IN (52797);
|
||||
INSERT INTO `spell_proc_event` VALUES (52797, 0x00, 6, 0x0000000000000001, 0x00000000, 0x00000000, 0.000000, 0.000000, 0);
|
||||
|
||||
-- (52798) Borrowed Time (Rank 3)
|
||||
DELETE FROM `spell_proc_event` WHERE `entry` IN (52798);
|
||||
INSERT INTO `spell_proc_event` VALUES (52798, 0x00, 6, 0x0000000000000001, 0x00000000, 0x00000000, 0.000000, 0.000000, 0);
|
||||
|
||||
-- (52799) Borrowed Time (Rank 4)
|
||||
DELETE FROM `spell_proc_event` WHERE `entry` IN (52799);
|
||||
INSERT INTO `spell_proc_event` VALUES (52799, 0x00, 6, 0x0000000000000001, 0x00000000, 0x00000000, 0.000000, 0.000000, 0);
|
||||
|
||||
-- (52800) Borrowed Time (Rank 5)
|
||||
DELETE FROM `spell_proc_event` WHERE `entry` IN (52800);
|
||||
INSERT INTO `spell_proc_event` VALUES (52800, 0x00, 6, 0x0000000000000001, 0x00000000, 0x00000000, 0.000000, 0.000000, 0);
|
||||
|
||||
-- (55677) Glyph of Dispel Magic ()
|
||||
DELETE FROM `spell_proc_event` WHERE `entry` IN (55677);
|
||||
INSERT INTO `spell_proc_event` VALUES (55677, 0x00, 6, 0x0000000100000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0);
|
||||
|
||||
-- (55680) Glyph of Prayer of Healing ()
|
||||
DELETE FROM `spell_proc_event` WHERE `entry` IN (55680);
|
||||
INSERT INTO `spell_proc_event` VALUES (55680, 0x00, 6, 0x0000000000000200, 0x00000000, 0x00000000, 0.000000, 0.000000, 0);
|
||||
|
||||
-- (47572) Psychic Horror (Rank 2)
|
||||
DELETE FROM `spell_proc_event` WHERE `entry` IN (47572);
|
||||
INSERT INTO `spell_proc_event` VALUES (47572, 0x00, 6, 0x0000000000010000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0);
|
||||
|
||||
-- (48159) Vampiric Touch (Rank 4)
|
||||
DELETE FROM `spell_proc_event` WHERE `entry` IN (48159);
|
||||
INSERT INTO `spell_proc_event` VALUES (48159, 0x20, 6, 0x0000000000000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0);
|
||||
|
||||
-- (48160) Vampiric Touch (Rank 5)
|
||||
DELETE FROM `spell_proc_event` WHERE `entry` IN (48160);
|
||||
INSERT INTO `spell_proc_event` VALUES (48160, 0x20, 6, 0x0000000000000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0);
|
||||
|
||||
|
|
@ -112,6 +112,7 @@ pkgdata_DATA = \
|
|||
7024_01_mangos_spell_chain.sql \
|
||||
7026_01_mangos_battleground_template.sql \
|
||||
7031_01_mangos_spell_proc_event.sql \
|
||||
7033_01_mangos_spell_proc_event.sql \
|
||||
README
|
||||
|
||||
## Additional files to include when running 'make dist'
|
||||
|
|
@ -204,4 +205,5 @@ EXTRA_DIST = \
|
|||
7024_01_mangos_spell_chain.sql \
|
||||
7026_01_mangos_battleground_template.sql \
|
||||
7031_01_mangos_spell_proc_event.sql \
|
||||
7033_01_mangos_spell_proc_event.sql \
|
||||
README
|
||||
|
|
|
|||
|
|
@ -4044,7 +4044,7 @@ void Unit::SendAttackStateUpdate(CalcDamageInfo *damageInfo)
|
|||
data << (uint32)damageInfo->resist; // Resist
|
||||
}
|
||||
|
||||
data << (uint32)damageInfo->TargetState;
|
||||
data << (uint8)damageInfo->TargetState;
|
||||
data << (uint32)0;
|
||||
data << (uint32)0;
|
||||
|
||||
|
|
@ -4554,6 +4554,14 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, Aura* triggeredByAu
|
|||
}
|
||||
return false;
|
||||
}
|
||||
// Living Seed
|
||||
case 48504:
|
||||
{
|
||||
triggered_spell_id = 48503;
|
||||
basepoints0 = triggeredByAura->GetModifier()->m_amount;
|
||||
target = this;
|
||||
break;
|
||||
}
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
|
@ -4941,6 +4949,39 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, Aura* triggeredByAu
|
|||
break;
|
||||
}
|
||||
}
|
||||
// Eclipse
|
||||
if (dummySpell->SpellIconID == 2856)
|
||||
{
|
||||
if (!procSpell)
|
||||
return false;
|
||||
// Only 0 aura can proc
|
||||
if (triggeredByAura->GetEffIndex()!=0)
|
||||
return true;
|
||||
// Wrath crit
|
||||
if (procSpell->SpellFamilyFlags & 0x0000000000000001LL)
|
||||
{
|
||||
if (!roll_chance_i(60))
|
||||
return false;
|
||||
triggered_spell_id = 48518;
|
||||
target = this;
|
||||
break;
|
||||
}
|
||||
// Starfire crit
|
||||
if (procSpell->SpellFamilyFlags & 0x0000000000000004LL)
|
||||
{
|
||||
triggered_spell_id = 48517;
|
||||
target = this;
|
||||
break;
|
||||
}
|
||||
return false;
|
||||
}
|
||||
// Living Seed
|
||||
else if (dummySpell->SpellIconID == 2860)
|
||||
{
|
||||
triggered_spell_id = 48504;
|
||||
basepoints0 = triggeredByAura->GetModifier()->m_amount * damage / 100;
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case SPELLFAMILY_ROGUE:
|
||||
|
|
@ -5390,6 +5431,44 @@ bool Unit::HandleDummyAuraProc(Unit *pVictim, uint32 damage, Aura* triggeredByAu
|
|||
|
||||
return true;
|
||||
}
|
||||
// Glyph of Healing Wave
|
||||
case 55440:
|
||||
{
|
||||
// Not proc from self heals
|
||||
if (this==pVictim)
|
||||
return false;
|
||||
basepoints0 = triggeredByAura->GetModifier()->m_amount * damage / 100;
|
||||
target = this;
|
||||
triggered_spell_id = 55533;
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
case SPELLFAMILY_DEATHKNIGHT:
|
||||
{
|
||||
// Vendetta
|
||||
if (dummySpell->SpellFamilyFlags & 0x0000000000010000LL)
|
||||
{
|
||||
basepoints0 = triggeredByAura->GetModifier()->m_amount * GetMaxHealth() / 100;
|
||||
triggered_spell_id = 50181;
|
||||
target = this;
|
||||
break;
|
||||
}
|
||||
// Necrosis
|
||||
else if (dummySpell->SpellIconID == 2709)
|
||||
{
|
||||
basepoints0 = triggeredByAura->GetModifier()->m_amount * damage / 100;
|
||||
triggered_spell_id = 51460;
|
||||
break;
|
||||
}
|
||||
// Butchery
|
||||
else if (dummySpell->SpellIconID == 2664)
|
||||
{
|
||||
basepoints0 = triggeredByAura->GetModifier()->m_amount;
|
||||
triggered_spell_id = 50163;
|
||||
target = this;
|
||||
break;
|
||||
}
|
||||
break;
|
||||
}
|
||||
default:
|
||||
|
|
|
|||
|
|
@ -1,4 +1,4 @@
|
|||
#ifndef __REVISION_NR_H__
|
||||
#define __REVISION_NR_H__
|
||||
#define REVISION_NR "7032"
|
||||
#define REVISION_NR "7033"
|
||||
#endif // __REVISION_NR_H__
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue