您当前的位置:首页 > 其他技术 > 开区杂谈

188M2引擎传奇一条龙版本攻击和被攻击触发脚本说明

本文出处:网游动力作者:本站发布时间:2019-06-28阅读次数:
功能:攻击触发          ;M2 -> 选项 -> 功能设置 -> 全局功能 里的勾选开启 攻击/受攻击触发
调用:QFunction-0 文件
说明:所有触发只有攻击到目标(也就是造成实际的效果,最简单的就是掉血了)才会触发
几个常量: 
<$CURRRTARGETNAME>      当前攻击(被攻击)目标名称
<$CURRRTARGETMAXHP>    当前攻击(被攻击)目标的最大血量
<$CURRRTARGETHP>           当前攻击(被攻击)目标受攻击时剩余的血量
<$CURRRUSEMAGICID>         攻击(被攻击)目标使用的魔法ID 

注意: F11中可以设置快捷键释放并对在释放的第一时间能对目标造成伤害的主动攻击技能,都属于魔法攻击触发范畴。
           比如战士的刺杀、半月、烈火、逐日、开天斩、野蛮冲撞,都是主动攻击类型的技能,那就都属于魔法攻击;
备注: 道士的施毒术释放的第一时间不能对目标造成伤害所以不能触发魔法攻击; 
            法师的抗拒火环不能对目标造成伤害,所以也不能触发魔法攻击; 

        一个脚本逻辑的说明:
                188引擎新增更新内容的英雄触发逻辑是:谁执行这个脚本谁就是主体!所需用到的变量都为第一人称人物变量!
                以前的逻辑为了Leg和BLue引擎的版本脚本转换方便暂时不动,保持原样!

        当前涉及到新逻辑的命令为下面几个,请大家使用的时候务必注意:

        英雄穿戴触发:
         [@HeroTakeOnX]
         [@HeroTakeOffX]

        英雄攻击触发:
        [@HeroMagicAttack]         ;(魔法攻击触发)
        [@HeroMagicStruck]        ;(被魔法攻击触发) 



人物攻击触发:
;-----------------------------------------------主动攻击触发
[@Attack]                         ; (物理攻击触发)
#if
#act
MOV S$当前攻击对象 <$CURRRTARGETNAME> 
;攻击收回目标背包的回城和随机传送石
;--------------------------------------------------------
#if
CHECKCURRTARGETRACE = 0
checkitemw 圣战项链 1
#act
<$STR(S$当前攻击对象)>.take 盟重传送石 99
<$STR(S$当前攻击对象)>.take 随机传送石 99
Sendmsg 0 <$USERNAME>带着圣战项链一刀把<$STR(S$当前攻击对象)>身上所有的传送石全部击碎!!哪里逃??? 0 250 3
break

;----------------------------------------------------------------------------------------------
[@攻击(被攻击)目标检测]
#IF
CHECKCURRTARGETRACE = 0 
#SAY
当前攻击目标是人物
BREAK 

#IF
CHECKSTRINGLIST ..\QuestDiary\人形怪名称.txt <$CURRRTARGETNAME>  
; 注意:人形怪程序默认为英雄,检测的时候用1,这个后面再改框架,大家可以先在检测英雄之前写上这段检测攻击目标是否在人形怪列表中来区分人形怪和英雄 
#SAY
当前攻击目标是人形怪
BREAK 

#IF
CHECKCURRTARGETRACE = 1 
#SAY
当前攻击目标是英雄
BREAK 



#IF
CHECKCURRTARGETRACE = 99                 
#SAY
当前攻击目标是怪
BREAK 
;---------------------------------------------------------------------------------------------- 
[@MagicAttack]                ;  (魔法攻击触发) 
;------------------------------------------------被攻击触发
[@Struck] (被物理攻击触发) 
[@MagicStruck] (被魔法攻击触发) 

英雄攻击触发:
;-----------------------------------------------主动攻击触发
[@HeroAttack]                   ;(物理攻击触发)
[@HeroMagicAttack]         ;(魔法攻击触发)
;------------------------------------------------被攻击触发
[@HeroStruck]                  ;(被物理攻击触发) 
[@HeroMagicStruck]        ;(被魔法攻击触发) 

英雄攻击脚本范例: 

[@HeroAttack]
;复制上面人物的就可以直接用 
#if
#act
MOV S$当前攻击对象 <$CURRRTARGETNAME>
;攻击收回目标背包的回城和随机传送石
;--------------------------------------------------------
#if
CHECKCURRTARGETRACE = 0
checkitemw 圣战项链 1
#act
<$STR(S$当前攻击对象)>.take 盟重传送石 99
<$STR(S$当前攻击对象)>.take 随机传送石 99
Sendmsg 0 <$USERNAME>带着圣战项链一刀把<$STR(S$当前攻击对象)>身上所有的传送石全部击碎!!哪里逃??? 0 250 3
break