Move area trigger storage from DBC to database (#742)

Renamed AreaTrigger + related stuff to AreaTriggerTeleport
This commit is contained in:
Kaev
2018-01-02 22:08:08 +01:00
committed by Yehonal
parent b669d24a1f
commit 05cd8c8c61
43 changed files with 1431 additions and 124 deletions

View File

@@ -362,7 +362,7 @@ public:
if (!areaTriggerId)
return false;
AreaTriggerEntry const* at = sAreaTriggerStore.LookupEntry(areaTriggerId);
AreaTrigger const* at = sObjectMgr->GetAreaTrigger(areaTriggerId);
if (!at)
{
handler->PSendSysMessage(LANG_COMMAND_GOAREATRNOTFOUND, areaTriggerId);
@@ -370,9 +370,9 @@ public:
return false;
}
if (!MapManager::IsValidMapCoord(at->mapid, at->x, at->y, at->z))
if (!MapManager::IsValidMapCoord(at->map, at->x, at->y, at->z))
{
handler->PSendSysMessage(LANG_INVALID_TARGET_COORD, at->x, at->y, at->mapid);
handler->PSendSysMessage(LANG_INVALID_TARGET_COORD, at->x, at->y, at->map);
handler->SetSentErrorMessage(true);
return false;
}
@@ -387,7 +387,7 @@ public:
else
player->SaveRecallPosition();
player->TeleportTo(at->mapid, at->x, at->y, at->z, player->GetOrientation());
player->TeleportTo(at->map, at->x, at->y, at->z, player->GetOrientation());
return true;
}

View File

@@ -58,6 +58,7 @@ public:
{ "achievement_criteria_data", SEC_ADMINISTRATOR, true, &HandleReloadAchievementCriteriaDataCommand, "" },
{ "achievement_reward", SEC_ADMINISTRATOR, true, &HandleReloadAchievementRewardCommand, "" },
{ "all", SEC_ADMINISTRATOR, true, nullptr, "", reloadAllCommandTable },
{ "areatrigger", SEC_ADMINISTRATOR, true, &HandleReloadAreaTriggerCommand, "" },
{ "areatrigger_involvedrelation", SEC_ADMINISTRATOR, true, &HandleReloadQuestAreaTriggersCommand, "" },
{ "areatrigger_tavern", SEC_ADMINISTRATOR, true, &HandleReloadAreaTriggerTavernCommand, "" },
{ "areatrigger_teleport", SEC_ADMINISTRATOR, true, &HandleReloadAreaTriggerTeleportCommand, "" },
@@ -351,9 +352,17 @@ public:
return true;
}
static bool HandleReloadAreaTriggerCommand(ChatHandler* handler, const char* /*args*/)
{
sLog->outString("Re-Loading Area Trigger definitions...");
sObjectMgr->LoadAreaTriggers();
handler->SendGlobalGMSysMessage("DB table `areatrigger` reloaded.");
return true;
}
static bool HandleReloadAreaTriggerTeleportCommand(ChatHandler* handler, const char* /*args*/)
{
sLog->outString("Re-Loading AreaTrigger teleport definitions...");
sLog->outString("Re-Loading Area Trigger teleport definitions...");
sObjectMgr->LoadAreaTriggerTeleports();
handler->SendGlobalGMSysMessage("DB table `areatrigger_teleport` reloaded.");
return true;

View File

@@ -76,7 +76,7 @@ class at_ring_of_law : public AreaTriggerScript
public:
at_ring_of_law() : AreaTriggerScript("at_ring_of_law") { }
bool OnTrigger(Player* player, const AreaTriggerEntry* /*at*/)
bool OnTrigger(Player* player, const AreaTrigger* /*at*/)
{
if (InstanceScript* instance = player->GetInstanceScript())
{

View File

@@ -597,7 +597,7 @@ class at_dragonspire_hall : public AreaTriggerScript
public:
at_dragonspire_hall() : AreaTriggerScript("at_dragonspire_hall") { }
bool OnTrigger(Player* player, const AreaTriggerEntry* /*at*/)
bool OnTrigger(Player* player, const AreaTrigger* /*at*/)
{
if (player && player->IsAlive())
{
@@ -621,7 +621,7 @@ class at_blackrock_stadium : public AreaTriggerScript
public:
at_blackrock_stadium() : AreaTriggerScript("at_blackrock_stadium") { }
bool OnTrigger(Player* player, const AreaTriggerEntry* /*at*/)
bool OnTrigger(Player* player, const AreaTrigger* /*at*/)
{
if (player && player->IsAlive())
{

View File

@@ -203,7 +203,7 @@ class at_malfurion_stormrage : public AreaTriggerScript
public:
at_malfurion_stormrage() : AreaTriggerScript("at_malfurion_stormrage") { }
bool OnTrigger(Player* player, const AreaTriggerEntry* /*at*/)
bool OnTrigger(Player* player, const AreaTrigger* /*at*/)
{
if (player->GetInstanceScript() && !player->FindNearestCreature(NPC_MALFURION_STORMRAGE, 15.0f) &&
player->GetQuestStatus(QUEST_THE_CHARGE_OF_DRAGONFLIGHTS) == QUEST_STATUS_REWARDED && player->GetQuestStatus(QUEST_ERANIKUS_TYRANT_OF_DREAMS) != QUEST_STATUS_REWARDED)

View File

@@ -512,7 +512,7 @@ class AreaTrigger_at_sunwell_madrigosa : public AreaTriggerScript
AreaTrigger_at_sunwell_madrigosa() : AreaTriggerScript("at_sunwell_madrigosa") {}
bool OnTrigger(Player* player, AreaTriggerEntry const* /*trigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*trigger*/)
{
if (InstanceScript* instance = player->GetInstanceScript())
if (instance->GetBossState(DATA_MADRIGOSA) != DONE)

View File

@@ -487,7 +487,7 @@ class AreaTrigger_at_sunwell_eredar_twins : public AreaTriggerScript
AreaTrigger_at_sunwell_eredar_twins() : AreaTriggerScript("at_sunwell_eredar_twins") {}
bool OnTrigger(Player* player, AreaTriggerEntry const* /*trigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*trigger*/)
{
if (InstanceScript* instance = player->GetInstanceScript())
if (instance->GetBossState(DATA_EREDAR_TWINS_INTRO) != DONE)

View File

@@ -148,7 +148,7 @@ class at_twilight_grove : public AreaTriggerScript
public:
at_twilight_grove() : AreaTriggerScript("at_twilight_grove") { }
bool OnTrigger(Player* player, const AreaTriggerEntry* /*at*/)
bool OnTrigger(Player* player, const AreaTrigger* /*at*/)
{
if (player->HasQuestForItem(ITEM_FRAGMENT) && !player->HasItemCount(ITEM_FRAGMENT))
player->SummonCreature(NPC_TWILIGHT_CORRUPTER, -10328.16f, -489.57f, 49.95f, 0, TEMPSUMMON_TIMED_DESPAWN_OUT_OF_COMBAT, 240000);

View File

@@ -853,7 +853,7 @@ class at_bring_your_orphan_to : public AreaTriggerScript
public:
at_bring_your_orphan_to() : AreaTriggerScript("at_bring_your_orphan_to") { }
bool OnTrigger(Player* player, AreaTriggerEntry const* trigger)
bool OnTrigger(Player* player, AreaTrigger const* trigger)
{
if (player->isDead() || !player->HasAura(SPELL_ORPHAN_OUT))
return false;
@@ -861,7 +861,7 @@ class at_bring_your_orphan_to : public AreaTriggerScript
uint32 questId = 0;
uint32 orphanId = 0;
switch (trigger->id)
switch (trigger->entry)
{
case AT_DOWN_AT_THE_DOCKS:
questId = QUEST_DOWN_AT_THE_DOCKS;

View File

@@ -106,7 +106,7 @@ class at_ancient_leaf : public AreaTriggerScript
public:
at_ancient_leaf() : AreaTriggerScript("at_ancient_leaf") { }
bool OnTrigger(Player* player, AreaTriggerEntry const* /*trigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*trigger*/)
{
if (player->IsGameMaster() || !player->IsAlive())
return false;

View File

@@ -450,7 +450,7 @@ class at_baltharus_plateau : public AreaTriggerScript
public:
at_baltharus_plateau() : AreaTriggerScript("at_baltharus_plateau") { }
bool OnTrigger(Player* player, AreaTriggerEntry const* /*areaTrigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*areaTrigger*/)
{
if (InstanceScript* instance = player->GetInstanceScript())
{

View File

@@ -1296,7 +1296,7 @@ class at_hor_shadow_throne : public AreaTriggerScript
public:
at_hor_shadow_throne() : AreaTriggerScript("at_hor_shadow_throne") { }
bool OnTrigger(Player* player, const AreaTriggerEntry* /*at*/)
bool OnTrigger(Player* player, const AreaTrigger* /*at*/)
{
if (player->IsGameMaster())
return false;
@@ -1996,7 +1996,7 @@ class at_hor_battered_hilt_start : public AreaTriggerScript
public:
at_hor_battered_hilt_start() : AreaTriggerScript("at_hor_battered_hilt_start") { }
bool OnTrigger(Player* player, AreaTriggerEntry const* /*areaTrigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*areaTrigger*/)
{
if (player->HasAura(70013))
if (InstanceScript* instance = player->GetInstanceScript())
@@ -2010,7 +2010,7 @@ class at_hor_battered_hilt_throw : public AreaTriggerScript
public:
at_hor_battered_hilt_throw() : AreaTriggerScript("at_hor_battered_hilt_throw") { }
bool OnTrigger(Player* player, AreaTriggerEntry const* /*areaTrigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*areaTrigger*/)
{
if (player->HasAura(70013))
if (InstanceScript* instance = player->GetInstanceScript())

View File

@@ -1556,7 +1556,7 @@ class at_tyrannus_event_starter : public AreaTriggerScript
public:
at_tyrannus_event_starter() : AreaTriggerScript("at_tyrannus_event_starter") { }
bool OnTrigger(Player* player, const AreaTriggerEntry* /*at*/)
bool OnTrigger(Player* player, const AreaTrigger* /*at*/)
{
InstanceScript* inst = player->GetInstanceScript();
if (!inst)

View File

@@ -1745,7 +1745,7 @@ class at_sindragosa_lair : public AreaTriggerScript
public:
at_sindragosa_lair() : AreaTriggerScript("at_sindragosa_lair") { }
bool OnTrigger(Player* player, AreaTriggerEntry const* /*areaTrigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*areaTrigger*/)
{
if (InstanceScript* instance = player->GetInstanceScript())
{

View File

@@ -2245,7 +2245,7 @@ class at_icc_saurfang_portal : public AreaTriggerScript
public:
at_icc_saurfang_portal() : AreaTriggerScript("at_icc_saurfang_portal") { }
bool OnTrigger(Player* player, AreaTriggerEntry const* /*areaTrigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*areaTrigger*/)
{
InstanceScript* instance = player->GetInstanceScript();
if (!instance || instance->GetBossState(DATA_DEATHBRINGER_SAURFANG) != DONE)
@@ -2288,7 +2288,7 @@ class at_icc_shutdown_traps : public AreaTriggerScript
public:
at_icc_shutdown_traps() : AreaTriggerScript("at_icc_shutdown_traps") { }
bool OnTrigger(Player* player, AreaTriggerEntry const* /*areaTrigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*areaTrigger*/)
{
if (InstanceScript* instance = player->GetInstanceScript())
instance->SetData(DATA_COLDFLAME_JETS, DONE);
@@ -2301,7 +2301,7 @@ class at_icc_start_blood_quickening : public AreaTriggerScript
public:
at_icc_start_blood_quickening() : AreaTriggerScript("at_icc_start_blood_quickening") { }
bool OnTrigger(Player* player, AreaTriggerEntry const* /*areaTrigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*areaTrigger*/)
{
if (InstanceScript* instance = player->GetInstanceScript())
instance->SetData(DATA_BLOOD_QUICKENING_STATE, IN_PROGRESS);
@@ -2314,7 +2314,7 @@ class at_icc_start_frostwing_gauntlet : public AreaTriggerScript
public:
at_icc_start_frostwing_gauntlet() : AreaTriggerScript("at_icc_start_frostwing_gauntlet") { }
bool OnTrigger(Player* player, AreaTriggerEntry const* /*areaTrigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*areaTrigger*/)
{
if (InstanceScript* instance = player->GetInstanceScript())
if (instance->GetBossState(DATA_SISTER_SVALNA) != DONE)
@@ -3710,7 +3710,7 @@ class at_icc_gauntlet_event : public AreaTriggerScript
public:
at_icc_gauntlet_event() : AreaTriggerScript("at_icc_gauntlet_event") { }
bool OnTrigger(Player* player, AreaTriggerEntry const* /*areaTrigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*areaTrigger*/)
{
if (InstanceScript* instance = player->GetInstanceScript())
if (instance->GetBossState(DATA_SINDRAGOSA_GAUNTLET) == NOT_STARTED && !player->IsGameMaster())
@@ -3725,7 +3725,7 @@ class at_icc_putricide_trap : public AreaTriggerScript
public:
at_icc_putricide_trap() : AreaTriggerScript("at_icc_putricide_trap") { }
bool OnTrigger(Player* player, AreaTriggerEntry const* /*areaTrigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*areaTrigger*/)
{
if (InstanceScript* instance = player->GetInstanceScript())
if (instance->GetData(DATA_PUTRICIDE_TRAP_STATE) == NOT_STARTED && !player->IsGameMaster())
@@ -3740,7 +3740,7 @@ class at_icc_spire_frostwyrm : public AreaTriggerScript
public:
at_icc_spire_frostwyrm() : AreaTriggerScript("at_icc_spire_frostwyrm") { }
bool OnTrigger(Player* player, AreaTriggerEntry const* /*areaTrigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*areaTrigger*/)
{
if (Creature* frostwyrm = player->FindNearestCreature(NPC_SPIRE_FROSTWYRM, 150.0f, true))
if (frostwyrm->GetPositionZ() > 250.0f && frostwyrm->AI())

View File

@@ -64,7 +64,7 @@ class at_frozen_throne_teleport : public AreaTriggerScript
public:
at_frozen_throne_teleport() : AreaTriggerScript("at_frozen_throne_teleport") { }
bool OnTrigger(Player* player, AreaTriggerEntry const* /*areaTrigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*areaTrigger*/)
{
if (player->IsInCombat())
{

View File

@@ -465,7 +465,7 @@ class AreaTrigger_at_celestial_planetarium_enterance : public AreaTriggerScript
{
}
bool OnTrigger(Player* player, AreaTriggerEntry const* /*trigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*trigger*/)
{
if (player->IsAlive())
if (uint32 questId = (player->GetMap()->Is25ManRaid() ? 13816 : 13607 /*QUEST_CELESTIAL_PLANETARIUM*/))

View File

@@ -1033,7 +1033,7 @@ class at_q24545_frostmourne_cavern : public AreaTriggerScript
public:
at_q24545_frostmourne_cavern() : AreaTriggerScript("at_q24545_frostmourne_cavern") { }
bool OnTrigger(Player* player, AreaTriggerEntry const* /*areaTrigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*areaTrigger*/)
{
if (player->GetPhaseMask() & 2)
if (Creature* c = player->FindNearestCreature(NPC_SAC_LICH_KING, 60.0f, true))

View File

@@ -143,7 +143,7 @@ bool OutdoorPvPSI::HandleDropFlag(Player* player, uint32 spellId)
{
case TEAM_ALLIANCE:
{
AreaTriggerEntry const* atEntry = sAreaTriggerStore.LookupEntry(SI_AREATRIGGER_A);
AreaTrigger const* atEntry = sObjectMgr->GetAreaTrigger(SI_AREATRIGGER_A);
if (atEntry)
{
// 5.0f is safe-distance
@@ -177,7 +177,7 @@ bool OutdoorPvPSI::HandleDropFlag(Player* player, uint32 spellId)
break;
case TEAM_HORDE:
{
AreaTriggerEntry const* atEntry = sAreaTriggerStore.LookupEntry(SI_AREATRIGGER_H);
AreaTrigger const* atEntry = sObjectMgr->GetAreaTrigger(SI_AREATRIGGER_H);
if (atEntry)
{
// 5.0f is safe-distance

View File

@@ -273,7 +273,7 @@ class at_shattered_halls_execution : public AreaTriggerScript
public:
at_shattered_halls_execution() : AreaTriggerScript("at_shattered_halls_execution") { }
bool OnTrigger(Player* player, AreaTriggerEntry const* /*areaTrigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*areaTrigger*/)
{
if (InstanceScript* instanceScript = player->GetInstanceScript())
instanceScript->SetData(DATA_ENTERED_ROOM, DATA_ENTERED_ROOM);

View File

@@ -560,7 +560,7 @@ class at_commander_dawnforge : public AreaTriggerScript
public:
at_commander_dawnforge() : AreaTriggerScript("at_commander_dawnforge") { }
bool OnTrigger(Player* player, const AreaTriggerEntry* /*at*/)
bool OnTrigger(Player* player, const AreaTrigger* /*at*/)
{
//if player lost aura or not have at all, we should not try start event.
if (!player->HasAura(SPELL_SUNFURY_DISGUISE))

View File

@@ -38,7 +38,7 @@ class AreaTrigger_at_voltarus_middle : public AreaTriggerScript
{
}
bool OnTrigger(Player* player, AreaTriggerEntry const* /*trigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*trigger*/)
{
if (player->IsAlive() && !player->IsInCombat())
if (player->HasItemCount(39319)) // Scepter of Domination
@@ -71,7 +71,7 @@ class AreaTrigger_at_coilfang_waterfall : public AreaTriggerScript
{
}
bool OnTrigger(Player* player, AreaTriggerEntry const* /*trigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*trigger*/)
{
if (GameObject* go = GetClosestGameObjectWithEntry(player, GO_COILFANG_WATERFALL, 35.0f))
if (go->getLootState() == GO_READY)
@@ -103,7 +103,7 @@ class AreaTrigger_at_legion_teleporter : public AreaTriggerScript
{
}
bool OnTrigger(Player* player, AreaTriggerEntry const* /*trigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*trigger*/)
{
if (player->IsAlive() && !player->IsInCombat())
{
@@ -145,7 +145,7 @@ class AreaTrigger_at_stormwright_shelf : public AreaTriggerScript
{
}
bool OnTrigger(Player* player, AreaTriggerEntry const* /*trigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*trigger*/)
{
if (!player->isDead() && player->GetQuestStatus(QUEST_STRENGTH_OF_THE_TEMPEST) == QUEST_STATUS_INCOMPLETE)
player->CastSpell(player, SPELL_CREATE_TRUE_POWER_OF_THE_TEMPEST, false);
@@ -173,7 +173,7 @@ class AreaTrigger_at_scent_larkorwi : public AreaTriggerScript
{
}
bool OnTrigger(Player* player, AreaTriggerEntry const* /*trigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*trigger*/)
{
if (!player->isDead() && player->GetQuestStatus(QUEST_SCENT_OF_LARKORWI) == QUEST_STATUS_INCOMPLETE)
{
@@ -204,7 +204,7 @@ class AreaTrigger_at_last_rites : public AreaTriggerScript
{
}
bool OnTrigger(Player* player, AreaTriggerEntry const* trigger)
bool OnTrigger(Player* player, AreaTrigger const* trigger)
{
QuestStatus QLR = player->GetQuestStatus(QUEST_LAST_RITES);
QuestStatus QBT = player->GetQuestStatus(QUEST_BREAKING_THROUGH);
@@ -214,7 +214,7 @@ class AreaTrigger_at_last_rites : public AreaTriggerScript
WorldLocation pPosition;
switch (trigger->id)
switch (trigger->entry)
{
case 5332:
case 5338:
@@ -263,12 +263,12 @@ class AreaTrigger_at_sholazar_waygate : public AreaTriggerScript
AreaTrigger_at_sholazar_waygate() : AreaTriggerScript("at_sholazar_waygate") { }
bool OnTrigger(Player* player, AreaTriggerEntry const* trigger)
bool OnTrigger(Player* player, AreaTrigger const* trigger)
{
if (!player->isDead() && (player->GetQuestStatus(QUEST_MEETING_A_GREAT_ONE) != QUEST_STATUS_NONE ||
(player->GetQuestStatus(QUEST_THE_MAKERS_OVERLOOK) == QUEST_STATUS_REWARDED && player->GetQuestStatus(QUEST_THE_MAKERS_PERCH) == QUEST_STATUS_REWARDED)))
{
switch (trigger->id)
switch (trigger->entry)
{
case AT_SHOLAZAR:
player->CastSpell(player, SPELL_SHOLAZAR_TO_UNGORO_TELEPORT, true);
@@ -300,7 +300,7 @@ class AreaTrigger_at_nats_landing : public AreaTriggerScript
public:
AreaTrigger_at_nats_landing() : AreaTriggerScript("at_nats_landing") { }
bool OnTrigger(Player* player, AreaTriggerEntry const* /*trigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*trigger*/)
{
if (!player->IsAlive() || !player->HasAura(SPELL_FISH_PASTE))
return false;
@@ -335,7 +335,7 @@ class AreaTrigger_at_sentry_point : public AreaTriggerScript
public:
AreaTrigger_at_sentry_point() : AreaTriggerScript("at_sentry_point") { }
bool OnTrigger(Player* player, AreaTriggerEntry const* /*trigger*/)
bool OnTrigger(Player* player, AreaTrigger const* /*trigger*/)
{
auto quest_status = player->GetQuestStatus(QUEST_MISSING_DIPLO_PT14);
if (!player->IsAlive() || quest_status == QUEST_STATUS_NONE || quest_status == QUEST_STATUS_REWARDED)
@@ -378,9 +378,9 @@ class AreaTrigger_at_brewfest : public AreaTriggerScript
_triggerTimes[AT_BREWFEST_DUROTAR] = _triggerTimes[AT_BREWFEST_DUN_MOROGH] = 0;
}
bool OnTrigger(Player* player, AreaTriggerEntry const* trigger)
bool OnTrigger(Player* player, AreaTrigger const* trigger)
{
uint32 triggerId = trigger->id;
uint32 triggerId = trigger->entry;
// Second trigger happened too early after first, skip for now
if (sWorld->GetGameTime() - _triggerTimes[triggerId] < AREATRIGGER_TALK_COOLDOWN)
return false;
@@ -431,15 +431,15 @@ class AreaTrigger_at_area_52_entrance : public AreaTriggerScript
_triggerTimes[AT_AREA_52_SOUTH] = _triggerTimes[AT_AREA_52_NORTH] = _triggerTimes[AT_AREA_52_WEST] = _triggerTimes[AT_AREA_52_EAST] = 0;
}
bool OnTrigger(Player* player, AreaTriggerEntry const* trigger)
bool OnTrigger(Player* player, AreaTrigger const* trigger)
{
float x = 0.0f, y = 0.0f, z = 0.0f;
if (!player->IsAlive())
return false;
uint32 triggerId = trigger->id;
if (sWorld->GetGameTime() - _triggerTimes[trigger->id] < SUMMON_COOLDOWN)
uint32 triggerId = trigger->entry;
if (sWorld->GetGameTime() - _triggerTimes[trigger->entry] < SUMMON_COOLDOWN)
return false;
switch (triggerId)
@@ -468,7 +468,7 @@ class AreaTrigger_at_area_52_entrance : public AreaTriggerScript
player->SummonCreature(NPC_SPOTLIGHT, x, y, z, 0.0f, TEMPSUMMON_TIMED_DESPAWN, 5000);
player->AddAura(SPELL_A52_NEURALYZER, player);
_triggerTimes[trigger->id] = sWorld->GetGameTime();
_triggerTimes[trigger->entry] = sWorld->GetGameTime();
return false;
}