aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/CoreModules/Avatar/AvatarFactory
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/CoreModules/Avatar/AvatarFactory')
-rw-r--r--OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs15
1 files changed, 5 insertions, 10 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs b/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs
index e2755c8..6cbd8bd 100644
--- a/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs
@@ -382,27 +382,22 @@ namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory
382 { 382 {
383 for (int i = 0; i < AvatarWearable.MAX_WEARABLES; i++) 383 for (int i = 0; i < AvatarWearable.MAX_WEARABLES; i++)
384 { 384 {
385 if (appearance.Wearables[i].ItemID == UUID.Zero) 385 for (int j = 0 ; j < appearance.Wearables[j].Count ; j ++ )
386 { 386 {
387 appearance.Wearables[i].AssetID = UUID.Zero; 387 InventoryItemBase baseItem = new InventoryItemBase(appearance.Wearables[i][j].ItemID, userID);
388 }
389 else
390 {
391 InventoryItemBase baseItem = new InventoryItemBase(appearance.Wearables[i].ItemID, userID);
392 baseItem = invService.GetItem(baseItem); 388 baseItem = invService.GetItem(baseItem);
393 389
394 if (baseItem != null) 390 if (baseItem != null)
395 { 391 {
396 appearance.Wearables[i].AssetID = baseItem.AssetID; 392 appearance.Wearables[i].Add(appearance.Wearables[i][j].ItemID, baseItem.AssetID);
397 } 393 }
398 else 394 else
399 { 395 {
400 m_log.ErrorFormat( 396 m_log.ErrorFormat(
401 "[AVATAR FACTORY MODULE]: Can't find inventory item {0} for {1}, setting to default", 397 "[AVATAR FACTORY MODULE]: Can't find inventory item {0} for {1}, setting to default",
402 appearance.Wearables[i].ItemID, (WearableType)i); 398 appearance.Wearables[i][j].ItemID, (WearableType)i);
403 399
404 appearance.Wearables[i].ItemID = UUID.Zero; 400 appearance.Wearables[i].RemoveItem(appearance.Wearables[i][j].ItemID);
405 appearance.Wearables[i].AssetID = UUID.Zero;
406 } 401 }
407 } 402 }
408 } 403 }