[flash] random framenummer uit reeks...

Pagina: 1
Acties:

  • kaassouffle
  • Registratie: Januari 2002
  • Laatst online: 09-09 19:36

kaassouffle

Medewerker v/d Maand

Topicstarter
Ik heb wat zitten klooien met funties uit een boek...
Werkt goed maar moet iets aangeaspt worden. BEn nie zo'n ster in actionscript dus misschien weet iemand raad.

Het volgende:
Wat ik heb gemaakt is wat omslachtig om neer te typen, maar wat ik zoek een 'function' ofzo waarmee ik naar een random frame kan gaan. Dat random frame moet ie kiezen uit een groep nummers die ik aangeef. Met een array ofzo ? Daar heb ik weinig verstand van.

Ik heb namelijk wel een functie maar die laat je alleen springen naar een random gekozen frame dat gewoon tussen 2 getallen ligt. namelijk:
code:
1
2
3
4
5
6
function myRandom (minVal, maxVal) {
    do {
        r = Math.random();
    } while (r == 1);
    return minVal+Math.floor(r*(maxVal+1-minVal));
}

en
code:
1
2
var randomFrame = myRandom(10, 20);
_root.gotoAndStop(randomFrame);

Weet iemand een manier om deze functie aan te passen of een andere oplossing ?

Verwijderd

Wat jij wil is een shuffle;
code:
1
2
3
4
5
6
7
8
9
10
Array.prototype.shuffle = function() {
 var len = this.length;
 var i = len;
 while (i--) {
  var p = random(len);
  var t = this[i];
  this[i] = this[p];
  this[p] = t;
 }
};

die ga je dan zo gebruiken:
code:
1
2
3
4
5
6
7
mijnArray = new Array();
n=10;
while(n--){
   mijnarray[n] = n; 
}

mijnarray.shuffle();

  • kaassouffle
  • Registratie: Januari 2002
  • Laatst online: 09-09 19:36

kaassouffle

Medewerker v/d Maand

Topicstarter
Dank voor de snelle reply, maarrrr
Waar geef ik de getallen (voor de framenummers) in die ik wil gebruiken ?

en hoe gebruik ik dit in een button zodat ik als ik erop klik naar een randomframe ga ?

  • kaassouffle
  • Registratie: Januari 2002
  • Laatst online: 09-09 19:36

kaassouffle

Medewerker v/d Maand

Topicstarter
Ik heb ook dit gevonden:
Alleen het is NIET random!
code:
1
2
var frameLabels = new Array("een", "twee", "drie", "vier", "vijf", "zes", "zeven", "acht");
var randomFrame = frameLabels[Math.floor(Math.random() * 9)];

in knop (in MC)
code:
1
2
3
on (release) {
     _root.play(randomFrame);
}

Waarom is dat niet random!!!???

Verwijderd

Misschien dat het zo werkt:
code:
1
2
3
4
5
6
on(press){
go=_root.frameLabels[Math.floor(Math.random()*_root.frameLabels.length)];
}
on(release){
_root.gotoAndPlay(go);
}

Maar kunt zo ie zo toch net zo goed B-Top's code gebruiken??

  • kaassouffle
  • Registratie: Januari 2002
  • Laatst online: 09-09 19:36

kaassouffle

Medewerker v/d Maand

Topicstarter
Ja maar daar heb ik dus een vraag onder gezet.
Mijn inzicht is nie zo groot :)
Weet dus niet goed hoe ik die moet toepassen.

Waar ik wat moet neerzetten enzo.
In de root of in de MC / button...

  • kaassouffle
  • Registratie: Januari 2002
  • Laatst online: 09-09 19:36

kaassouffle

Medewerker v/d Maand

Topicstarter
Op donderdag 28 maart 2002 11:50 schreef Seraph het volgende:
Misschien dat het zo werkt:
code:
1
2
3
4
5
6
on(press){
go=_root.frameLabels[Math.floor(Math.random()*_root.frameLabels.length)];
}
on(release){
_root.gotoAndPlay(go);
}

Maar kunt zo ie zo toch net zo goed B-Top's code gebruiken??
Dit werkt trouwens ! senks ! (In de test iig. ;) )
Ik ga hem ff uitbouwen kijken of ik nog problemen tegenkom.
Pagina: 1