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

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

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

Регистрация: Mar 2009
Адрес: Москва [СЗАО]
Сообщений: 107
По умолчанию AS3+Buttons+#1009

Здравствуйте. Пришлось пересесть на AS3. Столкнулся с кучей траблов. ООП мне не дается, как бы с ним ни бился, поэтому прошу, помогите, кто сможет.
Есть 3 сцены. на каждой по 3 кнопки. 1ую кнопку рисовал сам, остальные отдублировал с помощью Duplicate. Суть в том, что по нажатии кнопки на 1й сцене должен быть переход на 2ую. Соответственно, при нажатии на кнопку во 2й сцене, должен быть переход на 3ю. На 3й по кнопке возврат на 1ую. Если рисовать кнопки просто из примитивов, то проблем никаких, а если как делаю я (Примитивы+текстура+PNG+Duplicate), то в итоге при переходе к 3й сцене (с 1й на 2ую переходит без проблем), переход на 3ю уже не работает.

Ошибка такая:
Код AS3:
TypeError: Error #1009: Не удается вызвать свойство или метод со ссылкой на объект "null".
	at Basa3_fla::MainTimeline/frame2()
	at flash.display::MovieClip/gotoAndPlay()
	at Basa3_fla::MainTimeline/ButtonDown1()

Код для 1й сцены:
Код AS3:
stop();
 
stage.displayState = StageDisplayState.FULL_SCREEN;
 
mbt1.addEventListener(MouseEvent.CLICK, ButtonDown1);
 
function ButtonDown1(e:MouseEvent):void
{
	gotoAndPlay("1", "Scene 2");
}

Код для 2й сцены:

Код AS3:
stop();
 
mbt2.addEventListener(MouseEvent.CLICK, ButtonDown2);
 
function ButtonDown2(e:MouseEvent):void
{
	gotoAndPlay("1", "Scene 3");
}
Код 3й сцены:

Код AS3:
stop();
 
mbt3.addEventListener(MouseEvent.CLICK, ButtonDown3);
 
function ButtonDown3(e:MouseEvent):void
{
	gotoAndPlay("1", "Scene 1");
}


Последний раз редактировалось niks_13; 16.07.2009 в 00:48. Причина: Первый раз создаю тему. Первый блин, как говорится, комом.
Старый 16.07.2009, 00:33
willis83 вне форума Посмотреть профиль Отправить личное сообщение для willis83 Найти все сообщения от willis83
  № 2  
Ответить с цитированием
willis83
 
Аватар для willis83

Регистрация: Jan 2008
Адрес: Украина, Славутич
Сообщений: 646
Отправить сообщение для willis83 с помощью ICQ
вашу тему админу закроют, пока они не пришли бегите скорей и читайте правила форума, а потом редактируйте вашу тему

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

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Проверьте имена кнопок (Instance Name)

Старый 16.07.2009, 01:19
niks_13 вне форума Посмотреть профиль Отправить личное сообщение для niks_13 Найти все сообщения от niks_13
  № 4  
Ответить с цитированием
niks_13

Регистрация: Mar 2009
Адрес: Москва [СЗАО]
Сообщений: 107
Проверял несколько раз. Даже задавал Instance Name такие же, как соответствующие им Button. - бесполезно.

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

модератор форума
Регистрация: Sep 2006
Адрес: Minsk
Сообщений: 4,286
Ну тогда выкладывайте исходник.

Старый 16.07.2009, 01:53
niks_13 вне форума Посмотреть профиль Отправить личное сообщение для niks_13 Найти все сообщения от niks_13
  № 6  
Ответить с цитированием
niks_13

Регистрация: Mar 2009
Адрес: Москва [СЗАО]
Сообщений: 107
Работаю в CS4 ver.10.0
http://***********/13122727

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

модератор форума
Регистрация: Sep 2003
Адрес: Москва
Сообщений: 4,630
Записей в блоге: 20
Исходник, однозначно. Пока еще не встречал "сцена + AS3". Очень хочется взглянуть.

оффтоп. кто знает, почему на нетбуке Asus eee pc 901 не работает PuntoSwitcher?
__________________
Воспитан в TimeZero. Работаю в Mail.ru.

Старый 16.07.2009, 02:06
niks_13 вне форума Посмотреть профиль Отправить личное сообщение для niks_13 Найти все сообщения от niks_13
  № 8  
Ответить с цитированием
niks_13

Регистрация: Mar 2009
Адрес: Москва [СЗАО]
Сообщений: 107
Что значит не встречали сцена+AS3 ?? Не понял. Это как?
Про Asus: взможно из-за нетбучной архитектуры клавиатуры. Она все-таки в разы меньше ноутовской и десктоповской не только из-за меньшего кол-ва пластика и текстолита, пущеных на её создание. Видать чего-то в ней урезано. Но могу и ошибаться.


Последний раз редактировалось niks_13; 16.07.2009 в 02:10. Причина: Опечатка
Старый 16.07.2009, 09:42
marat_sa вне форума Посмотреть профиль Отправить личное сообщение для marat_sa Посетить домашнюю страницу marat_sa Найти все сообщения от marat_sa
  № 9  
Ответить с цитированием
marat_sa
 
Аватар для marat_sa

Регистрация: Nov 2006
Сообщений: 487
Отправить сообщение для marat_sa с помощью ICQ Отправить сообщение для marat_sa с помощью Skype™
Сталкивался с такой же проблемой. В MovieClip при переходе на кадры, имеющие в себе инстансы с именами - эти инстансы null, и невозможно к ним обратиться.

Совет - уходите от сцен, MovieClip - только для анимации. Если вам нужно сменить сцену, то удаляйте текущую сцену, создавайте новую.
Сцены расширяют Sprite, реализуют общий интерфейс.
__________________
Стой! Опасная зона! Работа мозга!

Старый 16.07.2009, 10:43
niks_13 вне форума Посмотреть профиль Отправить личное сообщение для niks_13 Найти все сообщения от niks_13
  № 10  
Ответить с цитированием
niks_13

Регистрация: Mar 2009
Адрес: Москва [СЗАО]
Сообщений: 107
Movie Clip для анимации - согласен, а для кнопок Button, его я и использую. Я ж говорил, что если все тоже самое делать из примитива aka Четырёхугольник - 0 проблем.

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

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

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


 


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


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