Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   При добавлении кадра со скриптом перестайт работать мувик (http://www.flasher.ru/forum/showthread.php?t=124939)

versus_spb 13.05.2009 03:10

При добавлении кадра со скриптом перестайт работать мувик
 
Доброго времени суток всем!
Вот столкнулся с такой проблемой, не знаю уже что и делать.

Я делаю Flash-игрушку. В ней, получилось куча графики, куча объектов, слоёв, и т.д.
В какой-то момент при добавлении в какой-нибудь из кадров действия (ActionScript 3) проект перестаёт работать. То есть компиляция проходит без ошибок, но при запуске кадры скачут от лоадера к первому кадру игры, все звуки и клипы сразу играются и ничего не работает. При чём достаточно просто добавить хотя бы trace(); или даже закомментированный код в кадр и всё слетает. Что делать - не знаю, уже неделю с этим мучаюсь. Может кто сталкивался с подобным?
Проект работает под ActionScript 3, для Flash 9.

Сейчас вот заметил во FlashTracer'e такую ошибку, но не уверен, что она к моему проекту относится, обычно он никаких ошибок даже не пишет:

Код:

Предупреждение: Ссылка на необъявленную переменную, "LAYER_TILES"
Предупреждение: Достигнут порог предупреждения 100

Может ли кто-то подсказать мне, где искать проблему? Буду весьма признателен!

Gaen 13.05.2009 04:10

Кроме ошибок компиляции, существуют ещё ошибки времени выполнения. Запустите под дебаггером, он покажет откуда вылетает исключение.
У вас где-то в коде используется переменная LAYER_TITLES - смотрите, где к ней идут обращения и почему она могла не получить перед этим значение.

ToRR 13.05.2009 09:41

Сталкивался с похожей проблемой. В моем случае экспорт всех классов происходил во 2ом фрейме, на 1ом лежал мувиклип с анимацией для отображения процесса загрузки. Если в любом кадре этого мувика я писал код, то вываливалась ошибка ReferenceError: Error #1065: Переменная <имя_переменной> не определена. В итоге пришлось отказаться от кода в таймлайне, оно и к лучшему. Но причину проблемы я так и не выявил.

versus_spb 13.05.2009 12:38

Цитата:

Сообщение от GAIKER (Сообщение 819357)
Кроме ошибок компиляции, существуют ещё ошибки времени выполнения. Запустите под дебаггером, он покажет откуда вылетает исключение.
У вас где-то в коде используется переменная LAYER_TITLES - смотрите, где к ней идут обращения и почему она могла не получить перед этим значение.

В том-то и проблема, что даже с включенным дебагером ничего не показывает. Никаких ошибок.

Цитата:

Сообщение от ToRR
Сталкивался с похожей проблемой. В моем случае экспорт всех классов происходил во 2ом фрейме

Да, у меня точно также всё сделано, и код есть в таймлайне. И проблем раньше не было.

Кажется, нашёл вариант решения! Если отключить в настройках ActionScript галку "Warning mode", то всё замечательно компилится! Так что, действительно, похоже, вылетало из-за большого количества warning'ов. Просто ничего при этом не писалось, про LAYER_TITLES - вообще, чудом увидел. Теперь, думаю, можно поставить "Strict mode", и отловить все предупреждения в момент компиляции. Думаю, что это поможет.

Спасибо вам за ответы!

AL.exe 14.05.2009 02:07

Ну, предупреждения созданы не просто так. Они часто говорят о безобидных вещах, но лучше, все же, избавиться от вызывающий предупреждения участков кода (в смысле, переписать их верным образом).

А компилироваться перестало нормально вероятно как раз из-за того, что предупреждений наплодилось больше 100 штук. Впрочем, я сам подобного ни разу не видел :)

ToRR 14.05.2009 09:54

Так в том-то и проблема, что выяснить причину появления ворнинга не удалось...

versus_spb 14.05.2009 21:43

:)
Ну да, многовато!
Буду разгребать. Просто не мой проект, я его продолжаю.
Попробую исправить всё.
Спасибо! :)

Добавлено через 3 минуты
Цитата:

Так в том-то и проблема, что выяснить причину появления ворнинга не удалось...
Я, кстати, как-то вообще случайно увидел про предупреждения! Обычно тоже ничего не выводилось. А, кстати, если включить "Strict mode", то вроде все ошибки показываются при компиляции. Мне помогло!


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

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