* ApplyPhysics now creates the PhysActor as well.
parent
90611ebf8d
commit
bf8239c7fa
|
@ -48,7 +48,8 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
private string m_inventoryFileName = "";
|
private string m_inventoryFileName = "";
|
||||||
private LLUUID m_folderID = LLUUID.Zero;
|
private LLUUID m_folderID = LLUUID.Zero;
|
||||||
|
|
||||||
[XmlIgnore] public PhysicsActor PhysActor = null;
|
[XmlIgnore]
|
||||||
|
public PhysicsActor PhysActor = null;
|
||||||
|
|
||||||
protected Dictionary<LLUUID, TaskInventoryItem> TaskInventory = new Dictionary<LLUUID, TaskInventoryItem>();
|
protected Dictionary<LLUUID, TaskInventoryItem> TaskInventory = new Dictionary<LLUUID, TaskInventoryItem>();
|
||||||
public LLUUID LastOwnerID;
|
public LLUUID LastOwnerID;
|
||||||
|
@ -70,9 +71,12 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
|
|
||||||
protected byte[] m_particleSystem = new byte[0];
|
protected byte[] m_particleSystem = new byte[0];
|
||||||
|
|
||||||
[XmlIgnore] public uint TimeStampFull = 0;
|
[XmlIgnore]
|
||||||
[XmlIgnore] public uint TimeStampTerse = 0;
|
public uint TimeStampFull = 0;
|
||||||
[XmlIgnore] public uint TimeStampLastActivity = 0; // Will be used for AutoReturn
|
[XmlIgnore]
|
||||||
|
public uint TimeStampTerse = 0;
|
||||||
|
[XmlIgnore]
|
||||||
|
public uint TimeStampLastActivity = 0; // Will be used for AutoReturn
|
||||||
|
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
@ -243,7 +247,8 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
/// <summary></summary>
|
/// <summary></summary>
|
||||||
public LLVector3 Velocity
|
public LLVector3 Velocity
|
||||||
{
|
{
|
||||||
get {
|
get
|
||||||
|
{
|
||||||
//if (PhysActor.Velocity.x != 0 || PhysActor.Velocity.y != 0
|
//if (PhysActor.Velocity.x != 0 || PhysActor.Velocity.y != 0
|
||||||
//|| PhysActor.Velocity.z != 0)
|
//|| PhysActor.Velocity.z != 0)
|
||||||
//{
|
//{
|
||||||
|
@ -528,8 +533,24 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
|
|
||||||
public void ApplyPhysics()
|
public void ApplyPhysics()
|
||||||
{
|
{
|
||||||
bool UsePhysics = ((ObjectFlags & (uint)LLObject.ObjectFlags.Physics) != 0);
|
bool isPhysical = ((ObjectFlags & (uint)LLObject.ObjectFlags.Physics) != 0);
|
||||||
DoPhysicsPropertyUpdate(UsePhysics, true);
|
bool isPhantom = ((ObjectFlags & (uint)LLObject.ObjectFlags.Phantom) != 0);
|
||||||
|
|
||||||
|
bool usePhysics = isPhysical && !isPhantom;
|
||||||
|
|
||||||
|
if (usePhysics)
|
||||||
|
{
|
||||||
|
PhysActor = m_parentGroup.m_scene.PhysicsScene.AddPrimShape(
|
||||||
|
Name,
|
||||||
|
Shape,
|
||||||
|
new PhysicsVector(AbsolutePosition.X, AbsolutePosition.Y,
|
||||||
|
AbsolutePosition.Z),
|
||||||
|
new PhysicsVector(Scale.X, Scale.Y, Scale.Z),
|
||||||
|
new Quaternion(RotationOffset.W, RotationOffset.X,
|
||||||
|
RotationOffset.Y, RotationOffset.Z), usePhysics);
|
||||||
|
}
|
||||||
|
|
||||||
|
DoPhysicsPropertyUpdate(usePhysics, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void ApplyPermissions()
|
public void ApplyPermissions()
|
||||||
|
|
Loading…
Reference in New Issue