public final int moveMade(long now,boolean useIncrement){
  stopTimer(now);
  ArrayList<TimeControlField> tc=tcData.getTC(whiteToMove);
  Pair<Integer,Integer> tcInfo=getCurrentTC(whiteToMove);
  int tcIdx=tcInfo.first;
  int movesToTc=tcInfo.second;
  int remaining=getRemainingTime(whiteToMove,now);
  if (useIncrement) {
    remaining+=tc.get(tcIdx).increment;
    if (movesToTc == 1) {
      if (tcIdx + 1 < tc.size())       tcIdx++;
      remaining+=tc.get(tcIdx).timeControl;
    }
  }
  elapsed=0;
  return remaining;
}

public final int moveMade ( long now , boolean useIncrement ) { stopTimer ( now ) ; ArrayList < TimeControlField > tc = tcData . getTC ( whiteToMove ) ; Pair < Integer , Integer > tcInfo = getCurrentTC ( whiteToMove ) ; int tcIdx = tcInfo . first ; int movesToTc = tcInfo . second ; int remaining = getRemainingTime ( whiteToMove , now ) ; if ( useIncrement ) { remaining += tc . get ( tcIdx ) . increment ; if ( movesToTc == 1 ) { if ( tcIdx + 1 < tc . size ( ) ) tcIdx ++ ; remaining += tc . get ( tcIdx ) . timeControl ; } } elapsed = 0 ; return remaining ; }
compute new remaining time after a move is made .
