diff options
Attempt to get World Map working in Grid mode, will need to be using the grid asset server for it to work correctly and has only been quickly tested in a three region grid.
Moved PermissionManager creation out of the Scene constructor and instead a PermissionManager is passed to the constructor as a param. So that we could create and use custom permissionsManagers.
Added AllowMovement property to ScenePresence which can be used to stop movement of avatars (for example in a custom region that wanted avatars always in one place).
Added PermissionManager call when copying objects, although currently the call will always return true so that it allows copying in places like Wright Plaza.
A few other changes/fixes.
Diffstat (limited to 'OpenSim/Region/Environment/Scenes/Scene.cs')
-rw-r--r-- | OpenSim/Region/Environment/Scenes/Scene.cs | 19 |
1 files changed, 13 insertions, 6 deletions
diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs index 2c765a3..1400e60 100644 --- a/OpenSim/Region/Environment/Scenes/Scene.cs +++ b/OpenSim/Region/Environment/Scenes/Scene.cs | |||
@@ -195,7 +195,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
195 | 195 | ||
196 | #region Constructors | 196 | #region Constructors |
197 | 197 | ||
198 | public Scene(RegionInfo regInfo, AgentCircuitManager authen, CommunicationsManager commsMan, SceneCommunicationService sceneGridService, | 198 | public Scene(RegionInfo regInfo, AgentCircuitManager authen, PermissionManager permissionManager, CommunicationsManager commsMan, SceneCommunicationService sceneGridService, |
199 | AssetCache assetCach, StorageManager storeManager, BaseHttpServer httpServer, | 199 | AssetCache assetCach, StorageManager storeManager, BaseHttpServer httpServer, |
200 | ModuleLoader moduleLoader, bool dumpAssetsToFile, bool physicalPrim) | 200 | ModuleLoader moduleLoader, bool dumpAssetsToFile, bool physicalPrim) |
201 | { | 201 | { |
@@ -217,15 +217,14 @@ namespace OpenSim.Region.Environment.Scenes | |||
217 | m_LandManager = new LandManager(this, m_regInfo); | 217 | m_LandManager = new LandManager(this, m_regInfo); |
218 | m_estateManager = new EstateManager(this, m_regInfo); | 218 | m_estateManager = new EstateManager(this, m_regInfo); |
219 | m_eventManager = new EventManager(); | 219 | m_eventManager = new EventManager(); |
220 | m_permissionManager = new PermissionManager(this); | 220 | |
221 | m_permissionManager = permissionManager; | ||
222 | m_permissionManager.Initialise(this); | ||
221 | 223 | ||
222 | m_innerScene = new InnerScene(this, m_regInfo, m_permissionManager); | 224 | m_innerScene = new InnerScene(this, m_regInfo, m_permissionManager); |
223 | m_sceneXmlLoader = new SceneXmlLoader(this, m_innerScene, m_regInfo); | 225 | m_sceneXmlLoader = new SceneXmlLoader(this, m_innerScene, m_regInfo); |
224 | 226 | ||
225 | m_eventManager.OnParcelPrimCountAdd += | 227 | RegisterDefaultSceneEvents(); |
226 | m_LandManager.addPrimToLandPrimCounts; | ||
227 | |||
228 | m_eventManager.OnPermissionError += SendPermissionAlert; | ||
229 | 228 | ||
230 | MainLog.Instance.Verbose("Creating new entitities instance"); | 229 | MainLog.Instance.Verbose("Creating new entitities instance"); |
231 | Entities = new Dictionary<LLUUID, EntityBase>(); | 230 | Entities = new Dictionary<LLUUID, EntityBase>(); |
@@ -244,6 +243,13 @@ namespace OpenSim.Region.Environment.Scenes | |||
244 | #endregion | 243 | #endregion |
245 | 244 | ||
246 | #region Startup / Close Methods | 245 | #region Startup / Close Methods |
246 | |||
247 | protected virtual void RegisterDefaultSceneEvents() | ||
248 | { | ||
249 | m_eventManager.OnParcelPrimCountAdd += m_LandManager.addPrimToLandPrimCounts; | ||
250 | m_eventManager.OnPermissionError += SendPermissionAlert; | ||
251 | } | ||
252 | |||
247 | public override void Close() | 253 | public override void Close() |
248 | { | 254 | { |
249 | ForEachScenePresence(delegate(ScenePresence avatar) | 255 | ForEachScenePresence(delegate(ScenePresence avatar) |
@@ -504,6 +510,7 @@ namespace OpenSim.Region.Environment.Scenes | |||
504 | } | 510 | } |
505 | 511 | ||
506 | CreateTerrainTexture(); | 512 | CreateTerrainTexture(); |
513 | CommsManager.GridService.RegisterRegion(RegionInfo); //hack to update the terrain texture in grid mode so it shows on world map | ||
507 | } | 514 | } |
508 | catch (Exception e) | 515 | catch (Exception e) |
509 | { | 516 | { |