From 6b13730bc7451a407c6370d289545542c66a74ea Mon Sep 17 00:00:00 2001 From: Teravus Ovares Date: Fri, 26 Sep 2008 12:56:17 +0000 Subject: * Wind updates. Still random.. but in 4 directions instead of two! * It seems kind of silly to be building a 256x256 array just to use two 16 float blocks.. but for now the layerdata routine requires it so we'll go along with that. * We only fill a 32x16 area of the 256x256 float array with data. * We use patches 0,0 and 0,1 for the first and second patch to determine the direction and magnitude of the wind. --- .../Environment/Modules/World/NPC/NPCAvatar.cs | 2 +- .../Environment/Modules/World/Wind/WindModule.cs | 54 +++++++++++----------- 2 files changed, 29 insertions(+), 27 deletions(-) (limited to 'OpenSim/Region/Environment') diff --git a/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs b/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs index 653932c..a8ed498 100644 --- a/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs +++ b/OpenSim/Region/Environment/Modules/World/NPC/NPCAvatar.cs @@ -483,7 +483,7 @@ namespace OpenSim.Region.Environment.Modules.World.NPC } public virtual void SendWindData(float[] map) { } - public virtual void SendWindData(int px, int py, float[] map) { } + public virtual void SendWindData(int p1x, int p1y, int p2x, int p2y, float[] map) { } public virtual void MoveAgentIntoRegion(RegionInfo regInfo, Vector3 pos, Vector3 look) { diff --git a/OpenSim/Region/Environment/Modules/World/Wind/WindModule.cs b/OpenSim/Region/Environment/Modules/World/Wind/WindModule.cs index 190cc0b..d7bc42f 100644 --- a/OpenSim/Region/Environment/Modules/World/Wind/WindModule.cs +++ b/OpenSim/Region/Environment/Modules/World/Wind/WindModule.cs @@ -149,28 +149,11 @@ namespace OpenSim.Region.Environment.Modules { if (!avatar.IsChildAgent) { - spotxp = (int)avatar.CameraPosition.X + 3; - spotxm = (int)avatar.CameraPosition.X - 3; - spotyp = (int)avatar.CameraPosition.Y + 3; - spotym = (int)avatar.CameraPosition.Y - 3; - if (spotxm < 0) - spotxm = 0; - if (spotym < 0) - spotym = 0; - if (spotxp > 255) - spotxp = 255; - if (spotyp > 255) - spotyp = 255; - for (int x = spotxm; x