Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ios spritekit未开始接触三个对象未工作_Ios_Swift_Sprite Kit_Xcode6 - Fatal编程技术网

Ios spritekit未开始接触三个对象未工作

Ios spritekit未开始接触三个对象未工作,ios,swift,sprite-kit,xcode6,Ios,Swift,Sprite Kit,Xcode6,我正在通过三个节点尝试[didBeginContact]。我是用密码写的。 但它不能正常工作。当白色矩形折叠而不点击黑色或白色矩形时, println(“黑色”)和println(“蓝色”)作品。。。 当白色矩形击中黑色矩形时,打印(“蓝色”)工作 导入SpriteKit 类游戏场景:SKScene,SKPhysicContactDelegate{ 让blackCategory:UInt32=0x11)根据您的联系人处理程序,您应该将类别设置为 let whiteCategory: U

我正在通过三个节点尝试[didBeginContact]。我是用密码写的。 但它不能正常工作。当白色矩形折叠而不点击黑色或白色矩形时, println(“黑色”)和println(“蓝色”)作品。。。 当白色矩形击中黑色矩形时,打印(“蓝色”)工作

导入SpriteKit
类游戏场景:SKScene,SKPhysicContactDelegate{
让blackCategory:UInt32=0x11)根据您的联系人处理程序,您应该将类别设置为

    let whiteCategory:  UInt32 = 0x1 << 0
    let blackCategory:  UInt32 = 0x1 << 1
    let blueCategory:   UInt32 = 0x1 << 2
以上内容应该是

    blueSquare.physicsBody?.categoryBitMask = blueCategory
    blueSquare.physicsBody?.contactTestBitMask = whiteCategory
3) 这里不需要第三个接触体

func didBeginContact(contact: SKPhysicsContact!) {

    var firstBody, secondBody: SKPhysicsBody

    if contact.bodyA.categoryBitMask < contact.bodyB.categoryBitMask {
        firstBody = contact.bodyA
        secondBody = contact.bodyB
    } else {
        firstBody = contact.bodyB
        secondBody = contact.bodyA
    }

    if ((firstBody.categoryBitMask & whiteCategory) != 0 &&
        (secondBody.categoryBitMask & blackCategory != 0)) {
            //secondBody.node?.removeFromParent()
            println("black")
    }


    if ((firstBody.categoryBitMask & whiteCategory != 0) &&
        (secondBody.categoryBitMask & blueCategory != 0)) {
            //secondBody.node?.removeFromParent()
            println("blue")
    }
}
“不工作”不是问题描述
    blueSquare.physicsBody?.categoryBitMask = blueCategory
    blueSquare.physicsBody?.contactTestBitMask = whiteCategory
func didBeginContact(contact: SKPhysicsContact!) {

    var firstBody, secondBody: SKPhysicsBody

    if contact.bodyA.categoryBitMask < contact.bodyB.categoryBitMask {
        firstBody = contact.bodyA
        secondBody = contact.bodyB
    } else {
        firstBody = contact.bodyB
        secondBody = contact.bodyA
    }

    if ((firstBody.categoryBitMask & whiteCategory) != 0 &&
        (secondBody.categoryBitMask & blackCategory != 0)) {
            //secondBody.node?.removeFromParent()
            println("black")
    }


    if ((firstBody.categoryBitMask & whiteCategory != 0) &&
        (secondBody.categoryBitMask & blueCategory != 0)) {
            //secondBody.node?.removeFromParent()
            println("blue")
    }
}
    whiteRectangle.physicsBody?.contactTestBitMask = blackCategory
    whiteRectangle.physicsBody?.contactTestBitMask = blueCategory