Spritekit跳跃物理

时间:2014-02-22 19:32:15

标签: ios objective-c sprite-kit game-physics

我在IOS / spritekit中工作,我有一个旋转的精灵。旋转工作正常,但另外我想要精灵跳跃。因此,我添加了动态和恢复原状我的精灵身体:

SKSpriteNode *sprite = [SKSpriteNode spriteNodeWithImageNamed:@"bigball"];
    sprite.position = location;
    sprite.physicsBody = [SKPhysicsBody bodyWithCircleOfRadius:sprite.size.width/2];
    sprite.physicsBody.dynamic = YES;
    sprite.physicsBody.restitution = 0.7;
    SKAction *action = [SKAction rotateByAngle:M_PI duration:1];
    [sprite runAction:[SKAction repeatActionForever:action]];

这也有效,但精灵只跳了2次然后停止了,这是合乎逻辑的,因为我已经添加了动态,但我希望精灵无限跳跃。 谁能解释我怎么做呢?

提前致谢

1 个答案:

答案 0 :(得分:1)

试试这个:

sprite.physicsBody.restitution = 1.0;

如果恢复属性为1.0,它的弹性将达到最大值 - 物理体在弹跳时不会失去任何能量,所以它应该无限期地反弹。