找回密码
 点一下
查看: 1147|回复: 11

关于单位组问题

[复制链接]
发表于 2014-5-8 00:11:42 | 显示全部楼层 |阅读模式
不知道大家解决过没有,但是我一直很头疼
    选取xxx范围内所有单位
    创建 xx 在 选取单位 位置,.....

就是这样的触发究竟要怎样排泄点呢。。。。
发表于 2014-5-9 05:25:58 | 显示全部楼层
设置单位组g = 选取xxx范围内所有单位
对单位组g中所有单位做动作
   设置点p = 选取单位的位置
   创建 xx 在 点p
   删除点p
删除单位组g

点评

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

使用道具 举报

 楼主| 发表于 2014-5-12 19:55:46 | 显示全部楼层
chyj4747 发表于 2014-5-9 05:25
设置单位组g = 选取xxx范围内所有单位
对单位组g中所有单位做动作
   设置点p = 选取单位的位置

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

使用道具 举报

发表于 2014-5-12 22:36:08 | 显示全部楼层
设置变量
回复

使用道具 举报

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

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

点评

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

使用道具 举报

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

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

使用道具 举报

发表于 2014-5-13 22:14:17 | 显示全部楼层
benaixy 发表于 2014-5-13 21:16
这样是可以删除所有选取的点么,总是觉得会泄漏的样子

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

点评

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

使用道具 举报

 楼主| 发表于 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" 是时删掉了
也当然没泄漏的问题


点评

设置Group = (半径为300圆心为Point且满足(匹配单位)不等于(自己)的同盟) 单位组 - 选取Group内所有单位做动作 - Loop - 动作 设置UnitPoint = (选取单位)所在的位置 设置UnitPointMove = (从Unit  详情 回复 发表于 2014-6-4 19:20
回复

使用道具 举报

发表于 2014-5-14 23:09:29 | 显示全部楼层
benaixy 发表于 2014-5-13 22:39
不是的,就是比如捕捉了四个单位,这四个单位的点都要用,可是排泄就不会了

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

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

点评

有点麻烦,好像可行的,可是我不怎么会用循环整数,唉  详情 回复 发表于 2014-6-4 19:21
回复

使用道具 举报

 楼主| 发表于 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
这样呢?
回复

使用道具 举报

 楼主| 发表于 2014-6-4 19:21:15 | 显示全部楼层
chyj4747 发表于 2014-5-14 23:09
也就是这些点要同时存在吗?
那样的话用点数组,然后再用一个整数变量记录一共有多少点

有点麻烦,好像可行的,可是我不怎么会用循环整数,唉
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-22 07:51 , Processed in 0.054130 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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