aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Environment
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/Environment')
-rw-r--r--OpenSim/Region/Environment/Modules/AvatarFactoryModule.cs33
1 files changed, 18 insertions, 15 deletions
diff --git a/OpenSim/Region/Environment/Modules/AvatarFactoryModule.cs b/OpenSim/Region/Environment/Modules/AvatarFactoryModule.cs
index 3e685a5..edaad82 100644
--- a/OpenSim/Region/Environment/Modules/AvatarFactoryModule.cs
+++ b/OpenSim/Region/Environment/Modules/AvatarFactoryModule.cs
@@ -77,27 +77,30 @@ namespace OpenSim.Region.Environment.Modules
77 CachedUserInfo profile = m_scene.CommsManager.UserProfileCacheService.GetUserDetails(clientView.AgentId); 77 CachedUserInfo profile = m_scene.CommsManager.UserProfileCacheService.GetUserDetails(clientView.AgentId);
78 if (profile != null) 78 if (profile != null)
79 { 79 {
80 //Todo look up the assetid from the inventory cache (or something) for each itemId that is in AvatarWearingArgs 80 if (profile.RootFolder != null)
81 // then store assetid and itemId and wearable type in a database
82 foreach (AvatarWearingArgs.Wearable wear in e.NowWearing)
83 { 81 {
84 if (wear.Type < 13) 82 //Todo look up the assetid from the inventory cache (or something) for each itemId that is in AvatarWearingArgs
83 // then store assetid and itemId and wearable type in a database
84 foreach (AvatarWearingArgs.Wearable wear in e.NowWearing)
85 { 85 {
86 LLUUID assetId; 86 if (wear.Type < 13)
87
88 InventoryItemBase baseItem = profile.RootFolder.HasItem(wear.ItemID);
89 if (baseItem != null)
90 { 87 {
91 assetId = baseItem.assetID; 88 LLUUID assetId;
92 //temporary dictionary storage. This should be storing to a database 89
93 if (m_avatarsClothes.ContainsKey(clientView.AgentId)) 90 InventoryItemBase baseItem = profile.RootFolder.HasItem(wear.ItemID);
91 if (baseItem != null)
94 { 92 {
95 AvatarAppearance avWearing = m_avatarsClothes[clientView.AgentId]; 93 assetId = baseItem.assetID;
96 avWearing.IsWearing[wear.Type].AssetID = assetId; 94 //temporary dictionary storage. This should be storing to a database
97 avWearing.IsWearing[wear.Type].ItemID = wear.ItemID; 95 if (m_avatarsClothes.ContainsKey(clientView.AgentId))
96 {
97 AvatarAppearance avWearing = m_avatarsClothes[clientView.AgentId];
98 avWearing.IsWearing[wear.Type].AssetID = assetId;
99 avWearing.IsWearing[wear.Type].ItemID = wear.ItemID;
100 }
98 } 101 }
99 }
100 102
103 }
101 } 104 }
102 } 105 }
103 } 106 }