Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript (http://www.flasher.ru/forum/forumdisplay.php?f=5)
-   -   Пропала... (http://www.flasher.ru/forum/showthread.php?t=39563)

Magic Wand 11.11.2002 20:28

Пропала...
 
Помогите в ерунде разобратся.
Описываю вопрос. У меня есть две кнопки. Они обе запускают один и тот же мувик. Есть переменная N к которой первая кнопка присваивает, допустим 1, а вторая 2. Мувик который они запускают должен посмотреть на содержание переменной и соответствующе отреагировать. Блин но она пропадает. Трасирую при присвоении — все есть 1 .... 2 ... трасирую после перехода на другой мувик ее нет.

Пример

//первая кнопка//
on (release) {
m = 1;
rout.gotoAndPlay(2);
}

//мувик "rout"//

if (m == 2) {
tellTarget ("tim") {
tim.gotoAndPlay(2);
} else if (m == 1) {
tellTarget ("tom") {
tom.gotoAndPlay(2);
}
}

Блин ну она не доживает до определения?!! Это конечно первое что я пишу в скриптах, но просто не логично как-то.
Заранее спасибо!

sergwizard 12.11.2002 00:00

Ну, во-первых, непонятна структура твоего мувика. Что и куда вложено?
Во-вторых, зачем писать
tellTarget ("tim"){
tim.gotoAnd….. ?
Надо или
tellTarget("tim"){
gotoAnd…… ,
или
_root.rout.tim.gotoAnd……,
В-третьих, переменная "m" – она переменная только для _root. А для клипа "rout" она уже - _root.m
Вот и ставь условие:
If(_root.m ==2) {
………

Joey N. 15.11.2002 13:07

Дополню...
НИКОГДА не пиши tellTarget - кривая и глючная функция! Её даже сами разработчики не любят. Намного лучше юзать адреса (через точку которые)

NikitON 15.11.2002 13:21

Действительно, TellTarget - отстой, отличная замена - with
допустим
with ("tim"){gotoAndPlay(2);}...

lexass 15.11.2002 13:58

Цитата:

Оригинал написал(а) Joey N.
Дополню...
НИКОГДА не пиши tellTarget - кривая и глючная функция! Её даже сами разработчики не любят. Намного лучше юзать адреса (через точку которые)

вранье
просто она устаревшая. :p
и когда-то кроме нее ничего вааще небыло :cool:

ЗЫ
но к использованию не призываю :cool:

Nox Noctis 15.11.2002 22:45

Цитата:

Оригинал написал(а) Joey N.
НИКОГДА не пиши tellTarget - кривая и глючная функция!
Цитата:

Оригинал написал(а) NikitON
Действительно, TellTarget - отстой, отличная замена - with
допустим
with ("tim"){gotoAndPlay(2);}...

...слова людей, которые совсем не разбираются в сути ! :mad:

2Joey N.
стыдно, товарищ...

теллТаргет - САМЫЙ БЫСТРЫЙ СПОСОБ обращения к клипу.
это не предположение - это медицинский факт.
такое обращение работает примерно в двадцать раз быстрее обращение через точку.
НО это не значит, что везде нужно писать теллТаргет - его нужно писать только там, где одинаковых обращений через точку очень много, а скорость очень критична для работы программы...
в обычных случаях через точку короче и удобнее (да, так медленнее, но все равно не настолько, чтобы об этом заботиться всегда ).
чтобы не говорить таких глупостей можно прочитать методы оптимизации байткодов http://flasm.sourceforge.net/

2NikitON
это не теллТаргет отстой - а программисты, которые не умеют пользоваться скриптами...
with - самый (САМЫЙ) тормозной способ обращения. особенно когда речь идет о клипе (ведь with может использоваться с любым типом объектов)
к тому же есть принципиальные различия в работе with () и tellTarget() - это совсем не одно и то же... совсем-совсем...

Joey N. 16.11.2002 18:35

В одной из книжек по Флэшу было написано о том, что разработчики сами не очень-то любят тэллТаргет. Хоть он и самый быстрый, но у меня самого возникали с ним проблемы. Может флэшка, конечно, криволоманая, но сколько я ни перепихивал и не переименовывал мувик и сколько не переписывал после этого скрипт, желаемое не выполнялось. Это конечно очень редкий случай да и было это еще на четверке, но факт есть факт.

Nox Noctis 16.11.2002 19:26

Цитата:

Оригинал написал(а) Joey N.
сколько не переписывал после этого скрипт, желаемое не выполнялось
это тут не при чем... :D

то, что в твоем конкретном случае что-то не работало, не дает повода делать общий вывод о закономерности...

>> разработчики сами не очень-то любят тэллТаргет
глупости в той книжке написаны. однозначно.
кто просит разработчиков "любить" этот оператор ? а ? :D :D
надо просто знать когда и как его хорошо использовать, а когда он вовсе не нужен и мешает...

Magic Wand 19.11.2002 15:32

Спасибо огромное уважаемые, за подробное объяснение ...
Чего даже не ожидал. Со всеми проблемами разобрался. Теперь страдаю от чего и все начинающие флешеры, наверное — изначально запутанной структуры. Теперь-то понимаю, что в клипе должен быть порядок тогда и голове прще и рукам соответственно. :)

Special Thanks to:

Nox Noctis - за идеологическую защиту tell target ()
sergwizard - помощь с переменной.

Joey N. 20.11.2002 20:09

Цитата:

это тут не при чем... :D
чё ржешь-то?.. :(
target not foud!!!

Да я и не говорю, что это закономерность

ладно, дурацкая тема - не стоит спорить о ней


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

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