Я новичок, и я хотел попытаться заставить космический корабль непрерывно снимать, пока программа не остановлена. Однако я не знаю точного или лучшего способа сделать это. Я был бы очень рад, если бы вы могли мне это объяснить. Я запрограммировал все остальные, поэтому отсутствует только сам метод. Спасибо!
package gmbh.hier.mache.ich.was.bullethell;
import android.graphics.Canvas;
import android.view.MotionEvent;
import Engine.Constants;
import Engine.Scene;
import Engine.Sprite;
import static Engine.MainThread.canvas;
/**
* Created by X on 21.03.2018.
*/
public class GameplayScene implements Scene {
Sprite raumschiff;
Sprite bolte;
Sprite shot;
int bewegung = 5;
public GameplayScene() {
setup();
}
@Override
public void setup(){
raumschiff = new Sprite(Constants.CURRENT_CONTEXT,R.drawable.raumschiff,Constants.SCREEN_WIDTH/4,Constants.SCREEN_WIDTH/4,Constants.SCREEN_WIDTH/2, Constants.SCREEN_HEIGHT/2);
bolte = new Sprite(Constants.CURRENT_CONTEXT,R.drawable.bolte,Constants.SCREEN_WIDTH/4, Constants.SCREEN_WIDTH/4,Constants.SCREEN_WIDTH/2, Constants.SCREEN_HEIGHT/3);
shot = new Sprite(Constants.CURRENT_CONTEXT,R.drawable.shot,Constants.SCREEN_WIDTH/7, Constants.SCREEN_HEIGHT/10, raumschiff.getX()-0, raumschiff.getY() -250);
}
@Override
public void update() {
raumschiff.changeY(raumschiff.getY()-0);
shot.changeY(shot.getY()-5);
bolte.changeX(bolte.getX()+ bewegung);
if(bolte.getX() < 1)
{
bewegung = 5;
}
if(bolte.getX() > Constants.SCREEN_WIDTH)
{
bewegung = -5;
}
}
@Override
public void draw(final Canvas canvas) {
canvas.drawARGB(255, 25, 25, 112 );
raumschiff.draw(canvas);
bolte.draw(canvas);
shot.draw(canvas);
}
@Override
public void receiveTouch(MotionEvent event) {
try {
Thread.sleep(35);
} catch (InterruptedException e) {
e.printStackTrace();
}
}
}