-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathPartie.java
More file actions
58 lines (49 loc) · 1.66 KB
/
Copy pathPartie.java
File metadata and controls
58 lines (49 loc) · 1.66 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
/**
* @author Vincent F
* Ne sert que d'interface pour relier l'affichage donné en .class et nos fichiers de jeu.
*/
public class Partie {
private int[][] plateauDeJeu;
private Plateau tireur;
private Plateau cible;
/** Relie Partie, au plateau de jeu
* @param joueur : Plateau du joueur
*/
public Partie(Plateau joueur){
plateauDeJeu = new int[joueur.getPlateauValeurs().length][joueur.getPlateauValeurs()[0].length];
for(int i = 0; i< joueur.getPlateauValeurs().length ; i++){
for(int j = 0; j< joueur.getPlateauValeurs()[i].length ; j++){
plateauDeJeu[i][j] = joueur.getPlateauValeurs()[i][j][0];
}
}
}
/** Relie la partie, au plateau de jeu, en gardant la cible et le tireur.
* @param tireur : plateau du tireur
* @param cible : plateau de la cible
*/
public void setCible(Plateau tireur, Plateau cible){
this.tireur = tireur;
this.cible = cible;
}
/** Relie la classe tir au vrais instructions pour toucher le tableau.
* @param x : coordonnés en x
* @param y : coordonnée en y
*/
public void coup(int x, int y){
int[] coordonnes = new int[2];
boolean correct = false;
coordonnes[0] = x;
coordonnes[1] = y;
while(correct==false){
if(cible.dejaSubiTir(coordonnes[0], coordonnes[1])==false && Joueur.scannerCaseInterdite(cible, coordonnes[0], coordonnes[1])==false){
correct = true;
} else if (Joueur.scannerCaseInterdite(cible, coordonnes[0], coordonnes[1])==true){
System.out.println("Cette case est hors du plateau de jeu !");
} else {
System.out.println("Cette case a déjà subit un tir !");
}
}
tireur.tirerJoueur(coordonnes, cible);
Joueur.reponseAuTir(cible, coordonnes[0], coordonnes[1]);
}
}