Created
April 23, 2014 13:50
-
-
Save KonyukhovSergey/11215880 to your computer and use it in GitHub Desktop.
Revisions
-
KonyukhovSergey created this gist
Apr 23, 2014 .There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters. Learn more about bidirectional Unicode charactersOriginal file line number Diff line number Diff line change @@ -0,0 +1,90 @@ using System; using System.Windows.Forms; using System.Threading; using System.Collections.Generic; using System.Linq; using Jungler.Bot.Classes; using System.Threading.Tasks; using Example; namespace YourNamespace { public class YourClass : Core { private AuctionItem findMinimalPrice(List<AuctionItem> items, ItemGrade grade, int maxPrice) { int minPrice = maxPrice; AuctionItem result = null; foreach(AuctionItem item in items) { if(item.item.grade == grade) { if(item.buyBackPrice <= minPrice && item.buyBackPrice > 0) { minPrice = item.buyBackPrice; result = item; } } } if(minPrice > maxPrice) { result = null; } else if(result != null) { Log("item: '" + result.item.name + "', grade: '" + result.item.grade.ToString() + "', minPrice = " + result.buyBackPrice.ToString()); } return result; } public bool purchaseItem(string name, List<KeyValuePair<ItemGrade, int>> prices) { AuctionRequestParams auctionRequestParams = new AuctionRequestParams(name); List<AuctionItem> items = getAuctionBuyList(auctionRequestParams); foreach(var price in prices) { AuctionItem item = findMinimalPrice(items, price.Key, price.Value); if(item != null) { bool result = item.MakeAuctionBid(price.Value); if(result == false) { Log("error: " + GetLastError().ToString()); } else { Log("item purchased"); } } } return true; } public bool purchaseItem(string name, int price) { AuctionRequestParams auctionRequestParams = new AuctionRequestParams(name); List<AuctionItem> items = getAuctionBuyList(auctionRequestParams); foreach(var item in items) { Log("item: '" + item.item.name + "', grade: '" + item.item.grade.ToString() + "' buyBackPrice = " + item.buyBackPrice.ToString()); } for(int grade = 11; grade >= 0; grade--) { AuctionItem item = findMinimalPrice(items, (ItemGrade)grade, price); if(item != null) { bool result = item.MakeAuctionBid(item.buyBackPrice); if(result == false) { Log("error: " + GetLastError().ToString()); } else { Log("item purchased"); } } } return true; } public void PluginRun() { purchaseItem("Посох витражей", 90000); //new PurchaseForm(this).ShowDialog(); } } }