传奇一次全修脚本位置与使用方法详解

来源: 作者: 点击:
上述脚本用于实现“一键特修全身装备”功能,需放置于服务端指定文件中才能生效。以下是具体配置步骤、文件路径及调用方式。

脚本应放入的文件

该脚本属于NPC对话交互逻辑,必须写入 QFunction-0.txt 文件。
路径通常为:MirServerMir200EnvirQuestDiaryQFunction-0.txt

若服务端使用模块化脚本管理(如Hero引擎),也可能位于 QuestDiaryQManage.txt,但绝大多数情况下优先使用 QFunction-0.txt。

脚本结构说明

[@全修]
你只要轻轻点击一下,就可以全部特修你身上的所有装备,爽吧?\
本服务每次收费个元宝! \
\

[@全修] 是自定义标签,需由其他脚本或NPC菜单通过 goto @全修 调用;
文本中的 生成可点击按钮,点击后跳转至 [@texiu] 标签;
用于换行,确保对话框排版正常。

[@texiu]
If
CHECKGAMEGOLD > 2
Act
GAMEGOLD - 3
RepairAll
MessageBox 修理成功!!
goto @main
Elseact
MessageBox 特修失败!本服务每次收费3元宝

CHECKGAMEGOLD > 2 判断元宝是否 ≥3(因条件为 >2);
GAMEGOLD - 3 扣除3元宝;
RepairAll 是核心命令,执行全身装备特修;
MessageBox 弹出提示框, 用于避免消息被截断。

如何让玩家触发该脚本

仅将脚本写入 QFunction-0.txt 并不能直接使用,还需在 NPC对话菜单 中添加入口。例如,在 !Npc_def铁匠.txt 中加入:

[@main]
欢迎来到铁匠铺!\
\

当玩家点击“全身特修”选项时,系统自动跳转至 QFunction-0.txt 中的 [@全修] 标签,显示收费提示界面。

关键注意事项

元宝类型确认:
GAMEGOLD 指的是游戏内绑定元宝(通常为充值元宝),非金币。若服务端使用 CHECKITEM 判断元宝道具(如“元宝券”),则需改用 CheckItem 元宝 3 并配合 DelItem 扣除。

RepairAll 命令支持:
该命令仅在 Hero、GOM 等主流引擎中有效。部分老旧引擎可能不支持,需替换为逐件修理命令(如 RepairWeapon、RepairArmor 等组合)。

标签命名规范:
[@全修] 可改为任意名称(如 [@OneKeyRepair]),但必须与 NPC 中的 /@标签名 一致。

文件编码问题:
使用 Notepad++ 以 ANSI 或 UTF-8 无BOM格式保存,避免中文乱码导致脚本失效。

重启生效:
修改 QFunction-0.txt 后,必须重启 M2Server 主程序,否则更改不加载。

完整调用流程

玩家点击铁匠NPC;
NPC显示主菜单,含“全身特修”选项;
点击后跳转至 [@全修],显示收费说明;
点击“使用元宝”触发 [@texiu];
系统检查元宝余额,足够则扣费并执行 RepairAll,不足则弹出失败提示。

此脚本无需额外配置数据库或客户端文件,纯服务端文本修改即可实现。重点在于确保标签被正确调用,且引擎支持 RepairAll 与 GAMEGOLD 指令。