Example #1
0
exports.testProgressBar = function(test) {
  test.expect(4);

  var progress, str, log = [];

  try {
    cli.progress();
  } catch(error) {
    test.throws(error, Error, 'Name required'); 
  }

  try {
    cli.progress("test");
  } catch(error) {
    test.throws(error, Error, 'Total required');
  }

  progress = cli.progress("test", 10, true, true);
  progress.write = function (content) {
    log.push(content);
  };

  progress.tick();
  test.equal(log[0], "test 10% [==                  ] 0.0s");

  progress.tick(8);
  progress.stop();
  test.equal(log[1], "test 90% [==================  ] 0.0s");
  test.done();
};
Example #2
0
    command: state => (options, player) => {
      const active = [...player.questTracker.activeQuests];
      if (!active.length) {
        return say(player, "You have no active quests.");
      }

      for (let i in active) {
        const [, quest] = active[i];
        const progress = quest.getProgress();

        Broadcast.at(player, '<b><yellow>' + (parseInt(i, 10) + 1) + '</yellow></b>: ');
        say(player, Broadcast.progress(60, progress.percent, 'yellow') + ` ${progress.percent}%`);
        say(player, Broadcast.indent('<b><yellow>' + quest.getProgress().display + '</yellow></b>', 2));

        if (quest.config.npc) {
          const npc = state.MobFactory.getDefinition(quest.config.npc);
          say(player, `  <b><yellow>Questor: ${npc.name}</yellow></b>`);
        }

        say(player, '  ' + Broadcast.line(78));
        say(
          player,
          Broadcast.indent(
            Broadcast.wrap(`<b><yellow>${quest.config.desc}</yellow></b>`, 78),
            2
          )
        );
        say(player, '  ' + Broadcast.line(78));
      }
    }
Example #3
0
    command: state => (args, player) => {
      const totalTnl = LevelUtil.expToLevel(player.level + 1);
      const currentPerc = player.experience ? Math.floor((player.experience / totalTnl) * 100) : 0;

      Broadcast.sayAt(player, `Level: ${player.level}`);
      Broadcast.sayAt(player, Broadcast.progress(80, currentPerc, "blue"));
      Broadcast.sayAt(player, `${player.experience}/${totalTnl} (${currentPerc}%, ${totalTnl - player.experience} til next level)`);
    }