aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Environment
diff options
context:
space:
mode:
authorSean Dague2008-05-21 20:18:40 +0000
committerSean Dague2008-05-21 20:18:40 +0000
commit9389429ed3de0c67e8e708a34c3820ff4f9e8ca0 (patch)
tree11819e3770ba083baa441c04851a4ad22869c5b7 /OpenSim/Region/Environment
parentthis removes use of the mapper for wearables, and I can confirm things (diff)
downloadopensim-SC-9389429ed3de0c67e8e708a34c3820ff4f9e8ca0.zip
opensim-SC-9389429ed3de0c67e8e708a34c3820ff4f9e8ca0.tar.gz
opensim-SC-9389429ed3de0c67e8e708a34c3820ff4f9e8ca0.tar.bz2
opensim-SC-9389429ed3de0c67e8e708a34c3820ff4f9e8ca0.tar.xz
Clean out some crufty in AvatarFactoryModule
Fix RequestUpdateInventoryItem so that asset changes generate a new asset, which is needed for editing appearance to do the right thing. Persistant appearance seems to work after this, except you need to rebake textures some times.
Diffstat (limited to 'OpenSim/Region/Environment')
-rw-r--r--OpenSim/Region/Environment/Modules/Agent/AssetTransaction/AgentAssetsTransactions.cs2
-rw-r--r--OpenSim/Region/Environment/Scenes/ScenePresence.cs23
2 files changed, 12 insertions, 13 deletions
diff --git a/OpenSim/Region/Environment/Modules/Agent/AssetTransaction/AgentAssetsTransactions.cs b/OpenSim/Region/Environment/Modules/Agent/AssetTransaction/AgentAssetsTransactions.cs
index 81e19e6..f2185ab 100644
--- a/OpenSim/Region/Environment/Modules/Agent/AssetTransaction/AgentAssetsTransactions.cs
+++ b/OpenSim/Region/Environment/Modules/Agent/AssetTransaction/AgentAssetsTransactions.cs
@@ -347,6 +347,8 @@ namespace OpenSim.Region.Environment.Modules.Agent.AssetTransaction
347 347
348 if (asset != null && asset.FullID == assetID) 348 if (asset != null && asset.FullID == assetID)
349 { 349 {
350 // Assets never get updated, new ones get created
351 asset.FullID = LLUUID.Random();
350 asset.Name = item.Name; 352 asset.Name = item.Name;
351 asset.Description = item.Description; 353 asset.Description = item.Description;
352 asset.InvType = (sbyte) item.InvType; 354 asset.InvType = (sbyte) item.InvType;
diff --git a/OpenSim/Region/Environment/Scenes/ScenePresence.cs b/OpenSim/Region/Environment/Scenes/ScenePresence.cs
index f70eb45..1aa800a 100644
--- a/OpenSim/Region/Environment/Scenes/ScenePresence.cs
+++ b/OpenSim/Region/Environment/Scenes/ScenePresence.cs
@@ -1456,17 +1456,7 @@ namespace OpenSim.Region.Environment.Scenes
1456 1456
1457 SendFullUpdateToAllClients(); 1457 SendFullUpdateToAllClients();
1458 SendAppearanceToAllOtherAgents(); 1458 SendAppearanceToAllOtherAgents();
1459 SendOwnAppearance(); 1459 }
1460 }
1461
1462
1463 public void SetWearable(IClientAPI client, int wearableId, AvatarWearable wearable)
1464 {
1465 m_log.Info("[APPEARANCE] Setting wearable with client, wearableid, wearable");
1466 m_appearance.SetWearable(wearableId, wearable);
1467 m_scene.CommsManager.UserService.UpdateUserAppearance(client.AgentId, m_appearance);
1468 client.SendWearables(m_appearance.Wearables, m_appearance.Serial++);
1469 }
1470 1460
1471 /// <summary> 1461 /// <summary>
1472 /// 1462 ///
@@ -1476,6 +1466,11 @@ namespace OpenSim.Region.Environment.Scenes
1476 { 1466 {
1477 m_log.Info("[APPEARANCE] Sending Own Appearance"); 1467 m_log.Info("[APPEARANCE] Sending Own Appearance");
1478 ControllingClient.SendWearables(m_appearance.Wearables, m_appearance.Serial++); 1468 ControllingClient.SendWearables(m_appearance.Wearables, m_appearance.Serial++);
1469 ControllingClient.SendAppearance(
1470 m_appearance.Owner,
1471 m_appearance.VisualParams,
1472 m_appearance.Texture.ToBytes()
1473 );
1479 } 1474 }
1480 1475
1481 /// <summary> 1476 /// <summary>
@@ -1483,6 +1478,7 @@ namespace OpenSim.Region.Environment.Scenes
1483 /// </summary> 1478 /// </summary>
1484 public void SendAppearanceToAllOtherAgents() 1479 public void SendAppearanceToAllOtherAgents()
1485 { 1480 {
1481 m_log.Info("[APPEARANCE] Sending Appearance to All Other Agents");
1486 m_perfMonMS=System.Environment.TickCount; 1482 m_perfMonMS=System.Environment.TickCount;
1487 1483
1488 m_scene.ForEachScenePresence(delegate(ScenePresence scenePresence) 1484 m_scene.ForEachScenePresence(delegate(ScenePresence scenePresence)
@@ -1506,7 +1502,7 @@ namespace OpenSim.Region.Environment.Scenes
1506 1502
1507 public void SetAppearance(byte[] texture, List<byte> visualParam) 1503 public void SetAppearance(byte[] texture, List<byte> visualParam)
1508 { 1504 {
1509 m_log.Warn("[APPEARANCE] Setting Appearance"); 1505 m_log.Info("[APPEARANCE] Setting Appearance");
1510 m_appearance.SetAppearance(texture, visualParam); 1506 m_appearance.SetAppearance(texture, visualParam);
1511 SetHeight(m_appearance.AvatarHeight); 1507 SetHeight(m_appearance.AvatarHeight);
1512 m_scene.CommsManager.UserService.UpdateUserAppearance(m_controllingClient.AgentId, m_appearance); 1508 m_scene.CommsManager.UserService.UpdateUserAppearance(m_controllingClient.AgentId, m_appearance);
@@ -1517,9 +1513,10 @@ namespace OpenSim.Region.Environment.Scenes
1517 1513
1518 public void SetWearable(int wearableId, AvatarWearable wearable) 1514 public void SetWearable(int wearableId, AvatarWearable wearable)
1519 { 1515 {
1520 m_log.Warn("[APPEARANCE] Setting Wearable"); 1516 m_log.Info("[APPEARANCE] Setting Wearable");
1521 m_appearance.SetWearable(wearableId, wearable); 1517 m_appearance.SetWearable(wearableId, wearable);
1522 m_scene.CommsManager.UserService.UpdateUserAppearance(m_controllingClient.AgentId, m_appearance); 1518 m_scene.CommsManager.UserService.UpdateUserAppearance(m_controllingClient.AgentId, m_appearance);
1519 m_controllingClient.SendWearables(m_appearance.Wearables, m_appearance.Serial++);
1523 } 1520 }
1524 1521
1525 // Because appearance setting is in a module, we actually need 1522 // Because appearance setting is in a module, we actually need