public Func <Mat, RECT, bool> GetSimpleBattleSceneHandler(bool autoBattle, PCRBattleSpeedRate speedRate)
        {
            var func = new Func <Mat, RECT, bool>((viewportMat, viewportRect) =>
            {
                var matchAutoOn   = CanMatchTemplate(viewportMat, viewportRect, BATTLE_AUTO_ON_MKEY);
                var matchAutoOff  = CanMatchTemplate(viewportMat, viewportRect, BATTLE_AUTO_OFF_MKEY);
                var isBattleScene = matchAutoOn || matchAutoOff;

                if (isBattleScene)
                {
                    logTools.Debug("SimpleBattleHandler", "In BattleScene");

                    if (autoBattle && matchAutoOff)
                    {
                        TryClickTemplateRect(viewportMat, viewportRect, BATTLE_AUTO_ON_MKEY);
                    }
                    if (!autoBattle && matchAutoOn)
                    {
                        TryClickTemplateRect(viewportMat, viewportRect, BATTLE_AUTO_OFF_MKEY);
                    }

                    var speedRate1 = GetBattleSpeedRate(viewportMat, viewportRect);
                    if (speedRate != speedRate1)
                    {
                        mumuTools.DoClick(BATTLE_SPEED_RATE_KEY);
                    }
                }

                return(isBattleScene);
            });

            return(func);
        }
        public void ChangeSpeedRate(Mat viewportMat, RECT viewportRect, PCRBattleSpeedRate speedRate)
        {
            var curSpeedRate = GetBattleSpeedRate(viewportMat, viewportRect);

            if (curSpeedRate != speedRate)
            {
                mumuTools.DoClick(BATTLE_SPEED_RATE_KEY);
            }
        }