From 718c6d1e4d9fadd99cd9a9e7efe0d616a2378d4a Mon Sep 17 00:00:00 2001
From: UbitUmarov
Date: Tue, 27 Aug 2019 21:16:22 +0100
Subject: mantis 8583: osGetRegionMapTexture(); now returns prim region map
textureID, without any requests to grid
---
.../Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs | 11 ++++++++---
OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs | 2 +-
OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs | 4 ++--
3 files changed, 11 insertions(+), 6 deletions(-)
(limited to 'OpenSim/Region')
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
index 6ee83ae..7494b88 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/OSSL_Api.cs
@@ -3563,7 +3563,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
///
///
///
- public LSL_Key osGetRegionMapTexture(string regionName)
+ public LSL_Key osGetRegionMapTexture(string regionNameOrID)
{
CheckThreatLevel(ThreatLevel.High, "osGetRegionMapTexture");
@@ -3571,11 +3571,16 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
UUID key = UUID.Zero;
GridRegion region;
+ if(string.IsNullOrWhiteSpace(regionNameOrID))
+ {
+ return scene.RegionInfo.RegionSettings.TerrainImageID.ToString();
+ }
+
//If string is a key, use it. Otherwise, try to locate region by name.
- if (UUID.TryParse(regionName, out key))
+ if (UUID.TryParse(regionNameOrID, out key))
region = scene.GridService.GetRegionByUUID(UUID.Zero, key);
else
- region = scene.GridService.GetRegionByName(UUID.Zero, regionName);
+ region = scene.GridService.GetRegionByName(UUID.Zero, regionNameOrID);
// If region was found, return the regions map texture key.
if (region != null)
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs
index c65b785..1bd6e08 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Interface/IOSSL_Api.cs
@@ -375,7 +375,7 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api.Interfaces
key osGetGender(LSL_Key rawAvatarId);
key osGetMapTexture();
- key osGetRegionMapTexture(string regionName);
+ key osGetRegionMapTexture(string regionNameOrID);
LSL_List osGetRegionStats();
vector osGetRegionSize();
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs
index 12c63b3..549047c 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Runtime/OSSL_Stub.cs
@@ -945,9 +945,9 @@ namespace OpenSim.Region.ScriptEngine.Shared.ScriptBase
return m_OSSL_Functions.osGetMapTexture();
}
- public key osGetRegionMapTexture(string regionName)
+ public key osGetRegionMapTexture(string regionNameOrID)
{
- return m_OSSL_Functions.osGetRegionMapTexture(regionName);
+ return m_OSSL_Functions.osGetRegionMapTexture(regionNameOrID);
}
public LSL_List osGetRegionStats()
--
cgit v1.1