Anzeige
Tutorialbeschreibung

Flash Grundlagen Teil 7 Actionscript

Flash Grundlagen Teil 7 Actionscript

Hallo Leute, hier gibts den 7. Teil meiner Grundlagen Tutorials für Flash.

Diesmal gehts wieder um Actionscript.

Ich arbeite hier ausschließlich mit Macromedia Flash 8 Professional.

Also ist mein Actionscript auch AS2, auch wenn es schon eine neuere Version von AS gibt (AS3).

Dies um Verwirrung zu vermeiden.


Fangen wir gleich an,

Zuerst öffen wir ein neues Dokument, und stellen die Bildrate auf 30.
Nun zeichnen wir mit dem Ellipsenwerkzeug einen schwarzen Kreis, der ca. 35px breit und hoch ist.
Jetzt konvertieren wir ihn zu einem mc, indem wir den ganzen Kreis anstreichen und F8 drücken.
Im darauf folgenden Fenster könnt ihr den Inhalt des mc´s optional in die Mitte ausrichten, und klickt dann auf OK.
Jetzt wählt den mc an und drückt STRG+C um ihn zu kopieren.
Fügt ihn jetzt mehrmals ein damit ihr nachher viele Kreise habt die sich bewegen.

Geht jetzt in dem mc rein.
Macht nochmal einen mc aus dem Kreis geht diesmal aber nicht in dem mc.
Nun wenden wir noch einen kleinen Filtereffekt an und zwar den Verwischen Filter.
Öffnet die Filter über Fenster --> Eigenschaften --> Filter. (Bild)
Bilder



Wählt den mc an und jetzt legen auf den mc einen Filter, den Verwischenfilter. (Englisch Blur)
Geht auf in den Eigenschaften auf Filter, und klickt auf das Plus und dort steht dann als 6. der Verwischen Filter. (Bild)
Bilder


Hier seht ihr die Einstellungen.
Im Hintergrund kann man noch so ungefähr erkennen wie viele mc´s ich gemacht habe.
Die Position ist übrigens egal, da wir sie über AS bestimmen werden.

Nun zum AS.

zuerst bestimmen wir die mc´s auf eine zufällige Position.
Wie die Meisten schon wissen, wird die Position mit _x und _y bestimmt.
Wenn man einen zufälligen Wert bestimmen möchte, braucht man random()
also schreiben wir:

_x = random(550);
_y = random(400);

Dadurch das es jetzt im jeden mc steht und im jedem mc auch ein anderer Wert bestimmt wurde, kommen die mc´s nicht unbedingt auf die gleiche Stelle, und selbst wenn ist das sehr unwahrscheinlich.
Jetzt wollen wir jedem mc auch noch eine zufällige Größe geben.
Das geht auch wieder mit random() und diesmal mit _xscale und _yscale.
Diese beiden Werte bestimmen die Größe des mc´s in Prozent. Also 100% ist normalgröße und 50% nur die Hälfte.
Also so:

_xscale = random(150);
_yscale = _xscale;

damit der Kreis auch rund wird muss die Höhe der Breite gleich angepasst werden, also _yscale = _xscale; .
unser bisheriges Skript:


_x = random(550);
_y = random(400);
_xscale = random(150);
_yscale = _xscale;

Jetzt kommen noch 2 Variablen dazu, die die Beschleunigung bestimmen sollen, x und y.
Diese bekommen auch wieder einen zufälligen Wert, damit sich jeder mc einzeln schnell bewegt:

x = random(5);
y = random(5);

Jetzt kommt alles im oef (onEnterFrame).
Dort passieren alle Bewegungen und der bounce effekt.
zuerst schreiben wir die Bewegung.
Wir haben _x und x. _y und y.
Wir wollen diese Werte verändern, und zwar ständig.
Da es dann im oef passiert, passiert es ständig.

also:

_x = _x +x;
 _y = _y +y;

wenn _x gleich _x plus x ist, dann werden die Werte immer höher und dementsprechend bewegt sich der mc auch.
Also wenn x zb 5 ist, dann wird _x zuerst 5 dann 10 dann 15 usw, die Veränderung ist aber nicht so groß das man meint der mc springt zu einer weit entfernten Position, auch wenn sie immer wieder neu bestimmt wird.

Jetzt kommt noch der bounce effekt.
Den machen wir mit if().
if() ist eine funktion mit nur einem Parameter, dieser erfordert eine Bedingung, wenn die erfüllt ist, dann wird die Funktion ausgeführt die wir dafür erstellt haben.
also z.B. Wenn der mc über 550 px geht. dann soll die Geschwindikgeit umgekehrt werden, sodass der mc in die andere Richtung zurück geht.

das sieht dann so aus:

if(_x > 550){
    _x = 550;
     x = -x;
}


x gleich -x ist sozusagen das umgehkerte, das die Werte dann wieder zurückgehen:  550 dann 545 dann 540 usw.
Das machen wir jetzt mit allen Seiten.
Zur Kontrolle ist hier das gesamte Skript nocheinmal:

_x = random(55);
_y = random(40);
x = random(5);
y = random(5);
_xscale = random(150);
_yscale = _xscale;
onEnterFrame = function(){
    _x = _x +x;
    _y = _y +y;

    if(_x < 0 ){
         _x = 0;
        x = -x;
    }
    if(_x > 550){
        _x = 550;
        x = -x;
    }
    if(_y < 0 ){
         _y = 0;
        y = -y;
    }
    if(_y > 400){
        _y = 400;
        y = -y;
    }
}

Jetzt kommt nur noch eine Funktion hinzu.
Die RollOver funktion. (Wenn man mit der Maus über den mc fährt)

Wir bestimmen mit dem RollOver 4 Werte neu.
1. x
2. y
3. _xscale
4. _yscale

Das wird dann so aussehen:

onRollOver = function(){
    x = random(20);
    y = random(20);
    _xscale = random(150);
    _yscale = _xscale;
}

Für alle die jetzt noch irgendeinen Fehler haben:

1. Das Skript kommt in den ersten mc in der Bibliothek wird er wahrscheinlich Symbol 1 heißen, wenn ihr ihn nicht umbenannt habt.
2. Das Skript kommt in die Zeitleiste, nicht auf den mc.

3. So sieht das ganze Skript aus:

_x = random(55);
_y = random(40);
x = random(5);
y = random(5);
_xscale = random(150);
_yscale = _xscale;
onEnterFrame = function(){
    _x = _x +x;
    _y = _y +y;

    if(_x < 0 ){
         _x = 0;
        x = -x;
    }
    if(_x > 550){
        _x = 550;
        x = -x;
    }
    if(_y < 0 ){
         _y = 0;
        y = -y;
    }
    if(_y > 400){
        _y = 400;
        y = -y;
    }
}
onRollOver = function(){
    x = random(20);
    y = random(20);
    _xscale = random(150);
    _yscale = _xscale;
}

So siehts aus:




Ihr könnt mal alle Werte verändern, und gucken was rauskommt. ;-)
Aber nicht die mc´s zu groß machen, da das sonst an die Performance geht..

Das wars dann auch schon wieder.
Hoffe Ihr habt alles verstanden, und freu mich über ein Feedback.
Bei wichtigen Fragen bitte eine PM an mich...

;-)

WAER

DVD-Werbung
Kommentare
Achtung: Du kannst den Inhalt erst nach dem Login kommentieren.
Portrait von gatonegro
  • 10.09.2011 - 18:32

Hallo! Ich habe nicht verstanden, ob ich doch etwas auf dem mc schreiben soll. Es gibt nur ein Script.Oder gibt es doch zwei?
"1. Das Skript kommt in den ersten mc in der Bibliothek wird er wahrscheinlich Symbol 1 heißen, wenn ihr ihn nicht umbenannt habt.
2. Das Skript kommt in die Zeitleiste, nicht auf den mc."

Portrait von schoeffmann
  • 09.03.2011 - 21:04

Danke dir! Super gemacht! Ich hab so lang gesucht Lernmaterial für das Thema. Und bei dir gefunden. Sehr hilfreich.

Portrait von Belearas
  • 11.02.2011 - 14:12

Deine Tuts sind sehr gut, ich selbst habe CS5, also funktioniert nicht alles so wie es bei dir aussieht, aber
ich verstehe um was es geht.

Schreibe doch einfach dazu, bei versionsunterschieden kann.. blabla.


Weiter so!

lG

Portrait von gundleyG
  • 11.01.2011 - 02:17

Hi, wie schon bei den vorangegangenen Folgen - mit CS5/AS3 ist da rein gar nichts zu machen. Also für die "Ich kopier mir mal was hübsches-Fraktion" ist das nichts.

AAAber: es ist alles so beschrieben, dass mit etwas AS Kenntnis und Deinen Erklärungen das Prinzip klar wird.

Mir bleibt nur zu wünschen, dass es irgendwann ein paar mehr Tuts gibt, die nicht auf dem Erstkontakt - Niveau kleben bleiben.

Ich werde mir jedenfalls die weiteren Folgen ansehen...

Alternative Portrait

-versteckt-(Autor hat Seite verlassen)

  • 20.09.2010 - 10:35

Tut mir leid, aber ich bin mit dem Tutorial überhaupt nicht zurecht gekommen :/ schade.

Portrait von Tsukikage
  • 18.09.2010 - 13:46

ich fand das tutorial auch nicht 100%ig einsteigergeeignet. ich nehme an, die meisten leute, die hier eine gute bewertung abgegeben haben, kennen zumindest schon ein paar grundlagen. ich habe von as überhaupt keine ahnung und war auf der suche nach einem tutorial, um das zu lernen.
die formulierungen im tutorial waren teilweise nicht sehr glücklich gewählt (u.a. wegen grammatikfehlern) und daher etwas schwer zu verstehen, teilweise wäre ich froh gewesen, wenn die einzelnen befehle noch genauer erklärt worden wären, was sie ganz genau bedeuten, etc.
dafür also 3 sterne, weil es sicher gut geeignet ist für leute, die schon ein bisschen was können. mir hat es leider nicht viel weiter geholfen.

Portrait von crusher_shorty
  • 30.06.2010 - 12:01

is ne coole sache ..thx für diesen Flash! :D

Portrait von putzili2609
  • 16.12.2009 - 22:12

Hey Ho das FLASHed! THX

Portrait von JuMee
  • 06.11.2009 - 14:47

Find ich echt super!!!
Danke :)

Portrait von Damon
  • 27.10.2009 - 17:09

Echt geil! sowas wollt ich schon immer mal machen xD

Portrait von paul_schmidt
  • 22.07.2009 - 02:09

Super wie immer. Freu mich schon auf das nächste Tut.
Gruß
Paul

Portrait von KaiB78
  • 19.05.2009 - 22:07

Danke, gut erklärt. Langsam steig ich hinter :)

Portrait von Kavita
  • 25.03.2009 - 08:58

Vielen Dank. Das macht wirklich Spaß!

Portrait von Morano
  • 17.03.2009 - 13:48

Danke für die Erklärungen!

Portrait von Paule19
  • 16.03.2009 - 19:08

Echt tolles Tutorial, sogar für mich Newbie verständlich ;D

Portrait von suslik87
  • 10.02.2009 - 15:25

Auch eine gute einführung...

Portrait von LRG

LRG

  • 06.02.2009 - 13:57

hat bisschen länger gedauert mit "IN" dem MC aber habs auch hier wieder geschafft ;)

Portrait von Nerevar25
  • 20.01.2009 - 17:16

gut erklärt, danke. :)

Portrait von panji
  • 18.01.2009 - 16:28

danke, vorallem der bounce effekt war super erklärt :)

Portrait von waer
  • 04.07.2008 - 15:50

Was solls da für ne bedeutung geben. Wenn du in einem mc ein mc hast kannst du ihn wiederrum animieren ohne auf der Hauptzeitleiste etwas zu machen!
Ja ich muss zugeben ich versteh hier selber nicht mehr was ihr wollt :D

x
×
×