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


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

DisplayOptions

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

(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.HasOptionBeenChosen, Dialog.SetOptionState


HasOptionBeenChosen

bool Dialog.HasOptionBeenChosen(int option)

Informe si le joueur a déjà choisi l'option spécifiée dans ce dialogue. C'est particulièrement utile lorsque vous dessinez vos propres options de dialogue personnalisées, puisque cela vous permet d'afficher différemment les options déjà explorées.

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

Exemple :

if (dJoeExcited.HasOptionBeenChosen(2))
  Display("The player has chosen option 2 in dialog dJoeExcited!");

affichera un message si le joueur a déjà utilisé l'option 2 du dialogue précédemment.

Compatibility: Supporté par AGS 3.1.1 et les versions plus récentes.

Voir aussi : Dialog.GetOptionState


GetOptionText

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

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

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

(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


ShowTextParser

readonly bool Dialog.ShowTextParser;

Retourne si le dialogue propose une zone de saisie permettant au joueur d'entrer du texte.

Cette propriété est définie dans l'éditeur de dialogues (Dialog Editor).

Exemple:

if (dFisherman.ShowTextParser) 
{
  Display("dFisherman possède une zone de saisie !");
}

affichera un message si dFisherman propose cette option.

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


Start

(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

 
dialog.txt · Dernière modification: 20/05/2014 15:29 par 129.199.161.6
 
Recent changes RSS feed Creative Commons License Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki