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

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

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

Регистрация: Mar 2009
Сообщений: 122
Question сгенерированные кадры в move clip влияет на _root. где ошибка?

написал такой код в move clip:
Код AS1/AS2:
var ti2 = Math.floor(Math.random()*2500)+3000;
function runclip() {
	var ci = Math.floor(Math.random()*4);
	if (ci == 1) {
		this.gotoAndPlay(9);
	}
	if (ci == 2) {
		this.gotoAndPlay(18);
	}
	if (ci == 3) {
		this.gotoAndPlay(2);
	}
	if (ci == 4) {
		this.gotoAndPlay(9);
	}
	var ti2 = Math.floor(Math.random()*2000)+5000;
}
 
if (!ti) {
	ti = setInterval(runclip, ti2);
}
в нем генерируется случайный кадр и случайное время через которое он проигрываеться,
но когда я перехожу между кадрами в _root, то кадры(в _root) начинают мерцать, меняться в случайном порядке. наверное генерация кадров влияет и на _root, но почему и как это исправить?

Старый 21.07.2010, 18:39
in4core вне форума Посмотреть профиль Отправить личное сообщение для in4core Найти все сообщения от in4core
  № 2  
Ответить с цитированием
in4core
[+4 06.05.14]
 
Аватар для in4core

Регистрация: Mar 2009
Сообщений: 4,219
Записей в блоге: 14
Код AS1/AS2:
function runclip() {
	var ci = Math.floor(Math.random()*4);
 
if (ci == 1 || ci==4) {  // это вопервых 
		this.gotoAndPlay(9);
	}
	else if (ci == 2) {
		this.gotoAndPlay(18);
	}
	else   {
		this.gotoAndPlay(2);
	}
 
 
}
 
 
ti = setInterval(runclip, Math.floor(Math.random()*2500)+3000); // во вторых
Добавлено через 4 минуты
возможно у вас ошибка в том что !ti и ti быстро меняются, но я не вижу всего кода. А по теме
Код AS1/AS2:
var ti2 = Math.floor(Math.random()*2000)+5000;
зачем внутри runClip дублируется не ясно!!! это *****_код , тоесть вы пишите лишнее, которое даж работать не будет. В моем приведенно коде интервал поменяется тока 1 раз. если хотите менять постоянно то :

Код AS1/AS2:
var ti2 = Math.floor(Math.random()*2500)+3000;
 
function runclip() {
	var ci = Math.floor(Math.random()*4);
 
if (ci == 1 || ci==4) {  // это вопервых 
		this.gotoAndPlay(9);
	}
	else if (ci == 2) {
		this.gotoAndPlay(18);
	}
	else   {
		this.gotoAndPlay(2);
	}
 
 ti2 = Math.floor(Math.random()*2500)+3000;  // заметим что без var !!! 
}
 
 
ti = setInterval(runclip, ti2); // во вторых

Старый 21.07.2010, 19:00
alex001 вне форума Посмотреть профиль Отправить личное сообщение для alex001 Найти все сообщения от alex001
  № 3  
Ответить с цитированием
alex001

Регистрация: Mar 2009
Сообщений: 122
я допустил опечатку, там где
Код AS1/AS2:
if (ci == 4) {
	this.gotoAndPlay(9);
}
вместо 9 должно быть 35
Код AS1/AS2:
var ti2 = Math.floor(Math.random() * 2500) + 3000;
 
function runclip()
{
	var ci = Math.floor(Math.random() * 4);
 
	if (ci == 1)
	{
		this.gotoAndPlay(9);
	}
	else if (ci == 2)
	{
		this.gotoAndPlay(18);
	}
	else if (ci == 3)
	{
		this.gotoAndPlay(2);
	}
	else if (ci == 4)
	{
		this.gotoAndPlay(35);
	}
 
	ti2 = Math.floor(Math.random() * 2500) + 3000;
}
 
ti = setInterval(runclip, ti2);
но когда я вставляю такой код, то он не работает. move clip должен кождые Math.floor(Math.random()*2500)+3000 выполнять runclip() в котором он должен по сгенерированному числу которое сохроняеться в переменной ci переходить в кадры, но этого не происходит.

Добавлено через 71 час 49 минут
кто-нибудь может ответить на мой вопрос? этот код не работает. в чем проблема?

Создать новую тему Ответ Часовой пояс GMT +4, время: 04:44.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

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

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


 


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


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