| |||||||
Du magst keine Werbung? Wir auch nicht!
Einfach registrieren und die Werbung ist weg. Diese Nachricht sehen nur nicht registrierte Nutzer.
![]() |
| | LinkBack | Themen-Optionen | Ansicht |
| | #1 (permalink) |
| Neuer User Registriert seit: Mar 2002
Beiträge: 51
| Mehr als 256 rekursionen sonst endlosschleife
hallo zusammen, ich bekomme manchmal diese fehlermeldung: 256 levels of recursion were exceeded in one action list. This is probably an infinite loop. Further execution of actions has been disabled in this movie. nunja ich weiss dass es keine endlosschleife ist! kann ich flash anweisen das er mehr wie 256 rekursionen aufrufen kann. und mir eben keine fehlermeldung aufruft? |
| | |
| | #2 (permalink) |
| ................ Registriert seit: Jun 2004
Beiträge: 15.890
|
Das kommt meistens, wenn man einen onEnterFrame nicht vernünftig löscht. "nunja ich weiss dass es keine endlosschleife ist!" Und ich wette, es ist doch eine
__________________ ternärer Konditionaloperator +++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++ |
| | |
| | #4 (permalink) |
| ................ Registriert seit: Jun 2004
Beiträge: 15.890
|
Ich glaube mehr als "256 levels of recursion" gehen nicht. Aber zeig doch mal die fla oder das Script vielleicht ist ja doch ein Fehler drin!?!
__________________ ternärer Konditionaloperator +++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++ |
| | |
| | #5 (permalink) | |
| Gast
Beiträge: n/a
| Zitat:
was hast du denn für einen datensatz, das der mehr als 256 rekursive aufrufe macht? ich habe es so verstanden, das rekursion die rechenzeit und den aufwand verkürzt, und, mal angenommen, du wendest bei jedem aufruf die function auf die hälfte der daten an, dann müsstest du, wenn ich mich nicht vertue jetzt, ungefähr 2^(256-1) daten haben, bei 256 aufrufen, das ist ne gante menge, und das feld wurde immer noch nicht gefunden? hm... überprüf nochmal deine function, grüße, r. | |
|
| | #6 (permalink) |
| Neuer User Registriert seit: Mar 2002
Beiträge: 51
|
danke für den tip! hier mein script <CODE> randomFood = function(){ //trace("rows "+rows+" cols"+cols+" randomfood") foodpos = [1+random(rows-2),1+random(cols-2)]; if(myMap[foodpos[0]][foodpos[1]] != 4 ){ randomFood(); trace("food position is the same"); }else{ container["food"]._x = (foodpos[1]*tileW)+tileW/2; container["food"]._y = (foodpos[0]*tileH)+tileH/2; } } </CODE> es ist ein tile based game. da prüfe ich das 2DArray solange bis ->myMap[foodpos[0]][foodpos[1]] != 4 eintritt thanx |
| | |
| | #7 (permalink) |
| ................ Registriert seit: Jun 2004
Beiträge: 15.890
|
Nur mal eine Frage: Die function läuft doch eh weiter. Also wieso dieses hier: ActionScript:
Edit: Bzw. wie rufst du die function denn auf?
__________________ ternärer Konditionaloperator +++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++ |
| | |
| | #9 (permalink) |
| ................ Registriert seit: Jun 2004
Beiträge: 15.890
|
Ich würde mal gucken, was dir trace(myMap[foodpos[0]][foodpos[1]]) ausgibt. Und wenn's 4 ist, ob 4 eine Nummer oder ein String ist. Wenn's undefined ist haben wir's ja.
__________________ ternärer Konditionaloperator +++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++ |
| | |
![]() |
| Lesezeichen |
| Themen-Optionen | |
| Ansicht | |
| |