1. Alexandre Macabies
  2. enseirb-blokus

Overview

HTTPS SSH
                ┌────────────────────────────────────────┐
                │                Blokus                  │
                ├────────────────────────────────────────┤
                │                                        │
                │ Projet programmation Lisp / Semestre 6 │
                │              ENSEIRB-MATMECA           │
                │ ~fbouquet, ~jdelhommeau, ~mherbreteau, │
                │     ~amacabies, ~gvandeneeckhoutte     │
                │                                        │
                └────────────────────────────────────────┘

                            │ Description │
                            └─────────────┘

Ce projet est écrit en Common Lisp. Il implémente une interface
graphique pour jouer à « Blokus », un jeu où le but est de placer
des pièces sur un plateau divisé en cases rectangulaires, de telle
sorte à être le premier à placer toutes ses pièces.


                            │ Utilisation │
                            └─────────────┘

  $ ./play-blokus.sh

  Ce script bash se contente de lancer la commande suivante :
    `clisp ./src/gui.lisp`
  qui contient la logique principale du jeu et l'interface graphique.

  Le jeu commence en cliquant sur « Commencer la partie ! »
  Sur une machine un peu réçente, le programme devrait être manipulable
  avec la souris. Sinon, utilisez le clavier.


  ### Mode d'emploi rapide
  
    En début de partie, après avoir cliqué sur "commencer la partie", 
    si l'utilisateur souhaite jouer contre des "IA", il doit
    appuyer sur "1" pour une IA, "2" pour deux IA, "3" pour trois
    IA, et "4" pour observer des IA jouer ensemble. Il ne faut
    pas utiliser le clavier numérique (non reconnu par LTK).
    Pour jouer avec quatre joueurs réels, commencez à poser
    les pièces normalement.  
  
    Au premier tour, les emplacements où chaque joueur peut poser
    sa première pièce sont marqués d'un petit cercle coloré.

    L'ordre des joueurs est bleu, jaune, rouge, vert.

    Tant qu'une pièce n'est pas localisée à un emplacement valide,
    elle est grise. Elle prend la couleur du joueur en cours lorsque
    celui-ci peut effectivement jouer.

    La partie se termine quand il n'y a plus de place sur le plateau
    ou que tous les joueurs sauf un ont posé toutes leurs pièces (ce
    qui est peu probable).

    Quand le mode ‘triche’ est activé, les cellules où le joueur peut espérer
    placer une pièce (les coins) sont colorées en orange.


  ### Manipulation

    Déplacer la pièce ................... mouvement de la souris
                                       ou flèches directionnelles

    Poser la pièce ...................... clic gauche
                                       ou <Entrée>

    Changer de pièce .................... clic sur une pièce de la pioche
                                       ou <c>

    Rotations (anti)horaires ............ clic droit
                                       ou <a> et <z>

    Miroirs horizontal/vertical ......... <r> et <t>

    Faire jouer une IA .................. <n>
    
    Interrupteur mode ‘triche’ .......... <w> (on/off)

    Quitter le jeu avant la fin ......... <échap>