2017-02-14 3 views
0

Donc, je connais les groupes de collisions et les filtres, etc. Mais j'ai besoin d'un moyen sur le serveur pour vérifier si la balle provient du même joueur. Si c'était juste sur le client, ce serait facile parce que je pourrais créer un groupe de collision pour les balles du joueur et un pour les balles ennemies, mais puisque le serveur est celui qui détecte les collisions, il n'y a pas de joueur "client". traité de la même manière, à l'exception des données utilisateur attachées à la balle qui ont un uid.box2d les groupes de collision ne sont pas suffisants pour les puces de leur propre joueur

Donc, fondamentalement, je veux quelque chose comme ça -

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

Je n'ai toujours pas trouvé de solution – joe

Répondre

0

Vous pouvez améliorer votre objet de balle en ajoutant un propriétaire

function bullet(owner){ 
    //Your Bullet properties 
    this.owner = owner; 
} 

Vous créez que la balle d'objet lorsque vous allez l'utiliser , à ce moment-là, vous ajoutez le propriétaire. Dans ce cas, l'uid.

+0

Je comprends cela, mais comment puis-je utiliser cette variable pour l'empêcher de renverser mon lecteur? la balle se reproduit au milieu du joueur – joe