fork(1) download
  1. //【登録場所】レス表示
  2. //【ラベル】ランダムで開く
  3. //【コマンド】${SCRIPT:S} random.js
  4. //【内容】 スレ一覧からランダムにスレ開く
  5. //【スクリプト】
  6. var mes = "";
  7. function getRandom()
  8. {
  9. if (!v2c.online) { return; }
  10.  
  11. var bd = v2c.context.thread.board;
  12. v2c.openURL(bd.url);
  13. if (v2c.interrupted) { return; }
  14.  
  15. var bs = bd.url + 'subject.txt';
  16. var ss = v2c.readURL(bs);
  17. if (v2c.interrupted) { return; }
  18. if (!ss) { mes = bs+'の取得に失敗'; return; }
  19.  
  20. var lines = ss.split('\n');
  21. var count = lines.length;
  22. while (count) {
  23. var idx = Math.floor(Math.random() * count);
  24. var key = /^(\d+)\.dat<>.+ \(\d+\)/.exec(lines[idx])[1];
  25. var th = bd.getThread(key);
  26. if (th.localResCount == 0) {
  27. th.open();
  28. return;
  29. }
  30. lines.splice(idx, 1);
  31. count--;
  32. }
  33. mes = "ランダムで開くための未取得スレッドがありませんでした。";
  34. }
  35.  
  36. getRandom();
  37. if (mes != "") { v2c.context.setStatusBarText(mes); }
  38.  
Not running #stdin #stdout 0s 0KB
stdin
Standard input is empty
stdout
Standard output is empty