中级玩家
 
- 贡献度
- 0
- 金元
- 1650
- 积分
- 165
- 精华
- 0
- 注册时间
- 2020-5-26
|
function Trig_RandSkill4_Conditions takes nothing returns boolean
return IsUnitType(GetTrainedUnit(), UNIT_TYPE_HERO)
endfunction
function Trig_RandSkill4_Actions takes nothing returns nothing
local unit h = GetTrainedUnit()
local integer i = 1
local integer r
local integer array used
local integer array sk
// 技能池(可改ID)
set sk[1] = 'AHwe'
set sk[2] = 'AHst'
set sk[3] = 'AHhb'
set sk[4] = 'AHfs'
set sk[5] = 'AHmt'
set sk[6] = 'AHbl'
set sk[7] = 'AHlc'
set sk[8] = 'AHsh'
local integer max = 8
// 清空原有技能
call UnitRemoveAbility(h, 'A000')
call UnitRemoveAbility(h, 'A001')
call UnitRemoveAbility(h, 'A002')
call UnitRemoveAbility(h, 'A003')
// 随机4个
loop
exitwhen i > 4
set r = GetRandomInt(1, max)
if used[r] == 0 then
call UnitAddAbility(h, sk[r])
set used[r] = 1
set i = i + 1
endif
endloop
set h = null
endfunction
function InitTrig_RandSkill4 takes nothing returns nothing
local trigger t = CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(t, EVENT_PLAYER_UNIT_TRAIN_FINISH)
call TriggerAddCondition(t, Condition(function Trig_RandSkill4_Conditions))
call TriggerAddAction(t, function Trig_RandSkill4_Actions)
endfunction
|
|