我正在制作一个游戏,当主要的精灵/玩家不断移动时,他/她需要跳过障碍。
我需要有关如何为我的移动精灵设置恒定速度的帮助。当我尝试在SpriteKit更新功能中执行此操作时,无论何时用户点击屏幕,我都无法应用冲动。
这是我的代码。我评论了我遇到麻烦的地方:
import java.util.Scanner;
public class simple
{
public static void main(String args[]){
double fnum , snum = 0,sum = 0;
Scanner ip = new Scanner(System.in);
System.out.println("enter the number:");
fnum = ip.nextDouble();
do{
System.out.println("enter more numbers:");
snum = ip.nextDouble();
}
while(fnum > 0);
do{
System.out.println("total number is:");
sum = fnum + snum;
}
while(fnum ==0);
}
}
答案 0 :(得分:2)
问题在于您在update
方法中覆盖了速度。因此,即使您添加了一个冲动,它也会立即被update
中的代码覆盖。尝试只覆盖速度的dx
部分。
override func update(currentTime: CFTimeInterval) {
updateSpritePosition()
mainSprite.physicsBody?.velocity = CGVectorMake(400, mainSprite.physicsBody?.velocity.dy)
}