我在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次然后停止了,这是合乎逻辑的,因为我已经添加了动态,但我希望精灵无限跳跃。 谁能解释我怎么做呢?
提前致谢
答案 0 :(得分:1)
试试这个:
sprite.physicsBody.restitution = 1.0;
如果恢复属性为1.0,它的弹性将达到最大值 - 物理体在弹跳时不会失去任何能量,所以它应该无限期地反弹。