mirror of
https://forge.univ-lyon1.fr/tplifap4/gyromite_ya.git
synced 2024-02-27 13:31:49 +01:00
Implementation IA (il suit le joueur) + suppression getInstace dans IA
This commit is contained in:
parent
8f7da7b95e
commit
e7ee583c2f
@ -4,44 +4,24 @@ import modele.donnees.ElementDynamique;
|
|||||||
import modele.donnees.ElementFond;
|
import modele.donnees.ElementFond;
|
||||||
import modele.donnees.Entite;
|
import modele.donnees.Entite;
|
||||||
import modele.donnees.Heros;
|
import modele.donnees.Heros;
|
||||||
|
|
||||||
|
import java.awt.*;
|
||||||
import java.util.Random;
|
import java.util.Random;
|
||||||
public class IA extends RealisateurDeDeplacement {
|
public class IA extends RealisateurDeDeplacement {
|
||||||
// private Direction directionCourante;
|
|
||||||
private static IA dep;
|
|
||||||
int genererInt(int borneInf, int borneSup){
|
int genererInt(int borneInf, int borneSup){
|
||||||
Random rand = new Random();
|
Random rand = new Random();
|
||||||
int nb;
|
int nb;
|
||||||
nb = borneInf+rand.nextInt(borneSup-borneInf);
|
nb = borneInf+rand.nextInt(borneSup-borneInf);
|
||||||
return nb;
|
return nb;
|
||||||
}
|
}
|
||||||
public static IA getInstance() {
|
|
||||||
if (dep == null) {
|
|
||||||
dep = new IA();
|
|
||||||
}
|
|
||||||
return dep;
|
|
||||||
}
|
|
||||||
protected boolean realiserDeplacement() {
|
protected boolean realiserDeplacement() {
|
||||||
for (ElementDynamique e : lstEntitesDynamiques)
|
for (ElementDynamique e : lstEntitesDynamiques)
|
||||||
if (e instanceof modele.donnees.IA) {
|
if (e instanceof modele.donnees.IA) {
|
||||||
modele.donnees.IA ia = (modele.donnees.IA) e;
|
e.avancerDirectionChoisie(null);
|
||||||
// Direction d = Direction.droite;
|
}
|
||||||
//System.out.println(genererInt(1, 1000));
|
|
||||||
|
|
||||||
if (genererInt(1, 1000) > 500) {
|
|
||||||
Direction deplacement = Direction.gauche;
|
|
||||||
if (!ia.avancerDirectionChoisie(deplacement)) {
|
|
||||||
deplacement = Direction.droite;
|
|
||||||
ia.avancerDirectionChoisie(deplacement);
|
|
||||||
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
Direction deplacement = Direction.droite;
|
|
||||||
if (!ia.avancerDirectionChoisie(deplacement)) {
|
|
||||||
deplacement = Direction.gauche;
|
|
||||||
ia.avancerDirectionChoisie(deplacement);
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -5,6 +5,7 @@
|
|||||||
*/
|
*/
|
||||||
package modele.donnees;
|
package modele.donnees;
|
||||||
|
|
||||||
|
import modele.calculs.Direction;
|
||||||
import modele.calculs.Jeu;
|
import modele.calculs.Jeu;
|
||||||
|
|
||||||
import java.util.Random;
|
import java.util.Random;
|
||||||
@ -19,6 +20,11 @@ public class IA extends Entite {
|
|||||||
super(jeu);
|
super(jeu);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean avancerDirectionChoisie(Direction d) {
|
||||||
|
return super.avancerDirectionChoisie(jeu.getDirection(this, jeu.getHector()));
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean peutEtreEcrase() {
|
public boolean peutEtreEcrase() {
|
||||||
return true;
|
return true;
|
||||||
|
Loading…
Reference in New Issue
Block a user