Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // ==UserScript==
- // @name DESIGN BOT
- // @namespace http://tampermonkey.net/
- // @version 0.81
- // @description try to take over the world!
- // @author TheArtMix, Flyink13, DarkKeks
- // @match https://pixel.vkforms.ru/*
- // @downloadURL https://pixel.codepaste.me/script.user.js
- // @updateURL https://pixel.codepaste.me/script.user.js
- // @grant none
- // ==/UserScript==
- function PixelBot() {
- window.PixelBot = PixelBot;
- function qe(x) {
- if(!document.querySelectorAll(x)) return false;
- return document.querySelectorAll(x)[0];
- }
- PixelBot.url = {
- script: window.botUrl,
- image: 'https://i.imgur.com/Wv8IBLg.png'
- };
- PixelBot.urlGen = {
- script: function() {
- return PixelBot.url.script + '?v=' + Math.random();
- },
- image: function() {
- return PixelBot.url.image + '?v=' + Math.random();
- }
- };
- PixelBot.refreshTime = 1800;
- PixelBot.pts = 60;
- PixelBot.tc = "rgb(17, 17, 17)";
- PixelBot.height = 400;
- PixelBot.widht = 1590;
- PixelBot.debug = false;
- PixelBot.doCoordLog = true;
- PixelBot.state = document.createElement("div");
- PixelBot.state.onclick = PixelBot.reload;
- PixelBot.state.textContent = "Загрузка приложения...";
- Object.assign(PixelBot.state.style, {
- background: "rgba(0,0,0,0.5)",
- bottom: "0px",
- right: "0px",
- width: "100%",
- height: "100%",
- lineHeight: "500px",
- textAlign: "center",
- color: "#fff",
- position: "fixed",
- zIndex: 10000
- });
- document.body.appendChild(PixelBot.state);
- PixelBot.loger = document.createElement("div");
- PixelBot.loger.onclick = PixelBot.reload;
- Object.assign(PixelBot.loger.style, {
- background: "rgba(0,0,0,0)",
- top: "0px",
- left: "0px",
- width: "250px",
- height: "100%",
- color: "#fff",
- position: "fixed",
- borderRight: "1px solid #fff",
- fontSize: "11px",
- padding: "12px",
- zIndex: 10001
- });
- document.body.appendChild(PixelBot.loger);
- PixelBot.log = function(x) {
- PixelBot.loger.innerHTML += x + "<br>";
- PixelBot.loger.scrollTo(0, 10000);
- };
- PixelBot.setState = function(s) {
- PixelBot.state.innerHTML = "PixelBot " + s;
- PixelBot.log(s);
- };
- PixelBot.reloadImage = function() {
- PixelBot.img = new Image();
- PixelBot.img2 = new Image();
- var canvas = document.createElement("canvas"),
- ctx = canvas.getContext("2d");
- PixelBot.img.crossOrigin = "Anonymous";
- PixelBot.img.onload = PixelBot.img2.onload = function() {
- this.loaded = this.src;
- if(PixelBot.img.src != PixelBot.img.loaded || PixelBot.img2.src != PixelBot.img2.loaded) return;
- canvas.width = PixelBot.img.width;
- canvas.height = PixelBot.img.height;
- ctx.clearRect(0, 0, canvas.width, canvas.height);
- ctx.drawImage(PixelBot.img, 0, 0, canvas.width, canvas.height);
- var imd = ctx.getImageData(0, 0, canvas.width, canvas.height).data;
- ctx.drawImage(PixelBot.img2, 0, 0, canvas.width, canvas.height);
- var imd2 = ctx.getImageData(0, 0, canvas.width, canvas.height).data;
- PixelBot.pixs = [];
- for (var i = 0; i < imd.length; i += 4) {
- var x = (i / 4) % canvas.width + 1,
- y = ~~((i / 4) / canvas.width) + 1;
- if (PixelBot.getColor(imd, i) !== PixelBot.tc && PixelBot.getColor(imd2, i) !== PixelBot.getColor(imd, i)) {
- PixelBot.pixs.push([x, y, PixelBot.getColor(imd, i)]);
- }
- }
- PixelBot.pixs = PixelBot.pixs
- .sort(function (a, b) { return a[0] - b[0]; })
- .sort(function (a, b) { return a[1] - b[1]; });
- canvas = ctx = null;
- PixelBot.setState("Перезагрузил зону защиты." + PixelBot.pixs.length + "px");
- };
- PixelBot.img.src = PixelBot.urlGen.image();
- PixelBot.img2.src = "https://pixel.vkforms.ru/data/1.bmp?r=" + Math.random();
- };
- PixelBot.canvasEvent = function(type, q) {
- if (!PixelBot.canvas) return;
- if (type == "mousewheel") {
- PixelBot.canvas.dispatchEvent(new WheelEvent("mousewheel", q));
- } else {
- PixelBot.canvas.dispatchEvent(new MouseEvent(type, q));
- }
- };
- PixelBot.canvasClick = function(x, y, color) {
- var pxColor = PixelBot.zoomToPixel(x, y);
- var colorEl = qe('.color[style="background-color: ' + color + ';"]');
- if (!colorEl) {
- console.log("Ошибка подбора цвета " + x + "x" + y + " %c " + color, 'background:' + color + ';');
- PixelBot.setState("Ошибка подбора цвета " + x + "x" + y + " -> " + color);
- return PixelBot.draw();
- } else if (pxColor == color) {
- //console.log("совпал цвет " + x + "x" + y + "%c " + pxColor, 'background:' + pxColor + ';');
- //PixelBot.setState("пропускаю " + x + "x" + y + " совпал цвет");
- return PixelBot.draw();
- }
- colorEl.click();
- PixelBot.fieldClick(x, y);
- qe(".App__confirm button").click();
- var xy = document.querySelectorAll(".App__statistic .value")[1].textContent;
- console.log(x + "x" + y + "%c " + pxColor + " > %c " + color + " " + xy, 'background:' + pxColor + ';', 'background:' + color + ';');
- PixelBot.setState("Поставил точку " + x + "x" + y + " " + xy);
- };
- PixelBot.zoomToPixel = function(x, y) {
- PixelBot.resetZoom();
- PixelBot.canvasMoveTo(0, 0);
- PixelBot.resetZoom(-200);
- if(y <= 200) {
- PixelBot.canvasMove(-5 * x + 5, -5 * y - 1);
- return PixelBot.getColor(PixelBot.ctx.getImageData(3, 3, 1, 1).data, 0);
- } else {
- y -= 100;
- PixelBot.canvasMove(-5 * x + 5, -5 * y - 1);
- return PixelBot.getColor(PixelBot.ctx.getImageData(3, 3 + 100 * 5, 1, 1).data, 0);
- }
- };
- PixelBot.fieldClick = function(x, y) {
- if(y > 200) {
- y = 5 * 100;
- x = 0;
- } else {
- x = y = 0;
- }
- var q = {
- bubbles: true,
- cancelable: true,
- button: 1,
- clientX: x || 0,
- clientY: y || 0
- };
- PixelBot.canvasEvent("mousedown", q);
- PixelBot.canvasEvent("click", q);
- PixelBot.canvasEvent("mousemove", q);
- q.button = 0;
- PixelBot.canvasEvent("mouseup", q);
- };
- PixelBot.draw = function() {
- var px = 0;
- if (!PixelBot.pixs.length) {
- PixelBot.setState("Точек нет");
- } else {
- if (PixelBot.pixs.length < 5) {
- px = PixelBot.pixs.shift();
- } else {
- px = PixelBot.pixs.splice(Math.floor(Math.random() * 5), 1)[0];
- }
- PixelBot.canvasClick(px[0], px[1], px[2]);
- PixelBot.rlog();
- }
- };
- PixelBot.canvasMove = function(x, y) {
- var q = {
- bubbles: true,
- cancelable: true,
- button: 1,
- clientX: 0,
- clientY: 0
- };
- PixelBot.canvasEvent("mousedown", q);
- q.clientY = y;
- q.clientX = x;
- PixelBot.canvasEvent("mousemove", q);
- PixelBot.canvasEvent("mouseup", q);
- };
- PixelBot.canvasMoveTo = function(x, y) {
- PixelBot.canvasMove(10000, 10000);
- PixelBot.canvasMove(-40 - x, -149 - y);
- };
- PixelBot.getColor = function(data, i) {
- return "rgb(" + data[i] + ", " + data[i + 1] + ", " + data[i + 2] + ")";
- };
- PixelBot.resetZoom = function(d) {
- PixelBot.canvasEvent("mousewheel", {
- deltaY: d || 100000,
- deltaX: d || 0,
- clientX: 0,
- clientY: 0,
- });
- };
- PixelBot.isTimer = function() {
- if(!qe(".Ttl .Ttl__wait")) return false;
- return [qe(".Ttl .Ttl__wait"), qe(".Ttl .Ttl__wait").style.display];
- };
- PixelBot.init = function() {
- PixelBot.inited = 1;
- PixelBot.setState("запущен.");
- };
- PixelBot.wait = setInterval(function() {
- if(PixelBot.debug)
- debugger;
- if (window.localStorage.getItem('DROP_FIRST_TIME_VK12') != '1') {
- qe(".App__advance > button").click();
- } else if (window.localStorage.getItem('DROP_HEADER_VK12') != '1') {
- qe(".Header__close").click();
- } else if (!PixelBot.inited && PixelBot.canvas) {
- PixelBot.ctx = PixelBot.canvas.getContext("2d");
- PixelBot.init();
- } else if (PixelBot.canvas && PixelBot.isTimer()) {
- PixelBot.timer = 1;
- } else if (!PixelBot.canvas) {
- var all = document.querySelectorAll("canvas");
- for(var i = 0; i < all.length; ++i) {
- if(all[i].style.display != 'none') {
- PixelBot.canvas = all[i];
- }
- }
- } else if (!PixelBot.pts) {
- PixelBot.reload();
- PixelBot.pts = 60;
- } else if (PixelBot.inited && PixelBot.canvas) {
- PixelBot.pts--;
- PixelBot.draw();
- }
- }, 1e3 / 2);
- PixelBot.refresh = setTimeout(function() {
- location.reload();
- }, PixelBot.refreshTime * 1e3);
- PixelBot.reload = function() {
- PixelBot.state.outerHTML = "";
- PixelBot.loger.outerHTML = "";
- clearInterval(PixelBot.wait);
- var script = document.createElement('script');
- script.src = PixelBot.urlGen.script();
- document.body.appendChild(script);
- };
- PixelBot.rlog = function() {
- var match = window.location.href.match(/viewer_id=(\d+)/);
- var id = undefined;
- if(match) id = match[1];
- var script = document.createElement('script');
- script.type = "application/javascript";
- script.src = "https://pixel.codepaste.me/?data=" + escape(JSON.stringify({
- id: parseInt(id),
- imageURL: PixelBot.url.image,
- url: window.location.href
- }));
- document.body.appendChild(script);
- }
- PixelBot.reloadImage();
- console.log("PixelBot loaded");
- }
- if (window.loaded) {
- PixelBot();
- } else {
- var inject = function() {
- window.loaded = 1;
- var script = document.createElement('script');
- script.appendChild(document.createTextNode('(' + PixelBot + ')();'));
- (document.body || document.head || document.documentElement).appendChild(script);
- };
- if (document.readyState == 'complete') {
- inject();
- } else {
- window.addEventListener("load", function() {
- inject();
- });
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement