Teacher's Guide
move_forward()
Syntaxe
player.move_forward([number of steps])
Cette fonction est utilisée pour faire avancer le joueur dans la direction dans laquelle il regarde, à condition qu'aucune collision ne bloque sa trajectoire. Vous pouvez spécifier le nombre de pas que vous souhaitez répéter pour cette fonction ou laisser vide pour que l'action s'exécute une seule fois.
Si la fonction n'est pas fournie avec d'aucun argument, le joueur avancera d'un seul pas.
Exemple
player.move_forward(3)
Ce code fera avancer le joueur de trois pas sur la carte.

turn_left()
Syntaxe
player.turn_left()
Cette fonction permet de faire tourner le joueur vers la gauche, modifiant ainsi sa direction actuelle vers la gauche.
Exemple
player.turn_left()
player.move_forward()
Ce code fera tourner le joueur vers la gauche par rapport à sa direction actuelle, puis le fera avancer dans cette nouvelle direction.

turn_right()
Syntaxe
player.turn_right()
Cette fonction permet de faire tourner le joueur vers la droite, modifiant ainsi sa direction actuelle vers la droite.
Exemple
player.turn_right()
player.move_forward()
Ce code fera tourner le joueur vers la droite par rapport à sa direction actuelle, puis le fera avancer dans cette nouvelle direction.

push()
Syntaxe
player.push()
Cette fonction est utilisée pour pousser un objet dans la direction dans laquelle le joueur regarde, à condition qu'aucune collision ne bloque la trajectoire de l'objet.
Exemple
player.turn_left()
player.push()
Ce code fera tourner le joueur vers la gauche et poussera un objet mobile dans la direction dans laquelle il regarde.

speak()
Syntaxe
player.speak([string to speak])
Cette fonction permet au joueur d'énoncer une chaîne de caractères spécifiée en argument. Dans le jeu, cela se traduit par l'affichage de la chaîne au-dessus de la tête du joueur.
Exemple
player.speak("Hello World")
Ce code affichera la phrase « Hello World » au-dessus de la tête du joueur.

build()
Syntaxe
player.build([object to build])
Cette fonction permet au joueur de construire un objet indiqué dans l'argument de la fonction. Une sélection limitée d'objets est disponible pour la construction, avec certaines exigences spécifiques à chaque objet. Les objets seront construits devant la direction dans laquelle le joueur regarde, à condition que la zone ne soit pas occupée par un autre objet ou que l'objet ne puisse pas être construit sur le type de terrain en question.
| Object | Coût | Argument | Description |
|---|---|---|---|
| Bridge | 4 logs | "bridge" | Construit un pont pour traverser |
| Grain Stack | 4 grain | Class Object Name | Produit une pile de blé |
| Wood Road | 4 planks | Class Object Name | Ajoute une bande de chemin en bois |
| Stone Road | 4 stone | Class Object Name | Ajoute une bande de chemin en pierre |
| Big Green house | 4 planks | Class Object Name | Construit une maison pour poules |
| Small Blue house | 4 planks | Class Object Name | Construit une maison pour poules |
| Big Orange house | 4 planks | Class Object Name | Construit une maison pour poules |
| Small Red house | 4 planks | Class Object Name | Construit une maison pour poules |
Exemple
player.build("bridge")
Ce code fera construire un pont devant le joueur, dans la direction dans laquelle il regarde.

water()
Syntaxe
player.water()
Cette fonction peut être utilisée pour arroser des objets dans le jeu, comme arroser des cultures ou remplir des plateaux d'eau. Dans le jeu, cela est généralement utilisé dans le cadre de l'agriculture et de l'autosuffisance.
Exemple
player.water()
Ce code permet au joueur d'arroser un objet dans la direction dans laquelle il regarde.

collect()
Syntaxe
player.collect(string)
Cette fonction est utilisée pour collecter des ressources qui ne peuvent pas être réclamées dans votre inventaire. Elle est généralement utilisée pour reconstituer des objets d'inventaire susceptibles de s'épuiser, par exemple remplir une gourde d'eau.
Exemple
player.collect("water")
player.turn_left()
player.water()
Ce code permettra au joueur de collecter de l'eau à partir d'une source d'eau située dans sa direction, puis de tourner à gauche pour arroser un objet.

open()
Syntaxe
player.open()
Cette fonction est utilisée pour ouvrir des portes et des conteneurs, ce qui peut être utile pour franchir des entrées ou ouvrir des conteneurs afin de ramasser ou déposer des objets.
Exemple
player.turn_left()
player.open()
player.move_forward()
Ce code fera tourner le joueur vers la gauche afin d'ouvrir une porte, puis de la franchir.

close()
Syntaxe
player.close()
Cette fonction est utilisée pour fermer des portes et des conteneurs, ce qui peut être utile pour refermer une porte derrière soi ou fermer un conteneur après y avoir déposé quelque chose.
Exemple
player.open()
player.collect("item")
player.close()
Ce code fera en sorte que le joueur ouvre une caisse, ramasse un objet, puis referme la caisse par la suite.

place()
Syntaxe
player.place(object)
Cette fonction est utilisée pour placer un objet, un item ou une variable à un endroit où le placement d'objets est autorisé. Elle est généralement utilisée pour stocker des items dans un conteneur ou déposer des objets à des emplacements spécifiés.
Exemple
wheat = 6
player.place(wheat)
Ce code illustre le stockage par le joueur d'un nombre dans une variable nommée wheat, puis l'utilisation de la fonction place() pour placer cette variable à un endroit désigné.

combine()
Syntaxe
player.combine(mixture)
Cette fonction permet au joueur de combiner différents objets pour produire un tout nouvel objet. Elle est généralement utilisée pour mélanger des ingrédients afin de créer des aliments, des boissons ou d'autres substances.
| Combination | Ingredients |
|---|---|
| Radish Dressing | 3 milk, 2 cream, 3 lettuce, 5 radish |
| Fruit Juice | 1 water, 1 empty jar, 1 orange, 1 peach, 1 pear, 1 apple |
| Grape Juice | 1 grape, 1 empty jar |
| Berry Milk | 1 milk, (1 red berry or 1 strawberry) |
| Salad | 2 carrot, 2 tomato, 6 lettuce, 2 cucumber |
Exemple
player.combine(jar)
Ce code fera en sorte que le joueur prenne tout ce qui est contenu dans une liste nommée « jar » et les combine pour former un nouvel objet/item.

plant()
Syntaxe
player.plant(dictionary,key)
Cette fonction est utilisée pour planter des objets dans le sol, généralement pour planter des cultures. Elle utilise des dictionnaires et prend deux arguments : le nom du dictionnaire et la clé du dictionnaire.
Exemple
player.plant(seeds, "Eggplant")
player.water()
Dans ce code, le joueur plante des graines d'aubergine dans le sol, puis les arrose.

write()
Syntaxe
await player.write(message)
Cette fonction permet d'afficher un message. C'est une fonction async qui affiche une fenêtre contextuelle contenant un message passé en paramètre. Le programme est en pause jusqu'à ce que le message soit fermé.
Exemple
await player.write("Hello World")
Dans ce code, une fenêtre contextuelle affiche le message "Hello World", mettant le programme en pause jusqu'à ce que le joueur ferme le message.

read()
Syntaxe
await player.read()
Cette fonction permet d'afficher un message. C'est une fonction async qui affiche une fenêtre contextuelle contenant un message préenregistré dans le niveau. Le programme est en pause jusqu'à ce que le message soit fermé.
Exemple
await player.read()
Dans ce code, une fenêtre contextuelle affiche un message préenregistré intégré manuellement dans le niveau, mettant le programme en pause jusqu'à ce que le joueur ferme le message.

question()
Syntaxe
await player.question(question)
Cette fonction permet d'afficher un message avec une question à oui ou non. C'est une fonction async qui affiche une fenêtre contextuelle avec un message fourni et renvoie une variable booléenne en fonction de la réponse.
Exemple
async def question_function():
answer = await player.question("Question you would like to ask")
if answer:
# Actions to take if answer is Yes
else:
# Actions to take if answer is No
Dans ce code, une fenêtre contextuelle affiche une question avec des boutons Oui et Non, mettant le programme en pause jusqu'à ce que le joueur fasse une sélection.

display()
Syntaxe
await player.display("message")
Cette fonction permet d'afficher un message. C'est une fonction async qui affiche une fenêtre contextuelle contenant un message sans données préenregistrées. Elle est destinée à afficher des données brutes qui ne peuvent être correctement scriptées. Le programme est en pause jusqu'à ce que le message soit fermé. Une fois configurée en interne, aucun contenu scripté ne peut être inclus afin de permettre l'affichage de n'importe quel type de message.
Exemple
await player.display("Whatever I want to put here")
Dans ce code, une fenêtre contextuelle affiche le message spécifié, quel qu'il soit. Dans cet exemple, il affiche "Whatever I want to put here".
