|
虽然感觉不会有人需要但是我还是发上来吧。。。就当回报社会了
如果哪里写得不好的话也请多多指教。。
适用于1.24以上(用了hashtable)
这套函数的用途比较广泛,比如可以模拟一个投射物之类的。。。
还可以做类似偷窥的技能。。目标点创建带视野的dummy然后跟踪最近的单位。。
为了实现多功能性,又要有高效率,我写了16个相当类似的函数。。也许是绕弯路了。。
[jass]function SimObjectMove takes unit object, unit target, location tar_loc, real inv, real step, real lifespan, integer SpellIndex, string EndFuncName, string RunFuncName, boolean IsKilledWhenHit returns integer
//引导函数
//object
//所要移动的单位
//target&tar_loc    
//目标单位/目标点,默认指向目标点,若tar_loc == null 则追踪目标单位
//inv
//两次移动之间的时间间隔
//step
//一次移动的位移
//lifespan
//object的生命周期,若IsKilledWhenHit == true 则此参数无效
//SpellIndex
//我是做了另外一个技能系统,用到了这个参数来传递信息。。懒得删了,在这里是无效的。。
//EndFuncName
//当object死亡时调用的函数名,可以做一些技能效果,比如范围伤害之类的,此项设为null则禁用
//RunFuncName
//每次移动结束后会调用的函数名,可以做一些技能效果,此项设为null则禁用
//IsKilledWhenHit
//是否会在到达目标位置时杀死object
//函数会return一个整数,是timer的handle,在哈希表lib(timerhandle,0)对应着这个timer(不知道如何从handle值获取timer。。所以用了这个笨办法。。)可以用来对于这个函数做一些额外的效果(有点类似于插件的那种感觉。。)
[/jass]
SimObjectMove.w3x
(26 KB, 下载次数: 47)
|
评分
-
查看全部评分
|