SpriteKit是一种了解2个物理体何时不再接触的方法

时间:2015-04-19 14:07:41

标签: ios sprite-kit

我有2个物理团体,一个玩家和一个架子。

我正在使用- (void)didbeginContact... 要知道玩家何时开始触碰架子。

然而,我还需要知道玩家什么时候不再接触架子。

我正在查看文档,但我无法找到任何内容

我找到了- (void)didEndContact .. 但是,当我开始触摸架子时触发它并不是我需要的:(

无论如何直接从物理机构了解它 或者我是否必须找到其他方式来了解它?

我怎样才能使用精灵套件?

结束了联系

- (void)didEndContact:(SKPhysicsContact *)contact   
{
    //End contact with the shelf!
    if ((contact.bodyA.categoryBitMask == SHELF_BIT_MASK_CATEGORY && contact.bodyB.categoryBitMask == JULIE_BIT_MASK_CATEGORY )|| (contact.bodyB.categoryBitMask == SHELF_BIT_MASK_CATEGORY && contact.bodyA.categoryBitMask == JULIE_BIT_MASK_CATEGORY))
    {

           NSLog(@"No more contact"); //But there is :(

    }
}

玩家节点PhysicsBody属性初始化

    self.physicsBody.dynamic = YES;
    self.physicsBody.affectedByGravity = YES;
    self.physicsBody.allowsRotation = NO;
    self.physicsBody.usesPreciseCollisionDetection = YES;
    self.physicsBody.mass = 10;

    self.physicsBody.categoryBitMask = JULIE_BIT_MASK_CATEGORY;
    self.physicsBody.contactTestBitMask = SHELF_BIT_MASK_CATEGORY;
    self.physicsBody.collisionBitMask = SHELF_BIT_MASK_CATEGORY;

Shelf节点PhysicsBody属性

         self.physicsBody = [SKPhysicsBody bodyWithRectangleOfSize:self.size];
        self.physicsBody.mass = 100;
        self.physicsBody.dynamic = NO;
        self.physicsBody.affectedByGravity = NO;
        self.physicsBody.usesPreciseCollisionDetection = YES;
        self.physicsBody.categoryBitMask = SHELF_BIT_MASK_CATEGORY;

x_BIT_MASK_CATEGORY是定义

0 个答案:

没有答案