From 7b446aba9174aac68c62ec40c2115a1e1f012191 Mon Sep 17 00:00:00 2001 From: Teravus Ovares Date: Sun, 4 May 2008 22:55:52 +0000 Subject: * Implemented DIE_AT_EDGE and Temporary objects don't save to the database. --- OpenSim/Region/Environment/Scenes/Scene.cs | 19 +++++++++++++++++++ 1 file changed, 19 insertions(+) (limited to 'OpenSim/Region/Environment/Scenes/Scene.cs') diff --git a/OpenSim/Region/Environment/Scenes/Scene.cs b/OpenSim/Region/Environment/Scenes/Scene.cs index 3cc2cbc..33a9102 100644 --- a/OpenSim/Region/Environment/Scenes/Scene.cs +++ b/OpenSim/Region/Environment/Scenes/Scene.cs @@ -1352,6 +1352,25 @@ namespace OpenSim.Region.Environment.Scenes public void CrossPrimGroupIntoNewRegion(LLVector3 position, SceneObjectGroup grp) { + if (grp == null) + return; + if (grp.RootPart == null) + return; + + if (grp.RootPart.DIE_AT_EDGE) + { + // We remove the object here + try + { + DeleteSceneObjectGroup(grp); + } + catch (Exception) + { + m_log.Warn("[DATABASE]: exception when trying to remove the prim that crossed the border."); + } + return; + } + m_log.Warn("Prim crossing: " + grp.UUID.ToString()); int thisx = (int)RegionInfo.RegionLocX; int thisy = (int)RegionInfo.RegionLocY; -- cgit v1.1