libOMV PrimFlags.JointLP2P does not exist. Its bit now means

VolumeDetector. VolumeDetectActive is now stored on that flag bit. with
 this change it is now sent to viewers that now gray out phantom on object
 edit. At same time fixes the fact volumedetector was not been saved on
 region db and so  was lost on restarts. libOMV needs to be fix on this and other PrimFlags
LSLKeyTest
UbitUmarov 2016-08-16 05:04:44 +01:00
parent a997ffd497
commit 1c1d40cf6a
1 changed files with 18 additions and 2 deletions

View File

@ -285,7 +285,23 @@ namespace OpenSim.Region.Framework.Scenes
// but reversed logic: bit cleared means free to rotate // but reversed logic: bit cleared means free to rotate
public byte RotationAxisLocks = 0; public byte RotationAxisLocks = 0;
public bool VolumeDetectActive; // WRONG flag in libOmvPrimFlags
private const uint primFlagVolumeDetect = (uint)PrimFlags.JointLP2P;
public bool VolumeDetectActive
{
get
{
return (Flags & (PrimFlags)primFlagVolumeDetect) != 0;
}
set
{
if(value)
Flags |= (PrimFlags)primFlagVolumeDetect;
else
Flags &= (PrimFlags)(~primFlagVolumeDetect);
}
}
public bool IsWaitingForFirstSpinUpdatePacket; public bool IsWaitingForFirstSpinUpdatePacket;
@ -4742,7 +4758,7 @@ SendFullUpdateToClient(remoteClient, Position) ignores position parameter
VolumeDetectActive = SetVD; VolumeDetectActive = SetVD;
// volume detector implies phantom we need to decouple this mess // volume detector implies phantom we need to decouple this mess
if (VolumeDetectActive) if (SetVD)
SetPhantom = true; SetPhantom = true;
else if(wasVD) else if(wasVD)
SetPhantom = false; SetPhantom = false;