就,我说一个开始指令,这时才会在说出游戏指令时回应,说结束指令或没有说开始bot就不回应在此游戏框架里的指令需要怎么做?我图片里是我乱七八糟搞的,只能回应
就,很苦恼,或者是可以进行不止一句对话的方式?希望有佬可以帮帮我
meow
已解决,打了blockly的tag应该没事吧?如果有问题请尽快告诉我让我改!!!
C’est pourquoi je recommanderais de clarifier les demandes et les mises en œuvre avant de toucher réellement au code (même s’il s’agit de blocs pour lesquels vous n’avez pas à taper explicitement des mots-clés avec un “langage de programmation” valide).
La demande de l’OP, je pense qu’elle peut être résumée comme suit :
- Démarrer le jeu lorsque l’utilisateur envoie “开始” avec un message “游戏已开始”.
- Continuer le jeu lorsque l’utilisateur envoie “开始1”.
- Sinon, terminer le jeu.
- À partir de 2), continuer le jeu lorsque l’utilisateur envoie “继续2”.
- Sinon, terminer le jeu.
- À partir de 4), continuer le jeu lorsque l’utilisateur envoie “继续3”.
- Sinon, terminer le jeu avec “结尾1”.
Ce serait comme le diagramme de flux suivant :
C’est assez compliqué, n’est-ce pas ?
Mais que pensez-vous de celui-ci ? J’ai transformé chaque “nœud d’événement” en “états”, et les “nœuds de condition” sont devenus des “conditions pour passer d’un état à l’autre”.
Vous voyez la différence ?
Cela signifie que vous pouvez utiliser uniquement un bloc “réception” et une seule variable globale pour y parvenir !
Vous pouvez poser plus de questions à tout moment !
(翻译自 ChatGPT )
这就是为什么我建议在实际编写代码之前明确需求和实现方式(即使它是使用块而不需要显式输入关键字的有效的“编程语言”)。
OP的需求可以总结如下:
- 当用户发送“开始”时,开始游戏并发送消息“游戏已开始”。
- 当用户发送“开始1”时,继续游戏。
- 否则,终止游戏。
- 从第2步开始,当用户发送“继续2”时,继续游戏。
- 否则,终止游戏。
- 从第4步开始,当用户发送“继续3”时,继续游戏。
- 否则,终止游戏并发送消息“结尾1”。
它可以用以下流程图表示:
相当复杂,不是吗?
但是这个版本呢,我将每个“事件节点”更改为“状态”,然后“条件节点”变为“状态之间切换的条件”。
你看到区别了吗?
这意味着你只需要一个“接收”块和一个单一的全局变量就可以实现这个!
你随时可以询问更多问题!
迷迷的字可爱喵