Gravità di gioco
- Pagina precedente Suono di gioco
- Pagina successiva Rimbalzo di gioco
In alcuni giochi esiste una forza che spinge i componenti del gioco in una direzione, ad esempio la gravità che spinge gli oggetti verso il suolo.
gravità
Se desideri aggiungere questa proprietà alla funzione costruttore del nostro componente, aggiungi prima un gravity
Proprietà, che imposta la gravità attuale. Poi aggiungi un gravitySpeed
Proprietà, che aumentano ogni volta che aggiorniamo il frame:
Esempio
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; } }
Atterraggio
Per prevenire che il quadrato rosso cada per sempre, dobbiamo fermare la caduta quando raggiunge il fondo dell'area di gioco:
Esempio
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; } }
Accelerazione
Nel gioco, quando una forza tira giù il quadrato, dovresti progettare un metodo per costringere il componente a accelerare.
Quando qualcuno clicca sul pulsante, viene attivata una funzione che fa volare il quadrato rosso nel cielo:
Esempio
<script> function accelerate(n) { myGamePiece.gravity = n; } </script> <button onmousedown="accelerate(-0.2)" onmouseup="accelerate(0.1)">Accelerazione</button>
Un gioco
Crea un gioco basandoti su ciò che abbiamo appreso finora:
Esempio
Clicca sul pulsante di accelerazione per iniziare il gioco.
Quanto puoi vivere? Usa il pulsante di accelerazione per rimanere in aria.
- Pagina precedente Suono di gioco
- Pagina successiva Rimbalzo di gioco