Ediwiki

Wiki officiel de l'éditeur de carte du jeu Slayers Online

Outils pour utilisateurs

Outils du site


commandes:onresultquery

OnResultQuery

Syntaxe

La syntaxe est la suivante :

OnResultQuery('Reponse')

Explications

Cette fonction permet de définir que le bloc de commande suivant sera exécuté si la réponse du InputQuery sélectionnée par le joueur correspond.

Cette fonction s'utilise avec l'aide des commandes InputQuery et QueryEnd afin de former des réponses cohérentes.

Veillez à bien reprendre strictement la même syntaxe entre les questions du InputQuery et les réponses du OnResultQuery car sinon l'éditeur ne trouvera pas la bonne réponse parmi la liste.

Exemple

voir la page sur InputQuery

Particularités

Multiples InputQuery

Il est possible d'ajouter un InputQuery dans un OnResultQuery. Pour ce faire, la démarche est assez simple, il suffit juste de n'indiquer qu'un seul QueryEnd tout à la fin du code.

InputQuery('Bonjour, que désirez-vous ?','A boire.','A manger.','Rien.')
OnResultQuery('A boire.')
InputQuery('D'accord, que voulez-vous boire ?','De l'eau.','Du café.')
OnResultQuery('De l'eau.')
Message('Voilà votre eau.)
OnResultQuery('Du café.')
Message('Voilà votre café.)
OnResultQuery('A manger.')
InputQuery('D'accord, que voulez-vous manger ?','Du pain.','Une pomme.')
OnResultQuery('Du pain.')
Message('Voilà votre pain.)
OnResultQuery('Une pomme')
Message('Voilà votre pomme.)
OnResultQuery('Rien.')
QueryEnd

Attention toutefois, si vous avez plusieurs questions de suite contenant les mêmes réponses (Ex: Oui/Non), faites en sorte d'avoir au moins un détail qui diffère pour vous assurer du bon fonctionnement (Ex : Oui/Oui. ou Oui/Bien sûr).

Utilisation de Condition

Si vous avez besoin d'inclure une condition dans un OnResultQuery, c'est possible. Toutefois, pour le bon fonctionnement, il faudra vous assurer de passer par une condition toujours valide avant d'enchaîner sur un autre OnResultQuery ou sur le QueryEnd. Cela peut se faire notamment via un “Condition('1=1')” placé avant le OnResultQuery ou le QueryEnd qui suit.

Variable[13]=%rand(2)%
InputQuery('Bonjour, que désirez-vous ?','A boire.')
OnResultQuery('A boire.')
Condition('Variable[13]=1')
Message('Tenez à boire')
Condition('Variable[13]=2')
Message('Nous sommes à sec !')
QueryEnd
Variable[13]=0

Doit s'écrire :

Variable[13]=%rand(2)%
InputQuery('Bonjour, que désirez-vous ?','A boire.')
OnResultQuery('A boire.')
Condition('Variable[13]=1')
Message('Tenez à boire')
Condition('Variable[13]=2')
Message('Nous sommes à sec !')
Condition('1=1')
QueryEnd
Variable[13]=0
commandes/onresultquery.txt · Dernière modification : 2022/09/25 19:11 de 127.0.0.1

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki