JASS冲刺,单位突进编写方法:[6]JASS语言

作者:如沐春风 | 创建时间: 2023-07-28
JASS冲刺,单位突进编写方法:[6]JASS语言

操作方法

如何让某个单位向某角度冲刺突进呢? 先找找地图编辑器中是否存在这种技能, 1: 闪烁? Oh no 不行,没有冲刺移动效果, 2:...似乎没有类似与 冲刺的东西了把... call bb(gg_unit_Hpal_0000,1000,GetUnitFacing(gg_unit_Hpal_0000)) bb{单位,冲刺长度,冲刺角度}

library AJ

globals

constant hashtable Handle=InitHashtable()

endglobals

globals

private timer DeliverDataTimer

private unit DeliverDataUnit

endglobals

function aa takes nothing returns nothing

local timer tm =  GetExpiredTimer()

local integer i = GetHandleId(tm)

local unit Unit = LoadUnitHandle(Handle,i,StringHash("unit"))

local real Size = LoadReal(Handle,i,StringHash("size"))

local real jd = LoadReal(Handle,i,StringHash("jd"))

local location codi

set codi = PolarProjectionBJ(GetUnitLoc(Unit), 10.00, jd)

call SetUnitPositionLocFacingBJ( Unit, codi, GetUnitFacing(Unit) )

//call CreateTextTagLocBJ( "O", GetUnitLoc(Unit), 0, 10, 100, 100, 100, 0 )

call AddSpecialEffectLocBJ( GetUnitLoc(Unit), "abilities\\weapons\\catapult\\catapultmissile.mdl" )

call SaveReal(Handle,i,StringHash("size"),Size-10)

if (Size <= 0 ) then

call DestroyTimer(tm)

else

endif

endfunction

function bb takes unit Unit,real Size,real jd returns nothing

local timer tm =  CreateTimer()

local integer i = GetHandleId(tm)

call SaveUnitHandle(Handle,i,StringHash("unit"),Unit)

call SaveReal(Handle,i,StringHash("size"),Size)

call SaveReal(Handle,i,StringHash("jd"),jd)

call TimerStart(tm,0.01,true,function aa)

endfunction

endlibrary

点击展开全文

更多推荐