Статьи

Flash Script — эффект перетаскивания резиновой ленты Flash MX


1. Начните с создания фильма с размерами: ширина = 400 и высота = 50.

2. Создайте указатель мыши.

3. Теперь преобразуйте указатель мыши в мувиклип, назовите его «указатель», а затем присвойте ему имя экземпляра «указатель».

4. Используя текстовый инструмент, введите «RUBBER» — он должен выглядеть так, как показано в приведенном выше фильме.

5. Выберите текст и преобразуйте его в видеоклип. Назовите его «резиновый», и дайте ему имя экземпляра «резиновый».

Теперь дважды щелкните текстовый мувиклип, чтобы перейти к его временной шкале.

6. Создайте новый слой и назовите его «Кнопка».

8. В слое кнопки создайте невидимую кнопку.

9. Примените эти действия к кнопке:

on (rollOver) { 
 Mouse.hide();
 _root.pointer._visible = true;
}
on (rollOut) {
 Mouse.show();
 _root.pointer._visible = false;
}
on (press) {
 Mouse.hide();
 _root.pointer._visible = true;
 _root.flag = true;
 _root.elas = false;
}
on (release, releaseOutside) {
 Mouse.show();
 _root.pointer._visible = false;
 _root.flag = false;
 _root.elas = true;
}

10. Вернитесь к основной временной шкале (то есть scene1) и в ключевой кадр по умолчанию вставьте действие:

 //make the pointer invisible 
pointer._visible = false;
flag = false;
elas = false;
//start width is width of movieclip
startwidth = 100;
//mvwidth is width of movie
mvwidth = 400;
function setwidth()
{
 if(flag) {
   width = mvwidth - _xmouse
   width = width + 100
   rubber._width = width
   iws = rubber._width
 }
 if(elas){
   elastic += (startwidth - rubber._width);
   elastic *= .4
   rubber._width += elastic;
 }
}
//this acts as a timer it calls the setwidth function  
every 50 milli seconds
setInterval(setwidth,50)

Законченный! Теперь протестируйте фильм!