public Accounts(object supp) : base(supp)
        {
            InitializeComponent();

            TryGetDataObject <SupportController>().IDesignHelper.Settings.UseMainMenu = true;
            Account = Config.Get <FKAccounts>().Accounts.FirstOrDefault();
            Set();
        }
Beispiel #2
0
        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);
            }
        }
Beispiel #3
0
 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");
 }
Beispiel #4
0
 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; })
                });
            }
        }
Beispiel #6
0
        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());
            }
        }