Wie ein Bild zu machen, bewegen Sie sich von Links nach rechts in Java
bisher erstellt habe ich die folgende Klasse, aber jetzt würde ich gerne einen code einfügen, um das Bild schieben von Links nach rechts und von rechts nach Links. Ich würde normalerweise verwenden Sie die Schiebe-Plattform, aber es funktioniert nicht wenn ich versuche es zu implementieren. Ich bin noch ein Anfänger in java, so bin ich dankbar für Ihre Hilfe.
Dies ist der code von meinem Java-Klasse:
package game;
import city.soi.platform.*;
public class Enemy extends Body implements CollisionListener{
private Game game ;
public Enemy(Game g){
super(g.getWorld(), new PolygonShape(-27.0f,25.0f, -27.0f,-24.0f, 25.0f,-24.0f, 26.0f,25.0f, -27.0f,25.0f));
setImage(new BodyImage("images/enemy.png"));
g.getWorld().addCollisionListener(this);
game = g;
}
public void collide(CollisionEvent e) {
if (e.getOtherBody() == game.getPlayer()){
game.getPlayer().subtractFromScore(75);
System.out.println("You have just lossed 75 Points! Current Score = " + game.getPlayer().getScore());
this.destroy();
}
}
}
Nur klar zu sein, möchte ich alle, die ich gehören dieser Klasse auf einer Plattform bewegt sich von Links nach rechts.
Vielen Dank,
Moe
Du musst angemeldet sein, um einen Kommentar abzugeben.
Diese hängt viel von dem, was Sie den individuellen Anforderungen, aber die grundlegenden Konzepte werden die gleichen bleiben.
Jede Art von animation in Swing ausgeführt werden müssen, in solchen Weg, dass Sie nicht blockieren Sie die Event-Dispatching-Thread. Blockierende Aktion auf der EDT wird verhindert, dass jeder repaint-Anfrage (unter anderem) von bearbeitet wurde.
Diesem einfachen Beispiel wird ein
javax.swing.Timer
, dass die Zecken, die sich alle 40 Millisekunden oder so (ca 25 fps) und aktualisiert die position eines kleinen "ball"Komplexer Iterationen erfordern würde, eine dedizierte
Thread
. Das macht den ganzen Prozess viel komplexer als.