aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/Manager
diff options
context:
space:
mode:
Diffstat (limited to '')
-rw-r--r--OpenSim/Region/Physics/Manager/PhysicsActor.cs16
-rw-r--r--OpenSim/Region/Physics/Manager/PhysicsScene.cs12
2 files changed, 26 insertions, 2 deletions
diff --git a/OpenSim/Region/Physics/Manager/PhysicsActor.cs b/OpenSim/Region/Physics/Manager/PhysicsActor.cs
index 5af6373..e39cee7 100644
--- a/OpenSim/Region/Physics/Manager/PhysicsActor.cs
+++ b/OpenSim/Region/Physics/Manager/PhysicsActor.cs
@@ -61,6 +61,7 @@ namespace OpenSim.Region.Physics.Manager
61 public Vector3 SurfaceNormal; 61 public Vector3 SurfaceNormal;
62 public float PenetrationDepth; 62 public float PenetrationDepth;
63 public float RelativeSpeed; 63 public float RelativeSpeed;
64 public bool CharacterFeet;
64 65
65 public ContactPoint(Vector3 position, Vector3 surfaceNormal, float penetrationDepth) 66 public ContactPoint(Vector3 position, Vector3 surfaceNormal, float penetrationDepth)
66 { 67 {
@@ -68,6 +69,16 @@ namespace OpenSim.Region.Physics.Manager
68 SurfaceNormal = surfaceNormal; 69 SurfaceNormal = surfaceNormal;
69 PenetrationDepth = penetrationDepth; 70 PenetrationDepth = penetrationDepth;
70 RelativeSpeed = 0f; // for now let this one be set explicity 71 RelativeSpeed = 0f; // for now let this one be set explicity
72 CharacterFeet = true; // keep other plugins work as before
73 }
74
75 public ContactPoint(Vector3 position, Vector3 surfaceNormal, float penetrationDepth, bool feet)
76 {
77 Position = position;
78 SurfaceNormal = surfaceNormal;
79 PenetrationDepth = penetrationDepth;
80 RelativeSpeed = 0f; // for now let this one be set explicity
81 CharacterFeet = feet; // keep other plugins work as before
71 } 82 }
72 } 83 }
73 84
@@ -173,6 +184,11 @@ namespace OpenSim.Region.Physics.Manager
173 184
174 public abstract Vector3 Size { get; set; } 185 public abstract Vector3 Size { get; set; }
175 186
187 public virtual void setAvatarSize(Vector3 size, float feetOffset)
188 {
189 Size = size;
190 }
191
176 public virtual bool Phantom { get; set; } 192 public virtual bool Phantom { get; set; }
177 193
178 public virtual bool IsVolumeDtc 194 public virtual bool IsVolumeDtc
diff --git a/OpenSim/Region/Physics/Manager/PhysicsScene.cs b/OpenSim/Region/Physics/Manager/PhysicsScene.cs
index ce269fa..cdffa6b 100644
--- a/OpenSim/Region/Physics/Manager/PhysicsScene.cs
+++ b/OpenSim/Region/Physics/Manager/PhysicsScene.cs
@@ -127,8 +127,10 @@ namespace OpenSim.Region.Physics.Manager
127 /// <param name="size"></param> 127 /// <param name="size"></param>
128 /// <param name="isFlying"></param> 128 /// <param name="isFlying"></param>
129 /// <returns></returns> 129 /// <returns></returns>
130 public abstract PhysicsActor AddAvatar(string avName, Vector3 position, Vector3 size, bool isFlying); 130 public virtual PhysicsActor AddAvatar(string avName, Vector3 position, Vector3 size, bool isFlying)
131 131 {
132 return null;
133 }
132 /// <summary> 134 /// <summary>
133 /// Add an avatar 135 /// Add an avatar
134 /// </summary> 136 /// </summary>
@@ -145,6 +147,12 @@ namespace OpenSim.Region.Physics.Manager
145 return ret; 147 return ret;
146 } 148 }
147 149
150 public virtual PhysicsActor AddAvatar(uint localID, string avName, Vector3 position, Vector3 size, float feetOffset, bool isFlying)
151 {
152 PhysicsActor ret = AddAvatar(localID, avName, position, size, isFlying);
153 return ret;
154 }
155
148 /// <summary> 156 /// <summary>
149 /// Remove an avatar. 157 /// Remove an avatar.
150 /// </summary> 158 /// </summary>