aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/OptionalModules/World/NPC/NPCModule.cs
diff options
context:
space:
mode:
Diffstat (limited to 'OpenSim/Region/OptionalModules/World/NPC/NPCModule.cs')
-rw-r--r--OpenSim/Region/OptionalModules/World/NPC/NPCModule.cs16
1 files changed, 11 insertions, 5 deletions
diff --git a/OpenSim/Region/OptionalModules/World/NPC/NPCModule.cs b/OpenSim/Region/OptionalModules/World/NPC/NPCModule.cs
index ac39a53..ab0be77 100644
--- a/OpenSim/Region/OptionalModules/World/NPC/NPCModule.cs
+++ b/OpenSim/Region/OptionalModules/World/NPC/NPCModule.cs
@@ -34,6 +34,7 @@ using OpenSim.Region.Framework.Scenes;
34using OpenSim.Region.CoreModules.Avatar.NPC; 34using OpenSim.Region.CoreModules.Avatar.NPC;
35using OpenSim.Framework; 35using OpenSim.Framework;
36using Timer=System.Timers.Timer; 36using Timer=System.Timers.Timer;
37using OpenSim.Services.Interfaces;
37 38
38namespace OpenSim.Region.OptionalModules.World.NPC 39namespace OpenSim.Region.OptionalModules.World.NPC
39{ 40{
@@ -63,11 +64,16 @@ namespace OpenSim.Region.OptionalModules.World.NPC
63 if (m_appearanceCache.ContainsKey(target)) 64 if (m_appearanceCache.ContainsKey(target))
64 return m_appearanceCache[target]; 65 return m_appearanceCache[target];
65 66
66 AvatarAppearance x = scene.CommsManager.AvatarService.GetUserAppearance(target); 67 AvatarData adata = scene.AvatarService.GetAvatar(target);
68 if (adata != null)
69 {
70 AvatarAppearance x = adata.ToAvatarAppearance(target);
67 71
68 m_appearanceCache.Add(target, x); 72 m_appearanceCache.Add(target, x);
69 73
70 return x; 74 return x;
75 }
76 return new AvatarAppearance();
71 } 77 }
72 78
73 public UUID CreateNPC(string firstname, string lastname,Vector3 position, Scene scene, UUID cloneAppearanceFrom) 79 public UUID CreateNPC(string firstname, string lastname,Vector3 position, Scene scene, UUID cloneAppearanceFrom)
@@ -104,7 +110,7 @@ namespace OpenSim.Region.OptionalModules.World.NPC
104 if (m_avatars.ContainsKey(agentID)) 110 if (m_avatars.ContainsKey(agentID))
105 { 111 {
106 ScenePresence sp; 112 ScenePresence sp;
107 scene.TryGetAvatar(agentID, out sp); 113 scene.TryGetScenePresence(agentID, out sp);
108 sp.DoAutoPilot(0, pos, m_avatars[agentID]); 114 sp.DoAutoPilot(0, pos, m_avatars[agentID]);
109 } 115 }
110 } 116 }
@@ -159,7 +165,7 @@ namespace OpenSim.Region.OptionalModules.World.NPC
159 p_scene.AddNewClient(npcAvatar); 165 p_scene.AddNewClient(npcAvatar);
160 166
161 ScenePresence sp; 167 ScenePresence sp;
162 if (p_scene.TryGetAvatar(npcAvatar.AgentId, out sp)) 168 if (p_scene.TryGetScenePresence(npcAvatar.AgentId, out sp))
163 { 169 {
164 AvatarAppearance x = GetAppearance(p_cloneAppearanceFrom, p_scene); 170 AvatarAppearance x = GetAppearance(p_cloneAppearanceFrom, p_scene);
165 171