我正在使用Flash Professional CC在ActionScript 3中设计一款国际象棋游戏。我使用IDE创建了一个棋盘,并将棋子放在初始位置。每个图块都有自己的实例,并命名为其各自的坐标,例如左上方的图块称为A8。
为了计算有效的移动等,我计划使用两个2D对象数组。一个数组应该包含tile实例,例如A8,B8,C8,D8等,另一个应包含电路板,例如BR1,BB1。
我注意到ActionScript不允许实现像C ++这样的2D数组(我熟悉的语言);相反,使用嵌套数组。我对如何设置这些数组感到有些困惑。声明和初始化这些数组的最有效方法是什么(希望不涉及重复代码)?
答案 0 :(得分:1)
欢迎来到AS3开发者的军队。
以下是一些提示:
var array:Array = [];
,这里是一个二维数组 - var a:Array = [[]];
。数组是动态对象,您不需要指定数组的深度。因此,在将数据块添加到数组时,只需通过array[x][y] = tile
var myVector:Vector.< Tile > = new Vector.< Tile >();
和2d版本var myVector:Vector< Vector.< Tile > >;
,依此类推。矢量比阵列快。
更多提示: