◆技能名称: ┈━═☆无界の灵☆═━┈死亡螺旋波
◆技能介绍: 【发动技能的时候,单位周围会出现一个螺旋形color=magenta>的黑光,围着触发单位转五秒(英雄走的时候跟着走),然后五秒后向周围射去~】
◆技能预览:
◆技能来源: 【脑袋加上一点怪异的想法】
◆UI版本: WE版本是YDWE ,魔兽版本1.24
1.20不支持hash,别叫我转1.20的!
部分代码: function luox takes nothing returns nothing
local timer t=GetExpiredTimer()
local real ss=LoadReal(hs,GetHandleId(t),1)
local real juli=LoadReal(hs,GetHandleId(t),2)
local unit hero=LoadUnitHandle(hs,GetHandleId(t),3)
local integer xh
local unit array u
set xh=1
loop
exitwhen xh >40
set u[xh]=LoadUnitHandle(hs,GetHandleId(t),xh+10)
set xh=xh+1
endloop
set ss = ( ss - 5.00 )
set juli = ( juli - 20.00 )
set xh = 1
loop
exitwhen xh >40
call SetUnitX( u[xh], ( GetUnitX(hero) + ( ( juli * Sin(( ( ( 36.00 * I2R(xh) ) + ss ) * ( bj_PI / 180.00 ) )) ) * Cos(( ( GetUnitFacing(hero) - 90.00 ) * ( bj_PI / 180.00 ) )) ) ) )
call SetUnitY( u[xh], ( GetUnitY(hero) + ( ( juli * Sin(( ( ( 36.00 * I2R(xh) ) +ss ) * ( bj_PI / 180.00 ) )) ) * Sin(( ( GetUnitFacing(hero) - 90.00 ) * ( bj_PI / 180.00 ) )) ) ) )
call SetUnitFlyHeight( u[xh], ( 500 + ( juli * Cos(( ( 36.00 * ( I2R(xh) + ( ss / 36.00 ) ) ) * ( bj_PI / 180.00 ) )) ) ), 0.00 )
set xh = xh + 1
endloop
call FlushChildHashtable(hs,GetHandleId(t))
set xh =1
loop
exitwhen xh > 40
call SaveUnitHandle(hs,GetHandleId(t),xh+10,u[xh])
set xh=xh+1
endloop
call SaveReal(hs,GetHandleId(t),1,ss)
call SaveReal(hs,GetHandleId(t),2,juli)
call SaveUnitHandle(hs,GetHandleId(t),3,hero)
if juli <= -100 then
set xh = 1
loop
exitwhen xh > 40
call RemoveUnit( u[xh] )
set xh = xh + 1
endloop
call PauseTimer( t )
call DestroyTimer(t)
else
endif
endfunction
function dant takes nothing returns nothing
local timer jsq=GetExpiredTimer()
local real cs=LoadReal(hs,GetHandleId(jsq),2)
local timer t=CreateTimer()
local real ss = 0.00
local location dian = GetUnitLoc(GetSpellAbilityUnit())
local real juli = 500
local unit array u
local integer xh
local unit hero=LoadUnitHandle(hs,GetHandleId(jsq),1)
set xh = 1
set cs= cs+1
loop
exitwhen xh > 40
call RemoveUnit( u[xh] )
set u[xh] = CreateUnit(Player(0), 'hfoo', ( GetUnitX(hero) + ( ( juli * Cos(( ( 36.00 * I2R(xh) ) * ( bj_PI / 180.00 ) )) ) * Sin(( GetUnitFacing(hero) * ( bj_PI / 180.00 ) )) ) ), ( GetUnitY(hero) + ( ( juli * Sin(( ( 36.00 * I2R(xh) ) * ( bj_PI / 180.00 ) )) ) * Cos(( GetUnitFacing(hero) * ( bj_PI / 180.00 ) )) ) ), ( ( 36.00 * I2R(xh) ) + 90.00 ))
call SetUnitFlyHeight( u[xh], ( juli + ( juli * Sin(( ( 36.00 * I2R(xh) ) * ( bj_PI / 180.00 ) )) ) ), 0.00 )
call SetUnitVertexColor( u[xh], 255, 255, 255, 0 )
set xh = xh + 1
endloop
call RemoveLocation( dian )
//
set xh =1
loop
exitwhen xh > 40
call SaveUnitHandle(hs,GetHandleId(t),xh+10,u[xh])
set xh=xh+1
endloop
call SaveReal(hs,GetHandleId(t),1,ss)
call SaveReal(hs,GetHandleId(t),2,juli)
call SaveUnitHandle(hs,GetHandleId(t),3,hero)
call TimerStart(t,0.03,true,function luox )
call SaveReal(hs,GetHandleId(jsq),2,cs)
if cs >= 40 then
call PauseTimer( jsq )
call DestroyTimer(jsq)
call FlushChildHashtable(hs,GetHandleId(jsq))
else
endif
endfunction
function gogo takes unit hero returns nothing
local timer jsq=CreateTimer()
local real cs = 0
call SaveReal(hs,GetHandleId(jsq),2,cs)
call SaveUnitHandle(hs,GetHandleId(jsq),1,hero)
call TimerStart(jsq,0.2,true,function dant )
endfunction
死亡螺旋.w3x
(1.09 MB, 下载次数: 194)
|