Adventure spiel programieren

Pfadproblem..., nimm:

on (press) {
_root.ball[0] = 100;
}

dann gehts - um ein bisschen Programmietechnik wirst du nicht herumkommen ...


Grüsse
B
 
na, dann lässt sich das nicht mit Genaugkeit sagen, der Fehler kann überall stecken - es ist auf jeden Fall möglich, ein Array sowohl in Objekten und MC´s zu defineren, als auch auf diese von aussen zuzugreifen, keine Ahnung, was du falsch machst ....
 
Also im detail:

Hauptbühne:
Ebene1 - AS :
ball = new Array(310, 220, "true");
balle._y = ball[0];
balle._x = ball[1];
balle._visible = ball[2];

Ebene2 - Inv
Movieclip mit inventar

Ebene3 - objekt
Movieclip des anzuklickenden balles, var name: balle
as:
on (release) {
_root.ball[2] = false;
}

Ebene 4 - Bg
Hier liegt nur nen Hintegrrundbild
 
Der Witz ist:

alles funktioniert ! Das einzige, was du vergessen hast ist, die Eigenschaften von Ball auch nach der Veränderung des Arrays wieder zu überschreiben.
Die Zuweisungen, die du auf dem ersten Frame stehen hast, werden ja nur einmal zu Beginn durchgeführt, und danach nie wieder - du musst diese also entweder in eine sich zu Beginn selbst aufrufende Funktion packen die du nach Veränderung des Arrays immer wieder aufrufst, oder du lässt dir etwas anderes einfallen, je nachdem, wie das in deine Gesamt - Architektur passt.

Grüsse
B
 
hm.. aber wie schaff ich das denn , das der wenn ich diese szene nochmal aufrufe, dass der mir dann den aray nicht wieder in seinen grundfunktionen aufruft, immerhin habe ich da ja stehen:
ball = new Array(310, 220, "true");

das heißt, wenn ich das bild jetzt nochmal lade, überschreibt der mir mit dem befehl doch wieder die neuen eigenschaften, oder?

Muss ich das in ne If abfrage packen, sprich so von wegen:
if (ball_im_inventar = invisble)
{
ball = new Array(310, 220, "true");
}

und dadurch das ich den beim klicken auf den ball visible schalte wird das nit mehr aufgerufen oder ist das schlecht?
 
ok, habs jetzt so gelöst:

- Zeitleisten Bild 1 -

Hauptebene - AS:

if (ballwech != "ja") {
ball = new Array(310, 220, "true");
}
balle._y = ball[0];
balle._x = ball[1];
balle._visible = ball[2];


Movieclip - balle - AS:

on (release) {
_root.ball[2] = false;
ballwech = "ja";
gotoAndPlay(3);
}


- Zeitleisten Bild 3 -

Hauptebene - AS:

gotoAndPlay(1);
 
Ja,
so ähnlich hätte ich dir das auch vorgeschlagen.

Ich muss dich aber bitten, in Zukunft auf korrekte Gross- und Kleinschreibung zu achten, und auch auf eine korrektere Diktion, sonst muss ich dich verwarnen, und im Wiederholungsfall auch vom Board verbannen.

Grüsse
B
 
Ja, tut mir leid.

Das ist dieses "gemeine Internet". Da kommt man so leicht in Versuchung, so etwas zu tuen. Ich hoffe man konnte trotzdem einigermaßen lesen, was ich wollte.

Und ich hoffe auch andere mit dem gleichen Problem, werden den Lösungsansatz benutzen können, ohne eine "Schreiattacke" aufgrund der Rechtschreibung zu bekommen! ;)

Danke nochmal,
Mfg

Michael Preis.
 

Neue Beiträge

Zurück