Форум 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)
-   -   таймер до определенной переменной (http://www.flasher.ru/forum/showthread.php?t=67414)

chillwill 02.08.2005 18:49

таймер до определенной переменной
 
Доброго времени суток!
Вот что меня интересует, как сделать таймер до определенной вводимой переменной, допустим из текстового файла.

Т.е. я ввожу число i=200 и теперь ролик таймит до цифры 200
(1,2,3,...,198,199,200).

Как вообще работает таймер и как он связан с ФПС.

Простите, если вопрос глуп, достаточно долго искал.

Спасибо.

iNils 02.08.2005 18:57

единицы измерения секунды?

Takato 02.08.2005 19:01

Цитата:

Сообщение от chillwill
Доброго времени суток!
Вот что меня интересует, как сделать таймер до определенной вводимой переменной, допустим из текстового файла.

Т.е. я ввожу число i=200 и теперь ролик таймит до цифры 200
(1,2,3,...,198,199,200).

Как вообще работает таймер и как он связан с ФПС.

Простите, если вопрос глуп, достаточно долго искал.

Спасибо.

Например так

i=200

do
{n=n+1
}
while (n>=i);


ФПС задается в меню Modify-Movie-Frame Rate (по умолчанию 12). То есть, если тебе нужен не просто счетчик до 200 "кадров", а 200 секунд, то

i=200*12

do
{n=n+1
}
while (n>=i);

KidsKilla 02.08.2005 19:08

Цитата:

Сообщение от Takato
i=200

do
{n=n+1
}
while (n>=i);

в корне неверно.
while в 1м кадре выполнится;



1) 200 секунд:
var secs = 200;
var cntr = 0;
function func(){
// тут всё что тебе нужно делать каждую секунду
If( cntr == secs){
clearInterval(tmr)
// а тут по истечении времени
}
cntr++
}
tmr = setInterval(func, 1000);

2) 200 кадров:
var frms = 200;
var cntr = 0;
this.onEnterFrame = function(){
// тут всё что тебе нужно делать в каждом фрейме
If( frms == secs){
delete this.onEnterFrame
// а тут по истечении времени
}
cntr++
}

Takato 02.08.2005 19:12

Цитата:

Сообщение от KidsKilla
в корне неверно.
while в 1м кадре выполнится;

Что не верно? Я только что сделал - все работает. Тикает счетчик от 0 до 200

KidsKilla 02.08.2005 19:13

а, тамж условие иное, сорь...

K.A.T.A.F.A.L.K.E.R 02.08.2005 19:15

Ну, например так...

var num = 1;

function showNum(){
if(num<=lastNum){
trace(num++);
} else {
clearInterval(intID);
}
}

lastNum = 200;
intID = setInterval(showNum,1000);

С фреймрейтом таймер, по идее, не связан. Ты задаешь промежуток в миллисекундах (в данном случае 1000) и все...

KidsKilla 02.08.2005 19:16

сколько вариантов, сколько помогальщикофф =))

Takato 02.08.2005 19:19

Цитата:

Сообщение от KidsKilla
сколько вариантов, сколько помогальщикофф =))

:p

Я даже еще один короткий вариант придумал (ЗЫ Тока я так и не понял - счетчик кадров или всё-таки секунд должен идти?) Если кадров то -

i=200

if(n<i)
{n=n+1}

Тока надо 2-ой кадр еще сделать в котором

gotoAndPlay (1);

KidsKilla 02.08.2005 19:21

а чем тебе onEntrerFrame не угодил?


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

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