mirror of
https://github.com/mangosfour/server.git
synced 2025-12-13 04:37:00 +00:00
[10223] Implement spell 44572 affect to permament stun immuned targets.
This also fix unexpected triggering effect any unrelated spell casts.
This commit is contained in:
parent
0e2a80477a
commit
093db9c033
6 changed files with 23 additions and 9 deletions
|
|
@ -24,7 +24,7 @@ CREATE TABLE `db_version` (
|
||||||
`version` varchar(120) default NULL,
|
`version` varchar(120) default NULL,
|
||||||
`creature_ai_version` varchar(120) default NULL,
|
`creature_ai_version` varchar(120) default NULL,
|
||||||
`cache_id` int(10) default '0',
|
`cache_id` int(10) default '0',
|
||||||
`required_10219_01_mangos_spell_proc_event` bit(1) default NULL
|
`required_10223_01_mangos_spell_proc_event` bit(1) default NULL
|
||||||
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Used DB version notes';
|
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Used DB version notes';
|
||||||
|
|
||||||
--
|
--
|
||||||
|
|
@ -18284,7 +18284,8 @@ INSERT INTO `spell_proc_event` VALUES
|
||||||
(67702, 0x7F, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 45),
|
(67702, 0x7F, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 45),
|
||||||
(67771, 0x7F, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 45),
|
(67771, 0x7F, 0, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 45),
|
||||||
(70664, 0x00, 7, 0x00000010, 0x00000010, 0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0),
|
(70664, 0x00, 7, 0x00000010, 0x00000010, 0x00000010, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0),
|
||||||
(70748, 0x00, 3, 0x00000000, 0x00000000, 0x00000000, 0x00200000, 0x00200000, 0x00200000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0);
|
(70748, 0x00, 3, 0x00000000, 0x00000000, 0x00000000, 0x00200000, 0x00200000, 0x00200000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0.000000, 0.000000, 0),
|
||||||
|
(71761, 0x00, 3, 0x00000000, 0x00000000, 0x00000000, 0x00100000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000100, 0.000000, 0.000000, 0);
|
||||||
|
|
||||||
/*!40000 ALTER TABLE `spell_proc_event` ENABLE KEYS */;
|
/*!40000 ALTER TABLE `spell_proc_event` ENABLE KEYS */;
|
||||||
UNLOCK TABLES;
|
UNLOCK TABLES;
|
||||||
|
|
|
||||||
5
sql/updates/10223_01_mangos_spell_proc_event.sql
Normal file
5
sql/updates/10223_01_mangos_spell_proc_event.sql
Normal file
|
|
@ -0,0 +1,5 @@
|
||||||
|
ALTER TABLE db_version CHANGE COLUMN required_10219_01_mangos_spell_proc_event required_10223_01_mangos_spell_proc_event bit;
|
||||||
|
|
||||||
|
delete from `spell_proc_event` where entry = 71761;
|
||||||
|
insert into `spell_proc_event` values
|
||||||
|
(71761, 0x00, 3, 0x00000000, 0x00000000, 0x00000000, 0x00100000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000000, 0x00000100, 0.000000, 0.000000, 0);
|
||||||
|
|
@ -117,6 +117,7 @@ pkgdata_DATA = \
|
||||||
10217_04_mangos_spell_chain.sql \
|
10217_04_mangos_spell_chain.sql \
|
||||||
10217_05_mangos_spell_proc_event.sql \
|
10217_05_mangos_spell_proc_event.sql \
|
||||||
10219_01_mangos_spell_proc_event.sql \
|
10219_01_mangos_spell_proc_event.sql \
|
||||||
|
10223_01_mangos_spell_proc_event.sql \
|
||||||
README
|
README
|
||||||
|
|
||||||
## Additional files to include when running 'make dist'
|
## Additional files to include when running 'make dist'
|
||||||
|
|
@ -214,4 +215,5 @@ EXTRA_DIST = \
|
||||||
10217_04_mangos_spell_chain.sql \
|
10217_04_mangos_spell_chain.sql \
|
||||||
10217_05_mangos_spell_proc_event.sql \
|
10217_05_mangos_spell_proc_event.sql \
|
||||||
10219_01_mangos_spell_proc_event.sql \
|
10219_01_mangos_spell_proc_event.sql \
|
||||||
|
10223_01_mangos_spell_proc_event.sql \
|
||||||
README
|
README
|
||||||
|
|
|
||||||
|
|
@ -2756,7 +2756,7 @@ SpellAuraProcResult Unit::HandleProcTriggerSpellAuraProc(Unit *pVictim, uint32 d
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case SPELLFAMILY_MAGE:
|
case SPELLFAMILY_MAGE:
|
||||||
if (auraSpellInfo->SpellIconID == 2127) // Blazing Speed
|
if (auraSpellInfo->SpellIconID == 2127) // Blazing Speed
|
||||||
{
|
{
|
||||||
switch (auraSpellInfo->Id)
|
switch (auraSpellInfo->Id)
|
||||||
{
|
{
|
||||||
|
|
@ -2765,18 +2765,24 @@ SpellAuraProcResult Unit::HandleProcTriggerSpellAuraProc(Unit *pVictim, uint32 d
|
||||||
trigger_spell_id = 31643;
|
trigger_spell_id = 31643;
|
||||||
break;
|
break;
|
||||||
default:
|
default:
|
||||||
sLog.outError("Unit::HandleProcTriggerSpellAuraProc: Spell %u miss posibly Blazing Speed",auraSpellInfo->Id);
|
sLog.outError("Unit::HandleProcTriggerSpellAuraProc: Spell %u miss possibly Blazing Speed",auraSpellInfo->Id);
|
||||||
return SPELL_AURA_PROC_FAILED;
|
return SPELL_AURA_PROC_FAILED;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// Persistent Shield (Scarab Brooch trinket)
|
else if(auraSpellInfo->Id == 26467) // Persistent Shield (Scarab Brooch trinket)
|
||||||
else if(auraSpellInfo->Id == 26467)
|
|
||||||
{
|
{
|
||||||
// This spell originally trigger 13567 - Dummy Trigger (vs dummy efect)
|
// This spell originally trigger 13567 - Dummy Trigger (vs dummy effect)
|
||||||
basepoints[0] = damage * 15 / 100;
|
basepoints[0] = damage * 15 / 100;
|
||||||
target = pVictim;
|
target = pVictim;
|
||||||
trigger_spell_id = 26470;
|
trigger_spell_id = 26470;
|
||||||
}
|
}
|
||||||
|
else if(auraSpellInfo->Id == 71761) // Deep Freeze Immunity State
|
||||||
|
{
|
||||||
|
// spell applied only to permanent immunes to stun targets (bosses)
|
||||||
|
if (pVictim->GetTypeId() != TYPEID_UNIT ||
|
||||||
|
(((Creature*)pVictim)->GetCreatureInfo()->MechanicImmuneMask & (1 << (MECHANIC_STUN - 1))) == 0)
|
||||||
|
return SPELL_AURA_PROC_FAILED;
|
||||||
|
}
|
||||||
break;
|
break;
|
||||||
case SPELLFAMILY_WARRIOR:
|
case SPELLFAMILY_WARRIOR:
|
||||||
// Deep Wounds (replace triggered spells to directly apply DoT), dot spell have finilyflags
|
// Deep Wounds (replace triggered spells to directly apply DoT), dot spell have finilyflags
|
||||||
|
|
|
||||||
|
|
@ -1,4 +1,4 @@
|
||||||
#ifndef __REVISION_NR_H__
|
#ifndef __REVISION_NR_H__
|
||||||
#define __REVISION_NR_H__
|
#define __REVISION_NR_H__
|
||||||
#define REVISION_NR "10222"
|
#define REVISION_NR "10223"
|
||||||
#endif // __REVISION_NR_H__
|
#endif // __REVISION_NR_H__
|
||||||
|
|
|
||||||
|
|
@ -1,6 +1,6 @@
|
||||||
#ifndef __REVISION_SQL_H__
|
#ifndef __REVISION_SQL_H__
|
||||||
#define __REVISION_SQL_H__
|
#define __REVISION_SQL_H__
|
||||||
#define REVISION_DB_CHARACTERS "required_10160_02_characters_pet_aura"
|
#define REVISION_DB_CHARACTERS "required_10160_02_characters_pet_aura"
|
||||||
#define REVISION_DB_MANGOS "required_10219_01_mangos_spell_proc_event"
|
#define REVISION_DB_MANGOS "required_10223_01_mangos_spell_proc_event"
|
||||||
#define REVISION_DB_REALMD "required_10008_01_realmd_realmd_db_version"
|
#define REVISION_DB_REALMD "required_10008_01_realmd_realmd_db_version"
|
||||||
#endif // __REVISION_SQL_H__
|
#endif // __REVISION_SQL_H__
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue