找回密码
 点一下
查看: 1084|回复: 5

如何响应单位改变攻击目标?

[复制链接]
发表于 2011-6-29 13:03:47 | 显示全部楼层 |阅读模式
想做一个单位改变攻击目标,攻击速度降低的效果。

原本用武器给攻击目标上BUFF的方法,然后判断攻击发起时目标身上是否有BUFF,但是有多个单位就行不通了。
比如A攻击C,B攻击D,A去攻击D的时候,由于D身上也有BUFF,所以A不会减速

用目标的伤害响应做效果不好,必须等子弹打到目标身上才会触发减速效果,我希望在攻击一开始的时候就触发减速效果

原想用Marker,但是Marker的功能和我想像的不一样,在该次攻击效果完成后就会移除,不能延续到下一次攻击

有办法实现这个效果吗?
发表于 2011-6-29 14:02:52 | 显示全部楼层
如果你会用Marker,为什么不尝试下使用持续效果?
持续效果有持续时间,应该能延续到下次攻击。
回复

使用道具 举报

 楼主| 发表于 2011-6-29 14:39:31 | 显示全部楼层
不会用Marker,能详细说说吗?
怎样给攻击目标上标记?
怎样把标记和攻击者联系起来?
怎样在验证器里使用标记?
回复

使用道具 举报

发表于 2011-6-29 18:06:09 | 显示全部楼层
如果用触发器可以这样(不会数据)。
事件用单位发出攻击,查看表,看看表是不是空的(也可以是一个全局变量)。如果是空的那么就把被攻击单位加入表里面,如果表不是空的,那么看看表里面的单位和这次被攻击的单位是不是同一个单位,如果不是那么表示目标转换了,这次攻击响应了“单位目标转移”,然后做你想做的事情,并且把这次被攻击的单位放入表里面准备下一次转换目标,如果那个单位放弃了目标就把表置空,免得下次攻击一开始就慢。楼主需要目标转移响应应该是触发里面的响应吧?这个应该合适
回复

使用道具 举报

 楼主| 发表于 2011-6-29 21:05:00 | 显示全部楼层
触发是能够解决,但是执行效率远不如数据
单位多了就要建数组或者全局数据表,得浪费多少内存呀。
而且不断地往数组里存取数据的指向也是个问题。
话说GE能动态建立全局数组吗?貌似没见过。

能用数据实现最好了
回复

使用道具 举报

 楼主| 发表于 2011-6-30 18:47:58 | 显示全部楼层
【水】自己顶一下
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-12-25 10:03 , Processed in 0.045414 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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