diff options
-rw-r--r-- | engines/fullpipe/statics.cpp | 17 |
1 files changed, 15 insertions, 2 deletions
diff --git a/engines/fullpipe/statics.cpp b/engines/fullpipe/statics.cpp index 7178538823..d7340324ef 100644 --- a/engines/fullpipe/statics.cpp +++ b/engines/fullpipe/statics.cpp @@ -1529,9 +1529,22 @@ int Movement::calcDuration() { } int Movement::countPhasesWithFlag(int maxidx, int flag) { - warning("STUB: Movement::countPhasesWithFlag()"); + int res = 0; + int sz; - return 0; + if (_currMovement) + sz = _currMovement->_dynamicPhases.size(); + else + sz = _dynamicPhases.size(); + + if (maxidx < 0) + maxidx = sz; + + for (int i = 0; i < maxidx && i < sz; i++) + if (getDynamicPhaseByIndex(i)->_dynFlags & flag) + res++; + + return res; } void Movement::setDynamicPhaseIndex(int index) { |