Garis Gravitasi Permainan
- Hal Sebelumnya Suara Permainan
- Hal Berikutnya Luncur Permainan
有些游戏中存在将游戏组件拉向一个方向的力,例如重力将物体拉向地面。
重力
如需将此特性添加到我们的组件构造函数中,请首先添加一个 gravity
属性,该属性设置当前的重力。然后添加一个 gravitySpeed
Properti, yang akan bertambah setiap kali kami mengupdate bingkai:
Contoh
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; } }
Ketika mendarat
Untuk mencegah buah merah jatuh kekal, kita harus menghentikan jatuhnya saat buah merah mencapai dasar area permainan:
Contoh
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; } }
Tingkaskan
Dalam permainan, ketika ada kuasa yang menarik buah merah turun, Anda seharusnya merancang metode untuk memaksa komponen untuk bergerak dengan kecepatan yang tinggi.
Ketika seseorang mengklik tombol, aktifkan fungsi yang mengirimkan buah merah ke udara:
Contoh
<script> function accelerate(n) { myGamePiece.gravity = n; } </script> <button onmousedown="accelerate(-0.2)" onmouseup="accelerate(0.1)">Tingkaskan</button>
Satu permainan
Buat permainan dengan mengikuti pengalaman yang kita pelajari sejauh ini:
Contoh
Klik tombol pelanggar untuk memulai permainan.
Berapa lama anda dapat hidup? Gunakan tombol pelanggar untuk tetap di udara.
- Hal Sebelumnya Suara Permainan
- Hal Berikutnya Luncur Permainan