Advertisement
Guest User

Untitled

a guest
Jan 23rd, 2018
59
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4.     <meta charset="utf-8" />
  5.     <title>Brick destructor</title>
  6.     <style type="text/css">
  7.         * { padding: 0; margin: 0; }
  8.         canvas { background: 'black'; display: block; margin: 0 auto; }
  9.     </style>
  10.     <script>
  11.         function myBallDraw() {
  12.           var canvas=document.getElementById("tutorial");
  13.           var ctx = canvas.getContext("2d");
  14.           var ballRadius=10;
  15.           //to move
  16.  
  17.           var x=canvas.width/2;
  18.           var y=canvas.height-30;
  19.           var dx=2;
  20.           var dy=-2;
  21.           var paddleHeight=10;
  22.           var paddleWidth=75;
  23.           var paddleX=(canvas.width-paddleWidth)/2;
  24.           var rightPressed= false;
  25.           var leftPressed=false;
  26.           var brickRowCount = 3;
  27.           var brickColumnCount = 5;
  28.           var brickWidth = 75;
  29.           var brickHeight = 20;
  30.           var brickPadding = 10;
  31.           var brickOffsetTop = 30;
  32.           var brickOffsetLeft = 30;
  33.           document.addEventListener("keydown",keyDownHandler,false);
  34.           document.addEventListener("keyup",keyUpHandler,false);
  35.  
  36.           var bricks = [];
  37.           for(c=0; c<brickColumnCount; c++) {
  38.             bricks[c] = [];
  39.             for(r=0; r<brickRowCount; r++) {
  40.                  bricks[c][r] = { x: 0, y: 0, status: 1 };
  41.             }
  42.           }
  43.  
  44.           function keyDownHandler(e){
  45.           if(e.keyCode==39){
  46.  
  47.             rightPressed=true;
  48.  
  49.             }
  50.             else if(e.keyCode==37){
  51.  
  52.             leftPressed=true;
  53.  
  54.             }
  55.  
  56.           }
  57.  
  58.           function keyUpHandler(e){
  59.  
  60.           if(e.keyCode==39){
  61.  
  62.             rightPressed=false;
  63.           }
  64.           else if(e.keyCode==37){
  65.  
  66.             leftPressed=false;
  67.  
  68.             }
  69.           }
  70.  
  71.           function drawBall(){
  72.           ctx.beginPath();
  73.           ctx.arc(x,y,ballRadius,0,2*Math.PI);
  74.           ctx.fillstyle="#0033FF";
  75.           ctx.fillStroke="#0033FF";
  76.           ctx.Stroke="10"
  77.           ctx.fill();
  78.           ctx.closePath();
  79.           }
  80.  
  81.           function drawPaddle(){
  82.           ctx.beginPath();
  83.           ctx.rect(paddleX,canvas.height-paddleHeight,paddleWidth,paddleHeight);
  84.           ctx.fillstyle="#0095DD";
  85.           ctx.fill();
  86.           ctx.closePath();
  87.           }
  88.           function drawBricks() {
  89.             for(c=0; c<brickColumnCount; c++) {
  90.                 for(r=0; r<brickRowCount; r++) {
  91.                     if(bricks[c][r].status == 1) {
  92.                         var brickX = (c*(brickWidth+brickPadding))+brickOffsetLeft;
  93.                         var brickY = (r*(brickHeight+brickPadding))+brickOffsetTop;
  94.                         bricks[c][r].x = brickX;
  95.                         bricks[c][r].y = brickY;
  96.                         ctx.beginPath();
  97.                         ctx.rect(brickX, brickY, brickWidth, brickHeight);
  98.                         ctx.fillStyle = "#0095DD";
  99.                         ctx.fill();
  100.                         ctx.closePath();
  101.                     }
  102.                 }
  103.             }
  104.           }
  105.  
  106.           function collisionDetection() {
  107.             for(c=0; c<brickColumnCount; c++) {
  108.                 for(r=0; r<brickRowCount; r++) {
  109.                     var b = bricks[c][r];
  110.                     if(b.status == 1) {
  111.                         if(x > b.x && x < b.x+brickWidth && y > b.y && y < b.y+brickHeight) {
  112.                             dy = -dy;
  113.                             b.status = 0;
  114.                         }
  115.                     }
  116.                 }
  117.             }
  118.           }
  119.  
  120.  
  121.           function draw(){
  122.           ctx.clearRect(0,0,canvas.width,canvas.height);
  123.           drawBricks();
  124.           drawBall();
  125.           drawPaddle();
  126.           collisionDetection();
  127.           if(x + dx > canvas.width-ballRadius || x + dx < ballRadius) {
  128.                 dx = -dx;
  129.             }
  130.             if(y + dy < ballRadius) {
  131.                 dy = -dy;
  132.             }
  133.             else if(y + dy > canvas.height-ballRadius) {
  134.                 if(x > paddleX && x < paddleX + paddleWidth) {
  135.                if(y= y-paddleHeight){
  136.                     dy = -dy  ;
  137.                }
  138.                 }
  139.                 else {
  140.                     alert("GAME OVER");
  141.                     document.location.reload();
  142.                 }
  143.             }
  144.           if(rightPressed && paddleX<canvas.width-paddleWidth){
  145.  
  146.             paddleX+=7;
  147.             }
  148.            else if(leftPressed && paddleX>0 ){
  149.              paddleX-=7;
  150.  
  151.              }
  152.  
  153.              x=x+dx;
  154.                y=y+dy;
  155.           }
  156.  
  157.           setInterval(draw,10);
  158.  
  159.         }
  160.         myBallDraw();
  161.     </script>
  162.  
  163. </head>
  164. <body onload="myBallDraw()">
  165.  
  166.     <canvas id="tutorial" width="800" height="600"></canvas>
  167.  
  168.  
  169. </body>
  170. </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement