Просмотр полной версии : Как завести глобальну переменную?
Создал в первом кадре анимации такой скрипт
_global.YellowPhase = 10;
tellTarget ("Желтый") {
gotoAndStop (_global.YellowPhase);
}
А он не работает: подчиненный клип "Желтый" продолжает крутиться, не слушает команды.
А вот такой код работает правильно:
tellTarget ("Желтый") {
gotoAndStop (10);
}
Почему? Вроде бы в книжке написано, что для заведения переменных достаточно им чего-нибудь присвоить. А глобальные переменные - это переменные, начинающиеся с _global.
Я что-то напутал?
Димс.
c _global все должно работать проверь еще раз, свою запись!!
_global.YellowPhase = 10;
tellTarget ("yellow") {
gotoAndStop (_global.YellowPhase);
}
Всё работает!
Ты б инстанс ещё по китайски обозначил. :rolleyes:
Штрек, может у меня флэш какой-старый? Потому что твой файл не открывается.
У меня версия 5.0
Это что, уже динозавр, да?
Димс.
А что значит "назвал по-китайски"? Это моя фраза, я так обычно критикую англоязычие. Что, во флэше можно русские имена использовать, да? На переносимости это никак не скажется?
Димс.
Вот моя флешка. Кстати, почему она такая большая, из-за библиотеки?
Я сделал сначала объект-машинку, вложил его в объект "движущаяся машинка" и уже его положил на линейку. Это идиотизм или так правильно делать?
А еще. Не понимаю, как именовать объекты? Я делаю это на вкладке Instance/Name, но видел в примерах, что это поле пустое, а имя у бъекта все равно есть. Как это получается?
Пушистик
23.02.2004, 09:32
Оригинал написал(а) dims12
Штрек, может у меня флэш какой-старый? Потому что твой файл не открывается.
У меня версия 5.0
:D :D :D
Что, во флэше можно русские имена использовать, да?
НЕТ
Пушистик, ты чего сказал-то?
Назвал переменную по-английски, получился код
_global.YellowPhase = 10;
tellTarget ("YellowCarMoving") {
gotoAndStop (_global.YellowPhase);
}
который все равно не работает.
А код
tellTarget ("YellowCarMoving") {
gotoAndStop (10);
}
работает.
То есть дело не в русском наименовании. Что, кстати, было очевидно, так как если бы дело было бы в нем, то не работали бы оба кода.
Ребята, я понимаю, что проще загадочно посмеяться, но по делу-то есть идеи?
Димс.
_global object
Availability
Flash Player 6.
интересно по простому чем не устраивает
YellowPhase = 10;
tellTarget ("YellowCarMoving") {
gotoAndStop (_parent.YellowPhase);
}
В моём исходнике всё работает /переменная читается/.
Скоро 8ка выйдет, а ты всё 5ку сношаешь. :rolleyes:
silin, ты - гений! :-)
Действительно, я не мог сообразить, что глобальности тут и не нужно - рефлексов пока нет :-)
Кроме того, я заметил, что _parent синеет, а _global - нет. То есть, все прояснилсь, дело в версии Flash, в пятой версии никакого _global просто нет.
silin, а откуда ты цитату взял? Это хелп такой в более новом Flash-е?
И еще вопрос: а кто, собственно, прокручивает флэшки в браузере? Не будет ли правильнее (переносимее) писать флэшки в старой программе?
Общение с тобой - укорачивает жизнь. :rolleyes:
не верь Штреку( он добрый на самом деле) и ставь MX
Ну вот! Опять затык!
Извините, что мы к вам обращаемся, сами мы не местные...
В общем, я хочу сам управлять движением.
Я рассчитывал, что помещу в первый кадр код
YellowPhase++;
tellTarget ( YellowCarMoving ) {
gotoAndStop(_parent.YellowPhase);
}
получу движение, так как мультик зациклен и код первого кадра будет выполняться многократно.
Ни фига! Теперь желтая машинка стоИт!
Делаю так:
YellowPhase++;
tellTarget ( YellowCarMoving ) {
gotoAndStop(_parent.YellowPhase);
}
gotoAndPlay(1);
рассчитывая, что теперь зацикливание явно - все равно стоИт.
Делаю
while(1) {
YellowPhase++;
tellTarget ( YellowCarMoving ) {
gotoAndStop(_parent.YellowPhase);
}
}
зависает, что логично...
И главное, в книжке всего этого не написано, объясняются вские элементарные понятия, а что к чему - не объясняется...
Оригинал написал(а) dims12
Ну вот! Опять затык!
В общем, я хочу сам управлять движением.
Ставь 6ку - поуправляем. :p
и код первого кадра будет выполняться многократно
добавь второй кадр(пустой) и все поедет, gotoAndPlay(1) не нужен- само пойдет
( в 6-ке можно без этого обойтись)
добавь второй кадр(пустой) и все поедет
Точно! Пошло! А почему так? :-)
Оригинал написал(а) dims12
Точно! Пошло! А почему так? :-)
Это ОСНОВЫ!!!
Не зная основ, да ещё на старушке-проге нельзя
достичь путёвого результата.
За то время, что тут лялякаем можно было:
Скачать и зарегить прогу Flash MX
Скачать русский Хэлп к ней
Зайти к Дембинскому (http://dembicki.narod.ru/tutor/) и поизучать программирование
движения/написано так, что любой чайник разберётся/
и ещё много чего... ;)
Зайти к Дембинскому (http://dembicki.narod.ru/tutor/)
Отличная ссылка!
Ну вот, кажется, нарисовал свой мультик (http://relativity.h11.ru/media02.shtml#cars).
Работает на vBulletin ® версия 3.7.3. Copyright ©2000-2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Copyright © 1999-2008 Flasher.ru. All rights reserved.