Mấy anh ơi em rất muốn tạo 1 spell có thể nói là hơi mới 1 chút(lạ mắt). Nhưng không biết rõ lắm về cách tạo cũng không biết nhiều về phần mềm World Editer. Các anh có thể hướng dẫn thật cụ thể cho em được không ạ. Nếu được thì em biết ơn mấy anh nhiều lắm. (càng cụ thể càng tôt mấy anh nhé)
À còn vụ này nữa, em thấy mấy anh ghi cái gì đó như thế này nè:
function Trig_mega_crushing_wave_Conditions takes nothing returns boolean
if ( not ( GetSpellAbilityId() == 'sk07' ) ) then
return false
endif
return true
endfunction
function casmega takes nothing returns nothing
local timer t = GetExpiredTimer()
local unit dum = GHUnit( t, "dummy")
local unit cas = GHUnit( t, "caster")
call SetUnitPositionLocFacingBJ( dum, GetRandomLocInRect(RectFromCenterSizeBJ(GetUnitLoc (cas), 250.00, 250.00)), GetUnitFacing(cas) )
call IssuePointOrderLocBJ( dum, "carrionswarm", PolarProjectionBJ(GetUnitLoc(dum), 256, GetUnitFacing(cas)) )
endfunction
function Trig_mega_crushing_wave_Actions takes nothing returns nothing
local unit dum
local timer t
local unit cas
local location loc
local location casloc = GetUnitLoc(GetSpellAbilityUnit())
set t = CreateTimer()
set cas = GetSpellAbilityUnit()
call SHHandle(t , "caster" , cas )
set loc = GetSpellTargetLoc()
call CreateNUnitsAtLoc( 1, 'hgyr', GetOwningPlayer(cas), GetUnitLoc(cas), DistanceBetweenPoints(GetUnitLoc(cas), loc) )
set dum = GetLastCreatedUnit()
call SHHandle(t , "dummy" , dum )
call UnitAddAbilityBJ( 'ACc3', dum )
call SetUnitVertexColorBJ( dum, 100, 100, 100, 100.00 )
call TimerStart(t , 0.03 , true , function casmega )
call TriggerSleepAction(1.3)
call FHL(t)
set cas = null
set t = null
set casloc = null
set loc = null
call RemoveUnit( dum )
set dum = null
call RemoveLocation( loc )
call RemoveLocation( casloc )
call DestroyTimer( t )
endfunction
//================================================== =========================
function InitTrig_mega_crushing_wave takes nothing returns nothing
set gg_trg_mega_crushing_wave = CreateTrigger( )
call TriggerRegisterAnyUnitEventBJ( gg_trg_mega_crushing_wave, EVENT_PLAYER_UNIT_SPELL_EFFECT )
call TriggerAddCondition( gg_trg_mega_crushing_wave, Condition( function Trig_mega_crushing_wave_Conditions ) )
call TriggerAddAction( gg_trg_mega_crushing_wave, function Trig_mega_crushing_wave_Actions )
endfunction
Cái ngôn ngư đó dùng để lam gì và có thể chèn vào đau ạ.Ví dụ như mún tạo 1 spell như thế này thì phai làm j` ạ .
Đây nữa ạ
Càng cụ thể cang tốt nha mấy anh :'>:'>
À còn vụ này nữa, em thấy mấy anh ghi cái gì đó như thế này nè:
function Trig_mega_crushing_wave_Conditions takes nothing returns boolean
if ( not ( GetSpellAbilityId() == 'sk07' ) ) then
return false
endif
return true
endfunction
function casmega takes nothing returns nothing
local timer t = GetExpiredTimer()
local unit dum = GHUnit( t, "dummy")
local unit cas = GHUnit( t, "caster")
call SetUnitPositionLocFacingBJ( dum, GetRandomLocInRect(RectFromCenterSizeBJ(GetUnitLoc (cas), 250.00, 250.00)), GetUnitFacing(cas) )
call IssuePointOrderLocBJ( dum, "carrionswarm", PolarProjectionBJ(GetUnitLoc(dum), 256, GetUnitFacing(cas)) )
endfunction
function Trig_mega_crushing_wave_Actions takes nothing returns nothing
local unit dum
local timer t
local unit cas
local location loc
local location casloc = GetUnitLoc(GetSpellAbilityUnit())
set t = CreateTimer()
set cas = GetSpellAbilityUnit()
call SHHandle(t , "caster" , cas )
set loc = GetSpellTargetLoc()
call CreateNUnitsAtLoc( 1, 'hgyr', GetOwningPlayer(cas), GetUnitLoc(cas), DistanceBetweenPoints(GetUnitLoc(cas), loc) )
set dum = GetLastCreatedUnit()
call SHHandle(t , "dummy" , dum )
call UnitAddAbilityBJ( 'ACc3', dum )
call SetUnitVertexColorBJ( dum, 100, 100, 100, 100.00 )
call TimerStart(t , 0.03 , true , function casmega )
call TriggerSleepAction(1.3)
call FHL(t)
set cas = null
set t = null
set casloc = null
set loc = null
call RemoveUnit( dum )
set dum = null
call RemoveLocation( loc )
call RemoveLocation( casloc )
call DestroyTimer( t )
endfunction
//================================================== =========================
function InitTrig_mega_crushing_wave takes nothing returns nothing
set gg_trg_mega_crushing_wave = CreateTrigger( )
call TriggerRegisterAnyUnitEventBJ( gg_trg_mega_crushing_wave, EVENT_PLAYER_UNIT_SPELL_EFFECT )
call TriggerAddCondition( gg_trg_mega_crushing_wave, Condition( function Trig_mega_crushing_wave_Conditions ) )
call TriggerAddAction( gg_trg_mega_crushing_wave, function Trig_mega_crushing_wave_Actions )
endfunction
Cái ngôn ngư đó dùng để lam gì và có thể chèn vào đau ạ.Ví dụ như mún tạo 1 spell như thế này thì phai làm j` ạ .
Đây nữa ạ
Càng cụ thể cang tốt nha mấy anh :'>:'>
. Trigger Là Cái Phần F4 Trong World Editor Ấy.
, nói rỏ hơn đi