MPP Minibot

Minibot

当前为 2021-11-28 提交的版本,查看 最新版本

  1. // ==UserScript==
  2. // @name MPP Minibot
  3. // @namespace http://tampermonkey.net/
  4. // @version 0.1
  5. // @description Minibot
  6. // @author You
  7. // @match *://mppclone.com/*
  8. // @license MIT
  9. // @grant none
  10. // ==/UserScript==
  11.  
  12. var hello = "(",
  13. calls = 1,
  14. catchedmsg = 0,
  15. sentmsgp = 0,
  16. sentmsg = 0,
  17. totalmsg = 0,
  18. th = ["", "thousand", "million", "billion", "trillion"],
  19. dg = "zero one two three four five six seven eight nine".split(" "),
  20. tn = "ten eleven twelve thirteen fourteen fifteen sixteen seventeen eighteen nineteen".split(" "),
  21. tw = "twenty thirty forty fifty sixty seventy eighty ninety".split(" "),
  22. a = new Date().toLocaleTimeString();
  23. setInterval(function () {
  24. a !== new Date().toLocaleTimeString() &&
  25. ((a = new Date().toLocaleTimeString()),
  26. setTimeout(function () {
  27. document.getElementById("timebtn").childNodes[0].nodeValue = new Date().toLocaleTimeString();
  28. }, 0));
  29. }, 0);
  30. $("body").append('<div id="timebtn" class="ugly-button" style="position: fixed; bottom: 17.5px !important; left: 1120px !important; z-index: 500;">0:0:0 PM/AM</div>');
  31. $("#timebtn").on("click", function (d) {
  32. MPP.chat.send(new Date().toLocaleTimeString());
  33. });
  34. MPP.client.on("a", function (d) {
  35. function f(c) {
  36. MPP.chat.send("Bot: " + c.replace("undefined", ""));
  37. calls++;
  38. sentmsgp--;
  39. sentmsg++;
  40. }
  41. function m(c) {
  42. c = c.toString();
  43. c = c.replace(/[, ]/g, "");
  44. if (c != parseFloat(c)) return "not a number";
  45. var e = c.indexOf(".");
  46. -1 == e && (e = c.length);
  47. if (15 < e) return "too big";
  48. for (var k = c.split(""), g = "", n = 0, b = 0; b < e; b++)
  49. 2 == (e - b) % 3 ? ("1" == k[b] ? ((g += tn[Number(k[b + 1])] + " "), b++, (n = 1)) : 0 != k[b] && ((g += tw[k[b] - 2] + " "), (n = 1))) : 0 != k[b] && ((g += dg[k[b]] + " "), 0 == (e - b) % 3 && (g += "hundred "), (n = 1)),
  50. 1 == (e - b) % 3 && (n && (g += th[(e - b - 1) / 3] + " "), (n = 0));
  51. if (e != c.length) for (c = c.length, g += "point ", b = e + 1; b < c; b++) g += dg[k[b]] + " ";
  52. return g.replace(/\s+/g, " ");
  53. }
  54. catchedmsg++;
  55. var l = d.a.split(" "),
  56. h = l[0].toLowerCase(),
  57. p = d.p._id,
  58. r = d.p.color,
  59. q = d.p.name,
  60. t = new Color(d.p.color).getName();
  61. d.p._id === MPP.client.getOwnParticipant()._id && (sentmsgp++, sentmsg--, totalmsg++);
  62. h === hello + "help" && (sentmsg++, f("Commands: " + hello + "about " + hello + "me " + hello + "eat " + hello + "drink " + hello + "calls"));
  63. h === hello + "about" && f("Creators: CreepX7021 and Addison | Thanks to Addison for creating this bot! \u2764\ufe0f\ud83e\udde1\ud83d\udc9b\ud83d\udc9a\ud83d\udc99\ud83d\udc9c\ud83e\udd0e\ud83d\udda4\ud83e\udd0d");
  64. h === hello + "me" && f('Information | Name: "' + q + '" | ID: ' + p + " | Hex: " + r + " [" + t + "]");
  65. h === hello + "calls" &&
  66. f(
  67. "There are " +
  68. m(calls) +
  69. " commands used and " +
  70. m(catchedmsg) +
  71. " chat messages seen by the bot, and " +
  72. m(sentmsgp) +
  73. " chat messages sent by the player and " +
  74. m(sentmsg) +
  75. " messages sent by the bot, in total there are " +
  76. m(totalmsg) +
  77. "messagase sent by " +
  78. MPP.client.getOwnParticipant().name +
  79. " and bot".replace(void 0, "")
  80. );
  81. h === hello + "eat" && ((l = l.slice(1)), (p = d.a.substring(3 + hello.length + 1).trim()), 0 === l.length ? f("Usage: " + d.a + " <food>") : f(q + " ate " + p.replace(d.p.name, "Theirself")));
  82. h === hello + "drink" && ((l = l.slice(1)), (h = d.a.substring(5 + hello.length + 1).trim()), 0 === l.length ? f("Usage: " + d.a + " <drink>") : f(q + " drank " + h));
  83. });