aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework/Scenes
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Framework/Scenes')
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.Inventory.cs26
-rw-r--r--OpenSim/Region/Framework/Scenes/ScenePresence.cs4
2 files changed, 27 insertions, 3 deletions
diff --git a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
index 5c8b097..92bf85a 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
@@ -1738,6 +1738,21 @@ namespace OpenSim.Region.Framework.Scenes
1738 /// <returns>The part where the script was rezzed if successful. False otherwise.</returns> 1738 /// <returns>The part where the script was rezzed if successful. False otherwise.</returns>
1739 public SceneObjectPart RezNewScript(UUID agentID, InventoryItemBase itemBase) 1739 public SceneObjectPart RezNewScript(UUID agentID, InventoryItemBase itemBase)
1740 { 1740 {
1741 return RezNewScript(
1742 agentID,
1743 itemBase,
1744 "default\n{\n state_entry()\n {\n llSay(0, \"Script running\");\n }\n}");
1745 }
1746
1747 /// <summary>
1748 /// Rez a new script from nothing with given script text.
1749 /// </summary>
1750 /// <param name="remoteClient"></param>
1751 /// <param name="itemBase">Template item.</param>
1752 /// <param name="scriptText"></param>
1753 /// <returns>The part where the script was rezzed if successful. False otherwise.</returns>
1754 public SceneObjectPart RezNewScript(UUID agentID, InventoryItemBase itemBase, string scriptText)
1755 {
1741 // The part ID is the folder ID! 1756 // The part ID is the folder ID!
1742 SceneObjectPart part = GetSceneObjectPart(itemBase.Folder); 1757 SceneObjectPart part = GetSceneObjectPart(itemBase.Folder);
1743 if (part == null) 1758 if (part == null)
@@ -1757,9 +1772,14 @@ namespace OpenSim.Region.Framework.Scenes
1757 return null; 1772 return null;
1758 } 1773 }
1759 1774
1760 AssetBase asset = CreateAsset(itemBase.Name, itemBase.Description, (sbyte)itemBase.AssetType, 1775 AssetBase asset
1761 Encoding.ASCII.GetBytes("default\n{\n state_entry()\n {\n llSay(0, \"Script running\");\n }\n}"), 1776 = CreateAsset(
1762 agentID); 1777 itemBase.Name,
1778 itemBase.Description,
1779 (sbyte)itemBase.AssetType,
1780 Encoding.ASCII.GetBytes(scriptText),
1781 agentID);
1782
1763 AssetService.Store(asset); 1783 AssetService.Store(asset);
1764 1784
1765 TaskInventoryItem taskItem = new TaskInventoryItem(); 1785 TaskInventoryItem taskItem = new TaskInventoryItem();
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
index 0219540..6979c33 100644
--- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
@@ -1954,6 +1954,10 @@ namespace OpenSim.Region.Framework.Scenes
1954 { 1954 {
1955 if (ParentID != 0) 1955 if (ParentID != 0)
1956 { 1956 {
1957 var targetPart = m_scene.GetSceneObjectPart(targetID);
1958 if (targetPart != null && targetPart.LocalId == ParentID)
1959 return; // already sitting here, ignore
1960
1957 StandUp(); 1961 StandUp();
1958 } 1962 }
1959 1963