AS3数组提取特定信息

时间:2011-10-03 14:45:04

标签: arrays flash actionscript-3

我正在使用一个数组来保存有关已落地的2个块的信息。然后我需要从这个数组中提取spriteoffset。我该怎么做呢?我的方法不起作用。

aryBlockRow[(elementbody.yp + elementbody.block[ii].yp)/BLOCKSIZE][(elementbody.xp + elementbody.block[ii].xp)/BLOCKSIZE] = new ElementBlock((elementbody.xp + elementbody.block[ii].xp), (elementbody.yp + elementbody.block[ii].yp), elementbody.block[ii].spriteoffset);

trace("Block row: "+aryBlockRow.block[ii].spriteoffset)

或者,每个块都有一个标签(块[ii] .tag),是否可以从aryBlockRow中提取此信息,或者不是因为我没有特别添加它?

由于

-

澄清:

我正在创建一个俄罗斯方块风格的游戏,但有4个不同的元素。为了破坏这些元素,我需要知道4个相同的元素在一行中。我计划这样做的方法是让每个元素都有一个0,1,2或3的变量(“tag”)。我调用变量elementbody,并在其中有一个数组“block”。 / p>

            trace("Left tag is: "+elementbody.block[0].tag)
        trace("Right tag is: "+elementbody.block[1].tag)

返回:

左标记是:3 正确的标签是:1

哪个是正确的。

我现在需要做的是能够在元素着陆后继续跟踪标记。因此,我将它们放入一个新的数组:

for(ii = 0; ii < elementbody.block.length; ii++) {

aryBlockRow[(elementbody.yp + elementbody.block[ii].yp)/BLOCKSIZE][(elementbody.xp + elementbody.block[ii].xp)/BLOCKSIZE] = new ElementBlock((elementbody.xp + elementbody.block[ii].xp), (elementbody.yp + elementbody.block[ii].yp),
elementbody.block[ii].spriteoffset);

每个块(块[0],块[1])的Spriteoffset将返回0,30,60或90.如果我可以返回,那么我可以计算出它是否连续4个

我需要知道的是:是否可以从aryBlockRow数组中提取“spriteoffset”,或者我是否需要以某种方式将此信息存储在其他位置?

元素每次落在底部时都会更改为新元素,并且现有元素会保存在此数组中,这就是我无法使用当前方法的原因。

0 个答案:

没有答案