public NodeHelper FindNode() { var nodes = Host.getDoodads().Where(d => MiningNodes.Exists(d.phaseId) && !ignorePhases.Contains(d.phaseId) && !skipNodes.Contains(d.GetHashCode()) && !ignoreNodes.Contains(d.GetHashCode()) && GetNavDist(d) <= 200 && d != Host.me.castObject); int count = 0; if ((count = nodes.Count()) < 1) { return(null); } DoodadObject temp = null; if (count == 1) { temp = nodes.First(); } else { temp = nodes.OrderBy(d => GetNavDist(d)).ThenBy(d => Host.dist(d)).First(); } return(new NodeHelper(temp, Host)); }
private bool MakeTask(string name) { if (!UI.MiningTasks.ContainsKey(name)) { return(false); } mineTask = UI.MiningTasks[name]; if (mineTask == null || !gps.Load(mineTask.MiningZone)) { return(false); } foreach (var vein in mineTask.IgnoreVeins) { mining.AddIgnorePhases(MiningNodes.GetPhasesByName(vein)); } if ((stats == null) || (stats.ZoneName != mineTask.MiningZone) || UI.ResetStats()) { stats = new Statistics(UI); stats.ZoneName = mineTask.MiningZone; stats.LaborStartedWith = Host.me.laborPoints; } return(mineTask != null && stats != null); }
private void GetMiningNodes() { Utils.InvokeOn(this, () => { chklbox_IgnoreVeins.Items.AddRange(MiningNodes.GetAll().Select(n => n.Name).ToArray()); }); }
private void OnNewInvItem(Item item, int count) { if (!MiningNodes.IsProduct(item.id)) { return; } // Add item to box UI.AddToMined(item, count); }
private void GetMiningProducts() { var items = MiningNodes.GetProducts().Select (i => (Host.clientVersion != ClientVersion.RussiaMailRu) ? i.Value : i.Value.ToRussian()); Utils.InvokeOn(this, () => { lbox_ItemsList.Items.Clear(); lbox_ItemsList.Items.AddRange(items.ToArray()); }); }