aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim
diff options
context:
space:
mode:
authorTom Grimshaw2010-06-20 14:45:36 -0700
committerTom Grimshaw2010-06-20 14:45:36 -0700
commit33d05ef554c4cbbdfa8c744a0ac2c23a0683ad08 (patch)
treefb2c737c93f61f686ee5eaef0b10eb615e1f7a6f /OpenSim
parentUpdate all clients sitting on a linkset if a child prim is moved. This preven... (diff)
parentModify avatar responsiveness policy to send roots before children (diff)
downloadopensim-SC-33d05ef554c4cbbdfa8c744a0ac2c23a0683ad08.zip
opensim-SC-33d05ef554c4cbbdfa8c744a0ac2c23a0683ad08.tar.gz
opensim-SC-33d05ef554c4cbbdfa8c744a0ac2c23a0683ad08.tar.bz2
opensim-SC-33d05ef554c4cbbdfa8c744a0ac2c23a0683ad08.tar.xz
Merge branch 'careminster-presence-refactor' of ssh://3dhosting.de/var/git/careminster into careminster-presence-refactor
Diffstat (limited to 'OpenSim')
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs5
-rw-r--r--OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/InventoryTransferModule.cs2
-rw-r--r--OpenSim/Region/Framework/Scenes/Prioritizer.cs15
-rw-r--r--OpenSim/Region/Framework/Scenes/SceneObjectPart.cs4
-rw-r--r--OpenSim/Region/Physics/OdePlugin/OdePlugin.cs1
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs9
-rw-r--r--OpenSim/Region/ScriptEngine/Shared/LSL_Types.cs12
7 files changed, 32 insertions, 16 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs b/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
index 4c01985..c6f8b88 100644
--- a/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Friends/FriendsModule.cs
@@ -504,7 +504,7 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends
504 UUID principalID = new UUID(im.fromAgentID); 504 UUID principalID = new UUID(im.fromAgentID);
505 UUID friendID = new UUID(im.toAgentID); 505 UUID friendID = new UUID(im.toAgentID);
506 506
507 m_log.DebugFormat("[FRIENDS]: {0} offered friendship to {1}", principalID, friendID); 507 m_log.DebugFormat("[FRIENDS]: {0} ({1}) offered friendship to {2}", principalID, im.fromAgentName, friendID);
508 508
509 // This user wants to be friends with the other user. 509 // This user wants to be friends with the other user.
510 // Let's add the relation backwards, in case the other is not online 510 // Let's add the relation backwards, in case the other is not online
@@ -522,6 +522,9 @@ namespace OpenSim.Region.CoreModules.Avatar.Friends
522 im.imSessionID = im.fromAgentID; 522 im.imSessionID = im.fromAgentID;
523 523
524 // Try the local sim 524 // Try the local sim
525 UserAccount account = UserAccountService.GetUserAccount(Scene.RegionInfo.ScopeID, agentID);
526 im.fromAgentName = (account == null) ? "Unknown" : account.FirstName + " " + account.LastName;
527
525 if (LocalFriendshipOffered(friendID, im)) 528 if (LocalFriendshipOffered(friendID, im))
526 return; 529 return;
527 530
diff --git a/OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/InventoryTransferModule.cs b/OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/InventoryTransferModule.cs
index 2f1e9dd..0d04491 100644
--- a/OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/InventoryTransferModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/Inventory/Transfer/InventoryTransferModule.cs
@@ -241,6 +241,8 @@ namespace OpenSim.Region.CoreModules.Avatar.Inventory.Transfer
241 im.imSessionID = itemID.Guid; 241 im.imSessionID = itemID.Guid;
242 } 242 }
243 243
244 im.offline = 1; // Remember these
245
244 // Send the IM to the recipient. The item is already 246 // Send the IM to the recipient. The item is already
245 // in their inventory, so it will not be lost if 247 // in their inventory, so it will not be lost if
246 // they are offline. 248 // they are offline.
diff --git a/OpenSim/Region/Framework/Scenes/Prioritizer.cs b/OpenSim/Region/Framework/Scenes/Prioritizer.cs
index 7b7677b..b95b5f2 100644
--- a/OpenSim/Region/Framework/Scenes/Prioritizer.cs
+++ b/OpenSim/Region/Framework/Scenes/Prioritizer.cs
@@ -208,12 +208,19 @@ namespace OpenSim.Region.Framework.Scenes
208 208
209 if (entity is SceneObjectPart) 209 if (entity is SceneObjectPart)
210 { 210 {
211 PhysicsActor physActor = ((SceneObjectPart)entity).ParentGroup.RootPart.PhysActor;
212 if (physActor == null || !physActor.IsPhysical)
213 priority += 100;
214
215 if (((SceneObjectPart)entity).ParentGroup.RootPart.IsAttachment) 211 if (((SceneObjectPart)entity).ParentGroup.RootPart.IsAttachment)
212 {
216 priority = 1.0; 213 priority = 1.0;
214 }
215 else
216 {
217 PhysicsActor physActor = ((SceneObjectPart)entity).ParentGroup.RootPart.PhysActor;
218 if (physActor == null || !physActor.IsPhysical)
219 priority += 100;
220 }
221
222 if (((SceneObjectPart)entity).ParentGroup.RootPart != (SceneObjectPart)entity)
223 priority +=1;
217 } 224 }
218 return priority; 225 return priority;
219 } 226 }
diff --git a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
index 78faa01..09c945b 100644
--- a/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
+++ b/OpenSim/Region/Framework/Scenes/SceneObjectPart.cs
@@ -1504,6 +1504,10 @@ namespace OpenSim.Region.Framework.Scenes
1504 DoPhysicsPropertyUpdate(RigidBody, true); 1504 DoPhysicsPropertyUpdate(RigidBody, true);
1505 PhysActor.SetVolumeDetect(VolumeDetectActive ? 1 : 0); 1505 PhysActor.SetVolumeDetect(VolumeDetectActive ? 1 : 0);
1506 } 1506 }
1507 else
1508 {
1509 m_log.DebugFormat("[SPEW]: physics actor is null for {0} with parent {1}", UUID, this.ParentGroup.UUID);
1510 }
1507 } 1511 }
1508 } 1512 }
1509 } 1513 }
diff --git a/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs b/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs
index 100f98d..7fd59a0 100644
--- a/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs
+++ b/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs
@@ -1781,6 +1781,7 @@ namespace OpenSim.Region.Physics.OdePlugin
1781 m_log.ErrorFormat("[PHYSICS]: Exception while meshing prim {0}.", primName); 1781 m_log.ErrorFormat("[PHYSICS]: Exception while meshing prim {0}.", primName);
1782 m_log.Debug(e.ToString()); 1782 m_log.Debug(e.ToString());
1783 mesh = null; 1783 mesh = null;
1784 return null;
1784 } 1785 }
1785 } 1786 }
1786 1787
diff --git a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
index 61c5add..5c6d382 100644
--- a/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/Api/Implementation/LSL_Api.cs
@@ -4232,22 +4232,21 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
4232 UUID uuid = (UUID)id; 4232 UUID uuid = (UUID)id;
4233 4233
4234 UserAccount account = World.UserAccountService.GetUserAccount(World.RegionInfo.ScopeID, uuid); 4234 UserAccount account = World.UserAccountService.GetUserAccount(World.RegionInfo.ScopeID, uuid);
4235 if (account == null)
4236 return UUID.Zero.ToString();
4237
4235 4238
4236 PresenceInfo pinfo = null; 4239 PresenceInfo pinfo = null;
4237 PresenceInfo[] pinfos = World.PresenceService.GetAgents(new string[] { uuid.ToString() }); 4240 PresenceInfo[] pinfos = World.PresenceService.GetAgents(new string[] { uuid.ToString() });
4238 if (pinfos != null && pinfos.Length > 0) 4241 if (pinfos != null && pinfos.Length > 0)
4239 pinfo = pinfos[0]; 4242 pinfo = pinfos[0];
4240 4243
4241 if (pinfo == null)
4242 return UUID.Zero.ToString();
4243
4244 string reply = String.Empty; 4244 string reply = String.Empty;
4245 4245
4246 switch (data) 4246 switch (data)
4247 { 4247 {
4248 case 1: // DATA_ONLINE (0|1) 4248 case 1: // DATA_ONLINE (0|1)
4249 // TODO: implement fetching of this information 4249 if (pinfo != null && pinfo.RegionID != UUID.Zero)
4250 if (pinfo != null)
4251 reply = "1"; 4250 reply = "1";
4252 else 4251 else
4253 reply = "0"; 4252 reply = "0";
diff --git a/OpenSim/Region/ScriptEngine/Shared/LSL_Types.cs b/OpenSim/Region/ScriptEngine/Shared/LSL_Types.cs
index 1ea52c5..212dbe3 100644
--- a/OpenSim/Region/ScriptEngine/Shared/LSL_Types.cs
+++ b/OpenSim/Region/ScriptEngine/Shared/LSL_Types.cs
@@ -83,19 +83,19 @@ namespace OpenSim.Region.ScriptEngine.Shared
83 83
84 public override string ToString() 84 public override string ToString()
85 { 85 {
86 string s=String.Format("<{0:0.000000},{1:0.000000},{2:0.000000}>", x, y, z); 86 string s=String.Format("<{0:0.000000}, {1:0.000000}, {2:0.000000}>", x, y, z);
87 return s; 87 return s;
88 } 88 }
89 89
90 public static explicit operator LSLString(Vector3 vec) 90 public static explicit operator LSLString(Vector3 vec)
91 { 91 {
92 string s=String.Format("<{0:0.000000},{1:0.000000},{2:0.000000}>", vec.x, vec.y, vec.z); 92 string s=String.Format("<{0:0.000000}, {1:0.000000}, {2:0.000000}>", vec.x, vec.y, vec.z);
93 return new LSLString(s); 93 return new LSLString(s);
94 } 94 }
95 95
96 public static explicit operator string(Vector3 vec) 96 public static explicit operator string(Vector3 vec)
97 { 97 {
98 string s=String.Format("<{0:0.000000},{1:0.000000},{2:0.000000}>", vec.x, vec.y, vec.z); 98 string s=String.Format("<{0:0.000000}, {1:0.000000}, {2:0.000000}>", vec.x, vec.y, vec.z);
99 return s; 99 return s;
100 } 100 }
101 101
@@ -337,19 +337,19 @@ namespace OpenSim.Region.ScriptEngine.Shared
337 337
338 public override string ToString() 338 public override string ToString()
339 { 339 {
340 string st=String.Format(Culture.FormatProvider, "<{0:0.000000},{1:0.000000},{2:0.000000},{3:0.000000}>", x, y, z, s); 340 string st=String.Format(Culture.FormatProvider, "<{0:0.000000}, {1:0.000000}, {2:0.000000}, {3:0.000000}>", x, y, z, s);
341 return st; 341 return st;
342 } 342 }
343 343
344 public static explicit operator string(Quaternion r) 344 public static explicit operator string(Quaternion r)
345 { 345 {
346 string s=String.Format("<{0:0.000000},{1:0.000000},{2:0.000000},{3:0.000000}>", r.x, r.y, r.z, r.s); 346 string s=String.Format("<{0:0.000000}, {1:0.000000}, {2:0.000000}, {3:0.000000}>", r.x, r.y, r.z, r.s);
347 return s; 347 return s;
348 } 348 }
349 349
350 public static explicit operator LSLString(Quaternion r) 350 public static explicit operator LSLString(Quaternion r)
351 { 351 {
352 string s=String.Format("<{0:0.000000},{1:0.000000},{2:0.000000},{3:0.000000}>", r.x, r.y, r.z, r.s); 352 string s=String.Format("<{0:0.000000}, {1:0.000000}, {2:0.000000}, {3:0.000000}>", r.x, r.y, r.z, r.s);
353 return new LSLString(s); 353 return new LSLString(s);
354 } 354 }
355 355