public override void DeleteMultipleItems() { int nodeCount = CurrentNodes.Count(); if (nodeCount == 1) { DeleteItem(); } else if (nodeCount > 0) { var nodes = CurrentNodes.Select(node => (PackageDependencyNode)node.DataItem).ToArray(); RemoveMultiplePackages(nodes); } }
public void Execute() { if (!Entered) { EntryTime = DateTime.Now; Entered = true; } if (DungeonProfile != null) { if (!HasFinishedDungeon) { if (CurrentNodes.Count() == 0) { LoadNodes(); } else { bool isMePartyleader = WowInterface.ObjectManager.Player.Guid == WowInterface.ObjectManager.PartyleaderGuid || WowInterface.ObjectManager.PartyleaderGuid == 0; if (isMePartyleader) { // wait for all players to arrive if (AreAllPlayersPresent()) { AllPlayerPresentDistance = 48; if (!ShouldWaitForGroup()) // ShouldWaitForGroup() { FollowNodePath(WowInterface.MovementSettings.WaypointCheckThreshold); } } else { // wait until the players are near us AllPlayerPresentDistance = 16; } } else { if (!MoveToGroupLeader()) { // wait for the group leader } } } } else { if (ExitDungeonEvent.Run()) { // find a way to exit the dungeon, maybe hearthstone if (WowInterface.HookManager.IsInLfgGroup()) { WowInterface.HookManager.LuaDoString("LFGTeleport(true);"); } } } } else { LoadProfile(TryLoadProfile()); } }