GetListString命令核心用途:读取指定txt文本文件中的指定行数内容,常用于传奇脚本中读取任务、地图等列表类数据,格式及实操的报错解决如下。
一、GetListString命令基础格式
命令格式:GetListString 文本文件路径 读取行数 存储变量
参数说明:1. 文本文件路径:需填写完整相对路径,不可遗漏文件夹层级;2. 读取行数:需为整数,指定读取txt文件中的第几行内容;3. 存储变量:用于存放读取到的内容,需使用正确变量格式。
二、用户脚本及报错解析(附原脚本)
#IF
CHECK [102] 1
#ACT
MOV <$STR(N主线段数)> 1
GetListString ..\QuestDiary\二明专用\任务系统\任务变量\主线名称.txt <$STR(N主线段数)> <$STR(S$主线名称)>
主线名称.txt内容:
被废弃的村庄1:皇族埋骨地一层1
被废弃的村庄1:皇族埋骨地一层2
被废弃的村庄1:皇族埋骨地一层3
用户遇到的问题:1. 出现MOV命令脚本报错;2. 更改读取行数,始终只读取第一行内容。
报错信息:[ 脚本错误] 脚本命令:MOV NPC名称:QFunction 地图:0(0:0) 参数1:<$STR(N主线段数)> 参数2:1 参数3: 参数4: 参数5: 参数6: 参数7: 参数8: 参数9: 参数10:
三、报错原因及解决方法(直奔问题,一步到位)
1. MOV命令报错原因及解决:MOV命令用于给变量赋值,报错核心是变量格式错误——<$STR()>是字符串转换格式,不能直接作为赋值目标变量。
修改方法:将MOV <$STR(N主线段数)> 1 改为 MOV N主线段数 1,删除多余的<$STR()>,直接使用变量名赋值,变量名无需加任何格式符号。
2. 始终读取第一行的原因及解决:读取行数由N主线段数变量控制,读取异常核心是变量未正确传递,或文本文件格式错误。
解决方法:① 确认修改MOV命令后,变量N主线段数能正常赋值(修改后重启脚本触发);② 检查主线名称.txt格式,每行内容需单独换行,不可连写,换行符需为标准格式,避免空格、空行干扰;③ 读取行数参数无需加<$STR()>,修改GetListString命令为:GetListString ..\QuestDiary\二明专用\任务系统\任务变量\主线名称.txt N主线段数 <$STR(S$主线名称)>;④ 若需读取指定行数(如第2行),直接将MOV N主线段数 1 改为 MOV N主线段数 2 即可。
四、修改后完整脚本(可直接复制使用)
#IF
CHECK [102] 1
#ACT
MOV N主线段数 1
GetListString ..\QuestDiary\二明专用\任务系统\任务变量\主线名称.txt N主线段数 <$STR(S$主线名称)>
五、补充实操要点
1. 文本文件路径需核对准确,文件夹名称、后缀不可写错,路径中的“..\”表示上一级目录,无误则可正常读取;2. 存储变量<$STR(S$主线名称)>格式正确,用于存储读取到的字符串内容,无需修改;3. 修改脚本后,需重启服务端或重新加载QFunction脚本,确保修改生效;4. 若仍读取异常,检查txt文件编码格式,保存为ANSI编码即可,避免编码错误导致读取失败。
传奇GetListString命令使用方法 脚本报错及读取异常解决
来源:
作者:
点击:

