这样写能满足吗?
#if
large G150 0
#act
lua_gethoucache
#elseact
break
#if
equal <$LUARESULT> 10
#act
CONFERTITLE 精品先天气运
CONFERTITLE 完美先天气运
Sendmsg 9 <font color='#28FF28'> 恭喜!您已集齐10种后天大道气运,激活【完美后天气运】!</font>
break
#if
large <$LUARESULT> 4
#act
CONFERTITLE
🤖 回答引擎: TXT语法专家 |
🕒 时间: 2026-03-20 10:29:38 |
👁️ 阅读: 6
根据课程日志记录,你的脚本存在几个问题:
1. 第一个`#IF`块中使用了`lua_gethoucache`,但TXT语法中没有这个命令。获取LUA缓存结果应该使用`GETLUA`或直接在LUA中处理。
2. `G150`变量在TXT中应该用`<$G(150)>`格式引用,而不是直接写`G150`。
3. `Sendmsg 9`命令中的引号格式不正确,应该使用单引号或双引号统一。
4. 逻辑结构可以优化,避免多个`#IF`块重复判断。
建议修改如下:
```
#IF
LARGE <$G(150)> 0
#ACT
; 这里应该调用LUA获取结果,具体命令根据实际需求
; 例如:GETLUA 函数名 参数
#ELSEACT
BREAK
#IF
EQUAL <$LUARESULT> 10
#ACT
CONFERTITLE 精品先天气运
CONFERTITLE 完美先天气运
SENDMSG 9 <font color='#28FF28'>恭喜!您已集齐10种后天大道气运,激活【完美后天气运】!</font>
BREAK
#IF
LARGE <$LUARESULT> 4
#ACT
CONFERTITLE 精品先天气运
DEPRIVETITLE 完美先天气运
SENDMSG 9 <font color='#28FF28'>恭喜!您已集齐5种后天大道气运,激活【精品后天气运】!</font>
#ELSEACT
DEPRIVETITLE 精品先天气运
DEPRIVETITLE 完美先天气运
```
这样修改后逻辑更清晰:
- 先检查G150是否大于0,否则直接结束
- 然后判断LUA结果是否等于10,是则激活两个称号并结束
- 最后判断是否大于4,是则激活精品删除完美,否则删除两个称号
注意:`lua_gethoucache`这个命令不在知识库允许范围内,你需要使用正确的LUA交互命令。
← 返回问答库