Witam, ot?? robi?c skrypt na hud napotka?em na jeden problem. Chc? zrobi? health bar, kt?ry b?dzie si? rusza?. Tzn. je?eli graczowi np. doda HP to pasek si? uzupe?ni. Chodzi mi tutaj o rozwi?zanie z interpolateBetween, ?eby p?ynnie to wygl?da?o. Na ten moment zrobi?em takie co?:
[b]InterpolateBetween - jest to interpolacja wektora 3D, kt?ry wylicza pomi?dzy warto?ci? pocz?tkow? a docelow?, mo?na by? r?wnie? stosowana do interopolacji 2D, operuje si? na niej przy pomocy parametr?w x,y,z.[/b]
[b]Wymagane argumenty:[/b]
- x1, y1, z1 - wsp??rz?dne pocz?tkowe wektora 3D lub warto?ci
- x2, y2, z2 - wsp??rz?dne docelowe wektora 3D lub warto?ci
- fProgress - warto?? zmiennoprzecinkowa pomi?dzy 0 a 1, kt?ra to okre?la post?p interpolacji (0 warto?? pocz?tkowa, 1 warto?? docelowa)
- strEasingType - okre?lenie z?agodzenia dla interpolacji (t?umacz?c oznacza to wyb?r profilu funkcji dla naszej interpolacji)
[b]Opcjonalne argumenty:[/b]
- fEasingPeriod - Okre?la zmian? dynamiki funkcji (tylko niekt?re funkcje mog? przyjmowa? ten argument) (domy?lnie przyjmuje warto?? 0,3)
- fEasingAmplitude - Okre?la amplitud? dla profilu funkcji (domy?lnie przyjmuje warto?? 1,0)
- fEasingOvershoot - Okre?la regulacje podczas zmiany dynamiki (domy?lnie przyjmuje warto?? 1,701)
[b]Zwroty:[/b]
Zwraca interpolacje 3D wektora x, y, z, w przypadku b??du argumentu przyjmuje warto?? false.
local now = getTickCount() local elapsedTime = now - dx_Image.sTime
local duration = dx_Image.eTime - dx_Image.sTime
local progress = elapsedTime / duration
local a1 = unpack(dx_Image.sAlpha) local a2 = unpack(dx_Image.eAlpha)
local a = interpolateBetween ( a1, 0, 0, a2, 0, 0, progress, "Linear")
Obrazek , kt?ry wykona?em po wpisaniu /test stopniowo przez 5 sekund ma zmieni? alphe z 0 na 255. Problem polega na tym, ?e po wpisaniu nic si? nie dzieje, nie wywala b??du, nie pokazuje obrazka.
U?ywam tego pierwszy raz i wida?, ?e jest to przerobiony przyk?ad z wiki, ale niestety nie wiem co robi?, ?le je?eli nie pokazuje w db b??du.