Refonte du README.md
Ajout de remerciements, des règles du jeu, d'un exemple réalisé dans catwalk-cli, ainsi que l'explication d'un lot de fonctionnalités
This commit is contained in:
		
							
								
								
									
										63
									
								
								README.md
									
									
									
									
									
								
							
							
						
						
									
										63
									
								
								README.md
									
									
									
									
									
								
							| @@ -1,6 +1,12 @@ | |||||||
| # Bibliothèque libcatwalk | # Bibliothèque libcatwalk | ||||||
|  |  | ||||||
| La bibliothèque du jeu Catwalk, servant de base pour que ses différentes interfaces puissent fonctionner | La bibliothèque du jeu Catwalk, servant de base pour que ses différentes interfaces puissent fonctionner. | ||||||
|  |  | ||||||
|  | ## Remerciements | ||||||
|  |  | ||||||
|  | Merci à [Arnaud Gazagnes](mailto:arnaud.gazagnes@ac-lyon.fr) pour la compilation d'une multitude de jeux dans un document : [Grilles logiques, 69 jeux de grilles](http://math.univ-lyon1.fr/irem/IMG/pdf/GrillesLogiques.pdf). | ||||||
|  |  | ||||||
|  | Merci à [PuzzlePicnic](http://puzzlepicnic.com) pour avoir hébergé une [description de ce jeu](http://puzzlepicnic.com/genre?catwalk), et de ce fait permis à Arnaud Gazagnes de le recenser. | ||||||
|  |  | ||||||
| ## Comment s'organise-t-elle ? | ## Comment s'organise-t-elle ? | ||||||
|  |  | ||||||
| @@ -42,4 +48,57 @@ $ sudo make uninstall | |||||||
| ou | ou | ||||||
| ``` | ``` | ||||||
| # make uninstall | # make uninstall | ||||||
| ``` | ``` | ||||||
|  |  | ||||||
|  | ## Règles du jeu | ||||||
|  |  | ||||||
|  | Le but du jeu est de dessiner un chemin de chaque chat à son propre bol de lait. | ||||||
|  |  | ||||||
|  | Les nombres à gauche et au-dessous de la grille indiquent combien de cases sont traversées par ce chemin, chats et bols compris. | ||||||
|  |  | ||||||
|  | Les chats se promènent seulement horizontalement et verticalement et aucune case n’est visitée plus d’une fois. | ||||||
|  |  | ||||||
|  | Source : Arnaud Gazagnes (arnaud.gazagnes@ac-lyon.fr), dans [Grille logiques, 69 jeux de grilles](http://math.univ-lyon1.fr/irem/IMG/pdf/GrillesLogiques.pdf). | ||||||
|  |  | ||||||
|  | ## Exemple | ||||||
|  |  | ||||||
|  | Cet exemple a été réalisé grâce à [catwalk-cli](https://git.kaz.bzh/valentin/catwalk-cli/). | ||||||
|  |  | ||||||
|  | ``` | ||||||
|  | $ catwalk-cli | ||||||
|  |                                          | ||||||
|  |            1       1       2       0     | ||||||
|  |                                          | ||||||
|  |        +-------+-------+-------+-------+ | ||||||
|  |        | /\_/\ |       |       |       | | ||||||
|  |    3   |( o.o )|       |       |       | | ||||||
|  |        | > ^ < |       |       |       | | ||||||
|  |        +-------+-------+-------+-------+ | ||||||
|  |        |       |       |  ==   |       | | ||||||
|  |    1   |       |       | /mi\  |       | | ||||||
|  |        |       |       | \lk/  |       | | ||||||
|  |        +-------+-------+-------+-------+ | ||||||
|  |        |       |       |       |       | | ||||||
|  |    0   |       |       |       |       | | ||||||
|  |        |       |       |       |       | | ||||||
|  |        +-------+-------+-------+-------+ | ||||||
|  |        |       |       |       |       | | ||||||
|  |    0   |       |       |       |       | | ||||||
|  |        |       |       |       |       | | ||||||
|  |        +-------+-------+-------+-------+ | ||||||
|  | ``` | ||||||
|  |  | ||||||
|  | ## Fonctionnalités | ||||||
|  | + Création d'un objet `struct grid` possédant: | ||||||
|  |   - une largeur; | ||||||
|  |   - une paire de coordonnées de la case de départ; | ||||||
|  |   - une paire de coordonnées de la case d'arrivée; | ||||||
|  |   - un pointeur vers des "indicateurs", des nombres qui servent de contraintes au joueur; | ||||||
|  |   - un pointeur vers le parcours du joueur, quand il existe (sinon le pointeur est nul). | ||||||
|  | + Il existe des fonctions pour générer une grille, pour régénérer une grille, et pour vérifier une grille jouée. | ||||||
|  | + Création d'un objet `struct indicators`, représentant les nombres aux côtés de la grille. Il possède deux pointeurs vers des tableaux d'entiers, un pour chaque axe, horizontal et vertical. | ||||||
|  | + Création d'un objet `struct route`, représentant un parcours. Cette structure est utilisée à la fois pour la génération de la grille, et pour les mouvements du joueur. Il s'agit en réalité d'une liste doublement chaînée. | ||||||
|  | + Cet objet dépend d'un autre objet `struct element` qui contient les coordonnées d'une case, et qui contient également les pointeurs de l'élément précédent et de l'élément suivant, dans le contexte de la liste doublement chaînée. | ||||||
|  | + Création d'un objet `struct directions`, un objet qui sert à identifier les cases sur lesquelles le chat peut aller. Sur l'exemple ci-dessus, le chat se situe sur la case `(0, 0)`, et peut se déplacer sur les cases de coordonnées `(0, 1)` et `(1, 0)`. Ici, la variable `count` de l'objet est égale à 2 car il y a deux possibilités. | ||||||
|  |  | ||||||
|  | Cette bibliothèque est utilisée, pour l'heure, par le seul projet [catwalk-cli](https://git.kaz.bzh/valentin/catwalk-cli/). | ||||||
		Reference in New Issue
	
	Block a user