Follow along with the video below to see how to install our site as a web app on your home screen.
Note: This feature may not be available in some browsers.
.
.Lấy khoảng cách giữa vị trí lúc trước so với vị trí lúc sau là xong .
Kiểm tra unit có 2 item giống nhau kia ko , nếu có thì xóa cả 2 rồi cho cái mới vào .
Tổng hợp các bài hướng dẫn và một số link hữu dụngBạn hướng dẫn cụ thể chút ko, mình ko hiểu lắm :(

// A0LH = Rupture
function Trig_Bloodseeker_Spell_Rupture_Conditions takes nothing returns boolean
if(not (GetSpellAbilityId()=='A0LH'))then
return false
endif
return true
endfunction
// A0LH = Rupture
function oIoI takes nothing returns nothing
local timer t=GetExpiredTimer()
local string fTT=H2S(t)
local unit ojj=GetStoredDTAXUnit(fTT,"RuptureCaster")
local unit oJJ=GetStoredDTAXUnit(fTT,"RuptureTarget")
local location okk=GetStoredDTAXLocation(fTT,"RuptureOldLoc")
local location oKK=GetUnitLoc(oJJ)
local real n66=.2*GetUnitAbilityLevel(ojj,'A0LH')*DistanceBetweenPoints(okk,oKK)
if(n66>200)then
set n66=0
endif
if(n66>5)then
call DestroyEffect(AddSpecialEffectTarget("Objects\\Spawnmodels\\Human\\HumanBlood\\BloodElfSpellThiefBlood.mdl",oJJ,"origin"))
endif
if(n66>0)then
call UnitDamageTargetBJ(ojj,oJJ,n66,ATTACK_TYPE_HERO,DAMAGE_TYPE_MAGIC)
endif
call RemoveLocation(okk)
call StoreDTAXObject(fTT,"RuptureOldLoc",oKK)
endfunction
// A0LH = Rupture
// e01R = Buff Placer
// A0NH = Rupture Buff
function Trig_Bloodseeker_Spell_Rupture_Actions takes nothing returns nothing
local unit ojj=GetTriggerUnit()
local unit oJJ=GetSpellTargetUnit()
local location oLL=GetUnitLoc(oJJ)
local integer Jhh=GetUnitAbilityLevel(ojj,'A0LH')
local timer t=CreateTimer()
local string fTT=H2S(t)
local unit MQQ
call UnitDamageTargetBJ(ojj,oJJ,50+100*Jhh,ATTACK_TYPE_HERO,DAMAGE_TYPE_MAGIC)
call StoreDTAXObject(fTT,"RuptureCaster",ojj)
call StoreDTAXObject(fTT,"RuptureTarget",oJJ)
call StoreDTAXObject(fTT,"RuptureOldLoc",oLL)
call TimerStart(t,.25,true,function oIoI)
set MQQ=CreateUnit(GetOwningPlayer(oJJ),'e01R',0,0,bj_UNIT_FACING)
call UnitAddAbility(MQQ,'A0NH')
call PolledWait(3+(2*Jhh))
call RemoveUnit(MQQ)
call UnitRemoveAbility(oJJ,'B067')
call PauseTimer(t)
call PolledWait(1)
call FlushStoredMissionShell(fTT)
call DestroyTimer(t)
endfunction
function StartTrigger_Bloodseeker_Spell_Rupture takes nothing returns nothing
set gg_trg_Bloodseeker_Spell_Rupture=CreateTrigger()
call TriggerRegisterAnyUnitEventBJ(gg_trg_Bloodseeker_Spell_Rupture,EVENT_PLAYER_UNIT_SPELL_EFFECT)
call TriggerAddCondition(gg_trg_Bloodseeker_Spell_Rupture,Condition(function Trig_Bloodseeker_Spell_Rupture_Conditions))
call TriggerAddAction(gg_trg_Bloodseeker_Spell_Rupture,function Trig_Bloodseeker_Spell_Rupture_Actions)
endfunction
function InitTrig_Bloodseeker_Spell_Rupture takes nothing returns nothing
endfunction
Dạo này ít người post bài trả lời quá, mà số người hỏi càng tăngVậy cho hỏi cách làm skill dash đến vị trí đã định, dùng cách slide của anh Tom thì chỉ bay đến 1 khoảng nào đó thôi chứ ko xác định rõ đc. Thanks
Set SlideDistance = (Distance between (Position of Caster) and TargetPoint) / SlideTick
Set SlideDistance = (Distance between (Position of Caster) and TargetPoint) / TotalTick
chỉnh loạn xà ngầu lên mà mua 1 cái nó lại cứ ra cai partial @_@@Game_war48: nếu anh set vận tốc như trên thì khi chọn target point càng xa thì chạy càng nhanh, chọn càng gần chạy càng chậm.

Ghép như kiểu cái orchid trong dota ýchỉnh loạn xà ngầu lên mà mua 1 cái nó lại cứ ra cai partial @_@
Set SlideTick = (Distance between (Poisition of Caster) and TargetPoint) / 50