Categories: Uncategorized

Breakout- JavaScript Mini Project | 726. Prabal Basnet | Breakout

 

index.html

<!DOCTYPE html>
<html><head><title>BREAKOUT GAME</title>
<style>
canvas {
border: 1px solid black;
display: block;
margin: auto;
}
</style>
</head>
<body>
<canvas id="mycanvas" width="480" height="320"></canvas>
<script>
var canvas= document.getElementById("mycanvas");
var ctx=canvas.getContext("2d");
 var ballRadius = 10;
var x = canvas.width / 2;
var y = canvas.height - 30;
var dx = 2;
var dy = -2;
 var paddleHeight = 10;
var paddleWidth = 75;
var paddleX=(canvas.width - paddleWidth) / 2;
var rightPressed =false;
var leftPressed= false;
document.addEventListener("keydown", keyDownHandler, false);
document.addEventListener("keyup", keyUpHandler, false);

 function keyDownHandler(e){
 if(e.key == "Right" || e.key=="ArrowRight"){
rightPressed= true;
}
else if(e.key == "Left" || e.key=="ArrowLeft"){
leftPressed= true;
}
}
 function keyUpHandler(e){
  if(e.key == "Right"|| e.key=="ArrowRight"){
rightPressed= false;
}
else if(e.key=="Left"|| e.key=="ArrowLeft"){
leftPressed= false;
}
}
function drawBall()
{
ctx.beginPath();
ctx.arc(x , y, ballRadius, 0 ,Math.PI * 2);
ctx.fillStyle="#0095DD";
ctx.fill();
ctx.closePath();
}
function drawPaddle(){
ctx.beginPath();
ctx.rect(paddleX , canvas.height - paddleHeight ,paddleWidth ,paddleHeight);
ctx.fillStyle="#0095DD";
ctx.fill();
ctx.closePath();
}
function draw(){
ctx.clearRect(0,0,canvas.width,canvas.height);
drawBall();
drawPaddle();
                    
       if(x + dx > canvas.width-ballRadius || x + dx < ballRadius){
dx=-dx;
}  if(y + dy< ballRadius){
dy=-dy;
}else if(y + dy > canvas.height - ballRadius){
if(x> paddleX && x < paddleX + paddleWidth){
dy=-dy;
}else{
        document.location.reload();
}
}
if(rightPressed && paddleX < canvas.width - paddleWidth){
       paddleX += 7;
}
    else if(leftPressed && paddleX > 0){
 paddleX -= 7;
}
x += dx;
y += dy;
requestAnimationFrame(draw);
}
draw();
</script>
</body>
</html>

 

jaminrai

Recent Posts

Computer Science Project Report Guidelines and Sample

Guidelines (Click Below to Download) SAMPLE 1 SAMPLE 2

4 months ago

Skype Closes Its Doors After 20 Years: A Look Back and the Apps That Faded with It

After 20 years of transforming global communication, Skype has officially ceased operations. Microsoft, which purchased…

10 months ago

The Duck and the Tortoise: A Tale of Patience and Teamwork

In a serene forest by the edge of a sparkling lake, there lived a cheerful…

11 months ago