/* -- Adobe GoLive JavaScript Library */ function newImage(arg) { if (document.images) { rslt = new Image(); rslt.src = arg; return rslt; } } function changeImagesArray(array) { if (preloadFlag == true) { var d = document; var img; for (var i=0; i= 0 && parseInt(navigator.appVersion.charAt(0)) >= 3) || (navigator.appName.indexOf("Explorer") >= 0 && parseInt(navigator.appVersion.charAt(0)) >= 3); } function CSClickReturn () { var bAgent = window.navigator.userAgent; var bAppName = window.navigator.appName; if ((bAppName.indexOf("Explorer") >= 0) && (bAgent.indexOf("Mozilla/3") >= 0) && (bAgent.indexOf("Mac") >= 0)) return true; /* dont follow link */ else return false; /* dont follow link */ } function CSPAKtrg2frames(action) { parent.frames[action[1]].location.href = action[2] parent.frames[action[3]].location.href = action[4] } function frameP(action) { if(parent.frames.length==0) { var fileName=window.location.href.substring(window.location.href.lastIndexOf("/")+1,window.location.href.length); window.location.href=action[1]+"?"+action[2]+"="+fileName; } else { if(top.location.search!="") { var sFrame=top.location.search.substring(1,top.location.search.indexOf("=")); if(name==sFrame) { var sName=top.location.search.substring(top.location.search.indexOf("=")+1,top.location.search.length); var fileName=window.location.href.substring(window.location.href.lastIndexOf("/")+1,window.location.href.length); if(fileName!=sName) { location=sName; } } } } } function CSGotoLink(action) { if (action[2].length) { var hasFrame=false; for(i=0;i 0;} function CSIEStyl(s) { return document.all.tags("div")[s].style; } function CSNSStyl(s) { if (CSIsW3CDOM) return document.getElementById(s).style; else return CSFindElement(s,0); } CSIImg=false; function CSInitImgID() {if (!CSIImg && document.images) { for (var i=0; i 1) && (seq.actions[3*i + 1] < seq.start)) continue; if (seq.actions[3*i + 2] < loopCount) { seq.actions[3*i + 2] = loopCount; CSLoopIsRunning = true; CSAction(new Array(seq.actions[3*i + 0])); continueLoop = true; } } else { continueLoop = true; break; } } } else { for (var i=seq.actionCount-1;i>=0;i--) { if (seq.actions[3*i + 1] > seq.frame) { if (seq.actions[3*i + 1] > seq.end) continue; if (seq.actions[3*i + 2] < loopCount) { seq.actions[3*i + 2] = loopCount; CSLoopIsRunning = true; CSAction(new Array(seq.actions[3*i + 0])); continueLoop = true; } } else { continueLoop = true; break; } } } return continueLoop; } function CSSeqFunction(fctInfo) { var seq = fctInfo.data; var oldFrame = seq.frame; var newTicks = (new Date()).getTime(); seq.frame = Math.round((seq.fps * (newTicks - seq.startTicks)/1000.0) - 0.5); var continueLoop = false; var loopCount = 1; if (seq.loop > 0) { continueLoop = true; if (seq.loop == 1) { var iv = (seq.end - seq.start); var f = Math.round(((seq.frame - seq.start) / iv) - 0.5); if (f < 0) f = 0; loopCount = f+1; seq.frame = seq.start + ((seq.frame - seq.start) % (seq.end - seq.start)); } else { var iv = (seq.end - seq.start); var f = Math.round(((seq.frame - seq.start) / iv) - 0.5); if (f < 0) f = 0; loopCount = f+1; f = (seq.frame - seq.start) % (2 * iv); if (f > iv) f = 2*iv - f; seq.frame = seq.start + f; } } continueLoop = CSSeqActionFct(seq,loopCount,continueLoop); for (var i=0;i seq.frame) { partIdx = k; partCount = seq.frame - lastCount; break; } lastCount = frameCount; } if (partIdx < track.parts.ticks.length) { var type=track.parts.moveType[partIdx]; if(type==1) CSSetLinearPos (track, partIdx, partCount); else if(type==2) CSSetCurvePos (track, partIdx, partCount); else if(type==3) if (oldFrame != seq.frame) CSSetRandomPos (track, partIdx, partCount); else { x = CSGetStylePos(track.layer,0); y = CSGetStylePos(track.layer,1); } CSSetStyleVis(track.layer,track.parts.visibilities[partIdx]); CSSetStyleDepth(track.layer,track.parts.depths[partIdx]); continueLoop = true; } else { var partIdx = track.parts.moveType.length-1; var posArray = track.parts.positions; var x = posArray[partIdx * 6 + 0]; var y = posArray[partIdx * 6 + 1]; CSSetStylePos(track.layer,0,x); CSSetStylePos(track.layer,1,y); CSSetStyleVis(track.layer,track.parts.visibilities[partIdx]); CSSetStyleDepth(track.layer,track.parts.depths[partIdx]); } } return continueLoop; } function CSSetLinearPos (track, partIdx, partCount) { var curTicks = track.parts.ticks[partIdx]; var pIdx1 = partIdx * 6; var pIdx2 = (partIdx+1) * 6; var posArray = track.parts.positions; var x = posArray[pIdx1 + 0]; var y = posArray[pIdx1 + 1]; var x1,x2,y1,y2; var factor = partCount/curTicks; x1 = x; y1 = y; x2 = posArray[pIdx2 + 0]; y2 = posArray[pIdx2 + 1]; x = x1 * (1-factor) + x2 * factor; y = y1 * (1-factor) + y2 * factor; CSSetStylePos(track.layer,0,x); CSSetStylePos(track.layer,1,y); } function CSSetCurvePos (track, partIdx, partCount) { var curTicks = track.parts.ticks[partIdx]; var pIdx1 = partIdx * 6; var pIdx2 = (partIdx+1) * 6; var posArray = track.parts.positions; var x = posArray[pIdx1 + 0]; var y = posArray[pIdx1 + 1]; var x1,x2,x3,x4,y1,y2,y3,y4; var factor = partCount/curTicks; var t = factor; var u = t * t; var v = u * t; var val1 = 3*(u-t) - v + 1; var val2 = 3*(v+t - 2*u); var val3 = 3*(u-v); var val4 = v; x1 = x; y1 = y; x2 = posArray[pIdx1 + 2]; y2 = posArray[pIdx1 + 3]; x3 = posArray[pIdx1 + 4]; y3 = posArray[pIdx1 + 5]; x4 = posArray[pIdx2 + 0]; y4 = posArray[pIdx2 + 1]; x = x1 * val1 + x2 * val2 + x3 * val3 + x4 * val4; y = y1 * val1 + y2 * val2 + y3 * val3 + y4 * val4; CSSetStylePos(track.layer,0,x); CSSetStylePos(track.layer,1,y); } function CSSetRandomPos (track, partIdx, partCount) { var curTicks = track.parts.ticks[partIdx]; var pIdx1 = partIdx * 6; var pIdx2 = (partIdx+1) * 6; var posArray = track.parts.positions; var x = posArray[pIdx1 + 0]; var y = posArray[pIdx1 + 1]; var x1,x2,y1,y2; var factor = partCount/curTicks; x1 = x; y1 = y; x2 = posArray[pIdx2 + 0]; y2 = posArray[pIdx2 + 1]; var factorx = Math.random(); var factory = Math.random(); x = x1 * (1-factorx) + x2 * factorx; y = y1 * (1-factory) + y2 * factory; CSSetStylePos(track.layer,0,x); CSSetStylePos(track.layer,1,y); } function CSStartSeq(name) { var seq = CSGetScene(name); var date = new Date() seq.startTicks = date.getTime() for (var i=0;i