diff options
Diffstat (limited to 'OpenSim/Region/Physics/OdePlugin/ODECharacter.cs')
-rw-r--r-- | OpenSim/Region/Physics/OdePlugin/ODECharacter.cs | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs b/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs index 1fff846..71ace16 100644 --- a/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs +++ b/OpenSim/Region/Physics/OdePlugin/ODECharacter.cs | |||
@@ -139,8 +139,14 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
139 | public int m_eventsubscription = 0; | 139 | public int m_eventsubscription = 0; |
140 | private CollisionEventUpdate CollisionEventsThisFrame = new CollisionEventUpdate(); | 140 | private CollisionEventUpdate CollisionEventsThisFrame = new CollisionEventUpdate(); |
141 | 141 | ||
142 | // unique UUID of this character object | ||
143 | public UUID m_uuid; | ||
144 | public bool bad = false; | ||
145 | |||
142 | public OdeCharacter(String avName, OdeScene parent_scene, PhysicsVector pos, CollisionLocker dode, PhysicsVector size, float pid_d, float pid_p, float capsule_radius, float tensor, float density, float height_fudge_factor, float walk_divisor, float rundivisor) | 146 | public OdeCharacter(String avName, OdeScene parent_scene, PhysicsVector pos, CollisionLocker dode, PhysicsVector size, float pid_d, float pid_p, float capsule_radius, float tensor, float density, float height_fudge_factor, float walk_divisor, float rundivisor) |
143 | { | 147 | { |
148 | m_uuid = UUID.Random(); | ||
149 | |||
144 | // ode = dode; | 150 | // ode = dode; |
145 | _velocity = new PhysicsVector(); | 151 | _velocity = new PhysicsVector(); |
146 | _target_velocity = new PhysicsVector(); | 152 | _target_velocity = new PhysicsVector(); |
@@ -225,11 +231,6 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
225 | set { m_localID = value; } | 231 | set { m_localID = value; } |
226 | } | 232 | } |
227 | 233 | ||
228 | public override int GetHashCode() | ||
229 | { | ||
230 | return (int)m_localID; | ||
231 | } | ||
232 | |||
233 | public override bool Grabbed | 234 | public override bool Grabbed |
234 | { | 235 | { |
235 | set { return; } | 236 | set { return; } |
@@ -1112,10 +1113,11 @@ namespace OpenSim.Region.Physics.OdePlugin | |||
1112 | } | 1113 | } |
1113 | catch (NullReferenceException) | 1114 | catch (NullReferenceException) |
1114 | { | 1115 | { |
1116 | bad = true; | ||
1115 | _parent_scene.BadCharacter(this); | 1117 | _parent_scene.BadCharacter(this); |
1116 | vec = new d.Vector3(_position.X, _position.Y, _position.Z); | 1118 | vec = new d.Vector3(_position.X, _position.Y, _position.Z); |
1117 | base.RaiseOutOfBounds(_position); // Tells ScenePresence that there's a problem! | 1119 | base.RaiseOutOfBounds(_position); // Tells ScenePresence that there's a problem! |
1118 | m_log.WarnFormat("[ODEPLUGIN]: Avatar Null reference for Avatar: {0}", m_name); | 1120 | m_log.WarnFormat("[ODEPLUGIN]: Avatar Null reference for Avatar {0}, physical actor {1}", m_name, m_uuid); |
1119 | } | 1121 | } |
1120 | 1122 | ||
1121 | 1123 | ||