WEAVE beta – ActionScript: IKEA
Hier der ActionScript-Quellcode von Matthias Mach für die Funktionen zum automatischen Vorausladen von Videos:
// Erzeugen des KontrollArrays für das Autopreloading im Hintergrund
// +++++++++++++++++++++++++++
private function initAutoBackgroundPreloading(){
AUTO_PRELOAD_SEQUENZEN = new Array()
for(var i= 0; i<OBJ_structure.videosequenzer[0].sequenz.length; i++){
var tmpArray = new Array();
tmpArray.push(OBJ_structure.videosequenzer[0].sequenz[i][„attributes_id“]);
tmpArray.push(false);
AUTO_PRELOAD_SEQUENZEN.push(tmpArray);
}
}
// +++++++++++++++++++++++++++
// automatisches Hintergrundpreloading, wenn Sequenzen abspielen und kein aktueller Ladevorgang läuft
// +++++++++++++++++++++++++++
private function autoBackgroundPreloading(LAST_SEQUENZ_ID){
// 1. Durchsuchen des Kontroll-Arrays nach fertiggestellter Sequenz und Status auf geladen=true setzen
for(var i= 0; i<AUTO_PRELOAD_SEQUENZEN.length; i++){
if(AUTO_PRELOAD_SEQUENZEN[i][0]==LAST_SEQUENZ_ID){
var tmpArray = AUTO_PRELOAD_SEQUENZEN[i];
tmpArray[1]=true;
AUTO_PRELOAD_SEQUENZEN[i]=tmpArray;
var sortIndex = i;
}
}
// 2. Durchsuchen des KontrollArrays nach noch nicht fertig geladenen Sequenzen
var preloadingLeft = false;
// Umschichten des Kontroll-Arrays
for(var i= 0; i < sortIndex; i++){
var tmp = AUTO_PRELOAD_SEQUENZEN.shift();
AUTO_PRELOAD_SEQUENZEN.push(tmp);
}
// 3. Kontroll-Array wird nun einfach durchlaufen, und die erste ungeladene Sequenz wird vorgeladen
for(var i= 0; i<AUTO_PRELOAD_SEQUENZEN.length; i++){
if(AUTO_PRELOAD_SEQUENZEN[i][1]==false and preloadingLeft==false){
preloadingLeft = true;
starteSequenz(AUTO_PRELOAD_SEQUENZEN[i][0], false)
}
}
if(preloadingLeft==false){
// alle Sequenzen sind fertig vorgeladen
}
}
// +++++++++++++++++++++++++++










