box2d碰撞组是不足以从自己的球员子弹
问题描述:
所以我知道碰撞组和过滤器等,但我需要在服务器上的方式来检查子弹是否来自同一个球员。如果这只是在客户端上,那很容易,因为我可以为玩家自己的子弹创建一个碰撞组,而为敌人子弹创建一个碰撞组,但由于服务器是检测碰撞的那个,所以没有“客户端”玩家,每个玩家和子弹都是处理相同,除了附加到子弹的用户数据有一个uid。box2d碰撞组是不足以从自己的球员子弹
所以基本上我想是这样的 -
if(collisionA.m_userData.type == "projectile"){
if(collisionA.m_userData.uid === collisionB.m_userData.uid){
dontApplyCollisionOrPhysics()
}
}
答
你可以通过添加一个业主
function bullet(owner){
//Your Bullet properties
this.owner = owner;
}
提高你的子弹物体
您只需创建,当你要使用它的对象子弹所以在那一刻你添加了所有者。在这种情况下,uid。
+0
我明白了,但是如何使用该变量来阻止它回击我的玩家?子弹在玩家中间产生 – joe
还没有找到解决方案 – joe