Министерство образования и науки РФ
ГОУВПО «Комсомольский-на-Амуре государственный технический университет»
Кафедра МОП ЭВМ
«программирование в Active Script»
Выполнил: Рогозин В.А.
Группа: 4ВС-1
Проверил: Тихомиров В.А.
Комсомольск-на-Амуре
2006
Программа муходилка:
основное окно
на сцене1 расположенно 2 ключевых кадра, к каждому из которых прикреплён код Active Script
код расположенный на кадре 1 сцены 1: содержит функцию создания мухи, функцию для последующего вычисления значений координат, и привязку к курсору хлопушки
function createMuh() //создание мухи
{
_root.attachMovie("muh", "muh" + 1, 1);
}
function changeCursor(movieclip)
{
Mouse.hide();
_root.attachMovie(movieclip, "customCursor",9000);
_root.customCursor.startDrag(true);
}
function calRand (min, max)
{
return(Math.floor(Math.random() * (max - min)) + min);
}
getURL("FSCommand:showmenu", false); //скрытие меню
lev = 0;
num = 0;
changeCursor("bilka");
код расположенный на кадре 3 сцены 1 вызывает функцию создания мухи, если предыдущая муха была убита, т.е. если муху убили то счётчик num принемает значение 1 и сравнивается с значением lev который на кадре 3 равен 1
if (num == lev)
{
lev=1;
num = 0;
createKomar();
}
prevFrame();
play();
код расноложенный на мовиклипе с ссылкой “bilka” реагирует на нажатие мышки, тем самым выводит на экран тот кадр, который приписан к данному событию.
onClipEvent (mouseDown)
{
gotoAndPlay(2);
}
onClipEvent (mouseUp)
{
gotoAndPlay(3);
}
onClipEvent (mouseMove)
{
updateAfterEvent(); //обновление дисплея при перемещении мышки
}
код расположенный на мовиклипе с ссылкой “mux” при нажатии мышки и если булева функция hitTest, которая сравнивает координату Х с текущим местоположением обрасти прикреплённой к курсору, возвращает true, то вызывается мовиклип превращения мухи в убитую муху, затем идут расчёты движения мухи по косинусойде.
onClipEvent (mouseDown)
{
if (this.hitTest(_root.customCursor.hitarea))
{
_parent.gotoAndPlay("num");
}
}
onClipEvent (load)
{
_parent._x = _root.calRand (-1000, -30);
_parent._y = _root.calRand (60, 300);
scale = 20; //размер
_parent._xscale = scale;
_parent._yscale = scale;
xStep = 10;
yStep = 6;
}
onClipEvent (enterFrame)
{
_parent._x = _parent._x + xstep;
_parent._y = _parent._y + Math.cos(_parent._x / 80) * ystep;
if (_parent._x < -30 && xstep < 0)
{
xstep = -xstep;
ystep = -ystep;
_parent._xscale = scale;
}
else if (_parent._x > 670 && xstep > 0)
{
xstep = -xstep;
ystep = -ystep;
_parent._xscale = -scale;
}
if (_parent._x < 0)
{
x = 0;
}
else if (_parent._x > 640)
{
x = 640;
}
else
{
x = _parent._x;
}
}
Уважаемый посетитель!
Чтобы распечатать файл, скачайте его (в формате Word).
Ссылка на скачивание - внизу страницы.