FLASH ActionScript

Čo je ActionScript

ActionScript je jednoduchý, objektovo orientovaný jazyk vytvorený pre písanie príkazov v  programe Flash. Pomocou ActionScript-u môžeme ovládať jednotlivé objekty v scéne, ovládať prezentáciu ako celok, vytvárať formuláre ale aj volať príkazu iných skriptovacích jazykov, napr.: VBS, PHP, ASP.

Syntax jazyka je podobná JavaScriptu (C, PHP). Písanie skriptov  v tomto jazyku je značne zjednodušené vďaka vývojovému prostrediu panelu Actions (Windows - Actions,  Ctrl+Alt+a). Príkazy sú prehľadne usporiadané do kategórií. Akciu (skript) môžete priradiť objektu (ObjectActions) alebo rámčeku scény (Frame Actions). Pomocou ActionScriptu môžeme riadiť priebeh celého prehrávania.

Ako písať ActionScript

Písanie skriptov môžeme uskutočňovať v dvoch režimoch: Expert Mode (Ctrl+e) a Normal Mode (Ctrl+n).

Šípka vpravo hore sprístupňuje menu pomocou ktorého môžeme pracovať s oknom Actions, prepínať sa medzi Normal a Expert režimom atď.

Ukážme si niektoré užitočne a často používané príkazy ActionScriptu.

Basic Actions -  Go To prehrávanie scény môžeme prepnúť do ľubovoľného rámčeka ľubovoľnej scény
používa sa napr. po stlačení tlačidla na scéne
Play spustenie prehrávania animácie
Stop zastavenie prehrávania animácie
Toggle High Quality  vypne vyhladzovanie hrán objektov na scéne, prehrávanie sa môže urýchliť (ak nestíha procesor)
Stop All sounds zastaví prehrávanie všetkých zvukov
Get URL spôsobí zobrazenie internetovej stránky (alebo odoslanie pošty)
FSCommand tieto príkazy ovládajú vlastnosti animácie vyexportovanej do *.exe formátu, v iných formátoch nemajú zmysel. Využívajú sa napr. pri tvorbe Autorun programov pre CD.
  • fullscreen - povoľuje/zakazuje maximalizovanie okna
  • allowscale - povoľuje/zakazuje zmenu animácie spolu so zmenou okna
  • showmenu - povoľuje/zakazuje zobrazenie lištu s príkazmi pre ovládanie animácie v hornej časti okna
  • trapallkeys - povoľuje/zakazuje klávesové skratky na ovládanie okna prehliadača
  • exec - umožní spustiť externý program, stačí zadať cestu
  • quit - zatvorí okno prehliadača
Load Movie spôsobí nahranie inej animácie (externý súbor *.swf) do našej animácie
Unload Movie odstránenie nahraného súboru
Tell Target ovládanie ľubovoľného objektu v animácii, priradenie akcie konkrétnemu objektu
If Frame is Loaded  testuje, či sa už nahral konkrétny rámček animácie (pomocou neho môžeme ovládať napr. preloader)
On Mouse Event definujeme chovanie tlačidla v scéne podľa toho, čo bolo stlačené (myškou, alebo na klávesnici)

 

Ovládanie movie clipu

A teraz si vytvorme jednoduchú animáciu, v ktorej si ukážeme použitie niektorých uvedených častí ActionScriptu.

Vytvorte si scénu podľa obrázku. Z knižnice "Buttons" vložte tri tlačidlá, z knižnice "Movie Clips" vložte animáciu rybičky. Nezabudnite si inštanciu rybičky vhodne pomenovať, napr.: "rybka" (okno Instance). Jednotlivým tlačidlám potom priraďte nasledovné akcie:

 

tlačidlo "Play":
Po stlačení (release) "osloví" objekt - movie clip "rybka" a spustí jeho prehrávanie. Po stlačení klávesu "a" (keyPress) sa otvorí (_blank) nové okno web prehliadača a zobrazí sa stránka na adrese www.gjar-po.sk.

 

tlačidlo "Stop":
Po stlačení sa prehrávanie movie clipu rybka presunie na jeho prvý snímok a zastaví sa.
tlačidlo "Pause":
Po stlačení sa prehrávanie movie clipu rybka zastaví na aktuálnom snímku.
on (release)
{
 tellTarget ("rybka")
 {
  play ();
 }
}
on (keyPress "a")
{
 getURL ("http://www.gjar-po.sk", "_blank");
}
on (release)
{
 tellTarget ("rybka")
 {
  gotoAndPlay (1);
  stop ();
 }
}
on (release)
{
 tellTarget ("rybka")
 {
  stop ();
 }
}

Kombinovať môžete aj viac funkcií pre jedno tlačidlo (napr.: spustenie alebo zastavenie prehrávania hudby). Výsledok si môžete pozrieť tu, alebo si pozrite priklad0.fla.

 

Zmena vlastností objektu

Pomocou Action Scriptu môžeme veľmi jednoducho meniť vlastnosti objektu na scéne (farba, viditeľnosť, pozícia ...). Z okna Actions budeme využívať aj kategóriu Actions, konkrétne "setProperty". Vytvorte si scénu, ktorá bude vyzerať nasledovne:

    V scéne sú umiestnené tlačidlá na zmenu x-ovej súradnice objektu. Kruh uprostred je movie clip. Nič síce neanimuje, ale inštancii movie clipu môžeme priradiť meno, na ktoré sa budú naše skripty odvolávať, v našom prípade sa volá "kruh".

V prvom rámčeku našej scény nastavíme počiatočné hodnoty premenných a umiestnime objekt na začiatočnú pozíciu. Premenná x reprezentuje hodnotu pozície stredu objektu kruh (je v podstate jedno kam kruh na scéne umiestnite, setProperty ho posunie do stredu scény).
x = 150;
setProperty ("kruh", _y, "150");
setProperty ("kruh", _x, x);

Tlačidlo (šípka vľavo) má definované akciu:
on (release)
{
 if (x>50)
 {
  x = x - 10;
  setProperty ("kruh", _x, x);
 }
}
Po stlačení sa testuje hodnota premennej x (či je možné posunúť kruh doľava, aby nevybehol mimo scény). Ak áno, hodnota premennej x sa zníži o 10 a nastaví sa nová súradnica objektu "kruh".

Analogicky vyzerá skript pre pravé tlačidlo:
on (release)
{
 if (x<250)
 {
  x = x + 10;
  setProperty ("kruh", _x, x);
 }
}

 A takto vyzerá výsledok a zdrojový súbor priklad1.fla.