#if
#act
mov N$选择单件 0
mov N$属性增加 0
mov n$装备提示 1
while N$选择单件 < 8
inc N$选择单件 1
INC N$属性增加 1
sendmsg 6 循环===<$str(N$选择单件)>
MOV S$选择单件 <$str(N$选择单件)>
MOV S$属性增加 <$str(N$属性增加)>
goto @扣除装备
endwhile
mov n$装备提示 0 有什么问题吗
🤖 回答引擎: TXT语法专家 |
🕒 时间: 2026-06-10 21:50:27 |
👁️ 阅读: 7
根据课程日志记录,这段脚本存在几个问题:
1. WHILE循环中不能直接使用#IF、#ACT等条件判断和执行语句
2. 在WHILE循环内部使用了#ACT,这是不正确的
3. 循环结束后设置n$装备提示为0的代码位置不当
正确写法应该是:
```
#ACT
mov N$选择单件 0
mov N$属性增加 0
mov n$装备提示 1
while N$选择单件 < 8
inc N$选择单件 1
INC N$属性增加 1
sendmsg 6 循环===<$str(N$选择单件)>
MOV S$选择单件 <$str(N$选择单件)>
MOV S$属性增加 <$str(N$属性增加)>
goto @扣除装备
endwhile
#ACT
mov n$装备提示 0
```
或者将循环内的逻辑移到单独的标签中:
```
[@Main]
#ACT
mov N$选择单件 0
mov N$属性增加 0
mov n$装备提示 1
while N$选择单件 < 8
goto @循环逻辑
inc N$选择单件 1
endwhile
mov n$装备提示 0
[@循环逻辑]
#ACT
INC N$属性增加 1
sendmsg 6 循环===<$str(N$选择单件)>
MOV S$选择单件 <$str(N$选择单件)>
MOV S$属性增加 <$str(N$属性增加)>
goto @扣除装备
```
← 返回问答库