当前位置 : 745v传奇网 | 传奇教程 | 

传奇游戏更新:新增杀怪触发与开关功能及怪物列表管理

来源: 作者: 点击:
一、新增功能概述

传奇游戏推出了全新的“杀怪触发与开关”功能,玩家现在可以根据需要开启或关闭攻击触发,同时管理一个怪物名称列表,以实现更精细的游戏互动。

二、功能详细说明

攻击触发总开关在!setup.txt文件中,通过设置AttackTrigger参数来控制攻击触发的总开关。默认值为0(关闭),设置为1则开启触发QF的[@Attack]。

怪物名称列表在EnvirMonAttackTrigger.txt文件中,玩家可以列出可以被攻击触发的怪物名称,每个名称占一行。

专属变量

@Attack触发时,以下变量可用:
$TARINFO_RACE:目标的种族。
$TARINFO_ISHERO:目标是否为英雄('0'或'1')。
$TARINFO_NAME:目标的名称。
$TARINFO_FNAME:目标的全名。
$ATTINFO_SKILLID:攻击使用的技能ID。
$ATTINFO_RACE:攻击者的种族。
$ATTINFO_ISHERO:攻击者是否为英雄。
$ATTINFO_NAME:攻击者的名称。
$ATTINFO_FNAME:攻击者的全名。
目标变量

在触发时,以下目标变量可供使用:
$T.CURRENTMAPDESC:当前地图描述。
$T.CURRENTMAP:当前地图。
$T.CURRENTX、$T.CURRENTY:当前位置坐标。
$T.USERNAME:玩家名称。
$T.MONKILLER、$T.KILLER:怪物击杀者。
$T.LEVEL、$T.HP、$T.MAXHP:玩家等级、血量和最大血量。
$T.MP、$T.MAXMP:魔法值和最大魔法值。
$T.AC、$T.MAXAC:物理防御和最大物理防御。
$T.MAC、$T.MAXMAC:魔法防御和最大魔法防御。
$T.DC、$T.MAXDC:物理攻击和最大物理攻击。
$T.MC、$T.MAXMC:魔法攻击和最大魔法攻击。
$T.SC、$T.MAXSC:道术攻击和最大道术攻击。
$T.HIT、$T.SPD:命中率和速度。
三、使用示例

以下是[@Attack]和[@UnderAttack]的使用示例:

[@Attack]:当玩家或随从攻击列表中的指定怪物时,会触发以下操作:

#IF
COMPVAL<$TARINFO_FNAME>=蜈蚣
COMPVAL<$T.HP>>50
#ACT
T.HUMANHP-50
SENDMSG7目标【<$TARINFO_NAME>】血量<$T.HP>
Copy
[@UnderAttack]:当玩家或随从被指定怪物攻击时,会触发以下操作:

#IF
COMPVAL<$ATTINFO_FNAME>=蜈蚣
#ACT
HUMANHP-50
#IF
COMPVAL<$ATTINFO_MNAME>!""
#ACT
SENDMSG7【<$ATTINFO_MNAME>】的随从<$ATTINFO_NAME>正在攻击你
#ELSEIF
COMPVAL<$TARINFO_RACE>!1
#ACT
SENDMSG7【<$ATTINFO_NAME>】正在攻击你的随从【<$TARINFO_NAME>】
#ELSEACT
SENDMSG7【<$ATTINFO_NAME>】正在攻击你

新增杀怪触发与开关
!setup.txtAttackTrigger=0//攻击触发总开关,默认0关闭,1开启触发QF的[@Attack]
EnvirMonAttackTrigger.txt//可以被攻击触发的怪物名称列表,每行一个

//攻击触发专属变量
$TARINFO_RACE//目标Race
$TARINFO_ISHERO//目标是否英雄{'0''1'}
$TARINFO_NAME//目标名称
$TARINFO_FNAME//目标全名
$ATTINFO_SKILLID//攻击使用技能ID
$ATTINFO_RACE//攻击者Race
$ATTINFO_ISHERO//攻击者是否英雄
$ATTINFO_NAME//攻击者名称
$ATTINFO_FNAME//攻击者全名

//目标变量
$T.CURRENTMAPDESC
$T.CURRENTMAP
$T.CURRENTX
$T.CURRENTY
$T.USERNAME
$T.MONKILLER
$T.KILLER
$T.LEVEL
$T.HP
$T.MAXHP
$T.MP
$T.MAXMP
$T.AC
$T.MAXAC
$T.MAC
$T.MAXMAC
$T.DC
$T.MAXDC
$T.MC
$T.MAXMC
$T.SC
$T.MAXSC
$T.HIT
$T.SPD

//QF例子
[@Attack]//人或随从攻击列表指定怪物,会触发
#IF
COMPVAL<$TARINFO_FNAME>=蜈蚣
COMPVAL<$T.HP>>50
#ACT
T.HUMANHP-50
SENDMSG7目标【<$TARINFO_NAME>】血量<$T.HP>

#IF
COMPVAL<$ATTINFO_RACE>!1//Race=1是玩家,这里就是非玩家(即随从)
#ACT
SENDMSG7你的随从<$ATTINFO_NAME>正在攻击<$TARINFO_NAME>

[@UnderAttack]//被人或随从或列表指定怪物攻击,会触发
#IF
COMPVAL<$ATTINFO_FNAME>=蜈蚣//蜈蚣打随从或自己
#ACT
HUMANHP-50//主人扣血

#IF
COMPVAL<$ATTINFO_MNAME>!""//攻击者主人名称不为空
#ACT
SENDMSG7【<$ATTINFO_MNAME>】的随从<$ATTINFO_NAME>正在攻击你
#ELSEIF
COMPVAL<$TARINFO_RACE>!1//自己的随从
#ACT
SENDMSG7【<$ATTINFO_NAME>】正在攻击你的随从【<$TARINFO_NAME>】
#ELSEACT
SENDMSG7【<$ATTINFO_NAME>】正在攻击你
[顶部]