自己模擬遊戲引擎,動手寫個js碰撞檢測外掛

會Coding的猴子發表於2018-05-27

js-collider

js碰撞檢測外掛入口... -> github

專案地址 -> 碼雲

通過繼承ColliderPoint類並實現其中三個方法

    /**
     * 這三個方法是用來讓使用者重寫的
     * onCollisionEnter: 監聽第一次碰撞
     * onCollisionStay: 一直監聽碰撞
     * onCollisionExit: 監聽碰撞退出
     */
    onCollisionEnter() {

    }

    onCollisionStay() {

    }

    onCollisionExit() {

    }
複製程式碼

例如:

   // 繼承ColliderPoint類
  class A extends ColliderPoint {
      // 開始碰撞
      onCollisionEnter() {
          console.log('collisionEnter')
      }
      // 持續碰撞
      onCollisionStay() {
          console.log('collisionStay')
      }
      // 碰撞退出
      onCollisionExit() {
          console.log('collisionExit')
      }
  }
  // 將x、y軸的座標和width和height傳入構造方法得到例項
  let point = new A(100 - offset, 100 - offset, block_w)
複製程式碼

你在修改A的例項point的x、y座標和height、width的時候,它會自動呼叫外掛中的check_collider這個檢查函式,判斷是否碰撞。如是,則並呼叫這三個方法

此外掛今後還會繼續更新,感謝各位的支援

相關文章