diff --git a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/Server_API/LSL_BuiltIn_Commands.cs b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/Server_API/LSL_BuiltIn_Commands.cs
index fb521dff65..14f66e8944 100644
--- a/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/Server_API/LSL_BuiltIn_Commands.cs
+++ b/OpenSim/Region/ScriptEngine/DotNetEngine/Compiler/Server_API/LSL_BuiltIn_Commands.cs
@@ -2876,6 +2876,17 @@ namespace OpenSim.Region.ScriptEngine.DotNetEngine.Compiler
//
// OpenSim functions
//
+ public int osTerrainSetHeight(int x, int y, double val)
+ {
+ World.Terrain.Set(x, y, val);
+ return 1;
+ }
+
+ public double osTerrainGetHeight(int x, int y)
+ {
+ return World.Terrain.GetHeight(x, y);
+ }
+
public string osSetDynamicTextureURL(string dynamicID, string contentType, string url, string extraParams,
int timer)
{
diff --git a/OpenSim/Region/Terrain.BasicTerrain/TerrainEngine.cs b/OpenSim/Region/Terrain.BasicTerrain/TerrainEngine.cs
index f29f42a57d..e89ff6286b 100644
--- a/OpenSim/Region/Terrain.BasicTerrain/TerrainEngine.cs
+++ b/OpenSim/Region/Terrain.BasicTerrain/TerrainEngine.cs
@@ -1121,6 +1121,21 @@ namespace OpenSim.Region.Terrain
heightmap.seed = val;
}
+ ///
+ /// Sets a particular heightmap point to a specified value
+ ///
+ /// X Coordinate
+ /// Y Coordinate
+ /// Value
+ public void Set(int x, int y, double val)
+ {
+ lock (heightmap)
+ {
+ heightmap.Set(x, y, val);
+ }
+ tainted++;
+ }
+
///
/// Raises land in a sphere around the specified coordinates
///
diff --git a/prebuild.xml b/prebuild.xml
index 7a6317c1eb..4827a3dc38 100644
--- a/prebuild.xml
+++ b/prebuild.xml
@@ -1115,6 +1115,7 @@
+