PDA

Volledige versie bekijken : Random fade in / out


tijntje84
%Europe/Berlin %960 %2005, 00:02
Beste mensen, ik ben zojuist van start gegaan met flash na al vele tutorials te hebben gevolgd.

Ik ben bezig met een website en daarin wil ik graag een animatie dmv flash in betrekken. Mijn bedoeling is het volgende. Ik heb een vlak van breed 425 bij 150 hoog. Op ongeveer 3 kwart van het blok wil ik blokjes hebben staan die random in en uitfaden. Hoe kan ik dat het beste doen.

Moet ik al die blokjes zelf tekeken en voor elk blokje een nieuwe regel in flash maken ? Of met action script... ?

Heeft iemand een voorbeeld of weet ergens een tutorial hierover te vinden. dan hoor ik het graag.

Bedankt alvast voor de moeite.

Gr. Martijn

Mitch
%Europe/Berlin %979 %2005, 00:29
He Tijn,

Deze vraag past het best bij action script.

SaphuA
%Europe/Berlin %014 %2005, 01:20
Jah laat ons het maar opknappen Mitch :@

Tijn, het ligt er helemaal aan wat je voor een valkjes wilt, en wat je plan is. Maar ik heb iets voor je inelkaar geknutseld; hoop dat je het kunt gebruiken. Het is vrij eenvoudig te begrijpen dus probeer het eerst zelf door het een en adner te veranderen :) :

var tileX = 6;
var tileY = 3;
var tileW = 50;
var tileH = 50;
var interval = 400;
var speed = 10;
var d = 0;
for (var i = 0; i<tileX; i++) {
for (var j = 0; j<tileY; j++) {
var t = this.createEmptyMovieClip("t_"+i+"_"+j, ++d);
t._x = i*tileW;
t._y = j*tileH;
t.beginFill("0xFF0000", 100);
t.lineTo(tileW, 0);
t.lineTo(tileW, tileH);
t.lineTo(0, tileH);
t.lineTo(0, 0);
t.endFill();
}
}
function fadeOut() {
if (this._alpha>0) {
this._alpha -= speed;
} else {
this._alpha = 0;
this.onEnterFrame = fadeIn;
}
}
function fadeIn() {
if (this._alpha<100) {
this._alpha += speed;
} else {
this._alpha = 100;
delete this.onEnterFrame;
}
}
function selectTarget() {
var randX = random(tileX);
var randY = random(tileY);
while (_root["t_"+random(tileX)+"_"+random(tileY)].onEnterFrame == fadeIn) {
randX = random(tileX);
randY = random(tileY);
}
_root["t_"+random(tileX)+"_"+random(tileY)].onEnterFrame = fadeOut;
}
setInterval(selectTarget, interval);

Edit: Kleine bug-fix, zodat iets niet opnieuw kan gaan faden als het terug aan het faden is.

tijntje84
%Europe/Berlin %409 %2005, 10:49
Beste Saphua,

Bedankt voor je reactie. Ik heb zojuist jouw methode gebruikt maar ben vannacht zelf ook al op een idee gekomen. Wat ik zelf had gemaakt is het volgende

Ik heb een blok met 4 blokjes erin en die laat ik random infaden.

Op het 1e keyframe zet ik een action script dat hij een random getal tussen de 0 en 300 moet kiezen en wanneer het getal =< 5 dan gaat hij naar keyframe 3 en vanaf keyframe3 heb ik de fade in en out gemaakt. Wanneer het getal iets anders is dan =<5 dan gaat hij naar keyframe 2 en daar staat weer dat hij naar keyframe 1 moet.

Ik heb een voorbeeld online indien jullie het resultaat nodig is.