/// <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)); }
/// <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)); }
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); }
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); }
/// <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)); }
/// <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)); }