Пример #1
0
        public BaseHero()
        {
            this.Owner = EntityManager9.Owner;

            this.Menu = new MenuManager(this.Owner, Context9.MenuManager);

            this.TargetManager = new TargetManager(this.Menu);

            this.KillSteal     = new KillSteal(this);
            this.FailSafe      = new FailSafe(this);
            this.ShieldBreaker = new ShieldBreaker(this);

            this.MoveComboModeMenu = new MoveComboModeMenu(this.Menu.RootMenu, "Move");
            this.ComboMenus.Add(new ComboModeMenu(this.Menu.RootMenu, "Harass"));

            // ReSharper disable once VirtualMemberCallInConstructor
            this.CreateComboMenus();

            this.ShieldBreaker.AddComboMenu(this.ComboMenus);

            // ReSharper disable once VirtualMemberCallInConstructor
            this.CreateUnitManager();

            this.ShieldBreaker.UnitManager = this.UnitManager;

            this.combo     = new ComboMode(this, this.ComboMenus);
            this.moveCombo = new MoveComboMode(this, this.MoveComboModeMenu);

            UpdateManager.BeginInvoke(1000, () => this.Menu.Enabled.ValueChange += this.EnabledOnValueChange);
        }
Пример #2
0
        private static ComboMode GetBestComboMode(AttackableUnit t)
        {
            double[]    damages = new double[3];    // 3
            ComboMode[] modes   = new ComboMode[3]; // 3

            var max = Q.GetDamage(t as AIHeroClient) + ComboDamage2xQ(t as AIHeroClient);

            var result = 0;

            damages[0] = Q.GetDamage(t as AIHeroClient) + ComboDamage2xQ(t as AIHeroClient);
            modes[0]   = ComboMode.Mode2xQ;

            damages[1] = W.GetDamage(t as AIHeroClient) + ComboDamage2xW(t as AIHeroClient);
            modes[0]   = ComboMode.Mode2xW;

            for (int i = 0; i < 3; i++) //8
            {
                if (!(max < damages[i]))
                {
                    continue;
                }

                max    = damages[i];
                result = i;
            }

            return(modes[result]);
        }
Пример #3
0
        private static void OnUpdate(EventArgs args)
        {
            if (!ObjectManager.Player.IsDead)
            {
                switch (Orbwalker.ActiveMode)
                {
                case Orbwalking.OrbwalkingMode.Combo:
                {
                    ComboMode.Execute();
                    break;
                }

                case Orbwalking.OrbwalkingMode.Mixed:
                {
                    MixedMode.Execute();
                    break;
                }

                case Orbwalking.OrbwalkingMode.LaneClear:
                {
                    Clear.Execute();
                    break;
                }
                }

                ManualCards.Execute(); Automated.Execute(); QWaveClear.Execute(); QChampions.Execute();
            }
        }
Пример #4
0
        public static void Update(EventArgs args)
        {
            if (Player.IsDead)
            {
                return;
            }

            if (Utils.GameTimeTickCount - LastQ >= 3650 - Game.Ping &&
                MenuConfig.KeepQ &&
                !Player.InFountain() &&
                !Player.HasBuff("Recall") &&
                Player.HasBuff("RivenTriCleave"))
            {
                Spells.Q.Cast(Game.CursorPos);
            }

            QMove();

            BackgroundData.ForceSkill();

            switch (Orbwalker.ActiveMode)
            {
            case Orbwalking.OrbwalkingMode.Combo:
                ComboMode.Combo();
                break;

            case Orbwalking.OrbwalkingMode.Burst:
                BurstMode.Burst();
                break;

            case Orbwalking.OrbwalkingMode.Flee:
                FleeMode.Flee();
                break;

            case Orbwalking.OrbwalkingMode.FastHarass:
                FastHarassMode.FastHarass();
                break;

            case Orbwalking.OrbwalkingMode.Mixed:
                Mixed.Harass();
                break;

            case Orbwalking.OrbwalkingMode.LaneClear:
                JungleClearMode.Jungleclear();
                LaneclearMode.Laneclear();
                break;
            }
        }
Пример #5
0
        /*
         *         public ICommand MouseWheelCommand // ICommand생성자 안쓰는 방식
         *
         * {
         *
         * get
         *
         * {
         *
         *   return this._mouseWheelCommand ??
         *
         *        (this._mouseWheelCommand = new RelayCommand<MouseWheelEventArgs>(this.ExecuteMouseWheel));
         *
         * }
         *
         * }
         */

        // 람다식으로 변경해서 안씀
        private bool CheckRegex(string text)
        {
            bool  result = false;
            Regex rgx    = new Regex(_Regex);

            if (ComboMode.Equals("데이터모드 1"))
            {
                result = rgx.IsMatch(text);
            }

            if (ComboMode.Equals("데이터모드 2"))
            {
                result = rgx.IsMatch(text);
            }

            return(result);
        }
Пример #6
0
        private void CheckRegexDBDoubleDBEvent(object obj)
        {
            #region 소수점 컬럼 수동검사
            int count = 0;

            /* foreach (DataRow row in GetDoubleScoreDataTable.Rows)
             * {
             *   decimal value = row.Field<decimal>("Score_double");
             *   if (!CheckRegex(value.ToString()))
             *   {
             *       count++;
             *   }
             *
             * }*/// 람다식으로 변경

            foreach (DataRow row in GetDoubleScoreDataTable.Rows)
            {
                decimal value = row.Field <decimal>("Score_double");

                #region 데이터 모드2에서 람다식 정규식 체크
                Func <string, bool> CheckRegex = (text) =>
                {
                    bool  result = false;
                    Regex rgx    = new Regex(_Regex);
                    if (ComboMode.Equals("데이터모드 2"))
                    {
                        result = rgx.IsMatch(text);
                    }
                    return(result);
                };
                #endregion

                if (!CheckRegex(value.ToString()))
                {
                    count++;
                }
            }
            if (count >= 1)
            {
                MessageBox.Show("소수점형식이 맞지 않습니다 2.23형식으로 2자리로 입력해주세요\r\n그래도 맞지 않을경우 데이터 모드2인지 확인해주십시오\r\n" +
                                "정규식 카운트 결과 : " + count);
            }
            #endregion
        }
Пример #7
0
        static bool CanCastCombo(ComboMode comboMode)
        {
            if (!R.IsReady())
            {
                return(false);
            }

            if (comboMode == ComboMode.Mode2xQ && Q.IsReady())
            {
                return(true);
            }

            if (comboMode == ComboMode.Mode2xW && W.IsReady())
            {
                return(true);
            }

            return(false);
        }
Пример #8
0
        public static void Update(EventArgs args)
        {
            if (Player.IsDead)
            {
                return;
            }

            if (Environment.TickCount - LastQ >= 3650 - Game.Ping && MenuConfig.KeepQ

                //&& !Player.InFountain()//TODO: Figure if this exist in Elobuddy
                && !Player.HasBuff("Recall") &&
                Player.HasBuff("RivenTriCleave"))
            {
                Player.Spellbook.CastSpell(SpellSlot.Q, Game.CursorPos);
            }

            QMove();

            BackgroundData.ForceSkill();
            switch (EloBuddy.SDK.Orbwalker.ActiveModesFlags)
            {
            case EloBuddy.SDK.Orbwalker.ActiveModes.Combo:
                if (MenuConfig.BurstEnabled)
                {
                    BurstMode.Burst();
                }
                else
                {
                    ComboMode.Combo();
                }
                break;

            case EloBuddy.SDK.Orbwalker.ActiveModes.Flee:
                FleeMode.Flee();
                break;

            case EloBuddy.SDK.Orbwalker.ActiveModes.JungleClear:
            case EloBuddy.SDK.Orbwalker.ActiveModes.LaneClear:
                JungleClearMode.Jungleclear();
                LaneclearMode.Laneclear();
                break;
            }
        }
Пример #9
0
        private void CellValueChangedEvent(object obj)
        {
            var   convert = (TableView)obj;
            Regex rgx     = new Regex(_Regex);


            if (ComboMode.Equals("데이터모드 1"))
            {
            }

            if (ComboMode.Equals("데이터모드 2"))
            {
            }


            // if else문 축약형
            var a1 = new Action(() => { /* if code block */ });   /* if code  */
            var a2 = new Action(() => { /* else code block */ }); /* else code  */
        }
Пример #10
0
        private void CheckIntRegexEvent(object obj)
        {
            var    convert = (GridControl)obj;
            string value   = convert.CurrentCellValue.ToString();

            Func <string, bool> CheckRegex = (text) =>
            {
                bool  result = false;
                Regex rgx    = new Regex(_Regex);
                if (ComboMode.Equals("데이터모드 1"))
                {
                    result = rgx.IsMatch(text);
                }
                return(result);
            };

            if (!CheckRegex(value))
            {
                MessageBox.Show("올바른 형식을 확인해주세요 숫자 1~4자리까지 입력가능합니다");
            }
        }
Пример #11
0
        private void ComboSelectBinding(object obj) // 콤보 박스 선택시 이벤트 호출
        {
            var convert = (DevExpress.Xpf.Editors.ComboBoxEdit)obj;

            ComboMode = convert.SelectedItem.ToString();

            if (ComboMode.Equals("데이터모드 1"))
            {
                DataWeek    = MakeTestDataSet().Tables[0];
                _dataColumn = MakeTestDataSet().Tables[1];
                ComboMode   = "데이터모드 1";
                _Regex      = "^[0-9]{1,5}$"; // 숫자 0~9까지 1자리부터 5자리까지 ( ^시작 $종료)
                GetWeek_WeekDay();
            }
            if (ComboMode.Equals("데이터모드 2"))
            {
                DataWeek   = MakeTestDataSet2().Tables[0];
                DataColumn = MakeTestDataSet2().Tables[1];
                ComboMode  = "데이터모드 2";
                _Regex     = "^[0-9]{1,1}[.][0-9]{1,2}$"; // 소수점 1.23 형식만 사용가능
                GetWeek_WeekDay();
            }
        }
Пример #12
0
        private static void ModeDetector()
        {
            int allys  = Player.CountAlliesInRange(2000);
            int enemys = Player.CountEnemiesInRange(2000);

            Console.WriteLine("" + allys + " " + enemys);
            if (enemys == 0)
            {
                ComboMode = ComboMode.None;
            }
            else if (allys == 0 && enemys == 1)
            {
                ComboMode = ComboMode.OneVsOne;
            }
            else if (allys == 0 && enemys > 1)
            {
                ComboMode = ComboMode.OneVsMoreEnemy;
            }
            else if (allys > 0 && enemys == 1)
            {
                ComboMode = ComboMode.MoreAllyVsOneEnemy;
            }
        }
Пример #13
0
        private static ComboMode GetBestComboMode(AttackableUnit t)
        {
            double[] damages = new double[3]; // 3
            ComboMode[] modes = new ComboMode[3]; // 3

            var max = Q.GetDamage(t as AIHeroClient) + ComboDamage2xQ(t as AIHeroClient);

            var result = 0;

            damages[0] = Q.GetDamage(t as AIHeroClient) + ComboDamage2xQ(t as AIHeroClient);
            modes[0] = ComboMode.Mode2xQ;

            damages[1] = W.GetDamage(t as AIHeroClient) + ComboDamage2xW(t as AIHeroClient);
            modes[0] = ComboMode.Mode2xW;

            for (int i = 0; i < 3; i++) //8
            {
                if (!(max < damages[i]))
                {
                    continue;
                }

                max = damages[i];
                result = i;
            }

            return modes[result];
        }
Пример #14
0
        static bool CanCastCombo(ComboMode comboMode)
        {
            if (!R.IsReady())
            {
                return false;
            }

            if (comboMode == ComboMode.Mode2xQ && Q.IsReady())
            {
                return true;
            }

            if (comboMode == ComboMode.Mode2xW && W.IsReady())
            {
                return true;
            }

            return false;
        }
Пример #15
0
 private static void ModeDetector()
 {
     int allys = Player.CountAlliesInRange(2000);
     int enemys = Player.CountEnemiesInRange(2000);
     Console.WriteLine("" + allys + " " + enemys);
     if (enemys == 0)
         ComboMode = ComboMode.None;
     else if(allys == 0 && enemys == 1)
         ComboMode = ComboMode.OneVsOne;
     else if (allys == 0 && enemys > 1)
         ComboMode = ComboMode.OneVsMoreEnemy;
     else if (allys > 0 && enemys == 1)
         ComboMode = ComboMode.MoreAllyVsOneEnemy;
 }