Форум 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)
-   -   Презентация на двух языках (http://www.flasher.ru/forum/showthread.php?t=209525)

xcube 18.11.2014 13:33

Презентация на двух языках
 
Даже не знаю как правильно спросить, лучше опишу ситуацию.

Есть две презентации на разных языках, каждая из них лежит в отдельной своей папке (то что ниже пунктирной линии rus и eng).
http://cgeye.ru/!Monosnap/2014-11-18_12.08.46.png

То есть презентации работают сами по себе, по отдельности, все пути в презентациях относительные (пример "12_about/ru/12_bil.swf, 0")
В папке "rus" есть главный стартовый файл rus.swf и в папке "eng" есть свой стартовый файл eng.swf. По отдельности презентации прекрасно работают.

Но возникла задача, добавить стартовую страницу с выбором языка(см. рис. выше пунктирной линии). И тут загвоздка, если загрузить русскую или английскую версию таким способом
Код AS1/AS2:

on (release) {
        loadMovieNum("rus/rus.swf", 0);
}

то все страницы лежащие в подпапках "data files" становятся недоступными.
Вот и вопрос, можно ли каким то способом создать эту стартовую страницу не перписывая все пути в презентации?
Или можно ли как то изменить относительный путь проекта после его запуска?

dark256 18.11.2014 14:02

1. Сделайте стартовую на обычном HTML с текстом и двумя кнопками.
Тогда запуск нужной СВФ-ки произведите как обращение к обычному URL-у

2. Сделайте обычную флэшку, с 2мя кнопками, но не ГРУЗИТЕ презентацию внутри неё, а обращайтесь к ней также по УРЛ-у.

Код AS1/AS2:

BTN.onRelease = function(){
        getURL("rus\\rus.swf","_blank")
}

Правда при этом презентация откроется в браузере. Хотя какая разница?

xcube 18.11.2014 14:11

dark256 презентация полноэкранная, запускается через *.exe, заказчик точно не захочет браузерную версию.
Может есть какие нибудь сторонние способы изменять относительный путь после запуска приложения?

dark256 18.11.2014 14:21

Не видя кода, что-то со всей определеностью сказать крайне сложно........
С точки зрения банальной эрудиции, могу лишь высказать предположение, (и надежду) что презентация тащит в себя файлы через MovieClipLoader().
В этом случае можно попробовать переопределить его метод loadClip() с тем, чтобы он модифицировал путь зарузки в указанном направлении....

Правда тут я в ООП шарю крайне мало, и код привести не могу...

xcube 18.11.2014 14:34

Для загрузки роликов в презентации везде используется метод loadMovieNum, вот пример:
Код AS1/AS2:

on (release) {
        loadMovieNum("12_bibleyskie/ru/12_bil.swf", 0);
}

Если флеш позволяет изменять методы, то думаю метод loadMovieNum() тоже можно переопределить, но в этом я тоже не силен (

Кстати покопался в поиске нашел некий атрибут base, насколько понял в этой переменной как раз храниться относительный путь. Но в примерах значение этого атрибута задается в файлах html. Интересно можно ли как то это сделать из самого Flash?

dark256 18.11.2014 15:57

Пройдитесь по коду презентации и сделайте SearchAndReplace для
" loadMovieNum(" "
на
" loadMovieNum(" rus/ "

Как-то более ничего внятного в голову не приходит.

xcube 18.11.2014 17:36

dark256 спасибо что помогаете! да долго придется менять ссылки, там около 3 000 файлов ...

dark256 18.11.2014 21:36

ЧТО???? У презентации не ОДИН управляющий файл, который все в себя грузит и показывает???
А 3000 СВФ-ок с подгрузками?????

xcube 19.11.2014 00:29

Как понять одни управляющий файл который все в себя грузит?
В презентации сть стартовый файл, который при нажатии кнопок загружает в себя свфки(разделы, картинки итд) и выгружает ненужные или замещает.

dark256 19.11.2014 12:19

Ну вот в нем и переписывать пути, а не во всех прочих СВФ


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

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