Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   ActionScript: Просьба о помощи. (http://www.flasher.ru/forum/showthread.php?t=66481)

Shash 07.07.2005 14:42

ActionScript: Просьба о помощи.
 
ребята, подскажите пожалуйста, можно ли во флеше программно сделать так: сначало рисую один квадрат, потом через несколько секунд другой.

Ales 07.07.2005 15:02

да, такое конечно возможно.
тебе с чего начать объяснять, как рисовать квадрат или как отследить событие его нарисовывания, чтобы начать рисовать слудующий?

Shash 07.07.2005 15:06

Нет, квадраты я в цикле рисую. Вот так:
x=0; y=0;
a=40/5;
b=40/5;
this.createEmptyMovieClip("square_mc", this.getNextHighestDepth());
_root.muv.setMask (square_mc);
for (i=0; i<=a; i++) {
for (n=0; n<=b; n++) {
square_mc.beginFill(0xFF0000);
square_mc.moveTo(x, y);
square_mc.lineTo(x+a, y);
square_mc.lineTo(x+a, y+b);
square_mc.lineTo(x, y+b);
square_mc.lineTo(x, y);
square_mc.endFill();
x=x+2*a;
}
y=y+2*b;
x=0;
}

K.A.T.A.F.A.L.K.E.R 07.07.2005 18:34

function drawRect(RectX,RectY){
//Прорисовка квадратика с координатами RectX,RectY...
}
nint = setInterval(drawRect,ВРЕМЯ_ЗАДЕРЖКИ,X_квадратика,Y_квадратика);
(например, так: setInterval(drawRect,100,10,10));
//Чтобы очистить интервал - очищаешь по его ID (параметр nint) - в нужном месте clearInterval(nint); :)

tie 07.07.2005 19:39

C setInterval лучше не связываться... Лучше сделать примерно так:

MovieClip.prototype.drawSquares=function(sec){
this.time=0
this.sqNum=0
<рисовать квадрат>
this.onEnterFrame=function(){
if(this.time==(sec)*(<твое кол-во фрэймов в секунду>)){
<рисовать квадрат>
this.time=0
this.sqNum++
}
if(this.sqNum==<необходимое кол-во квадратов>){
delete this.onEnterFrame
}
this.time++
}
}
_root.createEmptyMovieClip("squares",0)
_root.squares.drawSquares(<интервал между рисованием>)

Сорри если не заработает - у меня под рукой не было флэш - редактора и код я не проверял... Но я думаю ты разберешься.

K.A.T.A.F.A.L.K.E.R 07.07.2005 19:54

Цитата:

Сообщение от tie
C setInterval лучше не связываться...

Эт почему? По-моему для таких нужд довольно неплохо работает... :D

MIX-er 07.07.2005 20:01

проверенно на ёжиках...
сет интервал работает с меньшим потреблением ресурсов...

tie 07.07.2005 20:05

Может быть для немудренного использования этот метод и работает нормально, но для мудреных кодов... Я это из опыта говорю - зайди на мой сайт - tie-games.narod.ru и посмотри там игру сапер - квадратики там открываются через интервал - если бы ты знал, как долго я трахался с методом setInterval... В общем я так и не понял, в чем была ошибка - с началом игры заново этот метод продолжал выполняться, хотя я его убивал перед этим незнаю сколько раз... В общем я плюнул и написал свою функцию паузы и воспользовался ею...

MIX-er 07.07.2005 20:20

извини... а как ты его убивал??)))

tie 07.07.2005 23:06

clearInterval и delete пробывал, а так же пробывал убивать объект, из которого запускал этот метод


Часовой пояс GMT +4, время: 18:37.

Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.