diff options
Diffstat (limited to 'OpenSim/Region/CoreModules/Avatar/AvatarFactory')
-rw-r--r-- | OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs | 17 |
1 files changed, 10 insertions, 7 deletions
diff --git a/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs b/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs index 884e6a6..2b3d56d 100644 --- a/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs +++ b/OpenSim/Region/CoreModules/Avatar/AvatarFactory/AvatarFactoryModule.cs | |||
@@ -154,9 +154,9 @@ namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory | |||
154 | public void AvatarIsWearing(Object sender, AvatarWearingArgs e) | 154 | public void AvatarIsWearing(Object sender, AvatarWearingArgs e) |
155 | { | 155 | { |
156 | IClientAPI clientView = (IClientAPI)sender; | 156 | IClientAPI clientView = (IClientAPI)sender; |
157 | ScenePresence avatar = m_scene.GetScenePresence(clientView.AgentId); | 157 | ScenePresence sp = m_scene.GetScenePresence(clientView.AgentId); |
158 | 158 | ||
159 | if (avatar == null) | 159 | if (sp == null) |
160 | { | 160 | { |
161 | m_log.Error("[APPEARANCE]: Avatar is child agent, ignoring AvatarIsWearing event"); | 161 | m_log.Error("[APPEARANCE]: Avatar is child agent, ignoring AvatarIsWearing event"); |
162 | return; | 162 | return; |
@@ -166,7 +166,7 @@ namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory | |||
166 | if (!TryGetAvatarAppearance(clientView.AgentId, out avatAppearance)) | 166 | if (!TryGetAvatarAppearance(clientView.AgentId, out avatAppearance)) |
167 | { | 167 | { |
168 | m_log.Warn("[APPEARANCE]: We didn't seem to find the appearance, falling back to ScenePresence"); | 168 | m_log.Warn("[APPEARANCE]: We didn't seem to find the appearance, falling back to ScenePresence"); |
169 | avatAppearance = avatar.Appearance; | 169 | avatAppearance = sp.Appearance; |
170 | } | 170 | } |
171 | 171 | ||
172 | //m_log.DebugFormat("[APPEARANCE]: Received wearables for {0}", clientView.Name); | 172 | //m_log.DebugFormat("[APPEARANCE]: Received wearables for {0}", clientView.Name); |
@@ -179,10 +179,11 @@ namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory | |||
179 | } | 179 | } |
180 | } | 180 | } |
181 | 181 | ||
182 | SetAppearanceAssets(avatar.UUID, ref avatAppearance); | 182 | SetAppearanceAssets(sp.UUID, ref avatAppearance); |
183 | AvatarData adata = new AvatarData(avatAppearance); | ||
184 | m_scene.AvatarService.SetAvatar(clientView.AgentId, adata); | ||
183 | 185 | ||
184 | m_scene.CommsManager.AvatarService.UpdateUserAppearance(clientView.AgentId, avatAppearance); | 186 | sp.Appearance = avatAppearance; |
185 | avatar.Appearance = avatAppearance; | ||
186 | } | 187 | } |
187 | 188 | ||
188 | public static void GetDefaultAvatarAppearance(out AvatarWearable[] wearables, out byte[] visualParams) | 189 | public static void GetDefaultAvatarAppearance(out AvatarWearable[] wearables, out byte[] visualParams) |
@@ -193,7 +194,9 @@ namespace OpenSim.Region.CoreModules.Avatar.AvatarFactory | |||
193 | 194 | ||
194 | public void UpdateDatabase(UUID user, AvatarAppearance appearance) | 195 | public void UpdateDatabase(UUID user, AvatarAppearance appearance) |
195 | { | 196 | { |
196 | m_scene.CommsManager.AvatarService.UpdateUserAppearance(user, appearance); | 197 | AvatarData adata = new AvatarData(appearance); |
198 | m_scene.AvatarService.SetAvatar(user, adata); | ||
199 | |||
197 | } | 200 | } |
198 | 201 | ||
199 | private static byte[] GetDefaultVisualParams() | 202 | private static byte[] GetDefaultVisualParams() |