Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 20-08-2003, 10:02   #1 (permalink)
Neuer User
 
Registriert seit: Jun 2003
Beiträge: 48
kein plan von arrays

Hallo,

ich möchte ein mc alle 3 sekunden verschieben.
Die werte habe ich jetzt alle aufgeschrieben.

Einen Intervall, der immer um 1 größer wird habe ich auch.

Jetzt muss ich miene ganzen Wete aber noch in ein Array schreiben, und diese dann mit dem Intervall aufrufen lassen.

Ist das möglich?


Ich habe noch absolut keine Ahnung von arrays und ihrem Aufbau, blicke da einfach nciht durch.

Könnt ihr mir da Helfen?, hab mir auch schon total viele Ergebnisse der Suche angeguckt, aber irgendwie Zwecklos.
Arrays wollen bei mir einfach nciht, egal ob bei php oder flashmx oder oder oder....


Danke schonmal, ich hoffe man hört voneinander
__________________
Gruss
Christian

_________________________

Learning Linux - Learning Flash;
Dabei wird es mir nie schlecht;
Der Apache hat immer Recht;
Drum trink' ich mir ne Flash.

.... Bier
Grille85 ist offline   Mit Zitat antworten
Alt 20-08-2003, 10:07   #2 (permalink)
Farbe ist Luxus
 
Benutzerbild von ludabruda
 
Registriert seit: May 2003
Ort: Köln
Beiträge: 2.405
Hi,

mit setInterval rufst du ja eine Funktion auf und kein Array...

Definiere einfach ein Array (z.B. auf _root):
_root.meinArray = new Array();

In deiner Funktion schreibst du:
_root.meinArray.push(meinWert);

Auslesen kannst du das Array mittels:
_root.meinArray[idx], wobei idx die Stelle im Array ist, angefangen bei 0.

Das wars schon...

Grüße
Sascha
__________________
12:15, press return
ludabruda ist offline   Mit Zitat antworten
Alt 20-08-2003, 10:43   #3 (permalink)
Neuer User
 
Registriert seit: Jun 2003
Beiträge: 48
ok, thx schionmal, das klappt.

_root.meinArray[idx],

das setInterval soll ja auch den idx Wert immer um 1 erhöhen,

INTERVAL = setInterval (function(){
i++;
trace(soso[i]);
},3000);
//mein array
soso = array("", "_root.pic._x=165.8", "_root.pic._y=124.3", "_root.pic._y=248.6;", "_root.pic._x=331.6;", "_root.pic._y=124.3;", "_root.pic._y=0;", "_root.pic._y=-124.3;", "_root.pic._x=165.8;", "_root.pic._x=0;", "_root.pic._x=-165.8;", "_root.pic._y=0;", "_root.pic._y=124.3;", "_root.pic._y=248.6;", "_root.pic._x=0;", "_root.pic._y=124.3;", "_root.pic._y=0;");

wenn ich das dann trace gehts auch, es kommt dann alle 3 sekunden der nächste wert im array.
aber ich möchte das ja nicht als text irgendwo einstetzen, sondern möchte das das dann auch passiert, also das meion bild dann auch verschoben wird....


wie mache ich das denn dann?

Gruss Christian
Grille85 ist offline   Mit Zitat antworten
Alt 20-08-2003, 10:58   #4 (permalink)
Farbe ist Luxus
 
Benutzerbild von ludabruda
 
Registriert seit: May 2003
Ort: Köln
Beiträge: 2.405
ok, ich verstehe...
Nun ja, im Array steht erstmal nur Text, also Strings.
Das kann so also gar nicht funktionieren.

Die Frage ist: was hast du damit vor?

Grüße
Sascha
__________________
12:15, press return
ludabruda ist offline   Mit Zitat antworten
Alt 20-08-2003, 11:03   #5 (permalink)
Neuer User
 
Registriert seit: Jun 2003
Beiträge: 48
aaaalso.... ^^

ich habe ein grosses Bild, welches aus vielen einzelbildern besteht.

dieses bild soll unter der maske, die so gross ist wie ein einzelbild, verschoben werden.
sodass ich alle 3 sekunden ein neues bild unter der maske sehe.

verstanden?


wenn du icq hast kannste dich auch gerne da mal melden.

117569361

oder im irc
/server p-a-r-t-y.de
#chris


oder einfach weiter hier im forum


THX - Die-Grille
Grille85 ist offline   Mit Zitat antworten
Alt 20-08-2003, 11:12   #6 (permalink)
Farbe ist Luxus
 
Benutzerbild von ludabruda
 
Registriert seit: May 2003
Ort: Köln
Beiträge: 2.405
ok.

wie ich deiner Funktion entnehme, erscheint das neue Bild dann immer sofort, ohne Bewegungs-Animation.

Dann ist es sicherlich sinnvoller, die Einzelbilder in der Bibliothek zu verknüpfen (Rechtsklick auf das Bild, Verknüpfung, Export für Actionscript). Dort noch einen sinnvollen Namen eingeben ("bild1" bis "bildn").

Dein Array brauch nun nur noch die Namen dieser Bilder zu beinhalten:
ar = new Array("bild1","bild2","bild3");

Unter die Maske legst du einen leeren MC, dem du einen Instanznamen gibst, z.B. pics.

In der Funktion, die mittels setInterval aufgerufen wird, schreibst du nur noch:
i++;
mc.attachMovie(ar[i],"pic",0);

Dann wird es immer wieder ausgetauscht.

Grüße
Sascha
__________________
12:15, press return
ludabruda ist offline   Mit Zitat antworten
Alt 20-08-2003, 11:25   #7 (permalink)
Neuer User
 
Registriert seit: Jun 2003
Beiträge: 48
alles klar, ich probiers mal

mit gemütlich keit ^^

nene scherz, ich hoffe mal das es klappt, bis denne.


ThX @ Grille
__________________
Gruss
Christian

_________________________

Learning Linux - Learning Flash;
Dabei wird es mir nie schlecht;
Der Apache hat immer Recht;
Drum trink' ich mir ne Flash.

.... Bier
Grille85 ist offline   Mit Zitat antworten
Alt 20-08-2003, 12:35   #8 (permalink)
Neuer User
 
Registriert seit: Jun 2003
Beiträge: 48
so, jetzt funktioniert alles astrein ^^

nur, wenn ich im array beim letzten bild angekommen bin, wie kann ich das i, wenn es über 16 hinaus geht, wieder auf 0 zurück setzten, sodass die diashow von vorne beginnt?


ar = new Array("", "bild1","bild2","bild3","bild4","bild5","bild6","b ild7","bild8","bild9","bild10","bild11","bild12"," bild13","bild14","bild15","bild16");
INTERVAL = setInterval (function(){
i++;
trace(ar[i]);
_root.pics.attachMovie(ar[i],"pics",0);
},1000);
__________________
Gruss
Christian

_________________________

Learning Linux - Learning Flash;
Dabei wird es mir nie schlecht;
Der Apache hat immer Recht;
Drum trink' ich mir ne Flash.

.... Bier
Grille85 ist offline   Mit Zitat antworten
Alt 20-08-2003, 12:39   #9 (permalink)
Erstmal n Herri!
 
Benutzerbild von _Hannes_
 
Registriert seit: Aug 2002
Ort: Hamburg
Beiträge: 1.233
if (i > 16) i = 0;

mfg
__________________
hannesstruss.de
_Hannes_ ist offline   Mit Zitat antworten
Alt 20-08-2003, 12:48   #10 (permalink)
Neuer User
 
Registriert seit: Jun 2003
Beiträge: 48
ok, ich hatte

if (i > 16){
i = 0;
}

und irgendwie wollte das nciht???

naja, egal, jetzt gehts - dank euch


also... bis dann
__________________
Gruss
Christian

_________________________

Learning Linux - Learning Flash;
Dabei wird es mir nie schlecht;
Der Apache hat immer Recht;
Drum trink' ich mir ne Flash.

.... Bier
Grille85 ist offline   Mit Zitat antworten
Antwort

Lesezeichen

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks sind an
Pingbacks sind an
Refbacks sind an



Alle Zeitangaben in WEZ +1. Es ist jetzt 17:50 Uhr.

Domains, Webhosting & Vserver von Host Europe
Unterstützt das Flashforum!
Adobe User Group


Copyright ©1999 – 2012 Marc Thiele