Π§ΠΈΡ‚Π°ΠΉΡ‚Π΅ ΠΊΠ½ΠΈΠ³ΠΈ ΠΎΠ½Π»Π°ΠΉΠ½ Π½Π° Bookidrom.ru! БСсплатныС ΠΊΠ½ΠΈΠ³ΠΈ Π² ΠΎΠ΄Π½ΠΎΠΌ ΠΊΠ»ΠΈΠΊΠ΅

Π§ΠΈΡ‚Π°Ρ‚ΡŒ ΠΎΠ½Π»Π°ΠΉΠ½ Β«Macromedia Flash Professional 8. Π“Ρ€Π°Ρ„ΠΈΠΊΠ° ΠΈ анимация». Π‘Ρ‚Ρ€Π°Π½ΠΈΡ†Π° 98

Автор Π’. Π”Ρ€ΠΎΠ½ΠΎΠ²

ИспользованиС Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠ²

Π’ΠΎ ΠΌΠ½ΠΎΠ³ΠΈΡ… случаях Π½ΡƒΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ ΠΊΠ°ΠΊΠΎΠ΅-Π»ΠΈΠ±ΠΎ дСйствиС Ρ‡Π΅Ρ€Π΅Π· Ρ€Π°Π²Π½Ρ‹Π΅ ΠΏΡ€ΠΎΠΌΠ΅ΠΆΡƒΡ‚ΠΊΠΈ Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ. Π­Ρ‚ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡ‚ΡŒΡΡ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, для создания Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ сцСнариСв ActionScript ΠΈΠ»ΠΈ для обновлСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, взятой с ΡƒΠ΄Π°Π»Π΅Π½Π½ΠΎΠ³ΠΎ сСрвСра. Для Ρ‚Π°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡ Π²ΠΎ Flash прСдусмотрСны Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹. ΠŸΠΎΠ³ΠΎΠ²ΠΎΡ€ΠΈΠΌ ΠΎ Π½ΠΈΡ….

Π’Π°ΠΉΠΌΠ΅Ρ€ создаСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ дСйствия setinterval. Оно ΠΈΠΌΠ΅Π΅Ρ‚ Π΄Π²Π° Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π° Π²Ρ‹Π·ΠΎΠ²Π°. Π’ΠΎΡ‚ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΈΠ· Π½ΠΈΡ…:

<ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ> = setinterval(<Ѐункция>, <Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π°>

[, <Бписок ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… запятыми>]);

Π—Π΄Π΅ΡΡŒ Π² качСствС ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² пСрСдаСтся функция, которая Π±ΡƒΠ΄Π΅Ρ‚ Π²Ρ‹Π·Ρ‹Π²Π°Ρ‚ΡŒΡΡ ΠΏΠΎ истСчСнии ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π° Π²Ρ€Π΅ΠΌΠ΅Π½ΠΈ, ΠΈ само Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ этого ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π° Π² миллисСкундах. Π’Π°ΠΊΠΆΠ΅ Π² Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ Π²Ρ‹Π·ΠΎΠ²Π° ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΡ€ΠΈΡΡƒΡ‚ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒ Π½Π΅ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€Ρ‹, Π·Π°Π΄Π°ΡŽΡ‰ΠΈΠ΅ значСния ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² Π²Ρ‹Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ; ΠΈΡ… Π΄ΠΎΠ»ΠΆΠ½ΠΎ Π±Ρ‹Ρ‚ΡŒ ΡΡ‚ΠΎΠ»ΡŒΠΊΠΎ, сколько ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°Π΅Ρ‚ эта функция.

А Π²ΠΎΡ‚ Π²Ρ‚ΠΎΡ€ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π²Ρ‹Π·ΠΎΠ²Π° дСйствия setinterval:

<ΠŸΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½Π°Ρ> = setintervai(<ЭкзСмпляр ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°>, <ΠœΠ΅Ρ‚ΠΎΠ΄ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π°>,

<Π—Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Π°>

[, <Бписок ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² ΠΌΠ΅Ρ‚ΠΎΠ΄Π°, Ρ€Π°Π·Π΄Π΅Π»Π΅Π½Π½Ρ‹Ρ… запятыми>]);

Он отличаСтся Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ вмСсто Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ здСсь пСрСдаСтся экзСмпляр ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΈ Π΅Π³ΠΎ ΠΌΠ΅Ρ‚ΠΎΠ΄.

Π’ любом случаС дСйствиС setinterval Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ особый ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π² дальнСйшСм Π±ΡƒΠ΄Π΅Ρ‚ использован для Π΅Π³ΠΎ уничтоТСния.

ΠŸΡ€ΠΈΠ²Π΅Π΄Π΅ΠΌ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ, ΡΠΎΠ·Π΄Π°ΡŽΡ‰ΠΈΡ… Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹:

timerlDl = setintervai(tick, 1000);

timerID2 = setintervai(car, moveBy, 100, d);

ΠŸΠ΅Ρ€Π²ΠΎΠ΅ Π²Ρ‹Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ создаСт Ρ‚Π°ΠΉΠΌΠ΅Ρ€, Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ tick ΠΊΠ°ΠΆΠ΄ΡƒΡŽ сСкунду (1000 миллисСкунд). Π’Ρ‚ΠΎΡ€ΠΎΠ΅ ΠΆΠ΅ создаСт Ρ‚Π°ΠΉΠΌΠ΅Ρ€, Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ 100 миллисСкунд ΠΌΠ΅Ρ‚ΠΎΠ΄ moveBy экзСмпляра ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° car ΠΈ ΠΏΠ΅Ρ€Π΅Π΄Π°ΡŽΡ‰ΠΈΠΉ Π΅ΠΌΡƒ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ d. РазумССтся, ΠΈ функция tick, ΠΈ ΠΌΠ΅Ρ‚ΠΎΠ΄ moveBy Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Ρ‹ ΠΏΡ€Π΅ΠΆΠ΄Π΅, Ρ‡Π΅ΠΌ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Π½Ρ‹.

ΠŸΡ€ΠΈ использовании Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠ² Π½ΡƒΠΆΠ½ΠΎ ΠΈΠΌΠ΅Ρ‚ΡŒ Π² Π²ΠΈΠ΄Ρƒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅. Π”Π΅Π»ΠΎ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Flash отмСряСт ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π»Ρ‹ Π½Π΅ ΠΎΡ‡Π΅Π½ΡŒ Ρ‚ΠΎΡ‡Π½ΠΎ. Он пытаСтся ΠΏΡ€ΠΈΠ²ΡΠ·Π°Ρ‚ΡŒ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» ΠΊ частотС ΠΊΠ°Π΄Ρ€ΠΎΠ² Ρ„ΠΈΠ»ΡŒΠΌΠ°, Ссли, ΠΊΠΎΠ½Π΅Ρ‡Π½ΠΎ, это Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ. Если ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» мСньшС частоты ΠΊΠ°Π΄Ρ€ΠΎΠ², Ρ‚ΠΎ ΠΎΠ½ обрабатываСтся с максимальной Ρ‚ΠΎΡ‡Π½ΠΎΡΡ‚ΡŒΡŽ, ΠΈ ΠΊΠΎΠ΄ вызываСтся воврСмя. Если ΠΆΠ΅ ΠΈΠ½Ρ‚Π΅Ρ€Π²Π°Π» большС частоты ΠΊΠ°Π΄Ρ€ΠΎΠ², Ρ‚ΠΎ ΠΊΠΎΠ΄, связанный с Ρ‚Π°ΠΉΠΌΠ΅Ρ€ΠΎΠΌ, исполняСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‚ΠΎΠ³Π΄Π°, ΠΊΠΎΠ³Π΄Π° Flash воспроизводит ΠΎΡ‡Π΅Ρ€Π΅Π΄Π½ΠΎΠΉ ΠΊΠ°Π΄Ρ€ Ρ„ΠΈΠ»ΡŒΠΌΠ°. Π­Ρ‚ΠΎ сдСлано для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ лишний Ρ€Π°Π· Π½Π΅ ΠΏΠ΅Ρ€Π΅Ρ€ΠΈΡΠΎΠ²Ρ‹Π²Π°Ρ‚ΡŒ экран, Ссли ΠΊΠΎΠ΄ Ρ‡Ρ‚ΠΎ-Ρ‚ΠΎ ΠΈΠ·ΠΌΠ΅Π½ΠΈΡ‚ Π² ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΈ.

Если ΠΆΠ΅ Π½ΡƒΠΆΠ½ΠΎ ΠΎΠ±Π½ΠΎΠ²ΠΈΡ‚ΡŒ экран прямо сСйчас, слСдуСт Π²Ρ‹Π·Π²Π°Ρ‚ΡŒ Π½Π΅ ΠΏΡ€ΠΈΠ½ΠΈΠΌΠ°ΡŽΡ‰Π΅Π΅ ΠΏΠ°Ρ€Π°ΠΌΠ΅Ρ‚Ρ€ΠΎΠ² дСйствиС updateAfterEvent. Оно часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ ΠΏΡ€ΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ΠΈΠΈ сцСнариСв, ΠΈΠ·ΠΌΠ΅Π½ΡΡŽΡ‰ΠΈΡ… содСрТимоС Ρ€Π°Π±ΠΎΡ‡Π΅Π³ΠΎ листа.

ПослС Ρ‚ΠΎΠ³ΠΎ ΠΊΠ°ΠΊ Π½ΡƒΠΆΠ΄Π° Π² Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π΅ ΠΎΡ‚ΠΏΠ°Π΄Π΅Ρ‚, Π΅Π³ΠΎ слСдуСт ΡƒΠ½ΠΈΡ‡Ρ‚ΠΎΠΆΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΎΡΠ²ΠΎΠ±ΠΎΠ΄ΠΈΡ‚ΡŒ систСмныС рСсурсы. Для этого ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ дСйствиС clearinterval, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΠΈΠΌΠ΅Π΅Ρ‚ Ρ‚Π°ΠΊΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ Π²Ρ‹Π·ΠΎΠ²Π°:

clearinterval(<Π˜Π΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°>);

НапримСр:

clearinterval(timerID2);

А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ рассмотрим ΠΏΡ€ΠΈΠΌΠ΅Ρ€, ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ Ρ‚Π°ΠΉΠΌΠ΅Ρ€ для создания Ρ‚Π°ΠΊ Π½Π°Π·Ρ‹Π²Π°Π΅ΠΌΠΎΠ³ΠΎ "Π»Π΅Π½ΠΈΠ²ΠΎΠ³ΠΎ" курсора ΠΌΡ‹ΡˆΠΈ. ΠžΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ курсор ΠΌΡ‹ΡˆΠΈ Π½ΠΈΠ³Π΄Π΅ Π½Π°Π΄ΠΎΠ»Π³ΠΎ Π½Π΅ задСрТиваСтся β€” ΠΎΠ½ ΡΠΏΠ΅ΡˆΠΈΡ‚ Π·Π° Π½Π΅ΠΉ сразу послС малСйшСго Π΅Π΅ пСрСмСщСния. "Π›Π΅Π½ΠΈΠ²Ρ‹ΠΉ" ΠΆΠ΅ курсор отличаСтся ΠΎΡ‚ ΠΎΠ±Ρ‹Ρ‡Π½ΠΎΠ³ΠΎ Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ Π½ΠΈΠΊΠΎΠ³Π΄Π° Π½Π΅ торопится Π·Π° ΠΌΡ‹ΡˆΡŒΡŽ. Π”Π°Π²Π°ΠΉΡ‚Π΅ ΠΆΠ΅ сдСлаСм Ρ‚Π°ΠΊΠΎΠΉ курсор.

ΠŸΡ€Π΅ΠΆΠ΄Π΅ всСго, создадим Π½ΠΎΠ²Ρ‹ΠΉ ΠΎΠ±Ρ€Π°Π·Π΅Ρ†-ΠΊΠ»ΠΈΠΏ ΠΈ нарисуСм Π² Π½Π΅ΠΌ ΠΆΠ΅Π»Π°Π΅ΠΌΡ‹ΠΉ курсор. ΠŸΠΎΡΡ‚Π°Ρ€Π°Π΅ΠΌΡΡ Π½Π°Ρ€ΠΈΡΠΎΠ²Π°Ρ‚ΡŒ Π΅Π³ΠΎ Ρ‚Π°ΠΊ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Ρ‚ΠΎΡ‡ΠΊΠ° отсчСта ΠΏΡ€ΠΈΡˆΠ»Π°ΡΡŒ ΠΊΠ°ΠΊ Ρ€Π°Π· Π½Π° "остриС" этого курсора. ΠŸΠΎΠΌΠ΅ΡΡ‚ΠΈΠΌ экзСмпляр этого ΠΎΠ±Ρ€Π°Π·Ρ†Π°-ΠΊΠ»ΠΈΠΏΠ° Π½Π° Ρ€Π°Π±ΠΎΡ‡ΠΈΠΉ лист ΠΈ Π½Π°Π·ΠΎΠ²Π΅ΠΌ Π΅Π³ΠΎ cursor.

Π’Π΅ΠΏΠ΅Ρ€ΡŒ напишСм ΠΊΠΎΠ΄ сцСнария, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±ΡƒΠ΄Π΅Ρ‚ привязан ΠΊ ΠΏΠ΅Ρ€Π²ΠΎΠΌΡƒ ΠΊΠ°Π΄Ρ€Ρƒ Ρ„ΠΈΠ»ΡŒΠΌΠ°. Π”Π°Π²Π°ΠΉΡ‚Π΅ рассмотрим Π΅Π³ΠΎ ΠΏΠΎ частям.

function tick() {

if (_root.cursor._x!= _root._xmouse) {

if (_root.cursor._x < _root._xmouse) {

if (_root._xmouse β€” _root.cursor._x < d) {

_root.cursor._x = _root._xmouse;

} else {

_root.cursor._x += d;

}

} else {

if (_root.cursor._x β€” _root._xmouse < d) {

_root.cursor._x = _root._xmouse;

} else {

_root.cursor._x β€” = d;

}

}

}

if (_root.cursor._y!= _root._ymouse) {

if (_root.cursor._y < _root._ymouse) {

if (_root._ymouse β€” _root.cursor._y < d) {

_root.cursor._y = _root._ymouse;

} else {

_root.cursor._y += d;

}

} else {

if (_root.cursor._y β€” _root._ymouse < d) {

_root.cursor._y = _root._ymouse;

} else {

_root.cursor._Ρƒ β€” = d;

}

}

}

updateAfterEvent();

}

ΠœΡ‹ объявили Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ, Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‰ΡƒΡŽ ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠ΅ "Π»Π΅Π½ΠΈΠ²ΠΎΠ³ΠΎ" курсора. Она сравниваСт ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹, Π³ΠΎΡ€ΠΈΠ·ΠΎΠ½Ρ‚Π°Π»ΡŒΠ½ΡƒΡŽ ΠΈ Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΡƒΡŽ, курсора ΠΈ ΠΌΡ‹ΡˆΠΈ ΠΈ выполняСт ΠΏΡ€ΠΈΡ€Π°Ρ‰Π΅Π½ΠΈΠ΅ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚ курсора. НуТно ΠΎΡ‚ΠΌΠ΅Ρ‚ΠΈΡ‚ΡŒ, Ρ‡Ρ‚ΠΎ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ ΠΌΡ‹ΡˆΠΈ ΠΏΡ€ΠΈ этом ΠΎΡ‚ΡΡ‡ΠΈΡ‚Ρ‹Π²Π°ΡŽΡ‚ΡΡ ΠΎΡ‚Π½ΠΎΡΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ основного Ρ„ΠΈΠ»ΡŒΠΌΠ°.

ΠŸΡ€ΠΎΠ΄ΠΎΠ»ΠΆΠ°Π΅ΠΌ ΠΏΠΈΡΠ°Ρ‚ΡŒ наш сцСнарий:

d = 25;

Π­Ρ‚ΠΎ Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Π° приращСния, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π±ΡƒΠ΄ΡƒΡ‚ ΠΈΠ·ΠΌΠ΅Π½ΡΡ‚ΡŒΡΡ ΠΊΠΎΠΎΡ€Π΄ΠΈΠ½Π°Ρ‚Ρ‹ курсора. И Π΄Π°Π»Π΅Π΅:

ctID = setlnterval(tick, 50);

Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ создаСм Ρ‚Π°ΠΉΠΌΠ΅Ρ€, Π²Ρ‹Π·Ρ‹Π²Π°ΡŽΡ‰ΠΈΠΉ Ρ„ΡƒΠ½ΠΊΡ†ΠΈΡŽ tick ΠΊΠ°ΠΆΠ΄Ρ‹Π΅ 50 миллисСкунд.

И, Π½Π°ΠΊΠΎΠ½Π΅Ρ†:

_root.onUnload = function() {

clearinterval(ctID);

}

А здСсь ΠΌΡ‹ привязываСм ΠΊ ΡΠΎΠ±Ρ‹Ρ‚ΠΈΡŽ unload ΠΊΠ»ΠΈΠΏΠ° cursor ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ, ΡƒΠ΄Π°Π»ΡΡŽΡ‰ΠΈΠΉ созданный Ρ€Π°Π½Π΅Π΅ Ρ‚Π°ΠΉΠΌΠ΅Ρ€. Π£Π΄Π°Π»ΡΡ‚ΡŒ Π·Π° собой Π·Π°Ρ‚Ρ€Π΅Π±ΠΎΠ²Π°Π½Π½Ρ‹Π΅ для своих Π½ΡƒΠΆΠ΄ рСсурсы, Ρ‚Π΅ ΠΆΠ΅ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Ρ‹, β€” Ρ…ΠΎΡ€ΠΎΡˆΠΈΠΉ ΡΡ‚ΠΈΠ»ΡŒ программирования.

Если ΡƒΠΆ зашла Ρ€Π΅Ρ‡ΡŒ ΠΎ Ρ‚Π°ΠΉΠΌΠ΅Ρ€Π°Ρ…, Ρ‚ΠΎ Π½Π°ΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΏΡ€ΠΈΠ³ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ функция getTimer. Она Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ количСство миллисСкунд, ΠΏΡ€ΠΎΡˆΠ΅Π΄ΡˆΠΈΡ… с ΠΌΠΎΠΌΠ΅Π½Ρ‚Π°, ΠΊΠΎΠ³Π΄Π° Ρ„ΠΈΠ»ΡŒΠΌ Π½Π°Ρ‡Π°Π» Π²ΠΎΡΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚ΡŒΡΡ.

Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° Π²Π½Π΅ΡˆΠ½ΠΈΡ… Ρ„Π°ΠΉΠ»ΠΎΠ²

Π Π°Π½Π΅Π΅ Π² этой Π³Π»Π°Π²Π΅ ΡƒΠΆΠ΅ ΡƒΠΏΠΎΠΌΠΈΠ½Π°Π»ΠΎΡΡŒ ΠΎ Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ язык ActionScript позволяСт Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ ΠΈ ΠΏΠΎΠΌΠ΅ΡΡ‚ΠΈΡ‚ΡŒ Π² Ρ„ΠΈΠ»ΡŒΠΌ Flash внСшний Ρ„Π°ΠΉΠ». Π­Ρ‚ΠΈΠΌ внСшним Ρ„Π°ΠΉΠ»ΠΎΠΌ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ„ΠΈΠ»ΡŒΠΌ Shockwave/Flash, ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ JPEG, Π²ΠΈΠ΄Π΅ΠΎ Macromedia Flash Video ΠΈΠ»ΠΈ Π·Π²ΡƒΠΊ. Π’Π°ΠΊΠΆΠ΅ имССтся Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ Web-ΠΎΠ±ΠΎΠ·Ρ€Π΅Π²Π°Ρ‚Π΅Π»ΡŒ ΠΈ Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π² Π½Π΅Π³ΠΎ ΠΊΠ°ΠΊΡƒΡŽ-Π»ΠΈΠ±ΠΎ Web-страницу. Настала ΠΏΠΎΡ€Π° Π²Ρ‹ΡΡΠ½ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊ это дСлаСтся.

Π—Π°Π³Ρ€ΡƒΠ·ΠΊΠ° ΠΈ Π²Ρ‹Π³Ρ€ΡƒΠ·ΠΊΠ° Ρ„ΠΈΠ»ΡŒΠΌΠΎΠ² Shockwave/Flash ΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠΉ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ JPEG

ΠŸΡ€ΠΎΡ‰Π΅ всСго Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Π² основной Ρ„ΠΈΠ»ΡŒΠΌ, воспроизводящийся Π² ΠΎΠΊΠ½Π΅ проигрыватСля Flash, Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ„ΠΈΠ»ΡŒΠΌ Shockwave/Flash ΠΈΠ»ΠΈ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ Π² Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅ JPEG ΠΈΠ· внСшнСго Ρ„Π°ΠΉΠ»Π° (Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΠΎΠ³ΠΎ Ρ„ΠΈΠ»ΡŒΠΌΠ°). Π’Π°ΠΊΠΎΠ΅ часто дСлаСтся, особСнно ΠΏΡ€ΠΈ создании Web-сайтов, Ρ†Π΅Π»ΠΈΠΊΠΎΠΌ основанных Π½Π° Flash.

Π’Π»ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΠΎΠ³ΠΎ Ρ„ΠΈΠ»ΡŒΠΌΠ° ΠΈΠ»ΠΈ изобраТСния Π² основной Ρ„ΠΈΠ»ΡŒΠΌ

ΠŸΡ€ΠΎΡ‰Π΅ всСго ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ Π½Π° Ρ€Π°Π±ΠΎΡ‡Π΅ΠΌ листС "пустой" ΠΊΠ»ΠΈΠΏ (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ ΠΌΠ΅Ρ‚ΠΎΠ΄Π° createEmptyMovieClip, описанного Ρ€Π°Π½Π΅Π΅ Π² этой Π³Π»Π°Π²Π΅) ΠΈ Π·Π°ΠΌΠ΅Π½ΠΈΡ‚ΡŒ Π΅Π³ΠΎ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΡ‹ΠΌ Ρ„ΠΈΠ»ΡŒΠΌΠΎΠΌ. ΠŸΡ€ΠΈ этом Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΡ‹ΠΉ Ρ„ΠΈΠ»ΡŒΠΌ вкладываСтся Π² основной, ΡΡ‚Π°Π½ΠΎΠ²ΡΡΡŒ Π΅Π³ΠΎ составной Ρ‡Π°ΡΡ‚ΡŒΡŽ.

Для Π·Π°Π³Ρ€ΡƒΠ·ΠΊΠΈ Ρ„ΠΈΠ»ΡŒΠΌΠ° Shockwave/Flash ΠΈΠ»ΠΈ изобраТСния JPEG ΠΈΠ· внСшнСго Ρ„Π°ΠΉΠ»Π° ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ дСйствиС loadMovie, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ вызываСтся Ρ‚Π°ΠΊ:

loadMovie("<Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-адрСс внСшнСго Ρ„Π°ΠΉΠ»Π°>",

<ΠŸΡƒΡ‚ΡŒ замСняСмого ΠΊΠ»ΠΈΠΏΠ°>);

ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ использования дСйствия loadMovie:

loadMovie("/images/truckWheel.swf", _root.car.wheel2);

loadMovie(sURL, _root.car);

Π’Π°ΠΊΠΆΠ΅ ΠΌΠΎΠΆΠ½ΠΎ Π²ΠΎΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒΡΡ ΠΌΠ΅Ρ‚ΠΎΠ΄ΠΎΠΌ loadMovie ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° movieClip. Π€ΠΎΡ€ΠΌΠ°Ρ‚ Π΅Π³ΠΎ Π²Ρ‹Π·ΠΎΠ²Π° ΠΏΠΎΡ‡Ρ‚ΠΈ Ρ‚Π°ΠΊΠΎΠΉ ΠΆΠ΅, ΠΊΠ°ΠΊ Ρƒ ΠΎΠ΄Π½ΠΎΠΈΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ дСйствия:

<ЗамСняСмый ΠΊΠ»ΠΈΠΏ>.loadMovie("<Π˜Π½Ρ‚Π΅Ρ€Π½Π΅Ρ‚-адрСс внСшнСго Ρ„Π°ΠΉΠ»Π°>");

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ использования этого ΠΌΠ΅Ρ‚ΠΎΠ΄Π°:

_root.car.wheel2.loadMovie("/images/truckWheel.swf");

Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌ Ρ„ΠΈΠ»ΡŒΠΌ truckWheel.swf ΠΈ замСняСм ΠΈΠΌ Π²Ρ‚ΠΎΡ€ΠΎΠ΅ колСсо нашСго автомобиля.

А Ρ‚Π΅ΠΏΠ΅Ρ€ΡŒ ΠΏΡ€Π΅Π΄ΠΏΠΎΠ»ΠΎΠΆΠΈΠΌ, Ρ‡Ρ‚ΠΎ Ρ„ΠΈΠ»ΡŒΠΌ truckWheel.swf ΠΈΠ· Π²Ρ‹ΡˆΠ΅ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Π½ΠΎΠ³ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π° содСрТит Π² сСбС сцСнарий:

_root.stop();

ΠΎΡΡ‚Π°Π½Π°Π²Π»ΠΈΠ²Π°ΡŽΡ‰ΠΈΠΉ воспроизвСдСниС Π΅Π³ΠΎ Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΠΈ (Π²Ρ€Π°Ρ‰Π΅Π½ΠΈΠ΅ колСса). Если ΠΎΡ‚ΠΊΡ€Ρ‹Ρ‚ΡŒ этот Ρ„ΠΈΠ»ΡŒΠΌ Π² ΠΏΡ€ΠΎΠΈΠ³Ρ€Ρ‹Π²Π°Ρ‚Π΅Π»Π΅ Flash, Ρ‚ΠΎ сцСнарий выполнится ΠΏΡ€Π°Π²ΠΈΠ»ΡŒΠ½ΠΎ. Но Ссли Π·Π°Π³Ρ€ΡƒΠ·ΠΈΡ‚ΡŒ Ρ„ΠΈΠ»ΡŒΠΌ truckWheel.swf Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ (основной) Ρ„ΠΈΠ»ΡŒΠΌ, ΠΊΠ°ΠΊ ΠΌΡ‹ это Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Ρ‡Ρ‚ΠΎ сдСлали, этот сцСнарий остановит Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ Π½Π΅ колСса автомобиля, Π° основного Ρ„ΠΈΠ»ΡŒΠΌΠ°. Π’Π΅Π΄ΡŒ ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ _root всСгда Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Π΅Ρ‚ ссылку Π½Π° внСшнюю Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ, ΠΈ Π² нашСм случаС ΠΎΠ½ Π²Π΅Ρ€Π½Π΅Ρ‚ ссылку Π½Π° основной Ρ„ΠΈΠ»ΡŒΠΌ, ΠΏΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ Ρ„ΠΈΠ»ΡŒΠΌ truckWheel.swf стал Π΅Π³ΠΎ составной Ρ‡Π°ΡΡ‚ΡŒΡŽ.

Π§Ρ‚ΠΎ Π΄Π΅Π»Π°Ρ‚ΡŒ? Как Π½Π°ΠΌ Π·Π°ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ этот сцСнарий Π²Π»ΠΎΠΆΠ΅Π½Π½ΠΎΠ³ΠΎ Ρ„ΠΈΠ»ΡŒΠΌΠ° Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒΡΡ ΠΊΠΎΡ€Ρ€Π΅ΠΊΡ‚Π½ΠΎ Π² любом случаС? ΠžΡ‡Π΅Π½ΡŒ просто: Π½ΡƒΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠ²ΡΠ·Π°Ρ‚ΡŒ ΠΊ ΠΏΠ΅Ρ€Π²ΠΎΠΌΡƒ ΠΊΠ°Π΄Ρ€Ρƒ Ρ„ΠΈΠ»ΡŒΠΌΠ° truckWheel.swf Π²ΠΎΡ‚ Ρ‚Π°ΠΊΠΎΠΉ совсСм нСбольшой сцСнарий:

this._lockroot = true;

Π—Π΄Π΅ΡΡŒ ΠΌΡ‹ присвоили свойству _lockroot ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° movieClip, ΠΎΠ±ΠΎΠ·Π½Π°Ρ‡Π°ΡŽΡ‰Π΅Π³ΠΎ сам Ρ„ΠΈΠ»ΡŒΠΌ, Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ true. ПослС этого ΠΌΠΎΠ΄ΠΈΡ„ΠΈΠΊΠ°Ρ‚ΠΎΡ€ _root Π² любом сцСнарии, содСрТащСмся Π² Π·Π°Π³Ρ€ΡƒΠΆΠ°Π΅ΠΌΠΎΠΌ Ρ„ΠΈΠ»ΡŒΠΌΠ΅, всСгда Π±ΡƒΠ΄Π΅Ρ‚ Π²ΠΎΠ·Π²Ρ€Π°Ρ‰Π°Ρ‚ΡŒ ссылку Π½Π° внСшнюю Π°Π½ΠΈΠΌΠ°Ρ†ΠΈΡŽ ΠΈΠΌΠ΅Π½Π½ΠΎ этого Ρ„ΠΈΠ»ΡŒΠΌΠ° β€” truckWheel.swf, Π΄Π°ΠΆΠ΅ Ссли ΠΌΡ‹ Π²Π»ΠΎΠΆΠΈΠΌ Π΅Π³ΠΎ Π² Π΄Ρ€ΡƒΠ³ΠΎΠΉ Ρ„ΠΈΠ»ΡŒΠΌ.