One more module converted: CloudModule.
parent
b3574d23e4
commit
e10d61ea8c
|
@ -44,6 +44,7 @@
|
|||
<RegionModule id="VegetationModule" type="OpenSim.Region.CoreModules.Avatar.Vegetation.VegetationModule"/>
|
||||
<RegionModule id="IPBanModule" type="OpenSim.Region.CoreModules.Agent.IPBan.IPBanModule"/>
|
||||
<RegionModule id="J2KDecoderModule" type="OpenSim.Region.CoreModules.Agent.TextureSender.J2KDecoderModule"/>
|
||||
<RegionModule id="CloudModule" type="OpenSim.Region.CoreModules.CloudModule"/>
|
||||
<!-- Service connectors OUT modules -->
|
||||
<RegionModule id="LocalAssetServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Asset.LocalAssetServicesConnector" />
|
||||
<RegionModule id="RemoteAssetServicesConnector" type="OpenSim.Region.CoreModules.ServiceConnectorsOut.Asset.RemoteAssetServicesConnector" />
|
||||
|
|
|
@ -35,7 +35,7 @@ using OpenSim.Region.Framework.Scenes;
|
|||
|
||||
namespace OpenSim.Region.CoreModules
|
||||
{
|
||||
public class CloudModule : ICloudModule
|
||||
public class CloudModule : ICloudModule, INonSharedRegionModule
|
||||
{
|
||||
// private static readonly log4net.ILog m_log
|
||||
// = log4net.LogManager.GetLogger(System.Reflection.MethodBase.GetCurrentMethod().DeclaringType);
|
||||
|
@ -48,7 +48,7 @@ namespace OpenSim.Region.CoreModules
|
|||
private float m_cloudDensity = 1.0F;
|
||||
private float[] cloudCover = new float[16 * 16];
|
||||
|
||||
public void Initialise(Scene scene, IConfigSource config)
|
||||
public void Initialise(IConfigSource config)
|
||||
{
|
||||
IConfig cloudConfig = config.Configs["Cloud"];
|
||||
|
||||
|
@ -59,21 +59,40 @@ namespace OpenSim.Region.CoreModules
|
|||
m_frameUpdateRate = cloudConfig.GetInt("cloud_update_rate", 1000);
|
||||
}
|
||||
|
||||
if (m_enabled)
|
||||
{
|
||||
}
|
||||
|
||||
m_scene = scene;
|
||||
public void AddRegion(Scene scene)
|
||||
{
|
||||
if (!m_enabled)
|
||||
return;
|
||||
|
||||
scene.EventManager.OnNewClient += CloudsToClient;
|
||||
scene.RegisterModuleInterface<ICloudModule>(this);
|
||||
scene.EventManager.OnFrame += CloudUpdate;
|
||||
m_scene = scene;
|
||||
|
||||
GenerateCloudCover();
|
||||
scene.EventManager.OnNewClient += CloudsToClient;
|
||||
scene.RegisterModuleInterface<ICloudModule>(this);
|
||||
scene.EventManager.OnFrame += CloudUpdate;
|
||||
|
||||
m_ready = true;
|
||||
GenerateCloudCover();
|
||||
|
||||
}
|
||||
m_ready = true;
|
||||
}
|
||||
|
||||
public void RemoveRegion(Scene scene)
|
||||
{
|
||||
if (!m_enabled)
|
||||
return;
|
||||
|
||||
m_ready = false;
|
||||
// Remove our hooks
|
||||
m_scene.EventManager.OnNewClient -= CloudsToClient;
|
||||
m_scene.EventManager.OnFrame -= CloudUpdate;
|
||||
m_scene.UnregisterModuleInterface<ICloudModule>(this);
|
||||
|
||||
m_scene = null;
|
||||
}
|
||||
|
||||
public void RegionLoaded(Scene scene)
|
||||
{
|
||||
}
|
||||
|
||||
public void PostInitialise()
|
||||
|
@ -82,13 +101,6 @@ namespace OpenSim.Region.CoreModules
|
|||
|
||||
public void Close()
|
||||
{
|
||||
if (m_enabled)
|
||||
{
|
||||
m_ready = false;
|
||||
// Remove our hooks
|
||||
m_scene.EventManager.OnNewClient -= CloudsToClient;
|
||||
m_scene.EventManager.OnFrame -= CloudUpdate;
|
||||
}
|
||||
}
|
||||
|
||||
public string Name
|
||||
|
@ -96,12 +108,11 @@ namespace OpenSim.Region.CoreModules
|
|||
get { return "CloudModule"; }
|
||||
}
|
||||
|
||||
public bool IsSharedModule
|
||||
public Type ReplaceableInterface
|
||||
{
|
||||
get { return false; }
|
||||
get { return null; }
|
||||
}
|
||||
|
||||
|
||||
public float CloudCover(int x, int y, int z)
|
||||
{
|
||||
float cover = 0f;
|
||||
|
|
|
@ -27,7 +27,7 @@
|
|||
|
||||
namespace OpenSim.Region.Framework.Interfaces
|
||||
{
|
||||
public interface ICloudModule : IRegionModule
|
||||
public interface ICloudModule
|
||||
{
|
||||
/// <summary>
|
||||
/// Retrieves the cloud density at the given region coordinates
|
||||
|
|
Loading…
Reference in New Issue