Choisissez une pièce à jouer

'; // Afficher chaque pièce disponible pour le joueur $html .= '
'; foreach ($pieces as $piece) { // Vérifier si la pièce est jouable $jouable = true; // On suppose que toutes les pièces sont jouables ici, à adapter selon la logique du jeu if ($piece->getCouleur() === PieceSquadro::BLANC) { // Ajouter le bouton pour la pièce blanche $html .= PieceSquadroUI::boutonBlanc($x, $y, $piece, $jouable); } elseif ($piece->getCouleur() === PieceSquadro::NOIR) { // Ajouter le bouton pour la pièce noire $html .= PieceSquadroUI::boutonNoir($x, $y, $piece, $jouable); } } $html .= '
'; // Fermeture des boutons // Ajouter un formulaire pour soumettre le mouvement $html .= '
'; // Fermeture de la page en utilisant la méthode pied() de ton ami $html .= self::pied(); return $html; } /** * Génère la page d'accueil du jeu. * * @return string Le code HTML de la page d'accueil. */ public static function pageAccueil(): string { // Utilisation de la méthode d'entête de ton ami $html = self::entete("Bienvenue dans le jeu Squadro"); // Contenu spécifique à la page d'accueil $html .= '

Bienvenue dans le jeu Squadro

Choisissez une option :

'; // Fermeture de la page en utilisant la méthode pied() de ton ami $html .= self::pied(); return $html; } /** * Génère la page de fin de jeu. * * @param string $message Message à afficher à la fin du jeu (ex : "Vous avez gagné !"). * @return string Le code HTML de la page de fin de jeu. */ public static function pageFinDeJeu(string $message): string { // Utilisation de la méthode d'entête de ton ami $html = self::entete("Fin de la Partie"); // Contenu spécifique à la page de fin de jeu $html .= '

Partie terminée

' . htmlspecialchars($message) . '

Retour à l\'accueil

'; // Fermeture de la page en utilisant la méthode pied() de ton ami $html .= self::pied(); return $html; } /** * Méthode pour générer l'en-tête HTML. * Utilisée par toutes les pages pour inclure le début de la structure HTML. * * @param string $title Titre de la page. * @return string Le code HTML de l'en-tête. */ public static function entete(string $title): string { $entete = " Squadro

Squadro

$title

"; return $entete; } /** * Méthode pour générer le pied de page HTML. * Utilisée par toutes les pages pour inclure la fin de la structure HTML. * * @return string Le code HTML du pied de page. */ public static function pied(): string { $pied = " "; return $pied; } /** * Génère le plateau de jeu. * * @return string Le code HTML du plateau de jeu. */ public static function plateauDeJeu(PlateauSquadro $plateau): string { $html = '

'; $html .= ''; for ($i = 0; $i < 9; $i++) { $html .= ''; for ($j = 0; $j < 9; $j++) { $html .= ''; } $html .= ''; } $html .= '
'; if (($i == 0 || $i == 8) && ($j == 0 || $j == 8)) { $html .= PieceSquadroUI::boutonTexte(''); } else if ($i == 0) $html .= PieceSquadroUI::boutonTexte(($j > 1 && $j < 7) ? PlateauSquadro::BLANC_V_ALLER[$j - 1] : ''); else if ($i == 8) $html .= PieceSquadroUI::boutonTexte(($j > 1 && $j < 7) ? PlateauSquadro::BLANC_V_RETOUR[$j - 1] : ''); else if ($j == 0) $html .= PieceSquadroUI::boutonTexte(($i > 1 && $i < 7) ? PlateauSquadro::NOIR_V_ALLER[$i - 1] : ''); else if ($j == 8) $html .= PieceSquadroUI::boutonTexte(($i > 1 && $i < 7) ? PlateauSquadro::NOIR_V_RETOUR[$i - 1] : ''); else { $piece = $plateau->getPiece($i - 1, $j - 1); if ($piece->getCouleur() == PieceSquadro::VIDE) { $html .= PieceSquadroUI::boutonVide(); } else if ($piece->getCouleur() == PieceSquadro::NEUTRE) { $html .= PieceSquadroUI::boutonNeutre(); } else if ($piece->getCouleur() == PieceSquadro::BLANC) { $html .= PieceSquadroUI::boutonBlanc($i - 1, $j - 1, $piece, true); } else if ($piece->getCouleur() == PieceSquadro::NOIR) { $html .= PieceSquadroUI::boutonNoir($i - 1, $j - 1, $piece, true); } } $html .= '
'; return $html; } } // Exemple d'utilisation de la classe SquadroUIGenerator $plateau = new PlateauSquadro(); //$html = SquadroUIGenerator::entete("Plateau de jeu"); //$html .= SquadroUIGenerator::plateauDeJeu($plateau); //$html .= SquadroUIGenerator::pied(); $html = SquadroUIGenerator::pageAccueil(); echo $html;