풍선과 함께 게임을했습니다. 나는 풍선을 하단에서 추가하고 그들은 화면을 벗어날 수있는 동안 비행. 나는 풍선 물리학을 부여했습니다 .Bodys는 서로 충돌하지만 화면의 왼쪽과 오른쪽 가장자리의 풍선을 만들고 싶습니다. Sprite 객체가 Rays 사이트의 모든 화면에서 튀어 나오는 해결책을 발견했습니다. 그러나 나는 다른 해결책이 필요하다. 이 내 풍선 코드 :물리를 가진 스프라이트를 만드는 방법 충돌시 움직일 수 없거나 정적일까요?
MBDBallon *randomBallon = [[MBDBallon alloc] initWithImageName:balloonImageName
andBallonSize:ballonSize
withBallonImageName:[self.balloonColorImageNamesArray objectAtIndex:balloonWithColorIndex]
withStartingPosition:CGPointMake(self.viewSize.width/2, - self.viewSize.height)];
//randomBallon.name = [self returnRandomImageNameFromArray:self.ballonSpriteImageNamesArray];
randomBallon.physicsBody.usesPreciseCollisionDetection = YES;
randomBallon.physicsBody.categoryBitMask = balloonCategory;
randomBallon.physicsBody.collisionBitMask = balloonCategory;
randomBallon.physicsBody.contactTestBitMask = balloonCategory;
이 내 왼쪽 벽 코드 :
SKSpriteNode *leftWall = [[SKSpriteNode alloc] initWithColor:[UIColor redColor] size:CGSizeMake(self.viewSize.width/15, self.viewSize.height * 3)];
[leftWall setAnchorPoint:CGPointMake(0.0f, 0.0f)];
leftWall.position = CGPointMake(self.viewSize.width/15 , 0.0f);
leftWall.physicsBody = [SKPhysicsBody bodyWithRectangleOfSize:CGSizeMake(self.viewSize.width/15, self.viewSize.height * 3)];
leftWall.physicsBody.categoryBitMask = balloonCategory;
leftWall.physicsBody.collisionBitMask = balloonCategory;
leftWall.physicsBody.contactTestBitMask = balloonCategory;
leftWall.physicsBody.usesPreciseCollisionDetection = YES;
leftWall.physicsBody.allowsRotation = NO;
leftWall.physicsBody.dynamic = NO;
leftWall.physicsBody.friction = 0.0f;
[self addChild:leftWall];
벽이 일부 몇 풍선 충돌 후 이동하지만. 나는 그런 행동을 멈추기 위해 캐치 (catch) 나 재산을 정말로 모릅니다. :
leftWall.physicsBody.dynamic = NO;
모든 움직임을 중지해야하지만하지 말아야합니다. 도와주세요, 고마워. :).
iOS 8.1 (기기) 및 iOS 8.1.7.1 시뮬레이터에서 작동합니다. 좋고 간단한 설명. 타이 :) –