public Accounts(object supp) : base(supp) { InitializeComponent(); TryGetDataObject <SupportController>().IDesignHelper.Settings.UseMainMenu = true; Account = Config.Get <FKAccounts>().Accounts.FirstOrDefault(); Set(); }
protected void Init(FKAccounts.Multibox Multibox, Process p, int id) { StackPanel Panel = (StackPanel)Processes.Child; if (Multibox == null) { Multibox = new FKAccounts.Multibox { Nickname = "Not configured #" + (id + 1), MultiboxID = id, TextColor = "939393", Foreground = Extensions.HexToBrush("#" + Foreground), Enabled = true, BattleTag = "Not set", MainAccount = (id == 1) ? true : false } } ; Border Border = new Border { Cursor = Cursors.Hand, Height = 35, Background = (id == 0) ? Extensions.HexToColor("#cfffc0") : Extensions.HexToColor("Transparent") }; StackPanel Stack = new StackPanel { HorizontalAlignment = HorizontalAlignment.Left, Orientation = Orientation.Horizontal }; Image Image = new Image { Source = Extensions.FKImage("checked"), Width = 13, Height = 10, Margin = new Thickness(10, 0, 0, 0), Tag = true }; TextBlock Text = new TextBlock { Width = 110, FontFamily = new FontFamily("Gautami"), Text = Multibox.Nickname, FontSize = 12, Foreground = Extensions.HexToColor("#666666"), Margin = new Thickness(10, 10, 0, 0) }; Border.MouseDown += ChangeProcess; Border.Tag = (object)Multibox; Stack.Children.Add(Image); Stack.Children.Add(Text); Border.Child = Stack; Panel.Children.Add(Border); Image.MouseDown += ((s, e) => { bool State = ((bool)Image.Tag) ? false : true; Image.Tag = State; Image.Source = (State) ? Extensions.FKImage("checked") : Extensions.FKImage("_checked"); ProcessInList(p, Multibox); }); /* try * { * Enigma.D3.Engine Enginer = new Enigma.D3.Engine(p); * Multibox.BattleTag = Enginer.Memory.Reader.ReadChain<Enigma.D3.RefString>(0x01B5D54C, 0x10, 0x9C, 0x30).x04_PtrText; * * } * * catch(Exception e) * { * MessageBox.Show(e.ToString()); * }*/ ProcessInList(p, Multibox); if (id == 1) { ChangeProcess(Border, null); } }
protected void UpdateInformation(FKAccounts.Multibox m) { Nickname.Text = m.Nickname; BattleTag.Text = ((m.BattleTag == null)) ? "Battletag not present" : m.BattleTag; ProcessTitle.Text = m.BattleTag; Tracking.Text = (m.ItemTracking) ? "This account will track items and experience" : "This account will not track items and experience"; MainAccount.Text = (m.MainAccount) ? "This account is your main account" : "This account is not your main account"; MainAccountImage.Source = m.MainAccount ? Extensions.FKImage("Icons/enabled") : Extensions.FKImage("Icons/disabled"); TrackingImage.Source = m.ItemTracking ? Extensions.FKImage("Icons/enabled") : Extensions.FKImage("Icons/disabled"); }
private void ProcessInList(Process p, FKAccounts.Multibox m) { if (StartList.Exists(x => x.Process == p)) { StartList.Remove(StartList.Find(x => x.Process == p)); } else { StartList.Add(new ProcessHelper { Process = p, Multibox = m }); } }
public void Set() { TryGetDataObject <SupportController>().IDesignHelper.Menu.Clear(); foreach (var x in Config.Get <FKAccounts>().Accounts) { TryGetDataObject <SupportController>().IDesignHelper.Menu.Add( new IDesignHelper.IMenu { Name = "Account : " + x.Nickname, isActive = x.Equals(Config.Get <FKAccounts>().Accounts.FirstOrDefault()), isFirst = x.Equals(Config.Get <FKAccounts>().Accounts.FirstOrDefault()), isLast = x.Equals(Config.Get <FKAccounts>().Accounts.LastOrDefault()), Image = "pack://application:,,,./Images/FK/Icons/Account.png".ToImage(), ImageHover = "pack://application:,,,./Images/FK/Icons/Account.png".ToImage(), Target = (() => { Account = x; }) }); } }
private void StartFK(object sender, MouseButtonEventArgs e) { try { if (Controller.GameManager.Instance.Accounts.Count > 0) { MessageBox.Show("Finderskeepers is already running"); return; } if (StartList.Count < 1) { MessageBox.Show("You need to select at least one Diablo III account"); return; } short i = 0; foreach (ProcessHelper p in StartList) { FKAccounts.Multibox MultiboxID = p.Multibox; Controller.GameManager.Instance.Accounts.Add(new Controller.GameManagerData.GameManagerAccounts { DiabloIII = new Enigma.D3.Engine(p.Process), LevelAreaContainer = new Controller.GameManagerData.GameManagerAccounts.LevelAreaList { Items = new HashSet <int>(), ExperienceData = new Controller.GameManagerData.GameManagerAccounts.LevelAreaList.Experience() }, GameMangerDataID = i, MainAccount = MultiboxID.MainAccount, Gamestate = new Controller.GameManagerData.GameManagerAccounts.GameStates(), RiftHelper = new Controller.Enums.Rift() }); Controller.GameManager.Instance.GameManagerData.Add(i, new Controller.GameManagerData.GameManagerData { GameData = new Controller.GameManagerData.GameManagerData.InGameData { Experience = new Controller.GameManagerData.GameManagerData.InGameData.ExperienceData { }, StashItems = new Controller.GameManagerData.GameManagerData.InGameData.Stash() }, Multibox = MultiboxID, AreaLevels = new Dictionary <int, Controller.GameManagerData.GameManagerData.AreaList>(), RiftManager = new Dictionary <int, Controller.GameManagerData.GameManagerData.Rifts>(), }); i++; } // FindersKeepers.MainWindow.Window.StartPause.Visibility = Visibility.Collapsed; //FindersKeepers.MainWindow.Window.Pause.Visibility = Visibility.Visible; Controller.GameManager.Instance.GameManagerStart(); Container.Children.Clear(); Container.Children.Add(new Running()); } catch (Exception ex) { MessageBox.Show(ex.ToString()); } }