Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <html>
- <canvas id="gameCanvas" width="800" height="600"></canvas>
- <script>
- var canvas;
- var canvasContex;
- var ballX = 50;
- var ballY = 50;
- var ballSpeedX = 10;
- var ballSpeedY = 5;
- var paddle1Y = 250;
- var paddle2Y = 250;
- const PADDLE_THICKNESS = 10;
- const PADDLE_HEIGHT = 100;
- function calculateMousePos(evt) {
- var rect = canvas.getBoundingClientRect();
- var root = document.documentElement;
- var mouseX = evt.clientX - rect.left - root.scrollLeft;
- var mouseY = evt.clientY - rect.top - root.scrollTop;
- return {
- x: mouseX,
- y: mouseY
- };
- }
- window.onload = function() {
- canvas = document.getElementById('gameCanvas');
- canvasContext = canvas.getContext('2d');
- var framesPerSecond = 30;
- setInterval(function() {
- drawEverything();
- moveEverything();
- }, 1000 / framesPerSecond);
- canvas.addEventListener('mousemove',
- function(evt) {
- var mousePos = calculateMousePos(evt);
- paddle2Y = mousePos.y - (PADDLE_HEIGHT / 2);
- });
- }
- function ballReset() {
- ballSpeeX = -ballSpeeX;
- ballX = canvas.width / 2;
- ballY = canvas.height / 2;
- }
- function moveEverything() {
- ballX = ballX + ballSpeedX;
- ballY = ballY + ballSpeedY;
- if (ballX < 0) {
- if (ballY > paddle1Y &&
- ballY < paddle1Y + PADDLE_HEIGHT) {
- ballSpeedX = -ballSpeedX;
- } else {
- ballReset();
- }
- if (ballX > canvas.width) {
- ballSpeedX = -ballSpeedX;
- }
- if (ballY < 0) {
- ballSpeedY = -ballSpeedY;
- }
- if (ballY > canvas.height) {
- ballSpeedY = -ballSpeedY;
- }
- }
- } //// <-- add this
- function drawEverything() {
- //next line blanks out the screen
- colorRect(0, 0, canvas.width, canvas.height, 'black');
- //left paddle
- colorRect(0, paddle1Y, PADDLE_THICKNESS, PADDLE_HEIGHT, 'white');
- // this is the right paddle
- colorRect(canvas.width - PADDLE_THICKNESS, paddle2Y, PADDLE_THICKNESS, PADDLE_HEIGHT, 'white');
- //the ball
- colorCircle(ballX, ballY, 10, 'white');
- }
- function colorCircle(centerX, centerY, radius, drawColor) {
- canvasContext.fillStyle = drawColor;
- canvasContext.beginPath();
- canvasContext.arc(centerX, centerY, radius, 0, Math.PI * 2, true);
- canvasContext.fill();
- }
- function colorRect(leftX, topY, width, height, drawColor) {
- canvasContext.fillStyle = drawColor;
- canvasContext.fillRect(leftX, topY, width, height);
- }
- // } //// <-- remove
- </script>
- </html>
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement