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

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

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 01.06.2008, 15:20
Alex_beginner вне форума Посмотреть профиль Отправить личное сообщение для Alex_beginner Найти все сообщения от Alex_beginner
  № 11  
Ответить с цитированием
Alex_beginner
 
Аватар для Alex_beginner

Регистрация: May 2008
Сообщений: 476
Лан. Я чел в душе добрый (но только в душе). Ща займусь. А на счет долга не беспокойтесь. Это лишнее.
Кстати, плиз выложи исходник в формате Флеша8, а не CS3, А то неоткрывается.


Последний раз редактировалось Alex_beginner; 01.06.2008 в 15:24.
Старый 01.06.2008, 15:27
mayday вне форума Посмотреть профиль Отправить личное сообщение для mayday Найти все сообщения от mayday
  № 12  
Ответить с цитированием
mayday

Регистрация: Aug 2006
Сообщений: 40
Цитата:
Сообщение от Alex_beginner Посмотреть сообщение
Лан. Я чел в душе добрый (но только в душе). Ща займусь. А на счет долга не беспокойтесь. Это лишнее.
Кстати, плиз выложи исходник в формате Флеша8, а не CS3, А то неоткрывается.
Огромное спасибо!
Вложения
Тип файла: rar primer.rar (6.4 Кб, 92 просмотров)


Последний раз редактировалось mayday; 01.06.2008 в 15:28. Причина: замена вложения
Старый 01.06.2008, 15:30
Alex_beginner вне форума Посмотреть профиль Отправить личное сообщение для Alex_beginner Найти все сообщения от Alex_beginner
  № 13  
Ответить с цитированием
Alex_beginner
 
Аватар для Alex_beginner

Регистрация: May 2008
Сообщений: 476
Мож я че то недопер! А в исходнике че кода вообще нету?

Старый 01.06.2008, 15:35
mayday вне форума Посмотреть профиль Отправить личное сообщение для mayday Найти все сообщения от mayday
  № 14  
Ответить с цитированием
mayday

Регистрация: Aug 2006
Сообщений: 40
код не в руте
мувик container

Старый 01.06.2008, 15:37
Alex_beginner вне форума Посмотреть профиль Отправить личное сообщение для Alex_beginner Найти все сообщения от Alex_beginner
  № 15  
Ответить с цитированием
Alex_beginner
 
Аватар для Alex_beginner

Регистрация: May 2008
Сообщений: 476
Нашел! Ну и запрятал. А че не в руте писал?

Как сделать прокрутку, то я сделал!

Код:
posX=_root.mc._x;
posY=_root.mc._height/2;
posMask=0;
center = Stage.width/2;

var L:Number = 5;
//длина зазора между кнопками
var N:Number = 5;
//количество кнопок
var G:Number = 1;
//скорость для кнопок
var Q:Number = G;
//
for (var i:Number = 1; i<=N; i++) 
{
	this.attachMovie("photo"+i, "photo"+i, i);
	this["photo"+i]._x = ((mcOld._x + mcOld._width) || mcOld._x)+L;
	this["photo"+i]._y = posY;
	mcOld = this["photo"+i];	
}


this.onEnterFrame = function():Void
{
	shag = (center-_xmouse)/30;
	for (var i:Number = 1; i<=N;i++)
	{
		this["photo"+i]._x+=shag;
	}
}
А вот как зациклить то надо думать.


Последний раз редактировалось iNils; 01.06.2008 в 17:28.
Старый 01.06.2008, 17:44
mayday вне форума Посмотреть профиль Отправить личное сообщение для mayday Найти все сообщения от mayday
  № 16  
Ответить с цитированием
mayday

Регистрация: Aug 2006
Сообщений: 40
Цитата:
Сообщение от Alex_beginner Посмотреть сообщение
А вот как зациклить то надо думать.
И на этом большое спасибо

Старый 01.06.2008, 18:33
Alex_beginner вне форума Посмотреть профиль Отправить личное сообщение для Alex_beginner Найти все сообщения от Alex_beginner
  № 17  
Ответить с цитированием
Alex_beginner
 
Аватар для Alex_beginner

Регистрация: May 2008
Сообщений: 476
mayday! Я вам предоставлю полный код! Ждите.
Кстати, я забыл спросить, сегодня до скольки Вам нужно это сделать!
Я уже знаю как сделать, только вот допишу щас в флеше.
И еще я иногда пропадаю из форума - Интернет глючит (через WI-FI).
Но не переживайте усе будет упорядке!

Старый 01.06.2008, 19:14
Alex_beginner вне форума Посмотреть профиль Отправить личное сообщение для Alex_beginner Найти все сообщения от Alex_beginner
  № 18  
Ответить с цитированием
Alex_beginner
 
Аватар для Alex_beginner

Регистрация: May 2008
Сообщений: 476
mayday! Вот оно. Не бог весть, что но работает.
Возможно, есть более красивые и простые варианты реализации этого, но я всего лишь beginner. А посему пусть этот код правят продвинутые флешеры, коих здесь на форуме неисчислимое множество.
На счет кода - L я убрал чтоб мозг себе им не компостировать, когда разберетесь как работает код, вставьте L в нужные места и все будет отлично.
Правда я подозреваю, что вся эта задача решается куда проще(пока незнаю как).

Код:
posX=_root.mc._x;
posY=_root.mc._height/2;
posMask=0;
center = Stage.width/2;

var L:Number = 5;
//длина зазора между кнопками
var N:Number = 5;
//количество кнопок
var G:Number = 1;
//скорость для кнопок
var Q:Number = G;
//
var indexArr:Array = [];
for (var i:Number = 1; i<=N; i++) 
{
	this.attachMovie("photo"+i, "photo"+i, i);
	this["photo"+i]._x = ((mcOld._x + mcOld._width) || mcOld._x);
	this["photo"+i]._y = posY;
	mcOld = this["photo"+i];
	indexArr.push(i);
}

var mcLast1 = this["photo"+N]._x-60;//Здесь можно другую область скролирования поставить
var mcLast2 = -this["photo1"]._width;
var index:Number = null;
var tmpVar:Object = {};

this.onEnterFrame = function():Void
{
	shag = (center-_xmouse)/10;
	for (var i:Number = 1; i<=N;i++)
	{
		
		if ((this["photo"+i]._x)>mcLast1)
		{
			tmpVar =indexArr.pop(); 
			this["photo"+tmpVar]._x=this["photo"+indexArr[0]]._x-this["photo"+tmpVar]._width;
		    indexArr.unshift(tmpVar);
		}
		if ((this["photo"+i]._x)<mcLast2)
		{
			tmpVar =indexArr.shift(); 
			this["photo"+tmpVar]._x=this["photo"+indexArr[N-2]]._x+this["photo"+indexArr[N-2]]._width;
			indexArr.push(tmpVar);			
		}
		this["photo"+i]._x+=shag;
		
	}	
			
}

Старый 01.06.2008, 23:15
mayday вне форума Посмотреть профиль Отправить личное сообщение для mayday Найти все сообщения от mayday
  № 19  
Ответить с цитированием
mayday

Регистрация: Aug 2006
Сообщений: 40
Эврика! Работает!
Alex_beginner, огромное спасибо!!!

Старый 18.06.2008, 21:25
AlexDesinger вне форума Посмотреть профиль Отправить личное сообщение для AlexDesinger Посетить домашнюю страницу AlexDesinger Найти все сообщения от AlexDesinger
  № 20  
Ответить с цитированием
AlexDesinger

Регистрация: Feb 2007
Сообщений: 563
Alex_beginner-ты крут - и правда все работает, я вот то же самое пытаюсь сделать только горизонтальный скролл.
У меня походу родились вопросы над которыми я попарился но так и не смог решить.
1. как сделать чтоб скролирование происходило только когда мышка над mc?
я решил этот вопрос так:

Код:
this.onEnterFrame = function():Void{
      if (ok){
	shag = (center-_xmouse)/10;
	for (var i:Number = 1; i<=N;i++)
	{
		
		if ((this["photo"+i]._x)>mcLast1)
		{
			tmpVar =indexArr.pop(); 
			this["photo"+tmpVar]._x=this["photo"+indexArr[0]]._x-this["photo"+tmpVar]._width;
		    indexArr.unshift(tmpVar);
		}
		if ((this["photo"+i]._x)<mcLast2)
		{
			tmpVar =indexArr.shift(); 
			this["photo"+tmpVar]._x=this["photo"+indexArr[N-2]]._x+this["photo"+indexArr[N-2]]._width;
			indexArr.push(tmpVar);			
		}
		this["photo"+i]._x+=shag;
		}
	}	
			
}
по-моему не самый замечательный вариант - в каждом кадре проверять находится ли мышка над mc

2.Дальше еще круче - что если у меня не пять картинок-кнопок а например 200?
можно ли проделать все-это динамически динамически создавать клип и внего грузить определенную картинку скажем ico1.jpg, ico2.jpg и.т.д. естественно с заранее известным количеством фалов ico.jpg?

3.наконец для меня самое загадочное - как мне узнать номер кнопки на которую я нажал я вот так сделал потому что по другому не сумел:
Код:
var indexArr:Array = [];
for (var i:Number = 1; i<=N; i++) {
	this.attachMovie("photo"+i,"photo"+i,i);
	this["photo"+i]._y = ((mcOld._y+mcOld._height) || mcOld._y)+L;
	this["photo"+i]._x = posY;
	mcOld = this["photo"+i];
	indexArr.push(i);
		this["photo"+i].onPress = function() {
		var p = this;
		loadMovie("media/pict/pict"+p+".jpg", "_parent.ekr");
	};
}
как понимаете решение самое отвратное - пришлось назвать все подгружаемые клипы как понимаете типа pict_level0.menu.photo1.jpg

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

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

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


 


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


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