Nu wirds aber komplex...huh


F

First Virus

#1
Also leute ich mache grade meinen Medien Designer und im Studium haben wir grade, was heißt grade, ein projekt von der Volksbühne gestellt bekommen, es handelt um Hamlet.
Jetzt nicht gleich wegklicken es wird gleich interesant :), Ich habe mir dann unter allen herrumlaufenden leuten einpar ausgesucht und haben dann ein team gemacht ( V.I.P's = Verein Irrer Partienten):)

Um nun mal zu dem prjekt zu kommen es gab 101 fragmente von Hamlet und jedes team durfte sich eins aussuchen, als wir dann davor saßen und gegrübelt hatten ist uns nur eins eingefallen - ich als egoshooter und mein freund ebanfalls dazu noch nen anderes teamate welches gerne filme wie Starship Troopers sieht - machen wir doch rusisch Roulet :)

wir arbeiteten dann an unserem ausgewälten tema welches uns zum fragment eingefallen sind und nun sind wir kurz vorm ende aber dieser dumme AktionScriptSalat (kurz ASS :) ) will und will einfach net funtzen bzw. will die SWF datein net abspielen weiß der geier warum ich komm net mehr klar. tja und da bin ich auf tutorials.de gekommen und moechte euch hier fragen ob ihr mir weiterhelfen könnt.

Hier der ASS:

Main.fla :
------------------------------
Frame 1:

//loadMovieNum ("intro.swf", 4); ==> Komment deshalb weils zur zeit noch net von nöten ist.
folge = new Array();
test = 0;
HS1, HS2, HS3;
dbtest = 1;
dbtest2 = 1;
HS1 = 0;
HS2 = 0;
HS3 = 0;
x = 0;
folgenr = 0;
testns = 0;
NS1test = 0;
NS2test = 0;
NS3test = 0;
NS4test = 0;
NS5test = 0;
NS6test = 0;
NS7test = 0;
HS1test = 0;
HS2test = 0;
HS3test = 0;
------------------------------
------------------------------
Frame 2-9:

Fettes Radom, welches festlegt welche swf datei zu erst geladen wird und welche zu letzt.
Wer es sehen will solls posten ich poste es dann hier rein.

------------------------------
------------------------------
Frame 10 (ausgabe):

for (dbtest=1; dbtest<folgenr; dbtest++) {
if (folge[dbtest]=NS1.swf) {
gotoAndPlay ("NS1");
} else {
if (folge[dbtest]=NS2.swf) {
gotoAndPlay ("NS2");
} else {
if (folge[dbtest]=NS3.swf) {
gotoAndPlay ("NS3");
} else {
if (folge[dbtest]=NS4.swf) {
gotoAndPlay ("NS4");
} else {
if (folge[dbtest]=NS5.swf) {
gotoAndPlay ("NS5");
} else {
if (folge[dbtest]=NS6.swf) {
gotoAndPlay ("NS6");
} else {
if (folge[dbtest]=NS7.swf) {
gotoAndPlay ("NS7");
} else {
if (folge[dbtest]=HS1.swf) {
gotoAndPlay ("HS1");
} else {
if (folge[dbtest]=HS2.swf) {
gotoAndPlay ("HS2");
} else {
if (folge[dbtest]=HS3.swf) {
gotoAndPlay ("HS3");
}
}
}
}
}
}
}
}
}
}
}
gotoAndStop ("dummesversifftesabspielen");
stop ();

------------------------------
------------------------------
Frame 11-30:

Die bezeichnungen wurden schon im 10.ten Frame gesagt.
Hier wird die endsprechnde szene geladen und davor aber noch geprüft ob sie schon geladen wurde wenn ja dann springt er wieder auf den 10.Frame. hinter jedem frame kommt nochmal einer wo gesgt wird springe wieder eine Frame zurück und mache das selbe nochmal.

Beispiel (Frame 11)

if (NS1test == 1) {
gotoAndStop ("ausgabefeld");
} else {
loadMovie ("NS1.swf",5);
if (_level5._framesloaded == _level5._totalframes) {
NS1test++;
gotoAndStop ("ausgabefeld");
}
}
//Unsere Nerven liegen blank ==> hehe :)
------------------------------
------------------------------
Frame 31 (dummesversifftesabspielen): ==> :) :) :)

for (dbtest2=1; dbtest2<folgenr; dbtest2++) {
if (folge[dbtest2]=NS1.swf) {
_root._level5.main.gotoAndStop(2);
} else {
if (folge[dbtest2]=NS2) {
_root._level6.main.gotoAndStop(2);
} else {
if (folge[dbtest2]=NS3) {
_root._level7.main.gotoAndStop(2);
} else {
if (folge[dbtest2]=NS4) {
_root._level8.main.gotoAndStop(2);
} else {
if (folge[dbtest2]=NS5) {
_root._level9.main.gotoAndStop(2);
} else {
if (folge[dbtest2]=NS6) {
_root._level10.main.gotoAndStop(2);
} else {
if (folge[dbtest2]=NS7) {
_root._level11.main.gotoAndStop(2);
} else {
if (folge[dbtest2]=HS1) {
_root._level12.main.gotoAndStop(2);
} else {
if (folge[dbtest2]=HS2) {
_root._level13.main.gotoAndStop(2);
} else {
if (folge[dbtest2]=HS3) {
_root._level14.main.gotoAndStop(2);
}
}
}
}
}
}
}
}
}
}
}

------------------------------
Da in jeder SWF die geladen wird, außer in dem intro, die selben Aktionen passieren bis auf den Inhalt und kleine änderungen i script mit den leveln poste ich jetzt nur mal des von NS1,swf
------------------------------
NS1.swf :

Frame 1:
Hier ist nur nen stop und eine Filmsequenz (main)


Filmsequens(main).Frame1:

wieder nur ein stop, damit wenn die szene geladen wird nicht gleich abspielt.


Filmsqeuens(main).Frame2:

Ein Stop + eine filmsequens(mc1) + controler


Filmsequens(main).frame3:

stop ();
_root.gotoAndStop("dummesversifftesabspielen")


Filmsequens(main).controler.Frame1:

if (fertig=1) {
fertig = 0;
_root._leve5.main.gotoAndStop ("3");
}


Filmsequens(main).Filmsequens(mc1).LastFrame:

stop ();
fertig = 1; ==> Der controler weiß nun, aha animation fertig gehe zu
_root._level5.main.gotoAndStop("3");
------------------------------
------------------------------

Die Level Angaben ändern sich natürlich je nach swf aber ansonsten ist jede bezeichnung Gleich (kann es daran liegen das er da surch einander kommt?)

Wenn ihr die SWF und FLA Datein haben woll oder besser mal anschauen wollt dann nehmt die url hier:
http://www.psi-core-hq.de/haupteil/

Die Main.SWF bzw. .fla ist hier die haupt_versuch_4.fla
Dort ist auch des random Script mit drin.


Please help me...
 

Chris Kurt

Erfahrenes Mitglied
#2
ich gestehte erstma das ich mir nich alles durchgelesen habe aber soviel kann ich schonma sagen:
bei
_root._level5.main.gotoAndStop("3");
würd ich das _root weglassen

_level5.mc.play; reicht völlig

__________________________________
bei
if (fertig=1) {
fertig = 0;
_root._leve5.main.gotoAndStop ("3");
}

würd ich zwei gleichheitszeichen setzen (flash5)
also
if (fertig == 1){
....



glaub zwar nich das das viel bringen tut, aber man weiß ja nie...


·kuat·
 
P

Pasdan

#4
thx

hi,

hier is ein teammitglied von olle first
also danke für die tipps, da warne tatsächlich noch ein paar fehler mehr drin die also diesen "==" betreffen, leider haben beide tipps nich geholfen, haste noch ne idee? *gg*
thx
Pasdan:|
 
F

First Virus

#5
Ich verzweifel hier noch...

Ich habe jetzt schon alle Möglichkeiten die mir eingefallen sind ausgeschöpft aber nix geht:

1.Variante:

swf datei wird geladen, in jeder swf date ist am anfang ein stop.
dann wird kontroliert wieviel bereits geladen wurde von der swf und wenn ja dann wird die nächste swf geladen wieder mit nem stop versehen usw.
Dann kommt die abspiel Sequenz, ja nachdem in welches level die swf datei geladen wurde wird dieses level angesprochen:
_level2.nextframe.Play;
Will aber nicht funtzen.

2.Variante:

wieder ist in jeder swf datei ein stop am anfang nur das im nächsten frame nicht die animation direkt drin ist sondern sich ein film befindet (mc1) welcher abgespielt werden soll. die lade sequenz ist wie eben.
Das abspielen wie folgt:
_level2.nextframe.mc1.Play;
geht aber auch net

3. Variante

wieder haben die swf datein im ersten frame nen stop, aber hinzu kommt das dort noch eine abfrage ist:
if (go == 1){
nextframe.Play;
}
Wen nun also die datei geladen wurde und abgespielt werden soll dann wird eine Variable übergeben die go heißt, nun sollte man meinen das die swf datei weiß aha go == 1 ich kann weiter gehen, denkste nix ist alles ist wies ist nix passiert.




Ich bin bald reif für die irrenanstallt *argh*