Skip to content

Commit

Permalink
[9121] Implement dummy effects for spell 50926,51026,51592 and 51961
Browse files Browse the repository at this point in the history
Note: Some adjustments in addition to original patch, using delay despawn.
Also provide sql update for proper work of affected spells (if already exist in database).

Signed-off-by: NoFantasy <nofantasy@nf.no>
  • Loading branch information
frcoun authored and NoFantasy committed Jan 7, 2010
1 parent b5d446f commit 56a6627
Show file tree
Hide file tree
Showing 6 changed files with 37 additions and 13 deletions.
2 changes: 1 addition & 1 deletion sql/mangos.sql
Expand Up @@ -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_9095_01_mangos_command` bit(1) default NULL
`required_9121_01_mangos_npc_spellclick_spells` bit(1) default NULL
) ENGINE=MyISAM DEFAULT CHARSET=utf8 ROW_FORMAT=FIXED COMMENT='Used DB version notes';

--
Expand Down
4 changes: 4 additions & 0 deletions sql/updates/9121_01_mangos_npc_spellclick_spells.sql
@@ -0,0 +1,4 @@
ALTER TABLE db_version CHANGE COLUMN required_9095_01_mangos_command required_9121_01_mangos_npc_spellclick_spells bit;

UPDATE npc_spellclick_spells SET cast_flags=1 WHERE spell_id IN (50926,51026,51592,51961);
DELETE FROM npc_spellclick_spells WHERE spell_id IN (50927,50737,51593,51037);
2 changes: 2 additions & 0 deletions sql/updates/Makefile.am
Expand Up @@ -225,6 +225,7 @@ pkgdata_DATA = \
9070_01_mangos_spell_proc_event.sql \
9074_01_mangos_command.sql \
9095_01_mangos_command.sql \
9121_01_mangos_npc_spellclick_spells.sql \
README

## Additional files to include when running 'make dist'
Expand Down Expand Up @@ -430,4 +431,5 @@ EXTRA_DIST = \
9070_01_mangos_spell_proc_event.sql \
9074_01_mangos_command.sql \
9095_01_mangos_command.sql \
9121_01_mangos_npc_spellclick_spells.sql \
README
38 changes: 28 additions & 10 deletions src/game/SpellEffects.cpp
Expand Up @@ -1175,27 +1175,45 @@ void Spell::EffectDummy(uint32 i)

return;
}
case 51582: //Rocket Boots Engaged (Rocket Boots Xtreme and Rocket Boots Xtreme Lite)
case 50926: // Gluttonous Lurkers: Create Zul'Drak Rat Cover
case 51026: // Create Drakkari Medallion Cover
case 51592: // Pickup Primordial Hatchling
case 51961: // Captured Chicken Cover
{
if (m_caster->GetTypeId() != TYPEID_PLAYER)
if (!unitTarget || unitTarget->GetTypeId() != TYPEID_UNIT || m_caster->GetTypeId() != TYPEID_PLAYER)
return;

if (BattleGround* bg = ((Player*)m_caster)->GetBattleGround())
bg->EventPlayerDroppedFlag((Player*)m_caster);
uint32 spellId = 0;

m_caster->CastSpell(m_caster, 30452, true, NULL);
switch(m_spellInfo->Id)
{
case 50926: spellId = 50927; break;
case 51026: spellId = 50737; break;
case 51592: spellId = 51593; break;
case 51961: spellId = 51037; break;
}

if (const SpellEntry *pSpell = sSpellStore.LookupEntry(spellId))
{
unitTarget->CastSpell(m_caster, spellId, true);

Creature* creatureTarget = (Creature*)unitTarget;

if (const SpellCastTimesEntry *pCastTime = sSpellCastTimesStore.LookupEntry(pSpell->CastingTimeIndex))
creatureTarget->ForcedDespawn(pCastTime->CastTime + 1);
}
return;
}
case 51592: // Pickup Primordial Hatchling
case 51582: //Rocket Boots Engaged (Rocket Boots Xtreme and Rocket Boots Xtreme Lite)
{
if (!unitTarget || unitTarget->GetTypeId() != TYPEID_UNIT)
if (m_caster->GetTypeId() != TYPEID_PLAYER)
return;

Creature* creatureTarget = (Creature*)unitTarget;
if (BattleGround* bg = ((Player*)m_caster)->GetBattleGround())
bg->EventPlayerDroppedFlag((Player*)m_caster);

creatureTarget->ForcedDespawn();
m_caster->CastSpell(m_caster, 30452, true, NULL);
return;

}
case 52308: // Take Sputum Sample
{
Expand Down
2 changes: 1 addition & 1 deletion src/shared/revision_nr.h
@@ -1,4 +1,4 @@
#ifndef __REVISION_NR_H__
#define __REVISION_NR_H__
#define REVISION_NR "9120"
#define REVISION_NR "9121"
#endif // __REVISION_NR_H__
2 changes: 1 addition & 1 deletion src/shared/revision_sql.h
@@ -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_9095_01_mangos_command"
#define REVISION_DB_MANGOS "required_9121_01_mangos_npc_spellclick_spells"
#define REVISION_DB_REALMD "required_9010_01_realmd_realmlist"
#endif // __REVISION_SQL_H__

0 comments on commit 56a6627

Please sign in to comment.