aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Framework
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/Framework/Scenes/EventManager.cs6
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.Inventory.cs4
-rw-r--r--OpenSim/Region/Framework/Scenes/ScenePresence.cs19
3 files changed, 24 insertions, 5 deletions
diff --git a/OpenSim/Region/Framework/Scenes/EventManager.cs b/OpenSim/Region/Framework/Scenes/EventManager.cs
index 61b0ebd..39d7512 100644
--- a/OpenSim/Region/Framework/Scenes/EventManager.cs
+++ b/OpenSim/Region/Framework/Scenes/EventManager.cs
@@ -742,7 +742,7 @@ namespace OpenSim.Region.Framework.Scenes
742 public event OnIncomingSceneObjectDelegate OnIncomingSceneObject; 742 public event OnIncomingSceneObjectDelegate OnIncomingSceneObject;
743 public delegate void OnIncomingSceneObjectDelegate(SceneObjectGroup so); 743 public delegate void OnIncomingSceneObjectDelegate(SceneObjectGroup so);
744 744
745 public delegate void NewInventoryItemUploadComplete(UUID avatarID, UUID assetID, string name, int userlevel); 745 public delegate void NewInventoryItemUploadComplete(UUID avatarID, AssetType type, UUID assetID, string name, int userlevel);
746 746
747 public event NewInventoryItemUploadComplete OnNewInventoryItemUploadComplete; 747 public event NewInventoryItemUploadComplete OnNewInventoryItemUploadComplete;
748 748
@@ -2146,7 +2146,7 @@ namespace OpenSim.Region.Framework.Scenes
2146 } 2146 }
2147 } 2147 }
2148 2148
2149 public void TriggerOnNewInventoryItemUploadComplete(UUID agentID, UUID AssetID, String AssetName, int userlevel) 2149 public void TriggerOnNewInventoryItemUploadComplete(UUID agentID, AssetType type, UUID AssetID, String AssetName, int userlevel)
2150 { 2150 {
2151 NewInventoryItemUploadComplete handlerNewInventoryItemUpdateComplete = OnNewInventoryItemUploadComplete; 2151 NewInventoryItemUploadComplete handlerNewInventoryItemUpdateComplete = OnNewInventoryItemUploadComplete;
2152 if (handlerNewInventoryItemUpdateComplete != null) 2152 if (handlerNewInventoryItemUpdateComplete != null)
@@ -2155,7 +2155,7 @@ namespace OpenSim.Region.Framework.Scenes
2155 { 2155 {
2156 try 2156 try
2157 { 2157 {
2158 d(agentID, AssetID, AssetName, userlevel); 2158 d(agentID, type, AssetID, AssetName, userlevel);
2159 } 2159 }
2160 catch (Exception e) 2160 catch (Exception e)
2161 { 2161 {
diff --git a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
index 1e4d558..58fa18c 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.Inventory.cs
@@ -139,7 +139,7 @@ namespace OpenSim.Region.Framework.Scenes
139 { 139 {
140 userlevel = 1; 140 userlevel = 1;
141 } 141 }
142 EventManager.TriggerOnNewInventoryItemUploadComplete(item.Owner, item.AssetID, item.Name, userlevel); 142 EventManager.TriggerOnNewInventoryItemUploadComplete(item.Owner, (AssetType)item.AssetType, item.AssetID, item.Name, userlevel);
143 143
144 return true; 144 return true;
145 } 145 }
@@ -178,7 +178,7 @@ namespace OpenSim.Region.Framework.Scenes
178 { 178 {
179 userlevel = 1; 179 userlevel = 1;
180 } 180 }
181 EventManager.TriggerOnNewInventoryItemUploadComplete(item.Owner, item.AssetID, item.Name, userlevel); 181 EventManager.TriggerOnNewInventoryItemUploadComplete(item.Owner, (AssetType)item.AssetType, item.AssetID, item.Name, userlevel);
182 182
183 if (originalFolder != UUID.Zero) 183 if (originalFolder != UUID.Zero)
184 { 184 {
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
index 33db88b..6433878 100644
--- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs
@@ -1125,6 +1125,25 @@ namespace OpenSim.Region.Framework.Scenes
1125 1125
1126 public void StopFlying() 1126 public void StopFlying()
1127 { 1127 {
1128 Vector3 pos = AbsolutePosition;
1129 if (Appearance.AvatarHeight != 127.0f)
1130 pos += new Vector3(0f, 0f, (Appearance.AvatarHeight / 6f));
1131 else
1132 pos += new Vector3(0f, 0f, (1.56f / 6f));
1133
1134 AbsolutePosition = pos;
1135
1136 // attach a suitable collision plane regardless of the actual situation to force the LLClient to land.
1137 // Collision plane below the avatar's position a 6th of the avatar's height is suitable.
1138 // Mind you, that this method doesn't get called if the avatar's velocity magnitude is greater then a
1139 // certain amount.. because the LLClient wouldn't land in that situation anyway.
1140
1141 // why are we still testing for this really old height value default???
1142 if (Appearance.AvatarHeight != 127.0f)
1143 CollisionPlane = new Vector4(0, 0, 0, pos.Z - Appearance.AvatarHeight / 6f);
1144 else
1145 CollisionPlane = new Vector4(0, 0, 0, pos.Z - (1.56f / 6f));
1146
1128 ControllingClient.SendAgentTerseUpdate(this); 1147 ControllingClient.SendAgentTerseUpdate(this);
1129 } 1148 }
1130 1149