|
发表于 2016-2-18 03:36:53
|
显示全部楼层
嗯哪,事实上对于我这种从WE转坑SE的老油条来说,以我这种落后的眼光看,SE没有提供WE中的句柄ID函数(GetHandleId),这导致在WE中用来进行绑定的技术在SE上全部失效了
我个人意见,这是SE一个不大不小的缺陷.
头目提到的行为捕捉,是基于触发器事件中的"单位行为事件"这一项,如果没有特别的需求,只要借助一个周期性行为和相应的行为周期响应事件,基本可以简洁完美地达成WE中必须使用计时器绑定才能做到的单位追踪,可以说行为捕捉能解决95%的问题...
至于说缺陷嘛....
事实上这个缺陷不是触发体系导致的,而是因为数据编辑器的不足....
在SE上制作非线性叠加类的Buff效果,数据编辑器提供的功能有些捉襟见肘,譬如规定一些特殊的Buff规则(引入类似强度,相性,属性)时——当然我对数据编辑器了解有限,可能这些额外项是可以通过改动高级数据来列入行为性征的(头目能不能解答下... )——以及一些数据编辑器无法实现的技能效果(譬如SC1代中科学球的防御矩阵)时,因为数据编辑器的问题,不得不用触发编辑器制作的常规技能的情况下,问题才会变得严重起来.
昨天拔了很久的Galaxy源码,但是似乎没找到类似WE中能获取游戏中handle类对象唯一ID的函数.
换言之,SE的触发编辑器似乎根本没有提供句柄追踪的功能,这导致高效简洁的句柄绑定是不可能的.
然而就像我提到的那个SC1的防御矩阵,这货并不像SC2里面那样直接追加护盾,而是另外形成了一个单独计数的护盾,这个盾不会被EMP炸光,而套了盾的单位每次还是会受到至少1点伤害.
因为我对数据编辑器比较不了解,没找到在哪能添加其他的基础属性(比如在生命,护盾,能量的基础上再加个什么别的属性),所以这时候就算能做出来伤害固定,但是没法让防御矩阵的护盾点单独计算.
所以不得不用触发器来解决这问题了....
然后就碰到一个问题,就算能通过行为捕捉防御矩阵buff绝大多数事件,但是每个单位套上的矩阵能量点数必须得想办法记录,于是这就是个很古老的问题——把数据绑定到单位上...
老实说在那之前我不认为在SE里面还有什么技能非得用触发器做不可
但是现在我感觉我对这个编辑器的了解可能更跑偏了
总之啰嗦了一堆....
要在SE里面捕捉句柄:
1.对于单位而言,可以用特殊索引的自定义值,用触发器构建一个单位ID机制来实现单位和数据的绑定.
2.对于其他句柄,除了全局变量+枚举,我个人想不出别的办法了
...总之就是酱紫...
不知道头目怎么看,@麦德三世
|
|