Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 1.0/2.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 04.01.2007, 20:04
Ksюta вне форума Посмотреть профиль Отправить личное сообщение для Ksюta Найти все сообщения от Ksюta
  № 1  
Ответить с цитированием
Ksюta

Регистрация: Dec 2006
Сообщений: 60
Отправить сообщение для Ksюta с помощью ICQ
По умолчанию Опять Math.random

Знаю что тема часто обсуждается, но по моему конкретному вопросу что-то не нашла...

предположим, вот такая функция:
Код:
function freeRun (b7) 
{_root.mc1.gotoAndStop(4);}
ID_b7=setInterval(freeRun,Math.random()*10000);}
выдает в этом варианте разные интервалы времени, иногда такие короткие, что мувик просто шкалит. Как для Math.random указать низжайший порог, меньше которого нельзя числа генерить?
И вторая проблема. Генерируемое число каждый раз разное, но покуда функция запущена и работает, остается неизменным, то есть мувик проигрывается, но через одинаковый промежуток времени... А мне то нужно чтобы он проигрывался через рандомные промежутки. Это возможно или мне нужно искать окольный путь?

Старый 04.01.2007, 20:11
taneR вне форума Посмотреть профиль Отправить личное сообщение для taneR Найти все сообщения от taneR
  № 2  
Ответить с цитированием
taneR

Регистрация: Aug 2005
Адрес: Москва
Сообщений: 96
Отправить сообщение для taneR с помощью ICQ
в первом случае просто прибавь к рандому нужный нижний порог
ID_b7=setInterval(freeRun,Math.random()*10000)+100}


со вторым не очень понял: но попробуй updateAfterEvent()

Старый 04.01.2007, 20:13
CorC вне форума Посмотреть профиль Отправить личное сообщение для CorC Найти все сообщения от CorC
  № 3  
Ответить с цитированием
CorC
 
Аватар для CorC

Регистрация: Jul 2006
Адрес: Земля>Россия>Вологда
Сообщений: 3,056
Отправить сообщение для CorC с помощью ICQ Отправить сообщение для CorC с помощью MSN Отправить сообщение для CorC с помощью Skype™
Цитата:
Сообщение от Ksюta
Как для Math.random указать низжайший порог, меньше которого нельзя числа генерить?
1. random+AAA как? и висеть не будет и круче
Цитата:
Сообщение от Ksюta
А мне то нужно чтобы он проигрывался через рандомные промежутки. Это возможно или мне нужно искать окольный путь?
2. удалять в первом же setIterval его же, а потом в нем же его же и создавать причем тем же Math.random()
это при помощи clearInterval и сразу за ним setInt...
__________________
"We Are The Champions My Friends!" Queen

Старый 04.01.2007, 20:23
miramax вне форума Посмотреть профиль Отправить личное сообщение для miramax Посетить домашнюю страницу miramax Найти все сообщения от miramax
  № 4  
Ответить с цитированием
miramax
 
Аватар для miramax

Регистрация: Oct 2005
Адрес: Борисоглебск
Сообщений: 1,702
Отправить сообщение для miramax с помощью ICQ Отправить сообщение для miramax с помощью AIM Отправить сообщение для miramax с помощью MSN Отправить сообщение для miramax с помощью Yahoo Отправить сообщение для miramax с помощью Skype™
Цитата:
Сообщение от CorC
2. удалять в первом же setIterval его же, а потом в нем же его же и создавать причем тем же Math.random()
это при помощи clearInterval и сразу за ним setInt...
Для этого есть setTimeout().
__________________
AS3 | www.FLAPS.ru | Русские флэшеры самые умные флэшеры в мире. ©

Старый 04.01.2007, 20:29
CorC вне форума Посмотреть профиль Отправить личное сообщение для CorC Найти все сообщения от CorC
  № 5  
Ответить с цитированием
CorC
 
Аватар для CorC

Регистрация: Jul 2006
Адрес: Земля>Россия>Вологда
Сообщений: 3,056
Отправить сообщение для CorC с помощью ICQ Отправить сообщение для CorC с помощью MSN Отправить сообщение для CorC с помощью Skype™
Цитата:
Сообщение от miramax
Для этого есть setTimeout().
есть но вопрос был по setInterval
__________________
"We Are The Champions My Friends!" Queen

Старый 04.01.2007, 20:28
Ksюta вне форума Посмотреть профиль Отправить личное сообщение для Ksюta Найти все сообщения от Ksюta
  № 6  
Ответить с цитированием
Ksюta

Регистрация: Dec 2006
Сообщений: 60
Отправить сообщение для Ksюta с помощью ICQ
to taneR,
Код:
[ID_b7=setInterval(freeRun,Math.random()*10000)+100]
в этом случае дает синтаксическую ошибку, просит убрать скобку перед плюсом....
setTimeout сейчас попробую, но вот с минимальным порогом так пока и непонятно.

Старый 04.01.2007, 20:39
Ksюta вне форума Посмотреть профиль Отправить личное сообщение для Ksюta Найти все сообщения от Ksюta
  № 7  
Ответить с цитированием
Ksюta

Регистрация: Dec 2006
Сообщений: 60
Отправить сообщение для Ksюta с помощью ICQ
Вторую проблему решила как советовал CorC, спасиб)
но мувик то шкалит!
Цитата:
Сообщение от Ksюta
Как для Math.random указать низжайший порог, меньше которого нельзя числа генерить?
Цитата:
Сообщение от CorC
1. random+AAA как? и висеть не будет и круче
вот это не очень поняла...


Последний раз редактировалось Ksюta; 04.01.2007 в 20:43.
Старый 04.01.2007, 20:43
CorC вне форума Посмотреть профиль Отправить личное сообщение для CorC Найти все сообщения от CorC
  № 8  
Ответить с цитированием
CorC
 
Аватар для CorC

Регистрация: Jul 2006
Адрес: Земля>Россия>Вологда
Сообщений: 3,056
Отправить сообщение для CorC с помощью ICQ Отправить сообщение для CorC с помощью MSN Отправить сообщение для CorC с помощью Skype™
а по моему 1 пункту не помомогает для этого?
__________________
"We Are The Champions My Friends!" Queen

Старый 04.01.2007, 20:44
miramax вне форума Посмотреть профиль Отправить личное сообщение для miramax Посетить домашнюю страницу miramax Найти все сообщения от miramax
  № 9  
Ответить с цитированием
miramax
 
Аватар для miramax

Регистрация: Oct 2005
Адрес: Борисоглебск
Сообщений: 1,702
Отправить сообщение для miramax с помощью ICQ Отправить сообщение для miramax с помощью AIM Отправить сообщение для miramax с помощью MSN Отправить сообщение для miramax с помощью Yahoo Отправить сообщение для miramax с помощью Skype™
Код:
function freeRun () 
{
   _root.mc1.gotoAndStop(4);
}
var minimum:Number = 500;
setTimeout(freeRun,Math.random()*10000+minimum);
__________________
AS3 | www.FLAPS.ru | Русские флэшеры самые умные флэшеры в мире. ©

Старый 04.01.2007, 20:49
Ksюta вне форума Посмотреть профиль Отправить личное сообщение для Ksюta Найти все сообщения от Ksюta
  № 10  
Ответить с цитированием
Ksюta

Регистрация: Dec 2006
Сообщений: 60
Отправить сообщение для Ksюta с помощью ICQ
Цитата:
Сообщение от miramax
Код:
function freeRun () 
{
   _root.mc1.gotoAndStop(4);
}
var minimum:Number = 500;
setTimeout(freeRun,Math.random()*10000+minimum);
О... так тогда можно и просто
Код:
setTimeout(freeRun,Math.random()*10000+моё число);
и получается почти то что CorC советовал. Теперь поняла...
Но... вот это самое число это что? Милисекунды, фреймы или что-то еще? Просто нужно чтоб порог был около секунды. Как сие вычислить?


Последний раз редактировалось Ksюta; 04.01.2007 в 20:51.
Создать новую тему Ответ Часовой пояс GMT +4, время: 01:36.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


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


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