게임을 코딩하려고합니다. 나는 물건을 가지고있다. 그것은 뛰어 올라서 움직일 수있다. 점프하면서 '달리기'의 애니메이션을 잡고 싶지만 슬라이딩하면서 이미지를 변경하고 싶습니다. 내 문제 : 이미지가 '슬라이드 7'로 변경되는 경우 이미지가 표시되지 않습니다. 아무 반응이 없습니다. 슬라이드 애니메이션은 실행 애니메이션으로 다시 이동하는 것보다 약 4 초 동안 만 나타나야합니다. 어떤 제안?SpriteKit 변경 스 와이프 제스처 후 이미지
내 코드 :
-(void)Mensch{
SKTexture * MenschTexture1 = [SKTexture textureWithImageNamed:@"Mensch1"];
MenschTexture1.filteringMode = SKTextureFilteringNearest;
SKTexture * MenschTexture2 = [SKTexture textureWithImageNamed:@"Mensch2"];
MenschTexture2.filteringMode = SKTextureFilteringNearest;
SKAction * Run = [SKAction repeatActionForever:[SKAction animateWithTextures:@[MenschTexture1, MenschTexture2] timePerFrame:0.4]];
Mensch = [SKSpriteNode spriteNodeWithTexture:MenschTexture1];
Mensch.size = CGSizeMake(45, 45);
Mensch.position = CGPointMake(self.frame.size.width/5, Boden.position.y + 73);
Mensch.zPosition = 2;
Mensch.physicsBody = [SKPhysicsBody bodyWithRectangleOfSize:Mensch.size];
Mensch.physicsBody.dynamic = YES;
Mensch.physicsBody.allowsRotation = NO;
Mensch.physicsBody.usesPreciseCollisionDetection = YES;
Mensch.physicsBody.restitution = 0;
Mensch.physicsBody.velocity = CGVectorMake(0, 0);
[Mensch runAction:Run];
[self addChild:Mensch];
}
- (void)didMoveToView:(SKView *)view
{
UISwipeGestureRecognizer *recognizerDown = [[UISwipeGestureRecognizer alloc]initWithTarget:self action:@selector(handleSwipeDown:)];
recognizerDown.direction = UISwipeGestureRecognizerDirectionDown;
[[self view] addGestureRecognizer:recognizerDown];
}
-(void)handleSwipeDown:(UISwipeGestureRecognizer *)sender
{
[Mensch removeAllActions];
Mensch = [SKSpriteNode spriteNodeWithImageNamed:@"slide7.png"];
NSLog(@"Slide");
}
감사합니다. 괜찮습니다.하지만 실행 애니메이션으로 다시 들어갈 때까지 약 4 초 동안 새 슬라이드 텍스처를 표시하고 싶습니다. 어떻게 코딩 할 수 있습니까? –
자, displaySlideAnimation 메소드 ('performSelector : @selector (displayRunAnimation)')에 호출을 추가했습니다. – CloakedEddy
정말 고마워요! –