home *** CD-ROM | disk | FTP | other *** search
- class LRG.LRGDelayedCallbackAction extends LRG.LRGAction
- {
- var m_fTotalActionTime;
- var m_sActionType;
- var m_kCallback;
- var m_sName;
- function LRGDelayedCallbackAction(kAnimationParams)
- {
- super();
- this.init(kAnimationParams);
- }
- function init(kActionParams)
- {
- if(kActionParams.m_fTotalActionTime == undefined && this.m_fTotalActionTime == undefined)
- {
- kActionParams.m_fTotalActionTime = 0;
- trace("Delayed callback action " + kActionParams.m_sName + " created with no wait time specified.");
- }
- kActionParams.m_fSPF = kActionParams.m_fTotalActionTime;
- if(kActionParams.m_sType == undefined && (this.m_sActionType == undefined || this.m_sActionType == "DEFAULT"))
- {
- kActionParams.m_sType = "DELAYED_CALLBACK";
- }
- if(kActionParams.m_kCallback != undefined)
- {
- this.m_kCallback = kActionParams.m_kCallback;
- }
- else if(this.m_kCallback == undefined)
- {
- trace("LRGDelayedCallbackAction " + this.m_sName + " initialized without callback.");
- }
- super.init(kActionParams);
- }
- function reset(fCurrTime, kActionParams)
- {
- super.reset(fCurrTime,kActionParams);
- }
- function doUpdate(fCurrTime, fDeltaTimeSecs, kClip)
- {
- if(fDeltaTimeSecs >= this.m_fTotalActionTime)
- {
- this.m_kCallback.apply(kClip);
- return true;
- }
- return false;
- }
- }
-