2017-02-14 59 views
0

所以我知道碰撞組和過濾器等,但我需要在服務器上的方式來檢查子彈是否來自同一個球員。如果這只是在客戶端上,那很容易,因爲我可以爲玩家自己的子彈創建一個碰撞組,而爲敵人子彈創建一個碰撞組,但由於服務器是檢測碰撞的那個,所以沒有「客戶端」玩家,每個玩家和子彈都是處理相同,除了附加到子彈的用戶數據有一個uid。box2d碰撞組是不足以從自己的球員子彈

所以基本上我想是這樣的 -

if(collisionA.m_userData.type == "projectile"){ 
      if(collisionA.m_userData.uid === collisionB.m_userData.uid){ 
       dontApplyCollisionOrPhysics() 
      } 
     } 
+0

還沒有找到解決方案 – joe

回答

0

你可以通過添加一個業主

function bullet(owner){ 
    //Your Bullet properties 
    this.owner = owner; 
} 
提高你的子彈物體

您只需創建,當你要使用它的對象子彈所以在那一刻你添加了所有者。在這種情況下,uid。

+0

我明白了,但是如何使用該變量來阻止它回擊我的玩家?子彈在玩家中間產生 – joe