diff options
author | teravus | 2012-12-21 19:12:30 -0500 |
---|---|---|
committer | teravus | 2012-12-21 19:12:30 -0500 |
commit | 77cc7ce399d1b1a710f3b3f4337932febdef66c8 (patch) | |
tree | f121911c3679fea2065d519c879737200481616d /OpenSim/Region/Framework | |
parent | * Send an Unsolicited AgentDataUpdate packet upon Root Agent Status to synchr... (diff) | |
download | opensim-SC-77cc7ce399d1b1a710f3b3f4337932febdef66c8.zip opensim-SC-77cc7ce399d1b1a710f3b3f4337932febdef66c8.tar.gz opensim-SC-77cc7ce399d1b1a710f3b3f4337932febdef66c8.tar.bz2 opensim-SC-77cc7ce399d1b1a710f3b3f4337932febdef66c8.tar.xz |
* Partial Commit for Avatar Appearance to include the functionality of Cached Bakes.
Diffstat (limited to 'OpenSim/Region/Framework')
-rw-r--r-- | OpenSim/Region/Framework/Interfaces/IAvatarFactoryModule.cs | 6 | ||||
-rw-r--r-- | OpenSim/Region/Framework/Scenes/ScenePresence.cs | 27 |
2 files changed, 21 insertions, 12 deletions
diff --git a/OpenSim/Region/Framework/Interfaces/IAvatarFactoryModule.cs b/OpenSim/Region/Framework/Interfaces/IAvatarFactoryModule.cs index 34aca33..d25c930 100644 --- a/OpenSim/Region/Framework/Interfaces/IAvatarFactoryModule.cs +++ b/OpenSim/Region/Framework/Interfaces/IAvatarFactoryModule.cs | |||
@@ -35,8 +35,8 @@ namespace OpenSim.Region.Framework.Interfaces | |||
35 | 35 | ||
36 | public interface IAvatarFactoryModule | 36 | public interface IAvatarFactoryModule |
37 | { | 37 | { |
38 | void SetAppearance(IScenePresence sp, AvatarAppearance appearance); | 38 | void SetAppearance(IScenePresence sp, AvatarAppearance appearance, WearableCacheItem[] cacheItems); |
39 | void SetAppearance(IScenePresence sp, Primitive.TextureEntry textureEntry, byte[] visualParams); | 39 | void SetAppearance(IScenePresence sp, Primitive.TextureEntry textureEntry, byte[] visualParams, WearableCacheItem[] cacheItems); |
40 | 40 | ||
41 | /// <summary> | 41 | /// <summary> |
42 | /// Send the appearance of an avatar to others in the scene. | 42 | /// Send the appearance of an avatar to others in the scene. |
@@ -52,6 +52,8 @@ namespace OpenSim.Region.Framework.Interfaces | |||
52 | /// <returns>An empty list if this agent has no baked textures (e.g. because it's a child agent)</returns> | 52 | /// <returns>An empty list if this agent has no baked textures (e.g. because it's a child agent)</returns> |
53 | Dictionary<BakeType, Primitive.TextureEntryFace> GetBakedTextureFaces(UUID agentId); | 53 | Dictionary<BakeType, Primitive.TextureEntryFace> GetBakedTextureFaces(UUID agentId); |
54 | 54 | ||
55 | |||
56 | WearableCacheItem[] GetCachedItems(UUID agentId); | ||
55 | /// <summary> | 57 | /// <summary> |
56 | /// Save the baked textures for the given agent permanently in the asset database. | 58 | /// Save the baked textures for the given agent permanently in the asset database. |
57 | /// </summary> | 59 | /// </summary> |
diff --git a/OpenSim/Region/Framework/Scenes/ScenePresence.cs b/OpenSim/Region/Framework/Scenes/ScenePresence.cs index 70e7af5..ff9df37 100644 --- a/OpenSim/Region/Framework/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Framework/Scenes/ScenePresence.cs | |||
@@ -931,18 +931,25 @@ namespace OpenSim.Region.Framework.Scenes | |||
931 | 931 | ||
932 | // ---------------------------------- | 932 | // ---------------------------------- |
933 | // Previous Agent Difference - AGNI sends an unsolicited AgentDataUpdate upon root agent status | 933 | // Previous Agent Difference - AGNI sends an unsolicited AgentDataUpdate upon root agent status |
934 | if (gm != null) | 934 | try |
935 | { | ||
936 | if (gm != null) | ||
937 | { | ||
938 | groupUUID = ControllingClient.ActiveGroupId; | ||
939 | GroupRecord record = gm.GetGroupRecord(groupUUID); | ||
940 | if (record != null) | ||
941 | GroupName = record.GroupName; | ||
942 | GroupMembershipData groupMembershipData = gm.GetMembershipData(groupUUID, m_uuid); | ||
943 | if (groupMembershipData != null) | ||
944 | groupPowers = groupMembershipData.GroupPowers; | ||
945 | } | ||
946 | ControllingClient.SendAgentDataUpdate(m_uuid, groupUUID, Firstname, Lastname, groupPowers, GroupName, | ||
947 | Grouptitle); | ||
948 | } | ||
949 | catch (Exception e) | ||
935 | { | 950 | { |
936 | groupUUID = ControllingClient.ActiveGroupId; | 951 | m_log.Debug("[AGENTUPDATE]: " + e.ToString()); |
937 | GroupRecord record = gm.GetGroupRecord(groupUUID); | ||
938 | if (record != null) | ||
939 | GroupName = record.GroupName; | ||
940 | GroupMembershipData groupMembershipData = gm.GetMembershipData(groupUUID, m_uuid); | ||
941 | if (groupMembershipData != null) | ||
942 | groupPowers = groupMembershipData.GroupPowers; | ||
943 | } | 952 | } |
944 | ControllingClient.SendAgentDataUpdate(m_uuid, groupUUID, Firstname, Lastname, groupPowers, GroupName, | ||
945 | Grouptitle); | ||
946 | // ------------------------------------ | 953 | // ------------------------------------ |
947 | 954 | ||
948 | if (ParentID == 0) | 955 | if (ParentID == 0) |