Display (string message, ...)Affiche un message à l'écran. Il sera affiché dans une boîte de messages standard, et centré au milieu de l'écran.
Vous pouvez insérer la valeur de variables dans le message. Pour plus d'information, voyez la section string formatting.
Exemple :
int mon_compteur;
Display ("Le compteur vaut actuellement %d.", mon_compteur);
affichera le texte où '%d' sera remplacé par la valeur de
la variable "mon_compteur".
NOTE : Display est une fonction bloquante - cela signifie que l'exécution du
script sera mise en pause jusqu'à ce que le joueur ait fait disparaître la
fenêtre de texte (en appuyant sur une touche ou sur la souris). Tant que la
fenêtre est affichée, tous les autres processus, comme les animations et l'affiche
des interfaces, seront suspendus.
Cette fonction peut être utilisée en réponse lorsque le joueur observe quelque chose.
Voir Aussi : DisplayAt, DisplayMessage, Character.Say, DisplayTopBar, String.Format
DisplayAt(int x, int y, int largeur, string message, ...)Identique à la fonction "Display", celle-ci vous permet cependant de définir la position et la taille de la fenêtre dans laquelle le texte sera affiché. Les variables X et Y définissent les coordonnées du coin haut-gauche de la fenêtre.
La variable LARGEUR définit la largeur maximale de la fenêtre. La hauteur est ensuite automatiquement calculée de façon à ce que le message soit inséré dans la fenêtre.
Vous pouvez insérer des valeurs de variables dans le message. Pour plus d'information, voyez la section string formatting.
Note : Ceci est une fonction bloquante. Voyez l'aide de "Display" pour plus d'information.
Exemple :
DisplayAt (50,50,100, "Ceci est un message");affichera le message aux coordonnées (50,50) dans une boîte de 100 pixels de largeur.
Voir Aussi : Display, DisplayAtY
DisplayAtY (int y, string message)Similaire à la fonction Display, celle-ci vous permet toutefois d'afficher la boîte de message à la coordonnée d'écran Y spécifiée. La coordonnée Y correspond au haut de la boîte de messsage. La position horizontale sera alors automatiquement calculée, comme d'habitude.
Exemple :
DisplayAt (50, "Ceci est un message.");affichera le message à la coordonnée Y 50.
Voir Aussi : Display, DisplayAt
DisplayMessage (int numero_message)Identique à la fonction Display, celle-ci utilise par contre comme texte un message défini dans l'Editeur de Pièce (Room Editor). Le message peut être un message propre à la pièce actuelle, ou un message global (si numero_message Identical to the Display function, but this uses a message text defined in the Room Editor rather than in the script. It will either use a message >= 500).
Exemple :
DisplayMessage(220);affichera le message 220 de l'éditeur des messages de la Pièce.
Voir Aussi : Display, DisplayMessageAtY
DisplayMessageAtY (int numero_message, int yposition)Identique à la fonction DisplayMessage, mais cette fois le haut de la boîte de texte est positionné à la coordonnée YPOSITION, de la même façon qu'avec DisplayAtY.
Ceci est utile si vous avez une image importante au milieu de l'écran que la boîte de texte couvrirait en temps normal - avec cette fonction vous pouvez ainsi placer le message sous ou au-dessus de cette image.
Exemple :
DisplayMessageAtY(527, 200);affichera le message global 527, dans la moitié basse de l'écran.
Voir Aussi : DisplayAtY, DisplayMessage
DisplayTopBar(int y, int couleur_texte, int couleur_fond, string texteTitre, string message, ...)Affiche un message dans une fenêtre texte, avec une barre de titre au dessus d'elle.
Cette fonction affiche MESSAGE d'une façon similaire à la commande Display, mais au-dessus de la fenêtre de texte, une barre de titre sera affichée contenant le texte "TEXTETITRE". Cette méthode était utilisée dans certains jeux Sierra des débuts pour indiquer qui était en train de parler en affichant leur nom dans le titre, et elle peut être utile si vous ne voulez pas dessiner une vue de discours pour le personnage.
Vous pouvez insérer la valeur de variables dans le message. Pour plus d'information, voir la section string formatting.
Le paramètre Y spécifie la coordonnée Y à l'écran où la boîte de message sera affichée. La valeur par défaut est 25.
Le paramètre COULEUR_TEXTE spécifie la couleur du texte de la barre de titre, et COULEUR_FOND spécifie la couleur d'arrière-plan de la barre de titre.
Vous pouvez passer 0 pour Y, COULEUR_TEXTE ou COULEUR_FOND - si vous faîtes ceci, la fonction utilisera les réglages qui lui auront été passés la dernière fois.
Il y a quelques variables de jeu disponibles afin de personnaliser l'aspect de la barre. Vous pouvez les modifier avant d'appeler DisplayTopBar.
game.top_bar_bordercolor définit la couleur utilisée pour la bordure de la barre (donnez
la même couleur que l'arrière-plan si vous ne voulez pas de bordure).
game.top_bar_borderwidth définit la largeur de la bordure de la barre, en pixels (1 par défaut).
game.top_bar_font définit la police utilisée dans la barre. La valeur par défaut est -1, ce qui signifie
que la police Normale actuelle est utilisée. Définissez cette variable à un numéro de police spécifique pour
utiliser cette police à la place.
Exemple :
DisplayTopBar(25, 8, 7, "Mage chaotique", "Sortez de ma demeure et en revenez jamais !");affichera "Sortez de ma demeure et ne revenez jamais !" dans la boîte de message, avec une barre de titre contenant "Mage chaotique". Le texte de la barre de titre sera d'un gris sombre, sur un fond gris vif.
Voir Aussi : Display, DisplayAt
GetDialogOption (int sujet, int choix)Vérifie si un choix dans une conversation est disponible pour le joueur ou non.
SUJET est le numéro du sujet (topic), de 0 au nombre de sujets - 1. Vous pouvez les trouver dans l'Editeur de Pièce (Room Editor).
CHOIX est le numéro du choix dans le sujet, de 1 à la valeur correspondant au choix le plus loin dans le sujet spécifié.
La valeur retournée peut valoir :
eOptionOff L'option est désactivée - le joueur ne peut pas la voir eOptionOn L'option est activée - le joueur peut la voir et cliquer dessus eOptionOffForever L'option est constamment désactivée - aucune commande ne peut la réactiver.Ces valeurs sont les mêmes que celles à passer dans SetDialogOption.
Exemple :
if (GetDialogOption (4, 2) != eOptionOn)
Display("C'est désactivé.");
Affichera un message si le choix 2 du sujet 4 n'est pas actuellement disponible.Voir Aussi : SetDialogOption
RunDialog (int sujet)Démarre une conversation en utilisant le sujet numéro SUJET. Ceci est identique à la commande d'interaction de pièce "Run dialog topic VAL" ("Lancer le sujet de dialogue VAL").
NOTE : La conversation ne débutera pas immédiatement ; la fonction attendra la fin de l'exécution du script courant pour la lancer.
Si vous utilisez cette commande depuis la fonction dialog_request, cela signifiera que le jeu devra retourner à ce nouveau sujet lorsque le script aura terminé son exécution.
Exemple :
RunDialog(3);lancera le sujet de conversation numéro 3.
Voir Aussi : SetDialogOption
SetDialogOption (int sujet, int choix, DialogOptionState)Définit si un choix dans une conversation est disponible pour le joueur ou non. Ceci vous permet d'ajouter des choix supplémentaires à une conversation lorsque le joueur a fait certaines choses.
SUJET est le numéro du sujet, de 0 au nombre de sujets - 1. Vous pouvez les trouver dans l'Editeur de Pièce (Room Editor).
CHOIX est le numéro du choix dans le sujet spécifié, de 1 au choix le plus loin dans le sujet.
Le paramètre DialogOptionState définit ce qu'on fait au choix. Il peut prendre la valeurs suivantes :
eOptionOff L'option est désactivée - le joueur ne peut pas la voir eOptionOn L'option est activée - le joueur peut la voir et cliquer dessus eOptionOffForever L'option est constamment désactivée - aucune commande ne peut la réactiver.Ceci est équivalent aux commandes de dialogue option-off, option-on et option-off-forever.
Exemple :
if (GetGlobalInt(10)==1)
SetDialogOption(4, 2, eOptionOn);
activera le choix 2 du sujet numéro 4 si l'Entier Global 10 vaut 1.Voir Aussi : GetDialogOption, RunDialog, StopDialog
SetSkipSpeech (int nouveau_mode)Définit si le joueur peut ou non passer le discours en cliquant avec la souris. Cette option est initialement définie par une case à cocher dans l'onglet d'accueil de l'éditeur (General Settings/Réglages généraux), mais cette fonction vous permet de la modifier en cours de jeu. La valeur de NOUVEAU_MODE peut être :
0 le joueur peut passer le texte en cliquant ou en appuyant sur une touche 1 le joueur peut passer le texte uniquement en appuyant sur une touche, et non en cliquant 2 le joueur ne peut passer le texte ni avec la souris ni avec le clavier 3 le texte ne s'efface pas automatiquement ; le joueur doit cliquer ou appuyer sur une touche à chaque fois 4 le joueur peut passer le texte uniquement en cliquant, et non en appuyant sur une toucheExemple :
SetSkipSpeech(2);fera que le joueur ne pourra passer le texte ni en appuyant sur un bouton de souris, ni sur une touche.
SetSpeechFont (int numero_font)Change la police utilisée pour le discours des personnages. NUMERO_FONT peut aller de 0 au nombre de polices que vous avez. Par défaut, les seules valeurs disponibles sont 0 et 1.
Exemple :
SetSpeechFont (5);utilisera la police numéro 5 pour le discours des personnages.
Voir Aussi : SetNormalFont
SetSpeechStyle(SpeechStyle)Change la façon dont le texte de discours est affiché. Ceci modifie le réglage initialement défini dans l'éditeur. SpeechStyle peut valoir :
eSpeechLucasarts texte au-dessus de la tête des personnages eSpeechSierra avec portrait du personnage eSpeechSierraWithBackground avec portrait du personnage + fenêtre de fond pour le texte eSpeechFullScreen style QFG4 : images de dialogue sur tout l'écranExemple :
SetSpeechStyle(eSpeechSierra);changera le style du discours pour l'afficher à côté d'un portrait du personnage.
StopDialog ()Cette commande peut uniquement être utilisée dans la fonction dialog_request. Elle dit à AGS que toute la conversation doit s'interrompre plutôt que continuer normalement selon le script du dialogue, une fois que le code contenu dans dialog_request aura été exécuté.
Vous pouvez utiliser cette fonction pour achever une conversation selon que le personnage possède/a fait une certaine chose.
Exemple :
function dialog_request (int dr) {
if (dr==1) {
character[EGO].AddInventory(iPoster);
StopDialog();
}
donnera l'objet d'inventaire Poster au joueur puis quittera la conversation.Voir Aussi : SetDialogOption