Форум Flasher.ru

Форум Flasher.ru (http://www.flasher.ru/forum/index.php)
-   ActionScript 3.0 (http://www.flasher.ru/forum/forumdisplay.php?f=83)
-   -   доступ к данным из одного клипа в другой (http://www.flasher.ru/forum/showthread.php?t=212565)

Junge 14.03.2016 03:58

доступ к данным из одного клипа в другой
 
есть массив на главной сцене с одним единственным кадром.
var xxx:Array = ['1','2','3'];
как получить к нему доступ из клипов на сцене? global.xxx root.xxx parent.xxx this.parent.xxx не работают, вываливается ошибка при компиляции (( из главной сцены всё ок по trace(xxx);

faraday 14.03.2016 04:27

Код AS3:

public static var xxx:Array = ['1','2','3'];
 
trace(Main.xxx)

попробуйте так, вместо Main имя вашего класса

Junge 14.03.2016 16:15

1114: Атрибут "public" может использоваться только внутри пакета.
1012: Атрибут "static" можно использовать только в определениях внутри класса.

undefined 14.03.2016 17:22

товарищ в кадрах пишет.Код что ли по разным сценам раскидан?

Junge 14.03.2016 17:30

код в одной сцене, в разных мувиках.
а как ещё писать если не в кадрах?

undefined 14.03.2016 17:41

Цитата:

а как ещё писать если не в кадрах?
В классах же
Если весь код в одной сцене - перебирай
Код AS3:

trace(this.parent);
trace(this.parent.parent);
...

Добавляя каждый раз новый parent
Как доберешься до [object MainTimeline] - там и будет лежать твой массив

i.o. 14.03.2016 18:06

Код AS3:

var myroot:MovieClip = this.root as MovieClip;
trace(myroot.xxx);


neonoviiwolf 15.03.2016 09:57

товарищ, переходите к написанию кода в классах, жить станет легче

Junge 15.03.2016 14:49

честно говоря знаю только AS1 по флешу, там было удобно писать в мувиках кадрах на кнопках, в классах это я так понимаю во внешних AS файлах? и потом их импортировать? в голове неукладывается зачем так сделано.

neonoviiwolf 15.03.2016 15:15

всё намного проще, чем кажется, классы будут наследовать мувик, соответственно вместо кода в кадрах пишите код в классе. А в главном классе (как его назовёте) просто создаёте экземпляры этих классов, принцип такой. Это позволяет много наворотить интересных вещей и дебажить такой код на порядок проще
А сделано, чтобы можно было создать что-то сложнее баннера


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

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