aboutsummaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs2
-rw-r--r--OpenSim/Region/Framework/Scenes/Scene.cs1
-rw-r--r--OpenSim/Services/UserAccountService/UserAccountService.cs152
-rw-r--r--bin/assets/BodyPartsAssetSet/BodyPartsAssetSet.xml10
-rw-r--r--bin/assets/BodyPartsAssetSet/base_eyes.dat26
-rw-r--r--bin/assets/BodyPartsAssetSet/base_hair.dat26
-rw-r--r--bin/assets/BodyPartsAssetSet/base_shape.dat212
-rw-r--r--bin/assets/BodyPartsAssetSet/newhair.dat63
-rw-r--r--bin/assets/TexturesAssetSet/TexturesAssetSet.xml7
-rw-r--r--bin/assets/TexturesAssetSet/default_iris.jp2bin0 -> 15719 bytes
-rw-r--r--bin/config-include/Standalone.ini1
-rw-r--r--bin/inventory/TexturesLibrary/TexturesLibraryItems.xml10
12 files changed, 362 insertions, 148 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs b/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs
index b6a1564..c5a1828 100644
--- a/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs
+++ b/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs
@@ -467,7 +467,7 @@ namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory
467 return; 467 return;
468 } 468 }
469 469
470 // m_log.WarnFormat("[AVFACTORY]: Received request for wearables of {0}", client.AgentId); 470// m_log.DebugFormat("[AVFACTORY]: Received request for wearables of {0}", client.Name);
471 471
472 client.SendWearables(sp.Appearance.Wearables, sp.Appearance.Serial++); 472 client.SendWearables(sp.Appearance.Wearables, sp.Appearance.Serial++);
473 } 473 }
diff --git a/OpenSim/Region/Framework/Scenes/Scene.cs b/OpenSim/Region/Framework/Scenes/Scene.cs
index c5c9260..f394a95 100644
--- a/OpenSim/Region/Framework/Scenes/Scene.cs
+++ b/OpenSim/Region/Framework/Scenes/Scene.cs
@@ -1237,6 +1237,7 @@ namespace OpenSim.Region.Framework.Scenes
1237 first, last); 1237 first, last);
1238 1238
1239 1239
1240
1240 m_log.InfoFormat("[USER ACCOUNT SERVICE]: Account {0} {1} created successfully", first, last); 1241 m_log.InfoFormat("[USER ACCOUNT SERVICE]: Account {0} {1} created successfully", first, last);
1241 1242
1242 m_regInfo.EstateSettings.EstateOwner = account.PrincipalID; 1243 m_regInfo.EstateSettings.EstateOwner = account.PrincipalID;
diff --git a/OpenSim/Services/UserAccountService/UserAccountService.cs b/OpenSim/Services/UserAccountService/UserAccountService.cs
index 8b8a8f9..21ce86c 100644
--- a/OpenSim/Services/UserAccountService/UserAccountService.cs
+++ b/OpenSim/Services/UserAccountService/UserAccountService.cs
@@ -28,15 +28,15 @@
28using System; 28using System;
29using System.Collections.Generic; 29using System.Collections.Generic;
30using System.Reflection; 30using System.Reflection;
31using log4net;
31using Nini.Config; 32using Nini.Config;
33using OpenMetaverse;
32using OpenSim.Data; 34using OpenSim.Data;
35using OpenSim.Framework;
33using OpenSim.Services.Interfaces; 36using OpenSim.Services.Interfaces;
34using OpenSim.Framework.Console; 37using OpenSim.Framework.Console;
35using GridRegion = OpenSim.Services.Interfaces.GridRegion; 38using GridRegion = OpenSim.Services.Interfaces.GridRegion;
36 39
37using OpenMetaverse;
38using log4net;
39
40namespace OpenSim.Services.UserAccountService 40namespace OpenSim.Services.UserAccountService
41{ 41{
42 public class UserAccountService : UserAccountServiceBase, IUserAccountService 42 public class UserAccountService : UserAccountServiceBase, IUserAccountService
@@ -44,10 +44,16 @@ namespace OpenSim.Services.UserAccountService
44 private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType); 44 private static readonly ILog m_log = LogManager.GetLogger(MethodBase.GetCurrentMethod().DeclaringType);
45 private static UserAccountService m_RootInstance; 45 private static UserAccountService m_RootInstance;
46 46
47 /// <summary>
48 /// Should we create default entries (minimum body parts/clothing, avatar wearable entries) for a new avatar?
49 /// </summary>
50 private bool m_CreateDefaultAvatarEntries;
51
47 protected IGridService m_GridService; 52 protected IGridService m_GridService;
48 protected IAuthenticationService m_AuthenticationService; 53 protected IAuthenticationService m_AuthenticationService;
49 protected IGridUserService m_GridUserService; 54 protected IGridUserService m_GridUserService;
50 protected IInventoryService m_InventoryService; 55 protected IInventoryService m_InventoryService;
56 protected IAvatarService m_AvatarService;
51 57
52 public UserAccountService(IConfigSource config) 58 public UserAccountService(IConfigSource config)
53 : base(config) 59 : base(config)
@@ -77,6 +83,12 @@ namespace OpenSim.Services.UserAccountService
77 if (invServiceDll != string.Empty) 83 if (invServiceDll != string.Empty)
78 m_InventoryService = LoadPlugin<IInventoryService>(invServiceDll, new Object[] { config }); 84 m_InventoryService = LoadPlugin<IInventoryService>(invServiceDll, new Object[] { config });
79 85
86 string avatarServiceDll = userConfig.GetString("AvatarService", string.Empty);
87 if (avatarServiceDll != string.Empty)
88 m_AvatarService = LoadPlugin<IAvatarService>(avatarServiceDll, new Object[] { config });
89
90 m_CreateDefaultAvatarEntries = userConfig.GetBoolean("CreateDefaultAvatarEntries", false);
91
80 if (MainConsole.Instance != null) 92 if (MainConsole.Instance != null)
81 { 93 {
82 MainConsole.Instance.Commands.AddCommand("UserService", false, 94 MainConsole.Instance.Commands.AddCommand("UserService", false,
@@ -102,9 +114,7 @@ namespace OpenSim.Services.UserAccountService
102 "show account <first> <last>", 114 "show account <first> <last>",
103 "Show account details for the given user", HandleShowAccount); 115 "Show account details for the given user", HandleShowAccount);
104 } 116 }
105
106 } 117 }
107
108 } 118 }
109 119
110 #region IUserAccountService 120 #region IUserAccountService
@@ -493,12 +503,20 @@ namespace OpenSim.Services.UserAccountService
493 { 503 {
494 success = m_InventoryService.CreateUserInventory(account.PrincipalID); 504 success = m_InventoryService.CreateUserInventory(account.PrincipalID);
495 if (!success) 505 if (!success)
506 {
496 m_log.WarnFormat("[USER ACCOUNT SERVICE]: Unable to create inventory for account {0} {1}.", 507 m_log.WarnFormat("[USER ACCOUNT SERVICE]: Unable to create inventory for account {0} {1}.",
497 firstName, lastName); 508 firstName, lastName);
509 }
510 else if (m_CreateDefaultAvatarEntries)
511 {
512 CreateDefaultAppearanceEntries(account.PrincipalID);
513 }
498 } 514 }
499 515
500 m_log.InfoFormat("[USER ACCOUNT SERVICE]: Account {0} {1} created successfully", firstName, lastName); 516 m_log.InfoFormat("[USER ACCOUNT SERVICE]: Account {0} {1} created successfully", firstName, lastName);
501 } else { 517 }
518 else
519 {
502 m_log.ErrorFormat("[USER ACCOUNT SERVICE]: Account creation failed for account {0} {1}", firstName, lastName); 520 m_log.ErrorFormat("[USER ACCOUNT SERVICE]: Account creation failed for account {0} {1}", firstName, lastName);
503 } 521 }
504 } 522 }
@@ -507,5 +525,125 @@ namespace OpenSim.Services.UserAccountService
507 m_log.ErrorFormat("[USER ACCOUNT SERVICE]: A user with the name {0} {1} already exists!", firstName, lastName); 525 m_log.ErrorFormat("[USER ACCOUNT SERVICE]: A user with the name {0} {1} already exists!", firstName, lastName);
508 } 526 }
509 } 527 }
528
529 private void CreateDefaultAppearanceEntries(UUID principalID)
530 {
531 m_log.DebugFormat("[USER ACCOUNT SERVICE]: Creating default appearance items for {0}", principalID);
532
533 InventoryFolderBase bodyPartsFolder = m_InventoryService.GetFolderForType(principalID, AssetType.Bodypart);
534
535 InventoryItemBase eyes = new InventoryItemBase(UUID.Random(), principalID);
536 eyes.AssetID = new UUID("4bb6fa4d-1cd2-498a-a84c-95c1a0e745a7");
537 eyes.Name = "Default Eyes";
538 eyes.CreatorId = principalID.ToString();
539 eyes.AssetType = (int)AssetType.Bodypart;
540 eyes.InvType = (int)InventoryType.Wearable;
541 eyes.Folder = bodyPartsFolder.ID;
542 eyes.BasePermissions = (uint)PermissionMask.All;
543 eyes.CurrentPermissions = (uint)PermissionMask.All;
544 eyes.EveryOnePermissions = (uint)PermissionMask.All;
545 eyes.GroupPermissions = (uint)PermissionMask.All;
546 eyes.NextPermissions = (uint)PermissionMask.All;
547 eyes.Flags = (uint)WearableType.Eyes;
548 m_InventoryService.AddItem(eyes);
549
550 InventoryItemBase shape = new InventoryItemBase(UUID.Random(), principalID);
551 shape.AssetID = AvatarWearable.DEFAULT_BODY_ASSET;
552 shape.Name = "Default Shape";
553 shape.CreatorId = principalID.ToString();
554 shape.AssetType = (int)AssetType.Bodypart;
555 shape.InvType = (int)InventoryType.Wearable;
556 shape.Folder = bodyPartsFolder.ID;
557 shape.BasePermissions = (uint)PermissionMask.All;
558 shape.CurrentPermissions = (uint)PermissionMask.All;
559 shape.EveryOnePermissions = (uint)PermissionMask.All;
560 shape.GroupPermissions = (uint)PermissionMask.All;
561 shape.NextPermissions = (uint)PermissionMask.All;
562 shape.Flags = (uint)WearableType.Shape;
563 m_InventoryService.AddItem(shape);
564
565 InventoryItemBase skin = new InventoryItemBase(UUID.Random(), principalID);
566 skin.AssetID = AvatarWearable.DEFAULT_SKIN_ASSET;
567 skin.Name = "Default Skin";
568 skin.CreatorId = principalID.ToString();
569 skin.AssetType = (int)AssetType.Bodypart;
570 skin.InvType = (int)InventoryType.Wearable;
571 skin.Folder = bodyPartsFolder.ID;
572 skin.BasePermissions = (uint)PermissionMask.All;
573 skin.CurrentPermissions = (uint)PermissionMask.All;
574 skin.EveryOnePermissions = (uint)PermissionMask.All;
575 skin.GroupPermissions = (uint)PermissionMask.All;
576 skin.NextPermissions = (uint)PermissionMask.All;
577 skin.Flags = (uint)WearableType.Skin;
578 m_InventoryService.AddItem(skin);
579
580 InventoryItemBase hair = new InventoryItemBase(UUID.Random(), principalID);
581 hair.AssetID = AvatarWearable.DEFAULT_HAIR_ASSET;
582 hair.Name = "Default Hair";
583 hair.CreatorId = principalID.ToString();
584 hair.AssetType = (int)AssetType.Bodypart;
585 hair.InvType = (int)InventoryType.Wearable;
586 hair.Folder = bodyPartsFolder.ID;
587 hair.BasePermissions = (uint)PermissionMask.All;
588 hair.CurrentPermissions = (uint)PermissionMask.All;
589 hair.EveryOnePermissions = (uint)PermissionMask.All;
590 hair.GroupPermissions = (uint)PermissionMask.All;
591 hair.NextPermissions = (uint)PermissionMask.All;
592 hair.Flags = (uint)WearableType.Hair;
593 m_InventoryService.AddItem(hair);
594
595 InventoryFolderBase clothingFolder = m_InventoryService.GetFolderForType(principalID, AssetType.Clothing);
596
597 InventoryItemBase shirt = new InventoryItemBase(UUID.Random(), principalID);
598 shirt.AssetID = AvatarWearable.DEFAULT_SHIRT_ASSET;
599 shirt.Name = "Default Shirt";
600 shirt.CreatorId = principalID.ToString();
601 shirt.AssetType = (int)AssetType.Clothing;
602 shirt.InvType = (int)InventoryType.Wearable;
603 shirt.Folder = clothingFolder.ID;
604 shirt.BasePermissions = (uint)PermissionMask.All;
605 shirt.CurrentPermissions = (uint)PermissionMask.All;
606 shirt.EveryOnePermissions = (uint)PermissionMask.All;
607 shirt.GroupPermissions = (uint)PermissionMask.All;
608 shirt.NextPermissions = (uint)PermissionMask.All;
609 shirt.Flags = (uint)WearableType.Shirt;
610 m_InventoryService.AddItem(shirt);
611
612 InventoryItemBase pants = new InventoryItemBase(UUID.Random(), principalID);
613 pants.AssetID = AvatarWearable.DEFAULT_PANTS_ASSET;
614 pants.Name = "Default Pants";
615 pants.CreatorId = principalID.ToString();
616 pants.AssetType = (int)AssetType.Clothing;
617 pants.InvType = (int)InventoryType.Wearable;
618 pants.Folder = clothingFolder.ID;
619 pants.BasePermissions = (uint)PermissionMask.All;
620 pants.CurrentPermissions = (uint)PermissionMask.All;
621 pants.EveryOnePermissions = (uint)PermissionMask.All;
622 pants.GroupPermissions = (uint)PermissionMask.All;
623 pants.NextPermissions = (uint)PermissionMask.All;
624 pants.Flags = (uint)WearableType.Pants;
625 m_InventoryService.AddItem(pants);
626
627 if (m_AvatarService != null)
628 {
629 m_log.DebugFormat("[USER ACCOUNT SERVICE]: Creating default avatar entries for {0}", principalID);
630
631 AvatarWearable[] wearables = new AvatarWearable[6];
632 wearables[AvatarWearable.EYES] = new AvatarWearable(eyes.ID, eyes.AssetID);
633 wearables[AvatarWearable.BODY] = new AvatarWearable(shape.ID, shape.AssetID);
634 wearables[AvatarWearable.SKIN] = new AvatarWearable(skin.ID, skin.AssetID);
635 wearables[AvatarWearable.HAIR] = new AvatarWearable(hair.ID, hair.AssetID);
636 wearables[AvatarWearable.SHIRT] = new AvatarWearable(shirt.ID, shirt.AssetID);
637 wearables[AvatarWearable.PANTS] = new AvatarWearable(pants.ID, pants.AssetID);
638
639 AvatarAppearance ap = new AvatarAppearance();
640 for (int i = 0; i < 6; i++)
641 {
642 ap.SetWearable(i, wearables[i]);
643 }
644
645 m_AvatarService.SetAppearance(principalID, ap);
646 }
647 }
510 } 648 }
511} 649} \ No newline at end of file
diff --git a/bin/assets/BodyPartsAssetSet/BodyPartsAssetSet.xml b/bin/assets/BodyPartsAssetSet/BodyPartsAssetSet.xml
index 8ef0fe7..a3d7ba3 100644
--- a/bin/assets/BodyPartsAssetSet/BodyPartsAssetSet.xml
+++ b/bin/assets/BodyPartsAssetSet/BodyPartsAssetSet.xml
@@ -4,7 +4,7 @@
4 <Key Name="assetID" Value="d342e6c0-b9d2-11dc-95ff-0800200c9a66"/> 4 <Key Name="assetID" Value="d342e6c0-b9d2-11dc-95ff-0800200c9a66"/>
5 <Key Name="name" Value="Hair"/> 5 <Key Name="name" Value="Hair"/>
6 <Key Name="assetType" Value="13" /> 6 <Key Name="assetType" Value="13" />
7 <Key Name="fileName" Value="newhair.dat"/> 7 <Key Name="fileName" Value="base_hair.dat"/>
8 </Section> 8 </Section>
9 9
10 <Section Name="Skin"> 10 <Section Name="Skin">
@@ -34,6 +34,14 @@
34 <Key Name="assetType" Value="13" /> 34 <Key Name="assetType" Value="13" />
35 <Key Name="fileName" Value="base_shape.dat"/> 35 <Key Name="fileName" Value="base_shape.dat"/>
36 </Section> 36 </Section>
37
38 <Section Name="Eyes">
39 <Key Name="assetID" Value="4bb6fa4d-1cd2-498a-a84c-95c1a0e745a7"/>
40 <Key Name="name" Value="Eyes"/>
41 <Key Name="assetType" Value="13" />
42 <Key Name="fileName" Value="base_eyes.dat"/>
43 </Section>
44
37<!-- 45<!--
38 <Section Name="Jim Shape"> 46 <Section Name="Jim Shape">
39 <Key Name="assetID" Value="66c41e39-38f9-f75a-024e-585989bfab74"/> 47 <Key Name="assetID" Value="66c41e39-38f9-f75a-024e-585989bfab74"/>
diff --git a/bin/assets/BodyPartsAssetSet/base_eyes.dat b/bin/assets/BodyPartsAssetSet/base_eyes.dat
new file mode 100644
index 0000000..520157c
--- /dev/null
+++ b/bin/assets/BodyPartsAssetSet/base_eyes.dat
@@ -0,0 +1,26 @@
1LLWearable version 22
2New Eyes
3
4 permissions 0
5 {
6 base_mask 7fffffff
7 owner_mask 7fffffff
8 group_mask 00000000
9 everyone_mask 00000000
10 next_owner_mask 00082000
11 creator_id 11111111-1111-0000-0000-000100bba000
12 owner_id 11111111-1111-0000-0000-000100bba000
13 last_owner_id 00000000-0000-0000-0000-000000000000
14 group_id 00000000-0000-0000-0000-000000000000
15 }
16 sale_info 0
17 {
18 sale_type not
19 sale_price 10
20 }
21type 3
22parameters 2
2398 0
2499 0
25textures 1
263 6522e74d-1660-4e7f-b601-6f48c1659a77
diff --git a/bin/assets/BodyPartsAssetSet/base_hair.dat b/bin/assets/BodyPartsAssetSet/base_hair.dat
new file mode 100644
index 0000000..520157c
--- /dev/null
+++ b/bin/assets/BodyPartsAssetSet/base_hair.dat
@@ -0,0 +1,26 @@
1LLWearable version 22
2New Eyes
3
4 permissions 0
5 {
6 base_mask 7fffffff
7 owner_mask 7fffffff
8 group_mask 00000000
9 everyone_mask 00000000
10 next_owner_mask 00082000
11 creator_id 11111111-1111-0000-0000-000100bba000
12 owner_id 11111111-1111-0000-0000-000100bba000
13 last_owner_id 00000000-0000-0000-0000-000000000000
14 group_id 00000000-0000-0000-0000-000000000000
15 }
16 sale_info 0
17 {
18 sale_type not
19 sale_price 10
20 }
21type 3
22parameters 2
2398 0
2499 0
25textures 1
263 6522e74d-1660-4e7f-b601-6f48c1659a77
diff --git a/bin/assets/BodyPartsAssetSet/base_shape.dat b/bin/assets/BodyPartsAssetSet/base_shape.dat
index d9a361f..bf719c9 100644
--- a/bin/assets/BodyPartsAssetSet/base_shape.dat
+++ b/bin/assets/BodyPartsAssetSet/base_shape.dat
@@ -1,105 +1,165 @@
1LLWearable version 22 1LLWearable version 22
2Female Shape and Outfit 3 Shape 2New Shape
3Created by system from avatar's appearance. 3
4 permissions 0 4 permissions 0
5 { 5 {
6 base_mask 00000000 6 base_mask 7fffffff
7 owner_mask 00000000 7 owner_mask 7fffffff
8 group_mask 00000000 8 group_mask 00000000
9 everyone_mask 00000000 9 everyone_mask 00000000
10 next_owner_mask 00000000 10 next_owner_mask 00082000
11 creator_id 11111111-1111-0000-0000-000100bba000 11 creator_id 11111111-1111-0000-0000-000100bba000
12 owner_id 11111111-1111-0000-0000-000100bba000 12 owner_id 11111111-1111-0000-0000-000100bba000
13 last_owner_id 11111111-1111-0000-0000-000100bba000 13 last_owner_id 00000000-0000-0000-0000-000000000000
14 group_id 00000000-0000-0000-0000-000000000000 14 group_id 00000000-0000-0000-0000-000000000000
15 } 15 }
16 sale_info 0 16 sale_info 0
17 { 17 {
18 sale_type not 18 sale_type not
19 sale_price 0 19 sale_price 10
20 } 20 }
21type 0 21type 0
22parameters 82 22parameters 142
231 .21 231 0
242 -.5 242 0
254 -.11 254 0
265 -.1 265 0
276 -.3 276 0
287 -.4 287 0
298 -.5 298 0
3010 .7 3010 0
3111 .34 3111 0
3212 -.5 3212 0
3313 0 3313 0
3414 .04 3414 0
3515 .58 3515 0
3617 .56 3617 0
3718 -.26 3718 0
3819 -.73 3819 0
3920 -.34 3920 0
4021 -.01 4021 0
4122 1 4122 0
4223 -.5 4223 0
4324 -.63 4324 0
4425 .44 4425 0
4527 .05 4526 0
4633 -.24 4627 0
4734 -.7 4728 0
4835 -.16 4829 .12
4936 -.2 4930 .12
5037 -.98 5032 0
5138 -.5 5133 0
5234 0
5335 0
5436 -.5
5537 0
5638 0
5740 0
5280 0 5880 0
53105 .07 59100 0
54155 -.22 60104 0
61105 .5
62106 0
63151 0
64152 0
65153 0
66155 0
67156 0
55157 0 68157 0
56185 -1 69185 0
57193 .86 70186 0
58196 -.74 71187 0
59505 .65 72188 0
60506 .12 73189 0
61507 -1.5 74193 .5
75194 .67
76195 .33
77196 0
78505 .5
79506 0
80507 0
62515 0 81515 0
63517 .16 82517 0
64518 .8 83518 0
65629 0 84626 0
85627 0
86629 .5
87630 0
88631 0
89633 0
90634 0
91635 0
66637 0 92637 0
67646 .4 93646 0
68647 1 94647 0
69649 .36 95648 0
70650 .85 96649 .5
71652 .49 97650 0
72653 -1 98651 0
99652 .5
100653 0
101655 -.08
73656 0 102656 0
74659 .65 103657 0
104658 0
105659 .5
106660 0
107661 0
75662 .5 108662 .5
76663 0 109663 0
77664 0 110664 0
78665 0 111665 0
79675 -.15 112675 0
80676 .26 113676 0
81678 .28 114677 0
82682 .27 115678 .5
83683 -.19 116679 -.08
84684 -.09 117680 -.08
118681 -.08
119682 .5
120683 -.15
121684 0
85685 0 122685 0
86690 .45 123686 0
87692 .4 124687 0
88693 -0 125688 0
89753 -.5 126689 0
90756 -.08 127690 .5
91758 .24 128691 0
92759 .6 129692 0
93760 .11 130693 .6
94764 -.38 131694 -.08
95765 -.3 132695 0
96769 .42 133753 0
97773 .51 134756 0
98795 .16 135758 0
99796 .11 136759 .5
100799 .36 137760 0
138764 0
139765 0
140767 0
141768 0
142769 .5
143770 0
144772 0
145773 .5
146794 .17
147795 .25
148796 0
149797 0
150798 0
151799 .5
101841 0 152841 0
102842 -.82 153842 0
154843 0
155853 0
156854 0
157855 0
103879 0 158879 0
104880 0 159880 0
1601103 0
1611104 0
1621105 0
1631200 0
1641201 0
105textures 0 165textures 0
diff --git a/bin/assets/BodyPartsAssetSet/newhair.dat b/bin/assets/BodyPartsAssetSet/newhair.dat
deleted file mode 100644
index 3c5a8c9..0000000
--- a/bin/assets/BodyPartsAssetSet/newhair.dat
+++ /dev/null
@@ -1,63 +0,0 @@
1LLWearable version 22
2New Hair
3
4 permissions 0
5 {
6 base_mask 7fffffff
7 owner_mask 7fffffff
8 group_mask 00000000
9 everyone_mask 00000000
10 next_owner_mask 00082000
11 creator_id a52db6d0-e96c-4454-85e5-3523722daa25
12 owner_id a52db6d0-e96c-4454-85e5-3523722daa25
13 last_owner_id 00000000-0000-0000-0000-000000000000
14 group_id 00000000-0000-0000-0000-000000000000
15 }
16 sale_info 0
17 {
18 sale_type not
19 sale_price 10
20 }
21type 2
22parameters 39
2316 0
2431 .5
25112 0
26113 0
27114 .5
28115 0
29119 .5
30130 .45
31131 .5
32132 .39
33133 .25
34134 .5
35135 .55
36136 .5
37137 .5
38140 0
39141 0
40142 0
41143 .13
42166 0
43167 0
44168 0
45169 0
46177 0
47181 .14
48182 .7
49183 .05
50184 0
51192 0
52674 -.3
53750 .7
54752 .5
55754 0
56755 .05
57757 -1
58762 0
59763 .55
60785 0
61789 0
62textures 1
634 7ca39b4c-bd19-4699-aff7-f93fd03d3e7b
diff --git a/bin/assets/TexturesAssetSet/TexturesAssetSet.xml b/bin/assets/TexturesAssetSet/TexturesAssetSet.xml
index 3af9c99..ecf2005 100644
--- a/bin/assets/TexturesAssetSet/TexturesAssetSet.xml
+++ b/bin/assets/TexturesAssetSet/TexturesAssetSet.xml
@@ -430,6 +430,13 @@
430 <Key Name="fileName" Value="default_avatar.jp2" /> 430 <Key Name="fileName" Value="default_avatar.jp2" />
431 </Section> 431 </Section>
432 432
433 <Section Name="Default Iris">
434 <Key Name="assetID" Value="6522e74d-1660-4e7f-b601-6f48c1659a77"/>
435 <Key Name="name" Value="Default Iris"/>
436 <Key Name="assetType" Value="0" />
437 <Key Name="fileName" Value="default_iris.jp2" />
438 </Section>
439
433 <Section Name="Cypress 1"> 440 <Section Name="Cypress 1">
434 <Key Name="assetID" Value="fb2ae204-3fd1-df33-594f-c9f882830e66"/> 441 <Key Name="assetID" Value="fb2ae204-3fd1-df33-594f-c9f882830e66"/>
435 <Key Name="name" Value="Cypress 1"/> 442 <Key Name="name" Value="Cypress 1"/>
diff --git a/bin/assets/TexturesAssetSet/default_iris.jp2 b/bin/assets/TexturesAssetSet/default_iris.jp2
new file mode 100644
index 0000000..b932a06
--- /dev/null
+++ b/bin/assets/TexturesAssetSet/default_iris.jp2
Binary files differ
diff --git a/bin/config-include/Standalone.ini b/bin/config-include/Standalone.ini
index bf89d0b..8aaa154 100644
--- a/bin/config-include/Standalone.ini
+++ b/bin/config-include/Standalone.ini
@@ -70,6 +70,7 @@
70 GridUserService = "OpenSim.Services.UserAccountService.dll:GridUserService" 70 GridUserService = "OpenSim.Services.UserAccountService.dll:GridUserService"
71 GridService = "OpenSim.Services.GridService.dll:GridService" 71 GridService = "OpenSim.Services.GridService.dll:GridService"
72 InventoryService = "OpenSim.Services.InventoryService.dll:XInventoryService" 72 InventoryService = "OpenSim.Services.InventoryService.dll:XInventoryService"
73 AvatarService = "OpenSim.Services.AvatarService.dll:AvatarService"
73 74
74[GridUserService] 75[GridUserService]
75 LocalServiceModule = "OpenSim.Services.UserAccountService.dll:GridUserService" 76 LocalServiceModule = "OpenSim.Services.UserAccountService.dll:GridUserService"
diff --git a/bin/inventory/TexturesLibrary/TexturesLibraryItems.xml b/bin/inventory/TexturesLibrary/TexturesLibraryItems.xml
index a018a0d..e1452f6 100644
--- a/bin/inventory/TexturesLibrary/TexturesLibraryItems.xml
+++ b/bin/inventory/TexturesLibrary/TexturesLibraryItems.xml
@@ -561,4 +561,14 @@
561 <Key Name="assetType" Value="0" /> 561 <Key Name="assetType" Value="0" />
562 <Key Name="inventoryType" Value="0" /> 562 <Key Name="inventoryType" Value="0" />
563 </Section> 563 </Section>
564
565 <Section Name="Default Iris Texture">
566 <Key Name="inventoryID" Value="00000000-0000-2222-9999-000000000013"/>
567 <Key Name="assetID" Value="6e610cae-3b0d-4729-b482-2c31ab2e49f9"/>
568 <Key Name="folderID" Value="00000112-000f-0000-0000-000100bba001"/>
569 <Key Name="description" Value=""/>
570 <Key Name="name" Value="Default Iris Texture" />
571 <Key Name="assetType" Value="0" />
572 <Key Name="inventoryType" Value="0" />
573 </Section>
564</Nini> 574</Nini>