PC sheet field

Script for pc players

当前为 2023-03-05 提交的版本,查看 最新版本

  1. // ==UserScript==
  2. // @name PC sheet field
  3. // @namespace http://tampermonkey.net/
  4. // @version 0.5
  5. // @description Script for pc players
  6. // @author Hustandant#1917
  7. // @match *://mppclone.com/*
  8. // @include *://www.multiplayerpiano.com/*
  9. // @include *://multiplayerpiano.com/*
  10. // @include *://piano.ourworldofpixels.com/*
  11. // @include *://mppfork.netlify.app/*
  12. // @match *.mpp.hri7566.info/*
  13. // @match *://mpp.autoplayer.xyz/*
  14. // @license MIT
  15. // @icon https://github.com/Hustoroff/mpp/blob/main/icon.png?raw=true
  16. // @grant none
  17. // ==/UserScript==
  18. window.addEventListener('load', (event) => {
  19. $("#bottom .relative").append(`<div id="pc_btn" class="ugly-button">PC field</div>`);
  20. $("#pc_btn").css({position: "absolute", left: "1020px", top: "4px"}).on("click", () => {
  21. MPP.client.emit("notification", {
  22. title: "PC sheet field (script by Hustandant#1917)",
  23. id:"area_notification",
  24. duration:-1,
  25. target:"#piano",
  26. html:`<textarea id="pcArea" placeholder="Your sheets..."></textarea><div><h4>More sheets <a href="https://controlc.com/6aa4340f" target="_blank">here</a></h4></div>`
  27. });
  28. let area = document.getElementById("pcArea");
  29. area.innerText = localStorage.getItem("sheets");
  30. area.parentNode.parentNode.style.width = "100%";
  31. area.addEventListener("input", () => {
  32. localStorage.setItem("sheets", area.value);
  33. });
  34.  
  35. let div = document.getElementById("Notification-area_notification").getElementsByClassName("title")[0];
  36. let elem = document.getElementById("Notification-area_notification");
  37. div.addEventListener("mousedown", function(evt) {
  38. evt.preventDefault();
  39. let xStart = evt.clientX;
  40. let yStart = evt.clientY;
  41. var onMouseMove = function (evtMove){
  42. evtMove.preventDefault();
  43. var xNew = xStart - evtMove.clientX;
  44. var yNew = yStart - evtMove.clientY;
  45. xStart = evtMove.clientX;
  46. yStart = evtMove.clientY;
  47. elem.style.top = (elem.offsetTop - yNew) + 'px';
  48. elem.style.left = (elem.offsetLeft - xNew) + 'px';
  49. }
  50. var onMouseUp = function (evtUp){
  51. document.removeEventListener('mousemove', onMouseMove);
  52. document.removeEventListener('mouseup', onMouseUp);
  53. }
  54. document.addEventListener('mousemove', onMouseMove)
  55. document.addEventListener('mouseup', onMouseUp)
  56. });
  57. });
  58. });