diff options
Merge branch 'master' into careminster-presence-refactor
Diffstat (limited to 'OpenSim/Region/ScriptEngine/Shared/Api')
3 files changed, 29 insertions, 0 deletions
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LS_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LS_Api.cs index 665b39f..645566e 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LS_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LS_Api.cs | |||
@@ -455,6 +455,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
455 | if (LightShareModule.EnableWindlight) | 455 | if (LightShareModule.EnableWindlight) |
456 | { | 456 | { |
457 | RegionLightShareData wl = getWindlightProfileFromRules(rules); | 457 | RegionLightShareData wl = getWindlightProfileFromRules(rules); |
458 | wl.valid = true; | ||
458 | m_host.ParentGroup.Scene.StoreWindlightProfile(wl); | 459 | m_host.ParentGroup.Scene.StoreWindlightProfile(wl); |
459 | success = 1; | 460 | success = 1; |
460 | } | 461 | } |
@@ -465,6 +466,23 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api | |||
465 | } | 466 | } |
466 | return success; | 467 | return success; |
467 | } | 468 | } |
469 | public void lsClearWindlightScene() | ||
470 | { | ||
471 | if (!m_LSFunctionsEnabled) | ||
472 | { | ||
473 | LSShoutError("LightShare functions are not enabled."); | ||
474 | return; | ||
475 | } | ||
476 | if (!World.RegionInfo.EstateSettings.IsEstateManager(m_host.OwnerID) && World.GetScenePresence(m_host.OwnerID).GodLevel < 200) | ||
477 | { | ||
478 | LSShoutError("lsSetWindlightScene can only be used by estate managers or owners."); | ||
479 | return; | ||
480 | } | ||
481 | |||
482 | m_host.ParentGroup.Scene.RegionInfo.WindlightSettings.valid = false; | ||
483 | if (m_host.ParentGroup.Scene.SimulationDataService != null) | ||
484 | m_host.ParentGroup.Scene.SimulationDataService.RemoveRegionWindlightSettings(m_host.ParentGroup.Scene.RegionInfo.RegionID); | ||
485 | } | ||
468 | /// <summary> | 486 | /// <summary> |
469 | /// Set the current Windlight scene to a target avatar | 487 | /// Set the current Windlight scene to a target avatar |
470 | /// </summary> | 488 | /// </summary> |
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Interface/ILS_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Interface/ILS_Api.cs index 9aa437b..f2df094 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Interface/ILS_Api.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Interface/ILS_Api.cs | |||
@@ -44,5 +44,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api.Interfaces | |||
44 | LSL_List lsGetWindlightScene(LSL_List rules); | 44 | LSL_List lsGetWindlightScene(LSL_List rules); |
45 | int lsSetWindlightScene(LSL_List rules); | 45 | int lsSetWindlightScene(LSL_List rules); |
46 | int lsSetWindlightSceneTargeted(LSL_List rules, key target); | 46 | int lsSetWindlightSceneTargeted(LSL_List rules, key target); |
47 | void lsClearWindlightScene(); | ||
47 | } | 48 | } |
48 | } | 49 | } |
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LS_Stub.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LS_Stub.cs index 8280ca5..2e27f16 100644 --- a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LS_Stub.cs +++ b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/LS_Stub.cs | |||
@@ -73,6 +73,11 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase | |||
73 | return m_LS_Functions.lsSetWindlightSceneTargeted(rules, target); | 73 | return m_LS_Functions.lsSetWindlightSceneTargeted(rules, target); |
74 | } | 74 | } |
75 | 75 | ||
76 | public void lsClearWindlightScene() | ||
77 | { | ||
78 | m_LS_Functions.lsClearWindlightScene(); | ||
79 | } | ||
80 | |||
76 | public LSL_List cmGetWindlightScene(LSL_List rules) | 81 | public LSL_List cmGetWindlightScene(LSL_List rules) |
77 | { | 82 | { |
78 | return m_LS_Functions.lsGetWindlightScene(rules); | 83 | return m_LS_Functions.lsGetWindlightScene(rules); |
@@ -87,5 +92,10 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase | |||
87 | { | 92 | { |
88 | return m_LS_Functions.lsSetWindlightSceneTargeted(rules, target); | 93 | return m_LS_Functions.lsSetWindlightSceneTargeted(rules, target); |
89 | } | 94 | } |
95 | |||
96 | public void cmClearWindlightScene() | ||
97 | { | ||
98 | m_LS_Functions.lsClearWindlightScene(); | ||
99 | } | ||
90 | } | 100 | } |
91 | } | 101 | } |