Added the plumbing for llSetVehicleRotationParam

in the classes between the LSL implementation and the
underlying physics engines.
0.6.0-stable
Charles Krinke 2008-09-28 21:53:56 +00:00
parent d68d631dc0
commit ebbbd37605
10 changed files with 69 additions and 1 deletions

View File

@ -2353,6 +2353,14 @@ namespace OpenSim.Region.Environment.Scenes
}
}
public void SetVehicleRotationParam(int param, Quaternion rotation)
{
if (PhysActor != null)
{
PhysActor.VehicleRotationParam(param, rotation);
}
}
public void SetGroup(UUID groupID, IClientAPI client)
{
_groupID = groupID;

View File

@ -345,6 +345,11 @@ namespace OpenSim.Region.Physics.BasicPhysicsPlugin
}
public override void VehicleRotationParam(int param, Quaternion rotation)
{
}
public override PhysicsVector CenterOfMass
{
get { return PhysicsVector.Zero; }

View File

@ -960,6 +960,11 @@ namespace OpenSim.Region.Physics.BulletXPlugin
}
public override void VehicleRotationParam(int param, OpenMetaverse.Quaternion rotation)
{
}
public override PhysicsVector CenterOfMass
{
get { return PhysicsVector.Zero; }

View File

@ -177,6 +177,7 @@ namespace OpenSim.Region.Physics.Manager
public abstract void VehicleFloatParam(int param, float value);
public abstract void VehicleVectorParam(int param, PhysicsVector value);
public abstract void VehicleRotationParam(int param, Quaternion rotation);
public abstract PhysicsVector GeometricCenter { get; }
public abstract PhysicsVector CenterOfMass { get; }
@ -290,6 +291,11 @@ namespace OpenSim.Region.Physics.Manager
}
public override void VehicleRotationParam(int param, Quaternion rotation)
{
}
public override PhysicsVector CenterOfMass
{
get { return PhysicsVector.Zero; }

View File

@ -547,6 +547,12 @@ namespace OpenSim.Region.Physics.OdePlugin
}
public override void VehicleRotationParam(int param, Quaternion rotation)
{
}
public override PhysicsVector CenterOfMass
{
get { return PhysicsVector.Zero; }

View File

@ -1886,6 +1886,11 @@ namespace OpenSim.Region.Physics.OdePlugin
}
public override void VehicleRotationParam(int param, Quaternion rotation)
{
}
public override PhysicsVector CenterOfMass
{
get { return PhysicsVector.Zero; }

View File

@ -169,6 +169,11 @@ namespace OpenSim.Region.Physics.POSPlugin
}
public override void VehicleRotationParam(int param, Quaternion rotation)
{
}
public override PhysicsVector CenterOfMass
{
get { return PhysicsVector.Zero; }

View File

@ -131,6 +131,11 @@ namespace OpenSim.Region.Physics.POSPlugin
}
public override void VehicleRotationParam(int param, Quaternion rotation)
{
}
public override PhysicsVector CenterOfMass
{
get { return PhysicsVector.Zero; }

View File

@ -353,6 +353,11 @@ namespace OpenSim.Region.Physics.PhysXPlugin
}
public override void VehicleRotationParam(int param, Quaternion rotation)
{
}
public override PhysicsVector CenterOfMass
{
get { return PhysicsVector.Zero; }
@ -693,6 +698,11 @@ namespace OpenSim.Region.Physics.PhysXPlugin
}
public override void VehicleRotationParam(int param, Quaternion rotation)
{
}
public override PhysicsVector CenterOfMass
{
get { return PhysicsVector.Zero; }

View File

@ -5162,6 +5162,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
NotImplemented("llSetVehicleType");
}
//CFK 9/28: Most, but not all of the underlying plumbing between here and the physics modules is in
//CFK 9/28: so these are not complete yet.
public void llSetVehicleFloatParam(int param, float value)
{
m_host.AddScriptLPS(1);
@ -5175,6 +5177,8 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
}
}
//CFK 9/28: Most, but not all of the underlying plumbing between here and the physics modules is in
//CFK 9/28: so these are not complete yet.
public void llSetVehicleVectorParam(int param, LSL_Vector vec)
{
m_host.AddScriptLPS(1);
@ -5188,10 +5192,19 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
}
}
//CFK 9/28: Most, but not all of the underlying plumbing between here and the physics modules is in
//CFK 9/28: so these are not complete yet.
public void llSetVehicleRotationParam(int param, LSL_Rotation rot)
{
m_host.AddScriptLPS(1);
NotImplemented("llSetVehicleRotationParam");
if (m_host.ParentGroup != null)
{
if (m_host.ParentGroup.RootPart != null)
{
m_host.ParentGroup.RootPart.SetVehicleRotationParam(param,
new Quaternion((float)rot.x, (float)rot.y, (float)rot.z, (float)rot.s));
}
}
}
public void llSetVehicleFlags(int flags)