class L2UITweenObject extends UIEventManager;

var WindowHandle Target;
var string Owner;
var int Id;
var float Position;
var float Duration;
var float Delay;
var float ratio;
var float ratioEase;
var float MoveX;
var float MoveY;
var float Alpha;
var float SizeX;
var float SizeY;
var int alphaStart;
var int posX;
var int posY;
var int sizeXStart;
var int sizeYStart;
var L2UITween.easeType ease;
var bool Paused;

delegate _DelegateOnStart(L2UITweenObject Me);

delegate _DelegateOnUpdate(L2UITweenObject Me);

delegate _DelegateOnEnd(L2UITweenObject Me);

function float _Position()
{
	return Position;	
}

function _Play(optional int _delay)
{
	if(_delay != 0)
	{
		Delay = float(_delay);
	}
	Paused = false;
	if(class'L2UITween'.static.Inst()._GetTweenObjectIndex(Owner, Id) < 0)
	{
		class'L2UITween'.static.Inst()._AddTweenObject(self);
	}
}

function _Pause()
{
	Paused = true;	
}

function _Stop()
{
	Paused = true;
	Position = 0.0f;	
}

function _Kill()
{
	class'L2UITween'.static.Inst().StopTween(Owner, Id);	
}

function _Reset()
{
	Position = 0.0f;
	class'L2UITween'.static.Inst().StopTween(Owner, Id);
	_Play(0);
}

function _Reverse();
