Пришлось соединить 2 функции, поэтому нечитабельно, но суть в том, что когда было по-отдельности, тексттаг исчезал (хотя вроде бы всё то же).
function PHBMulti takes unit u returns nothing
local effect e
local string path = "Abilities\\Spells\\Human\\HolyBolt\\HolyBoltSpecialArt.mdl"
local texttag PLabel
local location loc = GetUnitLoc(u)
local real z = GetUnitFlyHeight(u)
local real size = 20
call CreateTextTagLocBJ("Крит!",loc,z,size,255,0,0,0)
set PLabel = GetLastCreatedTextTag()
call SetTextTagVelocityBJ(PLabel,64,90)
call AddSpecialEffectTargetUnitBJ("origin",u,path)
call SetUnitLifeBJ(u,GetUnitState(u,UNIT_STATE_LIFE)+udg_intHBD)
call DestroyEffect(e)
call RemoveLocation(loc)
call PolledWait(2)
call DestroyTextTag(PLabel)
endfunction

function Text takes string text,unit u,real size,real red,real green,real blue,real alpha returns nothing
set bj_lastCreatedTextTag = CreateTextTag()
call SetTextTagTextBJ(bj_lastCreatedTextTag,text,size)
call SetTextTagPosUnitBJ(bj_lastCreatedTextTag,u,0.00)
call SetTextTagColorBJ(bj_lastCreatedTextTag,red,green,blue,alpha)
call SetTextTagPermanent(bj_lastCreatedTextTag,false)
call SetTextTagFadepoint(bj_lastCreatedTextTag,2)
call SetTextTagLifespan(bj_lastCreatedTextTag,4)
call SetTextTagVelocity(bj_lastCreatedTextTag,0.,0.027)
endfunction
и не нужны никакие локалки типа texttag Label потому что память загромождает и обнулять не нужно. вроде говорить адольф
делаем непостоянным SetTextTagPermanent и потом время жизни ставим SetTextTagLifespan
а SetTextTagVelocity заставляет текст двигаться по оси x и y
`
ОЖИДАНИЕ РЕКЛАМЫ...

Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
15
Я смотрел пример SampleLocs (или как-то так) в "Осваиваем Jass - локальные переменные", там это было. И что же, таймер юзать?
28
Audes, если знаешь что такое таймер то да
если не знаешь то юзай TriggerSleepAction()
а вобще прочитай статью полностью а не только локальные переменные
15
TriggerSleepAction()
Тот же эффект. Таймер ещё не проверял.
28
Audes, эффект тот же а быстродействие другое
сам глянь начинку
27
function Text takes string text,unit u,real size,real red,real green,real blue,real alpha returns nothing
set bj_lastCreatedTextTag = CreateTextTag()
call SetTextTagTextBJ(bj_lastCreatedTextTag,text,size)
call SetTextTagPosUnitBJ(bj_lastCreatedTextTag,u,0.00)
call SetTextTagColorBJ(bj_lastCreatedTextTag,red,green,blue,alpha)
call SetTextTagPermanent(bj_lastCreatedTextTag,false)
call SetTextTagFadepoint(bj_lastCreatedTextTag,2)
call SetTextTagLifespan(bj_lastCreatedTextTag,4)
call SetTextTagVelocity(bj_lastCreatedTextTag,0.,0.027)
endfunction
и не нужны никакие локалки типа texttag Label потому что память загромождает и обнулять не нужно. вроде говорить адольф
делаем непостоянным SetTextTagPermanent и потом время жизни ставим SetTextTagLifespan
а SetTextTagVelocity заставляет текст двигаться по оси x и y
Принятый ответ
Показан только небольшой набор комментариев вокруг указанного. Перейти к актуальным.
Чтобы оставить комментарий, пожалуйста, войдите на сайт.