找回密码
 点一下
查看: 1420|回复: 16

有没有办法捕捉到单位是不是因为某个技能而死亡

[复制链接]
发表于 2009-5-5 22:27:07 | 显示全部楼层 |阅读模式
比如,能不能捕捉到,某个单位是不是被风暴之锤砸死的……
发表于 2009-5-5 22:40:38 | 显示全部楼层
这个要根据地图了
如果要判断所有技能
只能分类讨论了
单个的话如下,如果全部就是考虑所有的单个
1:有buff的,接收伤害并判断buff,如果伤害大于生命值就是对应技能杀的,不过对技能要改一下,要删除对应的buf,然后马甲添加同效果的f
2:如果没有buff,那么只能通过技能释放到的目标的生命值和技能伤害(这个只好用技能的数据了),有buff也可以,但是因为英雄魔法抵抗的问题,所以这个要对一些公式了解
3:用其他方法添加的伤害,比如伤害的T,那么就在触发里头判断,方法同2,不过有些时候可以不用考虑抵抗
……
其他就很多了
具体要看所有的技能
总之麻烦……
回复

使用道具 举报

 楼主| 发表于 2009-5-5 22:56:40 | 显示全部楼层
果然很麻烦……
我只是想做一个技能,当用这个技能杀死单位的时候增加发动技能者的智力而已。这个技能是有buff的……有没有什么取巧的手法?
回复

使用道具 举报

发表于 2009-5-6 08:57:39 | 显示全部楼层
用接受伤害事件
然后判断目标身上是否有buff(技能带的)
有就是释放了这个技能
然后删除buff并用马甲添加个新的(另一个同类技能,就是复制个新技能,做个相同的魔法效果,不要用一样的)
然后执行后面的就行
接受伤害事件要注册一下
忘记了删除指定buff的T是不是要用UI才有
总之就是接受伤害---判断buff---添加buff----执行效果
回复

使用道具 举报

发表于 2009-5-6 09:30:10 | 显示全部楼层
使用技能时开启判断触发
不要想的太复杂了
回复

使用道具 举报

发表于 2009-5-6 09:56:28 | 显示全部楼层
恩恩,当自动施放的技能了
怕出现S流……
另外锤子不是立即技能
投掷物还是有飞行时间的
如果用施放技能,这个时间不对……
回复

使用道具 举报

发表于 2009-5-6 11:29:48 | 显示全部楼层
加个triggersleepaction不就行了,否则每个人都得注册,麻烦不麻烦.........
回复

使用道具 举报

发表于 2009-5-6 15:39:30 | 显示全部楼层
取巧的方法:
该技能是空模板的马甲技能  且马甲是专用的(会这个真技能,且该马甲不做其他用途,有一定的存活时间)

注册接受伤害--
判断 伤害是否大于剩余生命
如果大于再判断伤害造成者 是不是有专门的那个真技能
回复

使用道具 举报

发表于 2009-5-6 15:51:28 | 显示全部楼层
那你还不如直接凶手单位呢
回复

使用道具 举报

发表于 2009-5-6 16:42:10 | 显示全部楼层
引用第6楼louter于2009-05-06 11:29发表的  :
加个triggersleepaction不就行了,否则每个人都得注册,麻烦不麻烦.........
问题是等待多少秒
要是放出去对方却突然无敌了呢……
基本上来说
注册伤害事件很不错

如果用马甲放技能并判断凶手单位的话是个不错的方法
问题是对于整个图来说判断凶手单位(比如记录击杀数)要麻烦一些
来外如果是多个技能的话还要做一堆马甲……
总之这个技能要跟据图来做
回复

使用道具 举报

发表于 2009-5-6 18:59:18 | 显示全部楼层
距离/弹射速度,然后判断一下不就完了。要不就用模拟的弹射物,配合datasys会好些,不过说到底最简单还是第一个方法
回复

使用道具 举报

发表于 2009-5-6 20:51:06 | 显示全部楼层
目标移动了呢?
目标跳走了呢?
模拟投射物的话,效率更低了吧
另外说的都是T范围内的问题
根据提问可知LZ不懂J的……
DATASYS……
回复

使用道具 举报

发表于 2009-5-6 21:11:19 | 显示全部楼层
所以需要判断啊,再说,注册接受伤害事件绝对平均效率比模拟投射物低(因为以前我就做过……一个是线性的,一个跟本无法控制),而这两者的精确性都是建立在牺牲效率上的,而第一种方法的话,通过适当的判断,比如你所说的目标逃跑,就可以通过适当次数的距离判断、等待解决。至于datasys,那是我随便说的,只是为了提高效率而已……
回复

使用道具 举报

发表于 2009-5-7 00:04:01 | 显示全部楼层
让马甲单位施放风暴之锤~~

单位死亡事件~~凶手为马甲则增加Hero属性~~
回复

使用道具 举报

 楼主| 发表于 2009-5-7 00:45:50 | 显示全部楼层
好吧,果然是个无比强大的方法。
谢谢~~
回复

使用道具 举报

发表于 2009-5-7 09:05:07 | 显示全部楼层
不检测是哪个单位而检测有哪个技能就是为了让一个马甲能适应多种情况

反正每个马甲只给他加一个技能来使用(默认技能为空) 该消灭的消灭  要存留数秒的就+个时间
回复

使用道具 举报

发表于 2009-5-7 09:14:37 | 显示全部楼层
引用第12楼louter于2009-05-06 21:11发表的  :
所以需要判断啊,再说,注册接受伤害事件绝对平均效率比模拟投射物低(因为以前我就做过……一个是线性的,一个跟本无法控制),而这两者的精确性都是建立在牺牲效率上的,而第一种方法的话,通过适当的判断,比如你所说的目标逃跑,就可以通过适当次数的距离判断、等待解决。至于datasys,那是我随便说的,只是为了提高效率而已……
效率的问题,这个我倒是不知道
我只知道注册伤害事件的方法比较简单
对于回答新手问题
还是简单点好
适当次数的距离判断、等待解决
这样的方法就更加复杂了
而且容易出BUG
相比于效率
我一直都是效果优先的
不然也不会想出用生命周期代替timer绑定数据的方法
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 点一下

本版积分规则

Archiver|移动端|小黑屋|地精研究院

GMT+8, 2024-11-25 15:56 , Processed in 0.032063 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表