Advertisement
Guest User

Untitled

a guest
Sep 27th, 2019
371
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1.  
  2. <!DOCTYPE html>
  3. <html>
  4. <head>
  5. <meta charset="UTF-8" />
  6.  
  7. <style id="webmakerstyle">
  8.  
  9. </style>
  10. </head>
  11. <body>
  12. <!doctype html>
  13. <html>
  14.   <head>
  15.   <center><header>Life is beautiful</header>
  16.     <title>Sweet</title>
  17.   </center>
  18.     <style>
  19.     </style>
  20.   </head>
  21.   <body>
  22.     <canvas id="dots" style="background:blue"></canvas>
  23.   </body>
  24. </html>
  25.  
  26. <script>
  27. var data = {
  28.   canvas: null,
  29.   ctx: null,
  30.   clickedDot: null,
  31.   dots:[{x: 50, y: 50},{x: 50, y: 100}, {x: 50, y: 150}, {x: 50, y: 200},{x: 100, y: 50},{x: 100, y: 100}, {x: 100, y: 150}, {x: 100, y: 200},{x: 150, y: 50},{x: 150, y: 100}, {x: 150, y: 150}, {x: 150, y: 200},{x: 200, y: 50},{x: 200, y: 100}, {x: 200, y: 150}, {x: 200, y: 200}],
  32.   selected:[],
  33.   beginning:[],
  34.   end:[],
  35.   newGame: true
  36. };
  37.  
  38.  
  39. function circleCollision (c1, c2){
  40.   var a = c1.r * c2.r,
  41.       x = c1.x - c2.x,
  42.       xinv = c1.x + c2.x,
  43.       y = c1.y - c2.y,
  44.       yinv = c1.y + c2.y;
  45.   if ((x <3)&&(x> -15)&&(y< -15)&&(y> -36)) return true;
  46.      
  47.   else return false;      
  48. }
  49.  
  50. function prepCanvas(){
  51.   var res = window.devicePixelRatio || 1,
  52.       scale = 1 / res;
  53.  
  54.   data.canvas = document.getElementById("dots");
  55.  
  56.   data.ctx = data.canvas.getContext("2d");
  57.  
  58.   data.canvas.width = window.innerWidth * res;
  59.  
  60.   data.canvas.height = window.innerHeight * res;
  61.  
  62.   data.canvas.style.width = window.innerWidth + "px";
  63.  
  64.   data.canvas.style.height = window.innerHeight + "px";
  65.  
  66.   data.ctx.scale(res, res);
  67.  
  68.   data.canvas.addEventListener("mousedown", function(e) {
  69.     checkForDot(e);
  70.  
  71.   })
  72. }
  73.  
  74. function drawDots(){
  75.   var i = 0;
  76.   for(;i<data.dots.length; i++){
  77.     var d = data.dots[i];
  78.     data.ctx.beginPath();
  79.     data.ctx.arc(d.x, d.y, 10, 0, 2*Math.PI);
  80.     data.ctx.fillStyle = "#777";
  81.     data.ctx.fill();
  82.     data.ctx.closePath();
  83.   }
  84. }
  85.  
  86. function drawLine (toDot){
  87.   data.ctx.beginPath();
  88.   data.ctx.moveTo(data.clickedDot.x, data.clickedDot.y);
  89.   data.ctx.lineTo(toDot.x, toDot.y);
  90.   data.ctx.lineWidth = 5;
  91.   data.ctx.strokeStyle = "#777";
  92.   data.ctx.stroke();
  93.   data.ctx.closePath();
  94. }
  95.  
  96. function checkForDot(e){
  97.   var i = 0, col = null;
  98.   for(;i<data.dots.length; i++){
  99.     var d = data.dots[i],
  100.         c1 = {x: d.x, y: d.y, r: 10},
  101.         c2 = {x: e.pageX, y: e.pageY, r: 10};
  102.     if (circleCollision(c1, c2)) {
  103.       col = d;
  104.      
  105.     }
  106.   }
  107.   if (col !== null){
  108.    
  109.     if((data.clickedDot !== null)&&(data.clickedDot.x-col.x > -51)&&(col.x - data.clickedDot.x > - 51)&&(data.clickedDot.y-col.y > -51)&&(col.y - data.clickedDot.y > -51)) {
  110.      
  111.       if(data.newGame == false){
  112.        
  113.         if((data.clickedDot.x != data.beginning.x)||(data.clickedDot.y != data.beginning.y)&&(data.clickedDot.x != data.end.x)||(data.clickedDot.y != data.end.y)){
  114.          
  115.           alert(data.beginning.y == data.clickedDot.y);
  116.           alert(data.clickedDot.x + " " + data.clickedDot.y);
  117.         }
  118.  
  119.         else if((data.clickedDot.x == data.beginning.x)||(data.clickedDot.y == data.beginning.y)){
  120.           data.beginning = col
  121.           alert("You've got this." + col.x + " " + col.y);
  122.         }
  123.         else if((data.clickedDot.x == data.end.x)||(data.clickedDot.y == data.end.y)){
  124.           data.end = col
  125.           alert(String("ok") + col.x);
  126.         }
  127.       }
  128.      
  129.       if(data.newGame == true){
  130.        
  131.         data.newGame = false;
  132.        
  133.         data.beginning = col;
  134.        
  135.         data.end = data.clickedDot;
  136.        
  137.       }
  138.      
  139.       for(i=0;i<data.selected.length;i++){
  140.        
  141.         if((data.selected[i].y == col.y)&&(data.selected[i].x == col.x))
  142.           alert("ahah");
  143.        
  144.       }
  145.       data.selected[data.selected.length] = col;
  146.       data.selected[data.selected.length] = data.clickedDot;
  147.      
  148.       drawLine(col);
  149.       col = null;
  150.       data.clickedDot = null;
  151.      
  152.     }
  153.     else{
  154.       if(data.clickedDot != null){
  155.         alert("Too far away.");
  156.         col = null;
  157.         data.clickedDot = null;
  158.       }
  159.  
  160.  
  161.      
  162.  
  163.     }
  164.     data.clickedDot = col;
  165.   }
  166.   else {
  167.     col = null;
  168.   }
  169. }
  170.  
  171. prepCanvas();
  172. drawDots();
  173. //# sourceURL=userscript.js
  174. </script>
  175. </body>
  176. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement