Volledige versie bekijken : wachten, interval, delay, ?????
chille001
%Europe/Berlin %422 %2005, 11:08
hallo,,
ben op zoek naar mogelijkheden om in een for-lus tussen de verschillende acties een bepaalde tijd niets te laten gebeuren zoadat er een mooie opeenvolging komt van de acties...de eerste acties is een attachMovie met data uit datbase en de tweede actie is een createEmptyMc met een line and curve_to...thx,thx,thx,...kan er mij iemand een goed actionscripts boek aanraden,,,,zonnige groeten..ne goeie laptop zou soms toch handig zijn..
Flashingback
%Europe/Berlin %435 %2005, 11:27
beetje onduidelijk wat je bedoelt
Fl4sh3r
%Europe/Berlin %448 %2005, 11:45
Ik los dergelijke problemen altijd op met een onEnterFrame ipv een for-lus.
Oud scriptje van me als voorbeeld:
createEmptyMovieClip("lijn",1);
lijn.lineStyle(1,0x000000,100);
xOffset = 100;
yOffset = 100;
hoekpp = 360/19;
l=100;
punten = Array();
for(i=0;i<19;i++) {
punten[i] = Array();
x = Math.sin((i*hoekpp)*(Math.PI/180))*l+xOffset;
y = Math.cos((i*hoekpp)*(Math.PI/180))*l+yOffset;
punten[i][0] = x;
punten[i][1] = y;
}
function punt(a) {
lijn.lineTo(punten[a][0],punten[a][1]);
}
lijn.moveTo(punten[0][0],punten[0][1]);
p=0;
i=0;
j=2;
onEnterFrame = function() {
if(p>19) {
p=0;
i=0;
j++;
}
punt(i);
p++;
i+=j;
if(i>=19) i-=19;
if((j>9)&&(waited>40)) {
j=2;
p=0;
i=0;
waited=0;
lijn.clear();
lijn.lineStyle(1,0x000000,100);
lijn.moveTo(punten[0][0],punten[0][1]);
} else if(j>9) {
waited++;
}
}
chille001
%Europe/Berlin %451 %2005, 11:49
hoi,, ik zou denken dat dit iets duidelijker is..alhouwel..ik ben niet de mooiste scripter, en ben ook niet een goede var_naam kiezer...maar bon bedankt alvast
function teken(){
_root.canvas.createEmptyMovieClip( "circle" + count, count );
with ( _root.canvas["circle" + count]){
lineStyle( 3, 0x577126, 100 );
moveTo( puntnu_x, puntnu_y );
curveTo( bocht_x, bocht_y, puntheen_x, puntheen_y );
}}
var myLv:LoadVars = new LoadVars();
myLv.onLoad = function()
{
puntheen_x= random(550);
puntheen_y= random(400);
hoeveel = Number(myLv.aantal);
for (count=0 ; count<hoeveel; count++){
_root.canvas.attachMovie("bloem", "bloem" + count, 100+count);
_root.canvas["bloem" + count]._x = puntheen_x;
_root.canvas["bloem" + count]._y = puntheen_y;
_root.canvas["bloem" + count].play();
//Hier had ik graag een vertraging ingebouw..zie beneden.. puntnu_x = puntheen_x;
puntnu_y = puntheen_y;
puntheen_x= random(550);
puntheen_y= random(400);
bocht_x=275;
bocht_y=200;
setInterval(teken(), 500000);//hier had ik graag een vertraging ingebouwd,, op dit moment is hij onmiddelijk door de loop en komt alles in 1x...ik zou graag de acties geleidelijk aan laten gebeuren...die setInterval in het rood gebruik ik allicht verkeerd.. bedankt mannen/vrouwen }
};
myLv.load("haal.php");
mercieks ....
chille001
%Europe/Berlin %456 %2005, 11:57
Ik los dergelijke problemen altijd op met een onEnterFrame ipv een for-lus.
Oud scriptje van me als voorbeeld:
createEmptyMovieClip("lijn",1);
lijn.lineStyle(1,0x000000,100);
xOffset = 100;
yOffset = 100;
hoekpp = 360/19;
l=100;
punten = Array();
for(i=0;i<19;i++) {
punten[i] = Array();
x = Math.sin((i*hoekpp)*(Math.PI/180))*l+xOffset;
y = Math.cos((i*hoekpp)*(Math.PI/180))*l+yOffset;
punten[i][0] = x;
punten[i][1] = y;
}
function punt(a) {
lijn.lineTo(punten[a][0],punten[a][1]);
}
lijn.moveTo(punten[0][0],punten[0][1]);
p=0;
i=0;
j=2;
onEnterFrame = function() {
if(p>19) {
p=0;
i=0;
j++;
}
punt(i);
p++;
i+=j;
if(i>=19) i-=19;
if((j>9)&&(waited>40)) {
j=2;
p=0;
i=0;
waited=0;
lijn.clear();
lijn.lineStyle(1,0x000000,100);
lijn.moveTo(punten[0][0],punten[0][1]);
} else if(j>9) {
waited++;
}
}
Ja, ik zie wat je bedoelt, ik zal het op die manier eens proberen te doen,, maar ik denk dat met onEnterFrame,, toch vrij snel door mijn acties ben, het zijn maar x*2acties stel 6 of 10acties te samen, wat maakt dat ik dus na 10 on EnterFrames gedaan heb, maar aan een snelheid van 12f/sec zal het klaar zijn na luttele seconden,,,of schat ik hier dit stukje script verkeer in???
in elk geval merci..ook wel een leuk stukje script,,thx
Fl4sh3r
%Europe/Berlin %466 %2005, 12:11
Zoiets:
function teken () {
trace("tekenen");
_root.canvas.createEmptyMovieClip ("circle" + count, count);
with (_root.canvas["circle" + count]) {
lineStyle (3, 0x577126, 100);
moveTo (puntnu_x, puntnu_y);
curveTo (bocht_x, bocht_y, puntheen_x, puntheen_y);
}
count++;
}
function plaatsVolgendeBloem() {
trace("plaatsVolgendeBloem()");
if(count < hoeveel) {
_root.canvas.attachMovie ("bloem", "bloem" + count, 100 + count);
_root.canvas["bloem" + count]._x = puntheen_x;
_root.canvas["bloem" + count]._y = puntheen_y;
_root.canvas["bloem" + count].play ();
puntnu_x = puntheen_x;
puntnu_y = puntheen_y;
puntheen_x = random (550);
puntheen_y = random (400);
bocht_x = 275;
bocht_y = 200;
teken ()
count++;
}
}
myLv.onLoad = function () {
hoeveel = Number(myLv.aantal);
count = 0;
puntheen_x = random (550);
puntheen_y = random (400);
setInterval (plaatsVolgendeBloem, 500);
};
Wat nog wel netjes zou zijn is de interval weer clearen als count >= hoeveel, maar dat laat ik aan jou over
chille001
%Europe/Berlin %469 %2005, 12:16
whouw,,fantastisch..
en hoe snel..
het is geweldig om te zien hoe jullie overweg kunnne met die scripts,,doe zo voort zou ik zeggen...
en voor mij is het een zalige leerschool..ik begin eraan..
vBulletin® v3.8.1, Copyright ©2000-2012, Jelsoft Enterprises Ltd.