Форум 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=85437)

Rom III 22.09.2006 12:40

как передать переменные из клипа в рут
 
Возник такой вопрос:umnik2: :

_root содержит 2 мувика clip1 и box,
в clip1 есть clip2 значение _у которого передается переменной ky=clip2._y+45; как передать значение ky в box._xscale?
строчка в руте: box._xscale = _root.clip1.clip2.ky; - неработает

П.С. подскажете адрес IRC где флешеры обитают.

Neosano 22.09.2006 13:11

_root.box._xscale ?

кстати у рута и мувиков _x и _y разные ;)

Rom III 22.09.2006 16:09

_root.box._xscale - пробовал, неработает

о том что они разные я понимаю, вопрос как значение переменной(а это необязательно координаты) из мувика передать в рут

Storm[pfp] 22.09.2006 16:19

а где задана переменная ky?? (поподробнее)

pkfun 22.09.2006 16:32

Первый вариант:
Код:

this.createEmptyMovieClip("clip1", this.getNextHighestDepth());
clip1.createEmptyMovieClip("clip2", clip1.getNextHighestDepth());
this.createEmptyMovieClip("box", this.getNextHighestDepth());
//
clip1._y = 1;
clip1.clip2._y = 2;
box._y = 3;
//
ky = clip1.clip2._y+2;
//
box._xscale = ky;
trace(box._xscale);

Вариант с динамически созданным свойством:
Код:

this.createEmptyMovieClip("clip1", this.getNextHighestDepth());
clip1.createEmptyMovieClip("clip2", clip1.getNextHighestDepth());
this.createEmptyMovieClip("box", this.getNextHighestDepth());
//
clip1._y = 1;
clip1.clip2._y = 2;
box._y = 3;
//
clip1.ky = clip1.clip2._y+2;
//
box._xscale = clip1.ky;
trace(box._xscale);

или так:
Код:

this.createEmptyMovieClip("clip1", this.getNextHighestDepth());
clip1.createEmptyMovieClip("clip2", clip1.getNextHighestDepth());
this.createEmptyMovieClip("box", this.getNextHighestDepth());
//
clip1._y = 1;
clip1.clip2._y = 2;
box._y = 3;
//
clip1[ky] = clip1.clip2._y+2;
//
box._xscale = clip1[ky];
trace(box._xscale);


Rom III 22.09.2006 17:20

я наверно нетак объяснил.:umnik2:
в clip1 находится clip2 и код:

Код:

clip2.onPress = function () {
    this.onMouseMove = function () {
        this._y = this._parent._ymouse;
        if (this._y < -100) this._y = -100;
        if (this._y > 0) this._y = 0;
        ky = int(-this._y); //+арифметическое выражение
}

в руте clip1, box и код:
Код:

onEnterFrame = function(){
    box._xscale = _root.clip1.clip2.ky;//но неработает
}


Хемуль 22.09.2006 17:52

this.ky = int(-this._y);
Но до события onPress переменная _root.clip1.clip2.ky будет undefined.

eXplozive 22.09.2006 18:23

попробуй _global переменные

Хемуль 22.09.2006 19:02

2 eXplozive:
Зачем?
Я воспроизвёл флешку товарища Rom III с той поправкой, которую предложил. Всё работает.

iNils 23.09.2006 12:23

Rom III, обратите внимание как другие оформляют свой код в сообщениях. Вам надо делать также. Больше предупреждений не будет.


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

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