|
楼主 |
发表于 2013-8-8 00:11:38
|
显示全部楼层
本帖最后由 frank630520 于 2013-8-8 01:23 编辑
function Trig_frankqgzs4546_Func004Func009A takes nothing returns nothing
local unit frankunt = GetEnumUnit()
local unit frankatt = GetAttacker()
local boolean frankbl = IsUnitType(frankunt , UNIT_TYPE_ETHEREAL)
local unit frankhero = udg_frankhero[GetConvertedPlayerId(GetOwningPlayer(frankatt))]
local real frankre = ( I2R(GetHeroStr(frankhero , true)) + I2R(GetHeroInt(frankhero, true)) + I2R(GetHeroAgi(frankhero , true))) * I2R( 30 * udg_frankInt[FRANK_CONS_GROUP]) //伤害等于三围*30*单位组单位的数量(全局变量),也这是说,人数越多伤害越高
local effect frankefft
set frankefft = AddSpecialEffectTargetUnitBJ( "overhead", frankunt , "Abilities\\Spells\\Undead\\FrostNova\\FrostNovaTarget.mdl" )
if ( frankbl ) then
call UnitDamageTarget( frankatt, frankunt, frankre , true, false, ATTACK_TYPE_NORMAL, DAMAGE_TYPE_UNIVERSAL, WEAPON_TYPE_WHOKNOWS )
else
call UnitDamageTarget( frankatt, frankunt, frankre , true, false, ATTACK_TYPE_CHAOS, DAMAGE_TYPE_UNIVERSAL, WEAPON_TYPE_WHOKNOWS )
endif
call DestroyEffect( frankefft )
set frankunt = null
set frankatt = null
set frankefft = null
set frankhero = null
endfunction
if ( Trig_frankqgzs4546_Func004C(frankrandom) ) then
set franktion = GetUnitLoc(frankunitatt)
set frankgroup = GetRandomSubGroup(100, GetUnitsInRangeOfLocMatching(I2R(1000), franktion , Condition(function Trig_frankqgzs4546_Func004Func009001002003)))
set udg_frankInt[FRANK_CONS_GROUP] = CountUnitsInGroup(frankgroup) //udg_frankInt[FRANK_CONS_GROUP] 用全局变量,索引是常数。存储了frankgroup单位组的单位数量
call ForGroupBJ( frankgroup , function Trig_frankqgzs4546_Func004Func009A )
call RemoveLocation( franktion )
call DestroyGroup( frankgroup )
set frankeff = AddSpecialEffectTargetUnitBJ( "overhead", frankunitatt , "Abilities\\Spells\\Undead\\DarkRitual\\DarkRitualTarget.mdl" )
call DestroyEffect( frankeff )
return
endif
这是段残缺的代码,主要单位组里的单位受伤害,我想在Trig_frankqgzs4546_Func004Func009A函数中获取frankgroup单位组,不用全局变量,想用函数获取单位组
call ForGroupBJ( frankgroup , function Trig_frankqgzs4546_Func004Func009A )不能往里传参数吧?实际传了单位,用选取单位可获取单位,那么有没有传单位组,我想获取单位组的单位数量,上面残缺的代码是用全局变量得到了,但我想知道有没有像
call TimerStart(time,9.00,ture,function Dying_loc) 这样可以在Dying_loc 函数 local timer time = GetExpiredTimer()//获取到期的计时器 中得到计时器
call TriggerAddAction( gg_trg_franksum, function Trig_frankwpqishu_Actions ) 得到 GetTriggerUnit() 触发单位等等,我不太会描述希望各位大神知道我在说什么?
这是说有没有函数 获取单位组 像 Getgroup (是不存在的) 之类的? |
|