PDA

Volledige versie bekijken : Yathzee Array Gegooide Ogen // GESLOTEN


Strato
%Europe/Berlin %938 %2006, 23:31
Ik zit met het volgende. Ik probeer yathzee in flash te creeeren.
Het doel is om met 5 dobbelstenen 5 dezelfde ogen te gooien in 3 beurten.
Nu loop ik vast op een Array waar ik de gegooide ogen in probeer te stoppen.
Altijd weer die Arrays :S

In het onderstaande zal ik even kort uitleggen wat wat betekend;
aantaldb = de 5 dobbelstenen
Db = een Array met de MC's van de dobbelstenen
Gooi = een Array met de gegooide ogen
randRange = een functie voor random getal tussen 1 en 6
Db.h = of de dobbelsteen wordt vastgehouden of niet

for (i=0; i<aantaldb; i++) {
if (Db[i].h == false) {
Gooi.splice(i, i+1, randRange(6));// Dit werkt NIET GOED
Db[i].gotoAndStop(Gooi[i]);// Dit werkt GOED
} else if(Db[i].h == true) {
}
}

Als er dobbelstenen worden vastgehouden, wordt overig uit de Gooi Array gehaald en nieuwe waardes toegevoegd. Op dit punt gaat er iets niet helemaal goed.
In de Array Gooi;
Wanneer dobbelsteen 3,4 of 5 worden vastgehouden gaat het fout. Bij het vasthouden van dobbelsteen 1 en 2 werkt het.
Buiten de Array Gooi;
Werkt het.

Moet ik het op een andere manier oplossen? Of wat doe ik hier fout?

Strato
%Europe/Berlin %373 %2006, 09:58
Als er meer script nodig is hoor ik het wel...

Strato
%Europe/Berlin %632 %2006, 16:10
ok even een klein testje gemaakt van wat ik bedoel.

TESTTESTTest er lekker op los.
Waarom haalt hij bij sommige combinaties van hold gegevens uit de Gooi Array??
de Roll functie is even uitgesplitst zodat er beter is te testen.
Ik wordt er echt niet goed van dat ik t niet snap! :X

Strato
%Europe/Berlin %357 %2006, 09:35
Nieuwe dag nieuwe kansen!
Na gister geduldig op antwoord zitten wachten,
hoop ik dat er vandaag een oplossing komt. ;)

Dauntless
%Europe/Berlin %509 %2006, 13:13
Ik heb even een voorbeeldje gemaakt. Of heb je liever dat ik de fout in jouw code zoek ?

Strato
%Europe/Berlin %554 %2006, 14:18
Is prachtig dauntless!, maar ik had dit voorbeeldje ook alleen maar gemaakt om even te testen :). Het gaat er namelijk om dat de Array waar alle ogen in worden opgeslagen, na 3 gooien vergeleken kan worden met alle mogelijke dobbel combinaties van het spel. Nu is dat het enige punt waarop ik vastloop.

Bedankt inelkgeval voor de hulp!

Strato
%Europe/Berlin %560 %2006, 14:27
Is prachtig dauntless!, maar ik had dit voorbeeldje ook alleen maar gemaakt om te testen :). Het gaat er namelijk om dat de Array waar alle ogen in worden opgeslagen, na 3 gooien vergeleken kan worden met alle mogelijke dobbel combinaties van het spel.
Maar hij haalt er soms een nummer uit wat niet moet.

Het voorbeeld wat ik aanleverde ging specifiek om de Gooi Array

Bedankt inelkgeval voor de hulp!

Dauntless
%Europe/Berlin %674 %2006, 17:11
Ok, dan zal ik daar even naar kijken :).

Eerste opmerking: Waarom gebruik je splice(...) ipv gewoon
Gooi[i] = randRange(6);

?

De splice is ook fout, je zou moeten doen: splice(i, 1). Je wil vanaf de 'i' immers 1 element verwijderen.

Strato
%Europe/Berlin %699 %2006, 17:47
Daar heb je het al! Ow waar zit ik met mn hoofd...
Die 1 in splice doet het em. Ik dacht echt dat splice(startwaarde,eindwaarde,waarde)
vandaar die +1 die ik gebruikte. Lol, nou zal ik het wel nooit meer vergeten :P

Thanks

//OPGELOST en GESLOTEN