Я разрабатываю игру через Andengine, и я где-то застрял! Проблема заключается в следующем: Это добавление спрайта, где я касаюсь сцены (touchX, touchY), и один спрайт добавляет (touchX + 100, touchY). Эти два спрайта всегда имеют 100px между eact other по оси x. До сих пор я коснулся одного раза и добавил два спрайта на сцену. Затем, когда я хочу переместить один из них (скажем, первый), второй должен двигаться также, чтобы удержать расстояние (100 пикселей) между ними. Мои коды ниже, эти коды добавлены правильно, но только один из них движется, поэтому другой не может постоянно держать дистанцию. Как я могу сделать это правильно?Один спрайт следует за другим
public boolean onSceneTouchEvent(Scene pScene, TouchEvent pSceneTouchEvent) {
if(pSceneTouchEvent.getAction() == MotionEvent.ACTION_DOWN)
{
touchX = pSceneTouchEvent.getX();
touchY = pSceneTouchEvent.getY();
}
if(pSceneTouchEvent.getAction() == MotionEvent.ACTION_UP)
{
}
if (pSceneTouchEvent.getAction() == MotionEvent.ACTION_MOVE){
AnimatedSprite circleBoxE1 = new AnimatedSprite(touchX, touchY, resourcesManager.circleBoxRegion, vbom){
@Override
public boolean onAreaTouched(TouchEvent pTouchEvent, float pTouchAreaLocalX, float pTouchAreaLocalY) {
this.setPosition(pTouchEvent.getX(), pTouchEvent.getY());
return true;
}
};
registerTouchArea(circleBoxE1);
attachChild(circleBoxE1);
setTouchAreaBindingOnActionDownEnabled(true);
AnimatedSprite circleBoxE2 = new AnimatedSprite(touchX, 450 - touchY, resourcesManager.circleBoxRegion, vbom){
@Override
public boolean onAreaTouched(TouchEvent pTouchEvent, float pTouchAreaLocalX, float pTouchAreaLocalY) {
this.setPosition(pTouchEvent.getX() + 100, pTouchEvent.getY());
return true;
}
};
registerTouchArea(circleBoxE2);
attachChild(circleBoxE2);
setTouchAreaBindingOnActionDownEnabled(true);
}