diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs index 1ce75e0e2b..4f8d60bc15 100644 --- a/OpenSim/Region/Environment/Scenes/Scene.cs +++ b/OpenSim/Region/Environment/Scenes/Scene.cs @@ -1310,12 +1310,40 @@ namespace OpenSim.Region.Environment.Scenes HandleAlertCommand(cmdparams); break; + case "edit-scale": + if (cmdparams.Length == 4) + { + HandleEditCommand(cmdparams); + } + break; + default: MainLog.Instance.Error("Unknown command: " + command); break; } } + public void HandleEditCommand(string[] cmmdparams) + { + Console.WriteLine("Searching for Primitive: '" + cmmdparams[0] + "'"); + foreach (EntityBase ent in this.Entities.Values) + { + if (ent is SceneObjectGroup) + { + SceneObjectPart part = ((SceneObjectGroup)ent).GetChildPart(((SceneObjectGroup)ent).UUID); + if (part != null) + { + if (part.Name == cmmdparams[0]) + { + part.Resize( new LLVector3(Convert.ToSingle(cmmdparams[1]), Convert.ToSingle(cmmdparams[2]), Convert.ToSingle(cmmdparams[3]))); + + Console.WriteLine("Edited scale of Primitive: " + part.Name); + } + } + } + } + } + public void Show(string ShowWhat) { switch (ShowWhat) diff --git a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs index b202f3c665..45d975c1b6 100644 --- a/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs +++ b/OpenSim/Region/Environment/Scenes/SceneObjectGroup.cs @@ -606,6 +606,7 @@ namespace OpenSim.Region.Environment.Scenes /// public void SetPartName(string name, uint localID) { + name = name.Remove(name.Length - 1, 1); SceneObjectPart part = this.GetChildPart(localID); if (part != null) {