Вот инфа, которую я достал из сниффа:
Код:
#q11940
npc=26127
+ 01.02.2011 2:19:58 46607 [SPELL_EFFECT_APPLY_AURA] [TARGET_DUELVSPLAYER] [SPELL_AURA_DUMMY] P->U - 25 c. - Драконий гарпун
+ 01.02.2011 2:20:00 46620 [SPELL_EFFECT_APPLY_AURA] [TARGET_DUELVSPLAYER] [SPELL_AURA_DUMMY] P->U - 10 c. - Красная драконья кровь
+ 01.02.2011 2:20:11 46673 [SPELL_EFFECT_DUMMY] [TARGET_DUELVSPLAYER] P->U - Инициатор захвата
+ 01.02.2011 2:20:11 46675 [SPELL_EFFECT_APPLY_AURA] [TARGET_SELF] [SPELL_AURA_DUMMY] 3 m. - Подчинение + SCRIPT
+ 01.02.2011 2:20:11 46678 [SPELL_EFFECT_APPLY_AURA] [TARGET_SELF] [SPELL_AURA_PERIODIC_TRIGGER_SPELL] = 43391 - Рвота дракона, периодический эффект
+ 01.02.2011 2:20:11 46691 [SPELL_EFFECT_APPLY_AURA] [TARGET_DUELVSPLAYER] [SPELL_AURA_DUMMY] U->P - 3m. - Детеныш дракона покорен
+ 01.02.2011 2:20:11 46674 [SPELL_EFFECT_APPLY_AURA] [TARGET_DUELVSPLAYER] [SPELL_AURA_DUMMY] U->P - Луч-веревка
01.02.2011 2:20:31 43391 [SPELL_EFFECT_DUMMY] [TARGET_SELF]
01.02.2011 2:20:44 46696 [SPELL_EFFECT_DUMMY] [TARGET_DUELVSPLAYER] P->U - Возвращение дракона
01.02.2011 2:20:47 46702 [SPELL_EFFECT_DUMMY] [TARGET_DUELVSPLAYER] U->npc=26117 - Сигнал завершения дракона
npc=26117
01.02.2011 2:20:47 46704 [SPELL_EFFECT_DUMMY] [TARGET_SCRIPT] self - 2.5 c. - Огненный шар Релораза
01.02.2011 2:20:47 26117->26127 Language: Universal, MonsterSay=Детеныш дракона Нексуса
01.02.2011 2:20:50 46703 [SPELL_EFFECT_APPLY_AURA] [TARGET_SELF] [SPELL_AURA_DUMMY] - Завершение испепеления
01.02.2011 2:20:50 Emote: EMOTE_ONESHOT_WOUNDCRITICAL (34)
npc=26175
01.02.2011 2:20:43 46693 [SPELL_EFFECT_SCRIPT_EFFECT] [TARGET_DUELVSPLAYER] U->P - Снятие аур
01.02.2011 2:20:43 killcredit=26175
Тестовый патч на первые спеллы:
Код:
diff --git a/src/game/SpellAuras.cpp b/src/game/SpellAuras.cpp
index 9d00d56..4b2078c 100644
--- a/src/game/SpellAuras.cpp
+++ b/src/game/SpellAuras.cpp
@@ -2018,6 +2018,25 @@ void Aura::HandleAuraDummy(bool apply, bool Real)
case 43873: // Headless Horseman Laugh
target->PlayDistanceSound(11965);
return;
+ case 46607: // Drake Harpoon
+ if (target->GetTypeId() != TYPEID_UNIT)
+ return;
+
+ if (Unit* caster = GetCaster())
+ // Red Dragonblood
+ caster->CastSpell(target, 46620, true, NULL, this);
+
+ return;
+ case 46675:
+ if (target->GetTypeId() != TYPEID_UNIT)
+ return;
+
+ target->AttackStop();
+ target->CombatStop(true);
+ target->getHostileRefManager().deleteReferences();
+ target->setFaction(35);
+ // allow script for the process of returning the NPC
+ return;
case 46699: // Requires No Ammo
if (target->GetTypeId() == TYPEID_PLAYER)
// not use ammo and not allow use
@@ -8727,6 +8746,20 @@ void SpellAuraHolder::HandleSpellSpecificBoosts(bool apply)
{
switch(GetId())
{
+ case 46620: // Red Dragonblood
+ {
+ if(Unit* caster = GetCaster())
+ if (caster->GetTypeId() == TYPEID_PLAYER && caster->isAlive() && m_target->GetTypeId() == TYPEID_UNIT && m_target->isAlive())
+ if (apply)
+ ((Creature*)m_target)->AI()->AttackStart(caster);
+ else
+ {
+ int32 bp = 1;
+ // Capture Trigger
+ caster->CastCustomSpell(m_target, 46673, &bp, NULL, NULL, true, NULL, NULL, GetCasterGuid());
+ }
+ return;
+ }
case 50720: // Vigilance (warrior spell but not have warrior family)
{
spellId1 = 68066; // Damage Reduction
diff --git a/src/game/SpellEffects.cpp b/src/game/SpellEffects.cpp
index 2e52e48..3dbc6cd 100644
--- a/src/game/SpellEffects.cpp
+++ b/src/game/SpellEffects.cpp
@@ -1499,6 +1499,24 @@ void Spell::EffectDummy(SpellEffectIndex eff_idx)
unitTarget->SetHealth(0);
return;
}
+ case 46673: // Capture Trigger
+ {
+ if (!m_caster || !unitTarget || m_caster->GetTypeId() != TYPEID_PLAYER || unitTarget->GetTypeId() != TYPEID_UNIT)
+ return;
+
+ // Subdued
+ unitTarget->CastSpell(unitTarget, 46675, true);
+ // Drake Vomit, Periodic
+ unitTarget->CastSpell(unitTarget, 46678, true);
+ // Drake Hatchling Subdued
+ unitTarget->CastSpell(m_caster, 46691, true);
+ }
+ case 46691: // Drake Hatchling Subdued
+ {
+ // Rope Beam
+ unitTarget->CastSpell(m_caster, 46674, true);
+ unitTarget->GetMotionMaster()->MoveFollow(m_caster, PET_FOLLOW_DIST, PET_FOLLOW_ANGLE);
+ }
case 46797: // Quest - Borean Tundra - Set Explosives Cart
{
if (!unitTarget)