找回密码
 点一下
楼主: rainmanhhh

FirstOfGroup的写法和Filter的写法哪个好呢?

[复制链接]
发表于 2009-6-18 00:44:11 | 显示全部楼层
loop有一个缺陷:当单位多的时候,会超出触发字节码执行上限而导致触发被终止。
回复

使用道具 举报

发表于 2009-6-18 09:20:20 | 显示全部楼层
单位一般不会超过100个吧
回复

使用道具 举报

发表于 2009-6-18 09:28:03 | 显示全部楼层
偶还是喜欢直接把函数写在condition里面然后不管如何都返回false
回复

使用道具 举报

发表于 2009-6-18 15:07:11 | 显示全部楼层
突然想起如果按 linzefei 的代码模拟的话,是单向性的,如果完全模拟ForGroup的话还要建个Group导一遍。

到头来还是ForGroup速度快嘛........
回复

使用道具 举报

发表于 2009-6-18 15:31:54 | 显示全部楼层
但是很多情况下不需要完全模拟ForGroup
回复

使用道具 举报

发表于 2009-6-18 15:55:05 | 显示全部楼层
很多情况下根本不需要用ForGroup...GroupEnum就够鸟
回复

使用道具 举报

发表于 2009-6-19 01:12:38 | 显示全部楼层

回 23楼(louter) 的帖子

一般 单位组。。很多都是临时选取的把。。
比如控制单位移动 检查碰撞~`
回复

使用道具 举报

发表于 2009-6-19 10:26:18 | 显示全部楼层
我估计group比较慢的原因是因为他是一个类似location的结构。。。location重复添加东西就很慢
回复

使用道具 举报

发表于 2009-6-20 17:57:00 | 显示全部楼层
那么结论是
call GroupEnumUnitsInRange(udg_g,0,0,200,null)
以后循环来动作最快吗?
...
不过ms听谁说选取单位组的条件用null有bug的说
回复

使用道具 举报

发表于 2009-6-20 22:20:40 | 显示全部楼层
Red_Wolf说的,用null会泄露
回复

使用道具 举报

发表于 2009-6-21 19:05:42 | 显示全部楼层
一般偶直接就用Conditon里面写掉了。。
回复

使用道具 举报

发表于 2009-6-21 20:21:57 | 显示全部楼层
引用第22楼eff于2009-06-18 09:28发表的  :
偶还是喜欢直接把函数写在condition里面然后不管如何都返回false
re~不过ms returns nothing就可以(会认为return false),但看wc3c上的bug report贴说这样可能会导致不同步,似乎和windows与mac之类的差别有关
回复

使用道具 举报

发表于 2009-6-21 21:57:15 | 显示全部楼层
return nothing 的话会导致pjass检测不通过,嘛,有时候养成好的编写习惯还是蛮重要的......
回复

使用道具 举报

 楼主| 发表于 2009-6-24 15:25:07 | 显示全部楼层
引用第29楼libla于2009-06-20 22:20发表的  :
Red_Wolf说的,用null会泄露
泄露的原因是什么?有办法避免吗?
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-22 02:18 , Processed in 0.065590 second(s), 17 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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