La première chose la plus simple à faire est de créer un terrain très simple, qui permet toujours au joueur de venir dessus.
Le code suivant crée une nouvelle sous-classe de composant, appelée TSimpleField :
unit FunDelphiSample; uses FunLabyBase; field TSimpleField name 'Terrain simple'; image 'Fields/WoodenFloor'; end; end.
C'est quoi ce charabia ?
Identificateurs, mots-clef, symboles, etc.
Vous pouvez constater que plusieurs "mots" sont en bleau marine gras. Ces mots sont appelés des mots-clef. Notez qu'ils doivent être écrits en minuscules, sinon il ne seront plus des mots-clef.
Les mots qui sont en noir simple sont appelés des identificateurs. Les identificateurs suivent les mêmes règles que les ID de composants. De plus, une convention est de les écrire avec une majuscule au début de chaque mot.
Le texte plus libre qui se trouve entre des apostrophes est appelé une chaîne de caractères. À l'intérieur d'une chaîne de caractères, vous pouvez mettre un texte tout à fait libre, mais sur une seule ligne.
Les point-virgule (;) sont un des nombreux symboles du langage FunDelphi. Le point-virgule est le plus important d'entre eux : il termine la plupart des lignes, c'est-à-dire toutes les lignes qui sont effectivement la fin de quelque chose. La ligne commençant par field n'est justement pas la fin de quelque chose, c'est le début de toutes les "explications" qui décrivent le terrain.
Signification du code
Le code ci-dessus est relativement simple. La ligne commençant par field déclare une nouvelle classe de composant, nommée TSimpleField. Tout ce qui se trouve entre cette ligne et la ligne end; de même niveau précise ce que fait ce composant.
La ligne name indique le nom du composant. La ligne image indique une liste, séparée par des virgules, de noms de fichiers image pour faire le dessin du terrain. Consultez le contenu du dossier Library\Resources\Images\ des documents de FunLabyrinthe (dans vos documents publics) pour trouver de très nombreuses images.
Créer le composant
Le lecteur attentif se souviendra que le code ci-dessus crée une nouvelle classe de composant, pas le composant lui-même. Pour créer le composant de cette classe, il faut ajouter une section components, comme ceci :
unit FunDelphiSample; uses FunLabyBase; components SimpleField: TSimpleField; field TSimpleField name 'Terrain simple'; image 'Fields/WoodenFloor'; end; end.
Ces deux nouvelles lignes précisent qu'il faut créer un composant dont l'ID est "SimpleField" et la classe est TSimpleField. Ceci peut vous paraître superflu : vous devez commencer à sentir qu'à chaque nouveau composant correspond sa classe, donc pourquoi ne pas tout faire en une seule fois ?
La raison essentielle est que certaines classes de composants permettent de créer plusieurs composants de la même classe. Par exemple, les quatre flèches et le carrefour sont tous de la classe TArrow ; une propriété les différencie.
Recharger et placer le composant
Afin que votre nouveau composant apparaisse dans la palette des composants, rechargez avec le bouton ou Ctrl+Shift+F9. Ceci enregistre, compile, puis recharge le projet et tous les fichiers sources ouverts.
Vous pourrez trouver un nouveau composant, avec un dessin de plancher, sous l'onglet Terrains.