当前位置 : 145z游戏站 | 热血传奇 | 技术教程 | 

传奇地图禁止带宠物脚本设置与参数配置

热度:
一、地图参数法:强制清空与禁止召唤(推荐)

最底层的解决方案,直接在MapInfo.txt中为地图添加参数,无需脚本触发。

1.MISSION参数(通用)
在目标地图配置行末尾添加MISSION。此参数会使地图内所有宝宝自动消失,且禁止使用任何物品和技能,效果最彻底。

[D515禁宠地图]MISSIONNORECALLNODEAL



2.GEE引擎专用:NoCallPet
GEE引擎支持NoCallPet参数,禁止召唤宠物,已召唤的会自动收回。

[D515禁宠地图]NoCallPet



3.禁止召唤技能
通过NOTALLOWUSEMAGIC直接封禁召唤类技能,从源头阻断。

[D515禁宠地图]NOTALLOWUSEMAGIC(召唤神兽|召唤骷髅|诱惑之光)



二、NPC传送脚本:前置拦截(带宠禁止进入)

在玩家通过NPC进入地图前进行检测,若有宠物则拒绝传送并提示。
[@传送禁宠地图]
#IF
;检测宝宝数量是否大于0(通用)
CHECKSLAVECOUNT>0
;GEE/GOM引擎也可用CheckPet1或PetExist
;CheckPet1
#ACT
MESSAGEBOX禁止携带宠物进入该地图,请先收回宝宝!
BREAK
#ELSEACT
MAPMOVED5155050


三、进入触发脚本:实时清理(QManage或MapEvent)

针对已进入地图或强行带入的宠物,使用触发脚本强制清理。

1.QFunction-0.txt登录触发(全图监控)
在QManage.txt或QFunction-0.txt中设置定时器或地图触发。
;方法1:进入地图触发
[@EnterMapD515]
#IF
CHECKSLAVECOUNT>0
#ACT
KILLSLAVE
SENDMSG6本地图禁止带宠,你的宝宝已被强制收回。

;方法2:机器人定时清理(RobotManage.txt)
[@OnTimer8]
#IF
CheckMapNameD515
CHECKSLAVECOUNT>0
#ACT
KILLSLAVE



2.地图事件触发(MapEvent)
在MapEvent.txt中配置,当玩家出现在地图时触发检测。

D515*0禁宠检测

对应QFunction-0.txt:
[@禁宠检测]
#IF
CHECKSLAVECOUNT>0
#ACT
KILLSLAVE



四、多引擎指令对照与常见问题

不同引擎检测宠物的指令略有差异,若上述代码无效请替换以下命令:

引擎检测宠物命令清理宠物命令备注

通用/BlueCHECKSLAVECOUNT>0KILLSLAVE最常用

GEECheckPet1RecallPet针对英雄/宠物

GOMPetExistCallBackPet需确认引擎支持

排查清单:
•脚本不生效:检查地图编号(D515)是否与MapInfo.txt完全一致,大小写敏感。

•MISSION参数无效:确认引擎是否支持该参数,部分老引擎仅支持MISSION的禁止物品技能功能。

•宝宝残留:KILLSLAVE可能无法清除“英雄”单位,针对英雄需使用NOCALLHERO参数或RecallPet命令。



最终建议:优先使用地图参数法(MISSION或NoCallPet),效率最高且不占用脚本资源;若需更灵活的提示或条件判断,再配合NPC传送脚本使用。
[顶部]