bobator
Messages postés5Date d'inscriptionlundi 26 mars 2007StatutMembreDernière intervention10 avril 2007
-
10 avril 2007 à 20:21
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013
-
11 avril 2007 à 06:56
Bonjour à tous.
Nous continuons à créer notre petit jeu. Nous avons afficher notre map (zelda.gif) dans la JFrame, nous avons crée des droites pour avoir des rectangles qui forment les cases du jeu, puis nous avons mis un petit personnage animé (bibi.gif)
Maintenant nous aimerions faire déplacer ce personnage en cliquant sur les cases qui lui sont voisines. Nous avons vu dans un tutoriel qu'on pouvait se servir de MouseListener mais nous avons du mal à l'appliquer concrétement
Nous serions très heureux si vous pouviez nous donnez des pistes ou si vous avez vraiment le temps,l'appliquez à notre problème
Merci à vous.
import java.awt.*;
import javax.swing.*;
public class ecran extends JFrame
{
public void paint(Graphics g)
{
Image fond=null;
Toolkit kit = Toolkit.getDefaultToolkit();
fond=kit.getImage("zelda.gif");
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 11 avril 2007 à 06:56
Je te conseille plutôt de gérer le tracer dans le PaintComponents qui est fait pour cà : dans le mouseClicked tu enregistre la future position de ton image, et tu fait un updateUI de ta frame, ce qu idéclenchera le raffraichissement.
Pourquoi ? Pour séparer l'affichage du traîtement des déplacements, car tu aura sûrement à gérer le déplacement à plusieurs endroits de ton prog.
cs_DARKSIDIOUS
Messages postés15814Date d'inscriptionjeudi 8 août 2002StatutMembreDernière intervention 4 mars 2013130 10 avril 2007 à 21:26
ben c'est pas compliqué, mais tout dépend ce que tu veux en faire !
Exemple :
public class ecran extends JFrame implements MouseListener {
public ecran()
{
this.setTitle("ma fenetre");
this.setSize(new Dimension(1100,900));
bobator
Messages postés5Date d'inscriptionlundi 26 mars 2007StatutMembreDernière intervention10 avril 2007 10 avril 2007 à 22:00
Donc si on comprend bien pour pouvoir deplacer le personnage en cliquant sur une des cases du jeu on doit utiliser ceci :
public void mouseClicked(MouseEvent arg0)
{
Par contre la difficulté vient de ce qu'il faut marquer ici pour bien afficher le personnage.Peut on faire ceci
Toolkit kit2 = Toolkit.getDefaultToolkit();
fond=kit.getImage("bibi.gif");
g.drawImage(fond,x,y,110,90,this)
(x et y representant les coordonnées du clic effectué)
}