diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs index 3e5912973a..c8c1ac3b6c 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs @@ -5536,6 +5536,48 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api SetFullBright(part, face , st); break; + case (int)ScriptBaseClass.PRIM_MATERIAL: + if (remain < 1) + return; + if (part != null) + { + /* Unhandled at this time - sends "Unhandled" message + will enable when available + byte material = (byte)Convert.ToByte( rules.Data[idx++]); + part.Material = material; + */ + return; + } + break; + case (int)ScriptBaseClass.PRIM_PHANTOM: + if (remain < 1) + return; + + string ph = rules.Data[idx++].ToString(); + bool phantom; + + if(ph.Equals("1")) + phantom = true; + else + phantom = false; + + part.ScriptSetPhantomStatus(phantom); + part.ScheduleFullUpdate(); + break; + case (int)ScriptBaseClass.PRIM_PHYSICS: + if (remain < 1) + return; + string phy = rules.Data[idx++].ToString(); + bool physics; + + if(phy.Equals("1")) + physics = true; + else + physics = false; + + m_host.ScriptSetPhysicsStatus(physics); + part.ScheduleFullUpdate(); + break; } } }