找回密码
 点一下
查看: 1320|回复: 3

捕捉单位确定条件布尔值的问题

[复制链接]
发表于 2008-3-3 22:28:50 | 显示全部楼层 |阅读模式
[codes=jass]function Trig_Enemy_Judgment takes nothing returns boolean
    return ( IsUnitEnemy(GetFilterUnit(), GetOwningPlayer(udg_TempUnit)) == true )
endfunction
set udg_Group = GetUnitsInRangeOfLocMatching(500.00, udg_point, Condition(function Trig_Enemy_Judgment))
[/codes]
这样可以选择 udg_point 点范围500内 的所有敌方单位
如果只有2种怪,敌方友方,没有中立被动
想选友方和自己的单位,可以这么写么?
[codes=jass]function Trig_Enemy_Judgment takes nothing returns boolean
    return ( IsUnitEnemy(GetFilterUnit(), GetOwningPlayer(udg_TempUnit)) == true )
endfunction
set udg_Group2 = GetUnitsInRangeOfLocMatching(500.00, udg_point, Condition( not (function Trig_Enemy_Judgment)))
[/codes]
发表于 2008-3-3 22:42:57 | 显示全部楼层
那为什么不直接用IsUnitAlly呢??
回复

使用道具 举报

 楼主| 发表于 2008-3-4 11:34:30 | 显示全部楼层
???
怎么用?
我是想做一个 敌人-血 我方+血的技能
set udg_Group2 = GetUnitsInRangeOfLocMatching(500.00, udg_point, ( IsUnitEnemy(GetFilterUnit(), GetOwningPlayer(udg_TempUnit)) == true ))

可以这么写么?
回复

使用道具 举报

发表于 2008-3-4 12:37:54 | 显示全部楼层
啊呀呀,那么可以先把区域内单位全选了(filter那里填null)
然后在ForGroup的时候对GetEnumUnit作判断
回复

使用道具 举报

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

本版积分规则

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

GMT+8, 2024-5-10 14:34 , Processed in 0.060710 second(s), 18 queries .

Powered by Discuz! X3.5

© 2001-2023 Discuz! Team.

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