From 8a8353b64524790d633ba97e6f23617f15138dab Mon Sep 17 00:00:00 2001 From: sam Date: Tue, 28 Nov 2023 13:18:36 +0100 Subject: [PATCH] Updated webdev --- webdev/game.js | 18 ++++++++++++++++- webdev/index.html | 2 ++ webdev/js/basicbullet.js | 42 ++++++++++++++++++++++++++++++++++++++++ 3 files changed, 61 insertions(+), 1 deletion(-) create mode 100644 webdev/js/basicbullet.js diff --git a/webdev/game.js b/webdev/game.js index 87320f5..4cf1b11 100644 --- a/webdev/game.js +++ b/webdev/game.js @@ -70,7 +70,9 @@ async function disconnect() { let Playerposx = 500; let Playerposy = 300; - +let bullets = []; +let myBullet = new bullet(); +let playerSpeed = 5; async function Movementloop() { @@ -83,6 +85,20 @@ if (booleanArray[2]) { if (booleanArray[0]) { Playerposy -= 2;} } +function keyPressed() { + if (keyIsDown(LEFT_ARROW) && playerPosX > 0 + radius) { + playerPosX -= playerSpeed; + } + if (keyIsDown(RIGHT_ARROW) && playerPosX < width - radius) { + playerPosX += playerSpeed; + } + if (keyIsDown(UP_ARROW) && playerPosY > 0 + radius) { + playerPosY -= playerSpeed; + } + if (keyIsDown(DOWN_ARROW) && playerPosY < height - radius) { + playerPosY += playerSpeed; + } +} // the function setup() is called once when the page is loaded diff --git a/webdev/index.html b/webdev/index.html index 8315834..c2f686e 100644 --- a/webdev/index.html +++ b/webdev/index.html @@ -8,6 +8,8 @@ + + diff --git a/webdev/js/basicbullet.js b/webdev/js/basicbullet.js new file mode 100644 index 0000000..e747d8f --- /dev/null +++ b/webdev/js/basicbullet.js @@ -0,0 +1,42 @@ +class bullet { + //Een constructor voert eerst de code uit die er in staat voordat de rest van de class wordt uitgevoerd. + constructor(targetx, targety, radius, speed) { + //"This" moet gebruikt worden om de variabelen aan te maken in de class en het zorgt er voor dat de variabelen niet alleen in de constructor gebruikt kunnen worden, + //maar ook in de rest van de class + this.x = targetx; + this.y = targety; + this.radius = radius; + this.speed = speed; + + // Set the initial position of the projectile to the player's position + let projectile = createVector(shotPosX, shotPosY); + x = directionX; + y = directionY; + + // Calculate the initial direction + direction = createVector(targetX - projectile.x, targetY - projectile.y); + direction.normalize(); + +} + + + + +draw() { + //push en pop zorgen er voor dat de code tussen push en pop een eigen canvas heeft. Dus dat er meerdere projectielen tegelijk kunnen zijn. + fill(255, 0, 0); + circle(500, 500, 5); + projectile.add(p5.Vector.mult(direction, shotSpeed)); + if (dist(projectile.x, projectile.y, directionX, directionY) <= radius) { + hit = true; + } + else if (projectile.x < 0 - 10 || projectile.x > width + 10 || projectile.y < 0 - 10 || projectile.y > height + 10) { + bounceX = projectile.x; + bounceY = projectile.y; + shot = false; + } + +} + + +} \ No newline at end of file