Moved applying an impulse to a newly rezzed object to minimise the delay getting the object moving.
parent
ed0661e25a
commit
63d2885008
|
@ -2472,7 +2472,12 @@ namespace OpenSim.Region.Environment.Scenes
|
||||||
}
|
}
|
||||||
group.UpdateGroupRotation(rot);
|
group.UpdateGroupRotation(rot);
|
||||||
//group.ApplyPhysics(m_physicalPrim);
|
//group.ApplyPhysics(m_physicalPrim);
|
||||||
group.Velocity = vel;
|
if (group.RootPart.PhysActor != null && group.RootPart.PhysActor.IsPhysical && vel != Vector3.Zero)
|
||||||
|
{
|
||||||
|
group.RootPart.ApplyImpulse(vel, false);
|
||||||
|
group.Velocity = vel;
|
||||||
|
rootPart.ScheduleFullUpdate();
|
||||||
|
}
|
||||||
group.CreateScriptInstances(param, true, DefaultScriptEngine, 2);
|
group.CreateScriptInstances(param, true, DefaultScriptEngine, 2);
|
||||||
rootPart.ScheduleFullUpdate();
|
rootPart.ScheduleFullUpdate();
|
||||||
|
|
||||||
|
|
|
@ -2491,7 +2491,6 @@ namespace OpenSim.Region.ScriptEngine.Shared.Api
|
||||||
|
|
||||||
if (new_group.RootPart.PhysActor != null && new_group.RootPart.PhysActor.IsPhysical && llvel != Vector3.Zero)
|
if (new_group.RootPart.PhysActor != null && new_group.RootPart.PhysActor.IsPhysical && llvel != Vector3.Zero)
|
||||||
{
|
{
|
||||||
new_group.RootPart.ApplyImpulse(llvel, false);
|
|
||||||
//Recoil.
|
//Recoil.
|
||||||
llApplyImpulse(new LSL_Vector(llvel.X * groupmass, llvel.Y * groupmass, llvel.Z * groupmass), 0);
|
llApplyImpulse(new LSL_Vector(llvel.X * groupmass, llvel.Y * groupmass, llvel.Z * groupmass), 0);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue