Ediwiki

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

Outils pour utilisateurs

Outils du site


commandes:inputquery

InputQuery

Syntaxe

La syntaxe est la suivante :

InputQuery('Question à poser','réponse 1','réponse 2')

Explications

Cette fonction permet de poser une question aux joueurs et de proposer un choix de réponses prédéfinies.

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

Le InputQuery définit la question à poser ainsi que les diverses réponses.
Le OnResultQuery définit que les commandes qui le suivent seront exécutées si la réponse donnée par le joueur correspond.
Le QueryEnd indique la fin de la question et que les actions suivantes s'exécuteront quoiqu'il en soit.

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

InputQuery('Voulez vous avoir des informations?','oui','non','combien ça coute?')
OnResultQuery('oui')
// Les actions suivantes seront exécutées si la réponse est oui
Message('Eh bien vous êtes dans la section InputQuery de l'ediwiki!')
OnResultQuery('non')
// Les actions suivantes seront exécutées si la réponse est non
Message('Vous êtes sûr de ne pas en vouloir? Comme vous voudrez...')
// Ici attention d'orthographier ce texte de manière identique a l'InputQuery
OnResultQuery('combien ça coute?')
Message('Mais c'est gratuit!')
QueryEnd
// Le message suivant s'affichera dans tout les cas
Message('Merci de votre attention')

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/inputquery.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