Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 11-09-2008, 09:02   #1 (permalink)
Neuer User
 
Registriert seit: Oct 2006
Beiträge: 66
Prüfen, ob eine Funktion ausgeführt wird

Guten Morgen,

die Sonne brüllt in mein Büro, und es könnte sein, dass deshalb mein Hirn etwas langsamer arbeitet als sonst.

Frage: ich möchte folgende Schaltung erzeugen:

Wenn Funktion 1 nicht ausgeführt wird => führe Funktion 2 aus

If/else ist ja kein Problem, aber mit true/false komme ich nicht weiter, ich weiß einfach nicht, wie ich es darstellen kann, dass eine Funktion abgefragt wird.

Geht sowas überhaupt?

Danke für Eure Hilfe,

Stephan
incredibrother ist offline   Mit Zitat antworten
Alt 11-09-2008, 09:06   #2 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
Dazu braucht man schon etwas mehr Infos, ansonsten mache die eine Variable in dem du die zuletzt aufgerufene Methode speicherst.
__________________
ERROR: Signature is too large
rendner[i] ist offline   Mit Zitat antworten
Alt 11-09-2008, 09:09   #3 (permalink)
ChronoGuard
 
Benutzerbild von SpecOps-12
 
Registriert seit: Mar 2002
Ort: Saarbrücken
Beiträge: 2.649
PHP-Code:
var funktion1laeuft:Boolean;

function 
funktion1():Void {
    
funktion1laeuft true;
    
// läuft läuft läuft läuft
    // Ende:
    
funktion1laeuft false;
}


function 
function2():Void {
    if (
funktion1laeuft) {
        
// mach nix
    
} else {
        
// mach was
    
}

So?
__________________
we will stop enhancing the truth in 3, 2, ...
SpecOps-12 ist offline   Mit Zitat antworten
Alt 11-09-2008, 09:12   #4 (permalink)
Neuer User
 
Registriert seit: Oct 2006
Beiträge: 66
Ich...

...probier´s gleich mal aus und sag dann Bescheid.

Grundsätzlich aber ja: So! Danke und Gruß, Stephan
incredibrother ist offline   Mit Zitat antworten
Alt 11-09-2008, 09:25   #5 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
@ Weidler's Beispiel:

Macht aber nur Sinn, wenn Funktion 1 asynchron ist, oder Funktion 2 auch innerhalb von Funktion 1 aufgerufen werden kann.
__________________
ERROR: Signature is too large
rendner[i] ist offline   Mit Zitat antworten
Alt 11-09-2008, 09:35   #6 (permalink)
Neuer User
 
Registriert seit: Oct 2006
Beiträge: 66
´s...

...funktioniert auch net:

Nochmal: ich habe eine Funktion 1, die ich auf Knopfdruck mit

funktion1();

starte.

Darin sind einige if-Befehle zusammengefasst.

Wenn die zu keinem Ergebniss kommen, soll funktion2 laufen.

Das mit dem Boole erscheint mir logisch, hab aber noch keine Erfahrung damit.

Fällt Euch noch was ein?
incredibrother ist offline   Mit Zitat antworten
Alt 11-09-2008, 09:42   #7 (permalink)
ChronoGuard
 
Benutzerbild von SpecOps-12
 
Registriert seit: Mar 2002
Ort: Saarbrücken
Beiträge: 2.649
Zitat:
Zitat von rendner[i] Beitrag anzeigen
@ Weidler's Beispiel:

Macht aber nur Sinn, wenn Funktion 1 asynchron ist, oder Funktion 2 auch innerhalb von Funktion 1 aufgerufen werden kann.
Stimmt natürlich. Ich ging einfach mal davon aus, dass in der Funktion ne Tweenklasse oder sowas drin wäre, die bei onComplete eine funktion zum zurücksetzen der Boolean auslöst....
__________________
we will stop enhancing the truth in 3, 2, ...
SpecOps-12 ist offline   Mit Zitat antworten
Alt 11-09-2008, 09:45   #8 (permalink)
ChronoGuard
 
Benutzerbild von SpecOps-12
 
Registriert seit: Mar 2002
Ort: Saarbrücken
Beiträge: 2.649
Zitat:
Zitat von incredibrother Beitrag anzeigen
...funktioniert auch net:

Nochmal: ich habe eine Funktion 1, die ich auf Knopfdruck mit

funktion1();

starte.

Darin sind einige if-Befehle zusammengefasst.

Wenn die zu keinem Ergebniss kommen, soll funktion2 laufen.

Das mit dem Boole erscheint mir logisch, hab aber noch keine Erfahrung damit.

Fällt Euch noch was ein?
Das ist ne völlig andere Frage als die im Eröffnungsbeitrag.
Poste am besten mal dein Script.
__________________
we will stop enhancing the truth in 3, 2, ...
SpecOps-12 ist offline   Mit Zitat antworten
Alt 11-09-2008, 09:46   #9 (permalink)
voidboy
 
Benutzerbild von rendner[i]
 
Registriert seit: Sep 2004
Ort: München
Beiträge: 5.588
Wer ruft denn die 2te Funktion auf, etwas mehr Infos oder Code wären da sehr hilfreich.
__________________
ERROR: Signature is too large
rendner[i] ist offline   Mit Zitat antworten
Alt 11-09-2008, 09:49   #10 (permalink)
Neuer User
 
Registriert seit: Oct 2006
Beiträge: 66
O.K. sorry,

...dachte, dass das einfacher wäre. Hier mal mein Skript:

HTML-Code:
on(release){

funktion1 = function (){

	if(_global.a>=7&&_global.a<=9){
	gotoAndStop("Professor");
}
	if(_global.a>=10&&_global.a<=15){
	gotoAndStop("Butler");
}
	if(_global.a>=16&&_global.a<=23){
	gotoAndStop("Lebenskuenstler");
}
	if(_global.a>=24&&_global.a<=31){
	gotoAndStop("Patron");
}
	if(_global.a>=32&&_global.a<=39){
	gotoAndStop("Suesse");
}
	if(_global.a>=40&&_global.a<=47){
	gotoAndStop("Brasilianerin");
}
	if(_global.a>=48&&_global.a<=55){
	gotoAndStop("Luder");
}
	if(_global.a>=56&&_global.a<=64){
	gotoAndStop("Diva");
	}
}


//_____________________

pp=3//Variable zur Steuerung für maximale Klickzhal einer Rubrik


funktion2 = function (){
	
	if(_global.AA>=pp){
		gotoAndStop(19);
	}
	if(_global.BB>=pp){
		gotoAndStop(29);
	}
	if(_global.CC>=pp){
		gotoAndStop(39);
	}
	if(_global.DD>=pp){
		gotoAndStop(49);
	}
	if(_global.EE>=pp){
		gotoAndStop(59);
	}
	if(_global.FF>=pp){
		gotoAndStop(69);
	}
	if(_global.GG>=pp){
		gotoAndStop(79);
	}
	if(_global.HH>=pp){
		gotoAndStop(89);
	}
}

//Ab hier weiß ich nicht mehr weiter

var funktion2laeuft:Boolean;

function funktion2():Void {

	funktion2laeuft = true;
	funktion2laeuft = false;
}

function funktion1():Void {
	if(funktion2laeuft){
		trace("Läuft");
	}else
	_global.funktion1();
}

funktion2();

}
incredibrother ist offline   Mit Zitat antworten
Alt 11-09-2008, 10:01   #11 (permalink)
ChronoGuard
 
Benutzerbild von SpecOps-12
 
Registriert seit: Mar 2002
Ort: Saarbrücken
Beiträge: 2.649
Oh. Das ist ja tatsächlich AS1. Da kenn ich mich nicht aus.
Macht es Sinn, eine Funktionen in ein Release-Event zu legen?
Die wird doch dann gar nicht aufgerufen?

Theoretisch könne es irgendwie so sein

PHP-Code:
funktion1 = function () {
    if (
_global.a>=&& _global.a<=9) {
        
gotoAndStop("Professor");
    } else if (
_global.a>=10 && _global.a<=15) {
        
gotoAndStop("Butler");
    } else if (
_global.a>=16 && _global.a<=23) {
        
gotoAndStop("Lebenskuenstler");
    } else if (
_global.a>=24 && _global.a<=31) {
        
gotoAndStop("Patron");
    } else if (
_global.a>=32 && _global.a<=39) {
        
gotoAndStop("Suesse");
    } else if (
_global.a>=40 && _global.a<=47) {
        
gotoAndStop("Brasilianerin");
    } else if (
_global.a>=48 && _global.a<=55) {
        
gotoAndStop("Luder");
    } else if (
_global.a>=56 && _global.a<=64) {
        
gotoAndStop("Diva");
    } else {
        
function2();
    }
}; 
Weiß aber nicht, wie das bei Script auf Objekten mit Scopes und so verhält.
Außerdem muss bei AS1-Syntax eine benötigte Funktion im Script oberhalb des Funktionsaufrufes stehen.
__________________
we will stop enhancing the truth in 3, 2, ...
SpecOps-12 ist offline   Mit Zitat antworten
Alt 11-09-2008, 10:04   #12 (permalink)
Neuer User
 
Registriert seit: Oct 2006
Beiträge: 66
Tja,...

mehr kann ich noch nich...

Ich mach mir gerade auch schon Gedanken, ob ich noch ein zusätzliches »if« oder »else« einbaue.

Super und danke für den Hinweis. Könnte funktionieren. Werde weiterbasteln.
incredibrother ist offline   Mit Zitat antworten
Alt 11-09-2008, 10:14   #13 (permalink)
Neuer User
 
Registriert seit: Oct 2006
Beiträge: 66
Es läuft!

Hallo Bademeister,

danke für den Rettungsring, das war der richtige Hinweis.

Gehe jetzt mal auf die Liegewiese :-)))


P.S.: Nur mal so für die Zukunft: täte ich mich mit so was mit AS2 leichter? Weiß nicht so recht, wo ich da anfangen soll.
incredibrother 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:07 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele