Commit 40553e57 authored by Fardale's avatar Fardale

ça plante je push pas

parent 7160c234
......@@ -32,7 +32,7 @@ class Demineur extends Jeu[MonBouton] {
// private var champ = ofDim[Int](tailleX,tailleY)
// Matrice des boutons associés aux cases (il me semble plus pertinent de l'inclure dans le jeu).
protected var boutons = ofDim[MonBouton](tailleX,tailleY)
override protected var boutons = ofDim[MonBouton](tailleX,tailleY)
// Réinitialise les paramètres ci-dessus en cas de changement de difficulté.
def reparametrage (x: Int, y: Int, n: Int) = {
......@@ -144,30 +144,10 @@ class Demineur extends Jeu[MonBouton] {
if(premierCoup){premierCoup = false}
if (x > 0) {
if(boutons(x-1)(y).estLibre && !boutons(x-1)(y).mines){clique_action(x-1,y)}
if(y > 0){
if(boutons(x-1)(y-1).estLibre && !boutons(x-1)(y-1).mines){clique_action(x-1,y-1)}
}
if(y < tailleY-1){
if(boutons(x-1)(y+1).estLibre && !boutons(x-1)(y+1).mines){clique_action(x-1,y+1)}
}
}
if (x < tailleX-1) {
if(boutons(x+1)(y).estLibre && !boutons(x+1)(y).mines){clique_action(x+1,y)}
if(y > 0){
if(boutons(x+1)(y-1).estLibre && !boutons(x+1)(y-1).mines){clique_action(x+1,y-1)}
}
if(y < tailleY-1){
if(boutons(x+1)(y+1).estLibre && !boutons(x+1)(y+1).mines){clique_action(x+1,y+1)}
}
}
if(y>0){
if(boutons(x)(y-1).estLibre && !boutons(x)(y-1).mines){clique_action(x,y-1)}
}
if(y<tailleY-1){
if(boutons(x)(y+1).estLibre && !boutons(x)(y+1).mines){clique_action(x,y+1)}
}
var voisin = voisinEtendu(x,y)
for(plop <- voisin)
{var (vx, vy) = plop
if(boutons(vx)(vy).estLibre && !boutons(vx)(vy).mines){clique_action(vx,vy)}}
}
}
......
......@@ -29,3 +29,5 @@ class MonBouton(protected var x : Int, protected var y : Int) extends Button {
libre = true
drapeau = false
}
......@@ -21,5 +21,33 @@ abstract class Jeu[T<:Button] {
}
def victoire() : Boolean
def voisinDirect(x : Int, y : Int){
var voisin = List[(Int,Int)]()
if(x>0){voisin = (x-1, y) :: voisin}
if(x<tailleX){voisin = (x+1, y) :: voisin}
if(x>0){voisin = (x, y-1) :: voisin}
if(x<tailleY){voisin = (x, y+1) :: voisin}
voisin
}
def voisinEtendu(x : Int, y : Int){
var voisin = List[(Int, Int)]()
if(x>0){
voisin = (x-1, y) :: voisin
if(y>0){voisin == (x-1, y-1) :: voisin}
if(y<tailleY){voisin == (x-1, y+1) :: voisin}
}
if(x<tailleX){
voisin = (x+1, y) :: voisin
if(y>0){voisin == (x+1, y-1) :: voisin}
if(y<tailleY){voisin == (x+1, y+1) :: voisin}
}
if(y>0){voisin = (x, y-1) :: voisin}
if(y<tailleY){voisin = (x, y+1) :: voisin}
voisin
}
}
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