1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44
| public void animatMove(final int idjoueur, final int idperso, final List<Position> positions)
{
nbdeplacement=0;
int cheminX=(convertTileInCoordX(positions.get(0).getPoint().getX(),positions.get(0).getPoint().getY())+widthTuile/2-personnagesCanvas.get(idperso).getPersoView().getWidth()/2+5)-personnagesCanvas.get(idperso).getAbsoluteLeft();
int cheminY=(convertTileInCoordY(positions.get(0).getPoint().getX(),positions.get(0).getPoint().getY())-30)-personnagesCanvas.get(idperso).getAbsoluteTop();
//convertTileInCoordX(0,10)+widthTuile/2-persoView.getWidth()/2+5,convertTileInCoordY(0,10)-30
final int nbposition=8;
final int stepX=cheminX/nbposition;
final int stepY=cheminY/nbposition;
timer=new Timer(){
public void run() {
Position postmp=positions.get(0);
if(nbdeplacement<nbposition)
{
personnagesCanvas.get(idperso).getPersoView().setUrl("../images/personnages/"+joueurs.get(idjoueur).getEquipe().getPersonnages().get(idperso).getNameClasse()+"/"+joueurs.get(idjoueur).getEquipe().getPersonnages().get(idperso).getNameClasse()+"_marche_"+postmp.getOrientation()+"_"+((nbdeplacement%joueurs.get(idjoueur).getEquipe().getPersonnages().get(idperso).getNbImageMarche())+1)+".png");
personnagesCanvas.get(idperso).setZindex(Integer.toString(5000+postmp.getPoint().getX()+20*postmp.getPoint().getY()+1));
mainPanel.setWidgetPosition(personnagesCanvas.get(idperso),personnagesCanvas.get(idperso).getAbsoluteLeft()+stepX,personnagesCanvas.get(idperso).getAbsoluteTop()+stepY);
nbdeplacement++;
}
else
{
timer.cancel();
timer=null;
positions.remove(0);
if(positions.isEmpty())
{
personnagesCanvas.get(idperso).getPersoView().setUrl("../images/personnages/"+joueurs.get(idjoueur).getEquipe().getPersonnages().get(idperso).getNameClasse()+"/"+joueurs.get(idjoueur).getEquipe().getPersonnages().get(idperso).getNameClasse()+"_"+postmp.getOrientation()+"_0.png");
if(view.getContactList().getMe().getPseudo().equals(joueurs.get(currentPlayer).getPseudo()))
{
mapView.addMouseListener(listenerMouseMove);
selectionneur.addMouseListener(listenerMouseMove);
}
}
else
animatMove(idjoueur, idperso, positions);
}
}
};
timer.scheduleRepeating(50);
} |
Partager