当我触摸按钮时,我试图将我的SKSpriteNode向左倾斜,但似乎由于重力导致SKAction卡住。
我的目标是制作这样的东西(用Paint制作,而不是模拟器):
1:由于重力,玩家在平台上。
2:玩家在触摸时会向左倾斜。
3 :(不在图像中)播放器恢复为1.
到目前为止我的代码:
-(void)didMoveToView:(SKView *)view {
player = (SKSpriteNode *)[self childNodeWithName:@"player"];
tiltLeftButton = (SKSpriteNode *)[self childNodeWithName:@"tiltLeftButton"];
SKAction *tiltLeft = [SKAction rotateByAngle:2 duration:1];
tiltLeftForever = [SKAction repeatActionForever:tiltLeft];
}
-(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
if ([touchedNode.name isEqualToString:@"tiltLeftButton"]) {
[player runAction:tiltLeftForever withKey:@"tiltLeft"];
}
}
-(void)touchesEnded:(NSSet<UITouch *> *)touches withEvent:(UIEvent *)event {
if ([touchedNode.name isEqualToString:@"tiltLeftButton"]) {
[player removeActionForKey:@"tiltLeft"];
}
}
有什么建议吗?
(我需要物理世界。)
(我也想实现一个倾斜右键。目标-c中的代码请。)