protected override async Task Invoke(MapDocument document, CommandParameters parameters) { var selBox = document.Selection.GetSelectionBoundingBox(); var axis = parameters.Get <Vector3>("Axis"); var amount = parameters.Get <float>("Angle"); var radians = (float)MathHelper.DegreesToRadians(amount); var tl = document.Map.Data.GetOne <TransformationFlags>() ?? new TransformationFlags(); var transaction = new Transaction(); var tform = Matrix4x4.CreateTranslation(-selBox.Center) * Matrix4x4.CreateFromAxisAngle(axis, radians) * Matrix4x4.CreateTranslation(selBox.Center); var transformOperation = new BspEditor.Modification.Operations.Mutation.Transform(tform, document.Selection.GetSelectedParents()); transaction.Add(transformOperation); // Check for texture transform if (tl.TextureLock) { transaction.Add(new TransformTexturesUniform(tform, document.Selection)); } await MapDocumentOperation.Perform(document, transaction); }
public async Task Invoke(IContext context, CommandParameters parameters) { var path = parameters.Get <string>("Path"); var hint = parameters.Get("LoaderHint", ""); await _documentRegister.Value.OpenDocument(path, hint); }
public static void CommandMain(CommandParameters parameters, ICommandExecutor executor) { var targets = from Character c in executor.Server.Characters where c.Name == parameters.Get<string>(0) select c; if (targets.Count() == 0) throw new Exception("Target not found"); Character target = targets.First<Character>(); String title = parameters.Get<String>(1, ""); target.Title = title; }
public static void CommandMain(CommandParameters parameters, ICommandExecutor executor) { var targets = from Character c in executor.Server.Characters where c.Name == parameters.Get<String>(0) select c; if (targets.Count() == 0) throw new Exception("Target not found"); Character target = targets.First<Character>(); AdminLevel level = (AdminLevel)parameters.Get<int>(1); if (!Enum.IsDefined(typeof(AdminLevel), level)) throw new Exception(String.Format("Admin level out of range ({0})", (int)level)); target.Admin = level; }
public async Task Invoke(IContext context, CommandParameters parameters) { var silent = parameters.Get("Silent", false); var result = await GetUpdateCheckResult(SledgeWebsiteUpdateSource); if (result == null) { return; } var version = GetCurrentVersion(); if (result.Version <= version) { if (!silent) { _shell.InvokeLater(() => { MessageBox.Show(NoUpdatesMessage, NoUpdatesTitle, MessageBoxButtons.OK, MessageBoxIcon.Information); }); } return; } var details = await GetLatestReleaseDetails(); if (!details.Exists) { if (!silent) { _shell.InvokeLater(() => { MessageBox.Show(UpdateErrorMessage, UpdateErrorTitle, MessageBoxButtons.OK, MessageBoxIcon.Error); }); } return; } _shell.InvokeLater(() => { var form = new UpdaterForm(details, _translation); form.Show(_shell); }); }