omission des lettres isolées
This commit is contained in:
parent
c20d2324e9
commit
b1f3e8b85f
13
Grille.php
13
Grille.php
@ -66,10 +66,13 @@ class Grille implements ArrayAccess
|
|||||||
{
|
{
|
||||||
[$x, $y] = $this->positions[$i];
|
[$x, $y] = $this->positions[$i];
|
||||||
|
|
||||||
|
// Recherche de la prochaine lettre possible sur la case courante
|
||||||
|
// en ligne
|
||||||
if ($x == 0) {
|
if ($x == 0) {
|
||||||
$lettres_ligne = $this->lettres_suivantes[$this->largeur];
|
$lettres_ligne = $this->lettres_suivantes[$this->largeur];
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// en colonne
|
||||||
$lettres_colonne = $this->lettres_suivantes[$this->hauteur];
|
$lettres_colonne = $this->lettres_suivantes[$this->hauteur];
|
||||||
for ($y2 = 0; $y2 < $y; $y2++) {
|
for ($y2 = 0; $y2 < $y; $y2++) {
|
||||||
$lettres_colonne = $lettres_colonne->noeud[$this->grille[$y2][$x]];
|
$lettres_colonne = $lettres_colonne->noeud[$this->grille[$y2][$x]];
|
||||||
@ -89,6 +92,16 @@ class Grille implements ArrayAccess
|
|||||||
foreach ($lettres_communes as $lettre => $_) {
|
foreach ($lettres_communes as $lettre => $_) {
|
||||||
$this->grille[$y][$x] = $lettre;
|
$this->grille[$y][$x] = $lettre;
|
||||||
|
|
||||||
|
// Omission des lettres isolées
|
||||||
|
if ($lettre == " " &&
|
||||||
|
($y - 2 < 0 || $this->grille[$y - 2][$x] == " ") &&
|
||||||
|
($y - 1 < 0 || $x - 1 < 0 || $this->grille[$y - 1][$x - 1] == " ") &&
|
||||||
|
($y - 1 < 0 || $x + 1 >= $this->largeur || $this->grille[$y - 1][$x + 1] == " ")
|
||||||
|
) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
// Omission des doublons
|
||||||
$mots = [];
|
$mots = [];
|
||||||
if ($x == $this->largeur - 1) $mots = explode(" ", $this->get_ligne($y, $this->largeur));
|
if ($x == $this->largeur - 1) $mots = explode(" ", $this->get_ligne($y, $this->largeur));
|
||||||
else if ($lettre == " ") $mots = explode(" ", $this->get_ligne($y, $x));
|
else if ($lettre == " ") $mots = explode(" ", $this->get_ligne($y, $x));
|
||||||
|
@ -3,10 +3,10 @@ include_once "dico.php";
|
|||||||
include_once "Grille.php";
|
include_once "Grille.php";
|
||||||
|
|
||||||
|
|
||||||
const HAUTEUR_DEFAUT = 6;
|
const HAUTEUR_DEFAUT = 8;
|
||||||
const HAUTEUR_MIN = 2;
|
const HAUTEUR_MIN = 2;
|
||||||
const HAUTEUR_MAX = 10;
|
const HAUTEUR_MAX = 10;
|
||||||
const LARGEUR_DEFAUT = 6;
|
const LARGEUR_DEFAUT = 8;
|
||||||
const LARGEUR_MIN = 2;
|
const LARGEUR_MIN = 2;
|
||||||
const LARGEUR_MAX = 10;
|
const LARGEUR_MAX = 10;
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user