ich hab mal am script für die quest: QUEST_TOREK_ASSULT gearbeitet und z.b. die 3 gespawnten allys richtig gesetzt, und die factionid fon torek auf 85…damit er auch aufm dem weg in den posten die stehenden allys angreift…weil man solo des in dem lvl nicht schaffen würde…da trorek straight ahead in den posten rennt…egal was dem dem spieler is /emoticons/default_smile.png
beim ablauf des scripts is mir aufgefallen…das die quest nicht fehlschlägt sobald torek stirbt…und das müsste ja passieren
/*####
npc_torek
####*/
#define SAY_READY -1000106
#define SAY_MOVE -1000107
#define SAY_PREPARE -1000108
#define SAY_WIN -1000109
#define SAY_END -1000110
#define SPELL_REND 11977
#define SPELL_THUNDERCLAP 8078
#define QUEST_TOREK_ASSULT 6544
#define ENTRY_SPLINTERTREE_RAIDER 12859
#define ENTRY_DURIEL 12860
#define ENTRY_SILVERWING_SENTINEL 12896
#define ENTRY_SILVERWING_WARRIOR 12897
struct npc_torekAI : public npc_escortAI
{
npc_torekAI(Creature *c) : npc_escortAI© {}
uint32 Rend_Timer;
uint32 Thunderclap_Timer;
bool Completed;
void WaypointReached(uint32 i)
{
Player* pPlayer = GetPlayerForEscort();
if (!pPlayer)
return;
switch (i)
{
case 1:
DoScriptText(SAY_MOVE, me, pPlayer);
break;
case 8:
DoScriptText(SAY_PREPARE, me, pPlayer);
break;
case 19:
//TODO: verify location and creatures amount.
me->SummonCreature(ENTRY_DURIEL,1777.06,-2008.67,111.39,4.68,TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT,25000);
me->SummonCreature(ENTRY_SILVERWING_SENTINEL,1781.13,-2022.67,109.83,4.77,TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT,25000);
me->SummonCreature(ENTRY_SILVERWING_WARRIOR,1773.10,-2022.67,109.83,4.77,TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT,25000);
break;
case 20:
DoScriptText(SAY_WIN, me, pPlayer);
Completed = true;
if (pPlayer)
pPlayer->GroupEventHappens(QUEST_TOREK_ASSULT, me);
break;
case 21:
DoScriptText(SAY_END, me, pPlayer);
break;
}
}
void Reset()
{
Rend_Timer = 5000;
Thunderclap_Timer = 8000;
Completed = false;
}
void EnterCombat(Unit* /who/)
{
}
void JustSummoned(Creature* summoned)
{
summoned->AI()->AttackStart(me);
}
void UpdateAI(const uint32 diff)
{
npc_escortAI::UpdateAI(diff);
if (!UpdateVictim())
return;
if (Rend_Timer <= diff)
{
DoCast(me->getVictim(), SPELL_REND);
Rend_Timer = 20000;
} else Rend_Timer -= diff;
if (Thunderclap_Timer <= diff)
{
DoCast(me, SPELL_THUNDERCLAP);
Thunderclap_Timer = 30000;
} else Thunderclap_Timer -= diff;
}
};
bool QuestAccept_npc_torek(Player* pPlayer, Creature* pCreature, Quest const* quest)
{
if (quest->GetQuestId() == QUEST_TOREK_ASSULT)
{
//TODO: find companions, make them follow Torek, at any time (possibly done by core/database in future?)
DoScriptText(SAY_READY, pCreature, pPlayer);
pCreature->setFaction(85);
if (npc_escortAI* pEscortAI = CAST_AI(npc_torekAI, pCreature->AI()))
pEscortAI->Start(true, true, pPlayer->GetGUID());
}
return true;
}
CreatureAI* GetAI_npc_torek(Creature* pCreature)
{
return new npc_torekAI(pCreature);
}
ein weiterer fehler ist…das normalerweise 2 seiner räuber mitlaufen…(erinnerung vom offi) aber das passiert hier ebenfalls nicht
weis da einer einen rat ?