Game Gravity
- Previous Page Game Sounds
- Next Page Game Bounce
In sommige spellen bestaat er een kracht die de spelcomponenten naar een richting trekt, bijvoorbeeld de zwaartekracht trekt objecten naar de grond.
zwaartekracht
Als je deze eigenschap wilt toevoegen aan de constructor van ons component, voeg dan eerst een zwaartekracht
Eigenschap, deze eigenschap stelt de huidige zwaartekracht in. Vervolgens voeg je een gravitySpeed
Eigenschappen, die elke keer toen we het frame bijwerken, worden verhoogd:
Example
function component(width, height, color, x, y, type) { this.type = type; this.width = width; this.height = height; this.x = x; this.y = y; this.speedX = 0; this.speedY = 0; this.gravity = 0.05; this.gravitySpeed = 0; this.update = function() { ctx = myGameArea.context; ctx.fillStyle = color; ctx.fillRect(this.x, this.y, this.width, this.height); } this.newPos = function() { this.gravitySpeed += this.gravity; this.x += this.speedX; this.y += this.speedY + this.gravitySpeed; } }
Aan de onderkant
Om te voorkomen dat de rode blok oneindig valt, moeten we de valstoppen stoppen wanneer hij de onderkant van het speelveld bereikt:
Example
this.newPos = function() { this.gravitySpeed += this.gravity; this.x += this.speedX; this.y += this.speedY + this.gravitySpeed; this.hitBottom(); } this.hitBottom = function() { var rockbottom = myGameArea.canvas.height - this.height; if (this.y > rockbottom) { this.y = rockbottom; } }
Versnelling
In het spel, wanneer er een kracht is die de blok naar beneden trekt, moet je een methode ontwerpen om de component te laten versnellen.
Een functie wordt geactiveerd wanneer iemand op de knop klikt, waardoor de rode blok naar de lucht vliegt:
Example
<script> function accelerate(n) { myGamePiece.gravity = n; } </script> <button onmousedown="accelerate(-0.2)" onmouseup="accelerate(0.1)">Versnelling</button>
A game
Make a game based on what we have learned so far:
Example
Please click the boost button to start the game.
How long can you live? Please use the boost button to stay in the air.
- Previous Page Game Sounds
- Next Page Game Bounce