传奇行会一键收人脚本(按键触发版)

来源: 作者: 点击:
脚本实现原理:自定义命令绑定

你要的“按一个键子直接收人”功能,本质是将自定义聊天框命令(如@加入行会)与行会加入脚本绑定。玩家输入指令,触发QFunction-0.txt中的脚本段,执行AddGuildMember命令自动入会,无需会长审批。

方案一:基础一键入会脚本(GOM/GEE引擎)

此方案适合“点击按钮或输入指令直接加入固定行会”。

1.修改游戏命令列表

首先在M2Server中注册自定义命令,让引擎识别@加入行会:
-打开M2→选项→游戏命令→用户命令。
•在列表中添加一行:

-命令:加入行会
◦权限:0(普通玩家可用)

◦参数:0

◦脚本标识:加入行会(必须与QFunction-0中的标签名一致)

2.编写触发脚本(QFunction-0.txt)

在D:\MirServer\Mir200\Envir\MapQuest_def\QFunction-0.txt中添加以下脚本段:
[@加入行会]
#IF
!HAVEGUILD;检测是否已加入行会(!表示未加入)
CheckLevel>0;检测等级大于0(防止0级小号)
#ACT
AddGuildMember天下第一会<$USERNAME>;将玩家加入“天下第一会”行会
SendMsg6提示:你已成功加入【天下第一会】!
Break
#ELSEACT
SendMsg6错误:你已加入其他行会,无法重复加入!
Break


命令说明:
•AddGuildMember:核心加会命令。天下第一会需替换为你的目标行会名(必须与服务端行会列表完全一致)。

-<$USERNAME>:系统变量,自动替换为当前玩家的角色名。

方案二:NPC按钮式一键收人

如果你希望玩家通过点击NPC对话框按钮加入,可使用以下NPC脚本(保存为行会招募-3.txt):
[@main]
#if
#act
OPENMERCHANTBIGDLG1281420-601
#say
<ImgEx:0:1823:1824:1825:340:-15/@exit>
\\
★━━━━★※行会自助招人系统※\\
┃行■招┃╔┄┄┄┄┄┄┄┄┄╗\\
┃■募■┃┆<一键加入/@加入>┆\\
┃会■板┃╚┄┄┄┄┄┄┄┄┄╝\\
★━━━━★\\

[@加入]
#if
!HAVEGUILD
CheckLevel>10;限制等级需大于10级
#act
AddGuildMember测试行会<$USERNAME>
MessageBox恭喜你加入【测试行会】!
Close
#elseact
MessageBox加入失败:你已加入行会或等级不足!


方案三:会长一键收人脚本(自动收目标)

若你是会长,需要将鼠标选中的目标玩家直接收入行会,需使用ADDTOGUILD命令配合检测:
[@一键收人]
#if
ISGUILDMASTER;检测是否为会长
TARGET.ISONLINE;检测是否有选中目标
TARGET.!HAVEGUILD;检测目标是否无行会
#act
ADDTOGUILD<$GUILDNAME><$TARGETNAME>;将目标加入自己行会
SendMsg6提示:已将玩家【<$TARGETNAME>】收入行会!
#elseact
SendMsg6错误:目标玩家不在线、已有行会或你不是会长!


使用方式:会长选中目标玩家(鼠标点选),在聊天框输入@一键收人即可。

常见问题与排查

1.提示“未知命令”:检查M2的“用户命令”列表是否添加了“加入行会”,且“脚本标识”与QFunction-0.txt中的[@加入行会]标签名完全一致。
2.提示“行会不存在”:AddGuildMember命令中的行会名称必须与服务端行会列表(GuildDB.db)中的名称完全一致(包括空格和符号)。
3.权限不足:若使用会长收人脚本,需确保当前角色在行会职位为“会长”(GuildRank=0)。
4.脚本不生效:修改QFunction-0.txt后,必须在M2点击“控制”→“重新加载”→“QF脚本”才能生效。

推荐使用方案一(自定义命令),配合快捷键设置(如将F1宏设置为输入@加入行会),即可实现真正的“按一个键子收人”。
[顶部]