PDA

View Full Version : Some Conversion Help


flash_joker
09-05-2005, 02:50 PM
I need to convert my setInterval function into an onEnterFrame. I am having to much trouble with my setInterval function. I have a script (as see below) that i would like to change into an onEnterFrame Event. I can't seem to get it to work, please keep in mind that i am fading movieClip's in from 0% to 100%. I need to fade them in one by one.


var boxCount:Number = 5;

var countVar:Number = 0;
var extraCount:Number = 0;
var total:Number = 100;
var idCount:Number= 0;

for(var i:Number = 1; i<=_root.boxCount; i++) {
var prevNum:Number = i - 1;
attachMovie("myBox_mc", "myBox"+i, i);
_root["myBox"+i]._y = 125;
_root["myBox"+i]._alpha = 0;
if(i <= 1) {
_root["myBox"+i]._x = 130;
} else {
_root["myBox"+i]._x = _root["myBox"+prevNum]._x + 60;
}
}

var intervalID:Number = setInterval(mycallback1, 0.1);
intervalID;

function mycallback1() {
if(_root.extraCount != 1) {
_root.extraCount = 1;
}// else {
//_root.navigation_mc[_root.furnitureNavigation[+idCount]]._y = -20;
//}
if (_root.countVar >= _root.total) {
_root.countVar = 0;
idCount++
_root.extraCount = 0;
} else {
countVar = countVar + 5;
trace(countVar)
_root["myBox"+idCount]._alpha = _root.countVar;
}
if (idCount == _root.boxCount) {
_root.extraCount = 1;
clearInterval(newintervalID);
}
};


Thanks,
Daniel

Paerez
09-06-2005, 08:09 PM
Try this:

var fadeWindow = function(window:MovieClip) {
if (window._visible) {
var totalTime = 300;
var resolution = 10;
var span = window._alpha;
var fader = function () {
window._alpha -= span/resolution;
};
var killer = function () {
clearInterval(interval1);
clearInterval(interval2);
window._visible = false;
window._alpha = 0;
};
var interval1 = setInterval(fader, totalTime/resolution);
var interval2 = setInterval(killer, totalTime);
}
}
var unFadeWindow = function(window:MovieClip) {
if (!window._visible) {
window._visible = true;
window.swapDepths(_root.getNextHighestDepth());
var totalTime = 500;
var resolution = 10;
var span = window.skin.transparency;
var fader = function () {
window._alpha += span/resolution;
};
var killer = function () {
clearInterval(interval1);
clearInterval(interval2);
window._alpha = window.skin.transparency;
};
var interval1 = setInterval(fader, totalTime/resolution);
var interval2 = setInterval(killer, totalTime);
}
}


Now you just have to make each box fade in one at a time, and use the above functions for the fading.