Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 04-02-2004, 23:11   #1 (permalink)
Neuer User
 
Registriert seit: Feb 2004
Beiträge: 4
geht es, das 'nicht mouseMove' etwas auslöst?

Anfängerfrage:
Ich würde gern die Bewegung eines Clips so steuern, dass er der Mausbewegung folgt (kein Problem) dann aber, wenn die Mausbewegung stopt, soll der Clip zurück zum Ausgangspunkt.
Aber einen Gegenspieler von 'mouseMove' also 'mouseStop' finde ich nicht.
Wie komme ich es denn trotzdem zu dem Ergebnis??

Danke!
mathiash ist offline   Mit Zitat antworten
Alt 05-02-2004, 02:11   #2 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.322
z.b.
Code:
onClipEvent (load) {
	AltMousX = _root._xmouse;
	AltMousY = _root._ymouse;
	AltWarte = 300;
	AltTime = getTimer()+AltWarte;
}
onClipEvent (enterFrame) {
	if ((AltMousX == _root._xmouse) && (AltMousY == _root._ymouse)) {
		if (AltTime<getTimer()) {
			// maus hat sich nicht bewegt
			// etwas wartezeit ist auch vergangen
			// sonst reagiert es zu spontan
			// jetzt könnte man etwas machen
		}
	} else {
		AltMousX = _root._xmouse;
		AltMousY = _root._ymouse;
		AltTime = getTimer()+AltWarte;
	}
}
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de
hgseib ist offline   Mit Zitat antworten
Alt 05-02-2004, 10:23   #3 (permalink)
Neuer User
 
Registriert seit: Feb 2004
Beiträge: 4
Unhappy

Vielen Dank für die Antwort. Ich merke schon, dass ich mich wohl erst einmal intensiever mit den Grundlagen befassen muss.
Bis jetzt hab ich in Flash nur ohne Scripts gearbeitet und dachte die kleine Animation (Siehe BLBlick1.fls) kriege ich schon irgendwie hin aber so, wie ich mir das vorgestellt habe schaffe ich es auch mit dem Beispiel-Script nicht.

Das Script sagt doch:
hat sich die x-Position oder hat sich die Y-Position verändert, mach DAS. Hat sie es nicht mach DIES.

In meinen besten Versuchen ist die Pupille entweder zum Ausgangspunkt gesprungen oder in Richtung Zeiger aber nie so, dass beim Ziehen der Maus gefolgt wird und beim Anhalten auf den Mittelpunkt des Auges gesprungen wird.
Äh, muss ich meine Pupille 'AltMous' nennen?

Sollte ich es lieber doch bleiben lassen und erst einmal einen ActioScript-Kurs besuchen?

mathias
Angehängte Dateien
Dateityp: zip blblick1.fla.zip (7,9 KB, 4x aufgerufen)
mathiash ist offline   Mit Zitat antworten
Alt 05-02-2004, 19:28   #4 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.322
"..erst einmal intensiever mit den Grundlagen befassen muss.."
sehr gute idee :-)))))

"..dass er der Mausbewegung folgt (kein Problem).."
ich dachte, du könntest das, deshalb habe ich es im script nicht ergänzt. zumal es 10.000 möglichkeiten gibt, irgend etwas zu animieren.
Code:
onClipEvent (load) {
	AltMousX = _root._xmouse;
	AltMousY = _root._ymouse;
	AltWarte = 300;
	AltTime = getTimer()+AltWarte;
	OrgPosiX = this._x;
	OrgPosiY = this._y;
}
onClipEvent (enterFrame) {
	if ((AltMousX == _root._xmouse) && (AltMousY == _root._ymouse)) {
		if (AltTime<getTimer()) {
			// maus hat sich nicht bewegt
			// etwas wartezeit ist auch vergangen
			// sonst reagiert es zu spontan
			// jetzt könnte man etwas machen z.b.:
			this._x = (this._x*4+OrgPosiX)/5;
			this._y = (this._y*4+OrgPosiY)/5;
		}
	} else {
		AltMousX = _root._xmouse;
		AltMousY = _root._ymouse;
		AltTime = getTimer()+AltWarte;
		this._x = _root._xmouse;
		this._y = _root._ymouse;
	}
}
in onClipEvent (load) wird der ausgangsstatus ALTwas_auch_immer festgehalten.

in onClipEvent (enterFrame) stellst du fest, ob sich die maus bewegt hat UND du machst mit deinem objekt, was immer du während der mausbewegung machen willst.
wurde die maus nicht bewegt, dann zurück zum ausgangsstatus.

in AltMous merkst du dir die alte position der maus (wie sonst könnte man feststellen, ob sich diese bewegt hat).
DEIN objekt (das diesen code beinhaltet) heisst Ganz_egal_wie; im code ist es "this" -objekt.
AltMousX = _root._xmouse;
könnte man auch so schreiben
this.AltMousX = _root._xmouse;
man schreibts halt nicht, weil diese variablen sowieso zu diesem (this) objekt gehört.
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de
hgseib ist offline   Mit Zitat antworten
Alt 05-02-2004, 23:36   #5 (permalink)
Neuer User
 
Registriert seit: Feb 2004
Beiträge: 4
Danke!! für die ausführliche und lehrreiche Antwort!
In diesen Bereichen hab ich das Gefühl, meine Logig und die Script-Logig sind nicht vom gleichen Planeten ...
Aber egal, es funktioniert dank deiner Hilfe so wie ich es mir vorgestelt habe. (siehe BLBlick1.swf)
Eines Tages werde ich dann vielleicht auch:

this._x = (this._x*4+OrgPosiX)/5;
this._y = (this._y*4+OrgPosiY)/5;

verstehen.
Also nochmals Danke!

Mathias
mathiash ist offline   Mit Zitat antworten
Alt 06-02-2004, 01:19   #6 (permalink)
Techniker
 
Benutzerbild von hgseib
 
Registriert seit: Sep 2003
Ort: 64807
Beiträge: 16.322
um auch noch dieses "geheimnis" zu lüften:
this._x = (this._x*4+OrgPosiX)/5;

4+1=5
je loop rückt this 1/5tel des jeweiligen abstandes zur alten position zurück.

11+1=12
so gehts langsamer
2+1=3
so gehts schneller
__________________
die ultimative antwort auf alle programmierfragen: der debugger
mfg h.g.seib www.SeibsProgrammLaden.de
hgseib ist offline   Mit Zitat antworten
Alt 06-02-2004, 07:57   #7 (permalink)
Neuer User
 
Registriert seit: Feb 2004
Beiträge: 4
Du scheinst ja ein echter Nachtarbeiter zu sein.
Danke für die letzten Enthüllungen und hier noch einmal das verschollene Ergebnis (siehe Anhang)
Angehängte Dateien
Dateityp: zip blblick1.swf.zip (1,5 KB, 7x aufgerufen)
mathiash 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 14:14 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele