|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
[+1 02.03.11]
|
Объявление объекта с неизвестным именем (AS3)?
Привет.
Помогите разобраться в синтаксисе AS3. package { import flash.display.MovieClip; import flash.events.MouseEvent; public class DocumentClass extends MovieClip { public function DocumentClass() { createMaze(5, 3,1,1); } private function createMaze(horizontal_:Number, vertical_:Number,startRow:Number,startColumn:Number):void { var rows:Number=horizontal_; var columns:Number=vertical_; var totalCells:String=rows*columns; var startRow:Number=startRow; var startColumn:Number=startColumn; var cellsVisited:Number=0; var currentCell:String="cell"+startRow+"_"+startColumn; this[this.currentCell] = {name:this.currentCell, x:this.startRow, y:this.startColumn, exists:true}; } } } this[this.currentCell] = {name:this.currentCell, x:this.startRow, y:this.startColumn, exists:true}; Помогите разобраться Последний раз редактировалось vector3d; 07.11.2010 в 01:40. |
|
|||||
Регистрация: Jan 2009
Адрес: Петерсбург
Сообщений: 1,882
|
А что эта строка делает в as2?
|
|
|||||
[+1 02.03.11]
|
Долго объяснять, просто хочу понять, вообще можно объявлять переменные с заранее не известными именами?
В двух словах, создается лабиринт. Последний раз редактировалось vector3d; 07.11.2010 в 01:58. |
|
|||||
Регистрация: Jan 2009
Адрес: Петерсбург
Сообщений: 1,882
|
Ну можно наверно, так что ли?
Но так никто не делает. Лучше скажите что вам нужно конкретно, и вам подскажут как правильно. |
|
|||||
[+1 02.03.11]
|
Раньше в AS2 можно было создать вот такую переменную:
i=7; this['name_'+i]=77; Интерпретатор бы создал переменную "name_7" c содержимым 77 А в AS3 уже не нельзя получается? |
|
|||||
Регистрация: Apr 2010
Адрес: Earth
Сообщений: 1,897
|
Цитата:
__________________
Загружаем картинки, минуя ошибки безопасности |
|
|||||
[+1 02.03.11]
|
ReferenceError: Error #1069: Не удалось найти свойство currentCell в DocumentClass; отсутствует значение по умолчанию.
at DocumentClass/createMaze() at DocumentClass() Чёт не хочет ни this[this.currentCell] = obj; ни this[currentCell] = obj; Последний раз редактировалось vector3d; 07.11.2010 в 02:22. |
|
|||||
Регистрация: Apr 2010
Адрес: Earth
Сообщений: 1,897
|
ну так я откуда знаю, что у вас является this'ом. Объявите документ-класс как dynamic, отключите strict-mode и вот вам АС2
ПС: но вообще - совет не лучший ))
__________________
Загружаем картинки, минуя ошибки безопасности |
|
|||||
[+1 02.03.11]
|
Вот исходник
в точности как и в вопросе данной темы) Последний раз редактировалось vector3d; 07.11.2010 в 02:34. |
|
|||||
[+1 02.03.11]
|
Изменения данной строки
public class DocumentClass extends MovieClip { на public dynamic class DocumentClass extends MovieClip{ удалось обьявить так: cell1_1 |||||| [object Object] |
Часовой пояс GMT +4, время: 02:04. |
|
« Предыдущая тема | Следующая тема » |
|
|