Zurück   Flashforum > Flash > Flash Fortgeschritten > Flash MX 2004

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 23-01-2008, 15:57   #1 (permalink)
sportl.Geniesser
 
Registriert seit: Jul 2001
Ort: Allschwil, Schweiz
Beiträge: 126
Zufallsbewegungen von Schriften

Liebes Flashforum

Ich hatte die horizontale Zufallsbewegung des Flashforums heruntergeladen und prima einsetzen können. Nun brauch ich nicht nur eine zufällige horizontale Bewegung mit Anlauf und Abbremsung, sondern:

Zufällig:

- horizonzal
- vertikal
- Alpha
- Skalierung

von ca. 7 Schriften (siehe anhang)

Kann mir jemand helfen, da ich mich in Sachen Programmierung nicht so gut mache. Ich kann lediglich ein Script abändern, wenn ich es sehe... Das Teil muss bis morgen Abend stehen...

Viele Grüsse und danke zum Voraus fürs Anschauen.

Patric
Angehängte Grafiken
Dateityp: jpg galerie_eine-reiheKlein.jpg (40,2 KB, 13x aufgerufen)
Patric Simon ist offline   Mit Zitat antworten
Alt 23-01-2008, 16:16   #2 (permalink)
Der Wunderhund
 
Benutzerbild von gaspode
 
Registriert seit: Jun 2002
Ort: Hattingen
Beiträge: 10.485
Zitat:
Zitat von Patric Simon Beitrag anzeigen
Ich hatte die horizontale Zufallsbewegung des Flash-
forums heruntergeladen und prima einsetzen können
Wie sieht denn das dazugehörige Skript aus?

gruß, gaspode
gaspode ist offline   Mit Zitat antworten
Alt 23-01-2008, 16:57   #3 (permalink)
sportl.Geniesser
 
Registriert seit: Jul 2001
Ort: Allschwil, Schweiz
Beiträge: 126
Script dazu

onClipEvent (load) {
// hier verschiedene presets festlegen:
// ************************************
xMax = 380; // größe der bewegungsfläche
yMax = 0;
xMin = -180;
yMin = 0;
alphaMax = 100;
alphaMin = 10;
hispeed = 3; // geschwindigkeit
loSpeed = 1;
traegheit = 0.05; // naja, trägheit halt...

grenzen = this.getBounds (this); // erstellt objekt mit den maßen des clips, brauchen wir für bewegungsbegrenzung
}

onClipEvent (enterFrame) {

// hier wird die richtung geändert ( 2 vektoren verglichen und trägheit berücksichtigt)
// Speed: tatsächliche geschwindigkeit/richtung
// Drive: gewünschte geschwindigkeit/richtung
xSpeed += ( xDrive - xSpeed ) * traegheit;
ySpeed += ( yDrive - ySpeed ) * traegheit;

// wenn die nächste positionierung out of bounds wäre, dann schnell mal die richtung geändert
if ( _x + grenzen.xMax + xSpeed > xMax|| _x + grenzen.xMin + xSpeed < xMin ) {
xSpeed *= -1;
xDrive *= -1;
this._alpha = alphaMax-1;
}
/*
if( _y + grenzen.yMax + ySpeed > yMax || _y + grenzen.yMin + ySpeed < yMin ) {
ySpeed *= -1;
yDrive *= -1;
}
*/
// so, jetzt ist's so weit: einen schritt weiter setzen ( vektor addieren )
_x += xSpeed;
//_y += ySpeed;

// wenn die tatsächliche geschwindigkeit/richtung *fast* gleich der gewünschten ist, dann geschw/richtung ändern
if ( xDrive - xSpeed < 0.1 && xDrive - xSpeed > -0.1 && yDrive - ySpeed < 0.1 && yDrive - ySpeed > -0.1 ) {
do {
xDrive = Math.random () * hiSpeed; // erstmal die geschwindigkeit
xDrive *= ( Math.random () > .5 ) ? 1 : -1; // und dann links (-1) oder rechts (+1)
yDrive = Math.random () * Math.sqrt (Math.pow ( hiSpeed, 2) - Math.pow (xDrive, 2) );
yDrive *= ( Math.random () > .5 ) ? 1 : -1; // oben oder unten
} while ( Math.sqrt ( Math.pow ( xDrive, 2 ) + Math.pow (yDrive, 2 ) ) < lospeed );
}
}
Patric Simon ist offline   Mit Zitat antworten
Alt 23-01-2008, 17:08   #4 (permalink)
Der Wunderhund
 
Benutzerbild von gaspode
 
Registriert seit: Jun 2002
Ort: Hattingen
Beiträge: 10.485
Formatiert sieht es gleich schöner aus:

Code:
    onClipEvent (load) { // hier verschiedene presets festlegen: // ************************************   xMax = 380; // größe der bewegungsfläche   yMax = 0;   xMin = -180;   yMin = 0;   alphaMax = 100;   alphaMin = 10;   hispeed = 3; // geschwindigkeit   loSpeed = 1;   traegheit = 0.05; // naja, trägheit halt...   grenzen = this.getBounds (this); // erstellt objekt mit den maßen des clips, brauchen wir für bewegungsbegrenzung } onClipEvent (enterFrame) {   // hier wird die richtung geändert ( 2 vektoren verglichen und trägheit berücksichtigt)   // Speed: tatsächliche geschwindigkeit/richtung   // Drive: gewünschte geschwindigkeit/richtung   xSpeed += ( xDrive - xSpeed ) * traegheit;   ySpeed += ( yDrive - ySpeed ) * traegheit;   // wenn die nächste positionierung out of bounds wäre, dann schnell mal die richtung geändert   if ( _x + grenzen.xMax + xSpeed > xMax|| _x + grenzen.xMin + xSpeed < xMin ) {     xSpeed *= -1;     xDrive *= -1;     this._alpha = alphaMax-1;   }   if( _y + grenzen.yMax + ySpeed > yMax || _y + grenzen.yMin + ySpeed < yMin ) {     ySpeed *= -1;     yDrive *= -1;   }   // so, jetzt ist's so weit: einen schritt weiter setzen ( vektor addieren )   _x += xSpeed;   _y += ySpeed;   // wenn die tatsächliche geschwindigkeit/richtung *fast* gleich der gewünschten ist, dann geschw/richtung ändern   if ( xDrive - xSpeed < 0.1 && xDrive - xSpeed > -0.1 && yDrive - ySpeed < 0.1 && yDrive - ySpeed > -0.1 ) {     do {       xDrive = Math.random () * hiSpeed; // erstmal die geschwindigkeit       xDrive *= ( Math.random () > .5 ) ? 1 : -1; // und dann links (-1) oder rechts (+1)       yDrive = Math.random () * Math.sqrt (Math.pow ( hiSpeed, 2) - Math.pow (xDrive, 2) );       yDrive *= ( Math.random () > .5 ) ? 1 : -1; // oben oder unten     } while ( Math.sqrt ( Math.pow ( xDrive, 2 ) + Math.pow (yDrive, 2 ) ) < lospeed );   } }

Die x- und y-Bewegungen sind ja schon da.
y war nur auskommentiert.

gruß, gaspode
gaspode ist offline   Mit Zitat antworten
Alt 23-01-2008, 17:21   #5 (permalink)
sportl.Geniesser
 
Registriert seit: Jul 2001
Ort: Allschwil, Schweiz
Beiträge: 126
Danke

Ja, sorry wegen dem unformatierten Text... Danke Dir. OK, jetzt hab ich x und y, doch was für Funktionen erstelle ich für das Alpha und die Skalierung? Die ganzen Sachen sollten sich langsam ändern.

Gruss, Pat
Patric Simon ist offline   Mit Zitat antworten
Alt 24-01-2008, 08:54   #6 (permalink)
sportl.Geniesser
 
Registriert seit: Jul 2001
Ort: Allschwil, Schweiz
Beiträge: 126
Hat jemand eine Antwort?

Lieer Gaspode, liebes Flashforum

Weisst Du/ Wisst Ihr schon mehr bzw. könnt Ihr mir weiterhelfen? Ich bräuchte ein Behavour für Alpha (muss nicht zwingend immer von 100 bis 0 sein) und viceversa sowie Skalierung. Alles zusammen dann also eine Ballung aus Links/Rechts - Auf/Ab Bewegung mit Alphaveränderung und zufälliger Sklaierung (Skalierung sollte bis minimum 20% gehen, dass man die Texte noch lesen kann).

Wäre sehr froh um eine Antwort und danke Dir/Euch sehr für die Hilfe.

Viele liebe Grüsse aus der Schweiz

Patric
Patric Simon 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:44 Uhr.

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


Copyright ©1999 – 2014 Marc Thiele