Advertisement
Guest User

Untitled

a guest
Dec 14th, 2019
155
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. //made by github.com/BlekDimon
  2. const movingAddonsObj = {
  3.     heroMoveToPos: function(j, i) {
  4.         if (hero.isBlockedSearchPath()) {
  5.             return hero.blockedInfoSearchPath();
  6.         }
  7.         var l = map.nodes.getNode(hero.x, hero.y);
  8.         var k = map.nodes.getNode(j, i);
  9.         if (!l.hasSameGroup(k)) {
  10.             map.nodes.clearAllNodes();
  11.             l.setScore(0, map.hce8(k, l));
  12.             k = map.nodeSetLoop(k, l, map.findStep);
  13.         }
  14.         map.nodes.clearAllNodes();
  15.         l.setScore(0, map.hce(l, k));
  16.         map.nodeSetLoop(l, k, map.mapStep);
  17.         var m = k;
  18.         road = [];
  19.         while (m !== null && m.id != l.id) {
  20.             road.push({ x: m.x, y: m.y });
  21.             m = m.from;
  22.         }
  23.         if (m !== null) {
  24.             road.push({ x: m.x, y: m.y });
  25.         }
  26.         if (road.length > 1 && g.playerCatcher.follow == null) {
  27.             $("#target")
  28.                 .stop()
  29.                 .css({
  30.                     left: road[0].x * 32,
  31.                     top: road[0].y * 32,
  32.                     display: "block",
  33.                     opacity: 1,
  34.                     "z-index": 1
  35.                 })
  36.                 .fadeOut(1000);
  37.         }
  38.     },
  39.  
  40.     createPanel: function() {
  41.         $("<div class='autoMovePanel'></div>")
  42.             .css({
  43.                 position: "absolute",
  44.                 "z-index": "1003",
  45.                 top: `${localStorage.getItem("move-panel-y")}px` || "0",
  46.                 left: `${localStorage.getItem("move-panel-x")}px` || "0",
  47.                 "font-family": "Verdana",
  48.                 "font-size": "10px",
  49.                 width: "fit-content",
  50.                 height: "fit-content",
  51.                 "text-align": "center",
  52.                 background: "#3498db",
  53.                 border: "2px solid white"
  54.             })
  55.             .appendTo("body")
  56.             .html(
  57.                 "<span style='display: block; margin: 5px; font-weight: 700'>Move to:</span>" +
  58.                     "<span style='margin: 0 0 0 5px; font-weight: 700'>x: </span>" +
  59.                     "<input style='width: 30px; height: 10px; margin: 0 5px 0 0' class='move-to-x' type='number' required />" +
  60.                     "<span style='margin: 0 0 0 5px; font-weight: 700'>y: </span>" +
  61.                     "<input style='width: 30px; height: 10px; margin: 0 5px 5px 0' class='move-to-y' type='number' required />" +
  62.                     "<button style='display: block; background: #2ecc71; border: none; color: white; font-size: 11px; font-weight: 700; padding: 2.5px 7.5px; position absolute; transform: translate(100%);' class='confirm-move-to'>Move</button>" +
  63.                     "<span style='display: block; margin: 5px; font-weight: 700'>Run around:</span>" +
  64.                     "<span style='margin: 0 0 0 5px; font-weight: 700'>x1: </span>" +
  65.                     "<input style='width: 30px; height: 10px; margin: 0 5px 0 0' class='run-to-x1' type='number' required />" +
  66.                     "<span style='margin: 0 0 0 5px; font-weight: 700'>y1: </span>" +
  67.                     "<input style='width: 30px; height: 10px; margin: 0 5px 5px 0' class='run-to-y1' type='number' required />" +
  68.                     "<br><span style='margin: 0 0 0 5px; font-weight: 700'>x2: </span>" +
  69.                     "<input style='width: 30px; height: 10px; margin: 0 5px 0 0' class='run-to-x2' type='number' required />" +
  70.                     "<span style='margin: 0 0 0 5px; font-weight: 700'>y2: </span>" +
  71.                     "<input style='width: 30px; height: 10px; margin: 0 5px 5px 0' class='run-to-y2' type='number' required />" +
  72.                     "<button style='display: block; background: #2ecc71; border: none; color: white; font-size: 11px; font-weight: 700; padding: 2.5px 7.5px; position absolute; transform: translate(110%); margin-bottom: 5px' class='confirm-run-around'>Start</button>"
  73.             )
  74.             .draggable({
  75.                 contaiment: "window",
  76.                 start: function(event, ui) {
  77.                     g.lock.add("movingAddonsYeah");
  78.                 },
  79.                 stop: function(event, ui) {
  80.                     localStorage.setItem("move-panel-y", ui.position.top);
  81.                     localStorage.setItem("move-panel-x", ui.position.left);
  82.                     g.lock.remove("movingAddonsYeah");
  83.                 }
  84.             });
  85.     },
  86.     runAround: false
  87. };
  88.  
  89. movingAddonsObj.createPanel();
  90. document.querySelector(".confirm-move-to").addEventListener("click", () => {
  91.     const x = document.querySelector(".move-to-x").value;
  92.     const y = document.querySelector(".move-to-y").value;
  93.     if (x != "" && y != "") {
  94.         movingAddonsObj.heroMoveToPos(parseInt(x), parseInt(y));
  95.     }
  96. });
  97.  
  98. document
  99.     .querySelector(".confirm-run-around")
  100.     .addEventListener("click", function() {
  101.         const x1 = document.querySelector(".run-to-x1").value;
  102.         const y1 = document.querySelector(".run-to-y1").value;
  103.         const x2 = document.querySelector(".run-to-x2").value;
  104.         const y2 = document.querySelector(".run-to-y2").value;
  105.         if (x1 != "" && y1 != "" && x2 != "" && y2 != "") {
  106.             if (movingAddonsObj.runAround == false) {
  107.                 movingAddonsObj.runAround = true;
  108.                 this.innerHTML = "Stop";
  109.                 setTimeout(
  110.                     (returned = function() {
  111.                         if (hero.x == x1 && hero.y == y1) {
  112.                             movingAddonsObj.heroMoveToPos(
  113.                                 parseInt(x2),
  114.                                 parseInt(y2)
  115.                             );
  116.                         } else if (hero.x == x2 && hero.y == y2) {
  117.                             movingAddonsObj.heroMoveToPos(
  118.                                 parseInt(x1),
  119.                                 parseInt(y1)
  120.                             );
  121.                         }
  122.                         setTimeout(returned, 200);
  123.                     }),
  124.                     200
  125.                 );
  126.             } else {
  127.                 movingAddonsObj.runAround = false;
  128.                 returned = "";
  129.                 this.innerHTML = "Start";
  130.             }
  131.         }
  132.     });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement