fix turning off phanton always decreasing number of physical parts

avinationmerge
UbitUmarov 2012-06-21 19:05:36 +01:00
parent 909572ed86
commit c8f7cd60cd
1 changed files with 28 additions and 28 deletions

View File

@ -4496,6 +4496,7 @@ namespace OpenSim.Region.Framework.Scenes
{
if (pa != null)
{
if(wasUsingPhysics)
ParentGroup.Scene.RemovePhysicalPrim(1);
RemoveFromPhysics();
}
@ -4513,16 +4514,16 @@ namespace OpenSim.Region.Framework.Scenes
{
AddToPhysics(UsePhysics, SetPhantom, building, false);
pa = PhysActor;
/*
/*
if (pa != null)
{
if (
// ((AggregateScriptEvents & scriptEvents.collision) != 0) ||
// ((AggregateScriptEvents & scriptEvents.collision_end) != 0) ||
// ((AggregateScriptEvents & scriptEvents.collision_start) != 0) ||
// ((AggregateScriptEvents & scriptEvents.land_collision_start) != 0) ||
// ((AggregateScriptEvents & scriptEvents.land_collision) != 0) ||
// ((AggregateScriptEvents & scriptEvents.land_collision_end) != 0) ||
// ((AggregateScriptEvents & scriptEvents.collision) != 0) ||
// ((AggregateScriptEvents & scriptEvents.collision_end) != 0) ||
// ((AggregateScriptEvents & scriptEvents.collision_start) != 0) ||
// ((AggregateScriptEvents & scriptEvents.land_collision_start) != 0) ||
// ((AggregateScriptEvents & scriptEvents.land_collision) != 0) ||
// ((AggregateScriptEvents & scriptEvents.land_collision_end) != 0) ||
((AggregateScriptEvents & PhysicsNeededSubsEvents) != 0) ||
((ParentGroup.RootPart.AggregateScriptEvents & PhysicsNeededSubsEvents) != 0) ||
(CollisionSound != UUID.Zero)
@ -4532,19 +4533,18 @@ namespace OpenSim.Region.Framework.Scenes
pa.SubscribeEvents(1000);
}
}
*/
*/
}
else // it already has a physical representation
{
DoPhysicsPropertyUpdate(UsePhysics, false); // Update physical status.
/* moved into DoPhysicsPropertyUpdate
/* moved into DoPhysicsPropertyUpdate
if(VolumeDetectActive)
pa.SetVolumeDetect(1);
else
pa.SetVolumeDetect(0);
*/
*/
if (pa.Building != building)
pa.Building = building;