Création de jeux avec Game Maker
Polices de caractères et Texte
Vous aurez parfois besoin dans vos jeux d'afficher des textes. Pour ce faire, vous indiquerez la police (ou fonte) de caractères à utiliser. Les polices ou fontes peuvent être définies en créant des ressources de polices de caractères (font resources) (en utilisant soit la programmation dans Game Maker, soit en employant des fonctions pour créer ces ressources). Plusieurs fonctions existent et permettent d'afficher des textes de différentes façons. Pour chacune des fonctions employées, vous spécifierez la position du texte à l'écran. Deux fonctions seront à utiliser pour régler l'alignement horizontal et vertical du texte en accord avec la position indiquée.Les fonctions suivantes peuvent être employées pour afficher du texte :
draw_set_font(font) Indique la police de caractères à utiliser pour afficher du texte. La valeur -1 sera utilisée pour employer la fonte par défaut (Arial 12).
draw_set_halign(halign) Régle l'alignement horizontal à utiliser lors de l'affichage de texte. Choisissez comme paramètre halign l'une des constantes ci-dessous :
fa_left
fa_center
fa_rightdraw_set_valign(valign) Détermine l'alignement vertical à utiliser pour afficher du texte. Les constantes suivantes peuvent être utilisées :
fa_top
fa_middle
fa_bottomdraw_text(x, y, string) Affiche la chaîne à la position (x,y), à l'aide de l'actuelle couleur du crayon et la valeur alpha. Un symbole # ou un retour chariot chr(13) ou encore un saut à la ligne suivante chr(10) seront interprétés comme des caractères de nouvelle ligne (newline). Ainsi, vous serez en mesure d'afficher du texte sur plusieurs lignes (utilisez \# si vous souhaitez utiliser le symbole # lui-même).
draw_text_ext(x, y, string, sep, w) Similaire à la fonction précédente mais cette fois-ci, vous pourrez indiquer deux valeurs supplémentaires. En premier lieu, le paramétre sep indiquera la distance de séparation entre deux lignes pour tout texte s'affichant sur plusieurs lignes. Utilisez la valeur -1 afin d'obtenir la distance par défaut. Employez le paramétre w pour préciser la largeur du texte en pixels. Les lignes dépassant cette longueur seront sectionnées avec un espace ou un trait d'union. Utilisez la valeur -1 pour interdire le sectionnement des lignes.
string_width(string) Affiche la largeur de la chaîne de la police courante telle qu'elle serait affichée avec la fonction draw_text(). A utiliser pour positionner des graphiques de manière précise.
string_height(string) Hauteur de la chaîne de la police courante telle qu'elle serait affichée avec la fonction draw_text().
string_width_ext(string, sep, w) Largeur de la chaîne de la police courante telle quelle serait affichée avec la fonction draw_text_ext(). On l'utilise pour positionner précisément des graphiques.
string_height_ext(string, sep, w) Hauteur de la chaîne de la police courante telle qu'elle serait affichée avec la fonction draw_text_ext().
Les routines suivantes vous permettront d'afficher du texte selon une certaine échelle et orientation mais également vous autoriseront l'emploi de couleurs progressives dans vos textes. Ces fonctions ne sont disponibles que dans la version enregistrées !
draw_text_transformed(x, y, string, xscale, yscale, angle) Affiche la chaîne à la position (x,y) de la même manière que les fonctions vues plus haut mais en effectuant une mise à l'échelle horizontale et verticale à l'aide des facteurs indiqués et en inclinant le texte de angle degrés dans le sens contraire des aiguilles d'une montre.
draw_text_ext_transformed(x, y, string, sep, w, xscale, yscale, angle) Combine les fonctions draw_text_ext et draw_text_transformed. Cela vous permettra d'afficher du texte sur plusieurs lignes tout en appliquant une orientation et une mise à l'échelle de ce texte.
draw_text_color(x, y, string, c1, c2, c3, c4, alpha) Affiche la chaîne à la position (x,y) comme précédemment. Les quatre couleurs indiquent respectivement les couleurs du coin supérieur gauche, supérieur droit, inférieur droit et inférieur gauche du texte. alpha correspond à la transparence alpha à utiliser (0-1).
draw_text_ext_color(x, y, string, sep, w, c1, c2, c3, c4, alpha) Similaire à la fonction draw_text_ext() mais avec des vertices de couleurs.
draw_text_transformed_color(x, y, string, xscale, yscale, angle, c1, c2, c3, c4, alpha) Similaire à la fonction draw_text_transformed() mais avec des vertices de couleurs.
draw_text_ext_transformed_color(x, y, string, sep, w, xscale, yscale, angle, c1, c2, c3, c4, alpha) Similaire à la fonction draw_text_ext_transformed() mais avec des vertices de couleurs.
<< Traduction française par Philippe Ragni - (2005) >>
Alternative versions
Also available in:
Download helpfile