Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 08-12-2005, 12:19   #1 (permalink)
Neuer User
 
Registriert seit: Nov 2004
Beiträge: 175
Movieclip - Tweening mit as

Hallo,

per Script möchte ich meinen mc von einer variablen Höhe, die von einem anderen Movie übergeben wird auf eine festgelegte Höhe von 120 Pixel tweenen.

Also:
wenn die Höhe des mc vorher > 120px kleiner tweenen,
wenn die Höhe des mc vorher < 120px größer tweenen,
wenn die Höhe des mc vorher = 120px keine Änderung.

Dazu hab ich ein Beispiel gemacht, aber irgendwo steckt noch der Wurm drin.
Danke für Eure Hilfe!
Angehängte Dateien
Dateityp: zip as_tween.zip (5,3 KB, 6x aufgerufen)
*perplex* ist offline   Mit Zitat antworten
Alt 08-12-2005, 13:20   #2 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Hi!
Bisschen umständlich, wie du dir das da gedacht hast...
PHP-Code:
MovieClip.prototype.tweenTo = function(zielspeed) {
    
this.onEnterFrame = function() {
        
Math.round(this._height) != ziel this._height+=(ziel-this._height)/speed : (delete this.onEnterFramethis._height=ziel);
    };
};
this.mc.tweenTo(1204); 
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 08-12-2005, 15:43   #3 (permalink)
Neuer User
 
Registriert seit: Nov 2004
Beiträge: 175
Hallo der Frager,

ich probiers direkt mal aus. Danke!
*perplex* ist offline   Mit Zitat antworten
Alt 09-12-2005, 08:34   #4 (permalink)
Neuer User
 
Registriert seit: Nov 2004
Beiträge: 175
Hab das Script eingebaut aber es gibt noch 2 Probleme...

1. Das Tweening wird gegen Ende der Animation langsamer. Wie kommt das / wie kann ich das umgehen?

2. In der von mir zuvor hochgeladenen Testdatei läuft das Script (von Punkt 1 mal abgesehen) gut. In meiner eigentlichen Datei wird ja aber die Höhe des mc aus dem letzten Film übernommen, auf welcher das Tweening-Script im neuen Movie aufbauen soll.
Derzeit übernimmt er die Höhe des letzten mc, aber das Script wird dummerweise nicht ausgeführt. Wo ist mein Fehler?

Die Höhe übergebe ich global...
PHP-Code:
//alter Movie
onClipEvent (enterFrame) {
    
_global.hoehe this._height;
    
loadMovie(href"_parent");
}

//neuer Movie
onClipEvent (enterFrame) {
    
this._height hoehe;

Gruß und Danke!
*perplex* ist offline   Mit Zitat antworten
Alt 09-12-2005, 12:25   #5 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
Ich verstehe nicht ganz, was du machen willst und bei deiner fla passiert bei mir nix, nada, null...
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 09-12-2005, 12:46   #6 (permalink)
Neuer User
 
Registriert seit: Nov 2004
Beiträge: 175
@der Frager
hallo, anbei nochmal meine Datei mit Deinem Script. Das funktioniert bis diese weiter oben in Pukt 1 beschriebene Ausbremsung am Ende?!

Bei dieser Datei geht Flash aber von der statisch festgelegten Anfangshöhe von 10px aus. Der von mir gedachte Ablauf sieht allerdings folgendermaßen aus:

1. Lese die globale Variable aus
2. Anzeige des Movieclips mit der Höhe aus der Variablen (nicht 10px)
3. Aufruf Deiner Funktion aufbauend auf der Höhe des mc in Schritt 2

Gruß
Chris
Angehängte Dateien
Dateityp: zip movie2.zip (5,3 KB, 4x aufgerufen)

Geändert von *perplex* (09-12-2005 um 12:49 Uhr)
*perplex* ist offline   Mit Zitat antworten
Alt 09-12-2005, 13:19   #7 (permalink)
................
 
Benutzerbild von Der Frager
 
Registriert seit: Jun 2004
Beiträge: 15.890
So, die Ausbremsung (easing übrigens) ist wech. Außerdem kann man dem MC eine Start-, eine Zielgröße und die Geschwindigkeit mitgeben. Wann du da deine Variable einliest bzw. wann du dem MC sagst, dass er größer oder kleiner werden soll, bleibt ja dir überlassen.
PHP-Code:
MovieClip.prototype.tweenTo = function(beginzielspeed) {
    if ((
this._height=begin)>ziel) {
        
speed = -speed;
    }
    
this.onEnterFrame = function() {
        
Math.abs(this._height-ziel)>Math.abs(speed) ? this._height += speed : (delete this.onEnterFramethis._height=ziel);
    };
};
//
this.mc_area.tweenTo(201004); 
Angehängte Dateien
Dateityp: rar movie2.rar (5,3 KB, 9x aufgerufen)
__________________

ternärer Konditionaloperator

+++ Bitte keine Privat-Nachrichten bezüglich Flashfragen! +++
Der Frager ist offline   Mit Zitat antworten
Alt 09-12-2005, 13:26   #8 (permalink)
Neuer User
 
Registriert seit: Nov 2004
Beiträge: 175
Hey Cool!!!
Wie kann ich das je wieder gut machen?

*perplex* 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 01:35 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele