Merge branch '4.3.4' of https://gitlab.com/trinitycore/TrinityCore_434 into 4.3.4
This commit is contained in:
commit
5dad0f023c
2 files changed
+24
-11
No files matched your search
@@ -0,0 +1,9 @@
|
||||
--
|
||||
DELETE FROM `spell_group` WHERE `id`=1122;
|
||||
INSERT INTO `spell_group` (`id`, `spell_id`) VALUES
|
||||
(1122,588),
|
||||
(1122,73413);
|
||||
|
||||
DELETE FROM `spell_group_stack_rules` WHERE `group_id`=1122;
|
||||
INSERT INTO `spell_group_stack_rules` (`group_id`, `stack_rule`) VALUES
|
||||
(1122,1);
|
||||
@@ -281,7 +281,10 @@ class instance_ulduar : public InstanceMapScript
|
||||
case NPC_SALVAGED_DEMOLISHER:
|
||||
case NPC_SALVAGED_SIEGE_ENGINE:
|
||||
case NPC_SALVAGED_CHOPPER:
|
||||
LeviathanVehicleGUIDs.push_back(creature->GetGUID());
|
||||
if (GetBossState(BOSS_LEVIATHAN) == DONE)
|
||||
DespawnLeviatanVehicle(creature);
|
||||
else
|
||||
LeviathanVehicleGUIDs.push_back(creature->GetGUID());
|
||||
break;
|
||||
|
||||
// XT-002 Deconstructor
|
||||
@@ -1043,17 +1046,8 @@ class instance_ulduar : public InstanceMapScript
|
||||
// Eject all players from vehicles and make them untargetable.
|
||||
// They will be despawned after a while
|
||||
for (auto const& vehicleGuid : LeviathanVehicleGUIDs)
|
||||
{
|
||||
if (Creature* vehicleCreature = instance->GetCreature(vehicleGuid))
|
||||
{
|
||||
if (Vehicle* vehicle = vehicleCreature->GetVehicleKit())
|
||||
{
|
||||
vehicle->RemoveAllPassengers();
|
||||
vehicleCreature->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
vehicleCreature->DespawnOrUnsummon(5 * MINUTE * IN_MILLISECONDS);
|
||||
}
|
||||
}
|
||||
}
|
||||
DespawnLeviatanVehicle(vehicleCreature);
|
||||
break;
|
||||
case EVENT_LEVIATHAN_BREAK_DOOR:
|
||||
if (Creature* leviathan = GetCreature(BOSS_LEVIATHAN))
|
||||
@@ -1065,6 +1059,16 @@ class instance_ulduar : public InstanceMapScript
|
||||
}
|
||||
}
|
||||
|
||||
void DespawnLeviatanVehicle(Creature* vehicleCreature)
|
||||
{
|
||||
if (Vehicle* vehicle = vehicleCreature->GetVehicleKit())
|
||||
{
|
||||
vehicle->RemoveAllPassengers();
|
||||
vehicleCreature->SetFlag(UNIT_FIELD_FLAGS, UNIT_FLAG_NOT_SELECTABLE);
|
||||
vehicleCreature->DespawnOrUnsummon(5 * MINUTE * IN_MILLISECONDS);
|
||||
}
|
||||
}
|
||||
|
||||
void UpdateDoorState(GameObject* door) override
|
||||
{
|
||||
// Leviathan doors are set to DOOR_TYPE_ROOM except the one it uses to enter the room
|
||||
|
||||
Reference in new issue
Block a user