ODE: Tired of floating above the ground after crossing a border? Boy have I got a solution for you! For a limited time, you can be the right height after border crossings automatically. Just three easy payments of $9.95 and make sure your neighbor is sending child agent updates!

ThreadPoolClientBranch
Teravus Ovares 2008-02-18 01:52:25 +00:00
parent e6a74344e7
commit 8edaada1d3
8 changed files with 11 additions and 10 deletions

View File

@ -1740,7 +1740,7 @@ namespace OpenSim.Region.Environment.Scenes
new PhysicsVector(AbsolutePosition.X, AbsolutePosition.Y,
AbsolutePosition.Z);
m_physicsActor = scene.AddAvatar(Firstname + "." + Lastname, pVec);
m_physicsActor = scene.AddAvatar(Firstname + "." + Lastname, pVec,new PhysicsVector(0,0,m_avHeight));
//m_physicsActor.OnRequestTerseUpdate += SendTerseUpdateToAllClients;
m_physicsActor.OnCollisionUpdate += PhysicsCollisionUpdate;
}

View File

@ -79,7 +79,7 @@ namespace OpenSim.Region.Physics.BasicPhysicsPlugin
{
}
public override PhysicsActor AddAvatar(string avName, PhysicsVector position)
public override PhysicsActor AddAvatar(string avName, PhysicsVector position, PhysicsVector size)
{
BasicActor act = new BasicActor();
act.Position = position;

View File

@ -413,7 +413,7 @@ namespace OpenSim.Region.Physics.BulletXPlugin
{
}
public override PhysicsActor AddAvatar(string avName, PhysicsVector position)
public override PhysicsActor AddAvatar(string avName, PhysicsVector position, PhysicsVector size)
{
PhysicsVector pos = new PhysicsVector();
pos.X = position.X;

View File

@ -60,7 +60,7 @@ namespace OpenSim.Region.Physics.Manager
public abstract void Initialise(IMesher meshmerizer);
public abstract PhysicsActor AddAvatar(string avName, PhysicsVector position);
public abstract PhysicsActor AddAvatar(string avName, PhysicsVector position, PhysicsVector size);
public abstract void RemoveAvatar(PhysicsActor actor);
@ -95,7 +95,7 @@ namespace OpenSim.Region.Physics.Manager
// Does nothing right now
}
public override PhysicsActor AddAvatar(string avName, PhysicsVector position)
public override PhysicsActor AddAvatar(string avName, PhysicsVector position, PhysicsVector size)
{
m_log.InfoFormat("[PHYSICS]: NullPhysicsScene : AddAvatar({0})", position);
return PhysicsActor.Null;

View File

@ -104,7 +104,7 @@ namespace OpenSim.Region.Physics.OdePlugin
public d.Mass ShellMass;
public bool collidelock = false;
public OdeCharacter(String avName, OdeScene parent_scene, PhysicsVector pos, CollisionLocker dode)
public OdeCharacter(String avName, OdeScene parent_scene, PhysicsVector pos, CollisionLocker dode, PhysicsVector size)
{
ode = dode;
_velocity = new PhysicsVector();
@ -131,6 +131,7 @@ namespace OpenSim.Region.Physics.OdePlugin
{
m_colliderarr[i] = false;
}
CAPSULE_LENGTH = (size.Z - ((size.Z * 0.52f)));
lock (OdeScene.OdeLock)
{

View File

@ -702,13 +702,13 @@ namespace OpenSim.Region.Physics.OdePlugin
}
}
public override PhysicsActor AddAvatar(string avName, PhysicsVector position)
public override PhysicsActor AddAvatar(string avName, PhysicsVector position, PhysicsVector size)
{
PhysicsVector pos = new PhysicsVector();
pos.X = position.X;
pos.Y = position.Y;
pos.Z = position.Z;
OdeCharacter newAv = new OdeCharacter(avName, this, pos, ode);
OdeCharacter newAv = new OdeCharacter(avName, this, pos, ode, size);
_characters.Add(newAv);
return newAv;
}

View File

@ -81,7 +81,7 @@ namespace OpenSim.Region.Physics.POSPlugin
{
}
public override PhysicsActor AddAvatar(string avName, PhysicsVector position)
public override PhysicsActor AddAvatar(string avName, PhysicsVector position, PhysicsVector size)
{
POSCharacter act = new POSCharacter();
act.Position = position;

View File

@ -93,7 +93,7 @@ namespace OpenSim.Region.Physics.PhysXPlugin
}
public override PhysicsActor AddAvatar(string avName, PhysicsVector position)
public override PhysicsActor AddAvatar(string avName, PhysicsVector position, PhysicsVector size)
{
Vec3 pos = new Vec3();
pos.X = position.X;