Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 08-04-2004, 12:14   #1 (permalink)
Flash & TYPO3
 
Registriert seit: Oct 2003
Ort: Bayern
Beiträge: 2.700
oEF will nicht!? Pfade?

Hallo,

wie kann es sein, dass in der zweiten Funciton "pushIn" die onEnterFrame-Funciton nicht geht!?
ActionScript:
  1. // Das hier ist eigetnlich alles völlig egal!!
  2. lastClicked = 0;
  3. chuckOut = function(i) {
  4.     trace("RAUSschieben starten...");
  5.     if(lastClicked != i) {
  6.         this.onEnterFrame = function() {
  7.            
  8.             this[navArr[lastClicked][1] add "Cont"]._y += (-430 - this[navArr[lastClicked][1] add "Cont"]._y)/5;
  9.            
  10.             yDiff = Math.abs(Math.ceil(-430 - this[navArr[lastClicked][1] add "Cont"]._y));
  11.             //trace("y: " add _root[navArr[lastClicked][1] add "Cont"]._y);
  12.             //trace(yDiff);
  13.             if(yDiff <= 1) {
  14.                 trace("RAUsschieben fertig");
  15.                 lastClicked = i;
  16.                 pushIn(i); // Hier der Aufruf ist das einzig wichtige!
  17.                 delete this.onEnterFrame;
  18.             }
  19.         }
  20.     }
  21. };
  22. pushIn = function(i) {
  23.     trace("pushIn i: " add i);
  24.     this[navArr[i][1] add "Cont"]._y = 40;
  25.     this.onEnterFrame = function() {
  26.         counter++;
  27.         trace("Counterstand: " add counter); // Hier geht gar nichts!!
  28.     }
  29. };
  30.  
  31. for(i=0; i<navArr.length; i++) {
  32.  
  33.     _root[navArr[i][1] add "_mc"].i = i;
  34.    
  35.     _root[navArr[i][1] add "_mc"].onPress = function() {
  36.         chuckOut(this.i);
  37.     };
  38. }
__________________
Mediendesign-Student

Geändert von johanness (08-04-2004 um 12:15 Uhr)
johanness ist offline   Mit Zitat antworten
Alt 08-04-2004, 12:23   #2 (permalink)
Neuer User
 
Benutzerbild von :: RK ::
 
Registriert seit: Jan 2002
Ort: Umgebung Stuttgart
Beiträge: 5.412
hi,

die onEnterFrame von beiden Funktionen beziehen sich auf die
selbe zeitleiste.
ActionScript:
  1. pushIn(i); // Hier der Aufruf ist das einzig wichtige!
  2.                                 delete this.onEnterFrame;
hier startest du die function pushIn(). dann startest du in dieser
function onEnterFrame und löschst aber in der ersten function das
onEnterFrame, d.h onEnterFrame in pushIn() wird auch gelöscht.
alles klar ???

versuchs mal so rum:
ActionScript:
  1. delete this.onEnterFrame;
  2.                                 pushIn(i); // Hier der Aufruf ist das einzig wichtige!
  3.  
__________________
Das Glück im Leben hängt von den guten Gedanken ab, die man hat.

Easing_Equations / Flash Kontaktformular / FlashPlugin W3C konform / Nützliche Beiträge zu FAQs
:: RK :: ist offline   Mit Zitat antworten
Alt 08-04-2004, 12:27   #3 (permalink)
agedoubleju
Gast
 
Beiträge: n/a
Da du mehrere onEnterFrame-events nutzt, kann es sein, dass die sich gegenseitig stören. Im Übrigen wird der zweite onEnterFrame auch nicht gelöscht. Erstell in einer der Funktionen einen leeren MC und setz da einen onEnterFrame drauf, z.B.
ActionScript:
  1. pushIn = function(i) {
  2. ...
  3. _level0.createEmtpyMovieClip("watcher",1);
  4. _level0.watcher.onEnterFrame = function(){
  5. ...
  6. delete _level0.watcher.onEnterFrame;
  7. _level0.watcher.removeMovieClip();
  8. }}
  Mit Zitat antworten
Alt 08-04-2004, 12:29   #4 (permalink)
Flash & TYPO3
 
Registriert seit: Oct 2003
Ort: Bayern
Beiträge: 2.700
Danke euch beiden.
RK hate aber die leichtere Lösung! Es geht Danke!
__________________
Mediendesign-Student
johanness ist offline   Mit Zitat antworten
Alt 08-04-2004, 12:30   #5 (permalink)
Neuer User
 
Benutzerbild von :: RK ::
 
Registriert seit: Jan 2002
Ort: Umgebung Stuttgart
Beiträge: 5.412
warum sollte das onEnterFrame der function pushIn nicht gelöscht
werden ??? meiner Meinung nach beziehen sich ja beide functions
und somit beide onEnterFrame aufrufe auf die selbe zeitleiste.

wenn ich dann von der erste function aus pushIn starte und gleich
danach das onEnterFrame lösche, dann wird das doch für beide
gelöscht, oder nicht ??? deswegen auch mein Vorschlag den Aufruf
der function pushIn nach dem delete onEnterFrame zu machen.


@johanness:
np
__________________
Das Glück im Leben hängt von den guten Gedanken ab, die man hat.

Easing_Equations / Flash Kontaktformular / FlashPlugin W3C konform / Nützliche Beiträge zu FAQs
:: RK :: ist offline   Mit Zitat antworten
Alt 08-04-2004, 12:41   #6 (permalink)
Flash & TYPO3
 
Registriert seit: Oct 2003
Ort: Bayern
Beiträge: 2.700
Wenn mir schon mal zwei so helle Köpf antworten, gleich noch eine ganz kleine Frage:

Ich schiebe den Inhalt ja rein und raus.
Raus:
ActionScript:
  1. this[navArr[lastClicked][1] add "Cont"]._y += (-430 - this[navArr[lastClicked][1] add "Cont"]._y)/5;
Rein:
ActionScript:
  1. this[navArr[i][1] add "Cont"]._y += (40 - this[navArr[i][1] add "Cont"]._y)/5;

die Bewegung spielt sich jetzt immer so ab: Schnell anfangen und langsam enden.
Doch beim Rausschieben hätte ich die Bewegung gerne andersrum: Langsam starten und schnell enden. Wie müsste denn da die Formel aussehen?
Danke!
__________________
Mediendesign-Student
johanness ist offline   Mit Zitat antworten
Alt 08-04-2004, 13:12   #7 (permalink)
Neuer User
 
Benutzerbild von :: RK ::
 
Registriert seit: Jan 2002
Ort: Umgebung Stuttgart
Beiträge: 5.412
hi,

sorry, da bin jetzt auch überfragt, hab ich noch nie genutzt

aber such mal nach "beschleunigte bewegung" oder sowas,
da solltest fündig werden.
__________________
Das Glück im Leben hängt von den guten Gedanken ab, die man hat.

Easing_Equations / Flash Kontaktformular / FlashPlugin W3C konform / Nützliche Beiträge zu FAQs
:: RK :: ist offline   Mit Zitat antworten
Alt 08-04-2004, 14:47   #8 (permalink)
Neuer User
 
Benutzerbild von michaelklaehn
 
Registriert seit: Feb 2003
Beiträge: 262
Du kannst Deine Bewebung ja an Funktionen binden.
_y=_x*i;

;-)
michaelklaehn ist offline   Mit Zitat antworten
Alt 08-04-2004, 14:55   #9 (permalink)
Flash & TYPO3
 
Registriert seit: Oct 2003
Ort: Bayern
Beiträge: 2.700
Das verstehe ich nicht!
die x-Kordinate bleibt ja immer gleich. Und die Container mit den Inhalten sollen sich ja nicht unterschiedlich schnell rausbewegen - was sie aber täten, würde man sie mit ihrem "Index" i multiplizieren.
__________________
Mediendesign-Student
johanness ist offline   Mit Zitat antworten
Alt 08-04-2004, 17:43   #10 (permalink)
Neuer User
 
Benutzerbild von :: RK ::
 
Registriert seit: Jan 2002
Ort: Umgebung Stuttgart
Beiträge: 5.412
hi,

versuchs mal so:
ActionScript:
  1. if(this[navArr[i][1]+"Cont"]._y > 40){
  2. speed += 2;
  3. this[navArr[i][1]+"Cont"]._y -= speed;
  4. }
__________________
Das Glück im Leben hängt von den guten Gedanken ab, die man hat.

Easing_Equations / Flash Kontaktformular / FlashPlugin W3C konform / Nützliche Beiträge zu FAQs
:: RK :: ist offline   Mit Zitat antworten
Alt 08-04-2004, 20:36   #11 (permalink)
Flash & TYPO3
 
Registriert seit: Oct 2003
Ort: Bayern
Beiträge: 2.700
Ja! Mit den Werten musste ich halt noch bisschen spielen. aber sonst habe ich es jetzt so und das klappt gut. Danke
ActionScript:
  1. upSpeed += 0.5;
  2. this[navArr[lastClicked][1] add "Cont"]._y -= upSpeed*upSpeed;
__________________
Mediendesign-Student
johanness ist offline   Mit Zitat antworten
Alt 09-04-2004, 11:23   #12 (permalink)
Neuer User
 
Benutzerbild von :: RK ::
 
Registriert seit: Jan 2002
Ort: Umgebung Stuttgart
Beiträge: 5.412
np

PS: dieses "add" was du verwendest ist auch schon etwas älter.
benutzt doch einfach das "+" Zeichen, wie in meinem Beispiel.
__________________
Das Glück im Leben hängt von den guten Gedanken ab, die man hat.

Easing_Equations / Flash Kontaktformular / FlashPlugin W3C konform / Nützliche Beiträge zu FAQs
:: RK :: 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 23:09 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele