搜索
查看: 364|回复: 6

[沟通中] 关于TXT脚本的建议

[复制链接]
发表于 2023-9-17 14:55:46 | 显示全部楼层 |阅读模式
BUG反馈
引擎版本号: 20230904
登陆器版本号: 20230903
BUG描述: TXT脚本存在的一些问题:

[@main]
#IF
CHECKLEVELEX > 50
#ACT
MOV <$S(等级礼包)>
SENDMSG 5 测试会执行
GOTO @读取等级数据

#IF
#ACT
SENDMSG 7 测试不会执行

#IF
NOT EQUAL <$S(等级礼包)>
#ACT
SENDMSG 7 提示:你的将获得:<$S(等级礼包)>
BREAK

[@读取等级数据]
#IF
CHECKLEVELEX ? 100
#ACT
MOV <$S(等级礼包)> 100级礼包
BREAK

#IF
CHECKLEVELEX ? 80
#ACT
MOV <$S(等级礼包)> 80级礼包
BREAK

#IF
CHECKLEVELEX ? 60
#ACT
MOV <$S(等级礼包)> 60级礼包
BREAK

#IF
CHECKLEVELEX ? 50
#ACT
MOV <$S(等级礼包)> 50级礼包
BREAK
BUG重现方式: 像上面 跳转标签下面有BREAK 会影响主标签,导致主标签脚本不会继续执行。
当然这只是一个简单的示例,有时候一些复杂的脚本需要这样写
修复后应达到的效果: 跳转标签下面的 BREAK 能不能不影响脚本的继续执行?
我也之前也写过很多引擎的版本,都不会有影响,咱们能修复下吗?
联系QQ: 隐藏内容



补充内容 (2023-9-18 09:37):
大家不要研究脚本本身有没有意义了。本来就是一个用来重现BUG的脚本(随便写的)。是关于跳转标签和  BREAK的问题。
 楼主| 发表于 2023-9-17 15:30:35 | 显示全部楼层
大家能不能顶一下,我看到有很多朋友觉得是  GOTO 多了 不执行, 其实就是这个跳转标签下面  BREAK引起的。(本人实测,删除跳转标签下的BREAK就正常了)
发表于 2023-9-17 16:32:36 | 显示全部楼层
能用lua的尽量还是用lua吧 至少逻辑关系比较好捋顺
发表于 2023-9-17 20:52:21 | 显示全部楼层
这个逻辑好难懂,检测等级,上来直接检测就完事了,还要大于50级 ,在GOTO干啥
 楼主| 发表于 2023-9-18 09:31:16 | 显示全部楼层
メ半世惆怅 发表于 2023-9-17 20:52
这个逻辑好难懂,检测等级,上来直接检测就完事了,还要大于50级 ,在GOTO干啥 ...

都说了是示例。。。不是实际的脚本。。。我想表达的:只是脚本会出现的问题,不是脚本本身的含义
发表于 2023-9-21 14:37:33 | 显示全部楼层
BREAK本身就是停止执行的意思
 楼主| 发表于 2023-9-22 18:46:57 | 显示全部楼层
1580 发表于 2023-9-21 14:37
BREAK本身就是停止执行的意思

[@主标签]
#IF
#ACT
GOTO @跳转标签
;主标签这里没有BREAK,下面的内容应该继续执行(现在咱们是10级以上,一下内容不继续执行。因为跳转标签执行了break,影响到这里了)

#IF
CHECKGAMEGOLD ? 1000
#ACT
SENDMSG 7 提示:你有1000元宝
BREAK  ;主标签出现BREAK  这里应该停止执行

[@跳转标签]
#IF
CHECKLEVELEX ? 10
#ACT
SENDMSG 7 提示:你已经10级以上了!
BREAK ;这下面的BREAK  应该是只停止跳转标签的继续执行,不应该影响主标签。

补充内容 (2023-9-22 18:49):
我之前用过很多款引擎都是这样的。咱们是不是没有考虑周全呢?
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|HGEM2论坛

GMT+8, 2024-11-23 15:41 , Processed in 0.561258 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2023, Tencent Cloud.

快速回复 返回顶部 返回列表