Commit c79138dd authored by Anthony ROZEN's avatar Anthony ROZEN

avancement implementation

parent 421a4140
......@@ -4,20 +4,37 @@ import fr.univnantes.alma.game.composant.Carte.CarteLieu;
import fr.univnantes.alma.game.composant.Joueur.Creature;
import fr.univnantes.alma.game.composant.Joueur.Traque;
import fr.univnantes.alma.game.composant.Pion.Pion;
import fr.univnantes.alma.game.composant.Plateau;
import java.util.ArrayList;
import java.util.Random;
import java.util.Scanner;
public class ServeurNotAlone implements ServeurNotAloneInterface {
private Creature creature;
private Pion pionAssimilation;
private ArrayList<Traque> traques;
private Pion pionSurvie;
private ArrayList<CarteLieu> carteJouer;
private Plateau plateau;
private ArrayList<Traque> traques;
public ServeurNotAlone() {
public ServeurNotAlone(ArrayList<String> listPlayer) {
plateau = new Plateau(listPlayer.size());
carteJouer = new ArrayList<>();
Random random = new Random();
int rand = random.nextInt(listPlayer.size());
creature = new Creature(listPlayer.get(rand));
listPlayer.remove(rand);
while(!listPlayer.isEmpty()){
rand = random.nextInt(listPlayer.size());
Traque traque = new Traque(listPlayer.get(rand));
traques.add(traque);
listPlayer.remove(rand);
}
}
public void retirerPion(int nbPion) {
......@@ -25,31 +42,92 @@ public class ServeurNotAlone implements ServeurNotAloneInterface {
}
public void avancerPionAssimilation() {
this.pionAssimilation.setPosition(this.pionAssimilation.getPosition() -1);
this.plateau.getPionAssimilation().decrementation();
}
public void poserJetonCreature(CarteLieu card) {
public void avancerPionSecours() {
this.plateau.getPionSecours().decrementation();
}
public void poserJetonCible(CarteLieu card1, CarteLieu card2) {
public void piocherCarteTraque() {
}
public void poserJetonArtemia(CarteLieu card) {
public String effet(CarteLieu carte) {
return "";
}
public void lacherPrise(Traque player){
player.setPionVolonte(3);
ArrayList<CarteLieu> newMain = player.getMain();
newMain.addAll(player.getDefausse());
player.setMain(newMain);
player.clearDefausse();
avancerPionAssimilation();
}
public void recupererJeton() {
public void resister(Traque player, int nbPion){ // nbPion = 2 ou 4
if (player.getPionVolonte() - nbPion > 0){
player.reprendreCarte(nbPion);
}else{
lacherPrise(player);
}
}
private CarteLieu retournerCarteLieu(String nom){
int i = 0;
while(i <= plateau.getPlateauCarte().size()){
if(plateau.getPlateauCarte().get(i).getNom().compareTo(nom) == 0){
return plateau.getPlateauCarte().get(i);
}
i++;
}
}
public void piocherCarteTraque() {
public void phase1(){
int i = 0;
String action = "";
int nbCarte = 0;
Scanner sc = new Scanner(System.in);
this.carteJouer.clear();
while(i <= traques.size()){
System.out.println("Taper lacherPrise si vous voulez lacher prise, taper resister si vous voulez resister ou taper \"rien\" si vous voulez rien faire");
action = sc.nextLine();
if(action.compareTo("lacherPrise") == 0){
lacherPrise(traques.get(i));
}else if(action.compareTo("resister") == 0){
System.out.println("noter combien de carte vous voulez récupérer, 2 ou 4 ?");
nbCarte = sc.nextInt();
resister(traques.get(i), nbCarte);
}
this.carteJouer.add(traques.get(i).choisirCarte());
i++;
}
}
public void phase2(){
Scanner sc = new Scanner(System.in);
String carte = "";
System.out.println("Sur quel carte Lieu vous voulez poser le jeton CREATURE ? (ex:L'Antre");
carte = sc.nextLine();
}
public String effet(CarteLieu carte) {
return "";
public void phase3(){
}
public void phase4(){
int i = 0;
while(i <= this.carteJouer.size()){
traques.get(i).defausseCarte(carteJouer.get(i));
i++;
}
creature.recupererJeton();
while (creature.getCarteTraque().size() != 3){
//creature pioche carte traque_i
}
avancerPionSecours();
}
}
......@@ -16,7 +16,7 @@ public class Creature extends Joueur{
jetonCreature = new Jeton();
jetonCible = new Jeton();
jetonArtemia = new Jeton();
this.carteTraque = new ArrayList<CarteLieu>();
this.carteTraque = new ArrayList<CarteLieu>(); // taile 3
}
public ArrayList<CarteLieu> getCarteTraque() {
......
......@@ -33,11 +33,11 @@ public class Traque extends Joueur{
this.pionVolonte = pionVolonte;
}
public ArrayList<CarteLieu> getCarteLieu() {
public ArrayList<CarteLieu> getMain() {
return main;
}
public void setCarteLieu(ArrayList<CarteLieu> carteLieu) {
public void setMain(ArrayList<CarteLieu> carteLieu) {
this.main = carteLieu;
}
......@@ -66,6 +66,7 @@ public class Traque extends Joueur{
while(i != nbCarte){
// demander a l'utilisateur la carte qu'il veut reprendre
System.out.println("veuillez choisir une carte de votre défausse");
nomCarte = sc.nextLine();
j = 0;
......@@ -86,4 +87,24 @@ public class Traque extends Joueur{
this.main.remove(card);
this.defausse.add(card);
}
public void clearDefausse(){
this.defausse.clear();
}
public CarteLieu choisirCarte(){
int i = 0;
Scanner sc = new Scanner(System.in);
System.out.println("veuillez choisir une carte de votre main");
String carte = sc.nextLine();
while(i <= main.size()){
if(main.get(i).getNom() == carte){
return main.get(i);
}else{
i++;
}
}
return null;
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment