Core/WorldObject: Replace non-std::chrono SummonTrigger overloads
(cherry picked from commit 3620b47c412d88cc2e0ab10e2654913e5487c8ac)
This commit is contained in:
@@ -1921,10 +1921,10 @@ GameObject* WorldObject::SummonGameObject(uint32 entry, float x, float y, float
|
|||||||
return SummonGameObject(entry, pos, rot, respawnTime, summonType);
|
return SummonGameObject(entry, pos, rot, respawnTime, summonType);
|
||||||
}
|
}
|
||||||
|
|
||||||
Creature* WorldObject::SummonTrigger(float x, float y, float z, float ang, uint32 duration, CreatureAI* (*GetAI)(Creature*))
|
Creature* WorldObject::SummonTrigger(float x, float y, float z, float ang, Milliseconds despawnTime, CreatureAI* (*GetAI)(Creature*))
|
||||||
{
|
{
|
||||||
TempSummonType summonType = (duration == 0) ? TEMPSUMMON_DEAD_DESPAWN : TEMPSUMMON_TIMED_DESPAWN;
|
TempSummonType summonType = (despawnTime == 0s) ? TEMPSUMMON_DEAD_DESPAWN : TEMPSUMMON_TIMED_DESPAWN;
|
||||||
Creature* summon = SummonCreature(WORLD_TRIGGER, x, y, z, ang, summonType, Milliseconds(duration));
|
Creature* summon = SummonCreature(WORLD_TRIGGER, x, y, z, ang, summonType, despawnTime);
|
||||||
if (!summon)
|
if (!summon)
|
||||||
return nullptr;
|
return nullptr;
|
||||||
|
|
||||||
|
|||||||
@@ -573,7 +573,7 @@ class TC_GAME_API WorldObject : public Object, public WorldLocation
|
|||||||
TempSummon* SummonPersonalClone(Position const& pos, TempSummonType despawnType = TEMPSUMMON_MANUAL_DESPAWN, uint32 despawnTime = 0, uint32 vehId = 0, uint32 spellId = 0, ObjectGuid privateObjectOwner = ObjectGuid::Empty);
|
TempSummon* SummonPersonalClone(Position const& pos, TempSummonType despawnType = TEMPSUMMON_MANUAL_DESPAWN, uint32 despawnTime = 0, uint32 vehId = 0, uint32 spellId = 0, ObjectGuid privateObjectOwner = ObjectGuid::Empty);
|
||||||
GameObject* SummonGameObject(uint32 entry, Position const& pos, QuaternionData const& rot, uint32 respawnTime /* s */, GOSummonType summonType = GO_SUMMON_TIMED_OR_CORPSE_DESPAWN);
|
GameObject* SummonGameObject(uint32 entry, Position const& pos, QuaternionData const& rot, uint32 respawnTime /* s */, GOSummonType summonType = GO_SUMMON_TIMED_OR_CORPSE_DESPAWN);
|
||||||
GameObject* SummonGameObject(uint32 entry, float x, float y, float z, float ang, QuaternionData const& rot, uint32 respawnTime /* s */, GOSummonType summonType = GO_SUMMON_TIMED_OR_CORPSE_DESPAWN);
|
GameObject* SummonGameObject(uint32 entry, float x, float y, float z, float ang, QuaternionData const& rot, uint32 respawnTime /* s */, GOSummonType summonType = GO_SUMMON_TIMED_OR_CORPSE_DESPAWN);
|
||||||
Creature* SummonTrigger(float x, float y, float z, float ang, uint32 dur, CreatureAI* (*GetAI)(Creature*) = nullptr);
|
Creature* SummonTrigger(float x, float y, float z, float ang, Milliseconds despawnTime, CreatureAI* (*GetAI)(Creature*) = nullptr);
|
||||||
void SummonCreatureGroup(uint8 group, std::list<TempSummon*>* list = nullptr);
|
void SummonCreatureGroup(uint8 group, std::list<TempSummon*>* list = nullptr);
|
||||||
|
|
||||||
Creature* FindNearestCreature(uint32 entry, float range, bool alive = true) const;
|
Creature* FindNearestCreature(uint32 entry, float range, bool alive = true) const;
|
||||||
|
|||||||
@@ -156,7 +156,7 @@ public:
|
|||||||
{
|
{
|
||||||
if (GameObject* go = ObjectAccessor::GetGameObject(*me, *itr))
|
if (GameObject* go = ObjectAccessor::GetGameObject(*me, *itr))
|
||||||
{
|
{
|
||||||
if (Creature* trigger = go->SummonTrigger(go->GetPositionX(), go->GetPositionY(), go->GetPositionZ(), 0, 1))
|
if (Creature* trigger = go->SummonTrigger(go->GetPositionX(), go->GetPositionY(), go->GetPositionZ(), 0, 1ms))
|
||||||
{
|
{
|
||||||
//visual effects are not working!
|
//visual effects are not working!
|
||||||
trigger->CastSpell(trigger, 11542, true);
|
trigger->CastSpell(trigger, 11542, true);
|
||||||
|
|||||||
@@ -370,7 +370,7 @@ class go_wg_vehicle_teleporter : public GameObjectScript
|
|||||||
if (Vehicle* vehicle = cVeh->GetVehicleKit())
|
if (Vehicle* vehicle = cVeh->GetVehicleKit())
|
||||||
if (Unit* passenger = vehicle->GetPassenger(0))
|
if (Unit* passenger = vehicle->GetPassenger(0))
|
||||||
if (IsFriendly(passenger))
|
if (IsFriendly(passenger))
|
||||||
if (Creature* teleportTrigger = passenger->SummonTrigger(me->GetPositionX()-60.0f, me->GetPositionY(), me->GetPositionZ()+1.0f, cVeh->GetOrientation(), 1000))
|
if (Creature* teleportTrigger = passenger->SummonTrigger(me->GetPositionX()-60.0f, me->GetPositionY(), me->GetPositionZ()+1.0f, cVeh->GetOrientation(), 1s))
|
||||||
return teleportTrigger;
|
return teleportTrigger;
|
||||||
|
|
||||||
return nullptr;
|
return nullptr;
|
||||||
|
|||||||
Reference in New Issue
Block a user