Exemplo n.º 1
0
        /// <summary>
        /// Convert all action to script
        /// </summary>
        /// <param name="macroViewModel">The macro to generate script</param>
        /// <returns></returns>
        public virtual bool?GenerateScript(MacroViewModel macroViewModel)
        {
            if (!ApplyConvertSetting(macroViewModel))
            {
                return(false);
            }

            var macroTemplate = macroViewModel.ConvertBack();

            var script = this.emulatorToScriptFactory.GetEmulatorScriptGenerator(setting.SelectedEmulator).MacroToScript(macroTemplate);

            return(scriptApplyFactory.GetScriptApplier(setting.SelectedEmulator).ApplyScriptTo(macroTemplate.MacroName, setting.SelectedPath, script));
        }
Exemplo n.º 2
0
        /// <summary>
        /// Convert all action to script
        /// </summary>
        /// <param name="macroViewModel">The macro to generate script</param>
        /// <returns></returns>
        public virtual bool?GenerateScript(MacroViewModel macroViewModel)
        {
            var timer = 200;

            if (!ApplyConvertSetting(macroViewModel))
            {
                return(false);
            }

            var macroTemplate = macroViewModel.ConvertBack();

            var script = macroTemplate.GenerateScript(ref timer);

            return(scriptApplyFactory.GetScriptApplier(setting.SelectedEmulator).ApplyScriptTo(macroTemplate.MacroName, setting.SelectedPath, script));
        }
Exemplo n.º 3
0
        private bool ApplyConvertSetting(MacroViewModel macro)
        {
            if (macro.OriginalX == 0 || double.IsNaN(macro.OriginalX) || macro.OriginalY == 0 || double.IsNaN(macro.OriginalY))
            {
                messageBoxService.ShowMessageBox("The macro doesnt have any resolution set. Please set in in EMM", "Error", MessageButton.OK, MessageImage.Error);
                return(false);
            }

            GlobalData.CustomX   = setting.CustomX;
            GlobalData.CustomY   = setting.CustomY;
            GlobalData.OriginalX = macro.OriginalX;
            GlobalData.OriginalY = macro.OriginalY;
            GlobalData.Emulator  = setting.SelectedEmulator;
            GlobalData.Randomize = setting.Randomize;
            GlobalData.ScaleMode = setting.ScaleMode;

            return(true);
        }
Exemplo n.º 4
0
        private bool ApplyConvertSetting(MacroViewModel macroViewModel)
        {
            GlobalData.CustomX   = setting.CustomX;
            GlobalData.CustomY   = setting.CustomY;
            GlobalData.Emulator  = setting.SelectedEmulator;
            GlobalData.Randomize = setting.Randomize;

            try
            {
                GlobalData.ScaleX = (double)setting.CustomX / macroViewModel.OriginalX;
                GlobalData.ScaleY = (double)setting.CustomY / macroViewModel.OriginalY;
            }
            catch
            {
                messageBoxService.ShowMessageBox("Please set the Macro resolution", "Error", MessageButton.OK, MessageImage.Error);
                return(false);
            }

            return(true);
        }
Exemplo n.º 5
0
        /// <summary>
        /// Generate script only selected
        /// </summary>
        /// <param name="actionViewModelList">The selected action viewmodel</param>
        /// <returns></returns>
        public virtual bool?GenerateScript(IList <IActionViewModel> actionViewModelList, MacroViewModel currentMacro)
        {
            if (!ApplyConvertSetting(currentMacro))
            {
                return(false);
            }

            var script = this.emulatorToScriptFactory.GetEmulatorScriptGenerator(setting.SelectedEmulator).MacroToScript(actionViewModelList.Select(a => a.ConvertBackToAction()).ToList());

            return(scriptApplyFactory.GetScriptApplier(setting.SelectedEmulator).ApplyScriptTo(currentMacro.MacroName + "_Test", setting.SelectedPath, script, false));
        }
Exemplo n.º 6
0
        /// <summary>
        /// Generate script only selected
        /// </summary>
        /// <param name="actionViewModelList">The selected action viewmodel</param>
        /// <returns></returns>
        public virtual bool?GenerateScript(IList <IActionViewModel> actionViewModelList, MacroViewModel currentMacro)
        {
            StringBuilder script = new StringBuilder();

            var timer = 200;

            if (!ApplyConvertSetting(currentMacro))
            {
                return(false);
            }

            foreach (var actionViewModel in actionViewModelList)
            {
                script.Append(actionViewModel.ConvertBackToAction().GenerateAction(ref timer));
            }

            return(scriptApplyFactory.GetScriptApplier(setting.SelectedEmulator).ApplyScriptTo(currentMacro.MacroName + "_Test", setting.SelectedPath, script, false));
        }