Sprite Kit碰撞-在发生碰撞的实例上执行实例方法

凯尔·戈斯兰(Kyle Goslan)

我在场景中添加了一个类实例的负载,并检测了它们与另一个对象之间的冲突。

全部设置并工作

if ((firstBody.categoryBitMask & ballCategory) != 0 && (secondBody.categoryBitMask & objectCategory) != 0) {
    NSLog(@"Hit");
}

每当发生碰撞时,都要获取“命中”日志。

现在如何在这些对象之一上执行实例方法?

仅供参考,这是我添加的对象之一。

    Ball *ball = [[Ball alloc]init];
    ball.position = CGPointMake(spawnPoint.x + arc4random() % 5, spawnPoint.y);
    ball.physicsBody = [SKPhysicsBody bodyWithCircleOfRadius:5];
    ball.physicsBody.dynamic = YES;
    ball.physicsBody.mass = 10;
    ball.name = @"ball";
    ball.physicsBody.categoryBitMask = ballCategory;
    ball.physicsBody.contactTestBitMask = targetCategory | ballCategory;
    ball.physicsBody.collisionBitMask = targetCategory | ballCategory | objectCategory;
    [self addChild:ball];
安德烈·戈尔捷夫(Andrey Gordeev)

很简单:

if ((firstBody.categoryBitMask & ballCategory) != 0 && 
     (secondBody.categoryBitMask & objectCategory) != 0) {
     NSLog(@"Hit");
     Ball *ball = (Ball*)firstBody.node;
     [ball someMethod];
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

在Sprite Kit中检测碰撞

来自分类Dev

Sprite Kit碰撞,无动态

来自分类Dev

Sprite Kit碰撞错误-Swift

来自分类Dev

Sprite Kit中的简单碰撞

来自分类Dev

在Sprite Kit中检测碰撞

来自分类Dev

Sprite Kit碰撞错误-Swift

来自分类Dev

Sprite Kit,移除Sprite进行碰撞

来自分类Dev

Sprite Kit与子Sprite的碰撞检测

来自分类Dev

Sprite Kit与子Sprite的碰撞检测

来自分类Dev

Sprite Kit碰撞发生在Sprite外部几个点

来自分类Dev

Sprite Kit碰撞发生在Sprite外部几个点

来自分类Dev

Sprite Kit在碰撞时获得零值

来自分类Dev

Sprite Kit是否检测到碰撞?

来自分类Dev

Sprite Kit碰撞而不会弹跳

来自分类Dev

Sprite Kit在碰撞时获得零值

来自分类Dev

Sprite Kit中的碰撞检测未检测到碰撞

来自分类Dev

如何在Sprite Kit中检测到碰撞?

来自分类Dev

使用Swift在Sprite Kit中进行碰撞检测

来自分类Dev

如何在Sprite Kit中检测到碰撞?

来自分类Dev

为什么会有多个碰撞调用Sprite Kit Swift

来自分类Dev

如果2个Sprite碰撞在Sprite Kit中,该如何执行动作?

来自分类Dev

Sprite Kit-iOS 7.1更新后,对象因缩放而发生碰撞

来自分类Dev

Sprite Kit(iOS7)是否具有像素完美碰撞检测功能?

来自分类Dev

Python Sprite碰撞检测

来自分类Dev

Sprite Kit,使多个Sprite遵循相同的方法

来自分类Dev

在SpriteKit中弹跳时检测Sprite碰撞

来自分类Dev

碰撞不适用于pygame Sprite

来自分类Dev

Sprite套件可实现精确的碰撞错误

来自分类Dev

与pygame.sprite.spritecollide()的敌人碰撞