Guten Abend,
Ich bin gerade an meinem Phone-Skript dran und versuche eine schöne Animation einzubinden.Jedoch versage ich an der Stelle wo es um die interpolate-Out Funktion geht.Also, das mein Handy wieder zurück zu dem Platz hin soll wo ich es hatte.
So sieht mein Code zur Zeit aus:
Lua
local x, y = guiGetScreenSize()
local w,h = 400,600
local px, py = x/2-w/2,y/1.5-h/1.5
local data = {}
function render()
--this is interpolating the rendertarget "in."
local now = getTickCount()
local elapsedTime = now - data.openTick
local duration = data.endStarTime - data.openTick
local progress = elapsedTime / duration
intx,inty = interpolateBetween(px-150,y,0,px,py,0,progress,data.easingType)
dxDrawImage(intx, inty, w, h, data.renderTarget, 0, 0, 0, tocolor(255, 255, 255, 255), false)
end
end
function renderout()
--and this is interpolating "out"
local now = getTickCount()
local elapsedTime = now - data.endTime
local duration = data.endTime - data.outTick
local progress = elapsedTime / duration
intx,inty = interpolateBetween(px,py,0,px-150,py-150,0,progress,data.easingType)
if now >= data.endTime then
removeEventHandler("onClientRender", root, renderout)
removeEventHandler("onClientRender", root, render)
outputChatBox("out")--it outputs out but the picture/event handler was already removed.
end
end
bindKey(data.keyToOpen,data.keyState,
function()
data.open = not data.open
showCursor(data.open)
if data.open then
addEventHandler("onClientRender",root,render)
data.openTick = getTickCount()
data.endStarTime = data.openTick + 2000
else
data.outTick = getTickCount()
data.endTime = data.outTick + 2000
addEventHandler("onClientRender",root,renderout)
end
end
)
Alles anzeigen