diff options
author | lbsa71 | 2007-10-26 14:08:36 +0000 |
---|---|---|
committer | lbsa71 | 2007-10-26 14:08:36 +0000 |
commit | 070047ce1bc74cceebd5e817a0e042a7390c5f24 (patch) | |
tree | 074326d9e948655f5b2c0c378d601d611e1d4f4d /OpenSim/Region | |
parent | Region ground texture was not marked as temporary, when being created, and as... (diff) | |
download | opensim-SC-070047ce1bc74cceebd5e817a0e042a7390c5f24.zip opensim-SC-070047ce1bc74cceebd5e817a0e042a7390c5f24.tar.gz opensim-SC-070047ce1bc74cceebd5e817a0e042a7390c5f24.tar.bz2 opensim-SC-070047ce1bc74cceebd5e817a0e042a7390c5f24.tar.xz |
* Added prototypical AvatarFactory module interface to load avatar parameters
* Added dump_assets_to_file option to enable asset dumping for debug
* normalized some namespaces
* InventoryFolder renamed to InventoryFolderImpl to
Diffstat (limited to 'OpenSim/Region')
14 files changed, 212 insertions, 105 deletions
diff --git a/OpenSim/Region/Application/OpenSimMain.cs b/OpenSim/Region/Application/OpenSimMain.cs index f550ee2..fdaaa51 100644 --- a/OpenSim/Region/Application/OpenSimMain.cs +++ b/OpenSim/Region/Application/OpenSimMain.cs | |||
@@ -44,7 +44,7 @@ using OpenSim.Region.Environment; | |||
44 | using OpenSim.Region.Environment.Scenes; | 44 | using OpenSim.Region.Environment.Scenes; |
45 | using OpenSim.Region.Physics.Manager; | 45 | using OpenSim.Region.Physics.Manager; |
46 | using System.Globalization; | 46 | using System.Globalization; |
47 | using RegionInfo=OpenSim.Framework.Types.RegionInfo; | 47 | using RegionInfo = OpenSim.Framework.Types.RegionInfo; |
48 | 48 | ||
49 | namespace OpenSim | 49 | namespace OpenSim |
50 | { | 50 | { |
@@ -78,21 +78,25 @@ namespace OpenSim | |||
78 | private readonly string m_logFilename = ("region-console.log"); | 78 | private readonly string m_logFilename = ("region-console.log"); |
79 | private bool m_permissions = false; | 79 | private bool m_permissions = false; |
80 | 80 | ||
81 | private bool standaloneAuthenticate = false; | 81 | private bool m_standaloneAuthenticate = false; |
82 | private string standaloneWelcomeMessage = null; | 82 | private string m_standaloneWelcomeMessage = null; |
83 | private string standaloneInventoryPlugin = "OpenSim.Framework.Data.SQLite.dll"; | 83 | private string m_standaloneInventoryPlugin = "OpenSim.Framework.Data.SQLite.dll"; |
84 | private string standaloneAssetPlugin = "OpenSim.Framework.Data.SQLite.dll"; | 84 | private string m_standaloneAssetPlugin = "OpenSim.Framework.Data.SQLite.dll"; |
85 | private string standaloneUserPlugin = "OpenSim.Framework.Data.DB4o.dll"; | 85 | private string m_standaloneUserPlugin = "OpenSim.Framework.Data.DB4o.dll"; |
86 | 86 | ||
87 | private string m_assetStorage = "db4o"; | 87 | private string m_assetStorage = "db4o"; |
88 | 88 | ||
89 | public ConsoleCommand CreateAccount = null; | 89 | public ConsoleCommand CreateAccount = null; |
90 | private bool m_dumpAssetsToFile; | ||
90 | 91 | ||
91 | public OpenSimMain(IConfigSource configSource) | 92 | public OpenSimMain(IConfigSource configSource) |
92 | : base() | 93 | : base() |
93 | { | 94 | { |
94 | string iniFile = configSource.Configs["Startup"].GetString("inifile", "OpenSim.ini"); | 95 | IConfig startupConfig = configSource.Configs["Startup"]; |
95 | string useExecutePathString = configSource.Configs["Startup"].GetString("useexecutepath", "false").ToLower(); | 96 | |
97 | string iniFile = startupConfig.GetString("inifile", "OpenSim.ini"); | ||
98 | string useExecutePathString = startupConfig.GetString("useexecutepath", "false").ToLower(); | ||
99 | |||
96 | bool useExecutePath = false; | 100 | bool useExecutePath = false; |
97 | if (useExecutePathString == "true" || useExecutePathString == "" || useExecutePathString == "1" || useExecutePathString == "yes") | 101 | if (useExecutePathString == "true" || useExecutePathString == "" || useExecutePathString == "1" || useExecutePathString == "yes") |
98 | { | 102 | { |
@@ -112,38 +116,57 @@ namespace OpenSim | |||
112 | //(as if someone has bothered to enter a command line arg, we should take notice of it) | 116 | //(as if someone has bothered to enter a command line arg, we should take notice of it) |
113 | m_config.Merge(configSource); | 117 | m_config.Merge(configSource); |
114 | } | 118 | } |
119 | else | ||
120 | { | ||
121 | m_config = configSource; | ||
122 | } | ||
115 | 123 | ||
116 | ReadConfigSettings(); | 124 | ReadConfigSettings(); |
117 | |||
118 | } | 125 | } |
119 | 126 | ||
120 | protected void ReadConfigSettings() | 127 | protected void ReadConfigSettings() |
121 | { | 128 | { |
122 | m_networkServersInfo = new NetworkServersInfo(); | 129 | m_networkServersInfo = new NetworkServersInfo(); |
123 | m_sandbox = !m_config.Configs["Startup"].GetBoolean("gridmode", false); | ||
124 | m_physicsEngine = m_config.Configs["Startup"].GetString("physics", "basicphysics"); | ||
125 | m_verbose = m_config.Configs["Startup"].GetBoolean("verbose", true); | ||
126 | m_permissions = m_config.Configs["Startup"].GetBoolean("serverside_object_permissions", false); | ||
127 | 130 | ||
128 | m_storageDLL = m_config.Configs["Startup"].GetString("storage_plugin", "OpenSim.DataStore.NullStorage.dll"); | 131 | IConfig startupConfig = m_config.Configs["Startup"]; |
132 | |||
133 | if (startupConfig != null ) | ||
134 | { | ||
135 | m_sandbox = !startupConfig.GetBoolean("gridmode", false); | ||
136 | m_physicsEngine = startupConfig.GetString("physics", "basicphysics"); | ||
137 | m_verbose = startupConfig.GetBoolean("verbose", true); | ||
138 | m_permissions = startupConfig.GetBoolean("serverside_object_permissions", false); | ||
139 | |||
140 | m_storageDLL = startupConfig.GetString("storage_plugin", "OpenSim.DataStore.NullStorage.dll"); | ||
129 | 141 | ||
130 | m_startupCommandsFile = m_config.Configs["Startup"].GetString("startup_console_commands_file", ""); | 142 | m_startupCommandsFile = startupConfig.GetString("startup_console_commands_file", ""); |
131 | m_shutdownCommandsFile = m_config.Configs["Startup"].GetString("shutdown_console_commands_file", ""); | 143 | m_shutdownCommandsFile = startupConfig.GetString("shutdown_console_commands_file", ""); |
132 | 144 | ||
133 | m_scriptEngine = m_config.Configs["Startup"].GetString("script_engine", "DotNetEngine"); | 145 | m_scriptEngine = startupConfig.GetString("script_engine", "DotNetEngine"); |
134 | 146 | ||
135 | m_assetStorage = m_config.Configs["Startup"].GetString("asset_database", "db4o"); | 147 | m_assetStorage = startupConfig.GetString("asset_database", "db4o"); |
136 | 148 | ||
137 | m_config.Configs["Startup"].GetBoolean("default_modules", true); | 149 | // wtf? |
138 | m_config.Configs["Startup"].GetBoolean("default_shared_modules", true); | 150 | startupConfig.GetBoolean("default_modules", true); |
139 | m_config.Configs["Startup"].GetString("except_modules", ""); | 151 | startupConfig.GetBoolean("default_shared_modules", true); |
140 | m_config.Configs["Startup"].GetString("except_shared_modules", ""); | 152 | startupConfig.GetString("except_modules", ""); |
153 | startupConfig.GetString("except_shared_modules", ""); | ||
154 | } | ||
155 | |||
156 | IConfig standaloneConfig = m_config.Configs["StandAlone"]; | ||
157 | if (standaloneConfig != null) | ||
158 | { | ||
159 | m_standaloneAuthenticate = standaloneConfig.GetBoolean("accounts_authenticate", false); | ||
160 | m_standaloneWelcomeMessage = standaloneConfig.GetString("welcome_message", "Welcome to OpenSim"); | ||
161 | m_standaloneInventoryPlugin = | ||
162 | standaloneConfig.GetString("inventory_plugin", "OpenSim.Framework.Data.SQLite.dll"); | ||
163 | m_standaloneUserPlugin = | ||
164 | standaloneConfig.GetString("userDatabase_plugin", "OpenSim.Framework.Data.DB4o.dll"); | ||
165 | m_standaloneAssetPlugin = standaloneConfig.GetString("asset_plugin", "OpenSim.Framework.Data.SQLite.dll"); | ||
166 | |||
167 | m_dumpAssetsToFile = standaloneConfig.GetBoolean("dump_assets_to_file", false); | ||
168 | } | ||
141 | 169 | ||
142 | standaloneAuthenticate = m_config.Configs["StandAlone"].GetBoolean("accounts_authenticate", false); | ||
143 | standaloneWelcomeMessage = m_config.Configs["StandAlone"].GetString("welcome_message", "Welcome to OpenSim"); | ||
144 | standaloneInventoryPlugin = m_config.Configs["StandAlone"].GetString("inventory_plugin", "OpenSim.Framework.Data.SQLite.dll"); | ||
145 | standaloneUserPlugin = m_config.Configs["StandAlone"].GetString("userDatabase_plugin", "OpenSim.Framework.Data.DB4o.dll"); | ||
146 | standaloneAssetPlugin = m_config.Configs["StandAlone"].GetString("asset_plugin", "OpenSim.Framework.Data.SQLite.dll"); | ||
147 | m_networkServersInfo.loadFromConfiguration(m_config); | 170 | m_networkServersInfo.loadFromConfiguration(m_config); |
148 | } | 171 | } |
149 | 172 | ||
@@ -168,22 +191,22 @@ namespace OpenSim | |||
168 | if (m_sandbox) | 191 | if (m_sandbox) |
169 | { | 192 | { |
170 | LocalInventoryService inventoryService = new LocalInventoryService(); | 193 | LocalInventoryService inventoryService = new LocalInventoryService(); |
171 | inventoryService.AddPlugin(standaloneInventoryPlugin); | 194 | inventoryService.AddPlugin(m_standaloneInventoryPlugin); |
172 | 195 | ||
173 | LocalUserServices userService = new LocalUserServices(m_networkServersInfo, m_networkServersInfo.DefaultHomeLocX, m_networkServersInfo.DefaultHomeLocY, inventoryService ); | 196 | LocalUserServices userService = new LocalUserServices(m_networkServersInfo, m_networkServersInfo.DefaultHomeLocX, m_networkServersInfo.DefaultHomeLocY, inventoryService); |
174 | userService.AddPlugin( standaloneUserPlugin ); | 197 | userService.AddPlugin(m_standaloneUserPlugin); |
175 | 198 | ||
176 | LocalBackEndServices backendService = new LocalBackEndServices(); | 199 | LocalBackEndServices backendService = new LocalBackEndServices(); |
177 | 200 | ||
178 | CommunicationsLocal localComms = new CommunicationsLocal(m_networkServersInfo, m_httpServer, m_assetCache, userService, inventoryService, backendService, backendService); | 201 | CommunicationsLocal localComms = new CommunicationsLocal(m_networkServersInfo, m_httpServer, m_assetCache, userService, inventoryService, backendService, backendService, m_dumpAssetsToFile); |
179 | m_commsManager = localComms; | 202 | m_commsManager = localComms; |
180 | 203 | ||
181 | m_loginService = new LocalLoginService(userService, standaloneWelcomeMessage, localComms, m_networkServersInfo, standaloneAuthenticate); | 204 | m_loginService = new LocalLoginService(userService, m_standaloneWelcomeMessage, localComms, m_networkServersInfo, m_standaloneAuthenticate); |
182 | m_loginService.OnLoginToRegion += backendService.AddNewSession; | 205 | m_loginService.OnLoginToRegion += backendService.AddNewSession; |
183 | 206 | ||
184 | m_httpServer.AddXmlRPCHandler("login_to_simulator", m_loginService.XmlRpcLoginMethod); | 207 | m_httpServer.AddXmlRPCHandler("login_to_simulator", m_loginService.XmlRpcLoginMethod); |
185 | 208 | ||
186 | if (standaloneAuthenticate) | 209 | if (m_standaloneAuthenticate) |
187 | { | 210 | { |
188 | this.CreateAccount = localComms.doCreate; | 211 | this.CreateAccount = localComms.doCreate; |
189 | } | 212 | } |
@@ -209,7 +232,7 @@ namespace OpenSim | |||
209 | configFiles = Directory.GetFiles(regionConfigPath, "*.xml"); | 232 | configFiles = Directory.GetFiles(regionConfigPath, "*.xml"); |
210 | } | 233 | } |
211 | 234 | ||
212 | m_moduleLoader = new ModuleLoader( m_log, m_config ); | 235 | m_moduleLoader = new ModuleLoader(m_log, m_config); |
213 | MainLog.Instance.Verbose("Loading Shared Modules"); | 236 | MainLog.Instance.Verbose("Loading Shared Modules"); |
214 | m_moduleLoader.LoadDefaultSharedModules(); | 237 | m_moduleLoader.LoadDefaultSharedModules(); |
215 | 238 | ||
@@ -240,10 +263,10 @@ namespace OpenSim | |||
240 | } | 263 | } |
241 | else | 264 | else |
242 | { | 265 | { |
243 | MainLog.Instance.Verbose("STARTUP","No startup command script specified. Moving on..."); | 266 | MainLog.Instance.Verbose("STARTUP", "No startup command script specified. Moving on..."); |
244 | } | 267 | } |
245 | 268 | ||
246 | MainLog.Instance.Status("STARTUP","Startup complete, serving " + m_udpServers.Count.ToString() + " region(s)"); | 269 | MainLog.Instance.Status("STARTUP", "Startup complete, serving " + m_udpServers.Count.ToString() + " region(s)"); |
247 | } | 270 | } |
248 | 271 | ||
249 | public UDPServer CreateRegion(RegionInfo regionInfo) | 272 | public UDPServer CreateRegion(RegionInfo regionInfo) |
@@ -289,7 +312,7 @@ namespace OpenSim | |||
289 | 312 | ||
290 | protected override Scene CreateScene(RegionInfo regionInfo, StorageManager storageManager, AgentCircuitManager circuitManager) | 313 | protected override Scene CreateScene(RegionInfo regionInfo, StorageManager storageManager, AgentCircuitManager circuitManager) |
291 | { | 314 | { |
292 | return new Scene(regionInfo, circuitManager, m_commsManager, m_assetCache, storageManager, m_httpServer, m_moduleLoader); | 315 | return new Scene(regionInfo, circuitManager, m_commsManager, m_assetCache, storageManager, m_httpServer, m_moduleLoader, m_dumpAssetsToFile); |
293 | } | 316 | } |
294 | 317 | ||
295 | protected override void Initialize() | 318 | protected override void Initialize() |
@@ -307,7 +330,7 @@ namespace OpenSim | |||
307 | } | 330 | } |
308 | else | 331 | else |
309 | { | 332 | { |
310 | SQLAssetServer sqlAssetServer = new SQLAssetServer(standaloneAssetPlugin); | 333 | SQLAssetServer sqlAssetServer = new SQLAssetServer(m_standaloneAssetPlugin); |
311 | sqlAssetServer.LoadDefaultAssets(); | 334 | sqlAssetServer.LoadDefaultAssets(); |
312 | assetServer = sqlAssetServer; | 335 | assetServer = sqlAssetServer; |
313 | } | 336 | } |
@@ -408,7 +431,7 @@ namespace OpenSim | |||
408 | } | 431 | } |
409 | else | 432 | else |
410 | { | 433 | { |
411 | MainLog.Instance.Error("COMMANDFILE","Command script missing. Can not run commands"); | 434 | MainLog.Instance.Error("COMMANDFILE", "Command script missing. Can not run commands"); |
412 | } | 435 | } |
413 | } | 436 | } |
414 | 437 | ||
diff --git a/OpenSim/Region/Communications/Local/CommunicationsLocal.cs b/OpenSim/Region/Communications/Local/CommunicationsLocal.cs index e57e445..13af96c 100644 --- a/OpenSim/Region/Communications/Local/CommunicationsLocal.cs +++ b/OpenSim/Region/Communications/Local/CommunicationsLocal.cs | |||
@@ -35,8 +35,15 @@ namespace OpenSim.Region.Communications.Local | |||
35 | { | 35 | { |
36 | public class CommunicationsLocal : CommunicationsManager | 36 | public class CommunicationsLocal : CommunicationsManager |
37 | { | 37 | { |
38 | public CommunicationsLocal(NetworkServersInfo serversInfo, BaseHttpServer httpServer, AssetCache assetCache, IUserService userService, LocalInventoryService inventoryService, IInterRegionCommunications interRegionService, IGridServices gridService) | 38 | public CommunicationsLocal( |
39 | : base(serversInfo, httpServer, assetCache) | 39 | NetworkServersInfo serversInfo, |
40 | BaseHttpServer httpServer, | ||
41 | AssetCache assetCache, | ||
42 | IUserService userService, | ||
43 | LocalInventoryService inventoryService, | ||
44 | IInterRegionCommunications interRegionService, | ||
45 | IGridServices gridService, bool dumpAssetsToFile ) | ||
46 | : base(serversInfo, httpServer, assetCache, dumpAssetsToFile) | ||
40 | { | 47 | { |
41 | m_inventoryService = inventoryService; | 48 | m_inventoryService = inventoryService; |
42 | m_userService = userService; | 49 | m_userService = userService; |
diff --git a/OpenSim/Region/Communications/Local/LocalInventoryService.cs b/OpenSim/Region/Communications/Local/LocalInventoryService.cs index 5d450bb..fd6002a 100644 --- a/OpenSim/Region/Communications/Local/LocalInventoryService.cs +++ b/OpenSim/Region/Communications/Local/LocalInventoryService.cs | |||
@@ -29,8 +29,8 @@ | |||
29 | using System.Collections.Generic; | 29 | using System.Collections.Generic; |
30 | using libsecondlife; | 30 | using libsecondlife; |
31 | using OpenSim.Framework.Communications; | 31 | using OpenSim.Framework.Communications; |
32 | using OpenSim.Framework.Communications.Cache; | ||
32 | using OpenSim.Framework.Types; | 33 | using OpenSim.Framework.Types; |
33 | using InventoryFolder=OpenSim.Framework.Communications.Caches.InventoryFolder; | ||
34 | 34 | ||
35 | namespace OpenSim.Region.Communications.Local | 35 | namespace OpenSim.Region.Communications.Local |
36 | { | 36 | { |
@@ -45,14 +45,14 @@ namespace OpenSim.Region.Communications.Local | |||
45 | public override void RequestInventoryForUser(LLUUID userID, InventoryFolderInfo folderCallBack, InventoryItemInfo itemCallBack) | 45 | public override void RequestInventoryForUser(LLUUID userID, InventoryFolderInfo folderCallBack, InventoryItemInfo itemCallBack) |
46 | { | 46 | { |
47 | List<InventoryFolderBase> folders = this.RequestFirstLevelFolders(userID); | 47 | List<InventoryFolderBase> folders = this.RequestFirstLevelFolders(userID); |
48 | InventoryFolder rootFolder = null; | 48 | InventoryFolderImpl rootFolder = null; |
49 | 49 | ||
50 | //need to make sure we send root folder first | 50 | //need to make sure we send root folder first |
51 | foreach (InventoryFolderBase folder in folders) | 51 | foreach (InventoryFolderBase folder in folders) |
52 | { | 52 | { |
53 | if (folder.parentID == libsecondlife.LLUUID.Zero) | 53 | if (folder.parentID == libsecondlife.LLUUID.Zero) |
54 | { | 54 | { |
55 | InventoryFolder newfolder = new InventoryFolder(folder); | 55 | InventoryFolderImpl newfolder = new InventoryFolderImpl(folder); |
56 | rootFolder = newfolder; | 56 | rootFolder = newfolder; |
57 | folderCallBack(userID, newfolder); | 57 | folderCallBack(userID, newfolder); |
58 | } | 58 | } |
@@ -64,7 +64,7 @@ namespace OpenSim.Region.Communications.Local | |||
64 | { | 64 | { |
65 | if (folder.folderID != rootFolder.folderID) | 65 | if (folder.folderID != rootFolder.folderID) |
66 | { | 66 | { |
67 | InventoryFolder newfolder = new InventoryFolder(folder); | 67 | InventoryFolderImpl newfolder = new InventoryFolderImpl(folder); |
68 | folderCallBack(userID, newfolder); | 68 | folderCallBack(userID, newfolder); |
69 | 69 | ||
70 | List<InventoryItemBase> items = this.RequestFolderItems(newfolder.folderID); | 70 | List<InventoryItemBase> items = this.RequestFolderItems(newfolder.folderID); |
@@ -77,7 +77,7 @@ namespace OpenSim.Region.Communications.Local | |||
77 | } | 77 | } |
78 | } | 78 | } |
79 | 79 | ||
80 | public override void AddNewInventoryFolder(LLUUID userID, InventoryFolder folder) | 80 | public override void AddNewInventoryFolder(LLUUID userID, InventoryFolderImpl folder) |
81 | { | 81 | { |
82 | this.AddFolder(folder); | 82 | this.AddFolder(folder); |
83 | } | 83 | } |
diff --git a/OpenSim/Region/Communications/OGS1/CommunicationsOGS1.cs b/OpenSim/Region/Communications/OGS1/CommunicationsOGS1.cs index 8ebeeca..4be31d8 100644 --- a/OpenSim/Region/Communications/OGS1/CommunicationsOGS1.cs +++ b/OpenSim/Region/Communications/OGS1/CommunicationsOGS1.cs | |||
@@ -36,7 +36,7 @@ namespace OpenSim.Region.Communications.OGS1 | |||
36 | { | 36 | { |
37 | public class CommunicationsOGS1 : CommunicationsManager | 37 | public class CommunicationsOGS1 : CommunicationsManager |
38 | { | 38 | { |
39 | public CommunicationsOGS1(NetworkServersInfo serversInfo, BaseHttpServer httpServer, AssetCache assetCache ) :base(serversInfo, httpServer, assetCache) | 39 | public CommunicationsOGS1(NetworkServersInfo serversInfo, BaseHttpServer httpServer, AssetCache assetCache ) :base(serversInfo, httpServer, assetCache, false) |
40 | { | 40 | { |
41 | OGS1GridServices gridInterComms = new OGS1GridServices(serversInfo, httpServer); | 41 | OGS1GridServices gridInterComms = new OGS1GridServices(serversInfo, httpServer); |
42 | m_gridService = gridInterComms; | 42 | m_gridService = gridInterComms; |
diff --git a/OpenSim/Region/Communications/OGS1/OGS1InventoryService.cs b/OpenSim/Region/Communications/OGS1/OGS1InventoryService.cs index 77713af..d8f5a22 100644 --- a/OpenSim/Region/Communications/OGS1/OGS1InventoryService.cs +++ b/OpenSim/Region/Communications/OGS1/OGS1InventoryService.cs | |||
@@ -29,8 +29,8 @@ | |||
29 | using System.Collections.Generic; | 29 | using System.Collections.Generic; |
30 | using libsecondlife; | 30 | using libsecondlife; |
31 | using OpenSim.Framework.Communications; | 31 | using OpenSim.Framework.Communications; |
32 | using OpenSim.Framework.Communications.Cache; | ||
32 | using OpenSim.Framework.Types; | 33 | using OpenSim.Framework.Types; |
33 | using InventoryFolder = OpenSim.Framework.Communications.Caches.InventoryFolder; | ||
34 | 34 | ||
35 | 35 | ||
36 | namespace OpenSim.Region.Communications.OGS1 | 36 | namespace OpenSim.Region.Communications.OGS1 |
@@ -50,7 +50,7 @@ namespace OpenSim.Region.Communications.OGS1 | |||
50 | 50 | ||
51 | } | 51 | } |
52 | 52 | ||
53 | public void AddNewInventoryFolder(LLUUID userID, InventoryFolder folder) | 53 | public void AddNewInventoryFolder(LLUUID userID, InventoryFolderImpl folder) |
54 | { | 54 | { |
55 | 55 | ||
56 | } | 56 | } |
diff --git a/OpenSim/Region/Environment/Interfaces/IAvatarFactory.cs b/OpenSim/Region/Environment/Interfaces/IAvatarFactory.cs new file mode 100644 index 0000000..b6f24c3 --- /dev/null +++ b/OpenSim/Region/Environment/Interfaces/IAvatarFactory.cs | |||
@@ -0,0 +1,13 @@ | |||
1 | using System; | ||
2 | using System.Collections.Generic; | ||
3 | using System.Text; | ||
4 | using libsecondlife; | ||
5 | using OpenSim.Framework.Types; | ||
6 | |||
7 | namespace OpenSim.Region.Environment.Interfaces | ||
8 | { | ||
9 | public interface IAvatarFactory : IRegionModule | ||
10 | { | ||
11 | bool TryGetIntialAvatarAppearance(LLUUID avatarId, out AvatarWearable[] wearables, out byte[] visualParams); | ||
12 | } | ||
13 | } | ||
diff --git a/OpenSim/Region/Environment/ModuleLoader.cs b/OpenSim/Region/Environment/ModuleLoader.cs index 4fc45a0..160b740 100644 --- a/OpenSim/Region/Environment/ModuleLoader.cs +++ b/OpenSim/Region/Environment/ModuleLoader.cs | |||
@@ -67,12 +67,18 @@ namespace OpenSim.Region.Environment | |||
67 | { | 67 | { |
68 | DynamicTextureModule dynamicModule = new DynamicTextureModule(); | 68 | DynamicTextureModule dynamicModule = new DynamicTextureModule(); |
69 | LoadedSharedModules.Add(dynamicModule.Name, dynamicModule); | 69 | LoadedSharedModules.Add(dynamicModule.Name, dynamicModule); |
70 | |||
70 | ChatModule chat = new ChatModule(); | 71 | ChatModule chat = new ChatModule(); |
71 | LoadedSharedModules.Add(chat.Name, chat); | 72 | LoadedSharedModules.Add(chat.Name, chat); |
73 | |||
72 | InstantMessageModule imMod = new InstantMessageModule(); | 74 | InstantMessageModule imMod = new InstantMessageModule(); |
73 | LoadedSharedModules.Add(imMod.Name, imMod); | 75 | LoadedSharedModules.Add(imMod.Name, imMod); |
76 | |||
74 | LoadImageURLModule loadMod = new LoadImageURLModule(); | 77 | LoadImageURLModule loadMod = new LoadImageURLModule(); |
75 | LoadedSharedModules.Add(loadMod.Name, loadMod); | 78 | LoadedSharedModules.Add(loadMod.Name, loadMod); |
79 | |||
80 | AvatarFactoryModule avatarFactory = new AvatarFactoryModule(); | ||
81 | LoadedSharedModules.Add(avatarFactory.Name, avatarFactory); | ||
76 | } | 82 | } |
77 | 83 | ||
78 | public void InitialiseSharedModules(Scene scene) | 84 | public void InitialiseSharedModules(Scene scene) |
diff --git a/OpenSim/Region/Environment/Modules/AvatarFactoryModule.cs b/OpenSim/Region/Environment/Modules/AvatarFactoryModule.cs new file mode 100644 index 0000000..f825b7a --- /dev/null +++ b/OpenSim/Region/Environment/Modules/AvatarFactoryModule.cs | |||
@@ -0,0 +1,57 @@ | |||
1 | using System; | ||
2 | using System.Collections.Generic; | ||
3 | using System.Text; | ||
4 | using libsecondlife; | ||
5 | using Nini.Config; | ||
6 | using OpenSim.Framework.Types; | ||
7 | using OpenSim.Region.Environment.Interfaces; | ||
8 | using OpenSim.Region.Environment.Scenes; | ||
9 | |||
10 | namespace OpenSim.Region.Environment.Modules | ||
11 | { | ||
12 | public class AvatarFactoryModule : IAvatarFactory | ||
13 | { | ||
14 | public bool TryGetIntialAvatarAppearance(LLUUID avatarId, out AvatarWearable[] wearables, out byte[] visualParams) | ||
15 | { | ||
16 | GetDefaultAvatarAppearance(out wearables, out visualParams); | ||
17 | return true; | ||
18 | } | ||
19 | |||
20 | public void Initialise(Scene scene, IConfigSource source) | ||
21 | { | ||
22 | scene.RegisterModuleInterface<IAvatarFactory>(this); | ||
23 | } | ||
24 | |||
25 | public void PostInitialise() | ||
26 | { | ||
27 | } | ||
28 | |||
29 | public void Close() | ||
30 | { | ||
31 | } | ||
32 | |||
33 | public string Name | ||
34 | { | ||
35 | get { return "Default Avatar Factory"; } | ||
36 | } | ||
37 | |||
38 | public bool IsSharedModule | ||
39 | { | ||
40 | get { return true; } | ||
41 | } | ||
42 | |||
43 | public static void GetDefaultAvatarAppearance(out AvatarWearable[] wearables, out byte[] visualParams) | ||
44 | { | ||
45 | visualParams = new byte[218]; | ||
46 | for (int i = 0; i < 218; i++) | ||
47 | { | ||
48 | visualParams[i] = 100; | ||
49 | } | ||
50 | |||
51 | wearables = AvatarWearable.DefaultWearables; | ||
52 | } | ||
53 | } | ||
54 | |||
55 | |||
56 | |||
57 | } | ||
diff --git a/OpenSim/Region/Environment/Modules/ChatModule.cs b/OpenSim/Region/Environment/Modules/ChatModule.cs index 2fe308d..c2611d0 100644 --- a/OpenSim/Region/Environment/Modules/ChatModule.cs +++ b/OpenSim/Region/Environment/Modules/ChatModule.cs | |||
@@ -126,7 +126,9 @@ namespace OpenSim.Region.Environment.Modules | |||
126 | LLUUID fromAgentID = LLUUID.Zero; | 126 | LLUUID fromAgentID = LLUUID.Zero; |
127 | 127 | ||
128 | if (e.Sender != null) | 128 | if (e.Sender != null) |
129 | { | ||
129 | avatar = scene.GetScenePresence(e.Sender.AgentId); | 130 | avatar = scene.GetScenePresence(e.Sender.AgentId); |
131 | } | ||
130 | 132 | ||
131 | if (avatar != null) | 133 | if (avatar != null) |
132 | { | 134 | { |
diff --git a/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs b/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs index 96beb05..4c04592 100644 --- a/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs +++ b/OpenSim/Region/Environment/Scenes/Scene.Inventory.cs | |||
@@ -30,7 +30,6 @@ using Axiom.Math; | |||
30 | using libsecondlife; | 30 | using libsecondlife; |
31 | using libsecondlife.Packets; | 31 | using libsecondlife.Packets; |
32 | using OpenSim.Framework.Communications.Cache; | 32 | using OpenSim.Framework.Communications.Cache; |
33 | using OpenSim.Framework.Communications.Caches; | ||
34 | using OpenSim.Framework.Interfaces; | 33 | using OpenSim.Framework.Interfaces; |
35 | using OpenSim.Framework.Types; | 34 | using OpenSim.Framework.Types; |
36 | using OpenSim.Framework.Utilities; | 35 | using OpenSim.Framework.Utilities; |
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs index 69c3f9e..e86562d 100644 --- a/OpenSim/Region/Environment/Scenes/Scene.cs +++ b/OpenSim/Region/Environment/Scenes/Scene.cs | |||
@@ -50,6 +50,7 @@ using OpenSim.Region.Environment.Types; | |||
50 | using OpenSim.Region.Physics.Manager; | 50 | using OpenSim.Region.Physics.Manager; |
51 | using OpenSim.Region.Terrain; | 51 | using OpenSim.Region.Terrain; |
52 | using Timer = System.Timers.Timer; | 52 | using Timer = System.Timers.Timer; |
53 | using OpenSim.Region.Environment.Modules; | ||
53 | 54 | ||
54 | namespace OpenSim.Region.Environment.Scenes | 55 | namespace OpenSim.Region.Environment.Scenes |
55 | { | 56 | { |
@@ -90,11 +91,11 @@ namespace OpenSim.Region.Environment.Scenes | |||
90 | 91 | ||
91 | public IXfer XferManager; | 92 | public IXfer XferManager; |
92 | 93 | ||
93 | private IHttpRequests m_httpRequestModule = null; | 94 | private IHttpRequests m_httpRequestModule; |
94 | private ISimChat m_simChatModule = null; | 95 | private ISimChat m_simChatModule; |
95 | private IXMLRPC m_xmlrpcModule = null; | 96 | private IXMLRPC m_xmlrpcModule; |
96 | private IWorldComm m_worldCommModule = null; | 97 | private IWorldComm m_worldCommModule; |
97 | 98 | private IAvatarFactory m_AvatarFactory; | |
98 | 99 | ||
99 | // Central Update Loop | 100 | // Central Update Loop |
100 | 101 | ||
@@ -165,7 +166,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
165 | 166 | ||
166 | public Scene(RegionInfo regInfo, AgentCircuitManager authen, CommunicationsManager commsMan, | 167 | public Scene(RegionInfo regInfo, AgentCircuitManager authen, CommunicationsManager commsMan, |
167 | AssetCache assetCach, StorageManager storeManager, BaseHttpServer httpServer, | 168 | AssetCache assetCach, StorageManager storeManager, BaseHttpServer httpServer, |
168 | ModuleLoader moduleLoader) | 169 | ModuleLoader moduleLoader, bool dumpAssetsToFile) |
169 | { | 170 | { |
170 | updateLock = new Mutex(false); | 171 | updateLock = new Mutex(false); |
171 | 172 | ||
@@ -205,6 +206,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
205 | ScenePresence.LoadAnims(); | 206 | ScenePresence.LoadAnims(); |
206 | 207 | ||
207 | httpListener = httpServer; | 208 | httpListener = httpServer; |
209 | m_dumpAssetsToFile = dumpAssetsToFile; | ||
208 | } | 210 | } |
209 | 211 | ||
210 | #endregion | 212 | #endregion |
@@ -215,7 +217,6 @@ namespace OpenSim.Region.Environment.Scenes | |||
215 | m_httpRequestModule = RequestModuleInterface<IHttpRequests>(); | 217 | m_httpRequestModule = RequestModuleInterface<IHttpRequests>(); |
216 | m_xmlrpcModule = RequestModuleInterface<IXMLRPC>(); | 218 | m_xmlrpcModule = RequestModuleInterface<IXMLRPC>(); |
217 | m_worldCommModule = RequestModuleInterface<IWorldComm>(); | 219 | m_worldCommModule = RequestModuleInterface<IWorldComm>(); |
218 | |||
219 | XferManager = RequestModuleInterface<IXfer>(); | 220 | XferManager = RequestModuleInterface<IXfer>(); |
220 | } | 221 | } |
221 | 222 | ||
@@ -855,7 +856,15 @@ namespace OpenSim.Region.Environment.Scenes | |||
855 | { | 856 | { |
856 | ScenePresence newAvatar = null; | 857 | ScenePresence newAvatar = null; |
857 | 858 | ||
858 | newAvatar = new ScenePresence(client, this, m_regInfo); | 859 | byte[] visualParams; |
860 | AvatarWearable[] wearables; | ||
861 | |||
862 | if( m_AvatarFactory == null || !m_AvatarFactory.TryGetIntialAvatarAppearance( client.AgentId, out wearables, out visualParams)) | ||
863 | { | ||
864 | AvatarFactoryModule.GetDefaultAvatarAppearance(out wearables, out visualParams); | ||
865 | } | ||
866 | |||
867 | newAvatar = new ScenePresence(client, this, m_regInfo, visualParams, wearables); | ||
859 | newAvatar.IsChildAgent = child; | 868 | newAvatar.IsChildAgent = child; |
860 | 869 | ||
861 | if (child) | 870 | if (child) |
@@ -1096,7 +1105,8 @@ namespace OpenSim.Region.Environment.Scenes | |||
1096 | //Console.WriteLine("new user, so creating caps handler for it"); | 1105 | //Console.WriteLine("new user, so creating caps handler for it"); |
1097 | Caps cap = | 1106 | Caps cap = |
1098 | new Caps(commsManager.AssetCache, httpListener, m_regInfo.ExternalHostName, httpListener.Port, | 1107 | new Caps(commsManager.AssetCache, httpListener, m_regInfo.ExternalHostName, httpListener.Port, |
1099 | agent.CapsPath, agent.AgentID); | 1108 | agent.CapsPath, agent.AgentID, m_dumpAssetsToFile); |
1109 | |||
1100 | Util.SetCapsURL(agent.AgentID, | 1110 | Util.SetCapsURL(agent.AgentID, |
1101 | "http://" + m_regInfo.ExternalHostName + ":" + httpListener.Port.ToString() + | 1111 | "http://" + m_regInfo.ExternalHostName + ":" + httpListener.Port.ToString() + |
1102 | "/CAPS/" + agent.CapsPath + "0000/"); | 1112 | "/CAPS/" + agent.CapsPath + "0000/"); |
@@ -1456,6 +1466,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
1456 | #region Script Engine | 1466 | #region Script Engine |
1457 | 1467 | ||
1458 | private List<ScriptEngineInterface> ScriptEngines = new List<ScriptEngineInterface>(); | 1468 | private List<ScriptEngineInterface> ScriptEngines = new List<ScriptEngineInterface>(); |
1469 | private bool m_dumpAssetsToFile; | ||
1459 | 1470 | ||
1460 | public void AddScriptEngine(ScriptEngineInterface ScriptEngine, LogBase m_logger) | 1471 | public void AddScriptEngine(ScriptEngineInterface ScriptEngine, LogBase m_logger) |
1461 | { | 1472 | { |
diff --git a/OpenSim/Region/Environment/Scenes/ScenePresence.cs b/OpenSim/Region/Environment/Scenes/ScenePresence.cs index 99f78c9..256b6b5 100644 --- a/OpenSim/Region/Environment/Scenes/ScenePresence.cs +++ b/OpenSim/Region/Environment/Scenes/ScenePresence.cs | |||
@@ -53,8 +53,8 @@ namespace OpenSim.Region.Environment.Scenes | |||
53 | private short m_updateCount = 0; | 53 | private short m_updateCount = 0; |
54 | 54 | ||
55 | private Quaternion bodyRot; | 55 | private Quaternion bodyRot; |
56 | private byte[] visualParams; | 56 | private byte[] m_visualParams; |
57 | private AvatarWearable[] Wearables; | 57 | private AvatarWearable[] m_wearables; |
58 | private LLObject.TextureEntry m_textureEntry; | 58 | private LLObject.TextureEntry m_textureEntry; |
59 | 59 | ||
60 | public bool IsRestrictedToRegion = false; | 60 | public bool IsRestrictedToRegion = false; |
@@ -90,10 +90,10 @@ namespace OpenSim.Region.Environment.Scenes | |||
90 | 90 | ||
91 | //public List<SceneObjectGroup> InterestList = new List<SceneObjectGroup>(); | 91 | //public List<SceneObjectGroup> InterestList = new List<SceneObjectGroup>(); |
92 | 92 | ||
93 | // private string m_currentQuadNode = " "; | 93 | // private string m_currentQuadNode = " "; |
94 | 94 | ||
95 | // private Queue<SceneObjectPart> m_fullPartUpdates = new Queue<SceneObjectPart>(); | 95 | // private Queue<SceneObjectPart> m_fullPartUpdates = new Queue<SceneObjectPart>(); |
96 | //private Queue<SceneObjectPart> m_tersePartUpdates = new Queue<SceneObjectPart>(); | 96 | //private Queue<SceneObjectPart> m_tersePartUpdates = new Queue<SceneObjectPart>(); |
97 | 97 | ||
98 | private UpdateQueue m_partsUpdateQueue = new UpdateQueue(); | 98 | private UpdateQueue m_partsUpdateQueue = new UpdateQueue(); |
99 | private Dictionary<LLUUID, ScenePartUpdate> m_updateTimes = new Dictionary<LLUUID, ScenePartUpdate>(); | 99 | private Dictionary<LLUUID, ScenePartUpdate> m_updateTimes = new Dictionary<LLUUID, ScenePartUpdate>(); |
@@ -173,8 +173,8 @@ namespace OpenSim.Region.Environment.Scenes | |||
173 | 173 | ||
174 | m_pos = value; | 174 | m_pos = value; |
175 | } | 175 | } |
176 | } | 176 | } |
177 | 177 | ||
178 | public override LLVector3 Velocity | 178 | public override LLVector3 Velocity |
179 | { | 179 | { |
180 | get | 180 | get |
@@ -220,14 +220,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
220 | 220 | ||
221 | #region Constructor(s) | 221 | #region Constructor(s) |
222 | 222 | ||
223 | /// <summary> | 223 | public ScenePresence(IClientAPI client, Scene world, RegionInfo reginfo, byte[] visualParams, AvatarWearable[] wearables) |
224 | /// | ||
225 | /// </summary> | ||
226 | /// <param name="client"></param> | ||
227 | /// <param name="world"></param> | ||
228 | /// <param name="clientThreads"></param> | ||
229 | /// <param name="regionDat"></param> | ||
230 | public ScenePresence(IClientAPI client, Scene world, RegionInfo reginfo) | ||
231 | { | 224 | { |
232 | m_scene = world; | 225 | m_scene = world; |
233 | m_uuid = client.AgentId; | 226 | m_uuid = client.AgentId; |
@@ -240,13 +233,9 @@ namespace OpenSim.Region.Environment.Scenes | |||
240 | m_localId = m_scene.NextLocalId; | 233 | m_localId = m_scene.NextLocalId; |
241 | AbsolutePosition = m_controllingClient.StartPos; | 234 | AbsolutePosition = m_controllingClient.StartPos; |
242 | 235 | ||
243 | visualParams = new byte[218]; | 236 | m_visualParams = visualParams; |
244 | for (int i = 0; i < 218; i++) | 237 | m_wearables = wearables; |
245 | { | ||
246 | visualParams[i] = 100; | ||
247 | } | ||
248 | 238 | ||
249 | Wearables = AvatarWearable.DefaultWearables; | ||
250 | Animations = new AvatarAnimations(); | 239 | Animations = new AvatarAnimations(); |
251 | Animations.LoadAnims(); | 240 | Animations.LoadAnims(); |
252 | 241 | ||
@@ -351,7 +340,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
351 | 340 | ||
352 | AbsolutePosition = pos; | 341 | AbsolutePosition = pos; |
353 | 342 | ||
354 | AddToPhysicalScene( ); | 343 | AddToPhysicalScene(); |
355 | m_physicsActor.Flying = isFlying; | 344 | m_physicsActor.Flying = isFlying; |
356 | 345 | ||
357 | 346 | ||
@@ -410,7 +399,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
410 | 399 | ||
411 | for (int i = 0; i < visualParam.Length; i++) | 400 | for (int i = 0; i < visualParam.Length; i++) |
412 | { | 401 | { |
413 | visualParams[i] = visualParam[i].ParamValue; | 402 | m_visualParams[i] = visualParam[i].ParamValue; |
414 | } | 403 | } |
415 | 404 | ||
416 | SendAppearanceToAllOtherAgents(); | 405 | SendAppearanceToAllOtherAgents(); |
@@ -459,7 +448,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
459 | Vector3 agent_control_v3 = new Vector3(0, 0, 0); | 448 | Vector3 agent_control_v3 = new Vector3(0, 0, 0); |
460 | Quaternion q = new Quaternion(bodyRotation.W, bodyRotation.X, bodyRotation.Y, bodyRotation.Z); | 449 | Quaternion q = new Quaternion(bodyRotation.W, bodyRotation.X, bodyRotation.Y, bodyRotation.Z); |
461 | bool oldflying = PhysicsActor.Flying; | 450 | bool oldflying = PhysicsActor.Flying; |
462 | PhysicsActor.Flying = ((flags & (uint) MainAvatar.ControlFlags.AGENT_CONTROL_FLY) != 0); | 451 | PhysicsActor.Flying = ((flags & (uint)MainAvatar.ControlFlags.AGENT_CONTROL_FLY) != 0); |
463 | if (PhysicsActor.Flying != oldflying) | 452 | if (PhysicsActor.Flying != oldflying) |
464 | { | 453 | { |
465 | update_movementflag = true; | 454 | update_movementflag = true; |
@@ -470,23 +459,23 @@ namespace OpenSim.Region.Environment.Scenes | |||
470 | bodyRot = q; | 459 | bodyRot = q; |
471 | update_rotation = true; | 460 | update_rotation = true; |
472 | } | 461 | } |
473 | foreach (Dir_ControlFlags DCF in Enum.GetValues(typeof (Dir_ControlFlags))) | 462 | foreach (Dir_ControlFlags DCF in Enum.GetValues(typeof(Dir_ControlFlags))) |
474 | { | 463 | { |
475 | if ((flags & (uint) DCF) != 0) | 464 | if ((flags & (uint)DCF) != 0) |
476 | { | 465 | { |
477 | DCFlagKeyPressed = true; | 466 | DCFlagKeyPressed = true; |
478 | agent_control_v3 += Dir_Vectors[i]; | 467 | agent_control_v3 += Dir_Vectors[i]; |
479 | if ((m_movementflag & (uint) DCF) == 0) | 468 | if ((m_movementflag & (uint)DCF) == 0) |
480 | { | 469 | { |
481 | m_movementflag += (byte) (uint) DCF; | 470 | m_movementflag += (byte)(uint)DCF; |
482 | update_movementflag = true; | 471 | update_movementflag = true; |
483 | } | 472 | } |
484 | } | 473 | } |
485 | else | 474 | else |
486 | { | 475 | { |
487 | if ((m_movementflag & (uint) DCF) != 0) | 476 | if ((m_movementflag & (uint)DCF) != 0) |
488 | { | 477 | { |
489 | m_movementflag -= (byte) (uint) DCF; | 478 | m_movementflag -= (byte)(uint)DCF; |
490 | update_movementflag = true; | 479 | update_movementflag = true; |
491 | } | 480 | } |
492 | } | 481 | } |
@@ -531,10 +520,10 @@ namespace OpenSim.Region.Environment.Scenes | |||
531 | } | 520 | } |
532 | 521 | ||
533 | NewForce newVelocity = new NewForce(); | 522 | NewForce newVelocity = new NewForce(); |
534 | Vector3 direc = rotation*vec; | 523 | Vector3 direc = rotation * vec; |
535 | direc.Normalize(); | 524 | direc.Normalize(); |
536 | 525 | ||
537 | direc = direc*((0.03f)*128f); | 526 | direc = direc * ((0.03f) * 128f); |
538 | if (m_physicsActor.Flying) | 527 | if (m_physicsActor.Flying) |
539 | direc *= 4; | 528 | direc *= 4; |
540 | 529 | ||
@@ -619,7 +608,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
619 | /// </summary> | 608 | /// </summary> |
620 | public void SendTerseUpdateToAllClients() | 609 | public void SendTerseUpdateToAllClients() |
621 | { | 610 | { |
622 | m_scene.Broadcast( SendTerseUpdateToClient ); | 611 | m_scene.Broadcast(SendTerseUpdateToClient); |
623 | } | 612 | } |
624 | 613 | ||
625 | public void SendCoarseLocations() | 614 | public void SendCoarseLocations() |
@@ -628,7 +617,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
628 | List<ScenePresence> avatars = m_scene.GetAvatars(); | 617 | List<ScenePresence> avatars = m_scene.GetAvatars(); |
629 | for (int i = 0; i < avatars.Count; i++) | 618 | for (int i = 0; i < avatars.Count; i++) |
630 | { | 619 | { |
631 | if (avatars[i] != this ) | 620 | if (avatars[i] != this) |
632 | { | 621 | { |
633 | CoarseLocations.Add(avatars[i].AbsolutePosition); | 622 | CoarseLocations.Add(avatars[i].AbsolutePosition); |
634 | } | 623 | } |
@@ -642,7 +631,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
642 | m_newCoarseLocations = true; | 631 | m_newCoarseLocations = true; |
643 | } | 632 | } |
644 | 633 | ||
645 | 634 | ||
646 | 635 | ||
647 | 636 | ||
648 | /// <summary> | 637 | /// <summary> |
@@ -695,7 +684,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
695 | /// <param name="OurClient"></param> | 684 | /// <param name="OurClient"></param> |
696 | public void SendOurAppearance(IClientAPI OurClient) | 685 | public void SendOurAppearance(IClientAPI OurClient) |
697 | { | 686 | { |
698 | m_controllingClient.SendWearables(Wearables); | 687 | m_controllingClient.SendWearables(m_wearables); |
699 | 688 | ||
700 | //this.SendFullUpdateToAllClients(); | 689 | //this.SendFullUpdateToAllClients(); |
701 | //this.SendAppearanceToAllOtherAgents(); | 690 | //this.SendAppearanceToAllOtherAgents(); |
@@ -734,7 +723,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
734 | /// <param name="avatarInfo"></param> | 723 | /// <param name="avatarInfo"></param> |
735 | public void SendAppearanceToOtherAgent(ScenePresence avatarInfo) | 724 | public void SendAppearanceToOtherAgent(ScenePresence avatarInfo) |
736 | { | 725 | { |
737 | avatarInfo.m_controllingClient.SendAppearance(m_controllingClient.AgentId, visualParams, | 726 | avatarInfo.m_controllingClient.SendAppearance(m_controllingClient.AgentId, m_visualParams, |
738 | m_textureEntry.ToBytes()); | 727 | m_textureEntry.ToBytes()); |
739 | } | 728 | } |
740 | 729 | ||
@@ -793,9 +782,9 @@ namespace OpenSim.Region.Environment.Scenes | |||
793 | LLVector3 vel = Velocity; | 782 | LLVector3 vel = Velocity; |
794 | 783 | ||
795 | float timeStep = 0.1f; | 784 | float timeStep = 0.1f; |
796 | pos2.X = pos2.X + (vel.X*timeStep); | 785 | pos2.X = pos2.X + (vel.X * timeStep); |
797 | pos2.Y = pos2.Y + (vel.Y*timeStep); | 786 | pos2.Y = pos2.Y + (vel.Y * timeStep); |
798 | pos2.Z = pos2.Z + (vel.Z*timeStep); | 787 | pos2.Z = pos2.Z + (vel.Z * timeStep); |
799 | 788 | ||
800 | if ((pos2.X < 0) || (pos2.X > 256)) | 789 | if ((pos2.X < 0) || (pos2.X > 256)) |
801 | { | 790 | { |
@@ -840,7 +829,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
840 | } | 829 | } |
841 | 830 | ||
842 | LLVector3 vel = m_velocity; | 831 | LLVector3 vel = m_velocity; |
843 | ulong neighbourHandle = Helpers.UIntsToLong((uint) (neighbourx*256), (uint) (neighboury*256)); | 832 | ulong neighbourHandle = Helpers.UIntsToLong((uint)(neighbourx * 256), (uint)(neighboury * 256)); |
844 | RegionInfo neighbourRegion = m_scene.RequestNeighbouringRegionInfo(neighbourHandle); | 833 | RegionInfo neighbourRegion = m_scene.RequestNeighbouringRegionInfo(neighbourHandle); |
845 | if (neighbourRegion != null) | 834 | if (neighbourRegion != null) |
846 | { | 835 | { |
@@ -940,7 +929,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
940 | throw new Exception("Can't set Text on avatar."); | 929 | throw new Exception("Can't set Text on avatar."); |
941 | } | 930 | } |
942 | 931 | ||
943 | public void AddToPhysicalScene( ) | 932 | public void AddToPhysicalScene() |
944 | { | 933 | { |
945 | PhysicsScene scene = m_scene.PhysScene; | 934 | PhysicsScene scene = m_scene.PhysScene; |
946 | 935 | ||
@@ -948,7 +937,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
948 | new PhysicsVector(AbsolutePosition.X, AbsolutePosition.Y, | 937 | new PhysicsVector(AbsolutePosition.X, AbsolutePosition.Y, |
949 | AbsolutePosition.Z); | 938 | AbsolutePosition.Z); |
950 | 939 | ||
951 | m_physicsActor = scene.AddAvatar(this.Firstname+"."+this.Lastname, pVec); | 940 | m_physicsActor = scene.AddAvatar(this.Firstname + "." + this.Lastname, pVec); |
952 | } | 941 | } |
953 | 942 | ||
954 | internal void Close() | 943 | internal void Close() |
diff --git a/OpenSim/Region/Examples/SimpleApp/MyWorld.cs b/OpenSim/Region/Examples/SimpleApp/MyWorld.cs index 8492aa5..d642103 100644 --- a/OpenSim/Region/Examples/SimpleApp/MyWorld.cs +++ b/OpenSim/Region/Examples/SimpleApp/MyWorld.cs | |||
@@ -47,7 +47,7 @@ namespace SimpleApp | |||
47 | private List<ScenePresence> m_avatars; | 47 | private List<ScenePresence> m_avatars; |
48 | 48 | ||
49 | public MyWorld( RegionInfo regionInfo, AgentCircuitManager authen, CommunicationsManager commsMan, AssetCache assetCach, StorageManager storeMan, BaseHttpServer httpServer, ModuleLoader moduleLoader) | 49 | public MyWorld( RegionInfo regionInfo, AgentCircuitManager authen, CommunicationsManager commsMan, AssetCache assetCach, StorageManager storeMan, BaseHttpServer httpServer, ModuleLoader moduleLoader) |
50 | : base( regionInfo, authen, commsMan, assetCach, storeMan, httpServer, moduleLoader) | 50 | : base( regionInfo, authen, commsMan, assetCach, storeMan, httpServer, moduleLoader, false) |
51 | { | 51 | { |
52 | m_avatars = new List<Avatar>(); | 52 | m_avatars = new List<Avatar>(); |
53 | } | 53 | } |
diff --git a/OpenSim/Region/Examples/SimpleApp/Program.cs b/OpenSim/Region/Examples/SimpleApp/Program.cs index 36be3e8..4783a17 100644 --- a/OpenSim/Region/Examples/SimpleApp/Program.cs +++ b/OpenSim/Region/Examples/SimpleApp/Program.cs | |||
@@ -72,7 +72,7 @@ namespace SimpleApp | |||
72 | LocalUserServices userService = new LocalUserServices(m_networkServersInfo, m_networkServersInfo.DefaultHomeLocX, m_networkServersInfo.DefaultHomeLocY, inventoryService); | 72 | LocalUserServices userService = new LocalUserServices(m_networkServersInfo, m_networkServersInfo.DefaultHomeLocX, m_networkServersInfo.DefaultHomeLocY, inventoryService); |
73 | LocalBackEndServices backendService = new LocalBackEndServices(); | 73 | LocalBackEndServices backendService = new LocalBackEndServices(); |
74 | 74 | ||
75 | CommunicationsLocal localComms = new CommunicationsLocal(m_networkServersInfo, m_httpServer, m_assetCache, userService, inventoryService, backendService, backendService); | 75 | CommunicationsLocal localComms = new CommunicationsLocal(m_networkServersInfo, m_httpServer, m_assetCache, userService, inventoryService, backendService, backendService, false); |
76 | m_commsManager = localComms; | 76 | m_commsManager = localComms; |
77 | 77 | ||
78 | LocalLoginService loginService = new LocalLoginService(userService, "", localComms, m_networkServersInfo, false); | 78 | LocalLoginService loginService = new LocalLoginService(userService, "", localComms, m_networkServersInfo, false); |