diff options
author | Tom Grimshaw | 2010-06-20 14:45:36 -0700 |
---|---|---|
committer | Tom Grimshaw | 2010-06-20 14:45:36 -0700 |
commit | 33d05ef554c4cbbdfa8c744a0ac2c23a0683ad08 (patch) | |
tree | fb2c737c93f61f686ee5eaef0b10eb615e1f7a6f /OpenSim | |
parent | Update all clients sitting on a linkset if a child prim is moved. This preven... (diff) | |
parent | Modify avatar responsiveness policy to send roots before children (diff) | |
download | opensim-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')
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 | ||