Ajout méthode jeu, deplacer, attaquer
This commit is contained in:
parent
0f8a283e31
commit
9d298ba9c1
@ -1,22 +1,49 @@
|
||||
package carte;
|
||||
|
||||
import java.awt.Point;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import main.Joueur;
|
||||
import main.Pioche;
|
||||
import main.Type;
|
||||
import main.TypeLumiere;
|
||||
|
||||
|
||||
public class CarteLieu<T extends Type> extends CarteEffet{
|
||||
public class CarteLieu extends CarteEffet{
|
||||
|
||||
private Pioche<T> piocheLumiere;
|
||||
private List<Joueur> listeJoueur;
|
||||
private List<Joueur> listeJoueurs;
|
||||
private Point coordinates;
|
||||
private CarteLieu voisin;
|
||||
|
||||
public CarteLieu(Point coordinates) {
|
||||
this.listeJoueurs = new ArrayList<Joueur>();
|
||||
this.coordinates = coordinates;
|
||||
}
|
||||
|
||||
public void utiliser(Joueur j) {
|
||||
|
||||
CartePiochable<?> carte = piocheLumiere.piocher();
|
||||
carte.utiliser(j);
|
||||
this.getEffet().utiliser(j);
|
||||
}
|
||||
|
||||
public boolean coordinatesContains(int i)
|
||||
{
|
||||
return coordinates.x == i || coordinates.y == i;
|
||||
}
|
||||
|
||||
public List<Joueur> getJoueurs() {
|
||||
return listeJoueurs;
|
||||
}
|
||||
|
||||
public List<Joueur> getJoueursAdjacents() {
|
||||
return voisin.getJoueurs();
|
||||
}
|
||||
|
||||
public void remove(Joueur joueur) {
|
||||
|
||||
if(this.listeJoueurs.contains(joueur))
|
||||
{
|
||||
this.listeJoueurs.remove(joueur);
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
@ -1,11 +1,26 @@
|
||||
package carte;
|
||||
|
||||
import main.Joueur;
|
||||
import java.awt.Point;
|
||||
|
||||
public class CarteLieuType extends CarteLieu{
|
||||
import main.Joueur;
|
||||
import main.Pioche;
|
||||
import main.Type;
|
||||
|
||||
public class CarteLieuType<T extends Type> extends CarteLieu{
|
||||
|
||||
private Pioche<T> pioche;
|
||||
|
||||
|
||||
public CarteLieuType(Point coordinates,Pioche<T> pioche) {
|
||||
super(coordinates);
|
||||
this.pioche = pioche;
|
||||
}
|
||||
|
||||
public void utiliser(Joueur j) {
|
||||
super.utiliser(j);
|
||||
|
||||
CartePiochable<?> carte = pioche.piocher();
|
||||
carte.utiliser(j);
|
||||
}
|
||||
|
||||
|
||||
}
|
||||
|
@ -1,41 +0,0 @@
|
||||
package main;
|
||||
import java.util.List;
|
||||
|
||||
public class CarteLieu {
|
||||
private List<Integer> valeurs;
|
||||
private List<Joueur> joueurs;
|
||||
private String nom;
|
||||
private CarteLieu voisin;
|
||||
private Plateau plateau;
|
||||
|
||||
public CarteLieu(String n, List<Integer> vals, CarteLieu vois, Plateau plat){
|
||||
nom = n;
|
||||
for(int i : vals) {
|
||||
//max 2 v par lieu normalement
|
||||
valeurs.add(i);
|
||||
}
|
||||
voisin = vois;
|
||||
plateau = plat;
|
||||
}
|
||||
|
||||
//pour rajouter un joueur au lieu
|
||||
public void addJoueur(Joueur j) {
|
||||
joueurs.add(j);
|
||||
}
|
||||
|
||||
public List<Joueur> getJoueursAdjacents() {
|
||||
return voisin.getJoueurs();
|
||||
}
|
||||
|
||||
public void utiliser(Joueur j) {};
|
||||
|
||||
public List<Joueur> getJoueurs() {
|
||||
return joueurs;
|
||||
}
|
||||
|
||||
//pour enlever un joueur du lieu
|
||||
public void removeJoueur(Joueur j) {
|
||||
joueurs.remove(j); //pas sur que ca va marcher
|
||||
}
|
||||
|
||||
}
|
@ -2,6 +2,7 @@ package main;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
|
||||
import carte.CarteLieu;
|
||||
import main.Joueur.Equipe;
|
||||
|
||||
public class ControleurIA {
|
||||
@ -102,7 +103,7 @@ public class ControleurIA {
|
||||
List<Joueur> joueursProx = cl.getJoueurs();
|
||||
if (getEnnemisJoueurs(jIA, joueursProx).size() > 0)
|
||||
return false;
|
||||
List<Joueur> joueursAdj = cl.getJoueursAdjacents();
|
||||
List<Joueur> joueursAdj = jIA.getJoueursAdjacents();
|
||||
if (getEnnemisJoueurs(jIA, joueursAdj).size() > 0)
|
||||
return true;
|
||||
return false;
|
||||
|
@ -3,6 +3,7 @@ import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import carte.CarteLieu;
|
||||
import effet.Effet;
|
||||
import personnage.CartePersonnage;
|
||||
|
||||
@ -165,4 +166,24 @@ public class Joueur {
|
||||
this.plateau = plateau2;
|
||||
}
|
||||
|
||||
public boolean choisir() {
|
||||
// TODO Auto-generated method stub
|
||||
return false;
|
||||
}
|
||||
|
||||
public void utiliserEffetLieu() {
|
||||
this.carteLieu.utiliser(this);
|
||||
}
|
||||
|
||||
public void deplacer(CarteLieu cl) {
|
||||
|
||||
if(this.carteLieu != null)
|
||||
{
|
||||
this.carteLieu.remove(this);
|
||||
}
|
||||
|
||||
this.carteLieu = cl;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -5,7 +5,7 @@ import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import carte.Carte;
|
||||
import carte.CarteLieu;
|
||||
|
||||
public class Plateau {
|
||||
private List<Joueur> joueurs;
|
||||
@ -43,18 +43,41 @@ public class Plateau {
|
||||
|
||||
}
|
||||
|
||||
public int rollDices() {
|
||||
//pas necessaire?
|
||||
return 0;
|
||||
public void jeu() {
|
||||
int nbJoueurs = this.joueurs.size();
|
||||
int i = 0;
|
||||
|
||||
while(true) {
|
||||
|
||||
Joueur currentJoueur = this.joueurs.get(nbJoueurs % i);
|
||||
deplacer(currentJoueur);
|
||||
|
||||
if(currentJoueur.choisir()) {
|
||||
currentJoueur.utiliserEffetLieu();
|
||||
}
|
||||
|
||||
public void piocher(Joueur joueur, Type type) {
|
||||
|
||||
if(currentJoueur.choisir()){
|
||||
Joueur cible = currentJoueur.choisirAdjacents();
|
||||
attaquer(currentJoueur,cible);
|
||||
}
|
||||
|
||||
public void déplacerJoueur(Joueur joueur, int indexLieu) {
|
||||
|
||||
i++;
|
||||
}
|
||||
}
|
||||
|
||||
private void deplacer(Joueur currentJoueur) {
|
||||
|
||||
int roll = sumRolls();
|
||||
|
||||
for(CarteLieu cl : lieux) {
|
||||
if(cl.coordinatesContains(roll)){
|
||||
|
||||
currentJoueur.deplacer(cl);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public void attaquer(Joueur joueur1, Joueur joueur2) {
|
||||
|
||||
@ -79,18 +102,15 @@ public class Plateau {
|
||||
return (int) Math.floor(Math.random() * 3)+1;
|
||||
}
|
||||
|
||||
public int rollDices4() {
|
||||
return Math.abs(roll4() - roll4());
|
||||
}
|
||||
|
||||
public int rollDices6() {
|
||||
return roll6() + roll6();
|
||||
}
|
||||
|
||||
public int roll6() {
|
||||
return (int) Math.floor(Math.random() * 5)+1;
|
||||
}
|
||||
|
||||
public int sumRolls()
|
||||
{
|
||||
return roll6() + roll4();
|
||||
}
|
||||
|
||||
public List<Joueur> getJoueurs() {
|
||||
return this.joueurs;
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user