benaixy 发表于 2014-5-8 00:11:42

关于单位组问题

不知道大家解决过没有,但是我一直很头疼
    选取xxx范围内所有单位
    创建 xx 在 选取单位 位置,.....

就是这样的触发究竟要怎样排泄点呢。。。。

chyj4747 发表于 2014-5-9 05:25:58

设置单位组g = 选取xxx范围内所有单位
对单位组g中所有单位做动作
   设置点p = 选取单位的位置
   创建 xx 在 点p
   删除点p
删除单位组g

benaixy 发表于 2014-5-12 19:55:46

chyj4747 发表于 2014-5-9 05:25
设置单位组g = 选取xxx范围内所有单位
对单位组g中所有单位做动作
   设置点p = 选取单位的位置


呃,不是这个意思,比如选取了范围内的所有敌军,然后制造马甲在每个敌军的头上放技能,这时候就会有很多点出来,然后不懂排泄了

ckpig 发表于 2014-5-12 22:36:08

设置变量

chyj4747 发表于 2014-5-13 11:14:18

benaixy 发表于 2014-5-12 19:55
呃,不是这个意思,比如选取了范围内的所有敌军,然后制造马甲在每个敌军的头上放技能,这时候就会有很多 ...

那你是不是要对单位组做动作?是不是每个选取单位都有各自对应的点?那不就是我写的设置点变量为某个点,用完后删掉那个点

benaixy 发表于 2014-5-13 21:16:37

chyj4747 发表于 2014-5-13 11:14
那你是不是要对单位组做动作?是不是每个选取单位都有各自对应的点?那不就是我写的设置点变量为某个点, ...

这样是可以删除所有选取的点么,总是觉得会泄漏的样子

chyj4747 发表于 2014-5-13 22:14:17

benaixy 发表于 2014-5-13 21:16
这样是可以删除所有选取的点么,总是觉得会泄漏的样子

你要用一个点,那么先记录下来,省得之后找不到,然后在最后要删除的时候,删除这个记录的点,这一步从头到尾就只有一个点,创建->使用->删除,LZ觉得哪里还有泄漏?

benaixy 发表于 2014-5-13 22:39:46

chyj4747 发表于 2014-5-13 22:14
你要用一个点,那么先记录下来,省得之后找不到,然后在最后要删除的时候,删除这个记录的点,这一步从头 ...

不是的,就是比如捕捉了四个单位,这四个单位的点都要用,可是排泄就不会了

小獅子 发表于 2014-5-14 17:26:52

你应该是误会了触发的流程

像上面说的, 即使你选取了范围内的所有敌军, 点变量其实你只用一个就够了

以上面的例子来说

对单位组g中所有单位做动作   <---1 //要注意这个可看成loop
    设置点p = 选取单位的位置<---1.1
    创建 xx 在 点p <---1.2
    删除点p<---1.3
删除单位组g <---2

假设单位组有3个单位, 那你的触发的运行次序是这样
1 - > 1.1 -> 1.2 -> 1.3 > 1.1 -> 1.2 -> 1.3 > 1.1 -> 1.2 -> 1.3-> 2 //即是1里面的实际会运行3次, 最後才运行2

所以即使这里曾记录过3点, 但变量 点p 一个就够了, 而且每一次用完后也有删掉, 单位组g亦在 "2" 是时删掉了
也当然没泄漏的问题


chyj4747 发表于 2014-5-14 23:09:29

benaixy 发表于 2014-5-13 22:39
不是的,就是比如捕捉了四个单位,这四个单位的点都要用,可是排泄就不会了

也就是这些点要同时存在吗?
那样的话用点数组,然后再用一个整数变量记录一共有多少点

创建点时:点数组[整数变量] = 新的点,整数变量+1
各种使用点
删除点时:循环整数A从0 - 整数变量做动作,删除点数组

benaixy 发表于 2014-6-4 19:20:32

小獅子 发表于 2014-5-14 17:26
你应该是误会了触发的流程

像上面说的, 即使你选取了范围内的所有敌军, 点变量其实你只用一个就够了


设置Group = (半径为300圆心为Point且满足(匹配单位)不等于(自己)的同盟)
单位组 - 选取Group内所有单位做动作
- Loop - 动作
      设置UnitPoint = (选取单位)所在的位置
      设置UnitPointMove = (从UnitPoint开始,距离为100,方向为UnitPoint到Point度的位移处)
      单位 - 立即移动(选取单位)到UnitPointMove
          点 - 清除UnitPoint
          点 - 清除UnitPointMove
          点 - 清除Point
这样呢?

benaixy 发表于 2014-6-4 19:21:15

chyj4747 发表于 2014-5-14 23:09
也就是这些点要同时存在吗?
那样的话用点数组,然后再用一个整数变量记录一共有多少点



有点麻烦,好像可行的,可是我不怎么会用循环整数,唉
页: [1]
查看完整版本: 关于单位组问题