Страница 1 из 1

Урок: работа с методами контейнера на AS2

Добавлено: 03 янв 2011, 11:15
s(ript
Здравствуйте, на ЭТОМ форуме я новенький решил создать урок по методам контейнера, т.к. сам с этим столкнулся.
Для использования методов контейнера на АS2 я пользовался классом ApiConnection.as
сам класс называем ApiConnection.as и ложим рядом с вашим *.fla файлом
Ниже - сам класс:

Код: Выделить всё

class APIConnection{    var conName, isCon, localCon, main, onError;    function APIConnection(conName)    {        this.conName = conName;        isCon = false;        localCon = new LocalConnection();        localCon.allowDomain = function (sendingDomain)        {            return (true);        };        localCon.main = this;        localCon.onWindowBlur = function ()        {            main.onWindowBlur();        };        localCon.onWindowFocus = function ()        {            main.onWindowFocus();        };        localCon.onBalanceChanged = function (balance)        {            main.onBalanceChanged(parseInt(balance));        };        localCon.onSettingsChanged = function (settings)        {            main.onSettingsChanged(parseInt(settings));        };        localCon.onApplicationAdded = function ()        {            main.onApplicationAdded();        };        localCon.onStatus = function (loaded)        {            if (loaded.level == "status")            {                if (!main.isCon)                {                    main.isCon = true;                    main.onInit();                }                else                {                    main.onMethod();                }            }            else if (!main.isCon)            {                main.onError(1);            }            else            {                main.onError(2);            }        };    }    function startConnection()    {        if (!isCon)        {            localCon.connect("_out_" + conName);            localCon.send("_in_" + conName, "initConnection");            return (true);        }        else        {            return (false);        }    }    function showInstallBox()    {        this.sendMethod(new Array("showInstallBox"));    }    function showSettingsBox(settings)    {        this.sendMethod(new Array("showSettingsBox", settings.toString()));    }    function showInviteBox()    {        this.sendMethod(new Array("showInviteBox"));    }    function showPaymentBox(votes)    {        this.sendMethod(new Array("showPaymentBox", votes.toString()));    }    function sendMethod(paramsArr)    {        if (isCon)        {            if (paramsArr.length == 1)            {                localCon.send("_in_" + conName, paramsArr[0]);            }            else if (paramsArr.length == 2)            {                localCon.send("_in_" + conName, paramsArr[0], paramsArr[1]);            }            else            {                this.onError(3);            }        }        else    ;    {            this.onError(4);        }    }}  
Для использования класса необходимо инициализировать его - в первом фрейме пишем:

Код: Выделить всё

 var apiCon = new APIConnection(_root.lc_name);apiCon.startConnection();apiCon.onInit = function ()//это необходимо если надо выполнить метод сразу после инициализации{    apiCon.showInstallBox();    apiCon.onApplicationAdded = function ()    {trace("Приложение было только что добавлено");    };};
В панели Actions кнопкам можем присваивать скрипты:

Код: Выделить всё

 on(Release){apiCon.Show(Здесь название метода контейнера)}

Re: Урок: работа с методами контейнера на AS2

Добавлено: 03 янв 2011, 12:24
bigest
s(ript,ICQ 587502227 стукни плз.

Нужно помочь с исходником а то я начинающий =( :cry:

Re: Урок: работа с методами контейнера на AS2

Добавлено: 03 янв 2011, 14:38
s(ript
Ребята, таким образом можно вызывать всплывающие окна типа 'для продолжения работы приложения необходимо добавить его на свою страницу' или 'приложение просит вас внести голоса' а также обрабатывать события, которые произошли в результате этих окон

Re: Урок: работа с методами контейнера на AS2

Добавлено: 12 апр 2011, 15:21
andi122
не совсем мне понятно(
Куда заливать этот .as файл?
Когда я заливаю приложение, у меня нет возможности загружать ничего кроме .swf файлов.
Или я совсем ничего не понял?

Re: Урок: работа с методами контейнера на AS2

Добавлено: 12 апр 2011, 15:59
bodnar
as это исходный код, текстовый файл, который при компиляции переводится в байт-код swf файла

Re: Урок: работа с методами контейнера на AS2

Добавлено: 12 апр 2011, 17:22
andi122
Просто может тогда надо делать как-то публикацию свф-ки не как обычно?
Такая мысль возникает потому, что я на выходе получаю свф-ку, которую если преобразовать (например Сотником) обратно во фла, то этот .as файл не появляется. И код из него тоже нигде не отображается...
Да, и попробовал залить такую свф-ку во вконтакт, и она вроде как не работает

Re: Урок: работа с методами контейнера на AS2

Добавлено: 12 апр 2011, 18:30
andi122
вобщем, я нашел ошибку у себя - учитывается регистр в имени файла с классом. У меня там был неправильно назван .as файл.
Но теперь выдается куча ошибок в файле APIConnection.as...
То скобка лишняя, то ее нехватает... Вобщем завтра буду еще разбираться... Плохо, когда мало знаешь(

Re: Урок: работа с методами контейнера на AS2

Добавлено: 08 июн 2011, 12:48
s(ript
В настройках поставь action script 2.0, наверняка у тебя стоял 1.0