Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Object 对象数组定位LibGdx_Object_Libgdx - Fatal编程技术网

Object 对象数组定位LibGdx

Object 对象数组定位LibGdx,object,libgdx,Object,Libgdx,在我的游戏中,如果我触摸到一个特定的物体,硬币物体将以随机的速度从中出来并占据随机的位置 public void update(delta){ if(isTouched()&& getY()<Constants.WORLD_HEIGHT/2){ setY(getY()+(randomSpeed * delta)); setX(getX()-(randomSpeed/4 * delta)); } } 公共无效更新(增

在我的游戏中,如果我触摸到一个特定的物体,硬币物体将以随机的速度从中出来并占据随机的位置

public void update(delta){
if(isTouched()&& getY()<Constants.WORLD_HEIGHT/2){
         setY(getY()+(randomSpeed * delta));
         setX(getX()-(randomSpeed/4 * delta));
         }
  }
公共无效更新(增量){

if(isTouched()&&getY()在我的游戏中,当我想让某个物体在X,Y处达到某个特定的坐标Xe,Ye,在每一帧,我加上它的坐标,当前位置和想要的位置之间的差值,除以常数,再乘以从上一帧经过的时间。这样,它开始快速移动,并且随着它越来越近慢慢移动,看起来有点酷

X += ((Xe - X)* dt)/ CONST;
Y += ((Ye - Y)* dt)/ CONST;
你会在实验中得到常数值,较大的值意味着较慢的运动。如果你想让它看起来更酷,你可以添加速度变量,而不是根据距离终点位置的距离直接改变坐标,你可以调整该速度。这样,即使物体在某个点到达终点位置,它仍然会有一些速度速度,它会继续运动——它会有惯性。实现起来有点复杂,但运动会更疯狂

如果你想让Xe成为某个特定的位置(不是随机的),那么只需设置这些常量值。无需使其变得更复杂。像另一个常量偏移一样设置:

static final int OFFSET = 100;

Xe1 = X - OFFSET; // for first coin
Ye1 = Y - OFFSET;

Xe2 = X + OFFSET; // for second coin
Ye2 = Y - OFFSET;

...
static final int OFFSET = 100;

Xe1 = X - OFFSET; // for first coin
Ye1 = Y - OFFSET;

Xe2 = X + OFFSET; // for second coin
Ye2 = Y - OFFSET;

...