找回密码
 点一下
查看: 2320|回复: 10

郁闷啊,为啥GetEnumUnit()不能传递啊。

[复制链接]
发表于 2008-7-6 15:32:25 | 显示全部楼层 |阅读模式
用全局变量传就只能捕捉到第一个单位,用GC的话就1个都捕捉不到了。
发表于 2008-7-6 15:34:50 | 显示全部楼层
为什么要传递呢????

LZ想实现个什么功能呢?
回复

使用道具 举报

发表于 2008-7-7 06:25:21 | 显示全部楼层
1.用单位组吧
2.gc可以传递单位的(用Return BUG)
回复

使用道具 举报

 楼主| 发表于 2008-7-7 14:58:45 | 显示全部楼层
单位组只是延后了而已,最终还是要用GetEnumUnit()绑存,才符合要求。
不过它就是不能存,循环的话又太慢了。
回复

使用道具 举报

 楼主| 发表于 2008-7-7 15:24:48 | 显示全部楼层
还是用比较原始方法代替了,希望资源付出是值得的。
回复

使用道具 举报

发表于 2008-7-7 16:49:22 | 显示全部楼层
可以传递    这就是我提出的C2I系统        往code上绑定数据


附上演示    光环系统

简要说明

[codes=jass]function C2I takes code c returns integer
  return c
  return 0
endfunction   

function I2C takes integer i returns code
    return i
    return null
endfunction  

function Attack takes nothing returns nothing      
    local unit u=I2U(GetStoredInteger(udg_GC,I2S(C2I(function Attack)),"Unit"))     
    call IssueTargetOrder(GetEnumUnit(),"attack",u)
    set u=null
endfunction   

//……
local unit u=CreateUnit(xxx)
call StoreInteger(udg_GC,I2S(C2I(function Attack )),"Unit",H2I(u))   
call ForGroup(targetgroup,function  Attack) [/codes]



                                                  ——everguo

光环函数(增加复活光环).w3x

71 KB, 下载次数: 11

回复

使用道具 举报

发表于 2008-7-7 18:32:47 | 显示全部楼层
原来是邪恶D马甲的邪恶D演示……
回复

使用道具 举报

 楼主| 发表于 2008-7-7 19:16:39 | 显示全部楼层
我是说把GetEnumUnit()拿出来,而不是抱怨ForGroup只能带无参数函数。
我说的传递GetEnumUnit()就是因为,用反过来把参数全塞进ForGroup解决不了。
回复

使用道具 举报

发表于 2008-7-7 21:56:23 | 显示全部楼层
要拿出来很简单    用个单位全局变量数组+数值型全局变量    记得使用前先清零

...
set udg_i=udg_i+1
set udg_units[udg_i]=GetEnumUnit()
...


之前误会了LZ的意思,以为C2I系统终于有用处了,于是出来回帖,现在消失
回复

使用道具 举报

发表于 2008-7-8 06:22:25 | 显示全部楼层
LS………………   [s:186]
回复

使用道具 举报

发表于 2008-7-8 15:00:06 | 显示全部楼层
鬼一的情人节礼物那个就素将单位组提出做单位数组用。
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-11-24 07:50 , Processed in 0.036999 second(s), 21 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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