This commit is contained in:
Ovahlord
2018-07-23 15:57:10 +02:00
45 changed files with 409 additions and 99 deletions

View File

@@ -431,7 +431,7 @@ public:
if (map->Instanceable())
{
handler->PSendSysMessage(LANG_INVALID_ZONE_MAP, areaEntry->ID, areaEntry->area_name, map->GetId(), map->GetMapName());
handler->PSendSysMessage(LANG_INVALID_ZONE_MAP, areaEntry->ID, areaEntry->area_name->Str[handler->GetSessionDbcLocale()], map->GetId(), map->GetMapName());
handler->SetSentErrorMessage(true);
return false;
}

View File

@@ -432,7 +432,7 @@ public:
{
AreaTableEntry const* zone = sAreaTableStore.LookupEntry(area->zone);
if (zone)
zoneName = zone->area_name[localeConstant];
zoneName = zone->area_name->Str[localeConstant];
}
}
else

View File

@@ -681,7 +681,7 @@ public:
static char const* GetZoneName(uint32 zoneId, LocaleConstant locale)
{
AreaTableEntry const* zoneEntry = sAreaTableStore.LookupEntry(zoneId);
return zoneEntry ? (const char*)zoneEntry->area_name[locale] : "<unknown zone>";
return zoneEntry ? zoneEntry->area_name->Str[locale] : "<unknown zone>";
}
static bool HandleListRespawnsCommand(ChatHandler* handler, char const* args)
{

View File

@@ -104,7 +104,7 @@ public:
// Search in AreaTable.dbc
for (AreaTableEntry const* areaEntry : sAreaTableStore)
{
std::string name = areaEntry->area_name;
std::string name = areaEntry->area_name->Str[handler->GetSessionDbcLocale()];
if (name.empty())
continue;

View File

@@ -88,7 +88,7 @@ public:
AreaTableEntry const* zoneEntry = nullptr;
for (AreaTableEntry const* entry : sAreaTableStore)
{
if (strstr(entry->area_name, channelStr))
if (strstr(entry->area_name->Str[handler->GetSessionDbcLocale()], channelStr))
{
zoneEntry = entry;
break;

View File

@@ -277,8 +277,8 @@ public:
handler->PSendSysMessage(LANG_MAP_POSITION,
mapId, (mapEntry ? mapEntry->name : unknown),
zoneId, (zoneEntry ? zoneEntry->area_name : unknown),
areaId, (areaEntry ? areaEntry->area_name : unknown),
zoneId, (zoneEntry ? zoneEntry->area_name->Str[handler->GetSessionDbcLocale()] : unknown),
areaId, (areaEntry ? areaEntry->area_name->Str[handler->GetSessionDbcLocale()] : unknown),
object->GetPositionX(), object->GetPositionY(), object->GetPositionZ(), object->GetOrientation());
if (Transport* transport = object->GetTransport())
handler->PSendSysMessage(LANG_TRANSPORT_POSITION,
@@ -1833,11 +1833,11 @@ public:
AreaTableEntry const* area = sAreaTableStore.LookupEntry(areaId);
if (area)
{
areaName = area->area_name;
areaName = area->area_name->Str[handler->GetSessionDbcLocale()];;
AreaTableEntry const* zone = sAreaTableStore.LookupEntry(area->zone);
if (zone)
zoneName = zone->area_name;
zoneName = zone->area_name->Str[handler->GetSessionDbcLocale()];
}
if (target)

View File

@@ -39,6 +39,11 @@ enum Events
EVENT_AVATAROFFLAME = 2
};
enum Emotes
{
EMOTE_SHAKEN = 0
};
class boss_emperor_dagran_thaurissan : public CreatureScript
{
public:
@@ -76,6 +81,7 @@ class boss_emperor_dagran_thaurissan : public CreatureScript
{
moira->AI()->EnterEvadeMode();
moira->SetFaction(FACTION_FRIENDLY);
moira->AI()->Talk(EMOTE_SHAKEN);
}
}

View File

@@ -167,7 +167,7 @@ public:
void SetupGroundPhase()
{
events.SetPhase(PHASE_GROUND);
events.ScheduleEvent(EVENT_CLEAVE, Seconds(0), Seconds(15), GROUP_GROUND);
events.ScheduleEvent(EVENT_CLEAVE, 0s, Seconds(15), GROUP_GROUND);
events.ScheduleEvent(EVENT_TAIL_SWEEP, Seconds(4), Seconds(23), GROUP_GROUND);
events.ScheduleEvent(EVENT_BELLOWING_ROAR, Seconds(48), GROUP_GROUND);
events.ScheduleEvent(EVENT_CHARRED_EARTH, Seconds(12), Seconds(18), GROUP_GROUND);

View File

@@ -385,12 +385,12 @@ public:
_assassinCount = 6;
_guardianCount = 2;
_venomancerCount = 2;
events.ScheduleEvent(EVENT_DARTER, Seconds(0), 0, PHASE_SUBMERGE);
events.ScheduleEvent(EVENT_DARTER, 0s, 0, PHASE_SUBMERGE);
break;
}
_petCount = _guardianCount + _venomancerCount;
if (_assassinCount)
events.ScheduleEvent(EVENT_ASSASSIN, Seconds(0), 0, PHASE_SUBMERGE);
events.ScheduleEvent(EVENT_ASSASSIN, 0s, 0, PHASE_SUBMERGE);
if (_guardianCount)
events.ScheduleEvent(EVENT_GUARDIAN, Seconds(4), 0, PHASE_SUBMERGE);
if (_venomancerCount)

View File

@@ -104,7 +104,7 @@ class boss_faerlina : public CreatureScript
summons.DoZoneInCombat();
events.ScheduleEvent(EVENT_POISON, randtime(Seconds(10), Seconds(15)));
events.ScheduleEvent(EVENT_FIRE, randtime(Seconds(6), Seconds(18)));
events.ScheduleEvent(EVENT_FRENZY, Minutes(1)+randtime(Seconds(0), Seconds(20)));
events.ScheduleEvent(EVENT_FRENZY, Minutes(1)+randtime(0s, Seconds(20)));
}
void Reset() override
@@ -174,7 +174,7 @@ class boss_faerlina : public CreatureScript
{
DoCast(SPELL_FRENZY);
Talk(EMOTE_FRENZY);
events.Repeat(Minutes(1) + randtime(Seconds(0), Seconds(20)));
events.Repeat(Minutes(1) + randtime(0s, Seconds(20)));
}
break;
}

View File

@@ -532,7 +532,7 @@ class boss_gothik : public CreatureScript
break;
case EVENT_RESUME_ATTACK:
me->SetReactState(REACT_AGGRESSIVE);
events.ScheduleEvent(EVENT_BOLT, Seconds(0), 0, PHASE_TWO);
events.ScheduleEvent(EVENT_BOLT, 0s, 0, PHASE_TWO);
// return to the start of this method so victim side etc is re-evaluated
return UpdateAI(0u); // tail recursion for efficiency
case EVENT_BOLT:

View File

@@ -182,7 +182,7 @@ class boss_sapphiron : public CreatureScript
me->CastSpell(me, SPELL_FROST_AURA, true);
events.SetPhase(PHASE_GROUND);
events.ScheduleEvent(EVENT_CHECK_RESISTS, Seconds(0));
events.ScheduleEvent(EVENT_CHECK_RESISTS, 0s);
events.ScheduleEvent(EVENT_BERSERK, Minutes(15));
EnterPhaseGround(true);
}
@@ -207,7 +207,7 @@ class boss_sapphiron : public CreatureScript
void MovementInform(uint32 /*type*/, uint32 id) override
{
if (id == 1)
events.ScheduleEvent(EVENT_LIFTOFF, Seconds(0), 0, PHASE_FLIGHT);
events.ScheduleEvent(EVENT_LIFTOFF, 0s, 0, PHASE_FLIGHT);
}
void DoAction(int32 param) override

View File

@@ -223,7 +223,7 @@ class boss_erekem : public CreatureScript
task.Repeat(Seconds(8), Seconds(13));
});
scheduler.Schedule(Seconds(0), [this](TaskContext task)
scheduler.Schedule(0s, [this](TaskContext task)
{
for (uint32 i = DATA_EREKEM_GUARD_1; i <= DATA_EREKEM_GUARD_2; ++i)
{

View File

@@ -585,7 +585,7 @@ class npc_azure_saboteur : public CreatureScript
{
if (type == EFFECT_MOTION_TYPE && pointId == POINT_INTRO)
{
_scheduler.Schedule(Seconds(0), [this](TaskContext task)
_scheduler.Schedule(0s, [this](TaskContext task)
{
me->CastSpell(me, SPELL_SHIELD_DISRUPTION, false);

View File

@@ -1464,7 +1464,7 @@ public:
switch (me->GetEntry())
{
case NPC_ENRAGED_WATER_SPIRIT:
_events.ScheduleEvent(EVENT_ENRAGED_WATER_SPIRIT, Seconds(0), Seconds(1));
_events.ScheduleEvent(EVENT_ENRAGED_WATER_SPIRIT, 0s, Seconds(1));
break;
case NPC_ENRAGED_FIRE_SPIRIT:
if (!me->GetAura(SPELL_FEL_FIRE_AURA))