Add even for terrain tainting and synchronize terrain module with physics scene before physics simulation step rather than after

This commit is contained in:
Dan Lake
2012-05-10 14:42:46 -07:00
parent 3bc5620d74
commit f374b63ac8
3 changed files with 34 additions and 7 deletions

View File

@@ -53,6 +53,10 @@ namespace OpenSim.Region.Framework.Scenes
public event ClientMovement OnClientMovement;
public delegate void OnTerrainTaintedDelegate();
public event OnTerrainTaintedDelegate OnTerrainTainted;
public delegate void OnTerrainTickDelegate();
public event OnTerrainTickDelegate OnTerrainTick;
@@ -914,6 +918,27 @@ namespace OpenSim.Region.Framework.Scenes
}
}
public void TriggerTerrainTainted()
{
OnTerrainTaintedDelegate handlerTerrainTainted = OnTerrainTainted;
if (handlerTerrainTainted != null)
{
foreach (OnTerrainTickDelegate d in handlerTerrainTainted.GetInvocationList())
{
try
{
d();
}
catch (Exception e)
{
m_log.ErrorFormat(
"[EVENT MANAGER]: Delegate for TriggerTerrainTainted failed - continuing. {0} {1}",
e.Message, e.StackTrace);
}
}
}
}
public void TriggerParcelPrimCountAdd(SceneObjectGroup obj)
{
OnParcelPrimCountAddDelegate handlerParcelPrimCountAdd = OnParcelPrimCountAdd;