Trượt game

cái khối đỏ này sẽ bounces lên khi chạm đất:


bounced

chức năng khác mà chúng ta sẽ thêm là bounce thuộc tính.

bounce thuộc tính chỉ ra khi trọng lực làm cho thành phần rơi xuống đất, thành phần có反弹 hay không.

bounce giá trị thuộc tính phải là số. 0 có nghĩa là không反弹, 1 sẽ làm cho thành phần反弹回下降的起点.

thực thể

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.1;
  this.gravitySpeed = 0;
  this.bounce = 0.6;
  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;
    this.hitBottom();
  }
  this.hitBottom = function() {
    var rockbottom = this.gamearea.canvas.height - this.height;
    if (this.y > rockbottom) {
      this.y = rockbottom;
      this.gravitySpeed = -(this.gravitySpeed * this.bounce);
    }
  }
}

Thử ngay