Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 1.0/2.0 (http://www.flasher.ru/forum/forumdisplay.php?f=93)
-   -   Про Скрипт в подгружаемом swf (http://www.flasher.ru/forum/showthread.php?t=71681)

Slavik2003 10.11.2005 20:27

Про Скрипт в подгружаемом swf
 
Помогите пожалуйста разобраться....

В погружаемом swf в главный swf есть скрипт. Как сделать так чтоб этот скрипт работал в руте главного swf? Чтоб можно было к нему обращаться в _root... И он сам по себе находился в Руте...

Я перечитал тут темы по подгрузке swf, пробовал, но ничего не выходило... Если кто знает, напишите пожалуйста как это должно выглядеть, может некий скрипт нужен особый.

KUZEN 10.11.2005 23:52

Будет работать только в пределах клипа в который подгружен, нк или рута , если подгружен в рут

Vitamin E 11.11.2005 00:23

Вложений: 1
На самом деле не так. Прописываешь свой скрипт в виде глобальной функции внутри подгружаемого мува:
Код:

_global.functionName=function () {
//my script;
}

И твой скрипт будет работать при вызове функции хоть в руте, хоть где. :)
Вот глянь:

Жень Шень 11.11.2005 13:34

Привет!
Не обязательно ф-кцию делать глобальной!
В таком случае к ней можно обратиться так (зная, что мы подгружаем мувик на 1-й уровень):
Код:

func_btn.onRelease = function() {
        _level1.globalTrace();
};


Slavik2003 11.11.2005 15:57

Вложений: 1
Благодарю всех за отзывы. Спасибо... Но у меня что то не получилось сделать как хотел...
Vitamin E
Просмотрел исходник
В MAIN есть текстовое поле, (В оригинале будут другие вещи допустим переключения кадров и другая графика).
А программный код находящийся в My.swf должен будет пользоваться текстовым полем находящимся в MAIN.
В ней надо чтоб работала команда
text2="глобальная функция загружена";
И чтоб не приходилось дописывать перед ней _root

Но она у меня почему-то не работает.(не пишется текст в текстовое поле) Может что то пишу не так... Помогите пожалуйста...
Прикрепляю исходник, где уже создано текстовое поле в МАИН, и в My.swf уже написано text2="глобальная функция загружена";

Вариант Жень Шеня еще не пробовал... Может посмотрю щас...

Но все же жду от Вас ответа... Спасибо....

Madasan 11.11.2005 16:37

Вложений: 1
Ты не так написал ваще. И я не понял, что за задача. но
вот так -работает.

Slavik2003 11.11.2005 17:31

Madasan спасибо за отзыв... но это тоже не то : )
Мне нужно чтобы вот это
text2="глобальная функция загружена";

находилоась в My.swf.

И как только My.swf подгрузится в MAIN, в текстовом поле(в MAIN) text2 должно написаться "глобальная функция загружена". Это почти то что сделал VItamin E и добавил Жень Шень. Но в моем исходнике что я прикрепил это не работает...

Мне нужно просто отделить Скрипт программы от ее графики, разьединить их по разным роликам. Но скрипт очень длинный, очень много там всего связанно.

Madasan 11.11.2005 18:01

Цитата:

Мне нужно просто отделить Скрипт программы от ее графики
используй LoadVars() ;)

Vitamin E 11.11.2005 19:09

Вложений: 1
Типа того?

Slavik2003 11.11.2005 20:37

Вложений: 1
Цитата:

Сообщение от Vitamin E
Типа того?

Может это почти то, но я чувствую что не совсем...
Я прикрепляю исходник, в нем в каждом из файлов я обьяснил что там будет. Прежде открой my.swf Потом Маин.

Речь о том, что в My.swf будет больше 700 строк кода... Как его всего закинуть в рут? (маин файла). И чтоб с других символов в Маин файле, которые не в руте ссылаться на этот скрипт файла My.swf допустим так _root.h=1;

Я ведь просто для примера дал текст, но на самом деле там будет много кода. По твоему способу придется что то менять, но я не в курсе что... : ) Помоги пожалуйста... 2 дня уже ищу ответ...


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

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