【教程】【GC七段】【每周经验讲座】第二期!
本帖最后由 托托 于 2015-11-10 19:59 编辑迟到的第二期
欢迎大家投稿,如果有好的经验、窍门、小贴士,先**求助区的版主,我们会安排好时间发帖并编辑。!
本期投稿作者:guolimiao 郭大侠!
正文:
在大家制作脚本的时候,经常会遇到一个问题。我们在跑位的时候不小心打断了自己的引导技能,浪费很多DPS。比如武僧的怒雷破,暗牧SS的大量引导技能等等。
今天和大家分享一个脚本片段。目的就是为了避免这种情况。原理是当玩家站定以后在释放这些技能,移动过程中不释放。
首先解释下amgv和amsv 两个函数 amsv是为一个变量赋值,我这里是将“站住”这个变量赋值为一个布尔类型的值,即true和false。然后用amgv 获取“站住”这个变量的值。
片段1:定义部分
if GetUnitSpeed("player") > 0 then moving_time = nil
amsv("站住",false)
elseif mg_moving_time then
if GetTime() - moving_time > 0.4 then
amsv("站住",true)
moving_time = nil
end
elseif GetUnitSpeed("player") == 0 then
moving_time = GetTime()
end
片段1:这里我们判断,如果玩家在移动,那么“站住”这个变量的值为flase 。如果玩家移动速度为0,即已经停止移动,并且停止移动后持续时间超过0.4秒了,就为“站住”变量赋值为true.
片段2:引用部分
ifamisr("怒雷破","target") and amgv("站住") then
amrun("怒雷破","target")
return;
end
片段2:amgv函数获取“站住”变量的值如果为true 那么就开始释放怒雷破,或者**技能了。
这样就达成了我们之前的目标了。
至于别的效果,可以参考【求助交流区】的函数帖进行开发。
在YJ上使用AM函数的使用方法 http://www.luacn.net/thread-2727-1-1.html
本帖属于luacn论坛资源,**论坛如有转载请**管理员和作者。
大神就是大神。。。。救场的都这么高端。。唉。自愧不如 太牛B了新手前来膜拜 第二期个人看的有点难~:L:L,不太懂 第二期因为某些原因,推迟了一下。感谢guolimiao郭大侠临危救场,同时欢迎大家投稿。!
:$:$:$:$:$:$:$沙发,,不错不错,学习
板凳啊 来学习学习啊
威武霸气!以后可以出合订本了~
老血 发表于 2014-1-21 18:12 static/image/common/back.gif
威武霸气!以后可以出合订本了~
血总。。你的勋章太多了
要支持~~~先回在学!
这个挺好的 能不能请教一下盗贼判定背后技能的函数呢 yj里边面对目标那个老出错 再次感谢楼主的无私奉献
新手学习中,还不太懂{:5_169:}
页:
[1]
2