В ActionScript 3 есть некоторые классы, которые будут представлять значение, а не сам класс. Трудно правильно объяснить, что я имею в виду, поэтому возьмите этот пример:
var str:String = "something";
var mc:MovieClip = new MovieClip();
trace(str); // something
trace(mc); // [object MovieClip]
Вы заметите, что первая трасса выводит значение, а не [object String]
. Помимо этого, я все еще могу использовать методы String
, например:
var ar:Array = str.split('s');
Несмотря на то, что вы могли бы почти прочитать это как:
"something".split('s');
У меня есть класс AvLevelData
, в котором есть несколько методов, которые работают с данными уровня (по сути, это String). На данный момент существует свойство data:String
, которое представляет данные уровня ядра.
Вопрос, который у меня возникает, - могу ли я повторить поведение String в том, что когда я отслеживаю или присваиваю экземпляр AvLevelData
, результатом фактически является String data
.
Например, на данный момент мне нужно идти:
var levelData:AvLevelData = new AvLevelData();
trace(levelData.data);
Чтобы получить данные. Вместо этого я хочу иметь возможность просто сделать следующее:
var levelData:AvLevelData = new AvLevelData();
trace(levelData); // some level data string
Возможно ли это?