====== Maçon ======
Un objet Maçon est un objet [[Robot]] qui possède un comportement particulier : il peut créer un décor à base d'éléments.
{{ :objets:builder_face_1.png?nolink |}}
Les objets [[Robot]] détectent automatiquement ce décors et se déplacent dedans.
===== Créer un objet Maçon =====
* Créer un objet Maçon :
max = new Maçon()
===== Actions =====
==== Actions des objets Robot ====
Les objets Maçon sont des objets Robot particuliers : ils possèdent donc déjà [[robot|toutes les actions des objets Robot]].
==== Actions supplémentaires ====
=== Construire le décor ===
* Poser un élément de décor
Ces actions permettent au Maçon de poser un élément de décor à l'endroit où il est :
max.poserSol()
max.poserMur()
max.poserEntrée()
max.poserSortie()
* Poser plusieurs éléments de décor
max.poserLigne(2,0,3,0,0,0,2)
{{information.png}} On peut ajouter autant de chiffres que l'on veut. Chaque chiffre correspond à un élément :
|0|vide| |
|1|mur|{{ :objets:wall.png?nolink |}}|
|2|sol|{{ :objets:brick.png?nolink |}}|
|3|entrée|{{ :objets:entrance.png?nolink |}}|
|4|sortie|{{ :objets:exit.png?nolink |}}|
=== Éléments de décor supplémentaires ===
* Ajouter un élément de décor
max.ajouterElement("fichier.png")
* Utiliser cet élément de décor
Un élément de décor ajouté peut être utilisé avec l'action ''%%poserLigne%%'', en utilisant un numéro à partir de 5 : l'élément 5 correspond au premier élément ajouté, le 6 au deuxième, etc.
* Définir si un élément est bloquant ou non
Certains éléments bloquent les déplacements, d'autres non. Par exemple un mur empêche un [[Robot]] de passer, mais pas une porte d'entrée.
On peut définir le caractère bloquant d'un élément à l'aide de l'action suivante :
max.définirBloc(2,true)
{{information.png}} ''%%2%%'' correspond au numéro de l'élément (ici le sol). ''%%true%%'' signifie que l'élément est bloquant. ''%%false%%'' signifie qu'il n'est pas bloquant.
=== Accélérer le mouvement ! ===
Le maçon peut poser le décor très rapidement grâce à l'action suivante :
max.sePresser()
Toutes les actions suivantes seront réalisées par le Maçon beaucoup plus rapidement.
=== Récupérer le labyrinthe créé par le maçon===
max.récupérerLabyrinthe()