Advertisement
LGPvS

MPP terrium bot

Aug 24th, 2018
799
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.37 KB | None | 0 0
  1. WOPPPallete=[];
  2. defCLR="#000000";
  3. PObj=function(clr){return "<button style='background-color:"+clr+"' onclick='MPP.addons.draw.customColor=`"+clr+"`'><p style='opacity:0'>#</p> <button onclick='removePObject(`"+clr+"`)'>X</button>"; };
  4. addPObj=function(clr){WOPPPallete[PObj(clr)]="clr"; }
  5. removePObj=function(clr){delete WOPPPallete[PObj(clr)]; }
  6. addPObject=function(clr){addPObj(clr); document.getElementById('WOPP-Pallete').innerHTML=Object.keys(WOPPPallete);};
  7. removePObject=function(clr){removePObj(clr); document.getElementById('WOPP-Pallete').innerHTML=Object.keys(WOPPPallete);};
  8. eraseEnable=false;
  9. setInterval(function(){
  10. if(eraseEnable==true){MPP.addons.draw.customColor=MPP.client.channel.settings.color; return true;}
  11. if(eraseEnable==false){MPP.addons.draw.customColor= defCLR; return false;}
  12. },100);
  13.  
  14.  
  15.  
  16. $("body #bottom .relative").append('<div id="WOPPPallete" class="ugly-button 2_btn" style="position: fixed;bottom: 8px;right: 220px;width: 180px;">Палитра/Pallete</div>');
  17. $("body #bottom .relative").append('<div id="WOPPTools" class="ugly-button 2_btn" style="position: fixed;bottom: 8px;right: 450px;width: 180px;">Инструменты/Tools</div>');
  18. $("#WOPPPallete").click(function(){
  19. MPP.client.emit("notification", { title: "Палитра/Pallete", html:"Укажите цвет/Choose color: <input type='color' id='WOPPdrawclr'> <button id='theclrbtn' onclick='addPObject(document.getElementById(`WOPPdrawclr`).value), MPP.addons.draw.customColor=document.getElementById(`WOPPdrawclr`).value, defCLR=document.getElementById(`WOPPdrawclr`).value'>Добавить цвет/Add Color</button></br></input> <p id='WOPP-Pallete'></p>",duration:-1,target:"#WOPPPallete"});
  20. document.getElementById('WOPP-Pallete').innerHTML=Object.keys(WOPPPallete);});
  21. $("#WOPPTools").click(function(){
  22. MPP.client.emit("notification", { title: "Инструменты/Tools", html:"<button onclick='brushSayz = prompt(`Укажите размер кисти/Set brush size`, ``), MPP.addons.draw.brushSize=brushSayz'>Размер кисти/Brush size</button> </br> </br><button onclick='eraseEnable=false'>△</button><br> <button onclick='eraseEnable=true'>⌫</button><br> <button onclick='WOPPUploadImgNotif()'>🏞</button>",duration:-1,target:"#WOPPTools"});});
  23. WOPPUploadImgNotif=function(){MPP.client.emit("notification", { title: "Вставить фото/Paste Image", html:"<input id='imageFile' type='file' onchange='ResizeImage(), ResizeImage()'><input type='button' value='Вставить/Paste' onclick='WOPPread1(document.getElementById(`WOPPTheImg`).src)'/> <img src='#' id='WOPPTheImg'>",duration:-1});};
  24.  
  25. makePX=function(x,y,color){MPP.addons.draw.mkline(x,y,x+1,y,5,color); MPP.addons.draw.mkline(x,y+1,x+1,y+1,5,color);};
  26. function ResizeImage() {
  27.  
  28. var filesToUpload = document.getElementById('imageFile').files;
  29. var file = filesToUpload[0];
  30.  
  31. // Create an image
  32. var img = document.createElement("img");
  33. // Create a file reader
  34. var reader = new FileReader();
  35. // Set the image once loaded into file reader
  36. reader.onload = function(e) {
  37. img.src = e.target.result;
  38.  
  39. var canvas = document.createElement("canvas");
  40. //var canvas = $("<canvas>", {"id":"testing"})[0];
  41. var ctx = canvas.getContext("2d");
  42. ctx.drawImage(img, 0, 0);
  43.  
  44.  
  45.  
  46.  
  47. var height=img.height;
  48. var width=img.width;
  49.  
  50. var MAX_WIDTH = 64;
  51. var MAX_HEIGHT = 64;
  52. if (width > height) {
  53. if (width > MAX_WIDTH) {
  54. height *= MAX_WIDTH / width;
  55. width = MAX_WIDTH;
  56. }
  57. } else {
  58. if (height > MAX_HEIGHT) {
  59. width *= MAX_HEIGHT / height;
  60. height = MAX_HEIGHT;
  61. }
  62. }
  63.  
  64.  
  65.  
  66. canvas.width = width;
  67. canvas.height = height;
  68. var ctx = canvas.getContext("2d");
  69. ctx.drawImage(img, 0, 0, width, height);
  70.  
  71. var dataurl = canvas.toDataURL("image/png");
  72.  
  73. document.getElementById('WOPPTheImg').src=dataurl;
  74. }
  75. // Load files into file reader
  76. reader.readAsDataURL(file);
  77. }
  78.  
  79.  
  80. function WOPPread1(input) {
  81.  
  82.  
  83. function getRandomColor() {
  84. var letters = '0123456789ABCDEF';
  85. var color = '#';
  86. for (var i = 0; i < 6; i++) {
  87. color += letters[Math.floor(Math.random() * 16)];
  88. }
  89. return color;
  90. }
  91.  
  92.  
  93.  
  94. function componentToHex(c) {
  95. var hex = c.toString(16);
  96. return hex.length == 1 ? "0" + hex : hex;
  97. }
  98.  
  99. function rgbToHex(r, g, b) {
  100. return "#" + componentToHex(r) + componentToHex(g) + componentToHex(b);
  101. }
  102.  
  103.  
  104.  
  105. var img = document.createElement("img");
  106. img.src = input;
  107. var width1=img.width
  108. var height1=img.height
  109.  
  110. var canvas = document.createElement('canvas');
  111. canvas.width = img.width;
  112. canvas.height = img.height;
  113. var c = canvas.getContext('2d');
  114. c.drawImage(img, 0, 0, img.width, img.height);
  115.  
  116.  
  117. var pos1 = [128-32,128-32], pos2 = [128+32,128+32];
  118. //var pos1 = [0,0], pos2 = [64,64];
  119.  
  120. var ii=0;
  121. for (let x = pos1[0], xo = 0; x < pos2[0]; x++, xo++)
  122. for (let y = pos1[1], yo = 0; y < pos2[1]; y++, yo++) {
  123. setTimeout(()=>{
  124. var rgb = c.getImageData(xo,yo, 1, 1).data;
  125. makePX(x,y, rgbToHex(rgb[0], rgb[1], rgb[2]));
  126. } ,++ii * 4);
  127. }
  128.  
  129. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement