Newer
Older
<?php
require_once 'ActionSquadro.php';
require_once 'SquadroUIGenerator.php';

G. Daryl M. OKOU
a validé
require_once 'PDOSquadro.php';
require_once 'PartieSquadro.php';
require_once 'JoueurSquadro.php';
session_start();
if (!isset($_POST['action'])) {
$_SESSION['etat'] = 'erreur';
} else {
$action = $_POST['action'];
switch ($action) {
Mathéo Beaudouin
a validé
case "commencerPartie" :

G. Daryl M. OKOU
a validé
if ($_SESSION['etat'] != 'accueil') {
Mathéo Beaudouin
a validé
$_SESSION['etat'] = 'erreur';
} else {

G. Daryl M. OKOU
a validé
$_SESSION['etat'] = 'choixPiece';
Mathéo Beaudouin
a validé
$_SESSION['joueur'] = $_POST['joueur'];
}
break;

G. Daryl M. OKOU
a validé
if ($_SESSION['etat'] != 'choixPiece') {
$_SESSION['etat'] = 'erreur';
} else {
$_SESSION['etat'] = 'confirmationPiece';
$_SESSION['x'] = $_POST['move'][0];
$_SESSION['y'] = $_POST['move'][2];
}
break;
Mathéo Beaudouin
a validé
case 'confirmerChoix':

G. Daryl M. OKOU
a validé
if ($_SESSION['etat'] != 'confirmationPiece') {
Mathéo Beaudouin
a validé
$_SESSION['etat'] = 'erreur';
} else {
// Déplacement de la pièce

G. Daryl M. OKOU
a validé
$verifDeplacementPiece = $actionSquadro->jouePiece($_SESSION['x'], $_SESSION['y']);
$couleur = ($_SESSION['joueur'] == 'Blanc')?PieceSquadro::BLANC:PieceSquadro::NOIR;
Mathéo Beaudouin
a validé
// Vérifier la victoire

G. Daryl M. OKOU
a validé
if ($actionSquadro->remporteVictoire($couleur)) {
Mathéo Beaudouin
a validé
$_SESSION['etat'] = 'victoire';
$_SESSION['gagnant'] = $_SESSION['joueur'];
} else {

G. Daryl M. OKOU
a validé
// Changer de joueur s'il y a déplacement de pièce
if($verifDeplacementPiece)
$_SESSION['joueur'] = ($_SESSION['joueur'] === 'Blanc') ? 'Noir' : 'Blanc';
Mathéo Beaudouin
a validé
$_SESSION['etat'] = 'choixPiece';
}
// Oublier les coordonnées de la pièce déplacée
unset($_SESSION['x'], $_SESSION['y']);
}
break;

G. Daryl M. OKOU
a validé
if ($_SESSION['etat'] != 'confirmationPiece') {
$_SESSION['etat'] = 'erreur';
} else {
$_SESSION['etat'] = 'choixPiece';
unset($_SESSION['x'], $_SESSION['y']);
}
break;
if ($_SESSION['etat'] != 'victoire' && $_SESSION['etat'] != 'erreur') {
$_SESSION['etat'] = 'erreur';
}else{
Mathéo Beaudouin
a validé
/*** action etape 4 ***/
case 'creerPartie':
PDOSquadro::initPDO($_ENV['sgbd'], $_ENV['host'], $_ENV['database'], $_ENV['user'], $_ENV['password']);
$partie = new PartieSquadro($_SESSION['player']);
$json = $partie->toJson();
PDOSquadro::createPartieSquadro($_SESSION['player']->getNomJoueur(), $json);
$_SESSION['etat'] = 'home';
$_SESSION['partieCreer'] = true;
Mathéo Beaudouin
a validé
break;
Mathéo Beaudouin
a validé
case 'rejoindrePartie':
PDOSquadro::initPDO($_ENV['sgbd'], $_ENV['host'], $_ENV['database'], $_ENV['user'], $_ENV['password']);
$gameId = intval($_POST['gameId']);
$game = PDOSquadro::getPartieSquadroById($gameId);
Mathéo Beaudouin
a validé
if ($game) {
// Vérifier si la partie est déjà pleine
if (!empty($game['playertwo'])) {
$_SESSION['etat'] = 'erreur';
$_SESSION['message'] = 'Cette partie est déjà complète.';
} else {
// Ajouter le joueur à la partie
PDOSquadro::addPlayerToPartieSquadro($_SESSION['player']->getNomJoueur(), $gameId);
// Mettre à jour l'état de la session
$_SESSION['gameId'] = $gameId;
$_SESSION['etat'] = 'choixPiece';
}
} else {
$_SESSION['etat'] = 'erreur';
$_SESSION['message'] = 'Partie introuvable.';
}
Mathéo Beaudouin
a validé
break;

G. Daryl M. OKOU
a validé
header('Location: index.php');