private static void Main(string[] args) { var db = new All(JsonDb.Load(), JsonNames.LoadNames()); albionParser = new AlbionParser(); albionParser.AddEventHandler<PlayerCounts>(p => { Console.WriteLine($"Players: {p.Blue} / {p.Red}"); }); albionParser.AddOperationHandler<ConsloeCommand>(p => { Console.WriteLine($"LocId: {p.LocId} {p.Town}"); }); // albionParser.AddOperationHandler<AuctionBuyOffer>(p => // { // if (p.Items.Length==0) return; // var items = p.Items.GroupBy(x=>x.ItemTypeId).ToArray(); // foreach (var item in items) // { // var max = item.Max(x => x.UnitPriceSilver) / 10000; // // var ph = db.GetItem(item.Key).PriceHolder; // // ph.UpdateBye(max, items.Length == 1); // } // }); // // albionParser.AddOperationHandler<AuctionGetRequests>(p => // { // if (p.Items.Length == 0) return; // var items = p.Items.GroupBy(x => x.ItemTypeId).ToArray(); // foreach (var item in items) // { // var min = item.Min(x => x.UnitPriceSilver) / 10000; // // var ph = db.GetItem(item.Key).PriceHolder; // // ph.UpdateSell(min, items.Length == 1); // } // }); Console.WriteLine("Start"); albionParser.Start(); Console.Read(); }
static void Main(string[] args) { albionParser = new AlbionParser(); albionParser.AddRequestHandler <MoveOperation>(OperationCodes.Move, (operation) => { Console.WriteLine($"Move request"); }); albionParser.AddEventHandler <MoveEvent>(EventCodes.Move, (operation) => { Console.WriteLine($"Id: {operation.Id} x: {operation.Position.X} y: {operation.Position.Y}"); }); albionParser.AddEventHandler <NewCharacterEvent>(EventCodes.NewCharacter, (operation) => { Console.WriteLine($"New ch Id: {operation.Id}"); }); Console.WriteLine("Start"); var devices = LivePacketDevice.AllLocalMachine; foreach (var device in devices) { new Thread(() => { Console.WriteLine($"Open... {device.Description}"); using (PacketCommunicator communicator = device.Open(65536, PacketDeviceOpenAttributes.Promiscuous, 1000)) { communicator.ReceivePackets(0, PacketHandler); } }) .Start(); } Console.Read(); }
public MainViewModel() { RefreshCommand = new RelayCommand(() => RaisePropertyChanged(nameof(CommonItems))); ClearBmCommand = new RelayCommand(ClearBm); ClearItemBmCommand = new RelayCommand <CommonItem>(ClearItemBm); ClearItemCommand = new RelayCommand <CommonItem>(ClearItem); OpenItemCommand = new RelayCommand <CommonItem>(OpenItem); Tirs = Enumerable.Repeat(new Tuple <string, int?>("-", null), 1) .Concat(Enumerable.Range(1, 8).Select(x => Tuple.Create(x.ToString(), (int?)x))); Enchants = Enumerable.Repeat(new Tuple <string, int?>("-", null), 1) .Concat(Enumerable.Range(0, 4).Select(x => Tuple.Create(x.ToString(), (int?)x))); Qualities = Enumerable.Repeat(new Tuple <string, int?>("-", null), 1) .Concat(Enumerable.Range(1, 5).Select(x => Tuple.Create(x.ToString(), (int?)x))); ShopCategories = Enumerable.Repeat(new Tuple <string, ShopCategory?>("-", null), 1).Concat(Enum .GetValues(typeof(ShopCategory)).Cast <ShopCategory?>() .Select(x => Tuple.Create(x.Value.ToString(), x))); ShopSubCategories = Enumerable.Repeat(new Tuple <string, ShopSubCategory?>("-", null), 1) .Concat(Enum.GetValues(typeof(ShopSubCategory)).Cast <ShopSubCategory?>() .Select(x => Tuple.Create(x.Value.ToString(), x))); BuyTownManager = new TownManager(); SellTownManager = new TownManager(); CraftTownManager = new TownManager(); AuctionTownManager = new TownManager(); _mdm = new MarketDataManager(); _bdm = new BuildingDataManager(CraftTownManager); var loader = new XmlLoader(_bdm, CraftTownManager, BuyTownManager, SellTownManager); loader.LoadModel(); Items = loader.Items.Values.Where(x => x.ShopSubCategory != Model.Items.Categories.ShopSubCategory.Event) .ToDictionary(k => k.Id + (k.QualityLevel > 1 ? $"_{k.QualityLevel}" : "")); LoadData(); Artefacts = loader.Artefacts; _debounceDispatcher = new DebounceDispatcher(); // foreach (var item in Items.Values) // { // item.PropertyChanged += (sender, args) => // { // //if (args.PropertyName == "Pos") // RefreshTree(); // }; // } BuildingsViewModel = new BuildingsViewModel(loader.CraftBuildings, CraftTownManager); _albionParser = new AlbionParser(); BuyTownManager.Town = Location.None; SellTownManager.Town = Location.None; CraftTownManager.Town = Location.None; AuctionTownManager.Town = Location.None; AuctionTownManager.TownChanged += p => { if (BuyTownManager.Town == Location.None) { BuyTownManager.Town = p.Town; } if (SellTownManager.Town == Location.None) { SellTownManager.Town = p.Town; } if (CraftTownManager.Town == Location.None) { CraftTownManager.Town = p.Town; } }; InitAlbionParser(); CostCalcOptions.Instance.ProfitsChanged += RefreshTree; CostCalcOptions.Instance.Changed += RefreshTree; }
public ReceiverBuilder() { parser = new AlbionParser(); }