From e3dd15bef05bbe53b3dac44c320e4182ce7feb68 Mon Sep 17 00:00:00 2001
From: Teravus Ovares
Date: Sat, 15 Dec 2007 17:10:12 +0000
Subject: * Added support for multiple terrain blocks to be edited at the same
time * Now sending South and East cords to the terrain editor.. * No new
functionality from a user perspective * Programming wise, there's enough
information to get the select based terrain editor working in an upcoming
revision.
---
OpenSim/Framework/IClientAPI.cs | 2 +-
OpenSim/Region/ClientStack/ClientView.cs | 11 +++++++----
OpenSim/Region/Environment/Scenes/Scene.PacketHandlers.cs | 2 +-
3 files changed, 9 insertions(+), 6 deletions(-)
diff --git a/OpenSim/Framework/IClientAPI.cs b/OpenSim/Framework/IClientAPI.cs
index c34fb93..62a97e5 100644
--- a/OpenSim/Framework/IClientAPI.cs
+++ b/OpenSim/Framework/IClientAPI.cs
@@ -229,7 +229,7 @@ namespace OpenSim.Framework
public delegate void RezObject(IClientAPI remoteClient, LLUUID itemID, LLVector3 pos);
public delegate void ModifyTerrain(
- float height, float seconds, byte size, byte action, float north, float west, IClientAPI remoteClient);
+ float height, float seconds, byte size, byte action, float north, float west, float south, float east, IClientAPI remoteClient);
public delegate void SetAppearance(byte[] texture, AgentSetAppearancePacket.VisualParamBlock[] visualParam);
diff --git a/OpenSim/Region/ClientStack/ClientView.cs b/OpenSim/Region/ClientStack/ClientView.cs
index dffcd73..065e5e0 100644
--- a/OpenSim/Region/ClientStack/ClientView.cs
+++ b/OpenSim/Region/ClientStack/ClientView.cs
@@ -2453,10 +2453,13 @@ namespace OpenSim.Region.ClientStack
{
if (OnModifyTerrain != null)
{
- OnModifyTerrain(modify.ModifyBlock.Height, modify.ModifyBlock.Seconds,
- modify.ModifyBlock.BrushSize,
- modify.ModifyBlock.Action, modify.ParcelData[0].North,
- modify.ParcelData[0].West, this);
+ for (int i=0; i < modify.ParcelData.Length; i++)
+ {
+ OnModifyTerrain(modify.ModifyBlock.Height, modify.ModifyBlock.Seconds,
+ modify.ModifyBlock.BrushSize,
+ modify.ModifyBlock.Action, modify.ParcelData[i].North,
+ modify.ParcelData[i].West, modify.ParcelData[i].South, modify.ParcelData[i].East, this);
+ }
}
}
break;
diff --git a/OpenSim/Region/Environment/Scenes/Scene.PacketHandlers.cs b/OpenSim/Region/Environment/Scenes/Scene.PacketHandlers.cs
index 07e5362..ce77527 100644
--- a/OpenSim/Region/Environment/Scenes/Scene.PacketHandlers.cs
+++ b/OpenSim/Region/Environment/Scenes/Scene.PacketHandlers.cs
@@ -45,7 +45,7 @@ namespace OpenSim.Region.Environment.Scenes
/// The action to be performed
/// Distance from the north border where the cursor is located
/// Distance from the west border where the cursor is located
- public void ModifyTerrain(float height, float seconds, byte brushsize, byte action, float north, float west,
+ public void ModifyTerrain(float height, float seconds, byte brushsize, byte action, float north, float west, float south, float east,
IClientAPI remoteUser)
{
// Do a permissions check before allowing terraforming.
--
cgit v1.1