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

传奇地图禁止带宠物脚本实现方法

热度:
实现传奇地图禁止带宠物(如进入皇宫自动杀死宠物)的功能,核心在于利用地图触发机制配合宠物检测与清除命令。以下是具体的脚本编写与配置步骤。

一、核心脚本命令
实现该功能主要依赖以下两个命令:
1.检测宠物数量:CHECKSLAVECOUNT。用于判断玩家当前携带的宠物数量。
2.清除宠物:KILLSLAVE。用于强制杀死玩家携带的所有宠物。

二、脚本编写方法
脚本需要放置在地图触发文件(如QFunction-0.txt)中,并配合地图参数设置。

1.基础触发脚本
在QFunction-0.txt文件中添加以下脚本段。假设皇宫的地图编号为0150,触发标识为Q001。

[@OnMap0150]
#IF
CHECKSLAVECOUNT>0
#ACT
KILLSLAVE
SENDMSG6提示:皇宫重地,禁止携带宠物!
#ELSESAY


•脚本逻辑:当玩家进入地图编号为0150的地图时,触发[@OnMap0150]标签。脚本首先检测玩家携带的宠物数量是否大于0,如果大于0,则执行KILLSLAVE命令杀死所有宠物,并给玩家发送提示消息。

2.地图参数配置
为了让脚本生效,必须在MapInfo.txt文件中为皇宫地图添加触发参数。

•查找地图编号:在MapInfo.txt中找到皇宫地图的配置行,确认其地图编号(如[0150皇宫])。

•添加触发参数:在地图配置行的末尾添加CHECKQUEST(Q001)参数。完整格式如下:

[0150皇宫]CHECKQUEST(Q001)


•参数说明:CHECKQUEST(Q001)表示进入该地图时,会检查并执行QFunction-0.txt中对应的[@OnMap0150]脚本段。

三、进阶实现:机器人定时检测
如果担心玩家在进入地图后重新召唤宠物,可以结合机器人脚本(Robot.txt)进行定时检测。

1.机器人脚本设置
在Robot.txt中添加定时任务,例如每30秒检测一次皇宫地图内的玩家。

;每30秒检测一次
AutoRunRobotSEC:30@检测皇宫宠物


2.机器人执行脚本
在RobotManage.txt中添加对应的执行脚本。

[@检测皇宫宠物]
#IF
CheckInMap0150
CHECKSLAVECOUNT>0
#ACT
KILLSLAVE
SENDMSG6提示:皇宫重地,禁止携带宠物!


四、注意事项
1.引擎兼容性:不同引擎(如HeroM2、GOM、GEE)的命令语法可能略有差异,请根据实际使用的引擎文档调整命令格式。
2.脚本生效:修改MapInfo.txt和QFunction-0.txt后,通常需要重启服务端或重新加载脚本才能生效。
3.地图编号:务必确保脚本中的地图编号与MapInfo.txt中的实际编号完全一致。

通过以上配置,当玩家携带宠物进入皇宫地图时,系统会自动检测并杀死宠物,实现禁止带宠物的效果。
[顶部]