Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   Ошибка при компиляции для OS (http://www.flasher.ru/forum/showthread.php?t=156583)

kayn 24.05.2011 12:45

Ошибка при компиляции для OS
 
Возникала ошибка при компиляции проекта для OS. Закоментил строки связаные с navigateToURL и все компилится. А navigate-то нужен. И в документации пишут, что мол все ок, должно работать. Может кто чего подскажет? Как быть-то?

CrazyFlasher 24.05.2011 12:51

Код AS3:

import flash.net.navigateToURL;

импотрировано?

kayn 24.05.2011 18:19

разумеется, flashDevelop автоматически импортирует классы, да и не компилится только для OS

goodguy 24.05.2011 18:31

Что значит
Цитата:

не компилится только для OS
?
Флеш и не должен компилироваться для ос

kayn 25.05.2011 18:45

вопервых должен ctr+shift+f12 - параметры публикации, но на самом деле все несколько сложнее, http://www.develope.com, а во вторых компилится и работает на маке, как миленьки, не хочет компилится только с navigate-ом

goodguy 25.05.2011 21:09

Так речь о проекторе.
Можно проблемный код глянуть? Хочу у себя попробовать

kayn 30.05.2011 16:46

проблемный код
 
Код AS3:

package
{
        import com.greensock.TweenLite;
        import flash.events.Event;
        import flash.events.MouseEvent;
        import flash.events.TimerEvent;
        import flash.net.URLRequest;
        import flash.text.TextField;
        import flash.utils.Timer;
 
        import flash.display.MovieClip;
 
 
 
        public class Class_00_rabbitsAS3 extends MovieClip
        {
                private var timer:TextField;
                private var scoreText:TextField;
                private var timerCurrent:Number;
                private var timerCurrentInterval:Timer;
 
                private var btnCloseRelease:Boolean;
 
                private var rabbits:Array;
                private var frames:Array;
                private var menuFrames:Array;
                private var menu:Array;
 
 
                public function Class_00_rabbitsAS3()
                {
 
                        frames = [this['score'], this['time'], this['btnClose'], this['endFrame']];
                        menuFrames = [this['frameRulese'], this['subscribeFrame'], this['izineFrame']];
                        timer = this['time']['text'];
                        scoreText = this['score']['text'];
                        timerCurrent = 0;
 
                        btnCloseRelease = false;
 
                        rabbits = [];
                        menu = [];
 
                        createScene();
 
                }
 
 
                private function createScene()
                {
                        for (var j:Number = 0; j < 9; j++)
                        {
                                var hole:MovieClip = this['rabbit_' + j];
                                var rabbit:MovieClip = hole['rabbit'];
 
                                rabbit.yUp = rabbit.y;
                                rabbit.y += rabbit.height;
                                rabbit.yDown = rabbit.y;
                                rabbit.id = j;
 
                                if (j == 4)
                                        rabbit.y = rabbit.yUp;
 
                                rabbit.explocion = hole['explocion'];
                                rabbit.explocion.scaleX = rabbit.explocion.scaleY = 0;
                                rabbit.addEventListener(MouseEvent.CLICK, rabbitRelease);
                                rabbits[j] = rabbit;
                        }
 
                        for (var i:Number = 0; i < frames.length; i++)
                        {
                                var frame:MovieClip = frames[i];
                                frame.scaleX = frame.scaleY = 0;
 
                                if (i < 3)
                                {
                                        var btn:MovieClip = this['menu_' + i];
                                        btn.Y = btn.y;
                                        btn.id = i;
                                        btn.addEventListener(MouseEvent.CLICK, openMenuFrame);
                                        menu[i] = btn;
 
                                        var menuFrame:MovieClip = menuFrames[i];
                                        menuFrame.scaleX = menuFrame.scaleY = 0;
 
                                        if (i > 0)
                                        {
                                                menuFrame['btn'].addEventListener(MouseEvent.CLICK, gotoIzineLink);
                                        }
                                }
                        }
 
                        this['btnStart'].addEventListener(MouseEvent.CLICK, startGame);
                }
 
 
                private function gotoIzineLink(event:MouseEvent)
                {
                        var eventClip:Object = event.currentTarget;
                        var url:String;
 
                        switch(eventClip.parent)
                        {
                                case menuFrames[1]:
                                        url = 'http://izine.ru/subscribe/';
                                        break;
                                case menuFrames[2]:
                                        url = 'http://www.izine.ru';
                        }
 
                }
 
 
                private function openMenuFrame(event:MouseEvent)
                {
                        for (var i:int = 0; i < menuFrames.length; i++)
                        {
                                var btn:MovieClip = this['menu_' + i];
                                TweenLite.to(btn, 0.3, {alpha : 0, y : menu[0].y, onCompleteParams : [btn], onComplete : function(_btn:MovieClip)
                                {
                                        _btn.visible = false;
                                }});
                        }
 
                        TweenLite.to(this['btnStart'], 0.3, { scaleX : 0, scaleY : 0 } );
 
                        var id:Number = event.currentTarget.id;
                        var frame:MovieClip = menuFrames[id];
                        var btnClose:MovieClip = frame['btnClose'];
                        btnClose.id = id;
 
                        TweenLite.to(frame, 0.3, { scaleX : 1, scaleY : 1, delay : 0.3} );
 
                        btnClose.addEventListener(MouseEvent.CLICK, closeMenuFrame);
                }
 
 
                private function closeMenuFrame(event:MouseEvent)
                {
                        for (var i:int = 0; i < menuFrames.length; i++)
                        {
                                var btn:MovieClip = this['menu_' + i];
                                btn.visible = true;
                                TweenLite.to(btn, 0.3, { alpha : 1, y : btn.Y, delay : 0.3});
                        }
 
                        TweenLite.to(this['btnStart'], 0.3, { scaleX : 1, scaleY : 1, delay : 0.3} );
 
                        var id:Number = event.currentTarget.id;
                        var frame:MovieClip = menuFrames[id];
                        var btnClose:MovieClip = frame['btnClose'];
 
                        TweenLite.to(frame, 0.3, { scaleX : 0, scaleY : 0} );
 
                        btnClose.removeEventListener(MouseEvent.CLICK, closeMenuFrame);
                }
 
                //navigate
                private function rabbitRelease(event:MouseEvent)
                {
                        var rabbit:* = event.currentTarget;
                        var hole:MovieClip = this['rabbit_' + rabbit.id];
 
                        var explocion:MovieClip = rabbit.explocion;
                        TweenLite.to(explocion, 0.3, {scaleX : 1, scaleY : 1} );
 
 
                        var current:Number = Number(scoreText.text);
                        current++;
                        scoreText.text = String(current);
 
                        TweenLite.to(rabbit, 0.3, { alpha : 0, onComplete : function()
                        {
                                rabbit.explocion.scaleX = rabbit.explocion.scaleY = 0;
                                rabbit.y = rabbit.yDown;
                                rabbit.alpha = 1;
                                rabbit.action = false;
                        }});
 
                        explocion.addEventListener(Event.ENTER_FRAME, function(event:Event)
                        {
                                var explocion:* = event.currentTarget;
 
                                if (explocion.currentFrame == explocion.totalFrames)
                                        explocion.gotoAndStop(1);
                        });
                }
 
 
                private function rabbitAction(event:TimerEvent)
                {
                        if (event != null)
                                event.target.stop();
 
                        if (btnCloseRelease)
                                return;
 
                        for (var i:Number = 0, q:Number = 0; i < rabbits.length; i++)
                                if (rabbits[i].action)
                                        q++;
 
                        if (q > 3)
                        {
                                var t_0:Timer = new Timer(500, 0);
                                t_0.addEventListener(TimerEvent.TIMER, rabbitAction);
                                t_0.start();
                                return;
                        }
 
                        var idRabbit:Number = Math.round(Math.random() * 8);
                        var rabbit:MovieClip = rabbits[idRabbit];
 
                        if (rabbit.action)
                        {
                                rabbitAction(null);
                                return;
                        }
                        else
                                rabbit.action = true;
 
                        var delayTime:Number = Math.round(Math.random() * 1000);
                        var actionTime:Number = Math.round(Math.random() * 20) / 10;
                        var Y:Number = rabbit.yDown / 2 - Math.round(Math.random() * rabbit.yDown / 2);
 
                        var t_1:Timer = new Timer(delayTime, 0);
                        t_1.addEventListener(TimerEvent.TIMER, rabbitAction);
                        t_1.start();
 
                        TweenLite.to(rabbit, actionTime, { y : Y, onComplete : rabbitLive } );
 
 
                        function rabbitLive()
                        {
                                TweenLite.to(rabbit, actionTime / 2, { y : rabbit.yDown, onComplete : function()
                                {
                                        rabbit.action = false;
                                }});
                        }
                }
 
 
                private function startGame(event:MouseEvent)
                {
                        TweenLite.to(this['head'], 0.3, {alpha : 0});
 
                        TweenLite.to(rabbits[4], 0.5, {y : rabbits[4].yDown});
 
                        TweenLite.to(this['btnStart'], 0.3, { scaleX : 0, scaleY : 0 } );
 
                        for (var i:Number = 0; i < 3; i++)
                        {
                                var frame:MovieClip = frames[i];
                                TweenLite.to(frame, 0.3, { scaleX : 1, scaleY : 1, delay : 0.3 } );
 
                                var btn:MovieClip = menu[i];
                                TweenLite.to(btn, 0.3, {alpha : 0, y : menu[0].y, delay : (0.1 * (2 - i)), onCompleteParams : [btn], onComplete : function(_btn:MovieClip)
                                {
                                        _btn.visible = false;
                                }});
                        }
 
                        for (var j:Number = 0; j < 9; j++)
                        {
                                var rabbit:MovieClip = rabbits[j];
                                rabbit.addEventListener(MouseEvent.CLICK, rabbitRelease);
                        }
 
                        var t_0:Timer = new Timer(600, 0 );
                        t_0.addEventListener(TimerEvent.TIMER, function()
                        {
                                addEventListener(Event.ENTER_FRAME, onTimer);
 
                                if(timerCurrentInterval == null)
                                        timerCurrentInterval = new Timer(100, 10000);
 
                                timerCurrentInterval.addEventListener(TimerEvent.TIMER, currentTimerChange);
                                timerCurrentInterval.start();
                                t_0.stop();
                        });
                        t_0.start();
 
 
                        this['btnClose'].addEventListener(MouseEvent.CLICK, endGame);
 
                        btnCloseRelease = false;
 
                        rabbitAction(null);
                }
 
 
                private function overGame()
                {
                        TweenLite.to(this['endFrame'], 0.3, { scaleX : 1, scaleY : 1 } );
 
                        for (var i:String in rabbits)
                                rabbits[i].removeEventListener(MouseEvent.CLICK, rabbitRelease);
 
                        var text:TextField = this['endFrame'].text;
                        text.text = scoreText.text;
 
                        for (var j:Number = 0; j < 3; j++)
                        {
                                var frame:MovieClip = frames[j];
                                TweenLite.to(frame, 0.3, {scaleX : 0, scaleY : 0});
                        }
 
                        var close:MovieClip = this['endFrame']['btnClose'];
                        close.addEventListener(MouseEvent.CLICK, endGame);
                }
 
 
                private function endGame(event:MouseEvent)
                {
                        btnCloseRelease = true;
                        timerCurrent = 0;
                        timer.text = '0:00:00';
                        scoreText.text = '0';
                        timerCurrentInterval.stop();
                        removeEventListener(Event.ENTER_FRAME, onTimer);
 
                        TweenLite.to(this['head'], 0.3, {alpha : 1} );
 
                        for (var a:int = 0; a < menu.length; a++)
                        {
                                var btn:MovieClip = menu[a];
                                btn.visible = true;
                                TweenLite.to(btn, 0.3, {alpha : 1, y : btn.Y, delay : 0.3});
                        }
 
                        for (var i:String in frames)
                        {
                                var frame:MovieClip = frames[i];
                                TweenLite.to(frame, 0.3, {scaleX : 0, scaleY : 0});
                        }
 
                        TweenLite.to(this['btnStart'], 0.3, { scaleX : 1, scaleY : 1, delay : 0.3 } );
 
                        for (var j:String in rabbits)
                        {
                                if (j != '4')
                                        TweenLite.to(rabbits[j], 0.5, { y : rabbits[j].yDown } );
                                else
                                        TweenLite.to(rabbits[j], 0.5, { y : rabbits[j].yUp } );
 
                                rabbits[j].action = false;
 
                                rabbits[j].removeEventListener(MouseEvent.CLICK, rabbitRelease);
                        }
                }
 
 
                private function onTimer(event:Event)
                {
                        var min:Number = Math.floor(timerCurrent / 60);
                        var sec:Number = Math.floor(timerCurrent - min * 60);
                        var dec:String;
                        var secText:String;
 
 
                        if (sec == 0)
                                dec = String(timerCurrent);
                        else
                                dec = String(Math.floor(timerCurrent % sec * 10) / 10);
 
                        if (sec < 10)
                                secText = '0' + sec;
                        else
                                secText = String(sec);
 
                        if(min == 0)
                                timer.text = min + ':' + secText + ':' + dec;
                        else
                        {
                                timer.text'1:00:00';
                                removeEventListener(Event.ENTER_FRAME, onTimer);
                                timerCurrentInterval.stop();
                                overGame();
                        }
                }
 
 
                private function currentTimerChange(event:TimerEvent)
                {
                        timerCurrent += 0.1;
                }
        }
}



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

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