Квест http://ru.wowhead.com/?quest=12598
Надо использовать гранату на тоннеле - на самом тоннеле стоит моб 28352, итем с гранаты кастует думми спелл. Как сделать чтобы исключить возможность для игрока взрывать один и тот же тоннель? Убивать этого моба и делать время респавна например минут 10 - слишком грубо. Единственная идея, найти спелл "горения" тоннеля и пока на нем этот спелл висит его взрывать нельзя. Но не найду подходящий спелл.
Code
diff -r 00d3a383ee99 src/bindings/scripts/scripts/northrend/zuldrak.cpp
--- a/src/bindings/scripts/scripts/northrend/zuldrak.cpp Mon Dec 14 22:57:57 2009 +0300
+++ b/src/bindings/scripts/scripts/northrend/zuldrak.cpp Wed Dec 16 20:18:29 2009 +0300
@@ -746,6 +746,26 @@
return new npc_yggdrasAI(pCreature);
}
+/*######
+## npc_nethurbian_crater
+######*/
+
+bool EffectDummyCreature_npc_nethurbian_crater(Unit* pCaster, uint32 uiSpellId, uint32 uiEffIndex, Creature* pCreatureTarget)
+{
+ //always check spellid and effectindex
+ if (uiSpellId == 51381 && uiEffIndex == 0)
+ {
+ if (pCaster->GetTypeId == TYPEID_PLAYER)
+ if (CAST_PLR(who)->GetQuestStatus(12598) == QUEST_STATUS_INCOMPLETE)
+ CAST_PLR(who)->KilledMonsterCredit(28352, 0);
+
+ //always return true when we are handling this spell and effect
+ return true;
+ }
+
+ return false;
+}
+
void AddSC_zuldrak()
{
Script *newscript;
@@ -786,4 +806,9 @@
newscript->Name = "npc_yggdras";
newscript->GetAI = &GetAI_npc_yggdras;
newscript->RegisterSelf();
+
+ newscript = new Script;
+ newscript->Name = "npc_nethurbian_crater";
+ newscript->pEffectDummyCreature = &EffectDummyCreature_npc_nethurbian_crater;
+ newscript->RegisterSelf();
}
Код:
Code
UPDATE `creature_template` SET `ScriptName` = 'npc_nethurbian_crater' WHERE `entry` =28352;