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

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

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

Регистрация: Sep 2008
Сообщений: 17
По умолчанию Проблема с типом переменной

Доброе время суток!
Пишу класс, расширяющий MovieClip, который будет применять к своим экземплярам простую программную анимацию.
В конструкторе класса имеется вот такой код:
Код AS1/AS2:
.....
this.onRollOver = function() {
			doAnimate(this._x,"this._x",25,.88);
		}; 
.....
и допустим есть вот такое свойство класса:
Код AS1/AS2:
function doAnimate(gain:Number, modifyType:String, uprugost:Number, tormoz:Number):Void { //modifyType Какой должен быть тип переменной, чтоб потом воспринималась строка как код Экшена?
 
	......
 
		this.onEnterFrame = function() {
 
			.....
 
			aPrug = (opornTochka-gain)/uprugost;
			vPrug += aPrug;
			modifyType += vPrug; //а здесь надо чтоб было свойство клипа this._x, которое легко потом подмненить на любое другое.
			vPrug *= tormoz;
 
			if (aPrug == 0) {
				delete this.onEnterFrame;
				trace("удалили");
			}
		};
	......
Пожалуйста, подскажите как сделать чтоб принимаемая строка, записанная в переменную modifyType воспринялась компилятором как AS - код.
В данном случае можно написать и this._x вместо modifyType, но когда я захочу сделать так, чтоб функция принимала, например, _xscale и ещё кучу свойств, то их каждый раз описывать?

Или вот, к примеру, был похожий случай недавно: из массива функция случайно выбирает имя звука и при попытке его вопроизведения ничего не происходит... Здесь тоже явно проблема с типом переменной. И описывать каждый звук замучиешься... их более 50..

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

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Код AS1/AS2:
this["property"]
?

Старый 29.06.2009, 17:17
Шыша вне форума Посмотреть профиль Отправить личное сообщение для Шыша Найти все сообщения от Шыша
  № 3  
Ответить с цитированием
Шыша

Регистрация: Sep 2008
Сообщений: 17
Я правильно понял?

Код AS1/AS2:
.....
this.onRollOver = function() {
			doAnimate(this._x,"._x",25,.88);
		}; 
.....
 
Код AS1/AS2:
function doAnimate(gain:Number, modifyType:String, uprugost:Number, tormoz:Number):Void {  
	......
 
		this.onEnterFrame = function() {
 
			.....
 
			aPrug = (opornTochka-gain)/uprugost;
			vPrug += aPrug;
			this["modifyType"] += vPrug; 
 			vPrug *= tormoz;
 
			if (aPrug == 0) {
				delete this.onEnterFrame;
				trace("удалили");
			}
		};
	......

Старый 29.06.2009, 17:29
udaaff вне форума Посмотреть профиль Отправить личное сообщение для udaaff Найти все сообщения от udaaff
  № 4  
Ответить с цитированием
udaaff
...

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Код AS1/AS2:
doAnimate(this._x,"_x",25,.88);
...
this[modifyType] += vPrug;

Старый 29.06.2009, 18:16
dimarik вне форума Посмотреть профиль Отправить личное сообщение для dimarik Найти все сообщения от dimarik
  № 5  
Ответить с цитированием
dimarik
.
 
Аватар для dimarik

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Может просто воспользоваться готовым твинером?
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 30.06.2009, 15:25
Шыша вне форума Посмотреть профиль Отправить личное сообщение для Шыша Найти все сообщения от Шыша
  № 6  
Ответить с цитированием
Шыша

Регистрация: Sep 2008
Сообщений: 17
udaaff, Спасибо!
dimarik, а где можно достать готовые классы? а то я каждый раз с нуля пишу....

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

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Как это не странно, но гуглить за Вас я не собираюсь =)
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 30.06.2009, 16:09
Шыша вне форума Посмотреть профиль Отправить личное сообщение для Шыша Найти все сообщения от Шыша
  № 8  
Ответить с цитированием
Шыша

Регистрация: Sep 2008
Сообщений: 17
Всё правильно) прошу прощение за наглость, просто думал у каго-нить чего-нить уже в закладках есть

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

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

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


 


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


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