Zurück   Flashforum > Flash > ActionScript > ActionScript 1

Antwort
 
LinkBack Themen-Optionen Ansicht
Alt 02-08-2004, 08:56   #1 (permalink)
Neuer User
 
Registriert seit: Jun 2004
Beiträge: 4
AS-Problem - Hilfe gesucht

Hallo,

ich hab´s schon mal an anderer Stelle gepostet aber da hatte wohl keiner eine Lösung: ich möchte für ein Flashgame ein Script verwenden, dass ich auf Flashkit.com gefunden habe. Das Script erzeugt dynamisch ein 3D-Starfield, die x-Achsenbewegung der Maus bewirkt eine horizontale Bewegung des Starfields, die y-Achsenbewegung der Maus steuert die Geschwindigkeit der Starfields. Was ich benötige (aber nicht hinkriege :-( ):
das Starfield soll auch eine vertikale Bewegung haben, die durch die y-Bewegung der Maus gesteuert wird. Die Geschwindigkeit des Starfields soll statt dessen über eine Variable gesteuert werden. Vielleicht hat jemand die Lösung? Wäre super! Die .fla ist angehängt.
Danke & viele Grüsse!!!
Angehängte Dateien
Dateityp: zip Real_3D_-Terry_Ki-850.zip (5,9 KB, 6x aufgerufen)
easy5 ist offline   Mit Zitat antworten
Alt 02-08-2004, 10:15   #2 (permalink)
Level up
 
Benutzerbild von Alois
 
Registriert seit: Jun 2001
Ort: Bocholt
Beiträge: 4.155
Hallo,
als erstes mal, das ist ein Flash4-script, das ist eigentlich ein viel zu komplizierter Aufbau, das geht in reinem mx-scripting wesentlich einfacher.
...aber nun gut man kanns auch so bearbeiten, nötige Änderungen:
im mc 'starfield' frame2:
ActionScript:
  1. zinc =_root.zvariable;//denn Wert für die z-Bewegung setzt Du dann in _root.zvariable
  2. yinc = (150-getProperty("/mousexy", _y))/4;
  3. xinc = (250-getProperty("/mousexy", _x))/4;
  4. call("calc3d");
und in frame4:
ActionScript:
  1. ...
  2. x = eval(starinst add ":sx");
  3.     x = Number(x)+Number(xinc);
  4.     if (Number(x)<Number(-1000)) {
  5.         x = Number(x)+2000;
  6.     } else if (Number(x)>1000) {
  7.         x = x-2000;
  8.     }
  9.     set(starinst add ":sx", x);
  10.     y = eval(starinst add ":sy");
  11.     //ab hier hab ich zusätzlich eingefügt:
  12.     y = Number(y)+Number(yinc);
  13.     if (Number(y)<Number(-500)) {
  14.         y = Number(y)+1000;
  15.     } else if (Number(y)>500) {
  16.         y = y-1000;
  17.     }
  18.     set(starinst add ":sy", y);
  19.     //und hier ist schon fertig
  20.     per = dist/z;
  21.     setProperty(starinst, _x, x*per);
  22.     setProperty(starinst, _y, y*per);
  23.     setProperty(starinst, _xscale, starwidth*per);
  24.     setProperty(starinst, _yscale, starheight*per);
  25.     set(starinst add ":sz", z);
  26.     set(starinst add ":distance", int(z/20));
  27. ...

Gruß

Alois
__________________
-Spuckt mir auf den Stuhl, ich will im Grünen sitzen-

Geändert von Alois (02-08-2004 um 10:16 Uhr)
Alois ist offline   Mit Zitat antworten
Alt 02-08-2004, 14:33   #3 (permalink)
Neuer User
 
Registriert seit: Jun 2004
Beiträge: 4
nt

Danke!!! Werd´s gleich mal austesten
easy5 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 04:56 Uhr.

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


Copyright ©1999 – 2012 Marc Thiele