Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 27-07-2005, 01:53   #1 (permalink)
Neuer User
 
Benutzerbild von -==AIRWOLF==-
 
Registriert seit: May 2004
Beiträge: 97
alpha-Wert abfangen

Hallo Zusammen,

ich bräuchte mal wieder einen Denkanstoss. Ich lasse einen MC mit folgendem Script einfaden:
ActionScript:
  1. function fade(speed, TLevel) {
  2.     _root.Movie_mc.Clip1_mc._alpha = 0;
  3.     _root.Movie_mc.Clip1_mc.onEnterFrame = function() {
  4.         this._alpha<TLevel ? this._alpha += speed : delete this.onEnterFrame;
  5.     };
  6. }

Ich wollte jetzt eigentlich den ansteigenden Alphawert bei 100 abfangen und dann ein weitergehende Aktion starten. Der Versuch sah so aus:
ActionScript:
  1. if (_root.Movie_mc.Clip1_mc._alpha == 100) {
  2.     trace("Tu was!!!");
  3. }
Aber irgendwie erkennt das gute Stück nicht die Alphawerte, so dass sich dementsprechend auch nichts tut.
Dürfte eigentlich nicht so schwer sein, aber ich bekomme es trotzdem nicht hin.
__________________
Gruß -==AIRWOLF==-
-==AIRWOLF==- ist offline   Mit Zitat antworten
Alt 27-07-2005, 07:31   #2 (permalink)
o_0
 
Benutzerbild von DoTheSinWave
 
Registriert seit: Apr 2005
Ort: zuhause
Beiträge: 79
probier mal das:

ActionScript:
  1. if (_root.Movie_mc.Clip1_mc._alpha > 95) {
DoTheSinWave ist offline   Mit Zitat antworten
Alt 27-07-2005, 07:44   #3 (permalink)
Pending…
 
Benutzerbild von psyk
 
Registriert seit: Jul 2002
Ort: Hamburg
Beiträge: 3.866
Die if-Bedingung müßtest du schon kontinuierlich gestalten, da sonst dies ja nur
einmal am Anfang der Initialisierung geschieht.
Versuchs mal so.
ActionScript:
  1. function fade(speed, TLevel) {
  2.         _root.Movie_mc.Clip1_mc._alpha = 0;
  3.         _root.Movie_mc.Clip1_mc.onEnterFrame = function() {
  4.                 this._alpha -= -speed
  5.                 if(this._alpha>=TLevel){
  6.                         trace("tu was")
  7.                         delete this.onEnterFrame;
  8.                 }
  9.         };
  10. }
__________________
:: Warum einfach, wenn's auch kompliziert geht! ::
psyk ist offline   Mit Zitat antworten
Alt 27-07-2005, 17:49   #4 (permalink)
Neuer User
 
Benutzerbild von -==AIRWOLF==-
 
Registriert seit: May 2004
Beiträge: 97
Vielen Dank für dein funktionierendes Script, psyk.

Aber dennoch ist mir nicht ganz klar, warum es bei meinem Versuch nicht geklappt habt. Bei meiner Herangehensweise habe ich mir gedacht, das ich die if-Anweisung, direkt auf den Clip ansetze und er permanent prüfen soll, wann der alpha auf 100 steht. Ging natürlich nicht.
Jetzt frage ich mich natürlich weshalb nicht und würde mich deshalb freuen, wenn du mir das nochmal etwas näher erläutern könntest.

Denn irgendwann muss ich es ja auch mal kapieren, denn ab und zu frage ich mich wirklich, ob ich dafür nicht clever genug bin .
__________________
Gruß -==AIRWOLF==-
-==AIRWOLF==- ist offline   Mit Zitat antworten
Alt 27-07-2005, 19:14   #5 (permalink)
Pending…
 
Benutzerbild von psyk
 
Registriert seit: Jul 2002
Ort: Hamburg
Beiträge: 3.866
Wenn du das if auf dem MC direkt zu liegen hast, müßtest du mit einem onClipEvent arbeiten.
ActionScript:
  1. onClipEvent(enterFrame){
  2. if(_alpha>=100){
  3. trace("tu was")
  4. }
  5. }
Da das if ja nicht noch mal aufgerufen wird.
__________________
:: Warum einfach, wenn's auch kompliziert geht! ::
psyk ist offline   Mit Zitat antworten
Alt 27-07-2005, 19:26   #6 (permalink)
brand new user
 
Benutzerbild von RustyCake
 
Registriert seit: May 2002
Ort: Laimbach 6 1/2
Beiträge: 16.884
PHP-Code:
this._alpha<TLevel this._alpha += speed delete this.onEnterFrame
Des ist doch schon sowas wie eine " if-else abfrage", kannst doch hinter dem Doppelpunkt noch eine anweisung dazu packen!!
__________________
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muß erst gehen lernen"
RustyCake ist offline   Mit Zitat antworten
Alt 28-07-2005, 13:06   #7 (permalink)
brand new user
 
Benutzerbild von RustyCake
 
Registriert seit: May 2002
Ort: Laimbach 6 1/2
Beiträge: 16.884
Bsp!
PHP-Code:
function fade(speedTLevel) {
    
_root.Movie_mc.Clip1_mc._alpha 0;
    
_root.Movie_mc.Clip1_mc.onEnterFrame = function() {
        
this._alpha<TLevel this._alpha += speed : (trace("alpha=100"), delete this.onEnterFrame);
    };
}
fade(5100); 
__________________
Bitte keine Fragen, zu Flash per PM. Dazu ist das Forum da. Danke MFG_RustyCake!
"Wer tanzen will, muß erst gehen lernen"
RustyCake 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 07:55 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele