Я делаю игру в комплекте Sprite, и у меня есть борьба с обнаружением столкновения между SpriteNodes, Я установил спрайт-узел под названием спрайт и узел спрайтов, называемый платформой. Я хочу, чтобы спрайт прекратил падение, столкнувшись с платформой. Это то, что у меня есть:Как обнаружить столкновение в комплекте спрайтов?
SKSpriteNode *sprite = [SKSpriteNode spriteNodeWithImageNamed:@"bal.png"];
sprite.position = CGPointMake(self.frame.size.width/4 + arc4random() % ((int)self.frame.size.width/2), (self.frame.size.height/2 + arc4random() % ((int)self.frame.size.height/2)));
sprite.color = [self randomColor];
sprite.colorBlendFactor = 1.0;
sprite.xScale = 0.2;
sprite.yScale = 0.2;
[self addChild:sprite];
sprite.physicsBody = [SKPhysicsBody bodyWithCircleOfRadius:sprite.size.width/2];
self.physicsWorld.gravity = CGVectorMake(0.0f, -4.0f);
SKSpriteNode *platform = [SKSpriteNode spriteNodeWithImageNamed:@"YellowPlatform.png"];
platform.position = CGPointMake(CGRectGetMidX(self.frame), -200+CGRectGetMidY(self.frame));
platform.size = CGSizeMake(180, 10);
[self addChild:platform];
Заранее спасибо!
Спасибо за ответ, я понять, что вы пытаетесь сказать, но то, что точная строка кода мне нужно? – Vince
Как сказано, вам нужно установить _physicsBody_ на свою платформу, чтобы вам было что-то вроде: platform.physicsBody = [SKPhysicsBody bodyWithRectangleOfSize: platform.size]; и дополнительно вы должны отключить _dynamics_, чтобы платформа не упала: platform.physicsBody.dynamic = NO; – lahmar
Большое спасибо @lahmar! – Vince