mirror of
https://github.com/araxiaonline/TrinityCore.git
synced 2026-06-21 07:22:02 -04:00
First step of comment style refactoring to doxygen-style.
This commit is contained in:
@@ -140,7 +140,7 @@ public:
|
||||
}
|
||||
|
||||
/// Delete a user account and all associated characters in this realm
|
||||
/// \todo This function has to be enhanced to respect the login/realm split (delete char, delete account chars in realm then delete account)
|
||||
/// @todo This function has to be enhanced to respect the login/realm split (delete char, delete account chars in realm then delete account)
|
||||
static bool HandleAccountDeleteCommand(ChatHandler* handler, char const* args)
|
||||
{
|
||||
if (!*args)
|
||||
|
||||
@@ -443,7 +443,7 @@ public:
|
||||
stmt->setUInt16(0, uint16(AT_LOGIN_CHANGE_RACE));
|
||||
if (target)
|
||||
{
|
||||
// TODO : add text into database
|
||||
/// @todo add text into database
|
||||
handler->PSendSysMessage(LANG_CUSTOMIZE_PLAYER, handler->GetNameLink(target).c_str());
|
||||
target->SetAtLoginFlag(AT_LOGIN_CHANGE_RACE);
|
||||
stmt->setUInt32(1, target->GetGUIDLow());
|
||||
@@ -451,7 +451,7 @@ public:
|
||||
else
|
||||
{
|
||||
std::string oldNameLink = handler->playerLink(targetName);
|
||||
// TODO : add text into database
|
||||
/// @todo add text into database
|
||||
handler->PSendSysMessage(LANG_CUSTOMIZE_PLAYER_GUID, oldNameLink.c_str(), GUID_LOPART(targetGuid));
|
||||
stmt->setUInt32(1, GUID_LOPART(targetGuid));
|
||||
}
|
||||
|
||||
@@ -174,7 +174,7 @@ public:
|
||||
return false;
|
||||
}
|
||||
|
||||
// TODO: is it really necessary to add both the real and DB table guid here ?
|
||||
/// @todo is it really necessary to add both the real and DB table guid here ?
|
||||
sObjectMgr->AddGameobjectToGrid(guidLow, sObjectMgr->GetGOData(guidLow));
|
||||
|
||||
handler->PSendSysMessage(LANG_GAMEOBJECT_ADD, objectId, objectInfo->name.c_str(), guidLow, x, y, z);
|
||||
|
||||
@@ -2211,7 +2211,7 @@ public:
|
||||
// from console show not existed sender
|
||||
MailSender sender(MAIL_NORMAL, handler->GetSession() ? handler->GetSession()->GetPlayer()->GetGUIDLow() : 0, MAIL_STATIONERY_GM);
|
||||
|
||||
//- TODO: Fix poor design
|
||||
/// @todo Fix poor design
|
||||
SQLTransaction trans = CharacterDatabase.BeginTransaction();
|
||||
MailDraft(subject, text)
|
||||
.SendMailTo(trans, MailReceiver(target, GUID_LOPART(targetGuid)), sender);
|
||||
|
||||
@@ -82,7 +82,7 @@ public:
|
||||
{ "item", SEC_GAMEMASTER, false, &HandleNpcAddVendorItemCommand, "", NULL },
|
||||
{ "move", SEC_GAMEMASTER, false, &HandleNpcAddMoveCommand, "", NULL },
|
||||
{ "temp", SEC_GAMEMASTER, false, &HandleNpcAddTempSpawnCommand, "", NULL },
|
||||
//{ TODO: fix or remove this command
|
||||
//{@todo fix or remove this command
|
||||
{ "weapon", SEC_ADMINISTRATOR, false, &HandleNpcAddWeaponCommand, "", NULL },
|
||||
//}
|
||||
{ "", SEC_GAMEMASTER, false, &HandleNpcAddCommand, "", NULL },
|
||||
@@ -114,7 +114,7 @@ public:
|
||||
{ "spawndist", SEC_GAMEMASTER, false, &HandleNpcSetSpawnDistCommand, "", NULL },
|
||||
{ "spawntime", SEC_GAMEMASTER, false, &HandleNpcSetSpawnTimeCommand, "", NULL },
|
||||
{ "data", SEC_ADMINISTRATOR, false, &HandleNpcSetDataCommand, "", NULL },
|
||||
//{ TODO: fix or remove these commands
|
||||
//{ @todo fix or remove these commands
|
||||
{ "name", SEC_GAMEMASTER, false, &HandleNpcSetNameCommand, "", NULL },
|
||||
{ "subname", SEC_GAMEMASTER, false, &HandleNpcSetSubNameCommand, "", NULL },
|
||||
//}
|
||||
@@ -1421,7 +1421,7 @@ public:
|
||||
return true;
|
||||
}
|
||||
|
||||
//TODO: NpcCommands that need to be fixed :
|
||||
/// @todo NpcCommands that need to be fixed :
|
||||
static bool HandleNpcAddWeaponCommand(ChatHandler* /*handler*/, char const* /*args*/)
|
||||
{
|
||||
/*if (!*args)
|
||||
|
||||
@@ -700,7 +700,7 @@ public:
|
||||
|
||||
wpCreature2->SaveToDB(map->GetId(), (1 << map->GetSpawnMode()), chr->GetPhaseMaskForSpawn());
|
||||
// To call _LoadGoods(); _LoadQuests(); CreateTrainerSpells();
|
||||
//TODO: Should we first use "Create" then use "LoadFromDB"?
|
||||
/// @todo Should we first use "Create" then use "LoadFromDB"?
|
||||
if (!wpCreature2->LoadCreatureFromDB(wpCreature2->GetDBTableGUIDLow(), map))
|
||||
{
|
||||
handler->PSendSysMessage(LANG_WAYPOINT_VP_NOTCREATED, VISUAL_WAYPOINT);
|
||||
|
||||
@@ -109,7 +109,7 @@ enum GrimstoneTexts
|
||||
SAY_TEXT6 = 5
|
||||
};
|
||||
|
||||
//TODO: implement quest part of event (different end boss)
|
||||
/// @todo implement quest part of event (different end boss)
|
||||
class npc_grimstone : public CreatureScript
|
||||
{
|
||||
public:
|
||||
@@ -160,7 +160,7 @@ public:
|
||||
CanWalk = false;
|
||||
}
|
||||
|
||||
//TODO: move them to center
|
||||
/// @todo move them to center
|
||||
void SummonRingMob()
|
||||
{
|
||||
if (Creature* tmp = me->SummonCreature(RingMob[MobSpawnId], 608.960f, -235.322f, -53.907f, 1.857f, TEMPSUMMON_DEAD_DESPAWN, 0))
|
||||
@@ -172,7 +172,7 @@ public:
|
||||
MobDeath_Timer = 2500;
|
||||
}
|
||||
|
||||
//TODO: move them to center
|
||||
/// @todo move them to center
|
||||
void SummonRingBoss()
|
||||
{
|
||||
if (Creature* tmp = me->SummonCreature(RingBoss[rand()%6], 644.300f, -175.989f, -53.739f, 3.418f, TEMPSUMMON_DEAD_DESPAWN, 0))
|
||||
|
||||
@@ -30,7 +30,7 @@ enum Spells
|
||||
|
||||
enum Adds
|
||||
{
|
||||
MODEL_REND_ON_DRAKE = 9723, // TODO: use creature_template 10459 instead of its modelid
|
||||
MODEL_REND_ON_DRAKE = 9723, /// @todo use creature_template 10459 instead of its modelid
|
||||
NPC_RAGE_TALON_FIRE_TONG = 10372,
|
||||
NPC_CHROMATIC_WHELP = 10442,
|
||||
NPC_CHROMATIC_DRAGONSPAWN = 10447,
|
||||
|
||||
@@ -44,7 +44,7 @@ enum Midnight
|
||||
|
||||
MOUNTED_DISPLAYID = 16040,
|
||||
|
||||
//Attumen (TODO: Use the summoning spell instead of Creature id. It works, but is not convenient for us)
|
||||
//Attumen (@todo Use the summoning spell instead of Creature id. It works, but is not convenient for us)
|
||||
SUMMON_ATTUMEN = 15550,
|
||||
};
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
/* ScriptData
|
||||
SDName: Instance_Karazhan
|
||||
SD%Complete: 70
|
||||
SDComment: Instance Script for Karazhan to help in various encounters. TODO: GameObject visibility for Opera event.
|
||||
SDComment: Instance Script for Karazhan to help in various encounters. @todo GameObject visibility for Opera event.
|
||||
SDCategory: Karazhan
|
||||
EndScriptData */
|
||||
|
||||
@@ -224,7 +224,7 @@ public:
|
||||
|
||||
switch (m_uiOperaEvent)
|
||||
{
|
||||
//TODO: Set Object visibilities for Opera based on performance
|
||||
/// @todo Set Object visibilities for Opera based on performance
|
||||
case EVENT_OZ:
|
||||
break;
|
||||
|
||||
|
||||
@@ -134,7 +134,7 @@ public:
|
||||
|
||||
void Reset()
|
||||
{
|
||||
// TODO: Timers
|
||||
/// @todo Timers
|
||||
FireballTimer = 0;
|
||||
PhoenixTimer = 10000;
|
||||
FlameStrikeTimer = 25000;
|
||||
|
||||
@@ -493,7 +493,7 @@ public:
|
||||
}
|
||||
}
|
||||
|
||||
// TODO: spells
|
||||
/// @todo spells
|
||||
|
||||
CombatAI::UpdateAI(uiDiff);
|
||||
}
|
||||
@@ -758,7 +758,7 @@ public:
|
||||
if (CAST_PLR(owner)->GetQuestStatus(12698) == QUEST_STATUS_INCOMPLETE)
|
||||
CAST_CRE(who)->CastSpell(owner, 52517, true);
|
||||
|
||||
//Todo: Creatures must not be removed, but, must instead
|
||||
/// @todo Creatures must not be removed, but, must instead
|
||||
// stand next to Gothik and be commanded into the pit
|
||||
// and dig into the ground.
|
||||
CAST_CRE(who)->DespawnOrUnsummon();
|
||||
|
||||
@@ -690,7 +690,7 @@ public:
|
||||
return;
|
||||
}
|
||||
|
||||
//TODO: simplify text's selection
|
||||
/// @todo simplify text's selection
|
||||
|
||||
switch (player->getRace())
|
||||
{
|
||||
|
||||
+1
-1
@@ -19,7 +19,7 @@
|
||||
/* ScriptData
|
||||
SDName: Boss_High_Inquisitor_Fairbanks
|
||||
SD%Complete: 100
|
||||
SDComment: TODO: if this guy not involved in some special event, remove (and let ACID script)
|
||||
SDComment: @todo if this guy not involved in some special event, remove (and let ACID script)
|
||||
SDCategory: Scarlet Monastery
|
||||
EndScriptData */
|
||||
|
||||
|
||||
@@ -22,7 +22,7 @@ SDComment: Sinister Reflection Model, Armageddon Visual, SAY_KJ_SHADOWSPIKE3, Em
|
||||
SDCategory: Sunwell_Plateau
|
||||
EndScriptData */
|
||||
|
||||
//TODO rewrite Armageddon
|
||||
/// @todo rewrite Armageddon
|
||||
|
||||
#include "ScriptMgr.h"
|
||||
#include "ScriptedCreature.h"
|
||||
@@ -105,7 +105,7 @@ enum Spells
|
||||
SPELL_ARMAGEDDON_DAMAGE = 45915, // This does the area damage
|
||||
|
||||
/* Shield Orb Spells*/
|
||||
SPELL_SHADOW_BOLT = 45680, //45679 would be correct but triggers to often //TODO fix console error
|
||||
SPELL_SHADOW_BOLT = 45680, //45679 would be correct but triggers to often /// @todo fix console error
|
||||
|
||||
/* Anveena's spells and cosmetics (Or, generally, everything that has "Anveena" in name) */
|
||||
SPELL_ANVEENA_PRISON = 46367, // She hovers locked within a bubble
|
||||
@@ -784,7 +784,7 @@ public:
|
||||
break;
|
||||
case TIMER_FLAME_DART: //Phase 3
|
||||
DoCastAOE(SPELL_FLAME_DART, false);
|
||||
Timer[TIMER_FLAME_DART] = 3000; //TODO Timer
|
||||
Timer[TIMER_FLAME_DART] = 3000; /// @todo Timer
|
||||
break;
|
||||
case TIMER_DARKNESS: //Phase 3
|
||||
if (!me->IsNonMeleeSpellCasted(false))
|
||||
@@ -918,7 +918,7 @@ public:
|
||||
|
||||
void Reset()
|
||||
{
|
||||
// TODO: Timers!
|
||||
/// @todo Timers!
|
||||
ShadowBoltVolleyTimer = urand(8000, 14000); // So they don't all cast it in the same moment.
|
||||
FelfirePortalTimer = 20000;
|
||||
if (instance)
|
||||
|
||||
@@ -155,7 +155,7 @@ class boss_nalorakk : public CreatureScript
|
||||
Berserk_Timer = 600000;
|
||||
|
||||
inBearForm = false;
|
||||
// me->SetUInt32Value(UNIT_VIRTUAL_ITEM_SLOT_ID + 1, 5122); // TODO: find the correct equipment id
|
||||
// me->SetUInt32Value(UNIT_VIRTUAL_ITEM_SLOT_ID + 1, 5122); /// @todo find the correct equipment id
|
||||
}
|
||||
|
||||
void SendAttacker(Unit* target)
|
||||
|
||||
@@ -23,7 +23,7 @@
|
||||
#include "zulgurub.h"
|
||||
|
||||
/*
|
||||
* TODO:
|
||||
* @todo
|
||||
* - Fix timers (research some more)
|
||||
*/
|
||||
|
||||
|
||||
@@ -601,7 +601,7 @@ class npc_elder_kekek : public CreatureScript
|
||||
|
||||
/*######
|
||||
## npc_the_etymidian
|
||||
## TODO: A red crystal as a gift for the great one should be spawned during the event.
|
||||
## @todo A red crystal as a gift for the great one should be spawned during the event.
|
||||
######*/
|
||||
class npc_the_etymidian : public CreatureScript
|
||||
{
|
||||
|
||||
+1
-1
@@ -19,7 +19,7 @@
|
||||
SDName: Boss epoch
|
||||
SDAuthor: Tartalo
|
||||
SD%Complete: 80
|
||||
SDComment: TODO: Intro, consecutive attacks to a random target durin time wrap, adjust timers
|
||||
SDComment: @todo Intro, consecutive attacks to a random target durin time wrap, adjust timers
|
||||
SDCategory:
|
||||
Script Data End */
|
||||
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
SDName: Boss mal_ganis
|
||||
SDAuthor: Tartalo
|
||||
SD%Complete: 80
|
||||
SDComment: TODO: Intro & outro
|
||||
SDComment: @todo Intro & outro
|
||||
SDCategory:
|
||||
Script Data End */
|
||||
|
||||
|
||||
+1
-1
@@ -19,7 +19,7 @@
|
||||
SDName: Boss salramm
|
||||
SDAuthor: Tartalo
|
||||
SD%Complete: 80
|
||||
SDComment: TODO: Intro
|
||||
SDComment: @todo Intro
|
||||
SDCategory:
|
||||
Script Data End */
|
||||
|
||||
|
||||
@@ -229,7 +229,7 @@ public:
|
||||
if (me->HasAura(SPELL_CHANNEL))
|
||||
me->RemoveAura(SPELL_CHANNEL);
|
||||
|
||||
//TODO: start the post-event here
|
||||
/// @todo start the post-event here
|
||||
instance->SetData(TYPE_MEDIVH, DONE);
|
||||
}
|
||||
} else Check_Timer -= diff;
|
||||
|
||||
+1
-1
@@ -152,7 +152,7 @@ public:
|
||||
|
||||
void UpdateAI(uint32 diff)
|
||||
{
|
||||
//TODO: make this work
|
||||
/// @todo make this work
|
||||
if (CanPatrol && wpId == 0)
|
||||
{
|
||||
me->GetMotionMaster()->MovePoint(DrakeWP[0].wpId, DrakeWP[0].x, DrakeWP[0].y, DrakeWP[0].z);
|
||||
|
||||
@@ -507,7 +507,7 @@ public:
|
||||
{
|
||||
switch (summoned->GetEntry())
|
||||
{
|
||||
//TODO: make Scarloc start into event instead, and not start attack directly
|
||||
/// @todo make Scarloc start into event instead, and not start attack directly
|
||||
case MOB_ENTRY_BARN_GUARDSMAN:
|
||||
case MOB_ENTRY_BARN_PROTECTOR:
|
||||
case MOB_ENTRY_BARN_LOOKOUT:
|
||||
@@ -543,7 +543,7 @@ public:
|
||||
if (!UpdateVictim())
|
||||
return;
|
||||
|
||||
//TODO: add his abilities'n-crap here
|
||||
/// @todo add his abilities'n-crap here
|
||||
if (!LowHp && HealthBelowPct(20))
|
||||
{
|
||||
Talk(SAY_TH_RANDOM_LOW_HP);
|
||||
|
||||
@@ -63,7 +63,7 @@ enum Points
|
||||
|
||||
const Position AyamissAirPos = { -9689.292f, 1547.912f, 48.02729f, 0.0f };
|
||||
const Position AltarPos = { -9717.18f, 1517.72f, 27.4677f, 0.0f };
|
||||
// TODO: These below are probably incorrect, taken from SD2
|
||||
/// @todo These below are probably incorrect, taken from SD2
|
||||
const Position SwarmerPos = { -9647.352f, 1578.062f, 55.32f, 0.0f };
|
||||
const Position LarvaPos[2] =
|
||||
{
|
||||
|
||||
@@ -74,7 +74,7 @@ Position CrystalCoordinates[NUM_CRYSTALS] =
|
||||
};
|
||||
|
||||
float RoomRadius = 165.0f;
|
||||
uint8 const NUM_TORNADOS = 5; // TODO: This number is completly random!
|
||||
uint8 const NUM_TORNADOS = 5; /// @todo This number is completly random!
|
||||
uint8 const NUM_WEAKNESS = 5;
|
||||
uint32 const SpellWeakness[NUM_WEAKNESS] = { 25177, 25178, 25180, 25181, 25183 };
|
||||
Position const RoomCenter = { -9343.041992f, 1923.278198f, 85.555984f, 0.0 };
|
||||
|
||||
@@ -150,7 +150,7 @@ class boss_skeram : public CreatureScript
|
||||
events.ScheduleEvent(EVENT_ARCANE_EXPLOSION, urand(8000, 18000));
|
||||
break;
|
||||
case EVENT_FULLFILMENT:
|
||||
// TODO: For some weird reason boss does not cast this
|
||||
/// @todo For some weird reason boss does not cast this
|
||||
// Spell actually works, tested in duel
|
||||
DoCast(SelectTarget(SELECT_TARGET_RANDOM, 0, 0.0f, true), SPELL_TRUE_FULFILLMENT, true);
|
||||
events.ScheduleEvent(EVENT_FULLFILMENT, urand(20000, 30000));
|
||||
|
||||
@@ -151,7 +151,7 @@ struct boss_twinemperorsAI : public ScriptedAI
|
||||
Creature* pOtherBoss = GetOtherBoss();
|
||||
if (pOtherBoss)
|
||||
{
|
||||
// TODO: we should activate the other boss location so he can start attackning even if nobody
|
||||
/// @todo we should activate the other boss location so he can start attackning even if nobody
|
||||
// is near I dont know how to do that
|
||||
ScriptedAI* otherAI = CAST_AI(ScriptedAI, pOtherBoss->AI());
|
||||
if (!pOtherBoss->isInCombat())
|
||||
|
||||
@@ -81,8 +81,8 @@ enum MovePoints
|
||||
ROOM_CENTER = 1
|
||||
};
|
||||
|
||||
Position const ViscidusCoord = { -7992.36f, 908.19f, -52.62f, 1.68f }; // TODO: Visci isn't in room middle
|
||||
float const RoomRadius = 40.0f; // TODO: Not sure if its correct
|
||||
Position const ViscidusCoord = { -7992.36f, 908.19f, -52.62f, 1.68f }; /// @todo Visci isn't in room middle
|
||||
float const RoomRadius = 40.0f; /// @todo Not sure if its correct
|
||||
|
||||
class boss_viscidus : public CreatureScript
|
||||
{
|
||||
|
||||
@@ -370,7 +370,7 @@ public:
|
||||
if (destroyingDoor)
|
||||
{
|
||||
instance->DoUseDoorOrButton(instance->GetData64(GO_END_DOOR));
|
||||
//TODO: leave the area...
|
||||
/// @todo leave the area...
|
||||
me->DespawnOrUnsummon();
|
||||
};
|
||||
}
|
||||
|
||||
@@ -91,7 +91,7 @@ class npc_torek : public CreatureScript
|
||||
Talk(SAY_PREPARE, player->GetGUID());
|
||||
break;
|
||||
case 19:
|
||||
//TODO: verify location and creatures amount.
|
||||
/// @todo verify location and creatures amount.
|
||||
me->SummonCreature(ENTRY_DURIEL, 1776.73f, -2049.06f, 109.83f, 1.54f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 25000);
|
||||
me->SummonCreature(ENTRY_SILVERWING_SENTINEL, 1774.64f, -2049.41f, 109.83f, 1.40f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 25000);
|
||||
me->SummonCreature(ENTRY_SILVERWING_WARRIOR, 1778.73f, -2049.50f, 109.83f, 1.67f, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 25000);
|
||||
@@ -154,7 +154,7 @@ class npc_torek : public CreatureScript
|
||||
{
|
||||
if (quest->GetQuestId() == QUEST_TOREK_ASSULT)
|
||||
{
|
||||
//TODO: find companions, make them follow Torek, at any time (possibly done by core/database in future?)
|
||||
/// @todo find companions, make them follow Torek, at any time (possibly done by core/database in future?)
|
||||
creature->AI()->Talk(SAY_READY, player->GetGUID());
|
||||
creature->setFaction(113);
|
||||
|
||||
|
||||
@@ -99,7 +99,7 @@ public:
|
||||
if (!UpdateVictim())
|
||||
return;
|
||||
|
||||
//TODO: add abilities for the different creatures
|
||||
/// @todo add abilities for the different creatures
|
||||
DoMeleeAttackIfReady();
|
||||
}
|
||||
};
|
||||
|
||||
@@ -57,7 +57,7 @@ enum Kerlonian
|
||||
FACTION_KER_ESCORTEE = 113
|
||||
};
|
||||
|
||||
//TODO: make concept similar as "ringo" -escort. Find a way to run the scripted attacks, _if_ player are choosing road.
|
||||
/// @todo make concept similar as "ringo" -escort. Find a way to run the scripted attacks, _if_ player are choosing road.
|
||||
class npc_kerlonian : public CreatureScript
|
||||
{
|
||||
public:
|
||||
|
||||
@@ -342,7 +342,7 @@ class npc_tiger_matriarch : public CreatureScript
|
||||
};
|
||||
|
||||
// These models was found in sniff.
|
||||
// TODO: generalize these models with race from dbc
|
||||
/// @todo generalize these models with race from dbc
|
||||
uint32 const trollmodel[] =
|
||||
{11665, 11734, 11750, 12037, 12038, 12042, 12049, 12849, 13529, 14759, 15570, 15701,
|
||||
15702, 1882, 1897, 1976, 2025, 27286, 2734, 2735, 4084, 4085, 4087, 4089, 4231, 4357,
|
||||
|
||||
@@ -336,7 +336,7 @@ enum Hendel
|
||||
NPC_TERVOSH = 4967
|
||||
};
|
||||
|
||||
//TODO: develop this further, end event not created
|
||||
/// @todo develop this further, end event not created
|
||||
class npc_private_hendel : public CreatureScript
|
||||
{
|
||||
public:
|
||||
|
||||
@@ -149,7 +149,7 @@ enum ThrallWarchief
|
||||
#define GOSSIP_STW5 "I live only to serve, Warchief! My life is empty and meaningless without your guidance."
|
||||
#define GOSSIP_STW6 "Of course, Warchief!"
|
||||
|
||||
//TODO: verify abilities/timers
|
||||
/// @todo verify abilities/timers
|
||||
class npc_thrall_warchief : public CreatureScript
|
||||
{
|
||||
public:
|
||||
|
||||
@@ -42,7 +42,7 @@ enum CairneBloodhoof
|
||||
};
|
||||
|
||||
#define GOSSIP_HCB "I know this is rather silly but a young ward who is a bit shy would like your hoofprint."
|
||||
//TODO: verify abilities/timers
|
||||
/// @todo verify abilities/timers
|
||||
class npc_cairne_bloodhoof : public CreatureScript
|
||||
{
|
||||
public:
|
||||
|
||||
@@ -780,7 +780,7 @@ class npc_halion_controller : public CreatureScript
|
||||
}
|
||||
|
||||
private:
|
||||
/// TODO: Find out a better scaling, if any.
|
||||
//// @todo Find out a better scaling, if any.
|
||||
// [0 , 0.98[: Corporeality goes down
|
||||
// [0.98, 0.99]: Do nothing
|
||||
// ]0.99, 1.01[: Twilight Mending
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
*/
|
||||
|
||||
/*
|
||||
* Comment: TODO: spawn troll waves
|
||||
* Comment: @todo spawn troll waves
|
||||
*/
|
||||
|
||||
#include "ScriptMgr.h"
|
||||
|
||||
@@ -22,7 +22,7 @@
|
||||
#include "SpellInfo.h"
|
||||
|
||||
/*
|
||||
* TODO:
|
||||
* @todo
|
||||
* - Fix model id during unleash soul -> seems DB issue 36503 is missing (likewise 36504 is also missing).
|
||||
* - Fix outro npc movement
|
||||
*/
|
||||
|
||||
@@ -34,7 +34,7 @@ enum Spells
|
||||
SPELL_IMPENDING_DESPAIR = 72426,
|
||||
SPELL_DEFILING_HORROR = 72435,
|
||||
SPELL_HOPELESSNESS = 72395,
|
||||
H_SPELL_HOPELESSNESS = 72390, // TODO: not in dbc. Add in DB.
|
||||
H_SPELL_HOPELESSNESS = 72390, /// @todo not in dbc. Add in DB.
|
||||
};
|
||||
|
||||
enum Events
|
||||
@@ -79,7 +79,7 @@ public:
|
||||
|
||||
events.ScheduleEvent(EVENT_QUIVERING_STRIKE, 23000);
|
||||
events.ScheduleEvent(EVENT_IMPENDING_DESPAIR, 9000);
|
||||
events.ScheduleEvent(EVENT_DEFILING_HORROR, urand(25000, 45000)); // TODO adjust timer.
|
||||
events.ScheduleEvent(EVENT_DEFILING_HORROR, urand(25000, 45000)); /// @todo adjust timer.
|
||||
}
|
||||
|
||||
void JustDied(Unit* /*killer*/)
|
||||
@@ -122,7 +122,7 @@ public:
|
||||
break;
|
||||
case EVENT_DEFILING_HORROR:
|
||||
DoCast(SPELL_DEFILING_HORROR);
|
||||
events.ScheduleEvent(EVENT_DEFILING_HORROR, urand(25000, 45000)); // TODO adjust timer.
|
||||
events.ScheduleEvent(EVENT_DEFILING_HORROR, urand(25000, 45000)); /// @todo adjust timer.
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
@@ -72,10 +72,10 @@ public:
|
||||
if (instance)
|
||||
instance->SetData(DATA_MARWYN_EVENT, IN_PROGRESS);
|
||||
|
||||
events.ScheduleEvent(EVENT_OBLITERATE, 30000); // TODO Check timer
|
||||
events.ScheduleEvent(EVENT_OBLITERATE, 30000); /// @todo Check timer
|
||||
events.ScheduleEvent(EVENT_WELL_OF_CORRUPTION, 13000);
|
||||
events.ScheduleEvent(EVENT_CORRUPTED_FLESH, 20000);
|
||||
events.ScheduleEvent(EVENT_SHARED_SUFFERING, 20000); // TODO Check timer
|
||||
events.ScheduleEvent(EVENT_SHARED_SUFFERING, 20000); /// @todo Check timer
|
||||
}
|
||||
|
||||
void JustDied(Unit* /*killer*/)
|
||||
|
||||
+10
-10
@@ -270,7 +270,7 @@ public:
|
||||
events.ScheduleEvent(EVENT_INTRO_A2_3, 10000);
|
||||
break;
|
||||
case EVENT_INTRO_A2_3:
|
||||
// TODO: she's doing some kind of spell casting emote
|
||||
/// @todo she's doing some kind of spell casting emote
|
||||
instance->HandleGameObject(instance->GetData64(DATA_FROSTMOURNE), true);
|
||||
events.ScheduleEvent(EVENT_INTRO_A2_4, 10000);
|
||||
break;
|
||||
@@ -367,7 +367,7 @@ public:
|
||||
break;
|
||||
case EVENT_INTRO_H2_3:
|
||||
Talk(SAY_SYLVANAS_INTRO_3);
|
||||
// TODO: she's doing some kind of spell casting emote
|
||||
/// @todo she's doing some kind of spell casting emote
|
||||
events.ScheduleEvent(EVENT_INTRO_H2_4, 6000);
|
||||
break;
|
||||
case EVENT_INTRO_H2_4:
|
||||
@@ -524,7 +524,7 @@ public:
|
||||
Talk(SAY_SYLVANAS_INTRO_END);
|
||||
|
||||
me->GetMotionMaster()->MovePoint(0, LichKingSpawnPos);
|
||||
// TODO: Loralen/Koreln shall run also
|
||||
/// @todo Loralen/Koreln shall run also
|
||||
events.ScheduleEvent(EVENT_INTRO_END, 10000);
|
||||
break;
|
||||
|
||||
@@ -537,7 +537,7 @@ public:
|
||||
break;
|
||||
|
||||
case EVENT_SKIP_INTRO:
|
||||
// TODO: implement
|
||||
/// @todo implement
|
||||
|
||||
if (Creature* pFalric = me->GetCreature(*me, instance->GetData64(DATA_FALRIC)))
|
||||
pFalric->SetVisible(true);
|
||||
@@ -545,7 +545,7 @@ public:
|
||||
pMarwyn->SetVisible(true);
|
||||
|
||||
me->GetMotionMaster()->MovePoint(0, LichKingSpawnPos);
|
||||
// TODO: Loralen/Koreln shall run also
|
||||
/// @todo Loralen/Koreln shall run also
|
||||
|
||||
events.ScheduleEvent(EVENT_INTRO_END, 15000);
|
||||
break;
|
||||
@@ -651,7 +651,7 @@ public:
|
||||
|
||||
void EnterCombat(Unit* /*who*/)
|
||||
{
|
||||
events.ScheduleEvent(EVENT_SHADOW_WORD_PAIN, 8000); // TODO: adjust timers
|
||||
events.ScheduleEvent(EVENT_SHADOW_WORD_PAIN, 8000); /// @todo adjust timers
|
||||
events.ScheduleEvent(EVENT_CIRCLE_OF_DESTRUCTION, 12000);
|
||||
events.ScheduleEvent(EVENT_COWER_IN_FEAR, 10000);
|
||||
events.ScheduleEvent(EVENT_DARK_MENDING, 20000);
|
||||
@@ -733,7 +733,7 @@ public:
|
||||
|
||||
void EnterCombat(Unit* /*who*/)
|
||||
{
|
||||
events.ScheduleEvent(EVENT_FIREBALL, 3000); // TODO: adjust timers
|
||||
events.ScheduleEvent(EVENT_FIREBALL, 3000); /// @todo adjust timers
|
||||
events.ScheduleEvent(EVENT_FLAMESTRIKE, 6000);
|
||||
events.ScheduleEvent(EVENT_FROSTBOLT, 9000);
|
||||
events.ScheduleEvent(EVENT_CHAINS_OF_ICE, 12000);
|
||||
@@ -834,7 +834,7 @@ public:
|
||||
|
||||
void EnterCombat(Unit* /*who*/)
|
||||
{
|
||||
events.ScheduleEvent(EVENT_SHADOW_STEP, 8000); // TODO: adjust timers
|
||||
events.ScheduleEvent(EVENT_SHADOW_STEP, 8000); /// @todo adjust timers
|
||||
events.ScheduleEvent(EVENT_DEADLY_POISON, 5000);
|
||||
events.ScheduleEvent(EVENT_ENVENOMED_DAGGER_THROW, 10000);
|
||||
events.ScheduleEvent(EVENT_KIDNEY_SHOT, 12000);
|
||||
@@ -905,7 +905,7 @@ public:
|
||||
|
||||
void EnterCombat(Unit* /*who*/)
|
||||
{
|
||||
events.ScheduleEvent(EVENT_SPECTRAL_STRIKE, 5000); // TODO: adjust timers
|
||||
events.ScheduleEvent(EVENT_SPECTRAL_STRIKE, 5000); /// @todo adjust timers
|
||||
events.ScheduleEvent(EVENT_SHIELD_BASH, 10000);
|
||||
events.ScheduleEvent(EVENT_TORTURED_ENRAGE, 15000);
|
||||
}
|
||||
@@ -970,7 +970,7 @@ public:
|
||||
|
||||
void EnterCombat(Unit* /*who*/)
|
||||
{
|
||||
events.ScheduleEvent(EVENT_SHOOT, 2000); // TODO: adjust timers
|
||||
events.ScheduleEvent(EVENT_SHOOT, 2000); /// @todo adjust timers
|
||||
events.ScheduleEvent(EVENT_CURSED_ARROW, 10000);
|
||||
events.ScheduleEvent(EVENT_FROST_TRAP, 1000);
|
||||
events.ScheduleEvent(EVENT_ICE_SHOT, 15000);
|
||||
|
||||
+4
-4
@@ -182,7 +182,7 @@ public:
|
||||
|
||||
void OnGameObjectCreate(GameObject* go)
|
||||
{
|
||||
// TODO: init state depending on encounters
|
||||
/// @todo init state depending on encounters
|
||||
switch (go->GetEntry())
|
||||
{
|
||||
case GO_FROSTMOURNE:
|
||||
@@ -364,7 +364,7 @@ public:
|
||||
DoUpdateWorldState(WORLD_STATE_HOR_WAVE_COUNT, uiWaveCount);
|
||||
HandleGameObject(uiFrontDoor, true);
|
||||
|
||||
// TODO
|
||||
/// @todo
|
||||
// in case of wipe, the event is normally restarted by jumping into the center of the room.
|
||||
// As I can't find a trigger area there, just respawn Jaina/Sylvanas so the event may be restarted.
|
||||
if (Creature* pJaina = instance->GetCreature(uiJainaPart1))
|
||||
@@ -385,7 +385,7 @@ public:
|
||||
|
||||
summoner->SetVisible(true);
|
||||
|
||||
// TODO: do composition at random. # of spawn also depends on uiWaveCount
|
||||
/// @todo do composition at random. # of spawn also depends on uiWaveCount
|
||||
// As of now, it is just one of each.
|
||||
index = urand(0, ENCOUNTER_WAVE_MERCENARY-1);
|
||||
summoner->SummonCreature(NPC_WAVE_MERCENARY, MercenarySpawnPos[index], TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 0);
|
||||
@@ -417,7 +417,7 @@ public:
|
||||
AddWave();
|
||||
break;
|
||||
case EVENT_START_LICH_KING:
|
||||
// TODO
|
||||
/// @todo
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -448,7 +448,7 @@ class boss_krick : public CreatureScript
|
||||
break;
|
||||
case EVENT_OUTRO_9:
|
||||
Talk(SAY_KRICK_OUTRO_8);
|
||||
// TODO: Tyrannus starts killing Krick.
|
||||
/// @todo Tyrannus starts killing Krick.
|
||||
// there shall be some visual spell effect
|
||||
if (Creature* tyrannus = ObjectAccessor::GetCreature(*me, _tyrannusGUID))
|
||||
tyrannus->CastSpell(me, SPELL_NECROMANTIC_POWER, true); //not sure if it's the right spell :/
|
||||
|
||||
@@ -63,7 +63,7 @@ enum ScriptTexts
|
||||
SAY_INTRO_ALLIANCE_1 = 0,
|
||||
SAY_INTRO_ALLIANCE_4 = 1,
|
||||
SAY_INTRO_ALLIANCE_5 = 2,
|
||||
SAY_OUTRO_ALLIANCE_1 = 3, // TODO ALLIANCE OUTRO
|
||||
SAY_OUTRO_ALLIANCE_1 = 3, /// @todo ALLIANCE OUTRO
|
||||
SAY_OUTRO_ALLIANCE_2 = 4,
|
||||
SAY_OUTRO_ALLIANCE_3 = 5,
|
||||
SAY_OUTRO_ALLIANCE_4 = 6,
|
||||
|
||||
@@ -138,7 +138,7 @@ enum Spells
|
||||
SPELL_IN_FROSTMOURNE_ROOM = 74276,
|
||||
SPELL_KILL_FROSTMOURNE_PLAYERS = 75127,
|
||||
SPELL_HARVESTED_SOUL = 72679,
|
||||
SPELL_TRIGGER_VILE_SPIRIT_HEROIC = 73582, // TODO: Cast every 3 seconds during Frostmourne phase, targets a Wicked Spirit amd activates it
|
||||
SPELL_TRIGGER_VILE_SPIRIT_HEROIC = 73582, /// @todo Cast every 3 seconds during Frostmourne phase, targets a Wicked Spirit amd activates it
|
||||
|
||||
// Frostmourne
|
||||
SPELL_LIGHTS_FAVOR = 69382,
|
||||
|
||||
@@ -42,7 +42,7 @@ class icecrown_citadel_teleport : public GameObjectScript
|
||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Teleport to the Deathbringer's Rise.", GOSSIP_SENDER_ICC_PORT, DEATHBRINGER_S_RISE_TELEPORT);
|
||||
if (instance->GetData(DATA_COLDFLAME_JETS) == DONE)
|
||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Teleport to the Upper Spire.", GOSSIP_SENDER_ICC_PORT, UPPER_SPIRE_TELEPORT);
|
||||
// TODO: Gauntlet event before Sindragosa
|
||||
/// @todo Gauntlet event before Sindragosa
|
||||
if (instance->GetBossState(DATA_VALITHRIA_DREAMWALKER) == DONE)
|
||||
player->ADD_GOSSIP_ITEM(GOSSIP_ICON_CHAT, "Teleport to Sindragosa's Lair", GOSSIP_SENDER_ICC_PORT, SINDRAGOSA_S_LAIR_TELEPORT);
|
||||
}
|
||||
|
||||
@@ -95,7 +95,7 @@ public:
|
||||
|
||||
void KilledUnit(Unit* victim)
|
||||
{
|
||||
//Force the player to spawn corpse scarabs via spell, TODO: Check percent chance for scarabs, 20% at the moment
|
||||
/// Force the player to spawn corpse scarabs via spell, @todo Check percent chance for scarabs, 20% at the moment
|
||||
if (!(rand()%5))
|
||||
if (victim->GetTypeId() == TYPEID_PLAYER)
|
||||
victim->CastSpell(victim, SPELL_SUMMON_CORPSE_SCARABS_PLR, true, NULL, NULL, me->GetGUID());
|
||||
@@ -164,13 +164,13 @@ public:
|
||||
events.ScheduleEvent(EVENT_IMPALE, urand(10000, 20000));
|
||||
break;
|
||||
case EVENT_LOCUST:
|
||||
// TODO : Add Text
|
||||
/// @todo Add Text
|
||||
DoCast(me, RAID_MODE(SPELL_LOCUST_SWARM_10, SPELL_LOCUST_SWARM_25));
|
||||
DoSummon(MOB_CRYPT_GUARD, GuardSummonPos, 0, TEMPSUMMON_CORPSE_DESPAWN);
|
||||
events.ScheduleEvent(EVENT_LOCUST, 90000);
|
||||
break;
|
||||
case EVENT_SPAWN_GUARDIAN_NORMAL:
|
||||
// TODO : Add Text
|
||||
/// @todo Add Text
|
||||
DoSummon(MOB_CRYPT_GUARD, GuardSummonPos, 0, TEMPSUMMON_CORPSE_DESPAWN);
|
||||
break;
|
||||
case EVENT_BERSERK:
|
||||
|
||||
@@ -107,7 +107,7 @@ class boss_faerlina : public CreatureScript
|
||||
{
|
||||
if (spell->Id == SPELL_WIDOWS_EMBRACE || spell->Id == H_SPELL_WIDOWS_EMBRACE)
|
||||
{
|
||||
// TODO : Add Text
|
||||
/// @todo Add Text
|
||||
++_frenzyDispels;
|
||||
_delayFrenzy = true;
|
||||
me->Kill(caster);
|
||||
@@ -153,7 +153,7 @@ class boss_faerlina : public CreatureScript
|
||||
events.ScheduleEvent(EVENT_FIRE, urand(6000, 18000));
|
||||
break;
|
||||
case EVENT_FRENZY:
|
||||
// TODO : Add Text
|
||||
/// @todo Add Text
|
||||
if (!me->HasAura(SPELL_WIDOWS_EMBRACE_HELPER))
|
||||
DoCast(me, RAID_MODE(SPELL_FRENZY, H_SPELL_FRENZY));
|
||||
else
|
||||
|
||||
@@ -69,7 +69,7 @@ public:
|
||||
if (who->GetEntry() == MOB_ZOMBIE && me->IsWithinDistInMap(who, 7))
|
||||
{
|
||||
SetGazeOn(who);
|
||||
// TODO: use a script text
|
||||
/// @todo use a script text
|
||||
me->MonsterTextEmote(EMOTE_NEARBY, 0, true);
|
||||
}
|
||||
else
|
||||
@@ -109,12 +109,12 @@ public:
|
||||
events.ScheduleEvent(EVENT_WOUND, 10000);
|
||||
break;
|
||||
case EVENT_ENRAGE:
|
||||
// TODO : Add missing text
|
||||
/// @todo Add missing text
|
||||
DoCast(me, SPELL_ENRAGE);
|
||||
events.ScheduleEvent(EVENT_ENRAGE, 15000);
|
||||
break;
|
||||
case EVENT_DECIMATE:
|
||||
// TODO : Add missing text
|
||||
/// @todo Add missing text
|
||||
DoCastAOE(SPELL_DECIMATE);
|
||||
events.ScheduleEvent(EVENT_DECIMATE, 105000);
|
||||
break;
|
||||
|
||||
@@ -153,7 +153,7 @@ public:
|
||||
events.ScheduleEvent(EVENT_FEVER, urand(20000, 25000));
|
||||
break;
|
||||
case EVENT_PHASE:
|
||||
// TODO : Add missing texts for both phase switches
|
||||
/// @todo Add missing texts for both phase switches
|
||||
EnterPhase(phase == PHASE_FIGHT ? PHASE_DANCE : PHASE_FIGHT);
|
||||
break;
|
||||
case EVENT_ERUPT:
|
||||
|
||||
@@ -474,7 +474,7 @@ public:
|
||||
{
|
||||
if (uiGuardiansOfIcecrownTimer <= diff)
|
||||
{
|
||||
// TODO : Add missing text
|
||||
/// @todo Add missing text
|
||||
if (Creature* pGuardian = DoSummon(NPC_ICECROWN, Pos[RAND(2, 5, 8, 11)]))
|
||||
pGuardian->SetFloatValue(UNIT_FIELD_COMBATREACH, 2);
|
||||
++nGuardiansOfIcecrownCount;
|
||||
|
||||
@@ -103,7 +103,7 @@ public:
|
||||
switch (eventId)
|
||||
{
|
||||
case EVENT_WRAP:
|
||||
// TODO : Add missing text
|
||||
/// @todo Add missing text
|
||||
for (uint8 i = 0; i < RAID_MODE(1, 2); ++i)
|
||||
{
|
||||
if (Unit* target = SelectTarget(SELECT_TARGET_RANDOM, 1, 0, true, -SPELL_WEB_WRAP))
|
||||
@@ -134,7 +134,7 @@ public:
|
||||
events.ScheduleEvent(EVENT_FRENZY, 600000);
|
||||
break;
|
||||
case EVENT_SUMMON:
|
||||
// TODO : Add missing text
|
||||
/// @todo Add missing text
|
||||
uint8 amount = urand(8, 10);
|
||||
for (uint8 i = 0; i < amount; ++i)
|
||||
DoSummon(MOB_SPIDERLING, me, 0, TEMPSUMMON_CORPSE_DESPAWN);
|
||||
|
||||
@@ -86,7 +86,7 @@ public:
|
||||
{
|
||||
_JustDied();
|
||||
DoPlaySoundToSet(me, SOUND_DEATH);
|
||||
me->CastSpell(me, SPELL_HOPELESS, true); // TODO: this may affect other creatures
|
||||
me->CastSpell(me, SPELL_HOPELESS, true); /// @todo this may affect other creatures
|
||||
}
|
||||
|
||||
void EnterCombat(Unit* /*who*/)
|
||||
|
||||
@@ -78,7 +78,7 @@ public:
|
||||
return true;
|
||||
}
|
||||
|
||||
// TO DO: this should be handled in map, maybe add a summon function in map
|
||||
/// @todo this should be handled in map, maybe add a summon function in map
|
||||
// There is no other way afaik...
|
||||
void SpawnGameObject(uint32 entry, Position& pos)
|
||||
{
|
||||
|
||||
@@ -244,7 +244,7 @@ class spell_intense_cold : public SpellScriptLoader
|
||||
if (aurEff->GetBase()->GetStackAmount() < 2)
|
||||
return;
|
||||
Unit* caster = GetCaster();
|
||||
//TODO: the caster should be boss but not the player
|
||||
/// @todo the caster should be boss but not the player
|
||||
if (!caster || !caster->GetAI())
|
||||
return;
|
||||
caster->GetAI()->SetGUID(GetTarget()->GetGUID(), DATA_INTENSE_COLD);
|
||||
|
||||
@@ -206,7 +206,7 @@ public:
|
||||
instance->SetData(TYPE_BJARNGRIM, DONE);
|
||||
}
|
||||
|
||||
//TODO: remove when removal is done by the core
|
||||
/// @todo remove when removal is done by the core
|
||||
void DoRemoveStanceAura(uint8 uiStance)
|
||||
{
|
||||
switch (uiStance)
|
||||
|
||||
@@ -164,7 +164,7 @@ public:
|
||||
//this part should be in the core
|
||||
if (pSpell->Id == SPELL_SHATTER || pSpell->Id == H_SPELL_SHATTER)
|
||||
{
|
||||
// todo: we need eventmap to kill this stuff
|
||||
/// @todo we need eventmap to kill this stuff
|
||||
//clear this, if we are still performing
|
||||
if (bIsSlam)
|
||||
{
|
||||
|
||||
@@ -1176,7 +1176,7 @@ class npc_lorekeeper : public CreatureScript
|
||||
if (Creature* Branz = creature->FindNearestCreature(NPC_BRANZ_BRONZBEARD, 1000, true))
|
||||
{
|
||||
Delorah->GetMotionMaster()->MovePoint(0, Branz->GetPositionX()-4, Branz->GetPositionY(), Branz->GetPositionZ());
|
||||
//TODO Delorah->AI()->Talk(xxxx, Branz->GetGUID()); when reached at branz
|
||||
/// @todo Delorah->AI()->Talk(xxxx, Branz->GetGUID()); when reached at branz
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -1608,7 +1608,7 @@ class FlameLeviathanPursuedTargetSelector
|
||||
|
||||
bool operator()(WorldObject* target) const
|
||||
{
|
||||
//! No players, only vehicles (todo: check if blizzlike)
|
||||
//! No players, only vehicles (@todo check if blizzlike)
|
||||
Creature* creatureTarget = target->ToCreature();
|
||||
if (!creatureTarget)
|
||||
return true;
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
#include "GridNotifiersImpl.h"
|
||||
#include "ulduar.h"
|
||||
|
||||
/* #TODO: Achievements
|
||||
/* @todo Achievements
|
||||
Storm Cloud (Shaman ability)
|
||||
Destroying of Toasty Fires
|
||||
*/
|
||||
|
||||
@@ -26,7 +26,7 @@
|
||||
/* ScriptData
|
||||
SDName: boss_kologarn
|
||||
SD%Complete: 90
|
||||
SDComment: TODO: Achievements
|
||||
SDComment: @todo Achievements
|
||||
SDCategory: Ulduar
|
||||
EndScriptData */
|
||||
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
* with this program. If not, see <http://www.gnu.org/licenses/>.
|
||||
*/
|
||||
|
||||
//TODO: Harpoon chain from 62505 should not get removed when other chain is applied
|
||||
/// @todo Harpoon chain from 62505 should not get removed when other chain is applied
|
||||
|
||||
#include "ScriptMgr.h"
|
||||
#include "ScriptedCreature.h"
|
||||
|
||||
@@ -82,7 +82,7 @@ class boss_thorim : public CreatureScript
|
||||
{
|
||||
if (!UpdateVictim())
|
||||
return;
|
||||
//SPELLS TODO:
|
||||
//SPELLS @todo
|
||||
|
||||
//
|
||||
DoMeleeAttackIfReady();
|
||||
|
||||
@@ -16,7 +16,7 @@
|
||||
*/
|
||||
|
||||
/*
|
||||
TODO:
|
||||
@todo
|
||||
Fix void zone damage
|
||||
If the boss is to close to a scrap pile -> no summon -- Needs retail confirmation
|
||||
make the life sparks visible... /? Need test
|
||||
@@ -674,7 +674,7 @@ class mob_boombot : public CreatureScript
|
||||
me->SetFloatValue(UNIT_FIELD_MINDAMAGE, 15000.0f);
|
||||
me->SetFloatValue(UNIT_FIELD_MAXDAMAGE, 18000.0f);
|
||||
|
||||
// Todo: proper waypoints?
|
||||
/// @todo proper waypoints?
|
||||
if (Creature* pXT002 = me->GetCreature(*me, _instance->GetData64(BOSS_XT002)))
|
||||
me->GetMotionMaster()->MoveFollow(pXT002, 0.0f, 0.0f);
|
||||
}
|
||||
|
||||
@@ -65,10 +65,10 @@ class boss_koralon : public CreatureScript
|
||||
{
|
||||
DoCast(me, SPELL_BURNING_FURY);
|
||||
|
||||
events.ScheduleEvent(EVENT_BURNING_FURY, 20000); // TODO check timer
|
||||
events.ScheduleEvent(EVENT_BURNING_FURY, 20000); /// @todo check timer
|
||||
events.ScheduleEvent(EVENT_BURNING_BREATH, 15000); // 1st after 15sec, then every 45sec
|
||||
events.ScheduleEvent(EVENT_METEOR_FISTS_A, 75000); // 1st after 75sec, then every 45sec
|
||||
events.ScheduleEvent(EVENT_FLAME_CINDER_A, 30000); // TODO check timer
|
||||
events.ScheduleEvent(EVENT_FLAME_CINDER_A, 30000); /// @todo check timer
|
||||
|
||||
_EnterCombat();
|
||||
}
|
||||
|
||||
@@ -55,7 +55,7 @@ enum Actions
|
||||
ACTION_WATER_ELEMENT_KILLED = 2,
|
||||
};
|
||||
|
||||
// TODO get those positions from spawn of creature 29326
|
||||
/// @todo get those positions from spawn of creature 29326
|
||||
#define MAX_SPAWN_LOC 5
|
||||
static Position SpawnLoc[MAX_SPAWN_LOC]=
|
||||
{
|
||||
|
||||
@@ -792,7 +792,7 @@ public:
|
||||
void ActivateCrystal()
|
||||
{
|
||||
// Kill all mobs registered with SetData64(ADD_TRASH_MOB)
|
||||
// TODO: All visual, spells etc
|
||||
/// @todo All visual, spells etc
|
||||
for (std::set<uint64>::const_iterator itr = trashMobs.begin(); itr != trashMobs.end(); ++itr)
|
||||
{
|
||||
Creature* creature = instance->GetCreature(*itr);
|
||||
|
||||
@@ -362,7 +362,7 @@ public:
|
||||
return true;
|
||||
}
|
||||
|
||||
// TODO: make prisoners help (unclear if summoned or using npc's from surrounding cages (summon inside small cages?))
|
||||
/// @todo make prisoners help (unclear if summoned or using npc's from surrounding cages (summon inside small cages?))
|
||||
struct npc_daegarnAI : public ScriptedAI
|
||||
{
|
||||
npc_daegarnAI(Creature* creature) : ScriptedAI(creature) { }
|
||||
|
||||
@@ -948,7 +948,7 @@ public:
|
||||
bird->Kill(bird);
|
||||
crunchy->GetMotionMaster()->MovePoint(0, bird->GetPositionX(), bird->GetPositionY(),
|
||||
bird->GetMap()->GetWaterOrGroundLevel(bird->GetPositionX(), bird->GetPositionY(), bird->GetPositionZ()));
|
||||
// TODO: Make crunchy perform emote eat when he reaches the bird
|
||||
/// @todo Make crunchy perform emote eat when he reaches the bird
|
||||
|
||||
break;
|
||||
}
|
||||
|
||||
@@ -20,7 +20,7 @@
|
||||
|
||||
#include "OutdoorPvP.h"
|
||||
|
||||
// TODO: "sometimes" set to neutral
|
||||
/// @todo "sometimes" set to neutral
|
||||
|
||||
enum OutdoorPvPNASpells
|
||||
{
|
||||
|
||||
@@ -267,5 +267,5 @@ class OutdoorPvPZM : public OutdoorPvP
|
||||
uint32 m_HordeTowersControlled;
|
||||
};
|
||||
|
||||
// todo: flag carrier death/leave/mount/activitychange should give back the gossip options
|
||||
/// @todo flag carrier death/leave/mount/activitychange should give back the gossip options
|
||||
#endif
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
/* ScriptData
|
||||
SDName: Black_Temple
|
||||
SD%Complete: 95
|
||||
SDComment: Spirit of Olum: Player Teleporter to Seer Kanai Teleport after defeating Naj'entus and Supremus. TODO: Find proper gossip.
|
||||
SDComment: Spirit of Olum: Player Teleporter to Seer Kanai Teleport after defeating Naj'entus and Supremus. @todo Find proper gossip.
|
||||
SDCategory: Black Temple
|
||||
EndScriptData */
|
||||
|
||||
|
||||
@@ -577,7 +577,7 @@ public:
|
||||
if (victim == me)
|
||||
return;
|
||||
|
||||
// TODO: Find better way to handle emote
|
||||
/// @todo Find better way to handle emote
|
||||
switch (urand(0, 1))
|
||||
{
|
||||
case 0:
|
||||
@@ -2091,7 +2091,7 @@ public:
|
||||
// {
|
||||
// if (Unit* Illidan = Unit::GetUnit(*me, IllidanGUID)
|
||||
// {
|
||||
// // TODO: Find proper spells and properly apply 'caged' Illidan effect
|
||||
// /// @todo Find proper spells and properly apply 'caged' Illidan effect
|
||||
// }
|
||||
// }
|
||||
}
|
||||
|
||||
@@ -142,7 +142,7 @@ public:
|
||||
//this part should be in the core
|
||||
if (pSpell->Id == SPELL_SHATTER)
|
||||
{
|
||||
// todo: use eventmap to kill this stuff
|
||||
/// @todo use eventmap to kill this stuff
|
||||
//clear this, if we are still performing
|
||||
if (m_bPerformingGroundSlam)
|
||||
{
|
||||
|
||||
@@ -138,7 +138,7 @@ class boss_grand_warlock_nethekurse : public CreatureScript
|
||||
{
|
||||
Talk(SAY_TAUNT);
|
||||
|
||||
//TODO: kill the peons first
|
||||
/// @todo kill the peons first
|
||||
IsIntroEvent = false;
|
||||
PeonEngagedCount = 4;
|
||||
PeonKilledCount = 4;
|
||||
|
||||
@@ -103,7 +103,7 @@ class boss_gatewatcher_iron_hand : public CreatureScript
|
||||
break;
|
||||
case EVENT_JACKHAMMER:
|
||||
Talk(EMOTE_HAMMER);
|
||||
//TODO: expect cast this about 5 times in a row (?), announce it by emote only once
|
||||
/// @todo expect cast this about 5 times in a row (?), announce it by emote only once
|
||||
DoCastVictim(SPELL_JACKHAMMER, true);
|
||||
if (roll_chance_i(50))
|
||||
Talk(SAY_HAMMER);
|
||||
|
||||
@@ -19,7 +19,7 @@
|
||||
/* ScriptData
|
||||
SDName: Arcatraz
|
||||
SD%Complete: 60
|
||||
SDComment: Warden Mellichar, event controller for Skyriss event. Millhouse Manastorm. TODO: make better combatAI for Millhouse.
|
||||
SDComment: Warden Mellichar, event controller for Skyriss event. Millhouse Manastorm. @todo make better combatAI for Millhouse.
|
||||
SDCategory: Tempest Keep, The Arcatraz
|
||||
EndScriptData */
|
||||
|
||||
|
||||
@@ -54,7 +54,7 @@ bool obelisk_one, obelisk_two, obelisk_three, obelisk_four, obelisk_five;
|
||||
## mobs_bladespire_ogre
|
||||
######*/
|
||||
|
||||
//TODO: add support for quest 10512 + Creature abilities
|
||||
/// @todo add support for quest 10512 + Creature abilities
|
||||
class mobs_bladespire_ogre : public CreatureScript
|
||||
{
|
||||
public:
|
||||
@@ -296,7 +296,7 @@ public:
|
||||
if (who->HasAura(SPELL_LASHHAN_CHANNEL) && me->IsWithinDistInMap(who, 10.0f))
|
||||
{
|
||||
Talk(SAY_SPELL_INFLUENCE, who->GetGUID());
|
||||
//TODO: Move the below to updateAI and run if this statement == true
|
||||
/// @todo Move the below to updateAI and run if this statement == true
|
||||
DoCast(who, 37028, true);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -305,7 +305,7 @@ public:
|
||||
## go_manaforge_control_console
|
||||
######*/
|
||||
|
||||
//TODO: clean up this workaround when Trinity adds support to do it properly (with gossip selections instead of instant summon)
|
||||
/// @todo clean up this workaround when Trinity adds support to do it properly (with gossip selections instead of instant summon)
|
||||
class go_manaforge_control_console : public GameObjectScript
|
||||
{
|
||||
public:
|
||||
|
||||
@@ -1132,7 +1132,7 @@ public:
|
||||
if (!UpdateVictim())
|
||||
return;
|
||||
|
||||
//TODO: add more abilities
|
||||
/// @todo add more abilities
|
||||
if (!HealthAbovePct(30))
|
||||
{
|
||||
if (m_uiHealingTimer <= uiDiff)
|
||||
|
||||
@@ -76,7 +76,7 @@ class spell_dk_anti_magic_shell_raid : public SpellScriptLoader
|
||||
|
||||
void CalculateAmount(AuraEffect const* /*aurEff*/, int32 & amount, bool & /*canBeRecalculated*/)
|
||||
{
|
||||
// TODO: this should absorb limited amount of damage, but no info on calculation formula
|
||||
/// @todo this should absorb limited amount of damage, but no info on calculation formula
|
||||
amount = -1;
|
||||
}
|
||||
|
||||
|
||||
@@ -1572,7 +1572,7 @@ class spell_gen_vehicle_scaling : public SpellScriptLoader
|
||||
float factor;
|
||||
uint16 baseItemLevel;
|
||||
|
||||
// TODO: Reserach coeffs for different vehicles
|
||||
/// @todo Reserach coeffs for different vehicles
|
||||
switch (GetId())
|
||||
{
|
||||
case SPELL_GEAR_SCALING:
|
||||
@@ -1587,7 +1587,7 @@ class spell_gen_vehicle_scaling : public SpellScriptLoader
|
||||
|
||||
float avgILvl = caster->ToPlayer()->GetAverageItemLevel();
|
||||
if (avgILvl < baseItemLevel)
|
||||
return; // TODO: Research possibility of scaling down
|
||||
return; /// @todo Research possibility of scaling down
|
||||
|
||||
amount = uint16((avgILvl - baseItemLevel) * factor);
|
||||
}
|
||||
@@ -3064,7 +3064,7 @@ class spell_gen_summon_elemental : public SpellScriptLoader
|
||||
{
|
||||
if (GetCaster())
|
||||
if (Unit* owner = GetCaster()->GetOwner())
|
||||
if (owner->GetTypeId() == TYPEID_PLAYER) // todo: this check is maybe wrong
|
||||
if (owner->GetTypeId() == TYPEID_PLAYER) /// @todo this check is maybe wrong
|
||||
owner->ToPlayer()->RemovePet(NULL, PET_SAVE_NOT_IN_SLOT, true);
|
||||
}
|
||||
|
||||
|
||||
@@ -200,7 +200,7 @@ class spell_hun_chimera_shot : public SpellScriptLoader
|
||||
|
||||
// Amount of one aura tick
|
||||
basePoint = int32(CalculatePct(unitTarget->GetMaxPower(POWER_MANA), aurEff->GetAmount()));
|
||||
int32 casterBasePoint = aurEff->GetAmount() * unitTarget->GetMaxPower(POWER_MANA) / 50; // TODO: WTF? caster uses unitTarget?
|
||||
int32 casterBasePoint = aurEff->GetAmount() * unitTarget->GetMaxPower(POWER_MANA) / 50; /// @todo WTF? caster uses unitTarget?
|
||||
if (basePoint > casterBasePoint)
|
||||
basePoint = casterBasePoint;
|
||||
ApplyPct(basePoint, TickCount * 60);
|
||||
|
||||
@@ -537,7 +537,7 @@ enum SilvermoonPolymorph
|
||||
NPC_AUROSALIA = 18744,
|
||||
};
|
||||
|
||||
// TODO: move out of here and rename - not a mage spell
|
||||
/// @todo move out of here and rename - not a mage spell
|
||||
// 32826 - Polymorph (Visual)
|
||||
class spell_mage_polymorph_cast_visual : public SpellScriptLoader
|
||||
{
|
||||
|
||||
@@ -304,7 +304,7 @@ class boss_ysondre : public CreatureScript
|
||||
* --- Dragonspecific scripts and handling: LETHON
|
||||
* ---
|
||||
*
|
||||
* TODO:
|
||||
* @todo
|
||||
* - Spell: Shadow bolt whirl casts needs custom handling (spellscript)
|
||||
*/
|
||||
|
||||
|
||||
@@ -251,7 +251,7 @@ class go_tablet_of_the_seven : public GameObjectScript
|
||||
public:
|
||||
go_tablet_of_the_seven() : GameObjectScript("go_tablet_of_the_seven") { }
|
||||
|
||||
//TODO: use gossip option ("Transcript the Tablet") instead, if Trinity adds support.
|
||||
/// @todo use gossip option ("Transcript the Tablet") instead, if Trinity adds support.
|
||||
bool OnGossipHello(Player* player, GameObject* go)
|
||||
{
|
||||
if (go->GetGoType() != GAMEOBJECT_TYPE_QUESTGIVER)
|
||||
@@ -1072,7 +1072,7 @@ public:
|
||||
Quest const* qInfo = sObjectMgr->GetQuestTemplate(QUEST_PRISONERS_OF_WYRMSKULL);
|
||||
if (qInfo)
|
||||
{
|
||||
//TODO: prisoner should help player for a short period of time
|
||||
/// @todo prisoner should help player for a short period of time
|
||||
player->KilledMonsterCredit(qInfo->RequiredNpcOrGo[0], 0);
|
||||
pPrisoner->DisappearAndDie();
|
||||
}
|
||||
|
||||
@@ -881,7 +881,7 @@ void npc_doctor::npc_doctorAI::UpdateAI(uint32 diff)
|
||||
## npc_garments_of_quests
|
||||
######*/
|
||||
|
||||
//TODO: get text for each NPC
|
||||
/// @todo get text for each NPC
|
||||
|
||||
enum Garments
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user