diff options
author | Robert Adams | 2014-10-03 10:27:48 -0700 |
---|---|---|
committer | Robert Adams | 2014-11-30 19:52:59 -0800 |
commit | 41a943bfd01a8d9463a6621c1f248829637ccb28 (patch) | |
tree | ce765979e942fd3601ccd60c8b328f5714048051 /OpenSim/Region/Physics/BulletSPlugin/BSLinkset.cs | |
parent | BulletSim: Make BSPrimLinkable 'incomplete' if any of its children are waitin... (diff) | |
download | opensim-SC_OLD-41a943bfd01a8d9463a6621c1f248829637ccb28.zip opensim-SC_OLD-41a943bfd01a8d9463a6621c1f248829637ccb28.tar.gz opensim-SC_OLD-41a943bfd01a8d9463a6621c1f248829637ccb28.tar.bz2 opensim-SC_OLD-41a943bfd01a8d9463a6621c1f248829637ccb28.tar.xz |
BulletSim: add BSLinkset.AllPartsComplete that checks of all linkset members are not Incomplete and not waiting for assets. Change BSPrimLinkable to use AllPartsComplete.
Diffstat (limited to 'OpenSim/Region/Physics/BulletSPlugin/BSLinkset.cs')
-rwxr-xr-x | OpenSim/Region/Physics/BulletSPlugin/BSLinkset.cs | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/OpenSim/Region/Physics/BulletSPlugin/BSLinkset.cs b/OpenSim/Region/Physics/BulletSPlugin/BSLinkset.cs index e7b10fe..c0f8c2a 100755 --- a/OpenSim/Region/Physics/BulletSPlugin/BSLinkset.cs +++ b/OpenSim/Region/Physics/BulletSPlugin/BSLinkset.cs | |||
@@ -316,6 +316,23 @@ public abstract class BSLinkset | |||
316 | // Called at taint-time! | 316 | // Called at taint-time! |
317 | public abstract bool MakeDynamic(BSPrimLinkable child); | 317 | public abstract bool MakeDynamic(BSPrimLinkable child); |
318 | 318 | ||
319 | public virtual bool AllPartsComplete | ||
320 | { | ||
321 | get { | ||
322 | bool ret = true; | ||
323 | this.ForEachMember((member) => | ||
324 | { | ||
325 | if (member.IsIncomplete || member.PrimAssetState == BSPhysObject.PrimAssetCondition.Waiting) | ||
326 | { | ||
327 | ret = false; | ||
328 | return true; // exit loop | ||
329 | } | ||
330 | return false; // continue loop | ||
331 | }); | ||
332 | return ret; | ||
333 | } | ||
334 | } | ||
335 | |||
319 | // The object is going static (non-physical). Do any setup necessary | 336 | // The object is going static (non-physical). Do any setup necessary |
320 | // for a static linkset. | 337 | // for a static linkset. |
321 | // Return 'true' if any properties updated on the passed object. | 338 | // Return 'true' if any properties updated on the passed object. |