Пришло время для очередных бесполезных и простеньких ресурсов...
Это было известно давным-давно и используется в каждой второй карте (нет)... ладно нафиг текст, вот сама гифка, код, видос и карта
Это было известно давным-давно и используется в каждой второй карте (нет)... ладно нафиг текст, вот сама гифка, код, видос и карта
function CreateAndPlayGif(x, y,path,size)
local gifPath = path--"gif\\gargoule_page_000" -- путь до кадров (имя без последнего порядкового символа или нескольких, смотря столько кадров)
local endFrame = 8
local s = 1
local gif = BlzCreateFrameByType('BACKDROP', 'FaceButtonIcon', BlzGetOriginFrame(ORIGIN_FRAME_GAME_UI, 0), '', 0)
local firstShow = false
local fps=1/16
BlzFrameSetParent(gif, BlzGetFrameByName("ConsoleUIBackdrop", 0))
BlzFrameSetTexture(gif, gifPath .. 0, 0, true)
BlzFrameSetSize(gif, size, size)
BlzFrameSetAbsPoint(gif, FRAMEPOINT_TOP, x, y)
BlzFrameSetVisible(gif, false)
TimerStart(CreateTimer(), fps, true, function()
if not firstShow then
firstShow = true
BlzFrameSetVisible(gif, true)
end
BlzFrameSetTexture(gif, gifPath .. s, 0, true)
--print(s)
s=s+1
if s>endFrame then
s=1
end
end)
return gif
end
Дело в том, что код типа
Ну офк, технически такая реализации более сложная и объёмная, чем вариант, указанный в статье. Но она есть, и, возможно, в каких-то ситуациях может быть эффективной.
Ладно