aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs
diff options
context:
space:
mode:
authorUbitUmarov2012-07-15 00:50:00 +0100
committerUbitUmarov2012-07-15 00:50:00 +0100
commit62df82b74d0f3599585f7320aeab8c6a8262f61f (patch)
treece65558db728ca6ffb4c3f78772bd14e3943328d /OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs
parent remove forgotten line... (diff)
downloadopensim-SC-62df82b74d0f3599585f7320aeab8c6a8262f61f.zip
opensim-SC-62df82b74d0f3599585f7320aeab8c6a8262f61f.tar.gz
opensim-SC-62df82b74d0f3599585f7320aeab8c6a8262f61f.tar.bz2
opensim-SC-62df82b74d0f3599585f7320aeab8c6a8262f61f.tar.xz
messing around... Let terrain and water have nullphysicsactors, let
nullphyscisactors have a type water, ground or unknown (default). having this removed geom to name mapping no longer needed. Made some more methods comum to prims and characters acessible via PhysActor allowing for a more uniform access. ...
Diffstat (limited to 'OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs')
-rw-r--r--OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs16
1 files changed, 10 insertions, 6 deletions
diff --git a/OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs b/OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs
index b506b1c..c363310 100644
--- a/OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs
+++ b/OpenSim/Region/Physics/UbitOdePlugin/ODECharacter.cs
@@ -106,7 +106,7 @@ namespace OpenSim.Region.Physics.OdePlugin
106 private bool m_freemove = false; 106 private bool m_freemove = false;
107 // private CollisionLocker ode; 107 // private CollisionLocker ode;
108 108
109 private string m_name = String.Empty; 109// private string m_name = String.Empty;
110 // other filter control 110 // other filter control
111 int m_colliderfilter = 0; 111 int m_colliderfilter = 0;
112 int m_colliderGroundfilter = 0; 112 int m_colliderGroundfilter = 0;
@@ -183,7 +183,7 @@ namespace OpenSim.Region.Physics.OdePlugin
183 183
184 m_isPhysical = false; // current status: no ODE information exists 184 m_isPhysical = false; // current status: no ODE information exists
185 185
186 m_name = avName; 186 Name = avName;
187 187
188 AddChange(changes.Add, null); 188 AddChange(changes.Add, null);
189 } 189 }
@@ -218,6 +218,11 @@ namespace OpenSim.Region.Physics.OdePlugin
218 set { m_localID = value; } 218 set { m_localID = value; }
219 } 219 }
220 220
221 public override PhysicsActor ParentActor
222 {
223 get { return (PhysicsActor)this; }
224 }
225
221 public override bool Grabbed 226 public override bool Grabbed
222 { 227 {
223 set { return; } 228 set { return; }
@@ -740,7 +745,7 @@ namespace OpenSim.Region.Physics.OdePlugin
740 //kill the Geometry 745 //kill the Geometry
741 if (Shell != IntPtr.Zero) 746 if (Shell != IntPtr.Zero)
742 { 747 {
743 _parent_scene.geom_name_map.Remove(Shell); 748// _parent_scene.geom_name_map.Remove(Shell);
744 _parent_scene.actor_name_map.Remove(Shell); 749 _parent_scene.actor_name_map.Remove(Shell);
745 _parent_scene.waitForSpaceUnlock(_parent_scene.ActiveSpace); 750 _parent_scene.waitForSpaceUnlock(_parent_scene.ActiveSpace);
746 d.GeomDestroy(Shell); 751 d.GeomDestroy(Shell);
@@ -1115,7 +1120,7 @@ namespace OpenSim.Region.Physics.OdePlugin
1115 m_eventsubscription = 0; 1120 m_eventsubscription = 0;
1116 } 1121 }
1117 1122
1118 public void AddCollisionEvent(uint CollidedWith, ContactPoint contact) 1123 public override void AddCollisionEvent(uint CollidedWith, ContactPoint contact)
1119 { 1124 {
1120 if (CollisionEventsThisFrame == null) 1125 if (CollisionEventsThisFrame == null)
1121 CollisionEventsThisFrame = new CollisionEventUpdate(); 1126 CollisionEventsThisFrame = new CollisionEventUpdate();
@@ -1184,7 +1189,7 @@ namespace OpenSim.Region.Physics.OdePlugin
1184 } 1189 }
1185 1190
1186 AvatarGeomAndBodyCreation(_position.X, _position.Y, _position.Z); 1191 AvatarGeomAndBodyCreation(_position.X, _position.Y, _position.Z);
1187 _parent_scene.geom_name_map[Shell] = m_name; 1192
1188 _parent_scene.actor_name_map[Shell] = (PhysicsActor)this; 1193 _parent_scene.actor_name_map[Shell] = (PhysicsActor)this;
1189 _parent_scene.AddCharacter(this); 1194 _parent_scene.AddCharacter(this);
1190 } 1195 }
@@ -1236,7 +1241,6 @@ namespace OpenSim.Region.Physics.OdePlugin
1236 1241
1237 Velocity = Vector3.Zero; 1242 Velocity = Vector3.Zero;
1238 1243
1239 _parent_scene.geom_name_map[Shell] = m_name;
1240 _parent_scene.actor_name_map[Shell] = (PhysicsActor)this; 1244 _parent_scene.actor_name_map[Shell] = (PhysicsActor)this;
1241 } 1245 }
1242 else 1246 else