1. 基础概念
触发字段:这是脚本开始执行的条件。比如[@BeginMagic]和[@H.BeginMagic],分别代表人物和英雄使用技能前的触发点。
变量:用来存储临时数据,比如技能ID、技能名称、目标等。
操作命令:根据条件判断结果执行的动作,比如中断技能使用、发送消息等。
2. 脚本流程
当人物或英雄准备使用技能时,游戏引擎会自动检查是否有对应的触发字段(如[@BeginMagic]或[@H.BeginMagic])。
脚本会读取相关的变量信息,比如技能的名称、目标等。
根据脚本中的条件判断(如#IF或#if后面的内容),执行相应的操作。比如,如果目标拥有特定的称号或状态,就中断技能使用并发送提示消息。
3. 范例解析
第一个范例中,如果人物使用的技能是“野蛮冲撞”,并且目标拥有“不动如山”这个称号,那么技能会被中断,并发送一条消息告知玩家。
第二个范例则是关于英雄的。如果英雄使用的技能是“英雄雷电术”,则技能会被中断。如果不是,就发送一条包含技能详细信息的消息。
4.脚本实例
功能说明:当人物使用技能前,自身触发
;触发字段
[@BeginMagic]
;变量
<$MagicID>
<$MagicName>
<$MagicTarget>
<$MagicTargetRace>
;操作命令
中断技能使用命令:StopMagic
范例:
[@BeginMagic]
#IF
EQUAL <$MagicName> 野蛮冲撞
EQUAL <$MagicTargetRace> 0
<$MagicTarget>.CheckFenghao 不动如山
#ACT
StopMagic
Sendmsg 7 目标拥有称号不动如山,无法对其释放野蛮冲撞.
------------------------------------------
英雄使用技能前,自身触发:
@H.BeginMagic
变量:
<$H.MagicID>
<$H.MagicName>
<$H.MagicTarget>
<$H.MagicTargetRace>
;操作命令
中断技能使用命令:H.StopMagic支持
范例:
[@H.BeginMagic]
#if
equal <$H.MagicName> 英雄雷电术
#act
H.StopMagic
#elseact
sendmsg 6 英雄技能(ID:<$H.MagicID>;技能:<$H.MagicName>;目标:<$H.MagicTarget>;目标类型:<$H.MagicTargetRace>)