找回密码
 点一下
查看: 1307|回复: 15

如何实现碰撞攻击?

[复制链接]
发表于 2011-6-24 13:33:26 | 显示全部楼层 |阅读模式
就象自杀飞蛾那样。我要实现的相对简单:一个已方新建单位只要碰到敌方单,敌方单位即死,已方单位无损失。
思路一:我想通过触发器判断两者的距离为零,但是却找不到单位自毁的函数,于是希望给新单位加一个无形的武器,但是新单位的武器分支却没有,不知道怎么添加。
思路二:能不能通过高级一点功能,如纯数据编辑的方式实现?
发表于 2011-6-24 13:57:23 | 显示全部楼层
你可以考虑给单位加个行为,周期性范围搜索,执行伤害效果。(如果是即死,设置伤害效果标旗kill即可)

这样靠近你这个单位的单位就会即死。(当然你可以搜索的时候筛选下,例如只有敌方单位才死,或者只有飞弹单位才死<飞弹拦截>)

这个搜索可以设置角度半径,变成只有正面的即死,后面过来的无效。

甚至可以设置一个效果偏移,在离自己远的地方的环形区域即死。
回复

使用道具 举报

 楼主| 发表于 2011-6-24 14:10:33 | 显示全部楼层
这个强大,回家试试!
回复

使用道具 举报

发表于 2011-6-24 14:24:44 | 显示全部楼层
不知道楼主有没有考虑到一个问题。

那就是,不同单位的飞行高度其实有所不同。你要怎么才算碰撞呢?
回复

使用道具 举报

 楼主| 发表于 2011-6-24 14:37:47 | 显示全部楼层
是个问题,目前我设想的是同高度的飞行单位,不同高度可以设置成同高度。如果真要考虑地面单位就不能称碰撞了。
回复

使用道具 举报

 楼主| 发表于 2011-6-24 21:52:39 | 显示全部楼层
引用第1楼angerking于2011-06-24 13:57发表的  :
你可以考虑给单位加个行为,周期性范围搜索,执行伤害效果。(如果是即死,设置伤害效果标旗kill即可)
我在单位的事件哪里找到行为、效果等的触发事件,但就是不知道怎么弄呀
在范围搜索文件夹里可新建范围搜索,在效果里可以新建kill效果
怎么关联就不知道了
回复

使用道具 举报

发表于 2011-6-24 22:51:55 | 显示全部楼层
范围搜索是个效果,(不少效果本身有范围搜索,例如伤害效果)

范围搜索效果中的“搜索”页中有个列表,点新建能添加范围,可以设置半径。

下面有个效果链接,能链接kill效果。
回复

使用道具 举报

 楼主| 发表于 2011-6-25 00:10:19 | 显示全部楼层
这个我好象也看见了,那么如果创建了有范围搜索的伤害效果,接下来怎么创建周期性的行为与单位关联呢?
我复制了一个高阶圣堂-灵能风暴行为,里面倒有一些周期性的参数设置,通过演算体的事件把该复制的行为添加进去,运行游戏,没有任何效果
回复

使用道具 举报

发表于 2011-6-25 08:04:01 | 显示全部楼层
额,我建议你先看下其他技能怎么做的。

行为有几个参数,持续时间和周期。

行为能在不同的时间点触发效果。
初始,周期,持续完整周期,刷新,最终。

初始就是行为挂上去就触发。

周期是会在按周期时间不停的触发。

刷新是该行为持续时间内,又有同一行为加上去的时候触发。

持续完整周期是改行持续到持续时间结束才会触发。

最终效果是不管是否持续到时间结束,只要移除改行为就触发。



看你这问题,你自然不知道行为如何加在单位上……

单位项目中,行为页面,有一个行为列表,在这里添加……


本以为你不知道怎么做类似碰撞检验的效果。没想到是连做个基础的技能都不会。ABE结构都不知道……
先去看看置顶的教程吧,上面有带截图,一步步教做技能的。
回复

使用道具 举报

 楼主| 发表于 2011-6-25 19:32:43 | 显示全部楼层
确实如你所说,我在单位行为面板的行为列表里没有添加我定义的行为,但是我添加进去后,还是没有效果,于是想问:
1、添加的行为是否会自动生效,有什么办法检验行为添加后,已经在周期性的持行了?
2、击杀效果是不是单位没有装武器也会生效

我找了麦D的教程置顶帖,看了很多教程了,就是没发现你说的带图制作技能的帖子。
不过看了这些帖子,现在总算是把ABE结构搞清楚了!
回复

使用道具 举报

 楼主| 发表于 2011-6-25 22:11:20 | 显示全部楼层
我发现行为只执行了一次,但是不会重复执行,我有设置周期间隔时间,并在效果-周期性中设置的效果,但是效果仅实现了一次,如何实现周期性呀
对了,效果里不是有一个持续效果吗<CEffectCreatePersistent>,是否可以取代周期搜索,一直持续搜索呢?
另外没有装武器也不会影响击杀效果,即效果跟武器没关联
回复

使用道具 举报

 楼主| 发表于 2011-6-26 00:04:04 | 显示全部楼层
终于找到原因了,我把参数设置错了,“时长(该行为的持续时间)”这一项只要设为0就可以实现周期了,问题解决。
另外触发器中也有自毁函数的,通过触发器我也实现了这个效果
回复

使用道具 举报

 楼主| 发表于 2011-6-26 00:17:08 | 显示全部楼层
原来时长(该行为的持续时间)的意思是整个行为持续的时间,周期也会在这个时长范围内。
如果想在一分钟内结束撞击效果就把时长设为60,想一直有撞击效果就设置为0
回复

使用道具 举报

发表于 2011-6-26 00:28:04 | 显示全部楼层
两个时间,一个是持续时间,一个是周期时间。

持续时间为0是永久存在,如果设置了时间,安在单位上则游戏开始后就会随着时间的流逝减少,消失。

我不知道你所谓的击杀效果是什么。如果是一个伤害效果,标旗为kill……

你要对敌人使用一个效果,必须有目标的动作。
例如用武器攻击。(武器会自动给攻击目标产生效果)。
例如上海回应-防御者,则会在受到攻击的时候生效。
范围搜索,则会对搜索到的目标施放效果。

如果你要杀死靠近你的人,则需要范围搜索,给进入你周围的敌人上“杀死”他们的伤害效果。

这些功能能用数据编辑器实现,推荐用数据编辑器实现,简单有效,高效率。
触发器通常用来实现数据编辑器很难实现的效果,和编写地图脚本。
回复

使用道具 举报

 楼主| 发表于 2011-6-26 02:16:59 | 显示全部楼层
非常感谢,两种方法我都实现了,此问题圆满解决,而且我也学到了不少新东西。
准备写个帖子,把我这些天的学习心得写出来,对象我这样的纯彩笔一定有很大帮助!
回复

使用道具 举报

发表于 2011-6-26 08:30:59 | 显示全部楼层
这个让我想到的神风攻击机= =
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-1 01:06 , Processed in 0.102151 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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