docs: function processGotoStepOptions(game, options) {
          var prop;
  
          // Be done.. now! Skips Game.execStep.
          if (options.beDone) {
              game.willBeDone = true;
              game.beDone = true;
          }
          else if (options.willBeDone) {
              // TODO: why not setting willBeDone? It was not working, check!
              // Call node.done() immediately after PLAYING is emitted.
              game.node.once('PLAYING', function() {
                  game.node.done();
              });
          }
  
          // Temporarily modify plot properties.
          // Must be done after setting the role.
          if (options.plot) {
              for (prop in options.plot) {
                  if (options.plot.hasOwnProperty(prop)) {
                      game.plot.tmpCache(prop, options.plot[prop]);
                  }
              }
          }
  
          // TODO: rename cb.
          // Call the cb with options as param, if found.
          if (options.cb) {
              if ('function' === typeof options.cb) {
                  options.cb.call(game, options);
              }
              else {
                  throw new TypeError('Game.gotoStep: options.cb must be ' +
                                      'function or undefined. Found: ' +
                                      options.cb);
              }
          }
      }