[@大于99次刷新]
#if
#act
mov S$随机气运
RANSJSTR <$str(s$顶级气运1)>#60|<$str(s$顶级气运2)>#40 1 3 S$随机气运
GetGJCSV ..\QuestDiary\新功能脚本\气运功能\cfg_新气运系统.csv <$str(S$随机气运)> 0-293 1 1 N$后天气运行数
#if
CheckContainsText <$str(S$随机气运)> 大道
#act
messagebox [提示]:你已刷新出最高气运<$str
🤖 回答引擎: TXT语法专家 |
🕒 时间: 2026-03-05 19:15:47 |
👁️ 阅读: 11
根据课程日志记录,你的脚本中使用了`messagebox`来弹出选择提示。当玩家快速连续点击时,可能会因为脚本执行速度过快,导致`messagebox`的确认操作被后续的脚本流程(如`goto @后天气运主页`)或新的界面刷新所中断或覆盖,从而看起来像是被“跳过”了。
解决这个问题的关键在于,在弹出`messagebox`等待玩家选择后,必须立即中断当前脚本的后续执行流程,直到玩家做出选择并触发相应的`@是`或`@否`标签。
在你的脚本中,在`messagebox`之后直接使用了`goto @后天气运主页`或`sendmsg`,这会导致界面立即刷新,可能覆盖掉弹出的`messagebox`窗口。
正确的做法是:在弹出`messagebox`后,使用`break`命令彻底终止当前脚本块的执行,等待玩家点击`@是`或`@否`后,在新的标签段中处理后续逻辑(如刷新界面)。请确保你的`messagebox`的`@是`和`@否`链接指向了正确的处理函数。
修改后的核心逻辑部分应类似如下:
```
#if
CheckContainsText <$str(S$随机气运)> 大道
#act
messagebox [提示]:你已刷新出最高气运<$str(S$随机气运)>是否选择? @选择大道气运 @继续刷新
break
```
这样,脚本执行到`break`就会停止,等待玩家点击。然后你需要在`[@选择大道气运]`和`[@继续刷新]`标签下分别编写确认选择和继续刷新的逻辑。
← 返回问答库