From 66febc47ad0d2db2b9a676a71f757b67623b7b9a Mon Sep 17 00:00:00 2001 From: Melanie Thielker Date: Wed, 17 Sep 2008 23:50:21 +0000 Subject: Kan-Ed fix series. Fix up llRezAtRoot and llRezObject, fix llCreateLink to send a full update and do a persistence save. --- .../ScriptEngine/Shared/Api/Implementation/LSL_Api.cs | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) (limited to 'OpenSim') diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index 2b19ae1..5ae8017 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs @@ -2116,11 +2116,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api return; m_host.AddScriptLPS(1); - bool found = false; - - // Instead of using return;, I'm using continue; because in our TaskInventory implementation - // it's possible to have two items with the same task inventory name. - // this is an easter egg of sorts. foreach (KeyValuePair inv in m_host.TaskInventory) { @@ -2130,7 +2125,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api if (inv.Value.InvType != (int)InventoryType.Object) { llSay(0, "Unable to create requested object. Object is missing from database."); - continue; + return; } Vector3 llpos = new Vector3((float)pos.x, (float)pos.y, (float)pos.z); @@ -2165,15 +2160,13 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api //Recoil. llApplyImpulse(new LSL_Types.Vector3(llvel.X * groupmass, llvel.Y * groupmass, llvel.Z * groupmass), 0); - found = true; // Variable script delay? (see (http://wiki.secondlife.com/wiki/LSL_Delay) ScriptSleep((int)((groupmass * velmag) / 10)); // ScriptSleep(100); - break; + return; } } - if (!found) - llSay(0, "Could not find object " + inventory); + llSay(0, "Could not find object " + inventory); } public void llRezObject(string inventory, LSL_Types.Vector3 pos, LSL_Types.Vector3 vel, LSL_Types.Quaternion rot, int param) @@ -2830,6 +2823,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api } parentPrim.TriggerScriptChangedEvent(Changed.LINK); parentPrim.RootPart.AddFlag(PrimFlags.CreateSelected); + parentPrim.HasGroupChanged = true; + parentPrim.ScheduleGroupForFullUpdate(); parentPrim.GetProperties(client); ScriptSleep(1000); -- cgit v1.1