aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs
diff options
context:
space:
mode:
authordiva2009-02-15 05:00:58 +0000
committerdiva2009-02-15 05:00:58 +0000
commit3d5a9e6748ef743c4db04b427d4d76ea65269618 (patch)
tree1877a66c0ca1f4caa455a7f98dd221897e687620 /OpenSim/Region/Physics/OdePlugin/OdePlugin.cs
parentSet sculpt map alpha to 255 prior to scaling and meshing. Addresses Mantis #3150 (diff)
downloadopensim-SC-3d5a9e6748ef743c4db04b427d4d76ea65269618.zip
opensim-SC-3d5a9e6748ef743c4db04b427d4d76ea65269618.tar.gz
opensim-SC-3d5a9e6748ef743c4db04b427d4d76ea65269618.tar.bz2
opensim-SC-3d5a9e6748ef743c4db04b427d4d76ea65269618.tar.xz
This started as way to correct Mantis #3158, which I believe should be fixed now. The flying status was temporarily being ignored, which caused the avie to drop sometimes -- there was a race condition. In the process it also fixes that annoying bug in basic physics where the avie would drop half-way to the ground upon region crossings (SetAppearance was missing). Additionally, a lot of child-agent-related code has been cleaned up; namely child agents are now consistently not added to physical scenes, and they also don't have appearances. All of that happens in MakeRoot, consistently.
Diffstat (limited to 'OpenSim/Region/Physics/OdePlugin/OdePlugin.cs')
-rw-r--r--OpenSim/Region/Physics/OdePlugin/OdePlugin.cs3
1 files changed, 2 insertions, 1 deletions
diff --git a/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs b/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs
index ae47636..f30de4d 100644
--- a/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs
+++ b/OpenSim/Region/Physics/OdePlugin/OdePlugin.cs
@@ -1313,13 +1313,14 @@ namespace OpenSim.Region.Physics.OdePlugin
1313 1313
1314 #region Add/Remove Entities 1314 #region Add/Remove Entities
1315 1315
1316 public override PhysicsActor AddAvatar(string avName, PhysicsVector position, PhysicsVector size) 1316 public override PhysicsActor AddAvatar(string avName, PhysicsVector position, PhysicsVector size, bool isFlying)
1317 { 1317 {
1318 PhysicsVector pos = new PhysicsVector(); 1318 PhysicsVector pos = new PhysicsVector();
1319 pos.X = position.X; 1319 pos.X = position.X;
1320 pos.Y = position.Y; 1320 pos.Y = position.Y;
1321 pos.Z = position.Z; 1321 pos.Z = position.Z;
1322 OdeCharacter newAv = new OdeCharacter(avName, this, pos, ode, size, avPIDD, avPIDP, avCapRadius, avStandupTensor, avDensity, avHeightFudgeFactor, avMovementDivisorWalk, avMovementDivisorRun); 1322 OdeCharacter newAv = new OdeCharacter(avName, this, pos, ode, size, avPIDD, avPIDP, avCapRadius, avStandupTensor, avDensity, avHeightFudgeFactor, avMovementDivisorWalk, avMovementDivisorRun);
1323 newAv.Flying = isFlying;
1323 _characters.Add(newAv); 1324 _characters.Add(newAv);
1324 return newAv; 1325 return newAv;
1325 } 1326 }