2015-12-16 6 views
0

Я делаю простую игру с использованием SriteKit, где мяч просто подпрыгивает вверх и вниз, а когда он падает, вам нужно положить доску под так называемым мячиком, на данный момент я могу положить доску в любом месте на экране, но я хочу установить конкретную ось y, поэтому плата может перемещаться только по оси x. Мой вопрос: что я делаю неправильно и что мне нужно изменить, поэтому он работает, как я хочу? P.S Извините за мой плохой английский.SpriteKit объектив c перемещение узла только по оси x

Вот лил немного моего кода:

-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event { 
    /* Called when a touch begins */ 
    for (UITouch *touch in touches) { 
     CGPoint location = [touch locationInNode:self]; 
     SKSpriteNode *sprite = [SKSpriteNode spriteNodeWithImageNamed:@"board"]; 
     sprite.xScale = 0.5; 
     sprite.yScale = 0.5; 
     sprite.position = location; 
     sprite.physicsBody = [SKPhysicsBody bodyWithRectangleOfSize:sprite.frame.size]; 
     sprite.physicsBody.dynamic = NO; 

     SKAction *delay = [SKAction waitForDuration:2];  
     SKAction *remove = [SKAction removeFromParent];  
     SKAction *actionSequence = [SKAction sequence:@[delay,remove]];  
     [sprite runAction:actionSequence]; 
     [self addChild:sprite]; 
    } 
} 
+0

То, что я вижу здесь, как вы положили спрайт на экран, он ничего не делает, а затем исчезает, это то, что в настоящее время происходит? – Knight0fDragon

+0

@ Knight0fDragon мяч отскакивает на той доске, его как игра в пинг-понг, разница в том, что вам не нужно скользить по палитре пальцем, просто нажмите – artG

+0

yup, я предоставил вам ответ, вы прикасаетесь где-нибудь на x, показывает весло up at touch x location, указанный y location – Knight0fDragon

ответ

0

Что вам нужно будет установить местоположение с помощью оси у

CGPoint touchlocation = [touch locationInNode:self]; 
CGPoint location = CGPointMake(touchlocation.x,100); //where 100 is the spot on the y axis you want to stay on 
Смежные вопросы