Pages traduites Pages à traduire Pages en cours de traduction
A propos
 

Ceci est une ancienne révision du document !



Fonctions et propriétés des dialogues (Dialog)



DisplayOptions (dialog)

int Dialog.DisplayOptions(optional DialogOptionSayStyle)
Présente les options de ce dialogue à l'utilisateur et attend qu'il en sélectionne une. Le numéro de l'option sélectionné est retourné.

NOTE : Cette commande ne lance aucun script de dialogue, elle affiche simplement les options et attend que le joueur en choisisse une. Pour exécuter le dialogue normalement, utilisez plutôt la commande Dialog.Start.

Cette commande est utile si vous voulez implémenter votre propre système de dialogues, mais désirez tout de même utiliser les écrans standard de sélection d'options.

Le paramètre optionnel DialogOptionSayStyle détermine si l'option choisie est automatiquement prononcée par le personnage joueur. Vaut eSayUseOptionSetting par défaut, ce qui correpond aux réglages de l'option “Say” de l'éditeur de dialogues. D'autre part, vous pouvez utiliser eSayAlways , ce qui fera prononcer l'option indépendamment des réglages de l'éditeur ; ou eSayNever , ce qui ne prononcera pas l'option.

Si l'analyseur de texte est activé pour ce dialogue et que le joueur entre quelque chose plutôt que de sélectionner une option, la valeur spéciale DIALOG_PARSER_SELECTED sera retournée et AGS appellera automatiquement Parser.ParseText avec le texte entré par le joueur. Ainsi, vous pouvez appeler Parser.Said pour traiter le texte.

Exemple :
int resultat = dVieilHomme.DisplayOptions();
if (resultat == DIALOG_PARSER_SELECTED)
{
  Display("Quelque chose a été entré dans l'analyseur de texte !");
}
else
{
  Display("C'est l'option numéro %d qui a été choisie.", resultat);
}

affichera les options du dialogue dOldMan et affichera un message selon ce que le joueur a sélectionné.

Compatibilité : Supporté par AGS 3.0.2 et les versions plus récentes.

Voir aussi : Dialog.Start, Parser.ParseText


GetOptionState (dialog)

(Anciennement global function GetDialogOption, désormais obsolète)

Dialog.GetOptionState(int option)

Retourne si une option d'une conversation est disponible pour le joueur ou non.

OPTION correspond au numéro de l'option dans le dialogue, de 1 à la plus haut valeur de l'option pour ce sujet.

La valeur retournée peut avoir les valeurs suivantes :

eOptionOff
  L'option est désactivée - le joueur ne la verra pas
eOptionOn
  L'option est activée - le joueur peut la voir et l'utiliser
eOptionOffForever
  L'option est désactivée en permanence - aucune commande ne peut la
  réactiver.

Ce sont les mêmes valeurs que celles passées à Dialog.SetOptionState.

Exemple :

if (dJoeEnerve.GetOptionState(2) != eOptionOn)
  Display("C'est désactivé !");

affichera un message si l'option 2 du dialogue dJoeEnerve n'est pas actuellement accessible.

Voir aussi : Dialog.SetOptionState


GetOptionText (dialog)

String Dialog.GetOptionText(int option)
Retourne le texte de l'option de dialogue spécifiée.

OPTION est le numéro de l'option dans le dialogue, de 1 à la plus haute valeur sur ce sujet.

Exemple :
String texteOption = dJoeDupont.GetOptionText(3);
Display("L'option 3 du dialogue dJoeDupont est %s!", texteOption);

affichera le texte de la troisième option du dialogue dJoeDupont.

Compatibilité : Supporté par AGS 3.0.2 et les versions plus récentes.

Voir aussi : Dialog.OptionCount, Dialog.GetOptionState


ID property (dialog)

readonly int Dialog.ID;
Retourne le numéro ID du dialogue tel qu'affiché dans l'éditeur.

Cela peut être utile si vous utilisez des anciens scripts qui utilisent les numéro ID des dialogues.

Exemple :
Display("dPecheur est le dialogue numéro %d !", dPecheur.ID);

affichera le numéro ID du dialogue dFisherman.

Compatibilité : Supporté par AGS 3.1.0 et les versions plus récentes.


OptionCount property (dialog)

readonly int Dialog.OptionCount;
Retourne le nombre d'option que contient ce dialogue.

Ceci peut être utile dans un module de script si vous devez itérer sur l'ensemble des choix possibles dans le dialogue.

Exemple :
Display("dPecheur a %d options !", dPecheur.OptionCount);

affichera le nombre d'options dans le dialogue dFisherman.

Compatibilité : Supporté par AGS 3.0.2 et les versions plus récentes.

Voir aussi : Dialog.GetOptionText, Dialog.GetOptionState


SetOptionState (dialog)

(Anciennement fonction globale SetDialogOption, désormais obsolète)

Dialog.SetOptionState(int option, DialogOptionState)

Active/Désactive une option dans une conversation. Ceci vous permet d'ajouter des options supplémentaires à une conversation une fois que le joueur a accompli certaines choses.

OPTION est le numéro de l'option dans le sujet, de 1 à la plus haute valeur d'option pour ce sujet.

DialogOptionState indique ce qui doit arriver à cette option. Elle peut prendre les valeurs suivantes :

eOptionOff
  L'option est désactivée - le joueur ne la verra pas
eOptionOn
  L'option est activée - le joueur peut la voir et l'utiliser
eOptionOffForever
  L'option est désactivée en permanence - aucune commande ne peut la
  réactiver.

Elles sont équivalentes aux commandes de dialogue option-off, option-on et option-off-forever.

Exemple :

if (GetGlobalInt(10)==1)
    dialog[4].SetOptionState(2, eOptionOn);

activera l'option 2 du sujet numéro 4 si la variable entière globale 10 vaut 1.

Voir aussi : Dialog.GetOptionState, Dialog.Start, StopDialog


Start (dialog)

(Anciennement global function RunDialog, désormais obsolète)

Dialog.Start()

Lance une conversation à partir du sujet spécifié.

NOTE : La conversation ne démarrera pas immédiatement ; plutôt, elle sera exécutée lorsque la fonction de script courante sera achevée.

Si vous utilisez cette commande depuis une fonction dialog_request, elle aura pour effet de lancer ce nouveau sujet une fois que le script sera terminé.

Exemple :

dMarchand.Start();

lancera le sujet de conversation nommé dMarchand.

Voir aussi : Dialog.DisplayOptions, Dialog.SetOptionState


StopDialog

StopDialog ()
Cette commande ne peut être utilisée que depuis une fonction dialog_request. Elle dit à AGS que lorsque dialog_request est terminée, l'intégralité de la conversation devrait s'arrêter plutôt que continuer à exécuter le script du dialogue.

Vous pouvez utiliser cette fonction à la fin d'une conversation selon que le joueur a accompli ou possède ou non certaines choses.

Exemple :
 function dialog_request (int dr) {
 if (dr==1) {
   cEgo.AddInventory(iAffiche);
   StopDialog();
 }

donnera l'objet d'inventaire iAffiche au joueur puis terminera la conversation.

Voir aussi : Dialog.SetOptionState

 
ags48.1304245555.txt.gz · Dernière modification: 01/05/2011 12:25 par kitai
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki