Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   AS3 -> AS2 (http://www.flasher.ru/forum/showthread.php?t=119834)

s4g3 02.01.2009 20:02

AS3 -> AS2
 
Здравствуйте! мне необходимо переделать этот код в as2
Код AS3:

var center_y:Number = maska.height * 0.5;
var gradient_area:Number = 15;
 
mc.addEventListener( Event.ENTER_FRAME, scroll_this );
 
function scroll_this(e:Event):void
{
        if( mc.height > maska.height && Math.abs(this.mouseY - center_y) > 100 )
        {
                mc.y -= ( this.mouseY - center_y ) * 0.02;
 
                if ( mc.y > maska.y + gradient_area)
                {
                        mc.y = maska.y + gradient_area;
                }
                else if ( mc.y < maska.y - mc.height + maska.height - gradient_area )
                {
                        mc.y = maska.y - mc.height + maska.height - gradient_area;
                }
        }
}

пытался переделать listener, не работает

DarkLight 02.01.2009 21:18

Код AS1/AS2:

mc.onEnterFrame = scroll_this;

Внутри scroll_this this будет ссылаться на mc, для изменения этого поведения можно использовать Delegate. scroll_this не будет получать никаких аргументов в этом случае.

s4g3 02.01.2009 22:03

Цитата:

Сообщение от DarkLight (Сообщение 787824)
Код AS1/AS2:

mc.onEnterFrame = scroll_this;


пробовал без listener таким образом как у вас, тоже не работает (( самое обидное что ошибок тоже не выдаёт! Пробовал искать хелп по delegate по крайней мере у Мука в обоих книжках по as2 ничего подобного нет. Можно поподробнее как без приёмнка с delegate'том сделать?

s8000_1 02.01.2009 23:55

s4g3

Про delegate написано в хелпе.
Без него замучаетесь.

Psycho Tiger 03.01.2009 16:30

Цитата:

Сообщение от s8000_1 (Сообщение 787842)
s4g3

Про delegate написано в хелпе.
Без него замучаетесь.

Гм, я один во времена AS2 писал функцию с параметром mc:MovieClip, которая это все и делала? О_о

s8000_1 03.01.2009 18:05

Psycho Tiger, ну это один из вариантов мучения. Я обычно что-то типа this.parent.parent использовал.
Про Delegate тоже не сразу узнал :)


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

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