public void update(float dt){
if (!_targets.Any ()) {
return;
}
var enumerator = new Dictionary<int, tHashElement>(_targets).GetEnumerator();
while (enumerator.MoveNext()) {
var elt = enumerator.Current.Value;
_currentTarget = elt;
_currentTargetSavlvaged = false;
if(elt.target !=null && elt.actions != null && !elt.paused){
for( elt.actionIndex = 0; elt.actions!=null && elt.actionIndex < elt.actions.Count; elt.actionIndex++) {
elt.currentAction = elt.actions[elt.actionIndex];
elt.currentActionSalvaged = false;
elt.currentAction.step(dt);
if(!elt.currentActionSalvaged && elt.currentAction!=null && elt.currentAction.isDone()){
elt.currentAction.stop();
CCAction a = elt.currentAction;
elt.currentAction = null;
removeAction(a);
}
elt.currentAction = null;
}
}
if(_currentTargetSavlvaged && (elt.actions.Count ==0 || elt.target==null)){
deleteHashElement(elt);
}
}
_currentTarget = null;
}