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

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

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

Регистрация: Sep 2012
Адрес: Хабаровск
Сообщений: 16
Отправить сообщение для Freeman1st с помощью Skype™
По умолчанию TweenMax как удалить Child после завершения анимации

Не получается выдает ошибки какие - то типа ArgumentError: Error #1063...


Код:
function inte ():void
{

for (var i:uint = 0; i<10; i++)
{
	var shiftingx:Number = Math.random()*15;
	formatter.color = Math.random() * 0xFFFFFF;
	var shiftingy:Number = Math.random()*20;
	var RanSize:Number = Math.floor(Math.random()*35+10)
	formatter.size = RanSize
	var mat:Number = Math.floor(Math.random()*arr.length)
	tex =  new TextField;
	tex.width = 400;
	addChild(tex)
	tex.text = arr[mat];
	tex.setTextFormat(formatter);
	tex.x = Math.random()*500;
	tex.y = Math.random()*200;
	TweenLite.to (tex, 4.25, {x:tex.x+shiftingx, y:tex.y+shiftingy,alpha:.0, ease:Sine.easeInOut,onComplete:this.removeChild});

}

}
Получается произвольным образом появляются слова из массива... Но они не удаляются после того, как анимация закончена и компьютер сильно нагружается...
__________________________________________
Я чайник, не ругайте меня

Старый 23.10.2012, 12:48
DaFive вне форума Посмотреть профиль Отправить личное сообщение для DaFive Посетить домашнюю страницу DaFive Найти все сообщения от DaFive
  № 2  
Ответить с цитированием
DaFive
 
Аватар для DaFive

Регистрация: May 2008
Адрес: {0,0}
Сообщений: 754
Записей в блоге: 1
Отправить сообщение для DaFive с помощью ICQ
Текст ошибки?
__________________
Кодинг, багинг, алгоритминг. me @

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

Регистрация: Sep 2012
Адрес: Хабаровск
Сообщений: 16
Отправить сообщение для Freeman1st с помощью Skype™
Код:
ArgumentError: Error #1063: Argument count mismatch on flash.display::DisplayObjectContainer/removeChild(). Expected 1, got 0.
	at Function/http://adobe.com/AS3/2006/builtin::apply()
	at com.greensock.core::TweenCore/complete()[C:\Users\SLAVIK\Desktop\New Icons\com\greensock\core\TweenCore.as:178]
	at com.greensock::TweenLite/renderTime()[C:\Users\SLAVIK\Desktop\New Icons\com\greensock\TweenLite.as:477]
	at com.greensock.core::SimpleTimeline/renderTime()[C:\Users\SLAVIK\Desktop\New Icons\com\greensock\core\SimpleTimeline.as:93]
	at com.greensock::TweenLite$/updateAll()[C:\Users\SLAVIK\Desktop\New Icons\com\greensock\TweenLite.as:642]

ОИШИБКА НЕ ВОЗНИКАЕТ СРАЗУ, Только после того, как закончиться анимация TweenMax'а

Вот это вылазеет в окне Output

Код:
[SWF] Word%20Overtrow%20v2.1%20(Wordable).swf - 58811 байт после декомпрессии
ArgumentError: Error #1063: Argument count mismatch on flash.display::DisplayObjectContainer/removeChild(). Expected 1, got 0.
	at Function/http://adobe.com/AS3/2006/builtin::apply()
	at com.greensock.core::TweenCore/complete()[C:\Users\SLAVIK\Desktop\New Icons\com\greensock\core\TweenCore.as:178]
	at com.greensock::TweenLite/renderTime()[C:\Users\SLAVIK\Desktop\New Icons\com\greensock\TweenLite.as:477]
	at com.greensock.core::SimpleTimeline/renderTime()[C:\Users\SLAVIK\Desktop\New Icons\com\greensock\core\SimpleTimeline.as:93]
	at com.greensock::TweenLite$/updateAll()[C:\Users\SLAVIK\Desktop\New Icons\com\greensock\TweenLite.as:642]


Последний раз редактировалось udaaff; 23.10.2012 в 15:54.
Старый 23.10.2012, 13:21
Hauts вне форума Посмотреть профиль Отправить личное сообщение для Hauts Посетить домашнюю страницу Hauts Найти все сообщения от Hauts
  № 4  
Ответить с цитированием
Hauts
 
Аватар для Hauts

блогер
Регистрация: Feb 2008
Адрес: Россия, Новосибирск, Академгородок
Сообщений: 2,113
Записей в блоге: 1
Отправить сообщение для Hauts с помощью ICQ Отправить сообщение для Hauts с помощью Skype™
Код:
onComplete:this.removeChild
— неправильно. removeChild должен получать ссылку на потомка, добавленного в дисплэйлист. У вас этого не происходит.

Нужно, наверное, вот так:
Код AS3:
TweenLite.to (tex, 4.25, {x:tex.x+shiftingx, y:tex.y+shiftingy,alpha:.0, ease:Sine.easeInOut,onComplete:function(tf:TextField):void{removeChild(tf)}, onCompleteParams:[tex]});
Читайте документацию, раз уж используете твинмакс.

Добавлено через 2 минуты
А еще лучше вынести анонимную функцию на onComplete и объявить ее полноценно.

Код AS3:
function removeAfterAnimation(tf:TextField):void{
    if(this.contains(tf)){
        this.removeChild(tf)
    }
}
 
TweenLite.to(tex, 4.25, {x:tex.x+shiftingx, y:tex.y+shiftingy,alpha:.0, ease:Sine.easeInOut,onComplete:removeAfterAnimation, onCompleteParams:[tex]});
__________________
hauts.ru

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

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

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


 


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


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