Jeu fonctionnel
This commit is contained in:
10
.idea/.gitignore
generated
vendored
Normal file
10
.idea/.gitignore
generated
vendored
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
# Default ignored files
|
||||||
|
/shelf/
|
||||||
|
/workspace.xml
|
||||||
|
# Editor-based HTTP Client requests
|
||||||
|
/httpRequests/
|
||||||
|
# Environment-dependent path to Maven home directory
|
||||||
|
/mavenHomeManager.xml
|
||||||
|
# Datasource local storage ignored files
|
||||||
|
/dataSources/
|
||||||
|
/dataSources.local.xml
|
||||||
1
.idea/.name
generated
Normal file
1
.idea/.name
generated
Normal file
@@ -0,0 +1 @@
|
|||||||
|
ObjetGraphique.java
|
||||||
6
.idea/misc.xml
generated
Normal file
6
.idea/misc.xml
generated
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="ProjectRootManager" version="2" languageLevel="JDK_24" default="true" project-jdk-name="24" project-jdk-type="JavaSDK">
|
||||||
|
<output url="file://$PROJECT_DIR$/out" />
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
8
.idea/modules.xml
generated
Normal file
8
.idea/modules.xml
generated
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="ProjectModuleManager">
|
||||||
|
<modules>
|
||||||
|
<module fileurl="file://$PROJECT_DIR$/Projet_DEV.iml" filepath="$PROJECT_DIR$/Projet_DEV.iml" />
|
||||||
|
</modules>
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
6
.idea/vcs.xml
generated
Normal file
6
.idea/vcs.xml
generated
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project version="4">
|
||||||
|
<component name="VcsDirectoryMappings">
|
||||||
|
<mapping directory="" vcs="Git" />
|
||||||
|
</component>
|
||||||
|
</project>
|
||||||
11
Projet_DEV.iml
Normal file
11
Projet_DEV.iml
Normal file
@@ -0,0 +1,11 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<module type="JAVA_MODULE" version="4">
|
||||||
|
<component name="NewModuleRootManager" inherit-compiler-output="true">
|
||||||
|
<exclude-output />
|
||||||
|
<content url="file://$MODULE_DIR$">
|
||||||
|
<sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
|
||||||
|
</content>
|
||||||
|
<orderEntry type="inheritedJdk" />
|
||||||
|
<orderEntry type="sourceFolder" forTests="false" />
|
||||||
|
</component>
|
||||||
|
</module>
|
||||||
@@ -10,6 +10,8 @@
|
|||||||
*.zip
|
*.zip
|
||||||
*.tar.gz
|
*.tar.gz
|
||||||
*.rar
|
*.rar
|
||||||
|
*.idea
|
||||||
|
*.out
|
||||||
|
|
||||||
### --- Dossiers de Build --- ###
|
### --- Dossiers de Build --- ###
|
||||||
target/
|
target/
|
||||||
|
|||||||
BIN
out/production/Projet_DEV/linea/Cercle.class
Normal file
BIN
out/production/Projet_DEV/linea/Cercle.class
Normal file
Binary file not shown.
BIN
out/production/Projet_DEV/linea/Jeu.class
Normal file
BIN
out/production/Projet_DEV/linea/Jeu.class
Normal file
Binary file not shown.
BIN
out/production/Projet_DEV/linea/Ligne.class
Normal file
BIN
out/production/Projet_DEV/linea/Ligne.class
Normal file
Binary file not shown.
BIN
out/production/Projet_DEV/linea/LineaAppli.class
Normal file
BIN
out/production/Projet_DEV/linea/LineaAppli.class
Normal file
Binary file not shown.
BIN
out/production/Projet_DEV/linea/ObjetGraphique.class
Normal file
BIN
out/production/Projet_DEV/linea/ObjetGraphique.class
Normal file
Binary file not shown.
BIN
out/production/Projet_DEV/linea/Segment.class
Normal file
BIN
out/production/Projet_DEV/linea/Segment.class
Normal file
Binary file not shown.
BIN
out/production/Projet_DEV/linea/ZoneDessin.class
Normal file
BIN
out/production/Projet_DEV/linea/ZoneDessin.class
Normal file
Binary file not shown.
@@ -69,7 +69,8 @@ public class Cercle extends ObjetGraphique{ // il s'agit plutôt d'arcs de cercl
|
|||||||
// -> le booléen permet de ne plus être tributaire
|
// -> le booléen permet de ne plus être tributaire
|
||||||
// de la vitesse de répétition du clavier
|
// de la vitesse de répétition du clavier
|
||||||
//-------------------------------------------------------------------------
|
//-------------------------------------------------------------------------
|
||||||
public void Monter(){
|
public void Monter(){
|
||||||
|
|
||||||
montee = true;
|
montee = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -23,6 +23,7 @@ public class Jeu implements KeyListener, ActionListener{
|
|||||||
// un qui passera dessus
|
// un qui passera dessus
|
||||||
protected Cercle demiCercleAvant = new Cercle(90,-180); // celui qui est sur la ligne
|
protected Cercle demiCercleAvant = new Cercle(90,-180); // celui qui est sur la ligne
|
||||||
protected Cercle demiCercleArriere = new Cercle(90,180); // celui qui est derrière la ligne
|
protected Cercle demiCercleArriere = new Cercle(90,180); // celui qui est derrière la ligne
|
||||||
|
Ligne laligne = new Ligne();
|
||||||
|
|
||||||
// A FAIRE : ajouter les objets graphiques manquants, s'il y en a
|
// A FAIRE : ajouter les objets graphiques manquants, s'il y en a
|
||||||
|
|
||||||
@@ -46,12 +47,10 @@ public class Jeu implements KeyListener, ActionListener{
|
|||||||
//-------------------------------------------------------------------------
|
//-------------------------------------------------------------------------
|
||||||
public Jeu(){
|
public Jeu(){
|
||||||
// Gestion du score : a réactiver en fin de TP, inutile au début
|
// Gestion du score : a réactiver en fin de TP, inutile au début
|
||||||
/*
|
|
||||||
labScore = new JLabel();
|
labScore = new JLabel();
|
||||||
labScore.setText("<html><h3>score : 0</h3></html>");
|
labScore.setText("<html><h3>score : 0</h3></html>");
|
||||||
labScore.setBounds(20, 0, 200, 50);
|
labScore.setBounds(20, 0, 200, 50);
|
||||||
ecran.add(labScore);
|
ecran.add(labScore);
|
||||||
*/
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -111,7 +110,6 @@ public class Jeu implements KeyListener, ActionListener{
|
|||||||
// Création d'une fenêtre
|
// Création d'une fenêtre
|
||||||
JFrame fenetre = new JFrame();
|
JFrame fenetre = new JFrame();
|
||||||
|
|
||||||
Ligne laligne = new Ligne();
|
|
||||||
ecran.ajouterObjet(demiCercleArriere);
|
ecran.ajouterObjet(demiCercleArriere);
|
||||||
ecran.ajouterObjet(demiCercleAvant);
|
ecran.ajouterObjet(demiCercleAvant);
|
||||||
ecran.ajouterObjet(laligne);
|
ecran.ajouterObjet(laligne);
|
||||||
@@ -127,7 +125,7 @@ public class Jeu implements KeyListener, ActionListener{
|
|||||||
fenetre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
fenetre.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
|
||||||
|
|
||||||
// Démarrage du timer, qui rythmera l'animation
|
// Démarrage du timer, qui rythmera l'animation
|
||||||
horloge = new Timer(40, this);
|
horloge = new Timer(20, this);
|
||||||
horloge.start();
|
horloge.start();
|
||||||
|
|
||||||
demiCercleArriere.setCouleur(new Color(0.8f, 0.0f, 0.0f));
|
demiCercleArriere.setCouleur(new Color(0.8f, 0.0f, 0.0f));
|
||||||
@@ -140,7 +138,7 @@ public class Jeu implements KeyListener, ActionListener{
|
|||||||
//-------------------------------------------------------------------------
|
//-------------------------------------------------------------------------
|
||||||
@Override
|
@Override
|
||||||
public void actionPerformed(ActionEvent e) {
|
public void actionPerformed(ActionEvent e) {
|
||||||
|
ecran.traiterBoucleAnimation();
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -36,19 +36,26 @@ public class Ligne extends ObjetGraphique{// Hérite de la classe ObjetGraphique
|
|||||||
// Valeurs initiales pour la position de la Ligne
|
// Valeurs initiales pour la position de la Ligne
|
||||||
double x = 800;
|
double x = 800;
|
||||||
double y = 200;
|
double y = 200;
|
||||||
double dx,dy;
|
|
||||||
|
double xCourant = x;
|
||||||
|
double yCourant = y;
|
||||||
|
double dx = 0,dy=0;
|
||||||
|
|
||||||
|
|
||||||
// Création de la liste de segments qui composent la ligne
|
// Création de la liste de segments qui composent la ligne
|
||||||
Segment s;
|
Segment s = new Segment(xCourant,yCourant,dx,dy);
|
||||||
|
|
||||||
|
|
||||||
for (int i=0; i<nbSegments; i++){
|
for (int i=0; i<nbSegments; i++){
|
||||||
// définition d'un nouveau segment
|
// définition d'un nouveau segment
|
||||||
dx = Math.random()*20+80;
|
dx = (Math.random()*20)+80;
|
||||||
dy = Math.random()*40-20;
|
dy = (Math.random()*60)-30;
|
||||||
s = new Segment(x,y,dx,dy);
|
s = new Segment(x,y,dx,dy);
|
||||||
s.setCouleur(new Color(0.2f,0.2f,0.2f));
|
s.setCouleur(new Color(0.2f,0.2f,0.2f));
|
||||||
|
|
||||||
x+=dx;
|
x+=dx;
|
||||||
y+=dy;
|
y+=dy;
|
||||||
|
listSegments.add(s);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -74,11 +81,16 @@ public class Ligne extends ObjetGraphique{// Hérite de la classe ObjetGraphique
|
|||||||
// Redéfinition de la méthode Animer, spécifiquement pour la classe Ligne
|
// Redéfinition de la méthode Animer, spécifiquement pour la classe Ligne
|
||||||
//-------------------------------------------------------------------------
|
//-------------------------------------------------------------------------
|
||||||
@Override
|
@Override
|
||||||
public void Animer() {
|
void Animer() {
|
||||||
|
// On déplace chaque segment vers la gauche (vitesse arbitraire de 5)
|
||||||
// Principe :
|
double vitesseDefilement = 5.0;
|
||||||
// on parcourt tous les segments et on décale chacun de 10 pixels (par exemple)
|
|
||||||
// vers la gauche
|
// On met à jour le x de la ligne (utilisé pour le calcul de position)
|
||||||
|
this.x -= vitesseDefilement;
|
||||||
|
|
||||||
|
// On répercute sur chaque segment
|
||||||
|
for (Segment s : listSegments) {
|
||||||
|
s.setX(s.getX() - vitesseDefilement);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -14,8 +14,7 @@ abstract class ObjetGraphique {
|
|||||||
|
|
||||||
// Position
|
// Position
|
||||||
protected double x;
|
protected double x;
|
||||||
protected double y;
|
protected double y;
|
||||||
|
|
||||||
protected Color couleur = new Color(0.0f,0.2f,0.2f);
|
protected Color couleur = new Color(0.0f,0.2f,0.2f);
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -54,6 +54,6 @@ public class Segment extends ObjetGraphique { // Hérite de la classe ObjetGraph
|
|||||||
// TODO Auto-generated method stub
|
// TODO Auto-generated method stub
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void setX(double x) { this.x = x; }
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user